/* Portal de crédito · Private Wealth — PANTALLA DE ESPERA (espera.js la pinta; portal.js decide cuándo).
   Diseño aprobado: dev/prototipo-pantalla-de-espera.html. Arriba, el panel de mando ORION (oscuro, interactivo);
   abajo, la constancia formal (papel claro). Una sola pieza.
   Todo va bajo .pwe y con el prefijo pwe- para no chocar con portal.css (.chip, .chips, .note…). El panel vive en
   la columna de contenido del portal (más angosta que la ventana), así que los cortes son por el ANCHO DE LA PIEZA
   (@container), no por el de la ventana. */
.pwe{
  container:pwe / inline-size;
  /* constancia formal */
  --e-papel:#FFFFFF;--e-linea:#E2E6EC;--e-linea2:#CDD4DD;--e-linea3:#9AA7B6;
  --e-tinta:#14202E;--e-apagado:#556474;--e-marino:#0C2340;--e-azul:#1F4E8C;--e-oro:#8A6D2F;--e-verde:#177A52;
  /* panel ORION */
  --e-hbg:#02080F;--e-hbg2:#051120;--e-hl1:rgba(88,200,255,.14);--e-hl2:rgba(88,200,255,.3);--e-hl3:rgba(88,200,255,.55);
  --e-cian:#46D5FF;--e-cian2:#A6EBFF;--e-htxt:#DDEBF7;--e-hap:#8AA2B9;--e-hok:#3FE3A2;--e-hamb:#FFB84D;--e-horo:#E2C47E;
  --e-glow:0 0 18px rgba(70,213,255,.35);
  --e-hud:'Chakra Petch','Segoe UI',system-ui,sans-serif;
  --e-rot:'Montserrat','Inter',-apple-system,'Segoe UI',sans-serif;
  --e-txt:'Inter',-apple-system,'Segoe UI',sans-serif;
  --e-mono:'IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace;
  min-width:0;color:var(--e-tinta);font:400 15px/1.5 var(--e-txt);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased
}
/* Reglas globales de portal.css (p, h2, h3) que no aplican dentro de la pieza: sin peso propio, para que mande cada clase. */
:where(.pwe) p{margin:0;max-width:none}
:where(.pwe) h2,:where(.pwe) h3{margin:0;letter-spacing:normal;color:inherit}
.pwe :focus-visible{outline:2px solid var(--e-azul);outline-offset:2px}
.pwe-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.pwe-pieza{border-radius:6px 6px 8px 8px;box-shadow:0 1px 2px rgba(16,24,40,.06),0 10px 30px rgba(12,35,64,.08)}

/* ==== PANEL DE MANDO (ORION) ==== */
.pwe-mando{position:relative;isolation:isolate;overflow:hidden;padding:12px 14px 0;color:var(--e-htxt);
  border:1px solid var(--e-hl2);border-bottom:2px solid var(--e-horo);border-radius:6px 6px 0 0;background-color:var(--e-hbg);
  background-image:radial-gradient(700px 380px at 84% -10%,rgba(28,127,224,.28),transparent 62%),radial-gradient(520px 380px at -8% 42%,rgba(70,213,255,.09),transparent 60%),linear-gradient(var(--e-hbg),var(--e-hbg2))}
.pwe-mando::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.55;
  background-image:linear-gradient(var(--e-hl1) 1px,transparent 1px),linear-gradient(90deg,var(--e-hl1) 1px,transparent 1px);background-size:44px 44px;
  -webkit-mask-image:radial-gradient(ellipse at 28% 34%,#000 12%,transparent 74%);mask-image:radial-gradient(ellipse at 28% 34%,#000 12%,transparent 74%)}
.pwe-mando::after{content:"";position:absolute;left:0;right:0;top:-130px;height:130px;z-index:-1;pointer-events:none;
  background:linear-gradient(transparent,rgba(70,213,255,.055),transparent);animation:pwe-baja 10s linear infinite}
.pwe-mando :focus-visible{outline:2px solid var(--e-cian2);outline-offset:3px}
.pwe-esq{position:absolute;top:0;left:0;width:16px;height:16px;border:solid var(--e-cian);border-width:1px 0 0 1px;pointer-events:none}
.pwe-esq.d{left:auto;right:0;border-width:1px 1px 0 0}
.pwe-scan{position:absolute;top:0;bottom:0;left:0;width:30%;pointer-events:none;transform:translateX(-110%);
  background:linear-gradient(90deg,transparent,rgba(70,213,255,.2),transparent)}
.pwe-barrido .pwe-scan{animation:pwe-pasa 1.1s ease-in-out}

.pwe-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--e-hl1)}
.pwe-id{display:flex;align-items:center;gap:10px;min-width:0}
.pwe-id b{font:600 13px/1 var(--e-hud);letter-spacing:.3em}
.pwe-id span{display:none;font:400 11px/1.3 var(--e-mono);color:var(--e-hap)}
.pwe-sys{display:flex;align-items:center;font:400 11px/1 var(--e-mono);color:var(--e-hap);white-space:nowrap}
.pwe-zona{text-decoration:none;border:0;cursor:default}
.pwe-dot{width:7px;height:7px;border-radius:50%;flex:none;display:inline-block;margin-right:8px;background:var(--e-hok);box-shadow:0 0 10px var(--e-hok);animation:pwe-late 2.4s ease-in-out infinite}
.pwe-orbe{width:26px;height:26px;border-radius:50%;flex:none;display:block;
  background:radial-gradient(circle,#fff 0 8%,var(--e-cian) 22%,rgba(70,213,255,.15) 60%,transparent 70%);box-shadow:0 0 18px rgba(70,213,255,.6);animation:pwe-pulso 3s ease-in-out infinite}
.pwe-orbe.mini{width:18px;height:18px;box-shadow:0 0 12px rgba(70,213,255,.6)}
.pwe-habla .pwe-orbe{animation-duration:.7s}

.pwe-grid{display:grid;gap:14px;padding:14px 0 16px}
/* En el ancho angosto el reloj toma el relleno lateral del panel: con 17 segmentos, cada zona de toque gana unos 2 px de arco. */
.pwe-inst{min-width:0;margin:0 -10px;perspective:800px}
.pwe-r3d{max-width:350px;margin:0 auto;transition:transform .3s ease-out}
.pwe-pista{margin:6px auto 0;max-width:330px;text-align:center;font:400 11px/1.5 var(--e-mono);color:var(--e-hap)}
.pwe-lado{min-width:0;display:grid;gap:14px;align-content:start}

/* ---- A · el reloj ---- */
.pwe-reloj{display:block;width:100%;height:auto;overflow:visible;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.pwe-reloj text{text-anchor:middle;-webkit-user-select:none;user-select:none}
.pwe-reloj circle,.pwe-reloj text,.pwe-reloj line,.pwe-reloj path{pointer-events:none}
.pwe-kext{fill:none;stroke:var(--e-hl1)}
.pwe-corona{fill:none;stroke:var(--e-hl3);stroke-width:4;stroke-dasharray:.9 5.8544;stroke-dashoffset:.45}
.pwe-corona.m{stroke:var(--e-cian2);stroke-width:7;stroke-dasharray:1.4 66.144;stroke-dashoffset:.7}
.pwe-ana{fill:none;stroke:rgba(88,200,255,.42);stroke-width:1;stroke-dasharray:2 6}
.pwe-anb{fill:none;stroke:rgba(88,200,255,.3);stroke-width:1.5;stroke-dasharray:40 18 6 18}
.pwe-orbita{fill:var(--e-cian2);filter:drop-shadow(0 0 4px var(--e-cian))}
.pwe-giro{transform-origin:170px 170px;animation:pwe-giro 52s linear infinite}
.pwe-giro.g2{animation-duration:30s;animation-direction:reverse}
.pwe-giro.g3{animation-duration:15s}
.pwe-turbo{transform-origin:170px 170px;opacity:0;transition:opacity .3s}
.pwe-turbo circle{fill:none;stroke:var(--e-cian);stroke-width:2;stroke-dasharray:60 40 10 40;filter:drop-shadow(0 0 6px rgba(70,213,255,.9))}
.pwe-boost .pwe-turbo{opacity:1;animation:pwe-giro .8s linear infinite}
.pwe-radar{fill:none;stroke:#fff;stroke-width:14;stroke-dasharray:54 650;opacity:0;transform-origin:170px 170px}
.pwe-barrido .pwe-radar{animation:pwe-radar 1.1s cubic-bezier(.4,0,.2,1)}
.pwe-prog{fill:none;stroke:var(--e-cian);stroke-width:1.5;opacity:.85;transition:stroke-dasharray .9s cubic-bezier(.2,.8,.2,1)}
/* fases */
.pwe-farc{fill:none;stroke:var(--e-hl2);stroke-width:1;transition:stroke .3s}
.pwe-ftxt{font:600 8.5px var(--e-hud);letter-spacing:.2em;fill:var(--e-hap);transition:fill .3s}
.pwe-fase.act .pwe-farc{stroke:var(--e-cian)}
.pwe-fase.act .pwe-ftxt{fill:var(--e-cian2)}
/* un segmento por paso */
.pwe-seg{cursor:pointer}
.pwe-mando .pwe-seg,.pwe-mando .pwe-centro{outline:none}
/* Zona de toque de cada segmento: 50 de ancho (radios 87 a 137, sin pisar la placa central de radio 86). */
.pwe-reloj .pwe-shit{fill:none;stroke:transparent;stroke-width:50;pointer-events:stroke}
.pwe-sarc{fill:none;stroke:rgba(88,200,255,.17);stroke-width:14;transition:stroke .5s,stroke-width .15s}
.pwe-seg:hover .pwe-sarc{stroke:rgba(88,200,255,.42)}
.pwe-seg.hecho .pwe-sarc{stroke:#C9DBEC}
.pwe-seg.hecho:hover .pwe-sarc{stroke:#fff}
.pwe-seg.curso .pwe-sarc{stroke:var(--e-cian);filter:drop-shadow(0 0 5px rgba(70,213,255,.9));animation:pwe-late 2.4s ease-in-out infinite}
.pwe-sbar{fill:none;stroke:#fff;stroke-width:14;stroke-dasharray:7 90;stroke-dashoffset:8;opacity:0}
.pwe-seg.curso .pwe-sbar{opacity:.85;animation:pwe-barre 2.4s linear infinite}
.pwe-ssel{fill:none;stroke:var(--e-horo);stroke-width:2.5;opacity:0;transition:opacity .15s}
.pwe-seg.ver .pwe-ssel{opacity:1}
.pwe-seg.ver .pwe-sarc{stroke-width:18}
.pwe-seg:focus-visible .pwe-ssel{opacity:1;stroke:#fff;stroke-width:3.5}
.pwe-sn{font:500 7.5px var(--e-mono);fill:var(--e-hap)}
.pwe-seg.hecho .pwe-sn,.pwe-seg.curso .pwe-sn{fill:#02101C}
/* centro */
.pwe-centro{cursor:pointer}
.pwe-reloj .pwe-placa{fill:rgba(2,12,22,.88);stroke:var(--e-hl2);pointer-events:fill;transition:stroke .2s}
.pwe-centro:hover .pwe-placa{stroke:var(--e-cian)}
.pwe-centro:focus-visible .pwe-placa{stroke:#fff;stroke-width:2.5}
.pwe-cierre{fill:none;stroke:var(--e-hok);stroke-width:2;stroke-dasharray:540.4;stroke-dashoffset:540.4;opacity:0}
.pwe-trot{font:600 9.5px var(--e-hud);letter-spacing:.2em;fill:var(--e-hap)}
.pwe-tnum{font:500 56px var(--e-mono);fill:var(--e-htxt)}
.pwe-tnum.chico{font-size:27px}
.pwe-tnum.medio{font-size:20px}
.pwe-tbig{font:600 17px var(--e-hud);letter-spacing:.08em;fill:var(--e-htxt)}
.pwe-tde{font:400 11px var(--e-mono);letter-spacing:.08em;fill:var(--e-hap)}
.pwe-tfil{stroke:var(--e-hl2)}
.pwe-tnom{font:600 9px var(--e-hud);letter-spacing:.12em;fill:var(--e-cian2)}
.pwe-lect{transition:opacity .25s}
.pwe-lect.cambia{animation:pwe-aparece .3s ease}
.pwe-visto{opacity:0;transition:opacity .2s}
.pwe-visto path{fill:none;stroke:var(--e-hok);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:64}
.pwe-visto text{fill:var(--e-hok);font-size:10px;letter-spacing:.24em}
[data-fase=enviado] .pwe-cierre{stroke-dashoffset:0;opacity:1;animation:pwe-cierra .9s cubic-bezier(.4,0,.2,1)}
[data-fase=enviado] .pwe-lect{opacity:0}
[data-fase=enviado] .pwe-visto{opacity:1}
[data-fase=enviado] .pwe-visto path{animation:pwe-trazo .45s .8s ease-out backwards}
[data-fase=enviado] .pwe-visto text{animation:pwe-aparece .3s 1.05s ease backwards}
/* La pieza se repintó sin cambiar de paso (un cambio menor del expediente; espera.js la monta heredando su estado): sin repetir las entradas. */
.pwe-sigue .pwe-cierre,.pwe-sigue .pwe-visto path,.pwe-sigue .pwe-visto text,.pwe-sigue .pwe-hbtn{animation:none}

/* ---- B · bloque de estado ---- */
.pwe-turno,.pwe-hbtn,.pwe-hlink,.pwe-chip,.pwe-hmini{-webkit-appearance:none;appearance:none;border-radius:2px;cursor:pointer}
.pwe-rotulo{font:600 11px/1.45 var(--e-hud);letter-spacing:.18em;text-transform:uppercase;color:var(--e-cian)}
/* «Paso k de m en esta etapa · nombre del paso» (2-oct-2026): debajo de «Etapa X de 5 · nombre de la etapa» */
.pwe-rotulo2{margin:3px 0 0;font:500 12px/1.45 var(--e-txt);letter-spacing:.02em;color:var(--e-hap)}
.pwe-mando .pwe-tit,.pwe-mando .pwe-pnom{margin:6px 0 12px;font:500 24px/1.18 var(--e-hud);letter-spacing:.005em;color:#fff;text-wrap:balance}
.pwe-mando .pwe-tit:focus{outline:none}
.pwe-mando .pwe-pnom{margin-bottom:8px}
.pwe-turno{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 13px;
  border:1px solid var(--e-hl3);background:rgba(70,213,255,.09);color:var(--e-cian2);
  font:600 11.5px/1.25 var(--e-hud);letter-spacing:.14em;text-transform:uppercase;text-align:left}
.pwe-turno:hover{background:rgba(70,213,255,.18);box-shadow:var(--e-glow)}
.pwe-turno::before{content:"";width:7px;height:7px;flex:none;background:var(--e-hamb);box-shadow:0 0 8px var(--e-hamb);animation:pwe-late 2.4s ease-in-out infinite}
.pwe-car{width:7px;height:7px;flex:none;margin:-3px 2px 0 2px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);transition:transform .2s}
.pwe-turno[aria-expanded=true] .pwe-car{transform:rotate(-135deg);margin-top:4px}
.pwe-tele{margin:10px 0 0;display:grid}
.pwe-tele>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px;align-items:baseline;padding:7px 0;border-bottom:1px dashed var(--e-hl1)}
.pwe-tele>div:first-child{border-top:1px dashed var(--e-hl1)}
.pwe-tele dt{font:600 10px/1.5 var(--e-hud);letter-spacing:.14em;text-transform:uppercase;color:var(--e-hap)}
.pwe-tele dd{margin:0;font-size:14px;line-height:1.45;color:var(--e-htxt)}
.pwe-tele.det{animation:pwe-entra .3s ease}
.pwe-leer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 0}
.pwe-leer div{min-width:0;padding-top:7px;border-top:1px solid var(--e-hl1)}
.pwe-leer dt{font:600 9.5px/1.4 var(--e-hud);letter-spacing:.16em;text-transform:uppercase;color:var(--e-hap)}
.pwe-leer dd{margin:1px 0 0;font:500 13px/1.4 var(--e-txt);color:var(--e-htxt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pwe-leer dd.m{font-family:var(--e-mono)}
.pwe-okchip{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;border:1px solid rgba(63,227,162,.5);background:rgba(63,227,162,.08);
  color:var(--e-hok);font:600 11.5px/1.25 var(--e-hud);letter-spacing:.14em;text-transform:uppercase}
.pwe-okchip::before{content:"";width:9px;height:5px;flex:none;margin-top:-3px;border:solid currentColor;border-width:0 0 1.8px 1.8px;transform:rotate(-45deg)}
.pwe-okchip.nov{border-color:var(--e-hl3);background:rgba(70,213,255,.09);color:var(--e-cian2)}
.pwe-okchip.nov::before{width:7px;height:7px;margin:0;border:0;transform:none;background:var(--e-hamb);box-shadow:0 0 8px var(--e-hamb)}
.pwe-hnota{margin:12px 0 0;font-size:14.5px;line-height:1.5;color:var(--e-htxt)}
.pwe-hbtn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin-top:14px;padding:12px 30px;
  border:1px solid var(--e-cian);background:var(--e-cian);color:#02101C;font:600 12.5px/1 var(--e-hud);letter-spacing:.18em;text-transform:uppercase;
  box-shadow:var(--e-glow);animation:pwe-entra .4s ease}
.pwe-hbtn:hover{background:var(--e-cian2)}
.pwe-pest{display:inline-block;padding:3px 9px;border:1px solid;font:600 10px/1.5 var(--e-hud);letter-spacing:.16em;text-transform:uppercase;color:var(--e-hap)}
.pwe-pest.hecho{color:var(--e-hok)}
.pwe-pcab{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}
.pwe-hlink{display:inline-flex;align-items:center;min-height:44px;margin-top:10px;padding:8px 13px;
  border:1px solid var(--e-horo);background:rgba(226,196,126,.08);color:var(--e-horo);
  font:600 10.5px/1.25 var(--e-hud);letter-spacing:.14em;text-transform:uppercase}
.pwe-hlink:hover{background:rgba(226,196,126,.18)}

/* ---- C · consola de ORION ---- */
.pwe-con{position:relative;padding:12px;border:1px solid var(--e-hl1);border-radius:3px;background:rgba(2,12,22,.6)}
.pwe-con::before,.pwe-con::after{content:"";position:absolute;width:12px;height:12px;border:1px solid var(--e-cian);pointer-events:none}
.pwe-con::before{top:-1px;left:-1px;border-right:0;border-bottom:0}
.pwe-con::after{bottom:-1px;right:-1px;border-left:0;border-top:0}
.pwe-conh{display:flex;align-items:center;gap:11px}
.pwe-conh b{display:block;font:600 13px/1 var(--e-hud);letter-spacing:.3em}
.pwe-conh small{display:block;margin-top:4px;font:400 10.5px/1.2 var(--e-mono);color:var(--e-hap)}
.pwe-conq{margin:11px 0 0;min-height:1.4em;font:400 12px/1.4 var(--e-mono);color:var(--e-hap)}
.pwe-conq::before{content:"> ";color:var(--e-cian)}
.pwe-cont{margin:5px 0 0;min-height:100px;font:400 13px/1.55 var(--e-mono);color:var(--e-htxt)}
.pwe-cont .pr{font-weight:500;color:var(--e-cian)}
.pwe-habla .pwe-tecla::after{content:"▍";margin-left:1px;color:var(--e-cian);animation:pwe-parp .8s steps(1) infinite}
.pwe-chips{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.pwe-chip{min-height:44px;padding:8px 10px;border:1px solid var(--e-hl2);background:transparent;color:var(--e-htxt);
  font:400 12px/1.25 var(--e-mono);text-align:left}
.pwe-chip:hover{border-color:var(--e-cian);color:var(--e-cian2);box-shadow:var(--e-glow)}
.pwe-chip[aria-pressed=true]{border-color:var(--e-cian);background:rgba(70,213,255,.16);color:var(--e-cian2)}
[data-fase=enviado] .pwe-chip{opacity:.45;pointer-events:none}

/* ---- D · barra de estado ---- */
.pwe-barra{display:grid;gap:8px;margin:0 -14px;padding:11px 14px 12px;border-top:1px solid var(--e-hl2);background:rgba(2,12,22,.62)}
.pwe-bmsg{display:flex;align-items:baseline;font-size:14.5px;line-height:1.45;color:var(--e-htxt)}
.pwe-bmsg .pwe-dot{transform:translateY(-1px)}
.pwe-bmsg b{font-weight:600;color:#fff}
.pwe-bauto{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font:400 11.5px/1.4 var(--e-mono);color:var(--e-hap)}
.pwe-bauto b{font-weight:500;color:var(--e-cian2)}
.pwe-hmini{min-height:44px;padding:8px 13px;border:1px solid var(--e-hl3);background:rgba(70,213,255,.1);color:var(--e-cian2);
  font:600 10.5px/1 var(--e-hud);letter-spacing:.16em;text-transform:uppercase}
.pwe-hmini:hover{background:rgba(70,213,255,.2);box-shadow:var(--e-glow)}
.pwe-hmini:disabled{color:var(--e-hap);border-color:var(--e-hl2);background:rgba(70,213,255,.1);cursor:default;box-shadow:none}

/* ==== CONSTANCIA FORMAL ==== */
.pwe-hoja{padding:20px 20px 16px;background:var(--e-papel);border:1px solid var(--e-linea2);border-top:0;border-radius:0 0 8px 8px}
.pwe-membrete{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px 24px;padding-bottom:14px;border-bottom:1px solid var(--e-marino)}
.pwe-membrete::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:var(--e-oro)}
.pwe-marca b{display:block;font:600 14px/1.25 var(--e-rot);letter-spacing:.22em;text-transform:uppercase;color:var(--e-marino)}
.pwe-marca span{display:block;margin-top:3px;font:500 10.5px/1.3 var(--e-rot);letter-spacing:.16em;text-transform:uppercase;color:var(--e-apagado)}
.pwe-ref{display:grid;gap:1px;font:400 12px/1.5 var(--e-mono);color:var(--e-apagado)}
.pwe-ref b{font-weight:500;color:var(--e-tinta)}
.pwe-rot{font:600 10.5px/1.3 var(--e-rot);letter-spacing:.2em;text-transform:uppercase;color:var(--e-oro)}
.pwe-rot.verde{color:var(--e-verde);display:flex;align-items:center;gap:9px}
.pwe-rot.verde::before{content:"";width:9px;height:5px;flex:none;margin-top:-3px;border:solid currentColor;border-width:0 0 1.8px 1.8px;transform:rotate(-45deg)}
.pwe-rot.nov{color:var(--e-marino)}
.pwe-cab{padding:26px 0 2px}
.pwe-hoja .pwe-cabt{margin:8px 0 4px;font:600 21px/1.22 var(--e-rot);letter-spacing:-.005em;color:var(--e-marino);text-wrap:balance}
.pwe-cabp{margin:0 0 8px;font-size:13.5px;line-height:1.4;color:var(--e-apagado)}
.pwe-titular{font-size:13.5px;color:var(--e-apagado)}
.pwe-titular b{font-weight:600;color:var(--e-tinta)}
.pwe-sec{margin-top:18px;padding-top:18px;border-top:1px solid var(--e-linea)}
.pwe-sello{display:inline-flex;align-items:center;gap:8px;padding:6px 10px 5px;border:1px solid rgba(12,35,64,.42);background:rgba(12,35,64,.05);
  font:600 11px/1.25 var(--e-rot);letter-spacing:.14em;text-transform:uppercase;color:var(--e-marino)}
.pwe-sello::before{content:"";width:6px;height:6px;flex:none;background:currentColor}
.pwe-hace{margin:12px 0 0;font-size:16px;line-height:1.45;color:var(--e-tinta);text-wrap:pretty}
.pwe-rot+.pwe-hace{margin-top:8px}
.pwe-filas{margin:12px 0 0;display:grid}
.pwe-filas>div{display:grid;grid-template-columns:minmax(104px,34%) minmax(0,1fr);gap:12px;align-items:baseline;padding:8px 0;border-bottom:1px dashed var(--e-linea2)}
.pwe-filas>div:first-child{border-top:1px dashed var(--e-linea2)}
.pwe-filas dt{font-size:13px;color:var(--e-apagado)}
.pwe-filas dd{margin:0;font-size:14px;font-weight:600;color:var(--e-tinta);overflow-wrap:anywhere}
.pwe-filas.mono dt{font:400 12px/1.5 var(--e-mono)}
.pwe-filas.mono dd{font:500 12.5px/1.5 var(--e-mono)}
.pwe-llena dd{animation:pwe-tinta 1.4s ease}
.pwe-nota{margin:12px 0 0;font-size:14px;color:var(--e-apagado)}
.pwe-pdf{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;min-height:44px;margin-top:14px;padding:9px 16px;border:1px solid var(--e-marino);border-radius:2px;
  background:var(--e-papel);color:var(--e-marino);font:600 11px/1.25 var(--e-rot);letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.pwe-pdf:hover{background:rgba(12,35,64,.06)}
.pwe-hitos{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.pwe-hitos li{position:relative;text-align:center;padding:0 3px;font-size:11.5px;line-height:1.25;color:var(--e-apagado)}
.pwe-hitos li::before{content:"";position:absolute;top:8px;left:-50%;width:100%;height:1px;background:var(--e-linea3)}
.pwe-hitos li:first-child::before{display:none}
.pwe-hitos li.hecho::before,.pwe-hitos li.actual::before{background:var(--e-marino)}
.pwe-hitos i{position:relative;z-index:1;display:block;width:17px;height:17px;margin:0 auto 7px;border-radius:50%;border:1.5px solid var(--e-linea3);background:#fff}
.pwe-hitos .hecho i{background:var(--e-marino);border-color:var(--e-marino)}
.pwe-hitos .hecho i::after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}
.pwe-hitos .actual i{border-color:var(--e-marino);background:var(--e-marino);box-shadow:inset 0 0 0 3.5px #fff}
.pwe-hitos .hecho{color:var(--e-tinta)}
.pwe-hitos .actual{color:var(--e-marino);font-weight:600}
.pwe-pie{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 20px;margin-top:22px;padding-top:12px;border-top:1px solid var(--e-linea);font-size:12px;line-height:1.45;color:var(--e-apagado)}
.pwe-pie span:last-child{font-family:var(--e-mono)}

@keyframes pwe-giro{to{transform:rotate(360deg)}}
@keyframes pwe-late{50%{opacity:.5}}
@keyframes pwe-pulso{50%{transform:scale(.86);opacity:.8}}
@keyframes pwe-parp{50%{opacity:0}}
@keyframes pwe-barre{from{stroke-dashoffset:8}to{stroke-dashoffset:-42}}
@keyframes pwe-radar{0%{opacity:0;transform:rotate(-90deg)}15%,80%{opacity:.55}100%{opacity:0;transform:rotate(270deg)}}
@keyframes pwe-pasa{to{transform:translateX(450%)}}
@keyframes pwe-baja{to{transform:translateY(1500px)}}
@keyframes pwe-cierra{from{stroke-dashoffset:540.4}}
@keyframes pwe-trazo{from{stroke-dashoffset:64}}
@keyframes pwe-aparece{from{opacity:0}}
@keyframes pwe-entra{from{opacity:0;transform:translateY(4px)}}
@keyframes pwe-tinta{from{background:rgba(138,109,47,.28)}}

/* Cortes por el ancho de la pieza (en el prototipo eran 560, 820 y 1000 px de ventana). */
@container pwe (min-width:520px){
  .pwe-id span{display:inline}
  .pwe-ref{text-align:right}
}
@container pwe (min-width:740px){
  .pwe-mando{padding:14px 26px 0}
  .pwe-grid{grid-template-columns:minmax(0,384fr) minmax(0,416fr);gap:8px 36px;align-items:start;padding:20px 0 22px}
  .pwe-inst{margin:0}
  .pwe-r3d{max-width:384px}
  /* Alto reservado para el bloque de estado: cubre la vista de paso más alta (unos 278 px con los textos del JSON en
     esta columna y la etiqueta «Paso k de m · estado» en su propio renglón, 2-oct-2026), así pasar el ratón por el
     anillo no mueve la consola, la barra ni la constancia. */
  .pwe-estado{min-height:284px}
  .pwe-mando .pwe-pnom{font-size:26px}
  .pwe-mando .pwe-tit{font-size:29px}
  .pwe-barra{margin:0 -26px;padding:12px 26px 13px}
  .pwe-hoja{padding:32px 44px 22px}
  .pwe-hoja .pwe-cabt{font-size:24px}
  .pwe-cuerpo{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:0 44px;margin-top:20px;padding-top:22px;border-top:1px solid var(--e-linea)}
  .pwe-cuerpo.solo{grid-template-columns:minmax(0,1fr)}
  .pwe-colb{padding-left:44px;border-left:1px solid var(--e-linea)}
  .pwe-cuerpo .pwe-sec{margin:0;padding:0;border:0}
}
@container pwe (min-width:900px){
  .pwe-grid{grid-template-columns:384px minmax(0,1fr)}
  .pwe-barra{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 22px}
  .pwe-cont{min-height:62px}
  .pwe-chips{grid-template-columns:repeat(4,minmax(0,1fr))}
  .pwe-chip{font-size:11.5px}
}
@media (prefers-reduced-motion:reduce){
  .pwe *,.pwe *::before,.pwe *::after{animation:none!important;transition:none!important}
  .pwe-r3d{transform:none!important}
}
/* Lo propio de cada etapa que sigue debajo de la pieza (documentos, enlaces, datos de la cuenta). */
.pwe-mas{margin-top:2px}
