/* Smart Access Intelligence 2.5.3 — public presentation layer.
   Native markup; no continuous animations or layout-replacing scripts. */
.public-decision-stage.active{display:block;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;min-height:0;overflow:visible}
.public-decision-stage:after{display:none}
.intelligence-terminal.public-authorization-mode .gate-console-bar,
.intelligence-terminal.public-authorization-mode .smart-stepper{display:none!important}
.intelligence-terminal.public-authorization-mode .terminal-body{padding:0}
.public-authorization{
 --decision-color:#946009;--decision-soft:#fff4dc;
 display:flex;flex-direction:column;position:relative;width:100%;min-height:100vh;min-height:100svh;
 border:0;border-radius:0;overflow:visible;color:#142c3d;
 background:radial-gradient(ellipse at 50% 32%,#ffffff 20%,#f3f7fa 100%);
}
.public-authorization[data-decision=allow]{--decision-color:#087451;--decision-soft:#e8f6ef}
.public-authorization[data-decision=review]{--decision-color:#946009;--decision-soft:#fff4dc}
.public-authorization[data-decision=deny]{--decision-color:#b1323e;--decision-soft:#fcecee}
.public-authorization:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--client-primary),var(--client-accent))}
.client-brand-logo{width:62px;height:62px;border-radius:18px;background:#fff;border:1px solid #dfe7ed;box-shadow:none;flex-shrink:0}
.client-brand-logo img{width:100%;height:100%;object-fit:contain;padding:7px}
.client-brand-logo.compact{width:46px;height:46px;border-radius:14px}
.client-brand-fallback{font-size:20px;font-weight:850;letter-spacing:-.04em;color:var(--client-primary)}
.public-authorization-brand{min-height:112px;padding:24px clamp(22px,4vw,64px);display:flex;gap:16px;align-items:center;border-bottom:1px solid #e6edf1}
.public-brand-copy{min-width:0;display:flex;flex-direction:column;gap:3px}
.public-brand-copy span{font-size:10px;font-weight:800;letter-spacing:.16em;color:#536d7d}
.public-brand-copy strong{font-size:clamp(20px,2.3vw,30px);line-height:1.2;letter-spacing:-.035em;overflow-wrap:anywhere;color:#142c3d}
.public-brand-copy small{font-size:12px;line-height:1.4;color:#657d8d;margin:0}
.public-auth-clock{margin-left:auto;flex-shrink:0;text-align:right;display:flex;flex-direction:column;gap:4px}
.public-auth-clock strong{font-size:29px;line-height:1.2;font-variant-numeric:tabular-nums;letter-spacing:-.03em}
.public-auth-clock span{font-size:11px;color:#657d8d}
.public-decision-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:38px 24px 44px;min-height:430px}
.public-decision-aura{margin-bottom:24px;width:120px;height:120px;display:grid;place-items:center;border-radius:38px;background:var(--decision-soft)}
.public-decision-icon{width:88px;height:88px;display:grid;place-items:center;border-radius:27px;margin:0;background:transparent!important;color:var(--decision-color)!important}
.public-decision-icon svg{width:72px;height:72px;fill:none;stroke:currentColor;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}
.public-decision-icon .status-review,.public-decision-icon .status-deny{display:none}
[data-decision=review] .public-decision-icon .status-allow,[data-decision=deny] .public-decision-icon .status-allow{display:none}
[data-decision=review] .public-decision-icon .status-review,[data-decision=deny] .public-decision-icon .status-deny{display:block}
.public-state-kicker{font-size:11px;font-weight:850;letter-spacing:.18em;color:var(--decision-color)!important}
.public-decision-center h2,.public-completion h2{font-size:clamp(40px,5.4vw,76px);font-weight:750;line-height:1.05;letter-spacing:-.055em;color:#142c3d;max-width:1000px;margin:12px 0 15px;overflow-wrap:anywhere}
.public-decision-center>p,.public-completion>p{max-width:640px;font-size:clamp(16px,1.8vw,21px);line-height:1.55;color:#597181;margin:0}
.public-next-step{display:flex;align-items:center;gap:11px;max-width:640px;margin-top:27px;padding:13px 18px;border-radius:14px;background:#fff;border:1px solid #e0e8ed;font-size:14px;font-weight:600;line-height:1.5;color:#324e61}
.public-next-step>span:first-child{font-size:20px;color:var(--decision-color)}
.public-decision-signals{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin-top:20px;max-width:700px}
.public-decision-signals:empty{display:none}
.public-decision-signals>span{min-width:110px;max-width:100%;border:1px solid #e0e8ed;border-radius:12px;padding:10px 14px;background:#fff;overflow-wrap:anywhere}
.public-decision-signals small{font-size:9px;letter-spacing:.12em;color:#657d8d}
.public-decision-signals b{font-size:13px;line-height:1.5;color:#324e61}
.public-authorization-footer{position:static;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:92px;padding:18px clamp(22px,4vw,64px);border-top:1px solid #e6edf1;color:#61798a}
.public-authorization-footer>div,.public-lock-footer>div:first-child{display:flex;flex-direction:column;gap:5px;min-width:0}
.public-authorization-footer>div>span,.public-lock-footer>div>span{font-size:12px;line-height:1.5;overflow-wrap:anywhere}
[data-platform-brand]{font-size:10px;color:#778b98}
.brand-full-client [data-platform-brand]{display:none!important}
.brand-full-client .lock-public-clock small{display:block}
.operator-drawer-toggle,.staff-unlock-toggle{margin:0;display:flex;align-items:center;justify-content:center;gap:22px;min-width:174px;min-height:52px;padding:12px 18px;border:1px solid #cddbe4;border-radius:13px;background:#fff;color:#26465d;box-shadow:none;font-size:13px;font-weight:750;cursor:pointer;touch-action:manipulation;flex-shrink:0}
.operator-drawer-toggle b{font-size:23px;font-weight:400}
.operator-drawer-toggle span{font-size:13px}
.public-authorization[data-complete=true] .operator-drawer-toggle{display:none}
dialog.operator-control-drawer{position:fixed;inset:auto 20px 20px auto;margin:0;width:min(680px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);padding:25px;border:1px solid #d7e2e9;border-radius:24px;overflow:auto;overscroll-behavior:contain;background:#fff;color:#183448;box-shadow:0 24px 90px #18344938}
dialog.operator-control-drawer:not([open]){display:none!important}
dialog.operator-control-drawer[open]{display:block}
dialog.operator-control-drawer::backdrop{background:#0b23305c;backdrop-filter:blur(3px)}
.operator-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}
.operator-drawer-head span{font-size:10px;letter-spacing:.15em;color:#637b8c}
.operator-drawer-head h3{font-size:23px;line-height:1.25;letter-spacing:-.03em;margin:5px 0 0}
.operator-drawer-close{width:46px;height:46px;flex-shrink:0;border:1px solid #dce5ec;border-radius:13px;background:#f4f7fa;color:#38546a;font-size:25px;cursor:pointer}
.operator-score-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}
.operator-score-grid>div{display:flex;flex-direction:column;gap:6px;padding:14px;background:#f6f9fb;border:1px solid #e0e8ed;border-radius:13px}
.operator-score-grid small{font-size:11px;color:#637b8c}
.operator-score-grid strong{font-size:22px;line-height:1.2;overflow-wrap:anywhere}
.operator-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.operator-summary>div{padding:12px;border:1px solid #e0e8ed;border-radius:12px}
.operator-summary span{font-size:10px;color:#637b8c}
.operator-summary b{font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.operator-note{font-size:14px;line-height:1.6;color:#61798a}
.risk-factor-list li b{font-size:12px;font-weight:500;line-height:1.5}
.risk-factor-list li span{font-size:12px}
.touch-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.touch-actions button,.operator-control-drawer .touch-primary{min-height:54px;padding:13px 17px;font-size:13px;line-height:1.4;border-radius:13px;touch-action:manipulation}
.touch-actions #recordEntryBtn{grid-column:1/-1}
.touch-actions #requestOverrideBtn{grid-column:1/-1}
.touch-actions .admit,.operator-control-drawer>.admit{background:var(--client-primary);color:#fff}
.operator-control-drawer>.admit{width:100%}
.operator-control-drawer button:disabled{opacity:.48;cursor:not-allowed}
.save-status{min-height:20px;margin:12px 0 0;font-size:13px;color:#8f3541;line-height:1.5}
.decision-reason-form{display:grid;gap:10px;border-top:1px solid #dfe7ed;margin-top:18px;padding-top:18px}
.decision-reason-form label{font-size:13px;font-weight:750}
.decision-reason-form textarea{width:100%;min-height:88px;resize:vertical;border:1px solid #cddbe4;border-radius:12px;padding:13px;font:inherit}
.decision-reason-form>div{display:flex;gap:10px;flex-wrap:wrap}
.decision-reason-form button{min-height:50px}
.public-completion{position:static;inset:auto;z-index:auto;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;min-height:430px;margin:0;border:0;border-radius:0;background:transparent;padding:40px 24px;text-align:center}
.public-completion .completion-check{display:grid;place-items:center;width:108px;height:108px;margin:0 0 22px;border-radius:34px;background:var(--decision-soft);color:var(--decision-color);font-size:51px;line-height:1;font-weight:650}
.public-completion .public-state-kicker{margin:0}
.public-completion button{min-width:204px;min-height:56px;margin-top:30px;padding:14px 22px;background:var(--client-primary);font-size:14px}
.public-completion button span{display:inline;margin:0 0 0 14px;color:inherit;font-size:18px}
.public-completion h2:focus{outline:none}
.desk-lock-overlay.public-lock-screen{position:fixed;inset:0;z-index:1000;display:block;padding:0;overflow:auto;background:#f6f9fb;backdrop-filter:none}
.public-lock-shell{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr;width:100%;min-height:100vh;min-height:100svh;border-radius:0;margin:0;background:#f7fafc;overflow:visible}
.public-lock-welcome{min-width:0;display:flex;flex-direction:column;background:radial-gradient(ellipse at 55% 48%,#fff 10%,#f3f7fa 100%)}
.public-lock-brand{display:flex;grid-column:auto;align-items:center;gap:17px;min-height:119px;padding:24px clamp(24px,5vw,72px);border-top:5px solid var(--client-primary);border-bottom:1px solid #e1e9ee}
.public-lock-brand .lock-logo{width:66px;height:66px;border-radius:19px}
.public-lock-brand>div:last-child{min-width:0;gap:4px}
.public-lock-brand span{font-size:10px;color:#60798b;letter-spacing:.15em}
.public-lock-brand .client-brand-fallback{font-size:20px;color:var(--client-primary);letter-spacing:-.04em}
.public-lock-brand strong{font-size:clamp(22px,2.6vw,32px);letter-spacing:-.035em;overflow-wrap:anywhere;color:#142c3d;line-height:1.2}
.public-lock-brand small{font-size:12px;color:#61798a}
.public-lock-message{flex:1;align-items:center;text-align:center;padding:48px 28px;background:transparent;min-height:380px}
.welcome-symbol{display:grid;place-items:center;width:90px;height:90px;border:1px solid #dde7ee;border-radius:27px;background:#fff;color:var(--client-primary);margin-bottom:27px}
.welcome-symbol svg{width:59px;height:59px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.welcome-symbol .status-review,.welcome-symbol .status-deny{display:none}
.public-lock-message>span{font-size:10px;font-weight:800;letter-spacing:.19em;color:#60798a}
.public-lock-message h2{font-size:clamp(64px,8vw,112px);font-weight:750;letter-spacing:-.065em;line-height:1;margin:13px 0 22px;color:#142c3d}
.public-lock-message p{font-size:clamp(17px,2vw,23px);max-width:700px;line-height:1.6;color:#597181;margin:0;overflow-wrap:anywhere}
.public-welcome-cues{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:32px;font-size:12px;color:#728795;line-height:1.5}
.public-welcome-cues i{font-style:normal}
.public-lock-footer{grid-column:auto;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:26px;min-height:106px;padding:22px clamp(24px,5vw,72px);border-top:1px solid #e1e9ee}
.lock-public-clock{display:flex;flex-direction:column;gap:4px;margin:0 0 0 auto;align-items:flex-end;flex-shrink:0}
.lock-public-clock strong{font-size:27px;letter-spacing:-.03em;line-height:1.2;font-variant-numeric:tabular-nums;color:#24445c}
.lock-public-clock small{font-size:10px;letter-spacing:0}
.staff-unlock-open .public-lock-shell{grid-template-columns:minmax(0,1fr) 370px}
.public-lock-unlock{display:flex;flex-direction:column;justify-content:center;position:relative;align-self:stretch;margin:0;padding:40px 30px;border:0;border-left:1px solid #dbe5ec;border-radius:0;background:#fff;min-width:0}
.public-lock-unlock>.operator-drawer-close{position:absolute;top:20px;right:20px}
.staff-panel-label{margin:25px 0 26px}
.staff-panel-label span{font-size:10px;letter-spacing:.16em;color:#637b8c;font-weight:850}
.staff-panel-label h3{font-size:29px;line-height:1.2;letter-spacing:-.035em;color:#183448;margin:9px 0 0}
.public-lock-unlock .lock-account{padding:14px;border:1px solid #e0e8ed;border-radius:14px;margin-bottom:25px;gap:12px}
.public-lock-unlock .lock-account b{font-size:13px;overflow-wrap:anywhere}
.public-lock-unlock .lock-account small{font-size:11px;color:#607889;text-transform:capitalize}
.lock-account-avatar{width:47px;height:47px;border-radius:13px;flex-shrink:0}
.lock-password-field>span{font-size:11px;color:#4c687c;letter-spacing:.05em}
.public-lock-unlock input{min-height:56px;font-size:16px;padding:14px;border:1px solid #cddbe4;border-radius:12px;background:#fff}
.public-lock-unlock .lock-enter{min-height:56px;border-radius:12px;background:var(--client-primary);font-size:14px;margin-top:14px}
.lock-signout{min-height:48px;font-size:12px}
.lock-message{display:block;min-height:22px;margin-top:10px;font-size:12px;line-height:1.5;color:#a33440}
.staff-panel-assurance{font-size:12px;line-height:1.65;color:#6c8191;padding-top:20px;border-top:1px solid #e1e9ef;margin:22px 0 0}
.public-authorization button:focus-visible,.public-lock-screen button:focus-visible,.public-lock-screen input:focus-visible,.decision-reason-form textarea:focus-visible{outline:3px solid #366dab;outline-offset:4px}
.public-lock-screen button:disabled{opacity:.55;cursor:wait}
.public-authorization .admit,.public-completion .flow-primary,.public-lock-screen .lock-enter{color:var(--client-on-primary,#fff)}
.client-brand-fallback,.welcome-symbol{color:color-mix(in srgb,var(--client-primary) 35%,#142c3d)}
.is-hidden{display:none!important}
@media(max-width:900px){
 .staff-unlock-open .public-lock-shell{grid-template-columns:1fr}
 .staff-unlock-open .public-lock-unlock{position:fixed;z-index:1;inset:auto 16px 16px auto;width:min(380px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #d7e2e9;border-radius:22px;box-shadow:0 16px 80px #17384a40;padding:42px 24px 24px}
 .public-lock-footer{gap:18px}
 .public-lock-footer>div:first-child{max-width:42%}
}
@media(max-width:600px){
 .public-authorization-brand{min-height:99px;padding:18px;gap:12px}
 .client-brand-logo{width:53px;height:53px;border-radius:16px}
 .public-brand-copy strong{font-size:21px}
 .public-auth-clock{display:none}
 .public-decision-center{min-height:390px;padding:30px 20px}
 .public-decision-aura{width:98px;height:98px;border-radius:30px;margin-bottom:21px}
 .public-decision-icon svg{width:62px;height:62px}
 .public-decision-center h2,.public-completion h2{font-size:clamp(35px,10vw,52px)}
 .public-next-step{font-size:13px;padding:12px 14px;margin-top:22px}
 .public-authorization-footer{padding:16px 18px;gap:16px;flex-wrap:wrap}
 .public-authorization-footer>div{flex:1;min-width:140px}
 .operator-drawer-toggle{min-width:148px;gap:13px}
 dialog.operator-control-drawer{inset:auto 10px 10px auto;width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:19px;border-radius:20px}
 .operator-score-grid{gap:6px}.operator-score-grid>div{padding:10px}.operator-score-grid strong{font-size:18px}
 .operator-summary{grid-template-columns:1fr}.operator-drawer-head h3{font-size:21px}
 .public-lock-brand{min-height:112px;padding:20px;gap:12px}
 .public-lock-brand .lock-logo{width:57px;height:57px}
 .public-lock-brand strong{font-size:23px}
 .public-lock-message{min-height:350px;padding:38px 23px}
 .public-lock-message h2{font-size:72px}
 .public-welcome-cues{flex-direction:column;gap:5px;margin-top:25px}.public-welcome-cues i{display:none}
 .public-lock-footer{flex-wrap:wrap;padding:20px;gap:15px}
 .public-lock-footer>div:first-child{max-width:none;flex:1}
 .public-lock-footer .staff-unlock-toggle{width:100%}
 .lock-public-clock strong{font-size:24px}
}
@media(max-height:690px) and (min-width:901px){
 .public-authorization-brand{min-height:96px;padding-top:17px;padding-bottom:17px}
 .public-decision-center,.public-completion{min-height:340px;padding-top:24px;padding-bottom:24px}
 .public-decision-aura{width:90px;height:90px;border-radius:28px;margin-bottom:16px}
 .public-decision-icon svg{width:60px;height:60px}
 .public-decision-center h2,.public-completion h2{font-size:54px}
 .public-next-step{margin-top:18px}.public-authorization-footer{min-height:82px;padding-top:14px;padding-bottom:14px}
 .public-lock-message{min-height:330px;padding-top:25px;padding-bottom:25px}
 .public-lock-message h2{font-size:76px}.welcome-symbol{width:72px;height:72px;margin-bottom:20px}
}
@media(prefers-reduced-motion:reduce){
 .public-authorization *,.public-lock-screen *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
