/* Shared registration profile selector, scoped to the choice view only. */
#register-modal .register-content:has(#register-profile-view:not(.hidden)) {width:min(640px,calc(100vw - 32px));padding:34px;border:1px solid #e3eaf4;border-radius:22px;background:#fff;box-shadow:0 28px 90px #081d3726}
#register-modal #register-profile-view .register-header{text-align:left;padding:0 38px 0 0;margin:0 0 26px}#register-modal #register-profile-view .register-profile-logo{display:block;width:132px;height:56px;object-fit:contain;object-position:left center;margin:0 0 20px}#register-modal .register-profile-kicker{display:block;color:#8192ad;font:650 9px/1.5 Inter,Arial,sans-serif;letter-spacing:.14em}#register-modal #register-profile-view h2{color:#122440;font-size:clamp(23px,3.6vw,30px);font-weight:650;line-height:1.2;letter-spacing:-.04em;margin:9px 0 12px;max-width:450px}#register-modal #register-profile-view .register-header p{font-size:13px;color:#7b8ca5;line-height:1.6;margin:0}#register-modal #register-profile-view .register-options{display:grid;grid-template-columns:1fr;gap:12px}#register-modal #register-profile-view .register-options .register-card{display:flex;flex-direction:row;align-items:center;gap:16px;width:100%;min-height:90px;padding:18px;border:1px solid #e4eaf3;border-radius:12px;background:#fff;box-shadow:none;transform:none;text-align:left;cursor:pointer;transition:border-color .15s,background .15s}#register-modal #register-profile-view .register-options .register-card:hover{border-color:#9bbaff;background:#f8faff;transform:none;box-shadow:none}#register-modal .register-profile-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:11px;background:#eef4ff;color:#2462e6}#register-modal .register-profile-icon svg{display:block;width:24px;height:24px}#register-modal #register-profile-view .register-info{flex:1;min-width:0;width:auto;text-align:left}#register-modal #register-profile-view .register-info strong{display:block;font-size:15px;font-weight:600;line-height:1.5;color:#243b5c}#register-modal #register-profile-view .register-info small{display:block;margin-top:4px;font-size:11px;font-weight:400;line-height:1.7;color:#8291a7}#register-modal .register-profile-arrow{flex:0 0 auto;font-size:18px;font-weight:400;color:#9bacc5}#register-modal .register-choice-footer{margin-top:24px;padding-top:18px;border-top:1px solid #edf1f6;text-align:center}#register-modal #register-profile-view .register-internal-access{display:inline-block;width:auto;min-height:36px;margin:0;padding:7px 4px;border:0;border-radius:5px;background:transparent;box-shadow:none;color:#8190a6;font:400 11px/1.6 Inter,Arial,sans-serif;cursor:pointer;transform:none}#register-modal #register-profile-view .register-internal-access:hover{color:#265ac0;background:transparent;box-shadow:none;transform:none}#register-modal .register-choice-footer p{margin:10px 0 0;color:#8b98ab;font-size:12px;line-height:1.5}#register-modal [data-choice-login]{border:0;border-radius:4px;background:transparent;padding:6px 3px;color:#245deb;font:600 12px Inter,Arial,sans-serif;cursor:pointer}#register-modal #register-profile-view button:focus-visible{outline:2px solid #2664ee;outline-offset:3px}#register-modal .close-register{display:grid;place-items:center;width:36px;height:36px;top:18px;right:18px;border:1px solid #e8edf4;background:#f8fafc;color:#6b7e98;border-radius:10px;font-size:18px;box-shadow:none}@media(max-width:550px){#register-modal .register-content:has(#register-profile-view:not(.hidden)) {width:calc(100vw - 24px);padding:24px 20px;border-radius:18px}#register-modal #register-profile-view .register-header{padding-right:18px;margin-bottom:22px}#register-modal #register-profile-view .register-profile-logo{width:120px;height:51px;margin-bottom:18px}#register-modal #register-profile-view .register-options .register-card{padding:14px 12px;gap:12px;min-height:94px}#register-modal .register-profile-icon{width:40px;height:40px;flex-basis:40px}#register-modal #register-profile-view .register-info strong{font-size:14px}#register-modal #register-profile-view .register-info small{font-size:11px}#register-modal .register-profile-arrow{font-size:16px}#register-modal .register-choice-footer{margin-top:20px;padding-top:14px}#register-modal .close-register{top:12px;right:12px}}@media(prefers-reduced-motion:reduce){#register-modal #register-profile-view .register-card{transition:none}}

/* Compact, colorful profile choice; registration forms retain their own layout. */
#register-modal .register-content:has(#register-profile-view:not(.hidden)){width:min(520px,calc(100vw - 32px));padding:26px 28px;background:linear-gradient(155deg,#f6f9ff,#fff 45%);max-height:calc(100dvh - 32px);overflow-y:auto}
#register-modal #register-profile-view .register-header{margin-bottom:20px;padding-right:22px}
#register-modal #register-profile-view .register-profile-logo{width:116px;height:48px;margin-bottom:12px}
#register-modal #register-profile-view h2{font-size:26px;line-height:1.2;margin:8px 0 10px;letter-spacing:-.035em}
#register-modal .register-profile-kicker{color:#536b92}
#register-modal #register-profile-view .register-header p{color:#61748e}
#register-modal #register-profile-view .register-options{gap:10px}
#register-modal #register-profile-view .register-options .register-card{--profile-color:#245bd4;--profile-bg:#edf4ff;--profile-border:#cbdcfa;min-height:86px;padding:15px;gap:13px;border:1px solid var(--profile-border);border-radius:14px;background:linear-gradient(120deg,var(--profile-bg),#fff);transition:transform .18s,box-shadow .18s,border-color .18s}
#register-modal #register-profile-view .register-options .register-profile-carrier{--profile-color:#7540b9;--profile-bg:#f5eeff;--profile-border:#e1d2f6}
#register-modal #register-profile-view .register-options .register-profile-driver{--profile-color:#08764f;--profile-bg:#eaf9f1;--profile-border:#bee6d2}
#register-modal .register-profile-icon{width:46px;height:46px;flex-basis:46px;background:var(--profile-color);color:#fff;border-radius:13px}
#register-modal .register-profile-icon svg{width:26px;height:26px}
#register-modal #register-profile-view .register-info strong{font-size:15px;color:#1e3656}
#register-modal #register-profile-view .register-info small{color:#53677e;font-size:12px;line-height:1.5}
#register-modal .register-profile-arrow{color:var(--profile-color);transition:transform .18s}
#register-modal #register-profile-view .register-options .register-card:is(:hover,:focus-visible){border-color:var(--profile-color);background:var(--profile-bg);transform:translateY(-2px);box-shadow:0 6px 16px #18345a12}
#register-modal #register-profile-view .register-options .register-card:is(:hover,:focus-visible) .register-profile-arrow{transform:translate(2px,-2px)}
#register-modal #register-profile-view .register-options .register-card:active{transform:translateY(0);box-shadow:none}
#register-modal .register-choice-footer{margin-top:16px;padding-top:10px}
#register-modal .register-choice-footer p{margin-top:3px;color:#61748e}
#register-modal #register-profile-view .register-internal-access{color:#61748e;min-height:32px;font-size:11px}
@media(max-width:550px){#register-modal .register-content:has(#register-profile-view:not(.hidden)){width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:22px 18px}#register-modal #register-profile-view h2{font-size:24px}#register-modal #register-profile-view .register-options .register-card{padding:13px 12px;gap:11px}#register-modal .register-profile-icon{width:42px;height:42px;flex-basis:42px}#register-modal #register-profile-view .register-info strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){#register-modal #register-profile-view .register-options .register-card,#register-modal .register-profile-arrow{transition:none}#register-modal #register-profile-view .register-options .register-card:is(:hover,:focus-visible),#register-modal #register-profile-view .register-options .register-card:is(:hover,:focus-visible) .register-profile-arrow{transform:none}}

/* Shared public login, matching the profile selector. */
#login-modal .login-content{box-sizing:border-box;width:min(460px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:28px;border:1px solid #e3eaf4;border-radius:22px;background:linear-gradient(155deg,#f2f6ff,#fff 48%);box-shadow:0 28px 90px #081d3726}
#login-modal .login-header{text-align:left;margin:0 0 24px;padding:0 18px 0 0}
#login-modal .login-brand-logo{display:block;width:116px;height:48px;object-fit:contain;object-position:left center;margin:0 0 12px}
#login-modal .login-brand-kicker{display:block;color:#536b92;font:650 9px/1.5 Inter,Arial,sans-serif;letter-spacing:.14em}
#login-modal .login-header h2{margin:8px 0 10px;font-size:26px;line-height:1.2;letter-spacing:-.035em;color:#122440;font-weight:700}
#login-modal .login-header p{margin:0;font-size:13px;line-height:1.6;color:#61748e}
#login-modal .close-login{display:grid;place-items:center;position:absolute;top:18px;right:18px;width:36px;height:36px;padding:0;border:1px solid #e3eaf4;border-radius:10px;background:#f8fafc;color:#61748e;font-size:24px;line-height:1;cursor:pointer}
#login-modal .close-login:hover{background:#eaf1ff;color:#245bd4}
#login-modal .login-form{display:grid;gap:16px}
#login-modal .login-form label{display:grid;gap:7px;margin:0;color:#243b5c;font-size:13px;font-weight:650}
#login-modal .login-form input{box-sizing:border-box;min-width:0;width:100%;height:50px;margin:0;padding:12px 14px;border:1px solid #cfddf5;border-radius:12px;background:#f8faff;color:#203653;font-size:16px;line-height:1.4;transition:border-color .15s,box-shadow .15s}
#login-modal .login-form input:focus{outline:none;border-color:#2462e6;box-shadow:0 0 0 3px #2462e61a;background:#fff}
#login-modal .login-message:empty{display:none}
#login-modal .login-message{margin:0;line-height:1.5}
#login-modal .login-submit{width:100%;min-height:50px;margin:4px 0 0;padding:13px 18px;border:0;border-radius:12px;background:linear-gradient(110deg,#2863ec,#104df2);color:white;font-size:15px;font-weight:700;box-shadow:0 7px 18px #245bd425;cursor:pointer}
#login-modal .login-submit:hover{background:linear-gradient(110deg,#1e54d3,#1243cf)}
#login-modal .login-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:20px;padding-top:14px;border-top:1px solid #e5ecf7}
#login-modal .login-footer button{border:0;background:transparent;padding:6px 0;color:#245bd4;font-size:12px;font-weight:600;cursor:pointer}
#login-modal button:focus-visible{outline:2px solid #2462e6;outline-offset:3px}
@media(max-width:550px){#login-modal .login-content{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:24px 20px;border-radius:18px}#login-modal .login-header h2{font-size:24px}#login-modal .close-login{top:12px;right:12px}}
@media(prefers-reduced-motion:reduce){#login-modal .login-form input{transition:none}}
