:root{--bg:#f5f5ee;--card:#fff;--ink:#162019;--muted:#667168;--line:#dce3da;--forest:#143d2b;--forest2:#225b40;--lime:#dcfb74;--soft:#edf4e9;--bad:#9b3d37}
*{box-sizing:border-box}html{color-scheme:light}body{margin:0;min-height:100dvh;background:var(--bg);color:var(--ink);font:16px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input{font:inherit}button{cursor:pointer}a{color:inherit}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}
.auth-header{width:min(1120px,calc(100% - 48px));min-height:88px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.auth-brand{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:850;letter-spacing:-.035em;text-decoration:none;color:var(--forest2)}.auth-brand img{width:52px;height:43px;object-fit:contain}.auth-home{font-size:14px;font-weight:700;text-decoration:none;padding:10px 0}.auth-home:hover{text-decoration:underline;text-underline-offset:4px}.auth-main{display:grid;justify-items:center;padding:40px 20px 64px}.auth-content{width:min(100%,480px)}.auth-footer{margin:24px 0 0;color:var(--muted);font-size:14px;text-align:center}.auth-footer a{text-underline-offset:4px}.auth-footer a+a{margin-left:22px}.auth-loading{padding:48px 24px;text-align:center}.auth-page .account-menu-wrap{display:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 18px;border:1px solid var(--line);border-radius:13px;background:var(--card);color:var(--ink);font-weight:800;text-decoration:none}.btn.primary{background:var(--forest);border-color:var(--forest);color:#fff}.btn:hover{filter:brightness(1.07)}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--forest2);outline-offset:3px}
.auth-page .account-dialog{display:block;width:100%;max-height:none;overflow:visible;margin:0;border:1px solid var(--line);border-top:4px solid var(--forest);border-radius:24px;background:var(--card);box-shadow:0 20px 65px rgba(20,61,43,.08)}.auth-page .account-head{display:block;padding:32px 32px 0;border:0}.auth-page .account-head h1{margin:0;font-size:32px;line-height:1.2;font-weight:850;letter-spacing:-.045em;outline:none}.auth-page .account-head p{margin:10px 0 0;font-size:16px;line-height:1.55}.auth-page .account-body{padding:26px 32px 32px}.auth-page .account-tabs{margin-bottom:26px;gap:4px}.auth-page .account-tab{text-align:center;text-decoration:none;font-size:14px;min-height:44px;display:flex;align-items:center;justify-content:center}.auth-page .account-form{gap:18px}.auth-page .account-form label{font-size:14px}.auth-page .account-form input{font-size:16px}.auth-page .account-form input[type=email],.auth-page .account-form .password-field input{min-height:50px;background:var(--card)}.auth-page .account-form .btn{min-height:50px;font-size:16px}.auth-page .account-help{font-size:14px;line-height:1.6}.auth-page .account-link{font-size:14px;min-height:32px}.auth-page .account-message{font-size:14px;overflow-wrap:anywhere}.auth-page .account-verification p,.auth-page .account-loading p{font-size:16px}.auth-page .account-verification h2{font-size:28px}.auth-page .password-toggle{width:44px;height:44px;right:3px}.auth-page .account-check input{width:18px;height:18px;flex-shrink:0}.auth-page .account-check{font-size:14px}.auth-page .account-loading{padding:24px 0}.auth-page .account-loading h2{font-size:24px}
html[data-theme="dark"]{color-scheme:dark;--bg:#0c1410;--card:#13221a;--ink:#edf5ec;--muted:#b5c3b9;--line:#314638;--forest:#245f43;--forest2:#76c796;--soft:#1b3023;--bad:#ffaaa2}html[data-theme="dark"] .auth-page .account-dialog{box-shadow:0 20px 65px rgba(0,0,0,.18);border-top-color:var(--lime)}
@media(max-width:600px){.auth-header{width:calc(100% - 32px);min-height:72px;gap:12px}.auth-brand{font-size:18px;gap:7px}.auth-brand img{width:40px;height:36px}.auth-home{font-size:14px}.auth-main{padding:22px 16px 40px}.auth-page .account-head{padding:26px 22px 0}.auth-page .account-head h1{font-size:29px}.auth-page .account-body{padding:24px 22px 26px}.auth-page .account-dialog{border-radius:20px}.auth-page .account-tabs{margin-bottom:22px}.auth-page .account-form{gap:16px}}
@media(max-width:360px){.auth-header{flex-wrap:wrap;padding-block:12px}.auth-page .account-head{padding-inline:18px}.auth-page .account-body{padding-inline:18px}.auth-page .account-head h1{font-size:27px}}
