:root{--purple:#6a1f9c;--purple-50:#f2eaf8;--purple-200:#cdb2e6;--stage:#3a0e5e;--stage-2:#561985;--stage-text:#ebddf6;--stage-line:#4a1474;--stage-border:#8445ba;--mint:#5fdcd1;--mint-text:#06302e;--coral:#ff7a59;--coral-50:#ffeae3;--coral-700:#b23a1c;--teal:#029090;--teal-50:#d6f1f0;--teal-700:#016e6d;--teal-strong:#016e6d;--teal-strong-text:#d5f4f1;--star:#e8a100;--payme:#3cc;--click:#0073ff;--danger:#b42318;--danger-50:#fde8e6;--danger-200:#f3c7c1;--viewer-bg:#2a2530;--phone-bg:#1e1430;--phone-time:#cdb2e6;--phone-bubble:#fffffff0;--phone-ink:#1e1430;--phone-ink-2:#45395b;--map-bg:#ecefe7;--map-park:#d4e6cb;--map-water:#bfdce5;--map-road:#fff;--ink:#1e1430;--ink-2:#3a2e50;--ink-3:#45395b;--muted:#665c75;--faint:#958aa4;--line:#e9e3ef;--line-2:#f1ecf6;--dash:#ddd3e7;--bg:#f7f5fa;--surface:#fff;--font-display:"Bricolage Grotesque", "Segoe UI", sans-serif;--font-body:Manrope, "Segoe UI", sans-serif;--r-sm:12px;--r-md:16px;--r-lg:24px;--r-xl:30px;--container:1280px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#f4eefa;--ink-2:#e0d6ec;--ink-3:#cfc4de;--muted:#b4a8c6;--faint:#8f83a3;--line:#2e2142;--line-2:#261a38;--dash:#3a2b52;--bg:#140b22;--surface:#221533;--purple-50:#3a2052;--coral-50:#4a1f1a;--coral-700:#ffb4a0;--teal-50:#12403f;--teal-700:#5fdcd1;--danger:#ff8a7a;--danger-50:#4a1c1a;--danger-200:#7a2e28;--map-bg:#2a2236;--map-park:#2f3a2c;--map-water:#24364a;--map-road:#3a3048}}:root[data-theme=dark]{--ink:#f4eefa;--ink-2:#e0d6ec;--ink-3:#cfc4de;--muted:#b4a8c6;--faint:#8f83a3;--line:#2e2142;--line-2:#261a38;--dash:#3a2b52;--bg:#140b22;--surface:#221533;--purple-50:#3a2052;--coral-50:#4a1f1a;--coral-700:#ffb4a0;--teal-50:#12403f;--teal-700:#5fdcd1;--danger:#ff8a7a;--danger-50:#4a1c1a;--danger-200:#7a2e28;--map-bg:#2a2236;--map-park:#2f3a2c;--map-water:#24364a;--map-road:#3a3048}*,:before,:after{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-weight:600}a{color:inherit;text-decoration:none}a:hover{color:var(--purple)}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0}button{font:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--purple);outline-offset:2px}.container{max-width:var(--container);margin:0 auto;padding:0 24px}.btn{border-radius:var(--r-md);border:0;justify-content:center;align-items:center;gap:8px;height:50px;padding:0 22px;font-size:15px;font-weight:800;display:inline-flex}.btn-primary{background:var(--purple);color:#fff}.btn-primary:hover{color:#fff;filter:brightness(1.08)}.btn-secondary{color:var(--ink);border:2px solid var(--ink);background:0 0}.btn-sm{height:44px;padding:0 18px;font-size:14px}.btn:disabled{opacity:.6;cursor:default}.link-btn{min-height:44px;color:var(--purple);background:0 0;border:0;align-self:flex-start;padding:0;font-size:14px;font-weight:800}.field{flex-direction:column;gap:6px;display:flex}.field-label{font-size:13px;font-weight:800}.input{border:1.5px solid var(--line);background:var(--surface);min-width:0;height:54px;font:inherit;color:var(--ink);border-radius:14px;flex-grow:1;padding:0 16px;font-size:15.5px}.input:focus{border:2px solid var(--purple);outline:none;padding:0 15.5px}.input[aria-invalid]{border-color:var(--danger)}.field-hint{color:var(--muted);font-size:12.5px;font-weight:600}select.input{appearance:none;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23665C75' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center;padding-right:40px}textarea.input{resize:vertical;height:auto;padding:12px 14px;line-height:1.5}textarea.input:focus{padding:11.5px 13.5px}.field-error{color:var(--danger);font-size:13px;font-weight:700}.chip{white-space:nowrap;border-radius:20px;align-items:center;padding:5px 10px;font-size:12px;font-weight:800;display:inline-flex}.chip-urgent{background:var(--coral-50);color:var(--coral-700)}.chip-good{background:var(--teal-50);color:var(--teal-700)}.chip-new{background:var(--purple-50);color:var(--purple)}.chip-neutral{background:var(--line-2);color:var(--ink-3)}.chip-danger{background:var(--danger-50);color:var(--danger)}.card{background:var(--surface);border-radius:var(--r-lg)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-title{font-size:30px;font-weight:700}.link-strong{min-height:44px;color:var(--purple);align-items:center;font-size:14.5px;font-weight:800;display:inline-flex}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lang-btn{position:relative}.lang-btn:before{content:"";position:absolute;inset:-6px -1px}.page{max-width:var(--container);flex-direction:column;gap:20px;margin:0 auto;padding:28px 24px 64px;display:flex}@media (width<=640px){.page{padding:20px 16px 48px}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px;display:flex}.page-head>div{flex-direction:column;gap:4px;display:flex}.page-title{letter-spacing:-.03em;font-size:clamp(32px,4vw,40px);font-weight:800}.page-sub{color:var(--muted);font-size:15px;font-weight:600}.empty-state{background:var(--surface);border-radius:var(--r-lg);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:48px 24px;display:flex}.empty-state h2{font-size:24px;font-weight:800}.empty-state p{color:var(--ink-3);max-width:44ch;margin:0;font-size:15px}.empty-state .btn{border-radius:14px;height:46px;margin-top:6px;padding:0 18px;font-size:14.5px}.ticket-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;display:grid}.ticket-grid a:hover{color:inherit}.off-badge{font-family:var(--font-display);background:var(--stage);color:var(--coral);white-space:nowrap;border-radius:12px;padding:6px 10px;font-size:18px;font-weight:800}.schematic-map{background:var(--map-bg);position:relative;overflow:hidden}.schematic-map>svg{position:absolute;inset:0}.skeleton{background:linear-gradient(90deg, var(--line-2), var(--line), var(--line-2));border-radius:var(--r-lg);background-size:200% 100%;animation:1.2s infinite sk}@keyframes sk{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.initials-tile{width:48px;height:48px;font-family:var(--font-display);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;font-weight:800;display:flex}.tone-coral{background:var(--coral-50);color:var(--coral-700)}.tone-lilac{background:var(--purple-50);color:var(--purple)}.tone-teal{background:var(--teal-50);color:var(--teal-700)}.pill{border:1.5px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);border-radius:22px;align-items:center;gap:6px;padding:0 16px;font-size:14px;font-weight:800;display:inline-flex}.pill[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--surface)}.pill-radio{cursor:pointer}.pill-radio:has(input:checked){background:var(--ink);border-color:var(--ink);color:var(--surface)}.pill-radio:has(:focus-visible){outline:3px solid var(--purple);outline-offset:2px}.pill.lilac[aria-pressed=true]{background:var(--purple-50);border-color:var(--purple-200);color:var(--purple)}.pill-row{flex-wrap:wrap;gap:8px;display:flex}.btn-outline{background:var(--surface);color:var(--ink);border:1.5px solid var(--line)}.btn-outline:hover{color:var(--purple)}.btn-danger-text{color:var(--danger)}.btn-dark{background:var(--ink);color:var(--surface)}.btn-dark:hover{color:var(--surface);filter:brightness(1.15)}.btn-teal{background:var(--teal-strong);color:#fff}.btn-teal:hover{color:#fff;filter:brightness(1.08)}.btn-danger{background:var(--danger);color:var(--surface)}.btn-danger:hover{color:var(--surface)}.panel{background:var(--surface);border-radius:22px;flex-direction:column;gap:14px;min-width:0;padding:22px;display:flex}.panel h2{font-size:22px;font-weight:700}.panel-note{color:var(--muted);margin:0;font-size:12.5px;font-weight:600;line-height:1.5}.breadcrumb{color:var(--muted);flex-wrap:wrap;gap:8px;font-size:14px;font-weight:700;display:flex}.breadcrumb [aria-current]{color:var(--ink)}
