.link { margin-bottom: 2em; width: 100vw; position: relative; z-index: var(--z-index-link); display: none; } .is-bookmarks-show-link .link { display: block; } .is-layout-scroll-past-end .link { margin-bottom: 60vh; } .link-area { width: 100%; display: grid; grid-auto-rows: 1fr; grid-gap: calc(var(--gutter) * 2); } .is-bookmarks-style-block .link-area { grid-template-columns: repeat(auto-fill, minmax(10em, 1fr)); } .is-bookmarks-style-list .link-area { grid-template-columns: repeat(auto-fill, minmax(16em, 1fr)); } .is-layout-width-thin.is-bookmarks-style-list .link-area { grid-template-columns: 1fr; } .link-item { width: 100%; height: var(--link-height); font-size: 1em; position: relative; display: block; transform: scale(1); transition: all var(--animation-speed-fast) ease-in-out; } .link-item:focus-within, .link-item:focus, .link-item:hover { transform: scale(1.06); } .link-item:active { transform: scale(1.04); transition: none; } .link-panel-front { background-color: rgb(var(--gray-02)); border-radius: var(--radius); padding: 0 1em; width: 100%; height: calc(100% - var(--line-width)); display: flex; z-index: 3; position: relative; user-select: none; transition: all var(--animation-speed-fast) ease-in-out; } .is-bookmarks-style-block .link-panel-front { flex-direction: column; align-items: center; justify-content: center; } .is-bookmarks-style-list .link-panel-front { flex-direction: row; align-items: center; justify-content: flex-start; } .link-panel-front:hover, .link-panel-front:focus { background-color: rgb(var(--gray-03)); outline: none; text-decoration: none; } .link-item:focus .link-panel-front, .link-item:focus-within .link-panel-front, .link-item:hover .link-panel-front { text-decoration: none; outline: none; background-color: rgb(var(--gray-03)); box-shadow: 0 2px 1em 0 rgba(0, 0, 0, 0.4); } .is-bookmarks-show-url .link-item:focus .link-panel-front, .is-bookmarks-show-url .link-item:focus-within .link-panel-front, .is-bookmarks-show-url .link-item:hover .link-panel-front { height: calc(100% - var(--url-height)); } .link-panel-back { display: flex; flex-direction: column; justify-content: flex-end; align-items: stretch; width: 100%; height: 100%; position: absolute; bottom: 0; left: 0; z-index: 2; } .link-panel-back:before { content: ""; background-color: rgb(var(--accent)); border-radius: var(--radius); width: calc(100% - calc(var(--line-width) + var(--line-width))); height: calc(100% - 0.25em); position: absolute; bottom: 0; left: var(--line-width); z-index: -1; } .link-control { margin: 0; padding: 0 var(--line-width); height: 0; display: flex; overflow: hidden; flex-direction: row; align-items: stretch; justify-content: center; transition: all var(--animation-speed-fast) ease-in-out; } .link-control-item { background-color: transparent; margin-bottom: 0; border: 0; padding-left: 0; padding-right: 0; color: rgb(var(--gray-02)); flex-grow: 1; flex-basis: 50%; } .link-control-item:first-child { border-radius: 0 0 0 var(--radius); } .link-control-item:last-child { border-radius: 0 0 var(--radius) 0 } .link-control-item:focus, .link-control-item:hover { color: rgb(var(--white)); background-color: rgba(0, 0, 0, 0.2); } .link-control-item:active { color: rgb(var(--white)); background-color: rgba(0, 0, 0, 0.3); transition: none; } .link-url { padding: 0 1em; width: 100%; height: 0; overflow: hidden; display: none; align-items: center; transition: all var(--animation-speed-fast) ease-in-out; } .is-bookmarks-show-url .link-url { display: flex; } .is-bookmarks-style-block .link-url { justify-content: center; } .is-bookmarks-style-list .link-url { justify-content: flex-start; } .link-item:focus-within .link-url, .link-item:focus .link-url, .link-item:hover .link-url { height: var(--url-height); } .link-url-text { margin: 0; font-size: 0.7em; color: rgb(var(--black)); font-family: var(--font-regular); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .link-letter { font-family: var(--font-fjalla); color: rgb(var(--accent)); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: all var(--animation-speed-fast) ease-in-out; } .is-bookmarks-style-block .link-letter { margin: 0; font-size: 2em; text-align: center; max-width: 100%; } .is-bookmarks-style-list .link-letter { margin: 0 0.5em 0 0; font-size: 1.5em; flex-shrink: 0; max-width: 50%; } .link-item:hover .link-letter, .link-item:focus .link-letter { color: rgb(var(--white)); } .link-panel-front:focus .link-letter { color: rgb(var(--white)); } .link-name { margin: 0; font-size: 0.9em; font-family: var(--font-regular); color: rgb(var(--gray-12)); white-space: nowrap; overflow: hidden; max-width: 100%; text-overflow: ellipsis; display: none; transition: all var(--animation-speed-fast) ease-in-out; } .is-bookmarks-show-name .link-name { display: block; } .link-item:hover .link-name, .link-item:focus .link-name { color: rgb(var(--white)); } .link-panel-front:focus .link-name { color: rgb(var(--white)); } .link-empty { grid-column-start: 1; grid-column-end: -1; text-align: center; } .link-empty-heading { color: rgb(var(--gray-16)); } .is-bookmarks-style-block .link-name { text-align: center; } .is-bookmarks-edit .link-panel-front, .is-bookmarks-edit .link-item:hover .link-panel-front, .is-bookmarks-edit .link-item:focus .link-panel-front { height: calc(100% - var(--edit-height)); box-shadow: 0 2px 1em 0 rgba(0, 0, 0, 0.4); } .is-bookmarks-edit.is-bookmarks-show-url .link-item:focus .link-panel-front, .is-bookmarks-edit.is-bookmarks-show-url .link-item:focus-within .link-panel-front, .is-bookmarks-edit.is-bookmarks-show-url .link-item:hover .link-panel-front { height: calc(100% - var(--edit-height)); } .is-bookmarks-edit .link-control { height: var(--edit-height); } .is-bookmarks-edit .link-item:hover .link-url, .is-bookmarks-edit .link-item:focus .link-url { height: 0; } .is-bookmarks-edit .link-control-item { pointer-events: all; } .is-bookmarks-style-block .link-panel-front { flex-direction: column; align-items: center; justify-content: center; } .is-bookmarks-style-list .link-panel-front { flex-direction: row; align-items: center; justify-content: flex-start; }