/* DEKOR Theme System · FIX49
   Un único tema para Core + K/I/L/S. Los visores 3D mantienen su grafito técnico. */
html{color-scheme:light}
html[data-dekor-theme="dark"]{color-scheme:dark;--bg:#10151d;--ink:#edf2f7;--muted:#9aa7b8;--line:#2b3543;--card:#171e28;--panel:#171e28;--shadow:0 18px 45px rgba(0,0,0,.28)}

/* Selector de apariencia en Cuenta */
.appearance-panel{margin-top:16px;padding:18px;border:1px solid var(--line,#e5e7eb);border-radius:18px;background:var(--card,#fff)}
.appearance-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
.appearance-panel-head h3{margin:4px 0 4px;font-size:18px}.appearance-panel-head p{margin:0;color:var(--muted,#6b7280);font-size:12px;line-height:1.45;max-width:700px}
.appearance-theme-summary{font-size:10px;font-weight:850;color:var(--muted,#6b7280);white-space:nowrap;padding-top:5px}
.appearance-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.appearance-option{min-height:72px;border:1px solid var(--line,#dde2e8);border-radius:13px;background:var(--card,#fff);color:var(--ink,#111827);padding:11px 12px;text-align:left;cursor:pointer;display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:center}
.appearance-option:hover{border-color:#c6922b}.appearance-option.active{border-color:#c6922b;box-shadow:0 0 0 2px rgba(198,146,43,.14)}
.appearance-option i{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-style:normal;font-size:18px;border:1px solid var(--line,#dde2e8);background:#f4f5f7;color:#111827}.appearance-option[data-dekor-theme-choice="dark"] i{background:#111827;color:#fff;border-color:#111827}.appearance-option[data-dekor-theme-choice="system"] i{background:linear-gradient(135deg,#fff 0 50%,#111827 50%);color:#c6922b}
.appearance-option strong{display:block;font-size:12px}.appearance-option small{display:block;color:var(--muted,#6b7280);font-size:10px;margin-top:3px;line-height:1.3}
@media(max-width:620px){.appearance-panel-head{display:block}.appearance-theme-summary{display:block;margin-top:7px}.appearance-options{grid-template-columns:1fr}.appearance-option{min-height:58px}}

/* CORE oscuro */
html[data-dekor-theme="dark"] body{background:#10151d;color:#edf2f7}
html[data-dekor-theme="dark"] :is(.topbar,.sidebar,.auth-card,.module-card,.permission-summary,.project-row,.info-card,.account-branding,.planner-contract-panel,.planner-contract-item,.permission-table-wrap,.admin-library-workspace,.admin-library-stats article,.project-commercial-hero,.project-commercial-controls,.project-3d-card,.project-foundation>article,.project-dossier,.dossier-status-card,.project-module-card,.modal-card,.project-editor-card,.dossier-modal-card,.account-grid .info-card,.appearance-panel){background:#171e28!important;border-color:#2b3543!important;color:#edf2f7}
html[data-dekor-theme="dark"] :is(.workspace,.project-hub,.project-commercial-shell,.panel){color:#edf2f7}
html[data-dekor-theme="dark"] :is(h1,h2,h3,h4,.brand-name,.project-row strong,.permission-summary strong){color:#edf2f7}
html[data-dekor-theme="dark"] :is(.nav-btn,.ghost-btn,.project-layer,.appearance-option,.module-card,.project-module-card){color:#dce3ec}
html[data-dekor-theme="dark"] .nav-btn:hover,html[data-dekor-theme="dark"] .nav-btn.active,html[data-dekor-theme="dark"] .ghost-btn{background:#222b37!important;color:#fff!important}
html[data-dekor-theme="dark"] :is(input,select,textarea){background:#111821!important;color:#edf2f7!important;border-color:#364152!important}
html[data-dekor-theme="dark"] :is(.empty-state,.project-3d-toolbar,.full-floor-intro,.dossier-media-picker,.dossier-media-group,.dossier-media-option,.branding-logo-preview){background:#131a23!important;border-color:#2f3947!important;color:#dbe3ed}
html[data-dekor-theme="dark"] :is(.topbar,.sidebar){box-shadow:none}
html[data-dekor-theme="dark"] .project-3d-stage,html[data-dekor-theme="dark"] .project-3d-viewport{background:#30343B!important}
html[data-dekor-theme="dark"] .dekor-viewer-panel{background:rgba(23,30,40,.97)!important;border-color:#46505f!important}
html[data-dekor-theme="dark"] .dekor-viewer-panel>summary{color:#edf2f7!important}
html[data-dekor-theme="dark"] .dekor-viewer-panel>summary:hover,html[data-dekor-theme="dark"] .dekor-viewer-panel[open]>summary{background:#202936!important}
html[data-dekor-theme="dark"] .dekor-viewer-dock button{background:#111821;color:#e8eef6;border-color:#3a4655}
html[data-dekor-theme="dark"] .appearance-option i{border-color:#3a4655}

/* K/I · oscuro compartido */
html[data-dekor-theme="dark"] body[data-kplanner-build],html[data-dekor-theme="dark"] body[data-main-section]{--bg:#10151d;--panel:#171e28;--card:#171e28;--ink:#edf2f7;--muted:#9aa7b8;--line:#2d3745;--secondary:#e6edf5;--dark:#0c1118;background:#10151d;color:#edf2f7}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.app-header,.topbar,.left-panel,.right-panel,.left-sidebar,.right-sidebar,.panel-section,.view-toolbar,.canvas-card,.elevation-card,.proposal-card,.documentation-card,.library-item,.property-card,.project-card,.app-menu-panel,.modal-card,.skp-dialog-card),
html[data-dekor-theme="dark"] body[data-main-section] :is(.app-header,.topbar,.left-panel,.right-panel,.panel-section,.view-toolbar,.canvas-card,.library-item,.property-card,.app-menu-panel,.skp-dialog-card){background:#171e28!important;border-color:#2d3745!important;color:#edf2f7}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.button,.icon-button,.icon-btn,.wall-tab,.library-tab,.header-icon),
html[data-dekor-theme="dark"] body[data-main-section] :is(.button,.icon-button,.icon-btn,.wall-tab,.library-tab,.header-icon){background:#111821;color:#e8eef6;border-color:#394556}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(input,select,textarea),html[data-dekor-theme="dark"] body[data-main-section] :is(input,select,textarea){background:#111821!important;color:#edf2f7!important;border-color:#394556!important}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.library-preview,.help,.dekor-architecture-lock),html[data-dekor-theme="dark"] body[data-main-section] :is(.library-preview,.help,.dekor-architecture-lock){background:#202936!important;color:#cbd5e1!important}
html[data-dekor-theme="dark"] body[data-kplanner-build] .perspective-wrap,html[data-dekor-theme="dark"] body[data-main-section] .perspective-wrap{background:#30343B!important}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.perspective-control-panel,.perspective-viewer-topbar>*,.perspective-space-nav,.perspective-interaction-nav),html[data-dekor-theme="dark"] body[data-main-section] :is(.perspective-control-panel,.perspective-viewer-topbar>*,.perspective-space-nav,.perspective-interaction-nav){background:rgba(23,30,40,.96)!important;border-color:#46505f!important;color:#edf2f7!important}

/* L-Planner · tema común */
html[data-dekor-theme="dark"] body.l-planner{--bg:#10151d!important;--card:#171e28!important;--dekor-line:#2d3745!important;--dekor-muted:#9aa7b8!important;background:#10151d!important;color:#edf2f7!important}
html[data-dekor-theme="dark"] body.l-planner :is(.l-topbar,.l-study-selector,.card,.box,.panel,.section,.result-box){background:#171e28!important;color:#edf2f7!important;border-color:#2d3745!important}
html[data-dekor-theme="dark"] body.l-planner :is(input,select,textarea,.l-module-tabs button,button){border-color:#394556}
html[data-dekor-theme="dark"] body.l-planner :is(input,select,textarea,.l-module-tabs button){background:#111821!important;color:#edf2f7!important}
html[data-dekor-theme="dark"] body.l-planner .l-badge{background:#202936;color:#dbe4ef}
html[data-dekor-theme="dark"] body.l-planner .l-note{background:#2a2417;color:#e8cf95}

/* S-Planner/FV · homologación K/I: claro por defecto, oscuro opcional */
html[data-dekor-theme="light"] body.solar-planner{--sun:#c6922b;--sun-light:#e1bd70;--bg:#eef1f4;--bg2:#f7f8fa;--card:#ffffff;--card2:#f1f3f5;--border:#dde2e8;--text:#111827;--text2:#6b7280;--shadow:0 12px 34px rgba(17,24,39,.08);background:#eef1f4;color:#111827}
html[data-dekor-theme="dark"] body.solar-planner{--sun:#d6a63e;--sun-light:#e8c66f;--bg:#10151d;--bg2:#111821;--card:#171e28;--card2:#202936;--border:#2d3745;--text:#edf2f7;--text2:#9aa7b8;--shadow:0 12px 34px rgba(0,0,0,.28);background:#10151d;color:#edf2f7}
body.solar-planner::before{display:none!important}
body.solar-planner .wrapper{max-width:1240px;padding:0 18px 60px}
body.solar-planner header.s-topbar{height:70px;margin:0 calc(50% - 50vw) 22px;padding:0 max(18px,calc((100vw - 1240px)/2 + 18px));background:var(--card);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:18px;position:sticky;top:0;z-index:50}
body.solar-planner .logo{gap:11px}.solar-planner .logo-icon{width:40px;height:40px;border-radius:11px;background:linear-gradient(145deg,#111827,#3d4655);color:#fff;box-shadow:none;font-size:20px;font-weight:900}.solar-planner .logo-text h1{font-size:14px;letter-spacing:.11em}.solar-planner .logo-text p{font-size:9px;letter-spacing:.15em;text-transform:uppercase;margin-top:2px}
.s-context{display:flex;align-items:center;gap:8px;min-width:0}.s-badge{padding:7px 10px;border-radius:999px;background:var(--card2);color:var(--text);font-size:11px;font-weight:750;max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.s-badge.subtle{color:var(--text2)}
body.solar-planner .hero.s-intro{text-align:left;margin:0 0 14px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.solar-planner .s-eyebrow{font-size:10px;font-weight:900;letter-spacing:.14em;color:#8b6a25}.solar-planner .hero.s-intro h2{font-size:28px;margin:4px 0 5px;background:none;-webkit-text-fill-color:initial;color:var(--text);line-height:1.15}.solar-planner .hero.s-intro p{margin:0;max-width:760px;color:var(--text2);font-size:13px}.s-flow{display:flex;gap:5px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.s-flow span{padding:6px 8px;border-radius:999px;background:var(--card2);border:1px solid var(--border);font-size:9px;font-weight:800;color:var(--text2)}
body.solar-planner .card,body.solar-planner .stat-card,body.solar-planner .chart-card{border-radius:18px;box-shadow:var(--shadow)}
body.solar-planner .card{padding:22px}.solar-planner .card-title{color:#8b6a25;letter-spacing:.13em}.solar-planner .btn-primary{background:#111827;color:#fff;box-shadow:0 10px 24px rgba(17,24,39,.16)}.solar-planner .btn-primary:hover{box-shadow:0 14px 28px rgba(17,24,39,.24)}
html[data-dekor-theme="dark"] .solar-planner .btn-primary{background:#edf2f7;color:#111827}.solar-planner .btn-secondary{background:var(--card2);color:var(--text);border:1px solid var(--border)}
.solar-planner .hero-badge{display:none}.solar-planner .promo-banner{border-color:var(--border)}
@media(max-width:760px){body.solar-planner .wrapper{padding:0 10px 40px}body.solar-planner header.s-topbar{height:auto;min-height:64px;padding:10px;margin:0 -10px 14px;align-items:flex-start;flex-wrap:wrap}.s-context{width:100%}.s-badge{max-width:calc(50vw - 20px)}body.solar-planner .hero.s-intro{display:block}.s-flow{justify-content:flex-start;margin-top:10px}.solar-planner .hero.s-intro h2{font-size:24px}}

/* Impresión/PDF siempre claro aunque la interfaz esté en oscuro */
@media print{html,html[data-dekor-theme="dark"]{color-scheme:light!important}body,html[data-dekor-theme="dark"] body{background:#fff!important;color:#111!important}.solar-planner .card,.solar-planner .stat-card,.solar-planner .chart-card{background:#fff!important;color:#111!important;border-color:#ddd!important;box-shadow:none!important}}


/* ========================================================================
   FIX49 · PALETA DEKOR EN TRES NIVELES
   Sistema = intermedio neutro real. Oscuro = referencia visual S/FV.
   ======================================================================== */
html[data-dekor-theme="system"]{
  color-scheme:dark;
  --bg:#7e8995;
  --ink:#16202b;
  --muted:#435160;
  --line:#667381;
  --card:#aeb7c0;
  --panel:#aeb7c0;
  --shadow:0 16px 38px rgba(18,28,40,.16);
}
html[data-dekor-theme="dark"]{
  color-scheme:dark;
  --bg:#0f1620;
  --ink:#f4f7fb;
  --muted:#9bb0c7;
  --line:#304257;
  --card:#17212d;
  --panel:#17212d;
  --shadow:0 18px 45px rgba(0,0,0,.30);
}

/* Selector de apariencia: tres muestras visualmente distintas */
.appearance-option[data-dekor-theme-choice="system"] i{background:linear-gradient(135deg,#8c97a2 0 48%,#b7c0c8 48% 100%)!important;color:#17212d!important;border-color:#697785!important}
.appearance-option[data-dekor-theme-choice="light"] i{background:#fff!important;color:#17212d!important;border-color:#d9dfe5!important}
.appearance-option[data-dekor-theme-choice="dark"] i{background:#0f1620!important;color:#f4f7fb!important;border-color:#304257!important}

/* ---------- CORE · SISTEMA / INTERMEDIO ---------- */
html[data-dekor-theme="system"] body{background:#7e8995!important;color:#16202b}
html[data-dekor-theme="system"] :is(.topbar,.sidebar){background:#697582!important;border-color:#5d6976!important;color:#f4f7fb}
html[data-dekor-theme="system"] :is(.topbar h1,.topbar h2,.topbar h3,.sidebar strong,.brand-name){color:#fff!important}
html[data-dekor-theme="system"] :is(.workspace,.project-hub,.project-commercial-shell,.panel){color:#16202b}
html[data-dekor-theme="system"] :is(.auth-card,.module-card,.permission-summary,.project-row,.info-card,.account-branding,.planner-contract-panel,.planner-contract-item,.permission-table-wrap,.admin-library-workspace,.admin-library-stats article,.project-commercial-controls,.project-3d-card,.project-foundation>article,.project-dossier,.dossier-status-card,.project-module-card,.modal-card,.project-editor-card,.dossier-modal-card,.account-grid .info-card,.appearance-panel,.project-general-card,.project-internal-notes,.project-economics-head>div:first-child,.project-economic-metric,.project-economic-conditions article,.project-product-list-wrap,.project-product-preview-copy,.project-tool-card,.project-detail-title){background:#aeb7c0!important;border-color:#697785!important;color:#16202b!important}
html[data-dekor-theme="system"] :is(.project-product-row,.dossier-section-list label,.dossier-view-row,.dossier-presets button,.dossier-media-group,.dossier-media-option,.branding-logo-preview,.empty-state,.full-floor-intro){background:#bac2ca!important;border-color:#778391!important;color:#16202b!important}
html[data-dekor-theme="system"] :is(input,select,textarea){background:#d5dbe0!important;color:#16202b!important;border-color:#74818e!important}
html[data-dekor-theme="system"] :is(.nav-btn,.ghost-btn,.project-layer,.appearance-option){background:#aeb7c0;color:#17212d;border-color:#6b7885}
html[data-dekor-theme="system"] :is(.nav-btn:hover,.nav-btn.active,.ghost-btn:hover){background:#7b8793!important;color:#fff!important}
html[data-dekor-theme="system"] .project-commercial-hero{background:linear-gradient(135deg,#46515e 0%,#566270 66%,#697582 100%)!important;color:#fff}
html[data-dekor-theme="system"] .project-commercial-metrics article{background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.18)!important}
html[data-dekor-theme="system"] .project-product-preview{background:#a3adb7!important}
html[data-dekor-theme="system"] .project-product-preview-stage{background:#30343B!important}
html[data-dekor-theme="system"] :is(.project-3d-stage,.project-3d-viewport){background:#30343B!important}
html[data-dekor-theme="system"] .dekor-viewer-panel{background:rgba(174,183,192,.97)!important;border-color:#687786!important}
html[data-dekor-theme="system"] .dekor-viewer-panel>summary{color:#17212d!important}
html[data-dekor-theme="system"] .dekor-viewer-dock button{background:#d5dbe0;color:#17212d;border-color:#74818e}

/* ---------- CORE · OSCURO basado en S/FV ---------- */
html[data-dekor-theme="dark"] body{background:#0f1620!important;color:#f4f7fb}
html[data-dekor-theme="dark"] :is(.topbar,.sidebar){background:#121b26!important;border-color:#2a3b50!important;color:#f4f7fb}
html[data-dekor-theme="dark"] :is(.auth-card,.module-card,.permission-summary,.project-row,.info-card,.account-branding,.planner-contract-panel,.planner-contract-item,.permission-table-wrap,.admin-library-workspace,.admin-library-stats article,.project-commercial-controls,.project-3d-card,.project-foundation>article,.project-dossier,.dossier-status-card,.project-module-card,.modal-card,.project-editor-card,.dossier-modal-card,.account-grid .info-card,.appearance-panel,.project-general-card,.project-internal-notes,.project-economics-head>div:first-child,.project-economic-metric,.project-economic-conditions article,.project-product-list-wrap,.project-product-preview-copy,.project-tool-card,.project-detail-title){background:#17212d!important;border-color:#304257!important;color:#f4f7fb!important}
html[data-dekor-theme="dark"] :is(.project-product-row,.dossier-section-list label,.dossier-view-row,.dossier-presets button,.dossier-media-group,.dossier-media-option,.branding-logo-preview,.empty-state,.full-floor-intro){background:#121b26!important;border-color:#304257!important;color:#eaf0f7!important}
html[data-dekor-theme="dark"] :is(input,select,textarea){background:#101923!important;color:#f4f7fb!important;border-color:#344a62!important}
html[data-dekor-theme="dark"] :is(.nav-btn,.ghost-btn,.project-layer,.appearance-option){background:#182432!important;color:#eaf0f7!important;border-color:#34485e!important}
html[data-dekor-theme="dark"] :is(.nav-btn:hover,.nav-btn.active,.ghost-btn:hover){background:#223247!important;color:#fff!important;border-color:#47617d!important}
html[data-dekor-theme="dark"] .project-commercial-hero{background:linear-gradient(135deg,#111a25 0%,#172332 62%,#253346 100%)!important;color:#fff}
html[data-dekor-theme="dark"] .project-commercial-hero::after{background:radial-gradient(circle,rgba(198,146,43,.16),transparent 70%)!important}
html[data-dekor-theme="dark"] .project-commercial-metrics article{background:rgba(255,255,255,.045)!important;border-color:#3a4b60!important}
html[data-dekor-theme="dark"] .project-product-preview{background:#121b26!important}
html[data-dekor-theme="dark"] .project-product-preview-stage{background:#30343B!important}
html[data-dekor-theme="dark"] .project-product-row:hover,html[data-dekor-theme="dark"] .project-product-row.active{background:#1c2938!important}
html[data-dekor-theme="dark"] .project-product-meta span{background:#223247!important;color:#c7d6e6!important}
html[data-dekor-theme="dark"] :is(.project-economic-conditions article,.project-internal-notes textarea){background:#111b27!important}
html[data-dekor-theme="dark"] :is(.project-economics-total,.project-module-pill[data-status="in_progress"],.project-module-pill[data-status="completed"]){background:#0d1520!important;border-color:#304257!important}

/* ---------- K / I · SISTEMA ---------- */
html[data-dekor-theme="system"] body[data-kplanner-build],html[data-dekor-theme="system"] body[data-main-section]{--bg:#7e8995;--panel:#aeb7c0;--card:#aeb7c0;--ink:#17212d;--muted:#435160;--line:#697785;--secondary:#17212d;--dark:#4e5b68;background:#7e8995!important;color:#17212d!important}
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.app-header,.topbar,.left-panel,.right-panel,.left-sidebar,.right-sidebar,.panel-section,.view-toolbar,.canvas-card,.elevation-card,.proposal-card,.documentation-card,.library-item,.property-card,.project-card,.app-menu-panel,.modal-card,.skp-dialog-card),html[data-dekor-theme="system"] body[data-main-section] :is(.app-header,.topbar,.left-panel,.right-panel,.panel-section,.view-toolbar,.canvas-card,.library-item,.property-card,.app-menu-panel,.skp-dialog-card){background:#aeb7c0!important;border-color:#697785!important;color:#17212d!important}
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.button,.icon-button,.icon-btn,.wall-tab,.library-tab,.header-icon),html[data-dekor-theme="system"] body[data-main-section] :is(.button,.icon-button,.icon-btn,.wall-tab,.library-tab,.header-icon){background:#c4cbd1!important;color:#17212d!important;border-color:#74818e!important}
html[data-dekor-theme="system"] body[data-kplanner-build] :is(input,select,textarea),html[data-dekor-theme="system"] body[data-main-section] :is(input,select,textarea){background:#d5dbe0!important;color:#17212d!important;border-color:#74818e!important}
html[data-dekor-theme="system"] body[data-kplanner-build] .perspective-wrap,html[data-dekor-theme="system"] body[data-main-section] .perspective-wrap{background:#30343B!important}
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.perspective-control-panel,.perspective-viewer-topbar>*,.perspective-space-nav,.perspective-interaction-nav),html[data-dekor-theme="system"] body[data-main-section] :is(.perspective-control-panel,.perspective-viewer-topbar>*,.perspective-space-nav,.perspective-interaction-nav){background:rgba(174,183,192,.97)!important;border-color:#687786!important;color:#17212d!important}

/* ---------- K / I · OSCURO FV ---------- */
html[data-dekor-theme="dark"] body[data-kplanner-build],html[data-dekor-theme="dark"] body[data-main-section]{--bg:#0f1620;--panel:#17212d;--card:#17212d;--ink:#f4f7fb;--muted:#9bb0c7;--line:#304257;--secondary:#edf3f9;--dark:#0b121b;background:#0f1620!important;color:#f4f7fb!important}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.app-header,.topbar,.left-panel,.right-panel,.left-sidebar,.right-sidebar,.panel-section,.view-toolbar,.canvas-card,.elevation-card,.proposal-card,.documentation-card,.library-item,.property-card,.project-card,.app-menu-panel,.modal-card,.skp-dialog-card),html[data-dekor-theme="dark"] body[data-main-section] :is(.app-header,.topbar,.left-panel,.right-panel,.panel-section,.view-toolbar,.canvas-card,.library-item,.property-card,.app-menu-panel,.skp-dialog-card){background:#17212d!important;border-color:#304257!important;color:#f4f7fb!important}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.button,.icon-button,.icon-btn,.wall-tab,.library-tab,.header-icon),html[data-dekor-theme="dark"] body[data-main-section] :is(.button,.icon-button,.icon-btn,.wall-tab,.library-tab,.header-icon){background:#111b27!important;color:#eaf0f7!important;border-color:#344a62!important}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(input,select,textarea),html[data-dekor-theme="dark"] body[data-main-section] :is(input,select,textarea){background:#101923!important;color:#f4f7fb!important;border-color:#344a62!important}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.perspective-control-panel,.perspective-viewer-topbar>*,.perspective-space-nav,.perspective-interaction-nav),html[data-dekor-theme="dark"] body[data-main-section] :is(.perspective-control-panel,.perspective-viewer-topbar>*,.perspective-space-nav,.perspective-interaction-nav){background:rgba(23,33,45,.97)!important;border-color:#3b526c!important;color:#f4f7fb!important}

/* ---------- L-PLANNER · SISTEMA / OSCURO ---------- */
html[data-dekor-theme="system"] body.l-planner{--bg:#7e8995!important;--card:#aeb7c0!important;--dekor-line:#697785!important;--dekor-muted:#435160!important;background:#7e8995!important;color:#17212d!important}
html[data-dekor-theme="system"] body.l-planner :is(.l-topbar,.l-study-selector,.card,.box,.panel,.section,.result-box){background:#aeb7c0!important;color:#17212d!important;border-color:#697785!important}
html[data-dekor-theme="system"] body.l-planner :is(input,select,textarea,.l-module-tabs button){background:#d5dbe0!important;color:#17212d!important;border-color:#74818e!important}
html[data-dekor-theme="system"] body.l-planner .l-badge{background:#c4cbd1!important;color:#17212d!important}
html[data-dekor-theme="dark"] body.l-planner{--bg:#0f1620!important;--card:#17212d!important;--dekor-line:#304257!important;--dekor-muted:#9bb0c7!important;background:#0f1620!important;color:#f4f7fb!important}
html[data-dekor-theme="dark"] body.l-planner :is(.l-topbar,.l-study-selector,.card,.box,.panel,.section,.result-box){background:#17212d!important;color:#f4f7fb!important;border-color:#304257!important}
html[data-dekor-theme="dark"] body.l-planner :is(input,select,textarea,.l-module-tabs button){background:#101923!important;color:#f4f7fb!important;border-color:#344a62!important}
html[data-dekor-theme="dark"] body.l-planner .l-badge{background:#1d2a39!important;color:#dce7f2!important}
html[data-dekor-theme="dark"] body.l-planner :is(.nd-banner,.btn.active){background:#1c2a3a!important;background-image:none!important;color:#f4f7fb!important;box-shadow:none!important;border-color:#405873!important}
html[data-dekor-theme="dark"] body.l-planner button:not(.l-module-tabs button){background:#1b2a3a!important;color:#f4f7fb!important;border:1px solid #405873!important}
html[data-dekor-theme="dark"] body.l-planner button:hover{background:#26384c!important}

/* ---------- S/FV · TRES PALETAS (la oscura es la referencia) ---------- */
html[data-dekor-theme="system"] body.solar-planner{--sun:#9a721d;--sun-light:#c8a85e;--bg:#7e8995;--bg2:#96a1ac;--card:#aeb7c0;--card2:#c0c7ce;--border:#697785;--text:#17212d;--text2:#435160;--shadow:0 12px 30px rgba(18,28,40,.16);background:#7e8995;color:#17212d}
html[data-dekor-theme="dark"] body.solar-planner{--sun:#b88720;--sun-light:#d3aa4f;--bg:#0f1620;--bg2:#111b27;--card:#17212d;--card2:#1d2a39;--border:#304257;--text:#f4f7fb;--text2:#9bb0c7;--shadow:0 12px 34px rgba(0,0,0,.30);background:#0f1620;color:#f4f7fb}
html[data-dekor-theme="dark"] body.solar-planner header.s-topbar{background:#121b26!important;border-color:#2a3b50!important}
html[data-dekor-theme="dark"] body.solar-planner :is(input,select,textarea){background:#101923!important;border-color:#344a62!important;color:#f4f7fb!important}
html[data-dekor-theme="dark"] body.solar-planner .card{background:#17212d!important;border-color:#304257!important}
html[data-dekor-theme="dark"] body.solar-planner :is(.s-badge,.result-item,.monthly-item){background:#1d2a39!important;border-color:#304257!important}

/* El 3D permanece grafito en las tres apariencias */
html[data-dekor-theme="system"] :is(.project-3d-stage,.project-3d-viewport,.perspective-wrap,.project-product-preview-stage),html[data-dekor-theme="dark"] :is(.project-3d-stage,.project-3d-viewport,.perspective-wrap,.project-product-preview-stage){background:#30343B!important}

/* Impresión/PDF siempre en claro */
@media print{
  html,html[data-dekor-theme="system"],html[data-dekor-theme="dark"]{color-scheme:light!important}
  html body,html[data-dekor-theme="system"] body,html[data-dekor-theme="dark"] body{background:#fff!important;color:#111827!important}
}


/* FIX50 · pulido de tema oscuro/intermedio + selects y L-Planner */

/* Selectores nativos coherentes en las tres interfaces */
html[data-dekor-theme="dark"] :is(select, option, optgroup),
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(select, option, optgroup),
html[data-dekor-theme="dark"] body[data-main-section] :is(select, option, optgroup),
html[data-dekor-theme="dark"] body.l-planner :is(select, option, optgroup),
html[data-dekor-theme="dark"] body.solar-planner :is(select, option, optgroup){
  background:#17212d!important;
  color:#f4f7fb!important;
}
html[data-dekor-theme="dark"] option:checked,
html[data-dekor-theme="dark"] option:hover,
html[data-dekor-theme="dark"] option:focus,
html[data-dekor-theme="dark"] body[data-kplanner-build] option:checked,
html[data-dekor-theme="dark"] body[data-main-section] option:checked,
html[data-dekor-theme="dark"] body.l-planner option:checked,
html[data-dekor-theme="dark"] body.solar-planner option:checked{
  background:#8fb5e6!important;
  color:#0f1620!important;
}
html[data-dekor-theme="dark"] option:disabled,
html[data-dekor-theme="dark"] body[data-kplanner-build] option:disabled,
html[data-dekor-theme="dark"] body[data-main-section] option:disabled,
html[data-dekor-theme="dark"] body.l-planner option:disabled,
html[data-dekor-theme="dark"] body.solar-planner option:disabled{
  background:#111b27!important;
  color:#6f849a!important;
}
html[data-dekor-theme="dark"] :is(select:focus,input:focus,textarea:focus),
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(select:focus,input:focus,textarea:focus),
html[data-dekor-theme="dark"] body[data-main-section] :is(select:focus,input:focus,textarea:focus),
html[data-dekor-theme="dark"] body.l-planner :is(select:focus,input:focus,textarea:focus),
html[data-dekor-theme="dark"] body.solar-planner :is(select:focus,input:focus,textarea:focus){
  outline:none!important;
  border-color:#5f82a7!important;
  box-shadow:0 0 0 3px rgba(143,181,230,.18)!important;
}
html[data-dekor-theme="system"] :is(select, option, optgroup),
html[data-dekor-theme="system"] body[data-kplanner-build] :is(select, option, optgroup),
html[data-dekor-theme="system"] body[data-main-section] :is(select, option, optgroup),
html[data-dekor-theme="system"] body.l-planner :is(select, option, optgroup),
html[data-dekor-theme="system"] body.solar-planner :is(select, option, optgroup){
  background:#d5dbe0!important;
  color:#17212d!important;
}
html[data-dekor-theme="system"] option:checked,
html[data-dekor-theme="system"] option:hover,
html[data-dekor-theme="system"] option:focus{
  background:#8fb5e6!important;
  color:#0f1620!important;
}

/* K / I · botones secundarios del inspector con estética FV oscura */
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.free-rotation-quick button,.move-pad button),
html[data-dekor-theme="dark"] body[data-main-section] :is(.rotation-quick button,.move-pad button){
  background:#1d2a39!important;
  color:#f4f7fb!important;
  border-color:#405873!important;
  box-shadow:none!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.free-rotation-quick button:hover,.move-pad button:hover),
html[data-dekor-theme="dark"] body[data-main-section] :is(.rotation-quick button:hover,.move-pad button:hover){
  background:#26384c!important;
}
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.free-rotation-quick button,.move-pad button),
html[data-dekor-theme="system"] body[data-main-section] :is(.rotation-quick button,.move-pad button){
  background:#c4cbd1!important;
  color:#17212d!important;
  border-color:#74818e!important;
  box-shadow:none!important;
}

/* L-Planner · eliminar paneles blancos residuales y unificar formularios */
html[data-dekor-theme="dark"] body.l-planner .l-main,
html[data-dekor-theme="dark"] body.l-planner #module-container,
html[data-dekor-theme="dark"] body.l-planner #calcContent,
html[data-dekor-theme="dark"] body.l-planner .wrap,
html[data-dekor-theme="dark"] body.l-planner .dashboard,
html[data-dekor-theme="dark"] body.l-planner .nd-card,
html[data-dekor-theme="dark"] body.l-planner .card-grid,
html[data-dekor-theme="dark"] body.l-planner .card-item,
html[data-dekor-theme="dark"] body.l-planner .product-card,
html[data-dekor-theme="dark"] body.l-planner #glosario,
html[data-dekor-theme="dark"] body.l-planner #glosarioAlm,
html[data-dekor-theme="dark"] body.l-planner #resultadoAlm,
html[data-dekor-theme="dark"] body.l-planner #normativaAlm,
html[data-dekor-theme="dark"] body.l-planner #medioAmbienteBox,
html[data-dekor-theme="dark"] body.l-planner #econBox,
html[data-dekor-theme="dark"] body.l-planner .pill,
html[data-dekor-theme="dark"] body.l-planner .warn,
html[data-dekor-theme="dark"] body.l-planner .ok{
  background:#17212d!important;
  color:#f4f7fb!important;
  border-color:#304257!important;
}
html[data-dekor-theme="dark"] body.l-planner .card .card,
html[data-dekor-theme="dark"] body.l-planner .card .box,
html[data-dekor-theme="dark"] body.l-planner .card .panel,
html[data-dekor-theme="dark"] body.l-planner .card .section,
html[data-dekor-theme="dark"] body.l-planner .row > .card,
html[data-dekor-theme="dark"] body.l-planner .row3 > .card{
  background:#111b27!important;
  color:#f4f7fb!important;
  border:1px solid #344a62!important;
}
html[data-dekor-theme="dark"] body.l-planner :is(h1,h2,h3,label,strong,.muted,.legend,.tooltip-info,.pill,.section-title,.nd-title,.label){
  color:#f4f7fb!important;
}
html[data-dekor-theme="dark"] body.l-planner .muted{color:#9bb0c7!important}
html[data-dekor-theme="dark"] body.l-planner .tooltip-info .tooltip-text,
html[data-dekor-theme="dark"] body.l-planner #glosario,
html[data-dekor-theme="dark"] body.l-planner table,
html[data-dekor-theme="dark"] body.l-planner th,
html[data-dekor-theme="dark"] body.l-planner td{
  background:#17212d!important;
  color:#f4f7fb!important;
  border-color:#304257!important;
}
html[data-dekor-theme="dark"] body.l-planner th{background:#1d2a39!important}
html[data-dekor-theme="dark"] body.l-planner canvas{background:#0f1620!important;border-color:#344a62!important}
html[data-dekor-theme="dark"] body.l-planner .btn,
html[data-dekor-theme="dark"] body.l-planner button{
  background:#1d2a39!important;
  color:#f4f7fb!important;
  border:1px solid #405873!important;
  box-shadow:none!important;
}
html[data-dekor-theme="dark"] body.l-planner .btn.primary,
html[data-dekor-theme="dark"] body.l-planner button.primary,
html[data-dekor-theme="dark"] body.l-planner .btn.active{
  background:#2096d9!important;
  border-color:#2096d9!important;
  color:#fff!important;
}

html[data-dekor-theme="system"] body.l-planner .l-main,
html[data-dekor-theme="system"] body.l-planner #module-container,
html[data-dekor-theme="system"] body.l-planner #calcContent,
html[data-dekor-theme="system"] body.l-planner .wrap,
html[data-dekor-theme="system"] body.l-planner .dashboard,
html[data-dekor-theme="system"] body.l-planner .nd-card,
html[data-dekor-theme="system"] body.l-planner .card-grid,
html[data-dekor-theme="system"] body.l-planner .card-item,
html[data-dekor-theme="system"] body.l-planner .product-card,
html[data-dekor-theme="system"] body.l-planner #glosario,
html[data-dekor-theme="system"] body.l-planner #glosarioAlm,
html[data-dekor-theme="system"] body.l-planner #resultadoAlm,
html[data-dekor-theme="system"] body.l-planner #normativaAlm,
html[data-dekor-theme="system"] body.l-planner #medioAmbienteBox,
html[data-dekor-theme="system"] body.l-planner #econBox,
html[data-dekor-theme="system"] body.l-planner .pill,
html[data-dekor-theme="system"] body.l-planner .warn,
html[data-dekor-theme="system"] body.l-planner .ok{
  background:#aeb7c0!important;
  color:#17212d!important;
  border-color:#697785!important;
}
html[data-dekor-theme="system"] body.l-planner .card .card,
html[data-dekor-theme="system"] body.l-planner .row > .card,
html[data-dekor-theme="system"] body.l-planner .row3 > .card{
  background:#c4cbd1!important;
  color:#17212d!important;
  border:1px solid #74818e!important;
}

/* =====================================================================
   FIX51 · OSCURO DEFINITIVO · referencia visual S/FV
   Solo afecta a data-dekor-theme="dark". Claro y Sistema quedan intactos.
   ===================================================================== */

/* CORE · navegador de productos: eliminar cabeceras claras residuales */
html[data-dekor-theme="dark"] :is(.project-product-list-head,.project-product-list,.project-product-group-head){
  background:#17212d!important;
  color:#f4f7fb!important;
  border-color:#304257!important;
}
html[data-dekor-theme="dark"] .project-product-list-head>span{
  background:#1d2a39!important;
  color:#b9c9da!important;
  border:1px solid #304257!important;
}
html[data-dekor-theme="dark"] .project-product-group+.project-product-group{border-top-color:#0f1620!important}
html[data-dekor-theme="dark"] .project-product-group-head span{color:#9bb0c7!important}
html[data-dekor-theme="dark"] .project-product-list-wrap{background:#121b26!important}

/* K-PLANNER · inspector y biblioteca en oscuro FV */
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.property-subsection,.door-current-card,.checkbox-row,.scale-lock-row){
  background:#111b27!important;
  color:#f4f7fb!important;
  border-color:#344a62!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] .selected-title{
  background:#2a2417!important;
  border:1px solid #594922!important;
  color:#f4f7fb!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.selected-title strong,.door-current-copy strong,.checkbox-row,.checkbox-row span,.scale-lock-row span){color:#f4f7fb!important}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.selected-title small,.door-current-copy small,.catalog-note){color:#9bb0c7!important}
html[data-dekor-theme="dark"] body[data-kplanner-build] .selected-actions{
  background:linear-gradient(180deg,rgba(15,22,32,0),#17212d 28%)!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] .library-source-tab{
  background:#111b27!important;
  color:#dce7f2!important;
  border:1px solid #344a62!important;
  border-radius:9px!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] .library-source-tab.active{
  background:#223247!important;
  color:#fff!important;
  border-color:#5f82a7!important;
  box-shadow:inset 0 -2px 0 #d6a63e!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.category-tab,.camera-btn){
  background:#111b27!important;color:#dce7f2!important;border-color:#344a62!important
}
html[data-dekor-theme="dark"] body[data-kplanner-build] .category-tab.active{background:#223247!important;color:#fff!important;border-color:#5f82a7!important}
html[data-dekor-theme="dark"] body[data-kplanner-build] .property-subsection :is(option,optgroup){background:#17212d!important;color:#f4f7fb!important}
html[data-dekor-theme="dark"] body[data-kplanner-build] .property-subsection option:disabled{color:#8196ad!important}
html[data-dekor-theme="dark"] body[data-kplanner-build] :is(.door-current-swatch,.finish-swatch){border-color:#52657a!important;box-shadow:none!important}

/* I-PLANNER · inspector: eliminar botones y bandas blancas */
html[data-dekor-theme="dark"] body[data-main-section] :is(.scale-lock-row,.measure-inspector){
  background:#111b27!important;
  color:#f4f7fb!important;
  border-color:#344a62!important;
}
html[data-dekor-theme="dark"] body[data-main-section] .scale-lock-row span{color:#f4f7fb!important}
html[data-dekor-theme="dark"] body[data-main-section] .selected-actions{
  background:linear-gradient(180deg,rgba(15,22,32,0),#17212d 28%)!important;
}
html[data-dekor-theme="dark"] body[data-main-section] :is(.rotation-quick button,.move-pad button){
  background:#1d2a39!important;
  color:#f4f7fb!important;
  border-color:#405873!important;
}
html[data-dekor-theme="dark"] body[data-main-section] :is(.rotation-quick button:hover,.move-pad button:hover){background:#26384c!important}
html[data-dekor-theme="dark"] body[data-main-section] :is(.panel-edge-toggle,.right-edge-toggle,.left-edge-toggle){
  background:#1d2a39!important;color:#f4f7fb!important;border-color:#405873!important
}
html[data-dekor-theme="dark"] body[data-main-section] .canvas-hint{background:rgba(23,33,45,.90)!important;color:#c6d5e5!important;border-color:#405873!important}

/* L-PLANNER · capa antigua de calculadora homologada al oscuro FV */
html[data-dekor-theme="dark"] body.l-planner :is(.l-main,.l-calc-host,#module-container,.module-container,.wrap,.calc-section){
  background:transparent!important;
  color:#f4f7fb!important;
}
html[data-dekor-theme="dark"] body.l-planner :is(.card,.nd-card,.l-study-selector){
  background:#17212d!important;
  color:#f4f7fb!important;
  border-color:#304257!important;
  box-shadow:0 10px 28px rgba(0,0,0,.16)!important;
}
html[data-dekor-theme="dark"] body.l-planner .nd-body{
  background:#17212d!important;
  color:#f4f7fb!important;
  border:1px solid #304257!important;
  border-top:0!important;
}
html[data-dekor-theme="dark"] body.l-planner .nd-body :is(.row>.card,.row3>.card,.card .card,.card-item){
  background:#111b27!important;
  color:#f4f7fb!important;
  border:1px solid #344a62!important;
  box-shadow:none!important;
}
html[data-dekor-theme="dark"] body.l-planner :is(h1,h2,h3,h4,label,strong,.section-title,.nd-title){color:#f4f7fb!important}
html[data-dekor-theme="dark"] body.l-planner :is(.muted,.legend,.label,.field-note,.help-text){color:#9bb0c7!important}
html[data-dekor-theme="dark"] body.l-planner hr{border:0!important;border-top:1px solid #304257!important}

/* L · selector visual de luminaria (se crea dinámicamente con estilos inline) */
html[data-dekor-theme="dark"] body.l-planner #selectorVisual>[role="button"]{
  background:#101923!important;
  color:#f4f7fb!important;
  border:1px solid #344a62!important;
  border-radius:9px!important;
}
html[data-dekor-theme="dark"] body.l-planner #selectorVisual>div:not([role]){
  background:#17212d!important;
  color:#f4f7fb!important;
  border:1px solid #405873!important;
  box-shadow:0 14px 34px rgba(0,0,0,.34)!important;
}
html[data-dekor-theme="dark"] body.l-planner #selectorVisual .opcion-lum{
  background:#17212d!important;
  color:#f4f7fb!important;
  border-bottom-color:#304257!important;
}
html[data-dekor-theme="dark"] body.l-planner #selectorVisual .opcion-lum:hover{background:#223247!important}
html[data-dekor-theme="dark"] body.l-planner #selectorVisual .opcion-lum :is(strong,span){color:#f4f7fb!important}
html[data-dekor-theme="dark"] body.l-planner #selectorVisual .opcion-lum span{color:#9bb0c7!important}

/* L · tabs, formularios y estados */
html[data-dekor-theme="dark"] body.l-planner .tabs-nav button{
  background:#1d2a39!important;
  color:#dce7f2!important;
  border-color:#405873!important;
}
html[data-dekor-theme="dark"] body.l-planner .tabs-nav button.active{
  background:#223247!important;
  color:#fff!important;
  border-color:#5f82a7!important;
  box-shadow:inset 0 -2px 0 #d6a63e!important;
}
html[data-dekor-theme="dark"] body.l-planner :is(input,select,textarea,input[readonly]){
  background:#101923!important;
  color:#f4f7fb!important;
  border-color:#344a62!important;
}
html[data-dekor-theme="dark"] body.l-planner :is(select option,select optgroup){background:#17212d!important;color:#f4f7fb!important}
html[data-dekor-theme="dark"] body.l-planner option:checked{background:#8fb5e6!important;color:#0f1620!important}
html[data-dekor-theme="dark"] body.l-planner :is(.pill,.result-box,.dashboard,.product-card,#resultadoAlm,#normativaAlm,#medioAmbienteBox,#econBox,#glosarioAlm){
  background:#111b27!important;
  color:#f4f7fb!important;
  border-color:#344a62!important;
}
html[data-dekor-theme="dark"] body.l-planner :is(table,thead,tbody,tr,th,td){border-color:#304257!important;color:#f4f7fb!important}
html[data-dekor-theme="dark"] body.l-planner th{background:#1d2a39!important}
html[data-dekor-theme="dark"] body.l-planner td{background:#17212d!important}
html[data-dekor-theme="dark"] body.l-planner .tooltip-info .tooltip-text{background:#17212d!important;color:#f4f7fb!important;border-color:#405873!important}

/* L · conservamos los lienzos técnicos blancos como en planta K/I; solo el marco es oscuro */
html[data-dekor-theme="dark"] body.l-planner canvas{
  border-color:#405873!important;
  box-shadow:none!important;
}
html[data-dekor-theme="dark"] body.l-planner .calc-section>.card:has(canvas){
  background:#111b27!important;
  border-color:#344a62!important;
}

/* Oscuro: opciones deshabilitadas legibles, no negras */
html[data-dekor-theme="dark"] option:disabled,
html[data-dekor-theme="dark"] body[data-kplanner-build] option:disabled,
html[data-dekor-theme="dark"] body[data-main-section] option:disabled,
html[data-dekor-theme="dark"] body.l-planner option:disabled,
html[data-dekor-theme="dark"] body.solar-planner option:disabled{color:#8196ad!important}

/* =====================================================================
   R2 · PAPER SURFACE INK CONTRACT
   Las superficies documentales que permanecen blancas conservan tinta
   oscura aunque la interfaz exterior esté en modo oscuro.
   Solo corrige color/herencia. No modifica fondos, layout ni controles.
   ===================================================================== */

/* K-PLANNER · Propuesta / dossier en papel blanco */
html[data-dekor-theme="dark"] body[data-kplanner-build] .offer-card{
  --ink:#404044;
  --muted:#657084;
  color:#404044!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] .offer-card :is(h1,h2,h3,h4,strong){
  color:#404044!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] .offer-card :is(p,small,label){
  color:#657084!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] .offer-card .eyebrow{
  color:var(--primary,#e56b2f)!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] .offer-card .grand-total,
html[data-dekor-theme="dark"] body[data-kplanner-build] .offer-card .grand-total :is(span,strong){
  color:#404044!important;
}
/* Controles oscuros dentro del papel conservan su contraste propio */
html[data-dekor-theme="dark"] body[data-kplanner-build] .offer-card :is(input,select,textarea),
html[data-dekor-theme="dark"] body[data-kplanner-build] .offer-card :is(.button,.checkbox-row),
html[data-dekor-theme="dark"] body[data-kplanner-build] .offer-card :is(.button,.checkbox-row) :is(span,strong,small){
  color:#f4f7fb!important;
}

/* K-PLANNER · Documentación de montaje */
html[data-dekor-theme="dark"] body[data-kplanner-build] .list-view{
  --ink:#404044;
  --muted:#657084;
  color:#404044!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] .list-view .docs-intro :is(strong,small),
html[data-dekor-theme="dark"] body[data-kplanner-build] .list-view .table-wrap td{
  color:#404044!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] .list-view .docs-intro small,
html[data-dekor-theme="dark"] body[data-kplanner-build] .list-view .list-summary small{
  color:#657084!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] .list-view .eyebrow{
  color:var(--primary,#e56b2f)!important;
}
html[data-dekor-theme="dark"] body[data-kplanner-build] .list-view .table-wrap th{
  color:#596579!important;
}

/* I-PLANNER · páginas tipo documento */
html[data-dekor-theme="dark"] body[data-main-section] .module-page{
  --ink:#404044;
  --muted:#657084;
  color:#404044!important;
}
html[data-dekor-theme="dark"] body[data-main-section] .module-page .module-page-heading h2,
html[data-dekor-theme="dark"] body[data-main-section] .module-page .module-summary-grid strong,
html[data-dekor-theme="dark"] body[data-main-section] .module-page .module-table td{
  color:#404044!important;
}
html[data-dekor-theme="dark"] body[data-main-section] .module-page .module-page-heading p,
html[data-dekor-theme="dark"] body[data-main-section] .module-page .module-summary-grid span{
  color:#657084!important;
}
html[data-dekor-theme="dark"] body[data-main-section] .module-page .eyebrow{
  color:var(--primary,#e56b2f)!important;
}
html[data-dekor-theme="dark"] body[data-main-section] .module-page .module-lock{
  color:#7c5b22!important;
}
html[data-dekor-theme="dark"] body[data-main-section] .module-page .module-lock strong{
  color:#7a5516!important;
}
/* La tarjeta TOTAL I-PLANNER y la cabecera de tabla son deliberadamente oscuras */
html[data-dekor-theme="dark"] body[data-main-section] .module-page .proposal-total-card,
html[data-dekor-theme="dark"] body[data-main-section] .module-page .proposal-total-card :is(span,strong){
  color:#fff!important;
}
html[data-dekor-theme="dark"] body[data-main-section] .module-page .proposal-total-card small{
  color:#bdc6d4!important;
}
html[data-dekor-theme="dark"] body[data-main-section] .module-page .module-table th{
  color:#fff!important;
}

/* L-PLANNER · ficha de producto que conserva fondo blanco inline */
html[data-dekor-theme="dark"] body.l-planner .product-card .product-card-inner{
  --ink:#404044;
  --muted:#657084;
  color:#404044!important;
}
html[data-dekor-theme="dark"] body.l-planner .product-card .product-card-inner :is(h1,h2,h3,h4,strong){
  color:#404044!important;
}
html[data-dekor-theme="dark"]
body[data-kplanner-build]
#bomBody td:first-child,
html[data-dekor-theme="dark"]
body[data-kplanner-build]
#bomBody td:first-child strong {
    color: #404044 !important;
}
/* K-PLANNER · DOCUMENTACIÓN · COLUMNA ELEMENTO */
html[data-dekor-theme="dark"]
body[data-kplanner-build]
.list-view
.table-wrap
#bomBody > tr > td:first-child,
html[data-dekor-theme="dark"]
body[data-kplanner-build]
.list-view
.table-wrap
#bomBody > tr > td:first-child * {
    color: #404044 !important;
}
/* K-PLANNER · DOCUMENTACIÓN · TEXTO COLUMNA ELEMENTO */
html[data-dekor-theme="dark"]
body[data-kplanner-build]
#bomBody td:first-child strong {
    color: #182234 !important;
}
ç/* K-PLANNER · DOCUMENTACIÓN · COLUMNA ELEMENTO */
html[data-dekor-theme="dark"]
body[data-kplanner-build]
.list-view
.table-wrap
#bomBody td:first-child > strong {
    color: #404044 !important;
}
/* =====================================================================
   FIX52 · SISTEMA / INTERMEDIO · PROFUNDIDAD + CONTRASTE
   Solo capa visual. No modifica estructura, medidas, eventos ni lógica.
   Oscuro queda intacto para trabajarlo por separado.
   ===================================================================== */

/* Paleta intermedia con mayor separación entre fondo, panel y tarjeta */
html[data-dekor-theme="system"]{
  --bg:#7b8997;
  --ink:#122033;
  --muted:#34495d;
  --line:#5f6f7f;
  --card:#bac4cd;
  --panel:#a9b5c0;
  --shadow:0 16px 38px rgba(19,31,45,.18);
}

/* CORE · fondo con profundidad muy suave, sin alterar layout */
html[data-dekor-theme="system"] body{
  background:linear-gradient(145deg,#788694 0%,#8794a1 52%,#7d8b99 100%)!important;
  color:#122033!important;
}
html[data-dekor-theme="system"] :is(.workspace,.project-hub,.project-commercial-shell,.panel){
  color:#122033!important;
}
html[data-dekor-theme="system"] :is(.topbar,.sidebar){
  background:#667584!important;
  border-color:#566575!important;
  color:#f7f9fb!important;
  box-shadow:0 8px 24px rgba(20,32,46,.10)!important;
}
html[data-dekor-theme="system"] :is(.topbar small,.topbar-user small,.brand-sub,.sidebar .core-status){
  color:#dce4eb!important;
}

/* Superficies principales: panel medio */
html[data-dekor-theme="system"] :is(
  .auth-card,.permission-summary,.account-branding,.planner-contract-panel,
  .permission-table-wrap,.admin-library-workspace,.project-commercial-controls,
  .project-3d-card,.project-dossier,.modal-card,.project-editor-card,
  .dossier-modal-card,.appearance-panel,.project-economics
){
  background:#aab6c1!important;
  border-color:#627383!important;
  color:#122033!important;
  box-shadow:0 10px 26px rgba(20,33,48,.11)!important;
}

/* Tarjetas: un nivel más claro para que no se funda todo en el mismo plano */
html[data-dekor-theme="system"] :is(
  .module-card,.project-row,.info-card,.planner-contract-item,
  .admin-library-stats article,.project-foundation>article,.dossier-status-card,
  .project-module-card,.account-grid .info-card,.project-general-card,
  .project-internal-notes,.project-economic-metric,.project-economic-conditions article,
  .project-product-list-wrap,.project-product-preview-copy,.project-tool-card,
  .project-detail-title
){
  background:#bcc6cf!important;
  border-color:#697a89!important;
  color:#122033!important;
  box-shadow:0 8px 22px rgba(20,33,48,.08)!important;
}

/* Subtarjetas / filas / controles de contenido */
html[data-dekor-theme="system"] :is(
  .project-product-row,.dossier-section-list label,.dossier-view-row,
  .dossier-presets button,.dossier-media-group,.dossier-media-option,
  .branding-logo-preview,.empty-state,.full-floor-intro
){
  background:#cbd3da!important;
  border-color:#758594!important;
  color:#122033!important;
}

/* Texto: más contraste sin convertir Sistema en oscuro */
html[data-dekor-theme="system"] :is(
  h1,h2,h3,h4,strong,.brand-name,.project-row strong,
  .permission-summary strong,.project-general-card strong,.info-card strong
){
  color:#122033!important;
}
html[data-dekor-theme="system"] :is(
  .workspace p,.workspace small,.panel p,.panel small,
  .project-row small,.project-tool-card p,.project-economic-metric small,
  .project-commercial-controls small,.project-foundation small,
  .appearance-panel p,.appearance-option small
){
  color:#3b5064!important;
}

/* Inputs: claramente separados del panel, manteniendo aspecto intermedio */
html[data-dekor-theme="system"] :is(input,select,textarea){
  background:#e1e6ea!important;
  color:#122033!important;
  border-color:#687b8b!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45)!important;
}
html[data-dekor-theme="system"] :is(input,select,textarea):focus{
  outline:none!important;
  border-color:#4d6680!important;
  box-shadow:0 0 0 3px rgba(77,102,128,.18)!important;
}

/* Navegación CORE: inactivos visibles y activo inequívoco */
html[data-dekor-theme="system"] :is(.nav-btn,.ghost-btn,.project-layer,.appearance-option){
  background:#b8c2cb!important;
  color:#1a2b3d!important;
  border-color:#677988!important;
}
html[data-dekor-theme="system"] :is(.nav-btn:hover,.ghost-btn:hover,.project-layer:hover,.appearance-option:hover){
  background:#9eabb7!important;
  color:#122033!important;
}
html[data-dekor-theme="system"] :is(.nav-btn.active,.project-layer.active,.appearance-option.active){
  background:#607181!important;
  color:#fff!important;
  border-color:#526474!important;
}

/* K / I · tres planos visuales, sin tocar geometría ni comportamiento */
html[data-dekor-theme="system"] body[data-kplanner-build],
html[data-dekor-theme="system"] body[data-main-section]{
  --bg:#7b8997;
  --panel:#a9b5c0;
  --card:#bec8d0;
  --ink:#122033;
  --muted:#34495d;
  --line:#617383;
  --secondary:#1c3044;
  --dark:#516171;
  background:#7b8997!important;
  color:#122033!important;
}

/* Cabecera más definida; paneles de trabajo algo más claros */
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.app-header,.topbar),
html[data-dekor-theme="system"] body[data-main-section] :is(.app-header,.topbar){
  background:#95a2ae!important;
  border-color:#667786!important;
  color:#122033!important;
  box-shadow:0 5px 16px rgba(20,33,48,.10)!important;
}
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.left-panel,.right-panel,.left-sidebar,.right-sidebar,.panel-section,.view-toolbar),
html[data-dekor-theme="system"] body[data-main-section] :is(.left-panel,.right-panel,.panel-section,.view-toolbar){
  background:#a9b5c0!important;
  border-color:#617383!important;
  color:#122033!important;
}
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.canvas-card,.elevation-card,.proposal-card,.documentation-card,.library-item,.property-card,.project-card,.app-menu-panel,.modal-card,.skp-dialog-card),
html[data-dekor-theme="system"] body[data-main-section] :is(.canvas-card,.library-item,.property-card,.app-menu-panel,.skp-dialog-card){
  background:#bec8d0!important;
  border-color:#6b7c8b!important;
  color:#122033!important;
  box-shadow:0 7px 18px rgba(20,33,48,.07)!important;
}

/* K / I · botones de cabecera: el texto debe verse aun sin estar activo.
   Se limita a cabeceras para no cambiar botones funcionales del lienzo. */
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.app-header,.topbar) button,
html[data-dekor-theme="system"] body[data-main-section] :is(.app-header,.topbar) button{
  color:#20364a!important;
  text-shadow:none!important;
}
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.app-header,.topbar) button:hover,
html[data-dekor-theme="system"] body[data-main-section] :is(.app-header,.topbar) button:hover{
  color:#102237!important;
  background:rgba(255,255,255,.20)!important;
}
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.app-header,.topbar) button.active,
html[data-dekor-theme="system"] body[data-main-section] :is(.app-header,.topbar) button.active{
  background:#687988!important;
  color:#fff!important;
  border-color:#5b6d7d!important;
  box-shadow:inset 0 -2px 0 var(--primary,#e56b2f)!important;
}

/* Botones secundarios y tabs del diseño: contraste suficiente sin hacerse oscuros */
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.button,.icon-button,.icon-btn,.wall-tab,.library-tab,.header-icon,.library-source-tab,.category-tab),
html[data-dekor-theme="system"] body[data-main-section] :is(.button,.icon-button,.icon-btn,.wall-tab,.library-tab,.header-icon){
  background:#cbd3da!important;
  color:#172b3f!important;
  border-color:#718291!important;
}
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.wall-tab.active,.library-tab.active,.library-source-tab.active,.category-tab.active),
html[data-dekor-theme="system"] body[data-main-section] :is(.wall-tab.active,.library-tab.active){
  background:#647687!important;
  color:#fff!important;
  border-color:#566a7c!important;
}

/* Texto secundario K / I algo más oscuro para mejorar lectura */
html[data-dekor-theme="system"] body[data-kplanner-build] :is(.muted,.catalog-note,.help,.canvas-hint,small),
html[data-dekor-theme="system"] body[data-main-section] :is(.muted,.help,.canvas-hint,small){
  color:#3a5065!important;
}

/* El visor técnico conserva grafito, como estaba previsto */
html[data-dekor-theme="system"] :is(.project-3d-stage,.project-3d-viewport,.perspective-wrap,.project-product-preview-stage){
  background:#30343B!important;
}

/* =====================================================================
   FIX53 · K-PLANNER · navegación principal legible en tema Sistema
   Solo corrige Diseño / Propuesta / Documentación. Sin cambios de layout.
   ===================================================================== */
html[data-dekor-theme="system"] body[data-kplanner-build] .main-nav .main-nav-item{
  color:#20364a!important;
  background:transparent!important;
  border-color:transparent!important;
  text-shadow:none!important;
  opacity:1!important;
}
html[data-dekor-theme="system"] body[data-kplanner-build] .main-nav .main-nav-item:hover{
  color:#102237!important;
  background:rgba(255,255,255,.20)!important;
}
html[data-dekor-theme="system"] body[data-kplanner-build] .main-nav .main-nav-item.active{
  color:#fff!important;
  background:#687988!important;
  border-color:#5b6d7d!important;
  box-shadow:inset 0 -2px 0 var(--primary,#e56b2f)!important;
}


/* =====================================================================
   FIX57 · EXPEDIENTE MAESTRO · DOSSIER EN TEMA OSCURO
   Destaca Tipo de dossier y Vistas DEKOR. Solo contraste visual.
   ===================================================================== */
html[data-dekor-theme="dark"] .project-dossier-grid .dossier-status-card:nth-child(-n+2){
  background:#1d2a39!important;
  border-color:#405873!important;
  box-shadow:0 8px 20px rgba(0,0,0,.14)!important;
}
html[data-dekor-theme="dark"] .project-dossier-grid .dossier-status-card:nth-child(-n+2)>strong{
  color:#f4f7fb!important;
  font-weight:900!important;
}
html[data-dekor-theme="dark"] .project-dossier-grid .dossier-status-card:nth-child(-n+2)>small{
  color:#aebfd1!important;
}


/* =====================================================================
   FIX58 · OSCURO · CONFIGURAR DOSSIER + ARQUITECTURA
   Solo contraste de textos y traslado visual de Guardar vista al visor.
   ===================================================================== */

/* Configurar documentación · bloque de vistas guardadas:
   la superficie exterior es clara y necesita tinta oscura; las filas
   interiores permanecen oscuras y usan texto claro. */
html[data-dekor-theme="dark"] .dossier-saved-views{
  background:#eef2f6!important;
  color:#17212d!important;
  border:1px solid #d7dee7!important;
}
html[data-dekor-theme="dark"] .dossier-saved-views>div:first-child>strong{
  color:#17212d!important;
  font-weight:900!important;
}
html[data-dekor-theme="dark"] .dossier-saved-views>div:first-child>small{
  color:#52657a!important;
  font-weight:650!important;
}
html[data-dekor-theme="dark"] .dossier-saved-views .dossier-view-row{
  background:#121b26!important;
  border:1px solid #304257!important;
}
html[data-dekor-theme="dark"] .dossier-saved-views .dossier-view-row span,
html[data-dekor-theme="dark"] .dossier-saved-views .dossier-view-row span strong{
  color:#f4f7fb!important;
}
html[data-dekor-theme="dark"] .dossier-saved-views .dossier-view-row span{
  font-weight:650!important;
}
html[data-dekor-theme="dark"] .dossier-saved-views .dossier-view-row button{
  background:#eef2f6!important;
  color:#17212d!important;
  border:1px solid #d7dee7!important;
  font-weight:800!important;
}

/* Arquitectura · listado izquierdo de estancias.
   Las tarjetas siguen siendo claras; se corrige únicamente la tinta para
   que nombre, tipo, superficie y estado sean legibles en tema oscuro. */
html[data-dekor-theme="dark"] #architectureModal .architecture-room-row{
  background:#f7f9fc!important;
  border-color:#d6dee8!important;
  color:#17212d!important;
}
html[data-dekor-theme="dark"] #architectureModal .architecture-room-row strong{
  color:#17212d!important;
  font-weight:900!important;
}
html[data-dekor-theme="dark"] #architectureModal .architecture-room-row small{
  color:#536a82!important;
  font-weight:700!important;
}
html[data-dekor-theme="dark"] #architectureModal .architecture-room-row>span{
  background:#e8edf3!important;
  color:#42566d!important;
}
html[data-dekor-theme="dark"] #architectureModal .architecture-room-row.active{
  background:#fffaf1!important;
  border-color:#c58a1c!important;
  box-shadow:0 0 0 2px rgba(197,138,28,.15)!important;
}
html[data-dekor-theme="dark"] #architectureModal .architecture-room-row.active>span{
  background:#b37b19!important;
  color:#fff!important;
}
html[data-dekor-theme="dark"] #architectureModal .architecture-room-row.selected-context:not(.active){
  background:#f7f9fc!important;
  border-color:#d6dee8!important;
  box-shadow:inset 3px 0 0 #b37b19!important;
}

/* Guardar vista vive ahora dentro del visor. Se realza ligeramente como
   acción documental sin competir con los modos Girar / Mover / Centrar. */
html[data-dekor-theme="dark"] #project3dStage .project-save-view-btn{
  background:#1d2a39!important;
  color:#f4f7fb!important;
  border-color:#405873!important;
}
html[data-dekor-theme="dark"] #project3dStage .project-save-view-btn:hover{
  background:#26384c!important;
  border-color:#5f82a7!important;
}


/* =====================================================================
   FIX59 · OSCURO · BOTÓN CERRAR EN MODALES
   Más contraste para el botón circular de cierre sin tocar su posición
   ni su comportamiento.
   ===================================================================== */
html[data-dekor-theme="dark"] .modal-close{
  background:#1d2a39!important;
  color:#f4f7fb!important;
  border:1px solid #48627d!important;
  box-shadow:0 8px 18px rgba(0,0,0,.28)!important;
}
html[data-dekor-theme="dark"] .modal-close:hover{
  background:#26384c!important;
  border-color:#6f92b8!important;
  color:#ffffff!important;
}
html[data-dekor-theme="dark"] .modal-close:active{
  transform:translateY(1px);
}

/* =====================================================================
   R13 · DOCUMENTACIÓN · SELECCIÓN AZUL VISIBLE
   2026-09-23 · Cambio localizado: Documento a generar + Nivel de entrega.
   ===================================================================== */
.dossier-presets button{
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}

/* El seleccionado se ve igual en Documento a generar y Nivel de entrega. */
.dossier-presets button.active,
html[data-dekor-theme="system"] .dossier-presets button.active,
html[data-dekor-theme="dark"] .dossier-presets button.active{
  background:#8fc7f3!important;
  border-color:#4d98d1!important;
  color:#0b1725!important;
  box-shadow:0 0 0 2px rgba(77,152,209,.22),0 8px 18px rgba(15,23,42,.16)!important;
}
.dossier-presets button.active strong,
.dossier-presets button.active span,
html[data-dekor-theme="system"] .dossier-presets button.active strong,
html[data-dekor-theme="system"] .dossier-presets button.active span,
html[data-dekor-theme="dark"] .dossier-presets button.active strong,
html[data-dekor-theme="dark"] .dossier-presets button.active span{
  color:#0b1725!important;
}
.dossier-presets button.active span{
  opacity:.82!important;
}

/* Hover discreto para no confundirlo con el estado seleccionado. */
.dossier-presets button:not(.active):not(:disabled):hover{
  border-color:#67a9dc!important;
  background-color:rgba(143,199,243,.12)!important;
}
.dossier-document-modes button:disabled{
  opacity:.38!important;
  cursor:not-allowed!important;
}

