@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-next-latin-400-normal-FfmJh7DR.woff2) format("woff2"),url(/assets/atkinson-hyperlegible-next-latin-400-normal-DPp7N0cD.woff) format("woff")}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/atkinson-hyperlegible-next-latin-500-normal-gHP6TDRs.woff2) format("woff2"),url(/assets/atkinson-hyperlegible-next-latin-500-normal-B0CYqHl3.woff) format("woff")}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-next-latin-700-normal-Dpiyiu63.woff2) format("woff2"),url(/assets/atkinson-hyperlegible-next-latin-700-normal-C2qZD_Q9.woff) format("woff")}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/atkinson-hyperlegible-next-latin-800-normal-D32lleIF.woff2) format("woff2"),url(/assets/atkinson-hyperlegible-next-latin-800-normal-DtRtCSx4.woff) format("woff")}:root{color-scheme:light;--bg: #eef1ef;--surface: #f9fbfa;--sunken: #e3e8e5;--line: #c8d0cc;--line-strong: #94a19b;--ink: #17222a;--ink-2: #4b5b63;--accent: #1b6d65;--accent-ink: #ffffff;--accent-soft: #d2e8e3;--amber: #8a5300;--amber-soft: #f7e5c3;--alarm: #a3161a;--alarm-soft: #f8dbd8;--focus: #1b6d65;--font: "Atkinson Hyperlegible Next", "Atkinson Hyperlegible", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--t-xs: .8125rem;--t-sm: .875rem;--t-md: 1rem;--t-lg: 1.25rem;--t-xl: 1.5625rem;--t-2xl: 1.953rem;--t-3xl: 2.441rem;--r-control: 8px;--r-tile: 10px;--r-panel: 14px;--r-dialog: 18px;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #10171c;--surface: #172128;--sunken: #0c1216;--line: #2b3942;--line-strong: #4f626c;--ink: #e5ece9;--ink-2: #9cadb5;--accent: #5cc0b2;--accent-ink: #0d1b19;--accent-soft: #163a36;--amber: #f0b45a;--amber-soft: #3a2b12;--alarm: #ff8f86;--alarm-soft: #401b1b;--focus: #5cc0b2}}:root[data-theme=dark]{color-scheme:dark;--bg: #10171c;--surface: #172128;--sunken: #0c1216;--line: #2b3942;--line-strong: #4f626c;--ink: #e5ece9;--ink-2: #9cadb5;--accent: #5cc0b2;--accent-ink: #0d1b19;--accent-soft: #163a36;--amber: #f0b45a;--amber-soft: #3a2b12;--alarm: #ff8f86;--alarm-soft: #401b1b;--focus: #5cc0b2}*,*:before,*:after{box-sizing:inherit}html{scroll-padding-top:env(safe-area-inset-top,0px)}html,body{margin:0;min-height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--t-md);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1{font-size:var(--t-2xl);line-height:1.2;font-weight:800;letter-spacing:-.01em}h2{font-size:var(--t-xl);line-height:1.25;font-weight:700}h3{font-size:var(--t-lg);line-height:1.3;font-weight:700}button,input,select,textarea{font:inherit;color:inherit}img,svg{max-width:100%}.num{font-variant-numeric:tabular-nums}.muted{color:var(--ink-2)}.small{font-size:var(--t-sm)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.75rem;padding:.5rem 1.1rem;border:1px solid var(--line-strong);border-radius:var(--r-control);background:var(--surface);color:var(--ink);font-weight:700;cursor:pointer;text-decoration:none}.btn:hover{background:var(--sunken)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover{background:var(--accent);filter:brightness(1.08)}.btn-danger{color:var(--alarm);border-color:var(--alarm)}.btn-danger:hover{background:var(--alarm-soft)}.btn-quiet{border-color:transparent;background:transparent}.btn-quiet:hover{background:var(--sunken)}.btn-small{min-height:2.25rem;padding:.25rem .8rem;font-size:var(--t-sm)}.btn-row{display:flex;flex-wrap:wrap;gap:.5rem}.field{display:grid;gap:.35rem}.field label{font-size:var(--t-sm);font-weight:700}.input{min-height:2.75rem;padding:.5rem .75rem;width:100%;border:1px solid var(--line-strong);border-radius:var(--r-control);background:var(--surface)}.notice{padding:.75rem 1rem;border-radius:var(--r-control);background:var(--sunken)}.notice-error{background:var(--alarm-soft);color:var(--ink);border:1px solid var(--alarm)}.notice-warn{background:var(--amber-soft);color:var(--ink);border:1px solid var(--amber)}.notice-ok{background:var(--accent-soft);color:var(--ink);border:1px solid color-mix(in srgb,var(--accent) 45%,transparent)}.topbar{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;padding:.6rem clamp(1rem,3vw,2rem);background:var(--surface);border-bottom:1px solid var(--line)}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:30;background:var(--surface)}.wordmark{display:flex;align-items:center;gap:.55rem;font-weight:800;font-size:var(--t-lg);color:var(--ink);text-decoration:none}.wordmark svg{width:26px;height:26px;color:var(--accent)}.nav{display:flex;gap:.25rem;flex-wrap:wrap}.nav a{padding:.4rem .75rem;border-radius:var(--r-control);color:var(--ink-2);text-decoration:none;font-weight:700}.nav a[aria-current=page]{color:var(--ink);background:var(--sunken)}.nav a:hover{color:var(--ink)}.who{margin-left:auto;display:flex;align-items:center;gap:.5rem;font-size:var(--t-sm)}.env-bar{padding:.45rem clamp(1rem,3vw,2rem);font-size:var(--t-sm);background:var(--amber-soft);color:var(--ink);border-bottom:1px solid var(--line)}.page{max-width:72rem;margin:0 auto;padding:clamp(1.25rem,4vw,2.5rem) clamp(1rem,3vw,2rem) 4rem}.page-narrow{max-width:44rem}.page-wide{max-width:84rem}.page-head{display:grid;gap:.4rem;margin-bottom:1.75rem}.people{display:grid;gap:1.75rem}.people-group{display:grid;gap:.5rem}.people-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.5rem}.person-btn{display:grid;gap:.1rem;text-align:left;padding:.75rem 1rem;border:1px solid var(--line);border-radius:var(--r-control);background:var(--surface);cursor:pointer}.person-btn:hover{border-color:var(--line-strong)}.person-btn strong{font-size:var(--t-md)}.exam-list{display:grid;border-top:1px solid var(--line)}.exam-row{display:grid;grid-template-columns:1fr auto;gap:.5rem 1.5rem;align-items:center;padding:1.25rem 0;border-bottom:1px solid var(--line)}.exam-row .meta{color:var(--ink-2);font-size:var(--t-sm)}.exam-when{display:grid;gap:.1rem;margin-top:.5rem}.exam-when strong{font-size:var(--t-lg)}.exam-notes{margin-top:.5rem;max-width:60ch}.walk-in{margin-top:.75rem}.print-only{display:none}@media print{.topbar,.env-bar,.no-print{display:none!important}.print-only{display:table-cell;min-width:10rem}.day-list .table td,.day-list .table th{padding:.35rem .5rem}body{background:#fff;color:#000}}.slots-compact{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));max-height:18rem;overflow-y:auto}@media (max-width: 40rem){.exam-row{grid-template-columns:1fr}}.status-pill{display:inline-block;padding:.1rem .55rem;border-radius:999px;font-size:var(--t-xs);font-weight:700;background:var(--sunken);color:var(--ink-2);margin-left:.5rem;vertical-align:.15em}.status-pill.ok{background:var(--accent-soft);color:var(--accent)}.status-pill.warn{background:var(--amber-soft);color:var(--amber)}.status-pill.alarm{background:var(--alarm-soft);color:var(--alarm)}.findings{list-style:none;padding:0;margin:.25rem 0 1rem;display:grid;gap:.45rem}.findings li{display:grid;grid-template-columns:4rem 1fr;gap:.6rem;align-items:baseline;font-size:var(--t-sm)}.findings .status-pill{margin-left:0;text-align:center}.days{display:flex;gap:.5rem;overflow-x:auto;padding:.25rem .1rem .75rem;scrollbar-width:thin}.day{flex:0 0 auto;display:grid;justify-items:center;gap:.05rem;min-width:4.5rem;padding:.55rem .75rem;border:1px solid var(--line);border-radius:var(--r-control);background:var(--surface);cursor:pointer}.day[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.day .dow{font-size:var(--t-xs);color:var(--ink-2)}.day .date{font-weight:800;font-size:var(--t-lg)}.room-choice{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.5rem;margin-top:1rem}.slot{display:grid;gap:.15rem;text-align:left;padding:.7rem .9rem;border:1px solid var(--line);border-radius:var(--r-control);background:var(--surface);cursor:pointer}.slot strong{font-size:var(--t-md)}.slot span{font-size:var(--t-sm);color:var(--ink-2)}.slot:hover:not(:disabled){border-color:var(--line-strong)}.slot[aria-pressed=true]{border:2px solid var(--accent);padding:calc(.7rem - 1px) calc(.9rem - 1px);background:var(--accent-soft)}.slot:disabled{background:transparent;cursor:not-allowed}.slot:disabled strong,.slot:disabled span{color:var(--ink-2);text-decoration:line-through;text-decoration-thickness:1px}.slot .few{color:var(--amber);font-weight:700}.slot-group{margin-top:1.5rem}.slot-group h3{font-size:var(--t-md);color:var(--ink-2)}.confirm-bar{position:sticky;bottom:calc(env(safe-area-inset-bottom,0px) + .75rem);margin-top:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem 1.25rem;border-radius:var(--r-panel);background:var(--ink);color:var(--bg)}.confirm-bar .btn-primary{--accent-ink: var(--ink);background:var(--bg);border-color:var(--bg);color:var(--ink)}.desk{display:grid;grid-template-columns:minmax(0,1fr) 22rem;grid-template-areas:"scan scan" "map side";gap:1.25rem;max-width:90rem;margin:0 auto;padding:1.25rem clamp(1rem,3vw,2rem) 3rem}@media (max-width: 62rem){.desk{grid-template-columns:1fr;grid-template-areas:"scan" "side" "map"}}.scan{grid-area:scan;display:grid;gap:.5rem}.scan-bar{display:flex;gap:.75rem;align-items:stretch}.scan-bar .input{flex:1;min-height:3.5rem;font-size:var(--t-lg);padding-inline:1rem;border-width:2px;border-color:var(--accent);background:var(--surface)}.scan-hint{font-size:var(--t-sm);color:var(--ink-2)}.scan-hint.paused{color:var(--amber);font-weight:700}.side{grid-area:side;display:grid;gap:1.25rem;align-content:start}.panel{border:1px solid var(--line);border-radius:var(--r-panel);background:var(--surface);padding:1.1rem 1.25rem}.panel h2{font-size:var(--t-lg);margin-bottom:.75rem}.arrival{border-radius:var(--r-panel);padding:1.1rem 1.25rem 1.25rem;border:2px solid var(--line);background:var(--surface)}.arrival.in{border-color:var(--accent);background:var(--accent-soft)}.arrival.warn{border-color:var(--amber);background:var(--amber-soft)}.arrival.bad{border-color:var(--alarm);background:var(--alarm-soft)}.arrival .who-name{font-size:var(--t-lg);font-weight:700}.arrival .seat-call{display:flex;align-items:baseline;gap:.75rem;margin:.25rem 0 .35rem}.arrival .seat-call span{font-size:var(--t-lg);color:var(--ink-2);font-weight:700}.arrival .seat-call strong{font-size:clamp(4.5rem,11vw,7.5rem);line-height:.9;font-weight:800;letter-spacing:-.03em;color:var(--accent);font-variant-numeric:tabular-nums}.arrival.in .seat-call strong{animation:seat-in .38s cubic-bezier(.2,.9,.3,1.2) both}@keyframes seat-in{0%{transform:scale(.82);opacity:0}to{transform:none;opacity:1}}@media (prefers-reduced-motion: reduce){.arrival.in .seat-call strong{animation:none}}.arrival p+p,.arrival p+.btn-row,.arrival .btn-row{margin-top:.6rem}.arriving{display:grid}.arriving-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.5rem;padding:.55rem 0;border-top:1px solid var(--line)}.arriving-row:first-child{border-top:0}.paper-exam{display:grid;gap:.4rem}.paper-exam+.paper-exam{border-top:1px solid var(--line);padding-top:.75rem;margin-top:.75rem}.paper-sitting{grid-template-columns:1fr}.paper-sitting .btn-row{justify-content:flex-start}.results{display:grid;gap:.35rem;margin-top:.5rem}.result{display:flex;justify-content:space-between;align-items:center;gap:.5rem;text-align:left;padding:.55rem .75rem;border:1px solid var(--line);border-radius:var(--r-control);background:var(--surface);cursor:pointer}.result:hover{border-color:var(--line-strong)}.result>span:last-child{white-space:nowrap}.floor{grid-area:map;display:grid;gap:1rem;align-content:start}.floor-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}.legend{display:flex;flex-wrap:wrap;gap:.35rem 1rem;font-size:var(--t-sm);color:var(--ink-2)}.legend i{display:inline-block;width:.8rem;height:.8rem;border-radius:3px;margin-right:.35rem;vertical-align:-.1em;border:1px solid var(--line-strong)}.plan{border:1px solid var(--line);border-radius:var(--r-panel);background:var(--sunken);padding:1rem;overflow-x:auto}.plan-front{text-align:center;font-size:var(--t-sm);color:var(--ink-2);margin-bottom:.75rem}.plan-row{display:grid;grid-template-columns:1.75rem repeat(var(--cols),minmax(6.25rem,1fr));gap:.5rem;margin-bottom:.5rem}.plan-row-label{align-self:center;font-weight:800;color:var(--ink-2);text-align:center}.seat{position:relative;display:grid;align-content:start;gap:.1rem;min-height:5.25rem;padding:.5rem .6rem;text-align:left;border:1px solid var(--line);border-radius:var(--r-tile);background:var(--surface);cursor:pointer}.seat:hover{border-color:var(--line-strong)}.seat .label{font-weight:800;font-size:var(--t-md)}.seat .occ{font-size:var(--t-sm);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seat .left{font-size:var(--t-sm);font-variant-numeric:tabular-nums}.seat.empty .label{color:var(--ink-2);font-weight:700}.seat.busy{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.seat.ending{background:var(--amber-soft);border-color:var(--amber)}.seat.ending .left{color:var(--amber);font-weight:700}.seat.over{background:var(--alarm-soft);border-color:var(--alarm)}.seat.over .left{color:var(--alarm);font-weight:700}.seat.gatefail{box-shadow:inset 0 0 0 2px var(--alarm)}.seat .gate-flag{font-size:var(--t-xs);font-weight:700;color:var(--alarm);line-height:1.25}.seat.off{cursor:default;background:repeating-linear-gradient(135deg,transparent 0 6px,var(--line) 6px 7px);color:var(--ink-2)}.seat[aria-pressed=true]{outline:3px solid var(--ink);outline-offset:1px}.acc-inline{width:1rem;height:1rem;vertical-align:-.15em;margin-left:.35rem;color:var(--ink-2)}.seat .acc{position:absolute;top:.4rem;right:.45rem;width:1rem;height:1rem;color:var(--ink-2)}.detail{display:grid;gap:.85rem}.detail dl{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem;margin:0;font-size:var(--t-sm)}.detail dt{color:var(--ink-2)}.detail dd{margin:0;font-weight:700}.big-left{font-size:var(--t-3xl);font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.gate-line{display:flex;justify-content:space-between;gap:.5rem;font-size:var(--t-sm)}.gate-failed{color:var(--alarm);font-weight:700}.station{min-height:calc(100vh - 4rem);min-height:calc(100dvh - 4rem);display:grid;place-items:center;padding:2rem clamp(1rem,4vw,3rem)}.station-card{width:min(40rem,100%);display:grid;gap:1.5rem}.station-top{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}.station-seat{font-size:var(--t-lg);color:var(--ink-2);font-weight:700}.station-seat strong{color:var(--ink)}.timer{display:grid;gap:.5rem}.timer-value{font-size:clamp(4rem,14vw,7rem);font-weight:800;line-height:.95;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.timer.ending .timer-value{color:var(--amber)}.timer-track{height:6px;border-radius:999px;background:var(--sunken);overflow:hidden}.timer-fill{height:100%;background:var(--accent);transition:width 1s linear}.timer.ending .timer-fill{background:var(--amber)}@media (prefers-reduced-motion: reduce){.timer-fill{transition:none}}.parts{display:grid;gap:.6rem}.part{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:var(--r-panel);background:var(--surface)}.part-n{width:2.25rem;height:2.25rem;display:grid;place-items:center;border-radius:50%;background:var(--sunken);font-weight:800}.part-time{display:block;margin-top:.15rem}.part-time.ending{color:var(--amber);font-weight:700}.station-wait{display:grid;gap:.75rem;text-align:center;justify-items:center}.station-wait svg{width:56px;height:56px;color:var(--accent)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0a10148c;display:grid;place-items:center;padding:1rem}.dialog{width:min(30rem,100%);max-height:calc(100vh - 2rem);overflow:auto;background:var(--surface);border-radius:var(--r-dialog);padding:1.5rem;display:grid;gap:1rem;border:1px solid var(--line)}.dialog:focus{outline:none}.dialog pre{margin:0;padding:.75rem;border-radius:var(--r-control);background:var(--sunken);font-size:var(--t-xs);white-space:pre-wrap;word-break:break-all;max-height:10rem;overflow:auto}.signin{min-height:calc(100vh - 3rem);min-height:calc(100dvh - 3rem);display:grid;place-content:center;justify-items:center;gap:1.25rem;padding:clamp(1.5rem,6vw,4rem) 1rem}.signin-card{width:min(26rem,100%);display:grid;gap:1.1rem;padding:clamp(1.5rem,5vw,2.25rem);border:1px solid var(--line);border-radius:var(--r-dialog);background:var(--surface)}.signin-brand{display:flex;align-items:center;gap:.6rem;font-weight:800;font-size:var(--t-xl)}.signin-brand svg{width:34px;height:34px;color:var(--accent)}.signin-card h1{font-size:var(--t-xl)}.signin-form{display:grid;gap:.9rem}.signin-or{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;color:var(--ink-2);font-size:var(--t-sm)}.signin-or:before,.signin-or:after{content:"";border-top:1px solid var(--line)}.btn-wide{width:100%;min-height:3.25rem;font-size:var(--t-lg)}.person-btn:disabled{opacity:.55;cursor:not-allowed}.tabs{display:flex;gap:.25rem;flex-wrap:wrap;margin-bottom:1.75rem;border-bottom:1px solid var(--line);padding-bottom:.5rem}.tabs a{padding:.45rem .85rem;border-radius:var(--r-control);color:var(--ink-2);text-decoration:none;font-weight:700}.tabs a:hover{color:var(--ink);background:var(--sunken)}.tabs a[aria-current=page]{color:var(--accent-ink);background:var(--accent)}.setup-section{display:grid;gap:1.25rem;align-content:start}.setup-section>h1{font-size:var(--t-xl)}.setup-section h2{font-size:var(--t-lg)}.setup-section h3{font-size:var(--t-md)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;flex-wrap:wrap}.section-head h1{font-size:var(--t-xl)}.back{justify-self:start;color:var(--ink-2);font-weight:700;font-size:var(--t-sm);text-decoration:none}.back:hover{color:var(--ink);text-decoration:underline}.panel-flat{display:grid;gap:.9rem;border-top:1px solid var(--line);padding-top:1.25rem}.table{width:100%;border-collapse:collapse;font-size:var(--t-sm)}.table th{text-align:left;font-weight:700;color:var(--ink-2);padding:.5rem .75rem;border-bottom:1px solid var(--line-strong)}.table td{padding:.6rem .75rem;border-bottom:1px solid var(--line);vertical-align:top}.table a{color:var(--ink)}.table .actions{text-align:right;white-space:nowrap}.row-link{cursor:pointer}.row-link:hover td{background:var(--sunken)}.row-off td{color:var(--ink-2)}@media (max-width: 48rem){.table,.table tbody,.table tr,.table td{display:block}.table thead{display:none}.table tr{border-bottom:1px solid var(--line);padding:.5rem 0}.table td{border:0;padding:.15rem 0}.table .actions{text-align:left}.table td[data-label]:before{content:attr(data-label) ": ";color:var(--ink-2)}}.facts{display:grid;grid-template-columns:max-content 1fr;gap:.4rem 1.25rem;margin:0}.facts dt{color:var(--ink-2);font-size:var(--t-sm)}.facts dd{margin:0}.part-list{margin:0;padding-left:1.25rem;display:grid;gap:.2rem}.form{display:grid;gap:1rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.75rem 1rem;align-items:start}.form-inline{grid-template-columns:repeat(auto-fit,minmax(10rem,max-content));align-items:end}.fieldset{border:1px solid var(--line);border-radius:var(--r-panel);padding:.9rem 1.1rem 1.1rem;margin:0;display:grid;gap:.6rem}.fieldset legend{font-weight:700;padding:0 .35rem}.field .label{font-size:var(--t-sm);font-weight:700}.field-compact{min-width:14rem}.hint{font-size:var(--t-sm);color:var(--ink-2);margin:0}.check{display:flex;gap:.6rem;align-items:start}.check input{width:1.15rem;height:1.15rem;margin-top:.2rem;accent-color:var(--accent);flex:none}.check label{display:grid;gap:.05rem}.weekdays{grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr))}.input-number{max-width:9rem}.input-compact{min-height:2.25rem;padding:.2rem .5rem;width:auto}select.input{padding-right:2rem}textarea.input{min-height:6rem;resize:vertical}.mono{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:var(--t-sm)}.break{word-break:break-all}.problems{margin:0;padding-left:1.25rem;color:var(--alarm)}.part-editor{display:grid;grid-template-columns:auto 1fr;gap:.5rem 1rem;align-items:start;padding:.9rem 1rem;border:1px solid var(--line);border-radius:var(--r-tile);background:var(--surface)}.part-editor .btn-row{grid-column:2}.layout{display:grid;grid-template-columns:minmax(0,1fr) 20rem;gap:1.25rem;align-items:start}@media (max-width: 62rem){.layout{grid-template-columns:1fr}}.layout-canvas-wrap{overflow:auto;border:1px solid var(--line);border-radius:var(--r-panel);background:var(--sunken)}.layout-canvas{display:block;width:100%;min-width:36rem;height:auto;touch-action:none;-webkit-user-select:none;user-select:none}.layout-floor{fill:var(--surface);stroke:var(--line-strong);stroke-width:3}.layout-grid{stroke:var(--line);stroke-width:1}.layout-hatch{stroke:var(--line-strong);stroke-width:3}.layout-table{cursor:grab}.layout-table-top{fill:var(--sunken);stroke:var(--line-strong);stroke-width:3}.layout-table.selected .layout-table-top{stroke:var(--ink);stroke-width:5}.layout-table-label{font-size:26px;font-weight:800;fill:var(--ink-2);pointer-events:none}.layout-seat{cursor:grab}.layout-seat-body{fill:var(--surface);stroke:var(--line-strong);stroke-width:2.5}.layout-seat.paper .layout-seat-body{stroke-dasharray:7 5}.layout-seat.off .layout-seat-label{fill:var(--ink-2)}.layout-seat-front{fill:var(--accent)}.layout-seat.paper .layout-seat-front{fill:var(--line-strong)}.layout-seat.selected .layout-seat-body{stroke:var(--ink);stroke-width:5}.layout-seat-label{font-size:22px;font-weight:800;fill:var(--ink);pointer-events:none}.layout-acc{stroke:var(--ink-2);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;fill:var(--ink-2);pointer-events:none}.layout-acc path{fill:none}.layout-seat:focus-visible .layout-seat-body,.layout-table:focus-visible .layout-table-top{stroke:var(--focus);stroke-width:6}.layout-seat:focus,.layout-table:focus{outline:none}.layout-side{display:grid;gap:1rem}.layout-panel{display:grid;gap:.8rem;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:var(--r-panel);background:var(--surface)}.layout-panel h3{font-size:var(--t-md)}.plan-spatial{padding:.75rem}.plan-room{position:relative;width:100%;min-width:calc(var(--plan-w) * .72px);background:var(--surface);border:2px solid var(--line-strong);border-radius:var(--r-tile)}.plan-table{position:absolute;display:grid;place-items:center;background:var(--sunken);border:2px solid var(--line-strong);border-radius:10px;color:var(--ink-2);font-weight:800}.plan-table.round,.plan-table.oval{border-radius:50%}.seat.seat-pin{position:absolute;transform:translate(-50%,-50%);width:5.75rem;min-height:0;padding:.3rem .45rem;gap:0;z-index:1}.seat.seat-pin .label{font-size:var(--t-sm)}.seat.seat-pin .occ,.seat.seat-pin .left{font-size:var(--t-xs)}.seat.seat-pin .acc{top:.3rem;right:.35rem;width:.85rem;height:.85rem}.seat.seat-pin .gate-flag{position:absolute;top:.3rem;right:.35rem;width:.95rem;height:.95rem;border-radius:50%;display:grid;place-items:center;background:var(--alarm);color:var(--surface);font-size:.7rem;line-height:1}.seat.seat-pin .acc~.gate-flag{right:1.35rem}.seat.seat-pin[aria-pressed=true]{z-index:2}.seat.paper{border-style:dashed}.hours-list{display:grid}.hours-row{display:grid;grid-template-columns:9rem 12rem 1fr auto;gap:.5rem 1rem;align-items:center;padding:.4rem 0;border-top:1px solid var(--line)}.hours-row:first-child{border-top:0}@media (max-width: 40rem){.hours-row{grid-template-columns:1fr auto}}.secret-card .facts{margin:.5rem 0}.history summary{cursor:pointer;font-weight:700;font-size:var(--t-sm)}.history ol{margin:.5rem 0 0;padding-left:1.1rem;display:grid;gap:.2rem;font-size:var(--t-sm)}
