:root{--bg:#f5f5f0;--ink:#1e302c;--muted:#6a7771;--line:#dfe5dc;--green:#176c50;--pale:#e9f1e9;--nav:#172c26;--gold:#b18c44}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:43px;background:var(--green);border:1px solid var(--green);color:white;border-radius:8px;padding:10px 17px;font-weight:600;cursor:pointer;white-space:normal;text-align:center}button:hover,.button:hover{background:#11573f;text-decoration:none}.secondary{background:white;color:var(--ink);border-color:var(--line)}.secondary:hover{background:var(--pale)}button:disabled{opacity:.45;cursor:not-allowed}input,select,textarea{display:block;width:100%;padding:11px 12px;background:#fff;border:1px solid #cbd5cb;border-radius:7px;color:var(--ink);min-height:44px}input[type=file]{padding:13px}input:focus,select:focus,textarea:focus{outline:2px solid #7ba995;outline-offset:2px}label{display:block;font-size:12px;font-weight:600;letter-spacing:.1px}label input,label select,label textarea{margin-top:6px}h1,h2,h3,p{margin-top:0}h1{font-size:37px;line-height:1.15;letter-spacing:-1.25px;font-weight:600;margin-bottom:13px}h2{font-size:19px;letter-spacing:-.35px;font-weight:600;margin-bottom:14px}h3{font-size:15px;margin-bottom:9px}p{color:var(--muted);margin-bottom:16px}small{font-size:11px;color:var(--muted);line-height:1.55}td small,.identity span,.inbox-row small{display:block}b,strong{font-weight:600}.strong{font-weight:600}.sidebar{position:fixed;inset:0 auto 0 0;width:226px;background:var(--nav);color:#e8eee8;padding:32px 19px;display:flex;flex-direction:column;z-index:2}.brand{display:flex;align-items:center;color:#f1f3e6;font-size:42px;font-weight:650;letter-spacing:-4px;line-height:1}.brand:hover{text-decoration:none}.brand-dot{color:#b8cb93}.brand>span:last-child{font-size:16px;letter-spacing:-.4px;margin-left:14px;line-height:1.4}.brand small{display:block;font-size:8px;letter-spacing:1.7px;color:#94ada0;margin-top:6px}.sidebar nav{display:flex;flex-direction:column;gap:6px;margin-top:51px}.sidebar nav a{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:7px;color:#b7c8be}.sidebar nav a:hover{background:#213d32;text-decoration:none}.sidebar nav a.active{background:#304b3c;color:#e5f0cd}.sidebar nav a span{font-size:20px;width:23px;line-height:1}.sidebar-bottom{margin-top:auto;padding:25px 10px 0}.local{font-size:11px;color:#a9c4b3;display:flex;align-items:center;gap:8px}.local i{width:6px;height:6px;border-radius:50%;background:#b8cd8d}.identity{font-size:13px;margin-top:24px}.identity span{font-size:10px;color:#9aafa3}.logout{background:none;color:#b7c8be;border:0;padding:5px 0;font-weight:400;font-size:12px;margin-top:10px}main{margin-left:226px;min-width:0}.topbar{height:69px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 38px;font-size:10px;letter-spacing:1.3px;color:var(--muted)}.topbar b{color:var(--ink)}.pill{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid var(--line);border-radius:4px;font-size:9px;letter-spacing:1px;line-height:1.3;white-space:nowrap;color:#627366}.pill.ready{background:var(--pale);color:var(--green)}.pill.warning{color:#8b672d;border-color:#e7d9bc}.content{padding:38px;max-width:1600px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:22px}.page-heading p{margin-bottom:0}.eyebrow{font-size:9px;font-weight:650;letter-spacing:2px;color:#748573;margin-bottom:13px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:22px 0}.metric{background:#fff;border:1px solid var(--line);border-radius:11px;padding:21px}.metric>span{display:block;color:var(--muted);font-size:11px;min-height:18px}.metric strong{display:block;font-size:36px;letter-spacing:-1px;line-height:1.2;margin:18px 0 12px;font-weight:550}.metric .text-metric{font-size:24px;letter-spacing:-.6px;padding-top:10px}.green{color:var(--green)}.card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:25px;margin-bottom:22px;min-width:0}.tinted{background:#eef2e8}.two-col{display:grid;grid-template-columns:1.15fr 1fr;gap:22px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.section-head h2{margin:0}.section-head p{font-size:11px;margin:6px 0 0}.muted{color:var(--muted);font-size:11px}.notice{background:#f0efdf;border:1px solid #e2dfc5;padding:14px 17px;border-radius:8px;margin:16px 0 22px;font-size:12px;line-height:1.65;color:#6b633e}.notice.success{background:#e8f2e9;border-color:#cadfcb;color:#286541}.notice.error{background:#fbeae6;border-color:#e8cfc7;color:#913b29}.notice.info{background:#e9f0ec;border-color:#cedcd0;color:#486451}.filters{display:flex;flex-wrap:wrap;gap:13px;align-items:end;margin-bottom:23px}.filters label{min-width:150px;flex:1}.filters input,.filters select{font-weight:400}.filters button{align-self:end;min-height:44px}.table-wrap{overflow-x:auto;max-width:100%}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}th{font-size:10px;color:var(--muted);font-weight:500;white-space:nowrap;padding:12px 12px;border-bottom:1px solid var(--line)}td{padding:15px 12px;border-bottom:1px solid #edf0e9;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafbf8}.numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.mono{font:10px ui-monospace,monospace;color:var(--muted)}.tag{display:inline-block;background:#eef3eb;color:#526747;padding:3px 7px;border-radius:4px;font-size:10px}.tag.warn{color:#936b33;background:#f3eee2}.quality-row{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.quality-row span{color:var(--muted)}.quality-row b{text-align:right;font-size:11px}.fine{font-size:11px;line-height:1.7;margin:16px 0 0}.activity-chart{width:100%;height:200px;display:block}.grid-line{stroke:#e7ece3;stroke-width:1;fill:none}.bar{fill:#4f8263}.activity-chart text{fill:#72816d;font-size:12px}.empty{padding:38px;text-align:center;color:var(--muted);font-size:13px}.stack{display:flex;flex-direction:column;gap:16px;margin-top:23px}.stack button{align-self:start}.inbox-row{display:flex;gap:20px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:18px 0}.inbox-row b{overflow-wrap:anywhere}.pagination{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:22px;font-size:11px;color:var(--muted)}.pagination>div{display:flex;gap:8px}.pagination .button{font-size:11px;min-height:35px;padding:7px 13px}.tabs{display:flex;gap:28px;border-bottom:1px solid var(--line);margin:30px 0 24px}.tabs a{font-size:13px;color:var(--muted);padding:0 0 15px}.tabs a.active{color:var(--green);border-bottom:2px solid var(--green);font-weight:600}.tabs span{font-size:10px;background:var(--pale);border-radius:4px;padding:3px 6px;margin-left:7px}.answer{white-space:pre-wrap;font-size:14px;line-height:1.8;border-top:1px solid var(--line);padding-top:20px;margin-top:20px;overflow-wrap:anywhere}details{margin-top:18px}summary{cursor:pointer;font-size:12px;color:var(--green)}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;padding:16px;background:var(--bg);border-radius:6px}.break{overflow-wrap:anywhere;word-break:break-word}.danger{color:#a24831}.check-note{padding-left:15px;border-left:2px solid #c5d7be;font-size:12px;color:var(--ink)}footer{font-size:10px;color:#8a9489;padding:16px 38px 30px;max-width:1600px;margin:auto}.guest main{margin:0}.guest .content{max-width:1200px;padding-top:10vh}.auth-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:90px;align-items:center}.auth-intro h1{font-size:58px;letter-spacing:-2.5px;margin:25px 0}.auth-intro p{font-size:16px;max-width:410px}.auth-card{padding:35px}.auth-card h2{font-size:24px;margin-top:22px}.auth-art{margin-top:50px;opacity:.85}.auth-art svg{width:100%;height:170px}.art-line{fill:none;stroke:#347351;stroke-width:2}.auth-art circle{fill:#a7bd7c}.art-label{font-size:8px;letter-spacing:2px;color:var(--muted)}.auth-art small{font-size:9px}.guest footer{text-align:center;margin-top:20px}
@media(min-width:1500px){.content{padding:45px 55px}.topbar{padding:0 55px}}
@media(max-width:1100px){.sidebar{width:190px;padding:26px 12px}.sidebar nav a{padding:11px 10px;font-size:12px}.brand>span:last-child{font-size:14px;margin-left:8px}main{margin-left:190px}.content{padding:26px}.topbar{padding:0 26px}.metrics{grid-template-columns:repeat(2,1fr)}.auth-layout{gap:45px}.auth-intro h1{font-size:46px}}
@media(max-width:760px){.sidebar{position:static;width:100%;padding:17px 18px;display:block}.brand{font-size:30px}.brand small{display:none}.brand>span:last-child{font-size:16px}.sidebar nav{flex-direction:row;overflow-x:auto;gap:4px;margin:18px -6px 0;padding-bottom:3px}.sidebar nav a{white-space:nowrap;font-size:11px;padding:10px}.sidebar nav a span{font-size:16px;width:14px}.sidebar-bottom{display:none}main{margin:0}.topbar{height:49px;padding:0 19px;letter-spacing:.5px;font-size:9px}.content{padding:25px 17px}.topbar>.pill{font-size:8px}.page-heading{align-items:start;gap:13px}.page-heading>.button,.page-heading>form button{font-size:10px;padding:10px;min-width:90px}h1{font-size:29px;letter-spacing:-.8px}.page-heading p{font-size:12px}.eyebrow{font-size:8px;letter-spacing:1.5px}.metrics{gap:10px}.metric{padding:16px}.metric>span{font-size:10px;min-height:30px}.metric strong{font-size:29px;margin:10px 0}.metric .text-metric{font-size:20px;padding-top:8px}.metric small{font-size:9px}.two-col{grid-template-columns:1fr;gap:0}.card{padding:19px}.section-head{align-items:start}h2{font-size:17px}.filters{gap:10px}.filters label{min-width:130px}td,th{padding:12px 9px}.notice{font-size:11px}.tabs{gap:20px}.tabs a{font-size:12px}.tabs span{display:inline-block;margin:5px 0 0}.pagination{gap:10px}.pagination>span{max-width:120px}.inbox-row{align-items:start}.inbox-row b{font-size:12px}.inbox-row button{font-size:11px;padding:8px}.auth-layout{grid-template-columns:1fr;gap:22px}.auth-intro h1{font-size:40px;margin:18px 0}.auth-intro p{font-size:14px}.auth-art{display:none}.guest .content{padding-top:35px}.auth-card{padding:25px}.auth-card .stack button{width:100%}footer{font-size:9px;padding:15px 18px}.guest footer{margin-top:0}}

.topbar-right{display:flex;gap:12px;align-items:center}.mobile-logout{display:none}@media(max-width:760px){.mobile-logout{display:block}.mobile-logout button{min-height:30px;padding:5px 9px;font-size:10px}.topbar-right>.pill{display:none}}
.summary-metrics .metric{padding:13px 16px}.summary-metrics .metric strong{font-size:25px;margin:7px 0 4px}.summary-metrics .metric small{font-size:10px}.consolidation-details{padding:15px 20px;margin-top:0}.consolidation-details summary{font-weight:600}.position-source+.position-source{margin-top:7px}
.account-overview{margin-bottom:24px}.account-overview>.section-head{margin-bottom:13px}.account-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:14px;align-items:start}.account-card{min-width:0;background:#fff;border:1px solid var(--line);border-top:3px solid #7b9d7d;border-radius:9px;padding:15px 17px 8px}.account-card-heading{min-height:42px;margin-bottom:7px}.account-card-heading .eyebrow{display:block;font-size:8px;letter-spacing:1.5px;margin-bottom:3px}.account-card-heading h3{font-size:14px;margin:0;overflow-wrap:anywhere}.account-card-heading>small{font-size:10px}.account-figures{margin:0}.account-figure{display:grid;grid-template-columns:65px minmax(0,1fr);gap:8px;align-items:center;min-height:57px;padding:10px 0;border-top:1px solid var(--line)}.account-figure dt{font-size:12px;font-weight:600}.account-figure dt small{display:block;font-size:9px;font-weight:400;line-height:1.35;margin-top:3px}.account-figure dd{margin:0;text-align:right;min-width:0}.account-value{font-size:17px;font-weight:600;letter-spacing:-.25px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.4}.account-value span{font-size:10px;letter-spacing:0;color:var(--muted)}.account-figure dd small{display:block;font-size:9px;margin-top:2px}.account-missing{color:var(--muted);font-size:11px}.account-currency+.account-currency{margin-top:9px}.account-cash .account-value{color:var(--green)}.account-cash .account-value.danger{color:#a24831}

.snapshot-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.snapshot-card{display:block;color:var(--ink)}.snapshot-card:hover{border-color:#8eae93;text-decoration:none;background:#f8fbf5}.snapshot-card h2{font-size:28px;letter-spacing:-.8px;margin:15px 0 7px}.snapshot-card p{font-size:11px;margin:0 0 10px}.snapshot-card>span:last-child{font-size:11px;color:var(--green)}.compact{min-width:210px;gap:10px;margin-top:12px}.compact input,.compact select{font-size:12px}.compact button{font-size:11px;min-height:35px}@media(max-width:760px){.snapshot-cards{grid-template-columns:1fr;gap:0}.snapshot-card h2{font-size:26px}}
.account-heading-line,.account-settings-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.account-heading-line{margin-bottom:4px}.account-heading-line .eyebrow{margin:0}.account-status{display:inline-block;padding:3px 8px;border-radius:5px;background:#f0f2ef;color:#667169;font-size:10px;line-height:1.5;white-space:nowrap}.account-status.active{color:#176c50;background:#e9f1e9}.account-status.closed{color:#765623;background:#f4eee3}.account-settings-heading{margin-bottom:17px}.account-settings-heading .eyebrow{display:block;margin-bottom:3px}.account-settings-heading h3{margin:0;overflow-wrap:anywhere}.account-settings .filters{margin-bottom:0}
.account-heading-line{flex-wrap:wrap;gap:6px}.account-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px;margin-left:auto;min-width:0}.account-type{background:#edf0f3;color:#52616c}
.account-card-link{display:block;color:var(--ink);transition:border-color .15s,box-shadow .15s}.account-card-link:hover{color:var(--ink);text-decoration:none;border-color:#6c987c;box-shadow:0 3px 12px #172c2610}.account-card-link:focus-visible{outline:3px solid #7ba995;outline-offset:3px}.account-open-hint{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:9px 0 3px;color:var(--green);font-size:11px}.back-link{display:inline-block;margin-bottom:22px;font-size:12px}.account-detail-heading h1{overflow-wrap:anywhere}.account-detail-heading .account-badges{flex-shrink:0}.account-cash-list{display:flex;flex-wrap:wrap;gap:20px 40px}.account-cash-list .account-value{font-size:24px}.account-cash-list small{display:block;margin-top:3px}.account-cash-list a{font-size:11px}.account-cash-detail .section-head{margin-bottom:12px}@media(max-width:760px){.account-detail-heading{flex-wrap:wrap}.account-detail-heading .account-badges{margin-left:0;justify-content:flex-start}}

/* Public market directory and per-account exposure. */
.sidebar nav{min-height:0;overflow-y:auto}.sidebar-bottom{flex-shrink:0}.overview-submenu{margin:0 0 7px 18px;padding-left:10px;border-left:1px solid #d8e0d3}.nav-accounts{margin:0 0 3px}.nav-accounts summary{font-size:11px;padding:7px 0;color:#64705e;display:list-item}.nav-accounts summary span{font-size:9px;color:#7c8975;margin-left:5px}.sidebar .account-submenu a{display:block;padding:7px 9px;font-size:10px;line-height:1.4;overflow-wrap:anywhere}.account-submenu small{display:block;font-size:9px;margin-top:2px}.sidebar .overview-submenu>.manage-accounts{display:block;padding:7px 9px;font-size:11px;line-height:1.4;color:var(--green)}.market-status{display:flex;gap:8px;align-items:center;font-size:11px;color:var(--muted);margin:12px 0 23px;line-height:1.6}.status-dot{width:6px;height:6px;border-radius:50%;background:#6f9c65;flex-shrink:0}.status-dot.stale{background:#b28b46}.market-filters label:first-child{flex:2;min-width:200px}.market-filters label{min-width:115px}.security-name{display:flex;flex-wrap:wrap;gap:7px;align-items:center;min-width:190px}.security-name>a:first-child{color:var(--ink);font-weight:600}.ask-badge{display:inline-block;white-space:nowrap;font-size:8px;font-weight:500;padding:3px 5px;border-radius:3px;line-height:1.3;background:#f0f2ee;color:#6e786a}.ask-badge.yes{background:#e2efdf;color:#356643}.ask-badge.no{background:#f1ece6;color:#8d7659}.ask-badge.unknown{background:#f2f3ef;color:#858a7c}.market-table td{padding:16px 10px}.market-table .mono{margin-top:5px;font-size:9px}.market-table .quote-time{white-space:nowrap;font-size:10px;color:var(--muted)}.market-table .industry-column{text-align:right;min-width:100px}.gain{color:#2c7850}.venue{white-space:nowrap;font-size:10px;color:#5e7056}.venue.MERK{color:#937b45}.market-table .numeric small{font-size:9px}.market-card{padding:23px}.market-card .section-head p{font-size:10px}.exposure-summary{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:20px;padding:9px 0 23px;border-bottom:1px solid var(--line)}.exposure-summary strong{display:block;font-size:26px;font-weight:500;letter-spacing:-.7px}.exposure-summary strong span{font-size:11px;letter-spacing:0;color:var(--muted)}.exposure-summary b{display:block;font-size:19px;font-weight:500;margin-top:4px}.exposure-summary small{font-size:10px;margin-top:5px}.exposure-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:21px 0 0}.exposure-grid h3{font-size:13px;margin:0 0 20px}.exposure-bars{display:flex;flex-direction:column;gap:15px}.exposure-row>div{display:flex;justify-content:space-between;align-items:baseline;gap:18px;font-size:11px}.exposure-row>div span{overflow-wrap:anywhere}.exposure-row b{white-space:nowrap;font-weight:500;font-variant-numeric:tabular-nums}.exposure-row meter{display:block;width:100%;height:7px;margin:7px 0 5px;border:0;border-radius:5px;background:#edf0e7}.exposure-row meter::-webkit-meter-bar{height:7px;background:#edf0e7;border:0;border-radius:5px}.exposure-row meter::-webkit-meter-optimum-value{background:#77966c;border-radius:5px}.exposure-row meter::-moz-meter-bar{background:#77966c;border-radius:5px}.exposure-row small{font-size:9px}.exposure-grid>div:nth-child(2) meter::-webkit-meter-optimum-value{background:#b1bd85}
@media(max-width:760px){.sidebar nav{flex-wrap:wrap;overflow:visible;margin-top:12px}.overview-submenu{order:2;width:100%;margin:5px 0 0;padding-left:8px}.sidebar .account-submenu{display:flex;flex-wrap:wrap;gap:4px;padding:3px 0 7px}.sidebar .account-submenu a{font-size:10px;white-space:normal;max-width:180px}.market-filters label:first-child{min-width:100%;flex:1}.market-card{padding:16px}.market-card .section-head{flex-wrap:wrap;gap:10px}.market-table{min-width:780px}.market-status{font-size:10px}.exposure-summary{grid-template-columns:1fr 1fr;gap:16px}.exposure-summary strong{font-size:22px}.exposure-summary b{font-size:18px}.exposure-grid{grid-template-columns:1fr;gap:30px}.exposure-card .fine{font-size:10px}}
@media(min-width:761px){.sidebar nav{margin-top:28px;gap:3px}.sidebar nav>a{padding:9px 12px;font-size:12px}.sidebar nav a span{font-size:18px}.sidebar-bottom{padding-top:15px}.identity{margin-top:12px}.nav-accounts summary{color:#b7c8be}.overview-submenu{border-color:#355044}.sidebar .overview-submenu>.manage-accounts{color:#c0d4b5}}


@media(max-width:760px){.market-heading{display:block}.market-heading>.pill{margin-top:12px}}

/* Identity checks use dated sources without changing the imported ledger. */
.security-check{min-width:150px;max-width:360px;font-weight:400}.security-check details{margin-top:8px}.security-check summary{font-size:10px}.security-check details p,.security-check details li{font-size:11px;line-height:1.6}.security-check ul{padding-left:17px;margin:10px 0}.security-check details a{font-size:10px;overflow-wrap:anywhere}.security-check details small{display:block;margin-top:8px;font-size:9px}.security-summary .section-head{align-items:flex-start}.security-summary .section-head>a{font-size:11px;white-space:nowrap}.check-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.check-totals strong{display:block;font-size:25px;font-weight:500}.check-totals span{font-size:11px;color:var(--muted)}.isin-transition{display:flex;flex-wrap:wrap;gap:20px;align-items:center}.isin-transition strong{display:block;font:14px ui-monospace,monospace;margin-top:5px}.history-sources{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:18px;font-size:11px}.history-entry .section-head h2{font-size:18px}@media(max-width:760px){.check-totals{grid-template-columns:1fr 1fr}.security-summary .section-head{flex-wrap:wrap}.isin-transition{gap:12px}.isin-transition strong{font-size:12px}}

/* Compact portfolio views and editable exceptions. */
.account-day{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:11px 0 2px;font-size:11px}.account-day strong{font-size:17px;font-variant-numeric:tabular-nums}.day-coverage{display:block;font-size:9px;margin:3px 0 10px}.holdings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}.holdings-section{padding:20px 16px}.holdings-section table{font-size:11px}.holdings-section td,.holdings-section th{padding:12px 8px}.holdings-section td:first-child{min-width:140px}.holdings-section th{white-space:normal}.sector-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 40px}.exposure-title{margin-top:24px}.import-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.unresolved-card{display:block;color:var(--green)}.unresolved-card:hover{text-decoration:none;background:#f5f8ef}.correction-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}.form-actions{grid-column:1/-1;display:flex;gap:12px;align-items:center}@media(max-width:760px){.holdings-grid{grid-template-columns:1fr;gap:0}.sector-grid{gap:18px}.correction-form{grid-template-columns:1fr}.import-metrics{grid-template-columns:1fr 1fr}.import-metrics>a{grid-column:1/-1}}
@media(max-width:760px){.sector-grid .exposure-row>div{display:block}.sector-grid .exposure-row>div>span{display:block;overflow-wrap:normal}.sector-grid .exposure-row b{display:block;text-align:right;margin-top:3px}}

/* Dense market rows preserve company identifiers, quotes and ASK labels. */
.ask-badge.likely{background:#faf0d9;color:#84641f}.ask-badge.observed{background:#e2efdf;color:#356643}.ask-summary{margin:0 0 12px;line-height:1.4}.market-table .portfolio-column{text-align:center;white-space:nowrap}.portfolio-marker{font-weight:700;color:#356643}
.market-table th{padding:7px 8px;line-height:1.3}.market-table td{padding:5px 8px;line-height:1.3}.market-table .mono{margin-top:1px;line-height:1.2}.market-table .numeric small{line-height:1.2}.market-table .security-name{gap:5px}.market-table .ask-badge{padding:2px 4px}

/* Full-width holdings, column sorting, and locally remembered monetary privacy. */
.holdings-grid{grid-template-columns:minmax(0,1fr);gap:0}.holdings-section table{font-size:12px}.holdings-section th{font-size:10px}.holdings-section td:first-child{min-width:155px}.holdings-section td.numeric{white-space:nowrap}.holdings-section .basis-note{white-space:normal;font-size:9px;max-width:95px}.holdings-section .fine{line-height:1.7;margin-bottom:0}
.heading-with-eye{display:flex;align-items:center;gap:12px}.heading-with-eye h1{margin-right:0}.privacy-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;min-height:0;padding:6px;background:transparent;color:var(--muted);border:0;border-radius:50%}.privacy-toggle:hover{background:#e7ede1;color:var(--green)}.privacy-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.eye-closed,.money-hidden .eye-open{display:none}.money-hidden .eye-closed{display:block}.money-hidden [data-money]{visibility:hidden}.money-hidden [data-money] .money-mask{visibility:visible;letter-spacing:2px;color:var(--muted)}.money-hidden .money-content,.money-mask[hidden],.money-content[hidden]{display:none!important}
.account-settings-button{white-space:nowrap;font-size:12px}.account-overview>.section-head{align-items:center;gap:18px}
.sort-header,button.sort-header{display:inline-flex;align-items:center;justify-content:inherit;gap:5px;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;background:none;border:0;padding:0;min-height:24px;border-radius:2px;cursor:pointer;text-align:inherit}.sort-header>span{font-size:10px;opacity:.65}.sort-header:hover{color:var(--green);background:none;text-decoration:underline}.sort-header:focus-visible,.privacy-toggle:focus-visible{outline:2px solid var(--green);outline-offset:4px}th[aria-sort=ascending],th[aria-sort=descending]{color:var(--green)}
@media(max-width:760px){.heading-with-eye{gap:4px}.privacy-toggle{width:28px;height:28px}.account-overview>.section-head{flex-wrap:wrap}.account-settings-button{margin-left:auto;font-size:11px}.holdings-section table{font-size:11px}.holdings-section .fine{font-size:10px}}
[data-money]>.money-content,[data-money]>.money-mask{font:inherit;letter-spacing:inherit;color:inherit}

/* Annual accounts: separate opening valuations and cash-flow-adjusted results. */
.accounting-account h3{margin-top:25px}.accounting-account table{font-size:12px}.accounting-account th{white-space:normal}.accounting-account td.numeric{white-space:nowrap}.accounting-account td:last-child{max-width:240px}.accounting-account td details p{white-space:normal;margin:8px 0}.accounting-missing{font-size:11px;color:#8a692e;cursor:pointer}.accounting-cash{margin-top:24px}.accounting-cash>summary{cursor:pointer;color:var(--green);font-weight:600}.accounting-method p{max-width:920px}.accounting-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:20px}.accounting-inputs small{display:block;margin-top:7px;font-weight:400}.accounting-transfer{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(100px,.7fr) minmax(0,1fr);align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.accounting-transfer small{display:block}.positive{color:var(--green)}.negative{color:#b24535}
@media(max-width:760px){.accounting-inputs,.accounting-transfer{grid-template-columns:1fr;gap:14px}.accounting-account{padding:18px}.accounting-account table{min-width:650px}}

.stacked-values>div{line-height:1.65}.stacked-values .secondary-value{font-size:11px;margin-top:3px}.stacked-values .value-label{font-size:9px;color:var(--muted)}.stacked-values .basis-note{margin-left:auto}.holdings-section .stacked-values{min-width:105px}
.gav-values>div{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:8px;align-items:baseline}.gav-values .value-label{text-align:left}.gav-values .secondary-value{font-size:inherit}
/* Compact holdings rows, keeping both cost and return values readable. */
.holdings-section th{padding:7px 8px;line-height:1.3}.holdings-section td{padding:5px 8px;line-height:1.3}.holdings-section td small{font-size:10px;line-height:1.25;margin-top:0}.holdings-section .stacked-values>div{line-height:1.3}.holdings-section .stacked-values .secondary-value{margin-top:0}
.import-review .filters{display:grid;grid-template-columns:minmax(180px,1.3fr) repeat(3,minmax(130px,1fr)) auto;gap:10px;align-items:end}.import-review .filters label{min-width:0}.import-review .filters input,.import-review .filters select{min-width:0;width:100%}.import-review .import-metrics{margin:16px 0}.import-review .review-table td{vertical-align:top}.import-review .review-table td:first-child{white-space:nowrap}.import-review .review-table td:nth-child(5){min-width:200px;max-width:380px}.import-review .review-table td:last-child{white-space:nowrap}.import-review .review-link{font-size:12px}#avvik,#upload,#snapshots,#references{scroll-margin-top:18px}@media(max-width:1100px){.import-review .filters{grid-template-columns:repeat(2,minmax(0,1fr))}.import-review .filters button{justify-self:start}}@media(max-width:560px){.import-review .filters{grid-template-columns:1fr}.import-review .import-metrics{grid-template-columns:1fr}}



.import-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;flex-shrink:0}.import-actions .button{font-size:12px;padding:9px 12px}@media(max-width:760px){.import-actions{justify-content:flex-start;width:100%}}

.review-star{color:#b42318;font-size:18px;font-weight:750;line-height:1;vertical-align:middle;margin-left:3px;cursor:help}.review-field-list{display:flex;flex-wrap:wrap;gap:4px 14px;margin-bottom:5px;font-size:11px;font-weight:600}.correction-form .review-star{margin-left:4px}
.record-account{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px;font-size:14px}.record-account a{font-weight:600}.record-account small{flex-basis:100%}.form-explanation{grid-column:1/-1;margin:0}.review-undo{margin-bottom:14px}

/* Denser account tiles on the overview, retaining all balances and context. */
.account-overview .account-grid{grid-template-columns:repeat(auto-fill,min(100%,250px));gap:10px;justify-content:start}
.account-overview .account-card{padding:11px 13px 5px}
.account-overview .account-card-heading{min-height:0;margin-bottom:5px}
.account-overview .account-heading-line{margin-bottom:2px;gap:4px}
.account-overview .account-status{padding:2px 6px}
.account-overview .account-figure{min-height:45px;padding:6px 0;gap:4px}
.account-overview .account-figure dt small{margin-top:1px}
.account-overview .account-value{font-size:16px;line-height:1.3}
.account-overview .account-figure dd small{margin-top:0;line-height:1.4}
.account-overview .account-currency+.account-currency{margin-top:5px}
.account-overview .account-day{padding:6px 0 0}
.account-overview .account-day strong{font-size:15px}
.account-overview .day-coverage{margin:1px 0 5px;line-height:1.4}
.account-overview .account-open-hint{padding:5px 0 1px}
.accounting-filter fieldset{border:0;padding:0;margin:0;min-width:0}.accounting-filter legend{font-size:17px;font-weight:600}.accounting-filter .fine{margin:5px 0 0}.accounting-filter-actions{display:flex;gap:8px;margin:12px 0}.accounting-filter-actions button{padding:5px 12px;min-height:34px;font-size:12px}.accounting-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;max-height:230px;overflow:auto;padding:3px}.accounting-choices label{display:flex;gap:10px;align-items:center;padding:9px 11px;border:1px solid var(--line);border-radius:7px;cursor:pointer}.accounting-choices label:has(input:checked){background:var(--pale);border-color:#9fbca9}.accounting-choices input{width:17px;height:17px;min-height:17px;margin:0;flex-shrink:0;accent-color:var(--green)}.accounting-choices small{display:block;font-weight:400}.accounting-filter-status:empty{display:none}@media(max-width:480px){.accounting-choices{grid-template-columns:1fr 1fr}.accounting-choices label{padding:8px;font-size:11px}.accounting-filter{padding:18px}}

/* Unresolved items share their count and correction links with the navigation. */
.sidebar nav a .nav-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;min-width:21px;width:auto;height:21px;padding:0 6px;border-radius:12px;background:#bd302d;color:white;font-size:11px;line-height:1;font-weight:700;font-variant-numeric:tabular-nums;flex-shrink:0}.sidebar nav a .nav-badge[hidden]{display:none}
.attention-notice{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff4f2;border:1px solid #edc7c3;border-left:4px solid #bd302d;border-radius:9px;padding:16px 20px;margin:0 0 22px}.attention-notice strong{color:#942922;font-size:14px}.attention-notice p{font-size:12px;line-height:1.6;margin:5px 0 0}.attention-notice .button{font-size:12px;white-space:nowrap}.attention-actions{display:flex;flex-wrap:wrap;gap:8px}.review-link{display:inline-block;font-weight:600;font-size:12px;margin-top:8px}.row-review{max-width:420px;font-weight:400;margin-top:8px}.row-review .review-field-list{margin:6px 0 0}.row-review .tag{font-size:10px}.source-choices{border:0;padding:0;margin:20px 0}.source-choices legend{font-weight:600;margin-bottom:10px}.source-choice{display:flex;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;margin:8px 0;cursor:pointer}.source-choice:has(input:checked){background:var(--pale);border-color:#9fbca9}.source-choice input{width:18px;height:18px;min-height:18px;margin:3px 0 0;accent-color:var(--green);flex-shrink:0}.source-choice small{display:block;margin-top:5px;line-height:1.5;font-weight:400}.source-choice a{display:inline-block;margin-top:7px;font-size:12px}.dividend-review-form textarea{font:inherit;width:100%;border:1px solid var(--line);border-radius:7px;padding:10px;resize:vertical}
@media(max-width:760px){.attention-notice{align-items:flex-start;flex-direction:column;padding:14px;gap:12px}.sidebar nav a .nav-badge{min-width:19px;height:19px;font-size:10px;margin-left:5px}.source-choice{padding:10px}.form-actions{flex-wrap:wrap}}

/* Dense ledger pages: keep the type readable and reduce padding, not content. */
.compact-view .card{padding:15px 18px;margin-bottom:14px}.compact-view .page-heading{margin-bottom:16px}.compact-view .filters{gap:10px;margin-bottom:13px}.compact-view .tabs{margin:16px 0 14px}.compact-view .tabs a{padding-bottom:9px}.compact-view th{padding:6px 9px;line-height:1.3}.compact-view td{padding:6px 9px;line-height:1.3}.compact-view td small{font-size:10px;line-height:1.3;margin-top:2px}.compact-view td details{margin:0}.compact-view .tag{padding:2px 5px;line-height:1.3}.compact-view .fine{margin-top:8px;line-height:1.45}.compact-view .pagination{margin-top:12px}.compact-view .notice{padding:10px 13px;margin:10px 0 14px}.compact-view .attention-notice{padding:11px 14px;margin-bottom:14px}.compact-view .row-review{margin-top:4px}.compact-view .row-review .review-field-list{margin-top:3px;gap:2px 9px}.compact-view .review-link{margin-top:4px}.compact-view .accounting-account h2{margin-bottom:5px}.compact-view .accounting-account h3{margin:14px 0 4px}.compact-view .accounting-cash{margin-top:12px}.compact-view .accounting-account>p.fine{margin-top:4px}.compact-view .accounting-account td details p{margin:5px 0}.compact-view .accounting-filter-actions{margin:9px 0}.compact-view .accounting-choices{gap:6px}.compact-view .accounting-choices label{padding:6px 9px}

/* Column totals stay below the sortable annual rows. */
.accounting-account tfoot th,.accounting-account tfoot td{border-top:2px solid var(--line);background:var(--pale);font-weight:600}.accounting-account tfoot small{font-weight:400}.accounting-account tfoot th{color:var(--ink);text-transform:none;letter-spacing:0}

/* Detailed industry exposure uses the valued holdings as its denominator. */
.exposure-card{padding:14px 18px;margin-bottom:14px}.exposure-card .section-head{margin-bottom:10px}.exposure-card .eyebrow{margin-bottom:4px}.exposure-card .section-head p{margin-top:4px;line-height:1.4}.exposure-card .exposure-summary{gap:10px;padding:0 0 10px}.exposure-card .exposure-summary strong{font-size:19px;line-height:1.25;letter-spacing:-.2px}.exposure-card .exposure-summary b{font-size:16px;line-height:1.25;margin-top:0}.exposure-card .exposure-summary small{margin:2px 0 0;line-height:1.3;display:block}.exposure-comparison{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-top:8px;align-items:start}.exposure-comparison table{font-size:11px}.exposure-comparison th,.exposure-comparison td{padding:5px 7px;line-height:1.35}.exposure-comparison th:first-child{font-size:12px;font-weight:600;color:var(--ink);white-space:normal}.exposure-name{width:100%;overflow-wrap:anywhere}.exposure-name meter{display:block;width:100%;height:4px;margin-top:4px;border:0;background:#edf0e7}.exposure-name meter::-webkit-meter-bar{height:4px;border:0;background:#edf0e7}.exposure-name meter::-webkit-meter-optimum-value{background:#77966c}.exposure-name meter::-moz-meter-bar{background:#77966c}.exposure-card .notice{padding:9px 12px;margin:10px 0}
@media(max-width:760px){.compact-view .card{padding:12px}.compact-view td,.compact-view th{padding:6px 7px}.exposure-card{padding:12px}.exposure-comparison{gap:12px}.exposure-card .exposure-summary{grid-template-columns:1fr 1fr;gap:8px}.exposure-comparison th,.exposure-comparison td{padding:5px 3px}}
@media(max-width:560px){.exposure-comparison{grid-template-columns:1fr;gap:12px}}

/* One sortable list flows down each column, starting on the left. */
.exposure-comparison{display:block}.exposure-grid-table,.exposure-grid-table thead,.exposure-grid-table tbody{display:block}.exposure-grid-table thead tr{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;border-bottom:1px solid var(--line)}.exposure-grid-table thead th{border:0}.exposure-grid-table tbody{column-count:3;column-gap:24px}.exposure-grid-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:start;padding:1px 0;margin-bottom:2px;break-inside:avoid}.exposure-grid-table tbody td{display:block;border:0;padding:0;font-size:10px;line-height:1.2}.exposure-grid-table .exposure-name{grid-column:1/-1;font-size:11px}.exposure-grid-table tbody td:nth-child(2){text-align:left;color:var(--muted)}.exposure-grid-table .exposure-name meter{margin-top:2px}.exposure-card .exposure-scale-note{font-size:10px;line-height:1.4;margin:4px 0 0}
@media(max-width:1000px){.exposure-grid-table tbody{column-count:2;column-gap:18px}}
@media(max-width:560px){.exposure-grid-table tbody{column-count:1}.exposure-grid-table thead tr{gap:8px}}

@media(max-width:760px){.import-page-heading{flex-direction:column;align-items:stretch;gap:12px}.import-page-heading .import-actions{width:auto;justify-content:flex-start}}

.account-visibility input{display:inline-block;width:auto;min-height:0;margin:0 7px 0 0}.account-visibility small{display:block;font-weight:400}.account-total{display:flex;justify-content:space-between;align-items:baseline;gap:8px;border-top:1px solid var(--line);padding:6px 0;font-size:12px}.account-total strong{font-size:15px;font-variant-numeric:tabular-nums}.account-total small{font-size:9px}

.auth-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px;font-size:12px}.account-visibility{align-self:center}.account-settings .filters{flex-wrap:wrap}#mail-settings .correction-form>label{min-width:0}

/* Rebalancing: compact setup, per-position choices and in-app alerts. */
.strategy-base-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.strategy-base{padding:13px;border:1px solid var(--line);border-radius:7px;background:#fafbf8}.strategy-base h3{margin-bottom:10px}.strategy-base input{padding:7px 9px;min-height:34px;font-variant-numeric:tabular-nums}.strategy-limits{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:9px}.strategy-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.strategy-actions button{padding:7px 10px;font-size:11px;min-height:32px}.strategy-count{font-size:14px;margin-left:6px}.strategy-empty{font-size:12px;margin:4px 0}.strategy-alert{display:inline-block;color:#a24831;font-size:11px;font-weight:600}.strategy-cell{min-width:120px;max-width:160px}.strategy-cell select{padding:5px 24px 5px 7px;min-height:29px;font-size:11px;width:100%}.strategy-cell>a{display:block;font-size:10px;margin-top:2px}.strategy-account-picker{max-width:370px;margin-bottom:12px}.strategy-account-picker select,.strategy-bulk-actions select{padding:7px 10px;min-height:34px}.strategy-bulk-actions{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin-bottom:10px}.strategy-bulk-actions button{padding:8px 12px;min-height:34px;font-size:12px}.strategy-bulk-actions .muted{align-self:center}.strategy-bulk-actions label{min-width:190px}#strategy-bulk input[type=checkbox]{width:16px;height:16px;min-height:0;padding:0;margin:0;accent-color:var(--green)}#strategy-positions td:first-child,#strategy-positions th:first-child{width:26px}.strategy-base .fine{font-size:10px;line-height:1.5}#strategivarsler .section-head{flex-wrap:wrap}
@media(max-width:1250px){.strategy-base-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.strategy-base-grid{grid-template-columns:1fr}.strategy-base{padding:11px}.strategy-account-picker{max-width:none}}

/* Cash, account profit and industry exposure share one compact account card. */
.account-summary{padding:16px 18px;margin-bottom:14px}.account-summary-metrics{display:grid;grid-template-columns:1fr 1fr;gap:16px 30px}.account-summary .section-head{margin-bottom:8px}.account-summary .section-head h2{font-size:17px}.account-summary .section-head p{margin-top:4px}.account-summary .account-cash-list{gap:10px 22px}.account-summary .account-cash-list .account-value,.account-profit-value{font-size:24px;line-height:1.25;font-variant-numeric:tabular-nums}.account-profit-value>span{font-size:12px;font-weight:400;color:var(--muted)}.account-profit-percent{display:inline-block;margin-left:10px;font-size:14px;font-variant-numeric:tabular-nums}.account-profit-detail>small{display:block;margin-top:3px}.account-profit-detail .fine{margin-top:4px;font-size:10px;line-height:1.4}.account-summary .account-exposure{padding:12px 0 0;margin:12px 0 0;border-top:1px solid var(--line)}.account-summary .exposure-summary{padding-bottom:8px}.account-summary .account-exposure .section-head{margin-bottom:8px}
@media(max-width:560px){.account-summary{padding:12px}.account-summary-metrics{grid-template-columns:1fr;gap:12px}.account-profit-detail{border-top:1px solid var(--line);padding-top:10px}}

.account-profit-detail .account-profit-warning{font-size:11px}.account-profit-warning strong{color:#8b672d}
.push-controls{display:flex;align-items:end;flex-wrap:wrap;gap:10px}.push-controls label{max-width:240px}.push-device small{display:block;font-size:10px}.push-device button{min-height:32px;padding:5px 10px;font-size:11px}.push-admin{margin-top:16px}.push-admin summary{cursor:pointer;color:var(--green);font-weight:600}.push-admin form{margin-top:12px;max-width:550px}.push-admin .check-label{display:flex;align-items:center;gap:8px}.push-admin .check-label input{width:18px;height:18px;min-height:0;margin:0}#mobilvarsler{scroll-margin-top:20px}#mobilvarsler [hidden]{display:none!important}

.dashboard-heading{gap:18px}.dashboard-title{flex:1 1 360px;min-width:0}.dashboard-history-summary{flex:1 1 420px;min-width:0}.dashboard-history-label{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:5px}.dashboard-history-label h2{font-size:12px;letter-spacing:0;margin:0}.dashboard-history-label>span{font-size:9px;color:var(--muted);white-space:nowrap}.dashboard-profit-grid{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:12px;overflow-x:auto;padding-bottom:3px}.dashboard-profit-grid h3{font-size:10px;margin:0 0 2px;color:var(--muted)}.dashboard-profit-value{display:block;font-size:16px;line-height:1.3;white-space:nowrap;font-variant-numeric:tabular-nums}.dashboard-profit-value>span{font-size:10px;font-weight:400;color:var(--muted)}.dashboard-profit-percent{display:block;font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.dashboard-profit-grid small,.dashboard-history-other{display:block;font-size:9px;line-height:1.3;margin-top:2px}.dashboard-import{flex-shrink:0}@media(max-width:1250px){.dashboard-heading{flex-wrap:wrap}.dashboard-title{flex-basis:100%}.dashboard-history-summary{flex:1 1 420px}}@media(max-width:760px){.dashboard-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.dashboard-import{justify-self:end}}

.history-profit-summary .section-head{margin-bottom:10px}.history-profit-summary .section-head h2{font-size:17px}.history-profit-summary .section-head>span{font-size:11px}.history-profit-grid{display:grid;grid-template-columns:repeat(3,minmax(170px,1fr));gap:14px 22px;overflow-x:auto;padding-bottom:4px}.history-profit-grid h3{font-size:12px;margin:0 0 4px;color:var(--muted)}.history-profit-numbers{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 10px;font-variant-numeric:tabular-nums}.history-profit-value{font-size:22px;line-height:1.3;white-space:nowrap}.history-profit-value>span{font-size:12px;font-weight:400;color:var(--muted)}.history-profit-percent{font-size:13px;white-space:nowrap}.history-profit-grid small{display:block;margin-top:3px}.history-profit-summary .fine{margin:8px 0 0;font-size:11px}@media(max-width:560px){.history-profit-grid{gap:16px}.history-profit-value{font-size:18px}.history-profit-numbers{flex-direction:column;align-items:flex-start;gap:2px}}

/* Public equity analysis; keep all styling local to this page. */
.analysis-model{padding:16px 20px}.analysis-model .section-head{margin-bottom:10px}.analysis-formula{font-size:14px!important;font-variant-numeric:tabular-nums}.analysis-settings{margin:0;align-items:end;flex-wrap:wrap}.analysis-settings label{max-width:220px}.analysis-settings input,.analysis-filters input,.analysis-filters select{min-height:34px;padding:6px 9px}.analysis-settings button,.analysis-filters button{min-height:34px;padding:7px 13px}.analysis-summary{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:12px;margin:8px 0}.analysis-summary strong{color:var(--green)}.analysis-results td{padding:7px 9px!important;font-size:12px}.analysis-results th{padding:9px!important;font-size:10px}.analysis-results td small{display:block;font-size:9px;line-height:1.4;color:var(--muted)}.analysis-evidence{min-width:180px;max-width:240px;font-size:10px!important}.analysis-evidence details{margin-top:3px}.analysis-evidence a{font-size:10px}.analysis-notes summary{cursor:pointer;font-weight:600}.analysis-notes p{font-size:12px;line-height:1.6;margin:12px 0 0}.analysis-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.analysis-method-grid h3{font-size:14px}.analysis-method-grid p{font-size:12px;line-height:1.6;margin:8px 0}.analysis-method-grid a{font-size:11px}@media(max-width:760px){.analysis-method-grid{grid-template-columns:1fr;gap:18px}.analysis-settings label{max-width:none}.analysis-filters{flex-wrap:wrap}.analysis-model{padding:14px}.analysis-formula{font-size:12px!important}}

/* Four compact portfolio rankings, updated together with live account values. */
.dashboard-rankings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:clamp(6px,.6vw,8px);width:100%;max-width:1100px;margin:16px 0 0}
.ranking-card{min-width:0;padding:12px clamp(6px,.55vw,9px) 7px;margin:0}
.ranking-card .section-head{gap:6px;margin-bottom:6px;align-items:baseline}
.ranking-card h2{font-size:14px;margin:0}
.ranking-count{font-size:8px;letter-spacing:.6px;color:var(--muted);white-space:nowrap}
.ranking-table{width:100%;table-layout:auto}
.ranking-table th{padding:4px 0;font-size:9px;line-height:1.25;white-space:normal}
.ranking-table td{padding:5px 0;line-height:1.25}
.ranking-table td:first-child{padding-right:5px;overflow-wrap:anywhere;white-space:normal}
.ranking-table td a{font-size:11px;font-weight:600}
.ranking-table td small{font-size:9px;margin-top:2px;line-height:1.2}
.ranking-table th.numeric,.ranking-table td.numeric{width:1%;padding-left:clamp(4px,.45vw,7px)}
.ranking-table td.numeric{font-size:11px;font-weight:600}
.ranking-empty{font-size:11px;margin:8px 0;padding:10px 0}
.ranking-table .sort-header{font-size:9px;white-space:normal;gap:2px}
.ranking-table th.numeric .sort-header{justify-content:flex-end}
@media(max-width:1199px){.dashboard-rankings{grid-template-columns:repeat(2,minmax(0,1fr));margin-inline:0}}
@media(max-width:760px){.dashboard-rankings{grid-template-columns:minmax(0,1fr)}.ranking-table td a,.ranking-table td.numeric{font-size:12px}}

/* Local storage summary in administrator settings. */
.storage-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}#storage-usage .quality-row{padding:7px 0;gap:12px;font-size:12px}#storage-usage .fine{margin-top:10px}@media(max-width:760px){.storage-rows{grid-template-columns:minmax(0,1fr)}}

/* Display controls belong to the shared header, including sign-in pages. */
:root{color-scheme:light}
.topbar{position:sticky;top:0;z-index:3;background:var(--bg)}
.display-controls{display:flex;align-items:center;gap:3px;letter-spacing:normal}
.topbar .privacy-toggle,.theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;min-height:0;padding:7px;border:0;border-radius:50%;background:transparent;color:var(--muted)}
.theme-toggle:hover{background:var(--pale);color:var(--green)}
.theme-toggle:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.theme-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.theme-sun,.dark-mode .theme-moon{display:none}
.dark-mode .theme-sun{display:block}
@media(max-width:760px){body{padding-top:54px}.topbar{position:fixed;inset:0 0 auto;height:54px;padding:0 12px;gap:6px}.topbar>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-right{gap:6px;flex-shrink:0}.topbar .privacy-toggle,.theme-toggle{width:40px;height:40px}}

/* Dark colours preserve the same layout, controls and financial colour meaning. */
:root.dark-mode{color-scheme:dark;--bg:#111b18;--ink:#e3ece6;--muted:#a5b6ac;--line:#34483e;--green:#82d4af;--pale:#263d31;--nav:#172c26;--gold:#d8b16c;--surface:#1a2922;--surface-soft:#21332a;--gain:#8bdfae;--danger:#ffab99;--warning:#e1c087}
.dark-mode .card,.dark-mode .metric,.dark-mode .account-card,.dark-mode .secondary{background:var(--surface)}
.dark-mode input,.dark-mode select,.dark-mode textarea{background:var(--bg);border-color:var(--line)}
.dark-mode .tinted,.dark-mode .strategy-base,.dark-mode tbody tr:hover,.dark-mode .unresolved-card:hover,.dark-mode .snapshot-card:hover{background:var(--surface-soft)}
.dark-mode td,.dark-mode .check-note{border-color:var(--line)}
.dark-mode button,.dark-mode .button{color:#11271f}
.dark-mode button:hover,.dark-mode .button:hover{background:#9ee3c1}
.dark-mode .secondary,.dark-mode .sort-header{color:var(--ink)}
.dark-mode .secondary:hover{background:var(--pale)}
.dark-mode .sort-header,.dark-mode .sort-header:hover{background:transparent;color:var(--muted)}
.dark-mode .logout,.dark-mode .logout:hover{background:transparent;color:#b7c8be}
.dark-mode .privacy-toggle,.dark-mode .theme-toggle{color:var(--muted);background:transparent}
.dark-mode .privacy-toggle:hover,.dark-mode .theme-toggle:hover{color:var(--green);background:var(--pale)}
.dark-mode .pill,.dark-mode .eyebrow,.dark-mode footer,.dark-mode .venue{color:var(--muted)}
.dark-mode .pill.warning,.dark-mode .venue.MERK,.dark-mode .accounting-missing,.dark-mode .account-profit-warning strong{color:var(--warning)}
.dark-mode .pill.warning{border-color:#66573a}
.dark-mode .notice{background:#342f20;border-color:#66573a;color:#ead5a1}
.dark-mode .notice.success,.dark-mode .notice.info{background:#253c2e;border-color:#3e604b;color:#b0ddba}
.dark-mode .notice.error,.dark-mode .attention-notice{background:#3c2724;border-color:#794a41;color:#ffd0c4}
.dark-mode .attention-notice{border-left-color:#e96c61}
.dark-mode .attention-notice strong,.dark-mode .danger,.dark-mode .negative,.dark-mode .strategy-alert,.dark-mode .review-star,.dark-mode .account-cash .account-value.danger{color:var(--danger)}
.dark-mode .gain,.dark-mode .portfolio-marker{color:var(--gain)}
.dark-mode .tag,.dark-mode .account-status,.dark-mode .ask-badge,.dark-mode .ask-badge.unknown{background:#2c3c32;color:#c0d2c4}
.dark-mode .tag.warn,.dark-mode .account-status.closed,.dark-mode .ask-badge.no,.dark-mode .ask-badge.likely{background:#413823;color:#e6cb95}
.dark-mode .account-status.active,.dark-mode .ask-badge.yes,.dark-mode .ask-badge.observed{background:#274a34;color:#b3e4bc}
.dark-mode .account-type{background:#2b3c46;color:#c0d5df}
.dark-mode .exposure-row meter,.dark-mode .exposure-name meter{background:var(--line)}
.dark-mode .exposure-row meter::-webkit-meter-bar,.dark-mode .exposure-name meter::-webkit-meter-bar{background:var(--line)}
.dark-mode .grid-line{stroke:var(--line)}
.dark-mode .activity-chart text{fill:var(--muted)}
.dark-mode .account-card-link:hover{box-shadow:0 3px 12px #0003}

.pdf-document td{padding:6px 10px}.pdf-document .pdf-value{display:flex;align-items:center;gap:8px}.pdf-document .pdf-value input{width:150px;min-height:36px;padding:7px 9px}.pdf-document .pdf-value span{font-size:12px;white-space:nowrap}
@media(max-width:760px){.pdf-document .pdf-value input{width:110px}}
.import-file-results{list-style:none;margin:8px 0;padding:0}.import-file-results li{display:grid;gap:3px;padding:8px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.import-file-results span,.import-file-results a{font-size:12px}#import-progress{margin-top:16px}#import-progress progress{width:100%;height:8px;accent-color:var(--green)}

.calculation-proposal label{display:inline-flex;align-items:center;gap:7px;width:auto;margin:0}.calculation-proposal input[type=checkbox]{width:18px;height:18px;min-height:0;padding:0;margin:0;flex:none;accent-color:var(--green)}.calculation-proposal+.calculation-proposal{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}

/* All navigation links share one scroll area; hints only cover a clipped edge. */
.sidebar-navigation{position:relative;min-height:0}
.sidebar .menu-scroll{position:absolute;left:0;right:8px;z-index:1;min-height:26px;padding:3px 6px;border:1px solid #526c5f;border-radius:5px;background:#254335;color:#e5f0cd;font-size:10px;line-height:18px;box-shadow:0 2px 8px #0003}
.sidebar .menu-scroll:hover{background:#355743;color:#fff}
.menu-scroll-up{top:0}.menu-scroll-down{bottom:0}
.sidebar .menu-scroll[hidden]{display:none!important}
.sidebar nav{scroll-padding-block:28px;scrollbar-width:thin;scrollbar-color:#779383 transparent}
.sidebar nav::-webkit-scrollbar{width:6px}
.sidebar nav::-webkit-scrollbar-thumb{background:#779383;border-radius:6px}
.sidebar nav::-webkit-scrollbar-track{background:transparent}
@media(min-width:761px){
  .sidebar{padding:18px 14px}
  .sidebar>.brand{flex-shrink:0}
  .sidebar-navigation{display:flex;flex-direction:column;flex:1;margin-top:16px}
  .sidebar-navigation nav{flex:1;margin:0;gap:1px;overflow-x:hidden;overflow-y:auto}
  .sidebar nav>a{flex-shrink:0;min-height:31px;padding:5px 10px;gap:10px;font-size:12px;line-height:21px}
  .sidebar nav>a>span[aria-hidden]{font-size:17px;width:19px;flex-shrink:0}
  .sidebar .overview-submenu{flex-shrink:0;margin:0 0 3px 17px;padding-left:8px}
  .sidebar .nav-accounts{margin:0}
  .sidebar .nav-accounts summary{padding:4px 0}
  .sidebar .account-submenu a{padding:4px 8px;line-height:1.45}
  .sidebar-bottom{padding:10px 6px 0}
  .sidebar-bottom .identity{margin-top:7px;line-height:1.35}
  .sidebar-bottom .logout{min-height:28px;margin-top:3px;padding:3px 0}
}
@media(max-width:760px){
  .sidebar{padding:13px 14px}
  .sidebar-navigation nav{margin:10px 0 0;gap:3px;overflow:visible}
  .sidebar nav>a{min-height:38px;padding:7px 9px}
  .sidebar .menu-scroll{display:none}
}
