:root{
  --navy:#10293a; --navy-2:#124055; --teal:#0fa47a; --teal-d:#0b7a5b;
  --ink:#12242f; --ink-s:#4a6270; --line:#dfe7ea; --bg:#f6f9f9;
  --amber:#e8a33d; --amber-bg:#fff8ec; --red:#c0392b; --red-bg:#fdf1f0;
  --green-bg:#eefaf4;
}
*{box-sizing:border-box}
/* El atributo hidden equivale a display:none en la hoja del navegador, pero
   cualquier regla de autor con display lo anula. Sin este !important, la
   pantalla de acceso seguiría visible detrás del panel. */
[hidden]{display:none !important}
body{margin:0;background:var(--bg);color:var(--ink);
  font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased}
.marca{font-weight:700;letter-spacing:-.02em;font-size:19px;color:#fff}
h1{letter-spacing:-.02em}
.sub{color:var(--ink-s);margin:.25rem 0 1.5rem}

/* Acceso */
.acceso{min-height:100vh;display:grid;place-items:center;padding:24px;
  background:linear-gradient(150deg,var(--navy) 0%,var(--navy-2) 55%,#0d6b52 100%)}
.tarjeta{background:#fff;border-radius:16px;padding:40px;width:100%;max-width:420px;
  box-shadow:0 24px 60px -24px rgba(6,20,28,.55)}
.tarjeta-acceso{max-width:620px}
.tarjeta .marca{color:var(--navy);margin-bottom:22px}
.tarjeta h1{font-size:24px;margin:0 0 6px}
.tarjeta .sub{font-size:14.5px;margin-bottom:22px}
label{display:block;font-size:12.5px;font-weight:650;text-transform:uppercase;
  letter-spacing:.07em;color:#42606f;margin:14px 0 6px}
input,select,textarea{width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:8px;
  font-size:15.5px;font-family:inherit;background:#fbfdfd}
input:focus,select:focus,textarea:focus{outline:2px solid var(--teal);outline-offset:1px;border-color:var(--teal)}
textarea{min-height:96px;resize:vertical}
.codigo{letter-spacing:.32em;font-variant-numeric:tabular-nums;text-align:center;font-size:19px}
button{margin-top:22px;width:100%;padding:12px;border:none;border-radius:8px;
  background:var(--teal);color:#fff;font-size:15.5px;font-weight:650;font-family:inherit;cursor:pointer}
button:hover{background:var(--teal-d)}
button:disabled{opacity:.6;cursor:progress}
button.secundario{width:auto;margin:0;padding:8px 14px;background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.25);font-size:13.5px;font-weight:500}
button.secundario:hover{background:rgba(255,255,255,.2)}
.aviso{margin:16px 0 0;padding:11px 13px;border-radius:8px;font-size:14px;
  background:var(--red-bg);border:1px solid #f0c8c3;color:#8f2b20}
.aviso.info{background:var(--amber-bg);border-color:#f0d9ab;color:#8a5a12}
.aviso.ok{background:var(--green-bg);border-color:#bde7d3;color:#0b6c50}
.pie{margin:22px 0 0;font-size:12.5px;color:#7d939c;line-height:1.5}
.eyebrow{margin:0 0 3px;color:var(--teal-d);font-size:11.5px;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.separador{display:flex;align-items:center;gap:10px;color:#81949c;font-size:12px;margin:25px 0 0}
.separador::before,.separador::after{content:"";height:1px;background:var(--line);flex:1}
button.contorno{margin-top:13px;background:#fff;color:var(--navy);border:1px solid #b8c8ce}
button.contorno:hover{background:#f1f7f7}
button.enlace{width:auto;margin:0 0 20px;padding:0;background:none;color:var(--teal-d);font-size:13px}
.dos-columnas{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.ayuda{font-size:12px;color:#6e838d;margin:6px 0 13px}
.check{display:flex;align-items:flex-start;gap:10px;text-transform:none;letter-spacing:0;font-size:13px;font-weight:500;line-height:1.4;margin:16px 0}
.check input{width:18px;height:18px;margin:1px 0 0;flex:0 0 auto}
.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.pasos{display:flex;gap:8px;margin:0 0 22px}
.pasos span{flex:1;padding:6px 8px;background:#edf2f3;border-radius:6px;text-align:center;font-size:11.5px;color:#657a84}
.pasos .hecho,.pasos .activo{background:#e5f7f0;color:#087154;font-weight:700}
#paso-verificacion h2,#paso-pendiente h2{font-size:20px;margin:0 0 5px}
.mfa-alta{display:flex;align-items:center;gap:20px;padding:16px;background:#f4f8f8;border:1px solid var(--line);border-radius:12px;margin:14px 0 18px}
.mfa-alta img{background:#fff;border-radius:8px;max-width:46%;height:auto}
.mfa-alta code{display:block;padding:9px 11px;background:#fff;border:1px solid var(--line);border-radius:6px;word-break:break-all;font-size:13px}
.resultado-alta{text-align:center;padding:18px 0 2px}
.icono-ok{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;margin:0 auto 14px;background:var(--green-bg);color:var(--teal-d);font-size:27px;font-weight:800}

/* Panel */
.panel header{background:var(--navy);color:#fff;padding:14px 28px;display:flex;
  align-items:center;gap:18px}
.panel header .quien{margin-left:auto;text-align:right;line-height:1.3}
.panel header .quien strong{display:block;font-size:14.5px}
.panel header .quien span{font-size:12.5px;color:#9fc0cc}
.panel main{max-width:1080px;margin:0 auto;padding:36px 28px 80px}
.panel h1{font-size:27px;margin:0}
.panel h2{font-size:19px;margin:44px 0 0;padding-top:26px;border-top:1px solid var(--line)}
.rejilla{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.espacio{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;
  box-shadow:0 6px 18px -14px rgba(16,41,58,.35)}
.espacio-interactivo{cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.espacio-interactivo:hover,.espacio-interactivo:focus{transform:translateY(-2px);border-color:#8bcdbc;
  outline:none;box-shadow:0 14px 30px -20px rgba(16,41,58,.5)}
.espacio .codigo{font-size:11.5px;font-weight:700;letter-spacing:.1em;color:var(--teal-d)}
.espacio h3{margin:6px 0 12px;font-size:17px;letter-spacing:-.01em}
.barra{height:7px;background:#e9f0f1;border-radius:99px;overflow:hidden;margin:14px 0 8px}
.barra i{display:block;height:100%;background:var(--teal);border-radius:99px}
.meta{font-size:13px;color:var(--ink-s);display:flex;flex-wrap:wrap;gap:10px}
.etiqueta{display:inline-block;padding:3px 9px;border-radius:99px;font-size:11.5px;font-weight:650}
.et-ok{background:var(--green-bg);color:#0b7a5b}
.et-rev{background:#eef4fb;color:#2b5c8a}
.et-mal{background:var(--red-bg);color:#8f2b20}
.et-pen{background:var(--amber-bg);color:#8a5a12}
.tabla{margin-top:14px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.fila{display:flex;align-items:center;gap:14px;padding:13px 18px;border-bottom:1px solid #eef3f4}
.fila:last-child{border-bottom:none}
.fila .nombre{font-weight:550}
.fila .caduca{margin-left:auto;font-size:13px;color:var(--ink-s)}
.vacio{color:var(--ink-s);background:#fff;border:1px dashed var(--line);border-radius:12px;
  padding:26px;text-align:center;font-size:14.5px}
.abrir-enlace{display:block;margin-top:16px;color:var(--teal-d);font-size:13px;font-weight:700}
.archivo-resumen{font-size:12px;color:var(--ink-s)}
.titulo-seccion{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:36px 0 0}
.titulo-seccion h2{margin:0;padding:0;border:0;font-size:23px}
.sello-seguro{font-size:11.5px;font-weight:700;color:#0b6c50;background:var(--green-bg);padding:6px 10px;border-radius:99px}
.huella-total{font-size:22px;font-weight:750;color:var(--navy);margin:12px 0}

/* Detalles y carga documental */
.modal{width:min(860px,calc(100vw - 32px));max-height:calc(100vh - 40px);padding:0;border:0;border-radius:16px;
  color:var(--ink);box-shadow:0 30px 90px -25px rgba(5,20,29,.7);overflow:auto}
.modal-ancho{width:min(1180px,calc(100vw - 32px))}
.modal::backdrop{background:rgba(5,20,29,.68);backdrop-filter:blur(2px)}
.modal>section,.modal>.dos-paneles,.modal>.sub,.modal>.aviso{margin-left:28px;margin-right:28px}
.modal>section{padding:4px 0 26px}
.modal h3{font-size:16px;margin:22px 0 12px}
.modal-cabecera{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:20px 28px 16px;background:linear-gradient(105deg,var(--navy),#0f6d66);color:#fff}
.modal-cabecera h2{margin:0;font-size:22px}.modal-cabecera .eyebrow{color:#b6eadc}
.boton-icono{width:42px;height:42px;margin:0;padding:0;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.12);
  border-radius:11px;font-size:26px;line-height:1}.boton-icono:hover{background:rgba(255,255,255,.22)}
.lista-requisitos{display:grid;gap:12px}
.requisito{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fbfdfd}
.requisito-cabecera{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.requisito-cabecera p{margin:4px 0 0;color:var(--ink-s);font-size:13px}
.rechazo{background:var(--red-bg);color:#8f2b20;padding:8px 10px;border-radius:7px;font-size:13px}
.subida{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:12px}
.subida button,.form-mensaje button{width:auto;margin:0;white-space:nowrap}
.mensajes{max-height:300px;overflow:auto;background:#f2f6f7;border:1px solid var(--line);border-radius:12px;padding:14px}
.mensaje{max-width:78%;background:#fff;border:1px solid var(--line);padding:10px 12px;border-radius:10px;margin:8px 0}
.mensaje.propio{margin-left:auto;background:#e9f8f3;border-color:#bce6d8}
.mensaje strong{font-size:12px}.mensaje time{float:right;color:#748992;font-size:11px}.mensaje p{margin:5px 0 0;white-space:pre-wrap}
.form-mensaje{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin-top:12px}
.form-mensaje label{grid-column:1/-1;margin-bottom:-4px}.form-mensaje textarea{min-height:74px}

/* Inventario de emisiones */
.dos-paneles{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:20px;padding-bottom:30px}
.dos-paneles>section{min-width:0}.panel-propuesta{background:#f5f9f9;border:1px solid var(--line);border-radius:14px;padding:18px}
.panel-propuesta button{margin-top:16px}
.resumen-huella{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.resultado-principal{grid-column:1/-1;background:linear-gradient(110deg,var(--navy),#0f6d66);color:#fff;padding:18px;border-radius:12px}
.resultado-principal span,.resultado-scope span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.07em;opacity:.78}
.resultado-principal strong{display:block;font-size:27px;margin-top:4px}
.resultado-scope{border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px}
.resultado-scope strong{display:block;margin-top:4px}.resumen-huella>.ayuda{grid-column:1/-1}
.fila-actividad .nombre small{display:block;color:var(--ink-s);font-weight:400;margin-top:2px}

/* Plataforma Descarbonizate */
body.modo-carbono{--navy:#082f35;--navy-2:#0a4c4b;--teal:#12a579;--teal-d:#087a5d;--lime:#9ccb3b;--bg:#f3f7f5}
body.modo-carbono .panel header{background:#fff;color:var(--ink);border-bottom:1px solid #dfe9e4;position:sticky;top:0;z-index:20;box-shadow:0 6px 24px -22px #092b2d}
body.modo-carbono .panel header .marca{color:#083b3d;font-size:21px;letter-spacing:-.04em}
body.modo-carbono .panel header .marca::after{content:" by Enertria";font-size:10px;letter-spacing:.02em;color:#638178;margin-left:5px;font-weight:600}
body.modo-carbono .panel header .quien span{color:#668179}
body.modo-carbono button.secundario{color:#234841;background:#edf5f1;border-color:#d3e4dc}
body.modo-carbono button.secundario:hover{background:#e0eee8}
body.modo-carbono .panel main{max-width:1480px;padding:24px 28px 80px}
body.modo-carbono .acceso{background:radial-gradient(circle at 82% 18%,rgba(156,203,59,.22),transparent 26%),linear-gradient(145deg,#052b31,#07504c 62%,#0e785a)}
body.modo-carbono .tarjeta-acceso{border:1px solid rgba(255,255,255,.2)}
body.modo-carbono #marca-acceso{font-size:21px;letter-spacing:-.04em}

.carbon-platform{display:block}
.carbon-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding:34px 38px;border-radius:22px;color:#fff;background:
  radial-gradient(circle at 86% 0,rgba(190,225,92,.35),transparent 30%),linear-gradient(118deg,#07343b 0%,#08655c 70%,#11815f 100%);box-shadow:0 22px 50px -38px #052c31}
.carbon-hero h1{font-size:clamp(27px,3vw,44px);line-height:1.08;max-width:780px;margin:4px 0 11px;letter-spacing:-.045em}
.carbon-hero p{max-width:760px;margin:0;color:#d8eee8;line-height:1.5}
.carbon-hero .eyebrow{color:#bfe97b}
.carbon-hero-status{display:grid;gap:6px;min-width:230px;padding:16px 18px;border-radius:15px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px)}
.carbon-hero-status strong{font-size:19px}.carbon-hero-status>span:last-child{font-size:12px;color:#cae5de}
.plan-badge{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:5px 10px;border-radius:99px;background:#e6f4ed;color:#0b7659;font-size:11.5px;font-weight:750}
.carbon-hero .plan-badge{background:#cce990;color:#183f33}
.carbon-nav{display:flex;gap:7px;margin:16px 0 22px;padding:7px;background:#fff;border:1px solid #dfe9e4;border-radius:14px;overflow:auto;box-shadow:0 12px 28px -28px #052c31;scrollbar-width:thin}
.carbon-nav button{display:flex;align-items:center;gap:7px;width:auto;min-width:max-content;margin:0;padding:9px 12px;border-radius:9px;color:#365a52;background:transparent;font-size:12.5px;font-weight:650}
.carbon-nav button:hover{background:#edf6f1}.carbon-nav button.activo{color:#fff;background:#0a765f}.carbon-nav button span{font-weight:800}
.carbon-section{animation:carbon-fade .18s ease}.carbon-section>h2,.carbon-section .section-heading h2,.carbon-card h2{margin:0;padding:0;border:0}
@keyframes carbon-fade{from{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:none}}
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.kpi-card{min-width:0;padding:19px 20px;background:#fff;border:1px solid #dfe9e4;border-radius:15px;box-shadow:0 12px 28px -28px #06363a}
.kpi-card>span{display:block;color:#5f7a72;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.055em}
.kpi-card>strong{display:block;margin:5px 0 3px;font-size:26px;line-height:1.15;color:#0b3f41;letter-spacing:-.035em;overflow-wrap:anywhere}
.kpi-card>small{display:block;color:#718880;font-size:11.5px}.kpi-card.kpi-principal{border-color:#94d5bd;background:linear-gradient(145deg,#f8fdfb,#eef9f3)}
.carbon-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:15px;margin-top:15px}
.carbon-card{background:#fff;border:1px solid #dfe9e4;border-radius:16px;padding:22px;box-shadow:0 14px 30px -30px #053339}
.carbon-card h2{font-size:20px}.carbon-card h3{margin:5px 0 13px;font-size:18px}
.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.card-heading>span{font-size:24px;font-weight:800;color:#0c745c}
.journey-bar{height:8px;margin:17px 0 19px;border-radius:99px;background:#e6eeea;overflow:hidden}.journey-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#11a77c,#9acb3f);transition:width .3s ease}
.journey-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:0;padding:0;list-style:none}
.journey-steps li{display:flex;align-items:flex-start;gap:8px;min-width:0;padding:10px;border:1px solid #e1ebe6;border-radius:11px;color:#72857f;background:#fafcfb}
.journey-steps b{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:50%;background:#e8efec;color:#627770;font-size:11px}
.journey-steps strong,.journey-steps span{display:block}.journey-steps strong{font-size:12px;color:#3a5951}.journey-steps span{margin-top:2px;font-size:10.5px;line-height:1.3}
.journey-steps li.done{background:#eff9f4;border-color:#bfe5d5}.journey-steps li.done b{background:#0c9871;color:#fff}.journey-steps li.done strong{color:#087456}
.boton-inline{width:auto;margin:16px 0 0;padding:9px 14px;border-radius:9px;font-size:13px}.boton-texto{width:auto;margin:13px 0 0;padding:0;background:transparent;color:#087456;font-size:12.5px}.boton-texto:hover{background:transparent;color:#055841}
.insight-list{display:grid;gap:9px;margin-top:15px}.insight-item{display:flex;gap:11px;padding:12px;border:1px solid #e3ece8;border-radius:11px;background:#fafcfb}
.insight-item[role=button]{cursor:pointer}.insight-item[role=button]:hover{border-color:#8fd0b8}.insight-item i{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:8px;background:#e7f6f0;color:#097355;font-style:normal;font-weight:800}
.insight-item.warn i{background:#fff2d9;color:#94600a}.insight-item strong{font-size:12.5px}.insight-item p{margin:2px 0 0;color:#60766f;font-size:11.5px;line-height:1.4}.vacio-mini{color:#71847e;font-size:13px;margin:8px 0}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:8px 0 17px;padding:21px 24px;background:#fff;border:1px solid #dfe9e4;border-radius:16px}
.section-heading h2{font-size:26px;letter-spacing:-.03em}.section-heading p:not(.eyebrow){margin:5px 0 0;color:#5f766f}.section-heading>a{color:#087456;font-weight:700;font-size:13px;white-space:nowrap}
.carbon-two-columns{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:15px;align-items:start}.form-card{padding:20px}.form-card label{margin-top:10px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 13px}.big-score{display:block;font-size:64px;line-height:1;color:#0a765f;letter-spacing:-.065em}.result-card>span{color:#72857f;font-size:13px}
.ods-questions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.ods-question{padding:12px;border:1px solid #e0ebe5;border-radius:11px;background:#f9fcfa}.ods-question label{display:flex;justify-content:space-between;gap:8px;margin:0 0 7px;text-transform:none;letter-spacing:0}.ods-question label strong{font-size:12px;color:#294d45}.ods-question label span{font-size:10px;color:#0a775d;white-space:nowrap}.ods-question select{padding:8px 9px;font-size:12.5px;background:#fff}
.priority-list{display:grid;gap:9px;margin-top:17px}.priority-item{padding:12px;border-left:3px solid #9dcb43;background:#f3f8ef;border-radius:5px 10px 10px 5px}.priority-item>span{font-size:10px;font-weight:800;color:#56810d}.priority-item strong{display:block;font-size:13px;margin:2px 0}.priority-item p{margin:0;color:#5c736b;font-size:11.5px;line-height:1.45}
.upgrade-panel{padding:30px;border-radius:16px;border:1px solid #e3d3a9;background:linear-gradient(120deg,#fffaf0,#f5fbf6)}.upgrade-panel strong{font-size:18px}.upgrade-panel p{margin:5px 0;color:#5f726c}
.data-list{display:grid;gap:8px}.data-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid #e8efec}.data-row:last-child{border-bottom:0}.data-row strong,.data-row span{display:block}.data-row strong{font-size:13px}.data-row div>span{font-size:11px;color:#71847e;margin-top:2px}
.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:13px}.action-card{padding:18px;border:1px solid #dfe9e4;border-radius:14px;background:#fff}.action-top{display:flex;justify-content:space-between;align-items:center;color:#71847e;font-size:11px}.action-card h3{margin:12px 0 5px;font-size:16px}.action-card p{margin:0;color:#5f766f;font-size:13px}.action-metrics{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.action-metrics span{padding:5px 8px;border-radius:7px;background:#eff6f2;color:#305a4e;font-size:11px;font-weight:700}
.assistant-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:15px}.assistant-card{padding:0;overflow:hidden}.assistant-messages{height:min(52vh,520px);min-height:340px;overflow:auto;padding:20px;background:linear-gradient(#f8fcfa,#f3f8f6)}
.assistant-message{width:min(78%,720px);margin:0 0 11px auto;padding:12px 14px;border-radius:13px 13px 3px 13px;background:#0a765f;color:#fff}.assistant-message.agent{margin-left:0;margin-right:auto;border-radius:13px 13px 13px 3px;background:#fff;color:#173d35;border:1px solid #dce8e3}.assistant-message strong{display:block;font-size:11px;opacity:.75}.assistant-message p{margin:4px 0 0;white-space:pre-wrap;font-size:13.5px;line-height:1.5}
.assistant-form{display:grid;grid-template-columns:1fr auto;gap:9px;padding:13px;border-top:1px solid #dfe9e4;background:#fff}.assistant-form textarea{min-height:62px;max-height:140px}.assistant-form button{width:auto;margin:0;align-self:stretch}.assistant-card>.aviso{margin:0 13px 13px}.prompt-card button{width:100%;margin:7px 0 0;padding:9px 11px;text-align:left;background:#eff6f2;color:#285349;border:1px solid #d8e8e0;font-size:12px}.prompt-card button:hover{background:#e4f2eb}
.plans-grid{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));gap:12px;overflow-x:auto;padding:3px 1px 14px}.plan-card{position:relative;display:flex;flex-direction:column;min-width:220px;padding:21px;border:1px solid #dfe9e4;border-radius:16px;background:#fff}.plan-card.recomendado{border:2px solid #0b9871;padding:20px}.plan-card.actual{background:linear-gradient(145deg,#f5fcf8,#edf7f2);box-shadow:0 15px 30px -26px #06483e}.recommended-label{position:absolute;top:-10px;right:12px;padding:4px 8px;border-radius:99px;background:#0a765f;color:#fff;font-size:9.5px;font-weight:800}.plan-card h3{margin:3px 0;font-size:19px}.plan-price{display:block;font-size:20px;color:#0a765f}.plan-card p{min-height:58px;margin:8px 0;color:#627971;font-size:12.5px}.plan-card ul{flex:1;margin:7px 0 0;padding:0;list-style:none}.plan-card li{position:relative;padding:6px 0 6px 18px;border-top:1px solid #edf2ef;font-size:11.5px}.plan-card li::before{content:"✓";position:absolute;left:0;color:#0a9871;font-weight:800}.plan-card button{width:100%;margin-top:17px}.request-history{margin-top:13px}
@media(max-width:640px){
  .panel main{padding:24px 16px 60px}
  .tarjeta{padding:28px}
  .panel header{padding:12px 16px}
  .dos-columnas{grid-template-columns:1fr}
  .mfa-alta{display:block;text-align:center}
  .mfa-alta img{max-width:100%}
  .titulo-seccion{display:block}.sello-seguro{display:inline-block;margin:8px 0 0}
  .modal{width:100vw;max-height:100vh;height:100vh;border-radius:0;margin:0}
  .modal-cabecera{padding:16px}.modal>section,.modal>.dos-paneles,.modal>.sub,.modal>.aviso{margin-left:16px;margin-right:16px}
  .subida,.form-mensaje{grid-template-columns:1fr}.subida button,.form-mensaje button{width:100%}
  .dos-paneles{grid-template-columns:1fr}.resumen-huella{grid-template-columns:1fr}
  .mensaje{max-width:92%}
}

@media(max-width:1050px){
  .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .carbon-dashboard-grid,.carbon-two-columns,.assistant-layout{grid-template-columns:1fr}
  .journey-steps{grid-template-columns:1fr}.journey-steps li{align-items:center}
  .prompt-card{display:none}.plans-grid{grid-template-columns:repeat(5,245px)}
}
@media(max-width:700px){
  body.modo-carbono .panel main{padding:14px 12px 55px}
  body.modo-carbono .panel header{padding:11px 12px}.panel header .quien{display:none}
  .carbon-hero{display:block;padding:25px 21px;border-radius:17px}.carbon-hero-status{margin-top:18px;min-width:0}
  .carbon-nav{position:sticky;top:61px;z-index:15;margin:10px 0 14px;border-radius:11px}
  .carbon-nav button{padding:8px 10px;font-size:11.5px}
  .kpi-grid{grid-template-columns:1fr 1fr;gap:8px}.kpi-card{padding:14px}.kpi-card>strong{font-size:20px}
  .section-heading{display:block;padding:17px}.section-heading h2{font-size:22px}.section-heading .plan-badge,.section-heading .sello-seguro{margin-top:10px}
  .form-grid,.ods-questions{grid-template-columns:1fr}.carbon-card{padding:17px}
  .assistant-messages{height:50vh;min-height:300px;padding:13px}.assistant-message{width:91%}
  .assistant-form{grid-template-columns:1fr}.assistant-form button{width:100%}
  .plans-grid{grid-template-columns:repeat(5,82vw)}
}
