/* C-GKPP Flight Desk — design system. Self-hosted, no external font or JS dependencies. */
:root { color-scheme: dark; --background-color:#0b121b; --card-background-color:#141e2b; --card-border-color:#263648; --color:#e6eef5; --muted-color:#93a7b8; --muted-border-color:#263648; --primary:#e8b968; --primary-hover:#f5cc87; --primary-focus:rgba(232,185,104,.25); --primary-inverse:#171c24; --form-element-background-color:#101a26; --form-element-border-color:#324557; --form-element-color:#edf3f8; --form-element-placeholder-color:#667c90; --border-radius:12px; --spacing:1rem; --font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif; }
* {box-sizing:border-box}
html {background:#0b121b;scroll-behavior:smooth}
body.club-app, body.club-login {margin:0;min-height:100vh;background:radial-gradient(ellipse 45% 25% at 95% -5%,rgba(72,116,141,.13),transparent),#0b121b!important;color:#e8eef5;font-family:var(--font-family);font-size:15px;line-height:1.6}
body.club-app {padding:0 0 38px 266px;display:block!important;align-items:initial!important}
body.club-embed {padding:14px!important;background:transparent!important}
a {color:#efc47e;transition:color .18s ease;text-decoration:none}
a:hover {color:#ffdb9c}
h1,h2,h3,h4,h5,h6 {color:#f4f7fa;letter-spacing:-.035em;line-height:1.22}
h1 {font-size:clamp(1.72rem,2.5vw,2.38rem);margin:0 0 .5rem}
h2 {font-size:1.35rem;margin:0 0 .65rem}
h3 {font-size:1.05rem;margin:0 0 .55rem}
h4 {font-size:1rem}
p,li,dd,dt {color:#bdcbd7}
small,figcaption {color:#93a7b8}
main.container, .container {max-width:1480px;width:calc(100% - 76px);margin-inline:auto!important;padding:0!important}
body.club-embed main.container, body.club-embed .container {width:100%;max-width:none}
body.club-app main.container {margin-top:30px!important}
body.club-app > .container:first-of-type {margin-top:34px!important}
body.club-app header.container {padding-top:25px!important;margin:0 auto!important}
body.club-app header.container nav {margin:0}
body.club-app .container > nav:not(.club-nav) {margin-bottom:17px}
body.club-app .container > nav a[role=button] {padding:8px 15px;font-size:.82rem}
body.club-app .container > h1, body.club-app main > h1, body.club-app main > h2 {margin-bottom:18px}
main.container > form, main.container > section, main.container > article, main.container > .maintenance-info,
body.club-app > .container > form, body.club-app > .container > section,
body.club-app > .container > figure {background:#131d29;border:1px solid #263747;border-radius:17px;padding:24px;margin-bottom:20px;box-shadow:0 14px 42px rgba(0,0,0,.12)}
body.club-app > .container > table {background:#131d29;border-radius:14px}
article {border:1px solid #263747;border-radius:16px;background:#141e2b;box-shadow:none;padding:22px}
form {margin:0 0 14px}
label {font-size:.86rem;letter-spacing:.01em;font-weight:600;color:#c7d4df;margin-bottom:6px}
input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),select,textarea {background:#0c1722!important;color:#edf4fa!important;border:1px solid #35485a!important;box-shadow:none!important;border-radius:10px!important;padding:11px 13px!important;min-height:44px;max-width:100%}
input:focus,select:focus,textarea:focus {border-color:#e6b569!important;box-shadow:0 0 0 3px rgba(232,185,104,.14)!important;outline:0}
input[readonly] {opacity:.78}
button,[type=submit],[role=button],a[role=button] {background:#e8b968!important;border:1px solid #e8b968!important;color:#152131!important;font-weight:750;border-radius:10px!important;text-transform:none;box-shadow:none!important;min-height:39px;padding:8px 16px;cursor:pointer}
button:hover,[type=submit]:hover,[role=button]:hover,a[role=button]:hover {background:#ffce7d!important;border-color:#ffce7d!important;color:#152131!important}
button.secondary,a.secondary[role=button],button.outline,a.outline[role=button] {background:#182737!important;border-color:#385065!important;color:#d5e5f1!important}
button.secondary:hover,a.secondary[role=button]:hover,button.outline:hover,a.outline[role=button]:hover {background:#22374b!important;color:white!important}
[role=button].contrast {background:#fff!important;color:#17202b!important}
:focus-visible {outline:3px solid rgba(232,185,104,.55);outline-offset:3px}
figure {margin:16px 0;overflow-x:auto;max-width:100%}
table {width:100%;border-collapse:separate;border-spacing:0;font-size:.91rem;table-layout:auto}
th {color:#9bb0c3;text-transform:uppercase;letter-spacing:.085em;font-size:.68rem;font-weight:800;background:#1a2938;white-space:nowrap}
th,td {border-bottom:1px solid #263748;padding:11px 13px;text-align:left;vertical-align:middle}
td {color:#d7e3ed}
tr:last-child td {border-bottom:0}
tbody tr:hover td {background:rgba(236,190,119,.045)}
table .due-soon td,.maintenance-table .due-soon td {background:#47371d!important;color:#ffe5b3}
table .past-due td,.maintenance-table .past-due td {background:#47252b!important;color:#ffd4d9}
fieldset {border-color:#2b3e50}
hr {border-color:#324456}
.grid {gap:18px}
/* Persistent portal navigation */
.club-sidebar {position:fixed;inset:0 auto 0 0;width:266px;z-index:35;display:flex;flex-direction:column;background:#101a25;border-right:1px solid #283a4b;padding:26px 16px 18px;overflow-y:auto}
.club-brand {display:flex;align-items:center;gap:12px;color:#f6f7f9!important;padding:3px 11px 27px;text-decoration:none}
.club-mark {display:grid;place-items:center;width:41px;height:41px;flex:0 0 41px;border:1px solid rgba(232,185,104,.4);background:linear-gradient(150deg,#324253,#1d2835);border-radius:13px;color:#f2c981;font-size:25px;font-weight:450;line-height:1}
.club-brand strong {display:block;font-size:1rem;letter-spacing:.09em;line-height:1.3;color:#f2f6fa}
.club-brand small {display:block;text-transform:uppercase;letter-spacing:.18em;font-size:.57rem;color:#97aabb;line-height:2}
.club-nav-label {font-size:.62rem;letter-spacing:.17em;text-transform:uppercase;color:#6c8295;font-weight:800;padding:19px 14px 7px}
.club-links {display:flex;flex-direction:column;gap:4px}
.club-links a {color:#aabccc;display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:10px;font-size:.89rem;font-weight:550;transition:.18s}
.club-links a svg {width:18px;height:18px;stroke-width:1.65;flex:none}
.club-links a:hover {background:#1a2a3a;color:#fafcff}
.club-links a[aria-current=page] {color:#f5c986;background:#2b2c2c;box-shadow:inset 3px 0 0 #e7b768}
.club-nav-bottom {margin-top:auto;border-top:1px solid #273746;padding:21px 12px 0}
.club-online {display:flex;align-items:center;gap:8px;letter-spacing:.08em;font-weight:650;font-size:.68rem;color:#94b5b2;text-transform:uppercase;margin-bottom:7px}
.club-online:before {content:'';height:7px;width:7px;border-radius:50%;background:#85c6ad;box-shadow:0 0 0 4px rgba(133,198,173,.1)}
.club-user {font-weight:700;font-size:.86rem;color:#e4edf3;overflow-wrap:anywhere}
.club-nav-bottom a {display:inline-block;font-size:.76rem;margin-top:9px;color:#b4c8d9}
.club-mobile-bar {display:none}
.club-backdrop {display:none}
/* Dashboard */
.club-page-header {display:flex;gap:22px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;margin:0 0 26px}
.club-page-header p {margin:8px 0 0;color:#97aabb}
.club-kicker {display:block;color:#ddb575;text-transform:uppercase;letter-spacing:.19em;font-size:.69rem;font-weight:800;margin-bottom:10px}
.club-date {color:#96acbd;font-size:.8rem;font-weight:550}
.club-hero {position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(115deg,#1a3444 0%,#203745 49%,#32453e 100%);border:1px solid #38546a;border-radius:22px;padding:33px 37px;margin-bottom:22px;min-height:170px}
.club-hero:after {content:'';position:absolute;right:-18px;top:-66px;width:355px;height:355px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 47px rgba(255,255,255,.023),0 0 0 99px rgba(255,255,255,.025)}
.club-hero-text {position:relative;z-index:1;max-width:700px}
.club-hero h1 {font-weight:760;font-size:clamp(1.8rem,3vw,2.85rem);line-height:1.14;margin:0 0 11px}
.club-hero p {font-size:.95rem;color:#c9d8dd;max-width:510px;margin:0}
.club-hero-actions {position:relative;z-index:1;display:flex;gap:10px;flex-wrap:wrap}
.club-hero-actions .club-btn-outline {background:rgba(14,33,44,.42)!important;border:1px solid #75929d!important;color:#e4f1f3!important}
.club-stats {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:23px}
.club-stat {padding:21px 21px 19px;background:#131f2b;border:1px solid #273b4a;border-radius:17px;min-height:128px}
.club-stat .stat-label {display:block;font-size:.67rem;letter-spacing:.12em;text-transform:uppercase;color:#92aabc;font-weight:800;margin-bottom:13px}
.club-stat strong {font-size:2rem;color:#f3f7fb;letter-spacing:-.045em;line-height:1.1;display:block}
.club-stat .stat-foot {font-size:.76rem;color:#8fa5b6;margin-top:8px;display:block}
.club-columns {display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,.95fr);gap:20px;align-items:start}
.club-stack {display:grid;gap:20px}
.club-panel {background:#131f2b;border:1px solid #273b4a;border-radius:18px;padding:24px;min-width:0}
.club-panel-header {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.club-panel-header h2 {margin:0;font-size:1.13rem}
.club-panel-header a {font-size:.78rem;color:#f0c480;font-weight:750}
.club-status {display:flex;align-items:flex-start;gap:13px;padding:13px 0;border-bottom:1px solid #263747}
.club-status:last-child {border-bottom:0;padding-bottom:0}
.club-status:first-of-type {padding-top:0}
.club-status-mark {flex:none;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-size:1rem;background:#21382f;color:#a2e3bb}
.club-status.is-alert .club-status-mark {background:#473524;color:#f7cb83}
.club-status.is-critical .club-status-mark {background:#4a2931;color:#ffb0b7}
.club-status strong {display:block;color:#eaf2f7;font-size:.87rem;margin-top:1px}
.club-status small {display:block;color:#95a9b8;font-size:.78rem;margin-top:2px;line-height:1.55}
.club-tools {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.club-tool {display:flex;align-items:center;gap:12px;border:1px solid #304356;border-radius:12px;padding:13px;background:#172636;color:#eaf2f7;transition:transform .18s,background .18s}
.club-tool:hover {background:#203349;transform:translateY(-2px);color:#fff}
.club-tool-icon {display:grid;place-items:center;flex:none;width:37px;height:37px;border:1px solid #3d5467;border-radius:10px;font-size:19px;color:#efc37a}
.club-tool strong {display:block;font-size:.82rem;line-height:1.25;color:#f0f5f9}
.club-tool small {display:block;font-size:.7rem;line-height:1.4;margin-top:3px}
.club-details {border-top:1px solid #2b3c4b;margin-top:18px;padding-top:14px}
.club-details summary {font-size:.8rem;color:#edc27f;cursor:pointer;font-weight:700}
.club-details ul {padding-left:20px;margin:14px 0 3px}
.club-details li {font-size:.84rem;margin-bottom:6px}
.club-panel form {background:transparent!important;border:none!important;padding:0!important;box-shadow:none!important;margin:15px 0 3px!important}
.club-panel form button {margin-top:12px}
.club-info-note {color:#92aabc;font-size:.8rem;line-height:1.5;margin-top:9px}
.club-embed-panel iframe {width:100%;min-height:420px;border:0;display:block;background:#101c28;border-radius:12px}
.club-embed-panel {overflow:hidden}
.club-weather {background:#172636;border:1px solid #324a5c;border-radius:13px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.club-weather .club-airport {font-size:1.65rem;letter-spacing:.05em;line-height:1.1;color:#eaf2f7;font-weight:800}
.club-weather p {margin:6px 0 0;font-size:.8rem}
.club-weather a {font-size:.78rem;font-weight:750;white-space:nowrap}
.club-weather small {font-size:.67rem;color:#8ea5b7}
.club-footer {display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;margin:32px 0 0;border-top:1px solid #223547;padding-top:16px;font-size:.75rem;color:#7f95a6}
.club-footer a {color:#9db1c0}
.club-alert {padding:12px 15px;border-radius:11px;background:#412d21;color:#ffe0ad;border:1px solid #6d5039;font-size:.82rem;margin-bottom:13px}
.club-ok {padding:12px 15px;border-radius:11px;background:#19372f;color:#beedd5;border:1px solid #315e4c;font-size:.82rem;margin-bottom:13px}
.club-table-wrap {width:100%;overflow:auto;max-width:100%;border-radius:13px;border:1px solid #2d4050}
.club-table-wrap table {margin:0}
.club-form-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 22px}
.club-form-grid .full {grid-column:1/-1}
.club-form-wrap {max-width:880px;margin:0 auto}
.club-form-wrap form {background:#131f2b;border:1px solid #304152;border-radius:18px;padding:28px;box-shadow:0 20px 50px rgba(0,0,0,.12)}
.club-section-note {margin-top:5px;color:#91a6b7;font-size:.82rem}
.club-form-group {margin:18px 0 3px;border-top:1px solid #2a3d4c;padding-top:18px}
.club-form-group h3 {margin:0 0 16px;color:#edc27f;text-transform:uppercase;font-size:.71rem;letter-spacing:.14em}
.club-form-actions {display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:22px}
.club-form-actions button {margin:0}
.club-summary-body main.container, .club-embed main.container {max-width:none}
.club-summary-body > h1, .club-summary-body > form, .club-summary-body > section {width:calc(100% - 76px);max-width:1370px;margin-left:auto;margin-right:auto}
/* Login */
body.club-login {display:grid;place-items:center;padding:38px 22px}
.club-login-grid {display:grid;grid-template-columns:1fr 1fr;min-height:600px;max-width:1040px;width:100%;background:#14202d;border:1px solid #304254;border-radius:25px;overflow:hidden;box-shadow:0 28px 75px rgba(0,0,0,.35)}
.club-login-visual {position:relative;display:flex;align-items:flex-end;padding:38px;background:linear-gradient(165deg,rgba(15,31,44,.24),rgba(8,20,32,.86)),url('banner_airplane_camping.webp') center/cover no-repeat}
.club-login-visual .club-login-message {position:relative;z-index:1}
.club-login-visual h2 {font-size:2.3rem;max-width:330px}
.club-login-visual p {max-width:350px;color:#f2e3d4}
.club-login-panel {padding:55px 50px;display:flex;flex-direction:column;justify-content:center}
.club-login-panel h1 {font-size:2rem;margin:22px 0 10px}
.club-login-panel > p {color:#9fb4c4;margin:0 0 30px}
.club-login-panel form {margin:0}
.club-login-panel label {display:block;margin:18px 0 7px}
.club-login-panel button {width:100%;margin-top:24px}
.club-login-meta {display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;margin:23px 0 0;font-size:.78rem}
.club-login-meta a {color:#aabed0}
.club-login-panel .club-brand {padding:0}
/* Utility */
.warning {color:#ffd09a!important}.success {color:#a7e5c5!important}
body.club-app > footer.container {margin-top:35px!important;color:#7f95a6;font-size:.75rem}
@media(max-width:1320px){.club-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.club-hero{align-items:flex-start;flex-direction:column}}
@media(max-width:1040px){body.club-app{padding-left:0;padding-top:68px}.club-mobile-bar{display:flex;position:fixed;inset:0 0 auto 0;z-index:36;height:66px;align-items:center;gap:13px;padding:0 18px;background:#111d29;border-bottom:1px solid #314253}.club-mobile-bar strong{letter-spacing:.09em}.club-mobile-bar small{font-size:.69rem;color:#a4b9ca;margin-left:auto}.club-menu-toggle{display:grid;place-items:center;width:39px;height:39px;min-height:39px!important;background:#1a2b3b!important;color:#eaf3f8!important;border-color:#345068!important;padding:0!important}.club-sidebar{transform:translateX(-104%);transition:transform .23s ease;z-index:42;box-shadow:18px 0 50px rgba(0,0,0,.2)}body.club-menu-open .club-sidebar{transform:translateX(0)}body.club-menu-open .club-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:41}body.club-embed{padding:14px 0!important}body.club-embed .club-sidebar,body.club-embed .club-mobile-bar{display:none!important}}
@media(max-width:780px){main.container,.container,.club-summary-body > h1,.club-summary-body > form,.club-summary-body > section{width:calc(100% - 34px)!important}.club-columns{grid-template-columns:1fr}.club-hero{padding:25px}.club-tools{grid-template-columns:1fr 1fr}.club-login-grid{grid-template-columns:1fr;max-width:520px}.club-login-visual{min-height:230px}.club-login-visual h2{font-size:1.65rem}.club-login-panel{padding:38px 27px}.club-form-grid{grid-template-columns:1fr}.club-form-wrap form{padding:18px}.club-panel{padding:20px}.club-weather{flex-wrap:wrap}.grid{grid-template-columns:1fr!important}form.grid{grid-template-columns:1fr!important}}
@media(max-width:520px){.club-stats{grid-template-columns:1fr 1fr;gap:9px}.club-stat{padding:16px 12px;min-height:105px}.club-stat strong{font-size:1.6rem}.club-stat .stat-label{font-size:.6rem}.club-tools{grid-template-columns:1fr}.club-page-header{margin-bottom:18px}body.club-app main.container{margin-top:19px!important}.club-hero h1{font-size:1.7rem}.club-mobile-bar small{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;scroll-behavior:auto!important}}
