:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#13263d;background:#f4f6f5;font-size:16px}*{box-sizing:border-box}body{margin:0}a{color:#1e3a5f;text-underline-offset:3px}button,input{font:inherit}button,.rider-nav a{min-height:44px}button{background:#1e3a5f;color:white;border:1px solid #1e3a5f;border-radius:10px;padding:12px 18px;font-weight:600;cursor:pointer}input{width:100%;min-height:48px;border:1px solid #c9d2cc;border-radius:10px;padding:10px 12px;color:#13263d;background:white}label{display:block;font-size:14px;font-weight:600;margin:16px 0 6px}:focus-visible{outline:3px solid #6b8e23;outline-offset:3px}.portal-login{min-height:100svh;display:grid;place-items:center;padding:24px}.login-card{width:100%;max-width:440px;background:white;border:1px solid #e2e7e4;border-radius:16px;padding:32px;box-shadow:0 8px 32px #13263d08}.portal-brand{display:flex;align-items:center;gap:12px}.portal-brand strong{overflow-wrap:anywhere}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:1px;margin-top:32px;color:#5c6b7a}h1{font-size:28px;line-height:1.2;margin:10px 0}p{line-height:1.6;color:#3b4b5e}.login-card form button{width:100%;margin-top:24px;min-height:48px}.help,.powered{font-size:13px}.powered{margin-bottom:0;color:#5c6b7a}.powered strong{color:#00816d}.login-card nav{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid #e2e7e4;padding-top:16px}.login-card nav a{display:flex;align-items:center;min-height:44px;padding:8px 12px;border-radius:8px}.login-card nav a[aria-current]{background:#e7edf5;font-weight:600}.error,.notice{padding:12px;border-radius:10px}.error{background:#fbe5e0;color:#8f2a16}.notice{background:#e7edf5}.rider-shell{max-width:1040px;margin:auto;padding:24px}.rider-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:#fff;border:1px solid #e2e7e4;border-radius:14px;padding:20px;margin-bottom:24px}.rider-nav{display:flex;gap:12px;align-items:center}.rider-nav a{display:flex;align-items:center;padding:8px 12px;border-radius:8px}.rider-nav a[aria-current]{background:#e7edf5;font-weight:600}.rider-identity{font-size:14px;margin:8px 0 0}.rider-shell h1{margin:0 0 8px}.rider-shell .card{background:white;border:1px solid #e2e7e4;border-radius:14px;padding:20px;margin:16px 0}.rider-shell .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #c9d2cc;border-radius:10px;text-decoration:none;font-weight:600}.rider-shell .btn-primary{background:#1e3a5f;color:white}.rider-shell .btn-outline{background:white;color:#1e3a5f}.rider-shell select{font:inherit;min-height:44px;max-width:100%;padding:8px}.rider-shell pre{font-family:inherit;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.rider-shell .chip{display:inline-block;background:#e7edf5;padding:4px 10px;border-radius:8px}.rider-shell form{margin:12px 0}.rider-shell h2,.rider-shell h3{overflow-wrap:anywhere}@media(max-width:520px){.portal-login{padding:16px}.login-card{padding:24px}.rider-shell{padding:12px}.rider-header{padding:16px}.rider-shell .card{padding:16px}.rider-shell .run-stop{display:block}.rider-shell .run-description{font-size:15px}}
.pw-field{position:relative}
.pw-field input{padding-right:52px}
.login-card form .pw-toggle{position:absolute;top:0;right:0;width:48px;height:48px;min-height:48px;margin:0;padding:0;display:grid;place-items:center;background:none;border:0;border-radius:0 10px 10px 0;color:#5b6b7d}
.login-card form .pw-toggle:hover,.login-card form .pw-toggle.on{background:none;color:#1e3a5f}
.pw-toggle .eye-off{display:none}
.pw-toggle.on .eye{display:none}
.pw-toggle.on .eye-off{display:block}
