:root{--brand:#1f4e79;--brand-soft:#2e74b5;--accent:#ba672b;--accent-soft:#c97c3c;--ink:#0f172a;--muted:#64748b;--line:#e2e8f0;--surface:#fff;--canvas:#f8fafc;--danger:#b91c1c;--ok:#15803d;color:var(--ink);background-color:var(--canvas);font-family:Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{min-height:100vh;margin:0}.app__header{background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:2rem;padding:.875rem 1.5rem;display:flex}.app__main{max-width:68rem;margin:0 auto;padding:2rem 1.5rem}.brand{align-items:center;gap:.75rem;display:flex}.brand__mark{background:var(--brand);color:#fff;letter-spacing:.02em;border-bottom:3px solid var(--accent-soft);border-radius:.5rem;place-items:center;width:2.25rem;height:2.25rem;font-size:.875rem;font-weight:700;display:grid}.brand__name{font-size:.975rem;line-height:1.2;display:block}.brand__tagline{color:var(--muted);font-size:.75rem;display:block}.nav{gap:.25rem;margin-right:auto;display:flex}.nav__link{color:var(--muted);border-radius:.375rem;padding:.5rem .875rem;font-size:.9rem;text-decoration:none}.nav__link:hover{background:var(--canvas);color:var(--ink)}.nav__link.active{color:var(--brand);background:#eff6ff;font-weight:600}.lang{border:1px solid var(--line);border-radius:.375rem;display:flex;overflow:hidden}.lang__button{background:var(--surface);color:var(--muted);cursor:pointer;border:0;padding:.375rem .75rem;font-size:.8rem}.lang__button[aria-pressed=true]{background:var(--brand);color:#fff;font-weight:600}.page__header{margin-bottom:1.5rem}.page__header h1{color:var(--brand);margin:0 0 .25rem;font-size:1.5rem}.page__subtitle,.placeholder{color:var(--muted);margin:0;font-size:.925rem}.placeholder{background:var(--surface);border:1px dashed var(--line);border-radius:.5rem;padding:2rem}.page__header--row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.page__header--row .button{text-decoration:none}.toolbar{align-items:flex-end;gap:.75rem;margin-bottom:1rem;display:flex}.toolbar .field input{width:16rem}.table{border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:.5rem;width:100%;font-size:.925rem;overflow:hidden}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);padding:.7rem .9rem}.table thead th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--canvas);font-size:.75rem}.table tbody tr:last-child td{border-bottom:0}.table__numeric{font-variant-numeric:tabular-nums;white-space:nowrap}.table a{color:var(--brand);font-weight:600}.badge{border:1px solid;border-radius:99px;padding:.15rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.badge.badge--pending{color:#b45309}.badge.badge--active{color:var(--ok)}.badge.badge--blocked{color:var(--danger)}.badge.badge--inactive{color:var(--muted);background:var(--canvas)}.page__actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.alert-windows__input{border:1px solid var(--line);width:9rem;color:var(--ink);font-variant-numeric:tabular-nums;border-radius:.375rem;padding:.5rem .625rem;font-size:.95rem}.alert-windows__input:focus-visible{outline:2px solid var(--brand-soft);outline-offset:1px}.standing{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.muted{color:var(--muted);font-size:.85em}.documents__form{margin-top:1rem}.form__break{flex-basis:100%;height:0}.documents__form input[type=file]{width:22rem}.documents__form .form__actions{margin-left:auto}.field textarea{border:1px solid var(--line);width:100%;color:var(--ink);resize:vertical;border-radius:.375rem;padding:.5rem .625rem;font-family:inherit;font-size:.95rem}.field textarea[aria-invalid=true]{border-color:var(--danger)}.field textarea:focus-visible{outline:2px solid var(--brand-soft);outline-offset:1px}.documents__superseded{opacity:.55}.documents__download{color:var(--brand);cursor:pointer;background:0 0;border:0;padding:0;font-size:.925rem;font-weight:600;text-decoration:underline}.documents__critical{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-left:.5rem;font-size:.7rem}.documents__notes{max-width:24rem;color:var(--muted);font-size:.78rem;display:block}.documents__notes-toggle{color:var(--brand);cursor:pointer;background:0 0;border:0;margin-left:.35rem;padding:0;font-size:.78rem;text-decoration:underline}.documents__discard{color:var(--danger);cursor:pointer;background:0 0;border:0;margin-top:.25rem;padding:0;font-size:.78rem;text-decoration:underline;display:block}.field__hint{color:var(--muted);font-size:.75rem}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.form{background:var(--surface);border:1px solid var(--line);border-radius:.5rem;flex-wrap:wrap;align-items:flex-end;gap:1rem;padding:1.25rem;display:flex}.field{color:var(--muted);flex-direction:column;gap:.375rem;font-size:.825rem;display:flex}.field label{display:block}.field input{border:1px solid var(--line);width:11rem;color:var(--ink);border-radius:.375rem;padding:.5rem .625rem;font-size:.95rem}.field__error{color:var(--danger);max-width:22rem;font-size:.8rem}.field input[aria-invalid=true]{border-color:var(--danger)}.field input:focus-visible{outline:2px solid var(--brand-soft);outline-offset:1px}.typeahead{position:relative}.typeahead__popup{z-index:20;background:var(--surface);border:1px solid var(--line);border-radius:.375rem;min-width:16rem;max-height:11rem;position:absolute;top:calc(100% + .25rem);left:0;overflow-y:auto;box-shadow:0 10px 24px #0f172a1f}.typeahead__list{margin:0;padding:.25rem;list-style:none}.typeahead__option{color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:.25rem;padding:.4rem .6rem;font-size:.9rem}.typeahead__option:hover{background:var(--canvas)}.typeahead__option--active{color:var(--brand);background:#eff6ff}.typeahead__empty{color:var(--muted);margin:0;padding:.5rem .6rem;font-size:.85rem}.button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:.375rem;padding:.575rem 1.25rem;font-size:.925rem;font-weight:600}.button.button--quiet{background:var(--surface);color:var(--brand);border:1px solid var(--line)}.button:disabled{opacity:.6;cursor:progress}.form--stacked{flex-direction:column;align-items:stretch;gap:1.25rem}.fieldset{border:0;border-top:1px solid var(--line);flex-wrap:wrap;gap:1rem;margin:0;padding:1rem 0 0;display:flex}.fieldset legend{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding-right:.5rem;font-size:.75rem;font-weight:700}.field--wide{flex:100%}.field--wide input{width:100%}.field--narrow input{width:5rem}.form__actions{justify-content:flex-end;gap:.75rem;display:flex}.form__actions .button{text-decoration:none}.field select{border:1px solid var(--line);width:11rem;color:var(--ink);background:var(--surface);border-radius:.375rem;padding:.5rem .625rem;font-size:.95rem}.field select[aria-invalid=true]{border-color:var(--danger)}.fleet{margin-top:1.75rem}.fleet__header{margin-bottom:.75rem}.fleet__header h2{color:var(--ink);margin:0;font-size:1.05rem}.detail__email{overflow-wrap:anywhere;font-size:1rem}.alert{color:var(--danger);background:#fef2f2;border-radius:.375rem;margin-top:1rem;padding:.75rem 1rem;font-size:.9rem}.alert.alert--warning{color:#92400e;background:#fffbeb}.result{background:var(--surface);border:1px solid var(--line);border-radius:.5rem;margin-top:1.5rem;padding:1.25rem}.result h2{color:var(--muted);margin:0 0 1rem;font-size:1rem;font-weight:600}.result__grid{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:1rem;margin:0;display:grid}.result__grid dt{color:var(--muted);font-size:.8rem}.result__grid dd{font-variant-numeric:tabular-nums;margin:.25rem 0 0;font-size:1.25rem;font-weight:600}.result__net{color:var(--ok)}.login{grid-template-columns:1.15fr 1fr;min-height:100vh;display:grid}.login__brand{text-align:center;background:linear-gradient(160deg,#f7f8f1 0%,#e9eef2 70%,#dfe7ee 100%);place-content:center;justify-items:center;padding:2rem;display:grid}.login__logo{filter:drop-shadow(0 14px 30px #12283c29);width:min(300px,60vw);height:auto}.login__rule{background:var(--accent-soft);border-radius:2px;width:44px;height:3px;margin:1.1rem 0 .6rem}.login__brandtag{color:var(--muted);margin:0;font-size:.85rem}.login__pane{background:var(--surface);grid-template-rows:auto 1fr;padding:1.5rem;display:grid}.login__lang{justify-content:flex-end;display:flex}.login__body{align-self:center;width:min(21rem,100%);margin:0 auto;padding-bottom:3rem}.login__body h1{color:var(--ink);margin:0 0 .25rem;font-size:1.5rem}.login__form{background:0 0;border:0;flex-direction:column;align-items:stretch;margin-top:1.25rem;padding:0}.login__form .field input{width:100%}.login__form .button{margin-top:.25rem}@media (width<=720px){.login{grid-template-columns:1fr}.login__brand{padding:1.75rem 1.5rem 1.25rem}.login__logo{width:180px}}.session{align-items:center;gap:.75rem;display:flex}.session__user{color:var(--muted);font-size:.85rem}.session__logout{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:.375rem;padding:.35rem .75rem;font-size:.85rem}.session__logout:hover{border-color:var(--brand-soft);color:var(--brand)}.session-check{color:var(--muted);padding:2rem}.landing{background:var(--surface);flex-direction:column;min-height:100vh;display:flex}.landing__nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.5rem;display:flex}.landing__nav-actions{align-items:center;gap:.75rem;display:flex}.landing__button{text-decoration:none;display:inline-block}.landing__hero{background:#f7f8f1;grid-template-columns:1.1fr .9fr;align-items:center;gap:2rem;padding:3.25rem 2.5rem;display:grid}.landing__hero h1{color:var(--ink);text-wrap:balance;margin:0 0 .75rem;font-size:2rem;line-height:1.2}.landing__hero p{color:#4c5f70;max-width:44ch;margin:0 0 1.5rem}.landing__logo{filter:drop-shadow(0 14px 30px #12283c2e);justify-self:center;width:min(320px,100%);height:auto}.landing__features{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;width:100%;max-width:68rem;margin:0 auto;padding:2rem 1.5rem;display:grid}.landing__feature{border:1px solid var(--line);border-radius:.5rem;padding:1.25rem}.landing__feature:before{content:"";background:var(--accent-soft);border-radius:2px;width:26px;height:4px;margin-bottom:.75rem;display:block}.landing__feature h2{margin:0 0 .35rem;font-size:1rem}.landing__feature p{color:var(--muted);margin:0;font-size:.9rem}.landing__footer{color:#9fb4c6;background:#12283f;margin-top:auto;padding:.9rem 1.5rem;font-size:.8rem}@media (width<=720px){.landing__hero{grid-template-columns:1fr;padding:2.25rem 1.5rem}.landing__hero h1{font-size:1.5rem}}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}
