/* Auth page R1: accepted homepage palette. Every selector is page-scoped.
 * Existing widget URL was absent in production; other pages are unaffected.
 * Master: docs-project/ecosystem/UI_UX.md. No form/auth/session behavior change.
 */
body.portal-auth {
  --bg:#14201e; --txt:#eff2e8; --mut:#bfd0c2;
  --surface:#1c2a26; --surface-soft:#24352e; --line:#35483d;
  --glass-bg:#1c2a26; --glass-line:#35483d;
  --accent:#b5e5ce; --focus:#a7ddc8;
  --action-fill:#b5e5ce; --action-text:#102825; --action-hover:#c6f0dc;
  --auth-control-line:#b0bfb3; --auth-danger:#ffb7b7;
  background:var(--bg); color:var(--txt);
}
html[data-theme="light"] body.portal-auth {
  --bg:#f5f4ef; --txt:#253c33; --mut:#586e62;
  --surface:#fffefa; --surface-soft:#eeefe7; --line:#dfe3d9;
  --glass-bg:#fffefa; --glass-line:#dfe3d9;
  --accent:#28614e; --focus:#28614e;
  --action-fill:#28614e; --action-text:#f1efe4; --action-hover:#1e503f;
  --auth-control-line:#68766d; --auth-danger:#a22c38;
}
body.portal-auth .auth-route {max-width:520px; margin:0 auto 32px;}
body.portal-auth #authBox {
  --et-bg:var(--bg); --et-surface:var(--surface); --et-soft:var(--surface-soft);
  --et-text:var(--txt); --et-muted:var(--mut); --et-line:var(--line);
  --et-control:var(--auth-control-line); --et-action:var(--action-fill);
  --et-on-action:var(--action-text); --et-focus:var(--focus);
  --et-danger:var(--auth-danger); --et-radius:9px; --et-panel-radius:16px;
  width:100%; min-width:0; padding:clamp(20px,3vw,32px);
  border:1px solid var(--line); border-radius:16px;
  background:var(--surface); color:var(--txt); box-shadow:none; backdrop-filter:none;
  font-size:16px; line-height:1.5;
}
body.portal-auth #authBox h2 {font-size:26px; line-height:1.25; margin:0 0 10px;}
body.portal-auth #authBox .sub {font-size:14px; line-height:1.55; margin-bottom:24px; color:var(--mut);}
body.portal-auth #authBox .inp {
  min-height:48px; border-radius:9px; border-color:var(--auth-control-line);
  background:var(--surface-soft); color:var(--txt); font:inherit;
}
body.portal-auth #authBox .inp::placeholder {color:var(--mut); opacity:1;}
body.portal-auth #authBox .inp:focus {outline:3px solid var(--focus); outline-offset:3px; box-shadow:none;}
body.portal-auth #authBox .inp[aria-invalid="true"] {border-color:var(--auth-danger);}
body.portal-auth #authBox :is(.btn-main,.btn-sec) {
  min-height:48px; border-radius:9px; font:inherit; font-weight:650;
  background-image:none; box-shadow:none; filter:none; transform:none;
}
body.portal-auth #authBox .btn-main {background:var(--action-fill); color:var(--action-text);}
body.portal-auth #authBox .btn-main:hover:not(:disabled) {background:var(--action-hover);}
body.portal-auth #authBox .btn-sec {background:var(--surface); color:var(--txt); border-color:var(--auth-control-line);}
body.portal-auth #authBox .btn-sec:hover:not(:disabled) {background:var(--surface-soft); border-color:var(--accent);}
body.portal-auth #authBox :is(button,a,input):focus-visible {outline:3px solid var(--focus); outline-offset:3px;}
body.portal-auth #authBox button[aria-busy="true"] {cursor:wait;}
body.portal-auth #authBox .remember-choice {
  display:flex; align-items:center; gap:10px; min-height:44px;
  margin:0 0 8px; color:var(--txt); cursor:pointer;
}
body.portal-auth #authBox :is(#rememberMe,#regWantTg) {width:20px; height:20px; min-height:20px; flex:none; accent-color:var(--action-fill);}
body.portal-auth #authBox label:has(#regWantTg) {min-height:44px;}
body.portal-auth #authBox .et-hint {font-size:13px; line-height:1.55; color:var(--mut); margin:0 0 20px;}
body.portal-auth #authBox .auth-send-icon {width:20px; height:20px; flex:none;}
body.portal-auth #authBox .links {flex-wrap:wrap; gap:8px 16px; margin-top:16px;}
body.portal-auth #authBox .links a {display:inline-flex; align-items:center; min-height:44px; color:var(--mut); overflow-wrap:anywhere;}
body.portal-auth #authBox .links a:hover {color:var(--accent); text-decoration:underline;}
body.portal-auth #authBox :is(.alert-box,.text-break) {overflow-wrap:anywhere;}
html[data-motion="off"] body.portal-auth #authBox * {animation:none!important; transition:none!important; scroll-behavior:auto!important;}
@media (prefers-reduced-motion:reduce) {
  body.portal-auth #authBox * {animation:none!important; transition:none!important; scroll-behavior:auto!important;}
}
