@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=IBM+Plex+Sans:wght@400;500;600&family=IBM+Plex+Mono:wght@500;600&display=swap";:root{--bg:#eef1f5;--panel:#fff;--panel-2:#f7f9fb;--ink:#15212f;--muted:#6b7783;--line:#e6eaf0;--brand:#0c8c83;--brand-2:#13b3a6;--side:#11202e;--side-2:#172b3d;--side-ink:#9fb0bf;--s-new:#6b7783;--s-assigned:#2b6cf0;--s-progress:#0c8c83;--s-wait:#dca31f;--s-done:#7b61ff;--s-closed:#2f9e63;--s-cancel:#e5484d}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:IBM Plex Sans,system-ui,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit}.mono{font-family:IBM Plex Mono,monospace;font-variant-numeric:tabular-nums}.eyebrow{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--muted)}.btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font-size:13.5px;font-weight:500;padding:9px 15px;border-radius:10px;cursor:pointer;transition:.15s}.btn:hover{border-color:#cdd6df}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn-primary:hover{background:#0a7a72;border-color:#0a7a72}.btn-ghost{background:transparent;border-color:transparent}.btn-danger{color:#b42318;border-color:#f1c4c0;background:#fff5f4}.btn-sm{padding:6px 11px;font-size:12.5px;border-radius:8px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:12.5px;font-weight:500;color:var(--ink)}.input,select.input,textarea.input{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font:inherit;font-size:13.5px;color:var(--ink);background:var(--panel);outline:none;transition:.15s}.input:focus{border-color:var(--brand-2);box-shadow:0 0 0 3px #13b3a61f}textarea.input{resize:vertical;min-height:90px}.badge{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:3px 10px;border-radius:7px;white-space:nowrap}.badge:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.9}.b-new{background:#eef1f4;color:#586471}.b-assigned{background:#e8f0fe;color:#1f57c3}.b-in_progress{background:#e6f6f4;color:#0a7a72}.b-waiting{background:#fbf3da;color:#946c10}.b-done{background:#efeafe;color:#5b40c9}.b-closed{background:#e9f6ef;color:#1f7a48}.b-cancelled{background:#fdeceb;color:#c0392f}.chip{display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;border-radius:6px;background:#eef1f4;color:#586471}.chip.it{background:#e8f0fe;color:#1f57c3}.chip.hw{background:#e9f6ef;color:#1f7a48}.overdue{color:#c0392f;font-weight:600;font-size:11px}.app{display:grid;grid-template-columns:232px 1fr;min-height:100vh}.side{background:var(--side);color:var(--side-ink);display:flex;flex-direction:column;padding:20px 14px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:11px;padding:4px 6px 18px}.brand strong{color:#fff;font-family:Space Grotesk,sans-serif;font-size:16px}.brand span{font-size:11px;color:#7e909f}.nav{display:flex;flex-direction:column;gap:2px;margin-top:6px}.nav-cap{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#5f7384;padding:8px 10px 6px}.nav-i{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:9px;font-size:13.5px;font-weight:500;color:var(--side-ink);cursor:pointer;position:relative;transition:.15s}.nav-i:hover{background:var(--side-2);color:#dfe7ee}.nav-i.active{background:linear-gradient(90deg,#13b3a62e,#13b3a60d);color:#fff}.nav-i.active:before{content:"";position:absolute;left:-14px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--brand-2)}.side-foot{margin-top:auto;padding-top:16px}.user{display:flex;align-items:center;gap:10px;background:var(--side-2);border-radius:11px;padding:9px 11px}.user .t{display:flex;flex-direction:column;line-height:1.2;flex:1;min-width:0}.user .t strong{color:#eef3f7;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user .t span{color:#7e909f;font-size:10.5px}.user .out{color:#6f8295;cursor:pointer}.user .out:hover{color:#cdd8e1}.ava{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--brand-2),var(--brand));color:#fff;font-size:11px;font-weight:600;font-family:Space Grotesk,sans-serif;flex-shrink:0}.ava.sm{width:26px;height:26px;border-radius:7px;font-size:10px}.main{padding:24px 30px 48px;max-width:1180px;width:100%}.top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.top h1{font-family:Space Grotesk,sans-serif;font-size:24px;font-weight:600;margin:0;letter-spacing:-.01em}.top p{margin:3px 0 0;color:var(--muted);font-size:13px}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:16px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px;align-items:center}.seg{display:inline-flex;background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:3px;gap:2px}.seg button{border:0;background:none;font-size:13px;font-weight:500;color:var(--muted);padding:7px 14px;border-radius:8px;cursor:pointer}.seg button.active{background:var(--ink);color:#fff}.table{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}.table th{text-align:left;font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--panel-2)}.table td{padding:13px 14px;border-bottom:1px solid #eef1f5;font-size:13px}.table tbody tr:last-child td{border-bottom:0}.table tbody tr{cursor:pointer;transition:background .12s}.table tbody tr:hover{background:var(--panel-2)}.muted{color:var(--muted)}.empty{padding:48px;text-align:center;color:var(--muted)}.err{background:#fdeceb;color:#b42318;border:1px solid #f5c6c2;border-radius:10px;padding:10px 13px;font-size:13px;margin-bottom:14px}.ok-note{background:#e9f6ef;color:#1f7a48;border:1px solid #bfe3cd;border-radius:10px;padding:10px 13px;font-size:13px;margin-bottom:14px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.row{display:flex;gap:10px;align-items:center}.spacer{flex:1}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(1200px 500px at 50% -10%,#1b3245,var(--bg));padding:20px}.login-card{width:380px;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:30px 28px;box-shadow:0 30px 60px -30px #0f203059}.login-logo{display:flex;align-items:center;gap:11px;margin-bottom:6px}.login-logo strong{font-family:Space Grotesk,sans-serif;font-size:20px}.login-card h2{font-family:Space Grotesk,sans-serif;font-size:17px;margin:14px 0 2px}.login-card .sub{color:var(--muted);font-size:13px;margin-bottom:20px}.detail-grid{display:grid;grid-template-columns:1fr 300px;gap:16px;align-items:start}.kv{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #eef1f5;font-size:13px}.kv:last-child{border-bottom:0}.kv .k{color:var(--muted)}.kv .v{font-weight:500;text-align:right}.timeline{display:flex;flex-direction:column;gap:0}.tl{display:flex;gap:11px;padding-bottom:14px;position:relative}.tl:before{content:"";position:absolute;left:5px;top:14px;bottom:0;width:2px;background:var(--line)}.tl:last-child:before{display:none}.tl .dot{width:12px;height:12px;border-radius:50%;background:var(--brand);margin-top:2px;flex-shrink:0;z-index:1}.tl .c{font-size:12.5px}.tl .c .when{color:var(--muted);font-size:11px}.comment{padding:11px 0;border-bottom:1px solid #eef1f5;font-size:13px}.comment:last-child{border-bottom:0}.comment .meta{color:var(--muted);font-size:11px;margin-bottom:3px}.actions{display:flex;gap:8px;flex-wrap:wrap}@media (max-width:920px){.app{grid-template-columns:1fr}.side{position:static;height:auto;flex-direction:row;flex-wrap:wrap}.nav{flex-direction:row;flex-wrap:wrap}.nav-cap,.side-foot{display:none}.detail-grid,.grid2{grid-template-columns:1fr}.main{padding:18px 16px 36px}}
