:root{--bg:#f4f7fb;--panel:#fff;--text:#172033;--muted:#687386;--line:#e3e8f0;--accent:#2463eb;--accent2:#174bb8;--nav:#111827;--navmuted:#9aa4b2;--success:#147d55;--danger:#b42318;--shadow:0 10px 30px rgba(23,32,51,.07)}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}a{color:inherit}.shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.sidebar{background:var(--nav);color:white;padding:22px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;padding:2px 8px 22px}.brand-mark{width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#5d8cff,#2463eb);display:grid;place-items:center;font-weight:800;font-size:21px;box-shadow:0 8px 18px rgba(36,99,235,.35)}.brand strong{display:block;font-size:18px;letter-spacing:.04em}.brand small{display:block;color:var(--navmuted);font-size:11px;margin-top:2px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.nav-link{padding:10px 11px;border-radius:8px;text-decoration:none;color:#d9e0ea;font-size:14px}.nav-link:hover{background:#1e293b;color:white}.nav-link.disabled{color:#718096;display:flex;justify-content:space-between}.nav-link em{font-style:normal;font-size:10px;text-transform:uppercase;border:1px solid #354156;padding:2px 5px;border-radius:10px}.nav-heading{color:#697386;font-size:10px;text-transform:uppercase;letter-spacing:.14em;padding:20px 11px 5px}.nav-submenu{margin:1px 0;width:100%}.nav-submenu summary{list-style:none;padding:10px 11px;border-radius:8px;color:#d9e0ea;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px}.nav-submenu summary::-webkit-details-marker{display:none}.nav-submenu summary::after{content:"›";font-size:18px;line-height:1;color:#7f8a9b;transform:rotate(0deg);transition:transform .15s ease;flex:0 0 auto}.nav-submenu[open] summary::after{transform:rotate(90deg)}.nav-submenu summary:hover{background:#1e293b;color:white}.nav-submenu-links{margin:2px 0 5px 11px;padding-left:8px;border-left:1px solid #354156;display:flex;flex-direction:column;gap:2px}.nav-submenu-links .nav-link{display:block;padding:8px 10px;font-size:13px;color:#b9c3d1;white-space:normal}.sidebar-footer{margin-top:auto;border-top:1px solid #273246;padding:15px 8px 0}.identity strong,.identity small{display:block}.identity strong{font-size:13px}.identity small{font-size:11px;color:var(--navmuted);margin-top:3px}.link-button{border:0;background:none;color:#aeb8c7;padding:10px 0 0;cursor:pointer}.main{min-width:0}.topbar{height:62px;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;font-size:12px;color:var(--muted);position:sticky;top:0;z-index:5}.status-dot:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#21a66b;margin-right:7px}.content{padding:28px 30px 60px;max-width:1600px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.page-heading h1{font-size:27px;margin:4px 0}.page-heading p{margin:0}.muted{color:var(--muted)}.back{font-size:13px;color:var(--muted);text-decoration:none}.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));gap:14px;margin-bottom:20px}.metric-grid.compact{grid-template-columns:repeat(4,minmax(150px,1fr))}.metric{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:17px 18px;box-shadow:var(--shadow)}.metric span{display:block;color:var(--muted);font-size:12px;margin-bottom:8px}.metric strong{font-size:23px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.grid-2.uneven{grid-template-columns:1.5fr 1fr}.panel{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:21px;box-shadow:var(--shadow);margin-bottom:18px}.panel h2{font-size:17px;margin:0 0 12px}.panel p{color:var(--muted);line-height:1.55}.panel-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:12px}.panel-head h2,.panel-head p{margin:0}.panel-head p{font-size:12px;margin-top:3px}.button,.primary{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:9px 13px;font-size:13px;text-decoration:none;border:1px solid var(--line);background:white;color:var(--text);cursor:pointer}.primary{background:var(--accent);border-color:var(--accent);color:white;font-weight:650}.primary:hover{background:var(--accent2)}.button.ghost{background:transparent}.search-bar{display:flex;gap:10px;margin-bottom:18px}.search-bar input{flex:1;max-width:680px}.stack{display:flex;flex-direction:column;gap:14px}.stack label{font-size:12px;font-weight:600;color:#465269}.stack small{display:block;color:var(--muted);margin-top:4px;font-weight:400}input,select{width:100%;padding:10px 11px;border:1px solid #cfd7e4;border-radius:8px;background:white;color:var(--text);font:inherit;margin-top:5px;outline:none}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(36,99,235,.12)}.table-panel{padding:0;overflow:hidden}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{background:#f8fafc;color:#657086;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.05em}th,td{padding:11px 13px;border-bottom:1px solid var(--line);vertical-align:top;white-space:nowrap}tbody tr:hover{background:#fafcff}td small{display:block;color:var(--muted);margin-top:3px}.num{text-align:right}.strong-link{font-weight:650;text-decoration:none;color:#17335f}.empty{text-align:center!important;color:var(--muted);padding:26px}.pager{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px;margin:14px 0 20px}.pager div{display:flex;gap:8px}.details{display:grid;grid-template-columns:130px 1fr;gap:9px 16px;font-size:13px;margin:0}.details dt{color:var(--muted)}.details dd{margin:0}.badge{display:inline-block;border:1px solid #d5dce8;background:#f7f9fc;border-radius:999px;padding:4px 8px;font-size:11px}.badge.success{background:#eaf8f2;color:var(--success);border-color:#bfe8d7}.chip-list{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:7px 9px;background:#eef4ff;border:1px solid #d9e6ff;border-radius:999px;font-size:12px;color:#264f99}.link-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.link-grid a{padding:10px;background:#f8fafc;border:1px solid var(--line);border-radius:8px;text-decoration:none;font-family:ui-monospace,monospace;font-size:12px}.login-page{min-height:100vh;display:grid;place-items:center;padding:30px;background:radial-gradient(circle at top left,#e8f0ff 0,transparent 35%),var(--bg)}.login-card{width:min(430px,100%);background:white;border:1px solid var(--line);border-radius:18px;padding:32px;box-shadow:0 25px 70px rgba(23,32,51,.12)}.login-brand{color:var(--text);padding-left:0}.login-brand small{color:var(--muted)}.login-card h1{margin:6px 0 5px}.alert{background:#fff0ee;border:1px solid #fac9c3;color:var(--danger);padding:10px 12px;border-radius:8px;font-size:13px;margin:16px 0}.fineprint{font-size:11px;color:var(--muted);line-height:1.5;margin-top:20px}@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(3,1fr)}.metric-grid.compact{grid-template-columns:repeat(2,1fr)}.link-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.sidebar nav{display:flex;flex-direction:column}.nav-heading{display:block}.nav-submenu{width:100%;min-width:0}.nav-submenu-links{margin-left:11px}.sidebar-footer{margin-top:15px}.topbar{position:relative}.content{padding:20px 14px}.grid-2,.grid-2.uneven{grid-template-columns:1fr}.metric-grid,.metric-grid.compact{grid-template-columns:repeat(2,1fr)}.details{grid-template-columns:110px 1fr}}@media(max-width:480px){.metric-grid,.metric-grid.compact{grid-template-columns:1fr}.search-bar{flex-wrap:wrap}.search-bar input{flex-basis:100%}}

/* V8.1 customer editing */
.heading-actions{display:flex;gap:9px;align-items:center}.edit-form{gap:0}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:14px 16px}.form-grid label,.check-grid label{font-size:12px;font-weight:600;color:#465269}.form-grid .span-2{grid-column:span 2}.check-grid{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:18px}.check{display:flex;align-items:center;gap:7px}.check input{width:auto;margin:0}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin:2px 0 30px}.primary:disabled{opacity:.45;cursor:not-allowed}.alert.warning{background:#fff9e8;border-color:#f4dd9b;color:#745400}.success-alert{background:#eaf8f2!important;border-color:#bfe8d7!important;color:var(--success)!important}.alert code{font-family:ui-monospace,monospace;font-size:12px}@media(max-width:950px){.form-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}}@media(max-width:600px){.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:span 1}}

.table-heading{padding:18px 21px 8px;margin-bottom:0}.table-heading h2{margin:0}.table-heading p{margin:4px 0 0}

.status-panel{border-left:4px solid #94a3b8}.status-panel.status-home{border-left-color:#147d55}.status-panel.status-checked_out{border-left-color:#2463eb}.status-panel.status-maintenance{border-left-color:#b7791f}.status-panel.status-retired{border-left-color:#687386}.badge.status-home{background:#eaf8f2;color:#147d55;border-color:#bfe8d7}.badge.status-checked_out{background:#eef4ff;color:#174bb8;border-color:#cbdcff}.badge.status-maintenance{background:#fff7e6;color:#8a5a00;border-color:#f2d49b}.badge.status-retired{background:#f1f3f6;color:#586174;border-color:#d8dde6}.alert.warning{background:#fff7e6;border-color:#f2d49b;color:#7a4d00;margin-top:16px}

.report-filter,.report-output{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.report-filter label,.report-output label{min-width:180px;font-size:12px;font-weight:600;color:#465269}.report-filter input,.report-output input,.report-output select{margin-top:5px}.report-output label:has(input[name=recipient]){min-width:320px;flex:1}.report-filter .primary,.report-output .button{height:40px}@media(max-width:650px){.report-filter,.report-output{align-items:stretch;flex-direction:column}.report-output label:has(input[name=recipient]){min-width:0}}

/* V8.5.3 in-place pilot editor from Aircraft T/A */
.pilot-edit-link{border:0;background:none;padding:0;color:var(--accent);font:inherit;font-weight:650;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.inline-edit-button{border:1px solid currentColor;background:transparent;color:inherit;border-radius:6px;padding:4px 8px;margin-left:8px;font:inherit;font-size:12px;cursor:pointer}.pilot-editor-dialog{width:min(1500px,98vw);height:min(1120px,96vh);padding:0;border:0;border-radius:14px;box-shadow:0 30px 90px rgba(15,23,42,.32);overflow:hidden}.pilot-editor-dialog::backdrop{background:rgba(15,23,42,.48)}.pilot-editor-head{height:50px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:white}.dialog-close{border:0;background:transparent;font-size:28px;line-height:1;color:var(--muted);cursor:pointer}.pilot-editor-dialog iframe{width:100%;height:calc(100% - 50px);border:0;background:var(--bg)}.modal-document{background:var(--bg)}.modal-content{padding:28px 30px 50px;max-width:1600px;margin:auto}.modal-save-result{padding:24px}.modal-document .page-heading{margin-bottom:14px}.modal-document .form-actions{position:sticky;bottom:0;background:rgba(244,247,251,.96);padding:12px 0;margin:0;z-index:2}

/* V8.5.4: full-size pilot editor modal */
.pilot-editor-dialog .pilot-editor-head{height:56px;padding:0 22px}.pilot-editor-dialog iframe{height:calc(100% - 56px)}@media(max-width:800px){.pilot-editor-dialog{width:99vw;height:98vh}.modal-content{padding:20px 14px 40px}}

/* V8.5.6 invoice delivery and destructive manager actions */
.delivery-choice{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.checkbox-line{display:flex!important;align-items:center;gap:9px;padding-top:22px}.checkbox-line input{width:auto;margin:0}.search-form{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:10px;align-items:end;margin-bottom:18px}.danger{display:inline-flex;align-items:center;justify-content:center;border:1px solid #b42318;background:#b42318;color:#fff;border-radius:8px;padding:8px 11px;font-size:12px;font-weight:650;cursor:pointer}.danger:hover{background:#8f1c14}@media(max-width:800px){.search-form{grid-template-columns:1fr}.checkbox-line{padding-top:0}}


/* Shared pilot/customer and aircraft quick-search results */
.pilot-search-row,.aircraft-picker .search-row{margin-top:8px}
.pilot-search-results,.entity-search-results{margin-top:8px;max-height:320px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.pilot-result{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(120px,.8fr) minmax(180px,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line)}
.pilot-result:last-child{border-bottom:0}.pilot-result small{display:block;color:var(--muted);margin-top:3px}
@media(max-width:700px){.pilot-result{grid-template-columns:1fr}.pilot-result .button{justify-self:start}}

.pilot-result.compact-result{grid-template-columns:minmax(220px,1fr) auto;padding:8px 10px}
.pilot-result.compact-result .button{white-space:nowrap}
