/* Shared foundation for access, setup and billing pages. */
*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:#0b0d0c;color:#f3f4f3;font:15px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3{color:#f3f4f3}a,p,label,small{overflow-wrap:anywhere}input,select,button{max-width:100%}input[type=file]{font-size:13px}input[type=file]::file-selector-button{border:0;border-radius:6px;padding:8px 10px;margin-right:10px;background:#303632;color:#f1f1f1;font:inherit;cursor:pointer}input[type=checkbox],input[type=radio]{width:auto;min-height:0}button:disabled{cursor:wait}
:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#080808;color:#f5f5f5}*{box-sizing:border-box}body{margin:0;min-height:100vh}.login-shell{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px 24px}.login-card{width:100%;max-width:420px}.brand{display:inline-flex;gap:5px;align-items:center;text-decoration:none;color:white;font-size:36px;font-weight:750;letter-spacing:-2px;margin-bottom:48px}.brand span{color:#8bcfa6;font-size:12px;align-self:flex-end;margin-bottom:10px}h1{font-size:30px;letter-spacing:-1px;line-height:1.15;margin:0 0 12px}p{color:#a1a1a1;font-size:15px;line-height:1.6;margin:0 0 28px}form{display:grid;gap:20px}label{display:grid;gap:9px;font-size:13px;font-weight:600}input{width:100%;padding:14px 15px;border:1px solid #343434;border-radius:10px;background:#151515;color:white;font:inherit;font-size:15px}input:focus{outline:2px solid #8bcfa6;outline-offset:2px}small{font-weight:400;font-size:12px;color:#888}button{border:0;border-radius:10px;padding:15px;background:#f1f1f1;color:#111;font:inherit;font-weight:650;cursor:pointer}button:hover{background:white}button:focus-visible,a:focus-visible{outline:2px solid #8bcfa6;outline-offset:4px}.error{padding:12px 14px;background:#2b1515;border:1px solid #663232;border-radius:10px;color:#ffc0c0;font-size:14px}.help{font-size:12px;margin:24px 0 0}footer{margin-top:64px;color:#666;font-size:11px;text-align:center}@media(max-width:480px){.brand{margin-bottom:36px}h1{font-size:27px}.login-shell{padding:30px 24px}footer{margin-top:40px}}

select{width:100%;padding:14px 15px;border:1px solid #343434;border-radius:10px;background:#151515;color:white;font:inherit}a{color:#b4dfc4}.onboarding-link{display:inline-block;padding:14px 0}.error{margin-bottom:20px}.setup-logo-preview{width:100px;height:100px;object-fit:contain;background:#222;border-radius:10px;padding:8px}.setup-account{font-size:13px;margin:0}button:disabled{opacity:.55;cursor:wait}

.brand img{display:block;width:140px;height:auto;max-width:100%;object-fit:contain}

/* Central access and onboarding */
.login-shell{background:radial-gradient(ellipse at 50% 0%,#16221b66,transparent 55%);padding:56px 24px}
.login-card{max-width:440px}
.brand{margin-bottom:36px;letter-spacing:normal}.brand img{width:124px}
h1{font-size:32px;line-height:1.2;letter-spacing:-1.1px}p{color:#aaa;line-height:1.65}
form{gap:18px}input,select{font-weight:400;min-height:50px}input::placeholder{color:#717171;opacity:1}small{line-height:1.6;color:#999}
.help{font-size:13px;line-height:1.7;text-align:center}.help a{color:#c5c5c5;text-underline-offset:4px}
.account-prompt{margin-top:28px;padding:20px;border:1px solid #303630;border-radius:14px;background:#ffffff03;text-align:center}
.account-prompt p{font-size:14px;margin:0 0 12px;color:#bcbcbc}.account-prompt a{font-size:14px;font-weight:600;text-decoration:none;color:#b4dfc4}
.trial-note{display:flex;align-items:center;gap:9px;padding:13px 15px;margin-bottom:24px;border:1px solid #344b3b;border-radius:10px;background:#142219;color:#c4e9d0;font-size:13px;line-height:1.5}
.trial-note::before{content:'✓';font-weight:700}.form-note{font-size:12px;line-height:1.6;text-align:center;color:#999;margin:14px 0 0}
.password-field{position:relative;display:block}.password-field input{padding-right:84px}.password-toggle{position:absolute;right:7px;top:7px;padding:10px 9px;font-size:12px;background:transparent;color:#b4dfc4;border-radius:6px}.password-toggle:hover{background:#ffffff0a}
footer{margin-top:40px;line-height:1.8;color:#777}footer a{color:#999;text-decoration:none}footer a:hover{color:#eee}.onboarding-link{font-weight:600;text-underline-offset:5px}
@media(max-width:480px){.login-shell{padding:32px 22px;justify-content:flex-start}.brand{margin-bottom:28px}h1{font-size:29px}.login-card{margin:auto 0}.account-prompt{padding:18px}footer{margin-top:28px}}
