/* CENTINELA · añadidos: botón de informe PDF, sección "Cómo funciona" y pie legal */
.btn.pdf{border-color:var(--amber);color:var(--amber)}
.btn.pdf:hover{background:rgba(245,181,74,.12);color:#ffd27a;border-color:#ffd27a}
.how{grid-column:1/-1;scroll-margin-top:12px;transition:box-shadow .4s}
.how.flash{box-shadow:0 0 0 2px var(--amber)}
.how .lead{font-size:13px;color:var(--fg);margin:0 0 10px;max-width:980px}
.how .lead b{color:var(--cyan2);font-weight:500}
.how-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}
.how-item{background:var(--panel2);border:1px solid var(--line);padding:10px 12px}
.how-item h3{margin:0 0 5px;font-family:var(--f-disp);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan2)}
.how-item p{margin:0;font-size:12px;color:var(--dim);line-height:1.5}
.how-item p b{color:var(--fg);font-weight:500}
.how-item code{font-family:var(--f-mono);font-size:11px;color:var(--amber);background:rgba(245,181,74,.08);padding:0 3px}
.how .note{font-size:11.5px;color:var(--dim);margin:10px 0 0;border-left:2px solid var(--amber);padding-left:8px}
.legal{display:block;margin-top:6px;color:var(--dim)}
.legal a{color:var(--cyan2)}
@media (max-width:900px){.how{order:6}.foot{order:7}}
.top .stamp{margin-left:auto}
/* ===== Franja BOE en cabecera ===== */
.boe-strip{grid-column:1/-1;display:flex;align-items:center;gap:12px;min-height:40px;padding:7px 12px;border:1px solid var(--line);border-left:3px solid var(--amber);background:linear-gradient(90deg,rgba(245,181,74,.10),rgba(10,18,48,.86) 38%);overflow:hidden}
.boe-strip .bs-l{display:flex;align-items:center;gap:8px;flex:none}
.boe-strip .bs-dot{width:8px;height:8px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 0 rgba(245,181,74,.7);animation:bsp 2s infinite}
@keyframes bsp{70%{box-shadow:0 0 0 7px rgba(245,181,74,0)}100%{box-shadow:0 0 0 0 rgba(245,181,74,0)}}
.boe-strip .bs-lab{font-family:var(--f-mono);font-size:10px;letter-spacing:.16em;color:var(--amber);font-weight:600}
.boe-strip .bs-msg{flex:1;min-width:0;display:flex;align-items:center;gap:8px;transition:opacity .35s}
.boe-strip .bs-msg.fade{opacity:0}
.boe-strip .bs-msg a{color:var(--fg);text-decoration:none;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.boe-strip .bs-msg a:hover{color:#fff;text-decoration:underline}
.boe-strip .bs-r{flex:none;display:flex;align-items:center;gap:10px;font-family:var(--f-mono);font-size:10px;color:var(--dim);letter-spacing:.06em}
.boe-strip .bs-r b{color:var(--fg);font-weight:500}
.boe-strip .bs-go{color:var(--amber);text-decoration:none;border:1px solid rgba(245,181,74,.5);padding:4px 8px;letter-spacing:.1em}
.boe-strip .bs-go:hover{background:rgba(245,181,74,.12)}
@media (max-width:900px){.boe-strip{order:1;flex-wrap:wrap}.boe-strip .bs-r{width:100%;justify-content:space-between}.boe-strip .bs-msg a{white-space:normal}}

/* ===== Pastillas ===== */
.pill{display:inline-flex;align-items:center;font-family:var(--f-mono);font-size:9px;font-weight:600;letter-spacing:.1em;padding:2px 6px;border:1px solid;line-height:1.3;white-space:nowrap;text-transform:uppercase}
.pill.boe{color:var(--amber);border-color:rgba(245,181,74,.55);background:rgba(245,181,74,.08)}
.pill.cnmc{color:var(--violet);border-color:rgba(160,140,255,.55);background:rgba(160,140,255,.08)}
.pill.miteco{color:var(--green);border-color:rgba(67,210,141,.5);background:rgba(67,210,141,.07)}
.pill.ree{color:var(--cyan2);border-color:rgba(63,208,242,.5);background:rgba(63,208,242,.07)}
.pill.alert{color:#fff;border-color:var(--red);background:rgba(255,90,84,.85)}
.pill.type{color:var(--dim);border-color:var(--line2);background:transparent;font-weight:500}
.pill.ok{color:var(--green);border-color:rgba(67,210,141,.45)}.pill.ko{color:var(--red);border-color:rgba(255,90,84,.5)}

/* ===== Sección regulación ===== */
.regu{grid-column:1/-1;padding:16px 16px 14px;background:linear-gradient(180deg,rgba(14,26,68,.92),rgba(8,14,40,.92))}
.rg-top{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line2)}
.rg-kicker{font-family:var(--f-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--cyan2)}
.rg-title{margin:4px 0 0;font-family:var(--f-disp);font-size:22px;letter-spacing:.06em;font-weight:700;color:#fff}
.rg-kpis{display:flex;gap:8px;flex-wrap:wrap}
.rg-kpi{background:rgba(5,9,25,.55);border:1px solid var(--line2);padding:7px 12px;min-width:118px}
.rg-kpi b{display:block;font-family:var(--f-disp);font-size:20px;font-weight:700;color:#fff;line-height:1.1}
.rg-kpi span{font-family:var(--f-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.rg-kpi.warn b{color:var(--red)}.rg-kpi.amb b{color:var(--amber)}
.rg-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,1.15fr);gap:12px;align-items:stretch}
.rg-card{background:rgba(5,9,25,.5);border:1px solid var(--line);padding:12px 12px 10px;min-width:0}
.rg-ch{display:flex;align-items:center;gap:8px;margin:0 0 8px;padding-bottom:8px;border-bottom:1px dashed var(--line2)}
.rg-ch h3{margin:0;font-family:var(--f-disp);font-size:13.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg);font-weight:600;flex:1;min-width:0}
.rg-cnt{font-family:var(--f-mono);font-size:9.5px;color:var(--dim);letter-spacing:.06em;white-space:nowrap}
.rg-feed{list-style:none;margin:0;padding:0;max-height:430px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line2) transparent}
.rg-feed li.rg-it{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;padding:9px 2px;border-bottom:1px solid rgba(28,42,92,.7)}
.rg-feed li.rg-it:last-child{border-bottom:0}
.rg-feed .rg-date{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--panel2);border:1px solid var(--line2);height:42px;line-height:1}
.rg-feed .rg-date b{font-family:var(--f-disp);font-size:17px;color:#fff}
.rg-feed .rg-date span{font-family:var(--f-mono);font-size:8.5px;letter-spacing:.12em;color:var(--dim);text-transform:uppercase;margin-top:2px}
.rg-feed .rg-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 5px;margin-bottom:4px}
.rg-feed .rg-meta em{font-style:normal;font-family:var(--f-mono);font-size:9px;letter-spacing:.06em;color:var(--faint);text-transform:uppercase}
.rg-feed a{color:var(--fg);text-decoration:none;font-size:12.5px;line-height:1.42;display:block}
.rg-feed a:hover{color:var(--cyan2)}
.rg-feed li.alert-it a{color:#ffd4d2}
.rg-feed.compact li.rg-it{grid-template-columns:42px minmax(0,1fr);padding:7px 2px}
.rg-feed.compact a{font-size:11.5px;color:var(--dim)}
.rg-empty{color:var(--dim);font-size:12px;padding:10px 2px}
.rg-more{display:inline-block;margin-top:8px;font-family:var(--f-mono);font-size:10px;letter-spacing:.08em;color:var(--amber);text-decoration:none}
.rg-sub{margin-top:16px;padding-top:4px}
.rg-sub .rg-feed{max-height:250px}
#rg-news{max-height:640px}
#rg-norm{max-height:330px}
.rg-stack{display:flex;height:12px;border:1px solid var(--line2);margin:2px 0 6px;overflow:hidden}
.rg-stack i{display:block;height:100%}
.rg-leg{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:10.5px;color:var(--dim);margin-bottom:6px}
.rg-leg span:before{content:"";display:inline-block;width:8px;height:8px;margin-right:5px;background:var(--c);vertical-align:0}
.rg-leg b{color:var(--fg);font-weight:500;margin-left:3px}
.rg-big{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.rg-big .kv{font-size:34px;color:var(--amber);font-family:var(--f-disp)}
.rg-big .ks{flex:1;min-width:180px}
.rg-sw{display:flex;gap:4px;flex-wrap:wrap;margin:10px 0 6px}
.rg-sw .btn{font-size:9.5px;padding:5px 9px}
.rg-sw .rg-dl{margin-left:auto;border-color:var(--amber);color:var(--amber)}
.rg-sw .rg-dl:hover{background:rgba(245,181,74,.12)}
.rg-sum{font-size:11.5px;color:var(--dim);margin:4px 0 8px}.rg-sum b{color:var(--fg);font-weight:500}
.rg-det summary{cursor:pointer;font-family:var(--f-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan2);padding:6px 0}
.rg-tab .row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:4px 0;border-bottom:1px solid rgba(28,42,92,.6);font-size:11.5px}
.rg-tab .row span:last-child{font-family:var(--f-mono)}
.rg-calc{margin-top:10px;background:rgba(245,181,74,.05);border:1px solid rgba(245,181,74,.35);padding:10px}
.rg-calc-h{font-family:var(--f-disp);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--amber);margin-bottom:6px}
.rg-calc label{display:block;font-size:11px;color:var(--dim);margin-bottom:4px}
.rg-calc textarea{width:100%;background:rgba(5,9,25,.7);border:1px solid var(--line2);color:var(--fg);font-family:var(--f-mono);font-size:12.5px;padding:7px 9px;resize:vertical}
.rg-calc textarea:focus{outline:2px solid var(--amber);outline-offset:1px}
.rg-res{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:8px}
.rg-res div{background:rgba(5,9,25,.6);border:1px solid var(--line);padding:6px 8px}
.rg-res b{display:block;font-family:var(--f-disp);font-size:17px;color:#fff}
.rg-res span{font-family:var(--f-mono);font-size:9px;letter-spacing:.06em;color:var(--dim);text-transform:uppercase}
.rg-note{font-size:11.5px;color:var(--dim);margin:12px 0 0;border-left:2px solid var(--amber);padding-left:9px;max-width:1200px}
.rg-note b{color:var(--fg);font-weight:500}
@media (max-width:1250px){.rg-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.rg-aj{grid-column:1/-1}}
@media (max-width:900px){.regu{order:6}.rg-grid{grid-template-columns:minmax(0,1fr)}.rg-res{grid-template-columns:minmax(0,1fr)}.rg-title{font-size:18px}}

.rg-aj svg.ch{width:100%;height:auto;display:block;margin-top:2px}
.rg-aj svg.ch text{font-family:var(--f-mono);font-size:9px;fill:#8da0c4}
.rg-big .kv small{font-size:13px;color:var(--dim);font-family:var(--f-mono)}
.rg-big .ks{font-size:12px;color:var(--dim);line-height:1.5}.rg-big .ks b{color:var(--fg);font-weight:500}.rg-big .ks b.up{color:var(--red)}.rg-big .ks b.dn{color:var(--green)}
/* fila extra para la franja BOE bajo la cabecera */
.app{grid-template-rows:auto auto clamp(600px,76vh,820px) auto auto auto}
@media (max-width:1250px){.app{grid-template-rows:auto auto 680px auto}}
@media (max-width:900px){.app{grid-template-rows:auto}}
@media (max-width:1250px) and (min-width:901px){.boe-strip{grid-row:2}.stage,.colR{grid-row:3}.colL{grid-row:4}}
.rg-feed{-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 26px),transparent);mask-image:linear-gradient(180deg,#000 calc(100% - 26px),transparent);padding-bottom:18px}
@media (max-width:900px){.boe-strip{gap:8px}.boe-strip .bs-msg{flex:1 1 100%;flex-wrap:wrap;gap:6px}.boe-strip .bs-msg a{flex:1 1 100%;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;white-space:normal}.bs-r .bs-go{white-space:nowrap}}
/* Servicios de ajuste · desglose, coste en factura y calculadora */
.rg-g{font-family:var(--f-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan2);margin:10px 0 2px}
.rg-tab .row.aj span:first-child{padding-left:10px}.rg-tab .row.sub{border-bottom:1px solid var(--amber);color:#fff}
.rg-der{font-style:normal;font-family:var(--f-mono);font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;color:#1a0b00;background:var(--amber);padding:0 4px;margin-left:4px}
.rg-ok{font-size:11px;color:var(--dim);margin:8px 0 0;line-height:1.5}.rg-rev{border:1px solid #ff5a54;background:rgba(255,90,84,.08);padding:8px 10px;font-size:12px}
.rg-fac{margin:10px 0;border:1px solid rgba(16,160,203,.5);background:rgba(16,160,203,.06);padding:10px}
.rg-fh{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:8px}.rg-fh b{font-family:var(--f-disp);font-size:13px;letter-spacing:.05em;text-transform:uppercase;color:#fff}.rg-fh span:last-child{font-size:11px;color:var(--dim)}
.pill.der{background:var(--amber);color:#1a0b00}
.rg-fg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.rg-fg div{background:rgba(5,9,25,.6);border:1px solid var(--line);padding:7px 8px;min-width:0}
.rg-fg .t{display:block;font-family:var(--f-mono);font-size:10px;color:var(--cyan2)}.rg-fg b{display:block;font-family:var(--f-disp);font-size:18px;color:#fff;white-space:nowrap}.rg-fg b small{font-size:10px;color:var(--dim)}.rg-fg div span:not(.t){display:block;font-size:10px;color:var(--dim)}
.rg-ff,.rg-fs,.rg-fn{font-size:11px;color:var(--dim);margin:8px 0 0;line-height:1.5;overflow-wrap:anywhere}.rg-fn{color:var(--amber)}.rg-fs a,.rg-note a,.rg-ok a,.rg-rev a{color:var(--cyan2)}
.rg-cfg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:8px}.rg-cfg select,.rg-cfg input,.rg-s input,.rg-s select{width:100%;box-sizing:border-box;background:rgba(5,9,25,.7);border:1px solid var(--line2);color:var(--fg);font-family:var(--f-mono);font-size:13px;padding:6px 8px;margin-top:3px}
.rg-sh,.rg-s{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 30px;gap:6px;align-items:center}.rg-sh{font-size:10px;color:var(--dim);text-transform:uppercase;letter-spacing:.06em}.rg-s{margin-top:4px}.rg-s input,.rg-s select{margin-top:0}
.rg-x{background:transparent;border:1px solid var(--line2);color:var(--dim);height:30px;cursor:pointer}.rg-add{margin-top:6px}
.rg-res .rg-rng{display:block;text-transform:none;letter-spacing:0;font-size:10px}.rg-res .rg-tot{grid-column:1/-1;border-color:var(--amber)}.rg-cn{grid-column:1/-1;font-size:11px;color:var(--dim);margin:2px 0 0}
@media(max-width:700px){.rg-fg{grid-template-columns:repeat(2,minmax(0,1fr))}.rg-res{grid-template-columns:1fr}.rg-cfg{grid-template-columns:1fr}}
