html, body { margin: 0; padding: 0; width: 100vw; height: 100vh; } body.setup { margin: 0; padding: 0; &>.setup-outer-wrapper { width: 100dvw; height: 100dvh; body:not(.electron) & { @media (min-width: 700px) { background: radial-gradient(ellipse at 20% 50%, rgba(99, 102, 241, 0.3) 0%, transparent 50%), radial-gradient(ellipse at 80% 20%, rgba(168, 85, 247, 0.25) 0%, transparent 50%), radial-gradient(ellipse at 60% 80%, rgba(59, 130, 246, 0.25) 0%, transparent 50%), var(--left-pane-background-color); display: flex; justify-content: center; align-items: center; padding: 2em; } } .setup-container { background-color: var(--main-background-color); border-radius: 16px; padding: 2em; flex-direction: column; gap: 2rem; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1); position: relative; height: 100%; @media (min-width: 700px) { display: flex; width: 750px; height: 650px; top: unset; overflow: hidden; } .setup-options { display: flex; flex-direction: column; justify-content: center; gap: 1rem; .setup-option-card { padding: 1.5em; cursor: pointer; display: flex; align-items: center; gap: 1rem; &.disabled { cursor: not-allowed; opacity: 0.5; background-color: transparent; border-color: var(--main-border-color) } &:not(.disabled):hover { background-color: var(--card-background-hover-color); filter: contrast(105%); transition: background-color .2s ease-out; } .tn-icon { font-size: 2.5em; color: var(--muted-text-color); } h3 { font-size: 1.5em; font-weight: normal; } p:last-of-type { margin-bottom: 0; color: var(--muted-text-color); } } } } .page { display: flex; flex-direction: column; height: 100%; padding: 2em; overflow: auto; >.back-button { position: absolute; top: 2em; left: 2em; color: var(--muted-text-color); .tn-icon { margin-right: 0.4em; } } >main { flex: 1; display: flex; flex-direction: column; padding-top: 1em; min-height: 0; } &.contentless { justify-content: center; align-items: center; } >footer { display: flex; justify-content: flex-end; gap: 0.5rem; border-top: 1px solid var(--main-border-color); padding-top: 1rem; margin-inline: -2em; padding-inline: 2em; } >.page-error { position: absolute; top: 0; left: 0; right: 0; background: var(--admonition-caution-accent-color); z-index: 1; margin: 0; border-radius: 0; box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1); padding-right: 2.5em; button { position: absolute; top: 0.5em; right: 0.5em; } } } form { display: flex; flex-direction: column; gap: 1rem; width: 80%; margin-inline: auto; .form-group { margin-bottom: 0; } .admonition { margin: 0; } } .form-item-with-icon { display: flex; align-items: center; gap: 0.5rem; .tn-icon { font-size: 1.5em; color: var(--muted-text-color); } } } .sync-illustration { display: flex; justify-content: center; margin-top: 1.5em; margin-bottom: 1.5rem; .tn-icon { font-size: 3em; color: var(--muted-text-color); } >div { display: flex; flex-direction: column; text-align: center; gap: 0.5rem; line-height: 1; font-size: 0.85rem; } .sync-illustration-arrows { width: 60px; height: 3em; position: relative; &::after { content: ""; position: absolute; border: 2px dashed var(--main-border-color); top: 1.5em; left: 0; right: 0; } } } .illustration-icon { font-size: 4em; text-align: center; color: var(--muted-text-color); opacity: 0.6; margin-block: 1rem; } .illustration-logo { width: 96px; height: 96px; margin: auto; } h1 { font-size: 1.4em; text-align: center; } h1 + p { text-align: center; color: var(--muted-text-color); margin-bottom: 0; } .tooltip { z-index: 15 !important; } } @keyframes lds-ring { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } /* Slide transitions */ .slide-page { position: absolute; inset: 0; } .slide-out-forward, .slide-out-backward, .slide-in-forward, .slide-in-backward { animation-duration: 0.35s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; } .slide-out-forward { animation-name: slide-out-left; } .slide-out-backward { animation-name: slide-out-right; } .slide-in-forward { animation-name: slide-in-right; } .slide-in-backward { animation-name: slide-in-left; } .page.select-language { .dropdownWrapper { padding-bottom: 2em; width: 80%; margin: auto; } .dropdownWrapper, .dropdown, .dropdown-menu { height: 100%; } .dropdown-menu { box-sizing: border-box; overflow: auto; } } .page.sync-in-progress { .sync-progress { margin-top: 0.5rem; display: flex; align-items: center; gap: 0.5rem; progress { width: 100%; height: 1rem; border-radius: 0.5rem; overflow: hidden; appearance: none; &::-webkit-progress-bar { background-color: var(--main-border-color); } &::-webkit-progress-value { background-color: var(--main-text-color); transition: width 0.2s ease-out; } } span { font-size: 0.85rem; color: var(--muted-text-color); min-width: 2.5em; text-align: right; } } } @keyframes slide-out-left { from { transform: translateX(0); opacity: 1; } to { transform: translateX(-100%); opacity: 0; } } @keyframes slide-out-right { from { transform: translateX(0); opacity: 1; } to { transform: translateX(100%); opacity: 0; } } @keyframes slide-in-right { from { transform: translateX(100%); opacity: 0; } to { transform: translateX(0); opacity: 1; } } @keyframes slide-in-left { from { transform: translateX(-100%); opacity: 0; } to { transform: translateX(0); opacity: 1; } }