/* Public SCB pages reuse the reference login card and central UI tokens. */
.sc-public{display:flex;flex-direction:column;margin:0;min-height:calc(100vh / var(--sc-ui-scale));min-height:calc(100dvh / var(--sc-ui-scale));background:var(--color-light);color:var(--color-gray-900)}
.sc-public [hidden]{display:none!important}
.sc-public-stage{flex:1;display:grid;place-items:center;padding:40px 20px}
.sc-public-content{width:100%;max-width:460px;min-width:0}
.sc-public-brand{display:block;width:180px;margin:0 auto 26px}
.sc-public-brand img{display:block;width:100%;height:auto}
.sc-public-brand .sc-public-logo-dark{display:none}
[data-theme=dark] .sc-public-brand .sc-public-logo-light{display:none}
[data-theme=dark] .sc-public-brand .sc-public-logo-dark{display:block}
.sc-public-card{padding:28px;border:1px solid var(--color-border-color);border-radius:var(--sc-border-radius,6px);background:var(--color-white)}
.sc-public-card h1{margin:0;font-size:20px;line-height:1.4;font-weight:700;color:var(--color-gray-900)}
.sc-public-card [data-sc-page-heading]{margin-bottom:24px}
.sc-public-card .sc-feedback-alert{gap:9px;align-items:flex-start;font-size:12px;line-height:1.6;margin-bottom:20px}
.sc-public-card .sc-feedback-alert>.icon{margin-top:2px;flex-shrink:0}
.sc-public form,.sc-public fieldset{min-width:0;margin:0;padding:0;border:0}
.sc-public-field{margin-bottom:20px}
.sc-public-field>label{display:block;font-size:12px;font-weight:500;margin-bottom:8px}
.sc-public-field :is(input,textarea){display:block;box-sizing:border-box;width:100%;min-width:0;min-height:40px;padding:9px 11px;border:1px solid var(--color-border-color);border-radius:5px;background:var(--color-white);color:var(--color-gray-900);font:inherit;font-size:13px}
.sc-public-password{position:relative}
.sc-public-password input{padding-inline-end:80px}
.sc-public .sc-public-password input[data-validation-state]{padding-inline-end:80px}
.sc-public-password .sc-field-control>i{inset-inline-end:48px}
.sc-public-password-toggle{position:absolute;inset-block-start:2px;inset-inline-end:2px;display:grid;place-items:center;width:36px;height:36px;background:transparent;border:0;border-radius:4px;color:var(--color-default);cursor:pointer}
.sc-public-link{padding:0;border:0;background:transparent;color:var(--sc-link);font:inherit;font-size:12px;cursor:pointer;text-decoration:none}
.sc-public-link:hover{text-decoration:underline}
.sc-public-button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:9px 14px;border:1px solid var(--color-border-color);border-radius:5px;background:var(--color-white);color:var(--color-gray-900);font:inherit;font-size:13px;font-weight:500;text-decoration:none;cursor:pointer}
.sc-public-button--primary{background:var(--sc-primary);border-color:var(--sc-primary);color:#fff}
.sc-public-button--primary:hover{background:var(--color-primary-hover)}
.sc-public-button:disabled,.sc-public fieldset:disabled{opacity:.55;cursor:default}
.sc-public-submit{width:100%}
.sc-public :is(button,a):focus-visible{outline:2px solid var(--color-gray-500);outline-offset:3px}
.sc-public-note{margin:14px 0 0;font-size:11px;line-height:1.65;color:var(--color-default)}
.sc-public-continue{margin-top:18px}
.sc-public-footer{flex-shrink:0;padding:16px 20px 24px;text-align:center;font-size:11px;line-height:1.6;color:var(--color-default)}
.sc-public-footer p{margin:8px 0 0}
.sc-public-footer a{font-size:11px}
.sc-public-message{font-size:13px;line-height:1.8;color:var(--color-default);margin:0 0 22px}
@media(max-width:520px){.sc-public-stage{padding:24px 14px}.sc-public-card{padding:22px}.sc-public-brand{width:160px;margin-bottom:22px}}
.sc-public-status{width:100%;max-width:620px;text-align:center}
.sc-public-status .sc-public-brand{width:200px;margin-bottom:32px}
.sc-public-status h1{margin:0 0 20px;font-size:clamp(30px,4vw,42px);font-weight:700;line-height:1.2;color:var(--color-gray-900)}
.sc-public-status .sc-public-message{max-width:440px;margin:0 auto;font-size:14px;line-height:1.9}
.sc-public-footer .sc-public-preview-label{margin:0;font-size:10px}
