:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f7f8fb;color:#172033;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#e2e8f099,#f7f8fb00 280px),#f7f8fb}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}textarea{min-height:96px;resize:vertical}.login-shell,.loading{min-height:100vh;display:grid;place-items:center;padding:24px}.login-panel{width:min(100%,420px);background:#fff;border:1px solid #d9e1ec;border-radius:8px;padding:34px;box-shadow:0 24px 70px #0f172a1a}.login-panel h1,.topbar h1,.hero-band h2,.panel h3{margin:0;letter-spacing:0}.login-panel p{margin:10px 0 26px;color:#667085}.brand-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;background:#14213d;color:#fff;margin-bottom:18px}.brand-mark.small{width:36px;height:36px;margin:0}.login-form,.form-grid{display:grid;gap:14px}.field{display:grid;gap:7px;color:#344054;font-size:13px;font-weight:700}.field.wide{grid-column:1 / -1}.calc-preview{align-self:end;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;border:1px solid #d9e1ec;border-radius:7px;padding:0 12px;background:#f8fafc}.calc-preview span{color:#667085;font-size:13px;font-weight:800}.calc-preview strong{color:#172033}input,select,textarea{width:100%;border:1px solid #cbd5e1;border-radius:7px;padding:11px 12px;background:#fff;color:#172033;outline:none}input:focus,select:focus,textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.primary-button,.secondary-button,.icon-button,.sidebar nav button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;border-radius:7px;transition:background .15s ease,color .15s ease,border-color .15s ease}.primary-button{padding:0 16px;background:#14213d;color:#fff;font-weight:800}.secondary-button{padding:0 13px;background:#eef4ff;color:#1849a9;border:1px solid #c7d7fe;font-weight:800}.secondary-button:disabled{opacity:.6;cursor:not-allowed}.inline-control{display:grid;grid-template-columns:1fr auto;gap:8px}.stock-preview{grid-column:1 / -1;display:grid;gap:12px;border:1px solid #d9e1ec;border-radius:8px;padding:14px;background:#fcfcfd}.stock-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.stock-preview-head strong,.price-block strong{display:block}.price-block{text-align:right}.mini-chart{width:100%;height:74px;color:#2563eb;background:linear-gradient(180deg,#eff6ff,#fff);border:1px solid #e4e7ec;border-radius:7px}.chart-empty{display:grid;place-items:center;min-height:74px;border:1px solid #e4e7ec;border-radius:7px;color:#667085;background:#f8fafc;font-weight:800}.stock-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.stock-facts span{min-height:34px;display:flex;align-items:center;padding:0 10px;border-radius:7px;background:#f2f4f7;color:#344054;font-size:12px;font-weight:900}.primary-button:disabled{opacity:.55;cursor:not-allowed}.form-error{color:#b42318;background:#fff1f0;border:1px solid #fecdca;border-radius:7px;padding:10px 12px;font-size:14px}.app-shell{display:grid;grid-template-columns:264px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid #d9e1ec;padding:22px;display:flex;flex-direction:column;gap:28px}.app-title{display:flex;align-items:center;gap:12px}.app-title strong{display:block;font-size:17px}.app-title small,.sidebar-status small,small{color:#667085}.sidebar nav{display:grid;gap:7px}.sidebar nav button{justify-content:flex-start;padding:0 12px;background:transparent;color:#475467;font-weight:700}.sidebar nav button.active,.sidebar nav button:hover{background:#eef4ff;color:#1849a9}.sidebar-settings-button{justify-content:flex-start;padding:0 12px;background:transparent;color:#475467;font-weight:700}.sidebar-settings-button.active,.sidebar-settings-button:hover{background:#eef4ff;color:#1849a9}.sidebar-status{margin-top:auto;border-top:1px solid #e4e7ec;padding-top:18px;display:grid;gap:6px}.sidebar-status p{margin:0;font-weight:800}.good{color:#087443;font-weight:800}.muted{color:#667085;font-weight:800}.content{padding:28px;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.eyebrow{margin:0 0 5px;color:#667085;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.top-actions{display:flex;gap:8px}.icon-button{width:42px;background:#fff;color:#344054;border:1px solid #d9e1ec}.icon-button:hover{border-color:#98a2b3}.danger-button{color:#b42318;background:#fff1f0;border-color:#fecdca}.danger-button:hover{border-color:#fecdca;background:#fff8f7}.view-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.dashboard-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.hero-band{grid-column:1 / -1;display:flex;align-items:flex-end;justify-content:space-between;gap:22px;padding:28px;border-radius:8px;background:linear-gradient(135deg,#14213df5,#193e58f2),#14213d;color:#fff}.hero-band .eyebrow{color:#c7d7fe}.hero-band h2{max-width:720px;font-size:32px;line-height:1.2}.hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:10px}.metric{min-width:132px;padding:14px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#ffffff1a}.metric span{display:block;color:#dbe7ff;font-size:12px;font-weight:800}.metric strong{display:block;margin-top:6px;font-size:18px}.metric.up strong,.gain{color:#087443}.metric.down strong,.loss{color:#b42318}.hero-band .metric.up strong{color:#9ff0c0}.hero-band .metric.down strong{color:#ffb4ab}.panel{background:#fff;border:1px solid #d9e1ec;border-radius:8px;padding:20px;min-width:0}.dashboard-grid .panel{grid-column:span 3}.wide-panel,.full-panel{grid-column:1 / -1}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.section-head svg{color:#475467}.stack-list{display:grid;gap:12px}.small-gap{margin-top:16px;gap:8px}.channel-form{margin-top:14px}.channel-tools{display:grid;gap:8px;margin-top:16px}.feed-row,.simple-row,.company-row,.holding-row,.pnl-row,.rule-item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:12px;border:1px solid #e4e7ec;border-radius:8px;background:#fcfcfd}.feed-row{justify-content:flex-start}.channel-row{align-items:center}.channel-row.enabled{border-color:#b7e4cb;background:#f1fbf5}.channel-row button{flex:0 0 auto}.feed-row.tight{padding:10px}.feed-row p,.company-card p{margin:5px 0;color:#344054;line-height:1.55}.date-chip,.status-pill{flex:0 0 auto;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:900;background:#eef2f6;color:#344054}.status-pill.ready{background:#fff7ed;color:#b45309}.status-pill.holding{background:#ecfdf3;color:#087443}.status-pill.complete{background:#eef4ff;color:#1849a9}.status-pill.selling{background:#fff7ed;color:#b45309}.status-pill.sold{background:#eef2f6;color:#344054}.status-pill.watching{background:#eef4ff;color:#1849a9}.empty{margin:0;color:#667085;line-height:1.5}.rule-strip{display:flex;gap:10px;flex-wrap:wrap}.sector-strip{margin-top:16px}.sector-dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:7px}.rule{display:inline-flex;align-items:center;min-height:36px;padding:8px 11px;border-radius:999px;background:#f2f4f7;color:#344054;font-size:13px;font-weight:800}.rule.hard{background:#fff1f0;color:#b42318}.form-panel{align-self:start}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .wide{grid-column:1 / -1}.form-grid .primary-button{justify-self:start}.form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.industry-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.summary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.summary-card{display:grid;gap:12px;border:1px solid #e4e7ec;border-radius:8px;padding:15px;background:#fcfcfd}.summary-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.summary-head strong{display:block}.summary-card ul{margin:0;padding-left:18px;color:#344054;line-height:1.55}.summary-card li+li{margin-top:7px}.industry-column{border:1px solid #e4e7ec;border-radius:8px;padding:14px;background:#fcfcfd}.industry-title{display:flex;align-items:center;gap:9px;margin-bottom:12px}.industry-title span{width:10px;height:10px;border-radius:50%}.industry-title small{margin-left:auto;font-weight:800}.company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.company-card{display:grid;gap:12px;border:1px solid #e4e7ec;border-radius:8px;padding:16px;background:#fcfcfd}.company-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.company-card-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px;flex:0 0 auto}.company-meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.company-note-block{display:grid;gap:4px}.company-note-block strong{color:#172033;font-size:13px}.buy-progress{display:grid;gap:8px;border:1px solid #e4e7ec;border-radius:8px;padding:10px 12px;background:#fff}.buy-progress.compact{background:#f8fafc}.buy-progress-head{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#344054;font-size:13px;font-weight:800}.buy-progress-head strong{color:#172033;white-space:nowrap}.buy-progress-track{height:8px;overflow:hidden;border-radius:999px;background:#eef2f6}.buy-progress-track span{display:block;height:100%;border-radius:inherit;background:#2563eb}.account-buy-panel,.account-holding-list{display:grid;gap:10px;border:1px solid #d9e1ec;border-radius:8px;padding:12px;background:#fff}.account-buy-head{display:flex;align-items:end;justify-content:space-between;gap:12px}.account-buy-grid,.account-holding-list{display:grid;gap:8px}.account-buy-entry{display:grid;grid-template-columns:minmax(150px,.9fr) minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:end}.account-buy-row,.account-holding-row{display:grid;grid-template-columns:92px minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center}.account-buy-row strong,.account-holding-row strong{color:#172033}.account-holding-row{border:1px solid #e4e7ec;border-radius:8px;padding:9px 10px;background:#fcfcfd}.account-holding-row span{color:#344054;font-weight:900}.account-view .form-panel{align-self:start}.account-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.account-summary-card{display:grid;gap:6px;min-height:116px;text-align:left;border:1px solid #e4e7ec;border-radius:8px;padding:14px;background:#fcfcfd;color:#344054}.account-summary-card.active{border-color:#1849a9;background:#eef4ff}.account-summary-card strong{color:#172033;font-size:16px;font-weight:950}.account-summary-card span,.account-summary-card small{color:#667085;font-size:13px;font-weight:900}.account-summary-card small.gain{color:#087443}.account-summary-card small.loss{color:#b42318}.account-position-table{display:grid;overflow-x:auto;border:1px solid #e4e7ec;border-radius:8px;background:#fff}.account-position-head,.account-position-row{display:grid;grid-template-columns:150px 140px 96px 110px 130px minmax(170px,1fr);min-width:880px;gap:12px;align-items:center;padding:12px;border-bottom:1px solid #e4e7ec}.account-position-head{color:#667085;font-size:12px;font-weight:900;text-transform:uppercase;background:#f8fafc}.account-position-row strong,.account-position-row span{min-width:0;overflow-wrap:anywhere}.account-position-row strong{color:#172033}.account-position-row span{color:#344054;font-weight:800}.account-position-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.interest-sector-box{display:grid;gap:12px;border:1px solid #d9e1ec;border-radius:8px;padding:14px;background:#fff}.interest-sector-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.interest-sector-head strong{display:block;color:#172033}.grade-pill,.score-pill,.muted-chip,.ready-chip,.move-chip,.warning-chip{display:inline-flex;align-items:center;gap:6px;min-height:30px;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900}.grade-pill.high,.grade-toggle.high.active{background:#ecfdf3;color:#087443;border-color:#b7e4cb}.grade-pill.mid,.grade-toggle.mid.active{background:#fff7ed;color:#b45309;border-color:#fed7aa}.grade-pill.low,.grade-toggle.low.active{background:#fff1f0;color:#b42318;border-color:#fecdca}.grade-pill.empty,.muted-chip,.score-pill{background:#f2f4f7;color:#344054;border:1px solid #e4e7ec}.ready-chip,.move-chip.gain{background:#ecfdf3;color:#087443;border:1px solid #b7e4cb}.move-chip.loss,.warning-chip{background:#fff1f0;color:#b42318;border:1px solid #fecdca}.warning-text{color:#b42318;font-size:13px;font-weight:900}.sector-picker,.registration-panel,.sector-grade-panel{display:grid;gap:12px;border:1px solid #d9e1ec;border-radius:8px;padding:14px;background:#fcfcfd}.sector-picker-head,.portfolio-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sector-picker-head small,.checklist-head small{display:block;margin-top:4px;color:#667085;font-size:12px;font-weight:800}.sector-filter-input{width:100%}.sector-choice-list{display:flex;flex-wrap:wrap;gap:8px}.sector-choice-scroll{max-height:220px;overflow-y:auto;align-content:flex-start;border:1px solid #e4e7ec;border-radius:8px;padding:10px;background:#fff}.sector-choice{display:inline-flex;align-items:center;gap:7px;min-height:38px;border:1px solid #e4e7ec;border-radius:7px;padding:0 11px;background:#fff;color:#344054;font-weight:900}.sector-choice.active{border-color:#1849a9;background:#eef4ff;color:#1849a9}.sector-choice.static{cursor:default}.registration-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.registration-check{display:flex;align-items:flex-start;gap:10px;min-height:48px;border:1px solid #e4e7ec;border-radius:8px;padding:10px;background:#fff;color:#344054;font-weight:800;line-height:1.4}.registration-check input{width:18px;height:18px;flex:0 0 auto;margin-top:1px}.checklist-actions{display:inline-flex;align-items:center;gap:8px}.idea-detail-list{display:grid;gap:9px;margin:14px 0 0}.idea-detail-list div{display:grid;gap:4px}.idea-detail-list dt{color:#667085;font-size:12px;font-weight:900;text-transform:uppercase}.idea-detail-list dd{margin:0;color:#344054;line-height:1.5}.idea-detail-list.compact dd{font-size:13px}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.portfolio-card{display:grid;gap:12px;border:1px solid #e4e7ec;border-radius:8px;padding:16px;background:#fcfcfd}.portfolio-card.warning{border-color:#fecdca;background:#fff8f7}.portfolio-card p{margin:0;color:#344054;line-height:1.55}.weight-box{min-width:72px;text-align:right}.portfolio-status-box{display:grid;justify-items:end;gap:8px}.weight-box span{display:block;color:#667085;font-size:12px;font-weight:900}.weight-box strong{display:block;color:#172033;font-size:18px}.warning-row,.portfolio-card-actions,.detail-facts,.detail-trade-list{display:flex;flex-wrap:wrap;gap:8px}.portfolio-card-actions{align-items:center}.portfolio-detail{display:grid;gap:12px;border-top:1px solid #e4e7ec;padding-top:12px}.detail-facts span{border-radius:7px;padding:8px 10px;background:#f2f4f7;color:#344054;font-size:12px;font-weight:900}.trade-progress-box{display:grid;gap:8px;border:1px solid #fed7aa;border-radius:8px;padding:10px 12px;background:#fffaf5}.trade-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#344054;font-size:13px;font-weight:900}.trade-progress-head strong{color:#b45309}.trade-progress-track{height:8px;overflow:hidden;border-radius:999px;background:#ffedd5}.trade-progress-track span{display:block;height:100%;border-radius:inherit;background:#f97316}.mini-trade-row{display:grid;grid-template-columns:92px 82px 118px 90px auto;gap:8px;align-items:center;width:100%;border:1px solid #e4e7ec;border-radius:8px;padding:8px;background:#fff}.buy-complete-box{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border-top:1px solid #e4e7ec;padding-top:14px}.wide-preview{grid-column:1 / -1}.sell-quick-box{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #fed7aa;border-radius:8px;padding:10px 12px;background:#fffaf5;color:#344054;font-size:13px;font-weight:900}.sell-quick-box div{display:flex;flex-wrap:wrap;gap:6px}.limit-box{grid-column:1 / -1;display:grid;gap:5px;border:1px solid #d9e1ec;border-radius:8px;padding:12px;background:#f8fafc}.limit-box strong{color:#172033}.limit-box span,.limit-box small{color:#667085;line-height:1.45}.limit-box.danger{border-color:#fecdca;background:#fff8f7}.limit-box.danger strong,.limit-box.danger small{color:#b42318}.unit-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.unit-input span{min-height:42px;display:inline-flex;align-items:center;padding:0 12px;border:1px solid #d9e1ec;border-radius:7px;background:#f8fafc;color:#344054;font-weight:900;white-space:nowrap}.sector-allocation-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:stretch}.sector-limit-list{display:grid;gap:12px}.sector-limit-row{display:grid;gap:12px;border:1px solid #e4e7ec;border-radius:8px;padding:14px;background:#fcfcfd}.sector-limit-row.danger{border-color:#fecdca;background:#fff8f7}.sector-limit-head{display:flex;justify-content:space-between;gap:12px}.sector-limit-head strong{display:inline-flex;align-items:center;gap:7px}.sector-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sector-metric-grid div{display:grid;gap:4px;min-height:58px;border:1px solid #e4e7ec;border-radius:8px;padding:9px 10px;background:#fff}.sector-metric-grid span{color:#667085;font-size:12px;font-weight:900}.sector-metric-grid strong{color:#172033;font-size:14px;overflow-wrap:anywhere}.sector-company-list{display:grid;gap:10px}.sector-company-list .portfolio-card{background:#fff}.sector-company-list .portfolio-card.warning{background:#fff8f7}.allocation-chart-stack{display:grid;align-content:start;gap:16px}.allocation-chart-card{display:grid;gap:14px;border:1px solid #e4e7ec;border-radius:8px;padding:16px;background:#fcfcfd}.allocation-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.allocation-chart-head strong{display:block;color:#172033;font-size:15px;font-weight:950}.allocation-chart-head small{display:block;margin-top:3px;color:#667085;font-size:12px;font-weight:800}.pie-stage{width:min(100%,292px);margin:0 auto}.allocation-pie-svg{display:block;width:100%;aspect-ratio:1;overflow:visible;filter:drop-shadow(0 18px 30px rgba(15,23,42,.14))}.pie-slice{stroke:#fff;stroke-width:1.4;stroke-linejoin:round}.pie-label-percent,.pie-label-name{pointer-events:none;dominant-baseline:middle;fill:#fff;paint-order:stroke;stroke:#0f172a6b;stroke-linejoin:round;text-shadow:0 1px 2px rgba(15,23,42,.28)}.pie-label-percent{font-size:5.7px;font-weight:950;stroke-width:.9px}.pie-label-percent.outside{fill:#172033;stroke:#fff;stroke-width:1.6px;text-shadow:none}.pie-label-name{font-size:3.8px;font-weight:900;stroke-width:.65px}.allocation-legend-list{display:grid;gap:8px}.allocation-legend-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;border-radius:8px;padding:8px 10px;background:#fff;border:1px solid #e4e7ec}.allocation-legend-row i{width:10px;height:32px;border-radius:999px;flex:0 0 auto}.allocation-legend-row strong,.allocation-legend-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.allocation-legend-row strong{color:#344054;font-size:13px;font-weight:900}.allocation-legend-row small{margin-top:2px;color:#667085;font-size:11px;font-weight:800}.allocation-legend-row b{color:#172033;font-size:15px;font-weight:950;text-align:right}.limit-meter{height:9px;overflow:hidden;border-radius:999px;background:#eef2f6}.limit-meter span{display:block;height:100%;min-width:2px}.trade-table,.record-table{display:grid;overflow-x:auto}.trade-head,.trade-row{display:grid;grid-template-columns:110px 1.1fr 70px minmax(180px,1fr) minmax(180px,1fr) 86px;min-width:780px;gap:12px;align-items:center;padding:12px;border-bottom:1px solid #e4e7ec}.trade-head{color:#667085;font-size:12px;font-weight:900;text-transform:uppercase}.record-head,.record-row{display:grid;grid-template-columns:96px 140px 96px minmax(220px,1.4fr) 96px minmax(180px,1fr) minmax(180px,1fr);min-width:1120px;gap:12px;align-items:start;padding:12px;border-bottom:1px solid #e4e7ec}.interest-record-table .record-head,.interest-record-table .record-row{grid-template-columns:110px 160px minmax(260px,1fr);min-width:620px}.trade-record-table .record-head,.trade-record-table .record-row{grid-template-columns:96px 140px 92px 118px 86px 100px minmax(160px,1fr) minmax(160px,1fr) 78px;min-width:1180px}.account-trade-record-table .record-head,.account-trade-record-table .record-row{grid-template-columns:96px 150px 118px 86px 100px 110px minmax(180px,1fr) 78px;min-width:1000px}.record-head{color:#667085;font-size:12px;font-weight:900;text-transform:uppercase}.record-row span,.record-row strong{min-width:0;color:#344054;line-height:1.45;word-break:keep-all;overflow-wrap:anywhere}.record-row strong{color:#172033}.record-empty{padding:14px}.rules-list{display:grid;gap:10px}.journal-holding-table{display:grid;overflow-x:auto;border:1px solid #e4e7ec;border-radius:8px;background:#fff}.journal-holding-head,.journal-holding-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(120px,.8fr) 92px 110px 110px 92px 100px;min-width:880px;gap:12px;align-items:center;padding:12px;border-bottom:1px solid #e4e7ec}.journal-holding-head{color:#667085;font-size:12px;font-weight:900;text-transform:uppercase;background:#f8fafc}.journal-holding-row:last-child{border-bottom:0}.journal-holding-row strong{display:grid;gap:3px;color:#172033}.journal-holding-row small{font-weight:800}.journal-holding-row span{min-width:0;color:#344054;font-size:13px;font-weight:900}.journal-price-signal.gain{color:#087443}.journal-price-signal.loss{color:#b42318}.checklist-panel{grid-column:1 / -1;display:grid;gap:10px;border:1px solid #d9e1ec;border-radius:8px;padding:14px;background:#fcfcfd}.checklist-head,.journal-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.checklist-head span{border-radius:999px;padding:5px 9px;background:#eef4ff;color:#1849a9;font-size:12px;font-weight:900}.check-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(140px,.8fr);gap:10px;align-items:center;padding:10px;border:1px solid #e4e7ec;border-radius:8px;background:#fff}.check-toggle{display:flex;align-items:center;gap:10px;color:#344054;font-weight:800;line-height:1.4}.check-toggle input{width:18px;height:18px;flex:0 0 auto}.journal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.journal-card{display:grid;gap:10px;border:1px solid #e4e7ec;border-radius:8px;padding:15px;background:#fcfcfd}.journal-card p{margin:0;color:#344054;line-height:1.55}.journal-card-head strong,.journal-card-head small{display:block}.journal-date-tools,.journal-card-actions,.row-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}.journal-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.journal-meta span{border-radius:999px;padding:6px 9px;background:#f2f4f7;color:#344054;font-size:12px;font-weight:900}.journal-save-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.journal-form-vertical{grid-template-columns:minmax(0,1080px);justify-content:start;align-items:start}.journal-form-vertical .journal-date-tools{justify-content:flex-start}.sector-comment-panel{display:grid;gap:12px;border:1px solid #d9e1ec;border-radius:8px;padding:14px;background:#fff}.sector-comment-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.sector-comment-head span{border-radius:999px;padding:5px 9px;background:#eef4ff;color:#1849a9;font-size:12px;font-weight:900}.sector-comment-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;max-width:540px}.sector-comment-grid{overflow-x:auto;border:1px solid #e4e7ec;border-radius:8px}.sector-comment-header,.sector-comment-row{display:grid;grid-template-columns:minmax(130px,.42fr) 132px 92px 92px 154px minmax(500px,2.1fr);gap:10px;align-items:center;min-width:1120px;padding:10px 12px}.sector-comment-header{background:#f8fafc;color:#667085;font-size:12px;font-weight:900}.sector-comment-row{border-top:1px solid #e4e7ec;background:#fff}.sector-comment-name{display:inline-flex;align-items:center;gap:8px;min-width:0;color:#172033}.sector-comment-actions{display:inline-flex;align-items:center;gap:6px}.sector-comment-actions .compact-button{min-height:32px;padding:0 9px}.sector-comment-check{display:grid;place-items:center}.sector-comment-check input{width:18px;height:18px}.sector-tone-toggle{display:inline-grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.sector-tone-button{min-height:32px;border:1px solid #d9e1ec;border-radius:7px;background:#fff;color:#344054;font-size:12px;font-weight:900}.sector-tone-button.positive.active{border-color:#b7e4cb;background:#ecfdf3;color:#087443}.sector-tone-button.neutral.active{border-color:#fed7aa;background:#fff7ed;color:#b45309}.sector-tone-button.negative.active{border-color:#fecdca;background:#fff1f0;color:#b42318}.sector-comment-row textarea{min-height:96px;resize:vertical}.journal-large-textarea{min-height:360px;resize:vertical}.journal-thought-textarea{min-height:180px;resize:vertical}.journal-sector-list{display:grid;gap:0;overflow-x:auto;border:1px solid #e4e7ec;border-radius:8px;background:#fff}.journal-sector-list-head,.journal-sector-row{display:grid;grid-template-columns:126px 72px minmax(220px,.55fr) minmax(420px,1fr) 76px;gap:10px;align-items:center;min-width:980px;padding:10px 12px}.journal-sector-list-head{background:#f8fafc;color:#667085;font-size:12px;font-weight:900}.journal-sector-row{border-top:1px solid #e4e7ec}.journal-sector-row.active{background:#eef4ff}.journal-date-link{border:0;background:transparent;color:#172033;font-weight:900;text-align:left}.journal-rule-count{color:#344054;font-size:12px;font-weight:900}.journal-sector-comments{display:flex;gap:8px;min-width:0;overflow-x:auto;padding-bottom:2px}.journal-sector-note{display:inline-flex;align-items:center;gap:7px;min-height:34px;flex:0 0 auto;border:1px solid #d9e1ec;border-radius:7px;padding:6px 9px;background:#fff;color:#344054}.journal-sector-note strong{color:#172033;white-space:nowrap}.journal-sector-note.positive strong{color:#087443}.journal-sector-note.neutral strong{color:#b45309}.journal-sector-note.negative strong{color:#b42318}.journal-sector-note span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-daily-comment{min-width:0;border:0;background:transparent;color:#344054;font-weight:800;line-height:1.45;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-board{display:grid;gap:10px;max-height:440px;overflow-y:auto;padding-right:4px}.journal-board-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid #e4e7ec;border-radius:8px;padding:10px;background:#fcfcfd}.journal-board-row.active{border-color:#1849a9;background:#eef4ff}.journal-board-main{display:grid;grid-template-columns:118px minmax(0,1fr) 170px;gap:10px;align-items:center;min-height:42px;border:0;padding:0;background:transparent;color:#344054;text-align:left}.journal-board-main strong{color:#172033}.journal-board-main span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-board-main small{color:#667085;font-weight:900;text-align:right}.sector-grade-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sector-grade-scroll{max-height:430px;overflow-y:auto;padding-right:4px}.sector-grade-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e4e7ec;border-radius:8px;padding:10px;background:#fff}.sector-grade-name{display:inline-flex;align-items:center;gap:8px;min-width:0}.grade-toggle-group{display:inline-flex;gap:6px;flex:0 0 auto}.grade-toggle{min-width:36px;min-height:34px;border:1px solid #d9e1ec;border-radius:7px;background:#fff;color:#344054;font-weight:900}.sector-add-form{margin-bottom:14px}.interest-sector-add-form{grid-template-columns:minmax(0,1fr) minmax(180px,.65fr) auto}.sector-list-view{margin-top:8px}.settings-message{display:grid;gap:6px;margin-top:10px}.sector-admin-list{display:grid;gap:10px;max-height:420px;overflow-y:auto;margin-top:12px;padding-right:4px}.sector-admin-list.compact-list{max-height:260px;margin-top:0}.sector-admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid #e4e7ec;border-radius:8px;padding:10px;background:#fcfcfd}.sector-admin-main{display:inline-flex;align-items:flex-start;min-width:0;gap:8px}.sector-admin-main strong,.sector-admin-main small{display:block;min-width:0}.sector-admin-main strong{color:#172033;overflow-wrap:anywhere}.sector-admin-main small{margin-top:3px}.sector-admin-edit{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.65fr) auto auto;gap:8px;align-items:center}.sector-name-edit{grid-template-columns:minmax(0,1fr) auto auto}.interest-sector-edit strong{min-width:0;color:#172033}.sector-admin-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}.sector-position-control{display:inline-flex;align-items:center;gap:6px;color:#667085;font-size:12px;font-weight:900}.sector-position-control select{width:72px;min-height:34px;padding:0 8px}.icon-compact-button{width:34px;padding:0}.settings-hint{margin:8px 0 0;color:#667085;font-size:13px;font-weight:800}.journal-section-tags{display:flex;flex-wrap:wrap;gap:7px}.journal-section-tags span{border-radius:999px;padding:5px 8px;background:#eef4ff;color:#1849a9;font-size:12px;font-weight:900}.rule-item{justify-content:flex-start;align-items:center}.rule-item small{display:block;margin-top:4px;font-weight:900}.row-actions{margin-left:auto}.compact-button{min-height:34px;padding:0 10px;font-size:12px}.rule-item.hard{border-color:#fecdca;background:#fff8f7}@media (max-width: 1060px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:14px;border-right:0;border-bottom:1px solid #d9e1ec}.sidebar nav{grid-template-columns:repeat(5,minmax(0,1fr))}.sidebar nav button{justify-content:center;padding:0 8px}.sidebar-status{display:none}.content{padding:18px}.hero-band{align-items:stretch;flex-direction:column}.hero-metrics,.industry-columns,.summary-list{grid-template-columns:1fr}}@media (max-width: 760px){.view-grid,.dashboard-grid,.form-grid,.company-grid,.portfolio-grid,.journal-list,.journal-board-row,.journal-board-main,.journal-sector-list-head,.journal-sector-row,.sector-allocation-layout,.sector-metric-grid,.registration-check-grid,.sector-grade-grid,.sector-admin-row,.sector-admin-edit,.interest-sector-add-form,.sector-comment-add,.check-row,.account-summary-grid,.account-position-head,.account-position-row,.account-buy-entry,.account-buy-row,.account-holding-row,.buy-complete-box{grid-template-columns:1fr}.sector-grade-row,.portfolio-card-head,.sector-picker-head{align-items:stretch;flex-direction:column}.portfolio-status-box,.weight-box,.journal-board-main small{justify-items:start;text-align:left}.buy-progress-head{align-items:flex-start;flex-direction:column}.buy-progress-head strong{white-space:normal}.dashboard-grid .panel,.wide-panel,.full-panel{grid-column:auto}.topbar{align-items:flex-start}.hero-band h2{font-size:26px}.hero-metrics{grid-template-columns:1fr}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
