*,: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}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.inset-0{inset:0}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.left-0{left:0}.left-1\/2{left:50%}.left-6{left:1.5rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.right-6{right:1.5rem}.top-0{top:0}.top-1{top:.25rem}.top-2{top:.5rem}.top-24{top:6rem}.top-3{top:.75rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[10000\]{z-index:10000}.z-\[10001\]{z-index:10001}.z-\[10002\]{z-index:10002}.z-\[10020\]{z-index:10020}.z-\[9999\]{z-index:9999}.order-1{order:1}.order-2{order:2}.col-span-2{grid-column:span 2/span 2}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.ml-3{margin-left:.75rem}.mr-1{margin-right:.25rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.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}.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-28{height:7rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[90vh\]{height:90vh}.h-\[95vh\]{height:95vh}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.max-h-\[60vh\]{max-height:60vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[95vh\]{max-height:95vh}.max-h-\[min\(28dvh\2c 220px\)\]{max-height:min(28dvh,220px)}.max-h-\[min\(92vh\2c 900px\)\]{max-height:min(92vh,900px)}.max-h-\[min\(calc\(95vh-10\.5rem\)\2c 50dvh\)\]{max-height:min(calc(95vh - 10.5rem),50dvh)}.max-h-full{max-height:100%}.min-h-0{min-height:0}.min-h-\[12rem\]{min-height:12rem}.min-h-\[2rem\]{min-height:2rem}.min-h-\[44px\]{min-height:44px}.min-h-\[48px\]{min-height:48px}.min-h-\[50vh\]{min-height:50vh}.min-h-\[52px\]{min-height:52px}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[min\(96vw\2c 1080px\)\]{width:min(96vw,1080px)}.w-\[min\(96vw\2c 920px\)\]{width:min(96vw,920px)}.w-\[min\(96vw\2c 980px\)\]{width:min(96vw,980px)}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[100px\]{min-width:100px}.min-w-\[3rem\]{min-width:3rem}.max-w-2xl{max-width:42rem}.max-w-\[min\(92vw\2c 300px\)\]{max-width:min(92vw,300px)}.max-w-\[min\(92vw\2c 440px\)\]{max-width:min(92vw,440px)}.max-w-\[min\(96vw\2c 1080px\)\]{max-width:min(96vw,1080px)}.max-w-\[min\(96vw\2c 520px\)\]{max-width:min(96vw,520px)}.max-w-\[min\(96vw\2c 920px\)\]{max-width:min(96vw,920px)}.max-w-\[min\(96vw\2c 980px\)\]{max-width:min(96vw,980px)}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1}.flex-\[2\]{flex:2 1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.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}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,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}.flex-nowrap{flex-wrap:nowrap}.place-items-center{place-items:center}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-\[0\.2rem\]{gap:.2rem}.gap-x-3{column-gap:.75rem}.gap-y-1{row-gap:.25rem}.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>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(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)))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overscroll-contain{overscroll-behavior:contain}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.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-0{border-width:0}.border-2{border-width:2px}.border-\[3px\]{border-width:3px}.border-\[5px\]{border-width:5px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-t{border-top-width:1px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-amber-100{--tw-border-opacity:1;border-color:#fef3c7;border-color:rgb(254 243 199/var(--tw-border-opacity,1))}.border-amber-200{--tw-border-opacity:1;border-color:#fde68a;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.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-600\/50{border-color:#d9770680}.border-amber-800{--tw-border-opacity:1;border-color:#92400e;border-color:rgb(146 64 14/var(--tw-border-opacity,1))}.border-black{--tw-border-opacity:1;border-color:#000;border-color:rgb(0 0 0/var(--tw-border-opacity,1))}.border-blue-200{--tw-border-opacity:1;border-color:#bfdbfe;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.border-emerald-600{--tw-border-opacity:1;border-color:#059669;border-color:rgb(5 150 105/var(--tw-border-opacity,1))}.border-indigo-300{--tw-border-opacity:1;border-color:#a5b4fc;border-color:rgb(165 180 252/var(--tw-border-opacity,1))}.border-indigo-600{--tw-border-opacity:1;border-color:#4f46e5;border-color:rgb(79 70 229/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-rose-200{--tw-border-opacity:1;border-color:#fecdd3;border-color:rgb(254 205 211/var(--tw-border-opacity,1))}.border-slate-100{--tw-border-opacity:1;border-color:#f1f5f9;border-color:rgb(241 245 249/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-400{--tw-border-opacity:1;border-color:#94a3b8;border-color:rgb(148 163 184/var(--tw-border-opacity,1))}.border-slate-600{--tw-border-opacity:1;border-color:#475569;border-color:rgb(71 85 105/var(--tw-border-opacity,1))}.border-slate-700{--tw-border-opacity:1;border-color:#334155;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.border-slate-800{--tw-border-opacity:1;border-color:#1e293b;border-color:rgb(30 41 59/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-transparent{border-color:#0000}.border-violet-200{--tw-border-opacity:1;border-color:#ddd6fe;border-color:rgb(221 214 254/var(--tw-border-opacity,1))}.border-violet-300{--tw-border-opacity:1;border-color:#c4b5fd;border-color:rgb(196 181 253/var(--tw-border-opacity,1))}.border-violet-600\/50{border-color:#7c3aed80}.border-violet-800{--tw-border-opacity:1;border-color:#5b21b6;border-color:rgb(91 33 182/var(--tw-border-opacity,1))}.bg-amber-100{--tw-bg-opacity:1;background-color:#fef3c7;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.bg-amber-50{--tw-bg-opacity:1;background-color:#fffbeb;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-50\/40{background-color:#fffbeb66}.bg-amber-50\/90{background-color:#fffbebe6}.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{--tw-bg-opacity:1;background-color:#000;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\/40{background-color:#0006}.bg-black\/65{background-color:#000000a6}.bg-blue-600{--tw-bg-opacity:1;background-color:#2563eb;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-emerald-50{--tw-bg-opacity:1;background-color:#ecfdf5;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-emerald-600{--tw-bg-opacity:1;background-color:#059669;background-color:rgb(5 150 105/var(--tw-bg-opacity,1))}.bg-indigo-50\/50{background-color:#eef2ff80}.bg-indigo-600{--tw-bg-opacity:1;background-color:#4f46e5;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.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-rose-50{--tw-bg-opacity:1;background-color:#fff1f2;background-color:rgb(255 241 242/var(--tw-bg-opacity,1))}.bg-sky-100{--tw-bg-opacity:1;background-color:#e0f2fe;background-color:rgb(224 242 254/var(--tw-bg-opacity,1))}.bg-sky-500{--tw-bg-opacity:1;background-color:#0ea5e9;background-color:rgb(14 165 233/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-50{--tw-bg-opacity:1;background-color:#f8fafc;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-slate-50\/50{background-color:#f8fafc80}.bg-slate-50\/80{background-color:#f8fafccc}.bg-slate-700{--tw-bg-opacity:1;background-color:#334155;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.bg-slate-800{--tw-bg-opacity:1;background-color:#1e293b;background-color:rgb(30 41 59/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-violet-50\/40{background-color:#f5f3ff66}.bg-white{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/80{background-color:#fffc}.bg-white\/95{background-color:#fffffff2}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.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-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.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}.py-px{padding-bottom:1px;padding-top:1px}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-28{padding-bottom:7rem}.pr-1{padding-right:.25rem}.pr-10{padding-right:2.5rem}.pr-12{padding-right:3rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[14px\]{font-size:14px}.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-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.italic{font-style:italic}.leading-\[1\.1\]{line-height:1.1}.leading-\[1\.35\]{line-height:1.35}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.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-amber-800{--tw-text-opacity:1;color:#92400e;color:rgb(146 64 14/var(--tw-text-opacity,1))}.text-amber-800\/90{color:#92400ee6}.text-amber-900{--tw-text-opacity:1;color:#78350f;color:rgb(120 53 15/var(--tw-text-opacity,1))}.text-amber-950{--tw-text-opacity:1;color:#451a03;color:rgb(69 26 3/var(--tw-text-opacity,1))}.text-black{--tw-text-opacity:1;color:#000;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-emerald-900{--tw-text-opacity:1;color:#064e3b;color:rgb(6 78 59/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-indigo-600{--tw-text-opacity:1;color:#4f46e5;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-indigo-700{--tw-text-opacity:1;color:#4338ca;color:rgb(67 56 202/var(--tw-text-opacity,1))}.text-indigo-800{--tw-text-opacity:1;color:#3730a3;color:rgb(55 48 163/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-red-900{--tw-text-opacity:1;color:#7f1d1d;color:rgb(127 29 29/var(--tw-text-opacity,1))}.text-rose-600{--tw-text-opacity:1;color:#e11d48;color:rgb(225 29 72/var(--tw-text-opacity,1))}.text-sky-700{--tw-text-opacity:1;color:#0369a1;color:rgb(3 105 161/var(--tw-text-opacity,1))}.text-slate-100{--tw-text-opacity:1;color:#f1f5f9;color:rgb(241 245 249/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-violet-800\/90{color:#5b21b6e6}.text-violet-900{--tw-text-opacity:1;color:#4c1d95;color:rgb(76 29 149/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/80{color:#fffc}.text-white\/90{color:#ffffffe6}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.accent-slate-900{accent-color:#0f172a}.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-1{--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(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-1,.ring-2{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-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)}.ring-slate-400{--tw-ring-opacity:1;--tw-ring-color:rgb(148 163 184/var(--tw-ring-opacity,1))}.ring-slate-900{--tw-ring-opacity:1;--tw-ring-color:rgb(15 23 42/var(--tw-ring-opacity,1))}.ring-offset-1{--tw-ring-offset-width:1px}.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)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-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}}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))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:left-\[2px\]:after{content:var(--tw-content);left:2px}.after\:top-\[2px\]:after{content:var(--tw-content);top:2px}.after\:h-5:after{content:var(--tw-content);height:1.25rem}.after\:w-5:after{content:var(--tw-content);width:1.25rem}.after\:rounded-full:after{border-radius:9999px;content:var(--tw-content)}.after\:border:after{border-width:1px;content:var(--tw-content)}.after\:border-slate-300:after{--tw-border-opacity:1;border-color:#cbd5e1;border-color:rgb(203 213 225/var(--tw-border-opacity,1));content:var(--tw-content)}.after\:bg-white:after{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));content:var(--tw-content)}.after\:transition-all:after{content:var(--tw-content);transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}.hover\:border-slate-300:hover{--tw-border-opacity:1;border-color:#cbd5e1;border-color:rgb(203 213 225/var(--tw-border-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-amber-500:hover{--tw-bg-opacity:1;background-color:#f59e0b;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.hover\:bg-blue-500:hover{--tw-bg-opacity:1;background-color:#3b82f6;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.hover\:bg-emerald-700:hover{--tw-bg-opacity:1;background-color:#047857;background-color:rgb(4 120 87/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-rose-100:hover{--tw-bg-opacity:1;background-color:#ffe4e6;background-color:rgb(255 228 230/var(--tw-bg-opacity,1))}.hover\:bg-sky-400:hover{--tw-bg-opacity:1;background-color:#38bdf8;background-color:rgb(56 189 248/var(--tw-bg-opacity,1))}.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-600:hover{--tw-bg-opacity:1;background-color:#475569;background-color:rgb(71 85 105/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-800:hover{--tw-bg-opacity:1;background-color:#1e293b;background-color:rgb(30 41 59/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\:text-sky-900:hover{--tw-text-opacity:1;color:#0c4a6e;color:rgb(12 74 110/var(--tw-text-opacity,1))}.hover\:text-slate-600:hover{--tw-text-opacity:1;color:#475569;color:rgb(71 85 105/var(--tw-text-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\:text-white:hover{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/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-400:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgb(148 163 184/var(--tw-ring-opacity,1))}.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}.enabled\:opacity-100:enabled{opacity:1}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-indigo-300:disabled{--tw-bg-opacity:1;background-color:#a5b4fc;background-color:rgb(165 180 252/var(--tw-bg-opacity,1))}.disabled\:bg-slate-400:disabled{--tw-bg-opacity:1;background-color:#94a3b8;background-color:rgb(148 163 184/var(--tw-bg-opacity,1))}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-45:disabled{opacity:.45}.disabled\:opacity-50:disabled{opacity:.5}.peer:checked~.peer-checked\:bg-indigo-600{--tw-bg-opacity:1;background-color:#4f46e5;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.peer:checked~.peer-checked\:after\:translate-x-full:after{--tw-translate-x:100%;content:var(--tw-content);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))}.peer:checked~.peer-checked\:after\:border-white:after{--tw-border-opacity:1;border-color:#fff;border-color:rgb(255 255 255/var(--tw-border-opacity,1));content:var(--tw-content)}.peer:focus~.peer-focus\:outline-none{outline:2px solid #0000;outline-offset:2px}.peer:focus~.peer-focus\: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)}.peer:focus~.peer-focus\:ring-indigo-300{--tw-ring-opacity:1;--tw-ring-color:rgb(165 180 252/var(--tw-ring-opacity,1))}.has-\[\:checked\]\:border-indigo-400:has(:checked){--tw-border-opacity:1;border-color:#818cf8;border-color:rgb(129 140 248/var(--tw-border-opacity,1))}.has-\[\:checked\]\:bg-indigo-50\/60:has(:checked){background-color:#eef2ff99}.aria-selected\:opacity-100[aria-selected=true]{opacity:1}.data-\[state\=closed\]\:animate-none[data-state=closed]{animation:none}.data-\[state\=closed\]\:duration-0[data-state=closed]{transition-duration:0s}.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}.data-\[state\=closed\]\:duration-0[data-state=closed]{animation-duration:0s}@media not all and (min-width:768px){.max-md\:bottom-0{bottom:0}.max-md\:left-\[50\%\]{left:50%}.max-md\:top-auto{top:auto}.max-md\:max-h-\[100vh\]{max-height:100vh}.max-md\:max-h-\[85vh\]{max-height:85vh}.max-md\:max-w-\[92\%\]{max-width:92%}.max-md\:translate-x-\[-50\%\]{--tw-translate-x:-50%}.max-md\:translate-x-\[-50\%\],.max-md\:translate-y-0{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))}.max-md\:translate-y-0{--tw-translate-y:0px}.max-md\:overflow-y-auto{overflow-y:auto}.max-md\:rounded-b-none{border-bottom-left-radius:0;border-bottom-right-radius:0}}@media (min-width:640px){.sm\:order-1{order:1}.sm\:order-2{order:2}.sm\:max-h-\[min\(32dvh\2c 260px\)\]{max-height:min(32dvh,260px)}.sm\:max-h-\[min\(calc\(95vh-10\.5rem\)\2c 56dvh\)\]{max-height:min(calc(95vh - 10.5rem),56dvh)}.sm\:w-auto{width:auto}.sm\:max-w-2xl{max-width:42rem}.sm\:max-w-\[200px\]{max-width:200px}.sm\:max-w-\[58\%\]{max-width:58%}.sm\:max-w-\[min\(92vw\2c 340px\)\]{max-width:min(92vw,340px)}.sm\:max-w-\[min\(92vw\2c 500px\)\]{max-width:min(92vw,500px)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.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\:rounded-lg{border-radius:.5rem}.sm\:p-3{padding:.75rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}.sm\:py-4{padding-bottom:1rem;padding-top:1rem}.sm\:text-left{text-align:left}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width:1024px){.lg\:grid-cols-\[220px_1fr\]{grid-template-columns:220px 1fr}}body,html{height:100%;overflow:hidden}@media (max-width:767px){body,html{min-height:100vh;min-height:100svh;min-height:-webkit-fill-available}}.App{max-width:100%;overflow-x:hidden;position:relative;text-align:center}*{box-sizing:border-box}.App>div{max-width:100%;overflow-x:hidden;position:relative}.page-transition{animation:pageSlideFadeIn .28s ease-out}@keyframes pageSlideFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}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)}}.app-layout{display:block;height:100vh;position:relative}@media (max-width:767px){.app-layout{display:flex;flex-direction:column;height:100vh;height:100svh;min-height:-webkit-fill-available}}.sidebar-wrap{bottom:0;box-shadow:none;flex-shrink:0;left:0;max-width:min(88vw,320px);overflow:hidden;pointer-events:none;position:fixed;top:0;transform:translateX(-100%);transition:transform .22s cubic-bezier(.4,0,.2,1),box-shadow .22s ease;width:min(100%,300px);will-change:transform;z-index:1001}.sidebar-wrap.is-open{box-shadow:4px 0 20px #0f172a2e;pointer-events:auto;transform:translateX(0)}.sidebar-wrap.closed{pointer-events:none;transform:translateX(-100%)}.sidebar-wrap.no-transition{transition:none!important}@media (min-width:768px){.sidebar-wrap{max-width:none;width:220px}}.sidebar-backdrop{animation:sidebarBackdropIn .2s ease-out forwards;background:#0f172a6b;cursor:pointer;inset:0;position:fixed;z-index:1000}.sidebar-backdrop.no-transition{animation:none}@keyframes sidebarBackdropIn{0%{opacity:0}to{opacity:1}}.app-content{display:flex;flex:1 1;flex-direction:column;min-width:0;width:100%}@media (max-width:767px){.app-content{flex:1 1 auto;min-height:0;padding-bottom:max(env(safe-area-inset-bottom),16px);transition:padding-top .25s ease-out}}.app-layout .sidebar-wrap.is-open+.app-content .calendar-container{pointer-events:none}.app-header-slim{grid-gap:12px;align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;box-sizing:border-box;display:grid;flex-shrink:0;gap:12px;grid-template-columns:1fr auto 1fr;left:0;min-height:52px;overflow:visible;padding:12px 20px;position:fixed;right:0;top:0;transition:opacity .25s ease-out,top .25s ease-out,left .2s ease-out;z-index:1100}.app-header-slim.header-hidden{opacity:0;pointer-events:none;top:-60px;visibility:hidden}.app-header-hidden{display:none!important}.app-content{padding-top:max(72px,calc(65px + env(safe-area-inset-top, 0px)))}.app-content.app-content--sp-header-hidden{padding-top:env(safe-area-inset-top,0)}.app-header-menu-btn{background:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23334155' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18M3 12h18M3 18h18'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;border:none;border-radius:8px;cursor:pointer;display:block;flex-shrink:0;height:40px;justify-self:start;padding:0;width:40px}.app-header-menu-btn:focus-visible{outline:2px solid #0369a1;outline-offset:2px}.app-header-menu-btn.sidebar-open{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23334155' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 18-6-6 6-6'/%3E%3C/svg%3E")}.app-header-logo{align-items:center;background-image:url(/static/media/suguruma_logo.ddba409481c72eb22227.png);background-position:50%;background-repeat:no-repeat;background-size:contain;color:#0000;display:inline-flex;font-size:0;height:32px;justify-content:center;justify-self:center;text-decoration:none;width:160px}.app-header-user{align-items:center;display:flex;justify-self:end;overflow:visible;position:relative}.app-header-user-trigger{align-items:center;background:none;border:none;cursor:pointer;display:inline-flex;font:inherit;padding:6px 8px}.app-header-user-icon{font-size:1.25rem;line-height:1}.app-header-user-chevron{color:#64748b;font-size:.65rem;margin-left:2px}.app-header-user-menu-name{border-bottom:1px solid #e2e8f0;color:#334155;cursor:default;font-size:.9rem;list-style:none;padding:10px 16px}.app-header-user-menu{background:#fff;border:1px solid #0000;border-radius:6px;box-shadow:0 4px 12px #0000001a;list-style:none;margin:4px 0 0;max-height:0;min-width:160px;overflow:hidden;padding:0;pointer-events:none;position:absolute;right:0;top:100%;transition:max-height .42s cubic-bezier(.4,0,.2,1);z-index:9999}.app-header-user-menu:hover,.app-header-user.open .app-header-user-menu{border-color:#e2e8f0;max-height:280px;padding:6px 0;pointer-events:auto}.app-header-user-menu li{margin:0}.app-header-user-menu a,.app-header-user-menu button{background:none;border:none;color:#334155;cursor:pointer;display:block;font-family:inherit;font-size:.9rem;padding:8px 16px;text-align:center;text-decoration:none;width:100%}.app-header-user-menu a:hover,.app-header-user-menu button:hover{background:#f1f5f9}.app-main{background:#f8fafc;flex:1 1;min-width:0;overflow:hidden;padding:clamp(.75rem,2.2vw,1.5rem)}@media (max-width:767px){.app-main{-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto}}@keyframes sidebarOverlayFade{0%{opacity:0}to{opacity:1}}.main-navigation{background-color:#004f80;left:0;margin-bottom:0;padding:30px 20px;position:fixed;right:0;top:0;transition:transform .3s ease,opacity .3s ease,visibility .3s ease;z-index:1000}.main-navigation.header-scrolled-down{opacity:0;pointer-events:none;transform:translateY(-100%);visibility:hidden}.main-navigation-spacer{flex-shrink:0;height:130px;min-height:130px}.nav-menu-desktop{gap:10px 20px}.nav-menu-desktop,.nav-menu-row{align-items:center;display:flex;flex-wrap:wrap;justify-content:center}.nav-menu-row{gap:20px;list-style:none;margin:0;padding:0}.nav-menu-row-single{margin-bottom:0}.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-dropdown{position:relative}.nav-dropdown-trigger{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;font-size:1.1em;padding:0;transition:opacity .2s}.nav-dropdown-trigger:hover{opacity:.8}.nav-dropdown-menu{background:#003a5c;border-radius:6px;box-shadow:0 4px 12px #00000040;left:50%;list-style:none;margin:6px 0 0;min-width:180px;opacity:0;padding:8px 0;position:absolute;top:100%;transform:translateX(-50%);transition:opacity .2s ease,visibility .2s ease;visibility:hidden;z-index:1002}.nav-dropdown:hover .nav-dropdown-menu{opacity:1;visibility:visible}.nav-dropdown-menu li{margin:0}.nav-dropdown-menu a{color:#fff;display:block;font-size:.95em;padding:8px 16px;text-decoration:none;white-space:nowrap}.nav-dropdown-menu a:hover{background:#ffffff26;opacity:1}.nav-user-info{align-items:center;display:flex;gap:10px;justify-content:flex-end;margin-left:auto;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-mobile-dropdown{border-bottom:1px solid #ffffff1a}.nav-mobile-dropdown-trigger{background:none;border:none;color:#fff;cursor:pointer;display:block;font-family:inherit;font-size:1.1em;padding:15px 20px;text-align:left;transition:background-color .2s;width:100%}.nav-mobile-dropdown-trigger:hover{background-color:#ffffff1a}.nav-mobile-dropdown-menu{background:#0003;list-style:none;margin:0;padding:0}.nav-mobile-dropdown-menu li{border-bottom:none}.nav-mobile-dropdown-menu a{font-size:.95em;padding:10px 20px 10px 32px}.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}}@media (max-width:767px){div[class*=fixed][class*=inset-0][class*=flex][class*=justify-center]{align-items:flex-end;padding-bottom:0}div[class*=fixed][class*=inset-0][class*=flex][class*=justify-center]>div{border-radius:12px 12px 0 0!important;max-height:100vh;width:100%}[role=dialog]:not([data-modal-position=center]){border-radius:12px 12px 0 0;bottom:0!important;left:50%!important;max-height:100vh;top:auto!important;transform:translate(-50%)!important}[role=dialog][data-modal-position=center]{border-radius:12px;bottom:auto!important;left:50%!important;max-height:85vh;top:50%!important;transform:translate(-50%,-50%)!important}}.modal-overlay{inset:0;z-index:9999}body:has(.modal-overlay) .main-navigation{pointer-events:none}.modal-content{box-shadow:0 20px 40px #0f172a33;max-width:720px;width:90%}.modal-container{left:50%;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:10000}@media (max-width:767px){.modal-container{align-items:stretch;bottom:0!important;box-sizing:border-box;display:flex;flex-direction:column;left:50%!important;max-height:100vh!important;padding:0 12px;right:auto!important;top:auto!important;transform:translate(-50%)!important;width:100%}.modal-content{border-radius:12px 12px 0 0;max-height:100%;max-width:100%;width:100%}}.modal-footer,.modal-header{border-bottom:1px solid #94a3b84d;padding:1rem 1.5rem}.modal-footer{border-bottom:none;border-top:1px solid #94a3b84d;gap:.75rem}.modal-body{padding:1.5rem}.modal-close{background:#0000}.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}:root{--form-label-width:140px;--form-field-height:42px;--form-row-gap:12px;--form-padding-y:8px;--form-padding-x:12px;--form-font-size:14px;--form-line-height:1.4}.form-row-group{grid-gap:12px;grid-gap:var(--form-row-gap);display:grid;gap:12px;gap:var(--form-row-gap);grid-template-columns:1fr;width:100%}@media (min-width:769px){.form-row-group{grid-template-columns:1fr 1fr}}.form-row:not(.form-row-group){align-items:flex-start;display:flex;flex-direction:column;gap:12px;gap:var(--form-row-gap);min-height:0;width:100%}@media (min-width:769px){.form-row:not(.form-row-group){align-items:center;flex-direction:row}}.form-label{font-weight:500;margin:0}.form-label,.form-row-label{flex-shrink:0;font-size:14px;font-size:var(--form-font-size);line-height:1.4;line-height:var(--form-line-height);width:100%}.form-row-label{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}@media (min-width:769px){.form-label,.form-row-label{width:140px;width:var(--form-label-width)}}.form-field{align-items:center;display:flex;flex:1 1;min-width:0;width:100%}.form-field>*{min-width:0}.form-field>input,.form-field>select,.form-field>textarea{flex:1 1}.form-field>div{align-items:center;display:flex;flex:1 1}.form-field input,.form-field select,.form-field textarea{border:1px solid #ced4da;border-radius:4px;box-sizing:border-box;font-size:14px;font-size:var(--form-font-size);height:42px;height:var(--form-field-height);line-height:1.4;line-height:var(--form-line-height);min-height:42px;min-height:var(--form-field-height);padding:8px 12px;padding:var(--form-padding-y) var(--form-padding-x);width:100%}.form-field textarea{height:auto;resize:vertical}.form-field button,.form-field textarea{min-height:42px;min-height:var(--form-field-height)}.form-field button{box-sizing:border-box;font-size:14px;font-size:var(--form-font-size);line-height:1.4;line-height:var(--form-line-height);padding:8px 12px;padding:var(--form-padding-y) var(--form-padding-x)}.form-row:not(.form-row-group)>:nth-child(n+3){flex:1 1 100%;min-width:0}@media (min-width:769px){.form-row:not(.form-row-group)>:nth-child(n+3){margin-left:140px;margin-left:var(--form-label-width)}}@media (max-width:768px){.form-row:not(.form-row-group){align-items:flex-start;flex-direction:column}.form-label,.form-row-label{width:100%}.form-row:not(.form-row-group)>:nth-child(n+3){margin-left:0}}.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;position:relative}@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;font-size:1.5rem;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}.unverified-badge,.verified-badge{display:inline-block;margin-left:5px}.unverified-badge{background:#fef5e7;border:1px solid #e67e22;border-radius:3px;color:#e67e22;font-size:12px;padding:2px 6px}.approve-button{background:#fff;border:1px solid #27ae60;border-radius:4px;color:#27ae60;cursor:pointer;font-size:13px;margin-right:6px;padding:6px 14px}.approve-button:hover{background:#27ae60;color:#fff;color:#28a745;font-weight:700}.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{background:#fff;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;border:none;color:#6c757d;cursor:pointer;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}.account-manager .form-row-group{margin-bottom:15px}.form-row>label{color:#2c3e50;font-family:Times New Roman,serif;font-weight:500}.form-row .form-field input,.form-row .form-field select{background:#f8f9fa;border:2px solid #bdc3c7;font-family:Times New Roman,serif;transition:border-color .3s ease}.form-row .form-field input:focus,.form-row .form-field select:focus{background:#fff;border-color:#2c3e50;outline:none}.form-row .form-field input.error,.form-row .form-field select.error{border-color:#dc3545}.form-row .form-field 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;display:flex;gap:10px;justify-content:flex-end;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;color:#fff}.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{box-sizing:border-box;max-width:100%;overflow-x:hidden;padding:12px;width:100%}.account-header{padding:16px 12px}.account-header h1{font-size:1.35rem}.account-controls{padding:12px}.account-list{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:12px}.modal-content{max-width:100%;width:95%}.form-row{grid-template-columns:1fr}.accounts-table{font-size:.8rem;min-width:420px}.accounts-table td,.accounts-table th{padding:8px 4px}.account-actions{flex-direction:row;flex-wrap:wrap;gap:4px;justify-content:center}.approve-button,.delete-button,.edit-button{min-width:0;width:auto}}@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%}}@media (max-width:767px){.account-manager{padding:12px 10px}.account-header{padding:16px 12px}.account-header h1{font-size:1.25rem}.account-header p{font-size:.9rem}.account-controls{flex-direction:column;gap:12px;padding:12px}.search-section{min-width:0}.filter-section{flex-wrap:wrap}.add-new-btn{min-height:44px;padding:12px 16px;width:100%}.account-list{overflow-x:visible;padding:12px}.accounts-table{display:block;font-size:.9rem;min-width:0}.accounts-table thead{display:none}.accounts-table tbody{display:block}.accounts-table tbody tr{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 4px #0000000f;display:block;margin-bottom:12px;padding:12px}.accounts-table tbody td{border:none;display:block;height:auto;padding:6px 0;text-align:left;width:100%}.accounts-table tbody td:before{color:#495057;display:inline-block;font-weight:600;margin-right:.5rem;min-width:5.5em}.accounts-table tbody td:first-child:before{content:"ID"}.accounts-table tbody td:nth-child(2):before{content:"姓名"}.accounts-table tbody td:nth-child(3):before{content:"権限"}.accounts-table tbody td:nth-child(4):before{content:"メール"}.accounts-table tbody td:nth-child(5):before{content:"ステータス"}.accounts-table tbody td.account-actions{border-top:1px solid #eee;margin-top:8px;padding:10px 0 0}.accounts-table tbody td.account-actions:before{display:none}.accounts-table tbody td.account-actions{display:flex;flex-wrap:wrap;gap:8px}.account-actions .approve-button,.account-actions .delete-button,.account-actions .edit-button{flex:1 1;min-height:44px;min-width:80px;padding:10px 12px}.modal-content{max-height:90vh;width:95%}.modal-footer .cancel-btn,.modal-footer .save-btn{min-height:44px}}.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-management .employee-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;gap:6px;margin-bottom:30px;padding:20px;text-align:center}.employee-management .employee-header-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:12px}.add-employee-button{background:#3498db;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:background-color .2s ease}.add-employee-button:hover{background:#2980b9}.secondary-action-button{background:#ecf0f1;border:none;border-radius:8px;color:#2c3e50;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:background-color .2s ease}.secondary-action-button:hover{background:#dfe6e9}.employee-management .employee-header h1{color:#2c3e50;font-size:28px;font-weight:700;margin:0 0 8px}.employee-management .employee-header p{color:#7f8c8d;font-size:16px;margin:0}.employment-type-subtitle{color:#8a98a8;font-size:15px}.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;grid-template-columns:repeat(2,minmax(0,1fr));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{align-items:center;display:flex;flex:1 1;gap:16px}.employee-name{color:#2c3e50;font-size:18px;margin-bottom:0;text-align:center}.employee-details{align-items:center;display:flex;gap:12px}.employee-employment-type{background:#fff;border:1px solid #e1e8ed;border-radius:999px;color:#7f8c8d;font-size:14px;padding:4px 10px}.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}.edit-employee-button{background:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 10px}.edit-employee-button:hover{background:#2980b9}.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(900px,96vw)}.employee-management .employee-modal.employment-type-modal{box-sizing:border-box;margin-left:auto;margin-right:auto;width:min(720px,100%)}.employment-type-card-list{display:flex;flex-direction:column;gap:14px;margin-bottom:8px;width:100%}.employment-type-section-title{color:#2c3e50;font-size:18px;font-weight:600;margin:20px 0 12px}.employment-type-card{align-items:stretch;background:#fff;border:1px solid #e8eef3;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:row;min-width:0;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;width:100%}.employment-type-card:hover{box-shadow:0 4px 14px #0000001f;transform:translateY(-1px)}.employment-type-card__accent{align-self:stretch;flex:0 0 8px;min-height:100%}.employment-type-card__content{display:flex;flex:1 1;flex-direction:column;gap:10px;min-width:0;padding:16px 18px}.employment-type-card__label{color:#5c6b7a;font-size:13px;font-weight:600;margin:0}.employment-type-card--empty{align-items:center;color:#7f8c8d;font-size:15px;justify-content:center;padding:20px 18px;text-align:center}.employment-type-card--empty p{margin:0}.employment-type-card--add{background:#fafbfd;border-color:#c5d3e0;border-style:dashed}.employee-modal.employment-type-modal .employment-type-row--in-card{align-items:center;flex:1 1;flex-wrap:wrap;justify-content:flex-start;min-width:0;width:100%}.employee-modal.employment-type-modal .employment-type-row--in-card input[type=text]{border:2px solid #e1e8ed;border-radius:8px;box-sizing:border-box;flex:1 1 200px;font-size:16px;max-width:100%;min-width:0;padding:10px 12px;width:auto}.employee-modal.employment-type-modal .employment-type-row--in-card input[type=text]:focus{border-color:#3498db;outline:none}.employee-modal.employment-type-modal .employment-type-row--in-card input[type=color]{flex:0 0 auto}.employee-modal.employment-type-modal .employment-type-row--in-card .delete-employee-button,.employee-modal.employment-type-modal .employment-type-row--in-card .primary-button{flex:0 0 auto;white-space:nowrap}.employee-modal h2{color:#2c3e50;font-size:20px;margin:0 0 16px}.form-row{margin-bottom:12px}.form-grid{grid-gap:12px 16px;gap:12px 16px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-row label{color:#4a4a4a}.form-row .form-field input:disabled,.form-row .form-field select:disabled,.form-row .form-field textarea:disabled{background:#f1f3f5}.form-row .form-field input,.form-row .form-field select,.form-row .form-field textarea{border-color:#dbe4ee;border-radius:8px}.schedule-target-toggle{align-items:center;display:inline-flex;justify-content:flex-start}.schedule-target-toggle input[type=checkbox]{height:14px;margin:0;width:14px}.employment-type-row{align-items:center;display:flex;gap:10px;justify-content:center}.color-input{background:#fff;border:1px solid #dbe4ee;border-radius:8px;height:36px;padding:0;width:48px}.color-input--round{border-radius:999px;overflow:hidden}.color-input--round::-webkit-color-swatch-wrapper{padding:0}.color-input--round::-webkit-color-swatch{border:none;border-radius:999px}.color-input--round::-moz-color-swatch{border:none;border-radius:999px}.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-list,.form-grid{grid-template-columns:1fr}.employee-management{box-sizing:border-box;max-width:100%;padding:12px;width:100%}.stats-cards{gap:12px;grid-template-columns:repeat(2,1fr)}.controls{flex-direction:column;gap:12px;padding:12px}.filter-box{min-width:0;width:100%}.employee-card{align-items:flex-start;flex-direction:column;gap:12px;padding:12px}.employee-details{flex-direction:column;gap:8px}.employee-actions{justify-content:space-between;width:100%}.employee-management .employee-header{padding:12px}.employee-management .employee-header h1{font-size:1.35rem}.employee-modal.employment-type-modal{max-width:100%;padding:16px;width:100%}}@media (max-width:767px){.employee-management{padding:12px 10px}.employee-management .employee-header{padding:12px}.employee-management .employee-header h1{font-size:1.25rem}.employee-management .employee-header-actions{flex-direction:column;gap:10px;width:100%}.add-employee-button,.secondary-action-button{font-size:1rem;max-width:100%;min-height:44px;padding:12px 16px;width:100%}.stats-cards{gap:12px;grid-template-columns:1fr;margin-bottom:20px}.stat-card{padding:16px}.stat-number{font-size:1.75rem}.controls{flex-direction:column;gap:12px;padding:12px}.filter-box{width:100%}.employee-card{gap:12px;padding:14px}.employee-details{align-items:flex-start;flex-direction:column;gap:8px}.employee-actions{gap:8px;justify-content:stretch;width:100%}.employee-actions .delete-employee-button,.employee-actions .edit-employee-button,.employee-actions a{align-items:center;display:inline-flex;flex:1 1;justify-content:center;min-height:44px;min-width:0;padding:10px 14px}.employee-modal.employment-type-modal{margin:12px;max-height:calc(100vh - 24px);overflow-y:auto;padding:14px}.employee-modal.employment-type-modal h2{font-size:1.1rem;margin-bottom:12px}.employment-type-section-title{font-size:1.05rem;margin:16px 0 10px}.employment-type-card__content{padding:14px}.employment-type-card__accent{flex-basis:6px}.form-grid{gap:12px;grid-template-columns:1fr}.employment-type-row{align-items:stretch;flex-direction:column;gap:10px}.employment-type-row input[type=text]{box-sizing:border-box;min-height:44px;padding:10px 12px;width:100%}.employment-type-row input[type=color]{align-self:flex-start;min-height:44px;min-width:44px;padding:4px}.employment-type-row .delete-employee-button,.employment-type-row .primary-button{min-height:44px;padding:12px 16px;width:100%}.form-row.full-width .employment-type-row,.modal-actions{flex-direction:column}.modal-actions{gap:10px}.modal-actions .secondary-button{min-height:44px;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-management .shift-controls,.shift-management .shift-header,.shift-management .shift-stats{zoom:.72}.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:18px;align-items:start;display:grid;gap:18px;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.forced-available{background:#fff3cd;color:#7a5200}.employee-stats .stat.unavailable{background:#f8d7da;color:#721c24}.employee-stats .stat.blank{background:#e2e3e5;color:#383d41}.shift-management .employee-calendar .calendar-grid{aspect-ratio:5/3.6;box-sizing:border-box;container-type:inline-size;display:flex;flex:0 1 auto;flex-direction:column;max-width:100%;overflow:hidden;padding:8px}.shift-management .employee-calendar .calendar-grid .calendar-header{grid-gap:1px;display:grid;flex-shrink:0;gap:1px;grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:4px;order:1;width:100%}.shift-management .employee-calendar .calendar-grid .calendar-day-header{align-items:center;color:#495057;display:flex;font-size:10px;font-weight:600;justify-content:center;line-height:1.2;min-height:0;overflow:hidden;padding:1px 2px;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,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));min-height:0;order:2;overflow:hidden;width:100%}.shift-management .calendar-day{align-items:center;border:1px solid #e9ecef;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:0;min-width:0;overflow:hidden;padding:1px 2px;position:relative;transition:background-color .3s ease}.shift-management .calendar-day:hover{background:#f8f9fa}.calendar-day.other-month{background:#f8f9fa;color:#6c757d}.calendar-day.other-month .day-number{opacity:.5}.shift-management .calendar-day .day-number{flex-shrink:0;font-size:9px;font-size:max(8px,min(11px,9cqw));font-weight:600;line-height:1.1;margin-bottom:0}.shift-management .calendar-day .shift-status-indicator{border-radius:2px;font-size:8px;font-size:max(7px,min(10px,8cqw));font-weight:600;line-height:1.15;margin-top:1px;max-width:100%;overflow:hidden;padding:0 1px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.shift-management .calendar-day .shift-note-indicator{font-size:.55rem;line-height:1;position:absolute;right:0;top:0}.shift-management .employee-notes{background:#f8f9fa;border-top:1px solid #e9ecef;margin-top:6px;padding:10px 12px}.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:10px 12px;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-forced-available{background:#fff3cd;border-color:#f59e0b}.calendar-day.status-forced-available .shift-status-indicator{background:#f59e0b;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-forced-available{background:#fff3cd;color:#7a5200}.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-forced-available{color:#f59e0b}.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,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,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.forced-available{background:#fff3cd;border-color:#f59e0b}.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.forced-available{color:#f59e0b}.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-row.full-width{grid-column:1/-1}.form-row>label{color:#333;font-weight:600}.form-row .form-field input,.form-row .form-field select,.form-row .form-field textarea{border-color:#e9ecef;transition:border-color .3s ease}.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}.customer-color-reset-btn{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;color:#495057;cursor:pointer;font-size:.875rem;margin-top:8px;padding:6px 12px}.customer-color-reset-btn:hover{background:#e9ecef;border-color:#ced4da}.customer-color-reset-btn.selected{background:#adb5bd;border-color:#868e96;color:#212529}.customer-color-reset-btn.selected:hover{background:#868e96;border-color:#495057}.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 .modal-form-grid{grid-template-columns:repeat(2,1fr)}.edit-modal .form-row>label{color:#495057;font-weight:600}.edit-modal .form-row .form-field input,.edit-modal .form-row .form-field select,.edit-modal .form-row .form-field textarea{border-color:#e9ecef}.contact-form{margin-bottom:20px}.contact-form .form-row{margin-bottom:15px}.contact-form .form-row>label{color:#495057;font-weight:600}.contact-form .form-row .form-field input,.contact-form .form-row .form-field select,.contact-form .form-row .form-field textarea{border-color:#e9ecef}.contact-form .form-row .form-field input:focus,.contact-form .form-row .form-field select:focus,.contact-form .form-row .form-field 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{box-sizing:border-box;max-width:100%;overflow-x:hidden;padding:12px;width:100%}.customer-header{padding:12px}.customer-header h1{font-size:1.35rem}.customer-list{-webkit-overflow-scrolling:touch;max-height:60vh;overflow-x:auto;padding:12px}.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;min-width:480px;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}}@media (max-width:767px){.customer-management{padding:12px 10px}.customer-header{padding:12px}.customer-header h1{font-size:1.25rem}.customer-header p{font-size:.9rem}.customer-controls{gap:12px;padding:12px}.filter-section{align-items:stretch;flex-direction:column}.filter-select{min-height:44px;padding:10px 12px;width:100%}.action-buttons button,.add-btn,.add-new-btn,.backup-btn,.cancel-btn,.export-btn,.update-btn{min-height:44px;padding:12px 16px}.customer-stats{flex-direction:column;gap:12px}.customer-list{max-height:none;overflow-x:visible;padding:12px}.customers-table{display:block;font-size:.9rem;min-width:0}.customers-table thead{display:none}.customers-table tbody{display:block}.customers-table tbody tr{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 4px #0000000f;display:block;margin-bottom:12px;padding:12px}.customers-table tbody td{border:none;display:block;height:auto;max-height:none;min-height:0;padding:6px 0;text-align:left;white-space:normal;width:100%}.customers-table tbody td:before{color:#495057;display:inline-block;font-weight:600;margin-right:.5rem;min-width:5.5em}.customers-table tbody td.customer-name:before{content:"会社名"}.customers-table tbody td.customer-contact:before{content:"担当者"}.customers-table tbody td.customer-address:before{content:"住所"}.customers-table tbody td.customer-phone:before{content:"電話番号"}.customers-table tbody td.customer-email:before{content:"メール"}.customers-table tbody td.customer-color:before{content:"カラー"}.customers-table tbody td.customer-notes:before{content:"備考"}.customers-table tbody td.customer-actions{border-top:1px solid #eee;margin-top:8px;padding:10px 0 0}.customers-table tbody td.customer-actions:before{display:none}.customers-table tbody td.customer-actions{display:flex;flex-wrap:wrap;gap:8px}.customer-actions .contact-btn,.customer-actions .delete-btn,.customer-actions .edit-btn,.customer-actions .history-btn{flex:1 1;font-size:.9rem;height:auto;line-height:1.3;max-height:none;min-height:44px;min-width:80px;padding:10px 12px}.modal{max-width:none;padding:12px;width:95%}.modal-actions{flex-direction:column;gap:8px}.cancel-btn,.confirm-btn{min-height:44px;width:100%}}.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{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-full,.site-form .form-row.form-group-full{grid-column:1/-1!important}.site-form .form-row-label label,.site-form .form-row>label{color:#555!important}.form-row .form-field input:focus,.form-row .form-field select:focus,.form-row .form-field textarea:focus{border-color:#667eea;outline:none}.form-row .form-field input.error,.form-row .form-field select.error,.form-row .form-field 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: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}.form-row-with-new-company .form-row-label{align-items:center;flex-direction:column;gap:4px}.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}}@media (max-width:767px){.site-management{padding:12px 10px}.site-header{padding:12px}.site-header h1{font-size:1.25rem}.site-header p{font-size:.9rem}.site-controls{gap:12px;padding:12px}.filter-section{align-items:stretch;flex-direction:column}.filter-select{min-height:44px;padding:10px 12px;width:100%}.action-buttons button,.add-btn,.add-new-btn,.backup-btn,.cancel-btn,.export-btn,.update-btn{min-height:44px;padding:12px 16px}.site-stats{flex-direction:column;gap:12px;padding:12px}.site-list{overflow-x:visible;padding:12px}.sites-table{display:block;font-size:.9rem}.sites-table thead{display:none}.sites-table tbody{display:block}.sites-table tbody tr{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 4px #0000000f;display:block;margin-bottom:12px;padding:12px}.sites-table tbody td{border:none;display:block;height:auto;max-height:none;min-height:0;padding:6px 0;text-align:left;white-space:normal;width:100%}.sites-table tbody td:before{color:#495057;display:inline-block;font-weight:600;margin-right:.5rem;min-width:5.5em}.sites-table tbody td.site-name:before{content:"現場名"}.sites-table tbody td.site-short-name:before{content:"略称"}.sites-table tbody td.site-company:before{content:"元請名"}.sites-table tbody td.site-months:before{content:"施工月"}.sites-table tbody td.site-weekdays:before{content:"施工曜日"}.sites-table tbody td.site-contact:before{content:"担当者"}.sites-table tbody td.site-phone:before{content:"電話番号"}.sites-table tbody td.site-address:before{content:"住所"}.sites-table tbody td.site-team-size:before{content:"想定人工"}.sites-table tbody td.site-actions{border-top:1px solid #eee;margin-top:8px;padding:10px 0 0}.sites-table tbody td.site-actions:before{display:none}.sites-table tbody td.site-actions{display:flex;flex-wrap:wrap;gap:8px}.site-actions .delete-btn,.site-actions .edit-btn{flex:1 1;font-size:.9rem;height:auto;line-height:1.3;max-height:none;min-height:44px;min-width:80px;padding:10px 12px}.modal{max-width:none;padding:12px;width:95%}.modal-actions{flex-direction:column;gap:8px}.cancel-btn,.confirm-btn{min-height:44px;width:100%}}.construction-weekday-field{display:flex;flex-direction:column;gap:4px}.construction-weekday-check-row,.construction-weekday-label-row{grid-gap:6px;align-items:center;display:grid;gap:6px;grid-template-columns:repeat(7,minmax(0,1fr))}.construction-weekday-label-row span{color:#64748b;font-size:12px;font-weight:600;text-align:center}.construction-weekday-check-item{display:flex;justify-content:center}.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-select:focus{border-color:#667eea}.sort-btn{align-items:center;border-radius:.5rem;display:inline-flex;height:2.5rem;justify-content:center;padding:0;width:2.5rem}.sort-btn:hover{border-color:#667eea}.action-buttons{flex-wrap:nowrap;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;display:flex;flex-direction:column;gap:.75rem;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}.expense-item.mobile-card .route-detail .from,.expense-item.mobile-card .route-detail .to,.routes-container .from,.routes-container .to,.routes-list-container .from,.routes-list-container .to{max-width:none;overflow:visible;text-overflow:clip;white-space:normal;word-break:break-word}.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%}.modal-close-button{position:absolute;right:.75rem;top:.75rem}.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)}.edit-button.button-disabled-state,.edit-button:disabled{background:#6c757d;color:#f8f9fa;cursor:not-allowed;transform:none}.transport-expense-application .delete-button.disabled,.transport-expense-application .delete-button:disabled,.transport-expense-application .edit-button.button-disabled-state,.transport-expense-application .edit-button:disabled{background:#6c757d!important;color:#f8f9fa!important;cursor:not-allowed;opacity:.5;transform:none}.duplicate-button{background:#17a2b8;color:#fff}.duplicate-button:hover:not(.disabled){background:#138496;transform:translateY(-1px)}.copy-button{background:#b7e4c7;color:#1b4332}.copy-button:hover:not(.disabled){background:#95d5b2;transform:translateY(-1px)}.delete-button{background:#dc3545;color:#fff}.delete-button:hover:not(.disabled){background:#c82333;transform:translateY(-1px)}.delete-button:disabled{transform:none}.copy-button.disabled,.delete-button.disabled,.delete-button:disabled,.duplicate-button.disabled,.edit-button.disabled{background:#6c757d;color:#f8f9fa;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}.cancel-btn,.confirm-btn{border-radius:4px;padding:4px 8px}.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:wrap;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{flex-wrap:wrap;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:nowrap;gap:1rem;justify-content:center;margin:0 auto;max-width:960px;padding:1.5rem 2rem;width:100%}.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;position:relative;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-y:auto;padding:.5rem}.add-modal .add-item-form{-webkit-overflow-scrolling:touch;flex:1 1;overflow:visible;padding:.5rem;touch-action:pan-y}.add-modal .add-item-form,.add-modal .modal-form-grid{box-sizing:border-box;max-width:100%!important;width:100%!important}.add-modal .modal-form-grid{overflow-x:hidden!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{margin-left:auto}.modal-close-btn-fixed,.modal-close-sticky{position:-webkit-sticky;position:sticky;top:0;z-index:50}.modal-close-sticky{background:#fffffff2;display:flex;justify-content:flex-end;pointer-events:none}.modal-close-sticky .modal-close-btn-fixed{pointer-events:auto}.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}.options-empty-message{background:#f9fafb;border-radius:.5rem;color:#6b7280;font-size:.9rem;margin:0 0 1rem;padding:.75rem}@media (max-width:768px){.option-badges-row{flex-wrap:nowrap;justify-content:center;overflow-x:auto}}.transport-expense-application .calendar-action-modal{padding:10px;width:240px}.transport-expense-application .calendar-action-modal .export-options{display:flex;flex-direction:column;gap:6px}.transport-expense-application .calendar-action-modal .cancel-btn,.transport-expense-application .calendar-action-modal .confirm-btn,.transport-expense-application .calendar-action-modal .modal-actions .cancel-btn{font-size:.8rem!important;height:40px!important;line-height:1!important;padding:0!important;width:220px!important}.transport-expense-application .modal.calendar-action-modal .cancel-btn,.transport-expense-application .modal.calendar-action-modal .confirm-btn{height:40px!important;max-width:220px!important;padding:0!important;width:220px!important}.transport-expense-application .calendar-action-modal .export-options{align-items:center}@media (max-width:767px){.transport-expense-application .calendar-action-modal .modal-actions .cancel-btn,.transport-expense-application .modal.calendar-action-modal .cancel-btn,.transport-expense-application .modal.calendar-action-modal .confirm-btn{height:40px!important;max-width:220px!important;width:220px!important}}.modal.calendar-action-modal .cancel-btn,.modal.calendar-action-modal .confirm-btn,.modal.calendar-action-modal .modal-actions .cancel-btn{font-size:.8rem!important;height:40px!important;line-height:1!important;max-width:220px!important;padding:0!important;width:220px!important}: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}}.rdp-root{--rdp-accent-color:blue;--rdp-accent-background-color:#f0f0ff;--rdp-day-height:44px;--rdp-day-width:44px;--rdp-day_button-border-radius:100%;--rdp-day_button-border:2px solid #0000;--rdp-day_button-height:42px;--rdp-day_button-width:42px;--rdp-selected-border:2px solid var(--rdp-accent-color);--rdp-disabled-opacity:0.5;--rdp-outside-opacity:0.75;--rdp-today-color:var(--rdp-accent-color);--rdp-dropdown-gap:0.5rem;--rdp-months-gap:2rem;--rdp-nav_button-disabled-opacity:0.5;--rdp-nav_button-height:2.25rem;--rdp-nav_button-width:2.25rem;--rdp-nav-height:2.75rem;--rdp-range_middle-background-color:var(--rdp-accent-background-color);--rdp-range_middle-color:inherit;--rdp-range_start-color:#fff;--rdp-range_start-background:linear-gradient(var(--rdp-gradient-direction),#0000 50%,var(--rdp-range_middle-background-color) 50%);--rdp-range_start-date-background-color:var(--rdp-accent-color);--rdp-range_end-background:linear-gradient(var(--rdp-gradient-direction),var(--rdp-range_middle-background-color) 50%,#0000 50%);--rdp-range_end-color:#fff;--rdp-range_end-date-background-color:var(--rdp-accent-color);--rdp-week_number-border-radius:100%;--rdp-week_number-border:2px solid #0000;--rdp-week_number-height:var(--rdp-day-height);--rdp-week_number-opacity:0.75;--rdp-week_number-width:var(--rdp-day-width);--rdp-weeknumber-text-align:center;--rdp-weekday-opacity:0.75;--rdp-weekday-padding:0.5rem 0rem;--rdp-weekday-text-align:center;--rdp-gradient-direction:90deg;--rdp-animation_duration:0.3s;--rdp-animation_timing:cubic-bezier(0.4,0,0.2,1)}.rdp-root[dir=rtl]{--rdp-gradient-direction:-90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity:unset}.rdp-root{position:relative}.rdp-root,.rdp-root *{box-sizing:border-box}.rdp-day{height:var(--rdp-day-height);text-align:center;width:var(--rdp-day-width)}.rdp-day_button{align-items:center;background:none;border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius);color:inherit;cursor:pointer;display:flex;font:inherit;height:var(--rdp-day_button-height);justify-content:center;margin:0;padding:0;width:var(--rdp-day_button-width)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{align-items:center;border:0;display:inline-flex;position:relative;white-space:nowrap;z-index:1}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{align-items:center;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:inherit;cursor:pointer;display:inline-flex;font:inherit;height:var(--rdp-nav_button-height);justify-content:center;margin:0;padding:0;position:relative;width:var(--rdp-nav_button-width)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{fill:var(--rdp-accent-color);display:inline-block}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{align-items:center;display:inline-flex;gap:var(--rdp-dropdown-gap);position:relative}.rdp-dropdown{-webkit-appearance:none;appearance:none;border:none;cursor:inherit;inset-block-end:0;inset-block-start:0;inset-inline-start:0;line-height:inherit;margin:0;opacity:0;padding:0;position:absolute;width:100%;z-index:2}.rdp-dropdown_root{align-items:center;display:inline-flex;position:relative}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{align-content:center;display:flex;font-size:large;font-weight:700;height:var(--rdp-nav-height)}.rdp-root[data-nav-layout=after] .rdp-month,.rdp-root[data-nav-layout=around] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{-webkit-margin-start:var(--rdp-nav_button-width);-webkit-margin-end:var(--rdp-nav_button-width);justify-content:center;margin-inline-end:var(--rdp-nav_button-width);margin-inline-start:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{display:inline-flex;height:var(--rdp-nav-height);inset-inline-start:0;position:absolute;top:0}.rdp-root[data-nav-layout=around] .rdp-button_next{display:inline-flex;height:var(--rdp-nav-height);inset-inline-end:0;justify-content:center;position:absolute;top:0}.rdp-months{display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:-webkit-fit-content;max-width:fit-content;position:relative}.rdp-month_grid{border-collapse:collapse}.rdp-nav{align-items:center;display:flex;height:var(--rdp-nav-height);inset-block-start:0;inset-inline-end:0;position:absolute}.rdp-weekday{font-size:smaller;font-weight:500;opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);font-size:small;font-weight:400;height:var(--rdp-week_number-height);opacity:var(--rdp-week_number-opacity);text-align:var(--rdp-weeknumber-text-align);width:var(--rdp-week_number-width)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-size:large;font-weight:700}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{color:var(--rdp-range_start-color);visibility:hidden}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:initial;border-radius:0;border-radius:initial;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{background-color:var(--rdp-range_end-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes rdp-slide_in_right{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes rdp-slide_out_left{0%{transform:translateX(0)}to{transform:translateX(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translateX(0)}to{transform:translateX(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.transport-expense-management{background-color:#f8f9fa;box-sizing:border-box;font-family:Times New Roman,serif;margin:0 auto;max-width:100%;min-height:100vh;padding:1rem}@media (max-width:767px){.transport-expense-management{min-width:0;overflow-x:auto;padding:.75rem;width:100%}}.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}.header-option-settings-link{background:#fffffff2;border:none;border-radius:.35rem;box-shadow:0 1px 3px #00000026;color:#e74c3c;cursor:pointer;display:inline-block;font-family:inherit;font-size:.85rem;padding:.4rem .75rem;text-decoration:none}.header-option-settings-link:hover{background:#fff;box-shadow:0 2px 6px #0003}.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}@media (max-width:767px){.controls-calendar-row{align-items:stretch;flex-direction:column;gap:1rem}.controls-calendar-row .calendar-section{display:none}.calendar-wrapper{justify-content:center}.modal .edit-button,.modal button{text-orientation:mixed;white-space:nowrap;writing-mode:horizontal-tb}.transport-expense-management .summary-cards{display:none}}.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:flex;justify-content:center;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-wrap{display:flex;justify-content:center;margin-bottom:.75rem;width:100%}.work-status-bulk{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:.5rem;display:flex;flex-wrap:wrap;gap:.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-add-application-btn{background:#fff;border:1px solid #0d9488;border-radius:999px;color:#0f766e;cursor:pointer;font-size:.85rem;font-weight:600;margin-left:.25rem;padding:.3rem .9rem}.work-status-add-application-btn:hover{background:#f0fdfa}.work-status-add-application-btn:focus-visible{outline:2px solid #0d9488;outline-offset:2px}.transport-mgmt-proxy-banner{background:#ecfeff;border:1px solid #67e8f9;border-radius:8px;display:flex;flex-direction:column;gap:.25rem;margin:0 .5rem .75rem;padding:.75rem 1rem;text-align:left}.transport-mgmt-proxy-banner__label{color:#0e7490;font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:none}.transport-mgmt-proxy-banner__name{color:#164e63;font-size:1.05rem;font-weight:700}.transport-mgmt-proxy-banner__hint{color:#155e75;font-size:.8rem;line-height:1.4}.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}.option-unit-price-label{align-items:center;color:#2c3e50;display:flex;font-size:.85rem;gap:.35rem}.option-unit-price-input{border:1px solid #dee2e6;border-radius:.35rem;font-size:.9rem;padding:.35rem .5rem;width:4rem}.action-buttons{align-items:center;flex-direction:row;flex-wrap:wrap;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}.confirmed-badge{background:#16a34a;border-radius:999px;color:#fff;font-size:.75rem;font-weight:700;left:10px;padding:2px 8px;position:absolute;top:10px}.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:disabled{box-shadow:none;cursor:default;opacity:.85}.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)}.expense-points-counter{align-items:center;color:#475569;display:flex;font-size:.75rem;gap:.25rem;position:absolute;right:.75rem;top:4rem;z-index:10}.expense-points-counter .points-label{margin-right:.15rem}.expense-points-counter .points-value{color:#0f172a;font-weight:600;min-width:1.25rem}.expense-points-counter .points-btn{align-items:center;background:#f8fafc;border:1px solid #cbd5e1;border-radius:.25rem;color:#475569;cursor:pointer;display:inline-flex;font-size:1rem;height:2rem;justify-content:center;line-height:1;min-height:2rem;min-width:2.5rem;padding:0;transition:background .2s,color .2s;width:2.5rem}.expense-points-counter .points-btn:hover{background:#e2e8f0;color:#0f172a}.expense-points-counter .points-btn:disabled{cursor:not-allowed;opacity:.6}.expense-points-counter .points-btn:disabled:hover{background:#f8fafc;color:#475569}.expense-points-counter .points-minus,.expense-points-counter .points-plus{font-weight:700}.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}.route-slot--dragging .route-info{cursor:grabbing;opacity:.6}.drag-handle{align-items:center;background:#ffffffe6;border:1px solid #94a3b899;border-radius:.4rem;color:#475569;cursor:grab;display:inline-flex;font-size:.8rem;font-weight:700;height:1.2rem;justify-content:center;left:.2rem;padding:0;position:absolute;top:.2rem;touch-action:none;width:1.2rem}.drag-handle:active,.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-size:.95rem;font-weight:600;line-height:1.6}.routes-container .from,.routes-container .to,.routes-list-container .from,.routes-list-container .to{max-width:none;overflow:visible;text-overflow:clip;white-space:normal;word-break:break-word}.arrow{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:fixed;right:8px;top:8px;transition:color .2s ease,transform .2s ease;z-index:10002}.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:.25rem;font-size:.75rem;line-height:1.2;padding:.25rem .6rem}.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-points-counter{background:#f8fafce6;border-radius:.5rem;justify-content:center;margin:.5rem 0;padding:.4rem 0;position:static;width:100%}.expense-item{gap:.85rem;padding:2.5rem 1.2rem 1.1rem}.item-meta{gap:.5rem}.meta-row{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr}.meta-row .meta-block:first-child,.meta-row .meta-block:nth-child(2){grid-column:span 1}.meta-row .meta-block:nth-child(3){grid-column:1/-1}.meta-row .meta-block:first-child,.meta-row .meta-block:nth-child(2){padding:.35rem .25rem}.meta-row .meta-block:first-child .meta-label,.meta-row .meta-block:nth-child(2) .meta-label{font-size:.6rem}.meta-row .meta-block:first-child .meta-value,.meta-row .meta-block:nth-child(2) .meta-value{font-size:.75rem}.meta-block,.working-row{max-width:none}.meta-block{gap:.2rem;min-width:0;padding:.45rem .35rem}.meta-block .meta-label{font-size:.65rem}.meta-block .meta-value{font-size:.8rem}.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-custom-section{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.options-custom-label{color:#6b7280;font-size:.85rem;margin-bottom:.5rem}.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}}.sp-view-toggle{display:none;gap:.5rem;justify-content:center;margin:.5rem 0 1rem}.sp-only{display:none}.sp-view-toggle__button{background:#e2e8f0;border:1px solid #94a3b8;border-radius:9999px;color:#1f2937;font-size:.9rem;font-weight:700;padding:.4rem 1rem}.sp-view-toggle__button.is-active{background:#0f172a;border-color:#0f172a;color:#fff}.sp-calendar-view{display:none}.sp-calendar-view.is-active{display:block}.sp-list-view.is-hidden{display:none}@media (max-width:767px){.sp-view-toggle{display:flex}.sp-only{display:block}}@media (min-width:768px){.sp-calendar-view,.sp-only,.sp-view-toggle{display:none!important}}.transport-expense-sp-calendar .sp-schedule-header{display:none}.transport-expense-management .calendar-action-modal{padding:10px;width:240px}.transport-expense-management .calendar-action-modal .export-options{display:flex;flex-direction:column;gap:6px}.transport-expense-management .calendar-action-modal .cancel-btn,.transport-expense-management .calendar-action-modal .confirm-btn,.transport-expense-management .calendar-action-modal .modal-actions .cancel-btn{font-size:.8rem!important;height:40px!important;line-height:1!important;padding:0!important;width:220px!important}.transport-expense-management .modal.calendar-action-modal .cancel-btn,.transport-expense-management .modal.calendar-action-modal .confirm-btn{height:40px!important;max-width:220px!important;padding:0!important;width:220px!important}.transport-expense-management .calendar-action-modal .export-options{align-items:center}@media (max-width:767px){.transport-expense-management .calendar-action-modal .modal-actions .cancel-btn,.transport-expense-management .modal.calendar-action-modal .cancel-btn,.transport-expense-management .modal.calendar-action-modal .confirm-btn{height:40px!important;max-width:220px!important;width:220px!important}}.sp-schedule-calendar{background:#eef2ff;display:flex;flex-direction:column;flex-shrink:0;gap:.35rem;padding:.45rem}.sp-schedule-page__tools{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:.35rem;display:flex;flex-shrink:0;flex-wrap:wrap;gap:.5rem;margin-bottom:.35rem;padding:.45rem .6rem;scroll-margin-top:max(12px,env(safe-area-inset-top,0px))}.sp-schedule-page__print-link{align-items:center;background:#fff;border:1px solid #64748b;border-radius:.35rem;box-sizing:border-box;color:#0f172a;display:inline-flex;font-size:.9rem;font-weight:600;justify-content:center;max-width:100%;min-height:44px;padding:.5rem 1rem;text-decoration:none;width:100%}.sp-schedule-page__print-link:active{background:#e2e8f0}.sp-schedule-page{background:#eef2ff;display:flex;flex-direction:column;min-height:100vh;scroll-margin-top:8px}@media (max-width:767px){.sp-schedule-page{min-height:0}}.sp-schedule-nav{grid-gap:.5rem;align-items:center;background:#e0e7ff;border:1px solid #94a3b8;border-radius:.35rem;display:grid;gap:.5rem;grid-template-columns:1fr auto;padding:.35rem .5rem}.sp-schedule-nav__month{color:#1f2937;font-size:1rem;font-weight:700}.sp-schedule-nav__arrows{display:inline-flex;gap:.25rem}.sp-schedule-nav__arrows button{border-radius:.25rem;height:2rem;min-width:2rem;padding:0}.sp-schedule-calendar .fc{--fc-border-color:#cbd5f5;--fc-page-bg-color:#fff;--fc-neutral-bg-color:#f1f5f9;--fc-today-bg-color:#3b82f62e;--fc-event-bg-color:#0f172a;--fc-event-border-color:#0f172a;--fc-event-text-color:#fff;border:1px solid #cbd5f5;border-radius:.35rem;font-size:.9rem;overflow:hidden}.sp-schedule-calendar__calendar{flex:0 0 auto;margin-bottom:.1rem;overflow:hidden}.fc-container{min-height:0;position:relative}.fullcalendar-wrapper{min-height:0;transform:translateZ(0);will-change:transform}.fc-loading{opacity:0;position:relative;transition:opacity .25s ease-out}.fc-loading:before{background:#f1f5f9;border-radius:8px;content:"";inset:0;position:absolute}.fc-loaded{opacity:1;transition:opacity .25s ease-out}.sp-schedule-calendar--day .sp-schedule-calendar__calendar{display:none}.sp-schedule-calendar--month .fc-daygrid-day-events,.sp-schedule-calendar--month .fc-daygrid-event,.sp-schedule-calendar--month .fc-daygrid-event-harness{display:none!important}.sp-schedule-calendar--month .fc-daygrid-day-frame{align-items:center;display:flex;height:2.4rem!important;justify-content:center;min-height:2.4rem!important;overflow:visible}.sp-schedule-calendar--month .fc-daygrid-day-top{height:100%;justify-content:center}.sp-schedule-calendar--month .fc-daygrid-day{height:2.4rem!important;overflow:visible}.sp-schedule-calendar--month .fc-scrollgrid-section-body td,.sp-schedule-calendar--month .fc-scrollgrid-sync-table td,.sp-schedule-calendar--month .fc-scrollgrid-sync-table tr{height:2.4rem!important}.sp-schedule-calendar--month .fc-daygrid-day-number{align-items:center;display:flex;font-size:.78rem;height:100%;justify-content:center;line-height:1;overflow:visible;width:100%}.sp-schedule-calendar__calendar .fc-scrollgrid{margin-bottom:0}.sp-schedule-calendar__calendar .fc-scrollgrid-section:last-child{padding-bottom:0}.sp-schedule-calendar .fc .fc-toolbar{display:none}.sp-schedule-calendar .fc .fc-col-header{background:#3b82f6}.sp-schedule-calendar .fc .fc-col-header-cell-cushion{color:#fff;font-size:.85rem;font-weight:700}.sp-schedule-calendar .fc .fc-daygrid-day-number{color:#0f172a;font-weight:600;position:relative}.sp-schedule-calendar .fc .fc-event{border-radius:.5rem;padding:.1rem .35rem}.sp-schedule-calendar .fc .fc-event-title{font-weight:600}.sp-schedule-calendar .fc .fc-event-time{display:none}.sp-schedule-calendar .fc .fc-timegrid-event-harness{margin:0 .25rem}.sp-schedule-calendar__status{color:#64748b;font-size:.85rem;text-align:center}.sp-schedule-calendar__day--has-event .fc-daygrid-day-number{position:relative}.sp-schedule-calendar__day--has-event .fc-daygrid-day-number:after{background:#ea580c;border-radius:9999px;bottom:.1rem;content:"";height:5px;left:50%;position:absolute;transform:translateX(-50%);width:5px;z-index:1}.sp-schedule-calendar__day--selected{background:#0f172a14}.sp-schedule-calendar__day--selected .fc-daygrid-day-number{color:#0f172a;font-weight:700}.sp-schedule-list{background:#fff;border:1px solid #cbd5f5;border-radius:.35rem;display:flex;flex:1.5 1;flex-direction:column;gap:.5rem;margin-top:.2rem;min-height:8rem;overflow-y:auto;padding:.6rem}.sp-schedule-list__no-worksites{background:#fef3c7;border:1px solid #fcd34d;border-radius:.35rem;color:#92400e;font-size:.8rem;margin-bottom:.25rem;padding:.5rem .6rem}.sp-schedule-list__no-api{background:#dbeafe;border:1px solid #93c5fd;border-radius:.35rem;color:#1e40af;font-size:.75rem;margin-bottom:.25rem;padding:.45rem .6rem}.sp-schedule-list__no-api code{background:#bfdbfe;border-radius:.2rem;font-size:.7em;padding:.1em .3em}.sp-schedule-list__title{align-items:center;color:#1f2937;display:flex;font-size:.9rem;font-weight:700;justify-content:space-between}.sp-schedule-list__title--centered{justify-content:center;text-align:center}.sp-schedule-list__edit-wrap{margin-top:.35rem}.sp-schedule-list__edit-btn{background:#dbeafe;border:1px solid #93c5fd;border-radius:.35rem;color:#1d4ed8;font-size:.85rem;font-weight:600;padding:.5rem .75rem;width:100%}.sp-schedule-list__edit-btn:active{background:#bfdbfe}.sp-schedule-list__item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.6rem;display:flex;flex-direction:column;gap:.25rem;padding:.6rem .75rem}.sp-schedule-list__site{color:#0f172a;font-size:.9rem;font-weight:700}.sp-schedule-list__staff{color:#475569;font-size:.8rem}.sp-schedule-list__staff-icon{margin-right:.15em}.sp-schedule-list__item--tappable{cursor:pointer;text-align:left;transition:background .15s}.sp-schedule-list__item--tappable:hover{background:#f1f5f9}.sp-schedule-list__item--tappable:active{background:#e2e8f0}.sp-schedule-list__nav{display:inline-flex;gap:.25rem}.sp-schedule-list__nav-btn{background:#e2e8f0;border:1px solid #94a3b8;border-radius:.25rem;color:#1f2937;font-weight:700;height:1.6rem;line-height:1;width:1.8rem}.sp-schedule-list--day{flex:1.6 1;margin-top:.5rem}.sp-schedule-list__empty{color:#94a3b8;font-size:.85rem;padding:.5rem 0;text-align:center}.transport-expense-option-settings{background-color:#f8f9fa;font-family:Times New Roman,serif;margin:0 auto;max-width:720px;min-height:100vh;padding:1.5rem;text-align:center}.option-settings-header{margin-bottom:1.5rem}.option-settings-header .option-settings-desc,.option-settings-header .option-settings-title{text-align:center}.option-settings-header .back-btn{background:#fff;border:1px solid #dee2e6;border-radius:.5rem;color:#495057;cursor:pointer;display:inline-block;font-size:.9rem;margin-bottom:.75rem;padding:.5rem .75rem;text-decoration:none}.option-settings-header .back-btn:hover{background:#e9ecef;border-color:#adb5bd}.option-settings-title{color:#2c3e50;font-size:1.5rem;margin:0 0 .5rem}.option-settings-desc{color:#6c757d;font-size:.9rem;line-height:1.5;margin:0}.option-settings-error,.option-settings-loading{background:#fff;border-radius:.5rem;margin-bottom:1rem;padding:1rem;text-align:center}.option-settings-error{color:#c0392b}.option-settings-error button{background:#e74c3c;border:none;border-radius:.35rem;color:#fff;cursor:pointer;margin-left:.5rem;padding:.35rem .75rem}.option-settings-work-status{background:#fff;border-radius:.75rem;box-shadow:0 2px 12px #00000014;margin-bottom:1.25rem;padding:1.25rem;text-align:center}.option-settings-work-status h2{color:#2c3e50;font-size:1.1rem;margin:0 0 .5rem}.option-settings-work-status .option-settings-desc{text-align:center}.option-settings-work-status .option-work-status-add,.option-settings-work-status .option-work-status-list{justify-content:center;text-align:center}.option-settings-work-status .option-settings-desc{margin-bottom:.75rem}.option-work-status-add{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:.75rem}.option-work-status-add .option-input-name{width:200px}.option-work-status-list{box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem 1rem;justify-content:center;margin-left:auto;margin-right:auto;margin-top:.5rem;width:100%}.option-work-status-list .option-list-item{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:.5rem;box-shadow:0 1px 2px #0000000d;display:inline-flex;gap:.5rem;padding:.4rem .6rem}.option-work-status-list .option-list-item .option-item-name{min-width:0}.option-work-status-list .option-list-item .option-delete-btn{flex-shrink:0}.option-checkbox-label{align-items:center;cursor:pointer;display:inline-flex;gap:.35rem}.option-settings-options{background:#fff;border-radius:.75rem;box-shadow:0 2px 12px #00000014;margin-bottom:1.25rem;padding:1.25rem;text-align:center}.option-settings-options .option-settings-sublist-title,.option-settings-options h2{text-align:center}.option-settings-options h2{color:#2c3e50;font-size:1.1rem;margin:0 0 1rem}.option-settings-sublist-title{color:#495057;font-size:1rem;font-weight:600;margin:1.25rem 0 .5rem}.option-settings-options .option-add-form,.option-settings-options .option-list--row{justify-content:center}.option-list--row{display:flex;flex-direction:row;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.option-list--row .option-list-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:.5rem;flex-shrink:0;min-height:3.5rem;padding:.6rem .75rem}.option-add-form,.option-edit-form{align-items:flex-end;display:flex;flex-wrap:wrap;gap:.75rem}.option-add-form label,.option-edit-form label{color:#495057;display:flex;flex-direction:column;font-size:.85rem;gap:.25rem}.option-input-name{width:180px}.option-input-name,.option-input-points{border:1px solid #dee2e6;border-radius:.35rem}.option-input-points{font-size:.95rem;padding:.5rem .6rem;text-align:right;width:5rem}.option-edit-form button[type=button],.option-edit-form button[type=submit],.option-submit-btn{border-radius:.35rem;cursor:pointer;font-size:.9rem;padding:.5rem 1rem}.option-edit-form button[type=submit],.option-submit-btn{background:#e74c3c;border:none;color:#fff}.option-edit-form button[type=submit]:hover:not(:disabled),.option-submit-btn:hover:not(:disabled){background:#c0392b}.option-edit-form button[type=button]{background:#f8f9fa;border:1px solid #dee2e6;color:#495057}.option-edit-form button[type=button]:hover{background:#e9ecef}.option-settings-empty{color:#6c757d;font-size:.9rem;margin:0}.option-list{list-style:none;margin:0;padding:0}.option-list-item{align-items:center;border-bottom:1px solid #eee;display:flex;flex-wrap:wrap;gap:.75rem;padding:.75rem 0}.option-list-item:last-child{border-bottom:none}.option-item-name{font-weight:500;min-width:120px}.option-list--row .option-list-item .option-item-badge{align-items:center;display:inline-flex;min-height:1.25rem;white-space:nowrap}.option-item-points{color:#6c757d;font-size:.9rem;min-width:4rem}.option-item-actions{display:flex;gap:.5rem;margin-left:auto}.option-delete-btn,.option-edit-btn{border-radius:.35rem;cursor:pointer;font-size:.85rem;padding:.35rem .65rem}.option-edit-btn{background:#f8f9fa;border:1px solid #dee2e6;color:#495057}.option-edit-btn:hover{background:#e9ecef}.option-delete-btn{background:#fff;border:1px solid #e74c3c;color:#e74c3c}.option-delete-btn:hover:not(:disabled){background:#e74c3c;color:#fff}@media (max-width:767px){.transport-expense-option-settings{box-sizing:border-box;max-width:100%;padding:1rem .75rem;width:100%}.option-settings-header{margin-bottom:1.25rem}.option-settings-header .back-btn{box-sizing:border-box;display:block;font-size:.95rem;margin-bottom:1rem;margin-left:auto;margin-right:auto;max-width:20rem;min-height:44px;padding:.75rem 1rem;width:100%}.option-settings-header .option-settings-title{font-size:1.25rem;line-height:1.35;margin-bottom:.5rem}.option-settings-header .option-settings-desc{font-size:.85rem;line-height:1.5;text-align:center}.option-settings-options,.option-settings-work-status{margin-bottom:1rem;padding:1rem .85rem}.option-settings-options h2,.option-settings-work-status h2{font-size:1.05rem;margin-bottom:.5rem}.option-settings-options .option-settings-desc,.option-settings-work-status .option-settings-desc{font-size:.85rem;margin-bottom:.75rem}.option-work-status-add{align-items:stretch;flex-direction:column;gap:.75rem;margin-bottom:1rem}.option-work-status-add .option-input-name{box-sizing:border-box;font-size:1rem;max-width:none;padding:.6rem .75rem;width:100%}.option-work-status-add .option-submit-btn{font-size:1rem;min-height:44px;padding:.75rem 1rem;width:100%}.option-work-status-list{align-items:stretch;flex-direction:column;gap:.5rem}.option-work-status-list .option-list-item{align-items:center;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;padding:.65rem .85rem;width:100%}.option-work-status-list .option-list-item .option-item-name{flex:1 1 auto;min-width:0}.option-work-status-list .option-list-item .option-delete-btn{flex-shrink:0;min-height:44px;min-width:44px;padding:.6rem 1rem}.option-add-form,.option-edit-form{align-items:stretch;flex-direction:column;gap:1rem}.option-add-form label:not(.option-checkbox-label),.option-edit-form label:not(.option-checkbox-label){text-align:left}.option-add-form .option-input-name,.option-edit-form .option-input-name{box-sizing:border-box;font-size:1rem;max-width:none;padding:.6rem .75rem;width:100%}.option-add-form .option-checkbox-label,.option-edit-form .option-checkbox-label{justify-content:flex-start;min-height:44px;padding:.5rem 0}.option-add-form .option-submit-btn{font-size:1rem;min-height:44px;padding:.75rem 1rem;width:100%}.option-settings-sublist-title{font-size:.95rem;margin-bottom:.5rem;margin-top:1rem}.option-list--row{align-items:stretch;flex-direction:column;gap:.75rem;margin-top:.75rem}.option-list--row .option-list-item{align-items:stretch;background:#f8f9fa;border:1px solid #e9ecef;border-radius:.6rem;flex:none;flex-direction:column;gap:.65rem;min-width:0;padding:.85rem;width:100%}.option-list--row .option-list-item .option-item-name{font-size:1rem;min-width:0}.option-list--row .option-list-item .option-item-badge{align-items:center;display:inline-flex;font-size:.8rem;min-height:1.25rem;text-align:left}.option-list--row .option-item-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-left:0;margin-top:.25rem}.option-list--row .option-delete-btn,.option-list--row .option-edit-btn{flex:1 1;font-size:.9rem;min-height:44px;min-width:44px;padding:.6rem 1rem}.option-edit-form{gap:.75rem}.option-edit-form button[type=button],.option-edit-form button[type=submit]{font-size:.95rem;min-height:44px;padding:.65rem 1rem;width:100%}.option-settings-error,.option-settings-loading{margin-left:.75rem;margin-right:.75rem;padding:1rem .85rem}.option-settings-error button{margin-left:0;margin-top:.5rem;min-height:44px;padding:.6rem 1rem}}.overtime-settings{margin:0 auto;max-width:900px;padding:1rem}.overtime-settings-header{margin-bottom:1.5rem}.overtime-settings-header .back-btn{background:none;border:none;color:#06c;cursor:pointer;font-size:.95rem;margin-bottom:.5rem;padding:0}.overtime-settings-header .back-btn:hover{text-decoration:underline}.overtime-settings-title{font-size:1.5rem;margin:0 0 .5rem}.overtime-settings-desc{color:#555;font-size:.9rem;line-height:1.5;margin:0}.overtime-settings-error,.overtime-settings-loading{padding:1rem;text-align:center}.overtime-settings-error button{margin-left:.5rem;padding:.25rem .75rem}.overtime-settings-list{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.overtime-settings-table{border-collapse:collapse;width:100%}.overtime-settings-table td,.overtime-settings-table th{border-bottom:1px solid #eee;padding:.75rem 1rem;text-align:left}.overtime-settings-table th{background:#f8f9fa;font-weight:600}.overtime-settings-table tbody tr:hover{background:#fafafa}.overtime-edit-form{align-items:center;display:inline-flex;flex-wrap:wrap;gap:.5rem}.overtime-input-hours{border:1px solid #ccc;border-radius:4px;font-size:1rem;padding:.35rem .5rem;width:5rem}.overtime-unit{color:#666;font-size:.9rem}.overtime-cancel-btn,.overtime-clear-btn,.overtime-edit-btn,.overtime-save-btn{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.9rem;padding:.35rem .75rem}.overtime-save-btn{background:#06c;border-color:#06c;color:#fff}.overtime-save-btn:hover:not(:disabled){background:#0052a3}.overtime-edit-btn{background:#f0f0f0;margin-right:.5rem}.overtime-edit-btn:hover{background:#e0e0e0}.overtime-clear-btn{color:#666}.overtime-clear-btn:hover:not(:disabled){background:#fff5f5;color:#c00}.overtime-actions{align-items:center;display:inline-flex;gap:.25rem}.overtime-display{color:#333}.overtime-settings-empty{color:#666;padding:2rem;text-align:center}@media (max-width:640px){.overtime-settings-table td:nth-child(2),.overtime-settings-table th:nth-child(2){display:none}.overtime-edit-form{align-items:flex-start;flex-direction:column}}.template-phrase-list{margin:0 auto;max-width:900px;padding:24px}.template-phrase-list__header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.template-phrase-list__title{font-size:1.5rem;font-weight:600;margin:0}.template-phrase-list__new-btn{background:#22c55e;border:1px solid #22c55e;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px}.template-phrase-list__new-btn:hover{background:#16a34a;border-color:#16a34a}.template-phrase-list__loading{color:#64748b;padding:24px 0}.template-phrase-list__empty{background:#f8fafc;border:1px dashed #e2e8f0;border-radius:8px;color:#64748b;padding:32px 24px;text-align:center}.template-phrase-list__table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.template-phrase-list__table{border-collapse:collapse;width:100%}.template-phrase-list__table td,.template-phrase-list__table th{border-bottom:1px solid #e2e8f0;padding:12px 14px;text-align:left;vertical-align:top}.template-phrase-list__table th{background:#f1f5f9;color:#334155;font-size:13px;font-weight:600}.template-phrase-list__table th:last-child{text-align:center;width:140px}.template-phrase-list__table tbody tr:hover{background:#f8fafc}.template-phrase-list__table td{color:#334155;font-size:14px}.template-phrase-list__category{background:#f1f5f9;border-radius:6px;color:#475569;display:inline-block;font-size:12px;font-weight:500;padding:4px 10px}.template-phrase-list__category--rope_survey{background:#dbeafe;color:#1e40af}.template-phrase-list__category--rope_plan{background:#dcfce7;color:#166534}.template-phrase-list__category--common{background:#f1f5f9;color:#475569}.template-phrase-list__body-cell{color:#64748b;font-size:13px;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-phrase-list__actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.template-phrase-list__btn{border:1px solid #0000;border-radius:6px;cursor:pointer;font-size:13px;padding:6px 12px;white-space:nowrap}.template-phrase-list__btn--edit{background:#fff;border-color:#22c55e;color:#22c55e}.template-phrase-list__btn--edit:hover{background:#f0fdf4}.template-phrase-list__btn--delete{background:#fff;border-color:#f87171;color:#dc2626}.template-phrase-list__btn--delete:hover{background:#fef2f2}.template-phrase-form{margin:0 auto;max-width:560px;padding:24px}.template-phrase-form__header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.template-phrase-form__title{font-size:1.5rem;font-weight:600;margin:0}.template-phrase-form__back{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#334155;cursor:pointer;font-size:14px;padding:6px 12px;text-decoration:none}.template-phrase-form__back:hover{background:#f8fafc;border-color:#cbd5e1}.template-phrase-form__loading{color:#64748b;padding:24px 0}.template-phrase-form__card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:20px 24px}.template-phrase-form__row{margin-bottom:16px}.template-phrase-form__row:last-of-type{margin-bottom:0}.template-phrase-form__label{color:#334155;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.template-phrase-form__field input[type=text],.template-phrase-form__field select,.template-phrase-form__field textarea{border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box;font-size:14px;padding:10px 12px;width:100%}.template-phrase-form__field input:focus,.template-phrase-form__field select:focus,.template-phrase-form__field textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626;outline:none}.template-phrase-form__field textarea{min-height:160px;resize:vertical}.template-phrase-form__actions{align-items:center;border-top:1px solid #e2e8f0;display:flex;gap:12px;margin-top:20px;padding-top:20px}.template-phrase-form__submit{background:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px}.template-phrase-form__submit:hover:not(:disabled){background:#16a34a}.template-phrase-form__submit:disabled{cursor:not-allowed;opacity:.6}.template-phrase-form__cancel{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;font-size:14px;padding:10px 20px}.template-phrase-form__cancel:hover{background:#f8fafc;color:#334155}table.document-table{border-collapse:collapse;table-layout:fixed;width:100%}table.document-table .doc-col-section{width:16%}table.document-table .doc-col-section-2{width:14%}table.document-table .doc-col-left{width:61%}table.document-table .doc-col-right{width:23%}table.document-table td,table.document-table th{word-wrap:break-word;border:1px solid #000;font-size:13px;line-height:1.5;min-width:0;overflow-wrap:break-word;padding:8px;vertical-align:top}.doc-title{font-size:20px;font-weight:700;margin:20px 0;text-align:center}.section-title{word-wrap:break-word;background:#f5f5f5;font-weight:700;overflow-wrap:break-word}.large-area{min-height:160px}.medium-area{min-height:100px}.small-area{min-height:56px}.document-container .content-parts-field{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;margin:8px 0;max-width:100%;min-height:56px;overflow:visible;padding:8px;width:100%}.document-container .content-parts-field.large-area{min-height:160px}.document-container .content-parts-field.medium-area{min-height:100px}.document-container .content-parts-field.small-area{min-height:56px}.document-container .content-parts-field:first-child{margin-top:4px}.content-parts-list{display:flex;flex-wrap:wrap;gap:4px 8px;margin-bottom:4px}.content-parts-list:empty{margin-bottom:0}.content-part{display:inline-block;max-width:100%}.content-part:has(.content-part-img){box-sizing:border-box;flex-basis:calc(50% - 4px);flex-grow:0;flex-shrink:0;width:calc(50% - 4px)}.content-part-block{align-items:flex-start;background:#0000;border:1px solid #e0e0e0;border-radius:4px;box-sizing:border-box;display:inline-flex;gap:4px;max-width:100%;padding:6px 8px}.content-part-block:has(.content-part-img){justify-content:center}.content-part-block:has(.content-part-text){justify-content:center}.content-part-block.content-part-block--img,.content-part-block.content-part-text,.content-part-block:has(.content-part-img),.content-part-block:has(.content-part-text){background:#0000;border:none;border-radius:0;padding:0}.parts-readonly{box-sizing:border-box;display:flex;flex-wrap:wrap;gap:4px 8px;max-width:100%;min-width:0;width:100%}.parts-readonly .content-part-block--img{align-items:center;box-sizing:border-box;display:inline-flex;flex:1 1 calc(50% - 4px);flex:1 1 var(--parts-img-flex-basis,calc(50% - 4px));justify-content:center;max-width:calc(50% - 4px);max-width:var(--parts-img-flex-basis,calc(50% - 4px));min-width:0}.content-part:has(.content-part-text){flex:0 0 100%;width:100%}.content-part-text{font-size:13px;min-width:0;text-align:center;white-space:pre-wrap;word-break:break-all}.parts-readonly .content-part-block.content-part-text{display:block;justify-content:center;margin-bottom:.25em;text-align:center;width:100%}.parts-readonly .content-part-block.content-part-text:last-child{margin-bottom:0}.content-part:has(.content-part-item){flex:0 0 100%;width:100%}.content-part-item{grid-gap:0;align-items:start;display:grid;gap:0;grid-template-columns:auto 2em 1fr;min-width:0;text-align:left;width:100%}.content-part-item-label{font-weight:500;grid-column:1}.content-part-item-gutter{grid-column:2}.content-part-item-body{display:flex;flex-direction:column;gap:2px 0;grid-column:3;min-width:0;text-align:left}.content-part-item-list li{display:block;margin-bottom:2px;text-align:left;width:100%}.content-part-item-list li:last-child{margin-bottom:0}.content-part-item-list li.content-part-item-entry{align-items:center;display:flex;gap:4px}.content-part-item-entry{align-items:center;display:inline-flex;gap:4px}.content-part-item-entry--first{display:inline-flex}.content-part-item-list{display:block;list-style:none;margin:0;min-width:0;padding:0}.content-part-item-entry-remove{flex-shrink:0;font-size:12px;height:18px;width:18px}.content-part-item-add{align-items:center;display:inline-flex;gap:4px}.content-part-item-add-input{box-sizing:border-box;font-size:13px;padding:4px 6px;width:80px}.content-part-item-add-btn{font-size:12px;padding:4px 8px}.content-part-item--readonly .content-part-item-list{display:block;padding:0}.content-part-item--readonly .content-part-item-list .content-part-item-entry{list-style:none}.content-part-img{border-radius:4px;display:block;height:auto;margin-left:auto;margin-right:auto;max-height:100px;max-width:100%;object-fit:contain;width:auto}.document-output-modal-overlay .parts-readonly .content-part-img{max-height:clamp(72px,22vh,140px)}.document-output-modal-overlay .parts-readonly[data-image-count="1"] .content-part-img{max-height:clamp(100px,28vh,200px)}.document-output-modal-overlay .parts-readonly[data-image-count="2"] .content-part-img,.document-output-modal-overlay .parts-readonly[data-image-count="4"] .content-part-img{max-height:clamp(64px,18vh,120px)}.document-output-modal-overlay .parts-readonly[data-image-count="3"] .content-part-img,.document-output-modal-overlay .parts-readonly[data-image-count="5"] .content-part-img,.document-output-modal-overlay .parts-readonly[data-image-count="6"] .content-part-img{max-height:clamp(52px,14vh,96px)}.content-part-remove{background:#ddd;border:none;border-radius:4px;cursor:pointer;flex-shrink:0;font-size:16px;height:22px;line-height:1;padding:0;width:22px}.content-part-remove:hover{background:#ccc}.content-parts-add-btn{background:#fff;border:1px dashed #999;border-radius:4px;color:#333;cursor:pointer;font-size:13px;padding:6px 12px}.content-parts-add-btn:hover{background:#f5f5f5;border-color:#666}.document-container table.document-table td br{content:"";display:block;margin-bottom:2px}.document-container table.document-table .doc-caption{display:block;font-size:13px;margin-bottom:4px;margin-top:0}.document-container table.document-table .content-parts-field+.doc-caption,.document-container table.document-table .doc-caption:not(:first-child){margin-top:10px}.document-container table.document-table .doc-selected-summary{display:block;font-size:13px;line-height:1.5;margin:0 0 .5em;word-break:break-word}.document-output-modal-overlay .document-container table.document-table .doc-selected-summary{max-width:100%}@media screen and (max-width:767px){.document-container{padding:0 12px 20px}.document-container .doc-title{font-size:18px;line-height:1.35;margin:12px 0 16px;padding:0 4px}.document-container table.document-table,.document-container table.document-table tbody{display:block}.document-container table.document-table tr{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #00000014;display:block;margin-bottom:16px;overflow:hidden}.document-container table.document-table td{border:none;border-bottom:1px solid #e5e7eb;box-sizing:border-box;display:block;font-size:14px;line-height:1.5;min-width:0;padding:12px 14px;width:100%}.document-container table.document-table tr td:last-child{border-bottom:none}.document-container table.document-table td.section-title{background:#f1f5f9;font-size:14px;line-height:1.45;padding:10px 14px}.document-container table.document-table td.section-title+td{padding-top:12px}.document-container table.document-table input[type=date],.document-container table.document-table input[type=number],.document-container table.document-table input[type=text]{border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;font-size:16px;margin-top:4px;max-width:100%;min-height:44px;padding:10px 12px;width:100%}.document-container table.document-table label{align-items:center;display:flex;gap:8px;line-height:1.4;padding:6px 0}.document-container table.document-table label input[type=checkbox]{flex-shrink:0;height:20px;margin:0;width:20px}.document-container .content-parts-field{border-radius:8px;margin:8px 0;min-height:72px;padding:10px 12px}.document-container .content-parts-field.large-area{min-height:120px}.document-container .content-parts-field.medium-area{min-height:96px}.document-container .content-parts-add-btn{border-radius:8px;font-size:15px;min-height:44px;padding:10px 14px;width:100%}.document-container .content-part-block{padding:8px 10px}.document-container .content-part-remove{font-size:18px;height:28px;width:28px}}@page{size:A4;margin:6mm}.document-container{height:auto;min-height:0}@media print{body{margin:0}table.document-table{page-break-inside:avoid}.content-part-remove,.content-parts-add-btn{display:none}.document-actions{display:none!important}body.document-print-active *{visibility:hidden}body.document-print-active .document-output-modal-overlay,body.document-print-active .document-output-modal-overlay .document-output-preview,body.document-print-active .document-output-modal-overlay .document-output-preview *{visibility:visible}body.document-print-active .document-output-modal-overlay{background:#fff!important;inset:0!important;margin:0!important;padding:0!important;position:fixed!important}body.document-print-active .document-output-modal-overlay .document-output-modal-content{border:none!important;border-radius:0!important;box-shadow:none!important;max-width:none!important;padding:0!important;width:100%!important}body.document-print-active .document-output-modal-overlay .modal-footer,body.document-print-active .document-output-modal-overlay .modal-header,body.document-print-active .document-output-modal-overlay .no-print-show{display:none!important}body.document-print-active .document-output-modal-overlay .document-output-preview{margin:0!important;max-height:none!important;overflow:hidden!important;padding:0!important}body.document-print-active .document-output-modal-overlay .document-container{box-sizing:border-box!important;height:auto!important;margin:0 auto!important;max-width:794px!important;min-height:0!important;overflow:hidden!important;padding:6mm!important;width:794px!important}body.document-print-active .document-output-modal-overlay .document-container table.document-table{border-collapse:collapse!important;max-width:683px!important;overflow:hidden!important;table-layout:fixed!important;width:683px!important}body.document-print-active .document-output-modal-overlay .document-container table.document-table .doc-col-section{width:127px!important}body.document-print-active .document-output-modal-overlay .document-container table.document-table .doc-col-left{width:333px!important}body.document-print-active .document-output-modal-overlay .document-container table.document-table .doc-col-right{width:222px!important}body.document-print-active .document-output-modal-overlay .document-container table.document-table .doc-col-section-2{width:1px!important}body.document-print-active .document-output-modal-overlay .document-container table.document-table td,body.document-print-active .document-output-modal-overlay .document-container table.document-table th{box-sizing:border-box!important;font-size:10px!important;min-width:0!important;overflow:hidden!important;padding:3px 4px!important}body.document-print-active .document-output-modal-overlay .document-container table.document-table input,body.document-print-active .document-output-modal-overlay .document-container table.document-table textarea{box-sizing:border-box!important;font-size:10px!important;max-width:100%!important;padding:2px 3px!important;width:100%!important}body.document-print-active .document-output-modal-overlay .document-container textarea{overflow:hidden!important}body.document-print-active .document-output-modal-overlay .document-container .content-parts-field{margin:2px 0!important;min-width:0!important;overflow:hidden!important;padding:2px 3px!important}body.document-print-active .document-output-modal-overlay .document-container .content-parts-list{display:block!important;gap:0!important}body.document-print-active .document-output-modal-overlay .document-container .content-part-block{display:block!important;gap:0!important;padding:2px 3px!important}body.document-print-active .document-output-modal-overlay .document-container .content-part-text,body.document-print-active .document-output-modal-overlay .document-container .doc-caption{font-size:10px!important}body.document-print-active .document-output-modal-overlay .document-container .content-part-img{height:auto!important;max-width:100%!important}body.document-print-active .document-output-modal-overlay .document-container .doc-title{font-size:14px!important;margin:6px 0 8px!important}body.document-print-active .document-container{height:auto!important;max-width:794px!important;min-height:0!important;overflow:hidden!important;padding:6mm!important;width:794px!important}body.document-print-active .document-container table.document-table{border-collapse:collapse!important;max-width:683px!important;overflow:hidden!important;table-layout:fixed!important;width:683px!important}body.document-print-active .doc-col-section{width:127px!important}body.document-print-active .doc-col-left{width:333px!important}body.document-print-active .doc-col-right{width:222px!important}body.document-print-active .doc-col-section-2{width:1px!important}body.document-print-active .document-container .content-part{display:block!important;max-width:100%!important}body.document-print-active .document-container .content-parts-field:first-child{margin-top:0!important}body.document-print-active .document-container .content-parts-field,body.document-print-active .document-container table.document-table td,body.document-print-active .document-container table.document-table th{border-width:1px!important;box-sizing:border-box!important}body.document-print-active .document-container .content-parts-list{display:block!important;gap:0!important}body.document-print-active .document-container .content-part-block{display:block!important;gap:0!important;padding:2px 3px!important}body.document-print-active .document-container .content-parts-field{min-width:0!important;overflow:hidden!important}body.document-print-active .document-output-preview{overflow:hidden!important}body.document-print-active .document-container table.document-table td,body.document-print-active .document-container table.document-table th{padding:3px 4px!important}body.document-print-active .document-container .content-part-text,body.document-print-active .document-container .doc-caption{font-size:10px!important}body.document-print-active .document-container *{box-sizing:border-box!important}body.document-print-active textarea{overflow:hidden!important;white-space:normal!important;word-break:break-all!important}body.document-print-active .document-container .content-part-img{height:auto!important;max-width:100%!important}}@page{size:A4 portrait;margin:10mm}.document-wizard-print-root{background:#fff;box-shadow:0 2px 14px #0f172a1f;box-sizing:border-box;margin:0 auto 16px;max-width:100%;min-height:297mm;padding:10mm;width:210mm}.document-wizard-print-root .document-container{margin:0;max-width:none;padding:0;width:100%}.document-wizard-print-root .doc-title{font-size:11pt;font-weight:700;margin:0 0 4mm;text-align:center}.document-wizard-print-root table.document-table{border-collapse:collapse;max-width:none;table-layout:fixed;width:100%}.document-wizard-print-root .doc-selected-summary{display:block;font-size:9.5pt;font-weight:600;line-height:1.55;margin:0 0 .45em;white-space:normal;word-break:break-word}.document-wizard-print-root table.document-table td,.document-wizard-print-root table.document-table th{font-size:8.5pt;line-height:1.35;padding:1.5mm 1.8mm}.document-wizard-print-root .large-area{min-height:28mm}.document-wizard-print-root .medium-area{min-height:22mm}.document-wizard-print-root .parts-readonly .content-part-img{height:auto;max-height:42mm;max-width:100%;object-fit:contain;width:auto}.document-wizard-print-root .parts-readonly[data-image-count="1"] .content-part-img{max-height:48mm}.document-wizard-print-root .parts-readonly[data-image-count="2"] .content-part-img,.document-wizard-print-root .parts-readonly[data-image-count="4"] .content-part-img{max-height:34mm}.document-wizard-print-root .parts-readonly[data-image-count="3"] .content-part-img,.document-wizard-print-root .parts-readonly[data-image-count="5"] .content-part-img,.document-wizard-print-root .parts-readonly[data-image-count="6"] .content-part-img{max-height:26mm}@media print{.document-wizard-print-root{box-shadow:none!important;break-after:auto;margin:0!important;max-width:none!important;min-height:0!important;padding:0!important;page-break-after:auto;width:100%!important}.document-wizard-print-root .doc-title{font-size:11pt;margin:0 0 3mm}.document-wizard-print-root table.document-table td,.document-wizard-print-root table.document-table th{font-size:8.5pt;padding:1.2mm 1.5mm}.document-wizard-print-root .parts-readonly[data-image-count="1"] .content-part-img{max-height:44mm}.document-wizard-print-root .parts-readonly[data-image-count="2"] .content-part-img,.document-wizard-print-root .parts-readonly[data-image-count="4"] .content-part-img{max-height:30mm}.document-wizard-print-root .parts-readonly[data-image-count="3"] .content-part-img,.document-wizard-print-root .parts-readonly[data-image-count="5"] .content-part-img,.document-wizard-print-root .parts-readonly[data-image-count="6"] .content-part-img{max-height:22mm}}.rope-documents-list{margin:0 auto;max-width:900px;padding:24px}.rope-documents-list__title{font-size:1.5rem;margin-bottom:20px}.rope-documents-list__empty{color:#666}.rope-documents-list__table{border-collapse:collapse;width:100%}.rope-documents-list__table td,.rope-documents-list__table th{border:1px solid #ddd;padding:10px 12px;text-align:left}.rope-documents-list__table th{background:#f5f5f5;font-weight:600}.rope-documents-list__table td{vertical-align:middle}.rope-documents-list__btn{background:#fff;border:1px solid #ccc;border-radius:6px;cursor:pointer;font-size:13px;margin-right:8px;padding:6px 12px}.rope-documents-list__btn:hover{background:#f0f0f0}.rope-documents-list__btn--view{border-color:#3b82f6;color:#3b82f6}.rope-documents-list__btn--view:hover{background:#eff6ff}.rope-documents-list__btn--edit{border-color:#22c55e;color:#22c55e}.rope-documents-list__btn--edit:hover{background:#f0fdf4}.rope-documents-list__btn--delete{border-color:#ef4444;color:#ef4444}.rope-documents-list__btn--delete:hover{background:#fef2f2}.site-file-list{display:none}.site-file-list__item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;display:flex;font-size:.85rem;gap:.4rem;padding:.35rem .5rem}.site-file-list__button{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;flex:1 1;gap:.5rem;padding:0;text-align:left}.site-file-list__item.is-active{background:#dbeafe;border-color:#2563eb}.site-file-list__type{color:#1f2937;font-weight:700}.site-file-list__name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-file-list__delete{background:#fee2e2;border:1px solid #fca5a5;border-radius:.35rem;color:#b91c1c;cursor:pointer;font-size:.75rem;padding:.15rem .45rem}.site-file-list__empty,.site-file-viewer__empty{color:#94a3b8;font-size:.85rem;padding:.5rem 0;text-align:center}.pdf-viewer{display:flex;flex-direction:column;gap:.5rem;width:100%}.pdf-viewer__toolbar{align-items:center;display:flex;gap:.5rem}.pdf-viewer__toolbar button{background:#e2e8f0;border:1px solid #cbd5f5;border-radius:.35rem;font-weight:700;padding:.25rem .5rem}.pdf-viewer__body{display:flex;gap:.75rem}.pdf-viewer__sidebar{display:flex;flex-direction:column;gap:.25rem}.pdf-viewer__page-btn{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.35rem;font-size:.8rem;padding:.25rem .4rem}.pdf-viewer__page-btn.is-active{background:#2563eb;color:#fff}.pdf-viewer__content{flex:1 1}.site-files-title{text-align:center}.site-file-viewer-center{align-items:center;display:flex;justify-content:center}.site-file-upload-center{align-items:center;display:flex;flex-direction:column;gap:8px}.site-file-upload-center input[type=file]{margin:0 auto}.image-viewer{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;cursor:pointer;display:flex;flex-direction:column;gap:.35rem;height:248px;justify-content:center;overflow:hidden;padding:.5rem;width:248px}.image-viewer img{height:248px;object-fit:cover;width:248px}.image-viewer.is-zoomed img{height:auto;object-fit:contain;transform:none;width:100%}.image-viewer.is-zoomed{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;cursor:pointer;height:auto;max-width:100%;padding:.5rem;width:100%}.image-viewer img{height:auto;width:100%}.image-viewer__hint{color:#64748b;font-size:.75rem}.image-viewer.is-zoomed img{transform:scale(1.5);transform-origin:center}.image-viewer__modal{align-items:center;background:#0f172ab3;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.image-viewer__modal-body{background:#fff;border-radius:.5rem;max-height:90vh;max-width:90vw;padding:.5rem;position:relative}.image-viewer__modal-body img{max-height:80vh;max-width:100%}.image-viewer__close{background:#e2e8f0;border:none;border-radius:999px;cursor:pointer;font-weight:700;height:1.8rem;position:absolute;right:.35rem;top:.35rem;width:1.8rem}@media (max-width:767px){.pdf-viewer__body{flex-direction:column}.pdf-viewer__sidebar{flex-direction:row;flex-wrap:wrap}}#root:has(.schedule-print-page){max-width:none!important;overflow-x:visible!important}.schedule-print-page{width:100%!important}.schedule-print-page,.schedule-print-page>*{max-width:none!important;overflow-x:visible!important}.schedule-print-page .schedule-print{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#0f172a;font-weight:700;text-rendering:optimizeLegibility;width:100%}.schedule-print-page .schedule-print__container{padding-left:0;padding-right:0}.schedule-print .schedule-print__day-header{color:#020617}.schedule-print .schedule-print__card{color:#020617;font-weight:800}.schedule-print .schedule-print__assignment{font-weight:800!important}.schedule-print .schedule-print__assignment-inner>span:first-child{font-weight:900}.schedule-print .schedule-print__assignment-icons{box-sizing:border-box;max-width:2.5em}.schedule-print .schedule-print__assignment-icons--full{max-width:none}@media print{#root,body,html{background:#fff;height:100%;margin:0;overflow:hidden;padding:0}#root,.schedule-print,.schedule-print *,body,html{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.schedule-print{height:auto;min-height:0;overflow:visible;width:100%}.schedule-print__container{height:auto!important;min-height:0;overflow:visible!important;padding-bottom:0!important;padding-top:0!important}.schedule-print__grid{break-inside:avoid;page-break-inside:avoid}.schedule-print__assignment,.schedule-print__card{box-shadow:none!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.schedule-print__assignment{overflow:hidden!important}.schedule-print__assignment-inner{min-width:0;overflow:hidden}.schedule-print__assignment-icons{font-size:8px!important;line-height:1!important;max-height:100%;max-width:2.5em}.schedule-print__assignment-icons--full{max-height:none;max-width:none}.schedule-print__assignment-icons span{font-size:inherit!important;line-height:1!important}}.site-files-manager{display:flex;flex-direction:column;gap:16px;padding:24px}.site-files-manager__header{align-items:center;display:flex;gap:16px;justify-content:space-between}.site-files-manager__header h1{font-size:20px;margin:0}.site-files-manager__actions{align-items:center;display:flex;gap:8px}.site-files-manager__actions input[type=file],.site-files-manager__actions select{font-size:13px}.site-files-manager__body{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:1fr 1fr}.site-files-manager__list{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:12px}.site-files-manager__list-header{color:#334155;font-weight:600}.site-files-manager__row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:8px 10px}.site-files-manager__row,.site-files-manager__row-main{align-items:center;cursor:pointer;display:flex;gap:8px;justify-content:space-between}.site-files-manager__row-main{background:#0000;border:none;flex:1 1;text-align:left}.site-files-manager__row.is-active{background:#dbeafe;border-color:#2563eb}.site-files-manager__meta{display:flex;flex-direction:column;gap:2px;text-align:left}.site-files-manager__date{color:#64748b;font-size:12px}.site-files-manager__name,.site-files-manager__site{color:#1f2937;font-size:13px}.site-files-manager__type{color:#0f172a;font-weight:700}.site-files-manager__actions button,.site-files-manager__download,.site-files-manager__replace,.site-files-manager__row-actions button{background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;color:#b91c1c;cursor:pointer;font-size:12px;padding:4px 8px}.site-files-manager__row-actions{display:flex;flex-wrap:wrap;gap:6px}.site-files-manager__row-actions input[type=text]{border:1px solid #cbd5f5;border-radius:6px;font-size:12px;padding:4px 6px}.site-files-manager__download,.site-files-manager__replace{align-items:center;display:inline-flex;justify-content:center;text-decoration:none}.site-files-manager__replace input{display:none}.site-files-manager__month-title{color:#334155;font-weight:600;margin:8px 0 4px}.site-files-manager__viewer{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;justify-content:center;padding:12px}.site-files-manager__empty{color:#94a3b8;font-size:13px;padding:12px 0;text-align:center}@media (max-width:900px){.site-files-manager__body{grid-template-columns:1fr}}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:#0003;--rc-drag-bar-size:6px;--rc-border-color:#ffffffb3;--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;max-width:100%;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;height:calc(100% + .5px);left:0;pointer-events:none;position:absolute;right:0;top:0;width:calc(100% + .5px)}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}.ReactCrop__crop-selection:focus{outline:2px solid #08f;outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:#0003;background-color:var(--rc-drag-handle-bg-colour);border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);height:12px;height:var(--rc-drag-handle-size);position:absolute;width:12px;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:#08f;background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:6px;height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:6px;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:24px;height:var(--rc-drag-handle-mobile-size);width:24px;width:var(--rc-drag-handle-mobile-size)}}.business-card-page{background-color:#f8f9fa;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:min(1600px,100%);min-height:100vh;padding:20px;width:100%}.business-card-page.is-recognizing{position:relative}.business-card-page *,.business-card-page :after,.business-card-page :before{box-sizing:inherit}.business-card-header h1{color:#2c3e50;font-size:24px;font-weight:700;margin:0 0 8px}.business-card-header p{color:#6c757d;font-size:14px;margin:0 0 16px}.business-card-layout{display:block;min-width:0}.business-card-left{display:flex;flex-direction:column;gap:12px;min-width:0}.business-card-upload{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:12px}.business-card-upload-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.btn-upload-camera,.btn-upload-file{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:8px 14px}.btn-upload-file{background:#0d6efd;color:#fff}.btn-upload-file:hover:not(:disabled){background:#0b5ed7}.btn-upload-camera{background:#198754;color:#fff}.btn-upload-camera:hover:not(:disabled){background:#157347}.btn-upload-manual{background:#fff;border:1px solid #6c757d;border-radius:8px;color:#495057;cursor:pointer;font-size:14px;font-weight:600;padding:8px 14px}.btn-upload-manual:hover:not(:disabled){background:#e9ecef}.btn-upload-camera:disabled,.btn-upload-file:disabled,.btn-upload-manual:disabled{cursor:not-allowed;opacity:.6}.meta-last-contact{margin-top:2px}.upload-hint{color:#6c757d;font-size:12px;margin:8px 0 0}.business-card-page--sp-import-ui{padding-bottom:calc(96px + env(safe-area-inset-bottom, 0px))}.bc-spfab{-webkit-tap-highlight-color:transparent;align-items:center;appearance:none;-webkit-appearance:none;background:#0000;border:none;border-radius:50%;bottom:max(20px,env(safe-area-inset-bottom,0px));box-shadow:0 4px 16px #2563eb59;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;height:56px;justify-content:center;left:50%;margin:0;overflow:hidden;padding:0;position:fixed;transform:translateX(-50%);width:56px;z-index:1100}.bc-spfab:disabled{box-shadow:none;cursor:not-allowed;opacity:.42}.bc-spfab__inner{align-items:center;display:flex;height:100%;justify-content:center;line-height:0;pointer-events:none;width:100%}.bc-spfab__img{display:block;flex-shrink:0;height:56px;object-fit:contain;width:56px}.bc-spsheet{align-items:flex-end;display:flex;inset:0;isolation:isolate;justify-content:center;pointer-events:auto;position:fixed;z-index:99990}.bc-spsheet__backdrop{-webkit-tap-highlight-color:transparent;background:#0f172a73;border:none;cursor:pointer;inset:0;margin:0;padding:0;pointer-events:auto;position:absolute;z-index:0}.bc-spsheet__panel{animation:bc-spsheet-enter .2s ease-out;background:#fff;border:solid #e2e8f0;border-radius:0;border-width:1px 1px 0;box-shadow:0 -6px 28px #0f172a1a;box-sizing:border-box;margin:0 auto;max-width:400px;overflow:hidden;padding:18px 20px max(16px,env(safe-area-inset-bottom,16px));pointer-events:auto;position:relative;width:100%;z-index:1}@keyframes bc-spsheet-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.bc-spsheet__title{color:#0f172a;font-size:14px;font-weight:700;line-height:1.35;margin:0 0 16px;padding:0;text-align:center}.bc-spsheet__list{display:flex;flex-direction:column;gap:10px}.bc-spsheet__btn{-webkit-tap-highlight-color:transparent;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;box-sizing:border-box;color:#1d4ed8;cursor:pointer;display:block;font-size:14px;font-weight:600;line-height:1.35;margin:0;min-height:44px;padding:12px 16px;text-align:center;width:100%}.bc-spsheet__btn:active{background:#dbeafe}.bc-spsheet__btn--quiet{background:#f8fafc;border-color:#e2e8f0;border-radius:10px;color:#64748b;font-size:13px;margin-top:12px;min-height:40px;padding:10px 14px}.bc-spsheet__btn--quiet:active{background:#f1f5f9}.upload-label{color:#495057;display:flex;flex-direction:column;font-size:13px;gap:6px}.upload-title{font-weight:600}.status-text{color:#0d6efd}.error-text,.status-text{font-size:12px;margin-top:6px}.error-text{color:#dc3545}.business-card-processing-overlay{align-items:center;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#0f172a47;display:flex;inset:0;justify-content:center;pointer-events:all;position:fixed;z-index:1200}.business-card-processing-card{background:#fff;border:1px solid #dbeafe;border-radius:12px;box-shadow:0 12px 32px #0f172a33;min-width:240px;padding:18px 22px;text-align:center}.business-card-processing-spinner{animation:business-card-spin .85s linear infinite;border:3px solid #bfdbfe;border-radius:999px;border-top-color:#2563eb;height:34px;margin:0 auto 10px;width:34px}.business-card-processing-title{color:#0f172a;font-size:15px;font-weight:700}.business-card-processing-text{color:#475569;font-size:12px;margin-top:4px}@keyframes business-card-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.business-card-search{display:flex;gap:6px}.business-card-search input{border:1px solid #ced4da;border-radius:6px;flex:1 1;font-size:13px;padding:6px 8px}.business-card-search button{background:#0d6efd;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;padding:6px 10px}.business-card-search button:hover{background:#0b5ed7}.business-card-bulk-bar{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 1px 3px #0000000f;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding:10px 12px}.bc-bulk-count{color:#495057;font-size:13px;font-weight:600}.bc-bulk-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.bc-bulk-btn{background:#fff;border:1px solid #ced4da;border-radius:6px;color:#495057;cursor:pointer;font-size:13px;font-weight:600;padding:6px 12px}.bc-bulk-btn:hover:not(:disabled){background:#f1f3f5}.bc-bulk-btn:disabled{cursor:not-allowed;opacity:.5}.bc-bulk-delete{align-items:center;background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:6px 12px}.bc-bulk-delete:hover:not(:disabled){background:#bb2d3b}.bc-bulk-delete:disabled{cursor:not-allowed;opacity:.5}.business-card-list{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;max-height:min(72vh,880px);overflow-y:auto;padding:10px}.business-card-list-item{align-items:stretch;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:flex;gap:10px;margin-bottom:8px;padding:10px 10px 10px 8px;text-align:left;width:100%}.business-card-list-item:last-child{margin-bottom:0}.bc-browse-company{background:#fff;border:1px solid #e9ecef;border-radius:8px;margin-bottom:8px;overflow:hidden}.bc-browse-company--single,.bc-browse-company:last-child{margin-bottom:0}.bc-browse-company-static-head{border-bottom:1px solid #dee2e6}.bc-browse-company-static-head,.bc-browse-company-toggle{background:#f8f9fa;color:#2c3e50;font-size:13px;font-weight:600;padding:12px 12px 12px 8px}.bc-browse-company-toggle{align-items:center;border:none;cursor:pointer;display:flex;gap:6px;margin:0;text-align:left;width:100%}.bc-browse-company-toggle:hover{background:#e9ecef}.bc-browse-company-toggle.is-open{background:#e7f1ff;border-bottom:1px solid #dee2e6}.bc-browse-chevron{align-items:center;display:flex;flex-shrink:0;justify-content:center}.bc-browse-company-name{flex:1 1;font-size:13px;min-width:0}.bc-browse-company-meta{color:#6c757d;flex-shrink:0;font-size:12px;font-weight:600}.bc-browse-person-list{background:#fff;list-style:none;margin:0;padding:8px 8px 10px 10px}.bc-browse-person-list>li{margin-bottom:6px}.bc-browse-person-list>li:last-child,.bc-browse-person-row{margin-bottom:0}.bc-browse-person-thumb{height:56px!important;width:56px!important}.bc-browse-person-open{gap:10px}.bc-browse-person-name{font-size:15px}.bc-list-checkbox-label{align-items:center;cursor:pointer;display:flex;flex-shrink:0;padding:0 4px 0 2px}.bc-list-checkbox-label input{cursor:pointer;height:18px;width:18px}.bc-list-row-open{align-items:center;background:#0000;border:none;border-radius:6px;cursor:pointer;display:flex;flex:1 1;gap:14px;margin:0;min-width:0;padding:0;text-align:left}.bc-list-row-open:hover{background:#0d6efd0f}.business-card-list-item.is-active{background:#e7f1ff;border-color:#0d6efd}.business-card-list-item .thumb{align-items:center;background:#f1f3f5;border:1px solid #dee2e6;border-radius:6px;box-sizing:border-box;display:flex;flex-shrink:0;height:96px;justify-content:center;overflow:hidden;width:96px}.business-card-list-item .thumb img{display:block;height:100%;object-fit:contain;object-position:center;width:100%}.business-card-list-item .info{display:flex;flex:1 1;flex-direction:column;gap:2px}.business-card-list-item .company{align-items:center;color:#212529;display:flex;font-size:16px;font-weight:700;gap:6px}.duplicate-alert-icon{color:#dc2626;display:inline-flex}.business-card-list-item .person{color:#495057;font-size:14px;margin-top:4px}.business-card-list-item .meta{color:#868e96;font-size:12px;margin-top:6px}.empty-text{color:#868e96;font-size:12px}.business-card-right{display:flex;flex-direction:column;gap:12px;min-width:0}.business-card-right--modal{box-shadow:none;display:flex;flex-direction:column;height:100%;min-height:0}.business-card-right--modal .business-card-preview{flex:0 0 auto;min-height:200px}.business-card-preview{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:center;min-height:260px;overflow:hidden;position:relative}.business-card-preview-trigger{background:#0000;border:none;cursor:zoom-in;margin:0;padding:0}.business-card-preview-static,.business-card-preview-trigger{align-items:center;border-radius:8px;display:flex;height:100%;justify-content:center;position:relative;width:100%;z-index:1}.business-card-preview-static>img{display:block;height:auto;max-height:min(52vh,420px);max-width:100%;object-fit:contain;width:auto}@media (min-width:769px){.business-card-right--modal .business-card-preview-static>img{max-height:min(40vh,320px);max-width:min(100%,360px)}}.business-card-crop-btn{align-items:center;background:#0009;border:1px solid #fff6;border-radius:50%;box-shadow:0 2px 8px #0000004d;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:10px;top:10px;transition:all .2s;width:32px;z-index:10}.business-card-crop-btn:hover{background:#0d6efde6;border-color:#fff;transform:scale(1.1)}.business-card-preview-hint{background:#00000080;border-radius:4px;bottom:8px;color:#fff;font-size:11px;padding:2px 6px;pointer-events:none;position:absolute;right:8px;z-index:2}.preview-placeholder{color:#adb5bd;font-size:13px;padding:8px;text-align:center}.business-card-form{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:12px}.business-card-form h2{color:#212529;font-size:18px;font-weight:600;margin:0 0 10px}.business-card-summary{background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:6px;padding:12px}.business-card-summary .summary-main{color:#0f172a;font-size:18px;font-weight:700;line-height:1.2}.business-card-summary .summary-sub{color:#1f2937;font-size:16px;font-weight:600;line-height:1.3}.business-card-summary .summary-subtle{color:#64748b;font-size:13px}.business-card-summary .summary-line{color:#2563eb;font-size:13px;line-height:1.4;word-break:break-word}.business-card-summary .summary-notes{border-top:1px solid #e2e8f0;margin-top:6px;padding-top:10px}.business-card-summary .summary-notes-label{color:#64748b;font-size:12px;font-weight:600;margin-bottom:4px}.business-card-summary .summary-notes-body{color:#334155;font-size:13px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.business-card-form .form-grid{grid-gap:8px 12px;display:grid;gap:8px 12px;grid-template-columns:1fr}.business-card-form .form-grid.form-grid--single{grid-template-columns:1fr!important}.business-card-form .form-grid.form-grid--single>label{grid-column:1/-1!important}.business-card-form label{color:#495057;display:flex;flex-direction:column;font-size:12px;gap:3px;min-width:0}.business-card-form input,.business-card-form select,.business-card-form textarea{border:1px solid #ced4da;border-radius:6px;font-size:13px;padding:6px 8px}.business-card-form label.full{grid-column:1/-1}.business-card-form .actions{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}.business-card-form .actions--confirm{justify-content:center;margin-top:14px}.business-card-form .actions .primary{background:#198754;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;padding:6px 14px}.business-card-form .actions .primary:hover{background:#157347}.business-card-form .actions .danger{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;padding:6px 14px}.business-card-form .actions .danger:hover{background:#c82333}.business-card-form .actions .warning{background:#fef3c7;border:1px solid #d97706;border-radius:6px;color:#92400e;cursor:pointer;font-size:13px;padding:6px 12px}.business-card-form .actions .warning:hover{background:#fde68a}.duplicate-compare-slider{-webkit-overflow-scrolling:touch;display:flex;gap:12px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory}.duplicate-compare-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex:0 0 100%;max-width:100%;padding:12px;scroll-snap-align:start}.duplicate-compare-item h4{color:#0f172a;font-size:13px;font-weight:700;margin:0 0 10px}.duplicate-compare-thumb{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;justify-content:center;margin-bottom:10px;padding:8px;width:100%}.duplicate-compare-thumb img{display:block;height:auto;max-height:210px;max-width:100%;object-fit:contain;width:auto}.duplicate-compare-grid{grid-gap:6px;color:#334155;display:grid;font-size:12px;gap:6px;grid-template-columns:1fr}.business-card-touch-section{border-top:1px solid #e9ecef;margin-top:20px;padding-top:16px}.business-card-touch-section h2{font-size:16px;margin:0 0 8px}.touch-hint{color:#6c757d;font-size:12px;margin:0 0 10px}.touch-add-form{grid-gap:8px 12px;align-items:end;display:grid;gap:8px 12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px}.touch-add-form label{color:#495057;display:flex;flex-direction:column;font-size:12px;gap:3px;min-width:0}.touch-add-btn,.touch-add-form label.full{grid-column:1/-1}.touch-add-btn{justify-self:start}.touch-log-list{list-style:none;margin:0;padding:0}.touch-log-empty{color:#868e96;font-size:12px;padding:8px 0}.touch-log-item{align-items:flex-start;border-bottom:1px solid #f1f3f5;display:flex;font-size:12px;gap:8px;justify-content:space-between;padding:8px 0}.touch-log-body{align-items:baseline;display:flex;flex:1 1;flex-wrap:wrap;gap:6px 10px}.touch-log-date{color:#212529;font-weight:600}.touch-log-channel{background:#e7f1ff;border-radius:4px;color:#0d6efd;font-size:11px;padding:2px 6px}.touch-log-actor{color:#6c757d;font-size:11px}.touch-log-note{color:#495057;width:100%}.touch-log-delete{background:#fff;border:1px solid #ced4da;border-radius:4px;color:#dc3545;cursor:pointer;flex-shrink:0;font-size:11px;padding:4px 8px}.touch-log-delete:hover:not(:disabled){background:#f8d7da}@media (max-width:900px){.business-card-layout{grid-template-columns:1fr}.business-card-preview{height:auto;max-height:none;min-height:0;padding:8px}.business-card-preview-trigger{max-height:min(52vh,380px);min-height:160px}.business-card-preview-trigger img{height:auto;max-height:min(50vh,360px);max-width:100%;object-fit:contain;width:100%}}.business-card-detail-body{display:flex;flex-direction:column;min-height:0;overflow:hidden!important}@media (max-width:768px){.business-card-page{max-width:100%;overflow-x:clip;padding:12px}.business-card-header h1{font-size:20px}.business-card-header p{font-size:13px}.business-card-form .form-grid{grid-template-columns:1fr}.business-card-summary .summary-main{font-size:16px}.business-card-summary .summary-sub{font-size:14px}.business-card-summary .summary-line{font-size:12px}.business-card-summary .summary-notes-label{font-size:11px}.business-card-summary .summary-notes-body{font-size:12px}.touch-add-form{grid-template-columns:1fr}.business-card-form input,.business-card-form select,.business-card-form textarea{max-width:100%;min-width:0;width:100%}.business-card-list{max-height:min(42vh,280px)}.business-card-search{align-items:stretch;flex-direction:column}.business-card-search button{width:100%}.business-card-preview-trigger{max-height:min(48vh,340px)}.business-card-preview-trigger img{max-height:min(46vh,320px)}}.business-card-pending-original{display:block;height:auto;max-height:min(50vh,360px);max-width:100%;object-fit:contain;width:auto}@media (max-width:768px){.business-card-pending-original{max-height:min(46vh,320px)}}.read-only-crop .ReactCrop__backdrop{background-color:#0003!important}.read-only-crop .ReactCrop__crop-selection{border:1.5px dashed #fff!important}.read-only-crop .ReactCrop__drag-handle{display:none!important}.crop-editor-frame .crop-editor-react-crop .ReactCrop{border-radius:2px;overflow:hidden;vertical-align:top}.pending-preview-wrapper{border-radius:4px;overflow:visible}.pending-crop-overlay{border:1.5px dashed #fffffff2;border-radius:2px;box-sizing:border-box;pointer-events:none;position:absolute}.receipt-management-page{display:flex;flex-direction:column;gap:16px;margin:0 auto;max-width:1200px;padding:16px}.receipt-management-page__header{display:flex;flex-direction:column;gap:6px}.receipt-management-page__title{color:#0f172a;font-size:1.4rem;font-weight:800;margin:0}.receipt-management-page__desc{color:#475569;font-size:.92rem;margin:0}.receipt-management-page__subtitle{color:#0f172a;font-size:1rem;font-weight:800;margin:0}.receipt-management-page__panel{background:#fff;border:1px solid #cbd5e1;border-radius:12px;display:flex;flex-direction:column;gap:10px;padding:14px}.receipt-management-page__actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.receipt-management-page__button{background:#334155;border:1px solid #334155;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:8px 12px}.receipt-management-page__button:disabled{cursor:not-allowed;opacity:.55}.receipt-management-page__button--secondary{background:#fff;border-color:#cbd5e1;color:#0f172a}.receipt-management-page__button--camera{background:#0f766e;border-color:#0f766e;color:#fff;display:none}.receipt-management-page__preview{border:1px solid #cbd5e1;border-radius:10px;max-width:min(100%,360px)}.receipt-management-page__status{font-size:.9rem;margin:0}.receipt-management-page__status--error{color:#b91c1c}.receipt-management-page__status--ok{color:#166534}.receipt-records-table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:auto}.receipt-records-table{border-collapse:collapse;font-size:12px;min-width:1060px;width:100%}.receipt-records-table__col-actions{white-space:nowrap;width:1%}.receipt-records-table__delete{background:#fff;border:1px solid #dc2626;border-radius:8px;color:#dc2626;cursor:pointer;font-size:.76rem;font-weight:700;padding:4px 10px}.receipt-records-table__delete:disabled{cursor:not-allowed;opacity:.55}.receipt-records-table td,.receipt-records-table th{border-bottom:1px solid #e2e8f0;padding:8px 10px;text-align:left;vertical-align:top;white-space:nowrap}.receipt-records-table th{background:#f8fafc;color:#334155;font-weight:700;position:-webkit-sticky;position:sticky;top:0;z-index:1}.receipt-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.receipt-grid--modal{max-height:min(62vh,720px);overflow:auto;padding-right:4px}.receipt-card{background:#fff;border:1px solid #cbd5e1;border-radius:12px;display:flex;flex-direction:column;gap:8px;padding:12px}.receipt-card__title{color:#0f172a;font-size:.95rem;font-weight:800;margin:0}.receipt-card__title-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.receipt-card__delete-button{background:#fff;border:1px solid #dc2626;border-radius:8px;color:#dc2626;cursor:pointer;font-size:.76rem;font-weight:700;padding:4px 8px}.receipt-card__delete-button:disabled{cursor:not-allowed;opacity:.55}.receipt-card__field{display:flex;flex-direction:column;gap:4px}.receipt-card__label{color:#64748b;font-size:.78rem;font-weight:700}.receipt-card__input{border:1px solid #cbd5e1;border-radius:8px;font-size:.9rem;padding:7px 9px}.receipt-card__textarea{min-height:62px;resize:vertical}.receipt-management-dialog{border-radius:12px}.receipt-management-dialog--loading{width:min(460px,96vw)}.receipt-management-dialog__header{background:#fff}.receipt-management-dialog__body{background:#f8fafc}.receipt-management-modal-preview{background:#fff;border:1px solid #dbeafe;border-radius:10px;margin-bottom:12px;padding:10px}.receipt-management-modal-preview__label{color:#334155;font-size:12px;font-weight:700;margin:0 0 8px}.receipt-management-modal-preview__head{align-items:center;display:flex;gap:8px;justify-content:space-between}.receipt-management-modal-preview__zoom-button{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#0f172a;cursor:pointer;font-size:12px;font-weight:700;padding:4px 8px}.receipt-management-modal-preview__zoom-button:hover{background:#f8fafc}.receipt-management-modal-preview__image-button{background:#0000;border:none;cursor:zoom-in;display:block;padding:0;width:100%}.receipt-management-modal-preview__viewport{border-radius:8px;overflow:auto}.receipt-management-modal-preview__viewport.is-zoomed .receipt-management-modal-preview__image-button{cursor:zoom-out;width:-webkit-max-content;width:max-content}.receipt-management-modal-preview__image{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:block;max-height:min(34vh,280px);object-fit:contain;width:100%}.receipt-management-modal-preview__viewport.is-zoomed .receipt-management-modal-preview__image{height:min(72vh,640px);max-height:none;max-width:none;object-fit:contain;width:auto}.receipt-management-modal__header{align-items:center;display:flex;gap:8px;justify-content:space-between}.receipt-management-modal__title{color:#0f172a;font-size:1.02rem;font-weight:800;margin:0}.receipt-management-modal__desc{color:#475569;font-size:.88rem;line-height:1.5;margin:0}.receipt-management-modal__actions{display:flex;gap:8px;justify-content:center}.receipt-management-modal__empty{color:#64748b;font-size:.88rem;margin:0}.receipt-management-processing-spinner{animation:receipt-management-spin .85s linear infinite;border:3px solid #bfdbfe;border-radius:999px;border-top-color:#2563eb;height:34px;margin-bottom:2px;width:34px}@keyframes receipt-management-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.receipt-grid--modal .receipt-card{box-shadow:0 2px 4px #0000000d}.receipt-grid--modal .receipt-card__input{border:1px solid #ced4da;border-radius:6px;font-size:13px;padding:6px 8px}.receipt-grid--modal .receipt-card__label{color:#495057;font-size:12px}@media (max-width:640px){.receipt-management-page{padding:12px}.receipt-management-page__button--camera{align-items:center;display:inline-flex;justify-content:center}.receipt-management-modal__actions{justify-content:stretch}.receipt-management-modal__actions .receipt-management-page__button{flex:1 1}}.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(4,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.forced-available .count{color:#f59e0b}.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-header .day-header:first-child{color:#dc3545}.calendar-header .day-header:nth-child(7){color:#0d6efd}.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.forced-available{background:#fff3cd;border-color:#f59e0b}.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.forced-available{color:#f59e0b}.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,.forced-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)}.forced-available-btn{background:#f59e0b;color:#fff}.forced-available-btn:hover{background:#d97706;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 .forced-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:none;overflow-x:hidden;overflow-y:visible;padding:0}.shift-submission .calendar-header{margin-bottom:5px;margin-left:0;margin-right:0;min-width:0;width:100%}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));width:100%}.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:clamp(28px,8vw,40px);min-width:0}.calendar-grid,.calendar-header{gap:0;grid-template-columns:repeat(7,1fr)}.calendar-day{font-size:.8rem;height:auto;min-height:0;min-width:0}.calendar-day.empty{height:0;min-height:0;padding:0}.day-detail .action-buttons{flex-direction:column}.available-btn,.forced-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:none;overflow-x:hidden;overflow-y:visible;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:0;width:100%}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));width:100%}.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,.forced-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:clamp(24px,9vw,36px);min-width:0}.calendar-grid,.calendar-header{gap:0;grid-template-columns:repeat(7,1fr)}.calendar-day{font-size:.7rem;height:auto;min-height:0;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;max-height:none;overflow-x:hidden;overflow-y:visible}.shift-submission .calendar-header{margin-bottom:2px;min-width:0}.calendar-grid{grid-auto-rows:clamp(22px,9vw,32px);grid-template-columns:repeat(7,minmax(0,1fr));min-width:0;width:100%}.calendar-day{font-size:.65rem;height:auto;min-height:0}.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,.forced-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-container .border-\[3px\]{border-width:5px}.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}}.push-reminder{background:#f4f8fb;border:1px solid #d0dce6;border-radius:10px;margin-top:1.25rem;padding:1rem 1.25rem}.push-reminder__title{color:#0f2a3d;font-size:1.05rem;font-weight:600;margin:0 0 .5rem}.push-reminder__desc{color:#334e63;font-size:.875rem;line-height:1.5;margin:0 0 1rem}.push-reminder__muted{color:#607d8b;font-size:.875rem;margin:0}.push-reminder__row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.65rem}.push-reminder__row--checkbox label{align-items:center;color:#263238;cursor:pointer;display:inline-flex;font-size:.9rem;gap:.4rem}.push-reminder__label{color:#37474f;font-size:.875rem;font-weight:500}.push-reminder__time{border:1px solid #90a4ae;border-radius:6px;font-size:1rem;padding:.35rem .5rem}.push-reminder__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.push-reminder__btn{background:#fff;border:1px solid #78909c;border-radius:6px;color:#263238;cursor:pointer;font-size:.875rem;padding:.45rem .85rem}.push-reminder__btn:disabled{cursor:not-allowed;opacity:.55}.push-reminder__btn--primary{background:#004f80;border-color:#004f80;color:#fff}.push-reminder__msg{color:#1565c0;font-size:.875rem;margin:.65rem 0 0}.push-reminder__hint{color:#546e7a;font-size:.75rem;line-height:1.45;margin:.75rem 0 0}.push-reminder__code{background:#eceff1;border-radius:4px;font-size:.72rem;margin:0 .2rem;padding:.1rem .35rem}.home-container{align-items:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;height:auto;justify-content:center;min-height:calc(100vh - 112px);padding:1rem 1rem .5rem}.home-content{height:auto;max-width:960px;min-height:0;width:100%}.dashboard-container{display:flex;flex-direction:column;height:auto;min-height:100%;overflow:hidden}.welcome-section{color:#fff;margin-bottom:1.1rem;text-align:center}.welcome-title{font-size:2.1rem;font-weight:700;margin-bottom:.75rem;text-shadow:2px 2px 4px #0003}.welcome-subtitle{font-size:1.05rem;margin-bottom:.25rem;opacity:.9}.dashboard-header{flex:0 0 auto}.dashboard-main{flex:1 1 auto;flex-direction:column}.dashboard-main,.dashboard-row-half{display:flex;gap:.5rem;overflow:hidden}.dashboard-row-half{flex:1 1;flex-direction:row;min-height:0;width:100%}.dashboard-row-half .dashboard-bottom,.dashboard-row-half .dashboard-top{flex:1 1 50%;min-height:0;min-width:0;overflow:hidden}.dashboard-map-wrap{display:flex;flex:0 0 320px;flex-direction:column;height:320px;overflow:hidden;width:100%}.dashboard-map-search{display:flex;flex-shrink:0;gap:.5rem;padding:.5rem 0}.dashboard-map-search-input{border:1px solid #ccc;border-radius:6px;flex:1 1;font-size:.95rem;padding:.5rem .75rem}.dashboard-map-search-btn{background:#06c;border:1px solid #06c;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.95rem;padding:.5rem 1rem}.dashboard-map-search-btn:hover{background:#0052a3}.dashboard-map-wrap iframe{display:block;flex:1 1;min-height:0;width:100%}.dashboard-top{flex:0 0 36%;min-height:0}.dashboard-bottom{flex:1 1 auto;min-height:0}@media (min-width:769px) and (max-width:1023px){.dashboard-top{flex:0 0 32%}.dashboard-bottom{flex:1 1 auto}.dashboard-map-wrap{flex:0 0 320px;height:320px}}@media (min-width:1024px) and (max-width:1279px){.dashboard-top{flex:0 0 36%}.dashboard-bottom{flex:1 1 auto}.dashboard-map-wrap{flex:0 0 320px;height:320px}}@media (min-width:1280px) and (max-width:1439px){.dashboard-top{flex:0 0 40%}.dashboard-bottom{flex:1 1 auto}.dashboard-map-wrap{flex:0 0 320px;height:320px}}@media (min-width:1440px){.dashboard-top{flex:0 0 42%}.dashboard-bottom{flex:1 1 auto}.dashboard-map-wrap{flex:0 0 320px;height:320px}}.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)}.home-notifications{background:#fffffff2;border-radius:12px;box-shadow:0 2px 8px #00000026;margin-bottom:.9rem;padding:.75rem 1rem}.home-notifications-title{align-items:center;color:#333;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;margin:0 0 .75rem}.home-notifications-badge{align-items:center;background:#e74c3c;border-radius:999px;color:#fff;display:inline-flex;font-size:.75rem;height:1.25rem;justify-content:center;min-width:1.25rem;padding:0 4px}.home-notifications-list{list-style:none;margin:0;padding:0}.home-notification-item{border-bottom:1px solid #eee;cursor:pointer;display:block;padding:.6rem 0}.home-notification-item:last-child{border-bottom:none}.home-notification-item:hover{background:#f8f9fa}.home-notification-unread{font-weight:600}.home-notification-title{color:#2c3e50;display:block;margin-bottom:2px}.home-notification-body{color:#666;display:block;font-size:.9rem;margin-bottom:4px}.home-notification-date{color:#999;font-size:.8rem}.dashboard-today-sites{background:#fffffff2;border-radius:12px;box-shadow:0 2px 8px #00000026;height:100%;margin-bottom:0;min-height:11rem;overflow:hidden;padding:.75rem 1rem}.dashboard-section-title{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.dashboard-empty,.dashboard-error,.dashboard-loading{color:#666;font-size:.95rem;margin:0}.dashboard-error{color:#c0392b}.dashboard-today-sites-list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;max-height:7.5rem;min-height:7.5rem;overflow-y:auto;padding:0}.dashboard-today-site-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:.75rem 1rem}.dashboard-today-site-name{color:#667eea;display:block;font-weight:600;margin-bottom:.35rem;text-decoration:none}.dashboard-today-site-name:hover{text-decoration:underline}.dashboard-today-site-assignees{color:#555;font-size:.9rem;margin:0}.dashboard-weather-hourly{background:#fffffff2;border-radius:12px;box-shadow:0 2px 8px #00000026;height:auto;margin-bottom:0;overflow-y:hidden;padding:.75rem 1rem}.dashboard-weather-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto;overflow-y:hidden;padding-bottom:4px;scroll-snap-type:x mandatory}.dashboard-weather-hourly-list{display:flex;gap:.75rem;list-style:none;margin:0;padding:0;width:-webkit-max-content;width:max-content}.dashboard-weather-hourly-card{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;flex-direction:column;flex-shrink:0;gap:.15rem;min-width:100px;padding:.5rem .75rem;scroll-snap-align:start}.dashboard-weather-hourly-card.dashboard-weather-rain{background:#e3f2fd;border-color:#90caf9}.dashboard-weather-time{color:#555;font-size:.75rem}.dashboard-weather-icon{font-size:1.3rem}.dashboard-weather-temp{color:#333;font-size:.8rem;font-weight:600}.dashboard-weather-wind{color:#666;font-size:.75rem}.dashboard-weather-precip{color:#666;font-size:.7rem}.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{height:auto;min-height:calc(100vh - 112px);min-height:calc(100svh - 112px);padding:.75rem .75rem .5rem}.dashboard-container{-webkit-overflow-scrolling:touch;height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}.welcome-title{font-size:1.5rem}.welcome-subtitle{font-size:.85rem}.dashboard-main{gap:.25rem;overflow:hidden}.dashboard-row-half{flex:1 1;flex-direction:column;min-height:0}.dashboard-row-half .dashboard-bottom,.dashboard-row-half .dashboard-top{flex:1 1;min-height:0;overflow:auto}.dashboard-bottom,.dashboard-top{min-height:0}.dashboard-today-sites,.dashboard-weather-hourly,.home-notifications{padding:.75rem .9rem}}.user-manual{color:#1a1a1a;line-height:1.65;margin:0 auto;max-width:min(100%,80rem);padding:1.25rem 1rem 3rem}.user-manual-title{color:#0f172a;font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.user-manual-lead{color:#334155;font-size:.95rem;line-height:1.6;margin:0 0 1.75rem;padding:1rem 1.2rem}.user-manual-description,.user-manual-lead{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box}.user-manual-description{padding:1rem 1.2rem 1.15rem}.user-manual-toc{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:2.5rem;padding:1.25rem 1.35rem 1.35rem}.user-manual-toc h2{color:#0f172a;font-size:1.05rem;font-weight:700;margin:0 0 .75rem}.user-manual-toc-group{margin-bottom:1.25rem}.user-manual-toc-group:last-child{margin-bottom:0}.user-manual-toc-group-title{color:#64748b;font-size:.8rem;font-weight:600;letter-spacing:.02em;margin:0 0 .5rem;text-transform:none}.user-manual-toc-group>ul{grid-gap:.35rem .85rem;align-items:start;display:grid;gap:.35rem .85rem;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:0;padding:0}@media (min-width:640px){.user-manual-toc-group>ul{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1024px){.user-manual-toc-group>ul{grid-template-columns:repeat(5,minmax(0,1fr))}}.user-manual-toc-group>ul>li{margin:0;min-width:0}.user-manual-toc a{border-radius:4px;color:#0369a1;display:block;font-size:.9rem;line-height:1.35;margin-left:-.2rem;overflow-wrap:anywhere;padding:.15rem .2rem;text-decoration:none}.user-manual-toc a:focus-visible,.user-manual-toc a:hover{outline:none;text-decoration:underline}.user-manual-article{border-bottom:1px solid #e2e8f0;margin-bottom:2rem;padding-bottom:2rem;scroll-margin-top:5.5rem}.user-manual-article:last-of-type{border-bottom:none;margin-bottom:0}.user-manual-article h2{color:#0f172a;font-size:1.2rem;font-weight:700;margin:0 0 .5rem}.user-manual-meta{color:#64748b;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.5rem .75rem;margin:0 0 1rem}.user-manual-badge{background:#e0f2fe;border-radius:999px;color:#0369a1;display:inline-block;font-size:.72rem;font-weight:600;padding:.12rem .45rem}.user-manual-badge.admin{background:#fef3c7;color:#b45309}.user-manual-open-link{color:#0369a1;font-weight:500;text-decoration:none}.user-manual-open-link:hover{text-decoration:underline}.user-manual-description .user-manual-block{margin-bottom:1.1rem}.user-manual-description .user-manual-block:last-child{margin-bottom:0}.user-manual-description .user-manual-block h3{color:#1e293b;font-size:1rem;font-weight:600;margin:0 0 .45rem}.user-manual-description .user-manual-block p{color:#334155;font-size:.95rem;margin:0 0 .55rem}.user-manual-description .user-manual-block p:last-child{margin-bottom:0}.user-manual-description .user-manual-block ul{color:#334155;margin:.35rem 0 .55rem;padding-left:1.25rem}.user-manual-description .user-manual-block li{font-size:.95rem;line-height:1.55;margin:.3rem 0}@media (min-width:768px){.user-manual{padding:1.5rem 1.5rem 3.5rem}.user-manual-toc{position:-webkit-sticky;position:sticky;top:4.5rem;z-index:1}}.sidebar-menu{background:#0f172a;color:#e2e8f0;display:flex;flex-direction:column;flex-shrink:0;height:100%;min-height:100vh;min-height:100svh;min-height:-webkit-fill-available;min-width:0;overflow:hidden;width:100%}@media (min-width:768px){.sidebar-menu{min-width:220px;width:220px}}.sidebar-logo{align-items:center;border-bottom:1px solid #ffffff14;display:flex;flex-shrink:0;gap:8px;justify-content:space-between;padding:16px 20px}.sidebar-logo a{color:#fff;font-size:1.1rem;font-weight:600;text-decoration:none}.sidebar-close-sp{align-items:center;background:#0000;border:none;border-radius:6px;color:#e2e8f0;cursor:pointer;display:inline-flex;font-size:1.2rem;justify-content:center;line-height:1;padding:6px 10px}.sidebar-close-sp:focus-visible,.sidebar-close-sp:hover{background:#ffffff14;outline:none}.sidebar-nav{flex:1 1;min-width:0;overflow-x:hidden;overflow-y:auto;padding:12px 0}.sidebar-section{margin-bottom:0}.sidebar-item{align-items:center;color:#94a3b8;display:flex;font-size:.9rem;gap:10px;padding:10px 20px;text-decoration:none;transition:background .15s,color .15s}.sidebar-item:hover{background:#ffffff0f;color:#e2e8f0}.sidebar-item.active{background:#3b82f626;border-left:3px solid #3b82f6;color:#fff;padding-left:17px}.sidebar-icon{flex-shrink:0;font-size:1rem;text-align:center;width:20px}.sidebar-group-trigger{align-items:center;background:none;border:none;color:#94a3b8;cursor:pointer;display:flex;font-size:.9rem;gap:10px;padding:10px 20px;text-align:center;transition:background .15s,color .15s;width:100%}.sidebar-group-trigger:hover{background:#ffffff0f;color:#e2e8f0}.sidebar-chevron{font-size:.7rem;margin-left:auto;opacity:.8}.sidebar-group-list{background:#0003;list-style:none;margin:0;max-height:0;overflow:hidden;padding:0;transition:max-height .42s cubic-bezier(.4,0,.2,1)}.sidebar-group-list li{margin:0}.sidebar-group-list a{color:#94a3b8;display:block;font-size:.85rem;padding:8px 24px;text-align:center;text-decoration:none;transition:background .15s,color .15s}.sidebar-group-list a.active,.sidebar-group-list a:hover{background:#ffffff0f;color:#e2e8f0}.sidebar-group-list a.active{border-left:none;padding-left:24px;text-align:center}.sidebar-footer{border-top:1px solid #ffffff14;flex-shrink:0;padding:12px 20px;position:relative}.sidebar-user{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:8px 10px;transition:background .15s}.sidebar-user:hover{background:#ffffff0f}.sidebar-user-icon{flex-shrink:0;font-size:1rem}.sidebar-user-name{flex:1 1;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-chevron{font-size:.65rem;opacity:.8}.sidebar-user-menu{background:#1e293b;border-radius:6px;bottom:100%;box-shadow:0 4px 12px #0000004d;left:20px;list-style:none;margin:0;max-height:0;opacity:0;overflow:hidden;padding:0;position:absolute;right:20px;transition:max-height .42s cubic-bezier(.4,0,.2,1),opacity .2s ease-out}.sidebar-user-menu[aria-hidden=false]{margin:0 0 4px;opacity:1}.sidebar-user-menu li{margin:0}.sidebar-user-menu a,.sidebar-user-menu button{background:none;border:none;color:#e2e8f0;cursor:pointer;display:block;font-family:inherit;font-size:.85rem;padding:8px 16px;text-align:center;text-decoration:none;width:100%}.sidebar-user-menu a:hover,.sidebar-user-menu button:hover{background:#ffffff0f}