:root{--canvas:#edeff3;--paper:#fff;--ink:#10151c;--slate:#616b7a;--line:#d9dee5;--chalk:#1f44e0;--chalk-soft:#eaeefe;--late:#c3321f;--watch:#b9740a;--done:#15805a;--copy-yellow:#fbf4d6;--copy-pink:#f9e1e5;--r:10px}*{box-sizing:border-box}body{background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:IBM Plex Sans,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5}h1,h2,h3,h4{letter-spacing:-.02em;margin:0;font-family:Archivo,system-ui,sans-serif}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0}:focus-visible{outline:2px solid var(--chalk);outline-offset:2px;border-radius:4px}.boot{min-height:100vh;color:var(--slate);place-items:center;display:grid}.muted{color:var(--slate)}.err-box{color:#8c2416;border-radius:var(--r);background:#fbe9e6;border:1px solid #ebc4bd;margin-bottom:18px;padding:12px 14px;font-size:13px}.signin-stage{background:linear-gradient(#1a222d 0%,#10151c 100%);place-items:center;min-height:100vh;padding:20px;display:grid}.signin-card{background:var(--paper);border-radius:14px;width:100%;max-width:390px;padding:34px 32px;box-shadow:0 24px 60px #00000059}.logo-mark{background:var(--ink);color:#fff;border-radius:9px;place-items:center;width:38px;height:38px;margin-bottom:16px;font-family:Archivo;font-size:14px;font-weight:800;display:grid}.signin-card h1{font-size:22px;font-weight:700}.signin-card h2{margin-bottom:6px;font-size:17px;font-weight:700}.signin-card .sub{color:var(--slate);margin:3px 0 22px;font-size:13px}.signin-card label{letter-spacing:.12em;text-transform:uppercase;color:var(--slate);margin-bottom:5px;font-family:Archivo;font-size:9.5px;font-weight:700;display:block}.signin-card input{border:1px solid var(--line);width:100%;font:inherit;border-radius:8px;margin-bottom:13px;padding:11px 13px;font-size:14px}.signin-card .hint{color:var(--slate);margin:13px 0 0;font-size:12px}.signin-card .err{color:var(--late);margin:10px 0 0;font-size:12.5px}.sent p{color:#3e4855;margin:0 0 16px;font-size:13.5px}.btn{background:var(--ink);color:#fff;border-radius:8px;justify-content:center;align-items:center;gap:7px;width:100%;padding:11px 15px;font-size:13.5px;font-weight:600;display:inline-flex}.btn:hover{background:#232b36}.btn:disabled{opacity:.6;cursor:default}.btn-ghost{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:9px 14px;font-size:13px;font-weight:600}.btn-ghost:hover{background:var(--canvas)}.main{max-width:1000px;margin:0 auto;padding:26px 30px 60px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.page-head h1{font-size:25px;font-weight:700}.page-head p{color:var(--slate);margin:5px 0 0;font-size:13.5px}.head-actions{align-items:center;gap:10px;display:flex}.sidepick{background:#e2e6ec;border-radius:9px;gap:2px;padding:3px;display:flex}.sidepick button{color:var(--slate);border-radius:7px;padding:6px 13px;font-size:12.5px;font-weight:600}.sidepick button.on{background:var(--paper);color:var(--ink);box-shadow:0 1px 2px #00000014}.stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:26px;display:grid}.stat{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:15px 16px}.stat .n{letter-spacing:-.03em;font-family:Archivo;font-size:30px;font-weight:700;line-height:1.1}.stat .l{color:var(--slate);margin-top:2px;font-size:12.5px}.stat.flag .n{color:var(--late)}.stat.good .n{color:var(--done)}.stack{flex-direction:column;gap:16px;display:flex}.ticket{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:4px 4px 0 var(--copy-yellow), 8px 8px 0 var(--copy-pink);border-left:6px solid #afb7c2;padding:13px 15px;transition:transform .14s,box-shadow .14s}.ticket:hover{box-shadow:5px 5px 0 var(--copy-yellow), 10px 10px 0 var(--copy-pink);transform:translate(-1px,-1px)}.ticket.age-watch{border-left-color:var(--watch);background:#fffcf5}.ticket.age-late{border-left-color:var(--late);background:#fff8f6}.ticket-top{align-items:center;gap:8px;margin-bottom:7px;display:flex}.tnum{color:var(--slate);font-family:IBM Plex Mono,monospace;font-size:11.5px;font-weight:500}.ticket h4{margin:0 0 3px;font-size:14.5px;font-weight:600}.ticket .where{color:var(--slate);margin:0 0 9px;font-size:12.5px}.ticket .need{color:#2c3543;margin:0 0 11px;font-size:13px}.ticket-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding-top:10px;display:flex}.ticket .taken{color:var(--slate);font-family:IBM Plex Mono,monospace;font-size:11.5px}.age{color:#4a5462;letter-spacing:.01em;background:#e9ecf1;border-radius:6px;margin-left:auto;padding:3px 9px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600}.age-watch .age{color:#fff;background:var(--watch)}.age-late .age{color:#fff;background:var(--late)}.pill{border:1px solid #0000;border-radius:5px;align-items:center;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.pill-com{color:#31424f;background:#e4e9f0;border-color:#cfd8e3}.pill-res{color:#4c3e86;background:#eee9fa;border-color:#dcd3f2}.pill-quote{background:var(--chalk-soft);color:var(--chalk);border-color:#cbd6fa}@media (width<=760px){.main{padding:20px 16px 50px}.stats{grid-template-columns:1fr 1fr}.page-head{align-items:flex-start}}@media (prefers-reduced-motion:reduce){*{transition:none!important}.ticket:hover{transform:none}}.main.narrow{max-width:620px}.nudge{background:var(--chalk-soft);color:#1b3ab8;border-bottom:1px solid #cbd6fa;justify-content:center;align-items:center;gap:12px;padding:9px 20px;font-size:13px;display:flex}.nudge button{color:inherit;font-weight:600;text-decoration:underline}.avatar-btn{background:var(--chalk-soft);width:34px;height:34px;color:var(--chalk);border:1px solid #cbd6fa;border-radius:50%;place-items:center;font-family:Archivo;font-size:13px;font-weight:700;display:grid}.avatar-btn:hover{background:#dde4fd}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:22px 24px}.field{margin-bottom:19px}.field label{letter-spacing:.12em;text-transform:uppercase;color:var(--slate);margin-bottom:6px;font-family:Archivo;font-size:9.5px;font-weight:700;display:block}.field input[type=text],.field input:not([type]),.field input[type=tel],.field input[type=email],.field select{border:1px solid var(--line);width:100%;font:inherit;background:var(--paper);color:var(--ink);border-radius:8px;padding:10px 12px;font-size:14px}.field .hint{color:var(--slate);margin:6px 0 0;font-size:11.5px}.field .readonly{border:1px solid var(--line);background:var(--canvas);color:var(--slate);border-radius:8px;padding:10px 12px;font-size:14px}.field .check{text-transform:none;letter-spacing:0;color:var(--ink);align-items:center;gap:9px;margin-bottom:9px;font-family:inherit;font-size:13.5px;font-weight:400;display:flex}.field .check input{width:16px;height:16px;accent-color:var(--chalk)}.card hr{border:0;border-top:1px solid var(--line);margin:22px 0}.formfoot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:18px;display:flex}.role-note{color:var(--slate);max-width:340px;font-size:12px}.btn.inline{width:auto;padding:10px 18px}.card .err{color:var(--late);margin:12px 0 0;font-size:12.5px}.ticket.tappable{cursor:pointer}.crumb{color:var(--slate);align-items:center;gap:8px;margin-bottom:6px;font-size:12px;display:flex}.crumb button{color:var(--chalk);font-weight:600}.crumb button:hover{text-decoration:underline}.detail-grid{grid-template-columns:1fr 296px;align-items:start;gap:20px;display:grid}.age-big{text-align:right;line-height:1}.age-big strong{letter-spacing:-.03em;color:var(--slate);font-family:Archivo;font-size:38px;font-weight:700;display:block}.age-big span{color:var(--slate);font-size:12px}.age-big.age-watch strong{color:var(--watch)}.age-big.age-late strong{color:var(--late)}.card h3{letter-spacing:.02em;margin-bottom:13px;font-size:12px;font-weight:700}.work{color:#222a35;margin:0 0 18px;font-size:14.5px;line-height:1.6}.card.closing{border-left:3px solid var(--done)}.fields{grid-template-columns:1fr 1fr;gap:14px 20px;display:grid}.fields .f label{letter-spacing:.12em;text-transform:uppercase;color:var(--slate);margin-bottom:3px;font-family:Archivo;font-size:9.5px;font-weight:700;display:block}.fields .f p{margin:0;font-size:13.5px}.fields .f p.sub{color:var(--slate);font-size:12.5px}.fields .f.wide{grid-column:1/-1}.mono{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace}.add-comment{margin-bottom:18px}.add-comment textarea,.actions textarea{border:1px solid var(--line);width:100%;font:inherit;resize:vertical;background:var(--paper);color:var(--ink);border-radius:8px;margin-bottom:9px;padding:10px 12px;font-size:13.5px}.log{flex-direction:column;display:flex}.entry{border-bottom:1px solid #edf0f4;gap:11px;padding:13px 0;display:flex}.entry:last-child{border-bottom:0;padding-bottom:0}.entry .avatar{background:var(--chalk-soft);width:26px;height:26px;color:var(--chalk);border-radius:50%;flex:none;place-items:center;font-family:Archivo;font-size:10px;font-weight:700;display:grid}.entry.sys .avatar{color:var(--slate);background:#eef1f5}.entry .meta{color:var(--slate);margin-bottom:2px;font-size:11.5px}.entry .meta b{color:var(--ink);font-size:12.5px;font-weight:600}.entry p{margin:0;font-size:13.5px}.entry.sys p{color:var(--slate);font-style:italic}.status-now{text-align:center;border-radius:8px;margin-bottom:14px;padding:9px 12px;font-size:13.5px;font-weight:600}.s-open{background:var(--chalk-soft);color:var(--chalk)}.s-closed{color:var(--done);background:#e6f3ed}.s-billed,.s-no_charge{color:var(--slate);background:#eef1f5}.actions{flex-direction:column;gap:8px;display:flex}.btn.good{background:var(--done)}.btn.good:hover{background:#12704f}.btn-ghost.full{text-align:center;width:100%}.linky{color:var(--slate);margin-top:12px;font-size:12px;text-decoration:underline}.side select{border:1px solid var(--line);width:100%;font:inherit;background:var(--paper);color:var(--ink);border-radius:8px;padding:9px 12px;font-size:13.5px}.side .hint{color:var(--slate);margin:8px 0 0;font-size:11.5px}.facts .row{border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;padding:8px 0;font-size:13px;display:flex}.facts .row:last-child{border-bottom:0}.facts .row span{color:var(--slate)}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--slate);margin-bottom:9px;font-family:Archivo;font-size:10px;font-weight:700}.choose{grid-template-columns:1fr 1fr;gap:11px;margin-bottom:14px;display:grid}.choice{background:var(--paper);border:1.5px solid var(--line);border-radius:var(--r);text-align:left;padding:14px 16px}.choice:hover{border-color:#b9c1cc}.choice.on{border-color:var(--chalk);background:var(--chalk-soft)}.choice h4{margin:0 0 2px;font-size:14px;font-weight:700}.choice p{color:var(--slate);margin:0;font-size:12.5px}.two{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.field textarea{border:1px solid var(--line);width:100%;font:inherit;resize:vertical;background:var(--paper);color:var(--ink);border-radius:8px;padding:10px 12px;font-size:14px}@media (width<=820px){.detail-grid,.fields,.choose,.two{grid-template-columns:1fr}.age-big{text-align:left;margin-top:10px}}.main.wide{max-width:1180px}.stat{text-align:left;cursor:pointer;width:100%;transition:border-color .12s,transform .12s;display:block}.stat:hover{border-color:#b9c1cc;transform:translateY(-1px)}.section-head{justify-content:space-between;align-items:baseline;margin:0 0 14px;display:flex}.section-head h3{color:var(--slate);font-size:13px;font-weight:700}.toolbar{flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:11px;display:flex}.search{background:var(--paper);border:1px solid var(--line);min-width:240px;font:inherit;color:var(--ink);border-radius:8px;flex:1;padding:10px 13px;font-size:13.5px}.chips{flex-wrap:wrap;gap:5px;display:flex}.chip{border:1px solid var(--line);background:var(--paper);color:var(--slate);border-radius:8px;padding:7px 12px;font-size:12.5px;font-weight:500}.chip:hover{color:var(--ink);border-color:#b9c1cc}.chip.on{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:600}.picker{border:1px solid var(--line);background:var(--paper);font:inherit;color:var(--ink);border-radius:8px;padding:8px 11px;font-size:12.5px}table.list{border-collapse:collapse;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);width:100%;margin-top:8px;overflow:hidden}table.list th{text-align:left;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);border-bottom:1px solid var(--line);background:#f7f8fa;padding:11px 14px;font-family:Archivo;font-size:10px;font-weight:700}table.list td{vertical-align:middle;border-bottom:1px solid #edf0f4;padding:11px 14px;font-size:13px}table.list tbody tr{cursor:pointer}table.list tbody tr:last-child td{border-bottom:0}table.list tbody tr:hover td{background:#fafbfc}table.list .addr{font-weight:600}table.list .sub{color:var(--slate);margin-top:1px;font-size:12px}table.list .empty{text-align:center;padding:34px 14px}.age-cell{color:var(--slate);font-weight:600}.age-cell.watch{color:var(--watch)}.age-cell.late{color:var(--late)}.status{text-align:left;background:0 0;align-items:center;gap:6px;padding:0;font-size:12.5px;font-weight:600;display:inline-flex}.status:before{content:"";background:var(--chalk);border-radius:50%;width:7px;height:7px}.status.s-open{color:var(--chalk)}.status.s-closed{color:var(--done)}.status.s-closed:before{background:var(--done)}.status.s-billed,.status.s-no_charge{color:var(--slate)}.status.s-billed:before,.status.s-no_charge:before{background:#98a2b0}.comment-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.inline-check{color:var(--slate);cursor:pointer;text-transform:none;letter-spacing:0;align-items:center;gap:8px;margin:0;font-family:inherit;font-size:12.5px;font-weight:400;display:flex}.inline-check input{width:15px;height:15px;accent-color:var(--chalk)}.inline-check span{-webkit-user-select:none;user-select:none}.ok-box{color:#0f5e42;border-radius:var(--r);background:#e6f3ed;border:1px solid #bfdfd0;margin-bottom:18px;padding:11px 14px;font-size:13px}.rolepick{grid-template-columns:1fr 1fr;gap:9px;display:grid}.rolepick .choice{padding:11px 13px}.rolepick .choice h4{font-size:13px}.rolepick .choice p{font-size:11.5px;line-height:1.4}table.list.plain{background:0 0;border:0}table.list.plain td{border-bottom:1px solid #edf0f4;padding:11px 8px}table.list.plain tbody tr{cursor:default}table.list.plain tbody tr:hover td{background:0 0}table.list.plain tr.dim{opacity:.5}.field .check input:disabled{opacity:.4}@media (width<=700px){.rolepick{grid-template-columns:1fr}}
