:root{color-scheme:light;--bg: #efe6d6;--bg-2: #e5f0ea;--ink: #172433;--muted: #526173;--paper: rgba(255, 252, 247, .92);--card: #fffdf9;--line: #e3d8c6;--header: #12283d;--header-text: #f7f3ea;--brass: #8d6840;--brass-soft: #f3e7d2;--button: #12283d;--button-text: #f7f3ea;--overdue: #8d312c;--overdue-bg: #f8e6e2;--due: #8a5810;--due-bg: #f8edd4;--ok: #1b6846;--ok-bg: #e3f4eb;--unknown: #46586a;--unknown-bg: #e7eef3;--open: #8d312c;--open-bg: #f8e6e2;--scheduled: #8a5810;--scheduled-bg: #f8edd4;--fixed: #1b6846;--fixed-bg: #e3f4eb;--shadow: 0 16px 40px rgba(18, 40, 61, .08);--serif: "Iowan Old Style", Palatino, "Palatino Linotype", Georgia, serif;--sans: "Avenir Next", "Segoe UI", sans-serif}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--bg: #0d1620;--bg-2: #102018;--ink: #f3eee4;--muted: #b7c4d1;--paper: rgba(18, 32, 46, .92);--card: #182838;--line: #2c4156;--brass: #e0c07a;--brass-soft: #3a3122;--button: #f3eee4;--button-text: #12283d;--overdue: #ffb4aa;--overdue-bg: #4a2422;--due: #f0d59a;--due-bg: #3d3118;--ok: #9ddec0;--ok-bg: #163528;--unknown: #d5dee6;--unknown-bg: #243140;--open: #ffb4aa;--open-bg: #4a2422;--scheduled: #f0d59a;--scheduled-bg: #3d3118;--fixed: #9ddec0;--fixed-bg: #163528;--shadow: 0 16px 40px rgba(0, 0, 0, .28)}}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--ink);font-family:var(--sans);background:radial-gradient(1200px 500px at 10% -10%,var(--bg-2),transparent 60%),linear-gradient(180deg,var(--bg),var(--bg-2))}button,input{font:inherit}:focus-visible{outline:3px solid var(--brass);outline-offset:3px}.login{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.login-card,.hero,.card,.panel{background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.login-card{width:min(100%,28rem);padding:2rem 1.4rem 1.5rem;text-align:left}.login-card .mark,.brand .mark{color:var(--brass)}h1,h2,h3{font-family:var(--serif);font-weight:560;letter-spacing:-.02em}h1{font-size:clamp(2.4rem,8vw,3.4rem);margin:.2rem 0;line-height:.95}h2{font-size:1.45rem;margin:0}h3{font-size:1.2rem;margin:0 0 .35rem}.eyebrow{margin:.8rem 0 0;color:var(--brass);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.lede{color:var(--muted);font-size:1.05rem;line-height:1.45}.fine,.notes{color:var(--muted);line-height:1.45}.notes{margin-bottom:0}.button,.text-button,.tab{border:0;cursor:pointer}.button{width:100%;min-height:3rem;border-radius:999px;background:var(--button);color:var(--button-text)}.button:disabled{opacity:.6;cursor:wait}.button.quiet{margin-top:.75rem;background:transparent;color:var(--ink);border:1px solid var(--line)}.field{display:grid;gap:.35rem;margin:.85rem 0}.field span{color:var(--muted);font-size:.85rem}input{min-height:2.75rem;border-radius:12px;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:.4rem .75rem}.qr{display:block;width:min(220px,70%);height:auto;margin:.4rem 0 .8rem;padding:.55rem;background:#fff;border-radius:16px}.secret{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;background:var(--paper);border-radius:12px;padding:.7rem .8rem}.top{position:sticky;top:0;z-index:2;background:var(--header);color:var(--header-text);padding:calc(.7rem + env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) .7rem max(1rem,env(safe-area-inset-left))}.top-inner,.shell{width:min(920px,100%);margin:0 auto}.top-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.6rem;font-family:var(--serif);font-size:1.25rem}.text-button{background:transparent;color:inherit;min-height:2.75rem;padding:0 .2rem}.shell{padding:1rem max(1rem,env(safe-area-inset-right)) 3rem max(1rem,env(safe-area-inset-left))}.banner{margin:0 0 .9rem;padding:.75rem .9rem;border-radius:14px;background:var(--brass-soft);color:var(--ink)}.hero{padding:0;overflow:hidden}.hero-body{padding:1.1rem 1.1rem 1rem}.hero-photo{background:var(--header);min-height:9rem}.hero-photo img{display:block;width:100%;height:clamp(9.5rem,34vw,18rem);object-fit:cover}.hero-photo.fallback{display:grid;place-items:center;min-height:clamp(9.5rem,32vw,16rem);color:var(--header-text);background:radial-gradient(420px 160px at 18% 0%,rgba(224,192,122,.28),transparent 62%),linear-gradient(165deg,#1c425f,#12283d 58%,#0d2032)}.hero-fallback{text-align:center;padding:1.2rem}.hero-fallback .mark{color:var(--brass)}.hero-fallback p{margin:.45rem 0 0;letter-spacing:.04em}.hero-meta{margin:.2rem 0 .8rem;color:var(--muted)}.facts,.legend{display:flex;flex-wrap:wrap;gap:.45rem;padding:0;margin:0 0 1rem;list-style:none}.facts li,.chip{border:1px solid var(--line);border-radius:999px;padding:.28rem .65rem;color:var(--muted);background:var(--paper)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin:0}.stats div{background:var(--paper);border-radius:16px;padding:.7rem .5rem;text-align:center}.stats dt{color:var(--muted);font-size:.78rem}.stats dd{margin:.15rem 0 0;font-family:var(--serif);font-size:1.7rem}.tabs{display:flex;gap:.4rem;overflow-x:auto;padding:.9rem 0;position:sticky;top:3.6rem;background:linear-gradient(var(--bg),transparent)}.tab{flex:0 0 auto;min-height:2.75rem;padding:0 .9rem;border-radius:999px;background:transparent;color:var(--ink);border:1px solid transparent}.tab.active{background:var(--card);border-color:var(--line);box-shadow:var(--shadow)}.panel{padding:1rem}.stack{display:grid;gap:.75rem}.card{padding:1rem;box-shadow:none}.card-top,.details div{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.details{display:grid;gap:.75rem;margin:0}.details dt{color:var(--muted);font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.details dd{margin:.15rem 0 0}.badge{display:inline-flex;align-items:center;min-height:1.7rem;padding:0 .6rem;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.badge.overdue,.badge.open{color:var(--overdue);background:var(--overdue-bg)}.badge.due,.badge.scheduled{color:var(--due);background:var(--due-bg)}.badge.ok,.badge.fixed{color:var(--ok);background:var(--ok-bg)}.badge.unknown{color:var(--unknown);background:var(--unknown-bg)}.empty{color:var(--muted)}.colophon{color:var(--muted);font-size:.85rem;text-align:center;margin-top:1.2rem}.colophon p{margin:.2rem 0}.colophon a{color:inherit}@media(min-width:720px){.login-card,.hero-body,.panel{padding:1.6rem}.details{grid-template-columns:1fr 1fr}.tabs{top:4rem}}
