/* Only the added access screens use these rules. Business screens keep source CSS. */
body.rp-auth{margin:0;min-height:100svh;padding:32px 20px;background:var(--bg);color:var(--ink);font:15px/1.5 var(--body,system-ui);display:grid;place-items:center}
.rp-auth main{width:min(100%,520px);min-width:0;padding:0}
.rp-auth .hm-head,.rp-admin .hm-head{display:flex;align-items:center;gap:18px;padding:18px 20px;margin:0 0 24px;border-radius:16px;background:var(--surface,var(--bg));box-shadow:var(--sh-sm,0 3px 16px #10233a12)}
.rp-auth .hm-logo,.rp-admin .hm-logo{display:block;width:88px;height:64px;max-width:28%;object-fit:contain;flex:none}
.rp-auth .hm-head>div,.rp-admin .hm-head>div{min-width:0}
.rp-auth .hm-app,.rp-admin .hm-app{display:block;font:700 20px/1.25 var(--display,system-ui);color:var(--accentText,var(--ink));overflow-wrap:anywhere}
.rp-auth .hm-sub,.rp-admin .hm-sub{display:block;margin-top:5px;font-size:12px;line-height:1.5;color:var(--muted)}
.rp-auth .grp{margin:0;padding:28px;border:1px solid var(--rule);border-radius:18px;background:var(--surface,var(--bg));box-shadow:var(--sh-out,0 8px 30px #10233a12)}
.rp-auth h1{margin:0 0 12px;font:700 28px/1.2 var(--display,system-ui);color:var(--accentText,var(--ink))}
.rp-auth p{margin:12px 0;color:var(--muted);line-height:1.6}
.rp-auth label,.rp-admin label{display:block;color:var(--ink);font-weight:600;line-height:1.5}
.rp-auth label{margin:20px 0}
.rp-auth input,.rp-admin input:not([type=checkbox]):not([type=radio]),.rp-admin select{box-sizing:border-box;display:block;width:100%;min-width:0;min-height:46px;margin-top:7px;padding:11px 12px;border:1.5px solid color-mix(in srgb,var(--ink) 60%,var(--bg))!important;border-radius:10px;background:var(--field,var(--surface2));color:var(--ink);font:inherit;line-height:1.4;box-shadow:var(--sh-in,inset 0 1px 3px #10233a0c);opacity:1}
.rp-auth input:focus-visible,.rp-admin input:focus-visible,.rp-admin select:focus-visible{outline:3px solid var(--accentText);outline-offset:3px;border-color:var(--accentText)}
.rp-auth .btn,.rp-admin .btn{box-sizing:border-box;display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:11px 16px;border:1px solid var(--rule);border-radius:10px;background:var(--surface,var(--bg));color:var(--ink);font:600 14px/1.4 var(--body,system-ui);text-decoration:none;cursor:pointer;box-shadow:var(--sh-sm,0 2px 6px #10233a12)}
.rp-auth .btn.pri,.rp-admin .btn.pri{background:var(--btnBg,var(--blue));color:var(--blueInk,#fff);border-color:var(--btnBg,var(--blue))}
.rp-auth .primary{display:flex;width:100%;margin-top:22px}
.rp-auth .btn:focus-visible,.rp-admin .btn:focus-visible{outline:3px solid var(--accentText);outline-offset:3px}
.rp-auth button:disabled{opacity:.6;cursor:wait}
.rp-auth #error{color:var(--bad);font-weight:600}
.rp-auth #error:empty{display:none}
.rp-auth small{display:block;margin-top:22px;color:var(--muted);font-size:12px;line-height:1.6}
.rp-auth [hidden],.rp-admin [hidden]{display:none!important}
.rp-admin .grp{background:var(--surface,var(--bg));border:1px solid var(--rule);border-radius:16px;box-shadow:var(--sh-out,0 3px 16px #10233a12)}
.rp-admin .bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.rp-admin .hm-app{font-size:22px}
@media(max-width:480px){body.rp-auth{padding:20px 16px}.rp-auth .hm-head{padding:14px;gap:12px;margin-bottom:20px}.rp-auth .hm-logo{width:70px;height:54px}.rp-auth .hm-app{font-size:17px}.rp-auth .grp{padding:22px 18px}.rp-auth h1{font-size:25px}.rp-admin .hm-head{padding:14px;gap:12px}.rp-admin .hm-logo{width:64px;height:50px}.rp-admin .hm-app{font-size:18px}}
