/* ESDE · Sistema Visual Maestro 15.10.41
   Alcance: interfaz ED3. No altera JS, datos, autorizaciones ni resultados.
   Mantener fuentes existentes Poppins / Marvin sin incluir archivos de fuentes. */
:where(.ed3-shell,.ed3-sim-ux,.ed3-card-app){
 --esde-bg:#0B0D0F;--esde-card:#202225;--esde-raised:#292C30;
 --esde-line:#3A3E45;--esde-cyan:#45B8E8;--esde-yellow:#FFD43D;
 --esde-wine:#7A2434;--esde-text:#F8F8F8;--esde-muted:#B9B9B9;
 --esde-radius:12px;--esde-focus:2px solid var(--esde-yellow);
 font-family:'Poppins',Arial,sans-serif;line-height:1.5;
}
/* Asegurar geometría uniforme y no comprimir textos. */
:where(.ed3-shell,.ed3-sim-ux,.ed3-card-app) :is(button,input,select,textarea){box-sizing:border-box;font-family:'Poppins',Arial,sans-serif;}
:where(.ed3-shell,.ed3-sim-ux,.ed3-card-app) :is(button,a,select,input,textarea):focus-visible{
 outline:var(--esde-focus);outline-offset:3px;
}
:where(.ed3-shell,.ed3-sim-ux,.ed3-card-app) :is(button,[type=submit]){min-height:44px;transition:background-color .15s ease,border-color .15s ease;}
:where(.ed3-shell,.ed3-sim-ux,.ed3-card-app) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){
 max-width:100%;min-height:44px;border-radius:9px;line-height:1.5;
}
.ed3-shell :is(.ed3-module,.ed3-card,.ed3-panel){border-radius:var(--esde-radius);}
.ed3-shell :is(.ed3-module, .ed3-panel) :is(h2,h3){overflow-wrap:break-word;line-height:1.35;}
.ed3-shell :is(.ed3-helper,.description,small){color:var(--esde-muted);}
.ed3-shell :is(.ed3-btn,.ed3-quick-links a){border-radius:9px;}
.ed3-shell .ed3-module table{width:100%;}
.ed3-shell .ed3-module :is(td,th){vertical-align:top;overflow-wrap:break-word;}
/* Mesa ficticia: paleta consistente y espacio para criterios. */
.ed3-sim-ux .ed3-sim-section,.ed3-card-app :is(.ed3-card-top,.ed3-card-nav,.ed3-card-main){
 background:var(--esde-card);color:var(--esde-text);border:1px solid var(--esde-line);border-radius:14px;
}
.ed3-sim-ux .ed3-sim-savebar{background:var(--esde-raised);border-color:var(--esde-cyan);}
.ed3-sim-ux .ed3-sim-savebar button,.ed3-card-app :is(.ed3-card-actions button,.ed3-card-vote button){
 background:var(--esde-cyan);color:var(--esde-bg);border-radius:9px;min-height:44px;
}
.ed3-sim-ux .ed3-sim-savebar button:hover:not(:disabled),.ed3-card-app :is(.ed3-card-actions button,.ed3-card-vote button):hover:not(:disabled){background:#80D1F1;}
.ed3-card-app .ed3-card-tab{background:var(--esde-raised);border-color:var(--esde-line);color:var(--esde-text);border-radius:9px;min-height:44px;}
.ed3-card-app .ed3-card-tab.active{background:#19404B;border-color:var(--esde-cyan);}
.ed3-card-app .ed3-card-progress{background:var(--esde-line);}
.ed3-card-app .ed3-card-progress span{background:var(--esde-cyan);}
.ed3-card-app .ed3-card-criteria label,.ed3-sim-ux .ed3-sim-criteria label{
 background:var(--esde-raised);border:1px solid var(--esde-line);border-radius:10px;
}
.ed3-card-app .ed3-card-criteria label span,.ed3-sim-ux .ed3-sim-criteria label span{
 min-width:0;word-break:normal;overflow-wrap:break-word;writing-mode:horizontal-tb;
}
.ed3-card-app .ed3-card-criteria label input,.ed3-sim-ux .ed3-sim-criteria label input{min-height:44px;}
.ed3-card-app .ed3-card-feedback textarea{min-height:120px!important;}
.ed3-card-app :is(.ed3-card-kicker,.ed3-card-actions strong){color:var(--esde-cyan);}
.ed3-card-app :is(.ed3-card-nav,.ed3-card-main),.ed3-sim-ux .ed3-sim-section{min-width:0;}
@media(max-width:740px){
 .ed3-card-app .ed3-card-layout,.ed3-card-app .ed3-card-top{grid-template-columns:minmax(0,1fr);}
 .ed3-shell .ed3-module table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;}
 :where(.ed3-shell,.ed3-sim-ux,.ed3-card-app) :is(input,select,textarea){font-size:16px;}
}
@media(prefers-reduced-motion:reduce){
 :where(.ed3-shell,.ed3-sim-ux,.ed3-card-app) *{transition-duration:.01ms!important;animation-duration:.01ms!important;}
}
