/* Device-local adaptive appearance controls. */
.settings-link-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:20px;padding:15px;border:1px solid var(--line);border-radius:18px;color:var(--ink);background:linear-gradient(120deg,var(--brand-soft),var(--surface));text-decoration:none}.settings-link-card>span{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;color:#fff;background:linear-gradient(145deg,var(--brand-strong),var(--brand));font-size:22px}.settings-link-card b,.settings-link-card small{display:block}.settings-link-card small{margin-top:3px;color:var(--ink-soft)}.settings-link-card>i{color:var(--brand-strong);font-size:24px;font-style:normal}
.appearance-head{align-items:end}.appearance-head-actions{display:flex;gap:8px;flex-wrap:wrap}.appearance-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:22px;align-items:start}.appearance-controls{display:grid;gap:16px}.appearance-section{padding:20px}.appearance-title{display:flex;align-items:center;gap:12px;margin-bottom:17px}.appearance-title>span{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border-radius:14px;color:var(--brand-strong);background:var(--brand-soft);font-weight:900}.appearance-title h2,.appearance-title p{margin:0}.appearance-title p{margin-top:3px;color:var(--ink-soft);font-size:12px}.preset-grid,.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.choice-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}.preset-grid button,.choice-grid button{min-width:0;padding:13px;border:1px solid var(--line);border-radius:15px;color:var(--ink);background:var(--surface-soft);text-align:left;cursor:pointer}.preset-grid b,.preset-grid small,.choice-grid b{display:block}.preset-grid small{margin-top:4px;color:var(--ink-soft);line-height:1.35}.choice-grid button{text-align:center}.choice-grid i{display:block;margin-bottom:5px;color:var(--brand-strong);font-size:22px;font-style:normal}.preset-grid button.is-active,.choice-grid button.is-active{border-color:var(--brand);background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand)}
.appearance-field,.appearance-switch{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 0;border-top:1px solid var(--line)}.appearance-field:first-of-type{border-top:0}.appearance-field>span,.appearance-switch>span{min-width:0}.appearance-field b,.appearance-field small,.appearance-switch b,.appearance-switch small{display:block}.appearance-field small,.appearance-switch small{margin-top:3px;color:var(--ink-soft);font-size:11px;line-height:1.35}.appearance-field select{width:min(45%,190px);min-height:43px;padding:8px 34px 8px 11px;border:1px solid var(--line);border-radius:13px;color:var(--ink);background:var(--surface-solid)}.appearance-switch{position:relative;cursor:pointer}.appearance-switch input{position:absolute;opacity:0;pointer-events:none}.appearance-switch>i{position:relative;width:48px;height:28px;flex:0 0 auto;border-radius:99px;background:color-mix(in srgb,var(--ink-soft) 32%,var(--surface));transition:.2s}.appearance-switch>i:after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 7px rgba(0,0,0,.2);transition:.2s}.appearance-switch input:checked+i{background:var(--brand)}.appearance-switch input:checked+i:after{transform:translateX(20px)}
.appearance-preview-wrap{position:sticky;top:82px}.appearance-preview-label{display:flex;justify-content:space-between;align-items:baseline;margin:0 4px 9px}.appearance-preview-label small{color:var(--ink-soft)}.appearance-preview{padding:16px;border:1px solid var(--line);border-radius:27px;background:var(--paper);box-shadow:var(--shadow);overflow:hidden}.preview-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;color:var(--ink-soft);font-size:10px;font-weight:850}.preview-top i{width:28px;height:8px;border-radius:9px;background:var(--brand)}.preview-lesson,.preview-task{display:grid;gap:5px;margin-top:9px;padding:14px;border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:16px;background:var(--surface)}.preview-lesson small,.preview-task small,.preview-lesson span,.preview-task span{color:var(--ink-soft);font-size:10px}.preview-lesson em{width:max-content;margin-top:4px;padding:5px 8px;border-radius:99px;color:var(--brand-strong);background:var(--brand-soft);font-size:9px;font-style:normal}.preview-task{border-left-color:#6f78d9}.preview-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:14px;padding:7px;border:1px solid var(--line);border-radius:19px;background:var(--surface)}.preview-nav i{height:38px;display:grid;place-items:center;border-radius:13px;color:var(--ink-soft);font-style:normal}.preview-nav i.active{color:var(--brand-strong);background:var(--brand-soft)}.appearance-saved{margin:16px auto 0;width:max-content;max-width:100%;padding:9px 13px;border-radius:99px;color:var(--ink-soft);background:var(--surface-soft);font-size:11px}

/* True-black OLED theme, while retaining all established dark-theme rules. */
[data-theme-variant="black"]{--paper:#000;--surface:rgba(10,10,10,.97);--surface-solid:#0a0a0a;--surface-soft:#15110e;--ink:#fffaf5;--ink-soft:#b9afa7;--line:rgba(255,255,255,.14);--brand-soft:#28160b;--shadow:0 18px 52px rgba(0,0,0,.58);--shadow-hover:0 22px 62px rgba(0,0,0,.72)}
[data-theme-variant="black"] body{background:radial-gradient(circle at 92% 0%,rgba(229,92,0,.09),transparent 24rem),#000}
[data-theme-variant="black"] .ambient-orb{opacity:.1}
[data-theme-variant="black"] :is(.timeline-content,.kind-task .timeline-content,.modal input,.modal textarea,.modal select,.study-form input,.study-form select,.study-form textarea,.profile-options span,.welcome-choice label span,.community-settings){background:#0d0d0d}
[data-theme-variant="black"] :is(.appearance-section,.appearance-preview,.mobile-nav,.topbar){background:rgba(7,7,7,.97)}

[data-appearance-text="small"]{font-size:14px}[data-appearance-text="normal"]{font-size:16px}[data-appearance-text="large"]{font-size:18px}
[data-appearance-scale="compact"]{--radius:20px}[data-appearance-scale="compact"] :is(.study-card,.panel,.timeline-content){padding-top:12px;padding-bottom:12px}[data-appearance-scale="compact"] .shell{max-width:1100px}
[data-appearance-scale="large"]{--radius:30px}[data-appearance-scale="large"] :is(button,.button,input,select,textarea){min-height:48px}[data-appearance-scale="large"] .mobile-nav a{min-height:64px}
[data-appearance-contrast="high"]{--ink-soft:color-mix(in srgb,var(--ink) 78%,transparent);--line:color-mix(in srgb,var(--ink) 28%,transparent)}
[data-appearance-solid="on"] :is(.topbar,.mobile-nav,.date-nav,.panel,.study-card,.modal){backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background-color:var(--surface-solid)!important}
[data-appearance-solid="on"] .ambient-bg{display:none}
[data-appearance-motion="calm"] .ambient-orb{animation-duration:60s!important}[data-appearance-motion="calm"] .shell.soft-nav-enter{animation-duration:.18s}
[data-appearance-motion="off"] *,[data-appearance-motion="off"] *::before,[data-appearance-motion="off"] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
[data-appearance-cards="compact"] .timeline-item :is(.teacher-line,.lesson-comment,.live-countdown){display:none!important}[data-appearance-cards="compact"] .timeline-content{padding-block:11px!important}
[data-appearance-cards="compact"] .preview-lesson :is(span,em){display:none}
[data-appearance-day="lessons"] .timeline-item.kind-task{display:none!important}
[data-appearance-day="lessons"] .preview-task{display:none}
[data-appearance-day="tasks"] :is(.important-board,.notes-panel){display:none!important}
@media(max-width:760px){.appearance-layout{grid-template-columns:1fr}.appearance-preview-wrap{position:static;order:-1}.choice-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}.appearance-head{align-items:flex-start}.appearance-head>.button{margin-top:8px}.appearance-preview{max-width:440px;margin:auto}}
@media(max-width:520px){.appearance-section{padding:16px}.appearance-field{align-items:flex-start;flex-direction:column}.appearance-field select{width:100%}.preset-grid{grid-template-columns:1fr}}
@media(max-width:760px){[data-appearance-labels="active"] .mobile-nav a:not([aria-current="page"]) .nav-label{display:none}[data-appearance-labels="active"] .mobile-nav a:not([aria-current="page"]){gap:0}[data-appearance-labels="active"] .mobile-nav a[aria-current="page"]{background:var(--brand-soft)}}

/* First-run, device-local appearance tour. */
.appearance-wizard{width:min(760px,100%);min-height:calc(100dvh - 32px);margin:0 auto;display:grid;grid-template-rows:auto auto 1fr auto auto;padding:18px 20px 14px}.wizard-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}.wizard-brand{display:flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none}.wizard-brand .brand-mark{width:37px;height:37px}.wizard-counter{color:var(--ink-soft);font-size:12px;font-weight:850}.wizard-skip{justify-self:end;color:var(--ink-soft);font-size:12px;font-weight:800}.wizard-progress{height:4px;margin:16px 0 0;border-radius:99px;background:var(--line);overflow:hidden}.wizard-progress i{display:block;width:20%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-strong),#ffad52);transition:width .35s ease}.wizard-stage{position:relative;display:grid;align-items:center;min-height:0;padding:24px 0 16px}.wizard-step{grid-area:1/1;visibility:hidden;opacity:0;transform:translateX(22px) scale(.985);pointer-events:none;transition:opacity .24s ease,transform .32s cubic-bezier(.2,.8,.2,1),visibility 0s linear .32s}.wizard-step.is-active{visibility:visible;opacity:1;transform:none;pointer-events:auto;transition-delay:0s}.wizard-step h1{margin:5px 0 12px;font-size:clamp(36px,8vw,68px);line-height:.94;letter-spacing:-.055em}.wizard-lead{max-width:590px;margin:0 0 22px;color:var(--ink-soft);font-size:15px;line-height:1.55}.wizard-presets{grid-template-columns:repeat(2,minmax(0,1fr))}.wizard-presets button{min-height:110px;padding:17px}.wizard-presets button>i{display:grid;place-items:center;width:34px;height:34px;margin-bottom:12px;border-radius:11px;color:var(--brand-strong);background:var(--brand-soft);font-style:normal;font-weight:900}.wizard-tip{margin:15px 0 0;padding:11px 13px;border-radius:14px;color:var(--ink-soft);background:var(--surface-soft);font-size:12px}.wizard-themes button{min-height:90px}.wizard-preview{max-width:390px;margin-top:20px;padding:16px;border:1px solid var(--line);border-radius:23px;background:var(--surface);box-shadow:var(--shadow)}.wizard-fields{padding:4px 18px;border:1px solid var(--line);border-radius:22px;background:var(--surface)}.wizard-ready{display:flex;gap:12px;align-items:center;margin-top:16px;padding:15px;border:1px solid color-mix(in srgb,var(--brand) 48%,var(--line));border-radius:18px;background:var(--brand-soft)}.wizard-ready>span{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:#fff;background:var(--brand);font-weight:900}.wizard-ready b,.wizard-ready small{display:block}.wizard-ready small{margin-top:3px;color:var(--ink-soft)}.wizard-actions{display:grid;grid-template-columns:1fr 1.7fr;gap:10px}.wizard-actions .button{width:100%;min-height:51px;text-align:center;justify-content:center}.wizard-actions [hidden]{display:none}.wizard-dots{display:flex;justify-content:center;gap:6px;margin-top:12px}.wizard-dots i{width:6px;height:6px;border-radius:99px;background:var(--line);transition:.25s}.wizard-dots i.is-active{width:18px;background:var(--brand)}
@media(max-width:600px){.registration-shell:has(.appearance-wizard){padding:0}.appearance-wizard{min-height:100dvh;padding:calc(14px + env(safe-area-inset-top)) 16px calc(10px + env(safe-area-inset-bottom))}.wizard-stage{padding-block:18px}.wizard-step h1{font-size:clamp(37px,12vw,54px)}.wizard-presets{grid-template-columns:1fr 1fr}.wizard-presets button{min-height:104px;padding:13px}.wizard-presets small{font-size:10px}.wizard-themes{grid-template-columns:1fr 1fr}.wizard-fields{padding-inline:15px}.appearance-head-actions{width:100%}.appearance-head-actions .button{flex:1}}
@media(prefers-reduced-motion:reduce){.wizard-step,.wizard-progress i{transition:none}}
