@font-face{font-family:Manrope;src:url(/fonts/Manrope-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/Manrope-Medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/Manrope-Bold.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Bold.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:PT Serif;src:url(/fonts/PTSerif-Italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}:root{--ink:#231f20;--stone:#f5ede3;--tangerine:#ff541a;--tangerine-deep:#d63c05;--rose:#f09161;--blush:#ffc2a8;--bronze:#c99978;--gold:#d9ab4f;--brown:#996142;--surface:#fff;--muted:#6f675c;--line:#e5dccf;--line-soft:#efe8dc;--cat-1:#ff541a;--cat-2:#0072a8;--cat-3:#be8a28;--cat-4:#9d4c94;--ok:#1a7f37;--ok-bg:#e7f3ea;--warn:#91600a;--warn-bg:#faf0d8;--bad:#b3382c;--bad-bg:#fbe9e6;--neutral-bg:#efe9df;--radius-xl:32px;--radius-lg:16px;--radius-md:8px;--radius-sm:4px;--font-heading:"Manrope", system-ui, sans-serif;--font-body:"DM Sans", system-ui, sans-serif}*{box-sizing:border-box}body{background:var(--stone);color:var(--ink);font-family:var(--font-body);margin:0;font-size:15px;line-height:1.5}h1,h2,h3{font-family:var(--font-heading);letter-spacing:-.02em;margin:0;font-weight:700;line-height:1.15}h1{font-size:26px}h2{font-size:19px}h3{font-size:15px}.serif-accent{font-family:PT Serif,serif;font-style:italic;font-weight:400}button{font-family:var(--font-body)}.shell{grid-template-columns:232px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:24px;padding:24px 16px;display:flex}.sidebar .logo{align-self:flex-start;height:28px;margin-left:8px}.sidebar nav{flex-direction:column;gap:4px;display:flex}.sidebar nav a{border-radius:var(--radius-md);color:var(--ink);padding:9px 12px;font-weight:500;text-decoration:none;display:block}.sidebar nav a:hover{background:var(--stone)}.sidebar nav a.active{background:var(--tangerine);color:#fff}.sidebar .foot{flex-direction:column;gap:12px;margin-top:auto;display:flex}.main{width:100%;max-width:1080px;padding:28px 36px 64px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;display:flex}.page-head .sub{color:var(--muted);margin-top:4px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px 22px}.tiles{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:16px;display:grid}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 16px}.tile .label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:500}.tile .value{font-family:var(--font-heading);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:2px;font-size:30px;font-weight:700}.tile .note{color:var(--muted);font-size:12px}.grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=900px){.grid-2,.shell{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--line);flex-direction:row;align-items:center}.sidebar .foot{margin-top:0;margin-left:auto}}.chip{white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:500;display:inline-block}.chip.ok{color:var(--ok);background:var(--ok-bg)}.chip.warn{color:var(--warn);background:var(--warn-bg)}.chip.bad{color:var(--bad);background:var(--bad-bg)}.chip.neutral{color:var(--muted);background:var(--neutral-bg)}.pending-badge{color:var(--warn);background:var(--warn-bg);vertical-align:middle;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:11px;display:inline-block}.btn{cursor:pointer;border:none;border-radius:999px;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.btn.primary{background:var(--tangerine);color:#fff}.btn.primary:hover{background:var(--tangerine-deep)}.btn.secondary{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.btn.secondary:hover{background:var(--stone)}.btn.danger{background:var(--bad);color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--tangerine);outline-offset:2px}input,select{font-family:var(--font-body);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);padding:9px 12px;font-size:14px}label.field{flex-direction:column;gap:4px;font-size:13px;font-weight:500;display:flex}.form-error{color:var(--bad);background:var(--bad-bg);border-radius:var(--radius-md);padding:10px 12px;font-size:13px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line-soft);vertical-align:middle;padding:10px 12px}th{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:500}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}tr:last-child td{border-bottom:none}.seat-meter .bar{background:var(--line-soft);border-radius:999px;height:8px;margin-top:6px;overflow:hidden}.seat-meter .fill{background:var(--tangerine);border-radius:999px;height:100%}.seat-meter .fill.full{background:var(--bad)}.seat-meter .counts{font-size:13px;font-weight:500}.seat-meter .hint{color:var(--muted);font-size:12px}.modal-overlay{z-index:40;background:#231f2073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--radius-lg);flex-direction:column;gap:14px;width:100%;max-width:440px;padding:24px;display:flex}.chart-tooltip{pointer-events:none;background:var(--ink);color:#fff;border-radius:var(--radius-sm);z-index:50;white-space:nowrap;padding:6px 10px;font-size:12px;position:fixed;transform:translate(-50%,calc(-100% - 10px))}.legend{color:var(--muted);flex-wrap:wrap;gap:14px;margin-top:10px;font-size:13px;display:flex}.legend .swatch{vertical-align:baseline;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}details.data-table{margin-top:12px;font-size:13px}details.data-table summary{cursor:pointer;color:var(--muted)}.login-wrap{background:var(--stone);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background:var(--surface);border-radius:var(--radius-xl);flex-direction:column;gap:18px;width:100%;max-width:420px;padding:44px 40px;display:flex}.login-card .logo{align-self:flex-start;height:32px}.demo-hints{color:var(--muted);background:var(--stone);border-radius:var(--radius-md);padding:10px 12px;font-size:12px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.th-sort{font:inherit;color:inherit;cursor:pointer;text-align:inherit;background:0 0;border:0;padding:0}.th-sort:hover{color:var(--ink);text-decoration:underline}.print-only{display:none}@media print{@page{size:A4;margin:14mm}body{background:#fff}.no-print,.sidebar,.demo-hints{display:none!important}.shell{display:block}.main{max-width:none;padding:0}.print-only{align-items:center;gap:16px;margin-bottom:18px;display:flex}.card,.tile{break-inside:avoid;border:1px solid #ddd5c8}.grid-2{grid-template-columns:1fr 1fr}.tiles{grid-template-columns:repeat(3,1fr)}details.data-table,.btn{display:none}}
