:root{--asphalt:#0a100d;--asphalt-raised:#141b17;--asphalt-outline:#24302a;--forest:#2e5e46;--forest-deep:#1f4332;--sage:#8fc8a6;--sage-100:#dde8df;--persimmon:#c4552f;--persimmon-deep:#a3421f;--persimmon-100:#f6e3db;--ivory:#efe6c4;--mist:#e7ede8;--paper:#fff;--ink:#121513;--ink-muted:#5b6660;--on-dark:#f2f5f3;--on-dark-muted:#a9b5ae;--status-good:#1f7d49;--status-good-100:#ddefe3;--status-warning:#8f5f00;--status-warning-100:#fbefd2;--status-critical:#b42323;--status-critical-100:#f8dada;--status-info:#1f5fbf;--status-info-100:#dce7f8;--outline:#cbd5ce;--radius-card:16px;--radius-button:12px;--radius-pill:999px;--gap:8px;--touch:48px;--motion:.18s;--font-ui:Roboto, "Roboto Flex", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--accent:var(--forest);--accent-deep:var(--forest-deep);--accent-100:var(--sage-100);--on-accent:var(--on-dark)}@media (prefers-reduced-motion:reduce){:root{--motion:0s}}*,:after,:before{box-sizing:border-box}#__nuxt,body,html{min-height:100%;margin:0}body{background:var(--mist);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.45}h1,h2,h3{letter-spacing:-.01em;margin:0 0 8px;font-weight:700;line-height:1.15}h1{font-size:28px}h2{font-size:20px}h3{font-size:16px}p{margin:0 0 8px}a{color:var(--accent)}:focus-visible{outline:3px solid var(--status-info);outline-offset:2px;border-radius:6px}.money,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.money,.status{white-space:nowrap}.eyebrow,.muted{color:var(--ink-muted)}.small{font-size:13px}.eyebrow{letter-spacing:.12em;font-size:11px}.eyebrow,.wordmark{font-family:var(--font-mono);text-transform:uppercase}.wordmark{letter-spacing:.08em;align-items:center;gap:8px;font-size:16px;font-weight:700;display:inline-flex}.wordmark b{color:var(--accent)}.wordmark .mark{border-radius:6px;flex:none;width:24px;height:24px}.stack{flex-direction:column;gap:12px}.row,.stack{display:flex}.row{align-items:center;gap:8px}.row.between{justify-content:space-between}.chips,.row.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.grid-2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.grid-2,.grid-3{gap:12px;display:grid}.grid-3{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.card{background:var(--paper);border:1px solid var(--outline);border-radius:var(--radius-card);padding:16px}.card.flat{background:var(--sage-100);border:none}.card.dark{background:var(--asphalt);color:var(--on-dark);border-color:var(--asphalt-outline)}.card.dark .muted{color:var(--on-dark-muted)}.btn{min-height:var(--touch);border-radius:var(--radius-button);background:var(--paper);color:var(--ink);font:inherit;cursor:pointer;transition:background var(--motion) ease-out,transform .1s ease-out;border:1px solid #0000;border-color:var(--outline);justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn.primary:hover:not(:disabled){background:var(--accent-deep)}.btn.danger{background:var(--status-critical);color:#fff;border-color:var(--status-critical)}.btn.ghost{color:var(--accent);background:0 0;border-color:#0000}.btn.block{width:100%}.btn.big{min-height:56px;font-size:18px}.btn.small{min-height:36px;padding:0 12px;font-size:14px}.field{flex-direction:column;gap:6px;display:flex}.field label{font-size:14px;font-weight:600}.field .hint{color:var(--ink-muted);font-size:13px}.input,select.input,textarea.input{min-height:var(--touch);border:1px solid var(--outline);border-radius:var(--radius-button);background:var(--paper);font:inherit;color:var(--ink);width:100%;padding:10px 12px}.input:focus{border-color:var(--accent)}textarea.input{resize:vertical;min-height:96px}.input.code{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;text-align:center;font-size:24px}input[type=range]{width:100%;accent-color:var(--accent);min-height:32px}.chips{gap:8px;display:flex}.chip{border-radius:var(--radius-pill);border:1px solid var(--outline);background:var(--paper);min-height:36px;font:inherit;cursor:pointer;align-items:center;gap:6px;padding:0 14px;font-size:14px;display:inline-flex}.chip.on{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.chip.tag{cursor:default;background:var(--sage-100);border-color:#0000;min-height:24px;padding:0 8px;font-size:12px}.switch{cursor:pointer;min-height:var(--touch);align-items:center;gap:10px;display:inline-flex}.switch input{width:44px;height:24px;accent-color:var(--accent)}.status{border-radius:var(--radius-pill);align-items:center;gap:6px;padding:2px 10px;font-size:13px;font-weight:600;display:inline-flex}.status svg{flex:none;width:14px;height:14px}.status.good{background:var(--status-good-100);color:var(--status-good)}.status.warning{background:var(--status-warning-100);color:var(--status-warning)}.status.critical{background:var(--status-critical-100);color:var(--status-critical)}.status.info{background:var(--status-info-100);color:var(--status-info)}.status.neutral{background:var(--mist);color:var(--ink-muted)}.notice{border-radius:var(--radius-button);border:1px solid #0000;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.notice.good{background:var(--status-good-100);color:var(--status-good)}.notice.warning{background:var(--status-warning-100);color:var(--status-warning)}.notice.critical{background:var(--status-critical-100);color:var(--status-critical)}.notice.info{background:var(--status-info-100);color:var(--status-info)}.notice svg{flex:none;width:20px;height:20px;margin-top:2px}.notice strong{display:block}.skeleton{background:linear-gradient(90deg,#dfe6e1 25%,#eef2ef 50%,#dfe6e1 75%) 0 0/200% 100%;border-radius:8px;min-height:16px;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.sheet-backdrop{z-index:50;background:#0a100d8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--paper);border-radius:20px 20px 0 0;width:min(100%,560px);max-height:90vh;padding:20px 20px 28px;overflow:auto;box-shadow:0 -8px 32px #00000040}@media (width>=720px){.sheet-backdrop{align-items:center}.sheet{border-radius:20px}}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);border-bottom:1px solid var(--outline);padding:8px 10px;font-size:11px}.table td{border-bottom:1px solid var(--mist);vertical-align:top;padding:10px}.table td.num,.table th.num{text-align:right}.table-wrap{max-width:100%;overflow-x:auto}.sr-only,.table-wrap .table td,.table-wrap .table th{white-space:nowrap}.office{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.office-side{background:var(--asphalt);color:var(--on-dark);flex-direction:column;gap:4px;padding:20px 16px;display:flex}.office-side .wordmark{color:var(--on-dark);margin-bottom:18px}.office-side .wordmark b{color:var(--sage)}.office-side a{min-height:44px;color:var(--on-dark-muted);border-radius:10px;align-items:center;gap:10px;padding:0 12px;font-weight:600;text-decoration:none;display:flex}.office-side a.router-link-active{background:var(--sage-100);color:var(--asphalt)}.office-side .foot{color:var(--on-dark-muted);margin-top:auto;font-size:12px}.office-main{max-width:1100px;padding:28px 32px}.office-main>header{margin-bottom:20px}@media (width<=800px){.office{grid-template-columns:1fr}.office-side{flex-flow:wrap;align-items:center}.office-side .foot{width:100%;margin-top:0}.office-main{padding:16px}}.tile{background:var(--paper);border:1px solid var(--outline);border-radius:var(--radius-card);padding:14px 16px}.tile .eyebrow{margin-bottom:6px}.tile .big{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:32px;font-weight:700;line-height:1.1}.go{--accent:var(--persimmon);--accent-deep:var(--persimmon-deep);--accent-100:var(--persimmon-100);--on-accent:#fff;background:var(--mist);flex-direction:column;max-width:480px;min-height:100vh;margin:0 auto;display:flex}.go header.bar{justify-content:space-between;align-items:center;min-height:56px;padding:12px 16px;display:flex}.go main{flex:1;padding:0 16px 32px}.go .hero{text-transform:uppercase;letter-spacing:-.01em;margin:8px 0 4px;font-size:30px;font-weight:800;line-height:1.05}.go .hero b{color:var(--persimmon)}.venue-card{color:inherit;grid-template-columns:56px 1fr auto;align-items:center;gap:12px;text-decoration:none;display:grid}.venue-tile{width:56px;height:56px;font-family:var(--font-mono);color:#fff;border-radius:12px;place-items:center;font-size:24px;font-weight:700;display:grid}.venue-tile.FOREST{background:var(--forest)}.venue-tile.PERSIMMON{background:var(--persimmon)}.venue-tile.INFO{background:var(--status-info)}.pass-code{font-family:var(--font-mono);letter-spacing:.12em;text-align:center;padding:8px 0;font-size:40px;font-weight:700}.qr{background:#fff;border-radius:16px;place-items:center;padding:12px;display:grid}.qr img,.qr svg{width:calc(min(70vw,260px));height:auto}.desk{background:var(--mist);grid-template-columns:300px 1fr;min-height:100vh;display:grid}.desk-side{background:var(--paper);border-right:1px solid var(--outline);flex-direction:column;gap:16px;padding:24px 20px;display:flex}.desk-side h1{text-transform:uppercase;letter-spacing:.02em;font-size:26px;line-height:1}.desk-main{flex-direction:column;gap:20px;padding:28px 32px;display:flex}.desk-steps{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);font-size:12px}.desk-steps b{color:var(--ink)}.bill-display{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:64px;font-weight:700;line-height:1}.bill-display small{margin-left:6px;font-size:24px;font-weight:400}.keypad{grid-template-columns:repeat(3,72px);gap:10px;display:grid}.keypad button{border:1px solid var(--outline);background:var(--paper);height:64px;font:inherit;cursor:pointer;border-radius:14px;font-size:24px;font-weight:600}.keypad button:active{background:var(--sage-100)}.scan-frame{background:var(--asphalt);color:var(--on-dark-muted);border-radius:16px;place-items:center;min-height:220px;display:grid;position:relative;overflow:hidden}.scan-frame video{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.scan-frame .frame{aspect-ratio:1;border:2px dashed var(--sage);text-align:center;z-index:1;border-radius:12px;place-items:center;width:60%;padding:12px;display:grid}@media (width<=860px){.desk{grid-template-columns:1fr}.desk-side{border-right:none;border-bottom:1px solid var(--outline)}}.map-box{border-radius:var(--radius-card);border:1px solid var(--outline);background:#d6ded8;height:240px;position:relative;overflow:hidden}.map-box.tall{height:380px}.map-box .map-fallback{text-align:center;color:var(--ink-muted);place-items:center;gap:8px;padding:16px;display:grid;position:absolute;inset:0}.map-box .maplibregl-ctrl-attrib{font-size:11px}.waterfall{flex-direction:column;gap:8px;display:flex}.waterfall .line{grid-template-columns:140px 1fr 110px;align-items:center;gap:10px;font-size:14px;display:grid}.waterfall .bar{background:var(--outline);border-radius:4px;height:14px;position:relative}.waterfall .bar i{border-radius:4px;position:absolute;top:0;bottom:0}.waterfall .bar i.plus{background:var(--forest)}.waterfall .bar i.minus{background:var(--persimmon)}.waterfall .bar i.keep{background:var(--status-good)}.bars{grid-auto-flow:column;align-items:end;gap:10px;height:160px;display:grid}.bars .bar{color:var(--ink-muted);flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;height:100%;font-size:12px;display:flex}.bars .bar i{background:var(--sage);border-radius:6px 6px 0 0;width:100%;max-width:48px}.bars .bar.today i{background:var(--forest)}.bars .bar b{color:var(--ink)}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}
