@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/manrope.woff2) format("woff2")}@font-face{font-family:Unbounded;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/unbounded.woff2) format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/spacegrotesk.woff2) format("woff2")}@font-face{font-family:Syne;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/syne.woff2) format("woff2")}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/chakrapetch.woff2) format("woff2")}:root{--font: "Manrope", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-display: "Unbounded", var(--font);--display-weight: 800;--display-tracking: -.04em;--r-xl: 36px;--r-lg: 28px;--r-md: 22px;--r-sm: 16px;--space: 20px;--ease: cubic-bezier(.32, .72, 0, 1);--accent: #ff6a1f;--accent-2: #ff2e7e;--accent-ink: #14080a;--accent-soft: rgba(255, 106, 31, .18);--accent-glow: rgba(255, 106, 31, .45);--accent-gradient: linear-gradient(135deg, var(--accent), var(--accent-2));--cool: #7ce7ff;--cool-soft: rgba(124, 231, 255, .16);--ok: #5cffa6;--warn: #ffd166;--warn-soft: rgba(255, 209, 102, .16);--red-dot: #ff3b5c;--bg-0: #070a12;--bg-1: #0e1424;--bg-2: #1a2140;--mesh-a: #2b1e5c;--mesh-b: #0b3b4a;--mesh-c: #3a1428;--glass: rgba(255, 255, 255, .06);--glass-strong: rgba(255, 255, 255, .1);--glass-card: rgba(255, 255, 255, .045);--glass-edge: linear-gradient( 180deg, rgba(255, 255, 255, .38) 0%, rgba(255, 255, 255, .08) 45%, rgba(255, 255, 255, .04) 100% );--glass-line: rgba(255, 255, 255, .09);--shadow-card: 0 22px 60px rgba(0, 0, 0, .45);--shadow-sm: 0 8px 26px rgba(0, 0, 0, .35);--shadow-accent: 0 12px 40px var(--accent-glow);--blur: 36px;--blur-strong: 48px;--ink: #f5f1e8;--ink-dim: rgba(245, 241, 232, .62);--ink-faint: rgba(245, 241, 232, .36);--text: var(--ink);--text-dim: var(--ink-dim);--text-faint: var(--ink-faint);--glass-bg: var(--glass);--glass-border: var(--glass-line);--glass-hairline: var(--glass-line);--noise-opacity: .045}[data-accent=violet]{--accent: #8b5cff;--accent-2: #2f7cff;--accent-ink: #0a0716;--accent-soft: rgba(139, 92, 255, .2);--accent-glow: rgba(139, 92, 255, .45)}[data-accent=lime]{--accent: #c6ff3d;--accent-2: #35f0d8;--accent-ink: #0b1408;--accent-soft: rgba(198, 255, 61, .16);--accent-glow: rgba(198, 255, 61, .35)}[data-accent=crimson]{--accent: #ff2d55;--accent-2: #ff8a00;--accent-ink: #160508;--accent-soft: rgba(255, 45, 85, .18);--accent-glow: rgba(255, 45, 85, .45)}[data-font=space]{--font-display: "Space Grotesk", var(--font);--display-weight: 700;--display-tracking: -.03em}[data-font=syne]{--font-display: "Syne", var(--font);--display-weight: 800;--display-tracking: -.02em}[data-font=chakra]{--font-display: "Chakra Petch", var(--font);--display-weight: 700;--display-tracking: 0}[data-daypart=dawn],[data-daypart=evening]{--mesh-a: #4a1f4e;--mesh-c: #5a2a1c}[data-daypart=night]{--bg-1: #0a0e1b;--mesh-b: #0a2b3a}[data-theme=light]{--bg-0: #e6dccb;--bg-1: #efe7da;--bg-2: #f7f1e6;--mesh-a: #f2c4a8;--mesh-b: #bfe3e6;--mesh-c: #e9c3d6;--glass: rgba(255, 255, 255, .42);--glass-strong: rgba(255, 255, 255, .6);--glass-card: rgba(255, 255, 255, .36);--glass-edge: linear-gradient( 180deg, rgba(255, 255, 255, .95) 0%, rgba(255, 255, 255, .4) 45%, rgba(26, 23, 18, .06) 100% );--glass-line: rgba(26, 23, 18, .1);--shadow-card: 0 22px 60px rgba(60, 40, 20, .18);--shadow-sm: 0 8px 26px rgba(60, 40, 20, .12);--ink: #1a1712;--ink-dim: rgba(26, 23, 18, .62);--ink-faint: rgba(26, 23, 18, .38);--cool: #0a7a9a;--cool-soft: rgba(10, 122, 154, .14);--ok: #178a4f;--warn: #b4780a;--warn-soft: rgba(180, 120, 10, .14);--noise-opacity: .06}[data-theme=light][data-accent=lime]{--accent: #6fb400;--accent-2: #00b39a;--accent-ink: #ffffff;--accent-soft: rgba(111, 180, 0, .16);--accent-glow: rgba(111, 180, 0, .35)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{font-family:var(--font);font-feature-settings:"ss01","cv11";color:var(--ink);overflow:hidden;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;background-color:var(--bg-1);background-image:radial-gradient(80% 60% at 20% 10%,var(--mesh-a) 0%,transparent 60%),radial-gradient(70% 60% at 85% 20%,var(--mesh-b) 0%,transparent 60%),radial-gradient(80% 70% at 60% 100%,var(--mesh-c) 0%,transparent 60%),linear-gradient(160deg,var(--bg-2) 0%,var(--bg-1) 50%,var(--bg-0) 100%);background-attachment:fixed;transition:background-color 1.2s ease}.mesh{position:fixed;z-index:0;border-radius:50%;filter:blur(70px);pointer-events:none;will-change:transform}.mesh-a{left:-14vmax;top:-18vmax;width:58vmax;height:58vmax;background:radial-gradient(circle,var(--accent-soft) 0%,var(--mesh-a) 35%,transparent 68%);opacity:.8;animation:drift-a 42s ease-in-out infinite alternate}.mesh-b{right:-16vmax;top:6vmax;width:50vmax;height:50vmax;background:radial-gradient(circle,var(--mesh-b) 0%,transparent 66%);opacity:.9;animation:drift-b 55s ease-in-out infinite alternate}.mesh-c{left:24vmax;bottom:-26vmax;width:62vmax;height:62vmax;background:radial-gradient(circle,var(--mesh-c) 0%,transparent 66%);opacity:.85;animation:drift-c 48s ease-in-out infinite alternate}@keyframes drift-a{to{transform:translate(12vmax,8vmax) scale(1.08)}}@keyframes drift-b{to{transform:translate(-10vmax,12vmax) scale(.94)}}@keyframes drift-c{to{transform:translate(-14vmax,-8vmax) scale(1.06)}}.noise{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:var(--noise-opacity);mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");background-size:220px 220px}.glass{position:relative;background:var(--glass);border:1px solid transparent;border-radius:var(--r-lg);corner-shape:superellipse(1.4);backdrop-filter:blur(var(--blur)) saturate(160%);-webkit-backdrop-filter:blur(var(--blur)) saturate(160%);box-shadow:var(--shadow-card)}.glass:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:var(--glass-edge);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;pointer-events:none}.glass:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(120% 80% at 0% 0%,#ffffff24,#fff0 55%);pointer-events:none}.glass>*{position:relative;z-index:1}.glass-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:56px;min-height:56px;padding:0 22px;font:inherit;font-size:19px;font-weight:700;letter-spacing:-.01em;color:var(--ink);cursor:pointer;border-radius:999px;background:var(--glass-strong);box-shadow:var(--shadow-sm);transition:transform .18s var(--ease),box-shadow .25s var(--ease),background-color .25s ease,color .25s ease}.glass-button:active{transform:scale(.94);box-shadow:var(--shadow-sm),0 0 0 7px var(--accent-soft)}.glass-button:disabled{opacity:.4;cursor:default}.glass-button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);box-shadow:var(--shadow-sm),inset 0 0 0 1px var(--accent)}.btn-accent,.timer-primary{background:var(--accent-gradient)!important;color:var(--accent-ink)!important;box-shadow:var(--shadow-accent)!important}.btn-accent:before,.timer-primary:before{display:none}h1{margin:0 0 8px;font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);font-size:34px;line-height:1.1}h2{margin:0 0 6px;font-size:21px;font-weight:700;letter-spacing:-.01em;color:var(--ink-dim)}.display,.widget-clock-time,.widget-timer-value,.timer-value,.shell-clock,.idle-clock,.weather-now-temp,.widget-weather-temp,.app-progress{font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);font-variant-numeric:tabular-nums}.shell{position:relative;z-index:2;height:100%;width:100%;overflow:hidden}.pager{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:pan-y}.pager-track{display:flex;height:100%;will-change:transform}.pager-page{flex:0 0 100%;height:100%;padding:var(--space);padding-bottom:112px;transition:opacity .45s var(--ease),transform .45s var(--ease)}.pager-page[data-active=false]{opacity:.6;transform:scale(.96)}.screen{height:100%;padding:28px 32px;overflow-y:auto;border-radius:var(--r-xl)}.shell-dock{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:14px;padding:0 var(--space) var(--space);pointer-events:none}.shell-dock>*{pointer-events:auto}.home-button{position:relative;flex:0 0 auto;width:72px;height:72px;min-width:72px;min-height:72px;padding:0;border-radius:50%}.home-button svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.red-dot{position:absolute;top:2px;right:2px;width:16px;height:16px;border-radius:50%;background:var(--accent-gradient);box-shadow:0 0 0 3px var(--bg-1),0 0 14px var(--accent-glow);animation:dot-breathe 2.4s ease-in-out infinite}@keyframes dot-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.shell-clock{position:absolute;top:calc(var(--space) + 28px);right:calc(var(--space) + 32px);z-index:5;display:flex;align-items:baseline;gap:16px;height:40px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;font-size:30px;line-height:40px;color:var(--ink);pointer-events:none}.shell-clock:before,.shell-clock:after{display:none}.shell-clock-time{opacity:.85}.shell-clock-timer{font-size:22px;color:var(--accent)}.shell-clock-timer[data-finished=true]{color:var(--red-dot)}.dashboard{display:flex;flex-direction:column;gap:16px;overflow:hidden}.dashboard-header{display:flex;align-items:center;gap:14px;flex:0 0 auto;padding-right:200px}.dashboard-header h1{margin:0}.mood-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 10px;border-radius:999px;background:var(--glass-strong);color:var(--ink-dim);font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.mood-pill:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--mood, var(--cool));box-shadow:0 0 10px var(--mood, var(--cool))}[data-mood=today]{--mood: #ffb02e}[data-mood=day_complete]{--mood: #35f0d8}[data-mood=bag_prep]{--mood: #b48cff}[data-mood=bag_ready]{--mood: #5cffa6}[data-mood=morning]{--mood: #7ce7ff}.stale-chip{display:inline-flex;align-items:center;gap:7px;padding:4px 12px 4px 9px;border-radius:999px;border:1px solid var(--warn);background:var(--warn-soft);color:var(--warn);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;animation:chip-in .4s var(--ease)}.stale-chip:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--warn);animation:dot-breathe 1.6s ease-in-out infinite}@keyframes chip-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.widget-card .stale-chip{align-self:flex-start;padding:2px 9px 2px 7px;font-size:10px}.widget-area{position:relative;flex:1 1 auto;min-height:0}.widget-grid{display:grid;gap:16px;height:100%;touch-action:none;perspective:1200px}.widget-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:16px 18px;min-height:0;overflow:hidden;background:var(--glass-card);border-radius:var(--r-lg);box-shadow:var(--shadow-sm),0 30px 50px -30px var(--accent-glow);transform:perspective(900px) rotateX(var(--ty, 0deg)) rotateY(var(--tx, 0deg));transform-style:preserve-3d;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}.widget-card[data-widget=clock],.widget-card[data-widget=weather],.widget-card[data-widget=bag_status]{border-radius:var(--r-md)}.widget-card[data-tilting=true]{transition:none;box-shadow:var(--shadow-card),0 30px 60px -20px var(--accent-glow)}.widget-grid[data-editing=true] .widget-card{box-shadow:0 0 0 2px var(--accent-soft),var(--shadow-sm);animation:widget-jiggle .6s ease-in-out infinite alternate}@keyframes widget-jiggle{0%{transform:rotate(-.35deg)}to{transform:rotate(.35deg)}}.widget-title{display:flex;align-items:center;gap:8px;margin:0;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim)}.widget-title:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent-gradient)}.widget-body{flex:1 1 auto;min-height:0;overflow:hidden;touch-action:none;font-size:17px;-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 18px),transparent);mask-image:linear-gradient(180deg,#000 calc(100% - 18px),transparent)}.widget-remove,.widget-resize{position:absolute;z-index:2;width:32px;height:32px;border-radius:50%;border:1px solid var(--glass-line);background:var(--glass-strong);color:var(--ink);display:flex;align-items:center;justify-content:center;font:inherit;font-size:19px;line-height:1;cursor:pointer;box-shadow:var(--shadow-sm)}.widget-remove{top:6px;left:6px}.widget-resize{right:6px;bottom:6px;cursor:nwse-resize;background:var(--accent-gradient);border-color:transparent}.widget-edit-bar{position:absolute;left:50%;bottom:8px;transform:translate(-50%);display:flex;gap:8px;padding:6px;z-index:3;border-radius:999px}.widget-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4;background:#00000073;animation:fade-in .25s ease}.widget-sheet{position:fixed;left:var(--space);right:var(--space);bottom:var(--space);z-index:5;padding:22px 26px 26px;max-height:60%;overflow-y:auto;border-radius:var(--r-xl);backdrop-filter:blur(var(--blur-strong)) saturate(160%);-webkit-backdrop-filter:blur(var(--blur-strong)) saturate(160%);animation:sheet-up .45s var(--ease)}@keyframes sheet-up{0%{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.widget-sheet h2{color:var(--ink)}.widget-sheet-list{display:flex;flex-wrap:wrap;gap:10px}.widget-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.widget-check{display:flex;align-items:center;gap:12px;width:100%;padding:6px;border:0;border-radius:14px;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:background-color .2s ease}.widget-check:active{background:var(--glass-strong)}.widget-check-box{flex:0 0 auto;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:16px;border-radius:9px;border:1.5px solid var(--glass-line);background:var(--glass-strong);color:var(--accent-ink);transition:background .2s ease,border-color .2s ease}.widget-check[aria-pressed=true] .widget-check-box{background:var(--accent-gradient);border-color:transparent;box-shadow:0 4px 14px var(--accent-glow)}.widget-done{opacity:.45;text-decoration:line-through}.widget-new{width:10px;height:10px;border-radius:50%;background:var(--accent-gradient);box-shadow:0 0 10px var(--accent-glow);flex:0 0 auto}.widget-empty,.widget-caption,.widget-dim{margin:2px 0;color:var(--ink-dim)}.widget-error{margin:0 0 6px;color:var(--red-dot);font-size:15px}.widget-lesson{display:flex;gap:12px;padding:3px 0}.widget-lesson-time{min-width:52px;font-variant-numeric:tabular-nums;color:var(--cool)}.widget-bar{height:8px;border-radius:999px;background:var(--glass-line);overflow:hidden}.widget-bar-fill{height:100%;border-radius:inherit;background:var(--accent-gradient);box-shadow:0 0 12px var(--accent-glow);transition:width .4s var(--ease)}.widget-clock{display:flex;flex-direction:column;justify-content:center;height:100%}.widget-clock-time{font-size:52px;line-height:1}.widget-clock-date{margin-top:8px;color:var(--ink-dim)}.widget-timer{display:flex;flex-direction:column;gap:10px;height:100%;justify-content:center}.widget-timer-value{font-size:46px;line-height:1}.widget-timer[data-running=true] .widget-timer-value{color:var(--accent)}.widget-timer-status{display:flex;gap:12px;flex-wrap:wrap;font-size:15px}.widget-timer-alarm{color:var(--cool)}.widget-timer-controls{display:flex;flex-wrap:wrap;gap:8px}.widget-chip{min-width:0;min-height:40px;padding:0 14px;font-size:16px;border-radius:999px}.widget-weather-now{display:flex;align-items:center;gap:12px}.widget-weather-icon{font-size:32px}.widget-weather-temp{font-size:40px}.widget-grid[data-editing=true] .widget-body{pointer-events:none}.app-screen{display:flex;flex-direction:column;gap:18px;overflow:hidden}.app-header{display:flex;align-items:center;flex-wrap:wrap;gap:14px;flex:0 0 auto;padding-right:200px}.app-header h1{margin:0}.tab-bar{display:flex;gap:4px;margin-left:auto;padding:4px;border-radius:999px;background:#00000040}[data-theme=light] .tab-bar{background:#1a171214}.tab{min-height:48px;padding:0 22px;border-radius:999px;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--ink-dim);font-size:17px}.tab:before,.tab:after{display:none}.tab[aria-selected=true]{background:var(--accent-gradient);color:var(--accent-ink);box-shadow:var(--shadow-accent)}.app-body{flex:1 1 auto;min-height:0;overflow-y:auto;font-size:20px;-webkit-overflow-scrolling:touch}.app-group{margin-bottom:18px}.app-group h2{position:sticky;top:0;z-index:1;margin:0 0 8px;padding:6px 0;background:linear-gradient(var(--bg-1),var(--bg-1));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}[data-theme=light] .app-group h2{background:linear-gradient(var(--bg-2),var(--bg-2))}.app-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.app-check{display:flex;align-items:center;gap:16px;width:100%;min-height:58px;padding:8px 14px;border:0;border-radius:var(--r-md);background:none;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:background-color .2s ease}.app-check:active{background:var(--glass-strong)}.app-check-box{flex:0 0 auto;width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:22px;border-radius:12px;border:1.5px solid var(--glass-line);background:var(--glass-strong);color:var(--accent-ink);transition:background .2s ease,border-color .2s ease,transform .2s var(--ease)}.app-check[aria-pressed=true] .app-check-box{background:var(--accent-gradient);border-color:transparent;box-shadow:0 6px 18px var(--accent-glow);transform:scale(1.04)}.app-check-big{min-height:66px;font-size:22px}.app-done{opacity:.45;text-decoration:line-through}.app-desc,.app-dim,.app-empty,.app-waiting{color:var(--ink-dim)}.app-waiting{display:flex;align-items:center;justify-content:center;height:100%;font-size:30px;font-weight:700;text-align:center}.app-date{margin:0 0 10px}.app-lesson{display:flex;align-items:baseline;gap:16px}.app-lesson-row{min-height:58px;padding:8px 14px;border-radius:var(--r-md);border-bottom:1px solid var(--glass-line)}.app-lesson-time{flex:0 0 auto;min-width:62px;font-variant-numeric:tabular-nums;color:var(--cool)}.app-lesson-subject{font-weight:700}.lesson-cancelled .app-lesson-subject,.lesson-cancelled .app-lesson-time{opacity:.5;text-decoration:line-through}.app-cancelled-chip{margin-left:auto;padding:2px 12px;border-radius:999px;background:var(--red-dot);color:#fff;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.app-progress{margin:0 0 10px;font-size:28px;color:var(--accent)}.app-bar{height:12px;margin-bottom:18px;border-radius:999px;background:var(--glass-line);overflow:hidden}.app-bar-fill{height:100%;border-radius:inherit;background:var(--accent-gradient);box-shadow:0 0 16px var(--accent-glow);transition:width .4s var(--ease)}.timer-body{display:flex;gap:28px;overflow:hidden}.timer-main{flex:1 1 60%;display:flex;flex-direction:column;gap:18px;align-items:flex-start;justify-content:center;min-width:0}.timer-dial{--progress: 0;position:relative;display:flex;align-items:center;justify-content:center;width:300px;height:300px;flex:0 0 auto;border-radius:50%;background:#00000038;box-shadow:inset 0 0 0 12px var(--glass-line)}[data-theme=light] .timer-dial{background:#ffffff59}.timer-dial:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:conic-gradient(from 0deg,var(--accent-2) 0deg,var(--accent) calc(var(--progress) * 360deg),transparent 0);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 12px),#000 calc(100% - 11px));mask:radial-gradient(farthest-side,transparent calc(100% - 12px),#000 calc(100% - 11px));filter:drop-shadow(0 0 10px var(--accent-glow))}.timer-dial-inner{display:flex;flex-direction:column;align-items:center;gap:4px}.timer-value{font-size:66px;line-height:1}.timer-phase{margin:0;font-size:18px}.timer-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.timer-primary{padding:0 34px}.timer-duration,.timer-alarm-time{min-width:72px;font-size:24px;font-weight:700;font-variant-numeric:tabular-nums;text-align:center}.timer-ringing{display:flex;align-items:center;gap:16px;padding:10px 18px;border-radius:999px;background:var(--red-dot);color:#fff;font-size:22px;font-weight:700}.timer-alarms{flex:0 0 36%;display:flex;flex-direction:column;gap:12px;padding-left:28px;border-left:1px solid var(--glass-line);overflow-y:auto}.timer-alarms h2{color:var(--ink)}.timer-alarm{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px;border-radius:14px;border:1px solid var(--glass-line);background:var(--glass)}.timer-alarm-field{display:flex;align-items:center;gap:12px}.timer-alarm-input{min-height:52px;padding:0 18px;border-radius:999px;border:1px solid var(--glass-line);background:var(--glass-strong);font:inherit;font-size:28px;font-weight:700;font-variant-numeric:tabular-nums;color:inherit;outline:none;color-scheme:dark}[data-theme=light] .timer-alarm-input{color-scheme:light}.timer-alarm-input:focus-visible{border-color:var(--accent)}.timer-step-label{min-width:44px}.timer-alert-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:9;display:flex;align-items:center;justify-content:center;background:#00000080;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);animation:fade-in .35s var(--ease)}.timer-alert{display:flex;flex-direction:column;align-items:center;gap:14px;padding:44px 60px;text-align:center;border-radius:var(--r-xl);animation:sheet-up .45s var(--ease),alert-pulse 1.2s ease-in-out infinite alternate}.timer-alert h2{margin:0;font-family:var(--font-display);font-weight:var(--display-weight);font-size:44px;color:var(--ink)}.timer-alert-icon{font-size:64px;line-height:1;animation:alert-ring .9s ease-in-out infinite}@keyframes alert-ring{0%,to{transform:rotate(-12deg)}50%{transform:rotate(12deg)}}.timer-alert-detail{margin:0 0 8px;font-size:22px;color:var(--ink-dim)}@keyframes alert-pulse{0%{box-shadow:var(--shadow-card),0 0 0 0 var(--accent-soft)}to{box-shadow:var(--shadow-card),0 0 0 24px transparent}}.weather-now{display:flex;align-items:center;gap:22px;margin-bottom:24px}.weather-now-icon{font-size:84px;line-height:1}.weather-now-temp{margin:0;font-size:72px;line-height:1}.weather-now p{margin:2px 0}.weather-forecast{gap:4px}.weather-day{display:flex;align-items:center;gap:16px;min-height:58px;padding:6px 14px;border-radius:var(--r-md);border-bottom:1px solid var(--glass-line)}.weather-day-name{flex:0 0 130px;font-weight:700}.weather-day-icon{font-size:26px}.weather-day-label{flex:1 1 auto;color:var(--ink-dim)}.weather-day-range{flex:0 0 auto;font-variant-numeric:tabular-nums}.ha-row{display:flex;align-items:center;gap:14px;min-height:58px;padding:4px 14px;border-radius:var(--r-md);border-bottom:1px solid var(--glass-line)}.ha-row .app-check{min-height:48px;padding:0}.ha-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ha-state{flex:0 0 auto;font-variant-numeric:tabular-nums}.ha-controls{display:flex;flex:0 0 auto;gap:8px}.settings-body{font-size:18px}.settings-section{margin-bottom:20px;padding:20px 22px;border-radius:var(--r-lg);background:var(--glass-card);border:1px solid var(--glass-line)}.settings-section h2{color:var(--ink);font-size:23px}.settings-section h3{margin:18px 0 6px;font-size:18px;font-weight:700}.settings-section p{margin:4px 0 10px}.settings-form{display:flex;flex-direction:column;gap:12px;align-items:flex-start}.settings-field{display:flex;align-items:center;gap:14px;width:100%;max-width:640px}.settings-field>span{flex:0 0 220px;color:var(--ink-dim)}.settings-input{flex:1 1 auto;min-width:0;min-height:50px;padding:0 16px;font:inherit;font-size:18px;color:var(--ink);background:#00000040;border:1px solid var(--glass-line);border-radius:var(--r-sm);outline:none;color-scheme:dark;transition:border-color .2s ease}[data-theme=light] .settings-input{background:#ffffff8c;color-scheme:light}.settings-input:focus-visible{border-color:var(--accent)}.settings-slider{flex:1 1 auto;min-height:48px;accent-color:var(--accent)}.settings-row{display:flex;align-items:center;gap:10px;margin:10px 0}.settings-wrap{flex-wrap:wrap}.settings-chip,.settings-toggle{min-width:0;min-height:48px;padding:0 18px;font-size:17px;border-radius:999px;border:1px solid var(--glass-line);background:var(--glass-strong)}.settings-toggle[aria-pressed=true],.settings-chip[aria-pressed=true]{background:var(--accent-gradient);border-color:transparent;color:var(--accent-ink);box-shadow:var(--shadow-accent)}.settings-hint code{font-size:15px;word-break:break-all}.settings-debug{max-height:240px;margin:8px 0 0;padding:12px 14px;overflow:auto;font-size:14px;border-radius:var(--r-sm);border:1px solid var(--glass-line);background:#0000004d}.settings-notes{margin:0;padding-left:22px;color:var(--ink-dim);line-height:1.6}.status-row{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;border-radius:18px;border:1px solid var(--glass-line);background:var(--glass)}.status-main{display:flex;align-items:center;gap:12px}.status-name{font-weight:700}.status-ok{color:var(--ok)}.status-bad{color:var(--red-dot)}.bag-mapping{display:flex;flex-direction:column;gap:16px}.bag-mapping-subject{padding:12px 14px;border-radius:18px;border:1px solid var(--glass-line);background:var(--glass)}.bag-mapping-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.bag-mapping-head h3{margin:0}.bag-mapping-items{margin:8px 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.bag-mapping-items li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px}.settings-error{margin:0 0 18px;padding:12px 16px;border-radius:18px;color:var(--red-dot);font-weight:700}.appearance-accents{gap:12px}.accent-swatch{display:flex;flex-direction:column;align-items:center;gap:8px;padding:0;border:0;background:none;font:inherit;color:var(--ink);cursor:pointer}.accent-swatch-chip{width:74px;height:74px;border-radius:24px;background:linear-gradient(135deg,var(--swatch-a),var(--swatch-b));border:3px solid transparent;box-shadow:0 10px 30px -8px var(--swatch-a);transition:transform .2s var(--ease),border-color .2s ease}.accent-swatch[aria-checked=true] .accent-swatch-chip{border-color:var(--ink);transform:scale(1.08)}.accent-swatch-name,.font-option-name,.screensaver-name{font-size:15px;font-weight:700}.accent-swatch[aria-checked=true] .accent-swatch-name,.font-option[aria-checked=true] .font-option-name,.screensaver-option[aria-checked=true] .screensaver-name{color:var(--accent)}.appearance-fonts{gap:12px}.font-option{display:flex;flex-direction:column;align-items:center;gap:8px;padding:0;border:0;background:none;font:inherit;color:var(--ink);cursor:pointer}.font-sample{display:flex;align-items:center;justify-content:center;width:150px;height:74px;border-radius:20px;border:3px solid transparent;background:#00000047;font-size:34px;font-variant-numeric:tabular-nums;transition:transform .2s var(--ease),border-color .2s ease}[data-theme=light] .font-sample{background:#ffffff80}.font-option[aria-checked=true] .font-sample{border-color:var(--accent);transform:scale(1.04)}.font-sample[data-font=unbounded]{font-family:"Unbounded",var(--font);font-weight:800;letter-spacing:-.04em}.font-sample[data-font=space]{font-family:"Space Grotesk",var(--font);font-weight:700;letter-spacing:-.03em}.font-sample[data-font=syne]{font-family:"Syne",var(--font);font-weight:800}.font-sample[data-font=chakra]{font-family:"Chakra Petch",var(--font);font-weight:700}.idle-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:6vh 6vw;color:var(--ink);background:radial-gradient(70% 60% at 50% 110%,var(--accent-soft),transparent 70%),#070a128c;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);animation:fade-in .6s var(--ease)}[data-theme=light] .idle-overlay{color:var(--ink);background:radial-gradient(70% 60% at 50% 110%,var(--accent-soft),transparent 70%),#efe7da8c}.idle-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:100%;height:100%;border-radius:var(--r-xl);background:var(--glass)}[data-daypart=night] .idle-overlay{filter:brightness(.65)}.idle-overlay .idle-date{font-size:28px;font-weight:600;opacity:.6}.idle-clock{display:flex;align-items:baseline;line-height:.9}.idle-clock-hidden{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.idle-clock-bold{font-size:min(32vw,54vh);font-weight:900;letter-spacing:-.07em}.idle-clock-bold .idle-hours{color:var(--accent)}.idle-clock-bold .idle-minutes{color:var(--accent-2)}.idle-clock-bold .idle-colon{color:var(--accent);opacity:.85;margin:0 -.02em;animation:colon-blink 2s steps(1) infinite}@keyframes colon-blink{50%{opacity:.25}}.idle-clock-float{flex-direction:column;align-items:center;font-size:min(30vw,44vh);font-weight:800;letter-spacing:-.05em;line-height:.82}.idle-clock-float .idle-hours{color:var(--cool)}.idle-clock-float .idle-minutes{color:var(--accent)}.idle-colon-hidden{display:none}.idle-clock-minimal{font-size:min(30vw,48vh);font-weight:300;letter-spacing:-.04em;color:var(--ink)}.idle-analog{width:min(66vh,60vw);height:min(66vh,60vw);filter:drop-shadow(0 10px 30px var(--accent-glow))}.idle-tick{stroke:var(--ink-faint);stroke-width:1;stroke-linecap:round}.idle-tick-major{stroke:var(--accent);stroke-width:2.5}.idle-numeral{fill:var(--accent);font-family:var(--font-display);font-size:22px;font-weight:700;text-anchor:middle}.idle-hand{stroke-linecap:round}.idle-hand-hour{stroke:var(--ink);stroke-width:6}.idle-hand-minute{stroke:var(--ink);stroke-width:4}.idle-hand-second{stroke:var(--accent-2);stroke-width:1.5}.idle-pivot{fill:var(--accent)}.idle-overlay[data-style=analog] .idle-date{color:var(--accent);opacity:.9}.idle-info{display:flex;align-items:center;gap:8vw}.idle-clock-info{font-size:min(18vw,30vh);color:var(--ink)}.idle-info-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:18px}.idle-info-list li{display:flex;flex-direction:column;gap:4px;min-width:280px;padding:16px 22px;border-radius:var(--r-md);background:var(--glass-strong);border:1px solid var(--glass-line)}.idle-info-label{font-size:15px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;opacity:.55}.idle-info-value{font-size:30px;font-weight:700;color:var(--accent)}.screensaver-picker{gap:14px}.screensaver-option{display:flex;flex-direction:column;align-items:center;gap:8px;padding:0;border:0;background:none;font:inherit;color:var(--ink);cursor:pointer}.screensaver-preview{display:flex;align-items:center;justify-content:center;width:150px;height:94px;border-radius:18px;border:3px solid transparent;background:linear-gradient(160deg,var(--bg-2),var(--bg-0));color:var(--accent);font-family:var(--font-display);font-size:34px;font-weight:900;letter-spacing:-.05em;font-variant-numeric:tabular-nums;transition:border-color .2s ease,transform .2s var(--ease)}.screensaver-option[aria-checked=true] .screensaver-preview{border-color:var(--accent);transform:scale(1.04)}.screensaver-option[data-style=minimal] .screensaver-preview{color:#fff;font-weight:300}.screensaver-preview-float{display:flex;flex-direction:column;line-height:.85;font-size:30px}.screensaver-preview-float b{color:var(--cool)}.screensaver-preview-float i{color:var(--accent);font-style:normal}.screensaver-preview-dial{position:relative;width:64px;height:64px;border-radius:50%;border:2px solid var(--accent)}.screensaver-preview-dial:before,.screensaver-preview-dial:after{content:"";position:absolute;left:50%;bottom:50%;transform-origin:bottom;background:#fff;border-radius:2px}.screensaver-preview-dial:before{width:3px;height:20px;transform:rotate(300deg)}.screensaver-preview-dial:after{width:2px;height:26px;transform:rotate(60deg)}.screensaver-preview-info{display:flex;align-items:center;gap:8px;font-size:22px;color:#fff}.screensaver-preview-info i{display:block;width:22px;height:16px;border-radius:5px;background:#ffffff2e}@media(prefers-reduced-motion:reduce){.glass-button,.idle-overlay,.widget-sheet,.widget-sheet-backdrop,.timer-alert,.timer-alert-icon,.red-dot,.stale-chip,.stale-chip:before,.mesh,.widget-grid[data-editing=true] .widget-card{transition:none!important;animation:none!important}.widget-card{transform:none!important}.pager-track{transition-duration:.25s!important;transition-timing-function:ease-out!important}.pager-page{transition-duration:.25s!important}}:root{--space: clamp(12px, 1.6vw, 20px)}.screen{padding:clamp(14px,2.2vw,28px) clamp(16px,2.6vw,32px)}.pager-page{padding-bottom:clamp(84px,12.5vh,112px)}h1,.app-header h1,.dashboard-header h1{font-size:clamp(20px,2.4vw,34px);line-height:1.12}.dashboard-header{gap:clamp(8px,1vw,14px);padding-right:clamp(100px,11vw,190px);min-width:0}.dashboard-header h1{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-header{padding-right:clamp(100px,11vw,190px)}.mood-pill{padding:4px 10px 4px 8px;font-size:clamp(10px,1.05vw,13px)}.shell-clock{top:calc(var(--space) + clamp(18px,2.4vw,28px));right:calc(var(--space) + clamp(16px,2.6vw,32px));height:auto;line-height:1.15;font-size:clamp(20px,2.3vw,30px)}.shell-clock-timer{font-size:clamp(15px,1.7vw,22px)}.stale-chip{font-size:clamp(10px,1vw,12px)}.widget-grid{gap:clamp(10px,1.2vw,16px)}.widget-card{gap:clamp(4px,.6vh,8px);padding:clamp(9px,1.4vh,16px) clamp(12px,1.5vw,18px)}.widget-title{font-size:clamp(10px,1vw,12px)}.widget-body{font-size:clamp(14px,1.45vw,17px);-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 12px),transparent);mask-image:linear-gradient(180deg,#000 calc(100% - 12px),transparent)}.widget-card[data-widget=clock] .widget-body,.widget-card[data-widget=timer] .widget-body,.widget-card[data-widget=weather] .widget-body,.widget-card[data-widget=bag_status] .widget-body{-webkit-mask-image:none;mask-image:none}.widget-clock-time{font-size:min(4.2vw,7vh)}.widget-clock-date{margin-top:clamp(2px,.5vh,6px);font-size:min(1.35vw,2.2vh)}.widget-timer{gap:clamp(5px,.9vh,10px)}.widget-timer-value{font-size:min(3.8vw,6.2vh)}.widget-timer-status{font-size:min(1.2vw,2vh)}.widget-bar{height:clamp(5px,.8vh,8px)}.widget-chip{min-height:min(3.6vw,5vh);padding:0 clamp(9px,1.1vw,14px);font-size:min(1.3vw,2.1vh)}.widget-check{gap:clamp(8px,1vw,12px);padding:clamp(3px,.5vh,6px)}.widget-check-box{width:clamp(20px,2.2vw,28px);height:clamp(20px,2.2vw,28px);font-size:clamp(12px,1.3vw,16px)}.widget-lesson{gap:clamp(8px,1vw,12px);padding:clamp(1px,.3vh,3px) 0}.widget-lesson-time{min-width:clamp(42px,4.4vw,52px)}.widget-weather-temp{font-size:min(3.4vw,5.6vh)}.widget-weather-icon{font-size:min(2.6vw,4.4vh)}.glass-button{min-width:clamp(44px,4.6vw,56px);min-height:clamp(44px,4.6vw,56px);padding:0 clamp(14px,1.8vw,22px);font-size:clamp(15px,1.6vw,19px)}.tab{min-height:clamp(38px,4vw,48px);padding:0 clamp(14px,1.8vw,22px);font-size:clamp(14px,1.4vw,17px)}.home-button{width:clamp(56px,6vw,72px);height:clamp(56px,6vw,72px);min-width:clamp(56px,6vw,72px);min-height:clamp(56px,6vw,72px)}.home-button svg{width:clamp(24px,2.5vw,30px);height:clamp(24px,2.5vw,30px)}.app-screen{gap:clamp(10px,1.5vh,18px)}.app-body{font-size:clamp(16px,1.7vw,20px)}.app-check,.app-lesson-row,.weather-day,.ha-row{min-height:clamp(46px,6vh,58px)}.app-check-box{width:clamp(30px,3.2vw,38px);height:clamp(30px,3.2vw,38px);font-size:clamp(17px,1.9vw,22px)}.app-progress{font-size:clamp(20px,2.4vw,28px)}.timer-body{gap:clamp(16px,2.2vw,28px)}.timer-main{gap:clamp(10px,1.6vh,18px)}.timer-dial{width:min(26vw,40vh);height:min(26vw,40vh)}.timer-value{font-size:min(5.6vw,8.5vh)}.timer-alarms{flex-basis:40%;padding-left:clamp(16px,2.2vw,28px)}.timer-alarm-input{min-height:clamp(42px,4.5vw,52px);font-size:clamp(20px,2.3vw,28px)}.timer-duration,.timer-alarm-time{font-size:clamp(18px,2vw,24px)}.weather-now-icon{font-size:min(6.5vw,10vh)}.weather-now-temp{font-size:min(5.6vw,9vh)}.settings-body{font-size:clamp(15px,1.5vw,18px)}.settings-field>span{flex-basis:clamp(150px,18vw,220px)}.screensaver-preview,.font-sample{width:clamp(110px,12vw,150px)}.accent-swatch-chip{width:clamp(56px,6vw,74px);height:clamp(56px,6vw,74px)}:root{--dock-h: clamp(56px, 6vw, 72px)}.pager-page{padding-bottom:calc(var(--dock-h) + var(--space) * 2 + 6px)}.shell-dock{gap:clamp(8px,1vw,14px)}.widget-timer-controls{flex-wrap:nowrap;gap:clamp(4px,.6vw,8px)}.widget-timer-controls .widget-chip{flex:1 1 0;min-width:0;padding:0 clamp(4px,.6vw,10px);white-space:nowrap}.widget-card{padding-bottom:clamp(10px,1.6vh,18px)}.timer-alert{min-width:min(520px,80vw);padding:clamp(28px,4vh,44px) clamp(36px,5vw,64px);gap:clamp(6px,1vh,12px)}.timer-alert-kicker{display:inline-flex;align-items:center;gap:8px;font-size:clamp(11px,1.05vw,13px);font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim)}.timer-alert-kicker:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent-gradient);box-shadow:0 0 10px var(--accent-glow)}.timer-alert-icon{display:flex;align-items:center;justify-content:center;width:clamp(56px,6.5vw,76px);height:clamp(56px,6.5vw,76px);margin-top:6px;border-radius:50%;background:var(--accent-soft);box-shadow:0 0 0 1px var(--glass-line),0 10px 30px -10px var(--accent-glow);animation:alert-ring .9s ease-in-out infinite;font-size:0}.timer-alert-icon svg{width:55%;height:55%;fill:none;stroke:var(--accent);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.timer-alert-time{font-size:min(7vw,12vh);line-height:1;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.timer-alert h2{font-size:clamp(24px,2.8vw,36px)}.timer-alert-detail{font-size:clamp(15px,1.6vw,20px)}.shell-clock-timer{display:inline-flex;align-items:center;gap:6px}.shell-clock-icon{width:.9em;height:.9em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.weather-icon{display:block;width:1em;height:1em;fill:none;stroke:var(--accent);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 4px 12px var(--accent-glow))}.widget-weather-icon,.weather-now-icon,.weather-day-icon{display:inline-flex;line-height:0}.dashboard-header,.app-header{padding-right:calc(var(--clock-w, 120px) + clamp(16px,2vw,28px))}.app-header .tab-bar{flex:0 0 auto}.tab-bar{padding:4px;background:var(--glass);border:1px solid var(--glass-line);box-shadow:inset 0 1px #ffffff14,var(--shadow-sm);backdrop-filter:blur(var(--blur)) saturate(160%);-webkit-backdrop-filter:blur(var(--blur)) saturate(160%)}[data-theme=light] .tab-bar{background:var(--glass)}.tab{color:var(--ink-dim);font-weight:700}.tab[aria-selected=false]:active{background:var(--glass-strong)}.tab[aria-selected=true]{background:var(--accent-gradient);color:var(--accent-ink);box-shadow:0 6px 18px -6px var(--accent-glow)}.timer-main{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:clamp(16px,2.4vw,32px);overflow:hidden}.timer-main .timer-ringing{flex:1 1 100%}.timer-dial{width:min(24vw,38vh);height:min(24vw,38vh)}.timer-controls{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:clamp(8px,1.4vh,14px)}.timer-controls .timer-row{gap:clamp(6px,.8vw,10px)}.timer-controls .glass-button{min-width:clamp(40px,4.2vw,52px);min-height:clamp(40px,4.2vw,52px);padding:0 clamp(12px,1.5vw,20px);font-size:clamp(14px,1.5vw,18px)}.timer-duration{min-width:clamp(56px,6vw,72px);font-size:clamp(16px,1.8vw,22px)}.app-group h2,[data-theme=light] .app-group h2{display:inline-flex;align-items:center;gap:8px;margin:0 0 10px;padding:6px 14px;border-radius:999px;background:var(--glass-strong);border:1px solid var(--glass-line);backdrop-filter:blur(var(--blur)) saturate(160%);-webkit-backdrop-filter:blur(var(--blur)) saturate(160%);font-size:clamp(12px,1.15vw,14px);font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim)}.app-group h2:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent-gradient)}.dashboard-header{align-items:flex-start}.dashboard-titles{display:flex;flex-direction:column;gap:clamp(2px,.5vh,6px);min-width:0}.dashboard-eyebrow{display:flex;align-items:center;gap:8px}.dashboard-titles h1{font-size:clamp(24px,3vw,40px);line-height:1.05}.dashboard-sub{margin:0;font-size:clamp(14px,1.5vw,19px);font-weight:500;color:var(--ink-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.widget-edit-pill{position:absolute;right:4px;bottom:4px;z-index:3;min-height:clamp(34px,3.6vw,42px);padding:0 clamp(12px,1.3vw,16px);font-size:clamp(13px,1.25vw,15px);color:var(--ink-dim);opacity:.85}.widget-edit-pill svg{width:1.1em;height:1.1em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.widget-sizes{position:absolute;z-index:2;left:50%;bottom:6px;transform:translate(-50%);display:flex;gap:4px;padding:4px;border-radius:999px;background:#00000073;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}[data-theme=light] .widget-sizes{background:#ffffffb3}.widget-size{min-width:34px;height:30px;padding:0 8px;border:0;border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-size:13px;font-weight:800;cursor:pointer}.widget-size[aria-pressed=true]{background:var(--accent-gradient);color:var(--accent-ink)}.widget-clock-time{font-size:min(4vw,5.6vh);line-height:.95}.widget-clock-date{margin-top:clamp(2px,.4vh,5px);font-size:min(1.25vw,1.9vh);line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.widget-card[data-widget=clock] .widget-body{overflow:visible}.widget-card[data-widget=clock][style*="span 2"] .widget-clock-time{font-size:min(6vw,11vh)}.widget-card{container-type:size}.widget-body{display:flex;flex-direction:column}.widget-clock{justify-content:center;gap:0}.widget-clock-time{font-size:clamp(22px,min(34cqh,22cqw),120px);line-height:.95}.widget-clock-date{margin-top:clamp(2px,2cqh,8px);font-size:clamp(11px,min(12cqh,7cqw),22px);line-height:1.1}.widget-card[data-widget=clock] .widget-body{overflow:hidden}.widget-timer-value{font-size:clamp(22px,min(24cqh,20cqw),96px)}.widget-timer-status{font-size:clamp(11px,min(7cqh,5.5cqw),16px)}.widget-chip{min-height:clamp(28px,14cqh,42px);font-size:clamp(11px,min(7cqh,5.5cqw),16px)}.widget-weather-temp{font-size:clamp(22px,min(30cqh,18cqw),96px)}.widget-weather-icon{font-size:clamp(20px,min(26cqh,14cqw),72px)}.widget-bar{flex:0 0 auto}.shell:has(.idle-overlay) .pager,.shell:has(.idle-overlay) .shell-dock,.shell:has(.idle-overlay) .shell-clock{visibility:hidden}.idle-overlay{background:radial-gradient(70% 60% at 50% 110%,var(--accent-soft),transparent 70%),#070a1259}[data-theme=light] .idle-overlay{background:radial-gradient(70% 60% at 50% 110%,var(--accent-soft),transparent 70%),#efe7da59}.idle-card{padding:clamp(20px,4vh,40px) clamp(24px,4vw,56px)}.idle-info{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,30%);align-items:center;gap:clamp(20px,4vw,60px);width:100%}.idle-info-main{min-width:0}.idle-clock-info{font-size:min(13vw,26vh);line-height:.95;white-space:nowrap}.idle-info .idle-date{margin-top:clamp(4px,1vh,10px);font-size:clamp(16px,2vw,28px)}.idle-info-list{min-width:0;gap:clamp(10px,2vh,18px)}.idle-info-list li{min-width:0;padding:clamp(10px,1.8vh,16px) clamp(14px,1.8vw,22px)}.idle-info-label{font-size:clamp(11px,1.1vw,15px)}.idle-info-value{font-size:clamp(18px,2.2vw,30px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.idle-clock-bold{font-size:min(30vw,50vh)}.idle-clock-float{font-size:min(26vw,38vh)}.idle-clock-minimal{font-size:min(28vw,44vh)}.idle-analog{width:min(60vh,56vw);height:min(60vh,56vw)}.timer-modes{display:flex;flex-direction:column;gap:clamp(6px,1vh,10px);flex:0 0 auto}.timer-mode{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:clamp(76px,8vw,100px);height:clamp(58px,9vh,76px);padding:0;border:1px solid var(--glass-line);border-radius:var(--r-md);background:var(--glass);color:var(--ink-dim);font:inherit;cursor:pointer;transition:transform .18s var(--ease),background .25s ease,color .25s ease,box-shadow .25s ease}.timer-mode:active{transform:scale(.95)}.timer-mode-icon svg{width:clamp(20px,2.2vw,26px);height:clamp(20px,2.2vw,26px);fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.timer-mode-label{font-size:clamp(10px,1vw,12px);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.timer-mode[aria-selected=true]{background:var(--accent-gradient);border-color:transparent;color:var(--accent-ink);box-shadow:var(--shadow-accent)}.timer-controls .timer-row{flex-wrap:nowrap}.timer-controls .timer-row .glass-button{min-width:clamp(36px,3.6vw,48px);min-height:clamp(36px,3.6vw,48px);padding:0 clamp(8px,1vw,14px);font-size:clamp(13px,1.3vw,17px)}.timer-controls .timer-primary{padding:0 clamp(18px,2.4vw,34px)}.timer-duration{min-width:clamp(52px,5.4vw,72px);font-size:clamp(15px,1.6vw,20px)}.timer-main{gap:clamp(12px,1.8vw,28px)}.timer-dial{width:min(22vw,36vh);height:min(22vw,36vh)}.widget-card[data-widget=bag_status] .widget-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));column-gap:clamp(8px,1.2vw,18px);row-gap:2px}.widget-card[data-widget=bag_status] .widget-check{min-width:0}.widget-card[data-widget=bag_status] .widget-check>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-edit-bar{top:calc(-1*clamp(44px,6.5vh,60px));bottom:auto}.hw-add{gap:6px;min-height:clamp(38px,4vw,48px);padding:0 clamp(12px,1.5vw,18px);font-size:clamp(14px,1.4vw,17px)}.hw-add svg{width:1.1em;height:1.1em;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}.hw-row{display:flex;align-items:center;gap:8px}.hw-row .app-check{flex:1 1 auto;min-width:0;flex-wrap:wrap}.hw-tag{margin-left:auto;padding:2px 10px;border-radius:999px;border:1px solid var(--glass-line);background:var(--glass-strong);font-size:clamp(11px,1vw,13px);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim);white-space:nowrap}.hw-tag+.hw-tag{margin-left:0}.hw-tag-priority{border-color:transparent;background:var(--accent-gradient);color:var(--accent-ink)}.hw-remove{flex:0 0 auto;min-width:40px;min-height:40px;padding:0;font-size:15px;color:var(--ink-dim)}.hw-sheet{max-height:84%;padding:clamp(18px,3vh,26px) clamp(20px,3vw,30px)}.hw-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.hw-sheet-head h2{margin:0;font-family:var(--font-display);font-weight:var(--display-weight);color:var(--ink)}.hw-sheet-close{min-width:44px;min-height:44px;padding:0}.hw-form{display:flex;flex-direction:column;gap:clamp(8px,1.4vh,14px)}.hw-field{display:flex;align-items:center;gap:14px}.hw-field>span{flex:0 0 clamp(90px,10vw,130px);color:var(--ink-dim)}.hw-inline{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex:1 1 auto}.hw-date{flex:0 1 220px}.hw-chips{display:flex;flex-wrap:wrap;gap:8px;padding-left:clamp(104px,10vw,144px)}.hw-switches{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hw-switch{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;justify-items:start;text-align:left;min-height:64px;padding:10px 16px;border-radius:var(--r-md)}.hw-switch svg{grid-row:1 / span 2;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.hw-switch small{font-size:12px;font-weight:500;opacity:.75}.hw-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.priority-banner{position:absolute;top:calc(var(--space) + 8px);left:50%;transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:12px;max-width:min(78vw,900px);min-height:clamp(44px,6vh,56px);padding:6px 8px 6px 16px;border-radius:999px;box-shadow:var(--shadow-card),0 0 0 1px var(--accent-soft),0 14px 40px -10px var(--accent-glow);animation:sheet-up .45s var(--ease)}.priority-flag{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--accent-gradient);flex:0 0 auto}.priority-flag svg{width:16px;height:16px;fill:none;stroke:var(--accent-ink);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.priority-kicker{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);flex:0 0 auto}.priority-text{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:clamp(14px,1.5vw,18px)}.priority-due,.priority-more{color:var(--ink-dim)}.priority-done{flex:0 0 auto;min-height:38px;padding:0 16px;font-size:15px;background:var(--accent-gradient);color:var(--accent-ink)}.shell[data-priority=true] .screen{padding-top:calc(clamp(14px,2.2vw,28px) + clamp(44px,6vh,56px) + 10px)}.shell[data-priority=true] .shell-clock{top:calc(var(--space) + 8px + clamp(44px,6vh,56px) + 18px)}.widget-sheet,.hw-sheet{background:linear-gradient(180deg,#ffffff0f,#ffffff05),#0e1424eb}[data-theme=light] .widget-sheet,[data-theme=light] .hw-sheet{background:linear-gradient(180deg,#ffffffb3,#fff6),#efe7daf0}.widget-sheet-backdrop{background:#0000008c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.hw-tag-study{border-color:transparent;background:var(--cool-soft);color:var(--cool)}.profile-picker{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;height:100%;padding:var(--space)}.profile-card{width:min(920px,92vw);padding:clamp(24px,4vh,44px) clamp(24px,4vw,48px);border-radius:var(--r-xl)}.profile-card h1{margin:8px 0 4px}.profile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;margin-top:20px}.profile-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:150px;padding:16px;border-radius:var(--r-lg);font:inherit;color:var(--ink);cursor:pointer;transition:transform .18s var(--ease)}.profile-tile:active{transform:scale(.96)}.profile-avatar{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:var(--accent-gradient);color:var(--accent-ink);font-family:var(--font-display);font-weight:var(--display-weight);font-size:28px}.profile-tile[data-colour=violet] .profile-avatar{background:linear-gradient(135deg,#8b5cff,#2f7cff);color:#0a0716}.profile-tile[data-colour=lime] .profile-avatar{background:linear-gradient(135deg,#c6ff3d,#35f0d8);color:#0b1408}.profile-tile[data-colour=crimson] .profile-avatar{background:linear-gradient(135deg,#ff2d55,#ff8a00);color:#160508}.profile-tile-add .profile-avatar{background:var(--glass-strong);color:var(--ink-dim)}.profile-tile-form{gap:10px}.profile-name{font-weight:700;font-size:18px}.rev-sheet{max-height:88%}.rev-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,42%);gap:clamp(16px,2.4vw,32px);align-items:start}.rev-left{display:flex;flex-direction:column;gap:12px}.rev-code{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.rev-prefix{flex:0 0 120px;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.rev-number{display:flex;align-items:center;gap:10px}.rev-number-value{min-width:150px;text-align:center;font-size:clamp(26px,3vw,40px);background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.rev-hint{font-size:14px}.rev-camera,.rev-photo{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:220px;padding:12px;border-radius:var(--r-md);background:#00000059;border:1px solid var(--glass-line);overflow:hidden}.rev-camera video,.rev-photo img{width:100%;max-height:42vh;object-fit:contain;border-radius:14px;background:#000}.rev-camera-idle svg{width:56px;height:56px;fill:none;stroke:var(--ink-dim);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.rev-shutter{position:absolute;bottom:18px}.course-topic{font-family:var(--font);font-weight:600;color:var(--ink-dim)}.course-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,34%);gap:clamp(16px,2.4vw,32px)}.course-summary{white-space:pre-line;line-height:1.5}.course-questions{margin:12px 0;padding-left:22px;display:flex;flex-direction:column;gap:6px}.course-question{display:flex;flex-direction:column;gap:6px;width:100%;padding:10px 14px;border:1px solid var(--glass-line);border-radius:var(--r-sm);background:var(--glass);color:inherit;font:inherit;text-align:left;cursor:pointer}.course-answer{color:var(--accent);font-weight:600}.course-cycle{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.course-cycle .hw-tag{margin-left:0}.course-photo img{width:100%;border-radius:var(--r-md);border:1px solid var(--glass-line)}.hw-tag-review{border-color:transparent;background:var(--accent-soft);color:var(--accent)}.hw-open svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.quiz-sheet{max-width:min(760px,88vw);animation:sheet-up .45s var(--ease)}.quiz-meta{display:flex;align-items:center;gap:8px;margin:0;font-size:14px}.quiz-meta .hw-tag{margin-left:0}.quiz-count{margin-left:8px}.quiz-question{font-family:var(--font);font-size:clamp(20px,2.4vw,30px)!important;font-weight:700!important;line-height:1.3}.quiz-answer{margin:0;padding:12px 18px;border-radius:var(--r-md);background:var(--accent-soft);color:var(--accent);font-size:clamp(17px,1.9vw,22px);font-weight:600}.quiz-actions{justify-content:center}.desk-toast{position:absolute;left:50%;bottom:calc(var(--dock-h) + var(--space) * 2 + 10px);transform:translate(-50%);z-index:8;padding:10px 18px;border-radius:999px;font-weight:600;animation:sheet-up .35s var(--ease)}.profile-avatar{overflow:hidden}.profile-avatar img{width:100%;height:100%;object-fit:cover}.students-list{margin:0 0 10px;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.students-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:8px 12px;border-radius:var(--r-md);border:1px solid var(--glass-line);background:var(--glass)}.students-row[data-me=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft)}.students-avatar{width:48px;height:48px;font-size:20px;flex:0 0 auto}.students-avatar[data-colour=violet]{background:linear-gradient(135deg,#8b5cff,#2f7cff);color:#0a0716}.students-avatar[data-colour=lime]{background:linear-gradient(135deg,#c6ff3d,#35f0d8);color:#0b1408}.students-avatar[data-colour=crimson]{background:linear-gradient(135deg,#ff2d55,#ff8a00);color:#160508}.students-name{flex:1 1 160px;min-width:140px;font-weight:700}.students-remove.is-confirm{background:var(--red-dot);border-color:transparent;color:#fff}.students-note{font-size:14px}.widget-title-link{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer}.widget-title-link svg{width:1.1em;height:1.1em;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;opacity:.7}.widget-title-link:active{color:var(--accent)}.widget-more{position:sticky;bottom:0;align-self:flex-start;margin-top:6px;padding:4px 12px;border:1px solid var(--glass-line);border-radius:999px;background:var(--glass-strong);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font:inherit;font-size:clamp(11px,1.1vw,13px);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);cursor:pointer}.widget-more:after{content:" →"}.widget-body:has(.widget-more){-webkit-mask-image:none;mask-image:none}.app-order{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.app-order-row{display:flex;align-items:center;gap:10px}.app-order-row[data-on=false] .app-order-name{opacity:.55}.app-order-index{width:28px;text-align:center;font-family:var(--font-display);font-weight:var(--display-weight);color:var(--ink-dim)}.app-order-name{min-width:180px;justify-content:flex-start}.widget-body:has(.widget-more) .widget-list{flex:1 1 auto;min-height:0;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 14px),transparent);mask-image:linear-gradient(180deg,#000 calc(100% - 14px),transparent)}.widget-more{position:static;flex:0 0 auto;margin-top:4px}.widget-body .widget-caption,.widget-body .widget-bar,.widget-body .stale-chip{flex:0 0 auto}.settings-layout{display:grid;grid-template-columns:clamp(170px,20vw,240px) minmax(0,1fr);gap:clamp(14px,2vw,24px);overflow:hidden}.settings-rail{display:flex;flex-direction:column;gap:6px;overflow-y:auto;padding-right:4px}.settings-rail-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--ink-dim);font:inherit;text-align:left;cursor:pointer;transition:background-color .2s ease,color .2s ease}.settings-rail-item[aria-current=page]{background:var(--glass-strong);border-color:var(--glass-line);color:var(--ink);box-shadow:inset 3px 0 0 var(--accent)}.settings-rail-label{font-weight:800;font-size:clamp(14px,1.4vw,17px)}.settings-rail-hint{font-size:clamp(11px,1.05vw,13px);opacity:.7}.settings-body{overflow-y:auto;min-height:0}.settings-body[data-group]>[data-group]{display:none}.settings-body[data-group=students]>[data-group=students],.settings-body[data-group=apps]>[data-group=apps],.settings-body[data-group=school]>[data-group=school],.settings-body[data-group=homework]>[data-group=homework],.settings-body[data-group=look]>[data-group=look],.settings-body[data-group=security]>[data-group=security],.settings-body[data-group=connections]>[data-group=connections],.settings-body[data-group=kiosk]>[data-group=kiosk]{display:block}.qr-pair-row{display:grid;gap:.5rem;margin-bottom:.75rem}.qr-pair-button{justify-self:start}.qr-sheet{max-width:min(92vw,34rem)}.qr-steps{margin:0 0 .75rem;padding-left:1.25rem;display:grid;gap:.25rem}.qr-scanner{position:relative;aspect-ratio:4 / 3;border-radius:1rem;overflow:hidden;background:#00000059;display:grid;place-items:center;margin-bottom:.75rem}.qr-video{width:100%;height:100%;object-fit:cover}.qr-frame{position:absolute;top:15%;right:15%;bottom:15%;left:15%;border:3px solid var(--accent);border-radius:1rem;pointer-events:none;opacity:.85}.qr-actions{display:flex;gap:.5rem;margin-bottom:.75rem}.qr-text{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;resize:vertical}.qr-pin{font-size:1.6rem;letter-spacing:.5em;text-align:center;max-width:9rem}.qr-error{color:#ff8a80;margin:.5rem 0}.qr-submit{margin-top:.5rem}.qr-done{display:grid;gap:.5rem;padding:1rem 0}.qr-done-title{font-size:1.3rem;font-weight:700;margin:0}.tomorrow-card{flex:1 1 auto;min-width:0;height:var(--dock-h, 72px);display:flex;align-items:center;gap:clamp(8px,1.2vw,18px);padding:0 clamp(12px,1.6vw,22px);border-radius:999px;overflow:hidden}.tomorrow-head{display:flex;flex-direction:column;flex:0 0 auto;line-height:1.05}.tomorrow-head h2{margin:0;font-size:clamp(.8rem,1.1vw,.95rem);font-weight:600;text-transform:capitalize;white-space:nowrap}.tomorrow-eyebrow{font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-weight:700}.tomorrow-grid{display:flex;flex:1 1 auto;min-width:0;gap:clamp(6px,1vw,14px);justify-content:space-around}.tomorrow-cell{display:grid;gap:0;padding:0 clamp(8px,1vw,14px);border-left:1px solid rgba(255,255,255,.12);min-width:0;line-height:1.1}.tomorrow-cell>span{font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;opacity:.7;white-space:nowrap}.tomorrow-cell>strong{font-size:clamp(1rem,1.6vw,1.35rem);display:flex;align-items:center;gap:.3rem;white-space:nowrap}.tomorrow-cell>small{font-size:.65rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tomorrow-wake{border-left:0;color:var(--accent)}.tomorrow-wake>strong{font-size:clamp(1.3rem,2.2vw,1.8rem)}.tomorrow-weather svg{width:1.2rem;height:1.2rem}@media(max-width:720px){.tomorrow-head,.tomorrow-cell>small{display:none}}.parent-page{max-width:40rem;margin:0 auto;padding:1rem;display:grid;gap:1rem;min-height:100vh;background:var(--bg, #0b0d12);color:var(--fg, #fff)}.parent-page-head h1{margin:0;font-size:1.5rem}.parent-page-head p{margin:.15rem 0 0}.parent-card{border-radius:1.5rem;padding:1rem 1.1rem;border-left:4px solid var(--student, var(--accent))}.parent-head{display:grid;grid-template-columns:auto 1fr auto;gap:.75rem;align-items:center}.parent-head h2{margin:0;font-size:1.25rem}.parent-state{margin:0;opacity:.75;font-size:.9rem}.parent-avatar{width:3rem;height:3rem;border-radius:50%;object-fit:cover;background:var(--student, var(--accent));display:grid;place-items:center;font-weight:700;font-size:1.3rem}.parent-sync{font-size:.75rem;padding:.25rem .6rem;border-radius:999px;background:#78dc8c2e;white-space:nowrap}.parent-sync.is-stale{background:#ffaa3c38}.parent-rings{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin:1rem 0}.parent-ring{display:grid;place-items:center;gap:.1rem;padding:.75rem .25rem;border-radius:1rem;background:linear-gradient(#00000040,#00000040),conic-gradient(var(--student, var(--accent)) calc(var(--ratio, 0) * 100%),rgba(255,255,255,.08) 0)}.parent-ring-plain{background:#ffffff0f}.parent-ring strong{font-size:1.4rem}.parent-ring span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;opacity:.7}.parent-section h3{margin:.75rem 0 .3rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;opacity:.7}.parent-section ul{margin:0;padding-left:1.1rem;display:grid;gap:.2rem}.parent-facts{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1rem;margin-top:.75rem}.parent-facts div{display:grid}.parent-facts span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;opacity:.7}.changes-strip{display:flex;align-items:center;gap:.75rem;margin:0 0 .75rem;padding:.55rem .9rem;border-radius:1rem;background:color-mix(in srgb,var(--red-dot, #ff5a5f) 18%,transparent);border:1px solid color-mix(in srgb,var(--red-dot, #ff5a5f) 45%,transparent);font-size:.9rem}.changes-title{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;font-weight:700;flex:0 0 auto}.changes-strip ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.25rem 1rem;min-width:0}.changes-strip li[data-kind=room],.changes-strip li[data-kind=changed]{opacity:.9}.tomorrow-changes{color:var(--red-dot, #ff5a5f)}.tomorrow-changes>small{color:inherit;opacity:.85}.app-status-chip{margin-left:auto;padding:2px 12px;border-radius:999px;background:color-mix(in srgb,var(--accent) 35%,transparent);font-size:14px;white-space:nowrap}.parent-changes li{color:var(--red-dot, #ff5a5f)}body[data-page=parent]{overflow:auto;overscroll-behavior:auto;-webkit-user-select:text;user-select:text;height:auto;min-height:100%}body[data-page=parent] #root{height:auto;min-height:100%}.parent-page{min-height:100vh;padding-bottom:3rem}body[data-page=status]{overflow:auto;height:auto;min-height:100%;-webkit-user-select:text;user-select:text}body[data-page=status] #root{height:auto;min-height:100%}.diag-page{max-width:44rem;margin:0 auto;padding:1.5rem 1.25rem 3rem;min-height:100vh;background:var(--bg-1, #0b0d12);color:var(--ink, #fff);font-size:1.05rem}.diag-head h1{margin:0;font-size:1.8rem}.diag-list{list-style:none;margin:1.25rem 0;padding:0;display:grid;gap:.6rem}.diag-row{display:grid;grid-template-columns:1.2rem 1fr;gap:.8rem;align-items:start;padding:.8rem 1rem;border-radius:1rem;background:#ffffff0f}.diag-row b{display:block;font-size:1.1rem}.diag-detail{display:block;opacity:.8;font-size:.95rem;word-break:break-word}.diag-dot{width:1rem;height:1rem;margin-top:.3rem;border-radius:50%;background:#4cd97b;box-shadow:0 0 10px #4cd97b}.diag-row[data-state=warn] .diag-dot{background:#ffb347;box-shadow:0 0 10px #ffb347}.diag-row[data-state=bad] .diag-dot{background:#ff5a5f;box-shadow:0 0 10px #ff5a5f}.diag-actions{display:flex;flex-wrap:wrap;gap:.6rem}.diag-actions a{text-decoration:none}.offline-gate{display:grid;align-content:center;text-align:center;gap:.6rem}.offline-gate h1{font-size:2rem;margin:0}.hw-sheet{max-height:92%}.hw-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;-webkit-overflow-scrolling:touch}.hw-chips::-webkit-scrollbar{display:none}.hw-chips>*{flex:0 0 auto;white-space:nowrap}@media(max-height:820px){.hw-sheet{padding:12px 20px 16px}.hw-sheet-head{margin-bottom:4px}.hw-form{gap:8px}.hw-chips .glass-button,.hw-chips .settings-chip,.hw-chips button{padding:6px 14px;font-size:.95rem;min-height:0}.hw-switches>*{padding:8px 12px}.hw-switches small,.hw-switches .app-dim{display:none}.hw-actions{margin-top:0}}[data-screen=school_bag] .app-list{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px}[data-screen=school_bag] .app-check-big{min-height:clamp(48px,6.5vh,60px);font-size:clamp(17px,2.4vh,21px)}.timer-main{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;justify-items:start;column-gap:clamp(16px,2.4vw,32px);row-gap:clamp(10px,1.6vh,18px)}.timer-main .timer-ringing{grid-column:1 / -1}.timer-main .timer-modes{grid-column:1;grid-row:1;align-self:center}.timer-main .timer-dial{grid-column:2;grid-row:1}.timer-main .timer-controls{grid-column:1 / -1;grid-row:2;width:100%}.timer-controls .timer-row{display:grid;grid-template-columns:auto repeat(5,minmax(0,auto));justify-content:start;align-items:center}.timer-controls .timer-row>.app-dim{min-width:clamp(90px,9vw,120px)}.timer-alarms{--alarm-cols: clamp(60px, 6vw, 80px) repeat(5, minmax(0, 1fr))}.timer-alarms .timer-row{display:grid;grid-template-columns:var(--alarm-cols);align-items:center;gap:clamp(6px,.8vw,10px)}.timer-alarms .timer-alarm-picker{grid-template-columns:var(--alarm-cols)}.timer-alarms .timer-alarm-field{display:contents}.timer-alarms .timer-alarm-input{grid-column:2 / -1;width:100%}.timer-alarms .timer-hour-row>:nth-child(2){grid-column:3}.timer-alarms .timer-hour-row>:nth-child(3){grid-column:4}.timer-alarms .timer-hour-row>:nth-child(4){grid-column:5}.timer-alarms .timer-alarm-time{min-width:0}.timer-alarms .glass-button{width:100%;min-width:0;padding-left:0;padding-right:0}.timer-alarms .timer-primary{width:100%}.widget-lesson-time,.app-lesson-time{color:transparent;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;font-weight:700}.lesson-cancelled .app-lesson-time,.widget-lesson .widget-done~.widget-lesson-time{opacity:.5}.timer-controls .timer-row:last-child{display:flex;gap:clamp(8px,1vw,12px)}.timer-controls .timer-row:last-child .glass-button{min-height:clamp(44px,4.6vw,54px);padding:0 clamp(18px,2vw,26px);font-size:clamp(15px,1.6vw,18px);line-height:1;display:inline-flex;align-items:center}.dashboard-hello{margin:0;font-size:clamp(15px,1.7vw,21px);font-weight:600;color:transparent;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;width:fit-content}.ed-question{margin:.75rem 0;font-size:clamp(1.05rem,2vw,1.35rem);font-weight:600}.ed-choices{display:flex;flex-wrap:wrap;gap:.6rem}.ed-choices .settings-chip{flex:0 1 auto}body[data-page=parent] .login-page,.login-page{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:var(--bg-1, #0b0d12);color:var(--ink, #fff)}.login-card{width:min(30rem,100%);display:grid;gap:.75rem;padding:clamp(1.25rem,3vw,2rem);border-radius:1.5rem}.login-card h1{margin:0;font-size:clamp(1.6rem,3vw,2.2rem)}.login-tabs{margin:.25rem 0}.login-code{font-size:1.6rem;letter-spacing:.25em;text-align:center}.login-submit{margin-top:.5rem;justify-self:stretch}.pairing-code{margin:.5rem 0;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:800;letter-spacing:.15em;color:transparent;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;width:fit-content}
