body:has(.auth-root){background:#fffdf4;color:#101010}.auth-root{--bg:#fbfaf5;--ink:#101010;--muted:#6f6a60;--yellow:#f5b400;--line:rgba(0,0,0,.1);--card:#fff;--input:#fff;--danger:#dc2626;--success:#15803d;overflow-x:hidden;min-height:100dvh;font-family:var(--font-montserrat),system-ui,sans-serif;font-size:16px;line-height:1.45;color:var(--ink);background:radial-gradient(circle at 50% -10%,rgba(245,180,0,.17),transparent 34%),linear-gradient(180deg,#fffdf4 0,var(--bg) 100%);position:relative;z-index:1}.auth-root *,.auth-root :after,.auth-root :before{box-sizing:border-box}.auth-root a{color:inherit;text-decoration:none}.auth-root button,.auth-root input{font:inherit}.auth-root .auth-page{min-height:100dvh;display:grid;place-items:center;padding:28px 16px}.auth-root .auth-section{width:min(100%,420px)}.auth-root .auth-logo-wrap{display:flex;justify-content:center;margin-bottom:38px}.auth-root .auth-logo-link{display:inline-flex;text-decoration:none;color:inherit;transition:transform .2s ease}.auth-root .auth-logo-link:hover{transform:scale(1.02)}.auth-root .auth-logo-link:focus-visible{outline:2px solid var(--yellow);outline-offset:4px;border-radius:4px}.auth-root .auth-card{background:hsla(0,0%,100%,.88);border:1px solid var(--line);border-radius:30px;padding:26px;box-shadow:0 24px 70px rgba(0,0,0,.08);backdrop-filter:blur(14px)}.auth-root .auth-form-title{margin:0;text-align:center;font-size:34px;line-height:1;letter-spacing:-.055em;font-weight:950;color:var(--ink)}.auth-root .auth-form-subtitle{margin:10px 0 22px;text-align:center;color:var(--muted);font-size:14px;line-height:1.45;font-weight:500}.auth-root .auth-form-subtitle a{color:var(--ink);font-weight:900;text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:3px;text-underline-offset:4px}.auth-root .auth-field{margin-bottom:15px}.auth-root .auth-label{display:block;margin-bottom:9px;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.auth-root .auth-input-wrap{position:relative}.auth-root .auth-input{width:100%;min-height:56px;border-radius:15px;border:1px solid var(--line);background:var(--input);color:var(--ink);padding:0 18px;outline:none;font-size:15px;font-weight:600;transition:.18s ease;box-sizing:border-box}.auth-root .auth-input::-moz-placeholder{color:#aaa49a;font-weight:500}.auth-root .auth-input::placeholder{color:#aaa49a;font-weight:500}.auth-root .auth-input:focus{border-color:var(--yellow);box-shadow:0 0 0 4px rgba(245,180,0,.16)}.auth-root .auth-input.error{border-color:rgba(220,38,38,.5)}.auth-root .auth-input-wrap .auth-input{padding-right:88px}.auth-root .auth-toggle-pw{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--muted);font-size:13px;font-weight:800;cursor:pointer;padding:10px}.auth-root .auth-toggle-pw:hover{color:var(--ink)}.auth-root .auth-field-error{font-size:13px;color:var(--danger);margin-top:6px;font-weight:700;display:none}.auth-root .auth-field-error.visible{display:block}.auth-root .auth-forgot{display:flex;justify-content:flex-end;margin-top:-4px;margin-bottom:16px}.auth-root .auth-forgot a{color:var(--muted);font-size:13px;font-weight:750}.auth-root .auth-forgot a:hover{color:var(--ink)}.auth-root .auth-submit{width:100%;min-height:58px;border:0;border-radius:15px;background:var(--yellow);color:#111;font-size:16px;font-weight:950;cursor:pointer;box-shadow:0 18px 44px rgba(245,180,0,.22);transition:.18s ease}.auth-root .auth-submit:hover:not(:disabled){transform:translateY(-1px);filter:saturate(1.05)}.auth-root .auth-submit:disabled{opacity:.65;cursor:not-allowed}.auth-root .auth-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;color:#b5afa4;font-size:12px;font-weight:600;margin:40px 0}.auth-root .auth-divider:after,.auth-root .auth-divider:before{content:"";height:1px;background:rgba(0,0,0,.16)}.auth-root .auth-google-btn{width:100%;min-height:58px;border-radius:15px;border:1px solid #d1d5db;background:#fff;color:#111;font-weight:950;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:16px;transition:.18s ease;text-decoration:none;box-shadow:0 1px 3px rgba(0,0,0,.05)}.auth-root .auth-google-btn:hover{transform:translateY(-1px);border-color:#9ca3af;background:#fafaf8;box-shadow:0 2px 10px rgba(0,0,0,.07)}.auth-root .auth-google-btn:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}.auth-root .auth-google-icon{flex-shrink:0;display:block}.auth-root .auth-footer-link{margin-top:20px;text-align:center;color:var(--muted);font-size:14px;font-weight:600;line-height:1.45}.auth-root .auth-footer-link a{color:var(--ink);font-weight:900;text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:3px;text-underline-offset:4px}.auth-root .auth-terms{margin-top:16px;text-align:center;color:var(--muted);font-size:12px;font-weight:500;line-height:1.45}.auth-root .auth-terms a{color:var(--ink);font-weight:700;text-decoration:underline;text-decoration-color:var(--yellow);text-underline-offset:3px}.auth-root .auth-footer-note{margin-top:12px;text-align:center;color:var(--muted);font-size:12px;font-weight:600;line-height:1.45}.auth-root .auth-back-home{display:block;margin-top:28px;text-align:center}.auth-root .auth-back-home a{color:var(--muted);font-size:13px;font-weight:700}.auth-root .auth-back-home a:hover{color:var(--ink)}.auth-root .auth-hint{margin-bottom:18px;text-align:center;color:var(--muted);font-size:13px;font-weight:600;line-height:1.45}.auth-root .auth-hint a{color:var(--ink);font-weight:800;text-decoration:underline;text-decoration-color:var(--yellow);text-underline-offset:3px}.auth-root .auth-banner-error{margin-bottom:18px;padding:13px 14px;border-radius:14px;background:rgba(220,38,38,.08);border:1px solid rgba(220,38,38,.2);color:var(--danger);font-size:13px;font-weight:700;line-height:1.35}.auth-root .auth-banner-error a{color:var(--danger);font-weight:800;text-decoration:underline}.auth-root .auth-banner-success{margin-bottom:18px;padding:13px 14px;border-radius:14px;background:rgba(21,128,61,.08);border:1px solid rgba(21,128,61,.2);color:var(--success);font-size:13px;font-weight:700;line-height:1.35}.auth-root .auth-toast{position:fixed;bottom:24px;right:24px;left:24px;margin:auto;max-width:320px;background:hsla(0,0%,100%,.95);border:1px solid var(--line);border-radius:14px;padding:14px 20px;font-size:13px;font-weight:700;color:var(--ink);z-index:100;transform:translateY(80px);opacity:0;transition:all .3s;box-shadow:0 18px 44px rgba(0,0,0,.12)}.auth-root .auth-toast.show{transform:translateY(0);opacity:1}.auth-root .auth-toast.error{border-color:rgba(220,38,38,.35);color:var(--danger)}.auth-root.auth-root--signup .auth-form-subtitle{margin-bottom:18px}.auth-root.auth-root--signup .auth-field{margin-bottom:12px}.auth-root.auth-root--signup .auth-card{padding:22px}@media (max-width:480px){.auth-root .auth-page{align-items:center;padding:18px 14px}.auth-root .auth-logo-wrap{margin-bottom:24px}.auth-root .auth-card{padding:22px;border-radius:26px}.auth-root .auth-form-title{font-size:31px}.auth-root .auth-form-subtitle{margin-bottom:20px}.auth-root .auth-google-btn,.auth-root .auth-input,.auth-root .auth-submit{min-height:54px}.auth-root .auth-back-home{margin-top:22px}}@media (max-height:680px){.auth-root .auth-page{padding-top:14px;padding-bottom:14px}.auth-root .auth-logo-wrap{margin-bottom:18px}.auth-root .auth-card{padding:22px}.auth-root .auth-form-title{font-size:29px}.auth-root .auth-form-subtitle{margin:8px 0 18px}.auth-root .auth-field{margin-bottom:14px}.auth-root .auth-google-btn,.auth-root .auth-input,.auth-root .auth-submit{min-height:50px}.auth-root .auth-divider{margin:32px 0}.auth-root .auth-back-home,.auth-root .auth-footer-link{margin-top:18px}.auth-root.auth-root--signup .auth-form-subtitle{margin:8px 0 14px}}