.public-portal,.auth-page,.workspace{min-height:100vh}.public-portal{background:radial-gradient(circle at 85% 5%,#bbe7ee,transparent 25%),#f5f8fa;color:#102a43;padding:20px clamp(20px,5vw,72px) 56px}.public-portal__header,.workspace__header{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1180px}.public-portal__brand{color:inherit;font-size:1.05rem;font-weight:800;text-decoration:none}.public-portal__hero{align-items:center;display:grid;gap:46px;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);margin:clamp(58px,11vw,140px) auto 82px;max-width:1180px}.eyebrow{color:#007b8b;font-size:.76rem;font-weight:800;letter-spacing:.1em;margin:0 0 12px;text-transform:uppercase}h1,h2,p{margin-top:0}.public-portal h1,.auth-card h1,.workspace h1{font-size:clamp(2.2rem,5vw,4.5rem);letter-spacing:-.055em;line-height:.98;margin-bottom:22px;max-width:750px}.auth-card h1{font-size:clamp(2rem,4vw,3.2rem)}.workspace h1{font-size:clamp(2rem,4vw,3.5rem)}.lead{color:#486581;font-size:1.1rem;line-height:1.65;max-width:620px}.button{background:#007b8b;border:1px solid #007b8b;border-radius:9px;color:#fff;cursor:pointer;font-weight:750;margin-top:10px;padding:12px 18px}.button:disabled{cursor:wait;opacity:.65}.button--quiet{background:transparent;color:#007b8b;margin:0}.button--wide{width:100%}.public-portal__visual{background:linear-gradient(145deg,#103c54,#075e73);border-radius:24px;height:330px;overflow:hidden;position:relative}.visual-card{border:1px solid rgba(255,255,255,.35);border-radius:14px;position:absolute}.visual-card--route{background:linear-gradient(120deg,transparent 46%,#36dfd0 47% 51%,transparent 52%);height:250px;inset:36px}.visual-card--truck{background:#ffffff29;color:#4ff0df;font-size:4rem;left:33%;padding:16px;top:42%}.visual-card--signal{background:#ffb84d;color:#ffb84d;height:16px;right:18%;top:24%;width:16px}.public-portal__updates{display:grid;gap:18px;grid-template-columns:repeat(2,1fr);margin:0 auto;max-width:1180px}.public-portal__updates article{background:#fff;border:1px solid #dce8ef;border-radius:18px;min-height:180px;padding:26px}.public-portal__updates h2{font-size:1.25rem}.public-portal__updates p:not(.eyebrow){color:#627d98;line-height:1.55}.auth-page{background:#f4f8fa;display:grid;grid-template-columns:minmax(300px,.85fr) minmax(420px,1fr)}.auth-page__aside{background:linear-gradient(145deg,#063c52,#087c8c);color:#fff;padding:clamp(40px,8vw,120px)}.auth-page__aside .eyebrow{color:#93f7eb}.auth-page__aside h1{font-size:clamp(2.4rem,5vw,4rem);letter-spacing:-.045em;line-height:1}.auth-page__aside p:not(.eyebrow){line-height:1.6;max-width:460px}.auth-card{align-self:center;background:#fff;border:1px solid #dce8ef;border-radius:18px;box-shadow:0 24px 60px #102a431f;margin:clamp(28px,8vw,120px);max-width:560px;padding:clamp(28px,5vw,52px)}.auth-card>p{color:#627d98;line-height:1.55}.text-button{background:none;border:0;color:#007b8b;cursor:pointer;font-weight:700;margin-bottom:32px;padding:0}.field{display:block;font-weight:700;margin:20px 0}.field span{display:block;font-size:.9rem;margin-bottom:7px}.field input{border:1px solid #b7c9d6;border-radius:8px;padding:12px;width:100%}.field input:focus{border-color:#007b8b;outline:3px solid rgba(0,123,139,.14)}.form-hint{color:#627d98;font-size:.85rem;line-height:1.45}.form-error{background:#fff1f1;border:1px solid #f5b8b8;border-radius:8px;color:#9b1c1c;font-size:.9rem;padding:10px 12px}.workspace{background:#f5f8fa;color:#102a43}.workspace__header{padding:20px clamp(20px,5vw,72px)}.workspace__header>span{font-weight:800}.workspace__content{margin:clamp(70px,12vw,150px) auto;max-width:950px;padding:0 24px}.workspace__role{color:#007b8b;font-weight:800}@media(max-width:760px){.public-portal__hero,.auth-page{grid-template-columns:1fr}.public-portal__hero{margin-top:72px}.public-portal__visual{height:250px}.public-portal__updates{grid-template-columns:1fr}.auth-page__aside{min-height:270px}.auth-card{margin:-26px 20px 40px}.auth-page__aside h1{font-size:2.5rem}}:root{color:#102a43;background:#edf3f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}
