:root{--color-primary:#006b47;--color-action:var(--color-primary);--color-action-hover:var(--color-primary-hover);--color-on-action:var(--color-on-primary);--color-control-surface:var(--color-surface);--color-primary-hover:#005236;--color-on-primary:#ffffff;--color-header:#ffffff;--color-nav:#f3f7f5;--color-nav-active:#e2f1e8;--header-decoration:none;--color-secondary:#cc2534;--color-bg:#f3f6f4;--color-surface:#fff;--color-subtle:#eaf3ed;--color-text:#153c2e;--color-muted:#526b60;--color-border:#cedcd3;--color-warning-bg:#fff5db;--color-warning-border:#d7b15c;--color-warning-text:#705007;--color-danger-bg:#fff0f0;--color-danger-border:#e5a2a8;--color-danger-text:#a31c2c;--color-info-bg:#edf2fc;--color-info-border:#b9c8e2;--color-info-text:#294c7c;--color-success-bg:#eaf6ec;--color-success-border:#afcfb7;--color-success-text:#1e633c;--color-focus:#c82a37;--font-family:"Segoe UI",Inter,Arial,sans-serif;--font-xs:.75rem;--font-sm:.875rem;--font-base:1rem;--font-md:1.125rem;--font-lg:1.375rem;--font-xl:1.875rem;--font-display:2.25rem;--weight-normal:400;--weight-medium:500;--weight-bold:650;--line-height:1.55;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:.375rem;--radius-md:.625rem;--radius-lg:.875rem;--border-width:1px;--focus-width:3px;--shadow:0 3px 14px #153c2e08;--disabled-opacity:.5;--content-width:100rem;--header-height:4.5rem}:root[data-theme=clean]{color-scheme:light}:root[data-theme=tap]{color-scheme:light;--header-height:5.5rem;--color-bg: #ffffff;--color-surface: #ffffff;--color-subtle: #eef6ef;--color-primary: #006341;--color-primary-hover: #004c32;--color-secondary: #d21938;--color-ribbon-lime: #9abd34;--color-action: #c8102e;--color-action-hover: #a80d27;--color-on-action: #ffffff;--color-control-surface: #ffffff;--color-text: #15392e;--color-muted: #52665e;--color-border: #d4ded7;--color-header: #ffffff;--color-nav: #f4f7f4;--color-nav-active: #e5f2e8;--header-decoration: none;--radius-lg: .625rem;--shadow: 0 2px 10px #153c2e06}:root[data-theme=dark]{color-scheme:dark;--color-bg: #101619;--color-surface: #1c2529;--color-subtle: #233a32;--color-primary: #50d6a2;--color-primary-hover: #6ee8b8;--color-on-primary: #072a1d;--color-secondary: #ff8796;--color-text: #edf6f1;--color-muted: #b2c7bd;--color-border: #466056;--color-warning-bg: #3b301d;--color-warning-border: #967a3f;--color-warning-text: #ffe1a0;--color-danger-bg: #3e232b;--color-danger-border: #a45868;--color-danger-text: #ffb3be;--color-info-bg: #202f48;--color-info-border: #526e98;--color-info-text: #c0d8ff;--color-success-bg: #19392b;--color-success-border: #426d55;--color-success-text: #b3f0cd;--color-focus: #f8d387;--color-header: #172125;--color-nav: #24312e;--color-nav-active: #234f3d;--shadow: 0 4px 18px #00000026}*{box-sizing:border-box}html{scroll-padding-top:calc(var(--header-height) + var(--space-4))}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-family);font-size:var(--font-base);line-height:var(--line-height);font-variant-numeric:tabular-nums}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--space-1)}input[type=checkbox]{width:var(--space-5);height:var(--space-5);accent-color:var(--color-action);cursor:pointer;flex-shrink:0}select,input[type=number]{border:var(--border-width) solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-sm);padding:var(--space-2)}.app-shell{display:flex;min-height:100vh}.brand{display:flex;align-items:center;font-size:var(--font-lg);font-weight:var(--weight-bold);white-space:nowrap}.brand small{display:block;font-size:var(--font-xs);font-weight:var(--weight-normal);color:var(--color-muted);margin-top:var(--space-1)}.workspace{margin-left:0;min-width:0;flex:1}.topbar{position:sticky;top:0;z-index:10;min-height:var(--header-height);border-bottom:var(--border-width) solid var(--color-border);background:var(--color-header);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-8)}.breadcrumb{font-size:var(--font-sm);color:var(--color-muted)}.header-actions{display:flex;gap:var(--space-5);align-items:center}.local-badge{font-size:var(--font-xs);color:var(--color-primary);white-space:nowrap}.language-switch{display:flex;border:var(--border-width) solid var(--color-border);padding:var(--space-1);border-radius:var(--radius-md);gap:var(--space-1)}.button{min-height:var(--space-10);padding:var(--space-2) var(--space-4);display:inline-flex;justify-content:center;align-items:center;gap:var(--space-3);font-size:var(--font-sm);font-weight:var(--weight-bold);border-radius:var(--radius-sm);border:var(--border-width) solid var(--color-border);background:var(--color-surface);color:var(--color-primary)}.button:hover:not(:disabled){background:var(--color-subtle)}.button-primary{color:var(--color-on-action);background:var(--color-action);border-color:var(--color-action)}.button-primary:hover:not(:disabled){background:var(--color-action-hover)}.button-text{border-color:transparent;background:transparent;min-height:0;padding:var(--space-1);text-decoration:underline}.button-language{border:0;padding:var(--space-1) var(--space-3);min-height:var(--space-8);font-size:var(--font-sm)}.button-language[aria-pressed=true]{background:var(--color-action);color:var(--color-on-action)}main{max-width:var(--content-width);margin:auto;padding:var(--space-8)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-8)}.eyebrow{font-size:var(--font-xs);font-weight:var(--weight-bold);letter-spacing:.1em;color:var(--color-primary);margin-bottom:var(--space-2)}h1{font-size:var(--font-display);line-height:1.2;letter-spacing:-.03em}h1>span{color:var(--color-secondary)}.page-heading p,.allocation-heading p{color:var(--color-muted);font-size:var(--font-sm);margin-top:var(--space-3)}.capacity-pill{display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-top:var(--focus-width) solid var(--color-secondary);border-radius:var(--radius-md);padding:var(--space-3) var(--space-5);flex-shrink:0}.capacity-pill strong{font-size:var(--font-lg)}.capacity-pill small{display:block;color:var(--color-muted);font-size:var(--font-xs)}.panel{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:var(--color-surface);overflow:hidden}.section-title{display:flex;gap:var(--space-3);padding:var(--space-5);align-items:flex-start}.section-title>div{flex:1}.section-title h2{font-size:var(--font-md);font-weight:var(--weight-bold)}.section-title p{font-size:var(--font-sm);color:var(--color-muted);margin-top:var(--space-1)}.step{color:var(--color-primary);background:var(--color-subtle);border:var(--border-width) solid var(--color-border);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-xs);font-weight:var(--weight-bold)}.dropzone{margin:0 var(--space-5);padding:var(--space-6);border:var(--border-width) dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);display:flex;align-items:center;gap:var(--space-5)}.dropzone.dragging,.dropzone.loaded{background:var(--color-subtle);border-color:var(--color-primary)}.upload-symbol{font-size:var(--font-xl);color:var(--color-primary);background:var(--color-surface);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md)}.upload-description{flex:1;min-width:0}.upload-description strong{font-size:var(--font-base);overflow-wrap:anywhere}.upload-description span{display:block;font-size:var(--font-sm);color:var(--color-muted);margin-top:var(--space-2)}.upload-footnote{display:flex;justify-content:space-between;gap:var(--space-4);font-size:var(--font-xs);color:var(--color-muted);padding:var(--space-4) var(--space-5)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.empty-workspace{text-align:center;margin:var(--space-6) auto;max-width:48rem}.empty-symbol{border:var(--border-width) solid var(--color-border);color:var(--color-primary);background:var(--color-subtle);border-radius:var(--radius-md);font-size:var(--font-sm);font-weight:var(--weight-bold);width:fit-content;margin:0 auto var(--space-5);padding:var(--space-4)}.empty-workspace h2{font-size:var(--font-lg)}.empty-workspace p{color:var(--color-muted);font-size:var(--font-sm);margin-top:var(--space-3)}.rule-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);margin-top:var(--space-6)}.rule-chips span{font-size:var(--font-xs);border:var(--border-width) solid var(--color-border);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg)}.stats-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);margin:var(--space-6) 0}.stat{padding:var(--space-4);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md)}.stat>span{font-size:var(--font-xs);font-weight:var(--weight-bold);color:var(--color-muted)}.stat>strong{display:block;font-size:var(--font-xl);color:var(--color-primary);margin:var(--space-2) 0}.stat>small{font-size:var(--font-xs);color:var(--color-muted)}.alert{background:var(--color-warning-bg);border:var(--border-width) solid var(--color-warning-border);color:var(--color-warning-text);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);margin:var(--space-4) 0;font-size:var(--font-sm);line-height:var(--line-height);overflow-wrap:anywhere}.alert p{margin-top:var(--space-2)}.alert ul{padding-left:var(--space-5);margin-bottom:0}.alert-danger{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger-text)}.alert-info{background:var(--color-info-bg);border-color:var(--color-info-border);color:var(--color-info-text)}.alert-success{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success-text)}.alert summary{cursor:pointer;margin-top:var(--space-3)}.flexible-offer{margin-top:var(--space-4);border-top:var(--border-width) solid var(--color-danger-border);padding-top:var(--space-3)}.flexible-offer .button{margin-top:var(--space-3)}.review-layout{display:grid;grid-template-columns:minmax(0,1fr) 20rem;gap:var(--space-5);align-items:start;margin-top:var(--space-6)}.count-tag{font-size:var(--font-xs);white-space:nowrap;color:var(--color-muted)}.table-scroll{overflow:auto}.review-panel .table-scroll{max-height:34rem}.review-table,.ake-table{width:100%;border-collapse:collapse;text-align:left;font-size:var(--font-sm)}th{font-weight:var(--weight-medium);font-size:var(--font-xs);color:var(--color-muted);background:var(--color-bg);white-space:nowrap}.review-table th{position:sticky;top:0;z-index:1}th,td{padding:var(--space-3);border-bottom:var(--border-width) solid var(--color-border)}.flight{font-weight:var(--weight-bold);white-space:nowrap}.time{white-space:nowrap}.order-cell{font-size:var(--font-xs);color:var(--color-muted)}.bags-cell{font-size:var(--font-md);font-weight:var(--weight-bold);color:var(--color-primary)}.row-excluded{color:var(--color-muted);background:var(--color-bg)}.row-excluded .bags-cell{color:var(--color-muted)}.status-tag{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-xs);white-space:nowrap}.status-tag.bt{background:var(--color-success-bg);color:var(--color-success-text)}.status-tag.bs{background:var(--color-warning-bg);color:var(--color-warning-text)}.status-tag.excluded{background:var(--color-bg);color:var(--color-muted)}.table-footer{padding:var(--space-3) var(--space-5);font-size:var(--font-xs);color:var(--color-muted)}.settings-panel form{padding:0 var(--space-5) var(--space-5)}.field>label{display:block;font-size:var(--font-sm);font-weight:var(--weight-bold);margin-bottom:var(--space-2)}.number-field{display:flex;gap:var(--space-2)}.number-field input{width:100%;min-width:0;text-align:center;font-size:var(--font-lg);font-weight:var(--weight-bold)}.target-box{padding:var(--space-4);background:var(--color-subtle);border-radius:var(--radius-md);margin-top:var(--space-5);font-size:var(--font-sm)}.target-box>span{display:block;color:var(--color-muted);font-size:var(--font-xs);margin-bottom:var(--space-2)}.target-box strong{font-size:var(--font-lg);color:var(--color-primary)}.settings-help{font-size:var(--font-sm);color:var(--color-muted);margin-top:var(--space-4)}.review-confirm{display:flex;gap:var(--space-3);align-items:flex-start;font-size:var(--font-sm);margin:var(--space-5) 0;padding-top:var(--space-4);border-top:var(--border-width) solid var(--color-border)}.settings-panel .button-primary{width:100%}.allocation{margin-top:var(--space-10)}.allocation-heading{display:flex;justify-content:space-between;gap:var(--space-5);align-items:center;margin-bottom:var(--space-5)}.allocation-heading h2{font-size:var(--font-xl);line-height:1.2}.manual-note{font-size:var(--font-sm);color:var(--color-muted);margin-bottom:var(--space-4)}.ake-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5);align-items:start}.ake-card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.ake-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-5);border-top:var(--focus-width) solid var(--color-primary);background:var(--color-bg)}.ake-heading h3{font-size:var(--font-md)}.ake-heading>span{font-size:var(--font-xs);color:var(--color-muted)}.priority-tag{padding:var(--space-2) var(--space-5);background:var(--color-subtle);color:var(--color-primary);font-size:var(--font-xs);font-weight:var(--weight-bold)}.ake-card .alert{margin:0;border-radius:0;border-width:0 0 var(--border-width);font-size:var(--font-xs);font-weight:var(--weight-bold)}.ake-table td,.ake-table th{padding:var(--space-3)}.ake-table select{font-size:var(--font-xs);max-width:100%}.ake-totals{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-5);font-size:var(--font-sm)}.ake-totals>span>small{display:block;color:var(--color-muted);font-size:var(--font-xs);margin-top:var(--space-1)}.ake-totals>strong{font-size:var(--font-display);color:var(--color-primary);line-height:1.1}.ake-totals strong span{font-size:var(--font-lg);color:var(--color-muted)}.ake-totals strong small{font-size:var(--font-sm);color:var(--color-muted);font-weight:var(--weight-normal)}.capacity-track{display:block;width:100%;height:var(--space-1);border:0;appearance:none;background:var(--color-subtle)}.capacity-track::-webkit-progress-bar{background:var(--color-subtle)}.capacity-track::-webkit-progress-value{background:var(--color-primary)}.capacity-track::-moz-progress-bar{background:var(--color-primary)}.ake-over{border-color:var(--color-danger-border)}.ake-over .ake-totals>strong{color:var(--color-danger-text)}.page-footer{display:flex;justify-content:space-between;gap:var(--space-4);border-top:var(--border-width) solid var(--color-border);margin-top:var(--space-10);padding-top:var(--space-5);font-size:var(--font-xs);color:var(--color-muted)}@media(min-width:1700px){.ake-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1200px){.review-layout{grid-template-columns:1fr}.settings-panel form{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--space-6)}.target-box{margin:0}.settings-panel .settings-help,.settings-panel .review-confirm,.settings-panel .button-primary{grid-column:1/-1}.ake-grid{grid-template-columns:1fr}.breadcrumb{display:none}.stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.app-shell{display:block}.brand{font-size:var(--font-md)}.brand small{font-size:var(--font-xs)}.workspace{margin-left:0}.topbar{padding:var(--space-2) var(--space-5)}.header-actions{width:100%;justify-content:space-between;gap:var(--space-2)}main{padding:var(--space-5)}h1{font-size:var(--font-xl)}.page-heading{margin-bottom:var(--space-6)}.capacity-pill{display:flex;align-items:center;gap:var(--space-3);display:none}.dropzone{flex-wrap:wrap;margin:0 var(--space-4);padding:var(--space-4);gap:var(--space-3)}.upload-description{flex-basis:calc(100% - var(--space-16))}.upload-footnote{flex-direction:column;gap:var(--space-2)}.section-title{padding:var(--space-4)}.section-title p{font-size:var(--font-xs)}.settings-panel form{display:block}.target-box{margin-top:var(--space-4)}.allocation-heading{align-items:flex-start;flex-direction:column}.ake-totals>strong{font-size:var(--font-xl)}.page-footer{flex-direction:column}.stat{padding:var(--space-3)}.ake-table td,.ake-table th{padding:var(--space-2)}.count-tag{display:none}.ake-heading{padding:var(--space-4)}.button{white-space:normal}.empty-workspace{margin:var(--space-6) auto}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.topbar:after{content:"";position:absolute;inset:0 0 auto;height:var(--space-1);background:var(--header-decoration);pointer-events:none}.top-navigation{display:flex;gap:var(--space-1);background:var(--color-nav);padding:var(--space-1);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md)}.button-navigation{border-color:transparent;background:transparent;color:var(--color-text)}.button-navigation:hover:not(:disabled){background:var(--color-nav-active);color:var(--color-primary)}.header-actions{gap:var(--space-4)}.theme-selector{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-xs);color:var(--color-muted);white-space:nowrap}.theme-selector select{min-height:var(--space-10);font-size:var(--font-sm)}.workflow{margin:0 0 var(--space-6)}.workflow ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);list-style:none;margin:0;padding:0}.flow-item{min-width:0}.flow-item button{display:flex;align-items:center;gap:var(--space-3);width:100%;text-align:left;padding:var(--space-3) 0;border:0;background:transparent;color:var(--color-muted)}.flow-item button:disabled{opacity:1;cursor:default}.flow-number{flex-shrink:0;display:grid;place-items:center;width:var(--space-10);height:var(--space-10);border-radius:var(--radius-lg);background:var(--color-nav);border:var(--border-width) solid var(--color-border);font-size:var(--font-sm);font-weight:var(--weight-bold)}.flow-item strong{font-size:var(--font-sm);font-weight:var(--weight-bold)}.flow-item small{display:block;font-size:var(--font-xs);margin-top:var(--space-1)}.flow-active .flow-number{background:var(--color-action);color:var(--color-on-action);border-color:var(--color-action)}.flow-active strong{color:var(--color-text)}.empty-symbol{display:none}@media(max-width:1150px){.topbar{flex-wrap:wrap;gap:var(--space-3)}.local-badge{display:none}}@media(max-width:800px){.top-navigation{order:3;flex:1 0 100%;justify-content:center}.topbar{gap:var(--space-2);padding:var(--space-3) var(--space-4)}.brand{font-size:var(--font-md)}.brand small{display:none}.header-actions{width:auto;margin-left:auto;gap:var(--space-2)}.theme-selector>span{display:none}.theme-selector select{padding:var(--space-2)}.button-language{padding:var(--space-1) var(--space-2)}.workflow ol{gap:var(--space-2)}.flow-item button{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.flow-item small{display:none}.flow-number{width:var(--space-8);height:var(--space-8)}.flow-item strong{font-size:var(--font-sm)}}.baggage-icon{width:var(--space-8);height:var(--space-10);flex-shrink:0;color:var(--color-action)}:root[data-theme=tap] .topbar{isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}:root[data-theme=tap] .topbar:before{content:"";position:absolute;inset:0 0 var(--space-1) auto;width:38%;z-index:-2;opacity:.24;background:linear-gradient(90deg,var(--color-header),transparent 45%),url(/assets/aircraft-header-DDsJgaDa.png) center 48% / cover no-repeat;pointer-events:none}:root[data-theme=tap] .topbar:after{inset:auto 0 0;width:auto;height:var(--space-1);z-index:-1;background:linear-gradient(90deg,var(--color-action) 0 33.333%,var(--color-ribbon-lime) 33.333% 66.666%,var(--color-primary) 66.666%);pointer-events:none}:root[data-theme=tap] .header-actions{justify-self:end}:root[data-theme=tap] .local-badge{display:none}:root[data-theme=tap] .theme-selector,:root[data-theme=tap] .language-switch{padding:var(--space-1);border-radius:var(--radius-md);background:var(--color-control-surface)}:root[data-theme=tap] .theme-selector>span{display:none}:root[data-theme=tap] .button:not(.button-navigation){color:var(--color-action)}:root[data-theme=tap] .button-primary,:root[data-theme=tap] .button-language[aria-pressed=true],:root[data-theme=tap] .dropzone .button{background:var(--color-action);border-color:var(--color-action);color:var(--color-on-action)}:root[data-theme=tap] .dropzone .button:hover:not(:disabled){background:var(--color-action-hover)}:root[data-theme=tap] .theme-selector select,:root[data-theme=tap] .ake-table select{color:var(--color-action);border-color:var(--color-action)}:root[data-theme=tap] .flow-active strong{color:var(--color-action)}@media(max-width:800px){:root[data-theme=tap] .topbar{display:flex}:root[data-theme=tap] .topbar:before{width:70%;opacity:.16}:root[data-theme=tap] .header-actions{gap:var(--space-2)}}
