:root{--bg:#edf7fb;--bg-glow:#2dd4bf29;--surface:#fff;--surface-raised:#f8fcff;--field:#eff7fb;--hover:#e7f7f8;--line:#c9dce8;--line-strong:#9fc6d9;--ink:#2d4052;--ink-strong:#0c1822;--muted:#607486;--accent:#0ea5e9;--accent-strong:#0284c7;--accent-soft:#7dd3fc;--accent-rgb:14, 165, 233;--secondary:#10b981;--secondary-strong:#059669;--secondary-rgb:16, 185, 129;--chart-a:#22d3ee;--chart-b:#10b981;--chart-c:#38bdf8;--danger:#ef4444;--shadow:0 16px 42px #0f364c1a;--glow-shadow:0 18px 50px #0ea5e92e;color:var(--ink);background:var(--bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--bg:#071019;--bg-glow:#22d3ee24;--surface:#101a23;--surface-raised:#152331;--field:#182734;--hover:#122d38;--line:#263948;--line-strong:#315365;--ink:#c8d7e4;--ink-strong:#f4fbff;--muted:#8da3b3;--accent:#22d3ee;--accent-strong:#38bdf8;--accent-soft:#155e75;--accent-rgb:34, 211, 238;--secondary:#34d399;--secondary-strong:#10b981;--secondary-rgb:52, 211, 153;--chart-a:#22d3ee;--chart-b:#34d399;--chart-c:#60a5fa;--danger:#fb7185;--shadow:0 18px 56px #0000005c;--glow-shadow:0 18px 52px #22d3ee24;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:radial-gradient(circle at 18% -10%, var(--bg-glow), transparent 32rem), linear-gradient(180deg, rgba(var(--accent-rgb), .08), transparent 22rem), var(--bg);min-width:320px;margin:0}::selection{background:rgba(var(--accent-rgb), .24)}.app-shell{min-height:100vh;color:var(--ink);padding:28px;transition:background .18s,color .18s}.topbar{border:1px solid var(--line);background:linear-gradient(135deg, rgba(var(--accent-rgb), .12), rgba(var(--secondary-rgb), .08)), var(--surface);box-shadow:var(--shadow);border-radius:8px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;padding:18px;display:flex}.eyebrow,.panel-kicker{color:var(--muted);letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:700}h1,h2,h3,p{margin:0}h1{color:var(--ink-strong);font-size:34px;font-weight:760;line-height:1.15}h2{color:var(--ink-strong);font-size:18px;line-height:1.25}h3{color:var(--ink-strong);font-size:15px;line-height:1.25}.topbar-actions,.form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}button,input,select,textarea{font:inherit}button{border:0}button:disabled{cursor:not-allowed;opacity:.62}select{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark] select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}select option,select optgroup{background:var(--surface-raised);color:var(--ink-strong)}select option:checked{background:rgba(var(--accent-rgb), .18);color:var(--accent-strong)}.primary-button,.ghost-button,.icon-button,.theme-toggle{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;transition:background .16s,color .16s,border-color .16s,box-shadow .16s;display:inline-flex}.primary-button{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;box-shadow:var(--glow-shadow);padding:0 15px;font-weight:700}.primary-button:hover{background:var(--accent-strong)}.secondary-action{background:linear-gradient(135deg, var(--secondary), var(--secondary-strong));box-shadow:0 14px 28px rgba(var(--secondary-rgb), .22)}.secondary-action:hover{background:var(--secondary-strong)}.tertiary-action{background:linear-gradient(135deg,#38bdf8,#2563eb);box-shadow:0 14px 28px #2563eb2e}.tertiary-action:hover{background:#2563eb}.ghost-button{border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:0 13px}.ghost-button:hover,.icon-button:hover,.theme-toggle:hover{border-color:var(--accent-soft);color:var(--accent-strong);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .12)}.icon-button{border:1px solid var(--line);background:var(--surface);width:40px;height:40px;color:var(--ink)}.theme-toggle{border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink-strong);padding:0 13px;font-weight:760}.icon-button.danger:hover{color:#c53f3f;border-color:#f0a3a3}.user-badge{border:1px solid var(--line);background:rgba(var(--accent-rgb), .1);min-height:40px;color:var(--ink-strong);border-radius:999px;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:760;display:inline-flex}.login-shell{min-height:100vh;color:var(--ink);place-items:center;padding:24px;display:grid}.login-panel{border:1px solid var(--line);background:linear-gradient(135deg, rgba(var(--accent-rgb), .13), rgba(var(--secondary-rgb), .08)), var(--surface);width:min(920px,100%);box-shadow:var(--shadow);border-radius:18px;grid-template-columns:minmax(0,.95fr) minmax(320px,.8fr);gap:28px;padding:28px;display:grid;position:relative}.login-brand{align-content:center;gap:12px;display:grid}.login-brand span{max-width:420px;color:var(--muted);font-size:15px;line-height:1.7}.login-form{border:1px solid var(--line);background:var(--field);border-radius:16px;gap:14px;padding:18px;display:grid}.login-form label{color:var(--muted);gap:7px;font-size:13px;font-weight:700;display:grid}.login-form input{border:1px solid var(--line);background:var(--surface);height:44px;color:var(--ink-strong);border-radius:14px;outline:0;padding:0 13px}.login-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .12)}.login-theme-toggle{position:absolute;top:18px;right:18px}.form-message{color:var(--secondary-strong);margin:0;font-size:13px;font-weight:700}.form-message.error{color:var(--danger)}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.sub-metrics,.view-tabs{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.sub-metrics span{border:1px solid var(--line);background:var(--surface);min-height:32px;color:var(--muted);border-radius:999px;align-items:center;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.view-tabs{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:6px}.view-tabs button{min-height:38px;color:var(--muted);cursor:pointer;background:0 0;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:760;display:inline-flex}.view-tabs button.active{background:linear-gradient(135deg, var(--accent), var(--secondary));color:#fff;box-shadow:0 10px 24px rgba(var(--accent-rgb), .22)}.metric-card{border:1px solid var(--line);background:linear-gradient(135deg, rgba(var(--accent-rgb), .08), transparent 58%), var(--surface);min-height:104px;box-shadow:var(--shadow);border-radius:8px;align-items:center;gap:14px;padding:18px;display:flex}.metric-card>span{color:#fff;border-radius:8px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.metric-card p{color:var(--muted);font-size:13px}.metric-card strong{color:var(--ink-strong);margin-top:4px;font-size:26px;line-height:1.05;display:block}.metric-card.blue>span{background:linear-gradient(135deg,#38bdf8,#2563eb)}.metric-card.teal>span{background:linear-gradient(135deg,#22d3ee,#0f766e)}.metric-card.green>span{background:linear-gradient(135deg,#34d399,#16834a)}.metric-card.orange>span{background:linear-gradient(135deg, var(--accent), var(--secondary))}.filter-band{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;grid-template-columns:minmax(240px,1.4fr) repeat(5,minmax(126px,1fr)) auto;align-items:center;gap:10px;margin-bottom:18px;padding:12px;display:grid}.filter-band label,.search-box,.filter-select-trigger{border:1px solid var(--line);background:linear-gradient(180deg, rgba(var(--accent-rgb), .055), transparent), var(--field);min-width:0;height:44px;color:var(--muted);border-radius:14px;align-items:center;gap:8px;padding:0 12px;display:flex}.filter-select{min-width:0;position:relative}.filter-select-trigger{cursor:pointer;justify-content:flex-start;width:100%}.filter-select-trigger span{min-width:0;color:var(--ink-strong);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.filter-select-chevron{color:var(--accent-strong);flex:none;margin-left:auto;transition:transform .16s}.filter-select.open .filter-select-trigger{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .12)}.filter-select.open .filter-select-chevron{transform:rotate(180deg)}.filter-select-menu{z-index:30;border:1px solid rgba(var(--accent-rgb), .3);background:linear-gradient(180deg, rgba(var(--accent-rgb), .08), transparent 72px), var(--surface-raised);border-radius:16px;max-height:272px;padding:8px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:auto;box-shadow:0 18px 40px #030c1452,inset 0 1px #ffffff0a}.filter-select-menu button{width:100%;min-height:38px;color:var(--ink-strong);cursor:pointer;text-align:left;background:0 0;border-radius:11px;align-items:center;padding:0 12px;font-weight:700;display:flex}.filter-select-menu button:hover,.filter-select-menu button.selected{background:rgba(var(--accent-rgb), .14);color:var(--accent-strong)}.filter-select-menu button.selected{box-shadow:inset 3px 0 0 var(--accent)}.filter-band input,.filter-band select,.search-box input{width:100%;min-width:0;color:var(--ink-strong);background:0 0;border:0;outline:0}.filter-band select,.record-form select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 8L10 12L14 8' stroke='%230284c7' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:20px 20px}:root[data-theme=dark] .filter-band select,:root[data-theme=dark] .record-form select{background-image:url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 8L10 12L14 8' stroke='%2338bdf8' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.filter-band select{padding-right:36px}.filter-band label:focus-within,.search-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .12)}.workspace-grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,.7fr);gap:18px;display:grid}.user-management{grid-template-columns:minmax(320px,.75fr) minmax(0,1.2fr);gap:18px;display:grid}.user-form-panel{align-self:start}.user-list{gap:10px;padding:14px;display:grid}.user-row{border:1px solid var(--line);background:linear-gradient(135deg, rgba(var(--accent-rgb), .055), transparent), var(--field);border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.user-row strong{color:var(--ink-strong);font-size:15px;display:block}.user-row span,.user-row em{color:var(--muted);font-size:12px;font-style:normal;font-weight:700;display:block}.user-actions{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.preset-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:18px;display:grid}.preset-card{align-self:start;overflow:hidden}.preset-body{gap:14px;padding:14px;display:grid}.preset-add-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.preset-add-row input,.preset-item input{box-sizing:border-box;border:1px solid var(--line);background:var(--field);width:100%;color:var(--ink-strong);border-radius:14px;outline:0;padding:0 12px}.preset-add-row input:focus,.preset-item input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .12)}.preset-list{gap:9px;max-height:410px;padding-right:4px;display:grid;overflow:auto}.preset-item{border:1px solid var(--line);background:var(--field);border-radius:14px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:46px;padding:9px 10px 9px 12px;display:grid}.preset-item.dragging{border-color:var(--accent);opacity:.58;box-shadow:0 0 0 3px rgba(var(--accent-rgb), .12)}.preset-drag-handle{width:28px;height:34px;color:var(--muted);cursor:grab;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.preset-drag-handle:hover{background:rgba(var(--accent-rgb), .1);color:var(--accent-strong)}.preset-drag-handle:active{cursor:grabbing}.preset-drag-spacer{width:28px;height:1px}.preset-item span{min-width:0;color:var(--ink-strong);overflow-wrap:anywhere;font-weight:800}.preset-item input{min-width:0;height:36px}.preset-item-actions{align-items:center;gap:7px;display:inline-flex}.preset-item em{background:rgba(var(--accent-rgb), .1);height:28px;color:var(--muted);border-radius:999px;align-items:center;padding:0 10px;font-size:12px;font-style:normal;font-weight:800;display:inline-flex}.panel{border:1px solid var(--line);background:linear-gradient(180deg, rgba(var(--accent-rgb), .045), transparent 18rem), var(--surface);min-width:0;box-shadow:var(--shadow);border-radius:8px}.wide-panel{grid-column:span 1}.panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.panel-heading span{color:var(--muted);font-size:13px;font-weight:700}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:1000px}.topic-table{table-layout:fixed;min-width:980px}.topic-table col{width:12.5%}.topic-table .action-column{width:104px}.topic-title-cell{color:var(--ink-strong);overflow-wrap:anywhere;font-weight:700;line-height:1.45}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:13px 14px;font-size:14px}th{color:var(--muted);font-size:12px;font-weight:760}tbody tr:hover{background:var(--hover)}.number{text-align:right;font-variant-numeric:tabular-nums}.action-cell{text-align:right;white-space:nowrap;width:104px}.action-cell .icon-button+.icon-button{margin-left:8px}.tag{background:rgba(var(--accent-rgb), .13);min-height:26px;color:var(--accent-strong);border-radius:999px;align-items:center;padding:0 9px;font-size:12px;font-weight:760;display:inline-flex}.status-pill{white-space:nowrap;border-radius:999px;align-items:center;min-height:26px;padding:0 9px;font-size:12px;font-weight:760;display:inline-flex}.status-pill.todo{color:#60a5fa;background:#60a5fa29}.status-pill.quoted{background:rgba(var(--accent-rgb), .16);color:var(--accent-strong)}.status-pill.sample{color:var(--chart-a);background:#22d3ee29}.status-pill.won{background:rgba(var(--secondary-rgb), .18);color:var(--secondary-strong)}.status-pill.lost{color:var(--danger);background:#ef444424}.table-link{color:var(--accent-strong);font-weight:700;text-decoration:none}.table-link:hover{text-decoration:underline}.topic-progress{flex-wrap:wrap;justify-content:flex-start;gap:6px;display:flex}.topic-progress span{background:var(--field);min-height:24px;color:var(--muted);border-radius:999px;align-items:center;padding:0 8px;font-size:12px;font-weight:760;display:inline-flex}.topic-progress span.done{background:rgba(var(--secondary-rgb), .18);color:var(--secondary-strong)}.notes{max-width:260px;color:var(--muted)}.rank-list,.trend-chart,.account-grid,.account-bar-chart,.follow-list,.pipeline-grid{padding:14px}.rank-item{border-bottom:1px solid var(--line);grid-template-columns:minmax(120px,1fr) minmax(110px,.8fr) auto;align-items:center;gap:12px;padding:13px 0;display:grid}.rank-item:last-child{border-bottom:0}.rank-item strong{color:var(--ink-strong);font-size:14px;display:block}.rank-item span,.rank-item em{color:var(--muted);font-size:12px;font-style:normal;display:block}.bar-track{background:var(--field);border-radius:999px;height:8px;overflow:hidden}.bar-track i{border-radius:inherit;background:linear-gradient(90deg, var(--chart-b), var(--chart-a), var(--chart-c));height:100%;display:block}.line-chart{width:100%;min-height:220px;display:block;overflow:visible}.chart-axis{stroke:var(--line-strong);stroke-width:1px}.chart-line{fill:none;stroke:var(--accent);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.chart-point{fill:var(--secondary);stroke:var(--surface);stroke-width:3px}.chart-label,.chart-value{fill:var(--muted);color:var(--muted);font-size:12px;font-weight:700}.chart-value{fill:var(--ink-strong);font-size:13px}.empty-chart{color:var(--muted);text-align:center;padding:26px 0;font-size:14px;font-weight:700}.follow-item{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:13px 0;display:flex}.follow-item:last-child{border-bottom:0}.follow-item strong{color:var(--ink-strong);font-size:14px;display:block}.follow-item span,.follow-item em{color:var(--muted);font-size:12px;font-style:normal;display:block}.follow-item em{white-space:nowrap;font-weight:760}.pipeline-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pipeline-card{border:1px solid var(--line);background:linear-gradient(135deg, rgba(var(--accent-rgb), .08), rgba(var(--secondary-rgb), .06)), var(--field);border-radius:8px;align-content:space-between;gap:8px;min-height:112px;padding:14px;display:grid}.pipeline-card strong{color:var(--ink-strong);font-size:24px;line-height:1}.pipeline-card em{color:var(--muted);font-size:13px;font-style:normal;font-weight:700}.account-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.account-bar-chart{gap:12px;display:grid}.account-bar-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(160px,.65fr) minmax(160px,1fr) 70px;align-items:center;gap:14px;padding:11px 0;display:grid}.account-bar-row:last-child{border-bottom:0}.account-bar-label{min-width:0}.account-bar-label strong{color:var(--ink-strong);overflow-wrap:anywhere;font-size:14px;display:block}.account-bar-label span,.account-bar-row em{color:var(--muted);font-size:12px;font-style:normal;font-weight:700;display:block}.account-bar-track{background:var(--field);border-radius:999px;height:18px;overflow:hidden}.account-bar-track i{border-radius:inherit;background:linear-gradient(90deg, var(--chart-b), var(--chart-a), var(--chart-c));height:100%;box-shadow:0 0 18px rgba(var(--accent-rgb), .24);display:block}.account-bar-row em{color:var(--ink-strong);text-align:right}.account-card{border:1px solid var(--line);background:linear-gradient(135deg, rgba(var(--accent-rgb), .055), transparent 70%), var(--field);border-radius:8px;justify-content:space-between;gap:14px;padding:14px;display:flex}.account-card p,.account-stats span{color:var(--muted);font-size:12px}.account-stats{text-align:right;white-space:nowrap;gap:4px;display:grid}.modal-backdrop{z-index:20;background:#0f172a61;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:min(720px,100%);max-height:min(760px,100vh - 40px);overflow:auto;box-shadow:0 24px 64px #0f172a47}.modal-wide{width:min(1120px,100%);max-height:min(860px,100vh - 28px)}.modal-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.record-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px;display:grid}.topic-editor-form{grid-template-columns:minmax(0,1.65fr) minmax(300px,.8fr);align-items:start;gap:18px;padding:20px}.record-form.topic-editor-form label{color:var(--ink);font-size:14.5px;font-weight:500}.record-form.topic-editor-form input,.record-form.topic-editor-form select,.record-form.topic-editor-form textarea{font-size:15px;line-height:1.55}.record-form.topic-editor-form textarea{font-weight:400}.topic-editor-main,.topic-editor-side{gap:14px;display:grid}.topic-editor-main{min-width:0}.topic-editor-side{border:1px solid var(--line);background:linear-gradient(135deg, rgba(var(--accent-rgb), .06), rgba(var(--secondary-rgb), .05)), var(--field);border-radius:8px;padding:16px}.record-form label{color:var(--muted);gap:7px;font-size:13px;font-weight:700;display:grid}.record-form input,.record-form select,.record-form textarea{box-sizing:border-box;border:1px solid var(--line);background-color:var(--field);width:100%;color:var(--ink-strong);border-radius:12px;outline:0}.record-form select{border-radius:14px}.record-form input:focus,.record-form select:focus,.record-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .12)}.record-form input,.record-form select{height:42px;padding:0 12px}.record-form select{padding-right:40px}.preset-row{grid-template-columns:minmax(0,1fr) 42px;gap:8px;display:grid}.preset-row .icon-button{width:42px;height:42px}.check-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.check-row label{border:1px solid var(--line);background:var(--field);min-height:38px;color:var(--ink);border-radius:8px;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.check-row input{width:16px;height:16px;accent-color:var(--accent)}.record-form textarea{resize:vertical;min-height:96px;padding:12px}.topic-editor-main textarea{min-height:152px}.topic-editor-main label:nth-of-type(3) textarea{min-height:220px}.full-field,.form-actions{grid-column:1/-1}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=1120px){.filter-band{grid-template-columns:repeat(2,minmax(0,1fr))}.search-box{grid-column:1/-1}.workspace-grid,.user-management{grid-template-columns:1fr}}@media (width<=820px){.app-shell{padding:18px}.topbar{flex-direction:column;align-items:stretch}.login-panel{grid-template-columns:1fr;padding:20px}.login-theme-toggle{justify-self:start;position:static}.topbar-actions{justify-content:flex-start}.metric-grid,.account-grid,.pipeline-grid,.record-form,.filter-band,.rank-item{grid-template-columns:1fr}.account-card{flex-direction:column}.preset-add-row,.preset-item{grid-template-columns:1fr}.preset-drag-handle{justify-self:start}.preset-item-actions{justify-content:flex-start}.account-stats{text-align:left}}
