/* Account management and ledger-derived prop analytics, shared by both themes. */
.propfirm-page input,.propfirm-page select {background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color,rgba(128,145,180,.24));border-radius:8px;padding:9px 10px;min-width:0;font:inherit;color-scheme:dark}
body.light-mode .propfirm-page input,body.light-mode .propfirm-page select {color-scheme:light}
.propfirm-manage-row,.propfirm-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:16px 0}.propfirm-manage-row label,.propfirm-filters label{display:grid;gap:6px;font-size:11px;color:var(--text-secondary)}.propfirm-filters label:first-child{flex:1;min-width:180px}.propfirm-filters select{max-width:170px}.propfirm-account-item{display:grid;gap:8px;min-width:0}.propfirm-account-item .propfirm-account-card{width:100%;height:100%;text-align:left;gap:12px;display:grid}.propfirm-account-item small{color:var(--text-secondary);overflow-wrap:anywhere}.propfirm-create-grid{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))!important}.propfirm-create-grid label[hidden]{display:none}.propfirm-account-card b,.propfirm-overview-head h2{overflow-wrap:anywhere}
.prop-analytics{display:grid;gap:18px;margin-top:22px;min-width:0}.prop-analytics-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.prop-analytics-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.prop-analytics-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.prop-analytics-card{background:var(--bg-card);border:1px solid var(--border-color,rgba(128,145,180,.2));border-radius:14px;padding:18px;min-width:0;color:var(--text-secondary)}.prop-analytics-card h3{font-size:14px;color:var(--text-primary);margin:0 0 16px}.prop-analytics-card>strong{display:block;text-align:center}.prop-analytics-card p,.prop-analytics-card details{font-size:11px;line-height:1.6}.prop-analytics-card b{color:var(--text-primary)}.prop-analytics-card svg{width:100%;max-height:260px;overflow:visible}.prop-analytics-card svg text{fill:var(--text-secondary);font-size:11px}.prop-analytics-stats article{display:grid;gap:12px}.prop-analytics-stats b{font-size:20px}.prop-analytics-heading{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:16px}.prop-analytics-heading>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.prop-analytics-heading>div:first-child:has(h2){display:block}.prop-analytics-heading h2{font-size:19px;margin:8px 0}.prop-analytics button{background:var(--bg-elevated,var(--bg-card));border:1px solid var(--border-color,rgba(128,145,180,.24));border-radius:7px;padding:8px 11px;color:var(--text-primary);cursor:pointer;font:inherit;font-size:11px}.prop-analytics button[aria-pressed=true]{background:rgba(61,127,255,.18);border-color:#3d7fff}.prop-analytics button:disabled{opacity:.4;cursor:default}.prop-analytics-dates label{display:grid;gap:5px;font-size:11px}.prop-analytics-pairs{display:flex;gap:10px;justify-content:space-between;margin-top:18px;font-size:11px}.prop-analytics-pairs span{display:grid;gap:8px}.prop-donut{width:130px;height:130px;border-radius:50%;background:conic-gradient(#16b98c var(--win),#ef5366 0);display:grid;place-items:center;margin:10px auto 18px}.prop-donut>span{width:102px;height:102px;display:grid;align-content:center;text-align:center;border-radius:50%;background:var(--bg-card)}.prop-donut b{font-size:26px}.prop-radar-grid{fill:none;stroke:rgba(128,145,180,.25)}.prop-radar-value{fill:rgba(61,127,255,.3);stroke:#73a7ff;stroke-width:2}.prop-chart-zero{stroke:var(--text-tertiary,#66718c);stroke-dasharray:3 4}.prop-calendar{overflow-x:auto}.prop-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(62px,1fr)) minmax(82px,1.1fr);gap:5px;margin-top:5px;min-width:560px}.prop-calendar-day,.prop-calendar-total{display:grid;gap:7px;min-height:65px;padding:10px 6px;border:1px solid rgba(128,145,180,.14);border-radius:7px;font-size:11px}.prop-calendar-day.profit{background:rgba(22,185,140,.09)}.prop-calendar-day.loss{background:rgba(239,83,102,.09)}.prop-calendar-day small{font-size:10px}.prop-calendar-labels{font-size:10px;text-align:center}.prop-calendar-total{background:rgba(61,127,255,.08)}
@media(max-width:900px){.prop-analytics-three,.prop-analytics-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.prop-analytics-two,.prop-analytics-three,.prop-analytics-stats{grid-template-columns:1fr}.propfirm-manage-row label{width:100%}.propfirm-manage-row input{width:100%}.prop-analytics-card{padding:13px}.prop-analytics-heading{align-items:flex-start}.propfirm-filters label{flex:1;min-width:110px}.propfirm-filters select{max-width:none;width:100%}}
.prop-workspace-header label{display:flex;align-items:center;gap:8px;margin-top:9px;font-size:11px;color:var(--text-secondary)}.prop-workspace-header select{max-width:280px;min-width:0;padding:7px 9px;border-radius:8px;border:1px solid var(--border-color,rgba(128,145,180,.24));background:var(--bg-card);color:var(--text-primary);font:inherit;color-scheme:dark}.prop-workspace-header>div{min-width:0}.prop-workspace-header b{overflow-wrap:anywhere}body.light-mode .prop-workspace-header select{color-scheme:light}@media(max-width:650px){.prop-workspace-header label{flex-wrap:wrap}.prop-workspace-header select{max-width:100%}}
/* Keep the prop dashboard inside the viewport instead of growing the app shell. */
@media(max-width:900px){
 body:has(.propfirm-page) .app-shell,body:has(.prop-workspace-header) .app-shell,body:has(.propfirm-page) .main-area,body:has(.prop-workspace-header) .main-area{height:100dvh!important;min-height:0!important}
 body:has(.propfirm-page) .page-container,body:has(.prop-workspace-header) .page-container{overflow:auto;min-height:0}
 .propfirm-page,.propfirm-overview,.propfirm-overview-main,.propfirm-overview-side{min-width:0;max-width:100%}
}
@media(max-width:650px){
 body:has(.propfirm-page) .sidebar,body:has(.prop-workspace-header) .sidebar{width:64px!important;min-width:64px!important;padding:12px 7px;height:100dvh;overflow-y:auto}
 body:has(.propfirm-page) .sidebar :is(.brand-name,.badge-beta,.account-card,.nav-label,.nav-sub,.chev,.upgrade-card),body:has(.prop-workspace-header) .sidebar :is(.brand-name,.badge-beta,.account-card,.nav-label,.nav-sub,.chev,.upgrade-card){display:none!important}
 body:has(.propfirm-page) .sidebar .nav-item span,body:has(.prop-workspace-header) .sidebar .nav-item span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
 body:has(.propfirm-page) .sidebar .nav-item,body:has(.prop-workspace-header) .sidebar .nav-item{justify-content:center;padding:10px 4px}
 body:has(.propfirm-page) .topbar-center,body:has(.prop-workspace-header) .topbar-center{display:none}
 body:has(.propfirm-page) .topbar-right :is(#newTradeBtn,.clock,[title="Notifications"]),body:has(.prop-workspace-header) .topbar-right :is(#newTradeBtn,.clock,[title="Notifications"]){display:none}
 body:has(.propfirm-page) .topbar-left,body:has(.prop-workspace-header) .topbar-left{display:flex;flex-direction:column;align-items:flex-start;gap:4px;max-width:none;flex:1;min-width:0}
 body:has(.propfirm-page) .page-date,body:has(.prop-workspace-header) .page-date{display:none}
 body:has(.propfirm-page) .page-title,body:has(.prop-workspace-header) .page-title{font-size:13px;max-width:100%}
 body:has(.propfirm-page) .topbar,body:has(.prop-workspace-header) .topbar{gap:8px;padding:8px;min-height:64px}
 body:has(.propfirm-page) #userPlanBadge,body:has(.prop-workspace-header) #userPlanBadge{padding:3px 7px;min-width:0;font-size:10px}
 .propfirm-hero{padding:14px}.propfirm-hero h2{font-size:21px}.propfirm-hero-mark{display:none}.propfirm-notice{font-size:11px}.propfirm-overview-stats{grid-template-columns:1fr!important}
 .prop-workspace-header{display:grid;gap:10px;padding:12px}.prop-workspace-header nav{display:flex;overflow:auto;max-width:100%;flex-wrap:nowrap}.prop-workspace-header nav button{white-space:nowrap}
}
/* Account-list / selected-detail composition, matching the reference workflow. */
.page-container:has(.prop-portal){padding:12px!important;overflow:hidden!important;min-height:0}
.propfirm-page.prop-portal{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;width:100%;max-width:none;height:calc(100dvh - 126px);min-height:0;margin:0}
.prop-account-sidebar{display:flex;flex-direction:column;gap:14px;min-height:0;overflow-y:auto;padding:16px;background:var(--bg-sidebar,var(--bg-card));border:1px solid var(--border);border-radius:14px}
.prop-account-welcome{padding:16px 12px;border:1px solid var(--border);border-radius:12px;background:linear-gradient(125deg,rgba(61,127,255,.14),transparent)}.prop-account-welcome h2{font-size:18px;margin:9px 0}.prop-account-welcome p{font-size:11px;color:var(--text-secondary);margin:0;line-height:1.5}.prop-new-account{justify-content:center;width:100%;min-height:42px;flex:none}
.prop-account-sidebar>.propfirm-card{background:transparent;border:0;padding:0;box-shadow:none;min-width:0}.prop-account-sidebar .propfirm-section-head h3{font-size:13px}.prop-account-sidebar .propfirm-section-head p{font-size:10px;line-height:1.5}.prop-account-sidebar .propfirm-account-grid{grid-template-columns:1fr;gap:12px}.prop-account-sidebar .propfirm-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 16px}.prop-account-sidebar .propfirm-filters label{min-width:0!important;font-size:10px}.prop-account-sidebar .propfirm-filters label:first-child{grid-column:1/-1}.prop-account-sidebar .propfirm-filters select{max-width:none;width:100%;padding:8px 5px}.prop-account-sidebar .propfirm-filters input{width:100%}.prop-account-sidebar .propfirm-account-item{gap:5px}.prop-account-sidebar .propfirm-account-card{padding:13px;gap:9px;border-radius:10px;background:var(--bg-card);border:1px solid var(--border)}.prop-account-sidebar .propfirm-account-card.selected{border-color:var(--blue);box-shadow:inset 3px 0 var(--blue);background:rgba(61,127,255,.09)}.prop-account-sidebar .propfirm-account-card small{font-size:10px}.prop-account-sidebar .propfirm-account-item>.propfirm-secondary{padding:5px 9px;justify-self:end;font-size:10px}.prop-account-rail-links{display:grid;gap:7px;padding-top:10px;border-top:1px solid var(--border)}.prop-account-rail-links button{padding:9px;border-radius:7px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font:inherit;font-size:11px;text-align:left}
.prop-account-detail{min-width:0;min-height:0;overflow-y:auto;scrollbar-gutter:stable;padding:6px 9px 20px 0}.prop-account-overview{border:0!important;background:transparent!important;padding:8px 4px!important;min-width:0}.prop-account-overview .propfirm-overview-head{margin:14px 0 16px;align-items:center}.prop-account-overview .propfirm-overview-head h2{font-size:22px;margin:8px 0}.prop-account-settings{margin-bottom:16px;color:var(--text-secondary);font-size:11px}.prop-account-settings summary{cursor:pointer}.prop-account-settings[open]{border:1px solid var(--border);padding:12px;border-radius:10px}.prop-account-overview .propfirm-overview-stats{gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.prop-account-overview .propfirm-overview-stats article{padding:16px}.prop-account-overview .propfirm-overview-stats b{font-size:17px}.prop-account-overview .prop-analytics{gap:16px;margin-top:18px}.prop-account-overview .prop-analytics-heading h2{font-size:15px}.prop-account-overview .prop-analytics-two{gap:16px}.prop-account-overview .prop-radar{background:linear-gradient(125deg,#133a71,#082858);color:#b9cbe8;border-color:#23487a}.prop-account-overview .prop-radar :is(h3,b,summary){color:#f0f6ff}.prop-account-overview .prop-radar svg{max-height:210px}.prop-account-overview .prop-radar svg text{fill:#c9dafa}.prop-account-overview .prop-radar-value{fill:rgba(105,171,255,.35);stroke:#c5ddff}.prop-account-overview .prop-analytics-card{padding:17px}.prop-account-overview .prop-analytics-two>.prop-analytics-card{min-height:0}.prop-account-overview .propfirm-equity-chart{padding:18px;border:1px solid var(--border);border-radius:12px}.prop-account-overview .propfirm-equity-chart svg{width:100%;height:190px}.prop-objectives{display:grid;gap:10px}.prop-objectives>h3{font-size:14px;margin:6px 0}.prop-objective-card{border:1px solid var(--border);padding:16px;border-radius:12px;background:var(--bg-card)}.prop-objective-card>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:12px}.prop-objective-card p{font-size:10px;color:var(--text-secondary);line-height:1.5}.prop-objective-card strong{color:var(--text-primary);font-size:11px;white-space:nowrap}.prop-practice-info{font-size:11px;color:var(--text-secondary);line-height:1.6;margin-top:18px}.prop-practice-info summary{cursor:pointer}.prop-account-empty{padding:30px;border:1px solid var(--border);border-radius:14px;background:var(--bg-card)}.prop-account-empty p{line-height:1.7;color:var(--text-secondary);max-width:560px}
.prop-create-backdrop{position:fixed;inset:0;z-index:10020;background:rgba(2,8,18,.78);display:flex;align-items:center;justify-content:center;padding:22px;backdrop-filter:blur(7px)}.prop-create-dialog{background:var(--bg-app);border:1px solid var(--border);border-radius:18px;width:min(1100px,100%);max-height:calc(100dvh - 44px);overflow-y:auto;padding:20px;box-shadow:0 30px 100px #0008}.prop-create-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.prop-create-dialog h2{font-size:21px;margin:7px 0}.prop-create-dialog .propfirm-card{border:0;background:transparent;padding:0}.prop-create-dialog .propfirm-section-head{display:none}.prop-create-dialog .propfirm-plan-card{padding:18px}.prop-create-dialog .propfirm-plan-title{font-size:27px}.prop-create-dialog .propfirm-plan-metrics{gap:8px}.prop-create-dialog .propfirm-plan-metrics>span{padding:12px}.prop-create-dialog .propfirm-plan-select{padding:10px}.prop-create-dialog .propfirm-create-grid{margin-top:18px}
body:has(.prop-portal) #userPlanBadge{width:max-content;justify-self:start;min-width:0}body:has(.prop-portal) .topbar-left{grid-template-columns:max-content max-content;flex:0 1 auto;max-width:none}body:has(.prop-portal) .topbar-center{flex:1;min-width:0}
@media(max-width:1200px){.propfirm-page.prop-portal{grid-template-columns:260px minmax(0,1fr);gap:12px}.prop-account-overview .propfirm-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.prop-account-overview .prop-analytics-three{grid-template-columns:1fr}.prop-account-overview .prop-analytics-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){.prop-account-overview .prop-analytics-two{grid-template-columns:1fr}.prop-account-sidebar{padding:12px}.prop-account-overview .propfirm-overview-head{align-items:flex-start;flex-direction:column}.prop-account-overview .propfirm-overview-head h2{font-size:19px}}
@media(max-width:800px){.page-container:has(.prop-portal){overflow-y:auto!important}.propfirm-page.prop-portal{height:auto;grid-template-columns:1fr!important;gap:14px}.prop-account-sidebar{max-height:360px;overflow-y:auto}.prop-account-detail{overflow:visible;padding:0}.prop-account-overview .prop-analytics-two{grid-template-columns:repeat(2,minmax(0,1fr))}.prop-account-overview .propfirm-overview-head{flex-direction:row;flex-wrap:wrap}.prop-create-dialog{padding:14px}.prop-create-dialog .propfirm-plan-grid{grid-template-columns:1fr}.prop-create-backdrop{padding:10px}.prop-create-dialog{max-height:calc(100dvh - 20px)}}
@media(max-width:650px){.prop-account-overview .prop-analytics-two,.prop-account-overview .prop-analytics-stats{grid-template-columns:1fr}.prop-account-overview .propfirm-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.prop-account-overview .propfirm-overview-stats article{padding:11px}.prop-account-overview .propfirm-overview-stats b{font-size:13px}.prop-account-overview .propfirm-overview-head .propfirm-primary{width:100%}.prop-objective-card>div:first-child{flex-wrap:wrap}.prop-create-dialog .propfirm-plan-title{font-size:23px}.prop-create-dialog .propfirm-plan-metrics>span{padding:9px}.prop-create-dialog .propfirm-create-grid{grid-template-columns:1fr!important}.prop-account-empty{padding:18px}}

.prop-account-overview{gap:10px}.prop-account-overview .propfirm-overview-head{margin:3px 0 8px;padding:4px 0}.prop-account-settings{margin-bottom:7px}.prop-account-overview .prop-analytics{margin-top:9px}.prop-round-result{border:1px solid var(--border);background:var(--bg-card);padding:12px;border-radius:9px;font-size:12px;color:var(--text-secondary)}
.prop-account-load-state{font-size:11px;line-height:1.6;color:var(--text-secondary);overflow-wrap:anywhere}.prop-account-load-state:empty{display:none}
