*{box-sizing:border-box}:root{color-scheme:light;font-family:Corbel,Avenir Next,Segoe UI,sans-serif;color:#202221;background:#f4f5f4;--navy:#0a0a0a;--navy-2:#202220;--teal:#447260;--teal-dark:#365b4d;--mint:#e1ebe7;--line:#dfe2e0;--muted:#6d716f;--amber:#d89428;--amber-bg:#fff6e4}.login-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 20% 10%,#edf4f1,transparent 38%),#f7f9f8}.login-panel{width:min(420px,100%);padding:34px;display:grid;grid-gap:24px;gap:24px;border:1px solid var(--line);border-radius:10px;background:white;box-shadow:0 18px 55px rgba(22,55,45,.12)}.login-panel .brand-logo{width:240px;height:30px}.login-panel h1{margin:10px 0 6px;font-size:27px}.login-panel p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.login-panel form{display:grid;grid-gap:14px;gap:14px}.login-panel label{display:grid;grid-gap:6px;gap:6px;color:#34433e;font-size:11px;font-weight:700}.login-panel input{height:43px;padding:0 12px;border:1px solid #cbd8d3;border-radius:6px;font:inherit}.login-panel form>button{height:43px;margin-top:4px}.microsoft-login-placeholder{display:grid;grid-gap:7px;gap:7px;padding-top:18px;border-top:1px solid var(--line)}.microsoft-login-placeholder button{height:41px;border:1px solid #c8d2cf;border-radius:5px;color:#7d8884;background:#f4f6f5}.microsoft-login-placeholder small{color:var(--muted);font-size:9px;line-height:1.45;text-align:center}body{margin:0;min-width:1180px;background:#f4f5f4}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.app-shell{min-height:100vh;display:flex}.global-nav{width:230px;position:fixed;inset:0 auto 0 0;background:white;color:#252725;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:22px 18px 20px;z-index:5}.brand{display:block;padding:0 1px 24px;color:#050505;text-decoration:none}.brand-logo{display:block;width:205px;height:46px;background-image:url(/brand/vertical-autonomy-horizontal-transparent.png);background-repeat:no-repeat;background-size:contain;background-position:0}.global-nav nav{display:grid;grid-gap:5px;gap:5px}.global-nav nav .nav-button,.global-nav nav a,.nav-bottom>a{display:flex;align-items:center;gap:13px;height:46px;padding:0 13px;border-radius:5px;color:#656965;text-decoration:none;font-size:14px;font-weight:570}.nav-button{width:100%;border:0;background:transparent;cursor:pointer;text-align:left}.brand.nav-button{height:auto}.global-nav nav .nav-button:hover,.global-nav nav a:hover,.nav-bottom>a:hover{background:#f2f4f3;color:#111}.global-nav nav .nav-button.active,.global-nav nav a.active{background:#e7eeeb;color:#2f5546;box-shadow:inset 3px 0 #447260}.nav-bottom{margin-top:auto;padding-top:15px;border-top:1px solid #e4e6e4}.profile{width:100%;border:0;color:#222422;background:transparent;display:grid;grid-template-columns:34px 1fr;text-align:left;grid-column-gap:10px;column-gap:10px;margin-top:16px;padding:10px;cursor:pointer}.profile>span{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;background:#5c625f;border-radius:50%;font-size:11px;font-weight:700}.profile b{font-size:12px;align-self:end}.profile small{font-size:10px;color:#7b807d}.workspace{margin-left:230px;width:calc(100% - 230px)}.topbar{height:70px;background:white;border-bottom:1px solid var(--line);justify-content:space-between;padding:0 36px}.breadcrumbs,.topbar{display:flex;align-items:center}.breadcrumbs{gap:7px;color:var(--muted);font-size:13px}.breadcrumbs a{color:#4d625f;text-decoration:none}.breadcrumbs .icon{width:14px}.breadcrumbs span{color:#1f302d;font-weight:600}.top-actions{display:flex;gap:9px}.top-actions button{height:38px;border-radius:6px;padding:0 16px;font-size:13px;font-weight:650;cursor:pointer}.aircraft-switcher{height:38px;display:flex;align-items:center;gap:8px;padding:0 8px 0 11px;border:1px solid #ccd8d5;border-radius:6px;color:#667875;background:white;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.035em}.aircraft-switcher select{min-width:190px;height:30px;border:0;outline:0;color:#253d38;background:white;font-size:12px;font-weight:650;text-transform:none;letter-spacing:0;cursor:pointer}.ghost-button{border:1px solid #ccd8d5;color:#36504c;background:white}.primary-button{border:1px solid var(--teal-dark);background:var(--teal);color:white;display:flex;align-items:center;gap:8px}.primary-button .icon{width:15px}button:disabled{cursor:not-allowed;opacity:.5}.page-heading{padding:27px 36px 22px;display:flex;justify-content:space-between;align-items:center}.page-heading h1{margin:7px 0 4px;font-size:29px;letter-spacing:-.025em}.page-heading p{margin:0;color:var(--muted);font-size:13px}.page-heading p span{padding:0 6px;color:#abb7b5}.status-badge{display:inline-flex;align-items:center;min-height:23px;padding:0 8px;border-radius:4px;font-size:10px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.status-badge.draft{background:#e7eceb;color:#536764}.status-badge.complete{background:#d9efea;color:#0c7065}.status-badge.needs-data{background:var(--amber-bg);color:#a4680d}.status-badge.not-started{background:#eef1f0;color:#70807d}.progress-summary{display:flex;align-items:center;gap:14px}.progress-copy{text-align:right;display:grid}.progress-copy strong{font-size:14px}.progress-copy span{font-size:11px;color:var(--muted);margin-top:3px}.progress-ring{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--teal) 56%,#dce3e0 0);position:relative}.progress-ring:before{content:"";position:absolute;inset:5px;border-radius:50%;background:#f4f5f4}.progress-ring span{position:relative;font-size:11px;font-weight:750}.stepper{margin:0 36px 23px;height:72px;padding:0 24px;background:white;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;box-shadow:0 2px 8px rgba(25,52,47,.035)}.stepper>i{height:1px;flex:1 1;background:#d8e1df;margin:0 18px}.step{display:flex;align-items:center;gap:10px}.step>span{width:28px;height:28px;border:1px solid #c9d5d2;color:#80908d;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700}.step>span .icon{width:14px;height:14px}.step div{display:grid;white-space:nowrap}.step b{font-size:12px}.step small{margin-top:3px;color:#899895;font-size:10px}.step.complete>span{background:var(--teal);border-color:var(--teal);color:white}.step.current>span{border:2px solid var(--teal);color:var(--teal)}.step.current b{color:var(--teal-dark)}.config-layout{margin:0 36px 36px;height:calc(100vh - 275px);min-height:590px;display:grid;grid-template-columns:255px minmax(440px,1fr) 292px;background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 3px 14px rgba(25,52,47,.05)}.component-nav{border-right:1px solid var(--line);min-width:0}.panel-title{height:73px;padding:17px 17px 12px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #edf1f0}.detail-heading h2,.panel-title h2,.visual-toolbar h2{margin:0;font-size:15px}.detail-heading p,.panel-title p,.visual-toolbar p{color:var(--muted);margin:4px 0 0;font-size:10.5px}.panel-title>span{color:var(--teal-dark);background:var(--mint);font-weight:700;border-radius:10px;font-size:10px;padding:3px 7px}.search-box{height:34px;margin:12px 13px;border:1px solid #d8e1df;border-radius:5px;display:flex;align-items:center;padding:0 9px;gap:7px;color:#8b9997}.search-box .icon{width:15px}.search-box input{min-width:0;width:100%;border:0;outline:0;color:#263936;font-size:11px}.search-box input::placeholder{color:#99a6a4}.group-list{overflow:auto;height:calc(100% - 131px);padding:0 8px 12px}.group-list button{width:100%;min-height:49px;display:grid;grid-template-columns:18px 1fr 14px;align-items:center;grid-gap:8px;gap:8px;padding:7px 8px;text-align:left;border:0;border-radius:5px;background:transparent;cursor:pointer;color:#263936}.group-list button:hover{background:#f4f8f7}.group-list button.active{background:#e6f2ef;color:#105f58}.group-list button>span:nth-child(2){display:grid}.group-list button b{font-size:10.5px;font-weight:650;line-height:1.25}.group-list button small{margin-top:3px;font-size:9.5px;color:#81918e}.group-list button>.icon{width:13px;color:#91a09e}.group-components{margin:1px 0 5px 18px;padding-left:6px;border-left:1px solid #dbe5e2}.group-list .group-components button{min-height:40px;grid-template-columns:15px 1fr;padding:5px 7px}.group-list .group-components button.selected-component{background:#f0f7f5;color:#105f58;box-shadow:inset 2px 0 var(--teal)}.group-components .group-status{width:11px;height:11px}.group-components .group-status .icon{width:7px}.group-components button b{font-size:9.75px}.group-components button small{font-size:8.75px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-status{width:14px;height:14px;border-radius:50%;border:1.5px solid #b8c5c2;display:grid;place-items:center}.group-status.complete{color:white;background:var(--teal);border-color:var(--teal)}.group-status.complete .icon{width:9px;height:9px}.group-status.needs-data{background:var(--amber-bg);border-color:var(--amber)}.group-status.not-started{background:#f5f7f7}.visual-panel{min-width:0;background:#f8faf9;display:flex;flex-direction:column}.visual-toolbar{min-height:73px;padding:17px 19px;background:white;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.view-toggle{align-self:center;display:flex;padding:2px;background:#edf2f1;border-radius:5px}.view-toggle button{border:0;padding:5px 10px;background:transparent;color:#687a77;border-radius:4px;font-size:10px;cursor:pointer}.view-toggle button.active{background:white;color:#203532;box-shadow:0 1px 3px rgba(20,47,42,.12);font-weight:650}.aircraft-map{flex:1 1;position:relative;overflow:hidden;background:#fbfcfb;background-image:linear-gradient(rgba(44,64,57,.018) 1px,transparent 0),linear-gradient(90deg,rgba(44,64,57,.018) 1px,transparent 0);background-size:32px 32px}.aircraft-silhouette{position:absolute;height:91%;width:88%;left:6%;top:1%}.aircraft-linework{fill:none;stroke:#4f5b57;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.airframe-surface{fill:rgba(238,242,240,.5);stroke:#34413d;stroke-width:1.7}.construction-line{stroke:#9ba5a1;stroke-width:.8;stroke-dasharray:7 6}.detail-line,.panel-line{stroke:#75817d;stroke-width:1}.boom-centerline{stroke:#a2aba8;stroke-width:.7;stroke-dasharray:3 5}.fasteners{fill:white;stroke:#53605c;stroke-width:1}.rotor-sweep{fill:none;stroke:#aeb7b4;stroke-width:.8;stroke-dasharray:3 5}.rotor-blade{fill:rgba(224,229,227,.7);stroke:#46534f;stroke-width:1.3}.rotor-hub{fill:white;stroke:#34413d;stroke-width:1.5}.rotor-bolt{fill:#34413d;stroke:none}.pusher-rotor path{fill:rgba(224,229,227,.7);stroke:#46534f;stroke-width:1.2}.pusher-rotor circle{fill:white;stroke:#34413d;stroke-width:1.3}.map-marker{position:absolute;width:21px;height:21px;padding:0;transform:translate(-50%,-50%);border-radius:50%;border:2px solid white;box-shadow:0 1px 4px rgba(17,44,40,.22);display:grid;place-items:center;color:white;font-size:9px;font-weight:800;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;z-index:2}.map-marker.selected,.map-marker:hover{transform:translate(-50%,-50%) scale(1.22);box-shadow:0 0 0 3px rgba(68,114,96,.18),0 2px 6px rgba(17,44,40,.25);z-index:3}.map-marker.complete{background:var(--teal)}.map-marker.needs-data{background:var(--amber)}.map-marker.not-started{background:#899895}.map-marker .icon{width:11px}.map-legend{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);display:flex;gap:15px;padding:7px 11px;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:4px;box-shadow:0 2px 8px rgba(20,47,42,.05);white-space:nowrap}.map-legend span{display:flex;align-items:center;gap:5px;color:#667875;font-size:9px}.legend-dot{width:7px;height:7px;border-radius:50%}.legend-dot.complete{background:var(--teal)}.legend-dot.needs-data{background:var(--amber)}.legend-dot.not-started{background:#899895}.aircraft-map{display:flex;align-items:center;justify-content:center;padding:18px 12px 45px}.aircraft-canvas{position:relative;width:96%;max-width:920px;aspect-ratio:2258/1272;overflow:visible}.aircraft-original{position:absolute;inset:0;background-color:white;background-image:url(/aircraft/va-120-overhead.png);background-repeat:no-repeat;background-size:100% 100%;background-position:50%}.aircraft-original:after{content:"";position:absolute;z-index:1;top:0;right:0;width:31%;height:11%;background:white}.setup-mode{margin-top:8px!important;color:#3f6656!important;font-weight:600}.component-table{overflow:auto;padding:12px}.component-table button{width:100%;display:grid;grid-template-columns:18px 1fr auto 15px;align-items:center;grid-gap:10px;gap:10px;border:0;border-bottom:1px solid #e5ebe9;background:white;padding:12px;text-align:left;cursor:pointer}.component-table button:hover{background:#edf6f4}.component-table button>span:nth-child(2){display:grid}.component-table b{font-size:11px}.component-table small{font-size:9px;color:var(--muted);margin-top:2px}.component-table strong{font-size:10px;font-weight:550;color:#4e625e}.component-table>button>.icon{width:13px;color:#94a19f}.detail-panel{border-left:1px solid var(--line);padding:18px;overflow:auto}.detail-heading{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:15px}.detail-heading h2{margin-top:8px;font-size:17px}.icon-button{width:31px;height:31px;display:grid;place-items:center;border:1px solid #d4dfdc;border-radius:5px;background:white;color:#4c625e;cursor:pointer}.icon-button .icon{width:15px}.assembly-tag{display:flex;align-items:center;gap:9px;padding:10px;background:#f0f5f4;border-radius:6px;margin:2px 0 18px}.assembly-icon{width:29px;height:29px;display:grid;place-items:center;color:var(--teal-dark);background:#d8ece8;border-radius:5px}.assembly-icon .icon{width:15px}.assembly-tag div{display:grid}.assembly-tag small{font-size:9px;color:#758783}.assembly-tag b{font-size:10.5px;margin-top:2px}.detail-panel dl{margin:0}.detail-panel dl>div{padding:11px 0;border-bottom:1px solid #e5ebe9}.detail-panel dt{color:#7d8d8a;font-size:9.5px;margin-bottom:4px}.detail-panel dd{margin:0;font-size:11px;font-weight:600}.detail-panel dd.missing{color:#b27112}.attention{margin:15px 0;padding:11px;background:var(--amber-bg);border-left:3px solid var(--amber);border-radius:3px}.attention b{color:#8e5b0c;font-size:10.5px}.attention p{margin:4px 0 0;color:#866930;font-size:9.5px;line-height:1.45}.wide-button{width:100%;height:36px;display:flex;align-items:center;justify-content:center;gap:7px;margin-top:17px;border:1px solid var(--teal);border-radius:5px;background:white;color:var(--teal-dark);font-size:10.5px;font-weight:700;cursor:pointer}.wide-button .icon{width:14px}.history-note{color:#82918f;font-size:9px;line-height:1.5;text-align:center;margin:13px 5px}.onboarding-page,.state-page{min-height:100vh;display:grid;place-items:center;background:#f4f5f4;padding:32px}.state-page{align-content:center;gap:16px;text-align:center}.onboarding-page>.brand-logo,.state-page .brand-logo{width:290px;height:64px;background-size:contain;background-position:50%}.state-page h1{font-size:18px;font-weight:500;color:#555b57}.loading-spinner{width:32px;height:32px;border:3px solid #d8dfdc;border-top:3px solid var(--teal);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.onboarding-page{grid-template-rows:auto auto;align-content:center;gap:28px}.onboarding-card{width:min(460px,100%);padding:34px;background:white;border:1px solid var(--line);border-radius:9px;box-shadow:0 12px 40px rgba(25,40,34,.08)}.onboarding-card h1{margin:10px 0 7px;font-size:26px}.onboarding-card>p{margin:0 0 23px;color:var(--muted);line-height:1.5;font-size:13px}.editor-modal label,.onboarding-card label{display:grid;grid-gap:5px;gap:5px;margin:9px 0;font-size:12px;font-weight:650}.editor-modal label small,.onboarding-card label small{color:var(--muted);font-weight:400}.editor-modal input,.onboarding-card input{width:100%;height:40px;padding:0 12px;border:1px solid #ccd7d3;border-radius:5px;outline:0;color:#202622;background:white}.editor-modal input:focus,.onboarding-card input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(68,114,96,.13)}.setup-submit{width:100%;height:43px;justify-content:center;border-radius:5px;margin-top:22px}.form-error{padding:10px 12px;color:#922f28;background:#fff0ee;border-left:3px solid #bf4a41;font-size:12px}.toast{position:fixed;z-index:20;right:24px;bottom:24px;max-width:420px;display:flex;align-items:center;gap:14px;padding:13px 15px;background:#294c3e;color:white;border-radius:6px;box-shadow:0 8px 25px rgba(0,0,0,.2);font-size:12px}.toast.error{background:#842f2a}.toast button{margin-left:auto;border:0;background:transparent;color:inherit;font-size:20px;cursor:pointer}.modal-backdrop{position:fixed;inset:0;z-index:15;display:grid;place-items:center;padding:24px;background:rgba(16,20,18,.48);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.editor-modal{width:min(480px,100%);max-height:calc(100vh - 48px);overflow:auto;padding:27px;background:white;border-radius:8px;box-shadow:0 20px 65px rgba(0,0,0,.25)}.editor-modal select{width:100%;height:42px;padding:0 12px;border:1px solid #ccd7d3;border-radius:5px;outline:0;color:#202622;background:white}.editor-modal select:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(68,114,96,.13)}.modal-heading{display:flex;justify-content:space-between;margin-bottom:20px}.modal-heading h2{margin:9px 0 3px;font-size:20px}.modal-heading p{margin:0;color:var(--muted);font-size:10px}.modal-heading>button{width:31px;height:31px;border:1px solid var(--line);background:white;border-radius:4px;font-size:20px;cursor:pointer}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}.modal-actions button{height:39px;padding:0 17px;border-radius:5px}.locked-note,.nonserial-note{padding:11px 12px;border-radius:5px;font-size:11px;line-height:1.45}.locked-note{background:#f0f2f1;color:#5f6763}.nonserial-note{display:flex;align-items:center;gap:8px;color:#365b4d;background:#e7efeb}.nonserial-note .icon{width:15px}.modal-backdrop.nested-modal{z-index:25}.reference-modal{width:min(430px,100%)}.date-comparison{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.date-comparison>div{display:grid;grid-gap:6px;gap:6px;padding:14px;border:1px solid var(--line);border-radius:6px;background:#f8faf9}.date-comparison small{color:var(--muted);font-size:10px;text-transform:uppercase}.date-comparison strong{font-size:16px}.flight-detail-modal{width:min(920px,100%)}.flight-detail-metrics{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:9px;gap:9px}.flight-detail-metrics>div{display:grid;grid-gap:5px;gap:5px;padding:11px 12px;border-radius:5px;background:#f3f6f5}.flight-detail-metrics small{color:var(--muted);font-size:9px;text-transform:uppercase}.flight-detail-metrics strong{color:#294d40;font-size:13px}.flight-track-section{margin-top:20px}.flight-detail-columns h3,.flight-track-section h3{margin:0 0 4px;font-size:13px}.flight-track-section>div>p{margin:0 0 10px;color:var(--muted);font-size:10px}.flight-track-map{display:block;width:100%;max-height:360px;border:1px solid var(--line);border-radius:6px;background:#f8fbfa}.flight-map-empty{min-height:180px;display:grid;place-items:center;border:1px dashed #cdd8d5;border-radius:6px;color:var(--muted);background:#f8faf9;font-size:11px}.flight-map-legend{display:flex;align-items:center;gap:12px;margin-top:8px;color:var(--muted);font-size:10px}.flight-map-legend span{display:flex;align-items:center;gap:5px}.flight-map-legend i{width:8px;height:8px;border-radius:50%}.flight-map-legend i.start{background:#2d8068}.flight-map-legend i.end{background:#c87824}.flight-map-legend small{margin-left:auto}.flight-detail-columns{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px;margin-top:20px}.flight-detail-columns>div{padding:14px;border:1px solid var(--line);border-radius:6px}.flight-detail-columns p{margin:6px 0;color:#4c5d58;font-size:10px;line-height:1.45}.flight-detail-groups{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.flight-detail-groups>section{padding:11px;border:1px solid var(--line);border-radius:6px;background:#fbfcfc}.flight-detail-groups>section.wide{grid-column:1/-1}.flight-detail-groups h3{margin:0 0 9px;color:#52635e;font-size:10px;text-transform:uppercase;letter-spacing:.04em}.flight-detail-groups .flight-detail-metrics{grid-template-columns:repeat(2,1fr)}.flight-detail-groups .transition-metrics{grid-template-columns:repeat(4,1fr)}.flight-record-phase{display:flex;align-items:center;gap:10px;margin:17px 0 9px;color:var(--teal-dark);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.flight-record-phase:after{content:"";height:1px;flex:1 1;background:var(--line)}.preflight-summary .weather-summary{grid-template-columns:repeat(4,1fr)}.preflight-summary .wide-metric{grid-column:1/-1}.preflight-check-summary{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.preflight-check-summary>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-radius:5px;background:#f3f6f5;color:#344b43;font-size:10px;font-weight:650}.record-check{white-space:nowrap;font-size:9px;font-weight:750}.record-check.complete{color:var(--teal)}.record-check.incomplete{color:#a3443c}.breadcrumbs button{border:0;padding:0;background:transparent;color:#4d625f;cursor:pointer}.action-button,.refresh-button{height:38px;padding:0 16px;border-radius:6px}.operations-workspace{min-height:100vh;background:#f4f5f4}.operations-heading{padding:30px 36px 22px;display:flex;justify-content:space-between;align-items:flex-end}.operations-heading h1{margin:8px 0 5px;font-size:30px;letter-spacing:-.025em}.operations-heading p{margin:0;color:var(--muted);font-size:13px}.page-alert{margin:0 36px 14px;padding:11px 14px;border-radius:6px;font-size:12px}.page-alert.error{color:#842f2a;background:#fff0ee;border-left:3px solid #a93a33}.page-alert.success{color:#285947;background:#e5f0eb;border-left:3px solid var(--teal)}.operations-card{margin:0 36px 36px;background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 3px 14px rgba(25,52,47,.05)}.metric-row{min-height:105px;padding:20px 24px;display:grid;grid-template-columns:repeat(3,minmax(160px,240px));grid-gap:18px;gap:18px;border-bottom:1px solid var(--line)}.metric-row>div{padding:13px 16px;display:grid;grid-gap:6px;gap:6px;background:#f4f7f6;border-radius:6px}.metric-row small{color:#73827f;font-size:11px}.metric-row strong{color:#274e40;font-size:23px}.data-table{overflow:auto}.data-row{min-width:960px;display:grid;grid-template-columns:1.1fr 1.35fr 1.1fr 1fr 1fr .8fr;align-items:center;grid-gap:16px;gap:16px;padding:14px 20px;border-bottom:1px solid #e8ecea;color:#3f4844;font-size:12px}.data-row.battery{grid-template-columns:1.2fr 1fr 1.1fr .7fr .8fr .8fr}.data-row.header{min-height:42px;padding-block:10px;background:#f7f9f8;color:#74817e;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.035em}.data-row.flight-row{min-width:950px;grid-template-columns:.85fr .7fr 1.15fr .9fr .65fr .65fr .75fr 1.2fr}.flight-actions{display:flex;flex-wrap:wrap;gap:6px}.table-button.danger{border-color:#d7aaa5;color:#943a32}.table-button.primary{color:white;border-color:var(--teal);background:var(--teal)}.data-row.flight-row>span:nth-child(7){display:flex;align-items:center;gap:7px}.fleet-flight-metrics{grid-template-columns:repeat(2,minmax(180px,280px))}.operations-workspace.flights>.operations-card{display:none}.flight-records-panel .operations-card{display:block}.flight-summary-card{margin-bottom:18px}.flight-summary-card .metric-row{border-bottom:0}.flight-list-card{margin-bottom:18px}.flight-list-heading{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line)}.flight-list-heading h2{margin:0 0 3px;color:#263c34;font-size:16px}.flight-list-heading p{margin:0;color:var(--muted);font-size:10px}.empty-state.compact{min-height:130px;padding-block:24px}.engine-run-list{margin-bottom:18px}.data-row.engine-run-row{min-width:1100px;grid-template-columns:.8fr 1.6fr .7fr .7fr .75fr .8fr .7fr .55fr}.engine-run-form{width:min(720px,100%)}.engine-run-detail{width:min(1180px,96vw);max-height:94vh;overflow:auto}.engine-run-metrics{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));grid-gap:10px;gap:10px;margin-bottom:16px}.engine-run-metrics>div{display:grid;grid-gap:5px;gap:5px;padding:13px 15px;border-radius:6px;background:#f2f6f4}.engine-run-metrics small{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.04em}.engine-run-metrics strong{color:var(--teal-dark);font-size:17px}.engine-chart-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.engine-chart{min-width:0;padding:12px;border:1px solid var(--line);border-radius:7px;background:#fbfcfc}.engine-chart.empty{min-height:150px;display:grid;place-content:center;text-align:center}.engine-chart.empty p{color:var(--muted);font-size:10px}.engine-chart-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.engine-chart h3,.vibration-section h3{margin:0;font-size:12px}.engine-chart-heading span{color:var(--muted);font-size:9px}.engine-chart svg{width:100%;height:auto}.engine-chart svg text{fill:#7b8985;font-size:9px}.engine-chart svg text.engine-chart-axis-label{fill:#52635d;font-size:9px;font-weight:700}.engine-chart-axis{stroke:#cdd8d4;stroke-width:1}.engine-chart-gridline{stroke:#e6ece9;stroke-width:1}.engine-chart-legend{display:flex;flex-wrap:wrap;gap:10px;color:#5c6b66;font-size:9px}.engine-chart-legend span{display:flex;align-items:center;gap:4px}.engine-chart-legend i{width:14px;height:3px;border-radius:2px}.vibration-analysis-table{margin-top:12px;border:1px solid var(--line);border-radius:7px;overflow:hidden}.vibration-analysis-row{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.35fr;grid-gap:12px;gap:12px;align-items:start;padding:11px 12px;border-top:1px solid var(--line)}.vibration-analysis-row:first-child{border-top:0}.vibration-analysis-row.header{background:#f2f5f4;color:#61706b;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.vibration-analysis-row.limit-exceeded{background:#fff0ee;box-shadow:inset 4px 0 0 #b9443b}.vibration-analysis-row.limit-exceeded small{color:#7f4b47}.vibration-analysis-row>span{min-width:0;display:flex;flex-direction:column;gap:3px;font-size:10px}.vibration-analysis-row small{color:var(--muted);line-height:1.35}.vibration-analysis-status{width:9px;height:9px;border-radius:50%;margin-bottom:2px;background:#9ba7a3}.vibration-analysis-status.within_limits{background:#2d8068}.vibration-analysis-status.limit_exceeded{background:#b9443b}.vibration-analysis-status.insufficient_data{background:#d18a24}.field-help{margin:0 0 12px;color:var(--muted);font-size:10px;line-height:1.45}.vibration-section{margin-top:18px;padding:15px;border:1px solid var(--line);border-radius:7px}.vibration-section>div:first-child p{margin:4px 0 12px;color:var(--muted);font-size:10px}.vibration-comparison{display:grid;grid-gap:10px;gap:10px}.vibration-toggles{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.vibration-toggles fieldset{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0;padding:9px 11px;border:1px solid var(--line);border-radius:6px}.vibration-toggles legend{padding:0 5px;color:var(--teal-dark);font-size:10px;font-weight:700}.vibration-toggles label{display:flex;align-items:center;gap:5px;margin:0;font-size:10px}.vibration-toggles input{width:14px;min-height:14px;margin:0}.vibration-empty{padding:18px;color:var(--muted);background:#f7f9f8;text-align:center}.vibration-result{display:grid;grid-template-columns:220px 1fr;grid-gap:14px;gap:14px;align-items:center;margin:10px 0;padding:10px;background:#f7f9f8;border-radius:6px}.vibration-result>div{display:grid;grid-gap:4px;gap:4px}.vibration-result small,.vibration-result span{color:var(--muted);font-size:9px;overflow-wrap:anywhere}.add-vibration-form{display:grid;grid-template-columns:180px 1fr auto;grid-gap:10px;gap:10px;align-items:end;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.add-vibration-form label{margin:0}.add-vibration-form button{height:38px}@media (max-width:850px){.engine-chart-grid,.vibration-toggles{grid-template-columns:1fr}.engine-run-metrics{grid-template-columns:repeat(2,1fr)}.add-vibration-form,.vibration-result{grid-template-columns:1fr}}.operations-workspace.maintenance>.operations-card,.operations-workspace.personnel>.operations-card{display:none}.maintenance-panel-wrap .operations-card,.personnel-panel-wrap .operations-card{margin-top:0}.data-row.personnel{grid-template-columns:1.2fr 3fr .8fr .7fr;min-width:720px}.data-row.maintenance{grid-template-columns:1fr 1.5fr 2.2fr 1fr .8fr;min-width:940px}.qualification-list{display:flex!important;flex-wrap:wrap;gap:6px!important}.qualification-list i{padding:4px 8px;border-radius:12px;color:#315849;background:#e6efeb;font-size:9px;font-style:normal;font-weight:700}.qualification-checklist{display:grid;grid-template-columns:1fr 1fr;grid-gap:2px 15px;gap:2px 15px;margin-top:16px;padding:14px 16px;border:1px solid #dce4e1;border-radius:6px}.qualification-checklist legend{padding:0 6px;color:#53645f;font-size:11px;font-weight:700}.qualification-checklist label{display:flex;align-items:center;gap:9px}.qualification-checklist input{width:16px;min-height:16px}.dashboard-workspace{min-height:100vh;background:#f4f5f4}.dashboard-heading{padding:48px 48px 26px}.dashboard-heading h1{margin:12px 0 7px;font-size:34px;letter-spacing:-.03em}.dashboard-heading p{margin:0;color:var(--muted);font-size:14px}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));grid-gap:20px;gap:20px;padding:0 48px 40px}.dashboard-card{min-height:210px;padding:26px;display:grid;grid-template-rows:auto 1fr auto;grid-gap:18px;gap:18px;border:1px solid var(--line);border-radius:10px;color:#202622;background:white;text-align:left;box-shadow:0 4px 18px rgba(25,52,47,.06);cursor:pointer;transition:transform .15s,box-shadow .15s}.dashboard-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(25,52,47,.11)}.dashboard-card-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;color:white;background:var(--teal)}.dashboard-card-icon .icon{width:22px;height:22px}.dashboard-card h2{margin:0 0 8px;font-size:19px}.dashboard-card p{max-width:440px;margin:0;color:var(--muted);font-size:12px;line-height:1.55}.dashboard-card strong{display:flex;align-items:center;gap:5px;color:var(--teal-dark);font-size:11px}.dashboard-card strong .icon{width:14px}.aircraft-dashboard-heading{padding:42px 48px 26px;display:flex;align-items:center;justify-content:space-between}.aircraft-dashboard-heading h1{margin:10px 0 5px;font-size:34px}.aircraft-dashboard-heading p{margin:0;color:var(--muted);font-size:13px}.aircraft-readiness{display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid #cfe0da;border-radius:7px;background:#eef6f3}.aircraft-readiness>i{width:10px;height:10px;border-radius:50%;background:var(--teal)}.aircraft-readiness div{display:grid;grid-gap:3px;gap:3px}.aircraft-readiness strong{font-size:12px}.aircraft-readiness small{color:var(--muted);font-size:10px}.aircraft-dashboard-grid{padding:0 48px 42px;display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));grid-gap:20px;gap:20px}.aircraft-summary-card{min-height:245px;padding:23px;display:grid;grid-template-rows:auto 1fr auto;grid-gap:20px;gap:20px;border:1px solid var(--line);border-radius:9px;background:white;box-shadow:0 4px 18px rgba(25,52,47,.055)}.aircraft-summary-card.payload-summary{min-height:0}.aircraft-card-heading{display:flex;align-items:center;gap:12px}.aircraft-card-heading>span{width:38px;height:38px;display:grid;place-items:center;border-radius:7px;color:white;background:var(--teal)}.aircraft-card-heading .icon{width:19px;height:19px}.aircraft-card-heading h2{margin:0 0 4px;font-size:17px}.aircraft-card-heading p{margin:0;color:var(--muted);font-size:11px}.aircraft-card-metrics{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.aircraft-card-metrics.three{grid-template-columns:repeat(3,1fr)}.aircraft-card-metrics>div{display:grid;align-content:center;grid-gap:5px;gap:5px;padding:14px;border-radius:6px;background:#f4f7f6}.aircraft-card-metrics strong{color:#274e40;font-size:24px}.aircraft-card-metrics small{color:var(--muted);font-size:10px}.aircraft-summary-card>button{justify-self:start;display:flex;align-items:center;gap:5px;padding:0;border:0;color:var(--teal-dark);background:transparent;font-size:11px;font-weight:700;cursor:pointer}.aircraft-summary-card>button .icon{width:13px;height:13px}.aircraft-records-card{grid-column:1/-1;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:white;box-shadow:0 4px 18px rgba(25,52,47,.055)}.aircraft-record-subtable+.aircraft-record-subtable{border-top:8px solid #eef2f0}.aircraft-record-heading{min-height:68px;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line)}.aircraft-record-heading h2{margin:0 0 4px;font-size:16px}.aircraft-record-heading p{margin:0;color:var(--muted);font-size:10px}.aircraft-record-actions,.aircraft-record-heading button{display:flex;align-items:center;gap:7px}.aircraft-record-actions>button:first-child,.aircraft-record-heading>button{padding:0;border:0;color:var(--teal-dark);background:transparent;font-size:11px;font-weight:700;cursor:pointer}.aircraft-record-heading .icon{width:13px;height:13px}.data-row.aircraft-maintenance-row{min-width:800px;grid-template-columns:.8fr .8fr 1.35fr 2fr}.data-row.aircraft-flight-row{min-width:900px;grid-template-columns:.85fr .7fr 1.5fr .65fr .65fr .9fr}.sortable-table-heading{display:flex;align-items:center;gap:6px;padding:0;border:0;color:inherit;background:transparent;font:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.sortable-table-heading span{color:var(--teal);font-size:14px}.aircraft-record-empty{padding:30px 20px;color:var(--muted);font-size:11px;text-align:center}.fleet-aircraft-heading{padding:42px 48px 26px}.fleet-aircraft-heading h1{margin:10px 0 5px;font-size:34px}.fleet-aircraft-heading p{margin:0;color:var(--muted);font-size:13px}.aircraft-fleet-row{min-width:700px;grid-template-columns:1.3fr 1fr 1fr .7fr}.aircraft-fleet-table>button.aircraft-fleet-row{width:100%;border:solid #e8ecea;border-width:0 0 1px;background:white;text-align:left;cursor:pointer}.aircraft-fleet-table>button.aircraft-fleet-row:hover{background:#f3f8f6}.aircraft-fleet-row>span:last-child,.aircraft-fleet-row>span:nth-child(3){display:flex;align-items:center;gap:7px}.aircraft-fleet-row>span:last-child{color:var(--teal-dark);font-weight:700}.aircraft-fleet-row>span:last-child .icon{width:13px;height:13px}.data-row>span{min-width:0}.data-row>span:not(:last-child){display:grid;grid-gap:4px;gap:4px}.data-row b{color:#202622;font-size:12px}.data-row small{color:#7e8b88;font-size:10px}.aircraft-fleet-row>span:nth-child(3){display:flex;align-items:center;gap:7px}.data-row.maintenance>span:nth-child(5),.data-row.personnel>span:nth-child(3){display:flex;align-items:center;gap:0}.heading-actions{display:flex;align-items:flex-end;gap:10px}.record-aircraft-filter{display:flex;flex-direction:column;gap:3px;margin:0}.record-aircraft-filter span{color:var(--muted);font-size:8px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.record-aircraft-filter select{min-width:190px;height:38px;min-height:38px;padding:0 30px 0 10px;font-size:10px}.data-row.clickable{cursor:pointer}.data-row.clickable:hover{background:#f7faf8}.import-note{margin-top:14px;padding:12px;border-radius:5px;background:#f3f6f4;color:#64706b;font-size:11px;line-height:1.5}.postflight-review{width:min(650px,100%)}.review-metrics{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px}.review-metrics>div{display:grid;grid-gap:5px;gap:5px;padding:13px;border:1px solid var(--line);border-radius:6px;background:#f8faf9}.review-metrics small{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.04em}.review-metrics strong{font-size:14px}.postflight-review h3{margin:22px 0 8px;font-size:12px}.telemetry-warnings{margin:0;padding-left:19px;color:#765119;font-size:11px;line-height:1.6}.file-proof{overflow-wrap:anywhere;color:var(--muted);font-size:9px;line-height:1.6}.file-proof code{font-size:8px}.bonus-files{margin-top:18px;padding:1px 13px 8px;border-radius:6px;background:#f3f7f5}.bonus-files h3{margin-top:12px}.bonus-files p{margin:7px 0;color:#4d5b56;font-size:10px}.bonus-files .bonus-error{color:#9a332d}.review-form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 15px;gap:0 15px}.discrepancy-fields{margin-top:17px;padding:12px 15px;border:1px solid #d8e1de;border-radius:6px}.discrepancy-fields legend{padding:0 6px;font-size:11px;font-weight:700}.discrepancy-fields legend small{color:var(--muted);font-weight:400}.discrepancy-fields .discrepancy-toggle{display:flex;grid-column:1/-1;align-items:center;gap:8px}.discrepancy-fields .discrepancy-toggle input{width:16px;min-height:16px}.postflight-review{width:min(760px,100%)}.discrepancy-list{display:grid;grid-gap:10px;gap:10px}.discrepancy-entry{display:grid;grid-gap:8px;gap:8px;padding:12px;border:1px solid var(--line);border-radius:6px;background:#fbfcfc}.discrepancy-entry-heading{display:flex;align-items:center;justify-content:space-between}.discrepancy-entry-heading strong{color:var(--teal-dark);font-size:11px}.discrepancy-entry-heading button{width:26px;height:26px;border:0;border-radius:4px;color:#7c3732;background:#f7e9e7;cursor:pointer}.discrepancy-entry label{margin:0}.discrepancy-entry .grounding-toggle{display:flex;flex-direction:row;align-items:center;gap:8px;color:#873b34}.discrepancy-entry .grounding-toggle input{width:15px;min-height:15px}.add-discrepancy-button{margin-top:10px;height:34px;padding:0 12px;border:1px solid var(--teal);border-radius:5px;color:var(--teal-dark);background:white;font-size:10px;font-weight:750;cursor:pointer}.general-maintenance-notes>p{margin:0 0 9px;color:var(--muted);font-size:10px}.general-maintenance-notes label{margin:0}.postflight-groups{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.postflight-groups fieldset{min-width:0;padding:8px 13px 4px;border:1px solid var(--line);border-radius:6px;background:#fbfcfc}.postflight-groups legend{padding:0 6px;color:#53645f;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.04em}.postflight-groups .review-form-grid{gap:0 10px}.postflight-groups label{margin:7px 0}.review-metrics.compact{grid-template-columns:repeat(2,1fr);gap:7px;padding-bottom:8px}.review-metrics.compact>div{padding:9px 10px}.postflight-track{margin-top:14px}.postflight-track .flight-track-map{max-height:280px}.postflight-groups .review-form-grid>label{min-width:0}.postflight-groups input,.postflight-groups select{width:100%;min-width:0;box-sizing:border-box}.postflight-groups .datetime-stack{grid-template-columns:1fr}.postflight-groups .datetime-stack input{font-size:13px}.interactive-flight-map{position:relative}.map-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.map-controls,.map-style-switch{display:flex;gap:4px}.map-controls button,.map-style-switch button{height:28px;padding:0 10px;border:1px solid #b8c9c3;color:#39564c;background:white;font-size:10px;font-weight:700;cursor:pointer}.map-controls button:first-child,.map-style-switch button:first-child{border-radius:5px 0 0 5px}.map-controls button:last-child,.map-style-switch button:last-child{border-radius:0 5px 5px 0}.map-style-switch button.active{color:white;border-color:var(--teal);background:var(--teal)}.map-controls button{width:31px;padding:0;font-size:16px}.flight-track-map.interactive{cursor:-webkit-grab;cursor:grab;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:#d8dfdc}.flight-track-map.interactive:active{cursor:-webkit-grabbing;cursor:grabbing}.flight-track-map.interactive image{pointer-events:none}.flight-track-shadow{fill:none;stroke:rgba(255,255,255,.92);stroke-width:7px;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}.flight-track-line{fill:none;stroke:#e08b24;stroke-width:3px;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}.cesium-flight-map{position:relative}.cesium-map-canvas{width:100%;height:380px;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#111a22}.cesium-flight-map .map-controls{align-items:center}.cesium-flight-map .map-controls button{width:auto;padding:0 11px;font-size:10px}.cesium-flight-map .view-controls button.active{color:white;border-color:var(--teal);background:var(--teal)}.postflight-track .cesium-map-canvas{height:330px}.cesium-viewer-bottom,.cesium-viewer-toolbar{display:none}.terrain-pill{display:inline-flex;align-items:center;gap:6px;margin-left:7px;padding:0 9px;border-radius:12px;color:#315849;background:#e6efeb;font-size:9px;font-weight:700}.terrain-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:#2d8068}.terrain-pill.loading:before{background:#c58a2c}.terrain-pill.fallback{color:#7b4b22;background:#f7eddd}.terrain-pill.fallback:before{background:#c07b28}.flight-map-warning>div{display:grid;grid-gap:5px;gap:5px;padding:18px;text-align:center}.flight-map-warning strong{color:#7b4b22;font-size:12px}.flight-map-warning span{color:var(--muted);font-size:10px}.flight-status{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#a6afac}.flight-status.released{background:var(--teal)}.flight-status.flown{background:var(--amber)}.flight-status.reviewed{background:#24716a}.table-button{height:30px;padding:0 10px;border:1px solid #acc4bb;border-radius:4px;color:var(--teal-dark);background:white;cursor:pointer;font-size:10px;font-weight:650}.table-button.icon-action{width:31px;padding:0;display:inline-grid;place-items:center}.table-button.icon-action .icon{width:14px;height:14px}.empty-state{padding:70px 20px;display:grid;place-items:center;color:#82908d;text-align:center}.empty-state .icon{width:30px;height:30px}.empty-state h2{margin:12px 0 4px;color:#384440;font-size:16px}.empty-state p{margin:0;font-size:12px}.operations-form{width:min(680px,100%)}.operations-form .form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 16px;gap:0 16px}.operations-form .form-grid .full{grid-column:1/-1}.preflight-form{width:min(820px,100%)}.preflight-sections{display:grid;grid-gap:10px;gap:10px}.preflight-section{margin:0;padding:8px 13px 10px;border:1px solid #dce4e1;border-radius:7px;background:#fbfcfc}.preflight-section legend{padding:0 7px;color:#465a53;font-size:11px;font-weight:750}.preflight-section .form-grid{align-items:start}.preflight-section .form-grid>label{align-self:start;margin-block:6px}.battery-grid label:first-child{grid-column:1}.battery-grid label:last-child{grid-column:2}.battery-status-card{padding:11px 12px 10px;border:1px solid #d5dfdc;border-radius:6px;background:#f7f9f8;transition:border-color .15s ease,background-color .15s ease}.battery-status-card.green{border-color:#73b69d;background:#e7f4ef}.battery-status-card.yellow{border-color:#d4ad4c;background:#fff6d9}.battery-status-card.red{border-color:#ce746d;background:#fceae8}.battery-status-card.green>small{color:#24664f}.battery-status-card.yellow>small{color:#765512}.battery-status-card.red>small{color:#8e302b}.operations-form label{display:grid;grid-gap:5px;gap:5px;margin:8px 0;color:#303633;font-size:12px;font-weight:650}.operations-form label small{color:var(--muted);font-weight:400}form label:has(input[required],select[required],textarea[required]){position:relative}form label:has(input[required],select[required],textarea[required]):after{content:"*";position:absolute;top:0;right:0;color:#b83b34;font-size:14px;font-weight:800;line-height:1}.battery-form-grid label:has(.required-mark):after{content:none}.field-label{display:inline-flex;align-items:baseline;gap:4px}.required-mark{color:#b83b34;font-size:14px;font-weight:800;line-height:1}.postflight-classification{margin:0 0 14px;padding:12px 15px;border:1px solid #dce4e1;border-radius:7px;background:#fbfcfc}.postflight-classification legend{padding:0 7px;color:#465a53;font-size:11px;font-weight:750}.postflight-classification label{max-width:360px;margin:4px 0}.operations-form input,.operations-form select,.operations-form textarea{width:100%;min-height:40px;padding:8px 11px;border:1px solid #ccd7d3;border-radius:5px;outline:0;color:#202622;background:white}.operations-form textarea{resize:vertical}.operations-form input[readonly]{color:#53615c;background:#f1f4f3;cursor:not-allowed}.preflight-weather{margin:12px 0 0;padding:10px 14px 12px;border:1px solid #dce4e1;border-radius:6px}.preflight-weather legend{padding:0 6px;color:#53645f;font-size:11px;font-weight:700}.weather-lookup{display:grid;grid-template-columns:minmax(190px,1fr) auto;align-items:end;grid-gap:8px 10px;gap:8px 10px}.weather-lookup label{margin:0}.weather-lookup>button{height:40px;border-color:#bfd2ca;color:var(--teal-dark);background:#e7f0ed}.weather-lookup>button:hover:not(:disabled){background:#d8e8e2}.weather-lookup>button:disabled{background:#f0f3f2}.weather-lookup>small{grid-column:1/-1;color:var(--muted);font-size:10px}.weather-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:2px 12px;gap:2px 12px}.weather-grid .full{grid-column:1/-1}.preflight-weather>p{margin:7px 0 0;color:var(--muted);font-size:9px}.weather-grid label.weather-caution,.weather-grid label.weather-danger{align-self:start;margin-top:5px;padding:7px 8px;border:1px solid;border-radius:6px}.weather-grid label.weather-caution{color:#765412;border-color:#e5ca79;background:#fff3c8}.weather-grid label.weather-danger{color:#8c302b;border-color:#dfa39e;background:#fbe2df}.weather-grid label.weather-caution small,.weather-grid label.weather-danger small{margin-top:4px;font-size:9px;font-weight:700}.weather-lookup-error{grid-column:1/-1;padding:9px 11px;border-left:3px solid #bf4a41;border-radius:3px;color:#922f28;background:#fff0ee;font-size:11px;line-height:1.4}.density-altitude{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px;padding:12px 14px;border:1px solid transparent;border-radius:6px}.density-altitude small{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.density-altitude strong{font-size:17px}.density-altitude.normal{color:#1f624e;border-color:#a9d4c5;background:#e1f2ec}.density-altitude.caution{color:#765412;border-color:#e5ca79;background:#fff3c8}.density-altitude.high{color:#8c302b;border-color:#dfa39e;background:#fbe2df}.density-altitude.unavailable{color:#69736f;border-color:#d7dedb;background:#f2f5f4}.density-altitude.unavailable strong{font-size:11px;font-weight:600}.flight-density-altitude{margin:14px 0 18px}.flight-record-phase{margin:22px 0 12px}.flight-record-phase:after,.flight-record-phase:before{content:"";height:2px;flex:1 1;background:#b9cbc5}.flight-record-phase span{padding:5px 10px;border-radius:999px;background:#e7f0ed}.record-correction-warning{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 16px;padding:12px 14px;border:1px solid #e1bf73;border-radius:6px;color:#6f4e12;background:#fff4cf}.record-correction-warning>div{display:grid;grid-gap:3px;gap:3px}.record-correction-warning strong{font-size:11px}.record-correction-warning span{font-size:10px;line-height:1.4}.record-correction-warning>button{flex:0 0 auto;border-color:#cba34d;background:#fffaf0}.notam-field{margin-top:4px;padding:12px;border:1px solid #dce4e1;border-radius:6px;background:#f8faf9}.notam-field>div{display:grid;grid-template-columns:1fr auto;align-items:end;grid-gap:10px;gap:10px}.notam-field label{margin:0}.notam-field>small{display:block;margin-top:7px;color:var(--muted);font-size:9px;line-height:1.4}.notam-search-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 12px;border:1px solid #bfd2ca;border-radius:5px;color:var(--teal-dark);background:#e7f0ed;font-size:10px;font-weight:700;text-decoration:none;white-space:nowrap}.preflight-authorization-summary{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-bottom:12px}.preflight-authorization-summary>div{display:grid;grid-gap:4px;gap:4px;padding:12px;border:1px solid var(--line);border-radius:6px;background:#f8faf9}.preflight-authorization-summary small{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.04em}.preflight-authorization-summary strong{font-size:11px;line-height:1.4}.preflight-authorization-summary span{color:var(--muted);font-size:9px}.checklist{margin:16px 0 0;padding:14px 16px;border:1px solid #dce4e1;border-radius:6px}.checklist legend{padding:0 6px;color:#53645f;font-size:11px;font-weight:700}.checklist label{display:flex;align-items:center;gap:9px;margin:8px 0}.checklist input{width:16px;min-height:16px}.preflight-form>.checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px 18px;gap:8px 18px;margin-top:12px;padding:10px 14px 12px}.preflight-form>.checklist label{display:flex;flex-direction:row;align-items:center;gap:7px;margin:0;white-space:nowrap}.preflight-form>.checklist input{flex:0 0 15px;width:15px;height:15px;min-height:15px;margin:0;padding:0}.preflight-form>.checklist label:after{position:static;margin-left:1px}.operations-form .form-grid+.checklist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px 14px;gap:8px 14px;padding:9px 12px 11px}.operations-form .form-grid+.checklist label{display:flex;flex-direction:row;align-items:center;gap:7px;margin:1px 0;font-size:10px;line-height:1.2;white-space:nowrap}.operations-form .form-grid+.checklist input{flex:0 0 14px;width:14px;height:14px;min-height:14px;margin:0;padding:0}.person-name-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.personnel-form .qualification-checklist{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px 12px;padding:11px 12px}.operations-form.personnel-form .qualification-checklist label{display:flex;flex-direction:row;align-items:center;gap:6px;margin:2px 0;font-size:11px;line-height:1.2;white-space:nowrap;cursor:pointer}.operations-form.personnel-form .qualification-checklist input{flex:0 0 13px;width:13px;height:13px;min-height:13px;padding:0;margin:0}.aircraft-card-actions{display:flex;align-items:center;justify-content:space-between;gap:14px}.aircraft-card-actions>button:first-child{display:flex;align-items:center;gap:5px;padding:0;border:0;color:var(--teal-dark);background:transparent;font-size:11px;font-weight:700;cursor:pointer}.aircraft-card-actions>button:first-child .icon{width:13px;height:13px}.aircraft-card-actions>.primary-button,.aircraft-card-heading>.aircraft-add-flight{min-height:34px;padding:8px 14px;font-size:11px}.aircraft-card-heading>.aircraft-add-flight{width:auto;margin-left:auto;white-space:nowrap}.maintenance-summary-body li>span:first-child{display:grid;grid-gap:3px;gap:3px}.maintenance-due-status{align-self:center;padding:4px 7px;border-radius:999px;font-weight:750;white-space:nowrap}.maintenance-due-status.current{color:#24664f;background:#e4f2ed}.maintenance-due-status.coming_due{color:#765412;background:#fff3c8}.maintenance-due-status.due,.maintenance-due-status.overdue{color:#8c302b;background:#fbe2df}.maintenance-requirement-form{width:min(760px,100%)}.maintenance-requirement-form .form-grid .full{grid-column:1/-1}.maintenance-intervals{margin-top:12px;padding:9px 13px 11px;border:1px solid #dce4e1;border-radius:6px}.maintenance-intervals legend{padding:0 6px;color:#53645f;font-size:11px;font-weight:700}.maintenance-intervals>p{margin:0 0 4px;color:var(--muted);font-size:10px}.maintenance-intervals .form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.maintenance-defaults-form{width:min(820px,100%)}.maintenance-template-list{margin-bottom:12px;padding:10px 12px;border:1px solid #dce4e1;border-radius:6px;background:#f8faf9}.maintenance-template-list h3{margin:0 0 7px;color:#465a53;font-size:11px}.maintenance-template-list>div{display:grid;grid-template-columns:minmax(220px,1fr) auto 34px;align-items:center;grid-gap:12px;gap:12px;padding:7px 5px;border-top:1px solid #e3e9e7}.maintenance-template-list>div:first-of-type{border-top:0}.maintenance-template-list span:first-child{display:grid;grid-gap:2px;gap:2px}.maintenance-template-list small{color:var(--muted);font-size:9px}.maintenance-template-list i,.maintenance-template-list span:nth-child(2){color:#53645f;font-size:10px;font-style:normal}.maintenance-default-entry{padding:9px 13px 11px;border:1px solid #dce4e1;border-radius:6px}.maintenance-default-entry legend{padding:0 6px;color:#53645f;font-size:11px;font-weight:700}.maintenance-default-entry .full{grid-column:1/-1}.maintenance-default-limits{grid-template-columns:repeat(3,minmax(0,1fr))!important}.operations-form .propagation-toggle{display:flex;flex-direction:row;align-items:flex-start;gap:7px;padding:8px 10px;border-radius:5px;background:#edf4f1;font-size:10px;line-height:1.4}.operations-form .propagation-toggle input{flex:0 0 14px;width:14px;height:14px;min-height:14px;margin:0;padding:0}.aircraft-summary-card.payload-summary{grid-column:1/-1}.payload-configuration-list{display:grid;grid-gap:8px;gap:8px}.payload-configuration-list>div{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(90px,.6fr) minmax(90px,.6fr) auto;align-items:center;grid-gap:12px;gap:12px;padding:11px 13px;border:1px solid var(--line);border-radius:6px;background:#f7f9f8}.payload-configuration-list span{display:grid;grid-gap:3px;gap:3px}.payload-configuration-list p{margin:0;color:var(--muted);font-size:11px}.payload-configuration-form{width:min(760px,100%)}.payload-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px 10px;gap:8px 10px;margin:14px 0;padding:12px 14px;border:1px solid #dce4e1;border-radius:6px}.payload-selector legend,.payload-weight-sections legend{padding:0 6px;color:#53645f;font-size:11px;font-weight:700}.operations-form .payload-selector>label{display:flex;align-items:center;gap:9px;min-width:0;margin:0;padding:8px 10px;border:1px solid #e1e8e5;border-radius:5px;background:#fbfcfc}.payload-selector>label input{flex:0 0 16px;width:16px;min-height:16px;margin:0}.payload-selector>label span{display:grid;min-width:0;grid-gap:2px;gap:2px}.payload-selector>label span b,.payload-selector>label span small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payload-selector>button{align-self:center;justify-self:start;margin:0}@media (max-width:980px){.payload-selector{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.payload-selector{grid-template-columns:1fr}}.payload-weight-sections{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.payload-weight-sections fieldset{padding:12px 14px;border:1px solid #dce4e1;border-radius:6px}.payload-weight-sections fieldset>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.payload-weight-total{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:5px;padding:11px 12px;border-radius:5px;color:#234d3e;background:#e7f0ed}.payload-weight-total span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.035em}.payload-weight-total strong{font-size:16px}.payload-weight-sections fieldset>.payload-cg-limit{display:block}.payload-cg-limit{margin-top:9px;padding:12px 14px 7px;border:1px solid #dce4e1;border-radius:5px;background:#fbfcfc}.payload-cg-limit>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.payload-cg-limit span{color:#596863;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.035em}.payload-cg-limit strong{font-size:16px}.payload-cg-limit strong.valid{color:#22644e}.payload-cg-limit strong.invalid{color:#a03932}.payload-cg-limit strong.neutral{color:#7e8985}.payload-cg-limit svg{width:100%;height:auto;display:block;margin-top:3px;overflow:visible}.payload-cg-limit svg text{fill:#596863;font-size:11px;font-weight:700}.cg-axis{stroke:#adb9b5;stroke-width:2}.cg-allowed-line{stroke:#4a876f;stroke-width:7;stroke-linecap:round;opacity:.35}.cg-limit-tick{stroke:#3f6557;stroke-width:1.5}.cg-marker{stroke-width:2;stroke-dasharray:2 2}.cg-marker.valid{stroke:#26705a}.cg-marker.invalid{stroke:#b33f37}.cg-marker-point{stroke:white;stroke-width:2}.cg-marker-point.valid{fill:#26705a}.cg-marker-point.invalid{fill:#b33f37}.payload-cg-envelope{margin-top:14px;padding:14px 16px 12px;border:1px solid #d6e0dc;border-radius:6px;background:#f8faf9}.payload-cg-envelope h3{margin:0 0 3px;color:#2b3833;font-size:13px}.payload-cg-envelope p{margin:0;color:var(--muted);font-size:10px}.payload-cg-envelope svg{width:100%;max-height:285px;display:block;margin-top:8px}.cg-grid line{stroke:#dce3e0;stroke-width:1}.cg-grid text{fill:#73817d;font-size:8px}.cg-envelope-area{fill:#b8ded1;opacity:.72}.cg-envelope-border{fill:none;stroke:#316a57;stroke-width:2}.cg-axis-label{fill:#4d5d57;font-size:9px;font-weight:700}.cg-condition circle{stroke:white;stroke-width:2}.cg-condition text{fill:#35443f;font-size:8px;font-weight:700}.cg-condition.empty circle{fill:#d68b2d}.cg-condition.full circle{fill:#24716a}.cg-chart-legend{display:flex;flex-wrap:wrap;gap:13px;color:#5c6965;font-size:9px}.cg-chart-legend span{display:flex;align-items:center;gap:5px}.cg-chart-legend i{width:8px;height:8px;border-radius:50%}.cg-chart-legend i.empty{background:#d68b2d}.cg-chart-legend i.full{background:#24716a}.cg-chart-legend i.limit{width:18px;height:7px;border-radius:2px;background:#b8ded1;border:1px solid #316a57}.cg-chart-legend i.fueled,.cg-condition.fueled circle{fill:#7356a8;background:#7356a8}.weight-balance-limits-form{width:min(760px,100%)}.weight-balance-limits-form fieldset{margin:12px 0;padding:8px 14px 4px;border:1px solid #dce4e1;border-radius:6px}.weight-balance-limits-form legend{padding:0 6px;color:#53645f;font-size:11px;font-weight:700}.weight-balance-limits-form .form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.model-limit-warning{padding:10px 12px;border-left:3px solid #c58a2c;border-radius:4px;color:#725019;background:#fff4dc;font-size:10px;line-height:1.45}.preflight-weight-balance{margin:18px 0;padding:16px;border:1px solid #cbd9d4;border-radius:8px;background:#f8faf9}.preflight-weight-balance>label{display:grid;grid-gap:6px;gap:6px}.wb-baseline,.wb-result{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:12px}.wb-baseline{grid-template-columns:repeat(2,minmax(0,1fr))}.wb-baseline>div,.wb-result>span,.wb-result>strong{display:grid;grid-gap:3px;gap:3px;padding:10px 12px;border-radius:6px;background:#edf3f1}.wb-baseline small{color:var(--muted)}.wb-method{display:flex;gap:8px;margin:12px 0}.wb-method button{padding:9px 14px;border:1px solid #9eb4ac;border-radius:5px;color:#34584c;background:white;font-weight:700}.wb-method button.active{color:white;background:var(--green)}.wb-input-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.wb-input-grid.fuel{grid-template-columns:minmax(220px,1fr) 2fr}.wb-input-grid label{display:grid;grid-gap:6px;gap:6px}.wb-result.valid{border-left:4px solid #28705a}.wb-result.invalid{border-left:4px solid #b64a3d}.preflight-weight-balance>label:first-of-type{display:none}.flight-configuration-choice small{color:var(--muted);font-weight:400}@media (max-width:1260px){.global-nav{width:76px;padding-inline:12px}.brand{padding-inline:7px}.global-nav .brand-logo{width:48px;height:44px;background-image:url(/brand/va-wings-favicon.png);background-size:contain;background-position:50%}.global-nav nav span,.nav-bottom>a span,.profile b,.profile small{display:none}.global-nav nav .nav-button,.global-nav nav a,.nav-bottom>a{justify-content:center;padding:0}.profile{display:flex;justify-content:center;padding:7px 0}.workspace{margin-left:76px;width:calc(100% - 76px)}.config-layout{grid-template-columns:235px minmax(410px,1fr) 270px}}.engine-run-list .flight-list-heading>.action-button,.operations-workspace.maintenance .operations-heading .heading-actions>.ghost-button.action-button{display:none}.engine-run-list .empty-state p{font-size:0}.engine-run-list .empty-state p:after{content:"Use + New maintenance item and select Engine Run.";font-size:.95rem}.vibration-upload-choice{margin:4px 0 0;padding:10px 12px 12px}.vibration-upload-list{display:grid;grid-gap:8px;gap:8px;width:100%}.vibration-upload-row{display:grid;grid-template-columns:minmax(150px,.35fr) minmax(260px,1fr) auto;align-items:end;grid-gap:12px;gap:12px;padding:9px 10px;border:1px solid #e0e7e4;border-radius:6px;background:#fbfcfc}.vibration-row-delete{align-self:end;margin-bottom:2px}.operations-form .vibration-upload-row label{display:grid;grid-gap:5px;gap:5px;min-width:0;margin:0}.operations-form .vibration-upload-choice .vibration-upload-row input{box-sizing:border-box;width:100%;min-height:40px;margin:0;padding:8px 11px}.vibration-upload-list>.ghost-button{justify-self:start;width:auto;margin-top:2px}.saved-vibration-data{display:grid;grid-gap:8px;gap:8px;margin:4px 0;padding:10px 12px 12px;border:1px solid var(--line);border-radius:6px}.saved-vibration-data legend{padding:0 6px;color:var(--teal-dark);font-size:11px;font-weight:700}.saved-vibration-row{display:grid;grid-template-columns:minmax(150px,.35fr) minmax(260px,1fr) auto;align-items:end;grid-gap:10px;gap:10px;padding:9px 10px;border:1px solid #e0e7e4;border-radius:6px;background:#fbfcfc}.saved-vibration-row label{margin:0}.saved-vibration-row .remove-vibration-check{display:flex;align-items:center;gap:6px;min-height:40px;color:#963b34}.saved-vibration-row .remove-vibration-check input{width:16px;min-height:16px;margin:0}.data-row.maintenance.editable{grid-template-columns:.75fr 1fr .9fr 1.35fr 2fr 1fr minmax(105px,.65fr);min-width:1160px}.data-row.maintenance.editable .flight-actions{flex-wrap:nowrap;min-width:105px}@media (max-width:760px){.saved-vibration-row,.vibration-upload-row{grid-template-columns:1fr}}.data-row.users{grid-template-columns:1.4fr 1fr 1fr .8fr .5fr;min-width:760px}.inline-status{display:flex!important;align-items:center;gap:7px!important}.inline-status i{width:8px;height:8px;border-radius:50%}.inline-status i.green{background:var(--teal)}.inline-status i.gray{background:#a9b3b0}.record-files{margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:7px;background:#f8faf9}.record-files-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.record-files-heading h3,.record-files-heading p{margin:0}.record-files-heading p{margin-top:4px;color:var(--muted);font-size:10px}.record-files-heading label{cursor:pointer}.record-file-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.modal-heading-actions label.primary-button,.record-file-actions label.ghost-button,.record-file-actions label.primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;margin:0;padding:0 15px;border-radius:6px;font-size:12px;font-weight:650;line-height:1;white-space:nowrap}.record-file-actions .process-stored-files{min-height:38px;padding:0 15px;border-radius:6px;font-size:12px;font-weight:650;cursor:pointer;white-space:nowrap}.modal-heading-actions label.upload-complete,.record-file-actions label.upload-complete{background:#246b55;border-color:#1e5d4a}.file-upload-progress{margin-top:12px;padding:11px 12px;border:1px solid #b9d3ca;border-radius:6px;background:#eef6f3}.file-upload-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:16px}.file-upload-progress span{min-width:0;display:grid;grid-gap:2px;gap:2px}.file-upload-progress span small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.file-upload-progress strong,.file-upload-progress>strong{color:var(--teal);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.file-upload-progress-track{height:9px;margin:9px 0 5px;overflow:hidden;border-radius:999px;background:#d4e1dd}.file-upload-progress-track i{display:block;height:100%;border-radius:inherit;background:var(--teal);transition:width .12s linear}.file-upload-progress>small{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.modal-heading-actions{display:flex;align-items:center;gap:10px}.modal-heading-actions label{cursor:pointer;white-space:nowrap}.record-file-list{display:grid;margin-top:12px;border-top:1px solid var(--line)}.record-file-list>div{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:50px;border-bottom:1px solid var(--line)}.record-file-list>div>span:first-child{display:grid;grid-gap:3px;gap:3px}.record-file-list small{color:var(--muted);font-size:9px}.record-file-list>p{color:var(--muted);font-size:11px}.record-file-list .icon-button[title=Download] .icon{transform:rotate(90deg)}.axis-limit-row{display:grid;grid-template-columns:minmax(7rem,.7fr) repeat(3,minmax(9rem,1fr));grid-gap:.75rem;gap:.75rem;align-items:end;margin-top:.75rem}.axis-limit-row>b{align-self:center}.vibration-reanalysis-control{display:flex;align-items:center;justify-content:space-between;gap:18px}.vibration-reanalysis-control span{display:grid;grid-gap:4px;gap:4px}.vibration-reanalysis-control small{color:var(--muted);font-weight:400}.vibration-reanalysis-control button{flex:0 0 auto}@media (max-width:760px){.axis-limit-row{grid-template-columns:1fr}.vibration-reanalysis-control{align-items:stretch;flex-direction:column}}