:root{--bg:#f5f4f1;--surface:#fff;--subtle:#efede9;--line:#e6e3dd;--text:#1c1b19;--text-muted:#6b6862;--on-accent:#fff;--accent:#d9662a;--accent-soft:#fbeadf;--overdue:#c93c3c;--overdue-soft:#fbe5e3;--won:#2e8b57;--won-soft:#e2f2e8;--navy:#1e2a4a;--brand-orange:#c9581e;--font:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0}body{background:var(--bg);color:var(--text);font:15px/22px var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}.btn{width:100%;min-height:48px;font:600 15px/20px var(--font);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;margin-top:8px;text-decoration:none;display:flex}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn:disabled{opacity:.5;cursor:default}.auth{max-width:420px;min-height:100dvh;padding:calc(env(safe-area-inset-top) + 32px) 24px calc(env(safe-area-inset-bottom) + 24px);flex-direction:column;margin:0 auto;display:flex}.back{color:var(--accent);font:500 17px/22px var(--font);cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:4px;margin:0 0 24px -6px;padding:6px;display:flex}.back svg,.badge svg,.note svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.back svg{width:22px;height:22px}.brand{align-items:center;gap:12px;margin:40px 0 32px;display:flex}.brand img{border-radius:14px;box-shadow:0 1px 2px #1c1b190f,0 4px 12px #1c1b190f}.wordmark-sm{letter-spacing:-.02em;color:var(--navy);font-size:24px;font-weight:700;line-height:28px}.wordmark-sm span{color:var(--brand-orange)}.badge{background:var(--accent-soft);width:64px;height:64px;color:var(--accent);border-radius:18px;place-items:center;margin:0 0 20px;display:grid}.badge svg{width:28px;height:28px}.auth h1{letter-spacing:-.02em;margin:0 0 8px;font-size:28px;font-weight:700;line-height:34px}.lead{color:var(--text-muted);margin:0 0 24px}#form{flex-direction:column;gap:12px;display:flex}.field{background:var(--surface);border:1px solid var(--line);cursor:text;border-radius:12px;flex-direction:column;gap:2px;padding:9px 14px 7px;display:flex;position:relative}.field:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.field>span{color:var(--text-muted);font-size:12px;line-height:16px}.field input{font:400 17px/24px var(--font);color:var(--text);background:0 0;border:0;outline:0;width:100%;padding:0}.field input::placeholder{color:#a8a49d}.field:has(.show) input{padding-right:56px}.show{color:var(--accent);font:600 15px/20px var(--font);cursor:pointer;background:0 0;border:0;padding:8px 0;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.forgot{color:var(--accent);align-self:flex-end;padding:4px 0;font-weight:600;text-decoration:none}.rules{color:var(--text-muted);gap:6px;margin:4px 0;padding:0;list-style:none;display:grid}.rules li{align-items:center;gap:10px;display:flex}.rules li:before{content:"";box-sizing:border-box;border:1.5px solid #b5b1aa;border-radius:50%;width:14px;height:14px}.rules li.ok{color:var(--won)}.rules li.ok:before{background:var(--won);border:0;border-radius:0;width:16px;height:16px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") 50%/contain no-repeat}.btn-lg{border-radius:12px;min-height:52px;font-size:17px;text-decoration:none}.msg{min-height:0;color:var(--won);margin:0;font-weight:500}.msg:empty{display:none}.msg.err{color:var(--overdue)}.sent .btn{margin-top:0}.resend{text-align:center;color:var(--text-muted);margin:16px 0 0}.resend button{font:600 15px/22px var(--font);color:var(--accent);cursor:pointer;background:0 0;border:0;padding:4px}.resend button:disabled{color:var(--text-muted);cursor:default}.auth-foot{margin-top:auto;padding-top:32px}.note{color:var(--text-muted);justify-content:center;align-items:center;gap:8px;margin:0;font-size:13px;display:flex}.note svg{width:16px;height:16px}.tip{background:var(--subtle);color:var(--text-muted);border-radius:12px;margin:0;padding:12px 14px;font-size:13px}
