:root{--bg:#121418;--bg-deep:#0d0f13;--surface:#1c1f25;--surface-2:#262a31;--border:#2f343c;--text:#f2f4f7;--muted:#a3aab5;--primary:#3b82f6;--primary-hover:#5b97f8;--green:#22c55e;--gold:#eab308;--red:#ef4444;--missing:#3a3f47;--have:#22c55e;--dup:#f59e0b;--arriving:#8b5cf6;--sending:#06b6d4;--radius-s:6px;--radius-m:12px;--radius-l:20px;--sidebar:248px;color:var(--text);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Inter,Segoe UI,system-ui,-apple-system,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.5}a{color:var(--primary);text-decoration:none}button{font:inherit;color:inherit}h1,h2,h3{margin:0;line-height:1.2}input,select,textarea{font:inherit;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-m);outline:none;padding:10px 14px}input:focus,select:focus,textarea:focus{border-color:var(--primary)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.muted{color:var(--muted)}td.small{white-space:nowrap}.small{font-size:13px}.shell{grid-template-columns:var(--sidebar) 1fr;min-height:100vh;display:grid}.sidebar{background:var(--bg-deep);border-right:1px solid var(--border);flex-direction:column;gap:4px;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.logo{color:var(--text);align-items:center;gap:10px;padding:4px 10px 22px;font-size:18px;font-weight:800;display:flex}.logo img{border-radius:9px;width:34px;height:34px}.nav-item{border-radius:var(--radius-m);color:var(--muted);align-items:center;gap:12px;padding:10px 12px;font-weight:600;display:flex}.nav-item:hover{background:var(--surface);color:var(--text)}.nav-item.active{color:var(--primary);background:#3b82f624}.nav-badge{background:var(--primary);color:#fff;border-radius:10px;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;display:grid}.nav-section{letter-spacing:.1em;text-transform:uppercase;color:#6b7280;margin:18px 12px 6px;font-size:11px;font-weight:700}.sidebar-footer{border-radius:var(--radius-m);background:var(--surface);align-items:center;gap:10px;margin-top:auto;padding:12px;display:flex}.avatar{background:var(--surface-2);border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-weight:700;display:grid}.avatar.small{width:30px;height:30px;font-size:13px}.main{min-width:0}.page{max-width:1200px;margin:0 auto;padding:28px 32px 64px}.page-head{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:20px;display:flex}.page-head h1{font-size:26px;font-weight:800}.page-head .spacer{flex:1}.demo-banner{border-bottom:1px solid var(--border);color:var(--text);background:linear-gradient(90deg,#8b5cf640,#3b82f633);padding:8px 32px;font-size:13px}.bottom-nav{display:none}.btn{border-radius:var(--radius-m);background:var(--surface-2);cursor:pointer;white-space:nowrap;border:0;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-weight:600;display:inline-flex}.btn:hover{filter:brightness(1.15)}.btn:disabled{opacity:.45;cursor:default;filter:none}.btn.primary{background:var(--primary);color:#fff}.btn.danger{color:var(--red);background:#ef444426}.btn.ghost{color:var(--muted);background:0 0}.btn.ghost:hover{color:var(--text);background:var(--surface)}.icon-btn{border-radius:var(--radius-m);width:38px;height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.icon-btn:hover{background:var(--surface);color:var(--text)}.link{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:20px}.segmented{border-radius:var(--radius-m);background:var(--surface);gap:4px;padding:4px;display:inline-flex}.segmented button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;padding:8px 18px;font-weight:700;position:relative}.segmented button.active{background:var(--primary);color:#fff}.count-badge{background:var(--red);color:#fff;border-radius:9px;min-width:18px;height:18px;padding:0 5px;font-size:11px;line-height:18px;position:absolute;top:-6px;right:-6px}.search{flex:1;min-width:220px;position:relative}.search svg{color:var(--muted);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search input{background:var(--surface);width:100%;padding-left:42px}.empty{text-align:center;color:var(--muted);padding:48px 16px}.collection-title{cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:26px;font-weight:800;display:flex}.progress{align-items:center;gap:14px;margin-bottom:18px;display:flex}.bar{background:var(--surface-2);border-radius:4px;flex:1;height:8px;overflow:hidden}.bar span{background:var(--green);border-radius:4px;height:100%;transition:width .3s;display:block}.stats{grid-template-columns:repeat(5,1fr);gap:10px;margin:16px 0 22px;display:grid}.stat{border-radius:var(--radius-m);background:var(--surface);cursor:pointer;border:1px solid #0000;flex-direction:column;align-items:center;padding:10px 6px;display:flex}.stat:hover{border-color:var(--border)}.stat.active{border-color:var(--primary);background:#3b82f614}.stat b{font-variant-numeric:tabular-nums;font-size:24px;font-weight:800}.stat span{color:var(--muted);font-size:13px}.c-have{color:var(--have)}.c-missing{color:var(--red)}.c-dup{color:var(--dup)}.c-arriving{color:var(--arriving)}.c-sending{color:var(--sending)}.group{margin-bottom:14px}.group-head{border-radius:var(--radius-m);background:var(--surface);cursor:pointer;text-align:left;-webkit-user-select:none;user-select:none;border:0;align-items:center;gap:10px;width:100%;padding:12px 18px;font-size:16px;font-weight:700;display:flex}.group-head:hover{background:#22252c}.group-head .count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto}.group-head .count.complete{color:var(--green)}.group-head .chevron{color:var(--muted);transition:transform .15s}.group-head.collapsed .chevron{transform:rotate(-90deg)}.extra-tag{color:var(--gold);background:#eab30826;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:700}.tiles{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:10px;padding:12px 0 4px;display:grid}.tiles.names{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.tile{background:var(--missing);height:54px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;border:0;border-radius:10px;font-size:15px;font-weight:600;transition:transform 80ms,filter .15s;position:relative}.tile:hover{filter:brightness(1.12)}.tile:active{transform:scale(.95)}.tile.have{background:var(--have)}.tile.dup{background:var(--dup)}.tile.arriving{box-shadow:inset 0 0 0 2px var(--arriving)}.tile.named{text-align:left;text-overflow:ellipsis;white-space:nowrap;padding:0 14px;overflow:hidden}.tile .badge{background:var(--red);min-width:22px;box-shadow:0 0 0 2px var(--bg);border-radius:10px;padding:0 6px;font-size:11px;font-weight:700;line-height:19px;position:absolute;top:-7px;right:-7px}.tile .corner{gap:2px;display:flex;position:absolute;bottom:3px;right:5px}.tile .dots{gap:3px;display:flex;position:absolute;bottom:5px;left:6px}.tile .dots i{border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 1px #00000059}.tile.parallel:before{content:"";background:var(--stripe);border-radius:10px 0 0 10px;width:5px;position:absolute;top:0;bottom:0;left:0}.legend{color:var(--muted);flex-wrap:wrap;gap:16px;margin-top:28px;font-size:13px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:4px;width:14px;height:14px}.backdrop{z-index:100;background:#0000008c;place-items:center;padding:16px;animation:.12s ease-out fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.dialog{border-radius:var(--radius-l);background:var(--surface);border:1px solid var(--border);width:min(460px,100%);max-height:calc(100vh - 32px);padding:24px;overflow:auto;box-shadow:0 30px 60px -20px #000c}.dialog.wide{width:min(640px,100%)}.dialog h2{margin-bottom:6px;font-size:20px}.dialog .actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.menu{z-index:110;background:var(--surface);border:1px solid var(--border);border-radius:14px;min-width:250px;padding:6px;position:fixed;box-shadow:0 24px 48px -12px #000c}.menu-head{border-bottom:1px solid var(--border);margin-bottom:4px;padding:10px 12px 8px}.menu-head b{font-size:17px}.menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;width:100%;padding:9px 12px;display:flex}.menu button:hover{background:var(--surface-2)}.menu button.danger{color:var(--red)}.menu hr{border:0;border-top:1px solid var(--border);margin:4px 0}.menu .parallel-row{align-items:center;gap:8px;padding:6px 12px;display:flex}.menu .parallel-row .swatch{border-radius:4px;width:14px;height:14px}.menu .parallel-row .stepper{align-items:center;gap:4px;margin-left:auto;display:flex}.stepper button{background:var(--surface-2);justify-content:center;width:28px;height:28px;padding:0}.stepper b{text-align:center;font-variant-numeric:tabular-nums;width:22px}.switch-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px 0;display:flex}.switch-row:last-child{border-bottom:0}.switch-row .label{flex:1}.switch{background:var(--surface-2);cursor:pointer;border:0;border-radius:13px;flex:none;width:44px;height:26px;position:relative}.switch:after{content:"";background:var(--muted);border-radius:50%;width:20px;height:20px;transition:transform .15s,background .15s;position:absolute;top:3px;left:3px}.switch.on{background:var(--primary)}.switch.on:after{background:#fff;transform:translate(18px)}.share-preview{white-space:pre-wrap;border-radius:var(--radius-m);background:var(--bg);max-height:320px;padding:16px;font-size:14px;overflow:auto}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--surface-2);color:var(--muted);cursor:pointer;border:0;border-radius:999px;padding:7px 14px;font-weight:600}.chip.active{background:var(--primary);color:#fff}.toast{z-index:120;border-radius:var(--radius-m);border:1px solid var(--border);background:#2b3038;align-items:center;gap:16px;padding:12px 18px;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 20px 40px -12px #000c}.list{gap:12px;display:grid}.row-card{border-radius:var(--radius-l);background:var(--surface);border:1px solid var(--border);color:var(--text);text-align:left;cursor:pointer;align-items:center;gap:16px;width:100%;padding:16px 18px;display:flex}.row-card:hover{background:#20232a;border-color:#3d434d}.row-card .grow{flex:1;min-width:0}.row-card h3{margin-bottom:4px;font-size:16px}.default-tag{color:var(--green);vertical-align:middle;background:#22c55e26;border-radius:6px;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:700}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.album-card{flex-direction:column;gap:8px;display:flex}.album-card .tag{color:var(--green);background:#22c55e24;border-radius:999px;align-self:flex-start;padding:3px 10px;font-size:11px;font-weight:700}.album-card .tag.card-kind{color:var(--dup);background:#f59e0b24}.album-card h3{font-size:17px}.album-card .btn{margin-top:auto}.filters{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.visible-note{color:var(--muted);align-items:center;gap:8px;margin-bottom:18px;display:flex}.swap-card{gap:14px;display:grid}.swap-side{gap:4px;display:grid}.swap-side .label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.swap-side .label i{border-radius:50%;width:10px;height:10px}.swap-side .label .state{text-transform:none;letter-spacing:0;margin-left:auto;font-size:14px}.status-pill{white-space:nowrap;background:var(--surface-2);color:var(--muted);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}.status-pill.open{color:var(--primary);background:#3b82f626}.status-pill.accepted{color:var(--arriving);background:#8b5cf62e}.status-pill.done,.status-pill.reviewed{color:var(--green);background:#22c55e26}.status-pill.declined,.status-pill.cancelled{color:var(--red);background:#ef44441f}.status-pill.suspended{color:var(--red);background:#ef444433}.pick-columns{grid-template-columns:1fr 1fr;gap:20px;display:grid}.pick-group{vertical-align:top;margin:10px 18px 0 0;display:inline-block}.pick-tiles{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.pick-tiles .tile{width:60px;height:44px}.tile.picked{box-shadow:inset 0 0 0 3px #fff}.tile.pickable{background:var(--surface-2)}.sticky-bar{border-radius:var(--radius-l);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);background:#262a31eb;align-items:center;gap:16px;margin-top:24px;padding:14px 18px;display:flex;position:sticky;bottom:16px}.messages{grid-template-columns:340px 1fr;height:100vh;display:grid}.inbox{border-right:1px solid var(--border);overflow:auto}.inbox-head{padding:22px 20px 12px}.inbox-row{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;width:100%;padding:12px 20px;display:flex}.inbox-row:hover{background:var(--surface)}.inbox-row.active{background:#3b82f61f}.inbox-row .grow{flex:1;min-width:0}.inbox-row .top{align-items:baseline;gap:8px;display:flex}.inbox-row .name{flex:1;font-weight:600}.inbox-row .preview{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.inbox-row.unread .name,.inbox-row.unread .preview{color:var(--text);font-weight:700}.chat{flex-direction:column;min-width:0;display:flex}.chat-head{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:14px 20px;display:flex}.chat-body{flex-direction:column;flex:1;gap:10px;padding:20px;display:flex;overflow:auto}.bubble-row{display:flex}.bubble-row.mine{justify-content:flex-end}.bubble{background:var(--surface-2);border-radius:18px 18px 18px 6px;max-width:min(520px,80%);padding:10px 14px}.bubble-row.mine .bubble{background:var(--primary);border-bottom-right-radius:6px;border-bottom-left-radius:18px}.bubble.proposal{width:min(460px,90%);max-width:none}.bubble .meta{text-align:right;opacity:.7;margin-top:4px;font-size:11px;display:block}.proposal-card{background:var(--bg);border:1px solid var(--border);border-radius:14px;gap:10px;padding:14px;display:grid}.proposal-card .head{align-items:center;gap:8px;display:flex}.proposal-card .head b{flex:1;font-size:16px}.composer{border-top:1px solid var(--border);background:var(--surface);gap:10px;padding:12px 16px;display:flex}.composer input{border-radius:22px;flex:1}.blocked-banner{border-top:1px solid var(--border);color:var(--muted);background:var(--surface);align-items:center;gap:12px;padding:14px 20px;display:flex}.settings{gap:18px;max-width:720px;display:grid}.settings h2{margin-bottom:8px;font-size:16px}.field{gap:6px;margin-bottom:12px;display:grid}.field span{color:var(--muted);font-size:13px}.admin-tabs{border-bottom:1px solid var(--border);gap:6px;margin-bottom:22px;display:flex}.admin-tabs a{color:var(--muted);border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:700}.admin-tabs a.active{color:var(--text);border-bottom-color:var(--primary)}.kpis{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px;display:grid}.kpi{border-radius:var(--radius-l);background:var(--surface);border:1px solid var(--border);padding:18px}.kpi b{font-variant-numeric:tabular-nums;font-size:30px;font-weight:800;display:block}.kpi span{color:var(--muted);font-size:13px}.table-wrap{border-radius:var(--radius-l);border:1px solid var(--border);background:var(--surface);overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 16px}th{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap;background:#181b20;font-size:12px;font-weight:700}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}tr:last-child td{border-bottom:0}tr.expandable{cursor:pointer}tr.expandable:hover td{background:#20232a}tr.detail td{background:var(--bg);padding:0}.detail-list{gap:1px;padding:8px 16px 16px 56px;display:grid}.detail-item{border-bottom:1px dashed var(--border);grid-template-columns:160px 1fr auto;align-items:center;gap:16px;padding:10px 0;display:grid}.detail-item:last-child{border-bottom:0}.quote{border-left:3px solid var(--border);color:var(--muted);margin-top:4px;padding:6px 10px;font-style:italic}.num{font-variant-numeric:tabular-nums;font-size:18px;font-weight:800}.num.hot{color:var(--red)}.user-cell{align-items:center;gap:10px;display:flex}.bar-cell{align-items:center;gap:10px;min-width:160px;display:flex}.bar-cell .bar{height:6px}.bar-cell .bar span{background:var(--red)}@media (width<=1000px){.messages{grid-template-columns:280px 1fr}.kpis{grid-template-columns:repeat(2,1fr)}}@media (width<=800px){.shell{grid-template-columns:1fr}.sidebar{display:none}.page{padding:18px 16px 96px}.demo-banner{padding:8px 16px}.bottom-nav{z-index:50;background:var(--surface);border-top:1px solid var(--border);justify-content:space-around;padding:10px 0 14px;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{color:var(--muted);padding:4px 14px;position:relative}.bottom-nav a.active{color:var(--primary)}.bottom-nav .nav-badge{position:absolute;top:-6px;right:2px}.stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.stat b{font-size:18px}.stat span{font-size:11px}.tiles{grid-template-columns:repeat(6,1fr);gap:7px}.tile{height:42px;font-size:13px}.pick-columns{grid-template-columns:1fr}.collection-title{font-size:20px}.sticky-bar{flex-wrap:wrap;bottom:76px}.messages{grid-template-columns:1fr;height:calc(100vh - 64px)}.messages.has-chat .inbox,.messages:not(.has-chat) .chat{display:none}.detail-item{grid-template-columns:1fr;gap:4px}.detail-list{padding-left:16px}}.auth{background:radial-gradient(ellipse at 15% 0%, #3b82f638, transparent 55%), radial-gradient(ellipse at 90% 100%, #22c55e26, transparent 55%), var(--bg-deep);place-items:center;min-height:100vh;padding:24px 16px;display:grid}.auth-card{border-radius:var(--radius-l);background:var(--surface);border:1px solid var(--border);width:min(440px,100%);padding:32px;box-shadow:0 30px 60px -24px #000c}.auth-card h1{margin-bottom:6px;font-size:24px}.auth-logo{align-items:center;gap:10px;margin-bottom:24px;font-size:18px;font-weight:800;display:flex}.auth-logo img{border-radius:10px;width:36px;height:36px}.auth-form{gap:4px;margin-top:18px;display:grid}.auth-form .field input,.auth-form .field select{width:100%}.auth-form .btn{margin-top:8px;padding:11px 16px}.auth-links{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:22px;font-size:14px;display:flex}.auth-icon{color:var(--green);place-items:center;margin:20px 0 4px;display:grid}.form-error{color:var(--red);margin:6px 0 0;font-size:14px}.error-banner{background:#ef44442e}a.sidebar-footer:hover{background:var(--surface-2)}
