:root{--bg:#f6f7f9;--surface:#fff;--surface-2:#f1f3f6;--border:#e2e5ea;--text:#1b1f24;--text-2:#5b6470;--accent:#2f6fde;--accent-text:#fff;--accent-soft:#e8f0fd;--critical:#c4352b;--critical-soft:#fdecea;--high:#c76a12;--high-soft:#fdf1e3;--medium:#a07c00;--medium-soft:#fbf5dc;--low:#5b6470;--low-soft:#eef0f3;--good:#1f8a4c;--good-soft:#e5f5ec;--radius:8px;--shadow:0 1px 2px #1018280f, 0 1px 3px #10182814;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#111418;--surface:#1a1e24;--surface-2:#222731;--border:#2e3440;--text:#e8ebef;--text-2:#9aa3af;--accent:#6c9cf0;--accent-text:#0e1420;--accent-soft:#1f2c44;--critical:#f0857c;--critical-soft:#3a1f1d;--high:#f0a75e;--high-soft:#3a2a18;--medium:#e3c55a;--medium-soft:#353015;--low:#9aa3af;--low-soft:#262b33;--good:#5fcf8d;--good-soft:#17301f;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:14px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0;line-height:1.25}h1{font-size:20px}h2{font-size:16px}h3{text-transform:uppercase;letter-spacing:.04em;color:var(--text-2);font-size:13px}button,input,select,textarea{font:inherit;color:inherit}.btn{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);cursor:pointer;align-items:center;gap:6px;padding:7px 14px;font-weight:500;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn-primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.08)}.btn-danger{color:var(--critical)}.btn-sm{padding:4px 10px;font-size:13px}.input,.select,.textarea{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);width:100%;padding:7px 10px}.textarea{resize:vertical;min-height:96px}.input:focus,.select:focus,.textarea:focus,.btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.label{margin-bottom:4px;font-weight:500;display:block}.hint{color:var(--text-2);font-size:13px}.error{color:var(--critical);font-size:13px}.topbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:16px;height:56px;padding:0 24px;display:flex;position:sticky;top:0}.topbar .brand{color:var(--text);font-size:15px;font-weight:700}.topbar .spacer{flex:1}.topbar .who{color:var(--text-2);font-size:13px}.page{max-width:1280px;margin:0 auto;padding:24px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-body{padding:16px}.badge{white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.p-CRITICAL{background:var(--critical-soft);color:var(--critical)}.p-HIGH{background:var(--high-soft);color:var(--high)}.p-MEDIUM{background:var(--medium-soft);color:var(--medium)}.p-LOW{background:var(--low-soft);color:var(--low)}.s-open{background:var(--accent-soft);color:var(--accent)}.s-waiting{background:var(--medium-soft);color:var(--medium)}.s-deployed{background:var(--good-soft);color:var(--good)}.s-closed{background:var(--low-soft);color:var(--low)}.flag{background:var(--critical-soft);color:var(--critical)}.filters{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:16px;display:flex}.filters .field{min-width:160px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:999px;padding:4px 12px;font-size:13px}.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.table-wrap{overflow-x:auto}table.queue{border-collapse:collapse;width:100%}.queue th{text-align:left;color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 12px;font-size:12px;font-weight:600}.queue td{border-bottom:1px solid var(--border);vertical-align:top;padding:10px 12px}.queue tbody tr{cursor:pointer}.queue tbody tr:hover{background:var(--surface-2)}.queue .num{white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.queue .title{font-weight:500}.queue .meta{color:var(--text-2);white-space:nowrap;font-size:13px}.empty{text-align:center;color:var(--text-2);padding:48px 16px}.ticket-head{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:4px;display:flex}.ticket-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:24px;margin-top:16px;display:grid}@media (width<=900px){.ticket-grid{grid-template-columns:1fr}}.section+.section{margin-top:16px}.prose{white-space:pre-wrap;word-break:break-word}.kv{grid-template-columns:110px 1fr;gap:6px 12px;font-size:13px;display:grid}.kv dt{color:var(--text-2)}.kv dd{word-break:break-word;margin:0}.side .card+.card{margin-top:16px}.side .stack>*+*{margin-top:8px}.timeline{margin:0;padding:0;list-style:none}.timeline li{border-top:1px solid var(--border);padding:10px 0}.timeline li:first-child{border-top:0}.timeline .event{color:var(--text-2);font-size:13px}.timeline .when{color:var(--text-2);margin-left:8px;font-size:12px}.message{border-left:3px solid var(--border);padding:6px 0 6px 12px}.message.staff{border-left-color:var(--accent)}.message .author{font-size:13px;font-weight:600}.note{color:var(--text);white-space:pre-wrap;margin-top:4px;font-size:13px}.reply-box{gap:8px;margin-top:12px;display:grid}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.check{align-items:center;gap:6px;display:inline-flex}.login{place-items:center;min-height:100vh;padding:16px;display:grid}.login .card{width:100%;max-width:380px}.login .card-body>*+*{margin-top:14px}.divider{color:var(--text-2);align-items:center;gap:8px;font-size:12px;display:flex}.divider:before,.divider:after{content:"";border-top:1px solid var(--border);flex:1}@media (width<=640px){.page{padding:16px}.topbar{padding:0 16px}}
