:root{--ink:#10203a;--muted:#60708a;--blue:#2563eb;--blue-dark:#1745b5;--line:#dce5f2;--surface:#fff;--bg:#f4f7fb;--success:#0c9b6c;--danger:#c63c50;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden;background:radial-gradient(circle at 12% 10%,#e8f1ff 0,transparent 32%),linear-gradient(145deg,#f8fbff,#f2f6fb);position:relative}.page-glow{position:fixed;border-radius:999px;filter:blur(4px);pointer-events:none;opacity:.6}.page-glow--one{width:380px;height:380px;background:#d8e8ff;right:-180px;top:140px}.page-glow--two{width:260px;height:260px;background:#e5ecff;left:-150px;bottom:20px}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,96px);border-bottom:1px solid rgba(177,193,216,.55);background:rgba(255,255,255,.72);backdrop-filter:blur(18px);position:relative;z-index:2}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink)}.brand__icon{width:45px;height:45px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#3478f6,#1756d5);box-shadow:0 10px 25px rgba(37,99,235,.25)}.brand__icon svg{width:25px;fill:#fff}.brand strong,.brand small{display:block}.brand strong{font-size:16px;letter-spacing:-.01em}.brand small{font-size:12px;color:var(--muted);margin-top:2px}.admin-link{font-size:13px;color:#36516f;text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:9px 15px;background:#fff;transition:.2s}.admin-link:hover{border-color:#98b6df;color:var(--blue)}.support-shell{width:min(1160px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(48px,8vw,110px);align-items:center;padding:70px 0;position:relative;z-index:1}.eyebrow{display:flex;align-items:center;gap:9px;color:var(--blue);font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:750}.eyebrow span{width:24px;height:2px;background:var(--blue)}.intro h1{font-size:clamp(42px,5vw,68px);line-height:1.03;letter-spacing:-.055em;margin:20px 0 22px;max-width:620px}.intro h1 em{font-style:normal;color:var(--blue)}.intro>p{font-size:17px;line-height:1.7;color:var(--muted);max-width:520px;margin:0}.trust-list{display:flex;flex-wrap:wrap;gap:18px;margin-top:32px;color:#40536d;font-size:13px}.trust-list span{display:flex;align-items:center;gap:7px}.trust-list i{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#dff7ee;color:var(--success);font-style:normal;font-weight:800;font-size:11px}.form-card{background:rgba(255,255,255,.94);border:1px solid rgba(207,220,238,.9);border-radius:24px;padding:clamp(25px,4vw,42px);box-shadow:0 30px 70px rgba(41,68,108,.14),0 4px 16px rgba(41,68,108,.04)}.form-card__header{display:flex;gap:16px;align-items:flex-start;margin-bottom:27px}.step{display:grid;place-items:center;min-width:42px;height:42px;border-radius:13px;background:#e9f1ff;color:var(--blue);font-size:13px;font-weight:800}.form-card h2{font-size:20px;margin:1px 0 6px;letter-spacing:-.02em}.form-card__header p{font-size:13px;color:var(--muted);margin:0}.form-card label{font-size:13px;font-weight:700;display:block;margin-bottom:9px}.textarea-wrap{position:relative}textarea{width:100%;min-height:205px;resize:vertical;border:1px solid #cdd9e9;border-radius:15px;padding:17px 18px 39px;font:inherit;font-size:14px;line-height:1.65;color:var(--ink);background:#fbfdff;outline:none;transition:border-color .2s,box-shadow .2s}textarea::placeholder{color:#98a7ba}textarea:focus{border-color:#6799f4;box-shadow:0 0 0 4px rgba(37,99,235,.09);background:#fff}textarea[aria-invalid=true]{border-color:var(--danger)}.counter{position:absolute;right:14px;bottom:12px;font-size:11px;color:#8190a4}.field-error{min-height:20px;margin:7px 0 5px;color:var(--danger);font-size:12px}.submit-button{width:100%;height:52px;border:0;border-radius:14px;background:linear-gradient(135deg,#2f73ef,#2056d3);color:#fff;font:inherit;font-size:14px;font-weight:750;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;box-shadow:0 11px 23px rgba(37,99,235,.25);transition:transform .2s,box-shadow .2s,opacity .2s}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 28px rgba(37,99,235,.32)}.submit-button:focus-visible,.result button:focus-visible,.admin-link:focus-visible{outline:3px solid rgba(37,99,235,.3);outline-offset:3px}.submit-button svg{width:19px;fill:none;stroke:currentColor;stroke-width:1.8}.submit-button:disabled{opacity:.8;cursor:wait}.spinner{width:19px;height:19px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .75s linear infinite;display:none}.is-loading .spinner{display:block}.is-loading svg{display:none}@keyframes spin{to{transform:rotate(360deg)}}.result{outline:none;text-align:center;padding:16px 5px 4px}.result__icon{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 19px;border-radius:50%;background:#dff7ee;color:var(--success);font-size:28px;font-weight:800;box-shadow:0 0 0 9px #f0fbf7}.result h3{margin:0 0 9px;font-size:22px}.result p{color:var(--muted);font-size:14px;line-height:1.55;margin:0 auto;max-width:410px}.result .reference{margin-top:15px;color:#43546b}.result button{margin-top:25px;border:1px solid var(--line);background:#fff;color:var(--blue);font:inherit;font-weight:700;border-radius:12px;padding:11px 18px;cursor:pointer}footer{display:flex;justify-content:space-between;padding:21px clamp(24px,6vw,96px);font-size:11px;color:#7d8ba0;border-top:1px solid rgba(177,193,216,.45);position:relative;z-index:1}@media(max-width:840px){.support-shell{grid-template-columns:1fr;padding:50px 0;gap:38px}.intro{text-align:center}.intro>p{margin-inline:auto}.eyebrow,.trust-list{justify-content:center}.site-header{height:78px}.admin-link{display:none}}@media(max-width:520px){.support-shell{width:min(100% - 24px,1160px);padding:34px 0}.intro h1{font-size:39px}.intro>p{font-size:15px}.trust-list{gap:9px 15px}.form-card{border-radius:19px;padding:22px 18px}.form-card__header{gap:12px}.site-header{padding:0 18px}.brand__icon{width:40px;height:40px}.brand small{display:none}footer{justify-content:center}footer span:last-child{display:none}}

/* Adaptación y accesibilidad del portal público. */
html { overflow-x: hidden; }
body { min-height: 100vh; min-height: 100svh; }
.admin-link__short { display: none; }
:is(a, button, textarea):focus-visible { outline: 3px solid rgba(37, 99, 235, .28); outline-offset: 3px; }
.form-card, .intro, .form-card__header > div { min-width: 0; }
.result p, .reference { overflow-wrap: anywhere; }

@media (min-width: 1600px) {
    .support-shell { width: min(1280px, calc(100% - 96px)); gap: clamp(70px, 7vw, 130px); }
}
@media (max-width: 840px) {
    .support-shell { width: min(680px, calc(100% - 36px)); }
    .intro h1 { max-width: 680px; margin-inline: auto; }
    .admin-link { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 7px 11px; font-size: 11px; }
    .admin-link__full { display: none; }
    .admin-link__short { display: inline; }
}
@media (max-width: 520px) {
    .support-shell { width: min(calc(100% - 24px), 1160px); padding-block: 30px; }
    .intro h1 { font-size: clamp(32px, 10vw, 39px); margin: 15px 0 16px; }
    .intro > p { line-height: 1.6; }
    .trust-list { margin-top: 24px; }
    .form-card { padding: 21px 17px; }
    .form-card__header { margin-bottom: 22px; }
    .site-header { height: 72px; padding-inline: 16px; }
    textarea { min-height: 160px; padding: 14px 14px 36px; }
    .submit-button { min-height: 48px; height: auto; }
}
@media (max-width: 390px) {
    .site-header { padding-inline: 12px; }
    .brand { gap: 10px; }
    .brand strong { font-size: 14px; }
    .support-shell { width: calc(100% - 18px); gap: 26px; padding-block: 24px; }
    .eyebrow { font-size: 10px; letter-spacing: .1em; }
    .intro h1 { font-size: clamp(30px, 9.5vw, 36px); }
    .intro > p { font-size: 14px; }
    .trust-list { justify-content: flex-start; width: max-content; max-width: 100%; margin-inline: auto; font-size: 12px; }
    .form-card { padding: 18px 14px; border-radius: 16px; }
    .step { min-width: 38px; height: 38px; }
    .form-card h2 { font-size: 18px; }
    .form-card__header p { font-size: 12px; line-height: 1.45; }
    textarea { font-size: 16px; }
    .result { padding-inline: 0; }
    .result h3 { font-size: 20px; }
}
@media (max-height: 700px) and (min-width: 841px) {
    .support-shell { padding-block: 35px; }
    textarea { min-height: 155px; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

