:root{--bg:#111315;--surface:#1a1d20;--raised:#23272b;--border:#2c3136;--text:#eceef0;--muted:#9aa3ab;--placeholder:#6e7780;--dim:#4a5259;--accent:#f0b44c;--on-accent:#1a1406;--accent-soft:#3a2f1a;--success:#7cc49b;--success-soft:#1e2e25;--danger:#ff8a80;--danger-soft:#2a1215;--info:#8fb3ff;--info-soft:#1c2436;--violet:#b9a3ff;--violet-soft:#26213a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Onest,-apple-system,BlinkMacSystemFont,sans-serif;font-size:15px}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}.layout{grid-template-columns:280px 1fr;min-height:100%;display:grid}.sidebar{border-right:1px solid var(--border);flex-direction:column;gap:4px;height:100vh;padding:22px 16px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;padding:0 8px 22px;font-size:20px;font-weight:700;display:flex}.brand-logo{background:var(--accent);width:36px;height:36px;color:var(--on-accent);border-radius:10px;place-items:center;display:grid}.brand small{color:var(--muted);font-size:14px;font-weight:400}.nav{color:var(--muted);border-radius:12px;align-items:center;gap:12px;padding:11px 14px;font-size:16px;font-weight:500;text-decoration:none;display:flex}.nav:hover{background:var(--surface);color:var(--text)}.nav.active{background:var(--surface);color:var(--text);font-weight:600}.nav-count{background:var(--accent);color:var(--on-accent);border-radius:8px;margin-left:auto;padding:1px 8px;font-size:13px;font-weight:700}.sidebar-bottom{align-items:center;gap:12px;margin-top:auto;padding:8px;display:flex}.sidebar-bottom .who{flex:1;min-width:0}.sidebar-bottom .who b{display:block}.sidebar-bottom .who span{color:var(--muted);text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.main{min-width:0;padding:32px 40px 60px}.page-head{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.page-head .grow{flex:1}.h1{letter-spacing:-.5px;margin:0;font-size:34px;font-weight:800}.h2{margin:0 0 14px;font-size:20px;font-weight:700}.over{color:var(--muted);margin-bottom:4px;font-size:15px}.muted{color:var(--muted)}.small{font-size:13px}.crumbs{color:var(--muted);margin-bottom:12px}.crumbs a{color:var(--muted)}.card{background:var(--surface);border:1px solid var(--surface);border-radius:18px;padding:22px}.card.warn{border-color:var(--accent)}.grid{gap:16px;display:grid}.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols-main{grid-template-columns:minmax(0,1fr) 380px;align-items:start}.stat .label{color:var(--muted)}.stat .num{margin:6px 0 2px;font-size:36px;font-weight:800}.stat.warn .label,.stat.warn .num{color:var(--accent)}.btn{background:var(--raised);height:44px;color:var(--text);cursor:pointer;white-space:nowrap;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:600;display:inline-flex}.btn:hover{filter:brightness(1.12)}.btn:disabled{opacity:.45;cursor:default;filter:none}.btn.accent{background:var(--accent);color:var(--on-accent)}.btn.danger{background:var(--danger-soft);color:var(--danger)}.btn.ghost{color:var(--muted);background:0 0}.btn.small{border-radius:10px;height:36px;padding:0 12px;font-size:14px}.btn.icon{width:44px;padding:0}.input,.select,.textarea{border:1px solid var(--border);background:var(--bg);border-radius:12px;outline:none;min-width:0;height:44px;padding:0 14px}.textarea{resize:vertical;height:auto;min-height:90px;padding:12px 14px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent)}.input::placeholder,.textarea::placeholder{color:var(--placeholder)}.input.num{text-align:right;width:120px}.label{color:var(--muted);margin-bottom:6px;font-size:14px;display:block}.field{flex-direction:column;gap:6px;display:flex}.row{align-items:center;gap:12px;display:flex}.row.wrap{flex-wrap:wrap}.row.between{justify-content:space-between}.stack{flex-direction:column;gap:12px;display:flex}.error{color:var(--danger)}.ok{color:var(--success)}.tabs{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.tab{border:1px solid var(--border);height:40px;color:var(--text);cursor:pointer;background:0 0;border-radius:12px;padding:0 16px;font-weight:500}.tab.active{background:var(--text);color:var(--bg);border-color:var(--text);font-weight:600}.pill{white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;font-weight:600;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:3px;width:6px;height:6px}.pill.accent{background:var(--accent-soft);color:var(--accent)}.pill.success{background:var(--success-soft);color:var(--success)}.pill.danger{background:var(--danger-soft);color:var(--danger)}.pill.info{background:var(--info-soft);color:var(--info)}.pill.violet{background:var(--violet-soft);color:var(--violet)}.pill.muted{background:var(--raised);color:var(--muted)}.avatar{background:var(--raised);border-radius:12px;flex-shrink:0;place-items:center;width:44px;height:44px;font-weight:700;display:grid}.table-wrap{background:var(--surface);border-radius:18px;overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:16px 18px;font-size:13px;font-weight:500}td{border-bottom:1px solid var(--border);vertical-align:middle;padding:16px 18px}tr:last-child td{border-bottom:0}tr.click{cursor:pointer}tr.click:hover td,tr.selected td{background:var(--raised)}td.num{font-weight:700;text-decoration:underline}.lane{border:1px solid var(--border);background:0 0;border-radius:18px;flex-direction:column;gap:10px;min-height:140px;padding:14px;display:flex}.lane-head{color:var(--muted);justify-content:space-between;padding:2px 4px 4px;font-weight:600;display:flex}.lane-item{background:var(--surface);cursor:pointer;border-radius:12px;padding:14px;text-decoration:none;display:block}.lane-item:hover{background:var(--raised)}.lane-item b{margin-bottom:4px;display:block}.attn{border-bottom:1px solid var(--border);gap:12px;padding:14px 0;display:flex}.attn:last-child{border-bottom:0}.dot{border-radius:4px;flex-shrink:0;width:8px;height:8px;margin-top:7px}.tl{position:relative}.tl-item{grid-template-columns:20px 1fr auto;gap:14px;padding-bottom:20px;display:grid;position:relative}.tl-item:before{content:"";background:var(--dim);width:2px;position:absolute;top:18px;bottom:0;left:7px}.tl-item.done:before{background:#4e8f6b}.tl-item:last-child:before{display:none}.tl-dot{border:2px solid var(--dim);background:var(--surface);z-index:1;border-radius:8px;width:16px;height:16px;margin-top:2px;position:relative}.tl-item.done .tl-dot{background:#4e8f6b;border-color:#4e8f6b}.tl-item.current .tl-dot{background:var(--accent);border-color:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-soft)}.tl-item.todo b{color:var(--muted);font-weight:500}.tl-item.current .time{color:var(--accent)}.details{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 24px;display:grid}.details b{margin-top:4px;display:block}.panel{position:sticky;top:24px}.photo{border-radius:12px;width:100%;margin-top:8px;display:block}.chat{flex-direction:column;gap:8px;max-height:340px;display:flex;overflow-y:auto}.msg{background:var(--raised);border-radius:12px;padding:8px 12px}.msg .meta{color:var(--muted);font-size:12px}.login{place-items:center;min-height:100%;padding:24px;display:grid}.login .card{flex-direction:column;gap:14px;width:100%;max-width:420px;padding:32px;display:flex}.switch{background:var(--raised);cursor:pointer;border:0;border-radius:15px;flex-shrink:0;width:52px;height:30px;position:relative}.switch:after{content:"";background:var(--muted);border-radius:11px;width:22px;height:22px;transition:left .15s;position:absolute;top:4px;left:4px}.switch.on{background:var(--accent)}.switch.on:after{background:var(--on-accent);left:26px}.empty{color:var(--muted);text-align:center;padding:28px}.toast{background:var(--raised);border:1px solid var(--border);z-index:10;border-radius:12px;padding:14px 18px;position:fixed;bottom:24px;right:24px}@media (width<=1100px){.layout{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border);flex-flow:wrap;height:auto;position:static}.sidebar-bottom{margin-top:0}.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-main,.cols-3{grid-template-columns:1fr}.main{padding:20px}}
