:root{color-scheme:light;}
body{min-height:100svh;padding:max(24px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));color:var(--text);}
.card{max-width:420px;padding:36px;border-radius:24px;box-shadow:0 24px 72px rgba(69,47,23,.08),0 2px 8px rgba(69,47,23,.03);}
.logo{margin-bottom:28px;}
.logo h1{font-size:32px;letter-spacing:-1px;}
.logo p{margin-top:8px;font-size:13px;line-height:1.6;}
.login-tabs{gap:4px;border:1px solid rgba(56,43,31,.06);border-radius:12px;background:#f2ede5;padding:4px;margin-bottom:26px;}
.login-tabs button{min-height:42px;padding:9px 8px;border:0;border-radius:8px;font-size:14px;}
.login-tabs button[aria-selected="true"]{background:var(--surface);color:var(--accent-deep);box-shadow:0 1px 4px rgba(56,43,31,.09);}
.form-group{margin-bottom:20px;}
.form-group label{margin-bottom:9px;font-size:13px;font-weight:600;}
.login-input{position:relative;}
.login-input>svg{position:absolute;left:15px;top:17px;width:20px;height:20px;color:#958579;pointer-events:none;}
.form-group input{display:block;min-height:54px;padding:14px 16px 14px 46px;border:1px solid #dcd4ca;border-radius:12px;background:#fffefa;font-family:inherit;font-size:16px;line-height:24px;box-shadow:0 1px 2px rgba(56,43,31,.02);}
.form-group input::placeholder{color:#9a8e82;font-size:14px;opacity:1;}
.form-group input:hover{border-color:#bbae9f;}
.form-group input:focus{border-color:var(--accent);background:#fff;box-shadow:0 0 0 4px rgba(201,100,66,.1);}
.form-group input[type="password"],.form-group input[data-password]{padding-right:54px;}
.login-password-toggle{position:absolute;right:5px;top:5px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;}
.login-password-toggle:hover{background:#f2ede5;color:var(--accent-deep);}
.login-password-toggle svg{width:20px;height:20px;}
.login-options{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-4px 0 18px;font-size:12px;}
.login-remember{display:inline-flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;color:#66574a;line-height:1.5;}
.login-remember input{width:17px;height:17px;flex-shrink:0;accent-color:var(--accent-deep);cursor:pointer;}
.login-options a{display:inline-flex;align-items:center;min-height:44px;color:var(--accent-deep);text-decoration:none;white-space:nowrap;}
.login-options a:hover{text-decoration:underline;}
.btn{min-height:50px;border-radius:12px;box-shadow:0 4px 12px rgba(201,100,66,.17);font-family:inherit;}
.btn:hover{box-shadow:0 6px 16px rgba(201,100,66,.24);}
.login-hint{margin-top:14px;color:var(--muted);font-size:12px;line-height:1.7;text-align:center;text-wrap:pretty;}
.links{margin-top:22px;gap:6px;align-items:center;font-size:13px;line-height:1.6;}
.links a{color:var(--accent-deep);display:inline-flex;align-items:center;min-height:36px;}
.guide-cta{border-top:1px solid rgba(56,43,31,.09);padding-top:18px;margin-top:18px;}
.guide-cta button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:0;color:var(--muted);font-weight:500;padding:8px 12px;}
.guide-cta button svg{width:17px;height:17px;}
.guide-cta button:hover{color:var(--accent-deep);}
.login-password-toggle:focus-visible,.login-remember input:focus-visible,.btn:focus-visible,.links a:focus-visible,.login-options a:focus-visible,.guide-cta button:focus-visible{outline:2px solid var(--accent-deep);outline-offset:3px;}
.pending-name-row{flex-wrap:wrap;}
.pending-name{min-width:0;}
@media(max-width:440px){body{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));}.card{padding:28px 22px 22px;border-radius:20px;}.logo{margin-bottom:24px;}.logo h1{font-size:30px;}.login-tabs{margin-bottom:24px;}.login-options{gap:8px;}.login-remember{gap:6px;}.login-hint{font-size:11px;}}
@media(max-height:650px) and (min-width:600px){body{padding-top:20px;padding-bottom:20px;}.card{padding-top:26px;padding-bottom:22px;}.logo{margin-bottom:20px;}.guide-cta{padding-top:10px;margin-top:10px;}}
@media(prefers-reduced-motion:reduce){.btn,.form-group input,.guide-cta button{transition:none;}.btn:hover{transform:none;}}
