:root{--accent:#0756bf;--surface:#fff;--line:#dae4eb;--muted:#4d6475;background:#edf2f5;color:#112c40;font-family:Tahoma,Arial,sans-serif}.topbar{max-width:1100px;margin:auto;background:transparent;border:0}.brand img{width:48px;height:48px}.brand span{font-size:12px}.login-shell{display:grid;grid-template-columns:1fr 1.15fr;gap:18px;max-width:1060px;margin:32px auto}.login-hero{background:#081d31;color:#fff;border-radius:20px;padding:40px;display:flex;flex-direction:column;justify-content:center;min-height:390px}.login-hero img{width:84px}.login-hero p{color:#c0d8e8}.login-shell .login-card{margin:0;max-width:none;width:100%;padding:32px;border-radius:20px}.login-hero h2{font-size:32px}.authenticated #sidebar{display:none!important}.authenticated main{margin:0 auto!important;max-width:1100px;padding:0 22px 30px}.authenticated .topbar{margin:0 auto!important}.role-menu{display:flex;gap:8px;overflow:auto;flex-wrap:nowrap;margin:18px 0;border:0}.role-menu button{white-space:nowrap;background:var(--surface);color:var(--accent);border:1px solid var(--line)}.role-menu button[aria-current=true]{background:var(--accent);color:#fff}.spatial-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:18px;margin:20px 0}.internal-map{background:#e0ebe2;border:1px solid #bdcbd6;border-radius:20px;overflow:hidden;min-height:280px}.internal-map svg{display:block;width:100%;height:320px}.internal-map svg path{fill:none;stroke:#0756bf;stroke-width:4}.internal-map svg polygon{fill:#eeac9d;stroke:#a32a2a}.internal-map svg circle{fill:#0756bf;stroke:white;stroke-width:3}.internal-map svg text{font:14px Tahoma;fill:#112c40}.map-notice{padding:12px;background:var(--surface);margin:0}.map-controls{display:flex;gap:8px;padding:10px;flex-wrap:wrap}.map-controls button{font-size:12px}.spatial-import textarea{width:100%;min-height:160px;direction:ltr}.dark{--surface:#112b43;--line:#35536b;--muted:#bad0df;background:#081d31;color:#edf2f5}.dark .login-hero{background:#041323}.dark .topbar{background:transparent}.dark .internal-map{background:#b9ccc1}.route-card{display:none}.summary-grid{margin-top:20px}.panel-account{padding:20px;background:var(--surface);border-radius:20px}.card{border-radius:20px}section{scroll-margin-top:12px}@media(max-width:700px){.login-shell,.spatial-layout{grid-template-columns:1fr}.login-shell{margin:12px auto}.login-hero{min-height:180px;padding:20px}.login-hero img{width:54px}.login-hero h2{font-size:24px}.authenticated main{padding:0 12px 24px}.topbar{padding:12px}.login-shell .login-card{padding:20px}.summary-grid{grid-template-columns:1fr 1fr}.role-menu{padding-bottom:8px}.internal-map svg{height:280px}}
:root .spatial-import{grid-column:1/-1}
:root .authenticated .role-menu{display:flex!important}

.spatial-layout{align-items:start}#trip-section>.wide{grid-column:1/-1}
