:root{--bg: #ffffff;--panel: #ffffff;--ink: #2c3e50;--muted: #6c7a7d;--line: #dee2e6;--hover: #f8f9fa;--accent: #3498db;--accent-ink: #fff;--accent-soft: #e3f0fa;--accent-text: #2179b5;--ok: #27ae60;--ok-soft: #e8f8ef;--warn: #e67e22;--warn-soft: #fdf2e6;--bad: #e74c3c;--bad-soft: #fdecea;--purple: #8e44ad;--navbar-bg: #2c3e50;--navbar-ink: #ffffff;--shadow: rgba(0, 0, 0, .1);--radius: 10px;--mono: ui-monospace, SFMono-Regular, Menlo, monospace;--control-h: 34px;--series-1: #2a78d6;--series-2: #eb6834;--grid: #eef0f3;--seq-1: #cde2fb;--seq-2: #86b6ef;--seq-3: #3987e5;--seq-4: #1c5cab;--seq-5: #0d366b;--seq-ink-1: #1d2433;--seq-ink-2: #1d2433;--seq-ink-3: #fff;--seq-ink-4: #fff;--seq-ink-5: #fff;color-scheme:light}:root[data-theme=dark]{--bg: #0d0f12;--panel: #1a1d23;--ink: #e4e6eb;--muted: #8b92a0;--line: #2d323a;--hover: #16181d;--accent: #3498db;--accent-soft: #15293a;--accent-text: #5dade2;--ok: #2ecc71;--ok-soft: #12291c;--warn: #f39c12;--warn-soft: #2e2311;--bad: #ff6b5b;--bad-soft: #351816;--purple: #a569bd;--navbar-bg: #0a0c0f;--navbar-ink: #e4e6eb;--shadow: rgba(0, 0, 0, .8);color-scheme:dark;--series-1: #3987e5;--series-2: #d95926;--grid: #232834;--seq-1: #183a66;--seq-2: #1c5cab;--seq-3: #2a78d6;--seq-4: #6da7ec;--seq-5: #b7d3f6;--seq-ink-1: #e6e9ef;--seq-ink-2: #fff;--seq-ink-3: #fff;--seq-ink-4: #0f1218;--seq-ink-5: #0f1218}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.45 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--accent-text);text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--panel);border-radius:6px;padding:6px 12px;transition:all .2s}button:hover{background:var(--hover)}button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}button.primary:hover{filter:brightness(1.08)}button:disabled{opacity:.5;cursor:default}button:not(.link):not(.tile):not(.nav-icon-btn){min-height:var(--control-h);white-space:nowrap}input,select,textarea{border:1px solid var(--line);background-color:var(--panel);border-radius:6px;padding:6px 10px}input,select{height:var(--control-h)}input[type=search]{-webkit-appearance:none;-moz-appearance:none;appearance:none}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:30px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:right 15px center,right 10px center;background-size:5px 5px;background-repeat:no-repeat}textarea{width:100%;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.navbar{display:flex;align-items:center;gap:10px;padding:8px 16px;background:var(--navbar-bg);color:var(--navbar-ink);box-shadow:0 2px 8px var(--shadow);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100}.navbar-brand{display:flex;align-items:center;gap:10px;color:var(--navbar-ink);font-size:1.25rem;font-weight:600;white-space:nowrap}.brand-logo{height:28px;width:auto}.top-nav{display:flex;align-items:center;gap:4px;margin-left:1.5rem}.nav-link{padding:6px 12px;color:var(--navbar-ink);border-radius:6px;font-size:.95rem;font-weight:500;transition:all .2s}.nav-link:hover{background:#ffffff1a}.nav-link.active{background:#3498db4d;color:#5dade2}.spacer{flex:1}.env-pill{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:3px 9px;border-radius:4px;color:#5dade2;border:1px solid rgba(93,173,226,.6)}.nav-icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 9px;background:#ffffff1a;border:0;border-radius:6px;color:var(--navbar-ink);font-size:.85rem;font-weight:600}.nav-icon-btn:hover{background:#fff3}.theme-toggle{font-size:1.05rem}.user-name{color:var(--navbar-ink);font-size:.9rem;padding:0 4px}.logout-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:0 14px;height:34px;font-size:.9rem}.logout-btn:hover{background:#fff3;border-color:#ffffff4d}button.link{border:0;background:none;color:var(--accent);padding:0 4px}.page{max-width:1840px;margin:0 auto;padding:16px 24px 40px}.page-title{display:inline-block;margin:0;font-size:1.35rem;font-weight:600;line-height:1.25;background:linear-gradient(90deg,var(--accent),var(--purple));-webkit-background-clip:text;background-clip:text;color:transparent}.page-sub{color:var(--muted)}.page-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.page-msg{padding:48px;text-align:center;color:var(--muted)}.signin{max-width:380px;margin:48px auto;display:grid;gap:12px}.signin h2{margin:0;font-size:20px}.signin .hint{margin:0;color:var(--muted)}.signin label{display:grid;gap:4px;color:var(--muted);font-size:13px}.signin input{color:var(--ink);font-size:14px}.signin .err{margin:0}.tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:12px}.tile{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;padding:8px 12px;text-align:center}.tile b{display:block;font-size:22px;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums}.tile small{color:var(--muted);font-size:12px}button.tile:hover{background:var(--hover)}.tile.active{box-shadow:0 0 0 2px var(--accent-soft);border-color:var(--accent)}.tile.bad{border-left-color:var(--bad)}.tile.bad:not(.zero){background:var(--bad-soft)}.tile.warn{border-left-color:var(--warn)}.tile.ok{border-left-color:var(--ok)}.tile.purple{border-left-color:var(--purple)}.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.toolbar .search{flex:1 1 320px;max-width:520px}.toolbar>button{height:var(--control-h)}.seg{display:inline-flex;height:var(--control-h);border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--panel)}.seg button{border:0;border-radius:0;padding:0 12px;white-space:nowrap;flex:none}.seg button+button{border-left:1px solid var(--line)}.seg button.on{background:var(--accent);color:#fff;font-weight:600}.count{color:var(--muted);margin-left:auto}.chip{display:inline-flex;align-items:center;gap:6px;height:var(--control-h);padding:0 6px 0 10px;border-radius:6px;background:var(--accent-soft);color:var(--ink);font-size:13px;max-width:100%}.chip b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip button.link{font-size:13px;padding:2px 6px}.grid tr.clickable{cursor:pointer}.grid tr.clickable:hover{background:var(--hover)}.grid tr.clickable:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;margin-top:10px}.pager button{height:var(--control-h)}.table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}table.grid{width:100%;border-collapse:collapse;line-height:1.35}.grid th{position:sticky;top:0;background:var(--hover);text-align:left;font-size:13px;font-weight:600;color:var(--ink);padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap;-webkit-user-select:none;user-select:none}.grid th.sortable{cursor:pointer}.grid th.sortable:hover{color:var(--ink)}.grid th .arrow{margin-left:4px;color:var(--accent)}.grid td{padding:7px 10px;border-bottom:1px solid var(--line);vertical-align:top}.grid tbody tr{cursor:pointer}.grid tbody tr:hover{background:var(--hover)}.grid tbody tr:last-child td{border-bottom:0}.grid .ref{font-size:13px;font-weight:500;color:var(--accent-text);white-space:nowrap}.grid .who b{display:block}.grid .who small,.grid .sub small{color:var(--muted);font-size:12px}.grid .sub{min-width:280px;max-width:520px}.grid .sub span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.grid .nowrap{white-space:nowrap}.grid .time small{display:block;color:var(--muted);font-size:12px}.pill{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500;background:var(--hover);color:var(--muted);white-space:nowrap;text-transform:capitalize}.pill.urgent{background:var(--bad-soft);color:var(--bad);font-weight:600}.pill.high{background:var(--warn-soft);color:var(--warn)}.pill.normal,.pill.st-new{background:var(--accent-soft);color:var(--accent-text)}.pill.st-open{background:var(--accent-soft);color:var(--purple)}.pill.st-resolved,.pill.st-closed{background:var(--ok-soft);color:var(--ok)}.pill.st-spam{color:var(--muted);text-decoration:line-through}.sla.ok{color:var(--ok)}.sla.warn{color:var(--warn);font-weight:600}.sla.bad{color:var(--bad);font-weight:600}.unclaimed{color:var(--muted);font-style:italic}.case-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px}.case-head h1{font-size:20px;margin:0}.case-head .ref{font-family:var(--mono);color:var(--muted)}.case-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;align-items:start}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px}.card+.card{margin-top:12px}.card h3{margin:0 0 8px;font-size:1rem;font-weight:600;color:var(--ink)}.card.edge{border-left:3px solid var(--accent)}.card.edge.purple{border-left-color:var(--purple)}.card.edge.ok{border-left-color:var(--ok)}.card.edge.gold{border-left-color:var(--warn)}.kv{display:grid;grid-template-columns:104px 1fr;gap:4px 12px}.kv dt{color:var(--muted)}.kv dd{margin:0;overflow-wrap:anywhere}.actions{display:flex;flex-wrap:wrap;gap:8px}.timeline{list-style:none;margin:0;padding:0}.timeline li{display:grid;grid-template-columns:30px 1fr;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.timeline li:last-child{border-bottom:0}.ico{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--hover);font-size:14px}.inbound .ico{background:var(--accent-soft)}.outbound .ico{background:var(--ok-soft)}.meta{color:var(--muted);font-size:12px;display:flex;flex-wrap:wrap;gap:8px}.meta b{color:var(--ink);font-weight:600}.body{white-space:pre-wrap;margin-top:4px}.timeline .system .body{color:var(--muted);font-style:italic}.compose .tabs{display:flex;gap:4px;margin-bottom:8px}.compose .tabs button.on{background:var(--accent);color:#fff;border-color:var(--accent)}.compose .row{display:flex;gap:8px;justify-content:flex-end;margin-top:8px;align-items:center}.err{color:var(--bad)}.ai{font-size:13px}.team-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.team-head .seg{align-self:center}.team-head .page-sub{margin:0}.muted{color:var(--muted)}.note{margin:-2px 0 12px;color:var(--muted);font-size:13px}.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.team-grid .card+.card{margin-top:0}.team-grid>*{min-width:0;overflow-x:auto}.span-2{grid-column:span 2}.sub-h{margin:-6px 0 12px;color:var(--muted);font-size:13px}.legend{display:flex;gap:16px;font-size:13px;color:var(--muted);margin-bottom:4px}.legend span{display:inline-flex;align-items:center;gap:6px}.tip-r{display:flex;align-items:center;gap:6px}.key{display:inline-block;width:14px;height:2px;border-radius:1px}.chart{position:relative}.chart svg{display:block;width:100%;height:auto;outline:none;touch-action:pan-y}.chart svg:focus-visible{outline:2px solid var(--accent-soft);border-radius:6px}.chart .grid-y line{stroke:var(--grid);stroke-width:1}.chart text{fill:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.chart .end-label{fill:var(--ink);font-size:12px}.chart .line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart .dot{stroke:var(--panel);stroke-width:2}.chart .crosshair{stroke:var(--muted);stroke-width:1;opacity:.5}.tip{position:absolute;top:8px;pointer-events:none;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:12px;box-shadow:0 4px 16px #0000001f;white-space:nowrap}.tip-h{color:var(--muted);margin-bottom:4px}.tip-r b{font-size:13px;font-variant-numeric:tabular-nums}.as-table{margin-top:8px;font-size:13px}.as-table summary{cursor:pointer;color:var(--accent)}.as-table table{margin-top:8px;max-width:360px}.grid.compact th,.grid.compact td{padding:7px 10px}.grid .num{text-align:right;font-variant-numeric:tabular-nums}.heat td{border-bottom:2px solid var(--panel)}.heat tbody tr{cursor:pointer}.heat td.cell{border-right:2px solid var(--panel);border-radius:4px}.heat .s1{background:var(--seq-1);color:var(--seq-ink-1)}.heat .s2{background:var(--seq-2);color:var(--seq-ink-2)}.heat .s3{background:var(--seq-3);color:var(--seq-ink-3)}.heat .s4{background:var(--seq-4);color:var(--seq-ink-4)}.heat .s5{background:var(--seq-5);color:var(--seq-ink-5)}.meter-cell{display:flex;align-items:center;gap:8px}.meter{flex:1;min-width:60px;height:6px;border-radius:3px;background:var(--hover);overflow:hidden}.meter i{display:block;height:100%;border-radius:3px}.meter.good i{background:var(--ok)}.meter.warn i{background:var(--warn)}.meter.bad i{background:var(--bad)}.table-wrap.flat{border:0}.card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.card-head h3{margin:0}.seg.small{height:30px;font-size:13px}.leaderboard .rank{width:44px;text-align:center;font-variant-numeric:tabular-nums}.leaderboard td.rank{font-size:15px;color:var(--muted)}.score-cell{display:flex;align-items:center;gap:8px;min-width:110px}.score-bar{flex:1;height:8px;border-radius:4px;background:var(--hover);overflow:hidden}.score-bar i{display:block;height:100%;border-radius:4px;background:var(--series-1)}.score-cell b{min-width:3ch;color:var(--accent-text)}.grid .group-row th{position:static;background:var(--accent-soft);color:var(--ink);font-size:14px;padding:8px 10px;white-space:normal}.grid .group-row .muted{font-weight:400;font-size:13px}.owner-group+.owner-group .group-row th{border-top:10px solid var(--panel)}.ai .fix{display:grid;grid-template-columns:90px 1fr;gap:6px;align-items:center;margin-top:8px}@media (max-width: 1100px){.case-grid{grid-template-columns:1fr}.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.team-grid{grid-template-columns:1fr}.span-2{grid-column:auto}}@media (max-width: 760px){.brand-name,.user-name,.env-pill,.nav-icon-btn[href]{display:none}.top-nav{margin-left:4px}.nav-link{padding:8px 10px}}@media (max-width: 760px){.page{padding:12px 12px 28px}.navbar{padding:8px 12px;gap:6px}.page-title{font-size:1.2rem}.page-sub{font-size:13px}.grid .hide-sm{display:none}.tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:10px}.tile{padding:6px 4px;border-left-width:3px}.tile b{font-size:18px}.tile small{display:block;font-size:11px;line-height:1.2}.toolbar{gap:6px}.toolbar .seg{width:100%;overflow-x:auto;scrollbar-width:none}.toolbar .seg::-webkit-scrollbar{display:none}.toolbar .search{flex:1 1 100%;max-width:none}.toolbar select{flex:1 1 0;min-width:0}.count{flex:1 1 100%;text-align:right;font-size:12px;margin:-2px 0 0}.card{padding:10px 12px}.kv{grid-template-columns:88px 1fr}.team-head .seg{margin-left:auto}.table-wrap:has(.case-row){background:none;border:0;overflow:visible}.table-wrap:has(.case-row) table,.table-wrap:has(.case-row) tbody{display:block}.table-wrap:has(.case-row) thead{display:none}.grid tr.case-row{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;grid-template-areas:"ref pri st due" "who who who time" "sub sub sub sub" "park park owner owner";gap:3px 8px;padding:9px 11px;margin-bottom:8px;background:var(--panel);border:1px solid var(--line);border-radius:8px}.grid tr.case-row td{padding:0;border:0;min-width:0;max-width:none}.case-row .ref{grid-area:ref}.case-row .c-pri{grid-area:pri}.case-row .c-st{grid-area:st}.case-row .c-due{grid-area:due;text-align:right;font-size:12px}.case-row .who{grid-area:who;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.case-row .who b,.case-row .who small{display:inline}.case-row .who small{margin-left:6px}.case-row .time{grid-area:time;text-align:right;font-size:12px;color:var(--muted)}.case-row .time small{display:none}.case-row .sub{grid-area:sub}.case-row .sub small{display:none}.case-row .c-park{grid-area:park;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.case-row .c-owner{grid-area:owner;font-size:12px;text-align:right;overflow:hidden;text-overflow:ellipsis}.case-row .c-queue{display:none}}
