[hidden]{display:none!important}
#plan-impact table{width:100%;font-size:13px;border-collapse:collapse}#plan-impact td,#plan-impact th{padding:7px 5px;text-align:left;border-bottom:1px solid var(--border,#dde4d7)}#plan-impact{display:block}#plan-impact h3{margin-top:0}.roadmap .actions{flex-wrap:wrap}
/* Desktop workbench. Phone layout and PWA intentionally deferred. */
.report-goal{display:flex;align-items:center;gap:30px;margin-top:22px}.report-goal>div:first-child{flex:1}.report-goal p{color:var(--muted);font-size:10px;margin-bottom:0}.report-goal .progress{width:220px}.report-goal>.link{white-space:nowrap}
html{min-width:1280px}body{min-width:1280px;font-size:13px}.sidebar{width:246px;padding:32px 20px 22px}.brand{font-size:28px}.brand small{font-size:6px;letter-spacing:1.1px}.nav-label{font-size:8px;margin-top:40px}nav{gap:8px}nav button{font-size:11px;padding:15px 11px;gap:10px}.nav-icon{font-size:21px;width:22px}nav small{font-size:8px}.sidebar-bottom{margin-top:auto}.settings-nav{display:flex;align-items:center;gap:10px;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:13px 12px;font-size:11px;color:var(--ink);width:100%;text-align:left}.settings-nav span{font-size:19px;color:#8ba66e}.settings-nav.active{background:var(--soft)}.desktop-note{padding:19px 9px 0;font-size:9px;color:var(--muted)}.desktop-note b{font-size:9px;font-weight:650}.desktop-note small{display:block;font-size:8px;line-height:1.8;margin-top:6px}.data-note{margin-top:18px}main{margin-left:246px}.topbar{height:76px;padding:0 36px}.workspace{max-width:1760px;padding:34px 36px 22px}.page-heading{margin-bottom:23px}h1{font-size:30px;letter-spacing:-1.1px}.page-heading p{font-size:11px}.eyebrow{font-size:8px}.context-bar{font-size:10px;margin-bottom:23px}.context-bar .link{font-size:10px}.card{padding:24px;border-radius:12px}.card-title{margin-bottom:21px}.card-title h2{font-size:16px}.card-title p{font-size:10px;line-height:1.9}.btn{font-size:11px}.btn.small{font-size:10px;padding:10px 13px}.link{font-size:10px}.hint{font-size:10px;line-height:1.9}.section-label{font-size:11px}.compact-capital{display:flex;align-items:center;gap:31px;padding:20px 24px;border:1px solid var(--line);border-radius:10px;background:var(--card);margin-bottom:22px;min-height:88px}.compact-capital>div{min-width:150px;padding-right:26px;border-right:1px solid var(--line)}.compact-capital>div:nth-child(4){border:0;min-width:130px}.compact-capital span{display:block;color:var(--muted);font-size:9px}.compact-capital b{display:block;margin-top:8px;font-size:21px;font-weight:750;letter-spacing:-.5px}.compact-capital b.small-value{font-size:12px;font-weight:600;letter-spacing:0;margin-top:11px}.compact-capital>.link{margin-left:auto;white-space:nowrap;font-size:9px}.control-top{display:grid;grid-template-columns:1.45fr 1fr;gap:20px;margin-bottom:22px}.next-card h2{font-size:19px}.next-card p{font-size:11px;max-width:100%;line-height:1.9}.concentration-values{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0 20px}.concentration-values b{display:block;font-size:29px;letter-spacing:-1px}.concentration-values span{display:block;font-size:9px;margin-top:8px;color:var(--muted)}.balance-card>.card-title h2{font-size:23px}.sector{padding:21px 0}.sector-summary-head>strong{font-size:13px}.status{font-size:9px}.bar-row{grid-template-columns:43px 1fr 85px 130px;font-size:9px}.bar-track{height:9px}.bar-row b,.bar-row small{font-size:10px}.sector-foot{font-size:9px}.company-head{font-size:11px}.company-head small{font-size:9px}.company-right>b{font-size:11px}.sector-sources{margin-top:17px}.issuer-overview{margin-top:22px}.security-label{display:inline-flex;align-items:center;justify-content:center;border:1px solid #a8bc8d66;background:var(--soft);color:#72904e;padding:7px 9px;border-radius:7px;font-size:10px;font-weight:800;letter-spacing:.2px;min-width:50px;white-space:nowrap}.asset-name .security-label{min-width:60px}.sector-tag{padding:6px 8px;border:1px solid var(--line);border-radius:5px;background:var(--bg);font-size:9px;color:var(--muted)}.wb-table table{font-size:11px}.wb-table th{font-size:9px;padding:15px 13px}.wb-table td{padding:17px 13px}.wb-table td small{font-size:9px;line-height:1.7}.wb-table .asset-name b{font-size:11px}.price-input{font-size:11px;width:100px}.price-time{font-size:8px!important;max-width:145px}.portfolio-card{padding:0}.portfolio-card>.card-title{padding:22px 24px 0}.tabs{gap:23px}.tabs button{font-size:11px}.tabs span{font-size:8px}.table-toolbar{padding:0 24px 19px}.table-toolbar input{font-size:11px;width:290px;padding:10px 12px}.table-note{font-size:10px;line-height:1.9;padding:15px 24px}.input-key,.calculated-key{padding:4px 6px;border-radius:4px;font-size:8px;font-weight:700;margin-right:5px}.input-key{background:var(--card);border:1px solid var(--line)}.calculated-key{background:var(--soft);color:#839669}.portfolio-footer{padding:15px 24px}.portfolio-footer p,.portfolio-footer .link{font-size:9px}.callout p{font-size:10px}.workbook-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 24px 23px}.workbook-intro h3{font-size:13px}.workbook-intro p{font-size:10px;color:var(--muted);margin:7px 0 0;max-width:510px}.draft-grid{min-width:1680px}.draft-grid th{text-align:left}.draft-grid input,.draft-grid select{width:100%;min-width:75px;border:1px solid #cbd7be;border-radius:5px;padding:9px 7px;background:var(--card);font-size:10px;color:var(--ink)}.draft-grid input:focus,.draft-grid select:focus{outline:2px solid #8faa68}.draft-grid td{padding:10px 7px!important;min-width:100px;background:var(--bg)}.draft-grid td:first-child{min-width:35px;width:35px;font-size:9px;text-align:center}.draft-grid td:nth-child(2){min-width:165px}.draft-grid td:nth-child(3){min-width:135px}.draft-grid td:nth-child(4){min-width:110px}.draft-grid td:nth-child(9){min-width:175px}.draft-grid td:nth-child(11){min-width:180px}.draft-grid td:last-child{min-width:36px;width:36px}.draft-grid .invalid-row td{background:#b9765f12}.draft-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 24px;border-top:1px solid var(--line)}.draft-actions>span{font-size:10px;color:var(--muted)}.batch-preview{margin:0 24px 22px;border:1px solid #a6bb8966;border-radius:8px;background:var(--soft);padding:20px}.batch-preview h3{font-size:14px}.batch-preview p{font-size:11px;line-height:1.8;margin:9px 0}.batch-preview.has-errors{background:#be89610b;border-color:#b2785d55}.preview-totals{border-top:1px solid var(--line);padding:15px 0;font-weight:650;font-size:12px;margin-top:15px}.learning-note{background:var(--bg);padding:20px 24px;border-top:1px solid var(--line)}.learning-note h3{font-size:12px}.learning-note p{font-size:10px;line-height:1.9;color:var(--muted);max-width:1200px}.column-format{font-size:10px;line-height:1.8;background:var(--bg);padding:12px;border-radius:6px;color:var(--muted)}#paste-grid{width:100%;font:11px/1.8 monospace;padding:12px;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:6px}.report-filter{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.report-filter h2{font-size:17px}.report-filter p{font-size:10px;color:var(--muted);max-width:400px;margin:8px 0 0}.report-dates{display:flex;align-items:flex-end;gap:12px}.report-dates label{font-size:9px;margin:0}.report-dates input{font-size:10px;padding:9px;width:134px}.report-dates .btn{padding:10px;font-size:9px}.report-metrics{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:20px;margin-bottom:22px}.report-metrics .metric{font-size:30px}.report-metrics .hint{font-size:9px;margin-bottom:18px}.report-metrics .info-line{font-size:9px}.report-metrics .info-line b{font-size:9px}.report-grid{grid-template-columns:1.15fr 1fr}.flow-bars{display:grid;gap:17px;padding:10px 0 15px}.flow-bars>div{display:grid;grid-template-columns:160px 1fr 125px;gap:14px;align-items:center;font-size:10px}.flow-bars>div>span{color:var(--muted)}.flow-bars b{text-align:right;font-size:11px;font-weight:650}.flow-track{background:var(--track);height:9px;border-radius:4px;overflow:hidden}.flow-track i{display:block;height:100%;background:#8baa70;border-radius:4px}.flow-track i.outflow{background:#c3ad8b}.cash-reconciliation{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--line);padding-top:18px;gap:10px}.cash-reconciliation span{font-size:8px;color:var(--muted)}.cash-reconciliation b{font-size:12px;color:var(--ink);display:block;margin-top:7px}.money-list{margin:20px 0}.money-list>div{font-size:11px;padding:14px 0}.report-subheading{font-size:13px;border-top:1px solid var(--line);padding-top:22px;margin-top:25px}.dividend-main{font-size:11px;margin:20px 0}.dividend-main strong{font-size:23px}.wb-export{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:22px}.wb-export p{font-size:10px;color:var(--muted);margin-bottom:0}.settings-intro{display:flex;justify-content:space-between;gap:35px;align-items:center;background:var(--soft);margin-bottom:22px}.settings-intro h2{font-size:21px;margin-top:12px}.settings-intro p{font-size:11px;color:var(--muted);max-width:700px;margin-bottom:0}.settings-sum{background:var(--card);padding:17px;border-radius:8px;border:1px solid var(--line);font-size:13px;font-weight:700;white-space:nowrap}.settings-form>.card{margin-bottom:22px}.settings-table input{width:95px;padding:10px;text-align:right;background:var(--bg);color:var(--ink);border:1px solid #c5d4b8;border-radius:6px;font-size:12px}.settings-table th:first-child{width:24%;text-align:left}.settings-table td:first-child{white-space:normal;min-width:180px}.global-rules{display:flex;gap:25px;margin:25px 0 0}.global-rules label{max-width:250px;width:100%;margin:0}.sticky-save{position:sticky;bottom:16px;display:flex;align-items:center;gap:18px;border:1px solid var(--line);background:var(--card);box-shadow:0 6px 25px #213c3212;border-radius:9px;padding:17px 20px;z-index:2;flex-wrap:wrap}.sticky-save>span{font-size:10px;color:var(--muted);flex:1}.sticky-save>.btn{margin-left:auto}.sticky-save p{margin:0;font-size:11px;color:var(--loss);width:100%;line-height:1.8}.sticky-save p:empty{display:none}.planning-hero{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:30px;background:var(--forest);color:#fff;border-radius:12px;margin-bottom:22px}.planning-hero h2{font-size:27px;letter-spacing:-.8px;margin-top:13px}.planning-hero .eyebrow{color:#bed2a5}.planning-hero p{font-size:11px;color:#b4c8a9;margin:12px 0 0}.budget-control{min-width:250px;background:#ffffff0c;border:1px solid #b9cf9b44;padding:17px;border-radius:9px}.budget-control label{font-size:10px;color:#d0dfc3;margin:0}.budget-control input{background:#ffffff12;border:1px solid #b9cf9b66;color:#fff;font-size:22px;font-weight:700;padding:12px}.budget-control>small{color:#b5c8aa;font-size:9px;display:block;margin-top:10px}.planning-tabs{margin:6px 0 22px;border-bottom:1px solid var(--line)}.planning-tabs button{padding:15px 5px}.basket-card{margin-top:22px}.basket-grid input{width:125px;text-align:right;padding:10px;border:1px solid #c6d3b9;background:var(--bg);color:var(--ink);border-radius:5px;font-size:12px}.basket-grid td{font-size:11px}.basket-result{border-top:1px solid var(--line);padding-top:23px}.scenario-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;background:var(--soft);padding:21px;border-radius:8px;margin-bottom:20px}.scenario-metrics span{display:block;font-size:9px;color:var(--muted)}.scenario-metrics b{display:block;font-size:20px;letter-spacing:-.4px;margin-top:9px}.basket-result>.btn{margin-top:20px}.planned-items{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}.planned-items span{font-size:9px;background:var(--soft);border:1px solid var(--line);padding:6px 8px;border-radius:5px}.plan-row{padding:22px 0}.plan-row h3{font-size:12px}.plan-row p{font-size:10px;max-width:900px;line-height:1.9}.plan-row select{font-size:10px;padding:10px;min-width:130px}.game-paused{min-height:450px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;margin-top:15px}.game-empty-symbol{font-size:60px;color:#b7c79f;display:block;margin-bottom:25px}.game-paused h2{font-size:28px;letter-spacing:-.9px;margin:17px 0 7px}.game-paused p{font-size:12px;line-height:1.9;color:var(--muted);max-width:550px}.game-paused .btn{margin-top:24px}.directory-note{display:block;font-size:9px;line-height:1.8;color:var(--gain);margin-top:7px}.catalog-tools{display:flex;gap:15px;margin-bottom:17px}.catalog-tools input{flex:1;padding:10px 12px;border:1px solid var(--line);background:var(--bg);border-radius:6px;font-size:11px;color:var(--ink)}#catalog-results{max-height:410px;overflow:auto}#catalog-results table th,#catalog-results table td{padding:13px 10px;font-size:10px}#catalog-results table th{font-size:8px}#catalog-results .security-label{font-size:9px;min-width:45px;padding:5px}#catalog-results .btn{font-size:8px;padding:8px}dialog{width:min(800px,calc(100% - 100px));padding:29px;max-height:88vh}dialog label{font-size:11px}dialog .hint{font-size:10px}.modal-intro{font-size:12px}.modal-heading h2{font-size:23px}.report-text{font-size:12px}.method p{font-size:12px}.method h3{font-size:15px}.method details p{font-size:10px}footer{font-size:9px;align-items:center}footer p{font-size:8px}.toast{font-size:12px;bottom:25px}.report-grid+.card{margin-top:22px}[data-theme=dark] .security-label{color:#b8d395}[data-theme=dark] .draft-grid input,[data-theme=dark] .draft-grid select{border-color:#667e51}[data-theme=dark] .settings-table input{border-color:#667e51}[data-theme=dark] .next-card{background:#2a3c2a}

.planning-hero{padding:24px 28px;min-height:0}.planning-hero h2{font-size:26px;margin:10px 0}.schedule-summary .card{padding:18px 22px}.schedule-summary .metric{font-size:27px;margin:8px 0 0}.schedule-summary{margin:16px 0}

.dividend-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:18px 0}.dividend-kpis b{display:block;font-size:25px;margin:8px 0}.dividend-kpis small,.dividend-kpis span{display:block;color:var(--muted,#76847a)}.dividend-months{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;padding:20px 0;border-top:1px solid #e2e8dd;border-bottom:1px solid #e2e8dd}.dividend-months>div{text-align:center;font-size:12px}.dividend-months b{font-size:12px;white-space:nowrap}.dividend-months small,.dividend-months span{display:block}.dividend-bar{height:90px;display:flex;align-items:flex-end;justify-content:center;margin:12px 0;background:#f3f6ef;border-radius:5px}.dividend-bar i{display:block;width:70%;background:#23563f;min-height:0;border-radius:4px 4px 0 0}.dividend-empty{padding:18px 22px;background:#f4f6ef;border-radius:10px}.dividend-forecast .info-line{gap:12px}.dividend-forecast .info-line small{display:block}

.dividend-compact{padding:22px 26px}.dividend-compact .card-title{margin-bottom:18px}.dividend-compact .card-title h2{font-size:19px;margin:0 0 5px}.dividend-compact .card-title p{margin:0}.dividend-summary-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px}.dividend-summary-grid>div+div{border-left:1px solid color-mix(in srgb,currentColor 12%,transparent);padding-left:28px}.dividend-summary-grid span,.dividend-summary-grid small{display:block;opacity:.7}.dividend-summary-grid span{font-size:13px}.dividend-summary-grid b{display:block;font-size:27px;line-height:1.3;margin:7px 0}.dividend-summary-grid small{font-size:12px;line-height:1.5}.dividend-next b{font-size:23px}.dividend-compact-footer{display:flex;justify-content:space-between;gap:18px;font-size:12px;opacity:.7;margin-top:20px}.dividend-details{border-top:1px solid color-mix(in srgb,currentColor 12%,transparent);margin-top:16px;padding-top:13px}.dividend-details>summary{cursor:pointer;font-size:12px;font-weight:600;list-style:revert}.dividend-detail-body{padding-top:20px}.dividend-legend{display:flex;align-items:center;gap:20px;font-size:12px;opacity:.8}.dividend-legend span{display:flex;align-items:center;gap:7px}.dividend-legend i{width:8px;height:8px;border-radius:2px}.dividend-legend .declared,.dividend-mini-bar .declared{background:#44866b}.dividend-legend .estimated,.dividend-mini-bar .estimated{background:#b6b98a}.dividend-mini-months{border:0;padding:18px 0;gap:12px}.dividend-mini-bar{height:42px;display:flex;flex-direction:column-reverse;justify-content:flex-start;margin:8px auto;background:transparent;width:36px;border-bottom:1px solid color-mix(in srgb,currentColor 18%,transparent)}.dividend-mini-bar i{display:block;width:100%;flex-shrink:0;border-radius:2px}.dividend-type{font-size:11px;display:inline-block;padding:4px 8px;border-radius:5px;background:color-mix(in srgb,#44866b 14%,transparent)}.dividend-type.estimated{background:color-mix(in srgb,#b6b98a 18%,transparent)}
