*,:after,:before{--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:#3b82f680;--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:#3b82f680;--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: }/*
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}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,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height: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:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-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,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}:root{--radius:0.5rem}.container{width:100%}@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}}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.inset-0{inset:0}.bottom-1{bottom:.25rem}.left-1\/2,.left-\[50\%\]{left:50%}.right-1{right:.25rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-30{z-index:30}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-cell{display:table-cell}.table-header-group{display:table-header-group}.table-row-group{display:table-row-group}.table-row{display:table-row}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-14{height:3.5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[95vh\]{height:95vh}.h-auto{height:auto}.h-screen{height:100vh}.min-h-\[64px\]{min-height:64px}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-14{width:3.5rem}.w-32{width:8rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-fit{width:-webkit-fit-content;width:fit-content}.w-full{width:100%}.min-w-\[52px\]{min-width:52px}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-xl{max-width:36rem}.flex-1{flex:1 1}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.-translate-x-1\/2,.translate-x-\[-50\%\]{--tw-translate-x:-50%}.-translate-x-1\/2,.translate-x-\[-50\%\],.translate-y-\[-50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-move{cursor:move}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-items-stretch{place-items:stretch}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.375rem*var(--tw-space-y-reverse));margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.justify-self-stretch{justify-self:stretch}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.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-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-amber-300{--tw-border-opacity:1;border-color:#fcd34d;border-color:rgb(252 211 77/var(--tw-border-opacity,1))}.border-amber-400{--tw-border-opacity:1;border-color:#fbbf24;border-color:rgb(251 191 36/var(--tw-border-opacity,1))}.border-amber-700{--tw-border-opacity:1;border-color:#b45309;border-color:rgb(180 83 9/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:#fecaca;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity:1;border-color:#e2e8f0;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.border-slate-300{--tw-border-opacity:1;border-color:#cbd5e1;border-color:rgb(203 213 225/var(--tw-border-opacity,1))}.border-slate-900{--tw-border-opacity:1;border-color:#0f172a;border-color:rgb(15 23 42/var(--tw-border-opacity,1))}.border-slate-950{--tw-border-opacity:1;border-color:#020617;border-color:rgb(2 6 23/var(--tw-border-opacity,1))}.border-transparent{border-color:#0000}.bg-amber-50{--tw-bg-opacity:1;background-color:#fffbeb;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-500{--tw-bg-opacity:1;background-color:#f59e0b;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-amber-600{--tw-bg-opacity:1;background-color:#d97706;background-color:rgb(217 119 6/var(--tw-bg-opacity,1))}.bg-black\/40{background-color:#0006}.bg-orange-500{--tw-bg-opacity:1;background-color:#f97316;background-color:rgb(249 115 22/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:#fef2f2;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-500{--tw-bg-opacity:1;background-color:#ef4444;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-slate-100{--tw-bg-opacity:1;background-color:#f1f5f9;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-slate-200{--tw-bg-opacity:1;background-color:#e2e8f0;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.bg-slate-300{--tw-bg-opacity:1;background-color:#cbd5e1;background-color:rgb(203 213 225/var(--tw-bg-opacity,1))}.bg-slate-50{--tw-bg-opacity:1;background-color:#f8fafc;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-slate-900{--tw-bg-opacity:1;background-color:#0f172a;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-slate-950{--tw-bg-opacity:1;background-color:#020617;background-color:rgb(2 6 23/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.p-0{padding:0}.p-1{padding:.25rem}.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-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-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.pb-2{padding-bottom:.5rem}.pr-1{padding-right:.25rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-center{text-align:center}.align-middle{vertical-align:middle}.text-\[10px\]{font-size:10px}.text-\[12px\]{font-size:12px}.text-\[14px\]{font-size:14px}.text-\[24px\]{font-size:24px}.text-\[38px\]{font-size:38px}.text-\[48px\]{font-size:48px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.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-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.italic{font-style:italic}.leading-\[1\.35\]{line-height:1.35}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.text-amber-600{--tw-text-opacity:1;color:#d97706;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-amber-700{--tw-text-opacity:1;color:#b45309;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-black{--tw-text-opacity:1;color:#000;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:#4b5563;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:#ef4444;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:#dc2626;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:#b91c1c;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-slate-300{--tw-text-opacity:1;color:#cbd5e1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity:1;color:#94a3b8;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-50{--tw-text-opacity:1;color:#f8fafc;color:rgb(248 250 252/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:#64748b;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:#475569;color:rgb(71 85 105/var(--tw-text-opacity,1))}.text-slate-700{--tw-text-opacity:1;color:#334155;color:rgb(51 65 85/var(--tw-text-opacity,1))}.text-slate-800{--tw-text-opacity:1;color:#1e293b;color:rgb(30 41 59/var(--tw-text-opacity,1))}.text-slate-900{--tw-text-opacity:1;color:#0f172a;color:rgb(15 23 42/var(--tw-text-opacity,1))}.text-slate-950{--tw-text-opacity:1;color:#020617;color:rgb(2 6 23/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline-offset-4{text-underline-offset:4px}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);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 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid #0000;outline-offset:2px}.outline{outline-style:solid}.outline-dashed{outline-style:dashed}.outline-2{outline-width:2px}.outline-slate-400{outline-color:#94a3b8}.ring-2{--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),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-slate-900{--tw-ring-opacity:1;--tw-ring-color:rgb(15 23 42/var(--tw-ring-opacity,1))}.ring-offset-white{--tw-ring-offset-color:#fff}.blur{--tw-blur:blur(8px)}.blur,.drop-shadow{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)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f)}.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)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-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-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:1;opacity:var(--tw-enter-opacity,1);transform:translateZ(0) scaleX(1) rotate(0);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:1;opacity:var(--tw-exit-opacity,1);transform:translateZ(0) scaleX(1) rotate(0);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.duration-200{animation-duration:.2s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}@keyframes breathe{0%,to{opacity:1}50%{opacity:.6}}.animate-breathe{animation:breathe 2.5s ease-in-out infinite}body,html{max-width:100vw;overflow-x:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}#root,body{position:relative}#root{max-width:100%;overflow-x:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.file\:border-0::-webkit-file-upload-button{border-width:0}.file\:border-0::file-selector-button{border-width:0}.file\:bg-transparent::-webkit-file-upload-button{background-color:initial}.file\:bg-transparent::file-selector-button{background-color:initial}.file\:text-sm::-webkit-file-upload-button{font-size:.875rem;line-height:1.25rem}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::-webkit-file-upload-button{font-weight:500}.file\:font-medium::file-selector-button{font-weight:500}.placeholder\:text-slate-400::placeholder{--tw-text-opacity:1;color:#94a3b8;color:rgb(148 163 184/var(--tw-text-opacity,1))}.hover\:bg-amber-400:hover{--tw-bg-opacity:1;background-color:#fbbf24;background-color:rgb(251 191 36/var(--tw-bg-opacity,1))}.hover\:bg-amber-50:hover{--tw-bg-opacity:1;background-color:#fffbeb;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.hover\:bg-red-50:hover{--tw-bg-opacity:1;background-color:#fef2f2;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.hover\:bg-red-500\/80:hover{background-color:#ef4444cc}.hover\:bg-red-500\/90:hover{background-color:#ef4444e6}.hover\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:#f1f5f9;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.hover\:bg-slate-100\/80:hover{background-color:#f1f5f9cc}.hover\:bg-slate-50:hover{--tw-bg-opacity:1;background-color:#f8fafc;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.hover\:bg-slate-700:hover{--tw-bg-opacity:1;background-color:#334155;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.hover\:bg-slate-900:hover{--tw-bg-opacity:1;background-color:#0f172a;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.hover\:bg-slate-900\/80:hover{background-color:#0f172acc}.hover\:bg-slate-900\/90:hover{background-color:#0f172ae6}.hover\:bg-slate-950:hover{--tw-bg-opacity:1;background-color:#020617;background-color:rgb(2 6 23/var(--tw-bg-opacity,1))}.hover\:text-slate-700:hover{--tw-text-opacity:1;color:#334155;color:rgb(51 65 85/var(--tw-text-opacity,1))}.hover\:text-slate-900:hover{--tw-text-opacity:1;color:#0f172a;color:rgb(15 23 42/var(--tw-text-opacity,1))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.focus\:outline-none:focus{outline:2px solid #0000;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),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-slate-950:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(2 6 23/var(--tw-ring-opacity,1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.focus-visible\:outline-none:focus-visible{outline:2px solid #0000;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--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),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-slate-950:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgb(2 6 23/var(--tw-ring-opacity,1))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.aria-selected\:opacity-100[aria-selected=true]{opacity:1}.data-\[state\=open\]\:animate-in[data-state=open]{--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial;animation-duration:.15s;animation-name:enter}.data-\[state\=closed\]\:animate-out[data-state=closed]{--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial;animation-duration:.15s;animation-name:exit}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}@media (min-width:640px){.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.sm\:p-6{padding:1.5rem}.sm\:text-left{text-align:left}}.App{max-width:100%;overflow-x:hidden;position:relative;text-align:center}*{box-sizing:border-box}.App>div{position:relative}.App>div,article,footer,header,main,nav,section{max-width:100%;overflow-x:hidden}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{background-color:#282c34;color:#fff;padding:20px}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.main-navigation{background-color:#004f80;margin-bottom:20px;padding:30px 20px;position:relative}.nav-menu-desktop{display:block}.nav-menu-row{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:center;list-style:none;margin:0;padding:0}.nav-menu-row-bottom,.nav-menu-row-top{margin-bottom:10px}.nav-menu-row li{margin:0}.nav-menu-row a{color:#fff;font-size:1.1em;text-decoration:none;transition:opacity .2s}.nav-menu-row a:hover{opacity:.8}.nav-user-info{align-items:center;display:flex;gap:10px;justify-content:flex-end;margin-left:auto;margin-top:10px;padding-right:20px}.nav-user-info span{color:#fff;font-size:.9em;font-weight:500}.nav-user-info button{background:none;border:1px solid #fff;border-radius:4px;color:#fff;cursor:pointer;font-size:.9em;padding:5px 10px;transition:background-color .2s}.nav-user-info button:hover{background-color:#ffffff1a}.mobile-menu-toggle{background:#0000;border:none;cursor:pointer;display:none;flex-direction:column;height:30px;justify-content:space-between;padding:0;position:absolute;right:20px;top:15px;width:30px;z-index:1001}.mobile-menu-toggle span{background-color:#fff;border-radius:2px;height:3px;transition:all .3s ease;width:100%}.mobile-menu-toggle.open span:first-child{transform:rotate(45deg) translate(10px,10px)}.mobile-menu-toggle.open span:nth-child(2){opacity:0;transform:translateX(-10px)}.mobile-menu-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(10px,-10px)}.nav-menu-mobile{background-color:#004f80;box-shadow:-2px 0 10px #0000004d;display:none;flex-direction:column;height:100vh;max-width:300px;overflow:hidden;padding-bottom:80px;padding-top:60px;position:fixed;right:-100%;top:0;touch-action:pan-y;transition:right .3s ease;width:80%;z-index:1000}.nav-menu-mobile.open{right:0}.nav-menu-list-mobile{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;flex-direction:column;list-style:none;margin:0;max-height:calc(100vh - 180px);min-height:0;overflow-x:hidden;overflow-y:auto;padding:0 0 10px}.nav-menu-list-mobile li{border-bottom:1px solid #ffffff1a}.nav-menu-list-mobile a{color:#fff;display:block;font-size:1.1em;padding:15px 20px;text-decoration:none;transition:background-color .2s}.nav-menu-list-mobile a:hover{background-color:#ffffff1a}.nav-user-greeting-mobile{background-color:#004f80;border-bottom:2px solid #fff3;flex-shrink:0;padding:20px;text-align:center}.nav-user-greeting-mobile span{color:#fff;display:block;font-size:1em;font-weight:600}.nav-user-info-mobile{background-color:#004f80;border-top:2px solid #fff3;display:flex;flex-direction:column;flex-shrink:0;gap:10px;margin-top:auto;padding:15px 20px 80px;position:relative;z-index:10}.nav-user-info-mobile span{color:#fff;font-size:.9em;font-weight:500}.nav-user-info-mobile button{background:none;border:1px solid #fff;border-radius:4px;color:#fff;cursor:pointer;font-size:.9em;padding:8px 15px;transition:background-color .2s;width:100%}.nav-user-info-mobile button:hover{background-color:#ffffff1a}.nav-menu-overlay{background-color:#00000080;height:100vh;left:0;position:fixed;top:0;transition:opacity .3s ease;width:100%;z-index:999}@media (max-width:768px){.nav-menu-desktop{display:none}.mobile-menu-toggle{display:flex}.nav-menu-mobile{display:flex;flex-direction:column}}@media (min-width:769px){.mobile-menu-toggle,.nav-menu-mobile{display:none}}.calendar-container{display:flex;flex-direction:column;height:100vh;justify-content:stretch;margin:0;overflow-x:hidden;position:relative;width:100%}.calendar-container,.calendar-table{box-sizing:border-box;max-width:100%}.calendar-table{word-wrap:break-word;min-width:0;overflow:hidden;overflow-wrap:break-word}.calendar-table td,.calendar-table th{border:1px solid #e8e8e8;border-bottom:none;border-top:none;box-sizing:border-box;font-size:12px;max-width:none;min-width:0;padding:0;text-align:center}.calendar-table tr{border-bottom:none;border-top:none}.calendar-table th{background:#f5f5f5;box-sizing:border-box;height:32px;overflow:hidden;padding:1px 0;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.calendar-table tbody tr{height:120px}.calendar-cell{background:#fff;height:120px;justify-content:center;min-height:120px;overflow:visible;transition:background .2s;z-index:1}.calendar-cell:hover{background:#e0f3ff}.weekday{background:#f0f0f0;color:#888;font-size:11px;font-weight:400}.calendar-table th>div:first-child{font-weight:700;margin-bottom:2px}.calendar-table th>div:last-child{font-weight:400;opacity:.9}.modal-overlay{background:#00000059}.modal-content{animation:modalIn .2s;box-shadow:0 8px 32px #0000002e;max-height:80vh;max-width:90vw;min-width:320px;padding:32px 24px 24px}@keyframes modalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-title{font-size:1.2rem;font-weight:700;margin-bottom:18px;text-align:center}.site-list{list-style:none;margin:0;max-height:320px;padding:0}.site-list-item{background:#f7fafd;border:1px solid #0000;border-radius:6px;cursor:pointer;font-size:1rem;margin-bottom:6px;padding:10px 12px;transition:background .18s,color .18s}.site-list-item:hover{background:#2196f3;border:1px solid #1976d2;color:#fff}.modal-close{color:#888;position:absolute;right:14px;top:10px;transition:color .18s}.modal-close:hover{color:#2196f3}.modal-delete{background:#f44336;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.48rem;padding:2px 6px;position:absolute;right:48px;top:10px;transition:background .18s;z-index:1}.modal-delete:hover{background:#b71c1c}.calendar-header{margin-bottom:20px;text-align:center}.month-navigation{align-items:center;display:flex;gap:20px;justify-content:center}.month-nav-button{background:none;border:none;border-radius:4px;cursor:pointer;padding:8px 12px;transition:background-color .2s}.month-nav-button:hover{background-color:#0000000d}.month-nav-button:active{background-color:#0000001a}.month-navigation h2{font-size:1.5em;font-stretch:condensed;font-weight:700;margin:0}.calendar-scroll-wrapper{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000a;box-sizing:border-box;max-height:calc(100vh - 120px);max-width:100%;overflow-x:hidden;overflow-y:auto;position:relative;width:100%}.calendar-table thead{background:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:10}.calendar-table thead tr:first-child th{background:#004f80;border-bottom:1px solid #e8e8e8;color:#fff}.calendar-table thead tr:last-child th{background:#004f80;border-bottom:2px solid #e8e8e8;color:#fff}.row-delete-button{transition:all .2s ease}.row-delete-button:hover{background:#dc3545!important;color:#fff!important;transform:scale(1.1)}.account-manager{background-color:#fafafa;color:#333;font-family:Times New Roman,Georgia,serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.account-manager *{box-sizing:border-box}.account-header{background:#fff;border:2px solid #bdc3c7;border-radius:0;box-shadow:0 2px 4px #0000001a;color:#2c3e50;margin-bottom:30px;padding:30px;text-align:center}.account-header h1{font-family:Times New Roman,serif;font-size:28px;font-weight:400;letter-spacing:2px;margin:0 0 10px;text-transform:uppercase}.account-header p{color:#7f8c8d;font-size:16px;font-style:italic;margin:0}.account-controls{align-items:center;background:#fff;border:1px solid #bdc3c7;border-radius:0;box-shadow:0 2px 4px #0000001a;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:30px;padding:25px}.search-section{flex:1 1;min-width:250px}.search-input{background:#f8f9fa;border:2px solid #bdc3c7;border-radius:0;font-family:Times New Roman,serif;padding:12px 15px}.search-input:focus{background:#fff;border-color:#2c3e50}.filter-select{border:2px solid #bdc3c7;border-radius:0;font-family:Times New Roman,serif;padding:10px 15px}.filter-select:focus{border-color:#2c3e50}.add-new-btn{border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 20px;transition:all .3s ease}.account-list{background:#fff;border:2px solid #bdc3c7;border-radius:0;box-shadow:0 2px 4px #0000001a;min-height:400px;padding:20px}.list-header{border-bottom:2px solid #bdc3c7;padding-bottom:10px}.list-header h3{color:#2c3e50;font-family:Times New Roman,serif;font-size:18px;font-weight:400;letter-spacing:1px;text-transform:uppercase}.accounts-table{border:2px solid #bdc3c7;border-collapse:collapse;margin-top:15px;width:100%}.accounts-table th{background:#2c3e50;border:1px solid #34495e;color:#fff;font-weight:400;letter-spacing:1px;padding:12px 10px;text-transform:uppercase}.accounts-table td,.accounts-table th{font-family:Times New Roman,serif;font-size:14px;text-align:center}.accounts-table td{background:#fff;border:1px solid #bdc3c7;padding:10px 8px}.accounts-table tbody{min-height:200px}.accounts-table tr:hover{background:#ecf0f1}.accounts-table tr:nth-child(2n){background:#f8f9fa}.accounts-table tr:nth-child(2n):hover{background:#e8f4f8}.account-name{color:#495057;font-weight:600}.account-role{text-align:center}.role-badge{border-radius:4px;display:inline-block;font-size:.8rem;font-weight:600;padding:4px 12px}.role-badge.role-master{background:#dc3545;color:#fff}.role-badge.role-admin{background:#ffc107;color:#212529}.role-badge.role-visitor{background:#6c757d;color:#fff}.role-badge.role-empty{background:#e9ecef;color:#6c757d}.account-email{color:#6c757d;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.verified-badge{color:#28a745;display:inline-block;font-weight:700;margin-left:5px}.account-status{text-align:center}.status-badge{padding:4px 12px}.account-actions{display:flex;gap:8px;justify-content:center}.edit-button{background:#fff;border:2px solid #2c3e50;border-radius:4px;color:#2c3e50;cursor:pointer;font-family:Times New Roman,serif;font-size:13px;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase;transition:all .3s ease}.edit-button:hover{background:#2c3e50;color:#fff}.delete-button{background:#fff;border:2px solid #e74c3c;border-radius:4px;color:#e74c3c;cursor:pointer;font-family:Times New Roman,serif;font-size:13px;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase;transition:all .3s ease}.delete-button:hover{background:#e74c3c;color:#fff}.modal-overlay{background:#0009;padding:20px}.modal-content{border-radius:8px;box-shadow:0 10px 40px #0000004d;width:100%}.modal-header{background:#f8f9fa;border-bottom:2px solid #e9ecef;justify-content:space-between;padding:20px 30px}.modal-header h2{color:#2c3e50;font-family:Times New Roman,serif;font-size:24px;margin:0}.modal-close{align-items:center;background:none;color:#6c757d;display:flex;font-size:32px;height:40px;justify-content:center;padding:0;transition:color .3s ease;width:40px}.modal-close:hover{color:#dc3545}.modal-body{padding:30px}.form-section{border-bottom:1px solid #e9ecef;margin-bottom:30px;padding-bottom:20px}.form-section:last-child{border-bottom:none;margin-bottom:0}.form-section h3{color:#2c3e50;font-family:Times New Roman,serif;font-size:18px;font-weight:500;margin:0 0 15px}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-bottom:15px}.form-group label{font-size:14px;font-weight:500;margin-bottom:6px}.form-group input,.form-group select{background:#f8f9fa;border:2px solid #bdc3c7;border-radius:4px;font-family:Times New Roman,serif;font-size:14px;padding:10px 12px;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus{background:#fff;border-color:#2c3e50;outline:none}.form-group input.error,.form-group select.error{border-color:#dc3545}.form-group input:disabled{background:#e9ecef;cursor:not-allowed}.error-message{font-size:.85rem;font-style:italic}.email-verification-row{align-items:stretch;display:flex;gap:10px}.email-verification-row input{flex:1 1}.verify-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px;transition:all .3s ease;white-space:nowrap}.verify-btn:hover{background:#0056b3}.modal-footer{background:#f8f9fa;border-top:2px solid #e9ecef;gap:10px;padding:20px 30px}.cancel-btn,.save-btn{border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;padding:10px 24px;transition:all .3s ease}.save-btn{background:#007bff}.save-btn:hover{background:#0056b3;transform:translateY(-1px)}@media (max-width:1200px){.account-controls{align-items:stretch;flex-direction:column}.search-section{width:100%}.filter-section{justify-content:space-between}}@media (max-width:768px){.account-manager{padding:15px}.account-header h1{font-size:1.5rem}.modal-content{max-width:100%}.form-row{grid-template-columns:1fr}.accounts-table{font-size:.8rem}.accounts-table td,.accounts-table th{padding:8px 4px}.account-actions{flex-direction:column;gap:4px}.delete-button,.edit-button{width:100%}}@media (max-width:480px){.account-header h1{font-size:1.2rem}.account-header p{font-size:14px}.accounts-table{font-size:.7rem}.accounts-table td,.accounts-table th{padding:6px 2px}.role-badge,.status-badge{font-size:.7rem;padding:2px 6px}.modal-header{padding:15px 20px}.modal-body{padding:20px}.modal-footer{flex-direction:column;padding:15px 20px}.cancel-btn,.save-btn{width:100%}}.employee-management{background-color:#f8f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.employee-management *{box-sizing:border-box}.employee-header{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:20px;text-align:center}.add-employee-button{background:#3498db;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:16px;padding:10px 18px;transition:background-color .2s ease}.add-employee-button:hover{background:#2980b9}.employee-header h1{color:#2c3e50;font-size:28px;font-weight:700;margin:0 0 8px}.employee-header p{color:#7f8c8d;font-size:16px;margin:0}.stats-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px;text-align:center;transition:transform .2s ease}.stat-card:hover{transform:translateY(-2px)}.stat-number{color:#3498db;font-size:36px;margin-bottom:8px}.stat-label{color:#7f8c8d;font-size:14px;font-weight:500}.controls{border-radius:12px;box-shadow:0 2px 8px #0000001a;gap:20px;margin-bottom:30px;padding:20px}.search-box{flex:1 1}.search-input{border:2px solid #e1e8ed;border-radius:8px;padding:12px 16px;transition:border-color .2s ease}.search-input:focus{border-color:#3498db}.filter-box{min-width:200px}.filter-select{border:2px solid #e1e8ed;border-radius:8px;cursor:pointer;padding:12px 16px;transition:border-color .2s ease;width:100%}.filter-select:focus{border-color:#3498db}.employee-list{grid-gap:16px;display:grid;gap:16px;min-height:200px}.employee-card,.employee-list{opacity:1;visibility:visible;width:100%}.employee-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;min-height:80px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.employee-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.employee-info{flex:1 1}.employee-name{color:#2c3e50;font-size:18px;margin-bottom:8px}.employee-details{display:flex;flex-wrap:wrap;gap:16px}.employee-role{background:#3498db1a;border-radius:4px;font-size:14px;font-weight:600;padding:4px 8px}.employee-department,.employee-position{color:#7f8c8d;font-size:14px}.employee-actions{align-items:center;display:flex;gap:12px}.employee-id{background:#f8f9fa;color:#95a5a6}.employee-id,.employee-link-badge{border-radius:4px;font-size:12px;padding:4px 8px}.employee-link-badge{background:#eaf2f8;color:#2c3e50}.delete-employee-button{background:#e74c3c;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 10px}.delete-employee-button:hover{background:#c0392b}.employee-modal-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.employee-modal{background:#fff;border-radius:12px;box-shadow:0 12px 30px #0000002e;padding:24px;width:min(520px,100%)}.employee-modal h2{color:#2c3e50;font-size:20px;margin:0 0 16px}.form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.form-row label{color:#4a4a4a;font-size:13px}.form-row input,.form-row select{border:1px solid #dbe4ee;border-radius:8px;font-size:14px;padding:10px 12px}.form-row input:disabled,.form-row select:disabled{background:#f1f3f5}.form-help{color:#7f8c8d;font-size:12px;margin:6px 0 0}.form-error{background:#fdecea;border-radius:8px;color:#c0392b;font-size:13px;margin-bottom:12px;padding:10px 12px}.modal-actions{margin-top:16px}.primary-button{background:#3498db;color:#fff}.primary-button,.secondary-button{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:10px 16px}.secondary-button{background:#ecf0f1;color:#2c3e50}.no-employees{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:60px 20px;text-align:center}.no-employees p{color:#7f8c8d;font-size:16px;margin:0}.loading{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.spinner{border:4px solid #e1e8ed;border-top-color:#3498db;margin-bottom:16px}.loading p{color:#7f8c8d;font-size:16px;margin:0}.error{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:60px 20px;text-align:center}.error p{color:#e74c3c;font-size:16px;margin:0 0 16px}.retry-button{background:#3498db;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:background-color .2s ease}.retry-button:hover{background:#2980b9}@media (max-width:768px){.employee-management{padding:16px}.stats-cards{gap:16px;grid-template-columns:repeat(2,1fr)}.controls,.employee-card{flex-direction:column;gap:16px}.employee-card{align-items:flex-start}.employee-details{flex-direction:column;gap:8px}.employee-actions{justify-content:space-between;width:100%}}.shift-management{background-color:#f8f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:100%;min-height:100vh;padding:16px}.shift-management *{box-sizing:border-box}.shift-header h1{margin:0 0 8px}.shift-header p{color:#666;font-size:16px;margin:0}.shift-controls{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;gap:16px;margin-bottom:20px;padding:16px}.control-group,.shift-controls{display:flex;flex-direction:column}.control-group{flex-wrap:wrap;gap:12px}.employee-selector,.month-selector,.view-mode-selector{display:flex;flex-direction:column;gap:8px}.employee-selector label,.month-selector label,.view-mode-selector label{color:#333;font-size:16px;font-weight:600}.employee-select,.month-input,.view-mode-select{border:2px solid #e9ecef;border-radius:6px;font-size:16px;padding:12px;transition:border-color .3s ease;width:100%}.employee-select:focus,.month-input:focus,.view-mode-select:focus{border-color:#667eea;outline:none}.employee-status{color:#6c757d;font-size:16px;font-weight:600}.view-only-notice{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:1px solid #90caf9;border-radius:8px;box-shadow:0 2px 4px #1565c01a;color:#1565c0;font-weight:500;padding:12px 20px;text-align:center}.submission-status{border-radius:4px;font-size:12px;font-weight:500;padding:4px 8px;text-align:center}.submission-status.submitted{background-color:#e3f2fd;border:1px solid #bbdefb;color:#1976d2}.submission-status.approved{background-color:#e8f5e8;border:1px solid #c8e6c9;color:#2e7d32}.submission-status.rejected{background-color:#ffebee;border:1px solid #ffcdd2;color:#c62828}.submission-status.draft{background-color:#f5f5f5;border:1px solid #e0e0e0;color:#757575}.note-display{color:#666;font-style:italic}.clear-all-button,.generate-button{border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;padding:12px;transition:all .3s ease;white-space:nowrap;width:100%}.generate-button{background:#28a745;color:#fff}.generate-button:hover{background:#218838;transform:translateY(-1px)}.clear-all-button:hover{background:#c82333;transform:translateY(-1px)}.shift-calendar{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.employee-calendar{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;max-width:100%;min-width:0;overflow:hidden}.employee-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:10px 15px}.employee-header h3{color:#495057;font-size:1rem;font-weight:600;margin:0}.employee-stats{display:flex;flex-wrap:wrap;gap:15px}.employee-stats .stat{border-radius:4px;font-size:.7rem;font-weight:600;padding:3px 6px}.employee-stats .stat.available{background:#d4edda;color:#155724}.employee-stats .stat.unavailable{background:#f8d7da;color:#721c24}.employee-stats .stat.blank{background:#e2e3e5;color:#383d41}.shift-management .employee-calendar .calendar-grid{aspect-ratio:1;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;max-width:100%;overflow:hidden;padding:12px}.shift-management .employee-calendar .calendar-grid .calendar-header{grid-gap:1px;display:grid;flex-shrink:0;gap:1px;grid-template-columns:repeat(7,1fr);margin-bottom:6px;order:1;width:100%}.shift-management .employee-calendar .calendar-grid .calendar-day-header{align-items:center;color:#495057;display:flex;font-size:12px;font-weight:600;justify-content:center;min-height:28px;padding:4px;text-align:center}.shift-management .employee-calendar .calendar-grid .calendar-body{grid-gap:1px;display:grid;flex:1 1;gap:1px;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(5,1fr);min-height:0;order:2;width:100%}.shift-management .calendar-day{align-items:center;aspect-ratio:1;border:1px solid #e9ecef;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:0;padding:4px;position:relative;transition:all .3s ease}.calendar-day:hover{transform:scale(1.02)}.calendar-day.other-month{background:#f8f9fa;color:#6c757d}.calendar-day.other-month .day-number{opacity:.5}.shift-management .calendar-day .day-number{font-size:12px;font-weight:600;margin-bottom:2px}.shift-management .calendar-day .shift-status-indicator{border-radius:3px;font-size:.6rem;font-weight:600;margin-bottom:2px;min-width:30px;padding:1px 3px;text-align:center}.shift-management .calendar-day .shift-note-indicator{font-size:.7rem;position:absolute;right:1px;top:1px}.shift-management .employee-notes{background:#f8f9fa;border-top:1px solid #e9ecef;margin-top:8px;padding:12px 15px}.shift-management .employee-notes .notes-label{color:#495057;font-size:.9rem;font-weight:600;margin-bottom:6px}.shift-management .employee-notes .notes-content{color:#666;font-size:.85rem;line-height:1.5}.shift-management .employee-notes .note-item{margin-bottom:4px;padding:4px 0}.shift-management .employee-notes .note-item.note-none{color:#999;font-style:italic}.shift-management .submission-status{background:#f8f9fa;border-top:1px solid #e9ecef;padding:12px 15px;text-align:center}.shift-management .remaining-time{color:#856404;font-size:.9rem;font-weight:600}.shift-management .remaining-time strong{color:#ffc107;font-size:1rem}.shift-management .locked-status{align-items:center;color:#721c24;display:flex;font-size:.9rem;font-weight:600;gap:12px;justify-content:center}.shift-management .employee-actions{align-items:center;background:#fff3cd;border-top:1px solid #ffc107;display:flex;justify-content:center;padding:12px 15px;text-align:center}.shift-management .unlock-button{background:#ffc107;border:1px solid #ffc107;border-radius:4px;color:#856404;cursor:pointer;font-size:.75rem;font-weight:600;padding:4px 10px;transition:all .3s ease;white-space:nowrap}.shift-management .unlock-button:hover{background:#ffb300;border-color:#ffb300;box-shadow:0 2px 4px #ffc1074d;transform:translateY(-1px)}.calendar-day.status-available{background:#d4edda;border-color:#c3e6cb}.calendar-day.status-available .shift-status-indicator{background:#28a745;color:#fff}.calendar-day.status-unavailable{background:#f8d7da;border-color:#f5c6cb}.calendar-day.status-unavailable .shift-status-indicator{background:#dc3545;color:#fff}.calendar-day.status-blank{background:#e2e3e5;border-color:#d6d8db}.calendar-day.status-blank .shift-status-indicator{background:#6c757d;color:#fff}.calendar-day.status-overtime{background:#fff3cd;border-color:#ffeaa7}.calendar-day.status-overtime .shift-status-indicator{background:#ffc107;color:#212529}.calendar-day.status-night{background:#d1ecf1;border-color:#bee5eb}.calendar-day.status-night .shift-status-indicator{background:#17a2b8;color:#fff}.calendar-day.status-holiday{background:#f8d7da;border-color:#f5c6cb}.calendar-day.status-holiday .shift-status-indicator{background:#dc3545;color:#fff}.calendar-day.status-sick{background:#e2e3e5;border-color:#d6d8db}.calendar-day.status-sick .shift-status-indicator{background:#6c757d;color:#fff}.shift-management .shift-list-view{grid-gap:16px;background:#0000;box-sizing:border-box;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 -16px;max-width:none;overflow:visible;padding:16px;width:calc(100% + 32px)}.shift-management .shift-list-view .list-header{display:none}.shift-management .shift-list-view .employee-calendar{box-sizing:border-box;max-width:100%;min-width:0;width:100%}.shift-management .shift-list-view .calendar-grid{padding:12px}.shift-management .shift-employee{color:#2c3e50;font-size:18px;font-weight:700;margin-bottom:4px}.shift-management .shift-date{align-items:center;color:#6c757d;display:flex;font-size:14px;gap:4px}.shift-management .shift-date:before{content:"📅";font-size:14px}.shift-management .shift-status{border-radius:6px;font-size:14px;font-weight:600;padding:8px 12px;text-align:center;width:-webkit-fit-content;width:fit-content}.shift-status.status-available{background:#d4edda;color:#155724}.shift-status.status-unavailable{background:#f8d7da;color:#721c24}.shift-status.status-blank{background:#e2e3e5;color:#383d41}.shift-status.status-overtime{background:#fff3cd;color:#856404}.shift-status.status-night{background:#d1ecf1;color:#0c5460}.shift-status.status-holiday{background:#f8d7da;color:#721c24}.shift-status.status-sick{background:#e2e3e5;color:#383d41}.note-input{border:1px solid #e9ecef;border-radius:4px;font-size:16px;padding:6px 10px;transition:border-color .3s ease;width:100%}.note-input:focus{border-color:#667eea;outline:none}.status-select{background:#fff;border:1px solid #e9ecef;border-radius:4px;font-size:16px;padding:6px 10px;transition:border-color .3s ease}.status-select:focus{border-color:#667eea;outline:none}.no-shifts{color:#6c757d;padding:40px 20px;text-align:center}.no-shifts p{font-size:1rem;margin:5px 0}.shift-stats{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:20px}.stat-item{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.stat-number.status-available{color:#28a745}.stat-number.status-unavailable{color:#dc3545}.stat-number.status-blank{color:#6c757d}.stat-number.status-overtime{color:#ffc107}.stat-number.status-night{color:#17a2b8}.stat-number.status-holiday{color:#dc3545}.stat-number.status-sick{color:#6c757d}.modal-overlay{overflow-y:auto}.shift-form{margin-bottom:20px}.site-list{border:1px solid #e9ecef;border-radius:4px;margin-top:10px;max-height:200px}.site-item{border-bottom:1px solid #e9ecef;cursor:pointer;padding:10px;transition:background-color .3s ease}.site-item:hover{background:#f8f9fa}.site-item:last-child{border-bottom:none}.site-address{color:#6c757d;font-size:.8rem;margin-top:2px}@media (max-width:1200px){.shift-controls{align-items:stretch;flex-direction:column}.action-buttons,.control-group{justify-content:center}.shift-management .employee-calendar .calendar-grid .calendar-body{grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(5,1fr)}.shift-management .shift-calendar,.shift-management .shift-list-view{grid-template-columns:repeat(2,minmax(0,1fr))}.shift-management .shift-list-view{margin:0 -16px;width:calc(100% + 32px)}.shift-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}@media (max-width:768px){.shift-management{padding:15px}.shift-header h1{font-size:1.5rem}.control-group,.employee-selector,.month-selector,.view-mode-selector{align-items:stretch;flex-direction:column}.employee-stats{flex-direction:column;gap:5px}.shift-management .employee-calendar .calendar-grid{padding:8px}.shift-management .employee-calendar .calendar-grid .calendar-day-header{font-size:10px;min-height:20px;padding:2px}.shift-management .calendar-day{min-height:0;padding:2px}.shift-management .calendar-day .day-number{font-size:10px}.shift-management .calendar-day .shift-status-indicator{font-size:.5rem;min-width:25px;padding:1px 2px}.shift-management .calendar-day .shift-note-indicator{font-size:.6rem;right:0;top:0}.shift-management .employee-header{padding:8px 12px}.shift-management .employee-header h3{font-size:.9rem}.shift-management .employee-stats .stat{font-size:.6rem;padding:2px 4px}.shift-management .shift-calendar{grid-template-columns:1fr}.shift-management .shift-list-view{gap:12px;grid-template-columns:1fr;margin:0 -12px;padding:12px;width:calc(100% + 24px)}.action-buttons{flex-direction:column}.clear-all-button,.generate-button{width:100%}.modal{padding:15px;width:95%}.modal-actions{flex-direction:column}.cancel-btn,.confirm-btn{width:100%}}@media (max-width:480px){.shift-header h1{font-size:1.2rem}.shift-management .employee-calendar .calendar-grid{padding:6px}.shift-management .employee-calendar .calendar-grid .calendar-day-header{font-size:9px;min-height:18px;padding:1px}.shift-management .calendar-day{padding:1px}.shift-management .calendar-day .day-number{font-size:9px}.shift-management .calendar-day .shift-status-indicator{font-size:.45rem;min-width:20px;padding:0 1px}.shift-management .employee-header{padding:6px 10px}.shift-management .employee-header h3{font-size:.85rem}.shift-management .employee-stats{gap:5px}.shift-management .employee-stats .stat{font-size:.55rem;padding:1px 3px}.stat-item{padding:15px}.stat-number{font-size:1.2rem}}.shift-calendar-modal .calendar-container{-webkit-overflow-scrolling:touch;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;height:500px;margin-bottom:0;max-height:500px;overflow-x:auto;padding:0}.shift-calendar-modal .calendar-header{grid-gap:0;display:grid;gap:0;grid-template-columns:repeat(7,1fr);margin-bottom:0;width:100%}.shift-calendar-modal .day-header{background:#f8f9fa;border:1px solid #e9ecef;box-sizing:border-box;color:#495057;font-weight:600;margin:0 0 0 -1px;padding:10px;text-align:center}.shift-calendar-modal .calendar-header .day-header:nth-child(7n+1){margin-left:0}.shift-calendar-modal .calendar-grid{grid-gap:0;display:grid;gap:0;grid-auto-rows:80px;grid-template-columns:repeat(7,1fr);margin-bottom:0;width:100%}.shift-calendar-modal .calendar-day{align-items:center;background:#fff;border:1px solid #e9ecef;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;height:80px;justify-content:center;margin:-1px 0 0 -1px;padding:0;position:relative;text-align:center;transition:all .3s ease;width:100%}.shift-calendar-modal .calendar-grid .calendar-day:nth-child(7n+1){margin-left:0}.shift-calendar-modal .calendar-grid .calendar-day:nth-child(n+1):nth-child(-n+7){margin-top:0}.shift-calendar-modal .calendar-day:hover{background:#f8f9fa}.shift-calendar-modal .calendar-day.empty{background:#0000;border:none;cursor:default;height:0;margin:0;min-height:0;padding:0}.shift-calendar-modal .calendar-day.selected{background:#e3f2fd;border-color:#007bff}.shift-calendar-modal .calendar-day.available{background:#d4edda;border-color:#28a745}.shift-calendar-modal .calendar-day.unavailable{background:#f8d7da;border-color:#dc3545}.shift-calendar-modal .calendar-day.pending{background:#fff}.shift-calendar-modal .day-number{color:#495057;font-size:16px;font-weight:600}.shift-calendar-modal .status-indicator{font-size:.7rem;font-weight:600;position:absolute;right:2px;top:2px}.shift-calendar-modal .status-indicator.available{color:#28a745}.shift-calendar-modal .status-indicator.unavailable{color:#dc3545}.shift-calendar-modal .note-indicator{bottom:2px;font-size:.6rem;position:absolute;right:2px}@media (max-width:1200px){.shift-management{padding:12px}.shift-header h1{font-size:1.8rem}.shift-controls{padding:12px}.shift-calendar-modal .modal{max-height:95vh;max-width:95vw;padding:15px}.shift-calendar-modal .calendar-container{height:450px;max-height:450px}.shift-calendar-modal .calendar-grid{grid-auto-rows:70px}.shift-calendar-modal .calendar-day{height:70px}}@media (max-width:768px){.shift-management{padding:15px}.shift-header h1{font-size:1.5rem}.shift-header p{font-size:.9rem}.shift-controls{gap:12px;padding:10px}.control-group,.employee-selector,.month-selector,.view-mode-selector{align-items:stretch;flex-direction:column}.employee-select,.month-input,.view-mode-select{font-size:14px;padding:10px}.employee-stats{flex-direction:column;gap:5px}.shift-management .employee-calendar .calendar-grid{padding:8px}.shift-management .employee-calendar .calendar-grid .calendar-day-header{font-size:10px;min-height:20px;padding:2px}.shift-management .calendar-day{min-height:0;padding:2px}.shift-management .calendar-day .day-number{font-size:10px}.shift-management .calendar-day .shift-status-indicator{font-size:.5rem;min-width:25px;padding:1px 2px}.shift-management .calendar-day .shift-note-indicator{font-size:.6rem;right:0;top:0}.shift-management .employee-header{padding:8px 12px}.shift-management .employee-header h3{font-size:.9rem}.shift-management .employee-stats .stat{font-size:.6rem;padding:2px 4px}.shift-management .shift-calendar{grid-template-columns:1fr}.shift-management .shift-list-view{gap:12px;grid-template-columns:1fr;margin:0 -12px;padding:12px;width:calc(100% + 24px)}.action-buttons{flex-direction:column}.clear-all-button,.generate-button{width:100%}.modal{max-height:90vh;padding:15px;width:95%}.shift-calendar-modal .modal{max-height:95vh;max-width:95vw;padding:12px}.shift-calendar-modal .calendar-container{height:400px;max-height:400px}.shift-calendar-modal .calendar-grid{grid-auto-rows:60px}.shift-calendar-modal .calendar-day{height:60px}.shift-calendar-modal .day-header{font-size:.85rem;padding:8px 4px}.shift-calendar-modal .day-number{font-size:14px}.shift-calendar-modal .status-indicator{font-size:.6rem}.shift-calendar-modal h3{font-size:1rem;margin-bottom:10px}.modal-actions{flex-direction:column}.cancel-btn,.confirm-btn{width:100%}.shift-management .submission-status{padding:10px 12px}.shift-management .locked-status{flex-direction:column;font-size:.85rem;gap:8px}.shift-management .unlock-button{font-size:.7rem;padding:3px 8px}}@media (max-width:480px){.shift-header h1{font-size:1.2rem}.shift-header p{font-size:.85rem}.shift-controls{gap:10px;padding:8px}.employee-select,.month-input,.view-mode-select{font-size:14px;padding:8px}.shift-management .employee-calendar .calendar-grid{padding:6px}.shift-management .employee-calendar .calendar-grid .calendar-day-header{font-size:9px;min-height:18px;padding:1px}.shift-management .calendar-day{padding:1px}.shift-management .calendar-day .day-number{font-size:9px}.shift-management .calendar-day .shift-status-indicator{font-size:.45rem;min-width:20px;padding:0 1px}.shift-management .employee-header{padding:6px 10px}.shift-management .employee-header h3{font-size:.85rem}.shift-management .employee-stats{gap:5px}.shift-management .employee-stats .stat{font-size:.55rem;padding:1px 3px}.modal{max-height:95vh;padding:10px;width:98%}.shift-calendar-modal .modal{max-height:95vh;max-width:98vw;padding:10px}.shift-calendar-modal .calendar-container{height:350px;max-height:350px}.shift-calendar-modal .calendar-grid{grid-auto-rows:50px}.shift-calendar-modal .calendar-day{height:50px}.shift-calendar-modal .day-header{font-size:.75rem;padding:6px 2px}.shift-calendar-modal .day-number{font-size:12px}.shift-calendar-modal .status-indicator{font-size:.5rem;right:1px;top:1px}.shift-calendar-modal .note-indicator{bottom:1px;font-size:.5rem;right:1px}.shift-calendar-modal h3{font-size:.9rem;margin-bottom:8px}.shift-management .submission-status{padding:8px 10px}.shift-management .locked-status{font-size:.8rem;gap:6px}.shift-management .unlock-button{font-size:.65rem;padding:2px 6px}}@media (max-width:375px){.shift-management{padding:6px}.shift-header{padding:5px 6px}.shift-header h1{font-size:1.1rem}.shift-header p{font-size:.8rem}.shift-controls{gap:8px;padding:6px}.employee-select,.month-input,.view-mode-select{font-size:13px;padding:6px}.shift-management .employee-calendar .calendar-grid{padding:4px}.shift-management .employee-calendar .calendar-grid .calendar-day-header{font-size:8px;min-height:16px;padding:1px}.shift-management .calendar-day{padding:1px}.shift-management .calendar-day .day-number{font-size:8px}.shift-management .calendar-day .shift-status-indicator{font-size:.4rem;min-width:18px;padding:0 1px}.shift-management .employee-header{padding:5px 8px}.shift-management .employee-header h3{font-size:.8rem}.shift-management .employee-stats .stat{font-size:.5rem;padding:1px 2px}.modal{max-height:95vh;padding:8px;width:98%}.shift-calendar-modal .modal{max-height:95vh;max-width:98vw;padding:8px}.shift-calendar-modal .calendar-container{height:300px;max-height:300px}.shift-calendar-modal .calendar-grid{grid-auto-rows:45px;min-width:320px}.shift-calendar-modal .calendar-day{height:45px}.shift-calendar-modal .day-header{font-size:.7rem;padding:5px 1px}.shift-calendar-modal .day-number{font-size:11px}.shift-calendar-modal .status-indicator{font-size:.45rem;right:.5px;top:.5px}.shift-calendar-modal .note-indicator{bottom:.5px;font-size:.45rem;right:.5px}.shift-calendar-modal h3{font-size:.85rem;margin-bottom:6px}.shift-management .submission-status{padding:6px 8px}.shift-management .locked-status{flex-direction:column;font-size:.75rem;gap:5px}.shift-management .unlock-button{font-size:.6rem;padding:2px 5px}.shift-management .shift-calendar{gap:12px;grid-template-columns:1fr}.shift-management .shift-list-view{gap:8px;padding:8px}}.customer-management{background-color:#f8f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:100%;min-height:100vh;padding:16px}.customer-management *{box-sizing:border-box}.customer-header{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#333;margin-bottom:20px;padding:16px;text-align:center}.customer-header h1{font-size:24px;font-weight:700;margin:0 0 8px}.customer-header p{color:#666;font-size:16px;margin:0}.customer-controls{box-shadow:0 2px 4px #0000001a;flex-direction:column;gap:16px;padding:16px}.customer-controls,.customer-stats{background:#fff;border-radius:8px;display:flex;margin-bottom:20px}.customer-stats{box-shadow:0 2px 8px #0000001a;flex-wrap:wrap;gap:20px;justify-content:space-around;padding:20px}.stat-number.status-inactive{color:#6c757d}.stat-number.status-prospect{color:#ffc107}.customer-form{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:10px!important;padding:10px 14px!important}.customer-form h3{color:#495057;font-size:14px!important;margin:0 0 8px!important}.form-grid{grid-gap:8px!important;gap:8px!important;grid-template-columns:repeat(3,1fr)!important;margin-bottom:8px!important}.form-group label{color:#333;font-size:13px!important;margin-bottom:2px!important}.form-group input,.form-group select,.form-group textarea{border:1px solid #e9ecef!important;border-radius:4px!important;font-size:13px!important;padding:6px 8px!important}.color-palette{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(10,1fr);margin-top:6px}.color-swatch{border:2px solid #0000;border-radius:6px;cursor:pointer;height:22px;width:22px}.color-swatch.selected{border-color:#2c3e50}.form-actions{justify-content:flex-end}.add-btn,.add-new-btn,.cancel-btn,.update-btn{border:none;border-radius:4px!important;cursor:pointer;font-size:1rem;font-weight:600;padding:6px 12px!important;transition:all .3s ease}.customer-list{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;max-height:70vh;min-height:400px;overflow-y:auto;padding:20px}.customers-table{border-collapse:collapse;margin-top:10px;table-layout:fixed;width:100%}.customers-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;box-sizing:border-box;color:#495057;display:table-cell;font-size:11px;font-weight:600;height:32.5px;line-height:24.5px;min-height:32.5px;padding:4px 6px;text-align:center;vertical-align:middle}.customers-table td:not(:last-child),.customers-table th,.customers-table th:not(:last-child){word-wrap:break-word;max-height:none;overflow:visible;white-space:normal;word-break:break-word}.customers-table td:not(:last-child),.customers-table th:not(:last-child){width:auto}.customers-table td:last-child,.customers-table th:last-child{border-right:1px solid #0000;box-sizing:border-box;display:table-cell;height:32.5px;line-height:24.5px;max-height:32.5px;max-width:120px;min-height:32.5px;min-width:120px;overflow:hidden;padding:4px 6px;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;width:120px}.customers-table th:last-child{border-bottom:2px solid #dee2e6}.customers-table td{word-wrap:break-word;border-bottom:1px solid #e9ecef;border-right:1px solid #e9ecef;display:table-cell;font-size:11px;height:32.5px;line-height:24.5px;overflow:visible;padding:4px 6px;vertical-align:middle;white-space:normal;word-break:break-word}.customers-table td,.customers-table tr{box-sizing:border-box;max-height:none;min-height:32.5px}.customers-table tr{display:table-row;height:auto;line-height:0}.customers-table tr:hover{background:#f8f9fa}.customer-contact,.customer-name{color:#495057;font-weight:600}.customer-address{color:#6c757d;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-phone{color:#6c757d}.customer-email{color:#6c757d;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-industry{color:#6c757d}.customer-size{color:#6c757d}.customer-size,.customer-status{text-align:center}.status-badge.status-inactive{background:#f8d7da;color:#721c24}.status-badge.status-prospect{background:#fff3cd;color:#856404}.customer-priority{text-align:center}.customer-last-contact,.customer-next-contact{color:#6c757d;text-align:center}.customer-notes{color:#6c757d;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-color{text-align:center}.color-chip{border:1px solid #e1e8ed;border-radius:6px;display:inline-block;height:18px;width:18px}.customer-actions{display:flex;flex-wrap:nowrap;gap:2px;justify-content:center;white-space:nowrap}.contact-btn,.delete-btn,.edit-btn,.history-btn{align-items:center!important;border:none;border-radius:3px;box-sizing:border-box!important;cursor:pointer;display:inline-flex!important;font-size:10px!important;font-weight:600;height:20px!important;justify-content:center!important;line-height:16px!important;margin:0 3px!important;max-height:20px!important;min-height:20px!important;padding:2px 6px!important;transition:all .3s ease}.contact-btn{background:#17a2b8;color:#fff}.contact-btn:hover{background:#138496;transform:translateY(-1px)}.edit-modal{max-width:600px!important}.edit-modal .form-group{display:flex;flex-direction:column}.edit-modal .form-group label{color:#495057;font-size:13px;font-weight:600;margin-bottom:4px}.edit-modal .form-group input,.edit-modal .form-group select,.edit-modal .form-group textarea{border:1px solid #e9ecef;border-radius:4px;font-size:13px;padding:8px}.contact-form{margin-bottom:20px}.contact-form .form-group{margin-bottom:15px}.contact-form label{color:#495057;display:block;font-weight:600;margin-bottom:5px}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid #e9ecef;border-radius:4px;font-size:16px;padding:8px 12px;width:100%}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#667eea;outline:none}.history-modal{max-width:800px}.history-list{margin-bottom:20px;max-height:400px;overflow-y:auto}.history-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-bottom:10px;padding:15px}.history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.history-date{color:#495057;font-weight:600}.history-type{border-radius:4px;font-size:.8rem;font-weight:600;padding:2px 8px}.history-type.type-phone{background:#d4edda;color:#155724}.history-type.type-email{background:#d1ecf1;color:#0c5460}.history-type.type-meeting{background:#fff3cd;color:#856404}.history-type.type-visit{background:#f8d7da;color:#721c24}.history-type.type-other{background:#e2e3e5;color:#383d41}.history-summary{color:#495057;font-weight:600;margin-bottom:8px}.history-notes{color:#6c757d;font-size:16px;margin-bottom:8px}.history-next-action{color:#007bff;font-size:16px;font-weight:600}.no-history{color:#6c757d;padding:20px;text-align:center}@media (max-width:1200px){.customer-controls{align-items:stretch;flex-direction:column}.search-section{order:1}.filter-section{justify-content:center;order:2}.action-buttons{justify-content:center;order:3}.form-grid{grid-template-columns:1fr}.list-header{align-items:stretch;flex-direction:column;gap:10px}.sort-controls{justify-content:center}.customer-stats{align-items:center;flex-direction:column}.stat-item{min-width:auto}}@media (max-width:768px){.customer-management{padding:15px}.customer-header h1{font-size:1.5rem}.action-buttons,.filter-section{flex-direction:column}.action-buttons button{width:100%}.form-actions{flex-direction:column}.add-btn,.add-new-btn,.cancel-btn,.update-btn{width:100%}.customers-table{font-size:.8rem;table-layout:fixed}.customers-table td:not(:last-child),.customers-table th:not(:last-child){word-wrap:break-word;height:32.5px;max-height:none;min-height:32.5px;overflow:visible;padding:8px 4px;white-space:normal;width:auto;word-break:break-word}.customers-table td:last-child,.customers-table th:last-child{height:32.5px;max-height:32.5px;max-width:100px;min-height:32.5px;min-width:100px;overflow:hidden;padding:8px 4px;white-space:nowrap;width:100px}.customer-actions{flex-direction:column;height:100%;max-height:32.5px;min-height:32.5px}.customer-actions .delete-btn,.customer-actions .edit-btn{font-size:9px;height:20px;line-height:14px;max-height:20px;min-height:20px;padding:2px 6px;width:100%}.contact-btn,.delete-btn,.edit-btn,.history-btn{width:100%}.modal{padding:15px;width:95%}.modal-actions{flex-direction:column}.cancel-btn,.confirm-btn{width:100%}}@media (max-width:480px){.customer-header h1{font-size:1.2rem}.customer-header p{font-size:16px}.customers-table{font-size:.7rem;table-layout:fixed}.customers-table td:not(:last-child),.customers-table th:not(:last-child){word-wrap:break-word;height:32.5px;max-height:none;min-height:32.5px;overflow:visible;padding:6px 2px;white-space:normal;width:auto;word-break:break-word}.customers-table td:last-child,.customers-table th:last-child{height:32.5px;max-height:32.5px;max-width:90px;min-height:32.5px;min-width:90px;overflow:hidden;padding:6px 2px;white-space:nowrap;width:90px}.priority-badge,.status-badge{font-size:.7rem;padding:2px 4px}}.site-management{background-color:#f8f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:100%;min-height:100vh;padding:16px}.site-management *{box-sizing:border-box}.site-header{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#333;margin-bottom:20px;padding:16px;text-align:center}.site-header h1{font-size:24px;font-weight:700;margin:0 0 8px}.site-header p{color:#666;font-size:16px;margin:0}.site-controls{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;gap:16px;margin-bottom:20px;padding:16px}.search-section{width:100%}.search-input{border-radius:6px;font-size:16px;padding:12px}.filter-section{gap:10px}.filter-select{background:#fff;border:2px solid #e9ecef;border-radius:6px;font-size:16px;padding:8px 12px;transition:border-color .3s ease}.filter-select:focus{border-color:#667eea;outline:none}.backup-btn{background:#17a2b8;color:#fff}.backup-btn:hover{background:#138496;transform:translateY(-1px)}.export-btn{background:#28a745}.export-btn:hover{background:#218838;transform:translateY(-1px)}.generate-btn{background:#ffc107;color:#212529}.generate-btn:hover{background:#e0a800;transform:translateY(-1px)}.bulk-delete-btn{background:#dc3545;color:#fff}.bulk-delete-btn:hover{background:#c82333;transform:translateY(-1px)}.restore-btn{background:#6c757d;color:#fff}.restore-btn:hover{background:#5a6268;transform:translateY(-1px)}.site-stats{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-around;margin-bottom:20px;padding:20px}.stat-item{min-width:100px}.stat-number{display:block;font-size:1.5rem}.stat-number.status-active{color:#28a745}.stat-number.status-completed{color:#17a2b8}.stat-number.status-pending{color:#ffc107}.stat-number.priority-high,.stat-number.status-cancelled{color:#dc3545}.stat-label{font-size:16px}.csv-upload-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:20px}.csv-upload-section h3{color:#495057;font-size:1.2rem;margin:0 0 15px}.csv-upload-content{display:flex;flex-direction:column;gap:15px}.file-upload-area{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;padding:20px;text-align:center}.file-select-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 20px;transition:all .3s ease}.file-select-btn:hover{background:#0056b3;transform:translateY(-1px)}.upload-hint{color:#6c757d;font-size:16px;margin:10px 0 0}.csv-preview{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:15px}.csv-preview h4{color:#495057;font-size:1rem;margin:0 0 10px}.csv-data-list{margin-bottom:15px}.csv-data-item{background:#fff;border-left:3px solid #28a745;border-radius:4px;margin-bottom:5px}.csv-data-item,.csv-data-more{font-size:16px;padding:8px 12px}.csv-data-more{color:#6c757d;font-style:italic}.csv-errors{border-top:1px solid #dee2e6;margin-top:15px;padding-top:15px}.csv-errors h4{color:#dc3545;font-size:1rem;margin:0 0 10px}.error-list{margin-bottom:15px}.error-item{background:#f8d7da;border-left:3px solid #dc3545;border-radius:4px;color:#721c24;margin-bottom:5px}.error-item,.error-more{font-size:16px;padding:8px 12px}.error-more{color:#6c757d;font-style:italic}.csv-actions{display:flex;gap:10px;justify-content:center}.upload-confirm-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 20px;transition:all .3s ease}.upload-confirm-btn:hover:not(:disabled){background:#218838;transform:translateY(-1px)}.upload-confirm-btn:disabled{background:#6c757d;cursor:not-allowed;transform:none}.upload-cancel-btn{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 20px;transition:all .3s ease}.upload-cancel-btn:hover{background:#5a6268;transform:translateY(-1px)}.site-form{background:#fff!important;border-radius:4px!important;box-shadow:0 1px 3px #0000000f!important;margin-bottom:12px!important;padding:8px 12px!important}.site-form h3{color:#495057!important;font-size:13px!important;font-weight:600!important;margin:0 0 6px!important}.site-form .form-grid{grid-gap:8px!important;display:grid!important;gap:8px!important;grid-template-columns:repeat(4,1fr)!important;margin-bottom:8px!important}.site-form .form-group{display:flex!important;flex-direction:column!important}.site-form .form-group-full,.site-form .form-group.full-width{grid-column:1/-1!important}.site-form .form-group label{color:#555!important;font-size:12px!important;font-weight:500!important;margin-bottom:2px!important}.site-form .form-group input,.site-form .form-group select,.site-form .form-group textarea{border:1px solid #ddd!important;border-radius:3px!important;font-size:13px!important;height:auto!important;padding:4px 6px!important}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#dc3545}.error-message{font-size:.8rem;margin-top:5px}.site-form .form-actions{display:flex!important;gap:6px!important;justify-content:flex-end!important;margin-top:6px!important}.site-form .add-btn,.site-form .cancel-btn,.site-form .update-btn{border:none!important;border-radius:3px!important;cursor:pointer!important;font-size:11px!important;font-weight:500!important;padding:4px 10px!important}.add-btn,.update-btn{background:#007bff;color:#fff}.add-btn:hover,.update-btn:hover{background:#0056b3;transform:translateY(-1px)}.add-new-btn{background:#28a745;color:#fff}.add-new-btn:hover{background:#218838;transform:translateY(-1px)}.site-list{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;max-height:70vh;min-height:400px;padding:20px}.list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.list-header h3{color:#495057;font-size:1.2rem;margin:0}.sort-controls{align-items:center;display:flex;gap:10px}.sort-controls select{background:#fff;border:2px solid #e9ecef;font-size:16px}.sort-btn,.sort-controls select{border-radius:6px;padding:8px 12px}.empty-state{padding:40px 20px}.empty-state p{font-size:1rem;margin:5px 0}.sites-table{border-collapse:collapse;margin-top:15px;table-layout:fixed;width:100%}.sites-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;box-sizing:border-box;color:#495057;display:table-cell;font-size:11px;font-weight:600;height:32.5px;line-height:24.5px;min-height:32.5px;padding:4px 6px;text-align:center;vertical-align:middle}.sites-table td:not(:last-child),.sites-table th,.sites-table th:not(:last-child){word-wrap:break-word;max-height:none;overflow:visible;white-space:normal;word-break:break-word}.sites-table td:not(:last-child),.sites-table th:not(:last-child){width:auto}.sites-table td:last-child,.sites-table th:last-child{border-right:1px solid #0000;box-sizing:border-box;display:table-cell;height:32.5px;line-height:24.5px;max-height:32.5px;max-width:120px;min-height:32.5px;min-width:120px;overflow:hidden;padding:4px 6px;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;width:120px}.sites-table th:last-child{border-bottom:2px solid #dee2e6}.sites-table td{word-wrap:break-word;border-bottom:1px solid #e9ecef;border-right:1px solid #e9ecef;display:table-cell;font-size:11px;height:32.5px;line-height:24.5px;overflow:visible;padding:4px 6px;vertical-align:middle;white-space:normal;word-break:break-word}.sites-table td,.sites-table tr{box-sizing:border-box;max-height:none;min-height:32.5px}.sites-table tr{display:table-row;height:auto;line-height:0}.sites-table td:last-child{border-right:1px solid #0000}.sites-table tr:hover{background:#f8f9fa}.site-company,.site-contact,.site-name{color:#495057;font-weight:600}.site-company,.site-contact,.site-name,.site-phone{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-phone{color:#6c757d}.site-months{color:#495057;font-size:.8rem}.site-email,.site-months{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-email{max-width:150px}.site-email,.site-project-type{color:#6c757d}.site-budget,.site-dates{color:#6c757d;text-align:center}.site-status{text-align:center}.status-badge{border-radius:4px;padding:4px 8px}.status-badge.status-active{background:#d4edda;color:#155724}.status-badge.status-completed{background:#d1ecf1;color:#0c5460}.status-badge.status-pending{background:#fff3cd;color:#856404}.status-badge.status-cancelled{background:#f8d7da;color:#721c24}.site-priority{text-align:center}.priority-badge{border-radius:4px;display:inline-block;font-size:.8rem;font-weight:600;padding:4px 8px}.priority-badge.priority-high{background:#f8d7da;color:#721c24}.priority-badge.priority-medium{background:#fff3cd;color:#856404}.priority-badge.priority-low{background:#d1ecf1;color:#0c5460}.site-manager{color:#6c757d}.site-team-size{color:#6c757d;text-align:center}.site-notes{color:#6c757d;max-width:150px;text-overflow:ellipsis}.site-actions,.site-notes{overflow:hidden;white-space:nowrap}.site-actions{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:nowrap;gap:6px;height:24.5px;justify-content:center;max-height:24.5px;min-height:24.5px;padding:0}.site-actions .delete-btn,.site-actions .edit-btn{align-items:center!important;border:none!important;border-radius:3px!important;box-sizing:border-box!important;cursor:pointer!important;display:inline-flex!important;flex-shrink:0!important;font-size:10px!important;font-weight:600!important;height:20px!important;justify-content:center!important;line-height:16px!important;margin:0 3px!important;max-height:20px!important;min-height:20px!important;padding:2px 6px!important;transition:all .2s ease!important;white-space:nowrap!important;width:auto!important}.delete-btn,.edit-btn,.history-btn,.progress-btn{border:none;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:600;padding:4px 8px;transition:all .3s ease}.edit-btn{background:#ffc107;color:#212529}.edit-btn:hover{background:#e0a800;transform:translateY(-1px)}.progress-btn{background:#17a2b8;color:#fff}.progress-btn:hover{background:#138496;transform:translateY(-1px)}.history-btn{background:#6f42c1;color:#fff}.history-btn:hover{background:#5a32a3;transform:translateY(-1px)}.delete-btn{background:#dc3545;color:#fff}.delete-btn:hover{background:#c82333;transform:translateY(-1px)}.site-actions .delete-btn:hover,.site-actions .edit-btn:hover{background:inherit!important;transform:none!important}.site-actions .edit-btn:hover{background:#e0a800!important}.site-actions .delete-btn:hover{background:#c82333!important}.month-checkbox-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(4,1fr);margin-top:.5rem}.month-checkbox-label{align-items:center;border-radius:.25rem;cursor:pointer;display:flex;font-size:.875rem;gap:.25rem;padding:.25rem;transition:background-color .2s}.month-checkbox-label:hover{background-color:#f0f0f0}.month-checkbox-label input[type=checkbox]{height:1rem;width:1rem}.month-select-btn{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:11px;padding:6px 8px;text-align:left;transition:all .2s;width:100%}.month-select-btn:hover{background:#e9ecef;border-color:#adb5bd}.selected-months-display{background:#e3f2fd;border-radius:3px;color:#495057;font-size:10px;line-height:1.4;margin-top:4px;padding:4px 6px}.edit-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:99998}.edit-modal{background:#fff;border-radius:1rem;box-shadow:0 10px 40px #0000004d;max-height:80vh;max-width:600px;overflow-y:auto;padding:1.5rem;width:90%}.edit-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.edit-modal-header h3{font-size:1.125rem;font-weight:600;margin:0}.edit-modal-close{background:none;border:none;color:#6b7280;cursor:pointer;font-size:1.25rem}.edit-modal-close:hover{color:#374151}.edit-modal .modal-form-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:1rem}.edit-modal .form-group.full-width{grid-column:1/-1}.edit-modal .modal-actions{border-top:1px solid #e5e7eb;display:flex;gap:10px;justify-content:flex-end;padding-top:1rem}.month-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:99999}.month-modal{background:#fff;border-radius:1rem;box-shadow:0 10px 40px #0000004d;max-width:400px;padding:1.5rem;width:90%}.month-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.month-modal-header h3{color:#333;font-size:1.125rem;font-weight:600;margin:0}.month-modal-close{background:none;border:none;color:#666;cursor:pointer;font-size:1.25rem;line-height:1;padding:.25rem}.month-modal-close:hover{color:#333}.month-modal-done{background:#3b82f6;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.75rem;transition:background .2s ease;width:100%}.month-modal-done:hover{background:#2563eb}.label-with-toggle{align-items:center;display:flex;gap:8px;justify-content:center;margin-bottom:2px}.label-with-toggle label:first-child{margin-bottom:0!important}.company-select-container{display:flex;flex-direction:column;gap:4px}.new-company-toggle{align-items:center;cursor:pointer;display:flex;font-size:10px;gap:3px;white-space:nowrap}.new-company-toggle input[type=checkbox]{height:12px;margin:0;width:12px}.hint-message{color:#17a2b8;font-size:9px;margin-top:2px}.form-group-full{grid-column:1/-1}.form-group-full textarea{border:1px solid #ddd;border-radius:.25rem;padding:.5rem;resize:vertical;width:100%}@media (max-width:768px){.month-checkbox-grid{grid-template-columns:repeat(2,1fr)}}.progress-form{margin-bottom:20px}.progress-form .form-group{margin-bottom:15px}.progress-form label{color:#495057;display:block;font-weight:600;margin-bottom:5px}.progress-form input,.progress-form select,.progress-form textarea{border:1px solid #e9ecef;border-radius:4px;font-size:16px;padding:8px 12px;width:100%}.progress-form input:focus,.progress-form select:focus,.progress-form textarea:focus{border-color:#667eea;outline:none}.progress-modal{max-width:800px}.progress-list{margin-bottom:20px;max-height:400px;overflow-y:auto}.progress-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-bottom:10px;padding:15px}.progress-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.progress-date{color:#495057;font-weight:600}.progress-percentage{color:#007bff;font-weight:600}.progress-notes{color:#495057;font-weight:600;margin-bottom:8px}.progress-issues{color:#dc3545;font-size:16px;margin-bottom:8px}.progress-next-steps{color:#28a745;font-size:16px;font-weight:600}.no-progress{color:#6c757d;padding:20px;text-align:center}@media (max-width:1200px){.site-controls{align-items:stretch;flex-direction:column}.search-section{order:1}.filter-section{justify-content:center;order:2}.action-buttons{justify-content:center;order:3}.form-grid{grid-template-columns:1fr}.list-header{align-items:stretch;flex-direction:column;gap:10px}.sort-controls{justify-content:center}.site-stats{align-items:center;flex-direction:column}.stat-item{min-width:auto}}@media (max-width:768px){.site-management{padding:15px}.site-header h1{font-size:1.5rem}.action-buttons,.filter-section{flex-direction:column}.action-buttons button{width:100%}.form-actions{flex-direction:column}.add-btn,.add-new-btn,.cancel-btn,.update-btn{width:100%}.sites-table{font-size:.8rem;table-layout:fixed}.sites-table td:not(:last-child),.sites-table th:not(:last-child){height:32.5px;max-height:32.5px;min-height:32.5px;overflow:hidden;padding:8px 4px;text-overflow:ellipsis;white-space:nowrap;width:auto}.sites-table td:last-child,.sites-table th:last-child{height:32.5px;max-height:32.5px;max-width:100px;min-height:32.5px;min-width:100px;overflow:hidden;padding:8px 4px;white-space:nowrap;width:100px}.site-actions{flex-direction:column;height:100%;max-height:32.5px;min-height:32.5px}.site-actions .delete-btn,.site-actions .edit-btn{font-size:9px;height:20px;line-height:14px;max-height:20px;min-height:20px;padding:2px 6px;width:100%}.delete-btn,.edit-btn,.history-btn,.progress-btn{width:100%}.modal{padding:15px;width:95%}.modal-actions{flex-direction:column}.cancel-btn,.confirm-btn{width:100%}}@media (max-width:480px){.site-header h1{font-size:1.2rem}.site-header p{font-size:16px}.sites-table{font-size:.7rem;table-layout:fixed}.sites-table td:not(:last-child),.sites-table th:not(:last-child){height:32.5px;max-height:32.5px;min-height:32.5px;overflow:hidden;padding:6px 2px;text-overflow:ellipsis;white-space:nowrap;width:auto}.sites-table td:last-child,.sites-table th:last-child{height:32.5px;max-height:32.5px;max-width:90px;min-height:32.5px;min-width:90px;overflow:hidden;padding:6px 2px;white-space:nowrap;width:90px}.priority-badge,.status-badge{font-size:.7rem;padding:2px 4px}}.transport-expense-application{background-color:#f8f9fa;font-family:Times New Roman,serif;margin:0 auto;max-width:100%;min-height:100vh;padding:1rem 1rem 6rem}.transport-expense-application *{box-sizing:border-box}.header{background:none;background-color:initial;background-image:none;border-radius:0;box-shadow:none;color:#333;padding:0}.header h1{color:#333;margin:0;text-shadow:none}.header .month-selector{justify-content:center}.month-selector label{flex-shrink:0;white-space:nowrap}.month-input{flex-shrink:0}.submitted-notice{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:20px;padding:15px;text-align:center}.submitted-notice h3{color:#856404;font-size:1.1rem;margin:0 0 10px}.submitted-notice p{color:#856404;font-size:16px;margin:0}.summary-cards{flex-wrap:nowrap;margin:0 auto 1.5rem;max-width:960px;overflow-x:auto;width:100%}.summary-card:before{background:linear-gradient(90deg,#667eea,#764ba2)}.summary-card .number.status-pending{color:#f57c00}.controls{gap:0}.controls .filter-section,.controls .search-section,.controls .search-section .search-input,.controls>*{margin-bottom:0;margin-top:0}.filter-select:focus,.search-input:focus,.sort-btn:hover,.sort-select:focus{border-color:#667eea}.action-buttons{margin-bottom:1.5rem;text-align:center;width:100%}.add-button,.export-btn,.submit-btn{border:2px solid #bdc3c7;border-radius:.375rem;cursor:pointer;flex-shrink:0;font-family:Times New Roman,serif;font-size:.875rem;font-weight:600;min-width:7.5rem;padding:.5rem 1rem;transition:all .3s ease;white-space:nowrap;width:auto}.add-button{background:#27ae60;border-color:#27ae60;color:#fff}.add-button.disabled{background:#95a5a6;border-color:#95a5a6;cursor:not-allowed}.submit-btn{background:#3498db;border-color:#3498db}.submit-btn:hover:not(:disabled){background:#2980b9;border-color:#2980b9}.submit-btn:disabled{background:#95a5a6;border-color:#95a5a6;cursor:not-allowed}.export-btn{border-color:#9b59b6}.export-btn:hover{background:#8e44ad;border-color:#8e44ad}.add-item-form{background:#fff;border:2px solid #bdc3c7;border-radius:0;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:20px}.add-item-form h3{color:#2c3e50;font-family:Times New Roman,serif;font-size:1.2rem;margin:0 0 15px}.form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr;margin-bottom:16px}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-group label{color:#2c3e50;font-family:Times New Roman,serif;font-size:16px;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{background:#fff;border:2px solid #bdc3c7;border-radius:0;color:#2c3e50;font-family:Times New Roman,serif;padding:12px;transition:border-color .3s ease}input[type=number]{-webkit-appearance:textfield;appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3498db}.routes-section{margin-top:20px}.routes-section h4{color:#495057;font-size:1.1rem;margin:0 0 15px}.route-form{background:#f8f9fa;border-radius:6px;margin-bottom:15px;padding:15px}.route-inputs{grid-gap:10px;align-items:end;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.add-route-button{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:10px 20px;transition:all .3s ease}.add-route-button:hover{background:#0056b3;transform:translateY(-1px)}.routes-list{margin-top:15px}.routes-list h5{color:#495057;font-size:.95rem;margin:0 0 10px}.route-info{background:#fff;border:1px solid #e9ecef;border-radius:.75rem;font-size:.85rem;gap:.75rem;line-height:1.5;padding:1rem}.route-line{color:#1f2937}.route-info-editable{gap:.9rem}.route-separator{align-items:center;color:#94a3b8;display:inline-flex;font-weight:600}.route-info-editable .route-separator{display:none}.route-detail,.route-line .round-trip{align-items:center;display:flex;flex-wrap:wrap;gap:.35rem}.from,.to{color:#495057;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-info-editable .from,.route-info-editable .route-contents,.route-info-editable .route-contents *,.route-info-editable .route-detail,.route-info-editable .route-detail *,.route-info-editable .route-details,.route-info-editable .route-details *,.route-info-editable .to{max-width:none;overflow:visible;text-overflow:clip;white-space:normal}.round-trip{background:#d1fae5;color:#047857;font-size:.7rem;padding:.2rem .55rem}.route-details,.route-meta{color:#6c757d;font-size:.78rem;gap:.35rem}.route-meta{align-items:center;display:flex;flex-wrap:wrap}.route-purpose-wrapper{margin-left:.5rem}.receipt-number{color:#17a2b8;font-size:.8rem;font-weight:600}.remove-route-button{align-items:center;background:#dc35452e;border:none;border-radius:9999px;color:#dc3545;cursor:pointer;display:flex;font-size:.6rem;font-weight:700;height:1.05rem;justify-content:center;padding:0;position:absolute;right:.18rem;top:.18rem;transition:background-color .2s ease,transform .2s ease;width:1.05rem}.route-info.route-info-single{display:flex;flex-direction:column;gap:.18rem;min-height:1.9rem;position:relative}.route-info-single .route-line,.route-info-single .route-meta{font-size:.82rem}.remove-route-button:hover{background:#dc354533;transform:translateY(-1px)}.route-info-editable .route-row{align-items:center;display:flex;flex-wrap:wrap;gap:.3rem;min-height:1.6rem;padding-right:1.35rem;position:relative}.route-info-editable .route-row .route-line{flex:1 1 auto}@media (max-width:48rem){.route-info{font-size:.8rem;gap:.6rem;padding:.85rem}.route-details,.route-line,.route-meta{justify-content:center;text-align:center}.route-purpose-input-inline{font-size:.8rem;max-width:180px;min-width:100px}.route-cost-input-inline{font-size:.8rem;max-width:90px}.time-row.single-row{align-items:center;flex-direction:column;gap:.3rem}.remove-route-button{font-size:.55rem;height:1rem;width:1rem}}.form-actions{display:flex;gap:10px;justify-content:center;margin-top:.75rem}.cancel-button,.save-button{border-radius:6px;font-size:.8rem;padding:8px 16px}.expense-list{border-radius:8px;margin-bottom:20px;padding:20px}.expense-list h3{font-size:1.2rem;margin:0 0 15px}.empty-state{border-radius:12px;padding:60px 20px}.empty-state:before{content:"🚗";font-size:48px;margin-bottom:16px}.empty-state p{font-size:1.1rem;margin:8px 0}.empty-state p:first-of-type{color:#495057;font-size:1.3rem;font-weight:600}.items-grid{gap:1.25rem;margin-top:1.5rem}.expense-item{grid-gap:1rem;border-radius:.5rem;display:grid;gap:1rem;grid-template-columns:8rem 6rem 12rem 1fr 16rem;margin-bottom:.5rem;padding:1rem}.expense-item:before{background:linear-gradient(90deg,#667eea,#764ba2)}.expense-item:hover{border-color:#667eea}.card-top{gap:.9rem;width:100%}.card-meta,.card-top{display:flex;flex-direction:column}.card-meta{gap:.75rem}.meta-primary{align-items:center;display:flex;gap:.75rem;min-width:0;width:100%}.meta-item{color:#1f2937;flex:0 1 auto;font-size:1rem;font-weight:700;min-width:0;white-space:nowrap}.meta-primary .meta-item:first-of-type{flex:1 1 auto;text-align:left}.meta-primary .meta-item:nth-of-type(2){flex:1 1;font-size:1.1rem;font-weight:800;padding-left:4rem;text-align:center}.meta-actions{align-items:center;display:flex;flex:1 1 auto;gap:.8rem;justify-content:flex-end;margin-left:0;padding-right:.5rem}.meta-actions button{flex:0 0 auto;font-size:1rem;padding:.6rem 1rem}.expense-date{display:flex;flex-direction:column;gap:.25rem;min-width:8rem;width:8rem}.expense-status{align-items:center;min-width:7rem;width:7rem}.expense-amount,.expense-status{display:flex;justify-content:center}.expense-amount{flex-direction:column;gap:.25rem;min-width:5rem;text-align:right;width:5rem}.expense-working{grid-gap:.5rem;align-items:center;color:#495057;display:grid;font-size:.85rem;gap:.5rem;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto;justify-items:center;text-align:left;width:100%}.expense-working .working-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;width:100%}.expense-working .working-label{flex:1 1 5rem;font-weight:600;min-width:4rem;opacity:.7}.expense-working .working-value{flex:1 1 4rem;font-weight:700;text-align:right}.items-grid.mobile-cards .expense-item.mobile-card{align-items:stretch;display:flex;flex-direction:column;gap:1rem}.items-grid.mobile-cards .expense-item.mobile-card>*{width:100%}@media (max-width:48rem){.items-grid.mobile-cards .expense-item.mobile-card .meta-primary{align-items:center;flex-direction:column;flex-wrap:nowrap;gap:.5rem}.time-row .form-group{min-width:0;width:100%}.items-grid.mobile-cards .expense-item.mobile-card .meta-item{text-align:center;width:100%}.items-grid.mobile-cards .expense-item.mobile-card .meta-item:nth-of-type(2){margin:0}.items-grid.mobile-cards .expense-item.mobile-card .meta-actions{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:6px;justify-content:center;margin-left:0;overflow:hidden;white-space:nowrap;width:100%}.items-grid.mobile-cards .expense-item.mobile-card .meta-actions button{align-items:center!important;border:none!important;border-radius:6px!important;box-sizing:border-box!important;cursor:pointer!important;display:inline-flex!important;flex-shrink:0!important;flex:0 0 auto!important;font-size:22px!important;font-weight:600!important;height:48px!important;justify-content:center!important;line-height:32px!important;margin:0!important;max-height:48px!important;min-height:48px!important;min-width:0!important;overflow:hidden!important;padding:8px 16px!important;text-overflow:ellipsis!important;transition:all .2s ease!important;white-space:nowrap!important;width:auto!important}.items-grid.mobile-cards .expense-item.mobile-card .expense-working{align-items:center;text-align:center;width:100%}.items-grid.mobile-cards .expense-item.mobile-card .expense-working .working-row{align-items:center;flex-direction:column;gap:.3rem;max-width:none;width:100%}.items-grid.mobile-cards .expense-item.mobile-card .expense-working .working-label,.items-grid.mobile-cards .expense-item.mobile-card .expense-working .working-value{flex:0 0 auto;min-width:0;min-width:auto;text-align:center;width:100%}.expense-working,.mobile-card .expense-working{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,auto)}.expense-working .working-row{width:100%}}.items-grid.mobile-cards .expense-item.mobile-card .routes-container{display:flex;flex-direction:column;gap:.75rem;width:100%}.items-grid.mobile-cards .expense-item.mobile-card .routes-container .route-info{flex-direction:column;margin:.5rem 0}.items-grid.mobile-cards .expense-item.mobile-card .route-details,.items-grid.mobile-cards .expense-item.mobile-card .route-line,.items-grid.mobile-cards .expense-item.mobile-card .routes-container .route-info{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;text-align:center;width:100%}.items-grid.mobile-cards .expense-item.mobile-card .route-details{margin-top:.25rem}.items-grid.mobile-cards .expense-item.mobile-card .route-detail .arrow,.items-grid.mobile-cards .expense-item.mobile-card .route-detail .from,.items-grid.mobile-cards .expense-item.mobile-card .route-detail .round-trip,.items-grid.mobile-cards .expense-item.mobile-card .route-detail .to{flex:0 1 auto;text-align:center}.items-grid.mobile-cards .expense-item.mobile-card .route-details .route-purpose{align-items:center;background:#3b82f624;border-radius:9999px;color:#1d4ed8;display:inline-flex;font-size:.78rem;justify-content:center;padding:.25rem .6rem}.items-grid.mobile-cards .expense-item.mobile-card .notes-section{background:#f1f5f999;border-radius:.5rem;display:block;line-height:1.5;margin-top:.4rem;padding:.5rem .75rem;text-align:left;width:100%;word-break:break-word}.items-grid.mobile-cards .expense-item.mobile-card .notes-section strong{margin-right:.4rem}.items-grid.mobile-cards .expense-item.mobile-card .expense-working{gap:.45rem}.expense-actions{align-items:center;display:flex;flex:0 0 auto;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;min-width:0;min-width:auto}.expense-details{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:1rem;min-width:0;text-align:center}.expense-item.is-clickable{cursor:pointer}.expense-item.is-editing{cursor:default}.expense-item.is-clickable:focus,.expense-item.is-clickable:focus-visible{outline:2px solid #004f80;outline-offset:4px}.expense-item.is-clickable:focus-within{outline:2px solid #004f80;outline-offset:4px}.expense-details.is-editing{align-items:stretch;flex-direction:column;gap:1rem}.expense-item.is-clickable .route-summary{align-items:center;display:flex;gap:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.route-summary{width:100%}.route-summary-item{align-items:center;color:#495057;display:inline-flex;font-weight:600;gap:.25rem}.route-summary .arrow{color:#868e96;font-weight:600}.route-divider{color:#adb5bd;font-size:.85rem}.route-summary-empty{color:#adb5bd;font-size:.9rem}.expense-notes{display:flex;flex-direction:column;gap:.25rem;min-width:16rem;width:16rem}.date-display{color:#495057;font-size:.875rem;font-weight:600}.amount-display{color:#28a745;font-size:1rem;font-weight:700}.notes-display{color:#6c757d;font-size:.875rem;line-height:1.4;max-width:100%;overflow:hidden;text-overflow:ellipsis}.notes-display,.route-purpose{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.route-purpose{line-clamp:2;word-break:break-word}.route-detail{-webkit-line-clamp:unset;line-clamp:none;-webkit-box-orient:unset;overflow:visible;text-overflow:clip;word-break:break-word}.detail-modal{max-width:640px;width:95%}.detail-route-item{background:#f8f9fa;border:1px solid #dee2e6;border-radius:12px;gap:.75rem;padding:1rem}.detail-route-path{color:#495057;font-weight:500}.detail-route-path .arrow{color:#868e96;font-weight:600}.detail-route-meta{color:#495057;font-size:.9rem;gap:.5rem 1.5rem}.routes-container{flex:1 1;min-width:0}.notes-container{flex:0 0 12rem;min-width:8rem}.item-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:10px}.item-header h4{color:#495057;font-size:1.1rem;font-weight:600;margin:0}.item-employee{display:flex;flex-direction:column;gap:2px}.employee-name{color:#495057;font-size:16px;font-weight:600}.department{color:#6c757d;font-size:.8rem}.item-status{align-items:center;display:flex}.status-badge{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.5px;overflow:hidden;padding:6px 12px;position:relative;text-transform:uppercase}.status-badge.status-pending{background:linear-gradient(135deg,#ff9800,#f57c00);box-shadow:0 2px 8px #ff98004d;color:#fff}.item-total{font-size:16px}.item-actions{gap:5px}.copy-button,.delete-button,.duplicate-button,.edit-button{align-items:center;border:none;border-radius:.375rem;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;height:2.5rem;justify-content:center;min-width:4rem;padding:0 1rem;transition:all .3s ease}.edit-button{background:#ffc107;color:#212529}.edit-button:hover:not(.disabled){background:#e0a800;transform:translateY(-1px)}.duplicate-button{background:#17a2b8;color:#fff}.duplicate-button:hover:not(.disabled){background:#138496;transform:translateY(-1px)}.copy-button{background:#6c757d;color:#fff}.copy-button:hover:not(.disabled){background:#5a6268;transform:translateY(-1px)}.delete-button{background:#dc3545;color:#fff}.delete-button:hover:not(.disabled){background:#c82333;transform:translateY(-1px)}.copy-button.disabled,.delete-button.disabled,.duplicate-button.disabled,.edit-button.disabled{background:#6c757d;cursor:not-allowed}.item-notes{background:#f8f9fa;border-radius:4px;color:#6c757d;font-size:16px;margin-top:10px;padding:10px}.application-actions{display:flex;gap:10px;justify-content:center;margin-top:20px}.export-button,.revert-button,.submit-button{border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.export-button{background:#17a2b8;color:#fff}.export-button:hover:not(:disabled){background:#138496;transform:translateY(-1px)}.export-button:disabled{background:#6c757d;cursor:not-allowed}.submit-button{background:#28a745}.submit-button:hover{background:#218838;transform:translateY(-1px)}.revert-button{background:#dc3545;color:#fff}.revert-button:hover{background:#c82333;transform:translateY(-1px)}.tips{background:#e3f2fd;border:1px solid #bbdefb;border-radius:.5rem;margin-top:1.25rem;padding:1.25rem}.tips-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.tips h4{color:#1976d2;font-size:1.125rem;margin:0}.edit-tips-button{background:#1976d2;border:1px solid #1976d2;border-radius:.25rem;color:#fff;cursor:pointer;font-size:.875rem;padding:.25rem .5rem;transition:all .3s ease}.edit-tips-button:hover{background:#1565c0;transform:translateY(-1px)}.tips ul{color:#1976d2;margin:0;padding-left:1.25rem}.tips li{font-size:1rem;margin-bottom:.5rem}.tips-editor{margin-top:1rem}.tip-edit-item{align-items:center;display:flex;gap:.5rem;margin-bottom:.75rem}.tip-input{background:#fff;border:1px solid #bbdefb;border-radius:.25rem;color:#1976d2;flex:1 1;font-size:1rem;padding:.5rem .75rem}.tip-input:focus{border-color:#1976d2;box-shadow:0 0 0 2px #1976d233;outline:none}.remove-tip-button{background:#f44336;border:1px solid #f44336;border-radius:.25rem;color:#fff;cursor:pointer;font-size:.875rem;padding:.25rem .5rem;transition:all .3s ease}.remove-tip-button:hover{background:#d32f2f;transform:translateY(-1px)}.tips-editor-actions{align-items:center;border-top:1px solid #bbdefb;display:flex;justify-content:space-between;margin-top:1rem;padding-top:1rem}.add-tip-button{background:#4caf50;border:1px solid #4caf50;border-radius:.25rem;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .3s ease}.add-tip-button:hover{background:#45a049;transform:translateY(-1px)}.tips-save-actions{display:flex;gap:.5rem}.save-tips-button{background:#1976d2;border:1px solid #1976d2;border-radius:.25rem;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .3s ease}.save-tips-button:hover{background:#1565c0;transform:translateY(-1px)}.cancel-tips-button{background:#6c757d;border:1px solid #6c757d;border-radius:.25rem;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .3s ease}.cancel-tips-button:hover{background:#5a6268;transform:translateY(-1px)}.submit-form{margin-bottom:20px}.form-group input,.form-group textarea{border:1px solid #e9ecef;border-radius:4px;font-size:16px;padding:8px 12px;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#667eea;outline:none}.export-options{margin-bottom:20px}.export-options label{cursor:pointer;display:block;margin-bottom:10px}.export-options input[type=radio]{margin-right:8px}.modal-actions{flex-shrink:0;margin-top:.3rem}.edit-input{background:#fff;border:1px solid #ddd;border-radius:.25rem;font-size:1rem;padding:.5rem}.cancel-button,.save-button{align-items:center;border:none;border-radius:.375rem;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;height:2.5rem;justify-content:center;min-width:4rem;padding:0 1rem;transition:all .3s ease}.save-button{background:#28a745;color:#fff}.save-button:hover{background:#218838;transform:translateY(-1px)}.cancel-button{background:#6c757d;color:#fff}.cancel-button:hover{background:#5a6268;transform:translateY(-1px)}.route-edit{background:#f8f9fa;border:1px solid #e9ecef;border-radius:.5rem;display:flex;flex-direction:column;gap:.5rem;padding:.75rem}.route-edit-row{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.route-edit-input{background:#fff;border:1px solid #ddd;border-radius:.25rem;flex:1 1;font-size:.875rem;min-width:0;overflow:hidden;padding:.375rem .5rem;text-overflow:ellipsis;white-space:nowrap}.route-edit-input[type=number]{-webkit-appearance:textfield;appearance:textfield}.route-edit-input[type=number]::-webkit-inner-spin-button,.route-edit-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.route-edit-input.cost{flex:0 0 auto;max-width:6rem}.route-edit-input.purpose{flex:2 1}.route-edit-select{background:#fff;border:1px solid #ddd;border-radius:.25rem;font-size:.875rem;min-width:5rem;padding:.375rem .5rem}.round-trip-checkbox{align-items:center;cursor:pointer;display:flex;font-size:.875rem;gap:.25rem;white-space:nowrap}.notes-edit-textarea{background:#fff;border:1px solid #ddd;border-radius:.25rem;font-size:.875rem;min-height:3rem;padding:.5rem;resize:vertical;width:100%}.cost-preview{background:#e3f2fd;border:1px solid #bbdefb;border-radius:.25rem;color:#1976d2;font-size:.75rem;font-weight:600;margin-top:.25rem;padding:.25rem .5rem}@media (max-width:1200px){.summary-grid{gap:.75rem;justify-content:center}.controls{align-items:stretch;flex-direction:column}.search-filter{order:1}.filter-section{justify-content:center;order:2}.action-buttons{justify-content:center;order:3}.expense-item,.form-grid,.items-grid,.route-inputs{grid-template-columns:1fr}.expense-item{align-items:flex-start;gap:.75rem}.expense-actions,.expense-amount,.expense-date,.expense-notes,.expense-status{min-width:auto;width:100%}.expense-actions,.expense-amount,.expense-date,.expense-status{align-items:center;display:flex;gap:.5rem}.expense-actions{justify-content:flex-start}.expense-details{flex-direction:column;gap:.75rem}}@media (max-width:768px){.meta-primary{display:flex;flex-wrap:nowrap;max-width:100%;min-width:0;overflow:hidden;width:100%}.meta-primary .meta-item:first-of-type,.meta-primary .meta-item:nth-of-type(2){flex:0 1 auto;min-width:0;overflow:hidden;padding-left:0;text-align:center;text-overflow:ellipsis;white-space:nowrap}.meta-primary .meta-item:first-of-type{flex:1 1;max-width:40%;min-width:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.meta-primary .meta-item:nth-of-type(2){flex:1 1;max-width:30%;min-width:0;overflow:hidden;padding-left:0;text-overflow:ellipsis;white-space:nowrap}.meta-actions{align-items:center;display:flex;flex:0 0 auto;flex-direction:row;flex-shrink:0;flex-wrap:nowrap;gap:6px;justify-content:flex-end;margin-left:auto;max-width:100%;min-width:0;overflow:hidden;padding-right:0;white-space:nowrap}.meta-actions button{align-items:center!important;border:none!important;border-radius:6px!important;box-sizing:border-box!important;cursor:pointer!important;display:inline-flex!important;flex-shrink:0!important;flex:0 0 auto!important;font-size:22px!important;font-weight:600!important;height:48px!important;justify-content:center!important;line-height:32px!important;margin:0!important;max-height:48px!important;min-height:48px!important;min-width:0!important;overflow:hidden!important;padding:8px 16px!important;text-overflow:ellipsis!important;transition:all .2s ease!important;white-space:nowrap!important;width:auto!important}.transport-expense-application{padding:15px 15px 120px}.expense-item{align-items:flex-start;gap:.5rem;grid-template-columns:1fr;padding:.75rem}.application-actions{margin-bottom:100px;padding-bottom:1rem}.expense-actions,.expense-amount,.expense-date,.expense-notes,.expense-status{min-width:auto;width:100%}.expense-actions,.expense-amount,.expense-date,.expense-status{align-items:center;display:flex;flex-wrap:wrap;gap:.25rem}.expense-actions{flex-wrap:wrap;justify-content:flex-start}.expense-details{flex-direction:column;gap:.5rem}.cancel-button,.delete-button,.duplicate-button,.edit-button,.save-button{font-size:.75rem;height:2rem;min-width:3rem;padding:0 .75rem}}@media (max-width:480px){.header h1{font-size:1.5rem}.month-selector{flex-direction:row;gap:.75rem}.filter-section{flex-direction:column}.filter-section.mobile-filter-row{flex-direction:row}.meta-actions{flex-wrap:nowrap;gap:4px;overflow:hidden}.meta-actions button{font-size:20px!important;height:44px!important;line-height:32px!important;max-height:44px!important;min-height:44px!important;padding:6px 12px!important}.items-grid.mobile-cards .expense-item.mobile-card .meta-actions{flex-wrap:nowrap;gap:8px;overflow:hidden}.items-grid.mobile-cards .expense-item.mobile-card .meta-actions button{font-size:20px!important;height:44px!important;line-height:32px!important;max-height:44px!important;min-height:44px!important;padding:6px 12px!important}.controls>*,.filter-section,.search-section,.search-section .search-input{margin-bottom:0;margin-top:0}.action-buttons{flex-direction:column}.action-buttons,.mobile-action-center{align-items:center;justify-content:center;text-align:center}.mobile-action-center{display:flex}.add-button,.export-btn,.submit-btn{width:100%}.form-actions{flex-direction:column}.cancel-button,.save-button{width:100%}.application-actions{flex-direction:column;margin-bottom:100px;padding-bottom:1rem}.export-button,.revert-button,.submit-button{width:100%}.modal-actions{flex-direction:column}.cancel-btn,.confirm-btn{width:100%}}@media (max-width:30rem){.header h1{font-size:1.25rem}.summary-cards{grid-template-columns:1fr}.route-info{flex-wrap:nowrap;gap:.5rem}.route-info,.routes-container,.routes-container .route-info{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center;width:100%}.routes-container .route-info{margin:.25rem 0}.expense-item.mobile-card .route-info{flex-direction:column}.expense-item.mobile-card .route-detail,.expense-item.mobile-card .route-info{align-items:center;display:flex;justify-content:center;text-align:center;width:100%}.expense-item.mobile-card .route-detail{-webkit-line-clamp:unset;line-clamp:none;flex-direction:row;flex-wrap:nowrap;font-size:.9rem;gap:.5rem;overflow:visible;padding:.25rem}.expense-item.mobile-card .route-item-wrapper{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-bottom:.6rem;text-align:center;width:100%}.expense-item.mobile-card .route-item-wrapper:last-child{margin-bottom:0}.expense-item.mobile-card .route-item-wrapper .route-line{align-items:center;display:flex;justify-content:center;text-align:center;width:100%}.expense-item.mobile-card .route-item-wrapper .route-segment{align-items:center;display:inline-flex;justify-content:center;text-align:center}.expense-item.mobile-card .route-purpose-wrapper{align-items:center;display:flex;gap:.4rem;justify-content:center;margin-left:0;margin-top:.4rem;text-align:center;width:100%}.expense-item.mobile-card .route-purpose-label{color:#6c757d;font-size:.8rem;font-weight:500;text-align:center;white-space:nowrap}.expense-item.mobile-card .route-purpose{align-items:center;display:inline-flex;font-size:.85rem;justify-content:center;max-width:250px;padding:.3rem .7rem;text-align:center}.expense-item.mobile-card .route-details{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;font-size:.9rem;gap:.75rem;justify-content:center;padding:.25rem;text-align:center;width:100%}.expense-item.mobile-card .route-detail .arrow,.expense-item.mobile-card .route-detail .from,.expense-item.mobile-card .route-detail .round-trip,.expense-item.mobile-card .route-detail .to{display:inline-block;flex-shrink:0;font-size:.9rem;padding:.125rem;text-align:center;white-space:nowrap}.expense-item.mobile-card .route-detail .arrow{margin:0 .25rem;text-align:center}.expense-item.mobile-card .route-details .route-purpose,.expense-item.mobile-card .route-details .transport-type{display:inline-block;text-align:center}.expense-item.mobile-card .route-detail *,.expense-item.mobile-card .route-details *,.expense-item.mobile-card .route-info *{text-align:center}.mobile-cards .expense-item.mobile-card .route-detail,.mobile-cards .expense-item.mobile-card .route-details,.mobile-cards .expense-item.mobile-card .route-info{align-items:center;display:flex;justify-content:center;text-align:center}.mobile-cards .expense-item.mobile-card .route-detail *,.mobile-cards .expense-item.mobile-card .route-details *,.mobile-cards .expense-item.mobile-card .route-info *{text-align:center}.items-grid.mobile-cards .expense-item.mobile-card .route-detail .arrow,.items-grid.mobile-cards .expense-item.mobile-card .route-detail .from,.items-grid.mobile-cards .expense-item.mobile-card .route-detail .round-trip,.items-grid.mobile-cards .expense-item.mobile-card .route-detail .to,.items-grid.mobile-cards .expense-item.mobile-card .route-details .route-purpose,.items-grid.mobile-cards .expense-item.mobile-card .route-details .transport-type{display:inline-block;text-align:center}.items-grid.mobile-cards .expense-item.mobile-card .route-detail,.items-grid.mobile-cards .expense-item.mobile-card .route-details,.items-grid.mobile-cards .expense-item.mobile-card .route-info{align-items:center;display:flex;justify-content:center;text-align:center}.items-grid.mobile-cards .expense-item.mobile-card .route-detail *,.items-grid.mobile-cards .expense-item.mobile-card .route-details *,.items-grid.mobile-cards .expense-item.mobile-card .route-info *{text-align:center}.tips-header{align-items:flex-start;flex-direction:column;gap:.5rem}.tips-editor-actions{align-items:stretch;flex-direction:column;gap:1rem}.tips-save-actions{justify-content:center}.tip-edit-item{align-items:stretch;flex-direction:column;gap:.25rem}.remove-tip-button{align-self:flex-end}}.mobile-optimized{position:relative}.success-message{background:#d4edda;border:1px solid #c3e6cb;border-radius:.5rem;color:#155724;font-weight:600;gap:.5rem;margin-bottom:1rem;padding:1rem}.success-icon,.success-message{align-items:center;display:flex}.success-icon{background:#28a745;border-radius:50%;color:#fff;font-size:.875rem;height:1.5rem;justify-content:center;width:1.5rem}.error-message{display:block;font-size:.875rem;margin-top:.25rem}.error{border-color:#dc3545;box-shadow:0 0 0 .2rem #dc354540}.number-input-container{align-items:center;background:#fff;border:1px solid #ced4da;border-radius:.375rem;display:flex;max-width:10rem;overflow:hidden;width:100%}.number-input-container .number-btn{display:none}.number-input-container .number-input{background:#fff;border:none;border-radius:.375rem;font-size:.875rem;padding:.5rem;text-align:center;width:100%}.number-btn{align-items:center;background:#f8f9fa;border:none;color:#495057;cursor:pointer;display:flex;font-size:1.25rem;font-weight:700;justify-content:center;min-width:3rem;padding:.75rem;transition:background-color .15s ease-in-out}.number-btn:hover{background:#e9ecef}.number-btn:active{background:#dee2e6}.number-input{border:none;flex:1 1;font-size:1rem;min-width:0;padding:.75rem;text-align:center}.number-input:focus{box-shadow:none;outline:none}.checkbox-group,.checkbox-label{align-items:center;display:flex}.checkbox-label{cursor:pointer;font-weight:400;gap:.5rem}.checkbox-text{color:#495057;font-size:1rem}.mobile-form{display:flex;flex-direction:column;gap:1rem}.mobile-form .form-group{width:100%}.mobile-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}.mobile-submit{background:#007bff;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:1.125rem;font-weight:600;height:3rem;transition:all .3s ease;width:100%}.mobile-submit:hover{background:#0056b3;transform:translateY(-1px)}.mobile-submit:active{transform:translateY(0)}.mobile-cards{gap:1rem}.mobile-card,.mobile-cards{display:flex;flex-direction:column}.mobile-card{align-items:stretch;background:#fff;border:1px solid #e9ecef;border-radius:.75rem;box-shadow:0 2px 8px #0000001a;gap:1.25rem;padding:1.25rem;text-align:left}.mobile-card .expense-actions,.mobile-card .expense-amount,.mobile-card .expense-date,.mobile-card .expense-details,.mobile-card .expense-notes,.mobile-card .expense-status{min-width:auto;width:100%}.mobile-card .expense-date{border-bottom:1px solid #e9ecef;color:#495057;font-size:1.125rem;font-weight:600;padding-bottom:.5rem;text-align:left}.mobile-card .expense-status{align-items:center;display:flex;gap:.5rem;justify-content:center}.mobile-card .expense-amount{color:#28a745;font-size:1.25rem;font-weight:700;text-align:left}.mobile-card .expense-working{grid-gap:.5rem;align-items:center;display:grid;font-size:.95rem;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,auto);justify-items:center;width:100%}.mobile-card .expense-working .working-label{font-weight:600;opacity:.7}.mobile-card .expense-working .working-value{font-weight:700}.mobile-card .expense-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.mobile-card .expense-details{flex-direction:column;gap:.75rem;text-align:center}.expense-item.is-clickable.mobile-card .expense-details{flex-direction:row;justify-content:center}@media (max-width:768px){.mobile-card .route-info{align-items:center;display:flex;flex-direction:column;gap:.5rem;justify-content:center;margin:.5rem 0;padding:.5rem;text-align:center;width:100%}.mobile-card .route-detail{flex-wrap:nowrap;gap:.5rem}.mobile-card .route-detail,.mobile-card .route-details{align-items:center;display:flex;font-size:.9rem;justify-content:center;padding:.25rem;text-align:center;width:100%}.mobile-card .route-details{gap:.75rem}.mobile-card .routes-container,.mobile-card .routes-container .route-info{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center;width:100%}.mobile-card .routes-container .route-info{margin:.25rem 0}.expense-item.mobile-card .route-info,.expense-item.mobile-card .route-item-wrapper{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center;width:100%}.expense-item.mobile-card .route-item-wrapper{margin-bottom:.6rem}.expense-item.mobile-card .route-item-wrapper:last-child{margin-bottom:0}.expense-item.mobile-card .route-item-wrapper .route-line{align-items:center;display:flex;justify-content:center;text-align:center;width:100%}.expense-item.mobile-card .route-item-wrapper .route-segment{align-items:center;display:inline-flex;justify-content:center;text-align:center}.expense-item.mobile-card .route-purpose-wrapper{align-items:center;display:flex;gap:.4rem;justify-content:center;margin-left:0;margin-top:.4rem;text-align:center;width:100%}.expense-item.mobile-card .route-purpose-label{color:#6c757d;font-size:.8rem;font-weight:500;text-align:center;white-space:nowrap}.expense-item.mobile-card .route-purpose{align-items:center;display:inline-flex;font-size:.85rem;justify-content:center;max-width:250px;padding:.3rem .7rem;text-align:center}.expense-item.mobile-card .route-detail{gap:.5rem}.expense-item.mobile-card .route-detail,.expense-item.mobile-card .route-details{align-items:center;display:flex;flex-direction:row;justify-content:center;text-align:center;width:100%}.expense-item.mobile-card .route-details{gap:.75rem}.expense-item.mobile-card .route-detail .arrow,.expense-item.mobile-card .route-detail .from,.expense-item.mobile-card .route-detail .round-trip,.expense-item.mobile-card .route-detail .to,.expense-item.mobile-card .route-details .route-purpose,.expense-item.mobile-card .route-details .transport-type{display:inline-block;text-align:center}.expense-item.mobile-card .route-detail *,.expense-item.mobile-card .route-details *,.expense-item.mobile-card .route-info *{text-align:center}.mobile-cards .expense-item.mobile-card .route-detail,.mobile-cards .expense-item.mobile-card .route-details,.mobile-cards .expense-item.mobile-card .route-info{align-items:center;display:flex;justify-content:center;text-align:center}.mobile-cards .expense-item.mobile-card .route-detail *,.mobile-cards .expense-item.mobile-card .route-details *,.mobile-cards .expense-item.mobile-card .route-info *{text-align:center}.items-grid.mobile-cards .expense-item.mobile-card .route-detail .arrow,.items-grid.mobile-cards .expense-item.mobile-card .route-detail .from,.items-grid.mobile-cards .expense-item.mobile-card .route-detail .round-trip,.items-grid.mobile-cards .expense-item.mobile-card .route-detail .to,.items-grid.mobile-cards .expense-item.mobile-card .route-details .route-purpose,.items-grid.mobile-cards .expense-item.mobile-card .route-details .transport-type{display:inline-block;text-align:center}.items-grid.mobile-cards .expense-item.mobile-card .route-detail,.items-grid.mobile-cards .expense-item.mobile-card .route-details,.items-grid.mobile-cards .expense-item.mobile-card .route-info{align-items:center;display:flex;justify-content:center;text-align:center}.items-grid.mobile-cards .expense-item.mobile-card .route-detail *,.items-grid.mobile-cards .expense-item.mobile-card .route-details *,.items-grid.mobile-cards .expense-item.mobile-card .route-info *{text-align:center}}.mobile-card .expense-notes{background:#f8f9fa;border-left:3px solid #007bff;border-radius:.375rem;padding:.75rem;text-align:center}.mobile-fixed-submit{background:#fff;border-top:1px solid #e9ecef;bottom:0;box-shadow:0 -2px 10px #0000001a;left:0;padding:1rem;position:fixed;right:0;z-index:100}.mobile-fixed-button{background:#007bff;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:1.125rem;font-weight:600;height:3.5rem;transition:all .3s ease;width:100%}.mobile-fixed-button:hover{background:#0056b3;transform:translateY(-1px)}.mobile-fixed-button:active{transform:translateY(0)}.summary-grid{background:#fff;border-radius:.75rem;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:row;flex-wrap:wrap;gap:1rem;justify-content:center;padding:1rem}.summary-item{border:1px solid #e9ecef;border-radius:.5rem;flex:0 0 auto;max-width:12rem;min-width:10rem;padding:1rem .75rem}.summary-label{color:#6c757d;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.summary-value{color:#28a745;display:block;font-size:1.25rem;font-weight:700;text-align:center;width:100%}.summary-value.status-pending{color:#ffc107}.summary-value.status-approved{color:#28a745}.controls [class*=filter],.controls [class*=search],.controls [class*=section],.controls button,.controls input,.controls select,.filter-section,.search-section{margin-bottom:0;margin-top:0}.search-section .search-input{background:#fff;border:1px solid #ced4da;border-radius:.375rem;font-size:1rem;margin-bottom:0;margin-top:0;padding:.75rem;width:100%}.search-section .search-input:focus{border-color:#667eea;box-shadow:0 0 0 .2rem #667eea40;outline:none}.mobile-filter-row{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:.5rem;overflow-x:auto;padding:.5rem 0}.mobile-filter-row .filter-select,.mobile-filter-row .sort-select{flex:1 1;max-width:none;min-width:6rem}.mobile-filter-row .sort-btn{align-items:center;display:flex;flex:0 0 auto;font-size:1.125rem;font-weight:700;height:2.5rem;justify-content:center;min-width:2.5rem;padding:0}.mobile-action-center{margin-top:1rem}.mobile-action-center,.mobile-add-button{align-items:center;display:flex;justify-content:center;text-align:center;width:100%}.mobile-add-button{background:#007bff;border:none;border-radius:.75rem;box-shadow:0 4px 12px #007bff4d;color:#fff;cursor:pointer;font-size:1.25rem;font-weight:600;height:3.5rem;margin:0 auto;max-width:20rem;transition:all .3s ease}.mobile-add-button:active{transform:translateY(0)}.fixed-bottom-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-top:1px solid #e9ecef;bottom:0;box-shadow:0 -2px 10px #0000001a;left:0;padding:1rem;position:fixed;right:0;z-index:1000}.modal-overlay~.fixed-bottom-button,body:has(.modal-overlay) .fixed-bottom-button{display:none}.fixed-register-button{align-items:center;background:#007bff;border:none;border-radius:.75rem;box-shadow:0 4px 12px #007bff4d;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;font-weight:600;height:3.5rem;justify-content:center;transition:background-color .2s ease;width:100%}.fixed-register-button:active{background:#0056b3;transform:translateY(1px)}.action-buttons.mobile-action-center,.controls .action-buttons,.controls .mobile-action-center{align-items:center;display:flex;justify-content:center;text-align:center;width:100%}.action-buttons.mobile-action-center .mobile-add-button,.controls .mobile-add-button{align-items:center;display:flex;justify-content:center;margin:0 auto;text-align:center}.add-modal{box-sizing:border-box;max-height:95vh;max-width:95vw;overflow-x:hidden;overflow-y:auto;padding:1rem;width:100%}@media (max-width:768px){.modal-overlay{overflow-x:hidden!important;padding:0}.add-modal,.modal-overlay{box-sizing:border-box;margin:0;max-width:100vw!important;width:100vw!important}.add-modal{border-radius:0;display:flex;flex-direction:column;height:100vh;max-height:100vh;overflow:hidden;overflow-x:hidden!important;padding:.5rem}.add-modal .add-item-form{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto;padding:.5rem;touch-action:pan-y}.add-modal .add-item-form,.add-modal .modal-form-grid{box-sizing:border-box;max-width:100%!important;overflow-x:hidden!important;width:100%!important}.add-modal *{box-sizing:border-box}.add-modal *,.add-modal .station-search-dropdown,.add-modal button,.add-modal input,.add-modal select{max-width:100%!important}.mobile-submit{background:#007bff;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:1.125rem;font-weight:600;height:3.5rem;margin-top:1rem;transition:all .3s ease;width:100%}.modal-form-grid .form-group.full-width .mobile-submit{margin:0;max-width:none;width:100%}}.location-row{align-items:end;display:flex;gap:.5rem;justify-content:center;max-width:500px;width:100%}.location-row .form-group{flex:1 1;min-width:0}.transport-group-full{max-width:600px;width:100%}.modal-form-grid .form-group{text-align:center}.modal-form-grid .form-group-flex{align-items:center;display:flex;flex-direction:column;margin-bottom:.3rem}.cost-preview.full-width,.modal-form-grid .form-group.full-width{max-width:600px;width:100%}.cost-preview.full-width{text-align:center}.modal-form-grid .form-group.full-width .mobile-submit{margin:0 auto;max-width:400px;text-align:center;width:100%}.modal-form-grid .form-group label{font-size:.8rem;font-weight:600;margin-bottom:.2rem;text-align:center}.modal-form-grid .form-group input:not([type=checkbox]),.modal-form-grid .form-group select,.modal-form-grid .form-group textarea{border:1px solid #ddd;border-radius:.25rem;display:block;font-size:.85rem;margin:0 auto;overflow:hidden;padding:.4rem;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.modal-form-grid .form-group.full-width input:not([type=checkbox]),.modal-form-grid .form-group.full-width select,.modal-form-grid .form-group.full-width textarea{max-width:320px}.modal-centered-field{align-items:center;display:flex;flex-direction:column;gap:.35rem;margin:.75rem auto;max-width:420px;width:100%}.modal-centered-field__label{color:#1f2937;font-size:.95rem;font-weight:600;margin:0;text-align:center}.modal-centered-field__input,.modal-centered-field__textarea{background-color:#fff;border:1px solid #d1d5db;border-radius:.5rem;color:#1f2937;font-size:.9rem;height:36.09px;max-width:320px;padding:.35rem .6rem;text-align:center;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.modal-centered-field__input::placeholder,.modal-centered-field__textarea::placeholder{color:#9ca3af;text-align:center}.modal-centered-field__input:focus,.modal-centered-field__textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26;outline:none}.time-row{align-items:center;display:flex;gap:1rem;width:100%}.time-row,.time-row.single-row{flex-wrap:wrap;justify-content:center}.time-row.single-row{gap:.3rem;margin:0 auto;max-width:720px}.single-row__item{min-width:180px}.time-row .form-group{align-items:center;display:flex;flex-direction:column;gap:.35rem;min-width:140px}.time-input-group{align-items:center;display:flex;gap:.25rem;justify-content:center}.time-select{background:#fff;border:1px solid #ddd;border-radius:.25rem;font-size:.85rem;min-width:60px;padding:.4rem;text-align:center}.time-separator{color:#333;font-size:1rem;font-weight:600}.location-row .form-group input{max-width:250px}.night-shift-badge{align-items:center;background:linear-gradient(120deg,#1d4ed8,#1e40af);border-radius:999px;color:#fff;display:inline-flex;font-size:.75rem;font-weight:600;gap:.2rem;line-height:1.2;margin-left:.35rem;padding:.1rem .5rem}.cost-group input{max-width:120px}.transport-group select{max-width:140px}.route-purpose-input-inline{max-width:200px;min-width:120px;text-align:left}.transport-group-full select{max-width:400px;width:100%}.modal-form-grid .form-group .number-input-container{align-items:center;display:flex;justify-content:center;margin:0 auto;max-width:200px;width:auto}.modal-form-grid .form-group .number-input-container input{max-width:100px}.modal-form-grid .form-group .checkbox-label{text-align:center;width:100%}.modal-form-grid .form-group .checkbox-label,.roundtrip-button{align-items:center;display:flex;justify-content:center;margin:0 auto}.roundtrip-button{background:#fff;border:2px solid #3b82f6;border-radius:50%;color:#3b82f6;cursor:pointer;font-size:1.2rem;height:2.5rem;padding:0;transition:all .3s ease;width:2.5rem}.roundtrip-button:hover{background:#eff6ff;border-color:#2563eb;transform:scale(1.05)}.roundtrip-button.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.roundtrip-button.active:hover{background:#2563eb;border-color:#2563eb}.small-checkbox{height:1rem;margin:0 auto;width:1rem}.arrow-group{flex-direction:column}.arrow-display,.arrow-group{align-items:center;display:flex;justify-content:center}.arrow-display{align-self:center;color:#007bff;font-size:1.5rem;font-weight:700;height:2.5rem;margin-top:0}.add-modal *{text-align:center}.add-modal .form-group *,.add-modal .modal-form-grid *{margin-left:auto;margin-right:auto;text-align:center}@media (max-width:768px){.transport-expense-application{padding-bottom:2rem}.modal-form-grid{gap:.5rem;margin-bottom:.75rem;text-align:center}.modal-form-grid .form-group-flex{align-items:center;display:flex;flex-direction:column;text-align:center}.modal-form-grid .form-group.checkbox-group{align-items:center;display:flex;justify-content:center;text-align:center}.modal-form-grid .form-group input,.modal-form-grid .form-group select,.modal-form-grid .form-group textarea{display:block;font-size:.75rem;margin:0 auto;max-width:8rem;padding:.3rem;text-align:center}.modal-form-grid .form-group .number-input-container{justify-content:center;margin:0 auto;max-width:8rem}.modal-form-grid .form-group label{font-size:.75rem;margin-bottom:.2rem;margin-left:auto;margin-right:auto;text-align:center}.add-modal *{text-align:center}.small-checkbox{height:.8rem;width:.8rem}.arrow-display{align-self:center;font-size:1.2rem;height:2rem;margin-top:0}.location-row{gap:.3rem;grid-template-columns:1fr auto 1fr}.summary-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.summary-grid .summary-item{justify-content:center;max-width:none;width:100%}.controls,.summary-cards{margin-bottom:1.5rem}.mobile-cards .expense-item{display:none}.mobile-cards .mobile-card{display:flex}.mobile-optimized .form-actions{display:none}.mobile-filter-row{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:.5rem;overflow-x:auto}.mobile-filter-row>*{flex-shrink:0}.add-modal .modal-form-grid *{margin-left:auto;margin-right:auto;text-align:center}input.w-20.px-2.py-1.border.rounded.text-center.focus\:ring-2.focus\:ring-blue-500.focus\:outline-none{width:130px}}@media (min-width:769px){.mobile-fixed-submit{display:none}.route-info.route-info-single,.routes-list .route-info.route-info-single{box-sizing:border-box;margin:0 auto!important;max-width:500px!important;width:100%!important}.mobile-cards .mobile-card{display:none}.mobile-cards .expense-item{display:grid}.expense-working,.mobile-card .expense-working{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto}.expense-working .working-row{margin:0;max-width:none;width:100%}}.station-input-wrapper{align-items:center;display:flex;gap:.5rem}.route-add-button{background:#2563eb;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-weight:600;padding:.6rem 1.25rem;transition:background-color .2s ease,transform .2s ease}.route-add-button:hover{background:#1d4ed8;transform:translateY(-1px)}.routes-header{color:#1e293b;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.transport-expense-application input.input-error,.transport-expense-application select.input-error,.transport-expense-application textarea.input-error,input.input-error,select.input-error,textarea.input-error{border:1px solid #ef4444;box-shadow:0 0 0 3px #ef44441f}.notes-section{color:#4b5563;font-size:.85rem;margin-top:.75rem}.route-input-section{align-items:stretch;display:flex;flex-direction:column;gap:1rem;width:100%}.round-trip-toggle{align-items:center;display:flex;gap:.5rem}.route-actions{align-items:center;display:flex;gap:.75rem}.route-actions,.route-actions-under-location{justify-content:center}.round-trip-note{color:#6b7280;font-size:.85rem}.route-count{color:#6b7280;font-size:.9rem}.round-trip-group{background:#2563eb14;border:1px solid #2563eb33;border-radius:.75rem}.round-trip-group,.total-amount-group{align-items:center;margin:0 auto;max-width:500px;padding:.75rem 1rem}.total-amount-group{background:#0f766e14;border:1px solid #0f766e33;border-radius:.75rem}.total-amount-group input{font-weight:600;letter-spacing:.02em;max-width:240px}.route-info{gap:.35rem}.route-detail{color:#1f2937;flex-wrap:nowrap;gap:.45rem;white-space:nowrap}.route-details{font-size:.85rem;gap:.45rem}.route-purpose{font-weight:600;padding:.2rem .65rem}.modal-header{align-items:center;display:flex;justify-content:center;position:relative}.modal-header h3{flex:1 1;margin:0;text-align:center}.modal-close-btn{position:absolute;right:0}.modal-close-btn-fixed{right:1rem;top:6rem}.loading-overlay{align-items:center;background-color:#00000080;bottom:0;color:#fff;display:flex;flex-direction:column;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.loading-spinner{border:5px solid #f3f3f3;border-top-color:#004f80;height:60px;width:60px}.loading-message{font-size:18px;font-weight:700;margin-top:20px}.spacer{margin-top:1rem}.button-disabled{cursor:not-allowed;opacity:.6}.button-enabled{cursor:pointer;opacity:1}.button-disabled-state{cursor:not-allowed;opacity:.5}.button-enabled-state{cursor:pointer;opacity:1}@media (max-width:768px){.option-badges-row{flex-wrap:nowrap;justify-content:center;overflow-x:auto}}.modal-overlay{inset:0;z-index:9999}.modal-content{background:#fff;box-shadow:0 20px 40px #0f172a33;max-width:720px;position:relative;width:90%}.modal-footer,.modal-header{border-bottom:1px solid #94a3b84d;padding:1rem 1.5rem}.modal-footer{border-bottom:none;border-top:1px solid #94a3b84d;display:flex;gap:.75rem;justify-content:flex-end}.modal-body{padding:1.5rem}.modal-close{background:#0000;border:none;cursor:pointer;font-size:1.5rem}.cancel-btn,.save-btn{border:none;border-radius:9999px;cursor:pointer;font-weight:600;padding:.6rem 1.4rem}.cancel-btn{background:#e5e7eb;color:#374151}.save-btn{background:#2563eb;color:#fff}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset),env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset),env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset),env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset),env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:0.2}.Toastify__toast-container{box-sizing:border-box;color:#fff;display:flex;flex-direction:column;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:-webkit-fit-content;width:fit-content;width:var(--toastify-container-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--top-center{align-items:center;left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{align-items:end;right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--bottom-left{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{align-items:center;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{align-items:end;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right)}.Toastify__toast{--y:0;align-items:center;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-shadow:var(--toastify-toast-shadow);box-sizing:border-box;display:flex;flex:1 1 auto;font-family:sans-serif;font-family:var(--toastify-font-family);margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);padding:14px;padding:var(--toastify-toast-padding);position:relative;touch-action:none;width:320px;width:var(--toastify-toast-width);word-break:break-word;z-index:0}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:env(safe-area-inset-right)}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:320px;width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s;width:100%}.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{bottom:100%;content:"";height:calc(var(--g)*1px);left:0;position:absolute;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:22px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74d3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74d3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;position:absolute;right:6px;top:6px;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:auto}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:1}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{border-bottom-left-radius:0;left:auto;right:0;transform-origin:right}.Toastify__progress-bar--wrp{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;width:100%}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{height:100%;opacity:.2;opacity:var(--toastify-color-progress-bgo);width:100%}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{opacity:1;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg)}to{opacity:0;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(-110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-duration:.3s;animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-duration:.3s;animation-name:Toastify__slideOutRight;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-duration:.3s;animation-name:Toastify__slideOutUp;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-duration:.3s;animation-name:Toastify__slideOutDown;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.station-search-container{position:relative;width:100%}.station-search-input{background-color:#fff;border:1px solid #d1d5db;border-radius:.375rem;font-size:1rem;padding:.6rem;transition:all .2s ease;width:100%}.station-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.station-search-input.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.station-search-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:.375rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;left:0;margin-top:.25rem;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:50}.station-search-loading{align-items:center;color:#6b7280;display:flex;font-size:.875rem;gap:.5rem;padding:1rem}.loading-spinner{animation:spin 1s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:1rem;width:1rem}.station-search-results{padding:.25rem}.station-search-item{border-bottom:1px solid #f3f4f6;border-radius:.25rem;cursor:pointer;padding:.75rem;transition:background-color .15s ease}.station-search-item:last-child{border-bottom:none}.station-search-item:hover{background-color:#f8fafc}.station-search-item:active{background-color:#e2e8f0}.station-name{align-items:center;color:#1f2937;display:flex;font-weight:600;gap:.5rem;margin-bottom:.25rem}.station-prefecture{color:#6b7280;font-size:.75rem;font-weight:400}.station-lines{color:#6b7280;font-size:.75rem;line-height:1.4;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.favorite-toggle-button{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:1.2rem;line-height:1;margin-left:auto;padding:0;transition:color .2s ease}.favorite-toggle-button.is-favorite,.favorite-toggle-button:hover{color:#fbbf24}.station-search-no-results{color:#6b7280;font-size:.875rem;padding:1rem;text-align:center}@media (max-width:640px){.station-search-item{padding:.5rem}.station-name{font-size:.875rem}.station-lines{font-size:.6875rem}}.transport-expense-management{background-color:#f8f9fa;font-family:Times New Roman,serif;margin:0 auto;max-width:100%;min-height:100vh;padding:1rem}.transport-expense-management *{box-sizing:border-box}.header{background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:.75rem;box-shadow:0 8px 32px #e74c3c4d;margin-bottom:1.5rem;padding:1.5rem}.header h1{color:#fff;font-family:Times New Roman,serif;font-size:1.75rem;margin:0 0 1rem;text-shadow:0 2px 4px #0000004d}.month-selector{flex-direction:column}.month-input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:2px solid #ffffff4d;border-radius:.5rem;color:#2c3e50;font-family:Times New Roman,serif;max-width:12.5rem;padding:.75rem;width:100%}.summary-cards{align-items:center;flex-direction:row;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding:0 .5rem}.summary-card,.summary-cards{display:flex;justify-content:center}.summary-card{background:#fff;border:none;border-radius:.75rem;box-shadow:0 4px 20px #0000001a;flex-direction:column;flex-shrink:0;height:6rem;max-width:10rem;min-width:8.75rem;overflow:hidden;padding:1.25rem 1rem;position:relative;text-align:center;width:calc(25% - .75rem)}.summary-card:before{background:linear-gradient(90deg,#e74c3c,#c0392b);content:"";height:4px;left:0;position:absolute;right:0;top:0}.summary-card h3{font-size:.875rem;font-weight:600;margin:0 0 .5rem}.summary-card .number,.summary-card h3{color:#2c3e50;font-family:Times New Roman,serif}.summary-card .number{font-size:1.5rem;font-weight:700;margin:0;text-shadow:0 1px 2px #0000001a}.summary-card .number.status-draft{color:#6c757d}.summary-card .number.status-submitted{color:#17a2b8}.summary-card .number.status-approved{color:#28a745}.summary-card .number.status-rejected{color:#dc3545}.controls{background:#fff;border-radius:.5rem;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1rem}.controls-calendar-row{align-items:flex-start;display:flex;gap:1.5rem;justify-content:space-between}.controls-column{display:flex;flex:1 1 60%;flex-direction:column;gap:1rem}.controls-column .month-selector{margin-bottom:0;padding:.75rem}.controls-column .summary-cards{gap:.5rem}.controls-column .summary-card{padding:.5rem}.controls-column .summary-card h3{font-size:.75rem}.controls-column .summary-card .number{font-size:1rem}.controls-column .controls{margin-bottom:0}.controls-calendar-row .calendar-section{flex:0 0 auto}.calendar-section{background:#fff;border-radius:.5rem;box-shadow:0 2px 4px #0000001a;margin-bottom:1.5rem;padding:1rem}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.calendar-selected-date{color:#2c3e50;font-weight:600}.calendar-wrapper{display:flex;justify-content:flex-end;margin-bottom:1rem}.calendar-wrapper--fixed{height:auto;overflow:hidden}.calendar-card{border:1px solid #e9ecef;box-shadow:none}.calendar-nav{align-items:center;display:grid;grid-template-columns:40px 1fr 40px;margin-bottom:.5rem}.calendar-nav-title{color:#2c3e50;font-weight:600;text-align:center}.calendar-list{display:flex;flex-direction:column;gap:.5rem}.calendar-list-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:.5rem;display:flex;justify-content:space-between;padding:.75rem}.calendar-list-info{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.calendar-list-name{color:#2c3e50;font-weight:600}.calendar-list-status{border-radius:999px;font-size:.8rem;padding:.2rem .5rem}.calendar-list-status.has-item{background:#d1ecf1;color:#0c5460}.calendar-list-status.no-item{background:#f8d7da;color:#721c24}.calendar-list-amount{color:#2c3e50;font-weight:600}.calendar-list-actions .add-btn,.calendar-list-actions .edit-btn{border:none;border-radius:.375rem;cursor:pointer;font-size:.85rem;padding:.4rem .75rem}.calendar-list-actions .add-btn{background:#17a2b8;color:#fff}.calendar-list-actions .edit-btn{background:#ffc107;color:#212529}.work-status-options{display:flex;flex-wrap:wrap;gap:.5rem .75rem;margin-top:.5rem}.work-status-bulk{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:.5rem;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem;padding:.5rem .75rem}.work-status-bulk__label{color:#2c3e50;font-weight:600}.work-status-bulk__clear{background:#e2e8f0;color:#1f2937}.work-status-bulk__clear,.work-status-bulk__save,.work-status-option__save{border:none;border-radius:999px;cursor:pointer;font-size:.85rem;padding:.25rem .75rem}.work-status-bulk__save,.work-status-option__save{background:#1f2937;color:#fff}.work-status-option{align-items:center;color:#2c3e50;display:flex;font-size:.85rem;gap:.25rem}.search-filter{width:100%}.search-input{border:2px solid #e9ecef;border-radius:.375rem;font-size:1rem;padding:.75rem;transition:border-color .3s ease;width:100%}.search-input:focus{border-color:#e74c3c;outline:none}.filter-section{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:.625rem;justify-content:flex-end;width:100%}.filter-section .sort-select{flex:0 0 auto;min-width:0}.filter-section .sort-btn{flex:0 0 auto;min-width:auto;white-space:nowrap}.filter-select,.sort-select{background:#fff;border:2px solid #e9ecef;border-radius:.375rem;font-size:1rem;padding:.5rem .75rem;transition:border-color .3s ease}.filter-select:focus,.sort-select:focus{border-color:#e74c3c;outline:none}.sort-btn{background:#fff;border:2px solid #e9ecef;border-radius:.375rem;cursor:pointer;font-size:1rem;padding:.5rem .75rem;transition:all .3s ease}.sort-btn:hover{background:#f8f9fa;border-color:#e74c3c}.action-buttons{align-items:center;flex-direction:row;flex-wrap:nowrap;gap:.5rem;justify-content:center;overflow-x:auto}.action-buttons button,.export-btn{width:20%!important}.export-btn{background:#9b59b6;border:2px solid #9b59b6;border-radius:.375rem;box-sizing:border-box;color:#fff;cursor:pointer;flex-shrink:0;font-family:Times New Roman,serif;font-size:.875rem;font-weight:600;min-width:5rem;padding:.5rem 1rem;text-align:center;transition:all .3s ease;white-space:nowrap}.export-btn:hover:not(:disabled){background:#8e44ad;border-color:#8e44ad}.export-btn:disabled{background:#95a5a6;border-color:#95a5a6;cursor:not-allowed}.expense-list{background:#fff;border-radius:.5rem;box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem;padding:1.25rem}.expense-list h3{color:#495057;font-size:1.125rem;margin:0 0 1rem}.empty-state{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px dashed #dee2e6;border-radius:.75rem;color:#6c757d;overflow:hidden;padding:3.75rem 1.25rem;position:relative;text-align:center}.empty-state:before{content:"📋";display:block;font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state p{font-size:1.125rem;font-weight:500;margin:.5rem 0}.items-grid{gap:.5rem}.expense-item,.items-grid{align-items:center;display:flex;flex-direction:column}.expense-item{background:#fff;border:1px solid #e9ecef;border-radius:.75rem;cursor:pointer;gap:1.25rem;max-width:62.5rem;overflow:hidden;padding:1.25rem 1.5rem;position:relative;text-align:center;transition:all .3s ease;width:100%}.expense-item.confirmed{background:#f5f5f5;border-color:#d0d0d0;cursor:default;opacity:.7}.expense-item.confirmed:hover{opacity:.8;transform:none}.confirm-button-container{position:absolute;right:.75rem;top:.75rem;z-index:10}.confirm-button,.unconfirm-button{border:none;border-radius:.375rem;box-shadow:0 2px 4px #0000001a;cursor:pointer;font-size:.75rem;font-weight:600;padding:.4rem .8rem;transition:all .2s ease;white-space:nowrap}.confirm-button{background:#28a745;color:#fff}.confirm-button:hover{background:#218838;box-shadow:0 4px 6px #00000026;transform:translateY(-1px)}.unconfirm-button{background:#ffc107;color:#212529}.unconfirm-button:hover{background:#e0a800;box-shadow:0 4px 6px #00000026;transform:translateY(-1px)}.edit-button:disabled{background:#95a5a6!important;cursor:not-allowed!important;opacity:.6}.expense-item:before{background:linear-gradient(90deg,#e74c3c,#c0392b);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.expense-item:hover{border-color:#e74c3c;box-shadow:0 8px 25px #00000026;transform:translateY(-4px)}.expense-item:hover:before{opacity:1}.expense-item:focus,.expense-item:focus-visible{box-shadow:0 0 0 4px #e74c3c33;outline:3px solid #c0392b;outline-offset:4px}.item-meta{align-items:center;display:flex;flex-direction:column;gap:1.25rem;width:100%}.meta-row{align-items:stretch;gap:.75rem 1.5rem;justify-content:center}.meta-row,.working-info{display:flex;flex-wrap:wrap;width:100%}.working-info{flex-direction:row;gap:.5rem;justify-content:space-between;margin-top:.25rem}.meta-block{align-items:center;background:#f8f9fad9;border-radius:.65rem;box-shadow:0 4px 12px #0f172a14;display:flex;flex-direction:column;gap:.35rem;line-height:1.6;max-width:12rem;min-width:0;padding:.75rem .85rem;width:100%}.meta-label{color:#6c757d;font-size:.75rem;font-weight:600;letter-spacing:.03em;line-height:1.4}.meta-value{color:#2c3e50;font-size:1.05rem;font-weight:700;line-height:1.6;text-align:center;word-break:break-word}.working-row{align-items:center;background:#f8f9faa6;border-radius:.6rem;box-shadow:inset 0 0 0 1px #94a3b840;display:flex;flex-basis:calc(25% - 0.5rem);flex-grow:1;flex-shrink:1;flex-wrap:wrap;gap:.75rem;justify-content:space-between;min-width:0;padding:.65rem .85rem}.working-label{color:#475569;flex:1 1 5rem;font-size:.8rem;font-weight:600;letter-spacing:.02em}.working-value{color:#1f2937;flex:1 1 4rem;font-size:.95rem;font-weight:700;text-align:right}.status-badge:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.status-badge:hover:before{left:100%}.status-badge.status-draft{background:linear-gradient(135deg,#6c757d,#495057);box-shadow:0 2px 8px #6c757d4d;color:#fff}.status-badge.status-submitted{background:linear-gradient(135deg,#17a2b8,#138496);box-shadow:0 2px 8px #17a2b84d;color:#fff}.status-badge.status-approved{background:linear-gradient(135deg,#28a745,#1e7e34);box-shadow:0 2px 8px #28a7454d;color:#fff}.status-badge.status-rejected{background:linear-gradient(135deg,#dc3545,#c82333);box-shadow:0 2px 8px #dc35454d;color:#fff}.item-total{color:#e74c3c;font-weight:600;text-align:center;white-space:nowrap}.item-actions{align-items:center;display:flex;gap:.5rem;justify-content:center;white-space:nowrap}.approve-button,.detail-button,.reject-button,.revoke-button{border:none;border-radius:.25rem;cursor:pointer;font-size:.875rem;font-weight:600;padding:.25rem .5rem;transition:all .3s ease}.detail-button{background:#17a2b8;color:#fff}.detail-button:hover{background:#138496;transform:translateY(-1px)}.approve-button{background:#28a745;color:#fff}.approve-button:hover{background:#218838;transform:translateY(-1px)}.reject-button{background:#dc3545;color:#fff}.reject-button:hover{background:#c82333;transform:translateY(-1px)}.revoke-button{background:#ffc107;color:#212529}.revoke-button:hover{background:#e0a800;transform:translateY(-1px)}.routes-list-container .route-slot{padding:0}.routes-list-container .route-info,.routes-list-container .route-slot{box-sizing:border-box;contain:layout;flex-shrink:0;height:auto;margin:0;min-height:0;position:relative;will-change:transform}.routes-list-container .route-info{-webkit-overflow-scrolling:touch;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;align-items:stretch;background:#fffffff2;border:1px solid #94a3b859;border-radius:.9rem;box-shadow:0 6px 18px #0f172a14;cursor:grab;display:flex;flex-direction:column;gap:.35rem;overflow:visible;padding:.55rem .7rem;text-align:left;text-rendering:optimizeLegibility;touch-action:pan-y}.routes-list-container .route-info:active{cursor:grabbing}.routes-list-container [data-swapy-highlighted]{background-color:#e0f2fe!important;border-color:#2563eb!important}.routes-list-container [data-swapy-item][data-swapy-dragging]{border-width:1px!important;box-sizing:border-box!important;height:auto!important;margin:0!important;max-height:none!important;min-height:0!important;opacity:.6;padding:.55rem .7rem!important;pointer-events:none;z-index:1000}.routes-list-container [data-swapy-item][data-swapy-dragging] *{pointer-events:none}.routes-list-container [data-swapy-item]{will-change:transform}@media (max-width:768px){.routes-list-container{-webkit-overflow-scrolling:touch;touch-action:pan-y}.routes-list-container .route-info,.routes-list-container .route-slot{touch-action:pan-y}.routes-list-container [data-swapy-item]{touch-action:pan-y pinch-zoom}}.routes-list-container{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(135deg,#2563eb14,#0f766e14);border:1px solid #94a3b866;border-radius:1rem;display:flex;flex-direction:column;gap:0;padding:1.25rem}.routes-list-container,.routes-placeholder{box-sizing:border-box;max-width:100%;width:100%}.routes-placeholder{background:#ffffffd9;border:1px dashed #5e77b280;border-radius:.9rem;color:#475569;font-size:.9rem;letter-spacing:.03em;padding:.85rem 1.1rem;text-align:center}.routes-list{display:flex;flex-direction:column;gap:0;line-height:1.6;width:100%}.route-item{grid-gap:1rem;align-items:center;background:#f8fafcf2;border:1px solid #94a3b859;border-radius:.9rem;box-shadow:0 8px 22px #0f172a14;display:grid;font-size:.9rem;gap:1rem;grid-template-columns:1fr;padding:1rem 1.25rem;text-align:left;width:100%}.route-number{background:linear-gradient(135deg,#2563eb,#10b981);border-radius:9999px;box-shadow:0 6px 12px #2563eb40;color:#fff;font-size:1rem;font-weight:700;height:2.25rem;width:2.25rem}.route-info,.route-number{align-items:center;display:flex;justify-content:center}.route-info{flex-direction:column;gap:.6rem;margin:.5rem 0}.route-detail,.route-info{flex-wrap:wrap;line-height:1.6;text-align:center;width:100%}.route-detail{align-items:center;color:#1e293b;display:flex;font-weight:600;gap:.55rem;justify-content:center}.from,.to{color:#1f2937;font-weight:600}.arrow,.from,.to{font-size:.95rem;line-height:1.6}.arrow,.route-detail .arrow{color:#2563eb;font-weight:700}.route-details{align-items:center;color:#475569;display:flex;flex-wrap:wrap;font-size:.82rem;gap:.65rem;justify-content:center;line-height:1.6}.route-details,.routes-container{text-align:center;width:100%}.route-item-wrapper{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-bottom:.5rem;text-align:center}.route-item-wrapper:last-child{margin-bottom:0}.routes-list-container .route-row{align-items:stretch;flex-direction:column}.routes-list-container .route-line,.routes-list-container .route-row{box-sizing:border-box;display:flex;flex-shrink:0;gap:.35rem;height:auto;margin:0;min-height:0;padding:0}.routes-list-container .route-line{align-items:center;flex-wrap:wrap;font-weight:600;justify-content:flex-start;text-align:left}.routes-list-container .route-meta{align-items:center;box-sizing:border-box;display:flex;flex-shrink:0;flex-wrap:nowrap;gap:.5rem;height:auto;margin:0;min-height:0;padding:0}.route-line{display:flex;flex-wrap:wrap;font-weight:600}.route-line,.route-segment{align-items:center;gap:.35rem;justify-content:center;text-align:center}.route-segment{display:inline-flex}.route-purpose-wrapper{align-items:center;display:flex;gap:.4rem;justify-content:center;margin-left:0;margin-top:.3rem;text-align:center;width:100%}.route-purpose-label{color:#6c757d;font-size:.75rem;font-weight:500}.route-purpose,.route-purpose-label{text-align:center;white-space:nowrap}.route-purpose{align-items:center;background:#3b82f61f;border-radius:9999px;color:#1d4ed8;display:inline-flex;font-size:.78rem;justify-content:center;max-width:200px;overflow:hidden;padding:.2rem .6rem;text-overflow:ellipsis}.notes-section{border-top:1px solid #e9ecef;margin-top:.5rem;padding-top:.5rem;text-align:center;width:100%}.round-trip{background:#10b98129;border-radius:9999px;color:#0f766e;font-size:.75rem;font-weight:600;letter-spacing:.01em;padding:.2rem .6rem}.item-notes{background:#e3f2fd;color:#1976d2}.item-notes,.rejection-reason{border-radius:.25rem;font-size:.875rem;margin-top:.5rem;max-width:20rem;padding:.375rem .5rem}.rejection-reason{background:#ffebee;color:#c62828}.modal-overlay{max-width:100vw;overflow-x:hidden}.modal{border-radius:.5rem;box-sizing:border-box;margin:auto;max-width:37.5rem;max-width:100%;overflow-x:hidden;padding:1.25rem;position:relative;text-align:center}.modal-close-button{background:#0000;border:none;border-radius:.375rem;color:#6c757d;cursor:pointer;font-size:1.75rem;line-height:1;padding:.25rem;position:absolute;right:.75rem;top:.75rem;transition:color .2s ease,transform .2s ease}.modal-close-button:hover{color:#343a40;transform:scale(1.05)}.modal-close-button:focus-visible{outline:2px solid #c0392b;outline-offset:3px}.modal-close-btn-fixed{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #dc35454d;border-radius:50%;box-shadow:0 2px 8px #00000026;color:#dc3545;cursor:pointer;display:flex;font-size:1.2rem;font-weight:700;height:2.5rem;justify-content:center;position:fixed;transition:all .2s ease;width:2.5rem;z-index:10001}@media (min-width:600px){.modal-close-btn-fixed{left:calc(50% + 17.25rem);top:calc(10vh - 1rem)}}@media (max-width:599px){.modal-close-btn-fixed{left:calc(50% + 45vw - 1.3rem);top:calc(10vh - 1rem)}}.modal-close-btn-fixed:hover{background:#dc35451a;border-color:#dc3545;transform:scale(1.1)}.modal-close-btn-fixed:active{transform:scale(.95)}.modal h3{font-size:1.125rem;margin:0 0 1rem}.detail-overview{color:#495057;font-size:.95rem;gap:.35rem;text-align:center}.detail-overview,.detail-routes{align-items:center;display:flex;flex-direction:column}.detail-routes{gap:1rem;margin-top:1rem;max-height:60vh;overflow-y:auto}.detail-route-item{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#f8fafce6;border:1px solid #94a3b859;border-radius:1rem;box-shadow:0 10px 24px #0f172a1f;display:flex;flex-direction:column;gap:.9rem;padding:1.1rem;text-align:center;width:100%}.detail-route-header{color:#343a40}.detail-route-header,.detail-route-path{align-items:center;display:flex;font-weight:600;justify-content:center}.detail-route-path{color:#1e293b;flex-wrap:wrap;gap:.5rem;letter-spacing:.01em;text-align:center}.detail-route-path .arrow{color:#2563eb;font-weight:700}.detail-route-meta{color:#475569;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.6rem 1.75rem;justify-content:center;text-align:center}.detail-route-meta span{align-items:center;display:inline-flex;gap:.25rem}.detail-route-meta strong{color:#0f172a;font-weight:700;margin-right:.25rem}.detail-via{color:#3d5970}.no-route{color:#868e96;padding:1rem 0;text-align:center}.approval-content{margin-bottom:1.25rem}.approval-info{background:#f8f9fa;border-radius:.375rem;margin-bottom:1rem;padding:1rem}.approval-info p{color:#6c757d;font-size:1rem;margin:.3125rem 0}.form-group{margin-bottom:1rem}.form-group label{margin-bottom:.3125rem}.form-group textarea{border:1px solid #e9ecef;border-radius:.25rem;font-family:inherit;font-size:1rem;padding:.5rem .75rem;width:100%}.form-group textarea:focus{border-color:#e74c3c;outline:none}.modal-actions{gap:.625rem}.cancel-btn,.confirm-btn{border-radius:.375rem;font-size:1rem;padding:.5rem 1rem}.confirm-btn.approve{background:#28a745;color:#fff}.confirm-btn.approve:hover:not(:disabled){background:#218838;transform:translateY(-1px)}.confirm-btn.reject{background:#dc3545;color:#fff}.confirm-btn.reject:hover:not(:disabled){background:#c82333;transform:translateY(-1px)}.confirm-btn:disabled{background:#6c757d;cursor:not-allowed}@media (min-width:769px){.action-buttons button,.export-btn{width:20%!important}}@media (max-width:75rem){.summary-card{width:calc(33.333% - .75rem)}.controls{align-items:stretch;flex-direction:column}.search-filter{order:1}.filter-section{justify-content:center;order:2}.action-buttons{justify-content:center;order:3}}@media (max-width:48rem){.working-info{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(2,1fr)}.working-row{flex:none;width:100%}.transport-expense-management{padding:1rem}.header h1{font-size:1.5rem}.month-selector{flex-direction:column;gap:.625rem}.filter-section{flex-direction:row;flex-wrap:wrap}.action-buttons{flex-direction:column}.action-buttons button{width:100%}.export-btn{max-width:100%;min-width:auto;width:100%}.expense-item{gap:.85rem;padding:1.1rem 1.2rem}.item-meta,.meta-row{gap:.75rem}.meta-block,.working-row{max-width:none}.working-row{align-items:center;background:#f8f9faa6;border-radius:.6rem;box-shadow:inset 0 0 0 1px #94a3b840;display:flex;flex-basis:calc(25% - 0.5rem);flex-grow:1;flex-shrink:1;flex-wrap:wrap;gap:.75rem;justify-content:space-between;min-width:0;padding:.1rem .85rem}.working-label{color:#475569;flex:1 1 1rem;font-size:.8rem;font-weight:600;letter-spacing:.02em}.working-value{color:#1f2937;flex:1 1 2rem;font-size:.95rem;font-weight:700;text-align:right}.routes-list{gap:.75rem;margin-top:0}.route-item{grid-template-columns:1fr;justify-items:center;text-align:center}.route-info{align-items:center;text-align:center}.item-actions,.route-detail,.route-details{justify-content:center}.item-actions{width:100%}.modal{width:95%}.detail-content{grid-template-columns:1fr}}@media (max-width:30rem){.header h1{font-size:1.25rem}.summary-cards{grid-template-columns:1fr}.meta-row{align-items:stretch;flex-direction:column}.route-item{gap:.75rem;padding:.9rem}.route-info{align-items:center}.route-detail,.route-details{justify-content:center;text-align:center}.item-notes,.rejection-reason{max-width:100%}}.route-cost-input{max-width:120px;padding:.375rem .5rem;text-align:right}.route-cost-input,.route-purpose-input-inline{border:1px solid #ddd;border-radius:.25rem;font-size:.875rem}.route-purpose-input-inline{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box;flex:1 1;height:auto;line-height:1.5;margin:0;min-height:0;min-width:0;outline:none;outline-offset:0;padding:.25rem .5rem;text-rendering:optimizeLegibility}.route-purpose-input-inline:focus{border:1px solid #3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none;outline-offset:0;padding:.25rem .5rem}.route-cost-input-inline{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;border:1px solid #ddd;border-radius:.25rem;box-sizing:border-box;font-size:.875rem;height:auto;line-height:1.5;margin-left:.5rem;max-width:100px;min-height:0;outline:none;outline-offset:0;padding:.25rem .5rem;text-align:right;text-rendering:optimizeLegibility}.route-cost-input-inline:focus{border:1px solid #3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none;outline-offset:0;padding:.25rem .5rem}.route-cost-input-inline[type=number],.route-cost-input[type=number]{-webkit-appearance:textfield;appearance:textfield}.route-cost-input-inline[type=number]::-webkit-inner-spin-button,.route-cost-input-inline[type=number]::-webkit-outer-spin-button,.route-cost-input[type=number]::-webkit-inner-spin-button,.route-cost-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.total-amount-readonly{background-color:#f8f9fa;color:#495057;cursor:not-allowed;font-weight:600}.total-amount-note{color:#6c757d;display:block;font-size:.75rem;margin-top:.25rem}.date-night-row{align-items:flex-end;display:flex;gap:.75rem;margin-bottom:.75rem}.date-night-row .date-field{flex:1 1 auto;max-width:75%;min-width:0}.night-shift-toggle{align-items:center;align-self:flex-end;background:#f8fafc;border:1px solid #cbd5f5;border-radius:.6rem;color:#475569;cursor:pointer;display:flex;flex-direction:column;font-size:.95rem;font-weight:600;height:55px;justify-content:center;min-width:5.5rem;padding:.6rem 1.15rem;transition:all .2s ease}.night-shift-toggle:hover{border-color:#93c5fd;color:#1d4ed8}.night-shift-toggle.active{background:#1d4ed8;border-color:#1d4ed8;box-shadow:0 0 0 3px #3b82f640;color:#fff}.night-shift-toggle__state{display:block;font-size:.7rem;font-weight:500;letter-spacing:.02em}@media (max-width:640px){.date-night-row{align-items:stretch;flex-direction:column}.date-night-row .date-field{max-width:100%}.night-shift-toggle{text-align:center;width:100%}}.option-badge{background:#3b82f6;border-radius:.25rem;color:#fff;display:inline-block;flex-shrink:0;font-size:.7rem;font-weight:600;margin-left:.25rem;padding:.15rem .4rem;white-space:nowrap}.option-badges-row{display:flex;flex-wrap:wrap;gap:.25rem;justify-content:center;margin-top:.5rem}@media (max-width:768px){.option-badges-row{flex-wrap:nowrap;justify-content:center;overflow-x:auto}.export-btn{display:none}}.options-toggle-btn{background:#6c757d;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.options-toggle-btn:hover{background:#5a6268}.modal-overlay.options-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:99999!important}.options-modal{background:#fff;border-radius:1rem;box-shadow:0 10px 40px #0000004d;max-width:320px;padding:1.5rem;width:90%}.options-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.options-modal-header h3{color:#333;font-size:1.125rem;font-weight:600;margin:0}.options-modal-close{background:none;border:none;color:#666;cursor:pointer;font-size:1.25rem;line-height:1;padding:.25rem}.options-modal-close:hover{color:#333}.options-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,1fr);margin-bottom:1rem}.option-btn{background:#f3f4f6;border:2px solid #e5e7eb;border-radius:.5rem;color:#374151;cursor:pointer;font-size:.9rem;font-weight:600;padding:.75rem .5rem;text-align:center;transition:all .2s ease}.option-btn:hover{background:#e5e7eb}.option-btn.active{background:#3b82f6;border-color:#2563eb;color:#fff}.option-btn.active:hover{background:#2563eb}.options-modal-done{background:#3b82f6;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem;transition:background .2s ease;width:100%}.options-modal-done:hover{background:#2563eb}@media (min-width:769px){.routes-list-container,.routes-placeholder{box-sizing:border-box;max-width:100%!important;width:100%!important}}@media print{#root,body,html{background:#fff;height:100%;margin:0;overflow:hidden;padding:0}.schedule-print{height:100%;overflow:hidden;width:100%}.schedule-print__grid{page-break-inside:avoid}}.shift-submission{background-color:#f8f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:100%;min-height:100vh;padding:16px}.shift-submission *{box-sizing:border-box}.shift-header{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#333;margin-bottom:20px;padding:16px;text-align:center}.shift-header h1{font-size:24px;font-weight:700;margin:0 0 16px}.month-selector{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:.75rem;justify-content:center;margin-bottom:1.5rem}.month-selector label{color:#333;font-size:1rem;font-weight:600}.month-input{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:.5rem}.summary{grid-gap:16px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);justify-items:center;margin-bottom:20px;margin-left:auto;margin-right:auto;max-width:800px;padding:16px}.summary-item{align-items:center;background:#f8f9fa;border-radius:6px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:12px;text-align:center;width:100%}.summary-item .count{display:block;font-size:24px;font-weight:700;margin-bottom:4px}.summary-item.available .count{color:#28a745}.summary-item.unavailable .count{color:#dc3545}.summary-item.pending .count{color:#6c757d}.summary-item.overtime .count{color:#ffc107}.summary-item.night .count{color:#6f42c1}.summary-item.hours .count{color:#17a2b8}.summary-item .label{color:#666;font-size:14px;font-weight:600}.action-buttons{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.action-buttons button{border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;padding:12px;transition:all .3s ease;white-space:nowrap;width:100%}.time-btn{background:#17a2b8;color:#fff}.time-btn:hover{background:#138496;transform:translateY(-1px)}.site-btn{background:#28a745;color:#fff}.site-btn:hover{background:#218838;transform:translateY(-1px)}.submit-btn{background:#007bff;color:#fff}.submit-btn:hover{background:#0056b3;transform:translateY(-1px)}.clear-btn{background:#dc3545;color:#fff}.clear-btn:hover{background:#c82333;transform:translateY(-1px)}.calendar-container{-webkit-overflow-scrolling:touch;margin-bottom:8px;overflow-x:auto;padding:0}.calendar-container,.notes-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.notes-section{margin-bottom:20px;padding:20px}.notes-section h3{color:#495057;font-size:1.2rem;margin:0 0 15px}.notes-textarea{border:2px solid #e9ecef;border-radius:6px;font-family:inherit;font-size:16px;min-height:80px;padding:12px;resize:vertical;width:100%}.notes-textarea:focus{border-color:#667eea;outline:none}.notes-textarea:disabled{background:#e9ecef;cursor:not-allowed;opacity:.7}.notes-limit{color:#6c757d;font-size:.875rem;margin-top:4px;text-align:right}.shift-submission .calendar-header{grid-gap:0;grid-row-gap:0;grid-column-gap:0;border-collapse:collapse;border-spacing:0;column-gap:0;display:grid;gap:0;grid-template-columns:repeat(7,1fr);margin-bottom:0;margin-left:auto;margin-right:auto;row-gap:0;width:100%}.day-header{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:0;box-sizing:border-box;color:#495057;display:flex;font-weight:600;justify-content:center;margin:0 0 0 -1px;padding:10px;text-align:center}.calendar-header .day-header:nth-child(7n+1){margin-left:0}.calendar-grid{grid-gap:0;grid-row-gap:0;grid-column-gap:0;border-collapse:collapse;border-spacing:0;column-gap:0;display:grid;gap:0;grid-auto-rows:80px;grid-template-columns:repeat(7,1fr);row-gap:0;width:100%}.calendar-day{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:0;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;height:80px;justify-content:center;margin:-1px 0 0 -1px;padding:0;position:relative;text-align:center;transition:all .3s ease;width:100%}.calendar-grid .calendar-day:nth-child(7n+1){margin-left:0}.calendar-grid .calendar-day:nth-child(n+1):nth-child(-n+7){margin-top:0}.calendar-day:hover{background:#f8f9fa}.calendar-day.empty{background:#0000;border:none;cursor:default;height:0;margin:0;min-height:0;padding:0}.calendar-day.selected{background:#e3f2fd;border-color:#007bff}.calendar-day.available{background:#d4edda;border-color:#28a745}.calendar-day.unavailable{background:#f8d7da;border-color:#dc3545}.calendar-day.overtime{background:#fff3cd;border-color:#ffc107}.calendar-day.night{background:#e2e3e5;border-color:#6f42c1}.day-number{color:#495057;font-size:16px;font-weight:600}.status-indicator{font-size:.7rem;font-weight:600;position:absolute;right:2px;top:2px}.status-indicator.available{color:#28a745}.status-indicator.unavailable{color:#dc3545}.note-indicator{bottom:2px;font-size:.6rem;position:absolute;right:2px}.day-detail{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:20px}.day-detail h3{color:#495057;font-size:1.2rem;margin:0 0 15px}.note-input{margin-bottom:15px}.note-input textarea{border:2px solid #e9ecef;border-radius:6px;font-size:16px;min-height:60px;padding:10px;resize:vertical;width:100%}.note-input textarea:focus{border-color:#667eea;outline:none}.form-group .notes-limit,.note-input .notes-limit{color:#6c757d;font-size:.875rem;margin-top:4px;text-align:right}.day-detail .action-buttons{display:flex;gap:10px;justify-content:flex-start}.available-btn,.reset-btn,.unavailable-btn{border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;padding:8px 16px;transition:all .3s ease}.available-btn{background:#28a745;color:#fff}.available-btn:hover{background:#218838;transform:translateY(-1px)}.unavailable-btn{background:#dc3545;color:#fff}.unavailable-btn:hover{background:#c82333;transform:translateY(-1px)}.reset-btn{background:#6c757d;color:#fff}.reset-btn:hover{background:#5a6268;transform:translateY(-1px)}.action-section{display:flex;gap:10px;justify-content:center;margin-top:20px}.clear-all-button,.submit-button{border:none;border-radius:6px;box-sizing:border-box;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease;width:160px}.submit-button{background:#007bff;color:#fff}.submit-button:hover:not(:disabled){background:#0056b3;transform:translateY(-1px)}.submit-button:disabled{background:#6c757d;cursor:not-allowed}.clear-all-button{background:#dc3545;color:#fff}.clear-all-button:hover:not(:disabled){background:#c82333;transform:translateY(-1px)}.clear-all-button:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.lock-notice{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:1px solid #ffc107;border-radius:8px;box-shadow:0 2px 4px #ffc1071a;color:#856404;font-weight:500;margin-bottom:20px;padding:12px 20px;text-align:center}.shift-submission .calendar-day.locked{cursor:not-allowed;opacity:.7;position:relative}.shift-submission .calendar-day.locked:after{content:"🔒";font-size:.7rem;left:2px;position:absolute;top:2px}.shift-submission .available-btn:disabled,.shift-submission .reset-btn:disabled,.shift-submission .unavailable-btn:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.modal-overlay{background:#00000080}.modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000004d;max-height:80vh;max-width:600px;overflow-y:auto;padding:20px;width:90%}.modal h3{color:#495057;font-size:1.2rem;margin:0 0 15px}.submit-form,.time-form{margin-bottom:20px}.form-group{margin-bottom:15px}.form-group label{color:#495057;display:block;font-weight:600;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{border:1px solid #e9ecef;border-radius:4px;font-size:16px;padding:8px 12px;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;outline:none}.form-group input[type=checkbox]{margin-right:8px;width:auto}.site-list{margin-bottom:20px;max-height:300px;overflow-y:auto}.site-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-bottom:10px;padding:15px}.site-item h4{color:#495057;font-size:1rem;margin:0 0 5px}.site-item p{color:#6c757d;font-size:16px;margin:0}.submit-summary{background:#f8f9fa;border-radius:6px;margin-top:15px;padding:15px}.submit-summary h4{color:#495057;font-size:1rem;margin:0 0 10px}.submit-summary p{color:#6c757d;font-size:16px;margin:5px 0}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.cancel-btn,.confirm-btn{border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;padding:8px 16px;transition:all .3s ease}.confirm-btn{background:#007bff;color:#fff}.confirm-btn:hover{background:#0056b3;transform:translateY(-1px)}.cancel-btn{background:#6c757d;color:#fff}.cancel-btn:hover{background:#5a6268;transform:translateY(-1px)}@media (max-width:1200px){.shift-header,.shift-submission{padding:12px}.shift-header h1{font-size:1.8rem}.summary{gap:12px;grid-template-columns:repeat(3,1fr);padding:12px}.summary-item{min-width:0;padding:12px;width:100%}.summary-item .count{font-size:20px}.summary-item .label{font-size:13px}.calendar-container{overflow-x:auto}.shift-submission .calendar-header{min-width:600px;width:100%}.calendar-grid{min-width:600px}.action-buttons{align-items:center;flex-direction:column}.action-buttons button{max-width:200px;width:100%}}@media (max-width:768px){.shift-submission{min-height:auto!important;padding:8px}.shift-header{margin-bottom:8px!important;padding:8px 10px}.shift-header h1{font-size:1.5rem;margin:0 0 8px!important}.month-selector{flex-direction:column;gap:6px!important}.summary{gap:8px;grid-template-columns:repeat(2,1fr);margin-bottom:8px!important;max-width:100%;padding:8px}.summary-item{min-width:0;padding:8px;width:100%}.summary-item .count{font-size:18px}.summary-item .label{font-size:12px}.calendar-container{height:auto;margin-bottom:8px!important;max-height:50vh;overflow-x:auto;overflow-y:auto;padding:0}.shift-submission .calendar-header{margin-bottom:5px;margin-left:0;margin-right:0;min-width:500px;width:100%}.calendar-grid{min-width:500px}.day-header{font-size:.85rem;padding:6px}.notes-section{margin-bottom:8px!important;padding:8px}.notes-section h3{font-size:1rem;margin:0 0 8px!important}.notes-textarea{font-size:14px;min-height:60px;padding:10px}.day-detail{padding:12px}.day-detail h3{font-size:1rem}.form-group{margin-bottom:12px}.form-group label{font-size:.9rem}.form-group input,.form-group select,.form-group textarea{font-size:14px;padding:8px}.action-section{gap:8px;margin-top:10px}.calendar-grid{grid-auto-rows:40px;min-width:0}.calendar-grid,.calendar-header{gap:0;grid-template-columns:repeat(7,1fr)}.calendar-day{font-size:.8rem;height:50px;min-width:0}.calendar-day.empty{height:0;min-height:0;padding:0}.day-detail .action-buttons{flex-direction:column}.available-btn,.reset-btn,.unavailable-btn{width:100%}.action-section{flex-direction:column}.clear-all-button,.submit-button{width:100%}.modal{padding:15px;width:95%}.modal-actions{flex-direction:column}.cancel-btn,.confirm-btn{width:100%}}@media (max-width:480px){.shift-submission{min-height:auto!important;padding:5px!important}.shift-header{margin-bottom:6px!important;padding:6px 8px}.shift-header h1{font-size:1.2rem;margin:0 0 6px!important}.summary{gap:6px;grid-template-columns:repeat(2,1fr);margin-bottom:6px!important;max-width:100%;padding:6px}.summary-item{min-width:0;padding:6px;width:100%}.summary-item .count{font-size:16px}.summary-item .label{font-size:11px}.calendar-container{height:auto;margin-bottom:6px!important;max-height:50vh;overflow-x:auto;overflow-y:auto;padding:0}.month-selector{flex-wrap:wrap;gap:4px!important}.month-input,.month-selector label{font-size:.9rem}.month-input{padding:.4rem}.current-month{font-size:14px;line-height:1.2}.shift-submission .calendar-header{margin-bottom:3px;margin-left:0;margin-right:0;min-width:400px;width:100%}.calendar-grid{min-width:400px}.day-header{font-size:.75rem;padding:4px}.notes-section{margin-bottom:6px!important;padding:6px}.notes-section h3{font-size:.9rem;margin:0 0 6px!important}.notes-textarea{font-size:13px;min-height:50px;padding:8px}.day-detail{padding:10px}.day-detail h3{font-size:.9rem}.form-group{margin-bottom:10px}.form-group label{font-size:.85rem}.form-group input,.form-group select,.form-group textarea{font-size:13px;padding:6px}.available-btn,.reset-btn,.unavailable-btn{font-size:14px;padding:6px 12px}.action-section{gap:6px;margin-top:6px!important}.clear-all-button,.submit-button{font-size:.9rem;padding:10px 16px}.calendar-grid{grid-auto-rows:35px;min-width:0}.calendar-grid,.calendar-header{gap:0;grid-template-columns:repeat(7,1fr)}.calendar-day{font-size:.7rem;height:45px;min-width:0}.calendar-day.empty{height:0;min-height:0;padding:0}.day-number{font-size:.8rem}.status-indicator{font-size:.6rem}.note-indicator{font-size:.5rem}}@media (max-width:375px){.shift-submission{padding:4px!important}.shift-header{margin-bottom:5px!important;padding:5px 6px}.shift-header h1{font-size:1.1rem;margin:0 0 5px!important}.month-selector{flex-wrap:wrap;gap:3px!important}.month-input,.month-selector label{font-size:.85rem}.month-input{padding:.35rem}.current-month{font-size:12px}.summary{gap:5px;grid-template-columns:repeat(2,1fr);margin-bottom:5px!important}.summary,.summary-item{padding:5px}.summary-item .count{font-size:14px}.summary-item .label{font-size:10px}.calendar-container{margin-bottom:5px!important}.shift-submission .calendar-header{margin-bottom:2px;min-width:320px}.calendar-grid{grid-auto-rows:32px;min-width:320px}.calendar-day{font-size:.65rem;height:40px}.day-header{font-size:.7rem;padding:3px 2px}.day-number{font-size:.75rem}.status-indicator{font-size:.55rem}.note-indicator{font-size:.45rem}.notes-section{margin-bottom:5px!important;padding:5px}.notes-section h3{font-size:.85rem;margin:0 0 5px!important}.notes-textarea{font-size:12px;min-height:45px;padding:6px}.day-detail{padding:8px}.day-detail h3{font-size:.85rem}.form-group{margin-bottom:8px}.form-group label{font-size:.8rem}.form-group input,.form-group select,.form-group textarea{font-size:12px;padding:5px}.available-btn,.reset-btn,.unavailable-btn{font-size:13px;padding:5px 10px}.action-section{gap:5px;margin-top:5px!important}.clear-all-button,.submit-button{font-size:.85rem;padding:8px 14px}}.ai-prediction{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1400px;padding:20px}.ai-prediction *{box-sizing:border-box}.ai-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 15px #0000001a;color:#fff;margin-bottom:30px;padding:20px;text-align:center}.ai-header h1{font-size:2.5em;font-weight:700;margin:0 0 10px}.ai-header p{font-size:1.1em;margin:0;opacity:.9}.header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 10px 30px #667eea4d;color:#fff;margin-bottom:40px;padding:30px;text-align:center}.header h1{font-size:2.5rem;font-weight:700;margin:0 0 10px}.header p{font-size:1.1rem;margin:0;opacity:.9}.content-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr;margin-bottom:40px}.section{background:#fff;border-radius:15px;box-shadow:0 5px 15px #0000001a;padding:25px}.section h2{border-bottom:2px solid #e9ecef;color:#495057;font-size:1.4rem;font-weight:600;margin:0 0 20px;padding-bottom:10px}.actions-list{max-height:400px;overflow-y:auto}.action-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px;cursor:pointer;margin-bottom:10px;padding:15px;transition:all .3s ease}.action-item:hover{background:#e9ecef;box-shadow:0 5px 15px #0000001a;transform:translateY(-2px)}.action-item.selected{background:#e3f2fd;border-color:#2196f3;box-shadow:0 0 0 2px #2196f34d}.action-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.action-type{color:#495057;font-size:1rem;font-weight:600}.action-time{color:#6c757d;font-size:.8rem}.action-details{color:#495057;line-height:1.4;margin-bottom:5px}.action-page{color:#6c757d;font-size:.8rem;font-style:italic}.prediction-controls{margin-bottom:20px}.generate-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 5px 15px #667eea4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 30px;transition:all .3s ease}.generate-btn:hover:not(:disabled){box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.generate-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.loading{padding:40px;text-align:center}.spinner{height:40px;margin:0 auto 20px;width:40px}.predictions-list{max-height:400px;overflow-y:auto}.prediction-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;margin-bottom:15px;padding:20px;transition:all .3s ease}.prediction-item:hover{background:#fff;box-shadow:0 5px 15px #0000001a}.prediction-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.prediction-icon{font-size:1.5rem}.prediction-confidence{font-size:.9rem;font-weight:600}.prediction-suggestion{color:#495057;font-size:1.1rem;font-weight:600;line-height:1.4;margin-bottom:10px}.prediction-reasoning{color:#6c757d;font-size:.9rem;line-height:1.5;margin-bottom:15px}.apply-btn{background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;transition:all .3s ease}.apply-btn:hover{background:#45a049;transform:translateY(-1px)}.stats-section{background:#fff;border-radius:15px;box-shadow:0 5px 15px #0000001a;margin-bottom:30px;padding:25px}.stats-section h2{border-bottom:2px solid #e9ecef;color:#495057;font-size:1.4rem;font-weight:600;margin:0 0 20px;padding-bottom:10px}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-item{background:#f8f9fa;border-radius:10px;padding:20px;text-align:center;transition:transform .3s ease}.stat-item:hover{transform:translateY(-2px)}.stat-number{color:#667eea;font-size:2rem;font-weight:700;margin-bottom:5px}.stat-label{color:#6c757d;font-size:.9rem;font-weight:600}.settings-section{background:#fff;border-radius:15px;box-shadow:0 5px 15px #0000001a;padding:25px}.settings-section h2{border-bottom:2px solid #e9ecef;color:#495057;font-size:1.4rem;font-weight:600;margin:0 0 20px;padding-bottom:10px}.settings-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.setting-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;padding:15px;transition:background-color .3s ease}.setting-item:hover{background:#e9ecef}.setting-item label{align-items:center;color:#495057;cursor:pointer;display:flex;font-weight:500;gap:10px}.setting-item input[type=checkbox]{accent-color:#667eea;height:18px;width:18px}@media (max-width:1024px){.content-grid{gap:20px;grid-template-columns:1fr}}@media (max-width:768px){.ai-prediction{padding:15px}.header{padding:20px}.header h1{font-size:2rem}.section{padding:20px}.settings-grid,.stats-grid{grid-template-columns:1fr}.action-header{gap:5px}.action-header,.prediction-header{align-items:flex-start;flex-direction:column}.prediction-header{gap:10px}}@media (max-width:480px){.header h1{font-size:1.5rem}.header p{font-size:1rem}.section h2{font-size:1.2rem}.prediction-suggestion{font-size:1rem}.stat-number{font-size:1.5rem}}.calendar-output-container{background-color:#fff;box-sizing:border-box;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100vh;overflow:hidden;padding:0;width:100%}.calendar-output-table{display:flex;flex:1 1;flex-direction:column;overflow:hidden;width:100%}.calendar-table{background-color:#fff;border-collapse:collapse;flex:1 1;font-size:18px;height:100%;table-layout:fixed;width:100%}.calendar-table thead{flex-shrink:0}.calendar-table tbody{flex:1 1;overflow:hidden}.calendar-table tr{height:auto;min-height:0}.calendar-table th{top:0}.calendar-table th,.calendar-table th.weekday{background-color:#004f80;border:2px solid #ddd;color:#fff;font-size:20px;font-stretch:condensed;font-weight:700;padding:16px 8px;position:-webkit-sticky;position:sticky;text-align:center;z-index:10}.calendar-table th.weekday{top:80px}.calendar-table td{border:2px solid #ddd;height:auto;min-height:0;padding:0;position:relative;vertical-align:top}.calendar-cell{height:100%;justify-content:flex-start;padding:8px;position:relative;width:100%}.calendar-cell,.calendar-cell span[data-type=ASSIGNEE]{align-items:center;box-sizing:border-box;display:flex;flex-direction:column}.calendar-cell span[data-type=ASSIGNEE]{aspect-ratio:1/2.3;border-radius:0;color:#000;flex-basis:calc(45% - 4px);flex-grow:0;flex-shrink:0;font-size:1.2em;font-stretch:condensed;font-weight:800;justify-content:space-evenly;line-height:1;margin:0 2px;max-width:calc(45% - 4px);min-width:calc(45% - 4px);transition:background .2s;width:calc(45% - 4px)}.calendar-cell span[data-type=SITE]{align-items:center;background:none;color:#000;display:flex;flex-direction:row;font-size:1.8em;font-weight:600;gap:4px;height:4em;justify-content:center;line-height:1;margin:1em 0 0;padding:0;text-align:center;-webkit-user-select:none;user-select:none;width:100%}.calendar-cell>div:last-child{align-content:flex-start;align-items:flex-start;display:flex;flex-wrap:wrap;gap:4px;justify-content:center;margin-top:20px;min-height:2em;padding-top:0;width:100%}.extra-row{border-bottom:5px solid #f44336}svg{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}@media print{.calendar-output-container{background-color:#fff;height:auto;padding:0}.calendar-output-table{height:auto;overflow:visible}.calendar-table{box-shadow:none}.calendar-table,.calendar-table td,.calendar-table th{border:1px solid #000}.calendar-table th,.calendar-table th.weekday{position:static}}@media (min-width:1920px){.calendar-table{font-size:20px}.calendar-table th,.calendar-table th.weekday{font-size:24px;padding:20px 12px}.calendar-cell span[data-type=ASSIGNEE]{font-size:1.4em}.calendar-cell span[data-type=SITE]{font-size:2.2em;height:5em}.calendar-cell>div:last-child{margin-top:24px;min-height:2.5em}}@media (min-width:2560px){.calendar-table{font-size:24px}.calendar-table th,.calendar-table th.weekday{font-size:28px;padding:24px 16px}.calendar-cell span[data-type=ASSIGNEE]{font-size:1.6em}.calendar-cell span[data-type=SITE]{font-size:2.6em;height:6em}.calendar-cell>div:last-child{margin-top:28px;min-height:3em}.calendar-header h1{font-size:42px!important}.calendar-navigation button{font-size:24px!important;min-width:140px!important;padding:20px 40px!important}.current-month{font-size:32px!important}}@media (min-width:3840px){.calendar-table{font-size:28px}.calendar-table th,.calendar-table th.weekday{font-size:32px;padding:28px 20px}.calendar-cell span[data-type=ASSIGNEE]{font-size:1.8em}.calendar-cell span[data-type=SITE]{font-size:3em;height:7em}.calendar-cell>div:last-child{margin-top:32px;min-height:3.5em}.calendar-header h1{font-size:48px!important}.calendar-navigation button{font-size:28px!important;min-width:160px!important;padding:24px 48px!important}.current-month{font-size:36px!important}}.calendar-output-container *{-ms-overflow-style:none;scrollbar-width:none}.calendar-output-container ::-webkit-scrollbar{display:none}.process-chart-container{background-color:#f5f5f5;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100vh;overflow:hidden;width:100%}.process-header{align-items:center;background:#004f80;border-radius:8px;box-shadow:0 4px 8px #0000004d;color:#fff;display:flex;flex-shrink:0;justify-content:space-between;margin:20px;padding:20px 40px}.process-header h1{font-size:28px;font-weight:900;letter-spacing:.1em;margin:0;text-shadow:2px 2px 4px #00000080}.process-header button{background:#fff;border:none;border-radius:8px;box-shadow:0 2px 4px #0003;color:#004f80;cursor:pointer;font-size:16px;font-weight:900;min-width:100px;padding:12px 24px;transition:all .3s ease}.process-header button:hover{background:#f0f0f0;box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.process-header button:active{transform:translateY(0)}.process-filter{box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:16px}.process-body,.process-filter{background:#fff;border-radius:8px}.process-body{box-shadow:0 4px 8px #0000001a;flex:1 1;margin:0 20px 20px;overflow:auto}.process-table{background-color:#fff;border-collapse:collapse;font-size:16px;table-layout:fixed;width:100%}.process-table thead{background:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:20}.process-table th{background-color:#f5f5f5;border:2px solid #ddd;color:#333;font-size:18px;font-weight:700;min-width:80px;padding:16px 8px;text-align:center}.process-table th:first-child{background-color:#e3f2fd;min-width:200px;text-align:left}.process-table tbody tr{border-bottom:1px solid #eee;height:60px}.process-table tbody tr:hover{background-color:#f8f9fa}.process-table td{background-color:#fff;border:2px solid #ddd;padding:8px;position:relative;text-align:center;vertical-align:middle}.process-table td:first-child{background-color:#f9f9f9;font-size:16px;font-weight:700;text-align:left}.process-bar{align-items:center;border:3px solid #fff;border-radius:8px;box-shadow:0 3px 10px #0006;color:#fff;cursor:grab;display:flex;font-size:14px;font-weight:700;height:50px;justify-content:center;overflow:hidden;position:absolute;text-overflow:ellipsis;transition:all .2s ease;white-space:nowrap;z-index:10}.process-bar:hover{box-shadow:0 4px 12px #0006;transform:scale(1.02)}.process-bar:active{cursor:grabbing}.process-bar.pending{background:linear-gradient(135deg,#ff9800,#f57c00)}.process-bar.in-progress{background:linear-gradient(135deg,#2196f3,#1976d2)}.process-bar.completed{background:linear-gradient(135deg,#4caf50,#388e3c)}.process-bar.delayed{background:linear-gradient(135deg,#f44336,#d32f2f)}.process-bar.not-started{background:linear-gradient(135deg,#9e9e9e,#757575)}.process-bar.on-hold{background:linear-gradient(135deg,#ffc107,#ffa000)}.process-bar.high{border-left:4px solid #ff1744}.process-bar.medium{border-left:4px solid #ff9800}.process-bar.low{border-left:4px solid #4caf50}.process-bar.critical{border-left:4px solid #d50000}.process-bar.can-start{border:3px solid #fff;box-shadow:0 3px 10px #0006}.process-bar.blocked{border:3px solid #ccc;box-shadow:none;cursor:not-allowed;opacity:.6}.date-cell{min-height:60px;position:relative;transition:background-color .2s ease}.date-cell.drop-over{background-color:#e3f2fd!important;border:2px dashed #2196f3!important}.date-cell:nth-child(7n+1),.date-cell:nth-child(7n+7){background-color:#fff3e0}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:modalSlideIn .3s ease-out;background-color:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;max-height:90vh;max-width:700px;min-width:500px;overflow-y:auto;padding:32px}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-content h2{color:#004f80;font-size:24px;font-weight:700;margin-bottom:24px;margin-top:0}.modal-content label{color:#333;display:block;font-size:16px;font-weight:700;margin-bottom:8px}.modal-content input,.modal-content select{border:2px solid #ddd;border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px;transition:border-color .2s ease;width:100%}.modal-content input:focus,.modal-content select:focus{border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a;outline:none}.modal-content input[type=color]{border:2px solid #ddd;border-radius:8px;cursor:pointer;height:50px;padding:4px;width:80px}.modal-content button{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:700;min-width:100px;padding:12px 24px;transition:all .2s ease}.modal-content button[type=submit]{background-color:#4caf50;color:#fff}.modal-content button[type=submit]:hover{background-color:#45a049;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.modal-content button[type=button]{background-color:#f5f5f5;border:2px solid #ddd;color:#333}.modal-content button[type=button]:hover{background-color:#e0e0e0;transform:translateY(-2px)}.modal-content button:last-child{background-color:#f44336;color:#fff}.modal-content button:last-child:hover{background-color:#da190b;transform:translateY(-2px)}@media (min-width:1920px){.gantt-header h1{font-size:32px}.gantt-header button{font-size:18px;min-width:120px;padding:16px 32px}.gantt-table{font-size:18px}.gantt-table th{font-size:20px;min-width:100px;padding:20px 12px}.gantt-table td:first-child{font-size:18px}.task-bar{font-size:16px;height:45px}.modal-content{min-width:600px;padding:40px}.modal-content h2{font-size:28px}.modal-content label{font-size:18px}.modal-content input,.modal-content select{font-size:18px;padding:16px}.modal-content button{font-size:18px;min-width:120px;padding:16px 32px}}@media (min-width:2560px){.gantt-header h1{font-size:36px}.gantt-header button{font-size:20px;min-width:140px;padding:20px 40px}.gantt-table{font-size:20px}.gantt-table th{font-size:22px;min-width:120px;padding:24px 16px}.gantt-table td:first-child{font-size:20px}.task-bar{font-size:18px;height:50px}.modal-content{min-width:700px;padding:48px}.modal-content h2{font-size:32px}.modal-content label{font-size:20px}.modal-content input,.modal-content select{font-size:20px;padding:20px}.modal-content button{font-size:20px;min-width:140px;padding:20px 40px}}@media (min-width:3840px){.gantt-header h1{font-size:40px}.gantt-header button{font-size:24px;min-width:160px;padding:24px 48px}.gantt-table{font-size:22px}.gantt-table th{font-size:24px;min-width:140px;padding:28px 20px}.gantt-table td:first-child{font-size:22px}.task-bar{font-size:20px;height:55px}.modal-content{min-width:800px;padding:56px}.modal-content h2{font-size:36px}.modal-content label{font-size:22px}.modal-content input,.modal-content select{font-size:22px;padding:24px}.modal-content button{font-size:22px;min-width:160px;padding:24px 48px}}.gantt-body::-webkit-scrollbar{height:12px;width:12px}.gantt-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:6px}.gantt-body::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:6px}.gantt-body::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media print{.gantt-chart-container{background-color:#fff;height:auto;overflow:visible;padding:0}.gantt-header{background:#004f80!important;color:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.gantt-table{box-shadow:none}.gantt-table,.gantt-table td,.gantt-table th{border:1px solid #000}.task-bar{background:#f0f0f0!important;border:1px solid #000!important;color:#000!important}}.register-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.register-card{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:450px;padding:40px;width:100%}.register-header{margin-bottom:30px;text-align:center}.register-header h2{color:#333;font-size:28px;font-weight:600;margin:0 0 10px}.register-subtitle{color:#666;font-size:14px;margin:0}.message{border-radius:6px;font-size:14px;line-height:1.5;margin-bottom:20px;padding:12px 16px;white-space:pre-wrap;word-break:break-all}.message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.register-form{display:flex;flex-direction:column;gap:20px}.name-row{display:flex!important;gap:1rem!important;margin-bottom:20px!important;width:100%!important}.name-row .form-group{display:flex!important;flex:1 1!important;flex-direction:column!important;gap:8px!important;margin-bottom:0!important;width:50%!important}.name-row .form-group label{color:#333!important;font-weight:600!important;margin-bottom:4px!important}.name-row .form-group label,.name-row input{font-size:14px!important;text-align:left!important}.name-row input{border:1px solid #ddd!important;border-radius:6px!important;box-sizing:border-box!important;padding:12px 16px!important;transition:all .2s ease!important;width:100%!important}.register-form .form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.register-form label{color:#333;font-size:14px;font-weight:600;margin-bottom:4px;text-align:left}.register-form input{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:14px;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.register-form input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.register-form input.error{border-color:#dc3545}.register-form input.error:focus{box-shadow:0 0 0 3px #dc35451a}.register-form input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{color:#dc3545;font-size:12px;line-height:1.4;margin-top:4px;text-align:left}.register-button{align-self:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;max-width:400px;padding:14px 24px;transition:all .3s ease;width:100%}.register-button:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.register-button:active:not(:disabled){transform:translateY(0)}.register-button:disabled{cursor:not-allowed;opacity:.6}.register-footer{border-top:1px solid #eee;margin-top:24px;padding-top:24px;text-align:center}.register-footer p{color:#666;font-size:14px;margin:0}.login-link{color:#667eea;font-weight:600;margin-left:6px;text-decoration:none;transition:color .2s ease}.login-link:hover{color:#764ba2;text-decoration:underline}@media (max-width:768px){.name-row{flex-direction:column!important;gap:0!important}.name-row .form-group{margin-bottom:20px!important;width:100%!important}}@media (max-width:480px){.register-card{max-width:100%;padding:30px 20px}.register-header h2{font-size:24px}.register-form{gap:16px}.register-form .form-group{margin-bottom:16px}.name-row .form-group{margin-bottom:16px!important}.register-button{font-size:15px;padding:12px 20px}}.verify-email-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px;position:relative;z-index:9999}.verify-email-card{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:500px;padding:50px 40px;position:relative;text-align:center;width:100%;z-index:10000}.verify-loading{align-items:center;display:flex;flex-direction:column;gap:20px}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:50px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.verify-loading h2{color:#333;font-size:24px;margin:0}.verify-loading p{color:#666;font-size:14px;margin:0}.verify-result{align-items:center;display:flex;flex-direction:column;gap:20px}.verify-result h2{color:#333;font-size:28px;margin:0}.verify-result.success h2{color:#28a745}.verify-result.error h2{color:#dc3545}.verify-message{color:#666;font-size:16px;line-height:1.6;margin:0}.verify-actions{display:flex;flex-direction:column;gap:12px;margin-top:10px;width:100%}.verify-button{border-radius:6px;display:inline-block;font-size:16px;font-weight:600;padding:14px 24px;text-decoration:none;transition:all .3s ease}.verify-button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.verify-button.primary:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.verify-button:not(.primary):not(.secondary){background:#f8f9fa;border:1px solid #ddd;color:#333}.verify-button:not(.primary):not(.secondary):hover{background:#e9ecef}.verify-button.secondary{background:#fff;border:2px solid #667eea;color:#667eea}.verify-button.secondary:hover{background:#667eea;color:#fff}@media (max-width:480px){.verify-email-card{padding:40px 30px}.verify-result h2{font-size:24px}.verify-message{font-size:14px}.verify-button{font-size:15px;padding:12px 20px}}.home-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.home-content{max-width:1200px;width:100%}.welcome-section{color:#fff;margin-bottom:3rem;text-align:center}.welcome-title{font-size:2.5rem;font-weight:700;margin-bottom:1rem;text-shadow:2px 2px 4px #0003}.welcome-subtitle{font-size:1.2rem;margin-bottom:.5rem;opacity:.9}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:3rem}.feature-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;cursor:pointer;display:flex;flex-direction:column;padding:2rem;text-align:center;transition:all .3s ease}.feature-card:hover{box-shadow:0 10px 15px #0003,0 4px 6px #0000001a;transform:translateY(-5px)}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-title{color:#333;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.feature-description{color:#666;flex-grow:1;margin-bottom:1.5rem}.feature-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.feature-button:hover{box-shadow:0 4px 8px #0003;transform:scale(1.05)}.notice-section{color:#fff;margin-top:2rem;text-align:center}.notice-text{font-size:.9rem;font-style:italic;opacity:.8}@media (max-width:768px){.home-container{padding:1rem}.welcome-title{font-size:2rem}.welcome-subtitle{font-size:1rem}.features-grid{gap:1.5rem;grid-template-columns:1fr}.feature-card{padding:1.5rem}}