:root{--ground:#14100c;--ground-deep:#0d0a07;--surface:rgba(38,30,22,0.72);--surface-solid:#241c14;--surface-raised:rgba(52,41,30,0.78);--ink:#f2e9dc;--ink-soft:#c3b39c;--ink-faint:#8d7d68;--line:rgba(196,168,122,0.18);--line-strong:rgba(196,168,122,0.34);--gold:#c9a24a;--gold-soft:rgba(201,162,74,0.14);--gold-bright:#e2bd6a;--sage:#8fa47f;--clay:#b3714f;--alert:#c2685c;--blur:18px;--radius:14px;--radius-sm:9px;--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--mono:ui-monospace,"Cascadia Mono","SF Mono",Menlo,Consolas,monospace;--shadow:0 2px 4px rgba(0,0,0,0.3),0 18px 48px -24px rgba(0,0,0,0.85)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--ground);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;min-height:100vh}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.01em;margin:0;text-wrap:balance}.room{position:fixed;inset:0;background-size:cover;background-position:50%;z-index:-2}.room:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,10,7,.55) 0,rgba(13,10,7,.78) 55%,rgba(13,10,7,.92))}.panel{background:var(--surface);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel--raised{background:var(--surface-raised)}.eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-weight:600}.quote{font-family:var(--serif);font-style:italic;color:var(--ink-soft);line-height:1.6}.mono{font-family:var(--mono);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.button{font-family:var(--sans);font-size:13px;font-weight:500;color:var(--ink);background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:.6rem 1rem;cursor:pointer;transition:border-color .15s ease,background .15s ease}.button:hover{border-color:var(--gold);background:var(--gold-soft)}.button--primary{background:var(--gold);border-color:var(--gold);color:#201709;font-weight:600}.button--primary:hover{background:var(--gold-bright);border-color:var(--gold-bright)}.field{width:100%;font-family:var(--sans);font-size:13px;color:var(--ink);background:rgba(0,0,0,.22);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.55rem .75rem}.field:focus{border-color:var(--gold);outline:none}select.field{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:2rem;background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 15px),calc(100% - 10px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;background-color:var(--surface-raised);cursor:pointer}select.field option{background:var(--surface-solid);color:var(--ink)}.dropdown{position:relative;width:100%}.dropdown__control{width:100%;display:flex;align-items:center;gap:.75rem;font-family:var(--serif);font-size:1rem;color:var(--ink);text-align:left;background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:.65rem .9rem;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.dropdown__control--open,.dropdown__control:hover:not(:disabled){border-color:var(--gold);background:var(--gold-soft)}.dropdown__control:focus-visible{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}.dropdown__control:disabled{opacity:.55;cursor:wait}.dropdown__value{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown__value--empty{color:var(--ink-faint);font-style:italic}.dropdown__chevron{width:7px;height:7px;border-right:1.5px solid var(--gold);border-bottom:1.5px solid var(--gold);transform:translateY(-2px) rotate(45deg);transition:transform .15s ease}.dropdown__control--open .dropdown__chevron{transform:translateY(2px) rotate(-135deg)}.panel:has(.dropdown__control--open){position:relative;z-index:30}.dropdown__menu{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;margin:0;padding:.35rem;list-style:none;max-height:18rem;overflow-y:auto;background:var(--surface-solid)}.dropdown__option{display:grid;grid-gap:.1rem;gap:.1rem;padding:.55rem .7rem;border-radius:var(--radius-sm);font-family:var(--serif);font-size:.98rem;color:var(--ink-soft);cursor:pointer}.dropdown__option--active{background:var(--gold-soft);color:var(--ink)}.dropdown__option--selected{color:var(--gold-bright)}.dropdown__hint{font-family:var(--sans);font-size:11px;letter-spacing:.04em;color:var(--ink-faint)}.checklist{display:grid;grid-gap:.35rem;gap:.35rem}.checklist__row{position:relative;display:flex;align-items:center;gap:.7rem;padding:.55rem .75rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-raised);cursor:pointer;transition:border-color .15s ease,background .15s ease}.checklist__row:hover{border-color:var(--gold)}.checklist__row--on{border-color:var(--line-strong);background:var(--gold-soft)}.checklist__row input{position:absolute;opacity:0;pointer-events:none}.checklist__box{flex:none;width:16px;height:16px;border:1.5px solid var(--line-strong);border-radius:4px;display:grid;place-items:center;transition:background .15s ease,border-color .15s ease}.checklist__row--on .checklist__box{background:var(--gold);border-color:var(--gold)}.checklist__row--on .checklist__box:after{content:"";width:4px;height:8px;border-right:2px solid #201709;border-bottom:2px solid #201709;transform:translateY(-1px) rotate(45deg)}.checklist__row input:focus-visible+.checklist__box{box-shadow:0 0 0 3px var(--gold-soft);border-color:var(--gold)}.checklist__label{font-family:var(--serif);font-size:1rem;color:var(--ink)}.checklist__hint{font-size:11px;color:var(--ink-faint)}.badge{display:inline-flex;align-items:center;gap:.35rem;font-size:11px;font-weight:600;letter-spacing:.03em;padding:.22rem .55rem;border-radius:999px;border:1px solid var(--line-strong);white-space:nowrap}.badge--granted{color:var(--sage);border-color:rgba(143,164,127,.4);background:rgba(143,164,127,.12)}.badge--none{color:var(--alert);border-color:rgba(194,104,92,.4);background:rgba(194,104,92,.1)}.shimmer{background:linear-gradient(90deg,var(--surface-raised) 0,var(--line) 45%,var(--surface-raised) 90%);background-size:300% 100%;animation:shimmer 2.4s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:150% 0}to{background-position:-150% 0}}.fade-in{animation:fade-in .6s ease-out}@keyframes fade-in{0%{opacity:0;transform:translateY(.25rem)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.shimmer{background:var(--line)}}.drive{display:grid;grid-template-columns:minmax(240px,300px) 1fr;grid-gap:1.25rem;gap:1.25rem;padding:clamp(1rem,2.5vw,1.75rem);min-height:100vh;align-items:start}.drive__side{padding:1.25rem 1rem;position:-webkit-sticky;position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow:auto}.drive__back{color:var(--ink-faint);font-size:12px}.drive__title{font-size:1.6rem;margin:.5rem 0 .75rem}.drive__path{font-size:13px;color:var(--ink-faint);margin-bottom:.9rem;line-height:1.6}.drive__path a{color:var(--ink-soft)}.drive__sep{margin:0 .35rem;color:var(--ink-faint)}.drive__list{list-style:none;margin:0;padding:0;display:grid;grid-gap:2px;gap:2px}.drive__entry{display:flex;gap:.6rem;align-items:center;padding:.5rem .65rem;border-radius:var(--radius-sm);color:var(--ink);font-size:14px;border:1px solid transparent}.drive__entry:hover{background:var(--gold-soft)}.drive__entry--open{background:linear-gradient(180deg,rgba(226,189,106,.32),rgba(201,162,74,.2));border-color:var(--line-strong)}.drive__icon{width:1.2em;text-align:center;flex:none}.drive__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drive__empty,.drive__note{color:var(--ink-faint);font-size:12px}.drive__note{margin-top:1.25rem;border-top:1px solid var(--line);padding-top:.75rem}.drive__main{display:grid;grid-gap:1rem;gap:1rem;min-width:0}.drive__connect{padding:1.5rem;max-width:60ch}.drive__connect p{color:var(--ink-soft)}.drive__warn{color:var(--alert)!important}.drive__placeholder{display:grid;place-items:center;min-height:50vh}.drive__doc{display:grid;grid-gap:.6rem;gap:.6rem}.drive__doc-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}.drive__doc-head h2{margin:0;font-size:1.4rem}.drive__doc-head a{color:var(--ink-faint);font-size:12px}.drive__page{width:100%;height:calc(100vh - 7rem);border:1px solid var(--line-strong);border-radius:var(--radius);background:#f6efe2;box-shadow:var(--shadow)}.drive__page--preview{background:var(--surface-solid)}@media (max-width:800px){.drive{grid-template-columns:1fr}.drive__side{position:static;max-height:none}}.drive__reconnect{display:block;border-top:none;margin-top:.25rem;padding-top:0;text-decoration:underline}.reading{display:grid;grid-template-columns:minmax(240px,290px) 1fr;grid-gap:1.25rem;gap:1.25rem;padding:clamp(1rem,2.5vw,1.75rem);min-height:100vh;align-items:start}.reading--panel{grid-template-columns:minmax(240px,290px) 1fr minmax(300px,400px)}.reading__panel,.reading__side{padding:1.25rem 1rem;position:-webkit-sticky;position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow:auto;display:grid;grid-gap:.75rem;gap:.75rem;align-content:start}.reading__heading{font-size:1.05rem;margin:.5rem 0 0}.reading__open{display:flex;gap:.5rem;justify-content:flex-end}.reading__tabs{display:flex;gap:1rem;align-items:center;border-bottom:1px solid var(--line);padding-bottom:.5rem}.reading__tab{font-family:var(--serif);color:var(--ink-soft);padding-bottom:.35rem;border-bottom:2px solid transparent}.reading__tab--on{color:var(--gold-bright);border-bottom-color:var(--gold)}.reading__close{margin-left:auto;color:var(--ink-soft);font-size:1.3rem;line-height:1}.reading__folder{margin:0;color:var(--ink-soft);font-size:14px}.drive__doc--compact .drive__doc-head h2{font-size:1.05rem}.drive__doc--compact .drive__page{height:55vh}.drive__designate{margin-top:1rem;display:grid;grid-gap:.4rem;gap:.4rem}.drive__designate .mono,.drive__holds{margin:0;color:var(--ink-faint);font-size:12px}@media (max-width:1100px){.reading--panel{grid-template-columns:minmax(220px,260px) 1fr}.reading--panel .reading__panel{grid-column:1/-1;position:static;max-height:none}}@media (max-width:800px){.reading{grid-template-columns:1fr}.reading__side{position:static;max-height:none}}.launcher{display:grid;grid-gap:.5rem;gap:.5rem;padding:.85rem;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-raised)}.launcher__label{margin:0;color:var(--ink-soft);font-size:13px}.launcher__text{width:100%;resize:vertical;font:13px/1.5 var(--sans);color:var(--ink);background:rgba(0,0,0,.25);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.6rem}.launcher__go{display:flex;justify-content:center}.launcher__said{margin:0;color:var(--ink-soft);font-size:12px}.daily,.houses{padding:.9rem 1rem;margin-bottom:1.5rem;display:grid;grid-gap:.6rem;gap:.6rem}.houses{margin-top:2rem}.daily__note,.houses__said{margin:0;color:var(--ink-soft);font-size:13px}.houses__list{display:flex;flex-wrap:wrap;gap:.5rem}.houses__house{padding:.4rem .8rem;border:1px solid var(--line-strong);border-radius:999px;color:var(--ink-soft);font-size:14px}.houses__house--on{color:var(--ground);background:var(--gold);border-color:var(--gold)}.houses__new{display:flex;gap:.5rem;flex-wrap:wrap}.houses__input{flex:1 1 16rem;font:14px var(--sans);color:var(--ink);background:rgba(0,0,0,.25);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.5rem .7rem}.drive__daily{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.home__doors{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));grid-gap:.75rem;gap:.75rem;margin-top:1.75rem}.home__door{display:flex;align-items:center;justify-content:center;text-align:center;min-height:3.25rem;font-size:1rem}