/* Canal Ético · estilos propios de /{idioma}/canal-etico/ (sobre styles.css + v2.css). */
.ce{--ce-red:#f00;--ce-red-dark:#b40000;--ce-stone:#e9e8e2;--ce-field:#faf9f5;--ce-edge:#c5c5bf;--ce-line:#dededb;--ce-muted:#5f5f5b;--ce-pink:#fdf0f0}
.ce [hidden]{display:none!important}

/* Encabezado: título a la izquierda, entradilla a la derecha */
.ce-heading{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px 8%;align-items:end}
.ce-heading h1{margin-bottom:0}
.ce-heading .lede{margin-bottom:0}

.ce-layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.5fr);gap:48px 7%;align-items:start;margin-top:56px}

/* Columna informativa */
.ce-fact{border-top:1px solid var(--ce-line);padding:22px 0;display:grid;gap:6px}
.ce-fact .eyebrow{font-size:10px;margin:0}
.ce-fact p{margin:0;font-size:13px;color:var(--ce-muted);max-width:40ch;line-height:1.6}
.ce-fact .ce-figure{font-family:Gravity,Impact,sans-serif;font-size:44px;line-height:1;text-transform:uppercase;color:var(--ink)}
.ce-fact .ce-fact-note{font-size:12px;border-left:3px solid var(--ce-red);background:#f6f6f4;padding:12px 14px;margin-top:6px}

/* Panel del formulario */
.ce-panel{background:var(--ce-stone);padding:clamp(20px,3.4vw,38px);min-width:0}
.ce-steps{list-style:none;margin:0 0 28px;padding:0;display:flex;flex-wrap:wrap;gap:10px 18px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8a8a85}
.ce-steps li{display:flex;align-items:center;gap:8px}
.ce-n{width:24px;height:24px;border-radius:50%;border:1.5px solid #a9a9a4;display:grid;place-items:center;font-size:11px;letter-spacing:0;background:var(--ce-field)}
.ce-steps li.is-done{color:var(--ink)}
.ce-steps li.is-done .ce-n{background:var(--ink);border-color:var(--ink);color:#fff}
.ce-steps li[aria-current=step]{color:var(--ink)}
.ce-steps li[aria-current=step] .ce-n{background:var(--ce-red);border-color:var(--ce-red);color:#fff}
.ce-steps.is-short li:not(:first-child){visibility:hidden}

.ce-panel h2{font-size:clamp(34px,3.6vw,46px);line-height:1;margin-bottom:10px}
.ce-intro{color:var(--ce-muted);font-size:14px;margin:0 0 26px;max-width:62ch}
.ce-stack{display:grid;gap:22px}
.ce-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
.ce-field{display:grid;gap:9px;min-width:0}
.ce-fieldset{border:0;padding:0;margin:0}
.ce .ce-label,.ce-fieldset legend{display:block;font-size:11px;font-weight:700;margin:0;padding:0}
.ce-fieldset legend{margin-bottom:9px}
.ce-req{color:var(--ce-red)}
.ce input[type=text],.ce input[type=email],.ce input[type=tel],.ce select,.ce textarea{margin:0}
.ce textarea{min-height:150px;line-height:1.55}
.ce #ce-a-motivo{min-height:96px}
.ce select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:40px}
.ce select:invalid{color:#8a8a85}
.ce select option{color:var(--ink)}
.ce ::placeholder{color:#9a9a95}
.ce [aria-invalid=true]{border-color:var(--ce-red)!important}
.ce-error{color:var(--ce-red-dark);font-size:12px;font-weight:500;margin:0}
.ce-help{font-size:13px;color:var(--ce-muted);line-height:1.6;border-left:3px solid var(--ce-red);padding:2px 0 2px 12px;margin:0}
.ce-small{font-size:12px;color:var(--ce-muted);margin:0}
.ce-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Tarjetas de tipo de incidencia */
.ce-choices{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.ce .ce-choice{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 12px;background:var(--ce-field);border:1px solid var(--ce-edge);padding:20px;margin:0;cursor:pointer;font-weight:400;font-size:14px;transition:border-color .15s,background .15s}
.ce .ce-choice input{margin:3px 0 0;width:18px;height:18px;padding:0;accent-color:var(--ce-red)}
.ce-choice strong{font-size:15px;line-height:1.35}
.ce-choice span{grid-column:2;font-size:13px;color:var(--ce-muted);line-height:1.55}
.ce-choice:hover{border-color:#8a8a85}
.ce-choice:has(input:checked){border-color:var(--ce-red);background:var(--ce-pink);box-shadow:inset 0 0 0 1px var(--ce-red)}

.ce-radios{display:flex;flex-wrap:wrap;gap:10px 22px}
.ce .ce-radios label,.ce .ce-check{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:400;margin:0;cursor:pointer}
.ce .ce-check{align-items:flex-start}
.ce .ce-radios input,.ce .ce-check input{width:18px;height:18px;margin:0;padding:0;flex:none;accent-color:var(--ce-red)}
.ce-truth{margin-top:22px}

.ce-subpanel{border-left:3px solid var(--ce-red);background:var(--ce-field);padding:22px}
.ce-note{background:#fff;border-left:3px solid var(--ink);padding:14px 16px;font-size:13px;color:#333;line-height:1.6}
.ce-note strong{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}
.ce-chip{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;background:#fff;border-left:3px solid var(--ce-red);padding:12px 14px;font-size:13px;margin:0}
.ce-link{background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer;color:var(--ce-red-dark);font-size:13px}

.ce-people{display:grid;gap:10px}
.ce-person{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 40px;gap:10px;align-items:center}
.ce-round{width:36px;height:36px;border-radius:50%;border:0;background:var(--ink);color:#fff;font-size:20px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}
.ce-round.is-remove{background:transparent;color:var(--ink);border:1px solid var(--ce-edge);font-size:18px}

.ce-file{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center}
.ce-file input{position:absolute;width:1px;height:1px;opacity:0}
.ce .ce-file label{border:1px solid var(--ink);padding:11px 16px;font-size:12px;font-weight:700;cursor:pointer;background:#fff;margin:0}
.ce-file input:focus-visible+label{outline:3px solid #243cff;outline-offset:3px}
.ce-file output{font-size:13px;color:var(--ce-muted)}

.ce-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-top:30px}
.ce-actions .button{min-height:52px;cursor:pointer}
.ce .ce-ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.ce .ce-ghost:hover{background:#fff}
.ce .button:disabled{opacity:.35;cursor:not-allowed;transform:none}
.ce-status{margin:18px 0 0;padding:14px 16px;font-size:13px;line-height:1.5;background:#fff;border-left:3px solid #888}
.ce-status[data-state=error]{border-left-color:var(--ce-red)}

/* Resumen */
.ce-summary{display:grid;background:#fff;padding:6px 20px;margin:0}
.ce-summary div{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:14px;padding:13px 0;border-bottom:1px solid var(--ce-line);align-items:baseline}
.ce-summary div:last-child{border-bottom:0}
.ce-summary dt{font-size:12px;color:var(--ce-muted)}
.ce-summary dd{margin:0;font-weight:500;overflow-wrap:anywhere;white-space:pre-line}

/* Final */
.ce-done-head{display:flex;gap:18px;align-items:center;margin-bottom:22px}
.ce-done-head h2{margin:0}
.ce-tick{width:64px;height:64px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;flex:none}
.ce-code-box{background:#fff;border:1px solid var(--ce-edge);padding:18px 20px;display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;margin:0 0 18px}
.ce-code-box .eyebrow{color:var(--ce-muted);font-size:10px;margin:0}
.ce-code{font-family:Gravity,Impact,sans-serif;font-size:36px;letter-spacing:.04em;line-height:1.1;margin:0;user-select:all}
.ce-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ce-timeline div{background:#fff;padding:16px;border-top:3px solid var(--ink)}
.ce-timeline div:first-child{border-top-color:var(--ce-red)}
.ce-timeline b{font-family:Gravity,Impact,sans-serif;font-weight:400;font-size:30px;display:block;line-height:1;text-transform:uppercase}
.ce-timeline span{font-size:12px;color:var(--ce-muted)}
.ce-aai{margin:20px 0 0}

@media (max-width:980px){
  .ce-heading{grid-template-columns:1fr}
  .ce-layout{grid-template-columns:1fr;margin-top:36px}
  .ce-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px}
}
@media (max-width:620px){
  .ce-facts{grid-template-columns:1fr}
  .ce-choices,.ce-row,.ce-timeline{grid-template-columns:1fr}
  .ce-steps li:not([aria-current=step]) .ce-t{display:none}
  .ce-person{grid-template-columns:minmax(0,1fr) 40px}
  .ce-person input:nth-child(2){grid-column:1}
  .ce-person .ce-round{grid-row:1/3;grid-column:2}
  .ce-summary div{grid-template-columns:minmax(0,1fr) auto}
  .ce-summary dt{grid-column:1/-1}
  .ce-actions .button{flex:1}
}
@media (prefers-reduced-motion:reduce){.ce *{transition:none!important}}
