.sc-login{box-sizing:border-box;width:min(100%,520px);margin:40px auto;padding:36px;background:linear-gradient(145deg,#071426,#020914);color:#eaf2ff;border:1px solid #1e6bff66;border-radius:24px;box-shadow:0 18px 70px #02091455;font-family:inherit}.sc-login *{box-sizing:border-box}.sc-login-brand{font-weight:800;letter-spacing:.18em;color:#78aaff;font-size:13px}.sc-login h1{font-size:30px;line-height:1.2;color:#fff;margin:18px 0 12px}.sc-login p{line-height:1.6;color:#b8c8e0}.sc-login label{display:block;margin:18px 0 8px;font-weight:600}.sc-login input:not([type=hidden]):not([type=checkbox]){display:block;width:100%;min-height:48px;border:1px solid #385070;border-radius:10px;background:#04101e;color:#fff;padding:12px;font:inherit}.sc-login input:focus,.sc-login button:focus-visible,.sc-login a:focus-visible{outline:3px solid #78aaff;outline-offset:3px}.sc-login .sc-login-remember{display:flex;gap:10px;align-items:center;font-size:14px}.sc-login-remember input{width:18px;height:18px}.sc-login-submit{display:block;width:100%;min-height:48px;margin:20px 0;padding:13px 18px;border:0;border-radius:12px;background:#1e6bff;color:white;font:inherit;font-weight:700;cursor:pointer;transition:box-shadow .2s,background .2s}.sc-login-submit:hover{background:#0f4fdb;box-shadow:0 0 22px #1e6bff66}.sc-login a{color:#8db9ff;text-decoration:underline}.sc-login-error{padding:14px;background:#421b27;border:1px solid #b95170;border-radius:10px;color:#ffe6ee;line-height:1.5;margin:16px 0}.sc-login-note{font-size:13px}@media(max-width:540px){.sc-login{margin:20px auto;padding:24px}.sc-login h1{font-size:26px}}@media(prefers-reduced-motion:reduce){.sc-login-submit{transition:none}}
.sc-role-picker{border:0;padding:0;margin:22px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sc-role-picker legend{font-weight:700;font-size:13px;margin-bottom:10px}.sc-login .sc-role-option{position:relative;display:block;margin:0}.sc-role-option input[type=radio]{position:absolute;opacity:0;width:1px;height:1px}.sc-role-option>span{display:flex;flex-direction:column;text-align:center;gap:8px;min-height:122px;padding:16px 8px;border:1px solid #355071;border-radius:12px;cursor:pointer}.sc-role-option em{font-style:normal;font-size:24px}.sc-role-option small{font-size:11px;line-height:1.4;color:#a9bdd7}.sc-role-option input:checked+span{background:#16438b66;border-color:#3b82ff;box-shadow:0 0 20px #1e6bff33}.sc-role-option input:focus-visible+span{outline:3px solid #8db9ff;outline-offset:3px}.sc-register-success{padding:20px;border:1px solid #36a678;border-radius:12px;background:#153f30;color:#b6fbd6}.sc-login .sc-register-success p{color:#d1fbe4}.sc-login a.sc-login-submit{text-align:center;text-decoration:none;color:white}.sc-agenda-context{padding:12px;border-left:3px solid #1e6bff;background:#102645}.sc-client-home.sc-login{width:min(100%,1100px)}.sc-client-agendas{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px}.sc-agenda-card,.sc-empty{border:1px solid #25456b;background:#07182d;padding:22px;border-radius:16px}.sc-agenda-card h2{font-size:22px;color:white}.sc-agenda-share label{display:block;margin:18px 0}.sc-agenda-share input{margin-top:8px}@media(max-width:440px){.sc-role-picker{grid-template-columns:1fr}.sc-role-option>span{min-height:80px}}

/* Auth UI review: scoped to the three existing form titles (four pages).
   Public Home, tenant pages and client dashboards do not match this scope.
   No document overflow suppression: content is allowed to wrap and scroll. */
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) {padding:28px; border-color:#536b8b; font-size:16px; line-height:1.5;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) h1 {font-size:clamp(26px, 3vw, 30px); line-height:1.2; letter-spacing:-.035em; margin:16px 0 10px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) p {font-size:14px; line-height:1.6; margin:10px 0; color:#bdcee6; overflow-wrap:anywhere;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) label {font-size:14px; line-height:1.5; font-weight:600; margin:16px 0 6px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) :is(form, fieldset) {min-width:0; max-width:100%;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) :is(input:not([type=hidden]):not([type=radio]):not([type=checkbox])) {min-width:0; max-width:100%; min-height:52px; padding:12px; border:1px solid #6882a4; border-radius:10px; background:#071529; color:#f4f7ff; font:inherit; font-size:16px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) input::placeholder {color:#adbed5; opacity:1;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) :is(input, button, a):focus-visible {outline:3px solid #8edcff; outline-offset:3px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) input:disabled:not([type=hidden]):not([type=radio]):not([type=checkbox]) {background:#142034; color:#b4c2d5; border-color:#62758f; cursor:not-allowed; opacity:1;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-picker {grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:20px 0 16px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-picker legend {font-size:14px; line-height:1.5; color:#d4e2f5; margin-bottom:10px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option {margin:0; min-width:0;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option > span {display:flex; flex-direction:column; align-items:center; justify-content:flex-start; gap:6px; min-height:140px; padding:14px 10px; border:1px solid #6882a4; border-radius:10px; background:#0b1b31; text-align:center; transform:none; transition:background .15s, border-color .15s;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option strong {font-size:16px; line-height:1.5; font-weight:650;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option small {font-size:14px; line-height:1.45; color:#bdcee6; white-space:normal; overflow-wrap:normal;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option > span::before {content:""; display:grid; place-items:center; width:20px; height:20px; flex-shrink:0; margin:0 0 2px; border:2px solid #9bb0cd; box-shadow:none; font-size:14px; line-height:1; font-weight:800;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option input:checked + span {border:2px solid #8edcff; padding:13px 9px; background:#153459; box-shadow:0 0 0 1px #8edcff26;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option input:checked + span::before {content:"\2713"; background:#a4e2ff; border-color:#a4e2ff; color:#061528;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option input:focus-visible + span {outline:3px solid #8edcff; outline-offset:3px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option input:disabled + span {background:#142034; border-color:#62758f; color:#b4c2d5; cursor:not-allowed; transform:none;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-password-control {display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; min-width:0; border:1px solid #6882a4; border-radius:10px; background:#071529; padding:3px; gap:2px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-password-control input {width:100%; min-width:0; min-height:46px; padding:9px; border:0; background:transparent; border-radius:7px; box-shadow:none;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-password-control input:focus {outline:none;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-password-control:focus-within {outline:3px solid #8edcff; outline-offset:3px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .np-password-toggle {display:block; min-width:80px; min-height:44px; width:auto; max-width:100%; padding:10px 12px; margin:0 0 0 auto; border:1px solid #607b9f; border-radius:7px; background:#132942; color:#e0edff; font-size:14px; line-height:1.5; font-weight:600; text-align:center; cursor:pointer;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .np-password-toggle:focus-visible {outline-offset:-3px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .np-password-toggle[aria-pressed=true] {background:#23436b; border-color:#8edcff; text-decoration:underline; text-underline-offset:3px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-login-remember {min-height:44px; margin:8px 0 0; gap:10px; font-size:14px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) input[type=checkbox] {width:20px; height:20px; flex-shrink:0;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) #sc-password-hint {margin:6px 0 10px; font-size:14px; line-height:1.5;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) :is(.sc-login-submit, .sc-auth-primary-link) {display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:52px; height:auto; margin:16px 0 10px; padding:12px 16px; border:1px solid #83adff; border-radius:10px; background:#245fd3; color:#fff; font-size:16px; line-height:1.5; font-weight:650; text-align:center; text-decoration:none; white-space:normal; overflow-wrap:anywhere; transform:none;}
#sc-home .np-auth-form .sc-login form > button[name="sc_action"][value="logout"] {appearance:none; display:block; width:100%; min-height:44px; margin:0; padding:10px 12px; border:1px solid transparent; border-radius:8px; background:transparent; box-shadow:none; color:#bbd8ff; font:inherit; font-size:14px; font-weight:600; line-height:1.5; text-align:center; text-decoration:underline; text-underline-offset:3px; cursor:pointer;}
#sc-home .np-auth-form .sc-login form > button[name="sc_action"][value="logout"]:hover {background:#112b4a; color:#fff;}
#sc-home .np-auth-form .sc-login form > button[name="sc_action"][value="logout"]:focus-visible {outline:3px solid #8edcff; outline-offset:3px;}
#sc-home .np-auth-form .sc-login form > button[name="sc_action"][value="logout"]:active {background:#1b3957; color:#fff;}
#sc-home .np-auth-form .sc-login form > button[name="sc_action"][value="logout"]:disabled {background:transparent; color:#8294ae; cursor:not-allowed; text-decoration:none;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) a {font-size:14px; line-height:1.5; color:#bbd8ff; text-decoration:underline; text-underline-offset:3px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) > a:not(.sc-login-submit):not(.sc-auth-primary-link), #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-auth-secondary-link {display:inline-flex; align-items:center; min-height:44px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) :is(.sc-login-error, .sc-auth-reset-notice) {margin:16px 0; padding:14px 16px; border:1px solid #d184a0; border-left-width:4px; border-radius:10px; color:#ffe5ee; background:#351c2b; font-size:14px; line-height:1.6; overflow-wrap:anywhere;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-auth-notice-title {display:block; margin-bottom:5px; color:inherit; font-size:16px; line-height:1.4; font-weight:700;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-register-success {padding:14px 16px; margin:16px 0; border:1px solid #78be9d; border-left-width:4px; background:#113728; color:#d5fae7; font-size:14px; line-height:1.6; overflow-wrap:anywhere;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-register-success p {color:inherit;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) :is(input[aria-invalid=true], input:user-invalid):not([type=hidden]):not([type=radio]):not([type=checkbox]) {border-color:#eea5ba; border-width:2px;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-password-control:has(input[aria-invalid=true], input:user-invalid) {border:2px solid #eea5ba;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) button:disabled {cursor:not-allowed; background:#263650; border-color:#6d819e; color:#c3cddd; opacity:1; transform:none; box-shadow:none;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) form[aria-busy=true] .sc-login-submit {cursor:wait; background:#234573;}
#sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) form[aria-busy=true] .sc-login-submit::before {content:""; width:18px; height:18px; flex-shrink:0; border:2px solid #8aa8ce; border-top-color:#fff; border-radius:50%; animation:sc-auth-progress .8s linear infinite;}
@media (hover:hover) {
 #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option:hover > span {border-color:#b3cbed; background:#142e4c; transform:none;}
 #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option:has(input:disabled):hover > span {background:#142034; border-color:#62758f;}
 #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .np-password-toggle:hover {background:#23436b;}
 #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) :is(.sc-login-submit,.sc-auth-primary-link):hover {background:#1c50bb; transform:none;}
}
@media (max-width:540px) {
 #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) {padding:22px 18px;}
 #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-picker {grid-template-columns:minmax(0,1fr); gap:8px; margin:18px 0 14px;}
 #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option > span {display:grid; grid-template-columns:20px minmax(0,1fr); align-items:center; justify-items:start; column-gap:12px; row-gap:2px; min-height:80px; padding:12px 14px; text-align:left;}
 #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option > span::before {grid-column:1; grid-row:1 / span 2; margin:0;}
 #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option strong, #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option small {grid-column:2;}
 #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) .sc-role-option input:checked + span {padding:11px 13px;}
}
@media (prefers-reduced-motion:reduce) {
 #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) *, #sc-home .sc-login:has(> :is(#sc-login-title, #sc-register-title, #sc-recovery-title)) *::before {animation:none; transition:none;}
}
@keyframes sc-auth-progress {to{transform:rotate(360deg)}}
