:root{--bg:#eef5f3;--card:#fff;--ink:#19302b;--muted:#5d716c;--line:#d9e5e1;--green:#23744f;--red:#c23b4b;--amber:#b7791f;--blue:#2f6fd1;color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);margin:0}[hidden]{display:none!important}button{font:inherit;background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:9px 14px}button.ghost{color:var(--ink);border:1px solid var(--line);background:0 0}button.warn{background:var(--amber)}button.danger{background:var(--red)}button.ok{background:var(--green)}button.blue{background:var(--blue)}button:disabled{opacity:.5;cursor:default}input,textarea{font:inherit;border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;padding:9px 11px}.muted{color:var(--muted)}.error{color:var(--red);min-height:1.2em}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px}.login{place-items:center;min-height:100vh;padding:16px;display:grid}.login form{gap:12px;width:min(380px,100%);display:grid}.login h1{margin:0;font-size:22px}.top{background:var(--card);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:16px;padding:12px 20px;display:flex;position:sticky;top:0}.tabs{gap:6px;display:flex}.tabs button{color:var(--ink);border:1px solid var(--line);background:0 0}.tabs button.active{background:var(--ink);color:#fff}#who{margin-left:auto}.layout{grid-template-columns:minmax(280px,380px) 1fr;align-items:start;gap:16px;padding:16px 20px;display:grid}@media (width<=860px){.layout{grid-template-columns:1fr}}.reports{gap:8px;margin:0;padding:0;list-style:none;display:grid}.reports li button{text-align:left;background:var(--card);width:100%;color:var(--ink);border:1px solid var(--line);grid-template-columns:52px 1fr auto;align-items:center;gap:10px;padding:10px;display:grid}.reports li button.selected{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.avatar{object-fit:cover;background:var(--line);border-radius:12px;width:52px;height:52px}.chip{background:var(--line);border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.chip.red{color:var(--red);background:#f6d6da}.chip.amber{color:var(--amber);background:#f6e7cc}.chip.green{color:var(--green);background:#d3eadf}.detail{background:var(--card);border:1px solid var(--line);border-radius:16px;gap:18px;padding:20px;display:grid}.detail h2{margin:0}.detail h3{margin:0 0 8px;font-size:15px}.photos{gap:8px;display:flex;overflow-x:auto}.photos img{object-fit:cover;border-radius:12px;width:120px;height:150px}.actions{flex-wrap:wrap;gap:8px;display:flex}.chat{background:var(--bg);border-radius:12px;gap:6px;max-height:360px;padding:10px;display:grid;overflow:auto}.bubble{white-space:pre-wrap;word-break:break-word;background:#fff;border-radius:12px;max-width:75%;padding:7px 11px}.bubble.subject{border:1px solid #f0c3c9;justify-self:start}.bubble.reporter{background:#e1efe9;justify-self:end}.bubble small{color:var(--muted);font-size:11px;display:block}.toast{background:var(--ink);color:#fff;border-radius:12px;padding:10px 16px;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}:root{--pink:#c2477a}.view{gap:16px;padding:16px 20px 40px;display:grid}.view .layout{padding:0}.tabs{flex-wrap:wrap}.tabs.sub button{padding:6px 12px;font-size:14px}.count{background:var(--red);color:#fff;border-radius:999px;min-width:18px;margin-left:4px;padding:0 5px;font-size:12px;display:inline-block}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toolbar input{max-width:380px}select{font:inherit;border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 11px}.group h2{margin:4px 0 8px;font-size:16px}.grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.grid.charts{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.stat{gap:4px;padding:14px 16px;display:grid}.stat strong{font-size:24px}.stat.alert{border-color:var(--red);background:#fff5f6}.small{font-size:12px}.row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.row h3{margin:0;font-size:14px}.chart-card{gap:8px;padding:14px 16px;display:grid}.chart{width:100%;height:120px;display:block}.ranked{gap:4px;margin:0;padding-left:20px;display:grid}.ranked li span{word-break:break-all}.ranked li{display:list-item}.ranked li strong{float:right}.card h3{margin:0 0 8px;font-size:14px}.table{border-collapse:collapse;width:100%;margin-top:10px;font-size:14px}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);padding:6px 8px}details summary{cursor:pointer;font-weight:600}.tags{flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:130px;display:flex}.wide{width:100%;margin-top:8px}.stack{gap:8px;display:grid}.event{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.facts{grid-template-columns:max-content 1fr;gap:4px 14px;margin:0;display:grid}.facts dt{color:var(--muted)}.facts dd{word-break:break-all;margin:0}.log{background:var(--card);border:1px solid var(--line);border-radius:16px;margin:0;padding:0;list-style:none}.log li{border-bottom:1px solid var(--line);grid-template-columns:150px auto 1fr auto;align-items:center;gap:10px;padding:8px 14px;display:grid}.log li:last-child{border-bottom:0}.log li.mod{background:#f1f5fd}.log time{color:var(--muted);font-size:13px}.log.compact{border:0}.log.compact li{grid-template-columns:130px auto 1fr;padding:6px 0}.log.compact li>:last-child{grid-column:2/-1}button.link{color:var(--ink);text-align:left;text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);background:0 0;padding:0}button.link:disabled{opacity:1;text-decoration:none}.chip.blue{color:var(--blue);background:#dbe6f8}@media (width<=700px){.log li{grid-template-columns:1fr auto}.log li time{grid-column:1/-1}}
