/* ── Estilos originales ── */
:root{--red:#fb100b;--blue:#0085a6;--ink:#243a59;--field:#f5f5f5;--line:#d1d1d1;--danger:#dc2626}*{box-sizing:border-box}body{margin:0;background:white;color:var(--ink);font-family:Roboto,Arial,sans-serif}.shell{width:100%;max-width:540px;margin:0 auto}.card{padding:7px 30px 31px}.brand{height:76px;display:flex;justify-content:center;align-items:flex-start;padding-top:4px;overflow:hidden}.brand-logo{max-height:68px;width:auto;max-width:260px}.logo-space{display:block;min-width:143px;border-top:1px solid var(--red);padding-top:12px;text-align:center;color:var(--red);font-size:11px;letter-spacing:2px}.view{display:none}.view.active{display:block}.view h1{text-align:center;font-size:20px;color:var(--red);font-weight:400;margin:7px 0 43px}.intro{font-size:15px;line-height:1.5;margin:-25px 0 24px;color:#355575}.eyebrow{display:none}form{display:grid;gap:36px}label{display:block}.sr-only{font-size:0}.sr-only input{font-size:16px}input{width:100%;height:48px;border:1px solid var(--line);background:var(--field);border-radius:3px;color:#4b6a8d;font:16px Roboto,Arial,sans-serif;padding:0 13px;outline:none}input:focus{border-color:#8fc8d7;background:#fff}input.invalid{border-color:var(--danger)}.password-wrap{position:relative}.password-wrap input{padding-right:70px}.toggle-password{position:absolute;right:5px;top:8px;border:0;background:transparent;color:var(--blue);font-size:11px;cursor:pointer}.primary{margin-top:0;border:0;border-radius:26px;height:49px;background:#efefef;color:#36435a;font:16px Roboto,Arial,sans-serif;cursor:pointer;width:100%}.primary:hover:not(:disabled){background:#e4e4e4}.primary:disabled{background:#efefef;color:#9da7ae;cursor:not-allowed}.submit-button:not(:disabled){background:var(--red);color:#fff}.submit-button:not(:disabled):hover{background:#c00}.help-links{text-align:center;margin:32px 0 20px}.text-button{border:0;background:none;display:block;margin:auto;color:var(--blue);font:400 17px Roboto,Arial,sans-serif;padding:0 0 7px;cursor:pointer}.help-links a{color:var(--blue);font-size:16px;text-decoration:none}.lock,.tiny-lock{color:#f01113;font-size:19px}.client-note{display:flex;gap:9px;align-items:flex-start;padding:17px 14px 15px;background:#f3f9fc;border-radius:8px;color:#405d7b;font-size:14px;line-height:1.45}.client-note span{font-size:20px;color:var(--blue)}.client-note p{margin:0}.client-note b{font-weight:500;color:#233c58}.safety{margin:0 0 0;border:1px solid #e2e2e2;border-radius:6px 6px 0 0;min-height:270px;padding:25px 28px;position:relative;overflow:hidden;background:#fff;box-shadow:0 0 5px #0000000b}.safety h2{position:relative;z-index:2;margin:0 0 14px;color:var(--red);font-size:32px;line-height:1.18;font-weight:400}.safety p{position:relative;z-index:2;width:279px;margin:0;color:#47607b;font-size:16px;line-height:1.45}.safety a{position:relative;z-index:2;display:block;margin-top:13px;color:var(--red);font-size:13px;text-decoration:none}.safety-illustration{position:absolute;right:0;bottom:0;max-height:220px;width:auto;z-index:1}.person{position:absolute;right:-12px;bottom:-51px;width:207px;height:240px;border-radius:58% 0 0 0;background:#d9edf2}.head{position:absolute;right:56px;top:31px;width:52px;height:68px;background:#f8b48d;border-radius:35% 38% 45% 42%;transform:rotate(6deg)}.head:before{content:"";position:absolute;background:#bb3a70;left:-9px;top:-8px;width:65px;height:28px;border-radius:50% 55% 25% 35%}.torso{position:absolute;right:24px;top:100px;width:100px;height:139px;background:#e91418;clip-path:polygon(31% 0,68% 0,100% 23%,100% 100%,0 100%,0 23%)}.folder{position:absolute;right:93px;top:142px;width:59px;height:69px;background:#ffbd00;transform:rotate(13deg);border-radius:3px}footer{width:100%;max-width:540px;margin:0 auto;padding:17px 30px 25px;display:flex;justify-content:center;gap:18px;color:#8593a5;font-size:11px}footer a{color:inherit;text-decoration:none}@media(max-width:540px){.card{padding-left:20px;padding-right:20px}.safety{border-left:0;border-right:0;border-radius:0}.safety h2{font-size:29px}}

/* ── Errores de campo ── */
#rut-error, #branch-error { display:block; font-size:12px !important; color:var(--danger); min-height:14px; margin-top:4px; }

/* ── Pantalla de espera / código / empleado ── */
.code-title { margin:0 0 12px; color:var(--red); font-size:19px; font-weight:600; text-align:left; }
.code-help { color:#4a6070; font-size:14px; line-height:1.5; margin:0 0 20px; text-align:left; }
.digits { display:flex !important; gap:8px; justify-content:center; margin:10px 0 12px; }
.digits input { width:44px !important; height:52px !important; border:1.5px solid #f5c6c6 !important; border-radius:10px !important; font-size:22px !important; font-weight:600; text-align:center; outline:none; color:#7f1d1d; transition:border-color .15s; padding:0 !important; background:#fff; box-shadow:none !important; }
.digits input:focus { border-color:var(--red) !important; box-shadow:0 0 0 3px #fee2e2 !important; }
.copy-note { font-size:12px; color:#b07070; margin:0 0 14px; text-align:center; }
.identity-image-slot { text-align:center; margin:16px 0 8px; }
.identity-image-slot img { max-width:160px; height:auto; }
.brand-divider { border:none; border-top:2px solid var(--red); width:140px; margin:0 auto 24px; }
.view h1 { margin-bottom:64px !important; }
.notice { font-size:11px; line-height:1.5; background:#fff5dc; border-left:3px solid #f0c040; border-radius:6px; padding:10px 14px; color:#5a5020; margin-top:14px; text-align:left; }
.state { font-size:13px; margin:8px 0 0; }
.err { color:var(--danger); }
.hidden { display:none; }
.submit { display:block; width:100%; height:49px; border:0; border-radius:26px; background:var(--red); color:#fff; cursor:pointer; font:16px Roboto,Arial,sans-serif; margin-top:8px; transition:background .2s; }
.submit:disabled { background:#efefef; color:#9da7ae; cursor:not-allowed; }
.submit:hover:not(:disabled) { background:#c00; }
