*{box-sizing:border-box}body{margin:0;background:#f2f1e9;color:#192a3b;font:17px system-ui}main{max-width:440px;margin:7vh auto;padding:30px 24px;background:#fff;border:1px solid #d0d8df;border-radius:20px}.eyebrow{font-size:12px;letter-spacing:3px;font-weight:800}h1{font-size:32px}label{display:block;font-weight:650;margin:18px 0}input{display:block;width:100%;min-height:50px;margin-top:7px;border:1px solid #a3acb5;border-radius:8px;padding:12px;font:inherit}button{width:100%;min-height:52px;background:#21374e;border:0;border-radius:8px;color:#fff;font:700 17px system-ui;cursor:pointer}button:disabled{opacity:.5}.hint,#passwordHint{font-size:14px;color:#525d68}#error{color:#a52b20}a{color:#21374e}#setupLink{font-size:13px}[hidden]{display:none!important}@media(max-width:500px){main{border:0;margin:0;min-height:100dvh;border-radius:0}}

body{background:radial-gradient(circle at 12% 12%,#a9c7e578,transparent 35%),radial-gradient(circle at 90% 80%,#f6cd7870,transparent 38%),#f8f8f1;color:#192b3e;min-height:100dvh;padding:1px 16px}main{position:relative;border:1px solid #c7d3df;border-radius:24px;background:#ffffffed;box-shadow:0 0 0 6px #ffffff61,0 20px 70px #1d416518;padding:32px;overflow:hidden}main:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#123b64,#8eb4db,#e8b758)}main>img{border-radius:50%;box-shadow:0 0 0 6px #e9f0f7,0 0 0 7px #bbcddf,0 0 35px #8eb4db80;margin:8px 0 12px}.eyebrow{color:#254a70;letter-spacing:4px}h1{letter-spacing:-1px;margin-bottom:8px}#intro{color:#535f6b}input{background:#f9fcfe;border-color:#b9c4cf;border-radius:10px;color:#192b3e}input:focus-visible,button:focus-visible{outline:3px solid #25598d;outline-offset:3px}button{background:linear-gradient(120deg,#123b64,#203953);border-radius:11px;box-shadow:0 4px 16px #123b6429}button:hover{background:#153453}.hint{border-top:1px solid #dce2e9;padding-top:18px;line-height:1.5}@media(max-width:500px){main{margin:24px auto;min-height:0;padding:26px 22px;border:1px solid #c7d3df;border-radius:20px}h1{font-size:30px}}
main{border:0;box-shadow:0 20px 70px #1d416512}main>img{border-radius:0;box-shadow:none;filter:drop-shadow(0 5px 12px #4c7eb13d);width:86px;height:86px}main:before{height:3px}@media(max-width:500px){main{border:0}}
.appearance-choice{display:flex;align-items:center;gap:12px;font-size:13px;margin:16px 0}.appearance-choice select{margin-left:auto;padding:8px;border-radius:8px;border:1px solid #a3acb5;background:#f3f7fb;color:#192a3b;font:inherit}
html[data-theme=dark]{color-scheme:dark}html[data-theme=dark] body{background:radial-gradient(circle at 15% 15%,#286cff28,transparent 42%),#202c3b;color:#e6edf6}html[data-theme=dark] main{background:#304155}html[data-theme=dark] input,html[data-theme=dark] select{background:#26374b;color:#eaf2ff;border-color:#526c8c}html[data-theme=dark] :is(.hint,#intro,#passwordHint){color:#bac8d9}html[data-theme=dark] .eyebrow{color:#8cdeff}html[data-theme=dark] button{background:#8acaff;color:#10243a}html[data-theme=dark] #error{color:#ffb5a0}

html[data-theme=dark] main:before{background:linear-gradient(90deg,#398cff,#96e4ff,#e8b758)}html[data-theme=dark] a{color:#8cdeff}html[data-theme=dark] :is(input,button,select):focus-visible{outline-color:#8cdeff}html[data-theme=dark] main>img{filter:drop-shadow(0 5px 12px #62b9ff40)}
/* Same field-station materials as the working app. */
body{background:radial-gradient(ellipse at 85% 0,#d5eaf480,transparent 45%),#f1f4f7}main{border-radius:12px;background:#fafcfe;box-shadow:0 12px 45px #233d5010}main:before{height:2px;background:linear-gradient(90deg,#507a9a,#a1c5da,transparent)}.eyebrow{color:#365c7a}input,button{border-radius:7px}html[data-theme=dark] body{background:radial-gradient(ellipse at 85% 0,#4a75872b,transparent 45%),#263444}html[data-theme=dark] main{background:#324658}html[data-theme=dark] main:before{background:linear-gradient(90deg,#89b8d4,#c4dbe9,transparent)}html[data-theme=dark] .eyebrow{color:#c0dbe9}

html[data-theme=dark] main>img{background:radial-gradient(ellipse,#effaff 25%,#afd6ed 55%,transparent 75%);box-shadow:0 0 26px #6bd7ff35;border-radius:35%}main:before{background:linear-gradient(90deg,#2183a2,#84e2ff,#efbd6a)}

main>img,html[data-theme=dark] main>img{background:none;box-shadow:none;border-radius:0;filter:none}

/* Compact sign-in controls, with generous touch targets. */
.password-field{position:relative;display:block;margin-top:7px}.password-field input{margin-top:0;padding-right:56px}.password-toggle,.theme-toggle,html[data-theme=dark] .password-toggle,html[data-theme=dark] .theme-toggle{display:grid;place-items:center;width:44px;min-height:44px;padding:0;background:transparent;color:inherit;box-shadow:none;border:0}.password-toggle{position:absolute;right:4px;top:3px}.theme-toggle{position:absolute;right:18px;top:18px}.password-toggle:hover,.theme-toggle:hover{background:#7499b329!important}.password-toggle svg,.theme-toggle svg{pointer-events:none}
