:root{color:#1f2933;background:#f5f7f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}.login-shell{background:#f5f7f8;place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{background:#fff;border:1px solid #d8dee6;border-radius:8px;width:min(420px,100%);padding:24px}.login-brand,.brand,.topbar-actions,.status-pill,.filters label,.notice,.version-actions,.version-button{align-items:center;display:flex}.login-brand{color:#216869;gap:12px;margin-bottom:28px}.login-brand span{color:#657282;text-transform:uppercase;font-size:12px;font-weight:700;display:block}.login-brand strong{color:#1f2933;font-size:22px;display:block}.login-form{gap:14px;display:grid}.login-form label,.filters label{color:#526071;font-size:12px;font-weight:700}.login-form input,.filters input,.filters select{color:#1f2933;background:#fff;border:1px solid #cfd7e1;border-radius:6px;outline:none;width:100%}.login-form input{min-height:42px;margin-top:6px;padding:0 12px;display:block}.primary-button,.secondary-button,.icon-button,.nav-item,.version-button,.row-button,.directory-item,.global-search-results button{border:0}.primary-button{color:#fff;background:#216869;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:42px;font-weight:700;display:inline-flex}.secondary-button{color:#334155;background:#eef2f5;border-radius:6px;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.primary-button:disabled,.secondary-button:disabled,.version-button:disabled{cursor:default;opacity:.68}.form-error{color:#b42318;margin:14px 0 0;font-size:13px}.app-shell{background:#f5f7f8;min-height:100vh;display:flex}.sidebar{background:#fff;border-right:1px solid #d8dee6;width:248px;padding:20px 14px}.brand{color:#216869;gap:10px;padding:4px 8px 20px;font-size:18px;font-weight:800}.nav-list{gap:4px;display:grid}.nav-item{color:#5b6776;text-align:left;background:0 0;border-radius:6px;align-items:center;gap:10px;min-height:40px;padding:0 10px;font-size:14px;font-weight:650;display:flex}.nav-item.active{color:#216869;background:#e5f1ef}.workspace{flex:1;min-width:0}.topbar{background:#fff;border-bottom:1px solid #d8dee6;justify-content:space-between;align-items:center;gap:18px;min-height:88px;padding:0 28px;display:flex}.topbar-actions{flex-shrink:0;gap:8px}.global-search{color:#657282;background:#fff;border:1px solid #cfd7e1;border-radius:6px;align-items:center;gap:8px;width:min(520px,42vw);min-height:40px;padding:0 10px;display:flex;position:relative}.global-search input{border:0;outline:none;width:100%;min-width:0}.global-search-results{z-index:20;background:#fff;border:1px solid #d8dee6;border-radius:8px;max-height:520px;padding:10px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:auto;box-shadow:0 16px 40px #1f293329}.search-result-group{gap:4px;margin-bottom:8px;display:grid}.search-result-group:last-child{margin-bottom:0}.search-result-group>span{color:#657282;text-transform:uppercase;font-size:11px;font-weight:800}.search-result-group button{color:#1f2933;text-align:left;background:#f8fafb;border-radius:6px;width:100%;padding:8px;display:block}.search-result-group button:hover{background:#eef2f5}.search-result-group strong,.search-result-group small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.search-result-group small{color:#657282;font-size:12px}.eyebrow,.section-kicker{color:#657282;letter-spacing:0;text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:800}h1,h2,p{margin-top:0}h1{letter-spacing:0;margin-bottom:0;font-size:24px}h2{letter-spacing:0;margin-bottom:0;font-size:18px}.status-pill{color:#7a4d00;background:#fff5dc;border:1px solid #d8dee6;border-radius:6px;gap:7px;padding:7px 10px;font-size:12px;font-weight:750}.status-pill.active{color:#17664a;background:#e7f5ee}.icon-button{color:#334155;background:#eef2f5;border-radius:6px;place-items:center;width:36px;height:36px;display:grid}.content{gap:18px;padding:24px;display:grid}.notice{color:#b42318;background:#fff1f0;border:1px solid #f2b8b5;border-radius:6px;gap:8px;padding:10px 12px;font-size:13px;font-weight:650}.version-strip,.surface{background:#fff;border:1px solid #d8dee6;border-radius:8px}.version-strip{justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.version-strip span{color:#5b6776;font-size:13px}.version-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}.version-button{color:#334155;background:#eef2f5;border-radius:6px;gap:7px;min-height:34px;padding:0 10px;font-size:12px;font-weight:750}.version-button.selected{color:#17664a;background:#e7f5ee}.two-column{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:start;gap:18px;display:grid}.surface{min-width:0;padding:16px}.surface-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.surface-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.compact-select select{color:#1f2933;background:#fff;border:1px solid #cfd7e1;border-radius:6px;min-height:36px;padding:0 10px}.filters{grid-template-columns:minmax(220px,1fr) repeat(3,minmax(130px,170px));gap:10px;margin-bottom:12px;display:grid}.filters label{background:#fff;border:1px solid #cfd7e1;border-radius:6px;gap:8px;min-height:40px;padding:0 10px}.filters input,.filters select{border:0;min-width:0}.filters select{color:#1f2933;outline:none}.filter-reset{min-height:40px}.pagination-bar{color:#526071;justify-content:flex-end;align-items:center;gap:10px;margin-top:12px;font-size:13px;font-weight:700;display:flex}.table-list,.npec-list,.directory-grid,.export-list,.compact-table{gap:8px;display:grid}.row-button{color:#1f2933;text-align:left;background:#f8fafb;border-radius:6px;grid-template-columns:minmax(0,1fr) 150px;gap:14px;width:100%;min-height:62px;padding:10px 12px;display:grid}.row-button.selected{background:#eef8f6;outline:2px solid #216869}.row-button strong,.directory-item strong,.npec-row strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.row-button small,.row-meta small,.directory-item span,.directory-item small,.npec-row small{color:#657282;text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.row-meta{text-align:right;color:#334155;font-size:13px;font-weight:750}.detail-panel{position:sticky;top:16px}.definition-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 14px;display:grid}.definition-grid div{background:#f8fafb;border-radius:6px;padding:10px}.definition-grid dt{color:#657282;text-transform:uppercase;font-size:11px;font-weight:800}.definition-grid dd{color:#1f2933;text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:13px;font-weight:700;overflow:hidden}.npec-row{border-bottom:1px solid #edf1f4;grid-template-columns:minmax(0,1fr) 140px;gap:12px;padding:8px 0;display:grid}.npec-row:last-child{border-bottom:0}.npec-row>span:last-child{text-align:right}.directory-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.directory-item{color:#1f2933;text-align:left;background:#f8fafb;border:1px solid #edf1f4;border-radius:6px;width:100%;min-height:96px;padding:12px;display:block}.directory-item:hover,.row-button:hover{background:#eef2f5}.directory-item.selected{background:#eef8f6;border-color:#216869;outline:2px solid #216869}.directory-item strong{margin-bottom:8px}.directory-item small{color:#216869;margin-top:12px;font-weight:800}.empty-state{color:#657282;margin:0;font-size:14px}.state-line{color:#657282;background:#f8fafb;border-radius:6px;margin:0;padding:12px;font-size:13px;font-weight:650}.state-line.error{color:#b42318;background:#fff1f0}.tag-row{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.tag-row span{color:#334155;background:#eef2f5;border-radius:6px;padding:5px 8px;font-size:12px;font-weight:750}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.metric-card{background:#fff;border:1px solid #d8dee6;border-radius:8px;min-height:112px;padding:16px}.metric-card span{color:#657282;text-transform:uppercase;font-size:12px;font-weight:800;display:block}.metric-card strong{color:#1f2933;letter-spacing:0;margin-top:12px;font-size:26px;display:block}.wide-panel{grid-column:span 2}.split-bar{background:#dbe3ea;border-radius:6px;height:16px;overflow:hidden}.split-bar span{background:#216869;height:100%;display:block}.legend-row{color:#526071;justify-content:space-between;margin-top:10px;font-size:13px;font-weight:750;display:flex}.compact-row,.export-row{border-bottom:1px solid #edf1f4;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:14px;min-height:58px;padding:8px 0;display:grid}.compact-row:last-child,.export-row:last-child{border-bottom:0}.compact-row strong,.export-row strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.compact-row small,.export-row small{color:#657282;text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.compact-row>span:last-child,.export-row>span:last-child{text-align:right}.export-row .row-meta{justify-content:flex-end;align-items:center;gap:10px;display:flex}.opportunity-table{gap:6px;display:grid}.market-layout{gap:18px;display:grid}.market-metrics{gap:12px}.market-table{gap:6px;display:grid}.import-panel{gap:12px;display:grid}.import-form{grid-template-columns:minmax(260px,1fr) auto;align-items:center;gap:10px;display:grid}.security-panel{gap:12px;display:grid}.security-form{grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:10px;display:grid}.security-form label{color:#526071;text-transform:uppercase;gap:6px;font-size:12px;font-weight:800;display:grid}.security-form input{color:#1f2933;text-transform:none;border:1px solid #cfd7e1;border-radius:6px;min-height:42px;padding:0 10px;font-size:14px}.file-picker{color:#526071;background:#fff;border:1px solid #cfd7e1;border-radius:6px;align-items:center;gap:9px;min-height:42px;padding:0 10px;font-size:13px;font-weight:700;display:flex}.file-picker input{display:none}.file-picker span{color:#1f2933;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.import-result{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.import-result div{background:#f8fafb;border-radius:6px;padding:10px}.import-result span,.import-errors span{color:#657282;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.import-result strong{color:#1f2933;margin-top:5px;font-size:18px;display:block}.import-errors{background:#fff1f0;border:1px solid #f2b8b5;border-radius:6px;padding:10px}.import-errors ul{color:#b42318;gap:4px;margin:8px 0 0;padding-left:18px;font-size:12px;font-weight:650;display:grid}.opportunity-row{color:#334155;border-bottom:1px solid #edf1f4;grid-template-columns:minmax(280px,1fr) 76px 140px 120px 70px 70px 96px;align-items:center;gap:12px;min-height:58px;padding:9px 0;font-size:13px;display:grid}.market-row{color:#334155;text-align:left;background:0 0;border:0;border-bottom:1px solid #edf1f4;grid-template-columns:minmax(260px,1fr) 72px 72px 92px 104px 112px 124px 112px;align-items:center;gap:12px;width:100%;min-height:62px;padding:9px 0;font-size:13px;display:grid}.opportunity-row:last-child,.market-row:last-child{border-bottom:0}button.market-row{cursor:pointer}button.market-row:hover,button.market-row.selected{background:#f8fafb}.decision-list{gap:12px;display:grid}.decision-card{border-bottom:1px solid #edf1f4;grid-template-columns:minmax(280px,1.2fr) minmax(260px,.9fr);gap:14px;padding:14px 0;display:grid}.decision-card:last-child{border-bottom:0}.decision-main{gap:7px;display:grid}.decision-main>div{flex-wrap:wrap;gap:6px;display:flex}.decision-main h3{color:#1f2933;margin:0;font-size:16px}.decision-main p,.decision-main small{color:#526071;margin:0}.decision-scores,.decision-economics{gap:8px;display:grid}.decision-scores{grid-template-columns:repeat(4,minmax(0,1fr))}.decision-scores div{background:#f8fafb;border-radius:6px;padding:9px}.decision-scores span{color:#657282;font-size:11px;font-weight:800;display:block}.decision-scores strong{color:#1f2933;margin-top:4px;display:block}.decision-economics{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr))}.decision-economics span{color:#334155;background:#eef2f5;border-radius:6px;padding:8px;font-size:12px;font-weight:750}.decision-columns{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.decision-columns>div{background:#f8fafb;border-radius:6px;padding:10px}.decision-columns strong{color:#1f2933;margin-bottom:6px;display:block}.decision-columns ul{color:#526071;gap:4px;margin:0;padding-left:18px;font-size:12px;display:grid}.opportunity-head,.market-head{color:#657282;text-transform:uppercase;min-height:34px;font-size:11px;font-weight:800}.detail-score-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.detail-score-grid div,.factor-row{background:#f8fafb;border-radius:6px;padding:10px}.detail-score-grid span,.factor-row small,.definition-grid span{color:#657282;font-size:11px;font-weight:800;display:block}.detail-score-grid strong{color:#1f2933;margin-top:5px;font-size:18px;display:block}.factor-list{gap:8px;margin-bottom:14px;display:grid}.factor-row{grid-template-columns:minmax(0,1fr) 130px;align-items:start;gap:12px;display:grid}.factor-row strong{color:#1f2933;display:block}.factor-row>span:last-child{text-align:right}.portfolio-layout,.portfolio-list{gap:14px;display:grid}.portfolio-item{background:#fff;border:1px solid #edf1f4;border-radius:8px;gap:12px;padding:12px;display:grid}.portfolio-item.selected{border-color:#8ac1b9;box-shadow:inset 3px 0 #216869}.portfolio-main{grid-template-columns:minmax(260px,1fr) 150px 82px 120px;align-items:center;gap:12px;display:grid}.portfolio-controls,.portfolio-notes{gap:10px;display:grid}.portfolio-controls{grid-template-columns:repeat(3,minmax(140px,1fr)) auto auto}.portfolio-notes{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-controls label,.portfolio-notes label{gap:5px;display:grid}.portfolio-controls span,.portfolio-notes span{color:#657282;text-transform:uppercase;font-size:11px;font-weight:800}.portfolio-controls input,.portfolio-controls select,.portfolio-notes textarea{color:#1f2933;width:100%;font:inherit;background:#fff;border:1px solid #cfd7e1;border-radius:6px;padding:8px 10px}.portfolio-notes textarea{resize:vertical;min-height:74px}.portfolio-action-list,.portfolio-history-list{gap:8px;display:grid}.portfolio-action-row,.portfolio-history-row{color:#334155;background:#fff;border:1px solid #edf1f4;border-radius:8px;align-items:center;gap:12px;padding:10px 12px;display:grid}.portfolio-action-row{text-align:left;grid-template-columns:minmax(260px,1fr) 190px 92px}.portfolio-action-row.priority-high{border-left:4px solid #17664a}.portfolio-action-row.priority-medium{border-left:4px solid #bd7a00}.portfolio-action-row.priority-low{border-left:4px solid #b42318}.portfolio-action-row:hover{background:#f8fafb}.portfolio-action-main strong,.portfolio-action-main small,.portfolio-action-score strong,.portfolio-action-score small,.portfolio-history-row strong,.portfolio-history-row small{display:block}.portfolio-action-main strong,.portfolio-history-row strong{color:#1f2933;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.portfolio-action-main small,.portfolio-action-score small,.portfolio-history-row small{color:#657282;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.portfolio-action-meta{justify-items:start;gap:6px;display:grid}.portfolio-action-meta small{color:#657282;align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex}.portfolio-action-score{text-align:right}.portfolio-history-row{grid-template-columns:minmax(0,1fr) 180px}.portfolio-history-row>span:last-child{text-align:right}.intelligence-layout{gap:18px;display:grid}.intelligence-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.intelligence-card{background:#fff;border:1px solid #edf1f4;border-radius:8px;gap:9px;padding:12px;display:grid}.card-title-row{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.intelligence-card small,.assistant-answer li{color:#657282;font-size:12px}.intelligence-card ul,.assistant-answer ul{gap:5px;margin:0;padding-left:18px;display:grid}.assistant-box{gap:10px;display:grid}.assistant-box textarea{color:#1f2933;width:100%;min-height:86px;font:inherit;resize:vertical;border:1px solid #cfd7e1;border-radius:6px;padding:10px}.assistant-answer{background:#f8fafb;border-radius:8px;gap:10px;margin-top:12px;padding:12px;display:grid}.chip-button{color:#334155;cursor:pointer;background:#fff;border:1px solid #cfd7e1;border-radius:6px;padding:5px 8px;font-size:12px;font-weight:700}.opportunity-title strong,.opportunity-title small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.opportunity-title small{color:#657282;font-size:12px}.subscore-row{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.subscore-row small{color:#526071;background:#eef2f5;border-radius:6px;padding:3px 6px;font-size:11px;font-weight:750}.opportunity-badge{color:#334155;background:#eef2f5;border-radius:6px;justify-content:center;align-items:center;min-height:26px;padding:0 8px;font-size:12px;font-weight:800;display:inline-flex}.opportunity-badge.high{color:#17664a;background:#e7f5ee}.opportunity-badge.medium{color:#7a4d00;background:#fff5dc}.opportunity-badge.low{color:#b42318;background:#fff1f0}@media (width<=980px){.app-shell{display:block}.sidebar{border-bottom:1px solid #d8dee6;border-right:0;width:100%}.nav-list{grid-template-columns:repeat(8,minmax(0,1fr))}.topbar,.version-strip{flex-direction:column;align-items:flex-start}.global-search{width:100%}.two-column{grid-template-columns:1fr}.dashboard-grid,.intelligence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-panel{position:static}}@media (width<=640px){.content{padding:14px}.filters,.import-form,.security-form,.import-result,.portfolio-main,.portfolio-controls,.portfolio-notes,.portfolio-action-row,.portfolio-history-row,.row-button,.npec-row,.definition-grid,.detail-score-grid,.factor-row,.dashboard-grid,.intelligence-grid,.compact-row,.export-row,.opportunity-row,.market-row,.decision-card,.decision-economics,.decision-columns{grid-template-columns:1fr}.decision-scores{grid-template-columns:repeat(2,minmax(0,1fr))}.row-meta,.npec-row>span:last-child,.compact-row>span:last-child,.export-row>span:last-child,.portfolio-action-score,.portfolio-history-row>span:last-child,.factor-row>span:last-child{text-align:left}.wide-panel{grid-column:auto}.export-row .row-meta{flex-direction:column;align-items:flex-start}}
