.login-page{place-items:center;min-height:100dvh;padding:24px;display:grid}.login-shell{border:1px solid var(--line);background:var(--surface);border-radius:18px;grid-template-columns:1fr 1fr;width:min(1360px,100%);min-height:min(850px,100dvh - 48px);display:grid;overflow:hidden;box-shadow:0 15px 80px #16213906}.login-story{background:var(--hover);border-right:1px solid var(--line);flex-direction:column;padding:44px 54px 33px;display:flex;position:relative;overflow:hidden}.login-story .brand{margin:0}.login-story:after{content:"";pointer-events:none;background:radial-gradient(circle,#bf343c08,#0000 65%);width:450px;height:450px;position:absolute;top:100px;right:-130px}.story-copy{z-index:1;margin-top:85px;position:relative}.story-eyebrow{letter-spacing:1.9px;color:var(--secondary);align-items:center;gap:9px;font-size:9px;font-weight:650;display:flex}.story-eyebrow>span{background:var(--accent);border-radius:50%;width:6px;height:6px}.story-copy h1{letter-spacing:-1.9px;margin:24px 0 19px;font-size:clamp(30px,3.1vw,45px);font-weight:750;line-height:1.3;display:block}.story-copy em{color:var(--accent);font-style:normal}.story-copy p{color:var(--secondary);margin:0;font-size:14px;line-height:1.9}.route-art{height:285px;margin:28px -30px 20px;position:relative}.map-grid{background-image:radial-gradient(var(--muted) .65px,transparent .65px);opacity:.19;background-size:18px 18px;position:absolute;inset:0;mask-image:radial-gradient(#000 20%,#0000 70%)}.route-lines{width:100%;height:100%;color:var(--secondary);position:absolute;inset:0}.route-card{background:var(--surface);border:1px solid var(--line);border-radius:11px;align-items:center;gap:12px;display:flex;position:absolute;box-shadow:0 12px 35px #16213908}.route-card-main{width:282px;padding:17px 20px;top:78px;left:66px;transform:rotate(-3deg)}.route-card-icon{background:var(--accent-soft);width:37px;height:37px;color:var(--accent);border:1px solid var(--accent-line);border-radius:9px;place-items:center;display:grid}.route-card-main>div{color:var(--muted);font-size:9px}.route-card-main strong{color:var(--text);margin-top:5px;font-size:12px;font-weight:600;display:block}.route-card-check{color:#6a9f80;background:#6a9f8017;border-radius:50%;place-items:center;width:18px;height:18px;margin-left:auto;font-size:11px;display:grid}.route-card-small{color:var(--secondary);padding:13px 16px;font-size:10px;bottom:56px;right:27px;transform:rotate(3deg)}.online-dot{background:#6a9f80;border-radius:50%;width:6px;height:6px}.route-card-small>span:last-child{color:var(--accent);margin-left:10px;font-size:15px}.map-label{letter-spacing:1.5px;color:var(--muted);font-size:7px;font-weight:600;position:absolute}.map-label-start{bottom:10px;left:68px}.map-label-end{top:14px;right:42px}.story-footer{justify-content:space-between;align-items:center;gap:15px;margin-top:auto;display:flex}.story-footer-icon{color:var(--accent);align-items:center;gap:9px;display:flex}.story-footer-icon>span{letter-spacing:.3px;color:var(--secondary);font-size:9px;font-style:italic;font-weight:750}.story-footer-icon small{letter-spacing:1px;margin-top:3px;font-size:5px;font-style:normal;display:block}.story-footer>span:last-child{color:var(--muted);font-size:9px}.login-panel{flex-direction:column;padding:25px 38px 24px;display:flex}.login-topline{justify-content:flex-end;align-items:center;gap:14px;display:flex}.login-topline>span{color:var(--muted);letter-spacing:1.5px;font-size:8px}.login-content{width:100%;max-width:363px;margin:auto;padding:35px 0}.login-welcome-icon{border:1px solid var(--line);background:var(--hover);width:48px;height:48px;color:var(--secondary);border-radius:12px;place-items:center;margin-bottom:31px;display:grid;position:relative;box-shadow:0 3px 7px #16213903}.login-welcome-icon>span{border:3px solid var(--surface);background:#6a9f80;border-radius:50%;width:12px;height:12px;position:absolute;bottom:-3px;right:-3px}.login-content h2{letter-spacing:-1.05px;margin:10px 0;font:750 28px/1.3 Manrope,sans-serif}.login-content h2>span{color:var(--accent)}.login-subtitle{color:var(--muted);margin:0 0 30px;font-size:12px;line-height:1.7}.field-label{color:var(--secondary);margin:20px 0 9px;font-size:11px;font-weight:600;display:block}.login-content input,.management-form input,.management-form select{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:7px;width:100%;height:44px;padding:0 13px;font:12px DM Sans,sans-serif;transition:border-color .15s,box-shadow .15s}.login-content input:hover,.management-form input:hover{border-color:var(--accent-line)}.login-content input:focus,.management-form input:focus,.management-form select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.login-content input::placeholder,.management-form input::placeholder{color:var(--muted);opacity:.8}.password-wrap{position:relative}.password-wrap input{padding-right:47px}.password-toggle{width:34px;height:34px;color:var(--muted);border-radius:5px;place-items:center;display:grid;position:absolute;top:5px;right:5px}.password-toggle:hover{color:var(--accent);background:var(--hover)}.login-options{justify-content:space-between;align-items:center;gap:10px;margin:15px 0 23px;display:flex}.login-options>span{color:var(--muted);align-items:center;gap:6px;font-size:9px;display:flex}.login-options button{color:var(--accent);padding:3px 0;font-size:10px}.login-options button:hover{text-decoration:underline}.primary-button{color:#fff;background:#ba343c;border:1px solid #ae2d35;border-radius:7px;justify-content:center;align-items:center;gap:15px;min-height:42px;padding:0 18px;font-size:12px;font-weight:600;transition:background .15s,transform .15s;display:inline-flex;box-shadow:0 3px 6px #ba343c12}.primary-button:hover{background:#a92c35}.primary-button:active{transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.55}.login-submit{justify-content:space-between;width:100%;height:45px;padding:0 15px}.login-submit>span:last-child{font-size:20px;font-weight:400}.login-divider{color:var(--muted);align-items:center;gap:13px;margin:25px 0 20px;font-size:10px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--line);flex:1;height:1px}.google-button{border:1px solid var(--line);border-radius:7px;justify-content:center;align-items:center;gap:10px;width:100%;height:44px;font-size:11px;font-weight:500;display:flex}.google-button:not(:disabled):hover{background:var(--hover)}.google-button:disabled{opacity:.72}.google-button small{color:var(--muted);border:1px solid var(--line);border-radius:4px;margin-left:5px;padding:3px 5px;font-size:8px;font-weight:400}.google-hint{color:var(--muted);text-align:center;margin-top:9px;font-size:9px}.login-access-note{text-align:center;color:var(--muted);margin:27px 0 0;font-size:10px;line-height:1.9}.login-access-note strong{color:var(--secondary);font-weight:500}.login-footer{color:var(--muted);justify-content:space-between;gap:15px;font-size:8px;line-height:1.5;display:flex}.login-footer>span:last-child{align-items:center;gap:6px;display:flex}.login-footer i{background:#6a9f80;border-radius:50%;width:4px;height:4px}.form-message{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-line);border-radius:7px;margin-bottom:20px;padding:12px 14px;font-size:12px;line-height:1.6}.form-message.success{color:var(--text);background:#6a9f8014;border-color:#6a9f8050}.field-hint{color:var(--muted);margin:9px 0 0;font-size:10px;line-height:1.7}.form-dialog{border:1px solid var(--line);background:var(--surface);width:calc(100% - 32px);max-width:480px;color:var(--text);border-radius:13px;padding:26px;box-shadow:0 20px 80px #0003}.form-dialog::backdrop{backdrop-filter:blur(4px);background:#10141c66}.form-dialog p{color:var(--secondary);font-size:13px;line-height:1.8}.dialog-heading{justify-content:space-between;align-items:center;display:flex}.dialog-heading h2{margin:0;font:700 19px Manrope,sans-serif}.dialog-heading>button{color:var(--muted);padding:0 5px;font-size:24px}.form-dialog>.primary-button{margin-top:12px}.secondary-button{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--secondary);border-radius:7px;justify-content:center;align-items:center;padding:0 14px;font-size:12px;display:inline-flex}.secondary-button:hover{background:var(--hover)}@media (width>=1550px){.login-shell{min-height:850px}.login-story{padding-top:52px}.story-copy{margin-top:95px}.route-art{margin-top:45px}}@media (width<=1100px){.login-story{padding-left:35px;padding-right:35px}.login-panel{padding-left:30px;padding-right:30px}.story-footer>span:last-child{display:none}.route-card-main{width:260px;left:20px}.story-copy h1{font-size:35px}.login-content h2{font-size:25px}}@media (width<=800px){.login-page{background:var(--surface);padding:0}.login-shell{max-width:540px;min-height:100dvh;box-shadow:none;border:0;border-radius:0;grid-template-columns:1fr}.login-story{background:var(--surface);border:0;padding:27px 28px 0;overflow:visible}.login-story .brand{transform-origin:0 0;transform:scale(.85)}.story-copy,.route-art,.story-footer,.login-story:after{display:none}.login-panel{padding:0 28px 23px}.login-topline{margin-top:-35px}.login-topline>span{display:none}.login-content{max-width:400px;padding-top:45px;padding-bottom:35px}.login-content h2{font-size:28px}.login-welcome-icon{margin-bottom:28px}.login-footer{margin-top:auto}.login-subtitle{margin-bottom:27px}}@media (width<=370px){.login-panel{padding-left:20px;padding-right:20px}.login-content h2{font-size:25px}.login-options{align-items:flex-start}.login-options>span{max-width:145px;line-height:1.7}.login-options>button{white-space:nowrap}}
