@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--z-base: 0;--z-beneath: -1;--z-content: 10;--z-elevated: 20;--z-sticky: 30;--z-header: 100;--z-sidebar: 200;--z-overlay: 1000;--z-dropdown: 2000;--z-popover: 2000;--z-tooltip: 3000;--z-modal-backdrop: 3000;--z-modal: 3100;--z-notification: 4000;--z-emergency: 5000;--ui-elev-bg: rgba(16,18,22,.92);--ui-elev-border: rgba(255,255,255,.08);--ui-shadow-lg: 0 10px 30px rgba(0,0,0,.35)}.z-base{z-index:var(--z-base)}.z-beneath{z-index:var(--z-beneath)}.z-content{z-index:var(--z-content)}.z-elevated{z-index:var(--z-elevated)}.z-sticky{z-index:var(--z-sticky)}.z-header{z-index:var(--z-header)}.z-sidebar{z-index:var(--z-sidebar)}.z-overlay{z-index:var(--z-overlay)}.z-dropdown{z-index:var(--z-dropdown)}.z-popover{z-index:var(--z-popover)}.z-tooltip{z-index:var(--z-tooltip)}.z-modal-backdrop{z-index:var(--z-modal-backdrop)}.z-modal{z-index:var(--z-modal)}.z-notification{z-index:var(--z-notification)}.z-emergency{z-index:var(--z-emergency)}.popover-panel{position:fixed;z-index:var(--z-popover);background:#14161af0;color:#eaecee;border:1px solid rgba(255,255,255,.06);border-radius:12px;box-shadow:0 12px 32px #00000073;-webkit-backdrop-filter:saturate(120%) blur(6px);backdrop-filter:saturate(120%) blur(6px);opacity:0;pointer-events:auto;min-width:200px;overflow:hidden}.tooltip-panel{position:fixed;z-index:var(--z-tooltip);background:#12141af2;color:#e8eaed;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:6px 10px;box-shadow:0 6px 18px #0000004d;opacity:0;pointer-events:none!important}.timeline-overlay,.timeline-selection,.availability-bar,.timeline-grid-overlay,.status-light-icon,.status-light-glow{pointer-events:none!important}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--font-mono);font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 320px){.container{max-width:320px}}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-y-0{top:0;bottom:0}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-3{left:.75rem}.right-0{right:0}.right-3{right:.75rem}.top-0{top:0}.top-1\/2{top:50%}.top-16{top:4rem}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.z-\[9999\]{z-index:9999}.m-4{margin:1rem}.mx-auto{margin-left:auto;margin-right:auto}.-mb-px{margin-bottom:-1px}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.h-0{height:0px}.h-1{height:.25rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.max-h-\[300px\]{max-height:300px}.max-h-\[80vh\]{max-height:80vh}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-48{min-width:12rem}.min-w-64{min-width:16rem}.min-w-\[120px\]{min-width:120px}.min-w-\[200px\]{min-width:200px}.min-w-\[240px\]{min-width:240px}.max-w-2xl{max-width:42rem}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.touch-pan-x{--tw-pan-x: pan-x;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.resize-none{resize:none}.resize-y{resize:vertical}.resize{resize:both}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-xl{border-radius:.75rem}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.rounded-b-xl{border-bottom-right-radius:.75rem;border-bottom-left-radius:.75rem}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-l-xl{border-top-left-radius:.75rem;border-bottom-left-radius:.75rem}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-r-xl{border-top-right-radius:.75rem;border-bottom-right-radius:.75rem}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-0{border-left-width:0px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-r-4{border-right-width:4px}.border-t-0{border-top-width:0px}.border-t-4{border-top-width:4px}.border-\[var\(--color-bg-tertiary\)\]{border-color:var(--color-bg-tertiary)}.border-amber-500\/20{border-color:#f59e0b33}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-500\/20{border-color:#3b82f633}.border-blue-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-current{border-color:currentColor}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-green-500\/20{border-color:#22c55e33}.border-green-700{--tw-border-opacity: 1;border-color:rgb(21 128 61 / var(--tw-border-opacity, 1))}.border-orange-500{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.border-orange-500\/20{border-color:#f9731633}.border-orange-500\/30{border-color:#f973164d}.border-orange-neon{--tw-border-opacity: 1;border-color:rgb(255 107 53 / var(--tw-border-opacity, 1))}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-red-500\/20{border-color:#ef444433}.border-red-500\/30{border-color:#ef44444d}.border-red-700{--tw-border-opacity: 1;border-color:rgb(185 28 28 / var(--tw-border-opacity, 1))}.border-slate-500\/20{border-color:#64748b33}.border-slate-600{--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-yellow-700{--tw-border-opacity: 1;border-color:rgb(161 98 7 / var(--tw-border-opacity, 1))}.border-l-orange-neon{--tw-border-opacity: 1;border-left-color:rgb(255 107 53 / var(--tw-border-opacity, 1))}.border-l-transparent{border-left-color:transparent}.border-r-transparent{border-right-color:transparent}.border-t-\[var\(--color-accent-primary\)\]{border-top-color:var(--color-accent-primary)}.border-t-gray-900{--tw-border-opacity: 1;border-top-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.border-t-transparent{border-top-color:transparent}.bg-\[var\(--color-accent-primary\)\]{background-color:var(--color-accent-primary)}.bg-\[var\(--color-bg-tertiary\)\]{background-color:var(--color-bg-tertiary)}.bg-\[var\(--color-error\)\]{background-color:var(--color-error)}.bg-\[var\(--color-success\)\]{background-color:var(--color-success)}.bg-\[var\(--color-warning\)\]{background-color:var(--color-warning)}.bg-amber-500\/10{background-color:#f59e0b1a}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-500\/10{background-color:#3b82f61a}.bg-blue-700{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.bg-blue-900\/50{background-color:#1e3a8a80}.bg-emergency-red{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-gray-800\/30{background-color:#1f29374d}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-gray-900\/50{background-color:#11182780}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500\/10{background-color:#22c55e1a}.bg-green-700{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.bg-green-900\/20{background-color:#14532d33}.bg-green-900\/50{background-color:#14532d80}.bg-navy-medium{--tw-bg-opacity: 1;background-color:rgb(26 35 50 / var(--tw-bg-opacity, 1))}.bg-orange-500\/10{background-color:#f973161a}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-500\/10{background-color:#ef44441a}.bg-red-700{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.bg-red-900\/20{background-color:#7f1d1d33}.bg-red-900\/50{background-color:#7f1d1d80}.bg-slate-500\/10{background-color:#64748b1a}.bg-slate-600{--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/5{background-color:#ffffff0d}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-700{--tw-bg-opacity: 1;background-color:rgb(161 98 7 / var(--tw-bg-opacity, 1))}.bg-yellow-900\/20{background-color:#713f1233}.bg-yellow-900\/50{background-color:#713f1280}.bg-opacity-50{--tw-bg-opacity: .5}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-gray-800{--tw-gradient-from: #1f2937 var(--tw-gradient-from-position);--tw-gradient-to: rgb(31 41 55 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-neon{--tw-gradient-from: #ff6b35 var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 107 53 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-gray-700{--tw-gradient-to: #374151 var(--tw-gradient-to-position)}.to-orange-bright{--tw-gradient-to: #ff7849 var(--tw-gradient-to-position)}.p-0{padding:0}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pl-10{padding-left:2.5rem}.pl-12{padding-left:3rem}.pl-3{padding-left:.75rem}.pl-9{padding-left:2.25rem}.pr-10{padding-right:2.5rem}.pr-12{padding-right:3rem}.pr-3{padding-right:.75rem}.pr-9{padding-right:2.25rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-6xl{font-size:3.75rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-display-lg{font-size:clamp(2.5rem,6vw,4rem);line-height:1.2;letter-spacing:-.025em}.text-heading-lg{font-size:clamp(1.5rem,2.5vw,1.875rem);line-height:1.3}.text-heading-md{font-size:clamp(1.25rem,2vw,1.5rem);line-height:1.3}.text-heading-xl{font-size:clamp(1.75rem,3vw,2.25rem);line-height:1.2;letter-spacing:-.025em}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-\[var\(--color-error\)\]{color:var(--color-error)}.text-\[var\(--color-info\)\]{color:var(--color-info)}.text-\[var\(--color-success\)\]{color:var(--color-success)}.text-\[var\(--color-warning\)\]{color:var(--color-warning)}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-checkride-amber{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-emergency-red{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-flight-blue{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-200{--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity, 1))}.text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-green-900{--tw-text-opacity: 1;color:rgb(20 83 45 / var(--tw-text-opacity, 1))}.text-ground-green{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.text-purple-800{--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-text-primary{color:var(--text-primary)}.text-text-tertiary{color:var(--text-tertiary)}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-200{--tw-text-opacity: 1;color:rgb(254 240 138 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-90{opacity:.9}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--color-bg-primary: #0a0b0f;--color-bg-secondary: #141520;--color-bg-tertiary: #1a1c2e;--color-bg-quaternary: #252843;--color-bg-overlay: rgba(10, 11, 15, .95);--color-accent-primary: #ff6b35;--color-accent-hover: #ff7d4a;--color-accent-active: #e55a2b;--color-accent-subtle: rgba(255, 107, 53, .08);--color-accent-border: rgba(255, 107, 53, .24);--color-accent-glow: 0 0 20px rgba(255, 107, 53, .25);--color-text-primary: #f8fafc;--color-text-secondary: #cbd5e1;--color-text-tertiary: #94a3b8;--color-text-quaternary: #64748b;--color-text-inverse: #0f172a;--color-success: #22c55e;--color-success-bg: rgba(34, 197, 94, .1);--color-warning: #f59e0b;--color-warning-bg: rgba(245, 158, 11, .1);--color-error: #ef4444;--color-error-bg: rgba(239, 68, 68, .1);--color-info: #3b82f6;--color-info-bg: rgba(59, 130, 246, .1);--color-phase-flight: #3b82f6;--color-phase-ground: #22c55e;--color-phase-simulator: #8b5cf6;--color-phase-checkride: #f59e0b;--color-phase-solo: #06b6d4;--color-border-primary: rgba(248, 250, 252, .08);--color-border-secondary: rgba(248, 250, 252, .04);--color-border-focus: var(--color-accent-primary);--color-border-interactive: rgba(248, 250, 252, .12);--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Monaco", "Cascadia Code", monospace;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-xs: .25rem;--space-sm: .5rem;--space-md: .75rem;--space-lg: 1rem;--space-xl: 1.5rem;--space-2xl: 2rem;--space-3xl: 3rem;--space-4xl: 4rem;--layout-topbar-height: 64px;--layout-sidebar-width: 280px;--sidebar-width: 280px;--layout-sidebar-collapsed: 72px;--layout-content-max-width: 100vw;--layout-mobile-breakpoint: 768px;--radius-xs: .25rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-glow: var(--color-accent-glow);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--bg: var(--color-bg-primary);--panel: var(--color-bg-secondary);--surface: var(--color-bg-tertiary);--text: var(--color-text-primary);--text-muted: var(--color-text-secondary);--text-subtle: var(--color-text-tertiary);--brand: var(--color-accent-primary);--brand-hover: var(--color-accent-hover);--brand-active: var(--color-accent-active);--ok: var(--color-success);--warn: var(--color-warning);--err: var(--color-error);--info: var(--color-info);--border: var(--color-border-primary);--border-subtle: var(--color-border-secondary);--border-muted: rgba(248, 250, 252, .06);--ok-bg: var(--color-success-bg);--warn-bg: var(--color-warning-bg);--err-bg: var(--color-error-bg);--info-bg: var(--color-info-bg);--ok-text: var(--color-success);--warn-text: var(--color-warning);--err-text: var(--color-error);--info-text: var(--color-info);--row-h: 96px;--col-w: 240px;--bg-primary: var(--color-bg-primary);--bg-secondary: var(--color-bg-secondary);--bg-tertiary: var(--color-bg-tertiary);--text-primary: var(--color-text-primary);--text-secondary: var(--color-text-secondary);--text-tertiary: var(--color-text-tertiary);--border-primary: var(--color-border-primary);--border-secondary: var(--color-border-secondary);--color-accent-neon-orange: var(--color-accent-primary);--flight-blue: var(--color-phase-flight);--ground-green: var(--color-phase-ground);--simulator-purple: var(--color-phase-simulator);--checkride-amber: var(--color-phase-checkride);--solo-cyan: var(--color-phase-solo);--emergency-red: var(--color-error)}*{box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%}body{margin:0;padding:0;font-family:var(--font-primary);font-size:var(--text-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeSpeed}.layout-grid{display:grid;grid-template-areas:"sidebar main";grid-template-rows:1fr;grid-template-columns:var(--sidebar-width) 1fr;min-height:100vh;background:var(--color-bg-primary);transition:grid-template-columns var(--transition-base)}.layout-grid.layout-grid--collapsed{grid-template-columns:var(--layout-sidebar-collapsed) 1fr!important}@media (max-width: 767px){.layout-grid{grid-template-areas:"topbar" "main" "mobile-nav";grid-template-rows:var(--layout-topbar-height) 1fr 60px;grid-template-columns:1fr}.layout-main{min-height:calc(100vh - var(--layout-topbar-height) - 60px);padding:var(--space-lg)}.grid-mobile-1{grid-template-columns:1fr!important;gap:var(--space-lg)}.grid-mobile-2{grid-template-columns:repeat(2,1fr)!important;gap:var(--space-md)}.mobile-content-spacing{padding:var(--space-md);margin-bottom:var(--space-lg)}}@media (min-width: 768px){.layout-topbar,header.layout-topbar{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;overflow:hidden!important}.layout-mobile-nav{display:none!important}.layout-grid{display:block!important;min-height:100vh;width:100%;max-width:none;position:relative}.layout-sidebar{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100vh;background:var(--color-bg-secondary);border-right:1px solid var(--color-border-primary);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-border-primary) transparent;z-index:var(--z-sticky);transition:width var(--transition-base)}.layout-grid--collapsed .layout-sidebar{width:var(--layout-sidebar-collapsed)}.layout-main{display:block!important;grid-area:none!important;margin-left:var(--sidebar-width);padding:var(--space-4xl);min-height:100vh;width:calc(100vw - var(--sidebar-width));max-width:calc(100vw - var(--sidebar-width));overflow-x:hidden;transition:margin-left var(--transition-base),width var(--transition-base)}.layout-grid--collapsed .layout-main{margin-left:var(--layout-sidebar-collapsed);width:calc(100vw - var(--layout-sidebar-collapsed));max-width:calc(100vw - var(--layout-sidebar-collapsed))}}@media (min-width: 1440px){.layout-grid{width:100vw;max-width:none}.layout-main{padding:var(--space-3xl)}.grid-desktop-4{grid-template-columns:repeat(4,1fr)}.grid-desktop-3{grid-template-columns:repeat(3,1fr)}.grid-desktop-2{grid-template-columns:repeat(2,1fr)}}.layout-topbar{grid-area:topbar;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-primary);display:flex;align-items:center;padding:0 var(--space-xl);gap:var(--space-xl);z-index:var(--z-sticky)}.layout-sidebar{grid-area:sidebar;background:var(--color-bg-secondary);border-right:1px solid var(--color-border-primary);height:100vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-border-primary) transparent}.layout-sidebar::-webkit-scrollbar{width:6px}.layout-sidebar::-webkit-scrollbar-track{background:transparent}.layout-sidebar::-webkit-scrollbar-thumb{background:var(--color-border-primary);border-radius:3px}.layout-sidebar::-webkit-scrollbar-thumb:hover{background:var(--color-border-interactive)}.layout-main{grid-area:main;overflow:auto;width:100%;justify-self:stretch;align-self:start;padding:var(--space-4xl)}.layout-mobile-nav{grid-area:mobile-nav;background:var(--color-bg-secondary);border-top:1px solid var(--color-border-primary)}.topbar-brand{display:flex;align-items:center;gap:var(--space-md);font-size:var(--text-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);text-decoration:none}.topbar-logo{width:32px;height:32px;background:linear-gradient(135deg,var(--color-accent-primary),var(--color-accent-active));border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:var(--font-weight-bold);font-size:var(--text-sm)}.topbar-title{font-size:var(--text-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:var(--line-height-tight)}.topbar-subtitle{font-size:var(--text-xs);color:var(--color-text-tertiary);line-height:var(--line-height-tight)}.topbar-nav{display:flex;align-items:center;gap:var(--space-sm);margin-left:auto}.topbar-nav-item{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);color:var(--color-text-tertiary);text-decoration:none;transition:all var(--transition-base);border:none;background:transparent;cursor:pointer;font-size:var(--text-lg)}.topbar-nav-item:hover{color:var(--color-text-primary);background:var(--color-bg-tertiary)}.topbar-nav-item--active{color:var(--color-accent-primary);background:var(--color-accent-subtle)}.sidebar{padding:var(--space-xl) 0;width:100%;transition:all var(--transition-base)}.sidebar--collapsed{overflow:visible;border-right:2px solid var(--color-accent-primary);box-shadow:2px 0 8px #ff6b351a}.sidebar--collapsed .sidebar-nav-item{position:relative;justify-content:flex-start;padding:var(--space-md);margin:var(--space-xs) 0;width:auto}.sidebar--collapsed .sidebar-nav-item:hover:after{content:attr(title);position:absolute;left:60px;top:50%;transform:translateY(-50%);background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);white-space:nowrap;z-index:1000;box-shadow:var(--shadow-lg);color:var(--color-text-primary)}.sidebar-header{padding:0 var(--space-xl);margin-bottom:var(--space-2xl);display:flex;align-items:center;justify-content:space-between}.sidebar-toggle{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-accent-primary);border:1px solid var(--color-accent-primary);border-radius:var(--radius-md);color:#fff;cursor:pointer;transition:all var(--transition-base);font-weight:600;font-size:1.1rem;box-shadow:var(--shadow-sm)}.sidebar-toggle:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);box-shadow:var(--shadow-glow);transform:scale(1.05)}.sidebar-toggle:active{transform:scale(.95)}.sidebar-brand{display:flex;align-items:center;gap:var(--space-md);color:var(--color-text-primary);text-decoration:none}.sidebar-logo{width:40px;height:40px;background:linear-gradient(135deg,var(--color-accent-primary),var(--color-accent-active));border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:var(--font-weight-bold)}.sidebar-brand-text{display:flex;flex-direction:column}.sidebar-title{font-size:var(--text-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:var(--line-height-tight)}.sidebar-subtitle{font-size:var(--text-xs);color:var(--color-text-tertiary);line-height:var(--line-height-tight)}.sidebar-nav{padding:0 var(--space-lg)}.sidebar-section{margin-bottom:var(--space-2xl)}.sidebar-section-title{font-size:var(--text-xs);font-weight:var(--font-weight-medium);color:var(--color-text-quaternary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md);padding:0 var(--space-md)}.sidebar-nav-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);color:var(--color-text-secondary);text-decoration:none;font-size:var(--text-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-base);margin-bottom:var(--space-xs);position:relative}.sidebar-nav-item:hover{color:var(--color-text-primary);background:var(--color-bg-tertiary)}.sidebar-nav-item--active{color:var(--color-accent-primary);background:var(--color-accent-subtle);border:1px solid var(--color-accent-border)}.sidebar-nav-icon{font-size:var(--text-lg);width:20px;text-align:center}.metric-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);padding:var(--space-xl);transition:all var(--transition-base)}.metric-card:hover{border-color:var(--color-border-interactive);box-shadow:var(--shadow-md)}.metric-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-lg)}.metric-card-icon{width:48px;height:48px;background:var(--color-accent-subtle);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);color:var(--color-accent-primary)}.metric-card-value{font-size:var(--text-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:var(--line-height-tight);margin-bottom:var(--space-sm)}.metric-card-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);line-height:var(--line-height-tight)}.metric-card-trend{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-xs);font-weight:var(--font-weight-medium)}.metric-card-trend--up{color:var(--color-success)}.metric-card-trend--down{color:var(--color-error)}.metric-card-trend--neutral{color:var(--color-text-tertiary)}.metric-card--compact{padding:var(--space-md)}.metric-card--compact .metric-card-value{font-size:var(--text-xl);margin-bottom:var(--space-xs)}.metric-card--compact .metric-card-icon{width:32px;height:32px;font-size:var(--text-base)}.metric-card--sm{padding:var(--space-sm)}.metric-card--sm .metric-card-value{font-size:var(--text-lg);margin-bottom:var(--space-xs)}.metric-card--sm .metric-card-icon{width:28px;height:28px;font-size:var(--text-sm)}.metric-card--sm .metric-card-label{font-size:var(--text-xs)}.content-container{margin:0 auto;max-width:1200px;width:100%}.content-container--wide{margin:0 auto;max-width:1400px;width:100%}.content-container--full{margin:0;max-width:none;width:100%}.card{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);padding:var(--space-lg);transition:all var(--transition-base)}.card:hover{border-color:var(--color-border-interactive);box-shadow:var(--shadow-md)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-lg)}.card-title{font-size:var(--text-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);display:flex;align-items:center;gap:var(--space-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-weight-medium);text-decoration:none;border:none;cursor:pointer;transition:all var(--transition-base);line-height:var(--line-height-tight);min-height:40px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--color-accent-primary);color:var(--color-text-inverse)}.btn--primary:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:var(--shadow-glow)}.btn--secondary{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-primary)}.btn--secondary:hover:not(:disabled){background:var(--color-bg-quaternary);border-color:var(--color-border-interactive)}.btn--ghost{background:transparent;color:var(--color-text-secondary)}.btn--ghost:hover:not(:disabled){background:var(--color-bg-tertiary);color:var(--color-text-primary)}.btn--sm{padding:var(--space-sm) var(--space-md);font-size:var(--text-xs);min-height:32px}.btn--lg{padding:var(--space-lg) var(--space-2xl);font-size:var(--text-base);min-height:48px}.input{width:100%;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);padding:var(--space-md);font-size:var(--text-sm);color:var(--color-text-primary);transition:all var(--transition-base);font-family:var(--font-primary)}.input:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-subtle)}.input::-moz-placeholder{color:var(--color-text-quaternary)}.input::placeholder{color:var(--color-text-quaternary)}.label{display:block;font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.table{width:100%;border-collapse:collapse;background:var(--color-bg-secondary);border-radius:var(--radius-lg);overflow:hidden}.table th{text-align:left;padding:var(--space-lg);font-size:var(--text-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border-primary);background:var(--color-bg-tertiary)}.table th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all var(--transition-base)}.table th.sortable:hover{color:var(--color-text-primary);background:var(--color-bg-quaternary)}.table th.sort-asc,.table th.sort-desc{color:var(--color-accent-primary)}.table td{padding:var(--space-lg);font-size:var(--text-sm);color:var(--color-text-primary);border-bottom:1px solid var(--color-border-secondary)}.table tbody tr:hover{background:var(--color-bg-tertiary)}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot--success{background:var(--color-success)}.status-dot--warning{background:var(--color-warning)}.status-dot--error{background:var(--color-error)}.status-dot--info{background:var(--color-info)}.badge{display:inline-flex;align-items:center;padding:2px var(--space-sm);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.025em}.badge--primary{background:var(--color-accent-primary);color:var(--color-text-inverse)}.badge--success{background:var(--color-success-bg);color:var(--color-success)}.badge--warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge--error{background:var(--color-error-bg);color:var(--color-error)}.badge--info{background:var(--color-info-bg);color:var(--color-info)}.mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);background:var(--color-bg-secondary);border-top:1px solid var(--color-border-primary);padding:var(--space-sm) 0}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-xs);border:none;background:none;color:var(--color-text-tertiary);text-decoration:none;transition:all var(--transition-base);min-height:44px}.mobile-nav-item:hover,.mobile-nav-item--active{color:var(--color-accent-primary)}.mobile-nav-icon{font-size:var(--text-lg);line-height:1}.mobile-nav-label{font-size:10px;font-weight:var(--font-weight-medium);line-height:1;text-align:center}@media (max-width: 767px){.layout-sidebar{display:none}.layout-topbar,header.layout-topbar{display:flex!important;visibility:visible!important;opacity:1!important;height:var(--layout-topbar-height)!important}.layout-mobile-nav{display:block}.layout-main{padding:var(--space-lg);width:100%;justify-self:stretch;align-self:start}.content-container,.content-container--wide{max-width:none;margin:0}.topbar-nav{gap:var(--space-xs)}.topbar-nav-item{width:36px;height:36px;font-size:var(--text-base)}.card,.metric-card{padding:var(--space-lg);border-radius:var(--radius-md)}.metric-card-value{font-size:var(--text-2xl)}.btn{min-height:44px}.grid{display:grid;gap:var(--space-lg)}.grid-1{grid-template-columns:1fr}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-5{grid-template-columns:repeat(5,1fr)}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.grid-mobile-1{grid-template-columns:1fr!important}.grid-mobile-2{grid-template-columns:repeat(2,1fr)!important}}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-accent{color:var(--color-accent-primary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-info{color:var(--color-info)}.bg-primary{background:var(--color-bg-primary)}.bg-secondary{background:var(--color-bg-secondary)}.bg-accent{background:var(--color-accent-primary)}.border-primary{border-color:var(--color-border-primary)}.border-accent{border-color:var(--color-accent-primary)}.border-success{border-color:var(--color-success)}.border-warning{border-color:var(--color-warning)}.border-error{border-color:var(--color-error)}.border-info{border-color:var(--color-info)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-glow{box-shadow:var(--shadow-glow)}.space-y-xs>*+*{margin-top:var(--space-xs)}.space-y-sm>*+*{margin-top:var(--space-sm)}.space-y-md>*+*{margin-top:var(--space-md)}.space-y-lg>*+*{margin-top:var(--space-lg)}.space-y-xl>*+*{margin-top:var(--space-xl)}@media (max-width: 767px){.hidden-mobile{display:none!important}.mobile-only{display:block}}@media (min-width: 768px){.hidden-desktop{display:none!important}.mobile-only{display:none}.desktop-only{display:block}}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fade-in .3s ease-out}*:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){:root{--color-border-primary: rgba(248, 250, 252, .2);--color-border-secondary: rgba(248, 250, 252, .1)}}.sr-only-focusable{position:absolute;left:-10000px;top:auto;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:focus{position:absolute;left:var(--space-lg);top:var(--space-lg);z-index:9999;width:auto;height:auto;padding:var(--space-md) var(--space-xl);margin:0;overflow:visible;clip:auto;white-space:normal;background-color:var(--color-bg-secondary);color:var(--color-text-primary);border:2px solid var(--color-accent-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);text-decoration:none;font-weight:var(--font-weight-medium)}.sidebar-footer{position:sticky;bottom:0;background:var(--color-bg-secondary);border-top:1px solid var(--color-border-primary);padding:var(--space-md);margin-top:auto}.sidebar-toggle-enhanced{width:100%;display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background:var(--color-accent-primary);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.sidebar-toggle-enhanced:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.sidebar-toggle-enhanced:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.sidebar-toggle-icon{font-size:1.1rem;font-weight:700;display:flex;align-items:center;justify-content:center;min-width:20px}.sidebar-toggle-label{font-size:var(--text-sm);white-space:nowrap}.sidebar--collapsed .sidebar-toggle-enhanced{padding:var(--space-md);justify-content:center}.sidebar--collapsed .sidebar-toggle-icon{font-size:1.2rem}.density-compact{--row-h: 80px;--col-w: 220px;--row-min-h: 80px;--col-min-w: 220px}.density-comfy{--row-h: 96px;--col-w: 240px;--row-min-h: 96px;--col-min-w: 240px}.density-roomy{--row-h: 120px;--col-w: 260px;--row-min-h: 120px;--col-min-w: 260px}.density-compact .grid-cell,.density-compact .slot-card,.density-compact .line-column-header,.density-comfy .grid-cell,.density-comfy .slot-card,.density-comfy .line-column-header,.density-roomy .grid-cell,.density-roomy .slot-card,.density-roomy .line-column-header{min-height:var(--row-h);min-width:var(--col-w)}.density-compact .go-header,.density-compact .time-header,.density-comfy .go-header,.density-comfy .time-header,.density-roomy .go-header,.density-roomy .time-header{min-width:var(--col-w);height:calc(var(--row-h) * .8)}.density-compact .line-header,.density-comfy .line-header,.density-roomy .line-header{height:var(--row-h);min-height:var(--row-h)}.checked\:border-orange-500:checked{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.checked\:bg-orange-500:checked{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-\[var\(--color-border-interactive\)\]:hover{border-color:var(--color-border-interactive)}.hover\:border-blue-500:hover{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.hover\:border-flight-blue:hover{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.hover\:border-orange-500:hover{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.hover\:border-slate-500:hover{--tw-border-opacity: 1;border-color:rgb(100 116 139 / var(--tw-border-opacity, 1))}.hover\:bg-blue-200:hover{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-800\/50:hover{background-color:#1f293780}.hover\:bg-green-200:hover{--tw-bg-opacity: 1;background-color:rgb(187 247 208 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-500\/20:hover{background-color:#f9731633}.hover\:bg-purple-200:hover{--tw-bg-opacity: 1;background-color:rgb(233 213 255 / var(--tw-bg-opacity, 1))}.hover\:bg-red-200:hover{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.hover\:bg-red-500\/20:hover{background-color:#ef444433}.hover\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-700:hover{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-white\/5:hover{background-color:#ffffff0d}.hover\:text-emergency-red:hover{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-slate-300:hover{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-red-500:focus{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-orange-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(249 115 22 / var(--tw-ring-opacity, 1))}.focus\:ring-offset-0:focus{--tw-ring-offset-width: 0px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width: 640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}}@media (min-width: 768px){.md\:col-span-1{grid-column:span 1 / span 1}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.update-notification{position:fixed;z-index:10000;max-width:320px;font-family:var(--font-sans);font-size:var(--text-body-sm)}.update-notification.top-right{top:var(--spacing-lg);right:var(--spacing-lg)}.update-notification.bottom-right{bottom:var(--spacing-lg);right:var(--spacing-lg)}.update-notification.bottom-left{bottom:var(--spacing-lg);left:var(--spacing-lg)}.update-notification.top-left{top:var(--spacing-lg);left:var(--spacing-lg)}.update-alert{background:var(--surface-primary);border:1px solid var(--accent-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden;animation:slideIn .3s ease-out}.update-notification.has-update .update-alert{background:var(--accent-subtle);border-color:var(--accent-primary)}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.alert-header{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--accent-primary);color:var(--text-on-accent);font-weight:600}.alert-icon{margin-right:var(--spacing-xs);font-size:1rem}.alert-title{flex:1}.dismiss-btn{background:none;border:none;color:var(--text-on-accent);font-size:1.2rem;cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);line-height:1;opacity:.8;transition:opacity .2s ease}.dismiss-btn:hover{opacity:1;background:#ffffff1a}.alert-content{padding:var(--spacing-md)}.alert-content p{margin:0 0 var(--spacing-sm) 0;color:var(--text-primary)}.version-info{margin-top:var(--spacing-sm)}.version-info small{color:var(--text-secondary);font-size:var(--text-body-xs)}.alert-actions{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);padding-top:0}.version-info-panel{background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-top:var(--spacing-sm);overflow:hidden}.info-header{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--surface-primary);border-bottom:1px solid var(--border-subtle);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.info-icon{margin-right:var(--spacing-xs);font-size:.9rem}.info-title{flex:1;font-weight:500;color:var(--text-primary)}.toggle-btn{background:none;border:none;color:var(--text-secondary);font-size:.8rem;cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-xs);transition:all .2s ease}.toggle-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.version-details{padding:var(--spacing-md);animation:expandDown .2s ease-out}@keyframes expandDown{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:200px;padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}}.detail-group{margin-bottom:var(--spacing-md)}.detail-group:last-child{margin-bottom:0}.detail-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.detail-item:last-child{margin-bottom:0}.detail-label{color:var(--text-secondary);font-weight:500;font-size:var(--text-body-xs)}.detail-value{color:var(--text-primary);font-weight:400;font-size:var(--text-body-xs);font-family:var(--font-mono)}.detail-value.status{font-family:var(--font-sans);font-weight:500;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--text-body-xs)}.detail-value.status.up-to-date{background:var(--success-subtle);color:var(--success-primary)}.detail-value.status.update-available{background:var(--accent-subtle);color:var(--accent-primary);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.detail-group.error{background:var(--error-subtle);padding:var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--error-primary-alpha-20)}.detail-group.error .detail-label{color:var(--error-primary)}.detail-group.error .detail-value{color:var(--error-primary);font-family:var(--font-sans)}.detail-actions{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-sm);flex-wrap:wrap}@media (max-width: 768px){.update-notification{max-width:280px}.update-notification.top-right,.update-notification.bottom-right{right:var(--spacing-sm)}.update-notification.top-left,.update-notification.bottom-left{left:var(--spacing-sm)}.update-notification.top-right,.update-notification.top-left{top:var(--spacing-sm)}.update-notification.bottom-right,.update-notification.bottom-left{bottom:var(--spacing-sm)}}@media (max-width: 480px){.update-notification{left:var(--spacing-xs)!important;right:var(--spacing-xs)!important;max-width:none}.alert-actions,.detail-actions{flex-direction:column}.alert-actions .enhanced-button,.detail-actions .enhanced-button{width:100%;justify-content:center}}@media (prefers-color-scheme: dark){.dismiss-btn:hover{background:#0003}}@media (prefers-contrast: high){.update-alert,.version-info-panel{border-width:2px}}@media (prefers-reduced-motion: reduce){.update-alert,.version-details,.detail-value.status.update-available{animation:none}}.futuristic-dashboard{--neon-orange: #ff6b35;--neon-orange-light: #ff7d4a;--neon-orange-dark: #e55a2b;--bg-darker: #050507;--bg-card: #0f1114;--bg-card-hover: #141520;--text-muted: #64748b;--text-secondary: #94a3b8;display:grid;gap:2rem;width:100%;margin:0;padding:0;min-height:calc(100vh - var(--space-4xl) * 2);background:transparent;box-sizing:border-box}.hero-header{position:relative;padding:3rem 2rem;background:linear-gradient(135deg,var(--bg-darker) 0%,var(--color-bg-primary) 100%);border-radius:1rem;overflow:hidden;margin-bottom:2rem;width:100%}.hero-gradient{position:absolute;top:-50%;right:-20%;width:80%;height:200%;background:radial-gradient(circle,var(--neon-orange) 0%,transparent 70%);opacity:.05;animation:pulse-glow 4s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:.05;transform:scale(1)}50%{opacity:.08;transform:scale(1.1)}}.hero-content{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center}.hero-title{display:flex;align-items:center;gap:1rem;margin:0;font-size:2.5rem;font-weight:800;letter-spacing:-.02em;color:var(--color-text-primary)}.hero-logo{display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:linear-gradient(135deg,var(--neon-orange) 0%,var(--neon-orange-dark) 100%);border-radius:1rem;font-size:2rem;font-weight:700;color:#fff;box-shadow:0 0 40px #ff6b3580,inset 0 0 20px #fff3}.hero-text{background:linear-gradient(135deg,var(--color-text-primary) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-status{display:flex;align-items:center;gap:2rem}.status-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ff6b351a;border:1px solid rgba(255,107,53,.3);border-radius:2rem;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--neon-orange);animation:status-glow 2s ease-in-out infinite}@keyframes status-glow{0%,to{box-shadow:0 0 10px #ff6b354d}50%{box-shadow:0 0 20px #ff6b3580}}.status-dot{width:8px;height:8px;background:var(--neon-orange);border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.hero-timestamp{font-family:var(--font-mono);font-size:1.125rem;font-weight:500;color:var(--text-secondary);letter-spacing:.1em}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem;width:100%}.metric-card{position:relative;padding:1.25rem;background:var(--bg-card);border:1px solid rgba(255,107,53,.1);border-radius:.75rem;overflow:hidden;transform-style:preserve-3d;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer}.metric-card:hover{transform:translateY(-4px) rotateX(5deg) rotateY(-5deg);background:var(--bg-card-hover);border-color:#ff6b354d}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent 0%,var(--neon-orange) 50%,transparent 100%);transform:translate(-100%);transition:transform .6s ease}.metric-card:hover:before{transform:translate(100%)}.metric-icon{position:absolute;top:1rem;right:1rem;font-size:2rem;opacity:.3;filter:grayscale(.5);transition:all .3s ease}.metric-card:hover .metric-icon{opacity:.6;filter:grayscale(0);transform:scale(1.1) rotate(-10deg)}.metric-content{position:relative;z-index:1}.metric-value{font-size:2.25rem;font-weight:800;color:var(--color-text-primary);line-height:1;margin-bottom:.375rem;letter-spacing:-.02em;transition:color .3s ease}.metric-card:hover .metric-value{color:var(--neon-orange);text-shadow:0 0 20px rgba(255,107,53,.5)}.metric-label{font-size:1rem;font-weight:500;color:var(--text-secondary);margin-bottom:.75rem}.metric-change{font-size:.875rem;font-weight:600;color:var(--color-success);display:flex;align-items:center;gap:.25rem}.metric-glow{position:absolute;top:50%;left:50%;width:150%;height:150%;background:radial-gradient(circle,var(--neon-orange) 0%,transparent 70%);transform:translate(-50%,-50%);opacity:0;transition:opacity .3s ease;pointer-events:none}.metric-card:hover .metric-glow{opacity:.1}.quick-actions{margin-bottom:2rem;width:100%}.section-title{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin-bottom:1.5rem;letter-spacing:-.01em}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem}.action-button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.25rem .75rem;background:var(--bg-card);border:1px solid rgba(255,107,53,.1);border-radius:.75rem;cursor:pointer;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.action-button:hover{transform:translateY(-4px);background:var(--bg-card-hover);border-color:var(--action-color, var(--neon-orange))}.action-icon{font-size:2rem;transition:transform .3s ease}.action-button:hover .action-icon{transform:scale(1.2) rotate(-5deg)}.action-label{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-align:center;transition:color .3s ease}.action-button:hover .action-label{color:var(--color-text-primary)}.action-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(10px);padding:.5rem 1rem;background:var(--bg-card);border:1px solid var(--action-color, var(--neon-orange));border-radius:.5rem;font-size:.75rem;font-weight:500;color:var(--color-text-primary);white-space:nowrap;opacity:0;visibility:hidden;transition:all .3s ease;z-index:10}.action-button:hover .action-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(-10px)}.action-glow{position:absolute;top:50%;left:50%;width:120%;height:120%;background:radial-gradient(circle,var(--action-color, var(--neon-orange)) 0%,transparent 70%);transform:translate(-50%,-50%);opacity:0;transition:opacity .3s ease;pointer-events:none}.action-button:hover .action-glow{opacity:.2}@media (max-width: 768px){.hero-title{font-size:1.75rem}.hero-content{flex-direction:column;gap:1.5rem;align-items:flex-start}.metrics-grid{grid-template-columns:1fr}.actions-grid{grid-template-columns:repeat(2,1fr)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.loading-skeleton{background:linear-gradient(90deg,var(--bg-card) 0%,rgba(255,107,53,.1) 50%,var(--bg-card) 100%);background-size:1000px 100%;animation:shimmer 2s infinite}:root{--bg: #0f1117;--panel: #161a24;--panel-2:#1c2130;--text:#e8edf7;--muted:#8a93a7;--brand:#6c5ce7;--ok:#18c964;--warn:#ffb020;--err:#ff5d5d;--border:#2b3246;--border-strong:#3a4160;--radius:12px;--radius-sm:10px;--shadow:0 6px 18px rgba(0,0,0,.25);--row-h:96px;--col-w:240px;--head-h:72px;--line-w:160px}.compact-schedule-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;margin-bottom:12px}.header-left{display:flex;align-items:center;gap:12px}.header-title{font-size:20px;font-weight:600;color:var(--text);margin:0}.date-picker{display:flex;align-items:center;gap:8px}.date-input{background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:6px 8px}.date-display{color:var(--muted);font-size:12px}.header-controls{display:flex;gap:16px;align-items:center}.control-group{display:flex;align-items:center;gap:8px}.control-label{color:var(--muted);font-size:12px}.lines-stepper{display:flex;align-items:center;gap:6px}.stepper-btn{background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:8px;width:28px;height:28px}.lines-input{width:52px;text-align:center;background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:4px 6px}.view-switch{display:flex;gap:6px}.view-btn{background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:6px 10px}.view-btn.active{outline:2px solid var(--brand);outline-offset:1px}.slim-metrics-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.metric-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;display:flex;align-items:flex-end;justify-content:space-between;min-height:64px}.metric-value{font-size:26px;font-weight:700;color:var(--text);line-height:1}.metric-label{font-size:12px;color:var(--muted)}.metric-card.tone-ok{box-shadow:inset 0 0 0 1px #18c9642e}.metric-card.tone-warn{box-shadow:inset 0 0 0 1px #ffb0202e}.metric-card.tone-brand{box-shadow:inset 0 0 0 1px #6c5ce740}.virtualized-schedule-grid{position:relative}.grid-headers{position:sticky;top:calc(var(--head-h) * -1);pointer-events:none}.grid-corner-cell{position:absolute;top:0;left:0;background:linear-gradient(180deg,#151827,#121628);border-right:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:center;border-top-left-radius:var(--radius)}.corner-content{text-align:center}.corner-label-primary{color:var(--muted);font-size:12px;font-weight:600;display:block}.corner-label-secondary{color:var(--muted);font-size:11px;opacity:.8}.go-headers-container{position:sticky;top:0;left:var(--line-w)}.modern-go-header{position:absolute;top:0;height:var(--head-h);background:linear-gradient(180deg,#151827,#121628);border-bottom:1px solid var(--border);border-right:1px solid var(--border);display:flex;flex-direction:column;justify-content:center;gap:2px;padding:8px 10px}.go-label{color:var(--text);font-weight:600;font-size:12px}.go-times{color:var(--muted);font-size:12px}.modern-line-header{background:var(--panel);border-right:1px solid var(--border);display:flex;align-items:center;justify-content:center}.line-pill-badge{background:var(--panel-2);color:var(--text);border:1px solid var(--border-strong);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.grid-container{position:relative}.grid-cell{padding:8px}.grid-cell.selected{background:#6c5ce70f}.grid-cell.locked{background:#ffb0200d}.grid-cell.drag-target{outline:2px solid var(--brand);outline-offset:-2px}.slot.modern-slot{width:100%;min-height:var(--row-h);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 1px #ffffff0a inset;display:flex;flex-direction:column;justify-content:space-between;padding:10px;gap:8px;text-align:left;transition:transform .05s ease,box-shadow .15s ease,border-color .15s}.slot.modern-slot:hover{border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow)}.slot.modern-slot.is-selected{outline:2px solid var(--brand);outline-offset:1px}.slot.modern-slot.state-locked{border-color:#ffb02080}.slot.modern-slot.state-conflict{border-color:#ff5d5d99}.slot-top{display:flex;align-items:center;justify-content:space-between}.slot-time{font-weight:600;font-size:12px;color:var(--text);letter-spacing:.2px}.chip{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid transparent}.chip.warn{background:#ffb0201f;color:#ffb020;border-color:#ffb02059}.chip.err{background:#ff5d5d1f;color:#ff5d5d;border-color:#ff5d5d59}.slot-center{display:grid;place-items:center;min-height:calc(var(--row-h) - 56px)}.slot-plus{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;border:1px dashed var(--border-strong);color:var(--muted);font-size:18px}.assignee-stack{display:flex;gap:6px}.assignee-stack .bubble{width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:var(--panel-2);color:var(--text);border:1px solid var(--border-strong);font-size:11px;font-weight:700}.slot-bottom{font-size:12px;color:var(--muted)}.slot-bottom .has-name{color:var(--text)}.empty-cell .empty-slot{width:100%;height:100%;display:grid;place-items:center;border:1px dashed var(--border);border-radius:var(--radius-sm)}.empty-cell .empty-label{color:var(--muted);font-size:12px}:root{--bg-primary: #0f1117;--bg-secondary: #161a24;--bg-elevated: #1c2130;--text-primary: #e8edf7;--text-secondary: #8a93a7;--text-muted: #6b7285;--accent-primary: #3b82f6;--accent-hover: #2563eb;--accent-subtle: rgba(59, 130, 246, .1);--border-primary: #2b3246;--border-secondary: #374151;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-base: 16px;--font-size-lg: 18px;--font-size-xl: 24px;--font-size-2xl: 32px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1)}.professional-schedule-header{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm);overflow:hidden;width:100%;box-sizing:border-box}.header-main{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg);flex-wrap:nowrap;width:100%}.header-title-section{flex:0 1 auto;min-width:200px;max-width:calc(100% - 400px);overflow:hidden}.schedule-title{font-size:var(--font-size-lg);font-weight:700;color:var(--text-primary);margin:0 0 var(--spacing-xs);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-controls{display:flex;align-items:flex-end;gap:var(--spacing-md);flex-shrink:0;flex-basis:auto;min-width:350px;max-width:400px;flex-wrap:wrap}.control-label{display:block;font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-xs)}.date-control{display:flex;flex-direction:column}.date-input.professional{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);transition:border-color .2s ease,box-shadow .2s ease}.date-input.professional:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-subtle)}.lines-control{display:flex;flex-direction:column}.number-input-group{display:flex;align-items:center;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);overflow:hidden}.number-btn{background:transparent;border:none;color:var(--text-secondary);padding:var(--spacing-sm);width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease,color .2s ease;font-size:var(--font-size-base);font-weight:600}.number-btn:hover:not(:disabled){background:var(--bg-elevated);color:var(--text-primary)}.number-btn:disabled{opacity:.5;cursor:not-allowed}.number-input{background:transparent;border:none;color:var(--text-primary);text-align:center;width:50px;padding:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:600}.number-input:focus{outline:none;background:var(--bg-elevated)}.view-control{display:flex;flex-direction:column}.view-toggle.professional{display:flex;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);overflow:hidden}.view-btn{background:transparent;border:none;color:var(--text-secondary);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all .2s ease;position:relative}.view-btn:hover{background:var(--bg-elevated);color:var(--text-primary)}.view-btn.active{background:var(--accent-primary);color:#fff}.view-btn.active:hover{background:var(--accent-hover)}.professional-actions{display:flex;justify-content:space-between;align-items:center;background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm)}.actions-primary{display:flex;gap:var(--spacing-md)}.actions-selection{display:flex;align-items:center;gap:var(--spacing-md)}.selection-count{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:600}.action-btn{border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:var(--spacing-xs)}.action-btn.primary{background:var(--accent-primary);color:#fff;padding:var(--spacing-md) var(--spacing-lg)}.action-btn.primary:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.action-btn.secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary);padding:var(--spacing-md) var(--spacing-lg)}.action-btn.secondary:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--border-secondary)}.action-btn.small{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-primary);padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-xs)}.action-btn.small:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-secondary)}.action-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.professional-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.metric-card.professional{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);text-align:center;transition:transform .2s ease,box-shadow .2s ease}.metric-card.professional:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.metric-value.professional{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-xs);line-height:1}.metric-label.professional{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.metric-card.professional.success{border-color:var(--success);background:#10b9810d}.metric-card.professional.warning{border-color:var(--warning);background:#f59e0b0d}.metric-card.professional.primary{border-color:var(--accent-primary);background:var(--accent-subtle)}.professional-schedule-board{width:100%;height:100vh;background:var(--bg-primary);color:var(--text-primary);display:flex;flex-direction:column;overflow:hidden}.board-grid-wrap{flex:1;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);margin:0 var(--spacing-lg) var(--spacing-lg);overflow:hidden}.empty-alt-view{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary)}.empty-alt-view__card{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;max-width:400px}.empty-alt-view__card h3{font-size:var(--font-size-lg);color:var(--text-primary);margin:0 0 var(--spacing-md);font-weight:600}.empty-alt-view__card p{color:var(--text-secondary);margin:0;line-height:1.5}@media (max-width: 1200px){.header-main{align-items:center}.header-title-section{max-width:calc(100% - 350px)}.header-controls{gap:var(--spacing-sm);min-width:300px}}@media (max-width: 900px){.header-main{flex-wrap:wrap}.header-title-section{max-width:100%;flex:1 1 100%}.header-controls{flex:1 1 100%;min-width:auto;justify-content:center}}@media (max-width: 768px){.header-main{flex-direction:column;gap:var(--spacing-lg);align-items:stretch}.header-controls{flex-wrap:wrap;gap:var(--spacing-md);justify-content:center;width:100%}.professional-actions{flex-direction:column;gap:var(--spacing-md);align-items:stretch}.actions-primary,.actions-selection{justify-content:center}.professional-metrics{grid-template-columns:repeat(2,1fr)}.board-grid-wrap{margin:0 var(--spacing-md) var(--spacing-md)}}@media (max-width: 480px){.professional-metrics{grid-template-columns:1fr}.schedule-title{font-size:var(--font-size-xl)}.professional-schedule-board{height:100dvh}}.custom-dropdown-container{display:flex;flex-direction:column;gap:.5rem;width:100%}.custom-dropdown{position:relative;width:100%;background:var(--surface-color-enhanced-elevated);border:1px solid var(--border-color-enhanced-subtle);border-radius:var(--border-radius-base);font-size:var(--text-body-base);transition:all .25s cubic-bezier(.4,0,.2,1);outline:none;cursor:pointer;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;background:linear-gradient(135deg,var(--surface-color-enhanced-elevated) 0%,rgba(255,107,53,.02) 100%)}.custom-dropdown:focus{border-color:var(--color-flight-blue);box-shadow:0 0 0 3px var(--color-flight-blue-subtle),0 4px 12px #ff6b3526,0 2px 4px #0000001a;transform:translateY(-1px)}.custom-dropdown.error{border-color:var(--status-error-border);background:var(--status-error-background)}.custom-dropdown.disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.dropdown-trigger{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;min-height:2.75rem;box-sizing:border-box;border-radius:inherit;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.custom-dropdown:hover{border-color:#ff6b3566;box-shadow:0 4px 12px #00000026,0 2px 4px #0000000f,0 0 0 1px #ff6b351a;transform:translateY(-2px)}.custom-dropdown.open{border-color:var(--color-flight-blue);box-shadow:0 0 0 2px var(--color-flight-blue-subtle),0 8px 24px #0003,0 4px 8px #0000001a;transform:translateY(-1px)}.custom-dropdown:hover .dropdown-arrow{color:var(--color-flight-blue);transform:scale(1.1)}.custom-dropdown:focus .dropdown-arrow{color:var(--color-flight-blue)}.dropdown-options{position:absolute;top:100%;left:0;right:0;z-index:var(--z-popover);background:var(--surface-color-enhanced-elevated);border:1px solid var(--border-color-enhanced-subtle);border-radius:var(--border-radius-base);box-shadow:0 20px 40px -10px #0006,0 10px 20px -5px #0003,0 0 0 1px #ff6b351a;max-height:240px;overflow-y:auto;margin-top:.5rem;animation:dropdown-slide-down .3s cubic-bezier(.34,1.56,.64,1) forwards;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:2px solid var(--color-flight-blue)}.modal-content .custom-dropdown,.nice-modal-content .custom-dropdown{background:var(--surface-color-enhanced-elevated)!important;border-color:var(--border-color-enhanced-subtle)!important;position:relative!important}.modal-content .dropdown-options,.nice-modal-content .dropdown-options{animation:none!important;transform:none!important}.modal-content .custom-dropdown-options-emergency,.nice-modal-content .custom-dropdown-options-emergency{animation-name:none!important;animation-duration:0s!important;animation-delay:0s!important;animation-iteration-count:0!important;animation-fill-mode:none!important}.modal-content .custom-dropdown.open,.nice-modal-content .custom-dropdown.open{z-index:calc(var(--z-modal) + 30)!important;isolation:isolate!important}.modal-content .custom-dropdown:focus,.nice-modal-content .custom-dropdown:focus{border-color:var(--color-flight-blue)!important;box-shadow:0 0 0 2px var(--color-flight-blue-subtle)!important}.modal-content .dropdown-trigger{background:var(--surface-color-enhanced-elevated)!important;position:relative!important;z-index:calc(var(--z-modal) + 11)!important;pointer-events:auto!important}.modal-content .dropdown-value{color:var(--text-color-high-contrast)!important}.modal-content .dropdown-value.placeholder{color:var(--text-color-enhanced-tertiary)!important}.modal-content .dropdown-arrow{color:var(--text-color-enhanced-secondary)!important}.modal-content .dropdown-options,.nice-modal-content .dropdown-options{background:var(--surface-color-enhanced-elevated)!important;border-color:var(--border-color-enhanced-subtle)!important;position:fixed!important;z-index:calc(var(--z-modal) + 35)!important;pointer-events:auto!important;visibility:visible!important;opacity:1!important;display:block!important}.modal-content .dropdown-option{background:var(--surface-color-enhanced-elevated)!important;color:var(--text-color-high-contrast)!important;border-bottom-color:var(--border-color-enhanced-subtle)!important}.modal-content .dropdown-option:hover,.modal-content .dropdown-option.highlighted{background:var(--surface-color-enhanced-secondary)!important;color:var(--text-color-high-contrast)!important}.modal-content .dropdown-option.selected{background:var(--color-flight-blue)!important;color:var(--color-white)!important}.modal-content .dropdown-option.selected:hover,.modal-content .dropdown-option.selected.highlighted{background:var(--color-flight-blue-hover, #ff5722)!important;color:var(--color-white)!important}.custom-dropdown.error .dropdown-trigger{border-color:var(--status-error-border);background:var(--status-error-background)}.custom-dropdown.error .dropdown-value{color:var(--status-error-text)}.dropdown-search{padding:.75rem;border-bottom:2px solid var(--border-color-enhanced-subtle);background:var(--surface-color-enhanced-secondary)}.dropdown-search-input{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color-enhanced-subtle);border-radius:var(--border-radius-sm);background:var(--surface-color-enhanced-elevated);color:var(--text-color-high-contrast);font-size:var(--text-body-sm);outline:none;transition:all .2s ease}.dropdown-search-input:focus{border-color:var(--color-flight-blue);box-shadow:0 0 0 2px var(--color-flight-blue-subtle)}.dropdown-search-input::-moz-placeholder{color:var(--text-color-enhanced-tertiary);font-style:italic}.dropdown-search-input::placeholder{color:var(--text-color-enhanced-tertiary);font-style:italic}@media (max-width: 768px){.dropdown-options{max-height:150px}.dropdown-option{padding:.875rem;font-size:var(--text-body-sm)}.dropdown-search{padding:.5rem}.dropdown-search-input{padding:.625rem;font-size:var(--text-body-xs)}}@media (prefers-contrast: high){.custom-dropdown{border-width:2px}.dropdown-option{border-bottom-width:2px}.dropdown-option.selected{font-weight:700}.dropdown-search-input{border-width:2px}}.custom-dropdown:focus-visible{outline:3px solid var(--color-flight-blue);outline-offset:2px}.custom-dropdown.disabled{opacity:.6;cursor:not-allowed;pointer-events:none;filter:grayscale(.3)}.custom-dropdown.disabled .dropdown-value{color:var(--text-color-enhanced-tertiary)}.custom-dropdown.disabled .dropdown-arrow{opacity:.5}.modal-content .custom-dropdown-container,.nice-modal-content .custom-dropdown-container{position:relative!important;z-index:calc(var(--z-modal) + 10)!important;isolation:isolate!important}.modal-content .custom-dropdown-container *,.nice-modal-content .custom-dropdown-container *{pointer-events:auto!important}.modal-content .dropdown-trigger{position:relative!important;z-index:calc(var(--z-modal) + 11)!important;pointer-events:auto!important;isolation:isolate!important;transform:translateZ(0);will-change:transform}.modal-content,.nice-modal-content{isolation:isolate!important;position:relative!important;z-index:var(--z-modal)!important;transform:translateZ(0)}.sidebar-section,.sidebar-toggle,.sidebar-toggle-enhanced,.sidebar-nav,.sidebar-nav-item{z-index:1!important;pointer-events:none!important}body:not(.modal-open) .sidebar-section,body:not(.modal-open) .sidebar-toggle,body:not(.modal-open) .sidebar-toggle-enhanced,body:not(.modal-open) .sidebar-nav,body:not(.modal-open) .sidebar-nav-item{pointer-events:auto!important}.modal-overlay{z-index:var(--z-modal-backdrop)!important;isolation:isolate!important}.modal-content .custom-dropdown,.nice-modal-content .custom-dropdown{transform:translateZ(0);will-change:transform;position:relative!important;z-index:calc(var(--z-modal) + 10)!important}.modal-content .dropdown-options,.nice-modal-content .dropdown-options{z-index:calc(var(--z-modal) + 35)!important;position:fixed!important;isolation:isolate!important;transform:translateZ(0);visibility:visible!important;opacity:1!important;display:block!important}.modal-content .custom-dropdown-options-emergency,.nice-modal-content .custom-dropdown-options-emergency{z-index:99999999!important;position:fixed!important;visibility:visible!important;opacity:1!important;display:block!important;pointer-events:auto!important;transform:none!important;animation:none!important;transition:none!important;margin:0!important;padding:.75rem 0!important;border:1px solid var(--border-color-enhanced-subtle)!important;border-radius:var(--border-radius-base)!important;background:var(--surface-color-enhanced-elevated)!important;box-shadow:0 20px 40px -10px #0006!important;max-height:240px!important;overflow-y:auto!important;will-change:auto!important;backface-visibility:hidden!important;contain:layout style!important;isolation:isolate!important}.modal-content .custom-dropdown-container:has(.custom-dropdown-options-emergency),.nice-modal-content .custom-dropdown-container:has(.custom-dropdown-options-emergency){z-index:99999998!important;isolation:isolate!important}.modal-content .custom-dropdown.open:has(.custom-dropdown-options-emergency),.nice-modal-content .custom-dropdown.open:has(.custom-dropdown-options-emergency){z-index:99999997!important;isolation:isolate!important}@media (prefers-reduced-motion: reduce){.custom-dropdown,.dropdown-arrow,.dropdown-option,.dropdown-search-input{transition:none}.dropdown-options,.dropdown-option{animation:none}.dropdown-value.placeholder{animation:none;opacity:.7}.dropdown-spinner{animation:none}@keyframes dropdown-slide-down{to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}}.enhanced-dropdown-container{display:flex;flex-direction:column;gap:.5rem;width:100%}.enhanced-dropdown{width:100%;background:var(--surface-color-enhanced-elevated);border:2px solid var(--color-border-interactive);border-radius:var(--border-radius-base);font-size:var(--text-body-base);transition:all .25s cubic-bezier(.4,0,.2,1);outline:none;isolation:isolate;box-shadow:0 3px 6px #0000001f,0 1px 3px #00000014,inset 0 1px #ffffff14,0 0 0 1px #ff6b3514;background:linear-gradient(135deg,var(--surface-color-enhanced-elevated) 0%,rgba(255,255,255,.04) 30%,rgba(255,107,53,.02) 100%);position:relative}.enhanced-dropdown:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.03) 0%,transparent 50%,rgba(0,0,0,.02) 100%);pointer-events:none}.enhanced-dropdown:focus-within{border-color:var(--color-flight-blue);box-shadow:0 0 0 3px var(--color-flight-blue-subtle),0 4px 12px #ff6b3526,0 2px 4px #0000001a;transform:translateY(-1px)}.enhanced-dropdown.error{border-color:var(--status-error-border);background:var(--status-error-background)}.enhanced-dropdown.disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.dropdown-trigger{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;min-height:2.75rem;box-sizing:border-box;border-radius:inherit;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;width:100%;border:none;background:transparent;color:inherit;font-family:inherit;font-size:inherit}.dropdown-trigger:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ff6b350d,#ff6b3505);opacity:0;transition:opacity .25s ease}.dropdown-trigger:hover:before{opacity:1}.enhanced-dropdown:hover{border-color:#ff6b35b3;box-shadow:0 6px 16px #0000002e,0 3px 8px #0000001a,0 0 0 2px #ff6b3540,inset 0 1px #ffffff1f;transform:translateY(-2px)}.enhanced-dropdown.open{border-color:var(--color-flight-blue);box-shadow:0 0 0 3px var(--color-flight-blue-subtle),0 12px 32px #0000004d,0 6px 16px #0000002e,inset 0 1px #ffffff26;transform:translateY(-1px)}.dropdown-value{flex:1;color:var(--text-color-high-contrast);font-weight:600;text-align:left;font-size:var(--text-body-base);line-height:1.4;transition:all .2s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.dropdown-value.placeholder{color:var(--text-color-enhanced-tertiary);font-weight:400;font-style:italic;opacity:.8;animation:placeholder-pulse 2s ease-in-out infinite}@keyframes placeholder-pulse{0%,to{opacity:.8}50%{opacity:.6}}.dropdown-arrow{color:var(--text-color-enhanced-secondary);transition:all .3s cubic-bezier(.68,-.55,.265,1.55);flex-shrink:0;margin-left:.75rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.enhanced-dropdown:hover .dropdown-arrow{color:var(--color-flight-blue);transform:scale(1.1)}.enhanced-dropdown:focus-within .dropdown-arrow{color:var(--color-flight-blue)}.dropdown-arrow.rotated{transform:rotate(180deg) scale(1.15);color:var(--color-flight-blue)}.dropdown-options{position:absolute;top:100%;left:0;right:0;z-index:var(--z-popover);background:var(--surface-color-enhanced-elevated);border:2px solid var(--color-border-interactive);border-radius:var(--border-radius-base);box-shadow:0 20px 40px -10px #00000080,0 10px 20px -5px #0000004d,0 0 0 1px #ff6b3533,inset 0 1px #ffffff1a;max-height:240px;overflow-y:auto;margin-top:.5rem;animation:dropdown-slide-down .3s cubic-bezier(.34,1.56,.64,1) forwards;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);list-style:none;padding:.25rem 0;border-top:4px solid var(--color-flight-blue);background:linear-gradient(135deg,var(--surface-color-enhanced-elevated) 0%,rgba(255,255,255,.08) 30%,rgba(255,107,53,.03) 70%,var(--surface-color-enhanced-elevated) 100%);outline:2px solid rgba(255,107,53,.2);outline-offset:-2px}.dropdown-options.modal-context{z-index:calc(var(--z-modal) + 50)}.dropdown-option{padding:.875rem 1rem;cursor:pointer;background:var(--surface-color-enhanced-elevated);color:var(--text-color-high-contrast);border-bottom:1px solid var(--border-color-enhanced-subtle);transition:all .2s cubic-bezier(.4,0,.2,1);font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;display:flex;align-items:center;font-size:var(--text-body-base);line-height:1.5;opacity:0;transform:translate(-8px);animation:option-slide-in .2s ease forwards}@keyframes option-slide-in{to{opacity:1;transform:translate(0)}}.dropdown-option:nth-child(1){animation-delay:.05s}.dropdown-option:nth-child(2){animation-delay:.1s}.dropdown-option:nth-child(3){animation-delay:.15s}.dropdown-option:nth-child(4){animation-delay:.2s}.dropdown-option:nth-child(5){animation-delay:.25s}.dropdown-option:nth-child(n+6){animation-delay:.3s}.dropdown-option:hover,.dropdown-option.highlighted{background:linear-gradient(135deg,var(--surface-color-enhanced-secondary) 0%,rgba(255,107,53,.08) 100%);color:var(--text-color-high-contrast);transform:translate(4px);border-left:3px solid var(--color-flight-blue);padding-left:calc(1rem - 3px);box-shadow:inset 0 1px #ffffff1a,0 2px 8px #ff6b3526}.dropdown-option.selected{background:linear-gradient(135deg,var(--color-flight-blue) 0%,#ff5722 100%);color:var(--color-white);font-weight:600;border-left:4px solid var(--color-white);padding-left:calc(1rem - 4px);box-shadow:inset 0 1px #fff3,0 4px 12px #ff6b354d,0 2px 4px #0000001a;position:relative}.dropdown-option.selected:after{content:"✓";position:absolute;right:1rem;font-weight:700;font-size:1.1em;opacity:.9}.dropdown-option.selected:hover,.dropdown-option.selected.highlighted{background:linear-gradient(135deg,#ff5722 0%,var(--color-flight-blue) 100%);color:var(--color-white);transform:translate(6px);box-shadow:inset 0 1px #ffffff40,0 6px 16px #ff6b3566,0 3px 6px #00000026}@keyframes dropdown-slide-down{0%{opacity:0;transform:translateY(-12px) scale(.9);filter:blur(4px)}60%{opacity:.8;transform:translateY(2px) scale(1.02);filter:blur(1px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.dropdown-options::-webkit-scrollbar{width:6px}.dropdown-options::-webkit-scrollbar-track{background:var(--surface-color-enhanced-elevated);border-radius:3px}.dropdown-options::-webkit-scrollbar-thumb{background:var(--border-color-enhanced-subtle);border-radius:3px}.dropdown-options::-webkit-scrollbar-thumb:hover{background:var(--text-color-enhanced-secondary)}.enhanced-dropdown.error .dropdown-trigger{border-color:var(--status-error-border);background:var(--status-error-background)}.enhanced-dropdown.error .dropdown-value{color:var(--status-error-text)}.dropdown-no-options{padding:1.5rem;text-align:center;color:var(--text-color-enhanced-tertiary);font-style:italic;background:var(--surface-color-enhanced-elevated)}.dropdown-spinner{color:var(--color-flight-blue);animation:spin 1s linear infinite}@media (max-width: 768px){.dropdown-options{max-height:150px}.dropdown-option{padding:.875rem;font-size:var(--text-body-sm)}}@media (prefers-contrast: high){.enhanced-dropdown{border-width:2px}.dropdown-option{border-bottom-width:2px}.dropdown-option.selected{font-weight:700}}.enhanced-dropdown:focus-visible{outline:3px solid var(--color-flight-blue);outline-offset:2px}.dropdown-option:focus-visible{outline:2px solid var(--color-flight-blue);outline-offset:-2px}.enhanced-dropdown.disabled{opacity:.6;cursor:not-allowed;pointer-events:none;filter:grayscale(.3)}.enhanced-dropdown.disabled .dropdown-value{color:var(--text-color-enhanced-tertiary)}.enhanced-dropdown.disabled .dropdown-arrow{opacity:.5}.nice-modal-content .enhanced-dropdown-container{position:relative}.nice-modal-content .enhanced-dropdown.open{position:relative;z-index:calc(var(--z-modal) + 30)}.nice-modal-content .enhanced-dropdown.open .dropdown-options{z-index:calc(var(--z-modal) + 50)}.nice-modal-content .form-group:not(:has(.enhanced-dropdown)),.nice-modal-content .settings-row:not(:has(.enhanced-dropdown)),.nice-modal-content .modal-actions{position:relative;z-index:1}.nice-modal-content .form-group>*:not(.enhanced-dropdown-container),.nice-modal-content .settings-row>*:not(.enhanced-dropdown-container){position:relative;z-index:auto}@media (prefers-reduced-motion: reduce){.enhanced-dropdown,.dropdown-arrow,.dropdown-option{transition:none}.dropdown-options,.dropdown-option{animation:none}.dropdown-value.placeholder{animation:none;opacity:.7}.dropdown-spinner{animation:none}@keyframes dropdown-slide-down{to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}}.nice-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);padding:1rem}.nice-modal-content{max-width:1000px;width:100%;max-height:95vh;overflow-y:auto;position:relative;z-index:var(--z-modal);margin:auto}.nice-modal-content .standard-card{margin:0;padding:2rem;background:var(--card-background);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:0 10px 25px #0000004d}.nice-modal-content .standard-card .card-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.nice-modal-content .standard-card .card-content{padding:0}.nice-modal-content .form-group{margin-bottom:1.5rem}.nice-modal-content .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.nice-modal-content .form-group input,.nice-modal-content .form-group select,.nice-modal-content .form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--input-background);color:var(--text-primary);font-size:.9rem}.nice-modal-content .form-group textarea{min-height:100px;resize:vertical}.nice-modal-content .button-group{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-color)}.nice-modal-content .btn{padding:.75rem 1.5rem;border-radius:var(--border-radius);font-weight:500;font-size:.9rem;cursor:pointer;transition:all .2s ease;border:none}.nice-modal-content .btn-primary{background:var(--accent-color);color:var(--accent-text)}.nice-modal-content .btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.nice-modal-content .btn-secondary{background:var(--button-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.nice-modal-content .btn-secondary:hover{background:var(--button-secondary-hover);border-color:var(--accent-color)}.nice-modal-content .loading{text-align:center;padding:2rem;color:var(--text-secondary)}.nice-modal-content .error{color:var(--error-color);background:#ef44441a;border:1px solid var(--error-color);border-radius:var(--border-radius);padding:.75rem;margin-bottom:1rem}.nice-modal-content .settings-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start;width:100%;margin-bottom:1.5rem}.nice-modal-content .settings-row .form-group{flex:1;margin-bottom:0}.nice-modal-content .form-group label,.nice-modal-content .label-base{display:block;margin-bottom:.5rem;font-weight:600;font-size:var(--text-body-base);line-height:1.4;color:var(--text-color-high-contrast)}.nice-modal-content .form-input-enhanced,.nice-modal-content .enhanced-dropdown,.nice-modal-content .enhanced-input,.nice-modal-content .form-textarea-enhanced{border:2px solid var(--color-border-interactive)!important;border-radius:var(--border-radius-base);background:var(--surface-color-enhanced-elevated);transition:all .25s ease;font-size:var(--text-body-base);color:var(--text-color-high-contrast)}.nice-modal-content .enhanced-dropdown,.nice-modal-content input[type=text],.nice-modal-content input[type=email],.nice-modal-content input[type=password],.nice-modal-content input[type=number],.nice-modal-content textarea,.nice-modal-content select{border:2px solid var(--color-border-interactive)!important}.nice-modal-content input,.nice-modal-content .enhanced-dropdown,.nice-modal-content .form-input-enhanced{background-image:none!important}html body div.nice-modal-content input[type],html body div.nice-modal-content .enhanced-dropdown{border:2px solid var(--color-border-interactive)!important;outline:none!important}.nice-modal-content .form-input-enhanced:focus,.nice-modal-content .enhanced-dropdown:focus,.nice-modal-content .enhanced-input:focus,.nice-modal-content .form-textarea-enhanced:focus{border-color:var(--color-flight-blue);box-shadow:0 0 0 3px var(--color-flight-blue-subtle);outline:none}.nice-modal-content .field-help{margin-top:.375rem;font-size:var(--text-body-xs);color:var(--text-color-enhanced-tertiary);line-height:1.3;font-style:italic}.nice-modal-content .field-error{display:block;margin-top:.25rem;font-size:var(--text-body-xs);color:var(--status-error-text);font-weight:500}.nice-modal-content .form-group{margin-bottom:1.5rem;padding:0}.nice-modal-content .setting-option{padding:1rem;border:2px solid var(--color-border-interactive)!important;border-radius:var(--border-radius-base);background:var(--surface-color-enhanced-elevated);transition:all .25s ease}.nice-modal-content .setting-option:hover{border-color:var(--color-flight-blue);background:var(--surface-color-enhanced-secondary)}.nice-modal-content .checkbox-label{font-size:var(--text-body-base);font-weight:500;color:var(--text-color-high-contrast)}@media (max-width: 768px){.nice-modal-overlay{padding:2rem .5rem .5rem;align-items:flex-start}.nice-modal-content{max-width:100%;max-height:90vh}.nice-modal-content .standard-card{padding:1.5rem}.nice-modal-content .button-group{flex-direction:column;gap:.5rem}.nice-modal-content .btn{width:100%}.nice-modal-content .settings-row{grid-template-columns:1fr;gap:1rem}.nice-modal-content .settings-row .form-group{margin-bottom:1rem}.nice-modal-content .field-help{font-size:var(--text-body-xs);line-height:1.2}}.settings-layout{display:flex;gap:2rem;min-height:600px}.settings-sidebar{width:280px;flex-shrink:0}.settings-content{flex:1}.settings-nav-item{display:flex;align-items:center;width:100%;padding:.875rem 1rem;border:1px solid transparent;border-radius:var(--border-radius-base);background:transparent;color:var(--text-color-enhanced-secondary);font-size:var(--text-body-sm);font-weight:500;text-align:left;transition:all .2s ease;cursor:pointer;animation:fade-in-up .4s ease forwards;opacity:0;transform:translateY(10px)}.settings-nav-item:hover{background:var(--surface-color-enhanced-elevated);border-color:var(--border-color-enhanced-subtle);color:var(--text-color-high-contrast)}.settings-nav-item.active{background:var(--surface-color-enhanced-secondary);border-color:var(--color-flight-blue);color:var(--text-color-high-contrast)}.nav-icon{margin-right:.75rem;font-size:1.125rem;flex-shrink:0}.nav-label{font-weight:500}.rules-table-container{background:var(--surface-color-enhanced-elevated);border:1px solid var(--border-color-enhanced-subtle);border-radius:var(--border-radius-base);overflow:hidden}.rules-header{display:grid;grid-template-columns:2fr 1fr 1fr 100px 120px 120px;gap:1rem;padding:1rem;background:var(--surface-color-enhanced-secondary);border-bottom:1px solid var(--border-color-enhanced-subtle);font-weight:600;font-size:var(--text-body-xs);color:var(--text-color-enhanced-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.rule-row{display:grid;grid-template-columns:2fr 1fr 1fr 100px 120px 120px;gap:1rem;padding:1rem;border-bottom:1px solid var(--border-color-enhanced-subtle);transition:all .2s ease;animation:fade-in-up .4s ease forwards;opacity:0;transform:translateY(10px)}.rule-row:hover{background:var(--surface-color-enhanced-secondary)}.rule-row:last-child{border-bottom:none}.rule-name{display:flex;flex-direction:column;gap:.25rem}.rule-name-text{font-weight:600;color:var(--text-color-high-contrast)}.rule-description{font-size:var(--text-body-xs);color:var(--text-color-enhanced-secondary);line-height:1.4}.abbreviation-badge{display:inline-flex;align-items:center;padding:.25rem .5rem;background:var(--color-flight-blue);color:var(--color-white);border-radius:var(--border-radius-sm);font-size:var(--text-body-xs);font-weight:600;font-family:var(--font-mono)}.availability-badge{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:var(--border-radius-sm);font-size:var(--text-body-xs);font-weight:600;text-transform:capitalize}.availability-badge.available{background:var(--status-success-background);color:var(--status-success-text)}.availability-badge.ground_sims_only{background:var(--color-checkride-amber);color:var(--color-surface-primary)}.availability-badge.not_available{background:var(--status-error-background);color:var(--status-error-text)}.priority-value{font-weight:600;color:var(--text-color-high-contrast)}.status-indicator{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--text-body-xs);font-weight:500}.status-indicator.active{color:var(--status-success-text)}.status-indicator.inactive{color:var(--text-color-enhanced-secondary)}.rule-actions{display:flex;gap:.5rem;justify-content:center}.action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:var(--border-radius-sm);background:transparent;color:var(--text-color-enhanced-secondary);cursor:pointer;transition:all .2s ease;font-size:.875rem}.action-btn:hover{background:var(--surface-color-enhanced-secondary);color:var(--text-color-high-contrast)}.action-btn.delete:hover{background:var(--status-error-background);color:var(--status-error-text)}.test-results{background:var(--surface-color-enhanced-elevated);border:1px solid var(--border-color-enhanced-subtle);border-radius:var(--border-radius-base);padding:1rem}.test-result{display:flex;align-items:center;gap:.5rem;padding:.5rem 0}.result-indicator{font-size:1rem}.result-indicator.success{color:var(--status-success-text)}.result-indicator.error{color:var(--status-error-text)}.result-text{font-weight:500;color:var(--text-color-high-contrast)}.error-message{margin-top:.5rem;padding:.5rem;background:var(--status-error-background);border:1px solid var(--status-error-border);border-radius:var(--border-radius-sm);font-size:var(--text-body-xs);color:var(--status-error-text)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-top:1rem}.stat-item{display:flex;flex-direction:column;align-items:center;padding:1rem;background:var(--surface-color-enhanced-elevated);border:1px solid var(--border-color-enhanced-subtle);border-radius:var(--border-radius-base);text-align:center;transition:all .2s ease}.stat-item:hover{background:var(--surface-color-enhanced-secondary);border-color:var(--color-flight-blue)}.stat-value{font-size:2rem;font-weight:700;color:var(--color-flight-blue);line-height:1;margin-bottom:.25rem}.stat-label{font-size:var(--text-body-xs);color:var(--text-color-enhanced-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.loading-state,.no-rules{display:flex;justify-content:center;align-items:center;padding:3rem;color:var(--text-color-enhanced-secondary);font-style:italic}.settings-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:end;width:100%;margin-bottom:1.5rem}.settings-row .form-group{flex:1;margin-bottom:0}.alert-info{display:flex;gap:.75rem;padding:1rem;background:var(--status-info-background);border:1px solid var(--status-info-border);border-radius:var(--border-radius-base);margin-bottom:1rem}.working-days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem}.day-checkbox{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;border:1px solid var(--border-color-enhanced-subtle);border-radius:var(--border-radius-sm);cursor:pointer;transition:all .2s ease}.day-checkbox:hover{background:var(--surface-color-enhanced-elevated)}.day-checkbox input:checked+.day-label{color:var(--color-flight-blue);font-weight:600}.day-label{font-size:var(--text-body-xs);color:var(--text-color-enhanced-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}@media (max-width: 768px){.settings-layout{flex-direction:column;gap:1rem}.settings-sidebar{width:100%}.rules-header,.rule-row{grid-template-columns:1fr;gap:.5rem}.rules-header{display:none}.rule-row{display:flex;flex-direction:column;gap:.5rem;padding:1rem}.settings-row{flex-direction:column;align-items:stretch}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}}@keyframes fade-in-up{to{opacity:1;transform:translateY(0)}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{max-width:1000px;width:100%;max-height:95vh;overflow-y:auto;background:var(--surface-color-enhanced-elevated);border-radius:var(--border-radius-base);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.new-rule-form,.edit-rule-form{padding:1.5rem}.form-section{background:var(--surface-color-enhanced-elevated);border:1px solid var(--border-color-enhanced-subtle);border-radius:var(--border-radius-base);padding:1.5rem;margin-bottom:1.5rem}.form-section-header{font-weight:600;color:var(--text-color-high-contrast);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color-enhanced-subtle);font-size:var(--text-body-base)}.modal-content .new-rule-form .form-group{margin-bottom:1.25rem}.modal-content .new-rule-form .settings-row .form-group{margin-bottom:0}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color-enhanced-subtle)}.field-error{display:block;margin-top:.5rem;font-size:var(--text-body-xs);color:var(--status-error-text);font-weight:500}.field-help{margin-top:.5rem;font-size:var(--text-body-xs);color:var(--text-color-enhanced-tertiary);line-height:1.4}.form-input-enhanced.error,.form-textarea-enhanced.error{border-color:var(--status-error-border);background:var(--status-error-background)}.form-textarea-enhanced{width:100%;padding:.75rem;border:1px solid var(--border-color-enhanced-subtle);border-radius:var(--border-radius-base);background:var(--surface-color-enhanced-elevated);color:var(--text-color-high-contrast);font-size:var(--text-body-base);font-family:inherit;resize:vertical;min-height:80px;transition:all .2s ease}.form-textarea-enhanced:focus{outline:none;border-color:var(--color-flight-blue);box-shadow:0 0 0 2px var(--color-flight-blue-subtle)}.form-textarea-enhanced::-moz-placeholder{color:var(--text-color-enhanced-tertiary)}.form-textarea-enhanced::placeholder{color:var(--text-color-enhanced-tertiary)}.modal-content .form-input-enhanced,.modal-content select.form-input-enhanced{background:var(--surface-color-enhanced-elevated);color:var(--text-color-high-contrast);border:1px solid var(--border-color-enhanced-subtle);border-radius:var(--border-radius-base);padding:.75rem;font-size:var(--text-body-base);transition:all .2s ease}.modal-content .form-input-enhanced:focus,.modal-content select.form-input-enhanced:focus{outline:none;border-color:var(--color-flight-blue);box-shadow:0 0 0 2px var(--color-flight-blue-subtle)}.modal-content .label-base{color:var(--text-color-enhanced-secondary)!important;font-weight:500;margin-bottom:.75rem;display:block}.modal-content .form-group{margin-bottom:1.5rem}.modal-content .form-group label{color:var(--text-color-enhanced-secondary)!important}.modal-content .setting-option{background:var(--surface-color-enhanced-elevated)!important;border:1px solid var(--border-color-enhanced-subtle)!important;color:var(--text-color-high-contrast)!important}.modal-content .setting-option:hover{background:var(--surface-color-enhanced-secondary)!important}.modal-content .checkbox-label{color:var(--text-color-high-contrast)!important}.notification-options.disabled{opacity:.5;pointer-events:none}.setting-option{transition:all .2s ease}.setting-option:hover{background:var(--surface-color-enhanced-secondary)}.checkbox-base{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;padding:.5rem;border-radius:var(--border-radius-base);transition:background-color .2s ease}.checkbox-base:hover{background:var(--surface-color-enhanced-elevated)}.checkbox-input{margin:0;width:1rem;height:1rem;accent-color:var(--color-flight-blue);cursor:pointer}.checkbox-label{font-weight:500;cursor:pointer}.checkbox-help{font-size:var(--text-body-xs);line-height:1.4;margin-top:.5rem}.alert-warning{display:flex;gap:.75rem;padding:1rem;background:var(--status-warning-background);border:1px solid var(--status-warning-border);border-radius:var(--border-radius-base);margin-bottom:1rem}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.modal-overlay{padding:.25rem;align-items:flex-start}.modal-content{max-height:98vh;margin:.25rem auto;width:99%}.new-rule-form,.edit-rule-form{padding:1.5rem}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%;justify-content:center}.settings-row{grid-template-columns:1fr;gap:1rem}}.ingestion-wizard{min-height:100vh;background:var(--color-bg-primary);display:flex;flex-direction:column}.page-header{position:sticky;top:0;z-index:100;background:#141520f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border-primary);padding:var(--space-md) var(--space-lg)}.page-header-content{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg)}.page-icon{font-size:2.5rem;line-height:1}.page-title{font-size:var(--text-heading-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.page-subtitle{font-size:var(--text-body-sm);color:var(--color-text-tertiary);margin:0}.stepper{margin-top:var(--space-md)}.stepper-list{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:var(--space-sm)}.stepper-item{display:flex;align-items:center;flex:1}.stepper-button{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:transparent;border:2px solid var(--color-border-secondary);border-radius:var(--radius-md);color:var(--color-text-tertiary);cursor:pointer;transition:all .15s ease;font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);flex:1}.stepper-button:hover:not(:disabled){border-color:var(--color-border-focus);color:var(--color-text-secondary)}.stepper-button--active{border-color:var(--color-accent-primary);color:var(--color-accent-primary);box-shadow:0 0 20px #ff6b354d}.stepper-button--complete{border-color:var(--color-status-success);color:var(--color-status-success)}.stepper-button:disabled{opacity:.5;cursor:not-allowed}.stepper-icon{font-size:1.25rem}.stepper-label{white-space:nowrap}.stepper-connector{flex:1;height:2px;background:var(--color-border-secondary);position:relative;min-width:var(--space-lg)}.wizard-content{flex:1;display:grid;grid-template-columns:1fr 320px;gap:var(--space-lg);padding:var(--space-lg);max-width:1440px;margin:0 auto;width:100%}.wizard-main{min-width:0}.upload-step-card{background:#141823cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--color-border-primary);border-radius:12px;padding:var(--space-lg);transition:all .15s ease}.upload-step-card.active{border-color:var(--color-accent-primary);box-shadow:0 0 20px #ff6b354d}.upload-step-card.error{border-color:var(--color-status-error);box-shadow:0 0 20px #ef444433}.upload-step-card.ready{animation:pulse-success 1s}.step-header{display:flex;align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-lg)}.step-icon,.step-emoji{font-size:2.5rem;line-height:1}.step-title{font-size:var(--text-heading-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-xs) 0}.step-description{font-size:var(--text-body-sm);color:var(--color-text-secondary);margin:0}.dropzone{border:2px dashed var(--color-border-secondary);border-radius:var(--radius-md);padding:var(--space-xl);text-align:center;color:var(--color-text-tertiary);cursor:pointer;transition:all .15s ease;position:relative;overflow:hidden;background:#ffffff03}.dropzone:hover{border-color:var(--color-accent-primary);background:#ff6b350d}.dropzone--drag-over{border-color:var(--color-accent-primary);background:#ff6b351a;box-shadow:inset 0 0 30px #ff6b3533}.dropzone-content{pointer-events:none}.dropzone-icon{width:48px;height:48px;margin:0 auto var(--space-md);opacity:.6;color:var(--color-accent-primary)}.dropzone-text{font-size:var(--text-body-md);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin:0 0 var(--space-xs) 0}.dropzone-hint{font-size:var(--text-body-sm);color:var(--color-text-tertiary);margin:0}.status-indicator{margin-left:auto}.status-indicator-spinner{width:32px;height:32px;border:3px solid var(--color-border-secondary);border-top-color:var(--color-accent-primary);border-radius:50%;animation:radar-spin 1s linear infinite}.status-indicator-icon{width:32px;height:32px}.status-indicator-icon--success{color:var(--color-status-success);animation:pulse-success 1s}.status-indicator-icon--error{color:var(--color-status-error)}.file-table-wrapper{margin-top:var(--space-lg);overflow-x:auto}.file-table{width:100%;border-collapse:collapse}.file-table thead{background:#ff6b351a;border:1px solid var(--color-accent-primary)}.file-table th{padding:var(--space-sm) var(--space-md);text-align:left;font-weight:600;color:var(--color-text-primary);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em}.file-table tbody tr{border-bottom:1px solid var(--color-border-primary);transition:background .15s ease}.file-table tbody tr:hover{background:#ffffff05}.file-table tbody tr:nth-child(2n){background:#ffffff03}.file-table td{padding:var(--space-sm) var(--space-md);font-size:var(--text-body-sm);color:var(--color-text-secondary)}.file-name{display:flex;align-items:center;gap:var(--space-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.file-icon{width:20px;height:20px;color:var(--color-accent-primary);opacity:.8}.file-size{white-space:nowrap}.error-count{display:flex;align-items:center;gap:var(--space-xs);color:var(--color-status-error);font-weight:var(--font-weight-medium)}.error-icon{width:16px;height:16px}.btn-icon{background:transparent;border:none;padding:var(--space-xs);cursor:pointer;color:var(--color-text-tertiary);transition:all .15s ease;border-radius:var(--radius-sm)}.btn-icon:hover{color:var(--color-status-error);background:#ef44441a}.btn-icon svg{width:16px;height:16px}.status-badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:500;text-transform:uppercase;letter-spacing:.02em}.status-badge-icon{width:14px;height:14px}.status-badge--ready{background:#22c55e1a;color:var(--color-status-success);border:1px solid var(--color-status-success)}.status-badge--error{background:#ef44441a;color:var(--color-status-error);border:1px solid var(--color-status-error)}.status-badge--validating{background:#ff6b351a;color:var(--color-accent-primary);border:1px solid var(--color-accent-primary)}.status-badge--pending{background:#94a3b81a;color:var(--color-text-tertiary);border:1px solid var(--color-text-tertiary)}.validation-spinner{display:flex;align-items:center;justify-content:center;gap:var(--space-md);padding:var(--space-lg);color:var(--color-text-secondary)}.radar-spinner{width:32px;height:32px;border:3px solid var(--color-border-secondary);border-top-color:var(--color-accent-primary);border-radius:50%;animation:radar-spin 1s linear infinite}.validation-error{background:#ef44440d;border:1px solid var(--color-status-error);border-radius:var(--radius-md);padding:var(--space-md);margin-top:var(--space-md)}.validation-error-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md)}.validation-error-header h3{font-size:var(--text-body-md);font-weight:var(--font-weight-semibold);color:var(--color-status-error);margin:0}.validation-error-icon{width:20px;height:20px;color:var(--color-status-error)}.validation-error-file{margin-bottom:var(--space-md)}.validation-error-file:last-child{margin-bottom:0}.validation-error-file h4{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin:0 0 var(--space-xs) 0}.validation-error-file ul{list-style:none;margin:0;padding:0}.validation-error-item{font-size:var(--text-body-sm);color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.validation-error-field{font-weight:var(--font-weight-medium);color:var(--color-status-error)}.validation-error-message{margin-left:var(--space-xs)}.sidebar-summary{position:sticky;top:calc(120px + var(--space-lg));height:-moz-fit-content;height:fit-content;background:#141823cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--color-border-primary);border-radius:12px;padding:var(--space-lg)}.summary-title{font-size:var(--text-heading-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-md) 0}.summary-cards{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-lg)}.summary-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:#ffffff05;border:1px solid var(--color-border-secondary);border-radius:var(--radius-md);transition:all .15s ease}.summary-card:hover{background:#ffffff0a;border-color:var(--color-border-interactive)}.summary-card-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:20px;background:#ffffff0d}.summary-card--success .summary-card-icon{background:#22c55e1a;color:var(--color-status-success)}.summary-card--info .summary-card-icon{background:#3b82f61a;color:var(--color-status-info)}.summary-card--error .summary-card-icon{background:#ef44441a;color:var(--color-status-error)}.summary-card-content{flex:1}.summary-card-value{font-size:var(--text-heading-sm);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1.2}.summary-card-label{font-size:var(--text-body-sm);color:var(--color-text-tertiary)}.summary-progress{margin-bottom:var(--space-lg)}.progress-label{display:block;font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.progress-bar{width:100%;height:8px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-xs)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-accent-primary) 0%,var(--color-accent-hover) 100%);transition:width .3s ease;position:relative}.progress-fill:after{content:"";position:absolute;right:0;top:0;bottom:0;width:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shimmer 2s infinite}.progress-text{font-size:var(--text-body-sm);color:var(--color-text-tertiary)}.update-file-section{margin-top:var(--space-lg);padding:var(--space-lg);background:var(--color-bg-subtle);border-radius:var(--radius-lg);text-align:center;border:1px dashed var(--color-border-secondary)}.update-file-button{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);background:var(--color-bg-primary);color:var(--color-accent-primary);border:2px solid var(--color-accent-primary);border-radius:var(--radius-md);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease}.update-file-button:hover{background:var(--color-accent-primary);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #ff6b354d}.update-file-button .button-icon{color:currentColor}.update-hint{display:block;margin-top:var(--space-sm);font-size:var(--text-body-xs);color:var(--color-text-tertiary)}.file-management-panel{background:var(--color-bg-secondary);border-radius:var(--radius-lg);padding:var(--space-lg);border:1px solid var(--color-border-secondary)}.panel-title{font-size:var(--text-body-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-md) 0}.no-files{text-align:center;padding:var(--space-xl) var(--space-lg)}.no-files-text{font-size:var(--text-body-sm);color:var(--color-text-tertiary);margin:0 0 var(--space-md) 0}.upload-button{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);background:var(--color-accent-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease}.upload-button:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #ff6b354d}.file-list{display:flex;flex-direction:column;gap:var(--space-sm)}.file-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md);background:var(--color-bg-primary);border-radius:var(--radius-md);border:1px solid var(--color-border-primary);transition:border-color .2s ease}.file-item:hover{border-color:var(--color-border-hover)}.file-item.error{border-color:var(--color-status-error);background:#ef44440d}.file-info{display:flex;align-items:center;gap:var(--space-md)}.file-status-icon{font-size:20px}.file-details{display:flex;flex-direction:column;gap:var(--space-xs)}.file-name{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.file-size{font-size:var(--text-body-xs);color:var(--color-text-tertiary)}.file-actions{display:flex;gap:var(--space-sm)}.action-button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--color-border-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;color:var(--color-text-tertiary)}.action-button:hover{border-color:var(--color-border-hover);color:var(--color-text-primary)}.action-button.update:hover{border-color:var(--color-accent-primary);color:var(--color-accent-primary);background:#ff6b351a}.action-button.remove:hover{border-color:var(--color-status-error);color:var(--color-status-error);background:#ef44441a}.review-panels{display:grid;grid-template-columns:1fr;gap:var(--space-lg);margin-bottom:var(--space-xl)}.summary-tips{padding-top:var(--space-md);border-top:1px solid var(--color-border-secondary)}.tips-title{font-size:var(--text-body-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);margin:0 0 var(--space-sm) 0}.tips-list{list-style:none;margin:0;padding:0}.tips-list li{font-size:var(--text-body-xs);color:var(--color-text-tertiary);padding-left:var(--space-md);position:relative;margin-bottom:var(--space-xs)}.tips-list li:before{content:"•";position:absolute;left:0;color:var(--color-accent-primary)}.wizard-navigation{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding:var(--space-lg);background:#141520f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--color-border-primary)}.wizard-navigation-progress{font-size:var(--text-body-sm);color:var(--color-text-tertiary);font-weight:var(--font-weight-medium)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:2px solid transparent;cursor:pointer;transition:all .15s ease;text-decoration:none;min-width:120px}.btn-primary{background:var(--color-accent-primary);color:#fff;border-color:var(--color-accent-primary)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover);box-shadow:0 0 20px #ff6b354d}.btn-secondary{background:transparent;color:var(--color-text-primary);border-color:var(--color-border-interactive)}.btn-secondary:hover:not(:disabled){background:#ffffff0d;border-color:var(--color-text-secondary)}.btn:disabled,.btn-disabled{opacity:.5;cursor:not-allowed}.btn-icon{width:16px;height:16px}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:radar-spin .6s linear infinite}.review-step{background:#141823cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--color-border-primary);border-radius:12px;padding:var(--space-lg)}.review-title{font-size:var(--text-heading-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-lg) 0}.review-summary{display:grid;gap:var(--space-lg)}.review-section h3{font-size:var(--text-body-lg);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin:0 0 var(--space-md) 0}.review-list{list-style:none;margin:0;padding:0}.review-item{font-size:var(--text-body-sm);color:var(--color-text-secondary);padding:var(--space-xs) 0;padding-left:var(--space-lg);position:relative}.review-item:before{content:"✓";position:absolute;left:0;font-weight:700}.review-item--ready{color:var(--color-status-success)}.review-item--ready:before{color:var(--color-status-success)}.review-item--error{color:var(--color-status-error)}.review-item--error:before{content:"✗";color:var(--color-status-error)}.review-empty{text-align:center;padding:var(--space-xl);color:var(--color-text-tertiary)}@keyframes radar-spin{to{transform:rotate(360deg)}}@keyframes pulse-success{0%{box-shadow:0 0 #22c55eb3}70%{box-shadow:0 0 0 10px #22c55e00}to{box-shadow:0 0 #22c55e00}}@media (max-width: 1024px){.wizard-content{grid-template-columns:1fr}.sidebar-summary{position:relative;top:0;margin-top:var(--space-lg)}}@media (max-width: 640px){.page-header{padding:var(--space-sm) var(--space-md)}.page-header-content{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.stepper-list{flex-direction:column;align-items:stretch;gap:var(--space-xs)}.stepper-item{width:100%}.stepper-button{width:100%;justify-content:flex-start}.stepper-connector{display:none}.wizard-content,.upload-step-card{padding:var(--space-md)}.dropzone{padding:var(--space-lg)}.file-table{font-size:var(--text-sm)}.file-table th,.file-table td{padding:var(--space-xs) var(--space-sm)}.wizard-navigation{flex-wrap:wrap;padding:var(--space-md)}.wizard-navigation-progress{order:-1;width:100%;text-align:center;margin-bottom:var(--space-sm)}.btn{flex:1;min-width:0}}@media print{.page-header,.wizard-navigation,.sidebar-summary,.dropzone,.file-actions,.btn-icon,.validation-spinner{display:none!important}.wizard-content{display:block}.upload-step-card{border:1px solid #000;box-shadow:none;page-break-inside:avoid;margin-bottom:20px;background:#fff;color:#000}.file-table{border:1px solid #000}.file-table th,.file-table td{border:1px solid #000;padding:8px;color:#000}.file-table thead{background:#f0f0f0}.validation-error{border:1px solid #000;background:#fff;color:#000}.review-step{background:#fff;color:#000;border:1px solid #000}}.dropzone:focus-visible,.stepper-button:focus-visible,.btn:focus-visible,.btn-icon:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.animate-spin{animation:radar-spin 1s linear infinite}.phase-tabs-container{background:var(--surface-elevated, #1a1b23);border-bottom:1px solid var(--border-primary, #2a2b35);padding:0 1rem}.phase-tabs{display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--neon-orange, #ff6b35) transparent;padding-bottom:2px}.phase-tabs::-webkit-scrollbar{height:4px}.phase-tabs::-webkit-scrollbar-track{background:transparent}.phase-tabs::-webkit-scrollbar-thumb{background:var(--neon-orange, #ff6b35);border-radius:2px}.phase-tab{padding:.875rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-secondary, #9ca3af);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;min-width:-moz-max-content;min-width:max-content;border-radius:0}.phase-tab:hover{color:var(--text-primary, #ffffff);background:rgba(var(--neon-orange-rgb, 255, 107, 53),.1)}.phase-tab.active{color:var(--neon-orange, #ff6b35);border-bottom-color:var(--neon-orange, #ff6b35);background:rgba(var(--neon-orange-rgb, 255, 107, 53),.05)}.phase-tab:focus{outline:2px solid var(--neon-orange, #ff6b35);outline-offset:2px}.phase-container{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md, 1rem);padding:var(--space-md, 1rem);min-height:60vh}.phase-section{background:var(--color-bg-secondary, var(--surface-elevated, #1a1b23));padding:var(--space-md, 1rem);border-radius:8px;border:1px solid var(--border-primary, #2a2b35);display:flex;flex-direction:column}.section-title{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--text-primary, #ffffff);padding-bottom:.75rem;border-bottom:1px solid var(--border-secondary, #3a3b45)}.section-icon{font-size:1.5rem}.section-text{flex:1}.students-list{display:flex;flex-direction:column;gap:.75rem;flex:1}.student-card{background:var(--surface-base, #0f1015);border:1px solid var(--border-secondary, #3a3b45);border-radius:8px;padding:1rem;transition:all .2s ease}.student-card:hover{border-color:var(--neon-orange-dim, rgba(255, 107, 53, .5));transform:translateY(-1px);box-shadow:0 4px 16px rgba(var(--neon-orange-rgb, 255, 107, 53),.1)}.student-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.student-name{font-size:1.1rem;font-weight:700;color:var(--text-primary, #ffffff);margin:0}.scheduled-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.75rem;color:var(--text-secondary, #9ca3af)}.toggle-input{position:relative;width:36px;height:20px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface-elevated, #1a1b23);border:1px solid var(--border-secondary, #3a3b45);border-radius:10px;cursor:pointer;transition:all .2s ease}.toggle-input:checked{background:var(--neon-orange, #ff6b35);border-color:var(--neon-orange, #ff6b35)}.toggle-input:before{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;background:#fff;border-radius:50%;transition:transform .2s ease}.toggle-input:checked:before{transform:translate(16px)}.toggle-slider{display:none}.toggle-label{font-weight:500}.student-card-content{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem}.event-info{display:flex;flex-direction:column;gap:.5rem;flex:1}.event-item{display:flex;align-items:center;gap:.5rem}.event-label{font-size:.75rem;color:var(--text-secondary, #9ca3af);font-weight:500;min-width:65px}.event-display{display:flex;align-items:center;gap:.25rem}.event-icon{font-size:.9rem}.event-text{font-size:.875rem;font-weight:600;color:var(--text-primary, #ffffff);font-family:var(--font-mono, "Courier New", monospace)}.edit-button{display:flex;align-items:center;gap:.25rem;padding:.375rem .75rem;background:var(--surface-elevated, #1a1b23);border:1px solid var(--border-secondary, #3a3b45);border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:.75rem;font-weight:500;color:var(--text-secondary, #9ca3af)}.edit-button:hover{background:var(--neon-orange, #ff6b35);border-color:var(--neon-orange, #ff6b35);color:var(--text-inverse, #000000);transform:translateY(-1px)}.edit-icon{font-size:.8rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;text-align:center;color:var(--text-secondary, #9ca3af);flex:1}.empty-icon{font-size:2.5rem;opacity:.5;margin-bottom:.75rem}.empty-text{font-size:.875rem;font-weight:500}.tabbed-pipeline-board{min-height:100vh;background:var(--surface-base, #0f1015)}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-secondary, #3a3b45);border-top:3px solid var(--neon-orange, #ff6b35);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.loading-container p,.error-container p{color:var(--text-secondary, #9ca3af);font-size:1rem;margin:0}.error-container h2{color:var(--text-primary, #ffffff);font-size:1.5rem;margin:0 0 .5rem}.retry-btn{margin-top:1rem;padding:.75rem 1.5rem;background:var(--neon-orange, #ff6b35);border:none;border-radius:6px;color:var(--text-inverse, #000000);font-weight:600;cursor:pointer;transition:all .2s ease}.retry-btn:hover{background:var(--neon-orange-bright, #ff7a47);transform:translateY(-1px)}@media print{body *{visibility:hidden}#print-area,#print-area *{visibility:visible}#print-area{position:absolute;left:0;top:0;width:100%}.phase-container{grid-template-columns:1fr;gap:1rem;padding:0}}@media (max-width: 767px){.phase-tabs-container{padding:0 .75rem}.phase-tabs{gap:.25rem}.phase-tab{padding:.75rem 1rem;font-size:.85rem}.phase-container{grid-template-columns:1fr;padding:.75rem;gap:.75rem}.phase-section,.student-card{padding:.75rem}.student-card-content{flex-direction:column;align-items:stretch;gap:.75rem}.edit-button{align-self:flex-start}}@media (max-width: 480px){.student-card-header{flex-direction:column;align-items:flex-start;gap:.5rem}.scheduled-toggle{align-self:flex-end}.event-item{flex-direction:column;align-items:flex-start;gap:.25rem}.event-label{min-width:auto}}.build-badge{position:relative;display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.75rem;font-family:var(--font-mono, "Monaco", "Menlo", monospace);font-weight:500;color:var(--color-text-tertiary);background:var(--color-surface-secondary);border:1px solid var(--color-border-subtle);border-radius:.375rem;transition:all .2s ease;cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none}.build-badge:hover{color:var(--color-text-secondary);background:var(--color-surface-tertiary);border-color:var(--color-border-default)}.build-badge-text{white-space:nowrap}.build-badge-version{color:var(--color-text-secondary);font-weight:600}.build-badge-separator{color:var(--color-text-quaternary);opacity:.6}.build-badge-commit{color:var(--color-accent-orange);font-weight:600;letter-spacing:.025em}.build-badge-time{color:var(--color-text-tertiary)}.build-badge-loading{opacity:.6;animation:build-badge-pulse 1.5s infinite}@keyframes build-badge-pulse{0%,to{opacity:.6}50%{opacity:.8}}.build-badge-error{color:var(--color-warning-text);background:var(--color-warning-bg);border-color:var(--color-warning-border)}.build-badge-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:.5rem;padding:.75rem;min-width:200px;font-size:.75rem;font-family:var(--font-body);line-height:1.4;color:var(--color-text-primary);background:var(--color-surface-modal);border:1px solid var(--color-border-default);border-radius:.5rem;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:var(--z-tooltip);opacity:0;visibility:hidden;transition:all .2s ease;pointer-events:none}.build-badge-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--color-surface-modal)}.build-badge:hover .build-badge-tooltip{opacity:1;visibility:visible}.build-badge-tooltip>div{margin-bottom:.25rem}.build-badge-tooltip>div:last-child{margin-bottom:0}.build-badge-tooltip strong{color:var(--color-text-primary);font-weight:600;margin-right:.5rem}.build-badge.compact{padding:.125rem .375rem;font-size:.6875rem}.build-badge.compact .build-badge-commit{font-weight:700}.schedule-board-header .build-badge{margin-left:auto;opacity:.8}.schedule-board-header .build-badge:hover{opacity:1}@media (prefers-color-scheme: dark){.build-badge{background:#ffffff0d;border-color:#ffffff1a}.build-badge:hover{background:#ffffff14;border-color:#ffffff26}.build-badge-tooltip{background:#14161af2;border-color:#ffffff26}.build-badge-tooltip:after{border-top-color:#14161af2}}@media (prefers-contrast: high){.build-badge{border-width:2px;border-color:var(--color-border-strong)}.build-badge-commit{color:var(--color-accent-orange-strong);font-weight:700}}@media (max-width: 768px){.build-badge{font-size:.6875rem;padding:.1875rem .375rem}.build-badge-tooltip{font-size:.6875rem;min-width:180px;padding:.625rem}}.build-badge:focus-visible{outline:2px solid var(--color-accent-orange);outline-offset:2px}.build-badge[data-fresh=true]{animation:build-badge-fresh .6s ease-out}@keyframes build-badge-fresh{0%{transform:scale(1);box-shadow:0 0 0 0 var(--color-accent-orange)}50%{transform:scale(1.05);box-shadow:0 0 0 4px #ff893d4d}to{transform:scale(1);box-shadow:0 0 #ff893d00}}.schedule-builder-container{padding:2rem;max-width:1200px;margin:0 auto}.schedule-header{margin-bottom:3rem}.schedule-header-content{display:flex;align-items:center;gap:1rem}.schedule-icon{font-size:2.5rem;display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:linear-gradient(135deg,var(--color-accent-primary),var(--color-accent-active));border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.schedule-title-row{display:flex;align-items:center;gap:var(--space-sm)}.schedule-title{font-size:var(--text-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;background:linear-gradient(135deg,var(--color-accent-primary),var(--color-info));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.schedule-version-badge{opacity:.8;transition:opacity .2s ease}.schedule-version-badge:hover{opacity:1}.schedule-subtitle{font-size:var(--text-lg);color:var(--color-text-secondary);margin:0;margin-top:var(--space-sm)}.schedule-actions{display:flex;align-items:center;gap:var(--space-md)}.row-height-compact{--table-row-height: 32px}.row-height-compact .data-table tbody tr{height:var(--table-row-height);min-height:var(--table-row-height)}.row-height-cozy{--table-row-height: 40px}.row-height-cozy .data-table tbody tr{height:var(--table-row-height);min-height:var(--table-row-height)}.row-height-comfortable{--table-row-height: 48px}.row-height-comfortable .data-table tbody tr{height:var(--table-row-height);min-height:var(--table-row-height)}.density-control-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);min-width:50px}.density-toggle-group{display:flex;background:var(--color-surface-elevated);border:1px solid var(--color-border-secondary);border-radius:var(--radius-md);overflow:hidden}.density-toggle-item{padding:var(--space-xs) var(--space-sm);background:transparent;border:none;font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease;border-right:1px solid var(--color-border-secondary)}.density-toggle-item:last-child{border-right:none}.density-toggle-item:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.density-toggle-item.active{background:var(--color-accent-primary);color:var(--color-surface-primary);font-weight:var(--font-weight-medium)}.toast{position:fixed;top:20px;right:20px;padding:var(--space-md);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);z-index:9999;min-width:300px;max-width:500px;animation:slideInRight .3s ease-out}.toast-info{background:var(--color-info);color:#fff}.toast-success{background:var(--color-success);color:#fff}.toast-error{background:var(--color-error);color:#fff}.toast-close{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;opacity:.8;transition:opacity .2s ease}.toast-close:hover{opacity:1;background:#fff3}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9998;animation:fadeIn .2s ease-out}.modal-content{background:var(--color-surface-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:90%;max-width:600px;max-height:90vh;overflow:hidden;animation:scaleIn .2s ease-out}.modal-header{padding:var(--space-lg);border-bottom:1px solid var(--color-border-secondary);display:flex;align-items:center;justify-content:space-between}.modal-title{margin:0;font-size:var(--text-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.offline-indicator{font-size:var(--text-sm);color:var(--color-warning);font-weight:var(--font-weight-normal)}.modal-close-button{background:none;border:none;font-size:24px;color:var(--color-text-secondary);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-md);width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.modal-close-button:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.modal-body{padding:var(--space-lg);max-height:60vh;overflow-y:auto}.modal-footer{padding:var(--space-lg);border-top:1px solid var(--color-border-secondary);display:flex;align-items:center;justify-content:flex-end;gap:var(--space-md)}.assignment-form{display:flex;flex-direction:column;gap:var(--space-md)}.form-row{display:flex;gap:var(--space-md)}.form-group{flex:1}.form-group label{display:block;font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.form-display-value{padding:var(--space-sm);background:var(--color-surface-elevated);border:1px solid var(--color-border-secondary);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--text-sm)}.offline-notice{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);background:var(--color-warning-subtle);border:1px solid var(--color-warning);border-radius:var(--radius-md);color:var(--color-warning-contrast);font-size:var(--text-sm)}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.error-banner{margin-bottom:var(--space-lg);background:var(--color-error-subtle);border:1px solid var(--color-error);border-radius:var(--radius-md);overflow:hidden;animation:slideDown .3s ease-out}.error-banner-content{padding:var(--space-md);display:flex;align-items:center;gap:var(--space-md)}.error-banner-icon{font-size:var(--text-xl);flex-shrink:0}.error-banner-message{flex:1;color:var(--color-error-contrast);font-size:var(--text-sm)}.error-banner-message strong{font-weight:var(--font-weight-semibold);display:block;margin-bottom:var(--space-xs)}.error-banner-actions{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0}.schedule-controls-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);padding:var(--space-2xl);margin-bottom:var(--space-2xl);box-shadow:var(--shadow-md);transition:var(--transition-base)}.schedule-controls-card:hover{border-color:var(--color-accent-primary);box-shadow:var(--shadow-lg)}.controls-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-xl)}.control-group{display:flex;flex-direction:column;gap:var(--space-sm)}.control-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.preflight-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);padding:var(--space-2xl);margin-bottom:var(--space-2xl);box-shadow:var(--shadow-md);transition:var(--transition-base)}.preflight-card:hover{border-color:var(--color-accent-primary);box-shadow:var(--shadow-lg)}.preflight-title{font-size:var(--text-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-xl);display:flex;align-items:center;gap:var(--space-sm)}.checks-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-lg)}.check-item{background:var(--color-bg-tertiary);border:1px solid var(--color-border-secondary);border-radius:var(--radius-lg);padding:var(--space-lg);transition:var(--transition-base)}.check-item:hover{border-color:var(--color-accent-primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.check-title{font-size:var(--text-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-md)}.check-content{display:flex;flex-direction:column;gap:var(--space-sm)}.check-metric{display:flex;justify-content:space-between;align-items:center}.check-metric-label{font-size:var(--text-sm);color:var(--color-text-secondary)}.check-metric-value,.check-status{font-size:var(--text-sm);font-weight:var(--font-weight-medium)}.check-status.success{color:var(--color-success)}.check-status.warning{color:var(--color-warning)}.check-status.error{color:var(--color-error)}.draft-generation-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);padding:var(--space-2xl);margin-bottom:var(--space-2xl);box-shadow:var(--shadow-md);transition:var(--transition-base)}.draft-generation-card:hover{border-color:var(--color-accent-primary);box-shadow:var(--shadow-lg)}.draft-title{font-size:var(--text-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-xl);display:flex;align-items:center;gap:var(--space-sm)}.draft-content{display:grid;grid-template-columns:1fr auto;gap:var(--space-xl);align-items:start}.draft-info{background:var(--color-bg-accent-subtle);border:1px solid var(--color-accent-primary);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.draft-steps{display:flex;flex-direction:column;gap:var(--space-md)}.draft-step{display:flex;align-items:center;gap:var(--space-md);font-size:var(--text-sm);color:var(--color-text-secondary)}.step-number{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--color-accent-primary);color:#fff;border-radius:50%;font-size:var(--text-xs);font-weight:var(--font-weight-medium);flex-shrink:0}.draft-actions{display:flex;flex-direction:column;gap:var(--space-sm);min-width:200px}.generation-progress{margin-top:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm)}.progress-bar-container{width:100%;height:8px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);overflow:hidden}.progress-bar{height:100%;background:linear-gradient(135deg,var(--color-accent-primary),var(--color-accent-active));border-radius:var(--radius-full);transition:width .3s ease;position:relative}.progress-bar:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-status{font-size:var(--text-sm);color:var(--color-text-secondary);text-align:center}.draft-results-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);padding:var(--space-2xl);margin-bottom:var(--space-2xl);box-shadow:var(--shadow-md);transition:var(--transition-base)}.draft-results-card:hover{border-color:var(--color-accent-primary);box-shadow:var(--shadow-lg)}.results-title{font-size:var(--text-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-xl);display:flex;align-items:center;gap:var(--space-sm)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-lg);margin-bottom:var(--space-xl)}.metric-item{background:var(--color-bg-tertiary);border:1px solid var(--color-border-secondary);border-radius:var(--radius-lg);padding:var(--space-lg);text-align:center;transition:var(--transition-base)}.metric-item:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.metric-icon{font-size:2rem;margin-bottom:var(--space-sm)}.metric-value{font-size:var(--text-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-xs)}.metric-label{font-size:var(--text-sm);color:var(--color-text-secondary)}.results-actions{display:flex;flex-wrap:wrap;gap:var(--space-md);justify-content:center}.schedule-dashboard{display:grid;grid-template-columns:1fr 320px;gap:var(--space-2xl);align-items:start}.overview-metrics-bar{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);padding:var(--space-lg);margin-bottom:var(--space-xl);box-shadow:var(--shadow-md);transition:var(--transition-base)}.overview-metrics-bar:hover{border-color:var(--color-accent-primary);box-shadow:var(--shadow-lg)}.overview-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-lg)}.overview-metric{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-md);border-radius:var(--radius-lg);background:var(--color-bg-tertiary);border:1px solid var(--color-border-secondary);transition:var(--transition-base);position:relative;overflow:hidden}.overview-metric:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--color-accent-subtle),rgba(59,130,246,.05));opacity:0;transition:var(--transition-base);z-index:0}.overview-metric:hover:before{opacity:1}.overview-metric:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.overview-metric>*{position:relative;z-index:1}.overview-icon{font-size:1.5rem;margin-bottom:var(--space-xs);filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.overview-value{font-size:var(--text-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-xs);line-height:1}.overview-label{font-size:var(--text-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);line-height:1.2}.schedule-main-content{display:flex;flex-direction:column;gap:var(--space-xl)}.schedule-sidebar{display:flex;flex-direction:column;gap:var(--space-xl);position:sticky;top:var(--space-lg)}.schedule-section{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);padding:var(--space-xl);transition:var(--transition-base)}.schedule-section:hover{border-color:var(--color-accent-primary);box-shadow:var(--shadow-md)}.schedule-section-title{font-size:var(--text-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm)}.schedule-section-compact{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);padding:var(--space-md);transition:var(--transition-base)}.schedule-section-compact:hover{border-color:var(--color-accent-primary);box-shadow:var(--shadow-sm)}.week-grid{margin-top:var(--space-md);display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-md)}.week-day{background:var(--color-bg-tertiary);border:1px solid var(--color-border-secondary);border-radius:var(--radius-lg);padding:var(--space-md);cursor:pointer;transition:var(--transition-base);min-height:120px}.week-day:hover{border-color:var(--color-accent-primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.week-day.selected{border-color:var(--color-accent-primary);background:var(--color-bg-accent-subtle)}.day-header{text-align:center;margin-bottom:var(--space-sm)}.day-name{font-size:var(--text-xs);color:var(--color-text-tertiary)}.day-number{font-size:var(--text-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.day-events{display:flex;flex-direction:column;gap:var(--space-xs)}.day-event{font-size:var(--text-xs);padding:var(--space-xs);border-radius:var(--radius-sm);truncate:true}.day-event.flight{background:var(--color-info);color:#fff}.day-event.ground{background:var(--color-success);color:#fff}.day-event.simulator{background:var(--color-warning);color:#fff}.day-more{font-size:var(--text-xs);color:var(--color-text-tertiary);text-align:center}.table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border-secondary)}.table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg)}.table-title{font-size:var(--text-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.table-info{font-size:var(--text-sm);color:var(--color-text-secondary)}.conflicts-header{margin-bottom:var(--space-md);display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg)}.conflicts-title{font-size:var(--text-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.conflict-alerts{display:flex;flex-direction:column;gap:var(--space-md)}.conflict-alert{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-md);font-size:var(--text-sm)}.conflict-alert.success{background:var(--color-bg-success-subtle);border:1px solid var(--color-success);color:var(--color-success)}.conflict-alert.warning{background:var(--color-bg-warning-subtle);border:1px solid var(--color-warning);color:var(--color-warning)}.conflict-alert.error{background:var(--color-bg-error-subtle);border:1px solid var(--color-error);color:var(--color-error)}.system-status-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);padding:var(--space-2xl);box-shadow:var(--shadow-md);transition:var(--transition-base)}.system-status-card:hover{border-color:var(--color-accent-primary);box-shadow:var(--shadow-lg)}.status-title{font-size:var(--text-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-xl);display:flex;align-items:center;gap:var(--space-sm)}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-lg)}.status-item{background:var(--color-bg-tertiary);border:1px solid var(--color-border-secondary);border-radius:var(--radius-lg);padding:var(--space-lg);transition:var(--transition-base)}.status-item:hover{border-color:var(--color-accent-primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.status-item-title{font-size:var(--text-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-sm)}.status-item-content{font-size:var(--text-sm);font-weight:var(--font-weight-medium)}.status-item-content.success{color:var(--color-success)}.status-item-content.error{color:var(--color-error)}.status-item-content.warning{color:var(--color-warning)}@media (max-width: 768px){.schedule-builder-container{padding:1rem}.schedule-actions{flex-direction:column;width:100%}.controls-grid,.checks-grid,.draft-content{grid-template-columns:1fr}.draft-actions{min-width:auto}.metrics-grid{grid-template-columns:repeat(2,1fr)}.schedule-dashboard{grid-template-columns:1fr;gap:var(--space-xl)}.overview-metrics-grid{grid-template-columns:repeat(2,1fr)}.schedule-sidebar{position:static}.week-grid{grid-template-columns:repeat(4,1fr)}.status-grid{grid-template-columns:1fr}.results-actions{flex-direction:column}}@media (max-width: 480px){.metrics-grid{grid-template-columns:1fr}.overview-metrics-grid{grid-template-columns:1fr;gap:var(--space-sm)}.overview-metric{flex-direction:row;text-align:left;justify-content:space-between;align-items:center}.overview-icon{margin-bottom:0;font-size:1.25rem}.overview-value{margin-bottom:0;font-size:var(--text-lg)}.week-grid{grid-template-columns:repeat(2,1fr)}}.professional-empty-state{display:flex;align-items:center;justify-content:center;padding:var(--space-4xl) var(--space-2xl);min-height:400px;background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);margin:var(--space-xl) 0}.empty-state-content{text-align:center;max-width:480px}.empty-state-icon{font-size:4rem;margin-bottom:var(--space-xl);opacity:.8}.empty-state-title{font-size:var(--text-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-md) 0;line-height:1.3}.empty-state-description{font-size:var(--text-base);color:var(--color-text-secondary);margin:0 0 var(--space-2xl) 0;line-height:1.5}.empty-state-actions{display:flex;flex-direction:column;gap:var(--space-md);align-items:center}@media (min-width: 640px){.empty-state-actions{flex-direction:row;justify-content:center}}.professional-metrics-dashboard{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);padding:var(--space-xl);margin-bottom:var(--space-xl)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-lg);margin-bottom:var(--space-lg)}.professional-metric-card{background:var(--color-bg-tertiary);border:1px solid var(--color-border-secondary);border-radius:var(--radius-lg);padding:var(--space-lg);transition:var(--transition-base);position:relative;overflow:hidden}.professional-metric-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--color-accent-subtle),rgba(59,130,246,.03));opacity:0;transition:var(--transition-base);z-index:0}.professional-metric-card:hover:before{opacity:1}.professional-metric-card:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.professional-metric-card.clickable{cursor:pointer}.professional-metric-card.success{border-left:4px solid var(--color-success)}.professional-metric-card.warning{border-left:4px solid var(--color-warning)}.professional-metric-card.error{border-left:4px solid var(--color-error)}.professional-metric-card.info{border-left:4px solid var(--color-info)}.professional-metric-card>*{position:relative;z-index:1}.metric-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-md)}.metric-icon{font-size:1.5rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.metric-trend{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-xs);font-weight:var(--font-weight-medium);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-full);background:var(--color-bg-primary)}.metric-trend.trend-up{color:var(--color-success)}.metric-trend.trend-down{color:var(--color-error)}.metric-trend.trend-neutral{color:var(--color-text-secondary)}.metric-card-content{text-align:left}.metric-value{font-size:var(--text-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-xs);line-height:1}.metric-title{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--space-xs);text-transform:uppercase;letter-spacing:.05em}.metric-subtitle{font-size:var(--text-xs);color:var(--color-text-tertiary);line-height:1.3}.metrics-status-banner{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-lg);background:var(--color-bg-success-subtle);border:1px solid var(--color-success)}.metrics-status-banner.success{background:var(--color-bg-success-subtle);border-color:var(--color-success)}.status-icon{font-size:1.25rem;flex-shrink:0}.status-content{flex:1}.status-title{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-success);margin-bottom:var(--space-xs)}.status-subtitle{font-size:var(--text-xs);color:var(--color-text-secondary)}.professional-action-toolbar{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);overflow:hidden}.toolbar-primary-section{padding:var(--space-lg);border-bottom:1px solid var(--color-border-secondary)}.primary-actions{display:flex;flex-wrap:wrap;gap:var(--space-md);align-items:center}.action-group-container{display:flex;align-items:center;gap:var(--space-xs)}.group-toggle-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--color-bg-tertiary);border:1px solid var(--color-border-secondary);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:var(--transition-base)}.group-toggle-button:hover{background:var(--color-bg-hover);border-color:var(--color-accent-primary);color:var(--color-text-primary)}.toggle-icon{font-size:var(--text-xs);transition:transform .2s ease;display:inline-block}.toolbar-expanded-section{background:var(--color-bg-tertiary);animation:slideDown .2s ease-out}.expanded-group{padding:var(--space-lg)}.expanded-group-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border-secondary)}.group-icon{font-size:1.25rem}.group-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);flex:1}.close-expanded{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition-base)}.close-expanded:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.expanded-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.schedule-quick-actions{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);padding:var(--space-xl);margin-bottom:var(--space-xl)}.quick-actions-header{margin-bottom:var(--space-lg)}.actions-title{font-size:var(--text-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-sm) 0;display:flex;align-items:center;gap:var(--space-sm)}.actions-title:before{content:"⚡";font-size:1.25rem}.actions-subtitle{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.schedule-actions-toolbar{border:none;background:transparent}@media (max-width: 768px){.metrics-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.professional-empty-state{padding:var(--space-2xl) var(--space-lg);min-height:300px}.empty-state-icon{font-size:3rem}.empty-state-title{font-size:var(--text-xl)}.primary-actions{flex-direction:column;align-items:stretch}.action-group-container{justify-content:space-between}}@media (max-width: 480px){.metrics-grid{grid-template-columns:1fr}.metric-card-header{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.metric-trend{align-self:flex-end}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#141823f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:2px solid rgba(255,107,53,.3);border-radius:16px;width:90%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 40px #0006,0 0 60px #ff6b351a;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid rgba(255,107,53,.2);background:#14182399}.modal-title{font-size:1.25rem;font-weight:600;color:#fff;margin:0}.modal-close{background:transparent;border:none;font-size:2rem;color:#8b92a5;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s ease}.modal-close:hover{background:#ff6b351a;color:#ff6b35;transform:scale(1.1)}.modal-form{display:flex;flex-direction:column;height:100%}.modal-body{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{font-size:.875rem;font-weight:500;color:#8b92a5}.required{color:#ff6b35}.form-input,.form-select{background:#141823cc;border:1px solid rgba(255,107,53,.3);border-radius:8px;padding:.75rem 1rem;color:#fff;font-size:.875rem;transition:all .2s ease}.form-input:focus,.form-select:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a;background:#141823e6}.form-input::-moz-placeholder{color:#5a6478}.form-input::placeholder{color:#5a6478}.form-input.error,.form-select.error{border-color:#ef4444}.form-hint{font-size:.75rem;color:#5a6478;font-style:italic}.error-message{font-size:.75rem;color:#ef4444;margin-top:.25rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;color:#d1d5db;font-size:.875rem}.form-checkbox{width:20px;height:20px;background:#141823cc;border:2px solid rgba(255,107,53,.3);border-radius:4px;cursor:pointer;position:relative;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:all .2s ease}.form-checkbox:checked{background:#ff6b35;border-color:#ff6b35}.form-checkbox:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:14px;font-weight:700}.form-checkbox:focus{outline:none;box-shadow:0 0 0 3px #ff6b3533}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid rgba(255,107,53,.2);background:#14182399}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.btn-primary:hover{background:#ff5722;transform:translateY(-1px);box-shadow:0 4px 12px #ff6b354d}.btn-secondary:hover{background:#ff6b3533;border-color:#ff6b35}@media (max-width: 640px){.modal-content{width:95%;max-height:95vh;margin:1rem}.modal-header,.modal-body,.modal-footer{padding:1rem}.modal-footer{flex-direction:column;gap:.75rem}.btn-primary,.btn-secondary{width:100%}}:root{--neon-orange: #ff6b35;--neon-orange-glow: rgba(255, 107, 53, .4);--neon-orange-light: rgba(255, 107, 53, .1);--dark-bg-primary: #0f172a;--dark-bg-secondary: #1e293b;--dark-bg-tertiary: #334155;--glass-bg: rgba(30, 41, 59, .3);--glass-border: rgba(255, 255, 255, .1);--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-muted: #64748b}.events-filter-bar{position:sticky;top:0;z-index:20;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:0 0 16px 16px;padding:1.5rem;margin-bottom:1rem;box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff1a}.filter-main-row{display:flex;align-items:center;gap:2rem;margin-bottom:1rem;flex-wrap:wrap}.filter-section{display:flex;align-items:center;gap:.75rem;min-width:0}.section-label{font-size:.875rem;font-weight:600;color:var(--text-secondary);white-space:nowrap;text-transform:uppercase;letter-spacing:.05em}.search-container{position:relative;min-width:280px;flex:1;max-width:400px}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--text-muted);pointer-events:none;z-index:1}.search-input{width:100%;padding:.75rem 3rem .75rem 2.75rem;background:#1e293b66;border:2px solid transparent;border-radius:12px;color:var(--text-primary);font-size:.875rem;font-weight:500;transition:all .3s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.search-input:focus,.search-input.has-value{outline:none;border-color:var(--neon-orange);box-shadow:0 0 20px var(--neon-orange-glow),inset 0 1px #ffffff1a;background:#1e293b99}.search-input::-moz-placeholder{color:var(--text-muted)}.search-input::placeholder{color:var(--text-muted)}.search-clear{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);width:1.5rem;height:1.5rem;border:none;background:#ff6b3533;color:var(--neon-orange);cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.search-clear:hover{background:var(--neon-orange);color:#fff;transform:translateY(-50%) scale(1.1)}.search-clear svg{width:.875rem;height:.875rem}.sort-buttons{display:flex;gap:.25rem;background:#1e293b4d;border:1px solid var(--glass-border);border-radius:12px;overflow:hidden;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.sort-btn{padding:.75rem 1rem;background:transparent;border:none;color:var(--text-secondary);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;border-right:1px solid var(--glass-border);text-transform:uppercase;letter-spacing:.025em}.sort-btn:last-child{border-right:none}.sort-btn:hover:not(:disabled){background:#ff6b351a;color:var(--text-primary);transform:translateY(-1px)}.sort-btn.active{background:linear-gradient(135deg,var(--neon-orange),#ff8f65);color:#fff;box-shadow:0 4px 15px var(--neon-orange-glow),inset 0 1px #fff3}.sort-btn:disabled{opacity:.4;cursor:not-allowed}.sort-icon{width:.875rem;height:.875rem;transition:transform .2s ease}.sort-icon.desc{transform:rotate(180deg)}.page-size-select{padding:.75rem 2.5rem .75rem 1rem;background:#1e293b66;border:2px solid transparent;border-radius:12px;color:var(--text-primary);font-size:.875rem;font-weight:600;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23ff6b35' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem;min-width:100px;transition:all .2s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.page-size-select:focus{outline:none;border-color:var(--neon-orange);box-shadow:0 0 20px var(--neon-orange-glow)}.mobile-toggle{display:none}.filters-toggle-btn{padding:.75rem 1rem;background:#1e293b66;border:2px solid transparent;border-radius:12px;color:var(--text-secondary);font-size:.875rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.filters-toggle-btn:hover{background:#ff6b351a;border-color:var(--neon-orange);color:var(--text-primary)}.filters-toggle-btn svg{width:1rem;height:1rem}.filter-additional-row{display:flex;align-items:center;gap:1.5rem;padding:1rem 0;border-top:1px solid var(--glass-border);flex-wrap:wrap;max-height:0;overflow:hidden;opacity:0;transition:all .3s ease}.filter-additional-row.expanded{max-height:200px;opacity:1}.filter-group{display:flex;align-items:center;gap:.75rem;min-width:0}.filter-label{font-size:.875rem;font-weight:600;color:var(--text-secondary);white-space:nowrap;text-transform:uppercase;letter-spacing:.05em}.filter-select{padding:.625rem 2.25rem .625rem .75rem;background:#1e293b66;border:2px solid transparent;border-radius:8px;color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:.875rem;min-width:140px;transition:all .2s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.filter-select:focus,.filter-select.active{outline:none;border-color:var(--neon-orange);box-shadow:0 0 15px var(--neon-orange-glow);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23ff6b35' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e")}.filter-pagination-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-top:1rem;border-top:1px solid var(--glass-border);flex-wrap:wrap}.pagination-summary{font-size:.875rem;color:var(--text-secondary);font-weight:500}.pagination-summary strong{color:var(--neon-orange);font-weight:700}.page-info{font-size:.875rem;color:var(--text-secondary);font-weight:500}.page-info strong{color:var(--text-primary);font-weight:700}.pagination-btn{padding:.625rem 1rem;background:#1e293b66;border:2px solid transparent;border-radius:8px;color:var(--text-secondary);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;min-width:2.5rem;justify-content:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-transform:uppercase;letter-spacing:.025em}.pagination-btn:hover:not(:disabled){background:#ff6b351a;border-color:var(--neon-orange);color:var(--text-primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.pagination-btn.active{background:linear-gradient(135deg,var(--neon-orange),#ff8f65);color:#fff;border-color:var(--neon-orange);box-shadow:0 4px 15px var(--neon-orange-glow),inset 0 1px #fff3}.pagination-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.pagination-icon{width:1rem;height:1rem}.pagination-ellipsis{padding:.625rem .5rem;color:var(--text-muted);font-size:.875rem;font-weight:600}.btn-text{font-size:.8125rem}.event-row{position:relative;display:flex;align-items:stretch;background:#1e293b33;border-radius:8px;margin:2px 0;overflow:hidden;cursor:pointer;transition:all .15s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.event-row:hover,.event-row.hovered{background:linear-gradient(135deg,#1e293b66,#3341554d);box-shadow:0 4px 20px #0000004d,0 0 0 1px #ff6b354d;transform:translate(2px)}.event-row.even{background:#0f172a4d}.event-row.odd{background:#1e293b33}.event-row-border{width:3px;background:linear-gradient(135deg,var(--neon-orange),#ff8f65);box-shadow:0 0 8px var(--neon-orange-glow);opacity:0;transition:opacity .15s ease}.event-row:hover .event-row-border,.event-row.hovered .event-row-border{opacity:1}.event-row-content{flex:1;display:flex;align-items:center;padding:.75rem 1rem;gap:1rem}.event-cell{display:flex;flex-direction:column;gap:.25rem;min-width:0}.cell-label{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.cell-value{font-size:.875rem;font-weight:500;color:var(--text-primary);word-wrap:break-word}.event-type-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;display:inline-flex;align-items:center;gap:.25rem}.type-flight{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 2px 8px #3b82f64d}.type-simulator{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 2px 8px #8b5cf64d}.type-ground{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #10b9814d}.type-checkride{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 2px 8px #f59e0b4d}.type-solo{background:linear-gradient(135deg,var(--neon-orange),#ff8f65);color:#fff;box-shadow:0 2px 8px var(--neon-orange-glow)}.phase-badge{padding:.25rem .75rem;background:#33415599;border:1px solid rgba(255,255,255,.1);border-radius:16px;font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.prerequisites-container{display:flex;align-items:center;gap:.5rem}.prerequisites-count{font-size:.875rem;font-weight:600;color:var(--neon-orange)}.prerequisites-toggle{width:1.5rem;height:1.5rem;border:none;background:#ff6b3533;color:var(--neon-orange);border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.prerequisites-toggle:hover{background:var(--neon-orange);color:#fff;transform:scale(1.1)}.toggle-icon{width:.875rem;height:.875rem;transition:transform .2s ease}.toggle-icon.expanded{transform:rotate(180deg)}.no-prereqs{color:var(--text-muted);font-style:italic}.prerequisites-details{position:absolute;top:100%;left:0;right:0;background:#0f172af2;border:1px solid var(--neon-orange);border-radius:0 0 8px 8px;padding:1rem;z-index:10;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 32px #00000080,0 0 0 1px var(--neon-orange-glow)}.prerequisites-list{display:flex;flex-direction:column;gap:.5rem}.prerequisite-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:#1e293b66;border-radius:6px;border-left:3px solid var(--neon-orange)}.prerequisite-code{font-size:.875rem;font-weight:600;color:var(--text-primary)}.prerequisite-status{font-size:.75rem;font-weight:600;color:var(--neon-orange);text-transform:uppercase;letter-spacing:.05em}.edit-btn{width:2rem;height:2rem;border:none;background:#ff6b3533;color:var(--neon-orange);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.edit-btn:hover{background:var(--neon-orange);color:#fff;transform:scale(1.1);box-shadow:0 4px 12px var(--neon-orange-glow)}.edit-icon{width:1rem;height:1rem}.search-highlight{background:var(--neon-orange);color:#fff;padding:.125rem .25rem;border-radius:4px;font-weight:700}.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}.events-filter-bar[data-loading=true]{opacity:.7;pointer-events:none}.events-filter-bar[data-loading=true]:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid transparent;border-top:2px solid var(--neon-orange);border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 768px){.events-filter-bar{padding:1rem;border-radius:0 0 12px 12px}.filter-main-row{flex-direction:column;align-items:stretch;gap:1rem;margin-bottom:.75rem}.filter-section{justify-content:space-between}.search-container{min-width:unset;max-width:unset}.sort-buttons{flex:1}.sort-btn{flex:1;justify-content:center;padding:.75rem .5rem}.btn-text{display:none}.mobile-toggle{display:flex}.filter-additional-row{flex-direction:column;align-items:stretch;gap:1rem}.filter-group{justify-content:space-between}.filter-select{flex:1;min-width:unset}.filter-pagination-row{flex-direction:column;gap:1rem}.pagination-nav{order:2}.pagination-summary,.page-info{order:1;text-align:center}.pagination-btn{padding:.75rem}.pagination-first,.pagination-last{display:none}.event-row-content{flex-direction:column;align-items:stretch;gap:.5rem;padding:.75rem}.event-cell{flex-direction:row;justify-content:space-between;align-items:center}}@media (max-width: 480px){.pagination-pages{gap:.125rem}.pagination-btn{padding:.625rem .75rem;font-size:.8125rem;min-width:2rem}.sort-btn{font-size:.8125rem;padding:.625rem .5rem}}@media (prefers-contrast: high){.events-filter-bar{border-width:2px;background:#0f172ae6}.sort-btn.active,.pagination-btn.active{border-width:3px}.event-row-border{width:4px}}@media (prefers-reduced-motion: reduce){.events-filter-bar *,.events-filter-bar *:before,.events-filter-bar *:after,.event-row *,.event-row *:before,.event-row *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.events-filter-bar *:focus-visible,.event-row *:focus-visible{outline:2px solid var(--neon-orange);outline-offset:2px;border-radius:4px}@media print{.events-filter-bar{position:static;background:#fff;color:#000;border:1px solid black;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}.event-row{background:#fff;color:#000;border:1px solid #ccc}.event-type-badge,.phase-badge{background:#f0f0f0;color:#000;box-shadow:none}}.events-table-container{display:flex;flex-direction:column;height:100%;background:var(--dark-bg-primary);border-radius:8px;overflow:hidden;position:relative}.events-filter-bar{position:sticky;top:0;z-index:10;background:#0f172af2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,107,53,.2);padding:1rem;box-shadow:0 4px 6px -1px #0000004d}.filter-row{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:150px}.filter-label{font-size:.75rem;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.filter-input,.filter-select{background:#1e293b80;border:1px solid rgba(148,163,184,.2);border-radius:6px;color:var(--color-text-primary);padding:.5rem .75rem;font-size:.875rem;transition:all .2s ease}.filter-input:focus,.filter-select:focus{outline:none;border-color:var(--color-aviation-primary);box-shadow:0 0 0 3px #ff6b351a}.filter-active{border-color:var(--color-aviation-primary)!important;box-shadow:0 0 0 1px var(--color-aviation-primary)}.search-input-wrapper{position:relative}.search-input{padding-left:2.5rem;width:100%}.search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:1.25rem;height:1.25rem;color:var(--color-text-muted);pointer-events:none}.clear-filters-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.clear-filters-btn:hover:not(:disabled){background:#ef444433;border-color:#ef444480}.clear-icon{width:1rem;height:1rem}.sort-controls{display:flex;align-items:center;gap:1rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(148,163,184,.1)}.sort-label{font-size:.75rem;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.sort-buttons{display:flex;gap:.5rem}.sort-btn{display:flex;align-items:center;gap:.25rem;padding:.375rem .75rem;background:transparent;border:1px solid rgba(148,163,184,.2);border-radius:4px;color:var(--color-text-secondary);font-size:.813rem;font-weight:500;cursor:pointer;transition:all .2s ease}.sort-btn:hover:not(:disabled){background:#ff6b350d;border-color:#ff6b354d;color:var(--color-text-primary)}.sort-btn.active{background:#ff6b351a;border-color:var(--color-aviation-primary);color:var(--color-aviation-primary)}.sort-arrow{font-size:.75rem;opacity:.8}.events-virtual-list{flex:1;display:flex;flex-direction:column;background:var(--color-background-primary);overflow:hidden}.virtual-list-header{display:flex;height:40px;background:#1e293b80;border-bottom:1px solid rgba(148,163,184,.1);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.header-cell{display:flex;align-items:center;padding:0 1rem;flex:1}.header-cell:nth-child(1){flex:0 0 120px}.header-cell:nth-child(2){flex:2}.header-cell:nth-child(3){flex:0 0 150px}.header-cell:nth-child(4){flex:0 0 120px}.header-cell:nth-child(5){flex:1}.header-cell:nth-child(6){flex:0 0 80px}.event-row{display:flex;align-items:center;height:50px;padding:0 1rem;background:var(--color-background-primary);border-bottom:1px solid rgba(148,163,184,.05);transition:all .2s ease;cursor:pointer;position:relative}.event-row:hover{background:linear-gradient(90deg,#0f172acc,#1e293bcc);border-left:3px solid var(--color-aviation-primary);transform:translate(2px)}.event-row:focus{outline:2px solid var(--color-aviation-primary);outline-offset:-2px}.event-cell{display:flex;align-items:center;gap:.5rem;flex:1;font-size:.875rem;overflow:hidden}.event-cell:nth-child(1){flex:0 0 120px}.event-cell:nth-child(2){flex:2}.event-cell:nth-child(3){flex:0 0 150px}.event-cell:nth-child(4){flex:0 0 120px}.event-cell:nth-child(5){flex:1}.event-cell:nth-child(6){flex:0 0 80px}.cell-label{display:none}.cell-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-highlight{background:#ff6b354d;color:var(--color-text-primary);padding:0 2px;border-radius:2px}.phase-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em;white-space:nowrap}.event-type-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:capitalize;letter-spacing:.025em;white-space:nowrap}.type-simulator{background:#3b82f633;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.type-flight{background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.type-ground{background:#fb923c33;color:#fb923c;border:1px solid rgba(251,146,60,.3)}.type-checkride{background:#ec489933;color:#ec4899;border:1px solid rgba(236,72,153,.3)}.type-solo{background:#a855f733;color:#a855f7;border:1px solid rgba(168,85,247,.3)}.prerequisites{font-family:Fira Code,Consolas,monospace;font-size:.813rem;color:var(--color-text-secondary)}.no-prereqs{color:var(--color-text-muted);font-style:italic}.edit-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#ff6b351a;border:1px solid rgba(255,107,53,.2);border-radius:6px;color:var(--color-aviation-primary);cursor:pointer;transition:all .2s ease}.edit-btn:hover{background:#ff6b3533;border-color:var(--color-aviation-primary);transform:scale(1.05)}.edit-icon{width:16px;height:16px}.events-loading{display:flex;align-items:center;justify-content:center;padding:2rem}.loading-skeleton-container{width:100%}.event-row-skeleton{display:flex;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid rgba(148,163,184,.05)}.skeleton-cell{height:20px;background:linear-gradient(90deg,#94a3b81a 25%,#94a3b833,#94a3b81a 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}.skeleton-code{width:100px}.skeleton-name{flex:2}.skeleton-phase{width:120px}.skeleton-type{width:100px}.skeleton-prereqs{flex:1}.skeleton-actions{width:40px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.events-empty{display:flex;align-items:center;justify-content:center;padding:4rem 2rem}.empty-state{text-align:center;max-width:400px}.empty-icon{width:48px;height:48px;color:var(--color-text-muted);margin:0 auto 1rem}.empty-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.5rem}.empty-message{color:var(--color-text-secondary);font-size:.875rem}.error-banner{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:6px;margin:1rem;color:#ef4444}.error-icon{width:20px;height:20px;flex-shrink:0}.retry-btn{margin-left:auto;padding:.375rem .75rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:4px;color:#ef4444;font-size:.813rem;font-weight:500;cursor:pointer;transition:all .2s ease}.retry-btn:hover{background:#ef444433;border-color:#ef444480}.pagination-controls{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#1e293b80;border-top:1px solid rgba(148,163,184,.1)}.pagination-info{display:flex;align-items:center;gap:1.5rem;font-size:.875rem;color:var(--color-text-secondary)}.page-size-selector{display:flex;align-items:center;gap:.5rem}.page-size-label{font-size:.813rem;color:var(--color-text-muted)}.page-size-select{background:#1e293b80;border:1px solid rgba(148,163,184,.2);border-radius:4px;color:var(--color-text-primary);padding:.25rem .5rem;font-size:.813rem}.pagination-summary strong{color:var(--color-text-primary);font-weight:600}.pagination-nav{display:flex;align-items:center;gap:.5rem}.pagination-btn{display:flex;align-items:center;gap:.25rem;padding:.375rem .75rem;background:transparent;border:1px solid rgba(148,163,184,.2);border-radius:4px;color:var(--color-text-secondary);font-size:.813rem;font-weight:500;cursor:pointer;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:#ff6b350d;border-color:#ff6b354d;color:var(--color-text-primary)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-btn.active{background:var(--color-aviation-primary);border-color:var(--color-aviation-primary);color:#fff}.pagination-icon{width:16px;height:16px}.pagination-pages{display:flex;align-items:center;gap:.25rem}.pagination-ellipsis{padding:0 .5rem;color:var(--color-text-muted)}.modified-indicator{position:absolute;bottom:1rem;right:1rem;background:#fb923ce6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:.5rem 1rem;border-radius:9999px;box-shadow:0 4px 6px -1px #0000004d}.modified-count{font-size:.813rem;font-weight:600;color:#fff}@media (max-width: 768px){.filter-row{flex-direction:column}.filter-group{width:100%}.sort-controls{flex-direction:column;align-items:flex-start}.sort-buttons{width:100%;flex-wrap:wrap}.virtual-list-header{display:none}.event-row{flex-direction:column;height:auto;padding:1rem;gap:.5rem}.event-cell{width:100%;justify-content:space-between}.cell-label{display:block;font-size:.75rem;font-weight:500;color:var(--color-text-muted);text-transform:uppercase}.pagination-controls{flex-direction:column;gap:1rem}.pagination-info{flex-direction:column;align-items:flex-start;gap:.5rem}}@media print{.events-filter-bar,.pagination-controls,.edit-btn,.modified-indicator{display:none}.event-row{-moz-column-break-inside:avoid;break-inside:avoid;border-bottom:1px solid #ddd}.event-type-badge,.phase-badge{border:1px solid currentColor;-webkit-print-color-adjust:exact;print-color-adjust:exact}}.prerequisite-diagram-container{display:flex;height:100%;background:var(--dark-bg-primary);overflow:hidden;position:relative}.diagram-controls{width:320px;min-width:320px;max-width:320px;background:#1e293bf2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-right:1px solid rgba(255,107,53,.2);padding:1.5rem;overflow-y:auto;transition:transform .3s ease;flex-shrink:0}.controls-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.controls-header h3{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin:0}.event-count{background:#ff6b3533;color:var(--neon-orange);padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600}.diagram-content svg .node{cursor:pointer!important;transition:stroke-width .2s ease,stroke .2s ease}.diagram-content svg .node:hover{stroke:#ff6b35!important;stroke-width:3px!important}.diagram-content svg .node rect,.diagram-content svg .node polygon,.diagram-content svg .node ellipse,.diagram-content svg .node circle{transition:stroke-width .2s ease,stroke .2s ease}.diagram-content svg .node:hover rect,.diagram-content svg .node:hover polygon,.diagram-content svg .node:hover ellipse,.diagram-content svg .node:hover circle{stroke:#ff6b35!important;stroke-width:3px!important}.control-section{margin-bottom:2rem}.control-label{display:block;font-size:.875rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.search-container{position:relative}.search-input{width:100%;padding:.75rem 2.5rem .75rem 1rem;background:#0f172a99;border:2px solid transparent;border-radius:8px;color:var(--color-text-primary);font-size:.875rem;transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--neon-orange);box-shadow:0 0 20px var(--neon-orange-glow)}.search-icon{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);width:1.25rem;height:1.25rem;color:var(--color-text-muted);pointer-events:none}.phase-filters{display:flex;flex-direction:column;gap:.5rem}.phase-checkbox{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:#0f172a66;border-radius:6px;cursor:pointer;transition:all .2s ease}.phase-checkbox:hover{background:#ff6b351a}.phase-checkbox input[type=checkbox]{width:1.25rem;height:1.25rem;accent-color:var(--neon-orange);cursor:pointer}.phase-name{font-size:.875rem;color:var(--color-text-primary);font-weight:500}.legend{display:flex;flex-direction:column;gap:.5rem}.legend-item{display:flex;align-items:center;gap:.75rem}.legend-color{width:1.25rem;height:1.25rem;border-radius:4px;border:1px solid rgba(255,255,255,.1)}.legend-item span{font-size:.875rem;color:var(--color-text-secondary)}.zoom-controls{display:flex;flex-direction:column;gap:.5rem}.zoom-button{padding:.75rem 1rem;background:#ff6b351a;border:1px solid rgba(255,107,53,.3);border-radius:6px;color:var(--neon-orange);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.zoom-button:hover{background:#ff6b3533;border-color:var(--neon-orange);transform:translateY(-1px);box-shadow:0 4px 12px #ff6b354d}.diagram-main{flex:1;position:relative;background:var(--dark-bg-primary);overflow:hidden}.mermaid-diagram-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;cursor:grab}.mermaid-diagram-container svg{max-width:none!important;max-height:none!important;width:auto!important;height:auto!important}.node{cursor:pointer!important;transition:all .2s ease}.node:hover{filter:brightness(1.2) drop-shadow(0 0 10px rgba(255,107,53,.5))}.node rect{rx:6;ry:6}.node.filtered-out{opacity:.2!important}.edgePath path{stroke-width:2px;transition:all .2s ease}.edgePath:hover path{stroke:var(--neon-orange)!important;stroke-width:3px}.prerequisite-diagram-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem}.loading-spinner{width:3rem;height:3rem;color:var(--neon-orange)}.spinner-icon{animation:spin 1s linear infinite}.spinner-circle{opacity:.25}.spinner-path{opacity:.75}.loading-text{font-size:1rem;color:var(--color-text-secondary)}.prerequisite-diagram-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem;padding:2rem;text-align:center}.error-icon{font-size:3rem}.prerequisite-diagram-error h3{font-size:1.5rem;color:var(--color-text-primary);margin:0}.prerequisite-diagram-error p{color:var(--color-text-secondary);max-width:400px}.retry-button{padding:.75rem 1.5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.retry-button:hover{background:#ef444433;border-color:#ef4444}@media (max-width: 768px){.prerequisite-diagram-container{position:relative;overflow:visible}.diagram-controls{position:fixed;top:0;left:0;width:80%;max-width:320px;height:100vh;z-index:100;transform:translate(-100%);border-right:1px solid rgba(255,107,53,.3);border-bottom:none}.diagram-controls.open{transform:translate(0)}.diagram-main{width:100%;height:100vh;margin-left:0}.mobile-toggle{display:block;position:fixed;top:1rem;left:1rem;z-index:101;background:#ff6b35e6;border:none;border-radius:6px;padding:.75rem;color:#fff;cursor:pointer;box-shadow:0 2px 8px #0000004d}.mobile-toggle:hover{background:var(--neon-orange)}.mobile-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:99}.mobile-overlay.visible{display:block}}@media (min-width: 769px){.mobile-toggle{display:none}.mobile-overlay{display:none!important}}@media print{.diagram-controls{display:none}.diagram-main{width:100%}.mermaid-diagram-container{background:#fff}.node rect{fill:#fff!important;stroke:#000!important}.node text{fill:#000!important}.edgePath path{stroke:#000!important}}.node-tooltip{background:#0f172af2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,107,53,.3);border-radius:6px;padding:.5rem 1rem;color:var(--color-text-primary);font-size:.875rem;font-weight:500;box-shadow:0 4px 12px #00000080;z-index:1000;white-space:nowrap;max-width:400px;overflow:hidden;text-overflow:ellipsis}.mermaid-diagram-container .nodeLabel{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:normal;line-height:1.2}.mermaid-diagram-container text{font-size:12px!important}.node[data-filtered=false]{opacity:.2!important}.node[data-filtered=true]{opacity:1!important}.edgePath[data-filtered=false]{opacity:.2!important}.edgePath[data-filtered=true]{opacity:1!important}.tab-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#14182399;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,107,53,.2);border-radius:8px;color:#8b92a5;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.tab-button:hover{background:#ff6b351a;border-color:#ff6b3566;color:#ff6b35}.tab-button.active{background:#ff6b3533;border-color:#ff6b35;color:#ff6b35;box-shadow:0 0 12px #ff6b3533}.tab-icon{font-size:1rem;transition:transform .2s ease}.tab-button:hover .tab-icon{transform:scale(1.1)}.tab-label{font-weight:inherit}@media (max-width: 640px){.tab-button{padding:.625rem 1rem;font-size:.8125rem}.tab-icon{font-size:.875rem}}.course-flow-container{display:flex;flex-direction:column;gap:1.5rem;height:calc(100vh - 200px);min-height:600px}.course-flow-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.tab-navigation{display:flex;gap:.75rem}.save-controls{display:flex;align-items:center;gap:1rem}.unsaved-indicator{color:#fbbf24;font-size:.875rem;font-weight:500;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.error-banner{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px;color:#ef4444;font-size:.875rem}.error-icon{font-size:1.25rem}.error-close{margin-left:auto;background:transparent;border:none;color:#ef4444;font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.error-close:hover{background:#ef44441a}.tab-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;min-height:400px;color:#8b92a5}.spinner{width:48px;height:48px;border:3px solid rgba(255,107,53,.1);border-top-color:#ff6b35;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;white-space:nowrap}.btn-primary{background:#ff6b35;color:#fff}.btn-primary:hover:not(:disabled){background:#ff5722;transform:translateY(-1px);box-shadow:0 4px 12px #ff6b354d}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#ff6b351a;color:#ff6b35;border:1px solid rgba(255,107,53,.3)}.btn-secondary:hover:not(:disabled){background:#ff6b3533;border-color:#ff6b35}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.course-flow-container{height:auto;min-height:100vh}.course-flow-header{flex-direction:column;align-items:stretch}.save-controls{justify-content:space-between}.btn-primary,.btn-secondary{padding:.625rem 1.25rem}}@media print{.course-flow-header,.error-banner{display:none}.course-flow-container{height:auto}.tab-content{overflow:visible}}.ingestion-mode-selector{padding:2rem;max-width:1200px;margin:0 auto}.page-header{margin-bottom:3rem}.mode-selector-content{display:flex;flex-direction:column;gap:3rem}.mode-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:2rem;margin-bottom:2rem}.mode-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);padding:var(--space-2xl);cursor:pointer;transition:var(--transition-base);position:relative;overflow:hidden;box-shadow:var(--shadow-md)}.mode-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--color-accent-subtle),rgba(59,130,246,.05));opacity:0;transition:var(--transition-base);z-index:0}.mode-card:hover:before{opacity:1}.mode-card:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-xl),var(--shadow-glow)}.mode-card>*{position:relative;z-index:1}.mode-card-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;background:linear-gradient(135deg,var(--color-accent-primary),var(--color-accent-active));border-radius:var(--radius-xl);margin-bottom:var(--space-xl);box-shadow:var(--shadow-sm)}.mode-emoji{font-size:2.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.mode-title{font-size:var(--text-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-lg) 0}.mode-description{font-size:var(--text-base);color:var(--color-text-secondary);margin:0 0 var(--space-xl) 0;line-height:var(--line-height-normal)}.mode-features{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.feature-item{font-size:var(--text-sm);color:var(--color-text-secondary);display:flex;align-items:center;gap:var(--space-sm)}.mode-button{width:100%;padding:var(--space-lg) var(--space-xl);border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);font-size:var(--text-base);cursor:pointer;transition:var(--transition-base)}.mode-button.primary{background:linear-gradient(135deg,var(--color-accent-primary),var(--color-accent-active));color:#fff;box-shadow:var(--shadow-sm)}.mode-button.primary:hover{background:linear-gradient(135deg,var(--color-accent-hover),var(--color-accent-primary));transform:translateY(-1px);box-shadow:var(--shadow-md),var(--shadow-glow)}.mode-button.secondary{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-primary)}.mode-button.secondary:hover{background:var(--color-bg-quaternary);border-color:var(--color-accent-primary);box-shadow:var(--shadow-sm)}.upload-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--space-2xl);background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);padding:var(--space-2xl);box-shadow:var(--shadow-sm)}.info-section h4{font-size:var(--text-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-lg) 0;display:flex;align-items:center;gap:var(--space-sm)}.file-types{display:flex;flex-direction:column;gap:var(--space-md)}.file-type{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--text-sm);color:var(--color-text-secondary);padding:var(--space-sm);background:var(--color-bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--color-border-secondary)}.tips{display:flex;flex-direction:column;gap:var(--space-md)}.tip{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.tip strong{color:var(--color-text-primary)}@media (max-width: 768px){.mode-cards,.upload-info{grid-template-columns:1fr}.mode-card{padding:1.5rem}.ingestion-mode-selector{padding:1rem}}.direct-upload-panel{padding:2rem;max-width:1200px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem}.page-header-content{display:flex;align-items:center;gap:1rem}.page-icon{font-size:2.5rem;display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:linear-gradient(135deg,var(--color-accent-primary),var(--color-accent-active));border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.page-title{font-size:var(--text-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;background:linear-gradient(135deg,var(--color-accent-primary),var(--color-info));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-subtitle{font-size:var(--text-lg);color:var(--color-text-secondary);margin:0;margin-top:var(--space-sm)}.back-button{padding:.75rem 1.5rem;background:var(--button-secondary-bg);color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease}.back-button:hover{background:var(--button-secondary-hover-bg);border-color:var(--primary-400);transform:translateY(-1px)}.file-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.file-type-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);padding:var(--space-2xl);cursor:pointer;transition:var(--transition-base);position:relative;overflow:hidden;box-shadow:var(--shadow-md)}.file-type-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--color-accent-subtle),rgba(59,130,246,.05));opacity:0;transition:var(--transition-base);z-index:0}.file-type-card:hover:before{opacity:1}.file-type-card:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-xl),var(--shadow-glow)}.file-type-card>*{position:relative;z-index:1}.file-type-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;background:linear-gradient(135deg,var(--color-accent-primary),var(--color-accent-active));border-radius:var(--radius-xl);margin-bottom:1.5rem}.file-type-emoji{font-size:2.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.file-type-title{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.file-type-description{font-size:1rem;color:var(--text-secondary);margin:0 0 1.5rem;line-height:1.5}.file-type-formats{font-size:.875rem;color:var(--text-muted);margin-bottom:2rem;padding:.5rem;background:var(--bg-secondary);border-radius:6px;text-align:center}.select-type-button{width:100%;padding:1rem 1.5rem;background:linear-gradient(135deg,var(--primary-500),var(--primary-600));color:#fff;border:none;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease}.select-type-button:hover{background:linear-gradient(135deg,var(--primary-600),var(--primary-700));transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--primary-500-rgb),.3)}.upload-content{max-width:800px;margin:0 auto}.upload-actions{margin-top:2rem;display:flex;justify-content:center}.upload-button{padding:1rem 2rem;background:linear-gradient(135deg,var(--success-500),var(--success-600));color:#fff;border:none;border-radius:8px;font-weight:600;font-size:1.125rem;cursor:pointer;transition:all .2s ease;min-width:200px}.upload-button:hover:not(:disabled){background:linear-gradient(135deg,var(--success-600),var(--success-700));transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--success-500-rgb),.3)}.upload-button:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.direct-upload-panel{padding:1rem}.page-header{flex-direction:column;gap:1rem;align-items:flex-start}.file-type-grid{grid-template-columns:1fr}.file-type-card{padding:1.5rem}}.schedule-board-header{position:relative;display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-lg);background:var(--color-bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--color-border-default);margin-bottom:var(--space-md)}.header-controls{position:absolute;top:var(--space-md);right:var(--space-md);display:flex;align-items:center;gap:var(--space-lg);z-index:10}.stepper-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin:0;white-space:nowrap}.stepper-value{display:flex;align-items:center;justify-content:center;min-width:32px;height:28px;padding:0 var(--space-xs);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);background:var(--color-bg-primary);border-left:1px solid var(--color-border-primary);border-right:1px solid var(--color-border-primary);font-family:var(--font-mono)}.density-control{display:flex;align-items:center;gap:var(--space-sm)}.density-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin:0;white-space:nowrap}.density-segmented{display:flex;background:var(--color-bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--color-border-primary);overflow:hidden}.density-segment{padding:var(--space-sm) var(--space-md);background:transparent;border:none;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border-right:1px solid var(--color-border-muted)}.density-segment:last-child{border-right:none}.density-segment:hover:not(.active){background:var(--color-bg-secondary);color:var(--color-text-primary)}.density-segment.active{background:var(--color-accent-primary);color:var(--color-text-inverse);font-weight:var(--font-weight-semibold)}:root{--row-min-h: 64px;--col-min-w: 160px}.density-compact{--row-height: var(--row-min-h, 48px);--col-width: var(--col-min-w, 120px)}.density-comfy{--row-height: var(--row-min-h, 64px);--col-width: var(--col-min-w, 160px)}.density-roomy{--row-height: var(--row-min-h, 80px);--col-width: var(--col-min-w, 200px)}.density-compact .slot-card{min-height:var(--row-min-h, 48px);padding:var(--space-xs)}.density-compact .slot-card .metric-number{font-size:20px}.density-compact .slot-card .metric-label{font-size:10px}.density-roomy .slot-card{min-height:var(--row-min-h, 80px);padding:var(--space-lg)}.density-roomy .slot-card .metric-number{font-size:32px}.density-roomy .slot-card .metric-label{font-size:14px}.density-compact .grid-cell{min-height:var(--row-min-h, 48px);min-width:var(--col-min-w, 120px)}.density-roomy .grid-cell{min-height:var(--row-min-h, 80px);min-width:var(--col-min-w, 200px)}@media (max-width: 1024px){.header-controls{position:static;justify-content:flex-end;margin-top:var(--space-md)}.density-segment{padding:var(--space-xs) var(--space-sm);font-size:var(--text-xs)}}@media (max-width: 768px){.schedule-board-header{padding:var(--space-md)}.header-controls{flex-direction:column;align-items:stretch;gap:var(--space-md)}.lines-stepper,.density-control{justify-content:center}.density-segmented{flex:1}.density-segment{flex:1;text-align:center}}@media (prefers-reduced-motion: reduce){.stepper-btn,.density-segment{transition:none}}@media (prefers-contrast: high){.stepper-controls,.density-segmented{border-width:2px}.density-segment.active{border:2px solid currentColor}}.grid-corner-cell{width:160px!important;padding:var(--space-sm, .5rem);background:var(--color-bg-primary, #0f1117);border-right:1px solid var(--color-border-default, #3a4356);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:var(--text-xs, .75rem);color:var(--color-text-tertiary, #9ca3af);flex-shrink:0}.corner-content{display:flex;flex-direction:column;align-items:center;gap:2px}.corner-label-primary{font-weight:600;font-size:11px}.corner-label-secondary{font-size:10px;opacity:.8}.schedule-board{display:flex;flex-direction:column;gap:var(--space-lg);padding:var(--space-lg);background:var(--color-bg-primary);min-height:100vh}.schedule-board-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2xl);gap:var(--space-md)}.loading-spinner{width:40px;height:40px;border:4px solid var(--color-border-muted);border-top:4px solid var(--color-accent);border-radius:50%;animation:spin 1s linear infinite}.schedule-board-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--color-bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--color-border-default)}.schedule-board-title h2{margin:0;color:var(--color-text-primary);font-size:var(--text-lg);font-weight:var(--font-weight-semibold)}.view-mode-controls{display:flex;align-items:center;gap:var(--space-lg)}.view-toggle{display:flex;background:var(--color-bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--color-border-default);overflow:hidden}.view-toggle-btn{padding:var(--space-sm) var(--space-md);background:transparent;border:none;color:var(--color-text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all .2s ease}.view-toggle-btn:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.view-toggle-btn.active{background:var(--color-accent-primary);color:var(--color-text-inverse)}.lines-stepper{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--color-border-primary)}.stepper-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:0}.stepper-controls{display:flex;align-items:center;gap:var(--space-xs);background:var(--color-bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--color-border-primary);overflow:hidden}.stepper-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast)}.stepper-btn:hover:not(:disabled){background:var(--color-accent-primary);color:var(--color-text-inverse)}.stepper-btn:disabled{opacity:.5;cursor:not-allowed}.stepper-value{display:flex;align-items:center;justify-content:center;min-width:32px;height:28px;padding:0 var(--space-xs);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);background:var(--color-bg-primary);border-left:1px solid var(--color-border-primary);border-right:1px solid var(--color-border-primary)}.schedule-build-badge{margin-left:var(--space-md);opacity:.8;transition:opacity .2s ease}.schedule-build-badge:hover{opacity:1}.schedule-board-content{flex:1;background:var(--color-bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--color-border-default);overflow:hidden}.schedule-grid-view{display:flex;flex-direction:column;height:100%}.grid-header{display:grid;grid-template-columns:160px repeat(5,minmax(200px,1fr));background:var(--color-bg-tertiary);border-bottom:2px solid var(--color-border-default);position:sticky;top:0;z-index:10;gap:0}.grid-corner-cell{width:160px;padding:var(--space-sm);background:var(--color-bg-primary);border-right:1px solid var(--color-border-default);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:var(--text-xs);color:var(--color-text-tertiary)}.corner-label{font-weight:var(--font-weight-medium)}.go-header{min-width:200px;padding:var(--space-sm);border-right:1px solid var(--color-border-default);text-align:center;background:linear-gradient(180deg,var(--color-bg-secondary) 0%,var(--color-bg-tertiary) 100%);position:sticky;top:0;z-index:15;border-bottom:1px solid var(--color-border-secondary);display:flex;flex-direction:column;justify-content:center;gap:var(--space-xs)}.go-title{font-weight:700;font-size:12px;color:var(--color-text-primary);line-height:1.2}.go-time{font-size:12px;color:var(--color-text-muted);font-family:var(--font-mono);line-height:1.2}.grid-body{flex:1;overflow-y:auto}.grid-row{display:grid!important;grid-template-columns:160px repeat(5,minmax(200px,1fr))!important;border-bottom:1px solid var(--color-border-muted);min-height:var(--row-height, 64px);gap:0}.grid-row:last-child{border-bottom:none}.line-cell{width:160px;position:sticky;left:0;z-index:10;background:var(--color-bg-secondary);border-right:1px solid var(--color-border-default);display:flex;align-items:center;justify-content:center;padding:var(--space-md) var(--space-sm);min-height:var(--row-height, 64px)}.line-badge{background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:12px;font-weight:var(--font-weight-medium);padding:var(--space-xs) var(--space-sm);border-radius:12px;border:1px solid var(--color-border-secondary);white-space:nowrap;text-align:center}.grid-cell{min-width:200px;min-height:var(--dynamic-item-height, 80px);height:var(--dynamic-item-height, 80px);border-right:1px solid var(--color-border-muted);position:relative;cursor:pointer;transition:all .2s ease;display:flex;align-items:stretch;width:100%;box-sizing:border-box}.grid-cell{overflow:visible}.grid-cell .multigo-slot-card{width:100%;height:100%}.grid-cell:hover{background:var(--color-bg-tertiary)}.grid-cell.selected{background:var(--color-accent-muted);border:2px solid var(--color-accent)}.grid-cell.drag-target{background:var(--color-success-muted)}.grid-cell.drag-target.invalid{background:var(--color-error-muted)}.grid-cell.drag-source{opacity:.6}.grid-cell.locked{background:var(--color-warning-muted)}.grid-cell.empty{background:var(--color-bg-primary)}.grid-cell.occupied{background:var(--color-bg-secondary)}.empty-cell{display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary);font-style:italic}.empty-slot{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs)}.empty-label{font-size:var(--text-sm)}.drop-feedback{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#000c;color:#fff;font-size:var(--text-sm);font-weight:var(--font-weight-medium);z-index:20}.drop-feedback.valid{background:#22c55ee6}.drop-feedback.invalid{background:#ef4444e6}.drop-valid{display:flex;align-items:center;gap:var(--space-xs)}.drop-invalid{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs)}.drop-errors{font-size:var(--text-xs);max-width:80%;text-align:center}.drop-error{margin-bottom:var(--space-xs)}.grid-legend{display:flex;gap:var(--space-lg);padding:var(--space-md);background:var(--color-bg-tertiary);border-top:1px solid var(--color-border-default)}.legend-section{flex:1}.legend-section h4{margin:0 0 var(--space-sm) 0;font-size:var(--text-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.legend-items{display:flex;gap:var(--space-md);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-xs);color:var(--color-text-secondary)}.legend-box{width:20px;height:20px;border-radius:var(--radius-sm);border:1px solid var(--color-border-default)}.legend-box.empty{background:var(--color-bg-primary)}.legend-box.occupied{background:var(--color-bg-secondary)}.legend-box.locked{background:var(--color-warning-muted)}.legend-box.conflict{background:var(--color-error-muted)}.legend-instructions{display:flex;flex-direction:column;gap:var(--space-xs);font-size:var(--text-xs);color:var(--color-text-secondary)}.drag-feedback-overlay{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:1000;display:flex;align-items:center;justify-content:center}.drag-feedback{background:#000000e6;color:#fff;padding:var(--space-md);border-radius:var(--radius-md);font-size:var(--text-sm);max-width:300px}.drag-feedback.valid{background:#22c55ee6}.drag-feedback.invalid{background:#ef4444e6}.drag-feedback ul{margin:var(--space-xs) 0 0 0;padding-left:var(--space-md);font-size:var(--text-xs)}.grid-header,.grid-row{position:relative}.grid-corner-cell,.line-cell{flex-shrink:0;width:var(--col-w, 240px)}.go-header,.grid-cell{flex-shrink:0;min-width:var(--col-w, 240px);min-height:var(--row-h, 96px)}@supports (zoom: 1.2){.schedule-grid-view{display:grid;grid-template-rows:auto 1fr}.grid-header{display:grid;grid-template-columns:var(--col-w, 240px) repeat(auto-fit,minmax(var(--col-w, 240px),1fr))}.grid-body{display:flex;flex-direction:column}.grid-row{display:grid!important;grid-template-columns:160px repeat(5,minmax(200px,1fr))!important}}@media (max-width: 1200px){.schedule-board-header{flex-direction:column;align-items:stretch}.grid-header{flex-direction:column}.grid-row{display:grid!important;grid-template-columns:160px repeat(5,minmax(200px,1fr))!important}.grid-corner-cell,.line-cell{width:100%}.go-header,.grid-cell{min-width:100%;min-height:var(--row-h, 96px)}}@media (max-width: 768px){.schedule-board{padding:var(--space-md);gap:var(--space-md)}.legend-items{flex-direction:column;gap:var(--space-sm)}}.schedule-grid-view .grid-row,.grid-body .grid-row,div.grid-row{display:grid!important;grid-template-columns:160px repeat(5,minmax(200px,1fr))!important}.schedule-board{display:flex;flex-direction:column;min-height:100vh;gap:var(--space-lg, 1rem);padding:var(--space-lg, 1rem)}.schedule-grid-view{display:flex!important;flex-direction:column!important;min-height:auto!important;background:var(--color-bg-secondary, #1a1f2e);border-radius:var(--radius-lg, 8px);overflow:visible}.grid-header{display:flex!important;flex-direction:row!important;background:var(--color-bg-tertiary, #252b3d);border-bottom:2px solid var(--color-border-default, #3a4356);position:sticky;top:0;z-index:10;align-items:stretch}.grid-body{display:block!important;overflow-y:visible!important}.grid-row{display:flex!important;flex-direction:row!important;border-bottom:1px solid var(--color-border-muted, #3a4356);min-height:80px;height:80px}.go-header{flex:1!important;min-width:200px!important;width:200px;padding:var(--space-sm, .5rem);border-right:1px solid var(--color-border-default, #3a4356);text-align:center;background:linear-gradient(180deg,var(--color-bg-secondary, #1a1f2e) 0%,var(--color-bg-tertiary, #252b3d) 100%);display:flex;flex-direction:column;justify-content:center;gap:var(--space-xs, .25rem);box-sizing:border-box}.grid-cell{flex:1!important;min-width:200px!important;width:200px;min-height:80px!important;height:80px!important;border-right:1px solid var(--color-border-muted, #3a4356);position:relative;display:flex!important;flex-direction:column!important;box-sizing:border-box}.line-cell{width:160px!important;position:sticky;left:0;z-index:10;background:var(--color-bg-secondary, #1a1f2e);border-right:1px solid var(--color-border-default, #3a4356);display:flex;align-items:center;justify-content:center;padding:var(--space-md, 1rem) var(--space-sm, .5rem);min-height:80px;height:80px}.grid-corner-cell{width:160px!important;min-width:160px!important;max-width:160px!important;padding:var(--space-sm, .5rem);background:var(--color-bg-tertiary, #252b3d)!important;border-right:1px solid var(--color-border-default, #3a4356);border-bottom:1px solid var(--color-border-default, #3a4356);display:flex!important;flex-direction:column;align-items:center;justify-content:center;font-size:var(--text-xs, .75rem);color:var(--color-text-secondary, #8a93a7)!important;font-weight:600;flex-shrink:0!important;flex-grow:0!important;position:relative;z-index:11;opacity:1!important;visibility:visible!important}.corner-content{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px}.corner-label-primary{font-size:var(--text-xs, .75rem)!important;font-weight:700!important;color:var(--color-text-primary, #e8edf7)!important;line-height:1.2}.corner-label-secondary{font-size:10px!important;font-weight:600!important;color:var(--color-text-tertiary, #9ca3af)!important;line-height:1.2;opacity:.8}.schedule-board .professional-schedule-header{background:var(--bg-elevated, #1c2130)!important;border:1px solid var(--border-primary, #2b3246)!important;border-radius:var(--radius-lg, 12px)!important;padding:var(--spacing-lg, 24px)!important;margin-bottom:var(--spacing-lg, 24px)!important;box-shadow:var(--shadow-sm)!important;overflow:hidden!important;width:100%!important;box-sizing:border-box!important;max-width:100%!important}.schedule-board .professional-schedule-header .header-main{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:var(--spacing-lg, 24px)!important;flex-wrap:wrap!important;width:100%!important;max-width:100%!important}.schedule-board .professional-schedule-header .header-title-section{flex:1!important;min-width:200px!important;max-width:100%!important}.schedule-board .professional-schedule-header .header-controls{display:flex!important;align-items:flex-end!important;gap:var(--spacing-md, 16px)!important;flex-wrap:wrap!important;flex-shrink:0!important;min-width:0!important;max-width:100%!important;overflow:hidden!important}@media (max-width: 1200px){.schedule-board .professional-schedule-header .header-main{align-items:center!important}.schedule-board .professional-schedule-header .header-controls{gap:var(--spacing-sm, 8px)!important}}@media (max-width: 768px){.schedule-board .professional-schedule-header .header-main{flex-direction:column!important;gap:var(--spacing-lg, 24px)!important;align-items:stretch!important}.schedule-board .professional-schedule-header .header-controls{flex-wrap:wrap!important;gap:var(--spacing-md, 16px)!important;justify-content:center!important;width:100%!important}}.compact-slot-card{display:flex;flex-direction:column;width:100%;height:100%;background:var(--color-bg-primary, #0f1117);border:1px solid var(--color-border-muted, #3a4356);border-radius:6px;padding:8px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;font-size:11px;line-height:1.2}.compact-slot-card:hover{border-color:var(--color-accent-primary, #3b82f6);background:var(--color-bg-secondary, #1a1f2e)}.compact-slot-card:focus{outline:2px solid var(--color-accent-primary, #3b82f6);outline-offset:1px}.compact-slot-card--empty{background:var(--color-bg-primary, #0f1117);border-style:dashed}.compact-slot-card--assigned{background:var(--color-bg-secondary, #1a1f2e);border-color:var(--color-success, #22c55e)}.compact-slot-card--locked{background:var(--color-bg-primary, #0f1117);border-color:var(--color-border-muted, #3a4356);color:var(--color-text-primary, #e8edf7)}.compact-slot-card--conflict{background:var(--color-error-muted, #fef2f2);border-color:var(--color-error, #ef4444)}.compact-slot-card--warning{background:var(--color-warning-muted, #fef3c7);border-color:var(--color-warning, #f59e0b)}.compact-slot-card--selected{border-color:var(--color-accent-primary, #3b82f6);box-shadow:0 0 0 2px #3b82f64d}.compact-slot-card--drag-target{border-color:var(--color-success, #22c55e);background:var(--color-success-muted, #d1fae5)}.compact-slot-card--drag-source{opacity:.6;transform:rotate(2deg)}.compact-slot-row{display:flex;align-items:center;justify-content:space-between;flex:1;min-height:0;gap:4px}.compact-slot-row-1{border-bottom:1px solid var(--color-border-muted, #3a4356);padding-bottom:2px;margin-bottom:2px}.compact-slot-time{font-weight:600;color:var(--color-text-primary, #e8edf7);font-family:var(--font-mono, "SF Mono", Consolas, monospace);font-size:10px;flex-shrink:0}.compact-slot-status{flex-shrink:0}.status-badge{padding:1px 4px;border-radius:3px;font-size:9px;font-weight:600;line-height:1;white-space:nowrap}.status-badge--assigned{background:var(--color-success-muted, #d1fae5);color:var(--color-success-dark, #166534)}.status-badge--locked{background:var(--color-warning-muted, #fef3c7);color:var(--color-warning-dark, #92400e)}.status-badge--conflict{background:var(--color-error-muted, #fef2f2);color:var(--color-error-dark, #b91c1c)}.status-badge--warning{background:var(--color-warning-muted, #fef3c7);color:var(--color-warning-dark, #92400e)}.compact-slot-row-2{flex:2;align-items:center;justify-content:center;text-align:center}.compact-slot-empty{display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--color-text-tertiary, #9ca3af)}.compact-slot-plus{font-size:16px;font-weight:300;line-height:1}.compact-slot-assignment{color:var(--color-text-secondary, #c7d2fe);font-weight:500;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.compact-slot-row-3{border-top:1px solid var(--color-border-muted, #3a4356);padding-top:2px;margin-top:2px;min-height:12px}.compact-slot-notes{font-size:9px;color:var(--color-text-tertiary, #9ca3af);font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;text-align:center}.compact-slot-lock-overlay{position:absolute;top:2px;right:2px;background:#000c;border-radius:3px;padding:1px 3px;z-index:5}.compact-slot-lock-icon{font-size:10px;line-height:1}.compact-slot-card--empty:hover .compact-slot-plus{color:var(--color-accent-primary, #3b82f6);transform:scale(1.1)}.compact-slot-card--assigned:hover .compact-slot-assignment{color:var(--color-text-primary, #e8edf7)}@media (max-width: 1200px){.compact-slot-card{font-size:10px;padding:6px}.compact-slot-time{font-size:9px}.status-badge{font-size:8px;padding:1px 3px}.compact-slot-notes{font-size:8px}}.schedule-board{overflow:visible!important;min-height:100vh!important;height:auto!important}.schedule-board-content{overflow:visible!important;height:auto!important;min-height:400px!important;flex:1!important}.schedule-grid-view{overflow:visible!important;height:auto!important;min-height:auto!important}.grid-body{overflow:visible!important;height:auto!important;max-height:none!important}.grid-row{opacity:1!important;visibility:visible!important;display:flex!important;min-height:80px!important;height:auto!important;margin-bottom:1px}.line-cell{background:var(--color-bg-secondary)!important;border:1px solid var(--color-border-default)!important}.line-badge{font-weight:600!important;color:var(--color-text-primary)!important;font-size:12px!important}.crew-modal-form{width:100%;max-width:600px}.slot-info-card{background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.slot-info-content h4{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-body-md);font-weight:600;color:var(--text-primary)}.slot-details{display:flex;flex-wrap:wrap;gap:var(--spacing-md);font-size:var(--text-body-sm);color:var(--text-secondary)}.slot-details span{background:var(--surface-primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--border-subtle)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.field-error{color:var(--error-primary);font-size:var(--text-body-xs);margin-top:var(--spacing-xs)}.field-help{font-size:var(--text-body-xs);color:var(--text-secondary);font-style:italic}.modal-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-subtle)}.error-message{background:var(--error-subtle);border:1px solid var(--error-primary);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.text-status-error{color:var(--error-primary);font-weight:500}.form-textarea-enhanced{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-primary);color:var(--text-high-contrast);font-size:var(--text-body-sm);font-family:inherit;transition:all .2s ease;resize:vertical}.form-textarea-enhanced:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary-alpha-20)}.form-textarea-enhanced::-moz-placeholder{color:var(--text-muted)}.form-textarea-enhanced::placeholder{color:var(--text-muted)}@media (max-width: 640px){.crew-modal-form{max-width:95vw}.slot-details{flex-direction:column;gap:var(--spacing-xs)}.modal-actions{flex-direction:column}}.multigo-slot-card{position:relative;display:flex;flex-direction:column;width:100%;height:100%;padding:var(--space-sm, .5rem);border:1px solid var(--color-border-muted, #3a4356);border-radius:var(--radius-sm, 4px);background:var(--color-bg-primary, #0f1117);color:var(--color-text-primary, #e8edf7);font-family:var(--font-family-base);font-size:var(--text-sm, .875rem);cursor:pointer;transition:all .2s ease;overflow:hidden;margin:0;box-sizing:border-box}.multigo-slot-card:hover{border-color:var(--color-accent-primary);box-shadow:0 2px 8px var(--color-accent-primary-alpha);transform:translateY(-1px)}.multigo-slot-card:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 2px var(--color-accent-primary-alpha)}.multigo-slot-card.slot-card--block{border-color:var(--color-accent-secondary);background:linear-gradient(135deg,var(--color-bg-primary) 0%,var(--color-bg-secondary) 100%)}.multigo-slot-card.slot-card--block-primary{border-color:var(--color-accent-primary);border-width:2px;background:linear-gradient(135deg,var(--color-accent-primary-alpha) 0%,var(--color-bg-primary) 100%);box-shadow:0 2px 8px var(--color-accent-primary-alpha)}.multigo-slot-card.slot-card--block-secondary{border-left:3px solid var(--color-accent-secondary);background:linear-gradient(90deg,var(--color-accent-secondary-alpha) 0%,var(--color-bg-primary) 20%)}.block-connection-indicator{position:absolute;top:0;left:0;right:0;height:4px;background:var(--color-accent-secondary);z-index:1}.block-start-cap{position:absolute;left:0;top:-2px;width:8px;height:8px;background:var(--color-accent-primary);border-radius:50%;z-index:2}.block-end-cap{position:absolute;right:0;top:-2px;width:8px;height:8px;background:var(--color-accent-primary);border-radius:50%;z-index:2}.block-connector{width:100%;height:4px;background:linear-gradient(90deg,var(--color-accent-primary) 0%,var(--color-accent-secondary) 50%,var(--color-accent-primary) 100%)}.block-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 var(--spacing-xs);background:var(--color-accent-primary);color:var(--color-text-inverse);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);border-radius:var(--border-radius-sm);margin-left:auto}.multigo-slot-card .slot-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs);gap:var(--spacing-xs)}.multigo-slot-card .slot-time{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);white-space:nowrap}.multigo-slot-main{flex:1;display:flex;align-items:center;justify-content:center;margin:var(--space-xs, .25rem) 0}.multigo-slot-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xs, .25rem);color:var(--color-text-tertiary, #9ca3af);font-size:var(--text-sm, .875rem)}.multigo-slot-plus{font-size:var(--text-lg, 1.125rem);font-weight:var(--font-weight-bold, 700);color:var(--color-accent-primary, #f97316)}.multigo-slot-card .slot-content{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.slot-card--size-1x{--card-typography-scale: .85;--card-padding-scale: .8;--card-spacing-scale: .7;width:100%}.slot-card--size-2x{--card-typography-scale: 1;--card-padding-scale: 1;--card-spacing-scale: 1;width:calc(200% + 1px);position:relative;z-index:10;box-shadow:0 2px 8px #00000026}.slot-card--size-3x{--card-typography-scale: 1.15;--card-padding-scale: 1.2;--card-spacing-scale: 1.3;width:calc(300% + 2px);position:relative;z-index:10;box-shadow:0 4px 16px #0003}.multigo-slot-card{--font-scale: var(--card-typography-scale, 1);--padding-scale: var(--card-padding-scale, 1);--spacing-scale: var(--card-spacing-scale, 1);font-size:calc(var(--text-sm, .875rem) * var(--font-scale));padding:calc(var(--space-sm, .5rem) * var(--padding-scale))}.block-primary-content{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.block-layout-single{display:flex;flex-direction:column;align-items:center;gap:calc(var(--spacing-xs) * var(--spacing-scale));text-align:center}.block-instructor-compact{font-size:calc(var(--font-size-xs) * var(--font-scale));font-weight:var(--font-weight-semibold);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.block-student-compact{font-size:calc(var(--font-size-xs) * var(--font-scale));color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.block-event-compact{font-size:calc(var(--font-size-xs) * var(--font-scale));color:var(--color-accent-primary);font-weight:var(--font-weight-medium);padding:2px 6px;background:var(--color-accent-primary-alpha);border-radius:var(--border-radius-sm)}.block-layout-double{display:flex;flex-direction:column;gap:calc(var(--spacing-sm) * var(--spacing-scale));width:100%;height:100%}.block-header-double{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm)}.block-instructor-prominent{font-size:calc(var(--font-size-sm) * var(--font-scale));font-weight:var(--font-weight-semibold);color:var(--color-text-primary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.block-goes-badge{font-size:calc(var(--font-size-xs) * var(--font-scale));color:var(--color-accent-primary);font-weight:var(--font-weight-medium);background:var(--color-accent-primary-alpha);padding:2px 8px;border-radius:var(--border-radius-sm);white-space:nowrap}.block-assignments-preview{display:flex;flex-direction:column;gap:calc(var(--spacing-xs) * var(--spacing-scale));flex:1}.assignment-preview-item{display:flex;justify-content:space-between;align-items:center;padding:calc(var(--spacing-xs) * var(--padding-scale));background:var(--color-bg-tertiary);border-radius:var(--border-radius-sm);font-size:calc(var(--font-size-xs) * var(--font-scale))}.assignment-preview-item .go-number{color:var(--color-text-secondary);font-weight:var(--font-weight-medium);min-width:30px}.assignment-preview-item .student-name{color:var(--color-text-primary);flex:1;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignment-preview-item .event-code{color:var(--color-accent-primary);font-weight:var(--font-weight-medium);min-width:50px;text-align:right}.block-layout-triple{display:flex;flex-direction:column;gap:calc(var(--spacing-md) * var(--spacing-scale));width:100%;height:100%;padding:calc(var(--spacing-sm) * var(--padding-scale))}.block-header-full{border-bottom:1px solid var(--color-border-default);padding-bottom:calc(var(--spacing-sm) * var(--spacing-scale))}.instructor-section{display:flex;align-items:center;gap:calc(var(--spacing-sm) * var(--spacing-scale))}.instructor-avatar{font-size:calc(var(--font-size-lg) * var(--font-scale));line-height:1}.instructor-details{flex:1;display:flex;flex-direction:column;gap:calc(var(--spacing-xs) * var(--spacing-scale))}.instructor-name{font-size:calc(var(--font-size-md) * var(--font-scale));font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.block-meta{font-size:calc(var(--font-size-xs) * var(--font-scale));color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.block-assignments-table{flex:1;display:flex;flex-direction:column;gap:calc(var(--spacing-xs) * var(--spacing-scale))}.assignments-header{display:grid;grid-template-columns:40px 1fr 60px;gap:calc(var(--spacing-xs) * var(--spacing-scale));padding:calc(var(--spacing-xs) * var(--padding-scale));background:var(--color-bg-secondary);border-radius:var(--border-radius-sm);font-size:calc(var(--font-size-xs) * var(--font-scale));font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.assignment-row{display:grid;grid-template-columns:40px 1fr 60px;gap:calc(var(--spacing-xs) * var(--spacing-scale));padding:calc(var(--spacing-xs) * var(--padding-scale));background:var(--color-bg-tertiary);border-radius:var(--border-radius-sm);font-size:calc(var(--font-size-xs) * var(--font-scale));transition:background-color .2s ease}.assignment-row:hover{background:var(--color-bg-secondary)}.go-cell{color:var(--color-text-secondary);font-weight:var(--font-weight-medium);text-align:center}.student-cell{color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-cell{color:var(--color-accent-primary);font-weight:var(--font-weight-medium);text-align:center;font-size:calc(var(--font-size-xs) * var(--font-scale) * .9)}.block-secondary-content{width:100%;text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.block-position-indicator{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-xs)}.slot-avatar-stack-minimal{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs)}.slot-avatar--student-small{font-size:var(--font-size-sm);opacity:.8}.slot-event-code-small{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);padding:2px var(--spacing-xs);background:var(--color-bg-tertiary);border-radius:var(--border-radius-sm);max-width:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.multigo-slot-card .slot-avatar-stack{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);flex-wrap:wrap}.multigo-slot-card .slot-avatar{font-size:var(--font-size-lg);line-height:1}.slot-avatar--instructor{opacity:1}.slot-avatar--student{opacity:.9}.slot-avatar--event{opacity:.8;font-size:var(--font-size-md)}.multigo-slot-card .slot-empty-icon{color:var(--color-text-tertiary);opacity:.6;transition:all .2s ease}.multigo-slot-card:hover .slot-empty-icon{color:var(--color-accent-primary);opacity:1;transform:scale(1.1)}.multigo-slot-card .slot-bottom{margin-top:auto;font-size:var(--font-size-xs);color:var(--color-text-secondary);text-align:center;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slot-card--block-primary .slot-bottom{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.multigo-slot-card .slot-chip{display:inline-flex;align-items:center;justify-content:center;padding:2px var(--spacing-xs);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap}.slot-chip--assigned,.slot-chip--block-assigned{background:var(--color-status-success-bg);color:var(--color-status-success)}.slot-chip--conflict{background:var(--color-status-error-bg);color:var(--color-status-error)}.slot-chip--warning{background:var(--color-status-warning-bg);color:var(--color-status-warning)}.slot-chip--locked{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.slot-card--block-start{border-top-left-radius:var(--border-radius-lg);border-bottom-left-radius:var(--border-radius-lg)}.slot-card--block-end{border-top-right-radius:var(--border-radius-lg);border-bottom-right-radius:var(--border-radius-lg)}.slot-card--block-middle{border-radius:var(--border-radius-sm)}.slot-card--block:hover{border-color:var(--color-accent-primary);box-shadow:0 4px 12px var(--color-accent-primary-alpha)}.slot-card--block-primary:hover{box-shadow:0 6px 16px var(--color-accent-primary-alpha);transform:translateY(-2px)}.multigo-slot-card.slot-card--selected{border-color:var(--color-accent-primary);background:var(--color-accent-primary-alpha);box-shadow:0 0 0 2px var(--color-accent-primary-alpha)}.slot-card--block.slot-card--selected{background:linear-gradient(135deg,var(--color-accent-primary-alpha) 0%,var(--color-accent-secondary-alpha) 100%)}.multigo-slot-card.slot-card--drag-source{opacity:.6;border-style:dashed;border-color:var(--color-accent-secondary)}.multigo-slot-card.slot-card--drag-target{border-color:var(--color-status-success);background:var(--color-status-success-bg);box-shadow:0 0 0 2px var(--color-status-success-alpha)}.multigo-slot-card .slot-lock-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:inherit;color:var(--color-text-inverse);z-index:10}.slot-lock-icon{font-size:var(--font-size-lg);margin-bottom:var(--spacing-xs)}.slot-lock-reason{font-size:var(--font-size-xs);text-align:center;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 768px){.multigo-slot-card{padding:calc(var(--spacing-xs) * var(--padding-scale))}.slot-card--size-2x{--card-typography-scale: .9;--card-spacing-scale: .8}.slot-card--size-3x{--card-typography-scale: .85;--card-spacing-scale: .7;--card-padding-scale: .9}.block-layout-double .assignment-preview-item{padding:calc(var(--spacing-xs) * .5)}.block-layout-triple{padding:calc(var(--spacing-xs) * .8)}.assignments-header{font-size:calc(var(--font-size-xs) * .8)}.assignment-row{padding:calc(var(--spacing-xs) * .7)}.block-badge{min-width:20px;height:16px;font-size:10px}}@media (max-width: 480px){.slot-card--size-2x{--card-typography-scale: .8;--card-spacing-scale: .6}.slot-card--size-3x{--card-typography-scale: .75;--card-spacing-scale: .5;--card-padding-scale: .8}.block-layout-triple .assignments-header{display:none}.assignment-row{grid-template-columns:30px 1fr 45px;padding:calc(var(--spacing-xs) * .5)}}.multigo-slot-card{transition:all .3s cubic-bezier(.4,0,.2,1)}.block-connection-indicator{transition:all .2s ease}.slot-card--block:hover .block-connection-indicator{background:var(--color-accent-primary);box-shadow:0 0 8px var(--color-accent-primary-alpha)}.multigo-slot-card:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.slot-card--block[aria-pressed=true]{background:var(--color-accent-primary-alpha)}@media (prefers-contrast: high){.slot-card--block{border-width:2px}.block-connection-indicator{height:6px}.slot-chip{border:1px solid currentColor}}.grid-cell-block{min-height:var(--dynamic-item-height, 120px);height:var(--dynamic-item-height, 120px);border-right:1px solid var(--color-border-muted);position:relative;cursor:pointer;transition:all .2s ease;display:flex;align-items:stretch}.grid-cell-block--2x{background:linear-gradient(135deg,var(--color-accent-primary-alpha) 0%,var(--color-bg-primary) 100%);border:2px solid var(--color-accent-primary);border-radius:var(--border-radius-md)}.grid-cell-block--3x{background:linear-gradient(135deg,var(--color-accent-primary-alpha) 0%,var(--color-bg-secondary) 50%,var(--color-bg-primary) 100%);border:2px solid var(--color-accent-primary);border-radius:var(--border-radius-lg);box-shadow:0 4px 16px #0003}.multi-go-block-card{width:100%;height:100%;display:flex;flex-direction:column;padding:var(--spacing-sm);gap:var(--spacing-sm)}.block-header-spanning{display:flex;align-items:center;justify-content:space-between;padding:4px 6px;background:var(--color-bg-secondary);border-radius:var(--border-radius-sm);border-bottom:1px solid var(--color-accent-primary);flex-shrink:0;height:24px}.instructor-info{display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.instructor-avatar{font-size:var(--font-size-lg);line-height:1}.instructor-name{font-size:12px;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.block-badge-spanning{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:16px;padding:0 4px;background:var(--color-accent-primary);color:var(--color-text-inverse);font-size:10px;font-weight:var(--font-weight-bold);border-radius:3px;margin:0 4px}.block-goes-info{font-size:10px;color:var(--color-text-secondary);font-weight:var(--font-weight-medium);white-space:nowrap}.block-assignments-spanning{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--spacing-sm);flex:1;align-content:start}.go-assignment-column{display:flex;flex-direction:column;justify-content:center;padding:4px;background:var(--color-bg-tertiary);border-radius:var(--border-radius-sm);border:1px solid var(--color-border-default);text-align:center;transition:all .2s ease;min-height:40px;max-height:45px}.go-assignment-column:hover{background:var(--color-bg-secondary);border-color:var(--color-accent-secondary);transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.assignment-compact{display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:center}.student-name{font-size:11px;color:var(--color-text-primary);font-weight:var(--font-weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.1}.event-code{display:inline-block;font-size:10px;color:var(--color-accent-primary);font-weight:var(--font-weight-semibold);background:var(--color-accent-primary-alpha);padding:1px 4px;border-radius:3px;white-space:nowrap;line-height:1.1}.grid-cell-block:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.grid-cell-block:hover .block-header-spanning{background:var(--color-bg-primary)}.grid-cell-block:hover .go-assignment-column{background:var(--color-bg-secondary)}@media (max-width: 768px){.block-assignments-spanning{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:var(--spacing-xs)}.instructor-name{font-size:var(--font-size-sm)}.block-badge-spanning{min-width:28px;height:20px;font-size:var(--font-size-xs)}.go-assignment-column{padding:var(--spacing-xs)}}@media (max-width: 480px){.multi-go-block-card{padding:var(--spacing-xs)}.block-header-spanning{flex-direction:column;gap:var(--spacing-xs);text-align:center}.instructor-info{justify-content:center}.block-assignments-spanning{grid-template-columns:1fr 1fr}}.grid-cell-block:focus-within{outline:2px solid var(--color-accent-primary);outline-offset:2px}.grid-cell-block.selected{border-color:var(--color-accent-primary);background:var(--color-accent-primary-alpha);box-shadow:0 0 0 3px var(--color-accent-primary-alpha)}.grid-cell-block{transition:all .3s cubic-bezier(.4,0,.2,1)}.go-assignment-column{transition:all .2s ease}.multigo-crew-modal-form{width:85vw;max-width:900px;max-height:90vh;overflow-y:auto;margin:0 auto}.slot-info-card{background:var(--color-bg-tertiary);border:1px solid var(--color-border-default);border-radius:var(--border-radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.slot-info-content h4{margin:0 0 var(--spacing-sm) 0;color:var(--color-text-primary);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.slot-details{display:flex;gap:var(--spacing-lg);flex-wrap:wrap;font-size:var(--font-size-sm)}.slot-details span{color:var(--color-text-secondary)}.slot-details strong{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.form-group{margin-bottom:var(--spacing-md)}.form-group .field-error{display:block;color:var(--color-status-error);font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.form-group .field-help{font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.multigo-assignment-table{margin:var(--spacing-md) 0}.multigo-assignment-table h4{margin:0 0 var(--spacing-md) 0;color:var(--color-text-primary);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.table-container{overflow-x:auto;border:1px solid var(--color-border-default);border-radius:var(--border-radius-md);background:var(--color-bg-primary)}.assignment-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.assignment-table th,.assignment-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border-default);vertical-align:top}.assignment-table th{background:var(--color-bg-secondary);color:var(--color-text-primary);font-weight:var(--font-weight-semibold);position:sticky;top:0;z-index:1}.assignment-table th:first-child{width:100px;min-width:80px}.go-header{background:var(--color-bg-tertiary);color:var(--color-text-primary);font-weight:var(--font-weight-semibold);text-align:center;border-left:1px solid var(--color-border-default)}.row-label{background:var(--color-bg-secondary);color:var(--color-text-primary);font-weight:var(--font-weight-medium);white-space:nowrap;border-right:1px solid var(--color-border-default)}.assignment-cell{border-left:1px solid var(--color-border-default);min-width:160px;width:auto;position:relative}.assignment-cell .enhanced-dropdown{width:100%;margin-bottom:var(--spacing-xs)}.assignment-cell .field-error{color:var(--color-status-error);font-size:var(--font-size-xs);margin-top:var(--spacing-xs);display:block}.assignment-cell .field-help{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:var(--spacing-xs)}.form-textarea-enhanced{width:100%;min-height:60px;padding:var(--spacing-sm);border:1px solid var(--color-border-default);border-radius:var(--border-radius-sm);background:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-family-base);font-size:var(--font-size-sm);resize:vertical;transition:border-color .2s ease}.form-textarea-enhanced:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 2px var(--color-accent-primary-alpha)}.form-textarea-enhanced::-moz-placeholder{color:var(--color-text-placeholder)}.form-textarea-enhanced::placeholder{color:var(--color-text-placeholder)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-default)}.error-message{padding:var(--spacing-md);background:var(--color-bg-error);border:1px solid var(--color-status-error);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-md)}.warning-message{padding:var(--spacing-md);background:var(--color-bg-warning);border:1px solid var(--color-status-warning);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-md)}@media (max-width: 768px){.multigo-crew-modal-form{width:95vw;max-width:100%;max-height:95vh;margin:0}.slot-details{flex-direction:column;gap:var(--spacing-sm)}.assignment-table th,.assignment-table td{padding:var(--spacing-sm);font-size:var(--font-size-xs)}.assignment-table th:first-child{width:70px;min-width:60px}.assignment-cell{min-width:140px}.modal-actions{flex-direction:column-reverse;gap:var(--spacing-sm)}.modal-actions .enhanced-button{width:100%}}@media (max-width: 480px){.multigo-crew-modal-form{width:98vw;padding:var(--spacing-sm)}.assignment-table th:first-child{width:60px;min-width:50px}.assignment-cell{min-width:120px}.assignment-table th,.assignment-table td{padding:var(--spacing-xs)}.table-container{font-size:var(--font-size-xs);border-radius:var(--border-radius-sm)}.slot-info-card{padding:var(--spacing-sm)}}.enhanced-dropdown.error .dropdown-trigger{border-color:var(--color-status-error)}.assignment-table .loading-cell{background:var(--color-bg-tertiary);color:var(--color-text-tertiary);font-style:italic;text-align:center}.assignment-table tbody tr:hover{background:var(--color-bg-secondary)}.assignment-table:focus-within{outline:2px solid var(--color-accent-primary);outline-offset:2px}.table-container:before,.table-container:after{content:"";position:absolute;top:0;bottom:0;width:20px;pointer-events:none;z-index:2}.table-container:before{left:0;background:linear-gradient(to right,var(--color-bg-primary),transparent)}.table-container:after{right:0;background:linear-gradient(to left,var(--color-bg-primary),transparent)}.assignment-table thead th{box-shadow:0 2px 4px #0000001a}.assignment-table .row-label{box-shadow:2px 0 4px #0000000d}.assignment-table tbody tr{transition:background-color .2s ease}.assignment-cell .enhanced-dropdown,.assignment-cell .form-textarea-enhanced{transition:all .2s ease}.availability-button-container{position:relative;width:100%;max-width:85px}.availability-button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.25rem .5rem;background:var(--surface-primary);border:1px solid transparent;border-radius:.375rem;color:var(--text-primary);font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);min-height:28px;gap:.25rem;box-shadow:0 1px 2px #0000000d}.availability-button:focus{outline:none;box-shadow:0 0 0 2px #ffffff80,0 0 0 4px var(--accent-primary-alpha)}.availability-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.availability-button.status-available{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border-color:#16a34a}.availability-button.status-available:hover{background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-1px);box-shadow:0 2px 8px #22c55e40}.availability-button.status-partial{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-color:#d97706}.availability-button.status-partial:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-1px);box-shadow:0 2px 8px #f59e0b40}.availability-button.status-unavailable{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border-color:#dc2626}.availability-button.status-unavailable:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px);box-shadow:0 2px 8px #ef444440}.availability-button.status-unknown{background:var(--surface-secondary);color:var(--text-secondary);border-color:var(--border-secondary)}.status-icon{font-size:.75rem;flex-shrink:0;color:inherit}.status-text{flex:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit;font-weight:600;font-size:.65rem;text-transform:uppercase;letter-spacing:.025em}.dropdown-arrow{font-size:.6rem;color:inherit;flex-shrink:0;opacity:.8}.availability-button.loading{opacity:.8;cursor:wait}.availability-button.loading .status-icon{animation:spin 1s linear infinite}.availability-dropdown{position:absolute;top:100%;left:0;right:0;z-index:1000;margin-top:.25rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:.5rem;box-shadow:0 4px 12px #00000026;overflow:hidden;animation:dropdown-open .2s ease}@keyframes dropdown-open{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.dropdown-option{display:flex;align-items:center;width:100%;padding:.5rem .625rem;background:var(--surface-primary);border:none;color:var(--text-primary);font-size:.7rem;font-weight:500;cursor:pointer;transition:all .2s ease;gap:.375rem;border-bottom:1px solid var(--border-secondary)}.dropdown-option:last-child{border-bottom:none}.dropdown-option:hover{background:var(--surface-hover)}.dropdown-option:focus{outline:none;background:var(--surface-hover)}.dropdown-option:disabled{opacity:.5;cursor:not-allowed;background:var(--surface-secondary)}.dropdown-option.status-available:not(:disabled):hover{background:var(--status-success-background, rgba(34, 197, 94, .1))}.dropdown-option.status-partial:not(:disabled):hover{background:var(--status-warning-background, rgba(245, 158, 11, .1))}.dropdown-option.status-unavailable:not(:disabled):hover{background:var(--status-error-background, rgba(239, 68, 68, .1))}.option-icon{font-size:1rem;flex-shrink:0}.option-text{flex:1;text-align:left;color:var(--text-primary);font-weight:500}.current-indicator{color:var(--accent-primary);font-size:.9rem;font-weight:700;flex-shrink:0}.dropdown-option.current{background:var(--surface-secondary);font-weight:600}@media (max-width: 768px){.availability-button-container{max-width:80px}.availability-button{padding:.2rem .375rem;min-height:26px}.status-text{font-size:.6rem}.dropdown-option{padding:.5rem;font-size:.65rem}}@media (max-width: 480px){.availability-button-container{max-width:75px}.availability-button{padding:.15rem .3rem;min-height:24px}.status-text{font-size:.55rem}.status-icon{font-size:.65rem}.dropdown-arrow{font-size:.5rem}}@media (prefers-color-scheme: dark){.availability-dropdown{box-shadow:0 4px 12px #0000004d}}@media (prefers-contrast: high){.availability-button{border-width:3px}.availability-dropdown{border-width:2px}.dropdown-option{border-bottom-width:2px}}.availability-status-light-container{position:relative;display:inline-flex;align-items:center;justify-content:center}.status-light-button{position:relative;width:40px;height:40px;border-radius:50%;border:2px solid transparent;background:var(--surface-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0003;overflow:visible;isolation:isolate;z-index:10;pointer-events:auto!important}.status-light-button:focus{outline:none;box-shadow:0 0 0 3px #ffffff1a,0 0 0 5px var(--accent-primary-alpha)}.status-light-button:disabled{opacity:.5;cursor:not-allowed}.status-light-button.active{box-shadow:0 0 0 2px var(--accent-primary-alpha),0 4px 8px #00000040}.status-light-icon{position:relative;z-index:1;font-size:14px;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;width:100%;height:100%;pointer-events:none!important}.status-light-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;border-radius:50%;opacity:0;transition:opacity .3s ease;pointer-events:none!important;z-index:-1}.status-light-button:before,.status-light-button:after{pointer-events:none!important}.status-light-icon,.status-light-glow{pointer-events:none!important}.status-light-button:hover .status-light-glow{opacity:1;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 0 currentColor}50%{box-shadow:0 0 0 8px #fff0}}.status-light-button.status-available{background:linear-gradient(135deg,#22c55e,#16a34a);border-color:#15803d;color:#22c55e}.status-light-button.status-available:hover{background:linear-gradient(135deg,#16a34a,#15803d);box-shadow:0 0 12px #22c55e80}.status-light-button.status-partial{background:linear-gradient(135deg,#f59e0b,#d97706);border-color:#b45309;color:#f59e0b}.status-light-button.status-partial:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 0 12px #f59e0b80}.status-light-button.status-unavailable{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#b91c1c;color:#ef4444}.status-light-button.status-unavailable:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 0 12px #ef444480}.status-light-button.loading .status-light-icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tooltip-panel{pointer-events:none!important}.status-light-tooltip{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%);z-index:var(--z-tooltip);pointer-events:none!important;animation:tooltip-appear .2s ease}.status-light-tooltip-portaled{position:fixed!important;bottom:auto!important;left:auto!important;transform:none!important}@keyframes tooltip-appear{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.tooltip-content{background:var(--surface-tertiary);border:1px solid var(--border-primary);border-radius:6px;padding:8px 12px;box-shadow:0 4px 12px #0000004d;display:flex;flex-direction:column;gap:4px;min-width:160px;max-width:200px}.tooltip-content strong{color:var(--text-primary);font-size:12px;font-weight:600}.tooltip-description{color:var(--text-secondary);font-size:11px;line-height:1.4}.tooltip-hint{color:var(--accent-primary);font-size:10px;font-style:italic;margin-top:2px}.tooltip-arrow{position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:12px;height:12px;background:var(--surface-tertiary);border:1px solid var(--border-primary);border-top:none;border-left:none;transform:translate(-50%) rotate(45deg)}.status-light-dropdown{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);z-index:var(--z-dropdown);background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:8px;box-shadow:0 8px 24px #0000004d;overflow:hidden;min-width:200px;animation:dropdown-appear .2s cubic-bezier(.4,0,.2,1)}.status-light-dropdown-portaled{position:fixed!important;top:auto!important;left:auto!important;transform:none!important}@keyframes dropdown-appear{0%{opacity:0;transform:translate(-50%) translateY(-8px) scale(.95)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.dropdown-header{padding:10px 12px;background:var(--surface-secondary);border-bottom:1px solid var(--border-primary);font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.dropdown-option{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;background:transparent;border:none;color:var(--text-primary);cursor:pointer;transition:all .2s ease;position:relative}.dropdown-option:hover:not(:disabled){background:var(--surface-hover)}.dropdown-option:disabled{opacity:.5;cursor:not-allowed}.dropdown-option.current{background:var(--surface-secondary)}.option-status-light{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:inset 0 1px 3px #0003}.option-icon{font-size:10px;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.option-content{flex:1;text-align:left;display:flex;flex-direction:column;gap:2px}.option-label{font-size:12px;font-weight:600;color:var(--text-primary)}.option-description{font-size:10px;color:var(--text-secondary);opacity:.8}.current-indicator{color:var(--accent-primary);font-size:14px;font-weight:700;flex-shrink:0}.dropdown-option.status-available:hover:not(:disabled){background:linear-gradient(90deg,rgba(34,197,94,.1) 0%,transparent 100%)}.dropdown-option.status-partial:hover:not(:disabled){background:linear-gradient(90deg,rgba(245,158,11,.1) 0%,transparent 100%)}.dropdown-option.status-unavailable:hover:not(:disabled){background:linear-gradient(90deg,rgba(239,68,68,.1) 0%,transparent 100%)}@media (max-width: 768px){.status-light-button{width:40px!important;height:40px!important}.status-light-icon{font-size:13px}.status-light-dropdown{min-width:180px}.dropdown-option{padding:8px 10px}.option-status-light{width:18px;height:18px}}@media (max-width: 480px){.status-light-button{width:40px!important;height:40px!important}.status-light-icon{font-size:12px}.status-light-dropdown{min-width:160px}.dropdown-header{padding:8px 10px;font-size:10px}.option-label{font-size:11px}.option-description{font-size:9px}}@media (prefers-contrast: high){.status-light-button{border-width:3px}.status-light-dropdown{border-width:2px}.status-light-button.status-available{border-color:#22c55e}.status-light-button.status-partial{border-color:#f59e0b}.status-light-button.status-unavailable{border-color:#ef4444}}#ui-portal-root{position:relative;z-index:1;pointer-events:none}.status-light-tooltip-portaled,.status-light-dropdown-portaled{pointer-events:auto}.status-light-tooltip-portaled{z-index:3000!important}.status-light-dropdown-portaled{z-index:2000!important}@media (prefers-color-scheme: dark){.status-light-button{box-shadow:0 2px 8px #0006}.status-light-dropdown{box-shadow:0 8px 32px #00000080}.tooltip-content{box-shadow:0 4px 16px #00000080}}.personnel-row-group{width:100%;border-bottom:1px solid var(--border-primary)}.personnel-row-group:last-child{border-bottom:none}.timeline-row.primary-row{background:var(--surface-primary);border-bottom:none}.timeline-row.primary-row:hover{background-color:var(--surface-hover)}.personnel-name-container{display:flex;align-items:center;gap:.25rem;width:100%}.expand-button{background:transparent;border:none;color:var(--text-secondary);font-size:.6rem;cursor:pointer;padding:.125rem;border-radius:.125rem;transition:all .2s ease;flex-shrink:0;width:12px;height:12px;display:flex;align-items:center;justify-content:center}.expand-button:hover{background:var(--surface-tertiary);color:var(--text-primary);transform:scale(1.1)}.expand-button.expanded{color:var(--accent-primary)}.expand-button.animating{color:var(--accent-primary);animation:spin .3s ease-in-out}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(180deg)}}.snivel-count-indicator{color:var(--text-secondary);font-size:.6rem;font-weight:500;background:var(--surface-tertiary);padding:.125rem .25rem;border-radius:.125rem;flex-shrink:0}.sub-rows-container{background:var(--surface-secondary);border-left:2px solid var(--accent-primary);margin-left:.5rem}.timeline-row.sub-row{background:var(--surface-secondary);border-bottom:1px solid var(--border-secondary);position:relative;opacity:.95}.timeline-row.sub-row:last-child{border-bottom:none}.timeline-row.sub-row:hover{background-color:var(--surface-tertiary)}.timeline-row.sub-row:before{content:"";position:absolute;left:-2px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,transparent 0%,var(--accent-primary) 20%,var(--accent-primary) 80%,transparent 100%)}.sub-personnel-info{background:var(--surface-secondary);padding-left:1rem;border-right-color:var(--border-secondary)}.sub-personnel-name{font-size:.65rem;color:var(--text-secondary);font-weight:500;font-style:italic}.sub-personnel-role{font-size:.6rem;color:var(--text-tertiary);font-weight:400}.sub-availability{background:var(--surface-secondary);border-right-color:var(--border-secondary)}.sub-availability-placeholder{display:flex;align-items:center;justify-content:center;font-size:.8rem;color:var(--text-tertiary);font-weight:300}.time-slot.sub-row-slot{opacity:.9;border-top:1px solid var(--border-secondary)}.time-slot.sub-row-slot.has-block{border-top:none}.block-label.sub-row-label{background:#000c;font-size:.65rem;padding:.2rem .4rem;min-width:50px;border:1px solid rgba(255,255,255,.4);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.personnel-row-group{position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:.5rem;overflow:hidden;pointer-events:auto}.personnel-row-group:hover{box-shadow:0 4px 12px #00000026}.personnel-row-group:hover .timeline-row.primary-row{background-color:var(--surface-hover)}.personnel-row-group:hover .timeline-row.sub-row{background-color:rgba(var(--surface-tertiary-rgb, 45, 45, 55),.8)}.timeline-row.primary-row{transition:background-color .2s ease,transform .2s ease}.timeline-row.sub-row{transition:background-color .2s ease,opacity .2s ease}.personnel-row-group:focus-within{outline:2px solid var(--accent-primary);outline-offset:2px}.sub-rows-container{animation:expand-rows .3s ease-out;overflow:hidden}@keyframes expand-rows{0%{opacity:0;max-height:0;transform:translateY(-10px)}to{opacity:1;max-height:500px;transform:translateY(0)}}@media (max-width: 768px){.personnel-name-container{flex-direction:row;align-items:center;gap:.2rem;width:100%}.expand-button{width:14px;height:14px;font-size:.65rem;flex-shrink:0;padding:.1rem}.snivel-count-indicator{font-size:.55rem;padding:.1rem .2rem;margin-left:auto}.sub-personnel-info{padding-left:.75rem}.sub-personnel-name{font-size:.6rem}.sub-personnel-role{font-size:.55rem}.block-label.sub-row-label{font-size:.6rem;padding:.15rem .3rem;min-width:35px}.expand-button:hover{transform:scale(1.2)}.sub-rows-container{margin-left:.375rem;border-left-width:2px}.timeline-row.sub-row:before{width:2px;left:-2px}}@media (max-width: 480px){.sub-rows-container{margin-left:.25rem;border-left-width:1px}.sub-personnel-info{padding-left:.5rem}.personnel-name-container{gap:.15rem;flex-wrap:wrap}.expand-button{width:12px;height:12px;font-size:.55rem;min-width:12px}.snivel-count-indicator{font-size:.5rem;padding:.075rem .15rem;white-space:nowrap}.personnel-name{min-width:0;flex:1}@keyframes expand-rows{0%{opacity:0;max-height:0;transform:translateY(-5px)}to{opacity:1;max-height:300px;transform:translateY(0)}}}.expand-button:focus{outline:2px solid var(--accent-primary);outline-offset:1px}@media (prefers-contrast: high){.sub-rows-container{border-left-width:3px}.timeline-row.sub-row:before{width:3px}.expand-button{border:1px solid var(--border-primary)}.block-label.sub-row-label{border-width:2px}}.personnel-row-group button,.personnel-row-group .clickable-snivel,.personnel-row-group .time-slot,.personnel-row-group .availability-button{pointer-events:auto;position:relative;z-index:10}.personnel-row-group .expand-button{pointer-events:auto;position:relative;z-index:15}.timeline-row{pointer-events:none}.timeline-row>*{pointer-events:auto}.availability-timeline{min-height:100vh;background:var(--surface-primary);color:var(--text-primary)}.page-header{padding:1.5rem 2rem;background:linear-gradient(135deg,var(--surface-secondary) 0%,var(--surface-tertiary) 100%);border-bottom:1px solid var(--border-primary);margin-bottom:0}.page-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem;display:flex;align-items:center;gap:.75rem}.page-title:before{content:"📅";font-size:1.5rem}.page-subtitle{font-size:.95rem;color:var(--text-secondary);font-weight:500;margin-bottom:0;opacity:.8}.timeline-controls{background:var(--surface-primary);border-bottom:1px solid var(--border-primary);padding:1rem 2rem;margin-bottom:0;box-shadow:0 1px 3px #0000001a}.controls-row{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}.date-navigation{display:flex;align-items:center;gap:.75rem}.date-input{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:.5rem;padding:.5rem .75rem;color:var(--text-primary);font-size:.875rem;min-width:150px}.date-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary-alpha)}.btn-icon{width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:600}.quick-filters{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-size:.875rem;font-weight:500;color:var(--text-secondary);white-space:nowrap}.checkbox-group{display:flex;gap:1rem}.checkbox-label{display:flex;align-items:center;gap:.375rem;font-size:.875rem;color:var(--text-primary);cursor:pointer}.checkbox-label input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--accent-primary)}.filter-select,.search-input{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:.375rem;padding:.375rem .75rem;color:var(--text-primary);font-size:.875rem;min-width:120px}.filter-select:focus,.search-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary-alpha)}.timeline-stats{display:flex;gap:.75rem;margin-top:1rem;flex-wrap:wrap}.stat-card{display:flex;flex-direction:column;align-items:center;gap:.125rem;padding:.5rem .75rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:.375rem;min-width:80px;box-shadow:0 1px 2px #0000000d}.stat-value{font-size:1.5rem;font-weight:700;color:var(--accent-primary);line-height:1}.stat-label{font-size:.75rem;font-weight:500;color:var(--text-secondary);text-align:center;line-height:1.2}.timeline-container{padding:0;overflow:hidden;width:100%;max-width:100%;background:var(--surface-primary);border-radius:.75rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:4rem 2rem;color:var(--text-secondary)}.timeline-grid{display:flex;flex-direction:column;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:.75rem;overflow:hidden;width:100%;max-width:100%;box-shadow:0 4px 12px #0000001a}.timeline-header{display:grid;grid-template-columns:160px 100px 1fr;border-bottom:2px solid var(--border-primary);background:var(--surface-tertiary);position:sticky;top:0;z-index:var(--z-sticky);width:100%;max-width:100vw;scrollbar-gutter:stable}.personnel-column-header{display:flex;align-items:center;justify-content:center;padding:.75rem;font-weight:600;color:var(--text-primary);border-right:1px solid var(--border-primary);background:var(--surface-tertiary);font-size:.75rem;min-height:56px}.time-slots-header{display:grid;grid-template-columns:repeat(72,minmax(8px,1fr));overflow:hidden;width:100%;margin:0;gap:0}.hour-header{display:flex;align-items:center;justify-content:center;padding:0;margin:0;font-size:.6rem;font-weight:600;color:var(--text-primary);text-align:center;background:var(--surface-tertiary);white-space:nowrap;box-sizing:border-box;width:100%;min-height:40px;writing-mode:horizontal-tb;transform:rotate(0)}.timeline-rows{min-height:600px;overflow-y:auto;overflow-x:visible;scrollbar-gutter:stable;scroll-behavior:smooth;display:flex;flex-direction:column;width:100%}.timeline-row{display:grid;grid-template-columns:160px 100px 1fr;border-bottom:1px solid var(--border-primary);transition:background-color .2s ease;min-height:64px;height:auto;align-items:center;width:100%;max-width:100vw;position:relative;z-index:1}.timeline-row:hover{background-color:var(--surface-hover)}.timeline-row:last-child{border-bottom:none}.personnel-info{display:flex;flex-direction:column;justify-content:center;padding:.75rem;border-right:1px solid var(--border-primary);background:var(--surface-secondary);min-height:64px;height:auto;gap:.375rem}.personnel-name{font-weight:600;color:var(--text-primary);margin-bottom:.125rem;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.4}.personnel-role{display:none}.conflict-indicator{display:inline-flex;align-items:center;gap:.25rem;color:var(--status-warning);font-size:.75rem;font-weight:600}.personnel-availability{font-size:.75rem;color:var(--text-tertiary);line-height:1.3;font-weight:500}.time-blocks-container{position:relative;display:grid;grid-template-columns:repeat(72,minmax(8px,1fr));height:64px;min-height:64px;overflow:visible;width:100%;gap:0}.background-slots-grid{display:contents}.floating-labels-overlay{position:absolute!important;top:10px!important;left:260px!important;right:0!important;width:calc(100% - 260px)!important;display:grid!important;grid-template-columns:repeat(72,minmax(8px,1fr))!important;z-index:1000!important;pointer-events:none!important;height:40px!important;max-height:40px!important;overflow:visible!important;background:transparent!important;border:none!important}.time-slot{height:56px;border-right:none;position:relative;transition:all .2s ease;display:flex;align-items:center;justify-content:center;overflow:visible}.background-slots-grid .time-slot{cursor:default;pointer-events:none}.time-slot:nth-child(4n).empty{border-right:1px solid var(--border-secondary)}.time-slot:nth-child(8n).empty{border-right:2px solid var(--border-primary)}.time-slot.empty{background:var(--surface-primary)}.time-slot.has-block{position:relative;border-radius:0;box-shadow:none;border-right:none;border-top:none;border-bottom:none;border-left:none;transition:all .2s ease}.time-slot.has-block:has(.block-label){z-index:2}.time-slot.has-block.block-end{border-right:2px solid rgba(255,255,255,.3)}.time-slot.has-block:hover{transform:translateY(-1px);z-index:8;box-shadow:0 4px 12px #00000040;transition:all .2s cubic-bezier(.4,0,.2,1)}.time-slot.has-block:hover .block-label{transform:translate(-50%,-50%) scale(1.05);background:#000000d9;border-color:#fff6}.time-slot:hover{opacity:.9!important;outline:2px solid var(--accent-primary-alpha);z-index:10}.block-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.75rem;font-weight:600;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.9);text-align:center;white-space:nowrap;overflow:visible;padding:.3rem .6rem;pointer-events:none;z-index:100;background:#000000fa;border-radius:.3rem;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);width:-moz-max-content;width:max-content;min-width:60px;max-width:none;border:1px solid rgba(255,255,255,.4);box-shadow:0 2px 8px #00000080}.floating-block-label{display:flex!important;align-items:center!important;justify-content:center!important;background:#000000d9!important;color:#fff!important;font-size:.75rem!important;font-weight:600!important;border-radius:.375rem!important;padding:.25rem .5rem!important;margin:0 2px!important;pointer-events:auto!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important;border:1px solid rgba(255,255,255,.2)!important;cursor:pointer!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;min-height:24px!important;height:24px!important;max-height:24px!important;width:auto!important;max-width:calc(100% - 4px)!important;box-shadow:0 2px 8px #0000004d!important;text-shadow:none!important;line-height:1.2!important;z-index:1001!important;position:relative!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important;transform:translateZ(0)!important}.floating-block-label:hover{background:#000000f2;transform:translateY(-2px) translateZ(0);box-shadow:0 4px 16px #0006;border-color:#fff6;z-index:202;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.floating-block-label:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.floating-block-label .label-text{display:block;width:100%;text-align:center;overflow:hidden;text-overflow:ellipsis}.block-hover-tooltip{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:.5rem;padding:.75rem;box-shadow:0 8px 25px #0000004d;max-width:300px;min-width:200px;animation:fadeInUp .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.block-hover-tooltip .tooltip-content{display:flex;flex-direction:column;gap:.5rem}.block-hover-tooltip .tooltip-title{margin:0;font-size:.875rem;font-weight:600;color:var(--color-text-primary);line-height:1.3}.block-hover-tooltip .tooltip-description{margin:0;font-size:.75rem;color:var(--color-text-secondary);line-height:1.4}.block-hover-tooltip .tooltip-meta{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.block-hover-tooltip .time-range{font-size:.7rem;color:var(--color-text-tertiary);font-weight:500}.block-hover-tooltip .block-type{font-size:.65rem;color:var(--color-text-tertiary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.block-hover-tooltip .hover-hint{font-size:.7rem;color:var(--accent-primary);font-weight:500;font-style:italic;text-align:center;margin-top:.25rem}.block-hover-tooltip .tooltip-arrow{width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid var(--color-bg-secondary)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.timeline-legend{margin-top:2rem;padding:0 2rem}.timeline-legend h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.legend-items{display:flex;gap:1.5rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem}.legend-color{width:1rem;height:1rem;border-radius:.25rem;border:1px solid var(--border-primary)}.legend-item span{font-size:.875rem;color:var(--text-secondary)}.error-container{display:flex;align-items:center;justify-content:center;padding:4rem 2rem}.error-message{text-align:center;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:.75rem;padding:2rem;max-width:500px}.error-message h3{color:var(--status-error);margin-bottom:.75rem}.error-message p{color:var(--text-secondary);margin-bottom:1.5rem}@media (max-width: 1200px){.controls-row{flex-direction:column;align-items:stretch;gap:1rem}.date-navigation,.quick-filters,.timeline-stats{justify-content:center}}@media (max-width: 768px){.timeline-controls{padding:1rem}.timeline-container{padding:0}.timeline-grid{width:100%}.timeline-header,.timeline-row{grid-template-columns:140px 90px 1fr}.personnel-column-header,.personnel-info{padding:.5rem;min-height:56px}.personnel-name{font-size:.85rem}.hour-header{font-size:.65rem;font-weight:600;padding:0}.time-slots-header{grid-template-columns:repeat(72,1fr)}.time-blocks-container{grid-template-columns:repeat(72,1fr);height:56px}.time-slot{height:48px}.personnel-info{min-height:56px;padding:.5rem}.availability-status{min-width:100px;padding:.375rem}.block-label{font-size:.65rem;padding:.2rem .4rem;min-width:40px;width:-moz-max-content;width:max-content;max-width:120px;z-index:60}.floating-labels-overlay{top:10px!important;left:230px!important;width:calc(100% - 230px)!important}.floating-block-label{font-size:.65rem;padding:.2rem .4rem;min-height:20px;height:20px;margin:0 1px;border-radius:.25rem}.block-hover-tooltip{max-width:250px;min-width:180px;padding:.5rem}}@media (max-width: 480px){.floating-labels-overlay{top:10px!important;left:200px!important;width:calc(100% - 200px)!important}.floating-block-label{font-size:.6rem;padding:.15rem .3rem;min-height:18px;height:18px;border-radius:.2rem;margin:0 .5px}.block-hover-tooltip{max-width:220px;min-width:160px}}@media (prefers-color-scheme: dark){.timeline-grid{border-color:var(--border-primary)}.time-slot.empty{background:var(--surface-primary)}.time-slot:nth-child(4n){border-right-color:var(--border-secondary)}.block-label{text-shadow:0 1px 3px rgba(0,0,0,.5)}}@media print{.timeline-controls{display:none}.timeline-container{padding:0}.timeline-rows{max-height:none;overflow:visible}.timeline-row:hover{background-color:transparent}.time-slot:hover{opacity:1!important;outline:none}}.availability-status-header{background:var(--surface-secondary);border-bottom:2px solid var(--border-primary);padding:1rem;font-weight:600;font-size:.75rem;color:var(--text-secondary);text-align:center;position:sticky;top:0;z-index:2;text-transform:uppercase;letter-spacing:.5px}.availability-status{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.5rem;border-right:1px solid var(--border-primary);min-width:100px;text-align:center}.availability-badge{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:.375rem;font-size:.75rem;font-weight:600;text-transform:capitalize;white-space:nowrap;border:1px solid transparent}.availability-badge.available{background:var(--status-success-background, #dcfce7);color:var(--status-success-text, #166534);border-color:var(--status-success-border, #bbf7d0)}.availability-badge.ground_sims_only{background:var(--color-checkride-amber, #fef3c7);color:var(--color-surface-primary, #92400e);border-color:var(--color-checkride-amber, #fcd34d)}.availability-badge.not_available{background:var(--status-error-background, #fef2f2);color:var(--status-error-text, #dc2626);border-color:var(--status-error-border, #fecaca)}.availability-status .btn-secondary{padding:.25rem .5rem;font-size:.7rem;min-width:70px;max-width:90px}.availability-badge{padding:.15rem .3rem;font-size:.65rem}.snivel-count-btn{background:var(--surface-tertiary);border:1px solid var(--border-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.7rem;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.snivel-count-btn:hover{background:var(--accent-primary);color:var(--color-white);border-color:var(--accent-primary)}.clickable-block{position:relative;transition:all .2s ease;z-index:12}.clickable-block:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026;z-index:15}.click-hint{opacity:0;transition:opacity .2s ease;font-size:.8rem}.clickable-block:hover .click-hint{opacity:1}.snivel-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000040;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fade-in .2s ease}.snivel-modal{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:.75rem;box-shadow:0 10px 25px #00000040;max-width:600px;width:90vw;max-height:80vh;overflow:hidden;animation:slide-up .2s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-border-primary);background:var(--color-bg-tertiary)}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text-primary);flex:1}.close-btn{background:transparent;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .2s ease}.close-btn:hover{background:var(--surface-tertiary);color:var(--text-primary)}.modal-body{padding:1.5rem;max-height:60vh;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--color-border-primary);background:var(--color-bg-tertiary)}.snivel-details{display:flex;flex-direction:column;gap:1.5rem}.detail-section{background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:.5rem;padding:1rem}.detail-section h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text-primary)}.detail-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-item label{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.detail-item span{font-size:.875rem;color:var(--text-primary);font-weight:500}.note-content{background:var(--surface-tertiary);border:1px solid var(--border-primary);border-radius:.375rem;padding:.75rem;font-size:.875rem;color:var(--text-primary);line-height:1.5;white-space:pre-wrap}.availability-controls{display:flex;flex-direction:column;gap:1rem}.current-status{display:flex;align-items:center;gap:.75rem}.current-status label{font-size:.875rem;font-weight:600;color:var(--text-secondary)}.status-options{display:flex;flex-direction:column;gap:.5rem}.status-options label{font-size:.875rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem}.radio-group{display:flex;flex-direction:column;gap:.5rem}.radio-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem;border-radius:.375rem;transition:background-color .2s ease}.radio-option:hover{background:var(--surface-tertiary)}.radio-option input[type=radio]{margin:0}.radio-label{display:flex;align-items:center}.interpretation-info{display:flex;flex-direction:column;gap:.5rem}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.timeline-header,.timeline-row{grid-template-columns:140px 110px 1fr}.availability-status{min-width:110px;padding:.5rem}.snivel-modal{width:95vw;max-height:90vh}.modal-header,.modal-body{padding:1rem}.detail-grid{grid-template-columns:1fr}}@media (max-width: 480px){.timeline-container{overflow:hidden}.timeline-grid{width:100%}.timeline-header,.timeline-row{grid-template-columns:120px 80px 1fr}.time-slots-header,.time-blocks-container{grid-template-columns:repeat(72,minmax(6px,1fr))}.availability-status-header{padding:.375rem;font-size:.75rem}.availability-status{min-width:90px;padding:.25rem}.hour-header{font-size:.6rem}.personnel-name{font-size:.75rem}.block-label{font-size:.6rem;padding:.15rem .3rem;min-width:30px;max-width:100px}}.grid-debugger{min-height:100vh;background:var(--surface-primary);color:var(--text-primary);padding:2rem}.debug-header{text-align:center;margin-bottom:2rem;padding:2rem;background:var(--surface-secondary);border-radius:.75rem;border:1px solid var(--border-primary)}.debug-header h1{font-size:2rem;font-weight:700;color:var(--accent-primary);margin-bottom:.5rem}.debug-header p{color:var(--text-secondary);margin-bottom:1rem}.measure-btn{background:var(--accent-primary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;font-size:1rem}.measure-btn:hover{opacity:.9}.debug-timeline-container{padding:0;overflow-x:hidden;overflow-y:hidden;width:100%;max-width:none;background:var(--surface-primary);border-radius:.75rem;margin-bottom:2rem}.debug-timeline-grid{display:flex;flex-direction:column;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:.75rem;overflow:hidden;width:100%;max-width:100%;box-shadow:0 4px 12px #0000001a}.debug-timeline-header{display:grid;grid-template-columns:180px 1fr;border-bottom:2px solid var(--border-primary);background:var(--surface-tertiary)}.debug-personnel-column-header{display:flex;align-items:center;justify-content:center;padding:.5rem;font-weight:600;color:var(--text-primary);border-right:1px solid var(--border-primary);background:var(--surface-tertiary);font-size:.8rem;min-height:40px}.debug-time-slots-header{display:grid;grid-template-columns:repeat(75,minmax(0,1fr));overflow:hidden}.debug-hour-header{display:flex;align-items:center;justify-content:center;padding:.25rem .125rem;font-size:.5rem;font-weight:600;color:var(--text-secondary);border-right:1px solid var(--border-primary);text-align:center;background:var(--surface-tertiary);grid-column:span 4;overflow:hidden;white-space:nowrap}.debug-hour-header-last{grid-column:span 3;border-right:none}.debug-timeline-row{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid var(--border-primary)}.debug-personnel-info{display:flex;flex-direction:column;justify-content:center;padding:.5rem;border-right:1px solid var(--border-primary);background:var(--surface-secondary);min-height:50px;gap:.125rem}.debug-personnel-name{font-weight:600;color:var(--text-primary);margin-bottom:.25rem;font-size:.875rem}.debug-time-blocks-container{display:grid;grid-template-columns:repeat(75,minmax(0,1fr));position:relative;height:50px;overflow:visible;min-width:100%}.debug-time-slot{height:50px;border-right:1px solid var(--border-primary);position:relative;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;overflow:visible;background:var(--surface-primary);font-size:.4rem;color:var(--text-secondary);font-weight:600}.debug-time-slot:nth-child(4n){border-right:2px solid var(--accent-primary)}.debug-time-slot:hover{background:var(--accent-primary-alpha);color:var(--accent-primary)}.debug-analysis{margin-bottom:2rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:.75rem;padding:1.5rem}.debug-analysis h2{color:var(--accent-primary);margin-bottom:1rem;font-size:1.5rem}.analysis-text{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:.5rem;padding:1rem;font-family:Courier New,monospace;font-size:.8rem;line-height:1.4;white-space:pre-wrap;overflow-x:auto;color:var(--text-primary);max-height:400px;overflow-y:auto}.debug-measurements{display:flex;flex-direction:column;gap:2rem}.measurement-section{background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:.75rem;padding:1.5rem}.measurement-section h3{color:var(--accent-primary);margin-bottom:1rem;font-size:1.25rem}.measurement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;max-height:400px;overflow-y:auto}.measurement-item{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:.5rem;padding:1rem;font-size:.8rem;line-height:1.4}.measurement-item strong{color:var(--accent-primary);display:block;margin-bottom:.5rem}@media (max-width: 768px){.grid-debugger{padding:1rem}.debug-timeline-header,.debug-timeline-row{grid-template-columns:160px 1fr}.debug-personnel-column-header,.debug-personnel-info{padding:.375rem;min-height:40px}.debug-personnel-name{font-size:.7rem}.debug-hour-header{font-size:.45rem;padding:.25rem .125rem}.debug-time-slots-header{grid-template-columns:repeat(75,minmax(0,1fr))}.debug-time-blocks-container{grid-template-columns:repeat(75,minmax(0,1fr));height:40px}.debug-time-slot{height:40px;font-size:.35rem}.measurement-grid{grid-template-columns:1fr}}.schedule-slot-card{display:flex;flex-direction:column;height:100%;padding:var(--space-sm);border-radius:var(--radius-md);border:1px solid var(--color-border-muted);background:var(--color-bg-secondary);transition:all .2s ease;position:relative;overflow:hidden;cursor:pointer;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.schedule-slot-card:hover{border-color:var(--color-border-default);box-shadow:0 2px 8px #0000001f}.schedule-slot-card.assigned{background:var(--color-bg-primary);border-color:var(--color-border-default)}.schedule-slot-card.draft{border-left:3px solid var(--color-info)}.schedule-slot-card.locked{border-left:3px solid var(--color-warning);background:var(--color-warning-muted)}.schedule-slot-card.confirmed{border-left:3px solid var(--color-success)}.schedule-slot-card.has-conflicts{border-left:3px solid var(--color-error);box-shadow:0 0 0 1px var(--color-error-muted)}.schedule-slot-card.empty{background:var(--color-bg-tertiary);border-style:dashed;border-color:#94a3b84d;display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary)}.schedule-slot-card.selected{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary-alpha-20)}.schedule-slot-card.drag-target{border-color:var(--accent-primary);background:var(--accent-primary-alpha-10);box-shadow:0 0 0 2px var(--accent-primary-alpha-30);transform:scale(1.02)}.schedule-slot-card.drag-source{opacity:.6;transform:scale(.98);box-shadow:var(--shadow-lg)}.schedule-slot-card.dragging{opacity:.8;transform:scale(1.05) rotate(2deg);box-shadow:var(--shadow-xl);z-index:1000;cursor:grabbing!important}.schedule-slot-card.locked{cursor:not-allowed!important}.drag-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--accent-primary-alpha-20);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);z-index:10}.drag-indicator{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);color:var(--accent-primary);font-weight:600;font-size:var(--text-body-sm)}.drag-indicator span:first-child{font-size:1.5rem;animation:bounce .6s ease-in-out infinite alternate}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-4px)}}.schedule-slot-card[draggable=true]{cursor:move}.schedule-slot-card[draggable=true]:hover{cursor:grab}.schedule-slot-card[draggable=true]:active{cursor:grabbing}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--color-border-muted)}.slot-time{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.card-status-indicators{display:flex;gap:var(--space-xs)}.lock-icon,.auto-icon,.manual-icon{font-size:var(--text-xs);opacity:.7}.assignment-content{flex:1;display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.assignment-line{display:flex;align-items:center;gap:8px;font-size:var(--text-sm)}.assignment-icon{font-size:var(--text-sm);width:16px;text-align:center;flex-shrink:0}.assignment-text{flex:1;font-weight:var(--font-weight-medium);color:var(--color-text-primary);truncate:true;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.instructor-line .assignment-text{color:var(--color-info)}.student-line .assignment-text{color:var(--color-success)}.event-line .assignment-text{color:var(--color-accent)}.assignment-separator{text-align:center;color:var(--color-text-tertiary);font-size:var(--text-xs);font-weight:var(--font-weight-medium)}.badges-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.intention-badge{padding:2px var(--space-xs);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-weight-medium);color:#fff;background:var(--color-info)}.intention-badge.sortie_target{background:var(--color-accent)}.intention-badge.time_preference{background:var(--color-warning)}.intention-badge.special_request{background:var(--color-info)}.qualification-badge{display:flex;align-items:center;gap:2px;padding:2px var(--space-xs);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-weight-medium);border:1px solid var(--color-border-default)}.qualification-badge.valid{background:var(--color-success-muted);color:var(--color-success);border-color:var(--color-success)}.qualification-badge.expires_soon{background:var(--color-warning-muted);color:var(--color-warning);border-color:var(--color-warning)}.qualification-badge.expired,.qualification-badge.missing{background:var(--color-error-muted);color:var(--color-error);border-color:var(--color-error)}.qual-icon,.qual-label{font-size:var(--text-xs)}.conflict-badge{display:flex;align-items:center;gap:2px;padding:2px var(--space-xs);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-weight-medium);color:#fff}.conflict-badge.error{background:var(--color-error)}.conflict-badge.warning{background:var(--color-warning)}.conflict-icon{font-size:var(--text-xs)}.conflict-count{font-size:var(--text-xs);font-weight:var(--font-weight-bold)}.assignment-reason{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs);background:var(--color-bg-tertiary);border-radius:var(--radius-sm);margin-top:auto}.reason-icon{font-size:var(--text-xs);color:var(--color-text-tertiary)}.reason-text{font-size:var(--text-xs);color:var(--color-text-secondary);font-style:italic;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-slot-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xs);flex:1}.empty-icon{font-size:var(--text-lg);color:var(--color-text-tertiary);opacity:.5}.empty-text{font-size:var(--text-sm);color:var(--color-text-tertiary);font-weight:var(--font-weight-medium)}.lock-indicator{position:absolute;top:var(--space-xs);right:var(--space-xs);display:flex;align-items:center;gap:var(--space-xs);padding:2px var(--space-xs);background:var(--color-warning);color:#fff;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-weight-medium)}.lock-reason{max-width:80px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-slot-card:focus{outline:2px solid var(--color-accent);outline-offset:2px}.schedule-slot-card.assigned:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.schedule-slot-card.empty:hover{background:var(--color-bg-secondary);border-color:var(--color-accent);box-shadow:0 2px 12px #00000014}@keyframes dragPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.schedule-slot-card[draggable=true]:active{animation:dragPulse .3s ease-in-out}@media (max-width: 768px){.schedule-slot-card{padding:var(--space-xs)}.assignment-content{gap:2px}.assignment-line{font-size:var(--text-xs)}.badges-row{gap:2px}.intention-badge,.qualification-badge,.conflict-badge{font-size:10px;padding:1px 4px}}.assignment-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:modalOverlayEnter .2s ease-out}@keyframes modalOverlayEnter{0%{opacity:0}to{opacity:1}}.assignment-modal{background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:90vw;max-width:600px;max-height:90vh;overflow:hidden;animation:modalEnter .3s ease-out}@keyframes modalEnter{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--border-subtle);background:var(--surface-subtle)}.modal-title h2{margin:0;font-size:var(--text-heading-md);font-weight:600;color:var(--text-high-contrast)}.slot-info{margin-top:var(--spacing-xs);font-size:var(--text-body-sm);color:var(--text-secondary);font-weight:500}.close-button{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all .2s ease;line-height:1}.close-button:hover{background:var(--surface-hover);color:var(--text-high-contrast)}.close-button:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.assignment-modal>div:not(.modal-header):not(.modal-actions){padding:var(--spacing-lg);max-height:calc(90vh - 140px);overflow-y:auto}.slot-window{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--surface-subtle);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.slot-window h3{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-body-md);font-weight:600;color:var(--text-primary)}.slot-window-details{font-family:var(--font-mono);font-size:var(--text-body-sm);color:var(--text-secondary);background:var(--surface-primary);padding:var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--border-subtle)}.assignment-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.form-field{flex:1;min-width:200px;display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-field label{font-size:var(--text-body-sm);font-weight:500;color:var(--text-primary)}.form-field select{padding:var(--spacing-sm);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-primary);color:var(--text-high-contrast);font-size:var(--text-body-sm);transition:all .2s ease}.form-field select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary-alpha-20)}.form-field select:disabled{opacity:.6;cursor:not-allowed;background:var(--surface-subtle)}.lock-controls{padding:var(--spacing-md);background:var(--surface-subtle);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.lock-checkbox{margin-bottom:var(--spacing-md)}.lock-checkbox label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--text-body-sm);font-weight:500;color:var(--text-primary);cursor:pointer}.lock-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-primary)}.validation-results{margin:var(--spacing-md) 0;padding:var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.validation-results.valid{background:var(--success-subtle);border-color:var(--success-primary)}.validation-results.invalid{background:var(--error-subtle);border-color:var(--error-primary)}.validation-errors,.validation-warnings,.validation-suggestions{margin-bottom:var(--spacing-md)}.validation-errors:last-child,.validation-warnings:last-child,.validation-suggestions:last-child{margin-bottom:0}.validation-errors h4{color:var(--error-primary);font-size:var(--text-body-sm);font-weight:600;margin:0 0 var(--spacing-xs) 0}.validation-warnings h4{color:var(--warning-primary);font-size:var(--text-body-sm);font-weight:600;margin:0 0 var(--spacing-xs) 0}.validation-suggestions h4{color:var(--info-primary);font-size:var(--text-body-sm);font-weight:600;margin:0 0 var(--spacing-xs) 0}.validation-errors ul,.validation-warnings ul,.validation-suggestions ul{margin:0;padding-left:var(--spacing-md);font-size:var(--text-body-xs)}.validation-errors li{color:var(--error-primary)}.validation-warnings li{color:var(--warning-primary)}.validation-suggestions li{color:var(--info-primary)}.modal-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;padding:var(--spacing-lg);border-top:1px solid var(--border-subtle);background:var(--surface-subtle)}@media (max-width: 768px){.assignment-modal{width:95vw;max-height:95vh}.modal-header{padding:var(--spacing-md)}.assignment-modal>div:not(.modal-header):not(.modal-actions){padding:var(--spacing-md)}.modal-actions{padding:var(--spacing-md);flex-direction:column}.form-row{flex-direction:column}.form-field{min-width:100%}}@media (max-width: 480px){.assignment-modal{width:100vw;height:100vh;max-height:100vh;border-radius:0}.assignment-modal-overlay{padding:0}}.assignment-modal *:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.form-field select:disabled,.assignment-modal button:disabled{opacity:.6;cursor:not-allowed}.modal-actions .enhanced-button{min-width:120px}
