/* Adapter for the preserved production DOM and the new live-data chart components. */
html[data-theme="dark"] body.atelier-login .field input { background:#252C25 !important; color:#EBE7DD !important; border-color:#586151 !important; }
html[data-theme="dark"] body.atelier-login .field input::placeholder { color:#B5BCAC !important; }
body.atelier-login .purchase a, body.atelier-login .purchase a span { color:var(--atelier-ink) !important; text-shadow:none !important; }
body.atelier-login .atelier-theme-control button { color:var(--atelier-muted) !important; }
body.atelier-login .atelier-theme-control button.active { color:var(--atelier-ink) !important; background:var(--atelier-surface-hover) !important; }
body.atelier-app :is(.b2n-money-label,.b2n-money-sub) { color:var(--atelier-muted) !important; }
body.atelier-app .atelier-tools button:focus-visible { outline:2px solid var(--atelier-accent); }

body.atelier-app #view-ban2note .b2n-shell.atelier-analysis-shell { grid-template-columns: minmax(0,1fr); gap: 14px; }
.atelier-import-details { max-width: 100%; }
.atelier-import-details:not([open]) { width: max-content; min-width: 220px; }
.atelier-import-details[open] > .b2n-sidebar { display: grid !important; grid-template-columns: 1fr 1fr 2fr; align-items: start; }
.atelier-import-details .b2n-filter-col { max-height: 180px; overflow-y: auto; }
.atelier-wordmark { font-family: var(--atelier-serif); font-size: 26px; line-height: 1.2; letter-spacing: -.04em; padding: 0 9px; }
.atelier-wordmark small { display:block; font: 9px var(--atelier-font); margin-top: 6px; color:var(--atelier-muted); letter-spacing:.04em; }
#atelier-topbar > div:first-child { min-width:0; }
#atelier-topbar p { font-size: 10px; color: var(--atelier-muted); margin:0 0 4px; }
#atelier-topbar h1 { font-family: var(--atelier-serif) !important; font-weight: 500 !important; font-size: clamp(30px,3.5vw,56px); }
.atelier-top-actions { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.atelier-top-actions > button { border:1px solid var(--atelier-line); border-radius:10px; background:var(--atelier-surface); color:var(--atelier-ink); padding:10px 14px; display:inline-flex; align-items:center; gap:8px; font-family:var(--atelier-font); font-size:12px; cursor:pointer; }
.atelier-top-actions > #atelier-import { background:var(--atelier-accent); color:#252923; }
.atelier-tools { font-size:11px; color:var(--atelier-muted); margin:12px 10px; }
.atelier-tools summary { cursor:pointer; padding:7px 0; }
.atelier-tools[open] { max-height:55vh; overflow-y:auto; }
.atelier-tools button { display:block; width:100%; padding:9px 4px; border:0; text-align:left; background:transparent; color:var(--atelier-muted); cursor:pointer; }
.atelier-tools button:hover { color:var(--atelier-ink); }
.atelier-sidebar-foot em { display:block; font:italic 22px/1.2 var(--atelier-serif); margin-bottom:16px; }
.atelier-sidebar-foot small { font-size:9px; }
.atelier-nav-button small { display:block; margin-top:4px; margin-left:0; }
body.atelier-app #logout-btn-container { display:none !important; }
body.atelier-app #intro-ui { top:var(--atelier-topbar-height); left:var(--atelier-sidebar-width); }
body.atelier-app #intro-ui > .absolute:not(:last-child),body.atelier-app #intro-ui h1 + span { display:none; }
body.atelier-app #intro-ui .absolute.bottom-24 { position:static; padding:32px; align-items:flex-start; }
body.atelier-app #intro-ui h1 { font-size:clamp(45px,6vw,90px); }
body.atelier-app #feature-modal > div:first-child { height:42px; min-height:42px; opacity:.75; }
.atelier-dashboard { margin-bottom:24px; grid-template-columns:minmax(0,1fr) 275px; grid-template-rows:auto auto auto; }
.atelier-kpis { grid-column:1/-1; margin:0; gap:12px; }
.atelier-kpis > div { padding:17px 20px; min-width:0; border:1px solid var(--atelier-line); border-radius:14px; background:var(--atelier-surface); box-shadow:var(--atelier-shadow); }
.atelier-kpis > div > span { display:block; color:var(--atelier-muted); font-size:11px; }
.atelier-kpis small { margin-left:6px; font-size:9px; }
.atelier-kpis strong { display:block; margin-top:10px; font-family:var(--atelier-serif); font-weight:600; letter-spacing:-.025em; font-size:32px; line-height:1.1; }
.atelier-profit { grid-column:1; grid-row:2; }
.atelier-position { grid-column:1; grid-row:3; }
.atelier-street { grid-column:2; grid-row:2/span 2; }
.atelier-chart-card { border-radius:18px; padding:22px; }
.atelier-chart-card > header { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:18px; }
.atelier-chart-card h3 { color:var(--atelier-ink); font-size:14px; font-weight:600; margin:0 0 4px; }
.atelier-chart-card header small { display:block; font-size:10px; color:var(--atelier-muted); }
.atelier-chart-card svg text { font-family:var(--atelier-font); }
.atelier-chart-card > header >button,.atelier-chip { padding:6px 9px; border:1px solid var(--atelier-line); border-radius:8px; font-size:10px; color:var(--atelier-muted); background:var(--atelier-surface); }
.atelier-position svg { width:100%; min-height:170px; }
.atelier-profit svg { width:100%; min-height:185px; }
.atelier-bar-target { cursor:pointer; pointer-events:bounding-box; }
.atelier-bar-target:hover rect,.atelier-bar-target:focus rect { opacity:.65; }
.atelier-bar-target:focus-visible { outline:2px solid var(--atelier-accent); }
.atelier-chart-card .atelier-donut-svg { width:100%; height:240px; margin:8px 0; }
.atelier-street-toggle { display:flex; padding:4px; border:1px solid var(--atelier-line); border-radius:999px; background:var(--atelier-accent-soft); }
.atelier-street-toggle button { flex:1; padding:8px 2px; border:0; border-radius:999px; background:transparent; color:var(--atelier-muted); cursor:pointer; font-size:11px; }
.atelier-street-toggle button small { display:block; font-size:9px; }
.atelier-street-toggle button.active { background:var(--atelier-accent); color:#252923; box-shadow:0 3px 10px #5c51391a; }
.atelier-donut-legend > div { display:grid; grid-template-columns:1fr auto auto; gap:8px; align-items:center; padding:9px 0; border-bottom:1px solid var(--atelier-line); }
.atelier-donut-legend span { display:flex; align-items:center; gap:6px; font-size:11px; }
.atelier-donut-legend i { width:6px; height:6px; border-radius:50%; }
.atelier-donut-legend strong { font-size:12px; font-weight:500; }
.atelier-donut-legend small { color:var(--atelier-muted); font-size:9px; }
.atelier-small-note { font-size:10px; color:var(--atelier-muted); line-height:1.7; margin:12px 0 0; }
.atelier-street-summary { display:flex; flex-direction:column; gap:6px; margin-top:22px; padding-top:20px; border-top:1px solid var(--atelier-line); }
.atelier-street-summary > span { font-size:12px; margin-top:8px; }
.atelier-street-summary small { font-size:9px; color:var(--atelier-muted); line-height:1.8; }
.atelier-street-summary strong { font:600 31px/1.1 var(--atelier-serif); }
.atelier-empty { padding:60px 16px; color:var(--atelier-muted); }
body.atelier-app .atelier-old-equity { display:none !important; }
body.atelier-app #view-ban2note .b2n-stat-sub { color:var(--atelier-muted) !important; }
body.atelier-app #view-ban2note .b2n-stat-label { color:var(--atelier-muted) !important; }
body.atelier-app #view-ban2note .b2n-stat-card--mini .b2n-stat-value { color:var(--atelier-accent-strong) !important; }
body.atelier-app #view-ban2note .b2n-section { padding:20px; }
body.atelier-app #view-ban2note .b2n-stats-grid.atelier-detail-stats { grid-template-columns:repeat(auto-fit,minmax(165px,1fr)); margin:18px 0; }
body.atelier-app #view-ban2note .b2n-head { flex-wrap:wrap; }
body.atelier-app #view-ban2note .b2n-main-wrap { min-width:0; }
body.atelier-app #view-ban2note .b2n-main { min-width:0; }
body.atelier-app #view-ban2note .b2n-canvas-wrap { overflow:hidden; }
body.atelier-login { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); align-items:center; padding:55px max(25px,6vw); gap:6vw; }
body.atelier-login > .login-art-heading { grid-column:1; grid-row:1; width:100%; margin:0; align-self:center; }
body.atelier-login > .login-art-heading h1 { font:500 clamp(68px,7vw,118px)/.92 var(--atelier-serif); letter-spacing:-.055em; margin:24px 0; color:var(--atelier-ink); }
body.atelier-login > .wrap { grid-column:2; grid-row:1; min-height:0; display:block; padding:0; max-width:440px; }
body.atelier-login .panel { margin:24px 0; max-width:none; }
body.atelier-login .title { text-align:left; }
body.atelier-login .foot { text-align:left; }
.atelier-login-preview { margin:26px 0; width:min(520px,100%); overflow:hidden; border:1px solid var(--atelier-line); border-radius:18px; }
.login-art-heading .atelier-login-preview img { width:100%; height:auto; margin:0; opacity:1; }
.atelier-image-dark { display:none !important; }
html[data-theme=dark] .atelier-image-light { display:none !important; }
html[data-theme=dark] .atelier-image-dark { display:block !important; }
@media(max-width:1100px) {
 .atelier-dashboard { grid-template-columns:minmax(0,1fr) 240px; gap:12px; }
 .atelier-chart-card { padding:15px; }
 .atelier-kpis strong { font-size:28px; }
 .atelier-top-actions { gap:6px; }
 .atelier-top-actions button { padding:8px; }
 #atelier-topbar h1 { font-size:38px; }
}
@media(max-width:700px) {
 #atelier-topbar { height:126px; align-items:flex-start; flex-direction:column; justify-content:center; gap:10px; }
 #atelier-topbar h1 { font-size:33px; }
 .atelier-top-actions { width:100%; gap:8px; }
 .atelier-theme-control { margin-right:auto; }
 #atelier-logout { padding:8px; }
 #atelier-sidebar .atelier-wordmark { display:none; }
 #atelier-sidebar { top:126px; height:50px; }
 #atelier-sidebar nav { display:flex; }
 .atelier-tools { display:none; }
 body.atelier-app :is(#app-ui,#feature-modal) { top:176px !important; }
 body.atelier-app #intro-ui { top:176px;left:0; }
 .atelier-dashboard { grid-template-columns:minmax(0,1fr); }
 .atelier-profit,.atelier-position,.atelier-street { grid-column:1; grid-row:auto; }
 .atelier-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .atelier-kpis >div { padding:14px; }
 .atelier-kpis >div:last-child { grid-column:1/-1; }
 .atelier-kpis strong { font-size:30px; }
 .atelier-profit svg,.atelier-position svg { min-height:0; }
 .atelier-import-details { min-width:0 !important; max-width:100%; }
 .atelier-import-details[open] >.b2n-sidebar { display:flex !important; }
 body.atelier-app #view-ban2note .b2n-section { padding:12px; }
 body.atelier-app #view-ban2note .b2n-stats-grid.atelier-detail-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.atelier-login { display:flex; flex-direction:column; gap:32px; padding:26px 22px; }
 body.atelier-login >.login-art-heading { width:100%; max-width:440px; }
 body.atelier-login >.login-art-heading h1 { font-size:68px; margin:18px 0; }
 body.atelier-login >.wrap { width:100%; }
 .atelier-login-preview { display:none !important; }
 .login-art-heading { display:block !important; }
}
