/* Fortuna-only login: split illustration and form, with compact mobile layout. */
#loginDialog{width:min(940px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 60px);padding:0;border:1px solid #68447366;border-radius:24px;background:#190a24;color:#fff;overflow:visible;box-shadow:0 32px 120px #000b;font-family:Inter,Arial,sans-serif}
#loginDialog::backdrop{background:#09010fd6;backdrop-filter:blur(8px)}
#loginDialog .dialog-close{top:15px;right:17px;z-index:5;display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid #ffffff14;border-radius:50%;background:#ffffff07;color:#baa8c4;font-size:27px;line-height:1;transition:background .2s,color .2s}
#loginDialog .dialog-close:hover{background:#ffffff14;color:#fff}
.login-layout{display:grid;grid-template-columns:44% 56%;min-height:535px}
.login-art{position:relative;isolation:isolate;min-width:0;border-radius:24px 0 0 24px;background:radial-gradient(ellipse at 48% 50%,#6f305344,transparent 70%),linear-gradient(155deg,#381645,#24102e 65%,#351527);border-right:1px solid #f4c40018}
.login-art:before{content:'';position:absolute;inset:30px;border:1px solid #f4c40013;border-radius:50%;transform:rotate(-22deg);z-index:-1}
.login-art:after{content:'';position:absolute;inset:70px 5px;border:1px solid #f4c40016;border-radius:50%;transform:rotate(22deg);z-index:-1}
.login-art-glow{position:absolute;width:80%;height:65%;top:12%;left:10%;border-radius:50%;background:radial-gradient(ellipse,#f4c40022,transparent 70%);filter:blur(22px)}
.login-art img{position:absolute;bottom:82px;left:-6%;width:110%;height:calc(100% - 36px);object-fit:contain;object-position:center bottom;filter:drop-shadow(0 22px 22px #09000c66);z-index:2;pointer-events:none}
.login-art-caption{position:absolute;bottom:26px;left:20px;right:20px;display:grid;gap:7px;text-align:center}
.login-art-caption strong{font-size:20px;font-weight:800;letter-spacing:-.5px;color:#ffdb64}
.login-art-caption span{font-size:11px;color:#c5afcc}
.login-spark{position:absolute;color:#f4c400;text-shadow:0 0 14px #f4c40088;z-index:1}.spark-one{top:12%;left:12%;font-size:25px}.spark-two{top:36%;right:9%;font-size:19px}.spark-three{bottom:23%;left:12%;font-size:15px}
.login-panel{min-width:0;padding:39px 40px 24px;position:relative}
.login-wordmark{display:inline-block;text-decoration:none;color:#fff;font-size:15px;font-weight:900;font-style:italic;letter-spacing:-.6px;margin-bottom:25px}
.login-wordmark span{color:#f4c400}.login-wordmark small{font-size:9px;font-style:normal;letter-spacing:.4px;margin-left:3px;color:#ab94b7}
#loginDialog .login-panel h2{margin:0 0 9px;text-align:left;font-size:29px;letter-spacing:-.7px;line-height:1.15;font-weight:800}
.login-intro{margin:0 0 28px;color:#a991b7;font-size:13px;line-height:1.5}
#loginDialog #loginForm{display:flex;flex-direction:column;gap:0;margin:0}
#loginDialog #loginForm>label{display:block;gap:0;margin:0 0 10px;color:#c5b4cf;font-size:11px;letter-spacing:.7px;font-weight:700;text-transform:uppercase}
#loginDialog #loginForm>label>span{color:#f4c400;font-size:14px;margin-left:3px}
#loginDialog .login-field{height:52px;display:flex;align-items:center;gap:12px;padding:0 15px;border:1px solid #ffffff0f;border-radius:99px;background:#100719;transition:border-color .2s,box-shadow .2s;margin-bottom:23px}
#loginDialog .login-field:focus-within{border-color:#f4c400;box-shadow:0 0 0 3px #f4c40013}
#loginDialog .login-field>svg{width:18px;height:18px;flex-shrink:0;stroke:#8f759f;stroke-width:1.6;fill:none}
#loginDialog .login-field input{width:100%;min-width:0;height:100%;padding:0;border:0;border-radius:0;outline:none;box-shadow:none!important;background:transparent;color:#fff;font-size:14px;font-weight:500}
#loginDialog .login-field input::placeholder{color:#756082;font-weight:400}
#loginDialog .login-field input:-webkit-autofill{-webkit-text-fill-color:#fff;-webkit-box-shadow:0 0 0 1000px #100719 inset!important;caret-color:#fff}
#togglePassword{width:32px;height:36px;display:grid;place-items:center;padding:0;background:none;border:0;color:#bda8c9;flex-shrink:0;border-radius:50%}
#togglePassword svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.8;fill:none}
#togglePassword[aria-pressed=true]{color:#f4c400}
#loginDialog #loginMessage{margin:-12px 0 10px;min-height:15px;color:#ffbd88;font-size:11px;line-height:1.35;text-align:left}
#loginDialog .login-submit{display:flex;justify-content:center;align-items:center;gap:18px;width:100%;min-height:53px;border:1px solid #ffe06966;border-radius:99px;background:linear-gradient(180deg,#ffdf5d,#f4c400 80%);box-shadow:0 8px 24px #f4c40014;color:#23120c;font-size:17px;font-weight:800;cursor:pointer}
#loginDialog .login-submit:hover{background:linear-gradient(180deg,#ffe780,#ffd127)}
#loginDialog .login-submit:disabled{opacity:.6;cursor:wait}
.login-submit span{font-size:23px;font-weight:400}
.login-help{margin:20px 0 18px;text-align:center;color:#9b84a8;font-size:11px;line-height:1.8}.login-help a{color:#f4c400;font-weight:600;text-decoration:none}.login-help a:hover{text-decoration:underline}
.login-secure{display:flex;align-items:center;justify-content:center;gap:7px;border-top:1px solid #ffffff09;padding-top:15px;color:#86728f;font-size:9px;white-space:nowrap}.login-secure svg{width:14px;height:14px;fill:none;stroke:#a48d52;stroke-width:1.5}.login-secure>span{color:#65536f}
@media(max-width:720px){#loginDialog{width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;border-radius:20px}.login-layout{grid-template-columns:1fr;min-height:0}.login-art{height:146px;border-radius:20px 20px 0 0;border-right:0;border-bottom:1px solid #f4c40018;overflow:hidden}.login-art img{height:220px;width:190px;left:auto;right:8px;bottom:-61px;object-position:center top}.login-art-caption{top:40px;left:22px;right:155px;bottom:auto;text-align:left}.login-art-caption strong{font-size:18px;line-height:1.2}.login-art-caption span{font-size:10px;line-height:1.5}.spark-one{left:48%;top:18%;font-size:18px}.spark-two,.spark-three{display:none}.login-panel{padding:23px 25px 20px}.login-wordmark{font-size:13px;margin-bottom:15px}#loginDialog .login-panel h2{font-size:25px}.login-intro{font-size:12px;margin-bottom:22px}#loginDialog .login-field{height:49px;margin-bottom:20px}#loginDialog .login-field input{font-size:16px}#loginDialog .login-submit{min-height:50px;font-size:16px}.login-help{margin:15px 0 13px}.login-secure{font-size:8px;padding-top:12px}#loginDialog .dialog-close{top:10px;right:10px;background:#180923c9}}
@media(max-height:650px) and (min-width:721px){#loginDialog{max-height:calc(100dvh - 24px);overflow:auto}.login-layout{min-height:0}.login-panel{padding-top:22px;padding-bottom:18px}.login-wordmark{margin-bottom:15px}.login-intro{margin-bottom:18px}#loginDialog .login-field{margin-bottom:18px}.login-help{margin:13px 0}.login-secure{padding-top:10px}.login-art img{height:calc(100% - 65px);bottom:82px}}
@media(max-height:720px) and (max-width:720px){.login-art{display:none}.login-panel{padding-top:25px}.login-wordmark{margin-bottom:18px}}
