:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:dark;--bg:#0d0d19;--surface:#181827;--surface2:#202033;--panel:#191929;--edge:#313047;--text:#f4f2ff;--muted:#9694af;--primary:#a88bff;--primary-rgb:168,139,255;--cyan:#67dbde;--mint:#6edac0;--amber:#f0bd80;--shadow:0 24px 65px #03020b26}
*{box-sizing:border-box}html{min-height:100%}body{margin:0;background:radial-gradient(ellipse at 51% -20%,rgba(var(--primary-rgb),.13),transparent 57%),var(--bg);color:var(--text);min-height:100vh;transition:background .22s,color .22s}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--primary);outline-offset:3px}button:disabled{opacity:.4;cursor:not-allowed}a{color:var(--primary)}.shell{width:min(1160px,calc(100% - 40px));margin:0 auto;padding-bottom:70px}.toolbar{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--edge);gap:12px}.brand{display:flex;align-items:center;gap:12px}.brand-icon{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:var(--primary);color:var(--bg);font-size:28px;font-weight:800}.brand strong{display:block;font-size:17px;letter-spacing:-.04em}.brand small{display:block;font-size:11px;color:var(--muted);margin-top:2px}.toolbar-actions{display:flex;align-items:center;gap:10px}.btn{padding:11px 15px;border:1px solid var(--edge);border-radius:11px;background:var(--surface2);color:var(--text);font-size:13px;font-weight:650;transition:border-color .15s,background .15s}.btn:hover{border-color:var(--primary)}.btn.primary{background:var(--primary);color:var(--bg);border-color:var(--primary);font-weight:800}.btn.primary:hover{filter:brightness(1.12)}.btn.subtle{background:transparent}.btn.square{font-size:20px;padding:7px;width:42px;height:42px}.btn.compact{padding:8px 12px}.chevron{padding-left:8px;color:var(--muted)}.menu-wrap{position:relative}.menu{position:absolute;z-index:20;right:0;top:calc(100% + 9px);width:235px;max-height:440px;background:var(--surface);border:1px solid var(--edge);border-radius:15px;padding:10px;box-shadow:var(--shadow);overflow-y:auto}.menu[hidden]{display:none}.menu-label{margin:8px 8px 10px;color:var(--muted);font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:800}.menu-option{display:flex;align-items:center;gap:11px;width:100%;padding:10px;border:0;border-radius:9px;background:transparent;color:var(--text);text-align:left;font-size:13px}.menu-option:hover,.menu-option[aria-checked=true]{background:var(--surface2)}.menu-option[aria-checked=true]{outline:1px solid var(--edge)}.theme-dot{width:17px;height:17px;border-radius:50%;background:var(--swatch);border:1px solid #ffffff40;flex-shrink:0}.menu-option .check{margin-left:auto;color:var(--primary)}.hero{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:47px 0 30px}.eyebrow,.panel-caption{font-size:11px;letter-spacing:.15em;font-weight:850;color:var(--primary)}.hero h1{font-size:clamp(27px,4.2vw,43px);line-height:1.15;letter-spacing:-.055em;margin:12px 0}.hero p{font-size:14px;color:var(--muted);margin:0}.add-hero{white-space:nowrap}.dashboard{display:grid;grid-template-columns:1fr 1.18fr .9fr;gap:17px}.panel{border-radius:19px;padding:27px;background:linear-gradient(145deg,var(--surface),var(--panel));border:1px solid var(--edge);min-width:0;box-shadow:0 12px 35px #0000000a}.panel-caption{color:var(--muted);display:flex;align-items:center;justify-content:space-between}.clock-card,.current-card,.countdown-card{min-height:245px;display:flex;flex-direction:column}.clock{font-size:clamp(31px,3.3vw,46px);font-weight:850;font-variant-numeric:tabular-nums;letter-spacing:-.07em;margin-top:28px;white-space:nowrap}.date{font-size:13px;color:var(--muted);text-transform:capitalize;margin-top:3px}.timezone-badge{font-size:11px;color:var(--primary);margin-top:auto;padding-top:20px}.tiny-dot{height:8px;width:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 12px var(--mint)}.now-tag{font-size:10px;color:var(--mint);letter-spacing:.035em}.current-name-row{display:flex;align-items:center;gap:14px;margin-top:30px}.activity-icon{background:color-mix(in srgb,var(--accent,var(--primary)) 20%,transparent);color:var(--accent,var(--primary));font-size:20px;flex-shrink:0;width:47px;height:47px;border-radius:13px;display:grid;place-items:center}.current-name-row h2{font-size:clamp(17px,2vw,25px);line-height:1.16;margin:0 0 6px;letter-spacing:-.035em;overflow-wrap:anywhere}.current-name-row p{font-size:12px;color:var(--muted);margin:0}.meter{margin-top:auto;height:8px;border-radius:99px;background:var(--surface2);overflow:hidden}.meter-fill{background:var(--primary);height:100%;width:0;transition:width .3s}.meter-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin-top:12px;gap:10px}.countdown{font-variant-numeric:tabular-nums;font-weight:850;letter-spacing:-.065em;font-size:clamp(28px,3vw,43px);margin-top:37px}.next-label{font-size:12px;color:var(--muted);margin:8px 0;line-height:1.55}.countdown-foot{display:flex;justify-content:space-between;border-top:1px solid var(--edge);padding-top:15px;margin-top:auto;font-size:11px;color:var(--muted)}.countdown-foot span:last-child{color:var(--primary)}.schedule-card{grid-column:1/-1;min-height:360px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px;gap:14px}.section-heading h2{font-size:22px;margin:9px 0 0;letter-spacing:-.04em}.section-actions{display:flex;align-items:center;gap:7px}.slot-list{display:flex;flex-direction:column;gap:8px}.slot{position:relative;display:grid;grid-template-columns:106px 10px minmax(0,1fr) auto;gap:15px;align-items:center;padding:14px 16px;border-radius:11px;background:var(--surface2);border:1px solid transparent;transition:background .15s;cursor:pointer;min-height:68px}.slot:hover{border-color:var(--primary)}.slot.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface2))}.slot.past{opacity:.58}.slot-time{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.slot-time div+div{margin-top:5px}.slot-color{height:30px;width:4px;border-radius:10px;background:var(--accent)}.slot-name{font-size:14px;font-weight:750}.slot-name small{display:block;font-size:11px;font-weight:450;color:var(--muted);margin-top:5px}.slot-tag{font-size:10px;font-weight:800;letter-spacing:.08em;color:var(--accent);white-space:nowrap}.schedule-help{font-size:11px;color:var(--muted);margin-top:18px}.settings-drawer{position:fixed;top:0;left:0;height:100dvh;width:min(375px,100%);z-index:61;background:var(--surface);border-right:1px solid var(--edge);box-shadow:15px 0 65px #0006;padding:27px;overflow:auto;transform:translateX(-105%);transition:transform .23s}.settings-drawer.open{transform:translateX(0)}.drawer-head,.modal-heading{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:28px}.drawer-head h2,.modal-heading h2{margin:10px 0 0;font-size:25px;letter-spacing:-.04em}.backdrop{position:fixed;inset:0;background:#0009;z-index:60}.backdrop[hidden]{display:none}.field{display:flex;flex-direction:column;gap:9px;margin-bottom:20px;font-size:12px;font-weight:700;color:var(--muted)}.field input,.field select{width:100%;height:43px;padding:8px 12px;border:1px solid var(--edge);border-radius:10px;color:var(--text);background:var(--surface2);color-scheme:inherit}.field input[type=color]{padding:4px;cursor:pointer}.field-explainer{font-size:12px;color:var(--muted);line-height:1.6;margin:-5px 0 26px}.settings-actions{display:flex;flex-direction:column;gap:10px}.settings-bottom{font-size:11px;line-height:1.6;margin-top:26px;color:var(--muted);border-top:1px solid var(--edge);padding-top:15px}dialog{width:min(480px,calc(100% - 28px));max-height:90dvh;overflow:auto;background:var(--surface);color:var(--text);border:1px solid var(--edge);border-radius:20px;box-shadow:0 30px 90px #0009;padding:28px}dialog::backdrop{background:#05040dc9}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.modal-actions{display:flex;align-items:center;gap:10px;margin-top:24px;flex-wrap:wrap}.flex-spacer{flex:1}.btn.danger{color:#ff9999;border-color:#ff999955}.error-message{font-size:12px;color:#ff9a9a;min-height:18px}.toast{position:fixed;bottom:20px;right:20px;z-index:100;background:var(--surface2);border:1px solid var(--primary);border-radius:11px;padding:13px 18px;font-size:13px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .2s}.toast.visible{opacity:1}
/* Layout family — same information, deliberately different visual hierarchy */
body[data-layout=minimal] .dashboard{grid-template-columns:1fr 1fr}body[data-layout=minimal] .countdown-card{grid-column:1/-1;min-height:145px}body[data-layout=minimal] .countdown{margin-top:12px}body[data-layout=minimal] .panel{box-shadow:none;border-radius:10px}
body[data-layout=timeline] .slot-list{position:relative;padding-left:22px;gap:0}body[data-layout=timeline] .slot-list:before{content:"";position:absolute;top:15px;bottom:15px;left:8px;border-left:2px solid var(--edge)}body[data-layout=timeline] .slot{background:transparent;border-radius:0;border:0;border-bottom:1px solid var(--edge);grid-template-columns:95px 7px 1fr auto}body[data-layout=timeline] .slot:before{content:"";position:absolute;left:-20px;top:32px;width:10px;height:10px;border-radius:50%;background:var(--accent);border:2px solid var(--surface)}body[data-layout=timeline] .slot:hover{background:var(--surface2)}
body[data-layout=analog] .dashboard{grid-template-columns:1fr 1fr}body[data-layout=analog] .clock-card{grid-row:span 2}body[data-layout=analog] .clock{font-family:Georgia,serif;letter-spacing:-.045em;font-weight:500;font-size:clamp(36px,5.5vw,74px)}body[data-layout=analog] .slot{border-radius:22px}body[data-layout=analog] .current-card,body[data-layout=analog] .countdown-card{min-height:195px}
body[data-layout=compact] .dashboard{grid-template-columns:repeat(3,1fr);gap:8px}body[data-layout=compact] .panel{padding:17px;border-radius:7px}.slot-list.compact-slots{display:grid;grid-template-columns:1fr 1fr;gap:7px}body[data-layout=compact] .slot{padding:9px 12px;min-height:54px;grid-template-columns:74px 5px minmax(0,1fr) auto;gap:8px}body[data-layout=compact] .slot-name{font-size:12px}body[data-layout=compact] .slot-name small{font-size:10px}
body[data-layout=details] .dashboard{grid-template-columns:1.2fr 1fr}body[data-layout=details] .clock-card{grid-row:span 2;justify-content:center}body[data-layout=details] .clock{font-size:clamp(45px,5vw,72px)}body[data-layout=details] .countdown-card{min-height:180px}body[data-layout=details] .slot{min-height:87px}body[data-layout=details] .slot-name{font-size:16px}
body[data-layout=mountain] .panel{border-radius:28px 8px 28px 8px}body[data-layout=mountain] .dashboard{grid-template-columns:1.2fr 1fr 1fr}body[data-layout=mountain] .schedule-card{background:linear-gradient(165deg,color-mix(in srgb,var(--primary) 12%,var(--panel)),var(--panel) 42%)}body[data-layout=mountain] .slot{border-radius:20px 5px 20px 5px;margin-bottom:4px}
body[data-layout=docs] .dashboard{display:flex;flex-direction:column;gap:0}body[data-layout=docs] .panel{border-radius:0;box-shadow:none;background:transparent;border:0;border-bottom:1px solid var(--edge);min-height:unset;padding:24px 8px}body[data-layout=docs] .clock-card,body[data-layout=docs] .current-card,body[data-layout=docs] .countdown-card{display:block}body[data-layout=docs] .clock,body[data-layout=docs] .countdown{margin-top:9px}body[data-layout=docs] .current-name-row{margin-top:10px}body[data-layout=docs] .meter{margin-top:18px}body[data-layout=docs] .countdown-foot{margin-top:12px}body[data-layout=docs] .slot{background:transparent;border-bottom:1px solid var(--edge);border-radius:0}
/* Weekly calendar displayed only for Calendar view within any selected layout */
.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:20px}.week-day{background:var(--surface2);border:1px solid var(--edge);border-radius:12px;min-height:130px;padding:12px 8px;text-align:left;color:var(--text);cursor:pointer}.week-day.selected{border-color:var(--primary)}.week-day strong{display:block;font-size:12px;margin-bottom:10px}.week-day small{display:block;font-size:10px;color:var(--muted);margin-bottom:9px}.week-mini-slot{height:6px;margin:4px 0;border-radius:4px;background:var(--accent);opacity:.9}.view-tabs{display:flex;gap:8px;margin-bottom:14px}.view-tabs .btn[aria-pressed=true]{border-color:var(--primary);color:var(--primary)}
body[data-theme=fallout]{--bg:#100e08;--surface:#1f1a0c;--surface2:#302714;--panel:#181508;--edge:#64502b;--text:#ebd69c;--muted:#b69e65;--primary:#e3bc55;--primary-rgb:227,188,85;--mint:#a8cc63;color-scheme:dark;font-family:Consolas,monospace}
body[data-theme=matrix]{--bg:#050c08;--surface:#0b1b10;--surface2:#112c18;--panel:#071308;--edge:#245633;--text:#b4ffc4;--muted:#67ad79;--primary:#4efa77;--primary-rgb:78,250,119;--mint:#4efa77;font-family:Consolas,monospace}
body[data-theme=sunny]{--bg:#fff6e9;--surface:#fffdf9;--surface2:#f7ebda;--panel:#fffaf2;--edge:#ead8bc;--text:#443024;--muted:#9a806d;--primary:#e68b42;--primary-rgb:230,139,66;--mint:#4c9d7c;color-scheme:light}
body[data-theme=midnight]{--bg:#060e1a;--surface:#101d30;--surface2:#172840;--panel:#101b2c;--edge:#2a4160;--text:#e4f0ff;--muted:#8aa5c7;--primary:#5ca4fb;--primary-rgb:92,164,251;--mint:#72d5cc}
body[data-theme=autumn]{--bg:#221611;--surface:#33221a;--surface2:#443026;--panel:#2d1d17;--edge:#694a36;--text:#ffead1;--muted:#c69e7f;--primary:#e89c53;--primary-rgb:232,156,83;--mint:#c8bf6d}
body[data-theme=jedi]{--bg:#09141c;--surface:#122330;--surface2:#1a3441;--panel:#12222e;--edge:#2f5964;--text:#ecfcff;--muted:#9ac8d1;--primary:#5ad3ff;--primary-rgb:90,211,255;--mint:#80db96}
body[data-theme=sith]{--bg:#110708;--surface:#250f14;--surface2:#371a20;--panel:#220c12;--edge:#5e2a32;--text:#ffebeb;--muted:#c18a94;--primary:#ff5f69;--primary-rgb:255,95,105;--mint:#ff9974}
body[data-theme=hollow]{--bg:#09111c;--surface:#142132;--surface2:#202f43;--panel:#101c2c;--edge:#37516a;--text:#e8f1fa;--muted:#93aabd;--primary:#b2dce9;--primary-rgb:178,220,233;--mint:#85c6d1;font-family:Georgia,"Times New Roman",serif}
body[data-theme=new-vegas]{--bg:#21170e;--surface:#32251b;--surface2:#463427;--panel:#2d2118;--edge:#6c5037;--text:#f9e5ba;--muted:#c4aa7b;--primary:#f0b85d;--primary-rgb:240,184,93;--mint:#aace8d}
body[data-theme=golden-son]{--bg:#100f14;--surface:#1d1b25;--surface2:#2d2934;--panel:#181720;--edge:#50465a;--text:#fff3de;--muted:#b7a8ad;--primary:#f4c86e;--primary-rgb:244,200,110;--mint:#d8e2a5}
@media(max-width:900px){.dashboard{grid-template-columns:1fr 1fr}.clock-card{grid-column:1}.current-card{grid-column:2}.countdown-card{grid-column:1/-1;min-height:165px}.countdown{margin-top:15px}.dashboard .schedule-card{grid-column:1/-1}body[data-layout=mountain] .dashboard{grid-template-columns:1fr 1fr}body[data-layout=mountain] .countdown-card{grid-column:1/-1}body[data-layout=compact] .dashboard{grid-template-columns:1fr 1fr}body[data-layout=compact] .countdown-card{grid-column:1/-1}}
@media(max-width:600px){.shell{width:calc(100% - 26px)}.toolbar{height:76px}.brand small{display:none}.toolbar-actions{gap:5px}.toolbar-actions .btn.subtle{padding:9px 7px;font-size:11px}.chevron{padding-left:0}.hero{margin:30px 0 21px;align-items:start}.hero h1{margin:10px 0}.hero p{line-height:1.5}.add-hero{font-size:0;padding:9px 13px}.add-hero:first-letter{font-size:22px}.dashboard,body[data-layout=minimal] .dashboard,body[data-layout=analog] .dashboard,body[data-layout=details] .dashboard,body[data-layout=mountain] .dashboard,body[data-layout=compact] .dashboard{display:flex;flex-direction:column;gap:12px}.panel{padding:21px}.clock-card,.current-card{min-height:205px}.clock{font-size:clamp(38px,10vw,53px)}.countdown-card{min-height:160px}.countdown{font-size:39px}.slot{grid-template-columns:85px 5px minmax(0,1fr);gap:10px;padding:11px 9px}.slot-tag{grid-column:3;font-size:9px}.slot-name{font-size:13px}.slot-name small{font-size:10px}body[data-layout=compact] .slot-list.compact-slots{grid-template-columns:1fr}.section-heading{align-items:start}.section-actions{gap:4px}.section-actions .btn{padding:7px 9px}.week-grid{grid-template-columns:repeat(4,1fr)}.week-day{min-height:100px}.two-fields{gap:10px}dialog{padding:20px}body[data-layout=analog] .clock-card{min-height:210px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}

.left-actions{display:flex;align-items:center;gap:14px}.midnight-choice{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:500}.midnight-choice input{width:15px;height:15px;accent-color:var(--primary)}
@media(max-width:600px){.left-actions{gap:8px}.brand strong{font-size:15px}.brand-icon{display:none}.toolbar-actions .btn.subtle .chevron{display:none}}