:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17202a;background:#eef2f6;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 10% 10%,rgba(31,157,105,.12),transparent 34%),radial-gradient(circle at 90% 80%,rgba(44,120,190,.13),transparent 36%),#eef2f6}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(100%,540px);background:#fff;border:1px solid #dfe5eb;border-radius:28px;padding:38px;box-shadow:0 28px 80px rgba(20,37,53,.12)}.setup-card{width:min(100%,760px)}.brand-lockup{display:flex;align-items:center;gap:13px;margin-bottom:34px}.brand-lockup strong{display:block;font-size:18px;letter-spacing:.04em}.brand-lockup small{display:block;color:#7c8792;margin-top:2px}.brand-bars{display:flex;align-items:flex-end;gap:3px;width:38px;height:38px;padding:8px;background:#17202a;border-radius:11px}.brand-bars i{display:block;width:6px;border-radius:4px 4px 1px 1px}.brand-bars i:nth-child(1){height:13px;background:#35a56f}.brand-bars i:nth-child(2){height:22px;background:#f1b63d}.brand-bars i:nth-child(3){height:17px;background:#4588c7}.eyebrow{display:block;color:#19845b;font-size:12px;font-weight:800;letter-spacing:.16em;margin-bottom:10px}h1{font-size:clamp(28px,5vw,40px);line-height:1.08;margin:0 0 12px}.lead{color:#687480;line-height:1.6;margin:0 0 28px}.form-alert{padding:13px 15px;border-radius:12px;background:#fff0f0;border:1px solid #f1b5b5;color:#a12424;font-weight:700;margin-bottom:18px}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}.role-choice input{position:absolute;opacity:0;pointer-events:none}.role-card{display:flex;align-items:center;gap:12px;padding:15px;border:2px solid #dfe5eb;border-radius:16px;cursor:pointer;transition:.18s}.role-card>span:nth-child(2){min-width:0;flex:1}.role-card strong,.role-card small{display:block}.role-card small{color:#77828d;margin-top:3px}.role-card b{opacity:0;color:#168459}.role-choice input:checked+.role-card{border-color:#1f9869;background:#effaf5}.role-choice input:checked+.role-card b{opacity:1}.role-choice input:focus-visible+.role-card{outline:3px solid rgba(37,120,192,.25);outline-offset:2px}.role-icon{display:grid;place-items:center;flex:0 0 43px;height:43px;border-radius:13px;background:#dff4ea;color:#16734f;font-weight:900}.role-icon.admin{background:#e5eefc;color:#2a65a7}.password-field,.setup-form label{display:grid;gap:8px;color:#424d58;font-size:14px;font-weight:750}.password-field input,.setup-form input{width:100%;border:1px solid #cad3dc;border-radius:12px;padding:14px 15px;font:inherit;outline:none}.password-field input:focus,.setup-form input:focus{border-color:#247fbd;box-shadow:0 0 0 4px rgba(36,127,189,.12)}.primary-button{width:100%;border:0;border-radius:13px;background:#177d58;color:#fff;font:inherit;font-weight:850;padding:15px 18px;margin-top:18px;cursor:pointer}.primary-button:hover{background:#116b4a}.security-note{display:flex;align-items:center;justify-content:center;gap:8px;color:#7b8691;font-size:12px;margin:26px 0 0}.security-note span{color:#1e9c6a}.setup-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.setup-form fieldset{border:1px solid #dfe5eb;border-radius:18px;padding:20px;display:grid;gap:14px}.setup-form legend{display:flex;align-items:center;gap:10px;padding:0 6px}.setup-form legend strong,.setup-form legend small{display:block}.setup-form legend small{color:#7b8691;margin-top:3px}.setup-form .primary-button{grid-column:1/-1}.setup-form label{font-size:13px}@media(max-width:680px){.login-card{padding:26px 20px;border-radius:22px}.role-grid,.setup-form{grid-template-columns:1fr}.setup-form .primary-button{grid-column:auto}}
