.auth-modal{width:min(570px,calc(100vw - 28px))!important;max-width:none!important;max-height:min(92vh,760px)!important;padding:0!important;overflow:auto;border:1px solid #a8d7e9;border-radius:23px;background:linear-gradient(145deg,#edfffc,#f8f7ff 55%,#fff2fa);box-shadow:0 36px 95px rgba(16,45,84,.3);color:#17305e;z-index:10000}
.auth-modal::backdrop{background:rgba(9,27,54,.58);backdrop-filter:blur(7px)}
.auth-modal-wrap{display:block!important;grid-template-columns:none!important;min-height:0!important;position:relative}
.auth-modal .auth-content{padding:30px 32px 34px}
.auth-modal .auth-close{position:absolute;top:17px;right:18px;z-index:5;display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #c4dced;border-radius:11px;background:#fff;color:#243e66;font:400 27px/1 Arial,sans-serif;cursor:pointer;box-shadow:0 4px 14px rgba(34,87,130,.1)}
.auth-modal .auth-close:hover{background:#ecfaff;color:#008ca4}
.auth-brand{display:flex;align-items:center;gap:12px;margin:0 48px 23px 0}
.auth-brand-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:linear-gradient(135deg,#00bfb8,#468dea,#d84dc6);color:#fff;font-size:23px;box-shadow:0 8px 19px rgba(56,131,193,.22)}
.auth-brand small,.auth-brand strong{display:block}.auth-brand small{color:#35859b;font:800 11px/1.3 Inconsolata,monospace;letter-spacing:.12em}.auth-brand strong{color:#183365;font:700 19px/1.3 "Momo Trust Display",sans-serif}
.auth-modal .auth-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:0 0 25px;padding:5px;border:1px solid #c8def3;border-radius:13px;background:#f0f7ff}
.auth-modal .auth-tabs button{min-width:0;padding:10px 5px;border:0;border-radius:9px;background:transparent;color:#58708b;font:700 13px/1.2 Inconsolata,monospace;cursor:pointer;white-space:nowrap}
.auth-modal .auth-tabs button.active{background:linear-gradient(115deg,#d9fff9,#e5eeff,#fbe8fa);color:#112e68;box-shadow:0 3px 10px rgba(44,91,158,.12)}
.auth-modal .auth-content section{display:none}.auth-modal .auth-content section.active{display:block}
.auth-modal .auth-content h3{margin:0 0 5px;font:700 27px/1.3 "Momo Trust Display",sans-serif;color:#172f67}.auth-modal .auth-content section>p{margin:0 0 20px;color:#617997;font:500 14px/1.5 Inconsolata,monospace}
.auth-modal .auth-content label{display:grid;gap:7px;margin:14px 0;color:#274668;font:700 13px/1.3 Inconsolata,monospace}
.auth-modal .auth-content input{box-sizing:border-box;width:100%;min-height:47px;padding:10px 13px;border:1px solid #bdd8ee;border-radius:11px;background:#fff;color:#183365;font:500 15px Inconsolata,monospace;outline:none}
.auth-modal .auth-content input:focus{border-color:#20b9c2;box-shadow:0 0 0 3px rgba(19,181,194,.14)}
.auth-modal .auth-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.auth-modal .auth-primary{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:48px;margin-top:19px;border:0;border-radius:11px;background:linear-gradient(100deg,#05b7ae,#388edf 58%,#c845c4);box-shadow:0 9px 20px rgba(43,137,182,.18);color:#fff;font:800 15px Inconsolata,monospace;cursor:pointer}
.auth-modal .auth-primary:hover{filter:brightness(1.05);transform:translateY(-1px)}
.auth-modal .auth-notice{padding:11px 13px;margin:0 0 16px;border:1px solid #83d9c9;border-radius:10px;background:#eafff7;color:#11695c;font:700 13px/1.45 Inconsolata,monospace}.auth-modal .auth-notice.error{border-color:#efb2c6;background:#fff1f5;color:#9b2750}.auth-modal .auth-notice[hidden]{display:none}
@media(max-width:560px){.auth-modal .auth-content{padding:24px 18px 27px}.auth-brand strong{font-size:17px}.auth-modal .auth-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-modal .auth-pair{grid-template-columns:1fr;gap:0}}

/* Account card: shared across every route, without the former side column. */
.auth-modal .auth-field-label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.auth-modal input::placeholder{color:#58748a;opacity:1;font-size:14px}
html body dialog.auth-modal{width:min(590px,calc(100vw - 28px))!important;max-height:calc(100dvh - 32px)!important;border:1px solid #8dcbde!important;border-radius:26px!important;background:radial-gradient(ellipse at 8% 0,#d9fff9,transparent 45%),radial-gradient(ellipse at 100% 15%,#f4defa,transparent 42%),#f9fcff!important;box-shadow:0 30px 90px #102b5755,inset 0 1px #fff!important}
html body .auth-modal .auth-content{padding:30px!important;display:block!important;width:100%!important;box-sizing:border-box}
html body .auth-modal .auth-brand{padding:0 36px 22px 0!important;margin:0 0 22px!important;border-bottom:1px solid #bfdee7;gap:14px}
html body .auth-modal .auth-brand-mark{width:50px;height:50px;border-radius:16px;flex:none;box-shadow:inset 0 1px #ffffff88,0 8px 20px #5b8bbc30}
html body .auth-modal .auth-brand strong{font-size:19px;line-height:1.35}.auth-brand-mark svg{width:25px;height:25px}
html body .auth-modal .auth-tabs{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));background:#eaf1fa99;padding:6px;border-radius:15px;gap:6px}
html body .auth-modal .auth-tabs button{min-height:42px;border:1px solid transparent;transition:background .15s,border-color .15s}
html body .auth-modal .auth-tabs button.active{background:linear-gradient(120deg,#dcfff8,#e8edff,#f6e6fa);border-color:#a5cfdc;box-shadow:inset 0 1px #fff,0 3px 8px #355b8720}
html body .auth-modal .auth-content h3{font-size:25px;line-height:1.3;margin-bottom:7px}
html body .auth-modal .auth-content section>p{font-size:14px;line-height:1.6;margin-bottom:22px}
html body .auth-modal .auth-content input{min-height:49px;border-radius:12px;background:#ffffffd9;border:1px solid #b5d6e5;box-shadow:inset 0 2px 5px #24598308;font-size:16px}
html body .auth-modal .auth-content label{margin:15px 0;gap:8px;font-size:14px}
html body .auth-modal .auth-primary{min-height:50px;border-radius:13px;letter-spacing:.02em;border:1px solid #4ebcca;box-shadow:0 8px 18px #248ab328,inset 0 1px #ffffff60}
html body .auth-modal :is(button,a):focus-visible{outline:3px solid #26adce66;outline-offset:3px}
html body .auth-modal .auth-close{top:20px;right:20px;width:36px;height:36px;background:#ffffffb8;border-color:#bad9e7}
@media(max-width:560px){html body .auth-modal .auth-content{padding:22px 18px!important}html body .auth-modal .auth-brand strong{font-size:16px}html body .auth-modal .auth-tabs{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:3px;padding:4px}html body .auth-modal .auth-tabs button{min-width:0;min-height:44px;white-space:nowrap;padding:8px 3px!important;font-size:clamp(10px,2.8vw,12px)!important}html body .auth-modal .auth-close{top:16px;right:14px}html body .auth-modal .auth-content h3{font-size:23px}}
