:root{--cream:#f5f2ea;--paper:#fffefa;--ink:#20253a;--muted:#696573;--line:#e4ded3;--purple:#6c5bd0;--purple-dark:#5143ac;--purple-soft:#ece8ff;--danger:#ab3545}*{box-sizing:border-box}.resend-code{display:block;margin:18px auto 0;padding:10px 14px;border:0;background:transparent;color:#5143ac;font:inherit;text-decoration:underline;cursor:pointer}.resend-code:disabled{color:#797383;cursor:default;text-decoration:none}.preview-link{display:block;text-align:center;margin-top:20px;color:#5143ac;font-size:13px}.primary-button:disabled{opacity:.55;cursor:not-allowed}body{margin:0;background:var(--cream);color:var(--ink);font-family:DM Sans,system-ui,sans-serif}[hidden]{display:none!important}a{color:var(--purple-dark);text-underline-offset:3px}button,input,select{font:inherit}:focus-visible{outline:3px solid #9b8eff;outline-offset:4px}.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:12px}.auth-header{height:80px;padding:0 32px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font:800 20px Manrope,sans-serif;letter-spacing:-.045em}.back-link{padding:12px 0;font-size:13px;text-decoration:none}.auth-layout{min-height:calc(100svh - 80px);padding:28px 24px 64px;display:grid;grid-template-columns:minmax(0,1fr);place-items:center}.auth-card{width:min(100%,420px);text-align:center}.kase-mascot{display:block;margin:0 auto 20px;image-rendering:pixelated}.eyebrow{font:800 10px Manrope,sans-serif;letter-spacing:.13em;color:var(--purple-dark);margin:0 0 16px}h1{font:800 clamp(34px,5vw,44px)/1.08 Manrope,sans-serif;letter-spacing:-.06em;margin:0 0 20px}.auth-copy{color:var(--muted);font-size:16px;line-height:1.55;margin:0 0 30px;text-wrap:pretty}.auth-copy strong{color:var(--ink);white-space:nowrap}form{text-align:left}form>label:not(.consent-label){display:block;font-size:12px;font-weight:700;margin-bottom:9px}.phone-field{display:flex;align-items:center;min-height:62px;border:1.5px solid var(--line);border-radius:10px;background:var(--paper);padding:0 14px}.phone-field:focus-within{border-color:var(--purple);box-shadow:0 0 0 3px #6c5bd018}.phone-field select{border:0;border-right:1px solid var(--line);background:transparent;color:var(--ink);width:106px;min-height:44px;flex-shrink:0;padding-right:7px;font-size:16px}.phone-field input{border:0;background:transparent;color:var(--ink);outline:none;min-width:0;width:100%;padding:12px;font-size:18px}.phone-field.invalid{border-color:var(--danger)}.consent-label{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.6;color:var(--muted);margin-top:19px;cursor:pointer}.consent-label input{margin:2px 0 0;width:18px;height:18px;accent-color:var(--purple);flex-shrink:0}.field-error{min-height:19px;color:var(--danger);font-size:12px;line-height:1.5;margin:10px 0}.primary-button{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;min-height:56px;padding:14px 18px;border:0;border-radius:8px;background:var(--purple);color:#fff;font:800 14px Manrope,sans-serif;cursor:pointer;text-decoration:none}.primary-button:hover{background:var(--purple-dark)}.primary-button:disabled{opacity:.65;cursor:wait}.privacy-note{margin:18px 0 0;font-size:12px;line-height:1.65;color:var(--muted);text-align:center}.privacy-note strong{color:var(--purple-dark)}.service-note{font-size:12px;line-height:1.6;color:var(--muted)}.service-note:empty{display:none}.code-fields{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.code-fields input{width:100%;height:62px;border:1.5px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);text-align:center;font:800 24px Manrope,sans-serif;caret-color:var(--purple)}.code-fields input:focus{border-color:var(--purple)}.code-fields.invalid input{border-color:var(--danger)}.position-ticket{border:1px solid #d9d0f4;border-radius:14px;padding:23px 20px;background:var(--purple-soft);margin:26px 0 20px}.position-ticket>span{color:var(--purple-dark);font:800 10px Manrope,sans-serif;letter-spacing:.1em}.position-ticket>strong{display:block;font:800 clamp(48px,10vw,72px)/1.2 Manrope,sans-serif;color:var(--purple-dark);margin:8px 0;letter-spacing:-.055em;overflow-wrap:anywhere}.position-ticket>p{margin:0;color:var(--muted);font-size:13px}.success-card>.primary-button{margin-top:28px}.privacy-card{width:min(100%,650px);text-align:left}.privacy-card h1{font-size:36px}.privacy-card h2{font:800 19px Manrope,sans-serif;margin:28px 0 10px}.privacy-card p,.privacy-card li{font-size:15px;line-height:1.65;color:var(--muted)}.privacy-card .primary-button{width:auto;margin-top:20px}.delete-button{border:1px solid #c96a75;color:var(--danger);background:transparent;border-radius:8px;padding:12px 16px;min-height:44px;cursor:pointer}@media (max-width:540px){.auth-header{height:68px;padding:0 18px}.brand{font-size:18px}.auth-layout{min-height:calc(100svh - 68px);padding:22px 20px 40px}.kase-mascot{width:64px;height:88px;margin-bottom:16px}h1{font-size:36px}.auth-copy{font-size:15px;margin-bottom:24px}.phone-field{padding:0 9px}.phone-field select{width:95px}.phone-field input{font-size:16px;padding:10px}.code-fields{gap:5px}.code-fields input{height:54px;font-size:22px}}@media (max-height:720px){.auth-layout{align-items:start}}.repair-card{width:min(100%,480px)}.repair-card h1{font-size:clamp(34px,5vw,49px);line-height:1.12}.repair-card h1 em{font-style:normal;color:var(--purple-dark)}.repair-card .eyebrow{font-size:9px;letter-spacing:.1em}.repair-card form{max-width:420px;margin:auto}.repair-scene{position:relative;height:118px;width:300px;max-width:100%;margin:0 auto 25px;isolation:isolate}.repair-logo{position:absolute;left:76px;top:30px;display:flex;align-items:center;gap:10px;font:800 28px Manrope,sans-serif;letter-spacing:-1.5px;transform:rotate(10deg);transform-origin:12px 80%;z-index:2}.repair-ground{position:absolute;bottom:17px;left:12px;right:4px;height:2px;background:linear-gradient(90deg,transparent,#d7d0be,transparent)}.repair-robot{position:absolute;left:5px;bottom:19px;width:64px;height:72px;opacity:0;transform:translate(-35px);z-index:3}.repair-robot i{position:absolute;inset:0;image-rendering:pixelated;background-repeat:no-repeat;opacity:0}.repair-walk{background-image:url(assets/kase/repair/walk.png);background-size:512px 72px}.repair-push{background-image:url(assets/kase/repair/push.png);background-size:256px 72px}.repair-ok{background-image:url(assets/kase/repair/ok.png);background-size:384px 72px}.repair-spark{position:absolute;right:5px;top:10px;color:#8971d9;font-size:27px;opacity:0}.is-repairing .repair-logo{animation:repair-sign 3s ease forwards}.is-repairing .repair-robot{animation:repair-arrive 3s ease forwards}.is-repairing .repair-walk{animation:repair-walk-frames .64s steps(8) 2,repair-walk-show 3s linear forwards}.is-repairing .repair-push{animation:repair-push-frames .4s steps(4) 1.05s 3,repair-push-show 3s linear forwards}.is-repairing .repair-ok{animation:repair-ok-frames .72s steps(6) 2.2s 1,repair-ok-show 3s linear forwards}.is-repairing .repair-spark{animation:repair-shine .6s 2s ease both}@keyframes repair-sign{0%,40%{transform:rotate(10deg)}65%{transform:rotate(-3deg)}80%,to{transform:rotate(0)}}@keyframes repair-arrive{0%{opacity:0;transform:translate(-35px)}15%{opacity:1}35%,to{opacity:1;transform:translate(10px)}}@keyframes repair-walk-frames{to{background-position:-512px 0}}@keyframes repair-push-frames{to{background-position:-256px 0}}@keyframes repair-ok-frames{to{background-position:-384px 0}}@keyframes repair-walk-show{0%,34%{opacity:1}35%,to{opacity:0}}@keyframes repair-push-show{0%,34%{opacity:0}35%,72%{opacity:1}73%,to{opacity:0}}@keyframes repair-ok-show{0%,72%{opacity:0}73%,to{opacity:1}}@keyframes repair-shine{0%,to{opacity:0;transform:scale(.4)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.repair-scene *{animation:none!important}.repair-logo{transform:none}.is-repairing .repair-robot{opacity:1;transform:translate(10px)}.is-repairing .repair-ok{opacity:1}}@media (max-width:540px){.repair-scene{height:104px;margin-bottom:16px}.repair-card .auth-copy{font-size:14px}.repair-card .eyebrow{font-size:8px}.repair-card h1{font-size:clamp(32px,8.4vw,43px)}}
