/* Login-only layout. Existing registration and password recovery stay unchanged. */
.public-app .p-role-login{display:grid;grid-template-columns:minmax(0,43%) minmax(0,57%);min-height:780px;background:#fff;color:#21342e}
.p-role-login-main{padding:28px clamp(24px,4.7vw,72px) 42px;min-width:0}
.p-role-login-back{display:inline-flex;align-items:center;font-size:12px;color:#6d7670;font-weight:600;line-height:1.5}
.p-role-login-back:hover{color:#143f33}
.p-role-login-inner{max-width:420px;margin:29px auto 0}
.p-role-login-brand{display:flex;align-items:center;gap:11px;margin-bottom:30px}
.p-role-login-brand>span{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:#c86652;color:white;font-size:22px;font-weight:850}
.p-role-login-brand b{display:block;font-size:19px;letter-spacing:-.5px;line-height:1.2}
.p-role-login-brand small{display:block;margin-top:4px;font-size:10px;color:#8d9187}
.p-role-login-eyebrow{margin:0 0 13px;font-size:10px;letter-spacing:2px;font-weight:700;color:#a46555}
.p-role-login-inner>h1{font-size:clamp(27px,2.6vw,38px);line-height:1.26;font-weight:850;letter-spacing:-1.5px;margin:0;word-break:keep-all}
.p-role-login-description{font-size:12px;line-height:1.8;color:#81867d;margin:13px 0 23px;word-break:keep-all}
.p-role-login-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;background:#f0eee7;border-radius:11px;font-size:12px;text-align:center}
.p-role-login-tabs>*{padding:9px;border-radius:8px;color:#85877e;font-weight:650}
.p-role-login-tabs>[aria-current]{background:white;color:#273930;box-shadow:0 1px 4px #28382b0c}
.p-role-login-form{margin-top:20px}
.p-role-login-form>label{display:block;color:#36453e;font-size:12px;font-weight:650;margin-bottom:15px}
.p-role-login-form input:not([type=checkbox]){display:block;width:100%;height:44px;min-height:44px;border:1px solid #d9dcd7;border-radius:9px;background:#fff;padding:10px 12px;margin-top:6px;font-size:13px;color:#26382f;box-shadow:0 1px 2px #15362603}
.p-role-login-form input:focus{border-color:#6c9e8b;outline:3px solid #dcebe4}
.p-role-login-help{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:#92978f;font-size:10px;margin:-2px 0 12px}
.p-role-login-help>a{color:#62786c}
.p-role-login-help>a:hover{text-decoration:underline}
.p-role-login-error{font-size:12px;line-height:1.6;color:#b63b33}
.p-role-login-error:empty{display:none}
.p-role-login-form>.p-btn{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:47px;background:#183f33;border:1px solid #183f33;border-radius:10px;color:#fff;font-size:13px;font-weight:700;box-shadow:0 5px 12px #133b2d10}
.p-role-login-form>.p-btn:hover{background:#245542;border-color:#245542}
.p-role-login-form>.p-btn:disabled{opacity:.65;cursor:wait}
.p-role-demo{border-top:1px solid #e6e8e1;margin-top:22px;padding-top:18px}
.p-role-demo>h2{font-size:12px;line-height:1.5;font-weight:750;margin:0;color:#38483f}
.p-role-demo>p:not(.p-role-demo-notice){font-size:10px;line-height:1.65;color:#8b9187;margin:4px 0 0;word-break:keep-all}
.p-role-demo-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
.p-role-demo-card{display:flex;align-items:flex-start;position:relative;gap:9px;min-width:0;min-height:86px;background:#fff;border:1px solid #dce0d8;border-radius:11px;padding:12px 10px;text-align:left;color:#46544a;cursor:pointer;transition:border-color .15s,background-color .15s,box-shadow .15s}
.p-role-demo-card:last-child{grid-column:1 / -1;min-height:73px}
.p-role-demo-card:hover{background:#f6f8f3;border-color:#90ad9b}
.p-role-demo-card:focus-visible,.p-role-login a:focus-visible,.p-role-login button:focus-visible{outline:3px solid #8fbba5;outline-offset:3px}
.p-role-demo-card[aria-pressed="true"]{border-color:#ca7865;background:#fff4ed;box-shadow:0 0 0 2px #ca786512}
.p-role-demo-initial{flex:0 0 32px;display:grid;place-items:center;width:32px;height:34px;border-radius:9px;background:#f1f2ec;color:#858b7d;font-size:12px;font-weight:750}
.p-role-demo-card[aria-pressed="true"] .p-role-demo-initial{background:#cb725e;color:white}
.p-role-demo-copy{display:flex;flex-direction:column;gap:3px;min-width:0;padding-right:6px}
.p-role-demo-copy strong{font-size:12px;font-weight:750;line-height:1.3}
.p-role-demo-copy>span{font-size:9px;font-weight:600;color:#7a8277;overflow-wrap:anywhere}
.p-role-demo-copy small{font-size:9px;line-height:1.5;color:#92978d;word-break:keep-all}
.p-role-demo-check{position:absolute;right:7px;top:8px;opacity:0;color:#a35f4d;font-size:10px}
.p-role-demo-card[aria-pressed="true"] .p-role-demo-check{opacity:1}
.p-role-demo-card:disabled{opacity:.6;cursor:wait}
.p-role-demo .p-role-demo-status{min-height:17px;color:#825747!important;margin-top:8px!important}
.p-role-demo .p-role-demo-notice{background:#f7f2df;border-radius:9px;padding:11px 12px;margin:10px 0 0;color:#8c8059;font-size:10px;line-height:1.75;word-break:keep-all}
.p-role-demo-notice>b{display:block;color:#7f714b;margin-bottom:2px}
.p-role-login-intro{display:flex;align-items:center;padding:60px clamp(32px,5.6vw,86px);background:#303b31;color:#fff;min-width:0}
.p-role-login-intro>div{width:100%;max-width:550px;margin:auto}
.p-role-login-intro .p-role-login-eyebrow{display:block;color:#969d87;font-size:10px;letter-spacing:1.8px;font-weight:500;margin-bottom:22px}
.p-role-login-intro h2{font-size:clamp(35px,3.7vw,54px);font-weight:800;letter-spacing:-2px;line-height:1.27;color:#fcfcf5;margin:0 0 23px;word-break:keep-all}
.p-role-login-intro>div>p{font-size:13px;line-height:1.9;color:#a0a797;margin:0;word-break:keep-all}
.p-role-login-steps{list-style:none;padding:0;margin:38px 0 25px;display:grid;gap:12px}
.p-role-login-steps>li{display:grid;grid-template-columns:22px 75px minmax(0,1fr);gap:9px;align-items:center;border:1px solid #ffffff18;border-radius:12px;padding:18px 16px;background:#ffffff02}
.p-role-login-steps>li>span{font-size:10px;color:#c48e77}
.p-role-login-steps b{font-size:12px;color:#d0b59b;font-weight:650}
.p-role-login-steps p{font-size:11px;color:#a3aa99;line-height:1.6;margin:0;word-break:keep-all}
.p-role-login-intro>div>small{font-size:10px;color:#8c9785;line-height:1.6}
@media(max-width:1000px){.public-app .p-role-login{grid-template-columns:minmax(0,48%) minmax(0,52%)}.p-role-login-main{padding:25px 26px 35px}.p-role-login-intro{padding:45px 32px}.p-role-login-intro h2{font-size:37px}.p-role-login-steps>li{grid-template-columns:19px 60px minmax(0,1fr);padding:14px 12px;gap:6px}}
@media(max-width:760px){.public-app .p-role-login{grid-template-columns:1fr;min-height:0}.p-role-login-main{padding:23px 22px 33px}.p-role-login-inner{max-width:430px;margin-top:28px}.p-role-login-brand{margin-bottom:27px}.p-role-login-inner>h1{font-size:32px}.p-role-login-intro{padding:40px 28px}.p-role-login-intro>div{max-width:430px}.p-role-login-intro h2{font-size:32px;letter-spacing:-1.2px}.p-role-login-steps{margin:28px 0 20px}.p-role-login-steps>li{padding:16px 13px;grid-template-columns:22px 67px minmax(0,1fr)}}
@media(max-width:380px){.p-role-login-main{padding-left:16px;padding-right:16px}.p-role-login-inner>h1{font-size:29px}.p-role-demo-cards{grid-template-columns:1fr}.p-role-demo-card:last-child{grid-column:auto}.p-role-demo-card{min-height:73px}.p-role-login-intro{padding-left:22px;padding-right:22px}}
@media(prefers-reduced-motion:reduce){.p-role-demo-card{transition:none}}
