/* Shared analytics layout; colours come from the selected Bitácora theme. */
/* Shared refinements: financial semantics independent from the accent colour. */
:root[data-theme]{--green:#58d6a1}
:root[data-theme] .positive{color:var(--green)}
:root[data-theme] .negative{color:var(--red)}
:root[data-theme] .donut circle:nth-of-type(2){stroke:var(--green)}
:root[data-theme] .donut-legend .dot:not(.dot-loss):not(.dot-neutral){background:var(--green)}
#sourceBadge{display:none!important}
:root[data-theme] .content{max-width:none;margin:0;padding:var(--space-20) var(--space-24) var(--space-40)}
:root[data-theme] .pagehead{align-items:center;gap:var(--space-12);margin-bottom:var(--space-16)}
:root[data-theme] .pagehead h1{font-size:var(--type-title);margin:0;line-height:var(--leading-heading)}
.pagehead .eyebrow,#pageSubtitle{display:none}
:root[data-theme] .datechip{border:0;padding:0;font-size:var(--type-caption);text-transform:none}
:root[data-theme] .topbar{padding-left:var(--space-20);padding-right:var(--space-20)}
:root[data-desktop-app="true"] .topbar{grid-template-areas:"drag controls" "actions actions";min-height:96px;row-gap:var(--space-8);padding-top:var(--space-8);padding-bottom:var(--space-8)}
:root[data-desktop-app="true"] .topbar{grid-template-columns:minmax(140px,1fr) auto auto;grid-template-areas:"drag actions controls";min-height:58px;gap:var(--space-8);padding-top:var(--space-4);padding-bottom:var(--space-4)}
:root[data-desktop-app="true"] .topactions{flex-wrap:nowrap;gap:var(--space-8);min-width:0}
:root[data-desktop-app="true"] .scope-picker span{display:none}
:root[data-desktop-app="true"] .scope-picker select{min-width:125px;max-width:175px;min-height:34px}
:root[data-desktop-app="true"] .desktop-window-controls{gap:var(--space-4)}
:root[data-desktop-app="true"] .desktop-window-controls #newTradeTop{width:auto;height:auto;min-height:34px;margin-right:var(--space-8);padding:var(--space-8) var(--space-12);white-space:nowrap;background:var(--primary-bg);color:var(--primary-text);border-color:var(--accent)}
@media(max-width:1250px){:root[data-desktop-app="true"] .topbar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"drag controls" "actions actions";min-height:92px}:root[data-desktop-app="true"] .topactions{justify-content:flex-end}}
:root[data-desktop-app="true"] .breadcrumbs{display:none}
:root[data-desktop-app="true"] .desktop-drag-bar{height:32px;cursor:grab;background:transparent}
:root[data-desktop-app="true"] .desktop-drag-bar>span:last-child{display:none}
:root[data-desktop-app="true"] .desktop-drag-bar:active{cursor:grabbing}
#desktopMinimize{margin-left:var(--space-8)}
#desktopClose:hover{background:var(--red);color:var(--bg)}
:root[data-theme] .has-subnav .content{padding-top:var(--space-20)}
:root[data-theme] .insight-grid{align-items:stretch;gap:var(--space-widget-gutter)}
:root[data-theme] .insight-widget{display:flex;flex-direction:column;padding:var(--space-16);min-width:0}
.insight-widget>.panelhead{gap:var(--space-8);align-items:center;min-height:30px;margin-bottom:var(--space-16)}
.insight-widget>.panelhead h2{flex:1;min-width:0;overflow-wrap:anywhere;margin:0}
.widget-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-12)}
.widget-content>.empty{flex:1;display:grid;place-items:center;min-height:110px;padding:var(--space-20);text-align:center}
.widget-content>.hinttext{margin:0;font-size:var(--type-caption)}
.widget-content .chart{height:210px;min-height:210px}
.widget-content .donut-wrap{flex:1}
.insight-widget:has(.calendar-grid)>.widget-content>.card.panel{padding:0;border:0;background:transparent}
.widget-content .responsive-curve{width:100%;height:220px;display:block}
.balance-estimated-line,.balance-observed-line{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.balance-estimated-line{stroke:var(--accent)}
.balance-observed-line{stroke:var(--muted);stroke-dasharray:5 4}
.balance-estimated-point{fill:var(--accent)}
.balance-observed-point{fill:var(--card);stroke:var(--muted);stroke-width:2}
.widget-content .responsive-curve text{font-size:var(--type-caption)}
:root[data-theme] .bars .fill:not(.loss){background:var(--green)}
:root[data-theme] .bars .fill.loss{background:var(--red)}
:root[data-theme] .insight-toolbar>.insight-actions--right:first-child{margin-left:auto;margin-right:0;width:auto;justify-content:flex-end}
.widget-content .insight-kpis{flex:1;align-content:center}
.widget-grip{flex:none;border:0;background:transparent;color:var(--muted);padding:var(--space-4) var(--space-8);font-size:var(--type-section-lg);cursor:grab;user-select:none;touch-action:none}
.widget-grip:active{cursor:grabbing}
.widget-grip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.insight-widget.is-dragging{opacity:.45}
.insight-widget.drop-target{outline:2px solid var(--accent);outline-offset:-2px}
.insight-widget .table th:not(:first-child),.insight-widget .table td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}
.insight-widget .table td:first-child{white-space:normal;overflow-wrap:anywhere;min-width:110px}
.insight-widget .table th,.insight-widget .table td{padding:var(--space-12) var(--space-12)}
.insight-widget .table{min-width:0}
:root[data-theme] .insight-toolbar{margin-bottom:var(--space-12)}
:root[data-theme] .insight-board-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:var(--space-12)}
:root[data-theme] .insight-board-item{padding:var(--space-16);align-content:start}
@media(max-width:760px){:root[data-theme] .content{padding:var(--space-16) var(--space-12) var(--space-32)}.insight-widget>.panelhead{flex-wrap:wrap}.insight-widget-controls{margin-left:auto}:root[data-theme] .pagehead h1{font-size:var(--type-number)}:root[data-desktop-app="true"] .topbar{min-height:96px;padding:var(--space-8) var(--space-12)}.datechip{display:none}}
.insight-report-nav button{border:1px solid transparent;background:transparent;color:var(--muted);border-radius:var(--radius);padding:var(--space-12) var(--space-16);text-align:left;font-size:var(--type-label)}
.insight-report-nav button:hover{color:var(--text);background:var(--card2)}
.insight-report-nav button.active{color:var(--text);border-color:var(--line);background:var(--card2);font-weight:var(--weight-semibold)}
.insight-toolbar{display:flex;align-items:center;gap:var(--space-12);flex-wrap:wrap;margin:0 0 var(--space-20)}
.insight-toolbar>div:first-child{margin-right:auto;display:grid;gap:var(--space-4)}
.insight-toolbar strong{font-size:var(--type-section)}
.insight-toolbar small{color:var(--muted);font-size:var(--type-caption)}
.insight-toolbar label,.insight-board-select{display:grid;gap:var(--space-4);color:var(--muted);font-size:var(--type-caption)}
.insight-toolbar select,.insight-toolbar input{min-width:180px}
.insight-actions{display:flex;gap:var(--space-8);flex-wrap:wrap}
.insight-actions--right{margin-left:auto}
.insight-toolbar>.insight-actions--right{display:flex;margin-left:auto;margin-right:0;gap:var(--space-8)}
.insight-toolbar>div.insight-actions--right:first-child{display:flex}
.insight-drilldown{display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);flex-wrap:wrap;margin-bottom:var(--space-16)}
.insight-widget:has(.calendar-grid)>.card.panel{padding:0;border:0;background:transparent}
.insight-board-list{display:grid;gap:var(--space-12)}
.insight-board-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-16);flex-wrap:wrap}
.insight-board-item>div:first-child{display:grid;gap:var(--space-4)}
.insight-board-item strong{font-size:var(--type-body)}
.insight-board-item small{font-size:var(--type-caption);color:var(--muted)}
.overview-operativas{margin-bottom:var(--space-20)}
.overview-operativas>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);flex-wrap:wrap;font-weight:var(--weight-semibold)}
.overview-operativas>summary::marker{color:var(--accent)}
.overview-operativas>summary span{font-variant-numeric:tabular-nums}
.overview-operativas .hinttext{margin:var(--space-12) 0}
.insight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-16);align-items:stretch}
.insight-widget{min-width:0;overflow:hidden}
.insight-widget.span-two{grid-column:1/-1}
.insight-widget .panelhead{align-items:flex-start}
.insight-widget .tablewrap{border:0;background:transparent}
.insight-widget .chart{height:240px}
.insight-widget .bars{max-height:410px;overflow:auto}
.insight-widget .empty{min-height:90px}
.insight-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-12)}
.insight-kpi{display:grid;align-content:start;gap:var(--space-8);padding:var(--space-12) 0;border-top:1px solid var(--line);min-width:0}
.insight-kpi small{color:var(--muted);font-size:var(--type-caption)}
.insight-kpi strong{font-size:var(--type-widget-value);font-variant-numeric:tabular-nums;line-height:var(--leading-heading);overflow-wrap:anywhere}
.insight-kpi span{color:var(--dim);font-size:var(--type-caption);line-height:var(--leading-compact)}
.insight-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-16)}
.insight-pair>div{display:grid;gap:var(--space-8);border-top:1px solid var(--line);padding-top:var(--space-12)}
.insight-pair small{color:var(--muted);font-size:var(--type-caption)}
.insight-pair strong{font-size:var(--type-section-lg)}
.insight-pair span,.insight-account span{font-size:var(--type-label)}
.insight-account{display:flex;justify-content:space-between;gap:var(--space-12);padding:var(--space-12) 0;border-bottom:1px solid var(--line)}
.insight-account strong{font-size:var(--type-label)}
.insight-account span{color:var(--muted);text-align:right}
.insight-catalog{margin-bottom:var(--space-16)}
.insight-catalog h2{font-size:var(--type-section);margin:0 0 var(--space-12)}
.insight-catalog-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--space-8);max-height:270px;overflow:auto}
.insight-catalog-list button{display:grid;gap:var(--space-4);text-align:left;padding:var(--space-12);border:1px solid var(--line);border-radius:var(--radius);background:var(--card2);color:var(--text);font-size:var(--type-caption)}
.insight-catalog-list button:hover{border-color:var(--accent)}
.insight-catalog-list small{font-size:var(--type-caption);color:var(--muted)}
.insight-widget-controls{display:flex;gap:var(--space-4);flex:none}
.insight-widget-controls button{min-width:28px;height:28px;border:1px solid var(--line);border-radius:7px;background:var(--card2);color:var(--text)}
.insight-widget[draggable]{cursor:grab}
.insight-widget[draggable]:active{cursor:grabbing}
.insight-calendar-summary{display:flex;gap:var(--space-16);align-items:center;justify-content:space-between;flex-wrap:wrap;padding:var(--space-12) var(--space-16);margin-bottom:var(--space-16);border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}
.insight-calendar-summary span{color:var(--muted);font-size:var(--type-caption)}
.insight-calendar-summary strong{font-size:var(--type-section);font-variant-numeric:tabular-nums}
.insight-weeks{display:flex;gap:var(--space-8);flex-wrap:wrap;margin:var(--space-12) 0 var(--space-20)}
.insight-weeks span{border:1px solid var(--line);border-radius:8px;padding:var(--space-8) var(--space-12);font-size:var(--type-caption);color:var(--muted)}
.insight-weeks strong{color:var(--text);margin-left:var(--space-8);font-variant-numeric:tabular-nums}
.insight-report-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:var(--space-20);align-items:start}
.insight-report-nav{display:grid;gap:var(--space-4);position:sticky;top:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);padding:var(--space-8)}
.insight-report-main{min-width:0}
.insight-report-main>.sectionbar{margin-top:var(--space-4)}
.insight-report-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-12)}
.insight-report-grid>.insight-report-metric{grid-column:span 2}
.insight-report-grid.remainder-1>.insight-report-metric:last-child{grid-column:1/-1}
.insight-report-grid.remainder-2>.insight-report-metric:nth-last-child(-n+2){grid-column:span 3}
.insight-report-metric{padding:var(--space-16);min-width:0;display:grid;gap:var(--space-12);align-content:start}
.insight-pattern-empty{padding:var(--space-20);margin-top:var(--space-16);color:var(--muted)}
.insight-report-metric>div:first-child{display:grid;gap:var(--space-8)}
.insight-report-metric small{color:var(--muted);font-size:var(--type-caption)}
.insight-report-metric strong{font-size:var(--type-number);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.insight-state{justify-self:start;border:1px solid var(--line);border-radius:99px;padding:var(--space-4) var(--space-8);font-size:var(--type-caption);color:var(--muted)}
.insight-state.warning{color:var(--yellow)}
.insight-state.unavailable,.insight-report-metric .muted{color:var(--dim)}
.insight-report-metric details{border-top:1px solid var(--line);padding-top:var(--space-8);font-size:var(--type-caption);color:var(--muted);line-height:var(--leading-body)}
.insight-report-metric summary{cursor:pointer;color:var(--accent)}
.insight-report-metric p{margin:var(--space-8) 0 0}
.insight-report-metric :focus-visible,.insight-board-item :focus-visible,.overview-operativas summary:focus-visible,.insight-catalog-list :focus-visible,.insight-widget-controls :focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:1100px){.insight-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insight-report-grid>.insight-report-metric,.insight-report-grid.remainder-1>.insight-report-metric:last-child,.insight-report-grid.remainder-2>.insight-report-metric:nth-last-child(-n+2){grid-column:span 1}.insight-report-grid.odd-count>.insight-report-metric:last-child{grid-column:1/-1}.insight-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.insight-grid,.insight-report-layout{grid-template-columns:1fr}.insight-report-nav{position:static;display:flex;overflow:auto}.insight-report-nav button{flex:none}.insight-report-grid{grid-template-columns:1fr}.insight-report-grid>.insight-report-metric,.insight-report-grid.remainder-1>.insight-report-metric:last-child,.insight-report-grid.remainder-2>.insight-report-metric:nth-last-child(-n+2){grid-column:1/-1}.insight-widget.span-two{grid-column:auto}.insight-toolbar{align-items:stretch}.insight-toolbar>div:first-child{width:100%}}
@media(max-width:480px){.insight-kpis,.insight-pair{grid-template-columns:1fr 1fr}.insight-calendar-summary{justify-content:flex-start}.insight-catalog-list{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Espacio de trabajo: pocas entradas principales y subnavegación contextual. */
#filterBar[hidden]{display:none!important}
.has-subnav .main{display:grid;grid-template-columns:190px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);align-content:start}
.has-subnav .topbar{grid-column:1/-1}
.subnav[hidden]{display:none!important}
.subnav{grid-column:1;grid-row:2;display:flex;flex-direction:column;align-self:stretch;gap:var(--space-4);padding:var(--space-24) var(--space-12) var(--space-32);background:var(--sidebar);border-right:1px solid var(--line);min-width:0}
.subnav-title{padding:0 var(--space-12) var(--space-12);font-size:var(--type-body);color:var(--text)}
.subnav button{border:0;border-radius:9px;background:transparent;color:var(--muted);padding:var(--space-12) var(--space-12);text-align:left;min-height:40px;font-size:var(--type-label);overflow-wrap:anywhere}
.subnav button:hover,.subnav button.active{background:var(--nav-hover);color:var(--text)}
.subnav button.active{font-weight:var(--weight-semibold);box-shadow:inset 3px 0 0 var(--accent)}
.subnav .subnav-create{color:var(--accent);margin-top:var(--space-8)}
.has-subnav .content{grid-column:2;grid-row:2;width:100%;min-width:0}
.theme-menu{position:relative;flex:none}
.header-preferences{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-8);min-width:0}
.currency-picker{display:block;flex:none}
.currency-picker select{width:68px;min-width:68px;min-height:38px;padding:var(--space-8) var(--space-8);border-radius:999px;background:var(--card2);color:var(--text);font-size:var(--type-caption);font-weight:var(--weight-semibold);cursor:pointer}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:calc(-1 * var(--space-2));overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.theme-menu summary{list-style:none;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:var(--card2);color:var(--accent);font-size:var(--icon-19);cursor:pointer}
.theme-menu summary::-webkit-details-marker{display:none}
.theme-menu summary:hover,.theme-menu[open] summary{background:var(--nav-hover)}
.theme-menu-panel{position:absolute;right:0;top:calc(100% + 10px);z-index:20;width:230px;display:grid;gap:var(--space-8);padding:var(--space-16);background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 18px 45px #0007}
.theme-menu-panel label{font-size:var(--type-caption);color:var(--muted)}
.theme-menu-panel select{width:100%}
.catalog-backdrop{position:fixed;inset:0;z-index:80;background:#0009}
.catalog-drawer{position:fixed;inset:0 0 0 auto;z-index:81;display:flex;flex-direction:column;width:min(460px,100vw);padding:var(--space-20);background:var(--card);border-left:1px solid var(--line);box-shadow:-22px 0 70px #0008;overflow:auto}
.catalog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-12);margin-bottom:var(--space-16)}
.catalog-head>div{display:grid;gap:var(--space-4)}
.catalog-head strong{font-size:var(--type-section)}
.catalog-head small{font-size:var(--type-caption);color:var(--muted)}
.catalog-head button{border:0;background:var(--card2);color:var(--text);border-radius:8px;width:32px;height:32px;font-size:var(--type-section-lg)}
.catalog-search{display:grid;gap:var(--space-8);font-size:var(--type-caption);color:var(--muted)}
.catalog-groups{display:flex;gap:var(--space-8);overflow:auto;padding:var(--space-12) 0;flex:none}
.catalog-groups button{border:1px solid var(--line);border-radius:999px;background:var(--card2);color:var(--muted);padding:var(--space-8) var(--space-12);white-space:nowrap;font-size:var(--type-caption)}
.catalog-groups button.active{border-color:var(--accent);color:var(--text)}
.catalog-list{display:grid;gap:var(--space-8);overflow:auto;max-height:42vh;padding-right:var(--space-4)}
.catalog-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);padding:var(--space-12);background:var(--card2);border:1px solid var(--line);border-radius:10px}
.catalog-item[hidden]{display:none}
.catalog-item>div:first-child{display:grid;gap:var(--space-4);min-width:0}
.catalog-item small{color:var(--muted);font-size:var(--type-caption)}
.catalog-item strong{font-size:var(--type-label)}
.catalog-item>div:last-child{display:flex;gap:var(--space-4);flex:none}
.catalog-item .small{padding:var(--space-8) var(--space-8);font-size:var(--type-caption)}
.catalog-preview{display:grid;gap:var(--space-8);margin-top:var(--space-16);padding-top:var(--space-16);border-top:1px solid var(--line)}
.catalog-preview>strong{font-size:var(--type-label)}
.catalog-preview .insight-widget{max-height:280px;overflow:auto}
.catalog-preview .insight-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-8)}
.catalog-preview .insight-kpi strong{font-size:var(--type-section-lg);white-space:nowrap;overflow-wrap:normal;overflow-x:auto}
.catalog-preview .insight-widget .chart{height:150px}
.subnav button:focus-visible,.theme-menu summary:focus-visible,.catalog-drawer button:focus-visible,.catalog-drawer input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:1050px){.has-subnav .main{grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr)}.has-subnav .topbar{grid-column:1}.subnav{grid-column:1;grid-row:2;flex-direction:row;align-self:auto;overflow:auto;padding:var(--space-8) var(--space-16);border-right:0;border-bottom:1px solid var(--line)}.subnav-title{display:none}.subnav button{flex:none;white-space:nowrap}.has-subnav .content{grid-column:1;grid-row:3}}
@media(max-width:650px){.catalog-drawer{padding:var(--space-16)}.catalog-item{align-items:flex-start;flex-direction:column}.catalog-item>div:last-child{width:100%}.catalog-item>div:last-child button{flex:1}.topactions{gap:var(--space-8)}.sourcebadge{display:none}}
.spatial-grid{display:block!important;position:relative}
:root .spatial-grid>.insight-widget{position:absolute;top:0;left:0;margin:0;transition:none}
:root .spatial-grid.grid-settled>.insight-widget{transition:transform .26s cubic-bezier(.22,1,.36,1)}
:root .spatial-grid.grid-settled>.insight-widget.grid-active{transition:none;will-change:transform}
.spatial-grid .widget-content{overflow:auto;min-height:0}
.calendar-widget .widget-content{min-height:0}
.spatial-grid .calendar-widget .widget-content{overflow:hidden}
.calendar-layout{display:flex;flex-direction:column;flex:1;min-height:0;gap:var(--space-8)}
.calendar-summary{display:flex;align-items:center;gap:var(--space-16);min-height:22px;color:var(--muted);font-size:var(--type-caption);white-space:nowrap}
.calendar-summary strong{color:var(--text);font-variant-numeric:tabular-nums}
.calendar-summary .calendar-net{margin-left:auto;font-size:var(--type-body)}
.calendar-month{display:flex;flex-direction:column;flex:1;min-height:0}
.calendar-month-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-8);min-height:28px;margin-bottom:var(--space-8)}
.calendar-month-head h3{margin:0;font-size:var(--type-label);font-weight:var(--weight-semibold)}
.calendar-month-head .calendar-controls{gap:var(--space-4)}
.calendar-month-head .calendar-controls button{width:27px;height:27px;font-size:var(--icon-16)}
.calendar-widget .calendar-scroll{flex:1;min-height:0;overflow:hidden}
.calendar-widget .calendar-grid{height:100%;min-height:0;grid-template-columns:repeat(7,minmax(0,1fr)) minmax(67px,.82fr);gap:var(--space-4)}
.calendar-widget .calendar-weeks-4{grid-template-rows:18px repeat(4,minmax(0,1fr))}
.calendar-widget .calendar-weeks-5{grid-template-rows:18px repeat(5,minmax(0,1fr))}
.calendar-widget .calendar-weeks-6{grid-template-rows:18px repeat(6,minmax(0,1fr))}
.calendar-widget .weekday{min-width:0;padding:var(--space-2) 0;font-size:var(--type-caption);letter-spacing:var(--tracking-small)}
.calendar-widget .day,.calendar-week-total{min-height:0;min-width:0;overflow:hidden;padding:var(--space-4) var(--space-4);border-radius:6px}
.calendar-widget .day{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;line-height:var(--leading-heading)}
.calendar-widget .day .daynum{font-size:var(--type-caption);line-height:var(--leading-heading)}
.calendar-widget .day .daypnl{display:block;margin-top:var(--space-2);font-size:var(--type-caption);line-height:var(--leading-heading);font-variant-numeric:tabular-nums;white-space:nowrap}
.calendar-widget .day .daycount{display:block;margin-top:var(--space-2);font-size:var(--type-caption);line-height:var(--leading-heading)}
.calendar-week-total{display:flex;flex-direction:column;justify-content:center;gap:var(--space-4);border:1px solid var(--line);background:var(--card2);color:var(--muted);font-size:var(--type-caption)}
.calendar-week-total strong{font-size:var(--type-caption);line-height:var(--leading-heading);font-variant-numeric:tabular-nums;white-space:nowrap}
.calendar-widget .calendar-scroll-hint{display:none}
.calendar-widget .day:focus-visible,.calendar-widget .calendar-controls button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
@media(max-width:600px){
  .calendar-widget .calendar-scroll{overflow-x:auto;overflow-y:hidden}
  .calendar-widget .calendar-grid{height:auto;min-width:640px}
  .calendar-widget .calendar-weeks-4{grid-template-rows:20px repeat(4,minmax(74px,auto))}
  .calendar-widget .calendar-weeks-5{grid-template-rows:20px repeat(5,minmax(74px,auto))}
  .calendar-widget .calendar-weeks-6{grid-template-rows:20px repeat(6,minmax(74px,auto))}
  .calendar-widget .calendar-grid .weekday{min-height:20px;font-size:var(--type-caption)}
  .calendar-widget .day,.calendar-week-total{min-height:74px;padding:var(--space-8)}
  .calendar-widget .calendar-scroll-hint{display:block;margin:0 0 var(--space-8)}
  .calendar-summary{flex-wrap:wrap;gap:var(--space-4) var(--space-12);white-space:normal}
}
.grid-active{z-index:4;outline:2px solid var(--accent)}
.grid-remove{border:1px solid var(--line);border-radius:50%;background:var(--card2);color:var(--muted);width:24px;height:24px;flex:none}
.grid-remove:hover{color:var(--red)}
.grid-resize{position:absolute;bottom:2px;right:2px;width:28px;height:28px;background:transparent;color:var(--muted);border:0;cursor:nwse-resize;touch-action:none}
.widget-grip{touch-action:none}
.insight-widget{position:relative}
.grid-resize:focus-visible,.grid-remove:focus-visible{outline:2px solid var(--accent)}
@media(prefers-reduced-motion:reduce){:root .spatial-grid.grid-settled>.insight-widget{transition:none}}
.grid-resize-west{left:2px;right:auto;cursor:nesw-resize}
.spatial-grid .panelhead{cursor:grab;touch-action:none;user-select:none}
.grid-active .panelhead,.grid-active .widget-grip{cursor:grabbing}
.insight-grid:not(.spatial-grid) .grid-resize{display:none}
.spatial-grid .widget-curve{flex:1;min-height:110px;overflow:hidden}
.spatial-grid .widget-curve .responsive-curve{height:100%;min-height:0}
.insight-toolbar:empty{display:none}
.insight-toolbar:has(#boardDraftName){align-items:flex-end}
.insight-toolbar:has(#boardDraftName)>label{min-width:220px}
.insight-toolbar:has(#boardDraftName) :is(input,button){min-height:40px}
.insight-toolbar:has(#boardDraftName) .insight-actions{align-items:flex-end}
.account-actions{justify-content:flex-end;margin-top:0}
/* Calendario: cabecera compartida, datos ajustados y ninguna región desplazable. */
:root[data-theme] .calendar-widget{padding:12px 12px 26px}
.calendar-widget>.panelhead{margin-bottom:6px;gap:6px;min-height:28px;flex-wrap:nowrap}
.calendar-widget>.panelhead .calendar-month-head{flex:1;min-width:0;margin:0;gap:4px;flex-wrap:wrap}
.calendar-widget>.panelhead h3{min-width:0;overflow-wrap:anywhere;font-size:16px;line-height:1.2}
.calendar-widget .calendar-controls{display:flex;flex:none}
:root[data-theme] .calendar-widget .calendar-controls button{width:28px;height:28px;min-height:28px;padding:0}
.calendar-title-short,.dayweekday,.calendar-precision-note{display:none}
.calendar-widget .widget-content,.calendar-layout,.calendar-month{min-height:0;overflow:hidden;gap:4px}
.calendar-widget .widget-content{overflow:hidden!important}
.calendar-widget .calendar-layout{flex:1}
.calendar-widget .calendar-summary{flex:none;display:flex;flex-wrap:wrap;gap:2px 8px;min-height:18px;font-size:11px;line-height:1.2}
.calendar-widget .calendar-summary .calendar-net{margin-left:auto;min-width:0;max-width:45%;font-size:12px}
.calendar-unit{flex:none;color:var(--muted);font-size:10px;white-space:nowrap}
.calendar-widget[data-calendar-abbreviated="true"] .calendar-precision-note{display:inline}
.calendar-widget .calendar-month{flex:1;min-height:0;gap:6px}
.calendar-widget .calendar-scroll{flex:1;min-height:0;min-width:0;overflow:hidden}
:root[data-theme] .calendar-widget .calendar-grid{height:100%;min-height:0;min-width:0;gap:3px}
.calendar-widget .calendar-grid .weekday{min-height:0;padding:0;font-size:10px;line-height:18px;letter-spacing:0}
.calendar-widget .day,.calendar-widget .calendar-week-total{min-width:0;min-height:0;padding:3px;overflow:hidden}
.calendar-widget .day{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto minmax(0,1fr);align-items:start;align-content:stretch;gap:1px}
:root[data-theme] .calendar-widget .day .daynum{min-width:0;font-size:11px;line-height:12px;text-align:left}
:root[data-theme] .calendar-widget .day .daycount{grid-column:2;grid-row:1;min-width:0;margin:0;font-size:9px;line-height:12px;color:var(--muted)}
:root[data-theme] .calendar-widget .day .daypnl{grid-column:1/-1;grid-row:2;align-self:center;min-width:0;width:100%;margin:0;font-size:11px;line-height:1.15;white-space:nowrap;text-align:left}
.calendar-amount{display:block;min-width:0;width:100%;line-height:1.15;white-space:nowrap;font-variant-numeric:tabular-nums;transition:none!important}
.calendar-widget .calendar-open{font-size:9px;white-space:normal;line-height:1.1}
.calendar-widget .calendar-week-total{gap:2px;font-size:10px}
.calendar-week-total strong{min-width:0;width:100%}
.calendar-week-strip{display:none;flex:none;gap:3px}
.calendar-week-strip>div{min-width:0;border-top:1px solid var(--line);padding-top:3px}
.calendar-week-strip>div>span{display:block;color:var(--muted);font-size:9px;line-height:11px}
.calendar-week-strip strong{display:block;min-width:0;font-weight:600}
:root[data-theme] .calendar-widget[data-calendar-density="compact"] .calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr))}
.calendar-widget:not([data-calendar-density="full"]) :is(.calendar-week-total,.calendar-week-label){display:none}
.calendar-widget:not([data-calendar-density="full"]) .calendar-week-strip{display:grid;grid-template-columns:repeat(var(--calendar-week-count,6),minmax(0,1fr))}
.calendar-widget[data-calendar-density="micro"] .calendar-title-full{display:none}
.calendar-widget[data-calendar-density="micro"] .calendar-title-short{display:inline;text-transform:capitalize}
.calendar-widget[data-calendar-small="true"] .calendar-title-full{display:none}
.calendar-widget[data-calendar-small="true"] .calendar-title-short{display:inline;text-transform:capitalize}
.calendar-widget[data-calendar-small="true"]>.panelhead h3{font-size:13px}
.calendar-widget[data-calendar-density="micro"]>.panelhead h3{font-size:13px}
.calendar-widget[data-calendar-density="micro"] .calendar-summary{gap:2px 5px;font-size:10px}
.calendar-widget[data-calendar-density="micro"] .calendar-summary .calendar-net{max-width:60%}
:root[data-theme] .calendar-widget[data-calendar-density="micro"] .calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(var(--calendar-compact-rows,8),minmax(0,1fr))}
.calendar-widget[data-calendar-density="micro"] :is(.weekday,.day.blank){display:none}
.calendar-widget[data-calendar-density="micro"] .dayweekday{display:inline;font-size:9px;color:var(--muted)}
.calendar-widget[data-calendar-density="micro"] .calendar-week-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
.insight-grid:not(.spatial-grid)>.calendar-widget,.catalog-preview>.calendar-widget{height:clamp(360px,105vw,480px)}
@media(max-width:1050px){.subnav-board,.subnav-board>[data-board-open]{flex:none}}
.board-exit-backdrop{position:fixed;inset:0;z-index:100;background:#020612bb;display:grid;place-items:center;padding:var(--space-20)}
.board-exit-dialog{width:min(520px,100%);box-shadow:0 24px 80px #0009}
.board-exit-dialog h2{font-size:var(--type-section);margin:0 0 var(--space-12)}
.board-exit-dialog p{font-size:var(--type-label);line-height:var(--leading-body);color:var(--muted);margin:0 0 var(--space-20)}
.board-exit-actions{display:flex;justify-content:flex-end;gap:var(--space-8);flex-wrap:wrap}
.board-exit-actions button{min-height:40px}
.board-exit-actions button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.insight-widget>.panelhead{align-items:center;gap:var(--space-12)}
.insight-widget>.panelhead h2{flex:1;min-width:0}
.insight-widget>.panelhead .widget-grip{margin-left:auto}
.subnav-board{display:flex;align-items:center;min-width:0}
.subnav-board>[data-board-open]{flex:1;min-width:0}
.subnav .subnav-board-edit{flex:none;padding:var(--space-8);min-height:36px;min-width:36px;text-align:center;font-size:var(--type-section)}

/* BT-004: misma escala que los selectores y controles vecinos, en web y Windows. */
.topbar #newTradeTop,:root[data-desktop-app="true"] .desktop-window-controls #newTradeTop{font-family:inherit;font-weight:var(--weight-semibold);font-size:var(--icon-13);line-height:1.2;min-height:34px;padding:var(--space-8) var(--space-12);align-self:center;white-space:nowrap}
.operation-state{display:inline-flex;align-items:center;white-space:nowrap;padding:var(--space-4) var(--space-8);border:1px solid var(--line);border-radius:999px;background:var(--card2);color:var(--text);font-size:var(--type-caption);font-weight:var(--weight-semibold);line-height:var(--leading-heading)}
.operation-state.open{border-color:var(--accent);color:var(--accent)}
.operation-state.unknown{color:var(--muted)}
.table th .operation-sort{display:inline-flex;align-items:center;justify-content:inherit;gap:var(--space-8);background:transparent;border:0;border-radius:5px;padding:var(--space-8) 0;color:inherit;font:inherit;letter-spacing:inherit;min-height:32px;cursor:pointer;text-align:inherit;white-space:nowrap}
.operation-sort span{color:var(--muted)}
.table th[aria-sort="ascending"] .operation-sort,.table th[aria-sort="descending"] .operation-sort{color:var(--accent)}
.table th .operation-sort:hover{color:var(--accent)}
.operation-sort:focus-visible,.open-trades-list button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.open-trades-list{display:grid;gap:var(--space-8);max-height:360px;overflow-y:auto}
.open-trades-list .reviewitem{width:100%;text-align:left;gap:var(--space-12);align-items:center}
.open-trades-list .reviewitem>span:first-child{min-width:0;overflow-wrap:anywhere}
.open-trades-list small{display:block;margin-top:var(--space-4);color:var(--muted);font-size:var(--type-caption);line-height:var(--leading-body)}
@media(pointer:coarse){.table th .operation-sort{min-height:40px}.topbar #newTradeTop{min-height:40px}}
