:root{--login-accent: var(--brand-primary, #FDA312);--login-accent-deep: var(--brand-primary-hover, #E08F02);--login-accent-on: var(--brand-primary-contrast, #0E1A33);--login-accent-ink: var(--brand-primary-ink, #8E5801);--login-ink: var(--brand-login-ink, #0E1A33);--login-ink-soft: var(--brand-login-ink-soft, #31405E);--login-muted: var(--brand-login-muted, #5A6274);--login-bg: var(--brand-login-bg, #F8F7F3);--login-cream: var(--brand-login-cream, #F1EFEA);--login-cream-2: var(--brand-login-cream-2, #E8E4DC);--login-card-bg: var(--brand-login-card-bg, #FFFFFF);--login-border: var(--brand-login-border, #E5E1D8);--login-border-soft: var(--brand-login-border-soft, #EFECE5);--login-glow-1: var(--brand-login-glow-1, rgba(253, 163, 18, .22));--login-glow-2: var(--brand-login-glow-2, rgba(14, 33, 62, .18));--login-shadow: 0 1px 2px rgb(14 26 51 / 5%), 0 18px 40px -22px rgb(14 26 51 / 28%);--login-ease: cubic-bezier(.16, 1, .3, 1)}html,body{height:100%}body.login-body{margin:0;background:var(--login-bg);font-family:inherit;min-height:100vh;overflow-x:hidden;color:var(--login-ink)}.login-shell{display:grid;grid-template-columns:minmax(420px,1fr) minmax(520px,640px);min-height:100vh;width:100%}.login-brand{position:relative;overflow:hidden;padding:3rem 3.5rem;display:flex;flex-direction:column;background:var(--tb-ink, #0E1A33);color:var(--tb-on-dark, #C7D0E2);isolation:isolate}.login-brand-bg{position:absolute;inset:0;pointer-events:none;z-index:0}.login-brand-glow{position:absolute;border-radius:50%;filter:blur(110px);opacity:.5}.login-brand-glow-1{width:520px;height:520px;top:-200px;right:-160px;background:radial-gradient(circle,var(--login-glow-1) 0%,transparent 70%)}.login-brand-glow-2{width:460px;height:460px;bottom:-220px;left:-140px;background:radial-gradient(circle,var(--login-glow-2) 0%,transparent 70%)}.login-brand>*:not(.login-brand-bg){position:relative;z-index:1}.login-brand-centro{margin:auto 0;display:flex;justify-content:center}.login-brand-marchio{color:#fff;font-size:clamp(2.5rem,4.2vw,3.75rem);gap:clamp(16px,1.6vw,24px)}.login-brand-marchio .sm-marchio-simbolo{width:clamp(64px,6.4vw,96px);height:clamp(64px,6.4vw,96px)}.login-brand-marchio .sm-marchio-trips{color:#fff}.login-brand-marchio .sm-marchio-back{color:var(--login-accent)}.login-brand-bottom{padding-top:2rem;font-size:.8125rem;color:var(--tb-on-dark-dim, #98A3B8)}.login-form-wrap{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2.5rem;background:var(--login-bg)}.login-form-mobile-hero{display:none}.login-card{width:100%;max-width:440px;background:var(--login-card-bg);border-radius:16px;padding:2.75rem 2.5rem;box-shadow:var(--login-shadow);border:1px solid var(--login-border)}.login-panel-head{margin-bottom:2rem}.login-panel-title{font-size:1.75rem;font-weight:800;color:var(--login-ink);margin:0;letter-spacing:-.02em}.login-error{background:var(--tb-danger-soft, #FCE8E6);color:var(--brand-danger-ink, #A4271B);border:1px solid var(--brand-danger, #C0392B);border-radius:12px;padding:.85rem 1rem;font-size:.875rem;margin-bottom:1.5rem}.login-field{margin-bottom:1.25rem}.login-label{display:block;font-size:.875rem;font-weight:600;color:var(--login-ink);margin-bottom:.45rem}.login-input-wrap{position:relative}.login-input-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--login-muted);font-size:1.05rem;pointer-events:none;transition:color .14s var(--login-ease);z-index:2}.login-input.form-control{height:52px;padding:0 1rem 0 2.85rem;font-size:1rem;background:var(--login-cream);border:1px solid var(--login-border);border-radius:10px;color:var(--login-ink);transition:border-color .14s var(--login-ease),background .14s var(--login-ease),box-shadow .14s var(--login-ease)}.login-input.form-control::placeholder{color:var(--login-muted);opacity:1}.login-input.form-control:focus{background:var(--login-card-bg);border-color:var(--login-accent);box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb, 253, 163, 18),.28);outline:none}.login-input-wrap:focus-within .login-input-icon{color:var(--login-accent-ink)}.login-body .form-check-input:checked{background-color:var(--login-accent);border-color:var(--login-accent)}.login-body .form-check-label{color:var(--login-ink);font-size:.9375rem}.login-btn-primary{width:100%;height:52px;margin-top:.5rem;border-radius:10px;background:var(--login-accent);border:none;color:var(--login-accent-on);font-weight:600;font-size:1rem;display:inline-flex;align-items:center;justify-content:center;transition:background-color .14s var(--login-ease)}.login-btn-primary:hover{background:var(--login-accent-deep);color:var(--login-accent-on)}.login-btn-primary:active{background:var(--brand-primary-active, #C77C02)}.login-btn-primary:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb, 253, 163, 18),.45),0 0 0 5px var(--login-card-bg)}.login-btn-primary .indicator-label{display:inline-flex;align-items:center}.login-form-footer{display:flex;flex-direction:column;align-items:center;margin-top:2rem;gap:.6rem;text-align:center}.login-form-footer-powered{font-size:.75rem;color:var(--login-muted)}.login-form-footer-logo-link{display:inline-flex;transition:opacity .14s var(--login-ease)}.login-form-footer-logo-link:hover{opacity:.75}.login-form-footer-logo{height:22px;width:auto;display:block}.login-form-footer-copy{display:none;font-size:.8125rem;color:var(--login-muted);margin-top:.25rem}@media(max-width:1199.98px){.login-shell{grid-template-columns:minmax(340px,1fr) minmax(420px,520px)}.login-brand{padding:2.5rem}}@media(max-width:991.98px){.login-shell{display:block;min-height:100vh}.login-brand{display:none}.login-form-wrap{min-height:100vh;padding:0 1.1rem 2rem;justify-content:flex-start}.login-form-mobile-hero{display:flex;align-items:center;justify-content:center;width:100%;padding:2.75rem 1rem 1.75rem}.login-card{max-width:460px;margin:0 auto;padding:2rem 1.6rem}.login-form-footer-copy{display:block}}@media(max-width:575.98px){.login-form-wrap{padding:0 .9rem 1.5rem}.login-card{padding:1.75rem 1.35rem}.login-panel-title{font-size:1.5rem}.login-input.form-control{height:48px}.login-btn-primary{height:50px}}@media(prefers-reduced-motion:reduce){.login-input.form-control,.login-input-icon,.login-btn-primary,.login-form-footer-logo-link{transition:none}}
