*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.top-20{top:5rem}.z-50{z-index:50}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.-mb-px{margin-bottom:-1px}.mb-0\.5{margin-bottom:.125rem}.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-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-6{margin-top:1.5rem}.block{display:block}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-2{height:.5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.max-h-48{max-height:12rem}.max-h-\[200px\]{max-height:200px}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.min-h-\[400px\]{min-height:400px}.min-h-screen{min-height:100vh}.w-16{width:4rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-96{width:24rem}.w-\[30\%\]{width:30%}.w-\[70\%\]{width:70%}.w-\[90\%\]{width:90%}.w-\[95\%\]{width:95%}.w-full{width:100%}.min-w-full{min-width:100%}.max-w-\[1000px\]{max-width:1000px}.max-w-\[200px\]{max-width:200px}.max-w-\[500px\]{max-width:500px}.max-w-\[700px\]{max-width:700px}.max-w-\[900px\]{max-width:900px}.max-w-md{max-width:28rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.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-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-900{--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-primary-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-primary-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/50{background-color:#00000080}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-blue-800{--tw-bg-opacity: 1;background-color:rgb(30 64 175 / var(--tw-bg-opacity, 1))}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-primary-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/20{background-color:#fff3}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-opacity-50{--tw-bg-opacity: .5}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.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-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pl-4{padding-left:1rem}.pr-4{padding-right:1rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-none{line-height:1}.tracking-wider{letter-spacing:.05em}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-orange-600{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.text-primary-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}html{height:100vh;height:100dvh;max-height:-webkit-fill-available}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;overflow:hidden;position:fixed;width:100%}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.file\:mr-4::file-selector-button{margin-right:1rem}.file\:rounded-md::file-selector-button{border-radius:.375rem}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-blue-50::file-selector-button{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.file\:px-4::file-selector-button{padding-left:1rem;padding-right:1rem}.file\:py-2::file-selector-button{padding-top:.5rem;padding-bottom:.5rem}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-semibold::file-selector-button{font-weight:600}.file\:text-blue-700::file-selector-button{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-emerald-700:hover{--tw-bg-opacity: 1;background-color:rgb(4 120 87 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-400:hover{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-primary-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:text-blue-800:hover{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.hover\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:file\:bg-blue-100::file-selector-button:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.focus\:border-blue-600:focus{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.focus\:border-primary-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1: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(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-blue-600\/10:focus{--tw-ring-color: rgb(37 99 235 / .1)}.focus\:ring-gray-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1))}.focus\:ring-primary-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-gray-400:disabled{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width: 640px){.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-4{gap:1rem}}@media (min-width: 768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}}@media print{.print\:block{display:block}}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: #e74c3c;--toastify-color-transparent: rgba(255, 255, 255, .7);--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-toast-width: 320px;--toastify-toast-background: #fff;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--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( to right, #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__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;padding:4px;width:var(--toastify-toast-width);box-sizing:border-box;color:#fff}.Toastify__toast-container--top-left{top:1em;left:1em}.Toastify__toast-container--top-center{top:1em;left:50%;transform:translate(-50%)}.Toastify__toast-container--top-right{top:1em;right:1em}.Toastify__toast-container--bottom-left{bottom:1em;left:1em}.Toastify__toast-container--bottom-center{bottom:1em;left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width : 480px){.Toastify__toast-container{width:100vw;padding:0;left:0;margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:0;transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:0;transform:translate(0)}.Toastify__toast-container--rtl{right:0;left:initial}}.Toastify__toast{position:relative;min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:4px;box-shadow:0 1px 10px #0000001a,0 2px 15px #0000000d;display:flex;justify-content:space-between;max-height:var(--toastify-toast-max-height);overflow:hidden;font-family:var(--toastify-font-family);cursor:default;direction:ltr;z-index:0}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{margin:auto 0;flex:1 1 auto;padding:6px;display:flex;align-items:center}.Toastify__toast-body>div:last-child{word-break:break-word;flex:1}.Toastify__toast-icon{margin-inline-end:10px;width:20px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.7s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}@media only screen and (max-width : 480px){.Toastify__toast{margin-bottom:0;border-radius:0}}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-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,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;align-self:flex-start}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:5px;z-index:var(--toastify-z-index);opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@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,0,0)}to{opacity:0;transform:translate3d(2000px,0,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,0,0)}to{opacity:0;transform:translate3d(-2000px,0,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,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,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,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-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--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-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: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%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:perspective(400px)}30%{transform:perspective(400px) rotateX(-20deg);opacity:1}to{transform:perspective(400px) rotateX(90deg);opacity:0}}.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:translateZ(0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideOutRight{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(110%,0,0)}}@keyframes Toastify__slideOutLeft{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(-110%,0,0)}}@keyframes Toastify__slideOutDown{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-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--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.splash-container{min-height:100vh;background:linear-gradient(to bottom right,#3b82f6,#2563eb);display:flex;align-items:center;justify-content:center;animation:fadeIn .5s ease-in}.splash-container.fade-out{animation:fadeOut .5s ease-out forwards}.splash-content{text-align:center;animation:slideUp 1s ease-out}.splash-title{font-size:3.5rem;font-weight:700;color:#fff;margin-bottom:1rem;text-shadow:0 4px 6px rgba(0,0,0,.1)}.splash-title-english{font-size:1.5rem;font-weight:600;color:#ffffffe6;margin-bottom:1rem;letter-spacing:.05em}.splash-title-description{font-size:1.5rem;font-weight:400;color:#fffc;margin-top:.5rem;margin-bottom:1rem;letter-spacing:.03em}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.user-type-container{min-height:100vh;background:linear-gradient(to bottom right,#eff6ff,#e0e7ff);display:flex;align-items:center;justify-content:center;padding:3rem 1rem}.user-type-content{max-width:56rem;width:100%}.user-type-header{text-align:center;margin-bottom:3rem}.user-type-logo{width:120px;height:120px;margin:0 auto 1.5rem;display:block;-o-object-fit:contain;object-fit:contain}.user-type-title{font-size:4.25rem;font-weight:700;color:#111827;margin-bottom:1rem}.user-type-title-english{font-size:2.25rem;font-weight:700;color:#111827;margin-bottom:1rem}.user-type-subtitle{font-size:1.25rem;color:#4b5563}.user-type-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:1.5rem}.user-type-card-wrapper{cursor:pointer;transform:translateY(0);transition:transform .2s}.user-type-card-wrapper:hover{transform:scale(1.05)}.user-type-card{background-color:#fff;border-radius:.75rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;padding:2rem;text-align:center;transition:box-shadow .2s}.user-type-card:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.user-type-card-header{display:flex;flex-direction:column;align-items:center;gap:1rem}.user-type-icon{border-radius:9999px;width:5rem;height:5rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;transition:background-color .2s}.icon-blue{background-color:#3b82f6}.icon-blue:hover{background-color:#2563eb}.icon-orange{background-color:#f97316}.icon-orange:hover{background-color:#ea580c}.icon-green{background-color:#10b981}.icon-green:hover{background-color:#059669}.icon-purple{background-color:#a855f7}.icon-purple:hover{background-color:#9333ea}.icon-emoji{font-size:1.875rem}.user-type-card-title{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:.75rem}.user-type-card-description{color:#4b5563;font-size:.875rem;line-height:1.625}.user-type-footer{text-align:center;margin-top:3rem}.apk-download-section{margin-bottom:1.5rem}.apk-download-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:.875rem 1.75rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px -1px #3b82f64d}.apk-download-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 6px 12px -2px #3b82f666;transform:translateY(-2px)}.apk-download-btn:active{transform:translateY(0);box-shadow:0 2px 4px -1px #3b82f64d}.download-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.download-modal{background:#fff;border-radius:1rem;padding:2rem;max-width:28rem;width:90%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.download-modal-title{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:1rem;text-align:center}.download-modal-message{color:#4b5563;font-size:1rem;line-height:1.625;margin-bottom:1.5rem;text-align:center}.download-modal-buttons{display:flex;gap:1rem;justify-content:center}.download-modal-btn{padding:.75rem 2rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.download-modal-btn.confirm{background-color:#3b82f6;color:#fff}.download-modal-btn.confirm:hover{background-color:#2563eb}.download-modal-btn.cancel{background-color:#e5e7eb;color:#374151}.download-modal-btn.cancel:hover{background-color:#d1d5db}.user-type-footer-links{display:flex;align-items:center;justify-content:center;gap:.75rem}.user-type-footer-text{font-size:.875rem;color:#6b7280;margin:0}.footer-separator{color:#d1d5db;font-size:.875rem}.privacy-policy-link{font-size:.875rem;color:#3b82f6;text-decoration:none;transition:color .2s}.privacy-policy-link:hover{color:#2563eb;text-decoration:underline}@media (max-width: 767px){.user-type-grid{gap:.75rem}.user-type-card{padding:1rem;text-align:left}.user-type-card-header{flex-direction:row;align-items:center;gap:1rem}.user-type-icon{width:3.5rem;height:3.5rem;margin:0;flex-shrink:0}.user-type-card-title{font-size:1.25rem;margin-bottom:0;text-align:left}.user-type-card-description{font-size:.8rem;line-height:1.4;padding-left:.5rem}}@media (min-width: 640px){.user-type-container{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width: 768px){.user-type-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.user-type-container{padding-left:2rem;padding-right:2rem}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#f9fafb;padding:3rem 1rem}.login-content{max-width:28rem;width:100%}.login-header{margin-bottom:2rem}.login-title{margin-top:1.5rem;text-align:center;font-size:1.875rem;font-weight:800;color:#111827}.login-subtitle{margin-top:.5rem;text-align:center;font-size:.875rem;color:#4b5563}.login-form{margin-top:2rem}.login-form-group{border-radius:.375rem;box-shadow:0 1px 2px #0000000d}.login-form-field{margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.login-input-field{position:relative;display:block;width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;color:#111827;font-size:.875rem}.login-input-field::-moz-placeholder{color:#6b7280}.login-input-field::placeholder{color:#6b7280}.login-input-field:focus{outline:none;ring:2px;ring-color:#3b82f6;border-color:#3b82f6;z-index:10}.login-input-top{border-radius:.375rem .375rem 0 0}.login-input-bottom{border-radius:0 0 .375rem .375rem}.login-links{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem;font-size:.875rem}.link-button{background:none;border:none;cursor:pointer;padding:0}.link-register{color:#16a34a;font-weight:500}.link-register:hover{color:#15803d;text-decoration:underline}.link-find{color:#2563eb}.link-find:hover{color:#1d4ed8;text-decoration:underline}.link-separator{color:#d1d5db}@media (min-width: 640px){.login-container{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width: 1024px){.login-container{padding-left:2rem;padding-right:2rem}}.link-disabled{color:#9ca3af!important;cursor:not-allowed!important;opacity:.6}.link-disabled:hover{color:#9ca3af!important;text-decoration:none!important}.link-button:disabled{cursor:not-allowed}.email-verification-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.email-verification-modal{background:#fff;border-radius:12px;padding:0;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000026}.verification-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid #e5e7eb}.verification-header h2{margin:0;font-size:24px;font-weight:600;color:#111827}.close-button{background:none;border:none;font-size:32px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s}.close-button:hover{color:#111827}.verification-content{padding:24px}.email-display{text-align:center;margin-bottom:24px}.email-display p{margin:0 0 8px;color:#6b7280;font-size:14px}.email-display strong{color:#111827;font-size:16px}.timer-display{text-align:center;margin-bottom:24px;padding:12px;background-color:#f3f4f6;border-radius:8px}.timer-display span{font-size:18px;font-weight:600;color:#059669}.timer-warning{color:#dc2626!important;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.code-input-group{margin-bottom:24px}.code-input-group label{display:block;margin-bottom:8px;font-weight:500;color:#374151;font-size:14px}.code-input{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:24px;text-align:center;letter-spacing:8px;font-weight:600;transition:border-color .2s}.code-input:focus{outline:none;border-color:#3b82f6}.code-input:disabled{background-color:#f3f4f6;cursor:not-allowed}.verification-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.verify-button,.resend-button{width:100%;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.verify-button{background-color:#3b82f6;color:#fff}.verify-button:hover:not(:disabled){background-color:#2563eb}.verify-button:disabled{background-color:#9ca3af;cursor:not-allowed}.resend-button{background-color:#fff;color:#6b7280;border:2px solid #e5e7eb}.resend-button:hover:not(:disabled){background-color:#f9fafb;border-color:#d1d5db}.verification-notice{background-color:#eff6ff;border-left:4px solid #3b82f6;padding:16px;border-radius:4px}.verification-notice p{margin:0;font-size:14px;color:#1e40af;line-height:1.6}@media (max-width: 640px){.email-verification-modal{width:95%}.verification-header h2{font-size:20px}.code-input{font-size:20px;letter-spacing:6px}}.register-container{min-height:100vh;height:100vh;display:flex;align-items:flex-start;justify-content:center;background-color:#f9fafb;padding:3rem 1rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.register-content{max-width:28rem;width:100%}.register-header{margin-bottom:2rem}.back-button{margin-bottom:1rem;display:flex;align-items:center;font-size:.875rem;color:#4b5563;background:none;border:none;cursor:pointer;padding:0}.back-button:hover{color:#111827}.register-title{margin-top:1.5rem;text-align:center;font-size:1.875rem;font-weight:800;color:#111827}.register-subtitle{margin-top:.5rem;text-align:center;font-size:.875rem;color:#4b5563}.register-form{margin-top:2rem}.register-form-fields{border-radius:.375rem;box-shadow:0 1px 2px #0000000d}.register-form-field{margin-bottom:1rem}.register-field-label{display:block;font-size:.875rem;font-weight:500;color:#374151}.register-input-field{margin-top:.25rem;display:block;width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;box-shadow:0 1px 2px #0000000d;color:#111827;font-size:.875rem}.register-input-field:focus{outline:none;ring:2px;ring-color:#3b82f6;border-color:#3b82f6}.register-input-field:disabled{background-color:#f3f4f6;cursor:not-allowed}.register-select-field{margin-top:.25rem;display:block;width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;box-shadow:0 1px 2px #0000000d;color:#111827;font-size:.875rem}.register-select-field:focus{outline:none;ring:2px;ring-color:#3b82f6;border-color:#3b82f6}.register-select-field:disabled{background-color:#f3f4f6;cursor:not-allowed}.error-message{margin-top:.25rem;font-size:.875rem;color:#dc2626}.submit-button-wrapper{margin-top:1.5rem}.submit-button{position:relative;width:100%;display:flex;justify-content:center;padding:.5rem 1rem;border:1px solid transparent;font-size:.875rem;font-weight:500;border-radius:.375rem;color:#fff;background-color:#2563eb;cursor:pointer}.submit-button:hover{background-color:#1d4ed8}.submit-button:focus{outline:none;ring:2px;ring-offset:2px;ring-color:#3b82f6}.submit-button:disabled{opacity:.5;cursor:not-allowed}@media (min-width: 640px){.register-container{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width: 1024px){.register-container{padding-left:2rem;padding-right:2rem}}.restaurant-type-tabs{display:flex;gap:1rem;margin-bottom:2rem;border-radius:.5rem;background-color:#e5e7eb;padding:.25rem}.restaurant-type-tab{flex:1;padding:.75rem 1rem;font-size:.875rem;font-weight:600;color:#4b5563;background-color:transparent;border:none;border-radius:.375rem;cursor:pointer;transition:all .2s}.restaurant-type-tab:hover{color:#111827;background-color:#d1d5db}.restaurant-type-tab.active{color:#fff;background-color:#3b82f6;box-shadow:0 1px 3px #0000001a}.restaurant-search-section{margin-bottom:2rem;padding:1.5rem;background-color:#fff;border-radius:.5rem;border:1px solid #e5e7eb}.search-title{font-size:1rem;font-weight:600;color:#111827;margin-bottom:.5rem}.search-description{font-size:.875rem;color:#6b7280;margin-bottom:1rem}.search-input-group{display:flex;gap:.5rem}.search-input{flex:1;padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;transition:border-color .2s}.search-button{padding:.625rem 1.5rem;background-color:#3b82f6;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap}.search-button:hover:not(:disabled){background-color:#2563eb}.search-button:disabled{background-color:#9ca3af;cursor:not-allowed}.search-results{margin-top:1rem;border-top:1px solid #e5e7eb;padding-top:1rem}.search-results-title{font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.75rem}.search-results-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.search-result-item{padding:1rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;cursor:pointer;transition:all .2s}.search-result-item:hover{background-color:#eff6ff;border-color:#3b82f6}.search-result-name{font-size:.9375rem;font-weight:600;color:#111827;margin-bottom:.25rem}.search-result-business,.search-result-owner{font-size:.8125rem;color:#6b7280}.qr-preview-container{margin-bottom:1rem;display:flex;justify-content:center}.qr-preview-image{max-width:200px;max-height:200px;border:2px solid #e5e7eb;border-radius:.5rem}.qr-upload-input{display:block;width:100%;padding:.625rem;font-size:.875rem;border:1px solid #d1d5db;border-radius:.375rem;background-color:#fff;cursor:pointer}.qr-upload-input:hover{border-color:#3b82f6}.field-hint{margin-top:.5rem;font-size:.75rem;color:#6b7280}.search-loading{position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:.875rem;color:#6b7280;font-style:italic}.search-input-group{position:relative}.email-verification-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.email-verification-content{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;padding:40px;width:100%;max-width:500px;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.verification-header{text-align:center;margin-bottom:30px}.verification-header h2{margin:0 0 10px;color:#333;font-size:28px}.verification-subtitle{color:#666;font-size:14px;margin:0;word-break:break-word}.verification-form{display:flex;flex-direction:column;gap:20px}.verification-icon{font-size:60px;text-align:center;margin:20px 0}.verification-form-field{display:flex;flex-direction:column;gap:8px}.verification-field-label{font-weight:600;color:#333;font-size:14px}.verification-input-field{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:24px;text-align:center;letter-spacing:8px;font-weight:700;transition:border-color .3s}.verification-input-field:focus{outline:none;border-color:#667eea}.verification-button{padding:14px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.verification-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.verification-button:disabled{opacity:.6;cursor:not-allowed}.verification-actions{display:flex;flex-direction:column;gap:10px;margin-top:10px}.resend-button,.back-to-login-button{padding:10px;background:transparent;color:#667eea;border:2px solid #667eea;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.resend-button:hover:not(:disabled),.back-to-login-button:hover{background:#667eea;color:#fff}.resend-button:disabled{opacity:.5;cursor:not-allowed}.verification-info{background:#f8f9fa;padding:20px;border-radius:8px;margin-top:20px}.verification-info p{margin:0 0 10px;font-weight:600;color:#333}.verification-info ul{margin:0;padding-left:20px;color:#666;font-size:14px}.verification-info li{margin:5px 0}.verification-loading{text-align:center;padding:60px 20px}.spinner{width:50px;height:50px;margin:0 auto 20px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.verification-loading p{color:#666;font-size:16px}@media (max-width: 768px){.email-verification-content{padding:30px 20px}.verification-header h2{font-size:24px}.verification-input-field{font-size:20px;letter-spacing:6px}}.dashboard-container{min-height:100vh;display:flex;align-items:center;justify-content:center}.dashboard-content{text-align:center}.dashboard-loading-spinner{animation:spin 1s linear infinite;border-radius:9999px;height:8rem;width:8rem;border-bottom:2px solid #2563eb;margin:0 auto}.loading-text{margin-top:1rem;font-size:1.125rem;color:#4b5563}.message-box-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999;animation:message-box-fade-in .2s ease-out}@keyframes message-box-fade-in{0%{opacity:0}to{opacity:1}}.message-box{background-color:#fff;border-radius:.75rem;box-shadow:0 10px 25px #0003;min-width:400px;max-width:600px;max-height:80vh;overflow-y:auto;animation:message-box-slide-in .3s ease-out}@keyframes message-box-slide-in{0%{transform:translateY(-50px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@media (max-width: 640px){.message-box{min-width:90%;max-width:90%}}.message-box-header{padding:1.5rem;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;gap:.75rem}.message-box-icon{font-size:1.5rem;line-height:1}.message-box-title{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.message-box-content{padding:1.5rem}.message-box-message{margin:0;font-size:.9375rem;line-height:1.6;color:#374151;white-space:pre-wrap}.message-box-actions{padding:1rem 1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:.75rem}.message-box-btn{padding:.625rem 1.25rem;border:none;border-radius:.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;min-width:80px}.message-box-btn-cancel{background-color:#f3f4f6;color:#374151}.message-box-btn-cancel:hover{background-color:#e5e7eb}.message-box-btn-confirm{background-color:#3b82f6;color:#fff}.message-box-btn-confirm:hover{background-color:#2563eb;box-shadow:0 4px 6px #3b82f64d}.message-box-warning .message-box-header{background-color:#fffbeb;border-bottom-color:#fde68a}.message-box-warning .message-box-btn-confirm{background-color:#f59e0b}.message-box-warning .message-box-btn-confirm:hover{background-color:#d97706;box-shadow:0 4px 6px #f59e0b4d}.message-box-alert .message-box-header{background-color:#fef2f2;border-bottom-color:#fecaca}.message-box-alert .message-box-btn-confirm{background-color:#ef4444}.message-box-alert .message-box-btn-confirm:hover{background-color:#dc2626;box-shadow:0 4px 6px #ef44444d}.message-box-info .message-box-header{background-color:#eff6ff;border-bottom-color:#bfdbfe}.message-box-confirm .message-box-header{background-color:#f9fafb;border-bottom-color:#e5e7eb}.settlement-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem;color:#6b7280}.settlement-loading-spinner{width:2rem;height:2rem;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:settlement-spin 1s linear infinite}@keyframes settlement-spin{to{transform:rotate(360deg)}}.settlement-container{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.settlement-table-container{overflow-x:auto}.settlement-table{width:100%;border-collapse:collapse}.settlement-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}.settlement-table th{padding:.75rem 1rem;text-align:left;font-size:.875rem;font-weight:600;color:#374151;white-space:nowrap}.settlement-table td{padding:.75rem 1rem;font-size:.875rem;color:#111827;border-bottom:1px solid #e5e7eb}.settlement-table tbody tr:hover{background-color:#f9fafb}.settlement-table tbody tr:last-child td{border-bottom:none}.settlement-pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;padding:1rem}.settlement-pagination-button{padding:.5rem .75rem;background-color:#fff;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:all .2s}.settlement-pagination-button:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.settlement-pagination-button:disabled{opacity:.5;cursor:not-allowed}.settlement-pagination-button.active{background-color:#3b82f6;color:#fff;border-color:#3b82f6}.settlement-table-container::-webkit-scrollbar{width:8px;height:8px}.settlement-table-container::-webkit-scrollbar-track{background:#f1f5f9}.settlement-table-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.settlement-table-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width: 640px){.settlement-container{padding:1rem}.settlement-table th,.settlement-table td{padding:.5rem;font-size:.8125rem}}.meal-allocation-container{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow-y:auto;overflow-x:hidden;max-height:100vh}.meal-allocation-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem;color:#6b7280}.settlement-meal-allocation-loading-spinner{width:2rem;height:2rem;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.meal-allocation-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border-bottom:1px solid #e5e7eb}.meal-allocation-title{font-size:1.25rem;font-weight:600;color:#111827;margin:0;white-space:nowrap}.meal-allocation-description{font-size:.875rem;color:#6b7280;margin:0;flex:1}.meal-allocation-form{padding:1rem}.meal-allocation-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}@media (max-width: 768px){.meal-allocation-header{flex-direction:column;align-items:flex-start}.meal-allocation-title{white-space:normal}.meal-allocation-inputs{grid-template-columns:1fr}.input-group{flex-direction:column;align-items:flex-start}.input-group label{margin-bottom:.5rem}.input-group input,.input-group select{width:100%}}.input-group{display:flex;align-items:center;gap:.75rem}.input-group label{font-size:.875rem;font-weight:500;color:#374151;white-space:nowrap;min-width:-moz-fit-content;min-width:fit-content}.input-group input,.input-group select{flex:1;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;transition:all .2s}.input-group input:focus,.input-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.input-with-unit{display:flex;align-items:center;gap:.5rem}.input-with-unit input{flex:1}.input-with-unit .unit{font-size:.875rem;color:#6b7280;font-weight:500}.meal-allocation-summary{display:flex;gap:1rem;padding:.7rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:1rem}@media (max-width: 768px){.meal-allocation-summary{flex-direction:column}}.summary-item{flex:1;display:flex;align-items:center;gap:.5rem}.summary-label{font-size:.875rem;color:#6b7280;font-weight:500;white-space:nowrap}.summary-value{font-size:1.125rem;font-weight:600;color:#111827}.summary-value.highlight{color:#3b82f6}.summary-value.success{color:#10b981}.summary-value.primary{color:#3b82f6}.meal-allocation-users{border:1px solid #e5e7eb;border-radius:.5rem;overflow:hidden;margin-bottom:1.5rem}.users-header{display:flex;justify-content:space-between;align-items:center;padding:.7rem;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;gap:1rem;flex-wrap:wrap}@media (max-width: 768px){.users-header{flex-direction:column;align-items:stretch}}.users-header-left{display:flex;align-items:center;gap:1rem}.users-header-left h4{font-size:1rem;font-weight:600;color:#111827;margin:0}.users-count{font-size:.875rem;color:#6b7280}.users-header-right{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.search-input{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;min-width:200px;transition:all .2s}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.btn-select-all{padding:.5rem 1rem;background-color:#3b82f6;color:#fff;border:none;border-radius:.375rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap}.btn-select-all:hover{background-color:#2563eb}.users-list{max-height:400px;overflow-y:auto}.empty-state{padding:3rem;text-align:center;color:#6b7280}.user-item{display:flex;align-items:center;padding:1rem;gap:.75rem;border-bottom:1px solid #e5e7eb;cursor:pointer;transition:all .2s}.user-item:last-child{border-bottom:none}.user-item:hover{background-color:#f9fafb}.user-item.selected{background-color:#eff6ff;border-left:3px solid #3b82f6}.user-checkbox{display:flex;align-items:center}.user-checkbox input[type=checkbox]{width:1.125rem;height:1.125rem;cursor:pointer;accent-color:#3b82f6}.user-info{flex:1;display:grid;grid-template-columns:1fr 3fr;gap:.35rem;align-items:center}.user-name{font-size:.9375rem;font-weight:500;color:#111827;white-space:nowrap}.user-details{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:.15rem;font-size:.8125rem;color:#6b7280}.user-email{color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.separator{color:#d1d5db}.user-dept{color:#3b82f6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-team{color:#10b981;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meal-allocation-actions{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;flex-wrap:wrap}.btn-submit,.meal-allocation-actions .btn-submit{padding:.5rem 1rem!important;background-color:#3b82f6;color:#fff;border:none;border-radius:.375rem!important;font-size:1rem!important;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap;height:auto!important;display:inline-block}.btn-submit:hover:not(:disabled),.meal-allocation-actions .btn-submit:hover:not(:disabled){background-color:#2563eb;box-shadow:none}.btn-submit:disabled,.meal-allocation-actions .btn-submit:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.6}.btn-cancel-issuance,.meal-allocation-actions .btn-cancel-issuance{padding:.5rem 1rem!important;background-color:#ef4444;color:#fff;border:none;border-radius:.375rem!important;font-size:1rem!important;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap;height:auto!important;display:inline-block}.btn-cancel-issuance:hover:not(:disabled),.meal-allocation-actions .btn-cancel-issuance:hover:not(:disabled){background-color:#dc2626}.btn-cancel-issuance:disabled,.meal-allocation-actions .btn-cancel-issuance:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.6}.lost-ticket-section{margin-top:1rem;padding:1.5rem;background-color:#fff8e1;border:2px solid #ffd54f;border-radius:.5rem;display:flex;flex-direction:column;gap:.8rem}.form-section.lost-ticket-section{background-color:#fff8e1;border:2px solid #ffd54f}.lost-ticket-header h4{font-size:1rem;font-weight:600;color:#f57c00;margin-bottom:.5rem}.lost-ticket-description{font-size:.8125rem;color:#e65100;margin-bottom:1rem;line-height:1.5}.lost-ticket-form{display:flex;gap:1rem;align-items:flex-end}@media (max-width: 768px){.lost-ticket-form{flex-direction:column;align-items:stretch}}.lost-ticket-form .form-group{flex:1}.lost-ticket-select{width:100%;padding:.5rem .75rem;border:1px solid #ffb74d;border-radius:.375rem;font-size:.875rem;background-color:#fff;transition:all .2s;height:37px}.lost-ticket-select:focus{outline:none;border-color:#ff9800;box-shadow:0 0 0 3px #ff98001a}.btn-lost-ticket{padding:.5rem 1rem;background-color:#ff9800;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap;height:37px}.btn-lost-ticket:hover:not(:disabled){background-color:#f57c00;box-shadow:0 4px 6px -1px #f57c004d}.btn-lost-ticket:disabled{background-color:#ffb74d;cursor:not-allowed;opacity:.6}.lost-ticket-badge{background-color:#ff9800!important;color:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.confirmation-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:16px}.confirmation-controls .search-input{flex:1;max-width:400px;padding:10px 16px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.confirmation-controls .search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.confirmation-actions{display:flex;gap:12px}.confirmation-actions .btn-select-all,.confirmation-actions .btn-submit{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.confirmation-actions .btn-select-all{background-color:#6b7280;color:#fff}.confirmation-actions .btn-select-all:hover:not(:disabled){background-color:#4b5563}.confirmation-actions .btn-submit{background-color:#3b82f6;color:#fff}.confirmation-actions .btn-submit:hover:not(:disabled){background-color:#2563eb}.confirmation-actions button:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.6}.confirmation-table-wrapper{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.confirmation-table{width:100%;border-collapse:collapse}.confirmation-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}.confirmation-table th{padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:#374151;white-space:nowrap}.confirmation-table th.checkbox-col{width:45px;text-align:center}.confirmation-table th.number-col{width:100px;text-align:center}.confirmation-table th.input-col,.confirmation-table th.status-col{width:110px;text-align:center}.confirmation-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background-color .2s}.confirmation-table tbody tr:hover:not(.confirmed){background-color:#f9fafb}.confirmation-table tbody tr.selected{background-color:#eff6ff}.confirmation-table tbody tr.confirmed{background-color:#f0fdf4;opacity:.8;cursor:default}.confirmation-table tbody tr.confirmed:hover{background-color:#dcfce7}.confirmation-table td{padding:12px 16px;font-size:14px;color:#1f2937;vertical-align:middle}.confirmation-table td.checkbox-col{text-align:center}.confirmation-table td.checkbox-col input[type=checkbox]{cursor:pointer;width:16px;height:16px}.confirmation-table td.checkbox-col input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.user-info-cell{min-width:180px;max-width:220px}.user-info-content{display:flex;flex-direction:column;gap:4px}.user-name-row{display:flex;align-items:center;gap:8px}.confirmation-table .user-name{font-size:15px;font-weight:600;color:#111827}.user-details-row{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280}.badge{display:inline-block;padding:3px 8px;border-radius:12px;font-size:11px;font-weight:500}.badge-warning{background-color:#fef3c7;color:#92400e}.badge-success{background-color:#dbeafe;color:#1e40af}.quantity-value{font-size:15px;font-weight:600;color:#111827}.quantity-value.warning{color:#f59e0b}.quantity-value.success{color:#10b981}.quantity-value.danger{color:#ef4444}.quantity-value.confirmed{color:#059669}.number-col,.input-col{text-align:center}.input-wrapper{display:inline-flex;align-items:center;gap:6px;justify-content:center}.quantity-input{width:80px;padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:14px;text-align:center;font-weight:500}.quantity-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.status-col{text-align:center}.confirmed-info{display:flex;flex-direction:column;align-items:center;gap:6px}.confirmed-date{font-size:12px;color:#6b7280}.btn-cancel-confirmation{padding:4px 12px;background-color:#ef4444;color:#fff;border:none;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-cancel-confirmation:hover{background-color:#dc2626;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.btn-cancel-confirmation:active{transform:translateY(0)}@media (max-width: 1200px){.confirmation-table{font-size:13px}.confirmation-table th,.confirmation-table td{padding:10px 12px}.user-info-cell{min-width:240px}.quantity-input{width:70px}}@media (max-width: 768px){.user-info{flex-direction:column;align-items:flex-start;gap:.25rem}.user-name{white-space:normal}.confirmation-controls{flex-direction:column;align-items:stretch}.confirmation-controls .search-input{max-width:100%}.confirmation-actions{justify-content:stretch}.confirmation-actions button{flex:1}.confirmation-table-wrapper{overflow-x:auto}.confirmation-table{min-width:800px}.search-input{min-width:150px}}.users-list::-webkit-scrollbar{width:8px;height:8px}.users-list::-webkit-scrollbar-track{background:#f1f5f9}.users-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.users-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}._btnPrint_1atul_11{padding:.5rem 1rem;font-size:1rem;font-weight:500;border-radius:.375rem;cursor:pointer;transition:all .2s;border:none;background-color:#10b981;color:#fff}._btnPrint_1atul_11:hover{background-color:#059669;box-shadow:0 4px 6px -1px #0000001a}._btnBack_1atul_28{padding:.5rem 1rem;font-size:1rem;font-weight:500;border-radius:.375rem;cursor:pointer;transition:all .2s;border:none;background-color:#6b7280;color:#fff}._btnBack_1atul_28:hover{background-color:#4b5563}._ticketPreviewContainer_1atul_48{width:100%;max-height:58vh;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;align-items:center}._previewActions_1atul_59{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;margin-bottom:1rem;padding:1rem;background-color:#f9fafb;border-radius:.5rem}._noPrint_1atul_71{display:flex;gap:10px;justify-content:center;padding:20px;background-color:#f3f4f6;border-bottom:2px solid #e5e7eb;position:sticky;top:0;z-index:10}._printButton_1atul_83,._closeButton_1atul_84{padding:12px 24px;border:2px solid transparent;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;min-width:120px;white-space:nowrap;line-height:1.5}._printButton_1atul_83{background-color:#3b82f6;color:#fff;border-color:#3b82f6}._printButton_1atul_83:hover{background-color:#2563eb;border-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px #3b82f64d}._closeButton_1atul_84{background-color:#6b7280;color:#fff;border-color:#6b7280}._closeButton_1atul_84:hover{background-color:#4b5563;border-color:#4b5563;transform:translateY(-1px);box-shadow:0 4px 6px #6b72804d}._printButton_1atul_83:active,._closeButton_1atul_84:active{transform:translateY(0)}._colorPickerButtons_1atul_129{display:flex;gap:.5rem;align-items:center;margin-left:1rem}._colorBtn_1atul_136{width:32px;height:32px;border:2px solid #d1d5db;border-radius:4px;cursor:pointer;transition:all .2s;padding:0}._colorBtn_1atul_136:hover{transform:scale(1.1);border-color:#374151;box-shadow:0 2px 8px #0003}._colorBtn_1atul_136:active{transform:scale(.95)}._printArea_1atul_157{flex:1;overflow:visible;min-height:0;padding:20px;display:flex;flex-direction:column;align-items:center;gap:20px;width:100%}._a4Page_1atul_169{width:180mm;height:277mm;padding:5mm;background-color:#fff;box-shadow:0 2px 8px #0000001a;display:grid;grid-template-columns:repeat(4,36mm);grid-template-rows:repeat(5,53mm);gap:0;page-break-after:always;box-sizing:border-box;overflow:hidden;flex-shrink:0}._a4PageExpense_1atul_185{width:210mm;height:297mm;padding:10mm;background-color:#fff;box-shadow:0 2px 8px #0000001a;box-sizing:border-box;margin-bottom:20px}._pageBreak_1atul_195{page-break-after:always}._mealTicket_1atul_200{position:relative;border:3px solid #3b82f6;background-color:#fff;overflow:hidden;display:flex;flex-direction:column;width:100%;height:100%;page-break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}._ticketBackground_1atul_214{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;-o-object-fit:cover!important;object-fit:cover!important;z-index:0!important;pointer-events:none!important}._ticketContent_1atul_225{position:relative;z-index:1;padding:4px;display:flex;flex-direction:column;width:100%;height:100%;background-color:#fff3;box-sizing:border-box}._ticketHeader_1atul_237{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:4px;margin-bottom:4px}._ticketBadge_1atul_246{background-color:#3b82f6;color:#fff;padding:3px 6px;border-radius:3px;margin:0;font-size:10px;font-weight:600;white-space:nowrap;-webkit-print-color-adjust:exact;print-color-adjust:exact}._ticketInfo_1atul_259{flex:0 0 auto;font-size:12px;line-height:1.3;margin-bottom:2px}._ticketInfo_1atul_259 p{margin:1px 0;padding-left:10px;color:#374151}._ticketInfo_1atul_259 p span{text-shadow:-1px -1px 0 rgba(255,255,255,.6),1px -1px 0 rgba(255,255,255,.7),-1px 1px 0 rgba(255,255,255,.8),1px 1px 0 rgba(255,255,255,.9),-1px 0 0 rgba(255,255,255,.8),1px 0 0 rgba(255,255,255,.7),0 -1px 0 rgba(255,255,255,.6),0 1px 0 rgba(255,255,255,.5)}._ticketInfo_1atul_259 strong{color:#111827;font-weight:600}._ticketQr_1atul_289{display:flex;justify-content:center;align-items:center;padding:2px;margin:5px;background-color:#fff;border-radius:4px;max-height:80px;width:80px;height:80px;min-width:70px;min-height:70px}._ticketQr_1atul_289 svg{display:block;width:80px;height:80px}._expenseDocumentContainer_1atul_314{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}._expenseDocumentHeader_1atul_321{padding:1.5rem;border-bottom:1px solid #e5e7eb}._expenseDocumentTitle_1atul_326{font-size:1.25rem;font-weight:600;color:#111827;margin-bottom:.5rem}._expenseDocumentDescription_1atul_333{font-size:.875rem;color:#6b7280}._expenseDocumentForm_1atul_338{padding:1.5rem;display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap}._expenseDocumentForm_1atul_338 ._inputGroup_1atul_346{flex:1;min-width:200px}._expenseDocumentForm_1atul_338 ._inputGroup_1atul_346 label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}._expenseDocumentForm_1atul_338 ._inputGroup_1atul_346 input{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem}._expenseDocumentForm_1atul_338 ._btnSearch_1atul_367{padding:.5rem 1.5rem;background-color:#3b82f6;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s;height:-moz-fit-content;height:fit-content}._expenseDocumentForm_1atul_338 ._btnSearch_1atul_367:hover:not(:disabled){background-color:#2563eb}._expenseDocumentForm_1atul_338 ._btnSearch_1atul_367:disabled{background-color:#9ca3af;cursor:not-allowed}._expenseDocumentInfo_1atul_389{padding:1.5rem;border-top:1px solid #e5e7eb}._documentHeaderSection_1atul_394{margin-bottom:1.5rem}._documentTitle_1atul_398{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:1rem;text-align:center}._documentMeta_1atul_406{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap;padding:1rem;background-color:#f9fafb;border-radius:.375rem}._metaItem_1atul_416{display:flex;gap:.5rem;align-items:center}._metaLabel_1atul_422{font-size:.875rem;font-weight:600;color:#6b7280}._metaValue_1atul_428{font-size:.875rem;color:#111827}._expenseTableWrapper_1atul_433{width:100%;overflow-x:auto;margin-top:1.5rem;border:1px solid #e5e7eb;border-radius:.375rem}._expenseTable_1atul_433{width:100%;border-collapse:collapse}._expenseTable_1atul_433 thead{background-color:#f9fafb}._expenseTable_1atul_433 th{padding:.75rem 1rem;text-align:left;font-size:.875rem;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}._expenseTable_1atul_433 th:nth-child(1),._expenseTable_1atul_433 td:nth-child(1){width:16%}._expenseTable_1atul_433 th:nth-child(2),._expenseTable_1atul_433 td:nth-child(2){width:13%}._expenseTable_1atul_433 th:nth-child(3),._expenseTable_1atul_433 td:nth-child(3){width:13%}._expenseTable_1atul_433 th:nth-child(4),._expenseTable_1atul_433 td:nth-child(4){width:13%}._expenseTable_1atul_433 th:nth-child(5),._expenseTable_1atul_433 td:nth-child(5){width:13%}._expenseTable_1atul_433 th:nth-child(6),._expenseTable_1atul_433 td:nth-child(6){width:15%}._expenseTable_1atul_433 th:nth-child(7),._expenseTable_1atul_433 td:nth-child(7){width:17%}._expenseTable_1atul_433 tbody tr{border-bottom:1px solid #e5e7eb}._expenseTable_1atul_433 tbody tr:hover{background-color:#f9fafb}._expenseTable_1atul_433 tbody tr._restaurantHeaderRow_1atul_509{background-color:#f3f4f6}._expenseTable_1atul_433 tbody tr._restaurantHeaderRow_1atul_509:hover{background-color:#e5e7eb}._expenseTable_1atul_433 tbody tr._restaurantSubtotalRow_1atul_517{background-color:#fef3c7;font-weight:600}._expenseTable_1atul_433 tbody tr._restaurantSubtotalRow_1atul_517:hover{background-color:#fde68a}._expenseTable_1atul_433 tbody tr._userRow_1atul_526:hover{background-color:#f9fafb}._expenseTable_1atul_433 td{padding:.75rem 1rem;font-size:.875rem;color:#374151}._expenseTable_1atul_433 td._restaurantName_1atul_536{font-weight:700;color:#111827;font-size:.9rem}._expenseTable_1atul_433 td._userName_1atul_542{padding-left:2rem}._expenseTable_1atul_433 td._subtotalLabel_1atul_546{padding-left:2rem;font-weight:600}._expenseTable_1atul_433 td._subtotalValue_1atul_551{font-weight:600}._expenseTable_1atul_433 ._emptyCell_1atul_555{text-align:center;padding:2rem;color:#9ca3af}._expenseTable_1atul_433 ._amountCell_1atul_561{font-weight:600;text-align:right}._expenseTable_1atul_433 tfoot{background-color:#f3f4f6;font-weight:600}._expenseTable_1atul_433 tfoot td{padding:1rem;font-size:.875rem;color:#111827;border-top:2px solid #d1d5db}._expenseTable_1atul_433 ._totalRow_1atul_578{background-color:#f3f4f6}._expenseTable_1atul_433 ._totalAmount_1atul_582{font-size:1rem;font-weight:700;color:#ef4444;text-align:right}._expenseDocumentActions_1atul_589{padding:1.5rem;display:flex;gap:1rem;justify-content:center;border-top:1px solid #e5e7eb}._btnDownload_1atul_597{padding:.75rem 1.5rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}._btnPdf_1atul_610{background-color:#dc2626;color:#fff}._btnPdf_1atul_610:hover{background-color:#b91c1c;transform:translateY(-2px);box-shadow:0 4px 6px #dc26264d}._btnXlsx_1atul_621{background-color:#059669;color:#fff}._btnXlsx_1atul_621:hover{background-color:#047857;transform:translateY(-2px);box-shadow:0 4px 6px #0596694d}._expenseForm_1atul_632{max-width:800px;margin:0 auto}._expensePreviewContainer_1atul_637{width:100%;max-height:calc(100vh - 100px);overflow-y:auto;display:flex;flex-direction:column}._expensePreviewContainer_1atul_637 ._previewActions_1atul_59{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem;padding:1rem;background-color:#f9fafb;border-radius:.5rem}._expensePreviewContainer_1atul_637 ._printArea_1atul_157{max-width:210mm;margin:0 auto;background-color:#fff;box-shadow:0 2px 8px #0000001a;padding:20mm}@media print{@page{size:A4;margin:0}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}html{height:auto;overflow:visible}body{overflow:visible;display:block;background-color:#fff;margin:0;padding:0}._noPrint_1atul_71,._previewActions_1atul_59,._mealTicketPrintContainer_1atul_694>*:not(._ticketPreviewContainer_1atul_48){display:none!important}._ticketPreviewContainer_1atul_48,._printArea_1atul_157{padding:0;overflow:visible;gap:0;margin:0;width:100%;box-shadow:none}._a4Page_1atul_169{padding:5mm;margin:0;page-break-after:always;page-break-inside:avoid}._mealTicket_1atul_200{page-break-inside:avoid;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}._pageBreak_1atul_195{page-break-after:always}._a4PageExpense_1atul_185{box-shadow:none;margin-bottom:0}._expensePreviewContainer_1atul_637 ._previewActions_1atul_59,._expenseDocumentContainer_1atul_314>*:not(._expensePreviewContainer_1atul_637){display:none!important}._expensePreviewContainer_1atul_637 ._printArea_1atul_157{max-width:none;width:100%;box-shadow:none;margin:0;padding:0}._expenseDocumentInfo_1atul_389{page-break-inside:avoid}._expenseTable_1atul_433{page-break-inside:auto}._expenseTable_1atul_433 tr{page-break-inside:avoid;page-break-after:auto}._expenseTable_1atul_433 thead{display:table-header-group}._expenseTable_1atul_433 tfoot{display:table-footer-group}}@media (max-width: 640px){._a4Page_1atul_169{width:100%;min-height:auto;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(10,1fr)}._expensePreviewContainer_1atul_637 ._printArea_1atul_157{padding:10mm}}.settlement-payment-container{max-width:1200px;margin:0 auto;padding:24px}.settlement-payment-header{margin-bottom:24px}.settlement-payment-title{font-size:24px;font-weight:700;color:#1f2937}.settlement-payment-filters{display:flex;gap:16px;align-items:flex-end;margin-bottom:24px;padding:16px;background-color:#f9fafb;border-radius:8px}.filter-group{display:flex;flex-direction:column;gap:8px;flex:1}.filter-group label{font-size:14px;font-weight:500;color:#374151}.filter-input,.filter-select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.filter-input:focus,.filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-btn-refresh{padding:8px 16px;background-color:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.filter-btn-refresh:hover:not(:disabled){background-color:#2563eb}.filter-btn-refresh:disabled{opacity:.6;cursor:not-allowed}.loading-state,.empty-state{text-align:center;padding:48px 24px;color:#6b7280}.settlements-list{width:100%;display:flex;flex-direction:column;gap:24px}.settlement-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:5px;box-shadow:0 1px 3px #0000001a}.settlement-card-header{display:flex;width:100%;justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.settlement-info{flex:1}.settlement-restaurant-name{font-size:20px;font-weight:600;color:#1f2937;margin-bottom:4px}.settlement-restaurant-location{font-size:14px;color:#6b7280}.settlement-status{display:flex;align-items:center}.status-badge{padding:4px 12px;border-radius:12px;font-size:13px;font-weight:500;color:#fff}.settlement-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:16px}.detail-row{display:flex;justify-content:space-between;padding:8px;background-color:#f9fafb;border-radius:6px}.detail-label{font-size:14px;color:#6b7280;font-weight:500}.detail-value{font-size:14px;color:#1f2937;font-weight:600}.settlement-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:16px}.breakdown-item{padding:16px;background-color:#f0f9ff;border:1px solid #bfdbfe;border-radius:8px}.breakdown-item.excess{background-color:#fef3c7;border-color:#fde68a}.breakdown-title{font-size:14px;font-weight:600;color:#1f2937;margin-bottom:8px}.breakdown-details p{font-size:13px;color:#374151;margin:4px 0}.settlement-actions{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.btn-zeropay-payment{padding:10px 24px;background-color:#10b981;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-zeropay-payment:hover:not(:disabled){background-color:#059669}.btn-zeropay-payment:disabled{opacity:.6;cursor:not-allowed;background-color:#9ca3af}.payment-completed{display:flex;align-items:center;gap:8px;color:#10b981;font-weight:500}.completed-icon{width:20px;height:20px;background-color:#10b981;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px}.completed-date{font-size:13px;color:#6b7280;font-weight:400}.excess-settlements{margin-top:24px;padding-top:24px;border-top:2px solid #e5e7eb}.excess-settlements-title{font-size:16px;font-weight:600;color:#1f2937;margin-bottom:12px}.excess-table{width:100%;border-collapse:collapse;font-size:14px}.excess-table thead{background-color:#f3f4f6}.excess-table th{padding:12px 8px;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.excess-table td{padding:12px 8px;border-bottom:1px solid #e5e7eb}.excess-table tbody tr:hover{background-color:#f9fafb}.paid-badge{display:inline-block;padding:4px 12px;background-color:#d1fae5;color:#065f46;border-radius:12px;font-size:12px;font-weight:500}.unpaid-badge{display:inline-block;padding:4px 12px;background-color:#fee2e2;color:#991b1b;border-radius:12px;font-size:12px;font-weight:500}.btn-excess-payment{padding:6px 12px;background-color:#3b82f6;color:#fff;border:none;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-excess-payment:hover{background-color:#2563eb}@media (max-width: 768px){.settlement-payment-container{padding:16px}.settlement-payment-filters{flex-direction:column;align-items:stretch}.settlement-card-header{flex-direction:column;gap:12px}.settlements-list,.settlement-card{width:100%}.settlement-details,.settlement-breakdown{grid-template-columns:1fr}.excess-table{font-size:12px}.excess-table th,.excess-table td{padding:8px 4px}}.zeropay-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.zeropay-modal-content{background-color:#fff;border-radius:12px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.zeropay-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.zeropay-modal-header h2{font-size:20px;font-weight:600;color:#1f2937;margin:0}.zeropay-modal-close{width:32px;height:32px;border:none;background-color:transparent;color:#6b7280;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.zeropay-modal-close:hover{background-color:#f3f4f6;color:#1f2937}.zeropay-modal-body{padding:24px}.settlement-info-box{background-color:#f9fafb;padding:16px;border-radius:8px;margin-bottom:24px}.settlement-info-box .zeropay-restaurant-name{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 4px}.settlement-info-box .zeropay-restaurant-location{font-size:14px;color:#6b7280;margin:0 0 16px}.settlement-amount,.settlement-month{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.amount-label,.month-label{font-size:14px;color:#6b7280;font-weight:500}.amount-value{font-size:20px;font-weight:700;color:#10b981}.month-value{font-size:14px;font-weight:600;color:#1f2937}.qr-code-container{text-align:center;padding:24px;background-color:#f9fafb;border-radius:8px;margin-bottom:24px}.qr-code-image{max-width:280px;width:100%;height:auto;border:2px solid #e5e7eb;border-radius:8px;margin-bottom:12px}.qr-instruction{font-size:14px;color:#6b7280;margin:0}.no-qr-code{text-align:center;padding:48px 24px;background-color:#fef3c7;border:1px solid #fde68a;border-radius:8px;margin-bottom:24px}.no-qr-code p{font-size:14px;color:#92400e;margin:0}.account-info{background-color:#f0f9ff;padding:16px;border-radius:8px;border:1px solid #bfdbfe}.account-info h4{font-size:14px;font-weight:600;color:#1e40af;margin:0 0 12px}.account-details p{font-size:13px;color:#374151;margin:6px 0}.account-details strong{font-weight:600;color:#1f2937}.no-account-info{font-size:13px;color:#6b7280;margin:0}.zeropay-modal-footer{display:flex;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb}.btn-cancel,.btn-confirm{flex:1;padding:10px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-cancel{background-color:#f3f4f6;color:#374151}.btn-confirm{background-color:#10b981;color:#fff}.btn-confirm:hover{background-color:#059669}@media (max-width: 600px){.zeropay-modal-content{max-width:100%;margin:0;border-radius:0}.qr-code-image{max-width:240px}}.dashboard-nav{background-color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.dashboard-nav-content{max-width:80rem;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (min-width: 640px){.dashboard-nav-content{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width: 1024px){.dashboard-nav-content{padding-left:2rem;padding-right:2rem}}.dashboard-nav-inner{display:flex;flex-direction:column;padding:1rem 0;gap:.75rem}.dashboard-nav-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.dashboard-nav-title-container{flex:1;min-width:0;overflow:hidden;position:relative}.dashboard-nav-title-container.overflowing{mask-image:linear-gradient(to right,black 0%,black calc(100% - 40px),transparent 100%);-webkit-mask-image:linear-gradient(to right,black 0%,black calc(100% - 40px),transparent 100%)}.dashboard-nav-title{font-size:1rem;font-weight:600;color:#111827;white-space:nowrap;display:inline-block;will-change:transform}.dashboard-nav-title-container.overflowing:hover .dashboard-nav-title{animation:slide-title 12s ease-in-out infinite}@keyframes slide-title{0%,15%{transform:translate(0)}50%,65%{transform:translate(calc(var(--container-width, 300px) - 100%))}to{transform:translate(0)}}@media (min-width: 640px){.dashboard-nav-title{font-size:1.125rem}}@media (min-width: 768px){.dashboard-nav-title{font-size:1.25rem}}.dashboard-nav-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0}@media (min-width: 640px){.dashboard-nav-right{gap:.75rem}}@media (min-width: 768px){.dashboard-nav-right{gap:1rem}}.dashboard-btn{padding:.375rem .5rem;border-radius:.375rem;font-size:.75rem;font-weight:500;color:#fff;border:none;cursor:pointer;transition:background-color .2s;white-space:nowrap}@media (min-width: 640px){.dashboard-btn{padding:.5rem .75rem;font-size:.8125rem}}@media (min-width: 768px){.dashboard-btn{padding:.5rem 1rem;font-size:.875rem}}.dashboard-btn-primary{background-color:#2563eb}.dashboard-btn-primary:hover{background-color:#1d4ed8}.dashboard-btn-success{background-color:#16a34a}.dashboard-btn-success:hover{background-color:#15803d}.dashboard-btn-danger{background-color:#dc2626}.dashboard-btn-danger:hover{background-color:#b91c1c}.tab-navigation{display:flex;gap:.5rem;border-top:1px solid #e5e7eb;padding-top:.75rem}@media (min-width: 768px){.tab-navigation{gap:1rem;border-top:none;padding-top:0}}.tab-btn{padding:.5rem .75rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;border:none;background:none;transition:all .2s}.tab-btn.active{background-color:#dbeafe;color:#1d4ed8}.tab-btn.inactive{color:#6b7280}.tab-btn.inactive:hover{color:#374151}.sub-tab-navigation-wrapper{border-bottom:1px solid #e5e7eb;overflow-x:auto;-webkit-overflow-scrolling:touch;overflow-y:hidden;min-height:calc(3rem + 2px)}.sub-tab-navigation{margin-bottom:-1px;display:flex;gap:.5rem}@media (min-width: 768px){.sub-tab-navigation{gap:2rem}}.sub-tab-btn{white-space:nowrap;padding:.75rem 1rem;border:1px solid transparent;border-radius:.5rem;font-weight:500;font-size:.875rem;cursor:pointer;background-color:#f9fafb;transition:all .2s;display:flex;align-items:center;gap:.5rem}@media (min-width: 768px){.sub-tab-btn{padding:.5rem .25rem;border:none;border-radius:0;border-bottom:2px solid transparent;background:none}}.sub-tab-btn.active{background-color:#dbeafe;color:#2563eb;border-color:#3b82f6}@media (min-width: 768px){.sub-tab-btn.active{background:none;border-color:transparent;border-bottom-color:#3b82f6}}.sub-tab-btn.inactive{color:#6b7280}.sub-tab-btn.inactive:hover{color:#374151;background-color:#e5e7eb}@media (min-width: 768px){.sub-tab-btn.inactive:hover{background:none;border-bottom-color:#d1d5db}}.sub-tab-icon{margin-right:0}@media (min-width: 768px){.sub-tab-icon{margin-right:.5rem}}.user-dashboard-container{height:100vh;display:flex;flex-direction:column;background-color:#f9fafb;overflow:hidden}.settlement-settings-container{max-width:48rem;margin:0 auto}.settlement-settings-loading{text-align:center;padding:2rem;color:#6b7280}.settlement-settings-card{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow:hidden;margin-bottom:1.5rem}.settlement-settings-header{padding:1.5rem;border-bottom:1px solid #e5e7eb}.settlement-settings-title{font-size:1.25rem;font-weight:600;color:#111827;margin-bottom:.5rem}.settlement-settings-description{font-size:.875rem;color:#6b7280}.settlement-settings-content{padding:1.5rem}.settlement-settings-field{margin-bottom:1.5rem}.settlement-settings-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.settlement-settings-input-wrapper{display:flex;align-items:center;gap:.5rem}.settlement-settings-input{flex:1;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;transition:border-color .2s}.settlement-settings-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.settlement-settings-unit{font-size:.875rem;color:#6b7280;font-weight:500}.settlement-settings-help-text{margin-top:.25rem;font-size:.75rem;color:#6b7280}.settlement-settings-summary{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;padding:1rem;margin-bottom:1.5rem}.settlement-settings-summary-item{display:flex;justify-content:space-between;align-items:center}.settlement-settings-summary-label{font-size:.875rem;color:#6b7280}.settlement-settings-summary-value{font-size:1.25rem;font-weight:600;color:#111827}.settlement-settings-actions{display:flex;justify-content:flex-end}.settlement-settings-btn-save{background-color:#3b82f6;color:#fff;padding:.5rem 1.5rem;border-radius:.375rem;font-size:.875rem;font-weight:500;border:none;cursor:pointer;transition:background-color .2s}.settlement-settings-btn-save:hover{background-color:#2563eb}.settlement-settings-btn-save:disabled{background-color:#9ca3af;cursor:not-allowed}.settlement-settings-info{background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:.5rem;padding:1rem;display:flex;gap:.75rem}.settlement-settings-info-icon{flex-shrink:0;color:#3b82f6;width:1.25rem;height:1.25rem}.settlement-settings-info-icon svg{width:100%;height:100%}.settlement-settings-info-content{flex:1}.settlement-settings-info-title{font-size:.875rem;font-weight:600;color:#1e40af;margin-bottom:.5rem}.settlement-settings-info-list{font-size:.75rem;color:#1e40af;padding-left:1.25rem;margin:0}.settlement-settings-info-list li{margin-bottom:.25rem}.user-nav{background-color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.user-nav-content{max-width:80rem;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (min-width: 640px){.user-nav-content{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width: 1024px){.user-nav-content{padding-left:2rem;padding-right:2rem}}.user-nav-inner{display:flex;flex-direction:column;padding:1rem 0;gap:.75rem}.user-nav-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.user-nav-title{font-size:1rem;font-weight:600;color:#111827;white-space:nowrap}@media (min-width: 640px){.user-nav-title{font-size:1.125rem}}@media (min-width: 768px){.user-nav-title{font-size:1.25rem}}.user-tabs{display:flex;gap:.5rem;border-top:1px solid #e5e7eb;padding-top:.75rem}@media (min-width: 768px){.user-tabs{gap:1rem;border-top:none;padding-top:0}}.user-tab-btn{padding:.5rem .75rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;border:none;background:none;transition:all .2s}.user-tab-btn.active{background-color:#dbeafe;color:#1d4ed8}.user-tab-btn.inactive{color:#6b7280}.user-tab-btn.inactive:hover{color:#374151}.user-nav-right{display:flex;align-items:center;gap:.5rem}@media (min-width: 640px){.user-nav-right{gap:.75rem}}@media (min-width: 768px){.user-nav-right{gap:1rem}}.user-btn-register{background-color:#16a34a;padding:.375rem .5rem;border-radius:.375rem;font-size:.75rem;font-weight:500;color:#fff;border:none;cursor:pointer;transition:background-color .2s;white-space:nowrap}@media (min-width: 640px){.user-btn-register{padding:.5rem .75rem;font-size:.8125rem}}@media (min-width: 768px){.user-btn-register{padding:.5rem 1rem;font-size:.875rem}}.user-btn-register:hover{background-color:#15803d}.user-btn-profile{background-color:#2563eb;padding:.375rem .5rem;border-radius:.375rem;font-size:.75rem;font-weight:500;color:#fff;border:none;cursor:pointer;transition:background-color .2s;white-space:nowrap}@media (min-width: 640px){.user-btn-profile{padding:.5rem .75rem;font-size:.8125rem}}@media (min-width: 768px){.user-btn-profile{padding:.5rem 1rem;font-size:.875rem}}.user-btn-profile:hover{background-color:#1d4ed8}.user-btn-logout{background-color:#dc2626;padding:.375rem .5rem;border-radius:.375rem;font-size:.75rem;font-weight:500;color:#fff;border:none;cursor:pointer;transition:background-color .2s;white-space:nowrap}@media (min-width: 640px){.user-btn-logout{padding:.5rem .75rem;font-size:.8125rem}}@media (min-width: 768px){.user-btn-logout{padding:.5rem 1rem;font-size:.875rem}}.user-btn-logout:hover{background-color:#b91c1c}.user-main{max-width:80rem;margin-left:auto;margin-right:auto;padding-top:.5rem;padding-bottom:1.5rem;flex:1;overflow:hidden;display:flex;flex-direction:column}@media (min-width: 640px){.user-main{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width: 1024px){.user-main{padding-left:2rem;padding-right:2rem}}.user-main-inner{padding:1rem;flex:1;overflow:hidden;display:flex;flex-direction:column}@media (min-width: 640px){.user-main-inner{padding-left:0}}.user-card-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1rem}@media (min-width: 768px){.user-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.user-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.user-card{background-color:#fff;overflow:hidden;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;border-radius:.5rem}.user-card-content{padding:.5rem}.user-card-flex{display:flex;align-items:center}.user-card-icon-wrapper{flex-shrink:0}.user-card-icon{width:2rem;height:2rem;border-radius:.375rem;display:flex;align-items:center;justify-content:center}.user-card-icon.primary{background-color:#3b82f6}.user-card-icon.green{background-color:#22c55e}.user-card-icon.yellow{background-color:#eab308}.user-card-icon-text{color:#fff;font-size:.875rem;font-weight:500}.user-card-info{margin-left:1.25rem;width:0;flex:1 1 0%}.user-card-info dl{display:flex;align-items:center;gap:.5rem;margin:0}.user-card-label{font-size:.875rem;font-weight:500;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}.user-card-value{font-size:1.125rem;font-weight:500;color:#111827;margin:0}.user-card-footer{background-color:#f9fafb;padding:.75rem 1.25rem}.user-card-footer-text{font-size:.875rem}.user-card-footer-link{font-weight:500}.user-card-footer-link.primary{color:#2563eb}.user-card-footer-link.green{color:#16a34a}.user-card-footer-link.yellow{color:#ca8a04}.user-recent-section{margin-top:2rem}.user-recent-card{background-color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;overflow:hidden}@media (min-width: 640px){.user-recent-card{border-radius:.375rem}}.user-recent-content{padding:1rem 1.5rem}@media (min-width: 640px){.user-recent-content{padding:1.5rem}}.user-recent-title{font-size:1.125rem;line-height:1.5rem;font-weight:500;color:#111827;margin-bottom:1rem}.user-empty-state{text-align:center;padding:3rem 0}.user-empty-text{color:#6b7280}.user-settlement-section{display:flex;flex-direction:column;gap:.5rem;flex:1;overflow:hidden}.user-settlement-header{display:flex;justify-content:space-between;align-items:center}.user-settlement-title{font-size:1.5rem;font-weight:700;color:#111827}.user-btn-unregister{background-color:#dc2626;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;color:#fff;border:none;cursor:pointer;transition:background-color .2s}.user-btn-unregister:hover{background-color:#b91c1c}.user-settlement-tabs-wrapper{border-bottom:1px solid #e5e7eb;overflow-x:auto;-webkit-overflow-scrolling:touch;overflow-y:hidden;min-height:calc(3rem + 2px)}.user-settlement-tabs{margin-bottom:-1px;display:flex;gap:.5rem}@media (min-width: 768px){.user-settlement-tabs{gap:2rem}}.user-settlement-tab{white-space:nowrap;padding:.75rem 1rem;border:1px solid transparent;border-radius:.5rem;font-weight:500;font-size:.875rem;cursor:pointer;background-color:#f9fafb;transition:all .2s;display:flex;align-items:center;gap:.5rem}@media (min-width: 768px){.user-settlement-tab{padding:.5rem .25rem;border:none;border-radius:0;border-bottom:2px solid transparent;background:none}}.user-settlement-tab.active{background-color:#dbeafe;color:#2563eb;border-color:#3b82f6}@media (min-width: 768px){.user-settlement-tab.active{background:none;border-color:transparent;border-bottom-color:#3b82f6}}.user-settlement-tab.inactive{color:#6b7280}.user-settlement-tab.inactive:hover{color:#374151;background-color:#e5e7eb}@media (min-width: 768px){.user-settlement-tab.inactive:hover{background:none;border-bottom-color:#d1d5db}}.user-settlement-tab .tab-icon{margin-right:0}@media (min-width: 768px){.user-settlement-tab .tab-icon{margin-right:.5rem}}.user-settlement-content{margin:1rem 0;overflow-y:auto;flex:1;min-height:0}.user-help-section{background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:.375rem;padding:1rem}.user-help-flex{display:flex}.user-help-icon-wrapper{flex-shrink:0}.user-help-icon{height:1.25rem;width:1.25rem;color:#60a5fa}.user-help-content{margin-left:.75rem}.user-help-title{font-size:.875rem;font-weight:500;color:#1e40af}.user-help-list{margin-top:.5rem;font-size:.875rem;color:#1d4ed8}.user-help-list ul{list-style-type:disc;list-style-position:inside;display:flex;flex-direction:column;gap:.25rem}.user-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:50}.user-settlement-modal{background-color:#fff;border-radius:.5rem;padding:1.5rem;width:100%;max-width:28rem;margin:0 1rem}.user-settlement-modal-content{text-align:center}.user-settlement-modal-title{font-size:1.25rem;font-weight:700;color:#111827;margin-bottom:1rem}.user-settlement-modal-text{color:#4b5563;margin-bottom:1.5rem}.user-settlement-modal-actions{display:flex;gap:.75rem}.user-modal-btn-cancel{flex:1;padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;background-color:#fff;cursor:pointer;transition:background-color .2s}.user-modal-btn-cancel:hover{background-color:#f9fafb}.user-modal-btn-confirm{flex:1;padding:.5rem 1rem;background-color:#16a34a;color:#fff;border-radius:.375rem;border:none;cursor:pointer;transition:background-color .2s}.user-modal-btn-confirm:hover{background-color:#15803d}.user-profile-modal{background-color:#fff;border-radius:.5rem;padding:1.5rem;width:100%;max-width:32rem;margin:0 1rem}.user-profile-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.user-profile-modal-title{font-size:1.25rem;font-weight:700;color:#111827}.user-profile-modal-close{color:#9ca3af;background:none;border:none;font-size:1.5rem;cursor:pointer;transition:color .2s}.user-profile-modal-close:hover{color:#4b5563}.user-profile-modal-content{display:flex;flex-direction:column;gap:1rem}.user-profile-info{background-color:#f9fafb;padding:1rem;border-radius:.5rem}.user-profile-info-title{font-weight:500;color:#111827;margin-bottom:.75rem}.user-profile-info-items{display:flex;flex-direction:column;gap:.75rem}.user-profile-field{font-size:.875rem;color:#4b5563}.user-profile-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.25rem}.user-profile-input{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem}.user-profile-input:focus{outline:none;box-shadow:0 0 0 2px #3b82f6}.user-profile-actions{border-top:1px solid #e5e7eb;padding-top:1rem;display:flex;flex-direction:column;gap:.75rem}.user-profile-btn-group{display:flex;gap:.75rem}.user-btn-save{flex:1;padding:.5rem 1rem;background-color:#16a34a;color:#fff;border-radius:.375rem;border:none;cursor:pointer;transition:background-color .2s}.user-btn-save:hover{background-color:#15803d}.user-btn-cancel{flex:1;padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;background-color:#fff;cursor:pointer;transition:background-color .2s}.user-btn-cancel:hover{background-color:#f9fafb}.user-btn-edit{width:100%;padding:.5rem 1rem;background-color:#4b5563;color:#fff;border-radius:.375rem;border:none;cursor:pointer;transition:background-color .2s}.user-btn-edit:hover{background-color:#374151}.user-btn-password{width:100%;padding:.5rem 1rem;background-color:#2563eb;color:#fff;border-radius:.375rem;border:none;cursor:pointer;transition:background-color .2s}.user-btn-password:hover{background-color:#1d4ed8}.user-btn-delete{width:100%;padding:.5rem 1rem;background-color:#dc2626;color:#fff;border-radius:.375rem;border:none;cursor:pointer;transition:background-color .2s}.user-btn-delete:hover{background-color:#b91c1c}.user-usage-list{overflow-x:auto;margin-top:1rem}.user-usage-table{width:100%;border-collapse:collapse;font-size:.875rem}.user-usage-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}.user-usage-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#374151;white-space:nowrap}.user-usage-table td{padding:.75rem 1rem;color:#111827;border-bottom:1px solid #e5e7eb}.user-usage-table tbody tr:hover{background-color:#f9fafb}.user-usage-table tbody tr:last-child td{border-bottom:none}.user-info-dashboard{margin-bottom:1rem}.fullscreen-camera,.split-camera{font-family:Noto Sans KR,Malgun Gothic,sans-serif}.realtime-camera-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10000;background-color:#000}.mode-selector-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:10001;padding:1rem}.mode-selector-content{background-color:#fff;border-radius:1rem;padding:2rem;max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.mode-selector-title{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:1.5rem;text-align:center}.mode-options{display:flex;flex-direction:row;gap:1rem;margin-bottom:1.5rem;justify-content:center;flex-wrap:wrap}.mode-option{background-color:#f9fafb;border:2px solid #e5e7eb;border-radius:.75rem;padding:.75rem 1rem;cursor:pointer;transition:all .2s;flex:1;min-width:200px;display:flex;align-items:center;justify-content:center;gap:.75rem}.mode-option:hover{background-color:#eff6ff;border-color:#3b82f6;transform:translateY(-2px)}.mode-icon{font-size:2rem;margin:0}.mode-option h3{font-size:1.125rem;font-weight:600;color:#111827;margin:0}.mode-option p{font-size:.875rem;color:#6b7280;margin:0}.mode-cancel-btn{width:100%;padding:.75rem;background-color:#6b7280;color:#fff;border:none;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.mode-cancel-btn:hover{background-color:#4b5563}.count-input-modal{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:10002}.count-input-content{background-color:#fff;border-radius:1rem;padding:1.5rem;max-width:320px;width:90%;text-align:center}.count-input-content h3{font-size:1.25rem;font-weight:600;color:#111827;margin-bottom:1.5rem}.count-input-wrapper{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.5rem}.count-btn{width:48px;height:48px;border-radius:50%;border:2px solid #3b82f6;background-color:#fff;color:#3b82f6;font-size:1.5rem;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.count-btn:hover{background-color:#3b82f6;color:#fff}.count-btn:active{transform:scale(.95)}.count-input{width:80px;height:48px;text-align:center;font-size:1.5rem;font-weight:700;color:#111827;border:2px solid #e5e7eb;border-radius:.5rem;outline:none}.count-input:focus{border-color:#3b82f6}.count-input::-webkit-outer-spin-button,.count-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.count-input[type=number]{-moz-appearance:textfield}.count-preset-buttons{display:flex;gap:.5rem;margin-bottom:1rem}.count-preset-btn{flex:1;padding:.5rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:2px solid #3b82f6;background-color:#fff;color:#3b82f6}.count-preset-btn:hover{background-color:#3b82f6;color:#fff}.count-input-actions{display:flex;gap:.75rem}.count-cancel-btn,.count-confirm-btn{flex:1;padding:.75rem 1rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.count-cancel-btn{background-color:#e5e7eb;color:#374151}.count-cancel-btn:hover{background-color:#d1d5db}.count-confirm-btn{background-color:#3b82f6;color:#fff}.count-confirm-btn:hover{background-color:#2563eb}.fullscreen-camera{width:100%;height:100vh;height:100dvh;position:relative;overflow:hidden}.camera-container{width:100%;height:100%;position:relative}.camera-video{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;background-color:#000}.camera-top-bar{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:1rem;background:linear-gradient(to bottom,rgba(0,0,0,.6),transparent);z-index:10}.camera-close-btn{background-color:#ffffffe6;color:#111827;border:none;border-radius:.5rem;padding:.5rem 1rem;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s}.camera-close-btn:hover{background-color:#fff}.ticket-count{background-color:#10b981e6;color:#fff;padding:.5rem 1rem;border-radius:.5rem;font-size:1rem;font-weight:600}.camera-complete-btn{background-color:#3b82f6;color:#fff;border:none;border-radius:.5rem;padding:.5rem 1rem;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s}.camera-complete-btn:hover{background-color:#2563eb}.camera-complete-btn:disabled{background-color:#9ca3af;cursor:not-allowed}.loading-spinner-inline{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:.5rem;vertical-align:middle}.recognition-progress-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.recognition-progress-modal{background-color:#fffffff2;border-radius:1.5rem;padding:2.5rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem;box-shadow:0 10px 40px #0000004d;min-width:280px;animation:modalFadeIn .3s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.progress-spinner{width:80px;height:80px;border:6px solid #e5e7eb;border-top-color:#10b981;border-radius:50%;animation:spin 1s linear infinite}.progress-percentage{font-size:3rem;font-weight:700;color:#10b981;line-height:1}.progress-text{font-size:1rem;font-weight:600;color:#374151}.qr-recognition-modal{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#000000f2;display:flex;justify-content:center;align-items:center;z-index:300;overflow-y:auto}.qr-recognition-content{background-color:#fff;border-radius:1rem;padding:1rem;width:100%;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:.3rem;position:relative}.image-dimensions-badge{position:absolute;top:0rem;left:0rem;background-color:#3b82f64d;color:#0e1d60;padding:.4rem .5rem;border-radius:.5rem;font-size:1rem;font-weight:1000;font-family:Courier New,monospace;z-index:10;box-shadow:0 2px 8px #0003;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.qr-scan-status{text-align:center;padding:.55rem 1rem;background-color:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb;font-size:.95rem;font-weight:600}.status-scanning{color:#3b82f6;display:flex;align-items:center;justify-content:center;gap:.5rem}.status-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(59,130,246,.3);border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.status-complete{color:#10b981}.status-ready{color:#6b7280}.qr-image-container{width:100%;height:57vh;flex-shrink:0;display:flex;justify-content:center;align-items:center;background-color:#000;border-radius:.5rem;overflow:hidden}.qr-display-canvas{width:90%;height:auto;display:block;margin:0 auto}.qr-captured-image{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.qr-progress-bar{width:100%;height:40px;background-color:#e5e7eb;border-radius:.5rem;overflow:hidden;position:relative}.qr-progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);transition:width .3s ease;display:flex;align-items:center;justify-content:center}.qr-progress-text{color:#fff;font-weight:700;font-size:1rem;position:absolute;left:50%;transform:translate(-50%)}.qr-tickets-list{display:flex;flex-direction:column;gap:.75rem}.qr-tickets-list h3{font-size:1.125rem;font-weight:600;color:#111827;margin:0}.qr-tickets-scroll{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem}.qr-ticket-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;animation:slideIn .3s ease-out}.qr-ticket-number{font-weight:700;color:#6b7280;min-width:2rem}.qr-ticket-name{font-weight:600;color:#111827;flex:1}.qr-ticket-dept{color:#6b7280;font-size:.875rem}.qr-ticket-status{padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:700;white-space:nowrap}.qr-ticket-status.new{background-color:#dcfce7;color:#166534}.qr-ticket-status.used{background-color:#fed7aa;color:#9a3412}.qr-modal-actions{display:flex;gap:.75rem;margin-top:.5rem}.qr-btn-save,.qr-btn-retry,.qr-btn-complete{padding:.75rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.qr-btn-save{background-color:#3b82f6;color:#fff;flex:0 0 auto;min-width:100px}.qr-btn-save:hover{background-color:#2563eb}.qr-btn-retry{background-color:#6b7280;color:#fff;flex:1}.qr-btn-retry:hover{background-color:#4b5563}.qr-btn-complete{background-color:#10b981;color:#fff;flex:1}.qr-btn-complete:hover{background-color:#059669}.qr-btn-complete:disabled{background-color:#d1d5db;cursor:not-allowed}.qr-save-notice{text-align:center;font-size:.875rem;color:#10b981;padding:.5rem;background-color:#dcfce7;border-radius:.5rem;margin-top:.5rem}.capture-button-container{position:absolute;bottom:calc(4rem + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);z-index:100}.capture-button{width:80px;height:80px;border-radius:50%;background-color:#ffffffe6;border:4px solid #10b981;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:0 4px 12px #0000004d}.capture-button:hover{transform:scale(1.1);background-color:#fff}.capture-button:active{transform:scale(.95)}.capture-button-inner{font-size:2.5rem}.scan-tooltip{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#00000026;color:#fff;padding:1.5rem;border-radius:.75rem;border:2px solid #10b981;box-shadow:0 10px 25px #00000080;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:1000;min-width:280px;animation:tooltipFadeIn .3s ease-out}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.tooltip-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.tooltip-row:last-child{border-bottom:none}.tooltip-label{font-size:.875rem;color:#fff;font-weight:500;margin-right:1rem}.tooltip-value{font-size:1rem;color:#fff;font-weight:600;text-align:right}.loading-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000f2;display:flex;justify-content:center;align-items:center;z-index:10002;padding:1rem;padding-top:calc(1rem + env(safe-area-inset-top,0px));padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px))}.loading-modal-content{background-color:#fff;border-radius:1rem;padding:1rem;max-width:95vw;width:100%;max-height:85vh;max-height:85dvh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 40px #0000004d}.loading-modal-header{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.5rem}.loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#10b981;border-radius:50%;animation:spin 1s linear infinite}.loading-modal-title{font-size:1.5rem;font-weight:700;color:#111827;margin:0;text-align:center}.scan-preview-container{width:100%;margin-bottom:1.5rem;border-radius:.5rem;overflow:hidden;background-color:#000;display:flex;justify-content:center;align-items:center;max-height:50vh;position:relative}.scan-preview-image{max-width:100%;max-height:50vh;height:auto;display:block;-o-object-fit:contain;object-fit:contain}.scan-preview-canvas{max-width:100%;max-height:50vh;height:auto;display:block;position:absolute;top:0;left:50%;transform:translate(-50%)}.progress-bar-container{width:100%;height:40px;background-color:#e5e7eb;border-radius:.5rem;overflow:hidden;margin-bottom:1.5rem;position:relative}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);transition:width .3s ease;display:flex;align-items:center;justify-content:center;position:relative}.progress-text{color:#fff;font-weight:700;font-size:1rem;position:absolute;left:50%;transform:translate(-50%);text-shadow:0 1px 2px rgba(0,0,0,.3)}.loading-ticket-count{text-align:center;font-size:1.125rem;color:#374151;margin-bottom:1.5rem}.loading-ticket-count strong{color:#10b981;font-size:1.5rem}.loading-modal-actions{display:flex;justify-content:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb;flex-shrink:0}.loading-btn-complete{padding:.5rem 1rem;background-color:#10b981;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000001a}.loading-btn-complete:hover:not(:disabled){background-color:#059669;box-shadow:0 4px 6px #00000026;transform:translateY(-1px)}.loading-btn-complete:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.6}.loading-btn-retry{padding:.5rem 1rem;background-color:#3b82f6;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000001a}.loading-btn-retry:hover{background-color:#2563eb;box-shadow:0 4px 6px #00000026;transform:translateY(-1px)}.scan-fail-message{text-align:center;padding:1rem;background-color:#fef3c7;border:1px solid #f59e0b;border-radius:.5rem;margin-bottom:1rem}.scan-fail-message p{margin:.25rem 0;color:#92400e;font-size:.95rem}.scan-fail-message p:first-child{font-weight:500}.loading-btn-cancel{padding:.5rem 1rem;background-color:#e5e7eb;color:#374151;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000001a}.loading-btn-cancel:hover{background-color:#d1d5db;box-shadow:0 4px 6px #00000026;transform:translateY(-1px)}.loading-results-curtain{background-color:#f9fafb;border-radius:1rem 1rem 0 0;transition:all .3s ease-out;display:flex;flex-direction:column;margin-top:.5rem;overflow:hidden}.loading-results-curtain.closed{max-height:50px}.loading-results-curtain.open{max-height:250px}.loading-curtain-handle{padding:.75rem;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.25rem;background:linear-gradient(to bottom,#f9fafb,#f3f4f6);border-radius:1rem 1rem 0 0;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.loading-curtain-handle:active{background:linear-gradient(to bottom,#f3f4f6,#e5e7eb)}.loading-curtain-content{flex:1;overflow-y:auto;padding:0 .75rem .75rem;background-color:#f9fafb}.results-list{display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto}.loading-results-list{display:flex;flex-direction:column;gap:.75rem;flex:1;min-height:0;max-height:200px;overflow-y:auto;padding:.5rem}.loading-no-results{text-align:center;color:#9ca3af;font-size:1rem;padding:2rem;margin:0}.loading-result-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.result-left{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.result-info{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.result-name-row{display:flex;align-items:center;gap:.5rem}.result-number{font-weight:700;color:#6b7280;min-width:2rem;text-align:center;font-size:.875rem;margin-right:1rem}.result-name{font-weight:700;color:#fff;font-size:.95rem;margin-right:1rem}.result-ticket-number{color:#fff;margin-right:1rem}.result-ticket-num{font-weight:600;color:#6b7280;font-size:.8rem;background-color:#e5e7eb;padding:.125rem .375rem;border-radius:1rem}.result-dept-row{display:flex;align-items:center;gap:.375rem;color:#fff;font-size:.8rem}.result-dept,.result-team{color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:1rem}.result-separator{color:#9ca3af}.result-status{padding:.125rem .375rem;border-radius:.25rem;font-size:.7rem;font-weight:700;white-space:nowrap}.result-status.new{background-color:#dcfce7;color:#166534}.result-status.used{background-color:#fed7aa;color:#9a3412}.camera-actions{display:flex;gap:.75rem;padding:1rem;background-color:#f9fafb;border-top:1px solid #e5e7eb}.btn-camera-cancel,.btn-camera-complete{flex:1;padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-camera-cancel{background-color:#f3f4f6;color:#6b7280}.btn-camera-cancel:hover{background-color:#e5e7eb}.btn-camera-complete{background-color:#10b981;color:#fff}.btn-camera-complete:hover{background-color:#059669}@media (max-width: 768px){.scan-tooltip{min-width:240px;padding:1.25rem}.tooltip-label{font-size:.75rem}.tooltip-value{font-size:.875rem}.grid-cell-label{font-size:.625rem;padding:.15rem .35rem}.split-camera{flex-direction:column}.camera-section-split{flex:6;min-height:50vh}.control-section{flex:4;min-height:30vh;padding-bottom:0}.camera-actions{margin-bottom:env(safe-area-inset-bottom,10px)}.loading-modal-content{padding:.5rem;max-height:95vh}.loading-modal-header{gap:.75rem;margin-bottom:1rem}.loading-spinner{width:30px;height:30px;border-width:3px}.loading-modal-title{font-size:1.125rem}.scan-preview-container{max-height:40vh;margin-bottom:1rem}.scan-preview-image,.scan-preview-canvas{max-height:40vh}.progress-bar-container{height:30px;margin-bottom:1rem}.progress-text{font-size:.75rem}.loading-ticket-count{font-size:.875rem;margin-bottom:1rem}.loading-ticket-count strong{font-size:1.125rem}.loading-result-item{padding:.5rem}.result-left{gap:.5rem}.result-number{font-size:.65rem;min-width:1.5rem}.result-name{font-size:.85rem}.result-ticket-num{font-size:.7rem;padding:.1rem .3rem}.result-dept-row{font-size:.7rem;gap:.25rem}.result-status{font-size:.65rem;padding:.15rem .35rem}}.loading-results-list::-webkit-scrollbar,.results-list::-webkit-scrollbar,.recognition-results::-webkit-scrollbar{width:6px}.loading-results-list::-webkit-scrollbar-track,.results-list::-webkit-scrollbar-track,.recognition-results::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.loading-results-list::-webkit-scrollbar-thumb,.results-list::-webkit-scrollbar-thumb,.recognition-results::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.loading-results-list::-webkit-scrollbar-thumb:hover,.results-list::-webkit-scrollbar-thumb:hover,.recognition-results::-webkit-scrollbar-thumb:hover{background:#555}.single-top-actions{position:absolute;top:1rem;left:1rem;right:1rem;display:flex;justify-content:space-between;gap:1rem;z-index:1000}.btn-single-cancel,.btn-single-complete{padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 8px #0003}.btn-single-cancel{background-color:#f3f4f6f2;color:#6b7280}.btn-single-cancel:hover{background-color:#e5e7ebf2}.btn-single-complete{background-color:#10b981f2;color:#fff}.btn-single-complete:hover{background-color:#059669f2}.scan-count-badge{position:absolute;bottom:1rem;right:1rem;background-color:#10b981e6;color:#fff;padding:.5rem 1rem;border-radius:2rem;font-size:1.25rem;font-weight:700;box-shadow:0 4px 12px #0000004d;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.single-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;border-radius:1.5rem;pointer-events:none;box-shadow:0 0 0 9999px #00000080}.single-scan-guide{display:flex;flex-direction:column;align-items:center;gap:1rem;position:relative;z-index:10}.scan-frame{width:230px;height:320px;border:3px solid #3b82f6;border-radius:1rem;background-color:transparent;box-shadow:0 0 0 4px #3b82f633,0 0 20px #3b82f699,0 0 40px #3b82f64d;animation:scan-pulse 2s ease-in-out infinite}@keyframes scan-pulse{0%,to{box-shadow:0 0 0 4px #3b82f633,0 0 20px #3b82f699,0 0 40px #3b82f64d}50%{box-shadow:0 0 0 8px #3b82f64d,0 0 30px #3b82f6cc,0 0 60px #3b82f680}}.single-scan-guide p{color:#fff;font-size:1rem;font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,.5);text-align:center;margin:0}.combined-capture-preview{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000;z-index:10000;overflow-y:auto}.preview-container{max-width:1200px;margin:0 auto;padding:2rem;background-color:#fff;min-height:100vh}.image-preview-section{margin-bottom:2rem}.image-preview-section h3{font-size:1.25rem;font-weight:600;color:#111827;margin-bottom:1rem}.captured-image{width:100%;max-width:600px;height:auto;border-radius:.5rem;border:2px solid #e5e7eb;display:block;margin:0 auto}.recognition-result-section{margin-bottom:2rem}.recognition-result-section h3{font-size:1.25rem;font-weight:600;color:#111827;margin-bottom:1rem}.results-count{font-size:1rem;font-weight:600;color:#3b82f6;margin-bottom:1rem}.confirm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:10001}.confirm-modal{background-color:#fff;border-radius:1rem;padding:2rem;max-width:400px;width:90%;box-shadow:0 4px 6px #0000001a}.confirm-modal h3{font-size:1.25rem;font-weight:600;color:#111827;margin-bottom:1.5rem;text-align:center}.confirm-actions{display:flex;gap:1rem}.btn-complete,.btn-individual{flex:1;padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-complete{background-color:#3b82f6;color:#fff}.btn-complete:hover{background-color:#2563eb}.btn-individual{background-color:#10b981;color:#fff}.btn-individual:hover{background-color:#059669}.preview-actions{display:flex;justify-content:center;gap:1rem;margin-top:2rem}.btn-back{padding:.75rem 2rem;background-color:#6b7280;color:#fff;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-back:hover{background-color:#4b5563}.single-capture-with-existing{position:relative}.existing-tickets-badge{position:absolute;top:1rem;right:1rem;background-color:#3b82f6;color:#fff;padding:.5rem 1rem;border-radius:.5rem;font-weight:600;z-index:1000;box-shadow:0 2px 4px #0003}.curtain-menu{position:absolute;bottom:0;left:0;right:0;background-color:#fff;border-top-left-radius:1.5rem;border-top-right-radius:1.5rem;box-shadow:0 -4px 12px #0000004d;transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:500;max-height:70vh;display:flex;flex-direction:column}.curtain-menu.closed{transform:translateY(calc(100% - 60px))}.curtain-menu.open{transform:translateY(0)}.curtain-handle{padding:1rem;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.5rem;background:linear-gradient(to bottom,#f9fafb,#fff);border-top-left-radius:1.5rem;border-top-right-radius:1.5rem;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.curtain-handle:active{background:linear-gradient(to bottom,#f3f4f6,#f9fafb)}.handle-bar{width:48px;height:5px;background-color:#d1d5db;border-radius:3px}.handle-info{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;color:#374151}.handle-icon{font-size:1rem;color:#6b7280;transition:transform .3s ease}.handle-text{color:#111827}.curtain-content{flex:1;overflow-y:auto;padding:0 1rem 1rem;background-color:#fff}.curtain-content .results-list{display:flex;flex-direction:column;gap:.75rem}.curtain-content .no-results{text-align:center;color:#9ca3af;font-size:1rem;padding:2rem;margin:0}.curtain-content .result-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;animation:slideIn .3s ease-out}.curtain-content::-webkit-scrollbar{width:6px}.curtain-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.curtain-content::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.curtain-content::-webkit-scrollbar-thumb:hover{background:#555}.settlement-registration-container{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1rem;max-width:1200px;margin:0 auto}.registration-header{margin-bottom:.5rem;text-align:center}.registration-title{font-size:1.875rem;font-weight:700;color:#111827;margin-bottom:.5rem}.registration-description{font-size:.9rem;color:#6b7280;text-align:left}.upload-section{margin-bottom:1rem;display:flex;flex-direction:column;gap:1rem}.camera-area{position:relative;border:2px dashed #10b981;border-radius:.5rem;padding:2rem;text-align:center;transition:all .3s;background-color:#f0fdf4}.camera-area:hover{border-color:#059669;background-color:#dcfce7}.upload-area{position:relative;border:2px dashed #d1d5db;border-radius:.5rem;padding:2rem;text-align:center;transition:all .3s;background-color:#f9fafb}.upload-area:hover{border-color:#3b82f6;background-color:#eff6ff}.manual-entry-area{position:relative;border:2px dashed #f59e0b;border-radius:.5rem;padding:.8rem;text-align:center;transition:all .3s;background-color:#fffbeb}.manual-entry-area:hover{border-color:#d97706;background-color:#fef3c7}.manual-entry-button{cursor:pointer;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.5rem;width:100%;background:none;border:none;padding:0}.manual-icon{font-size:2rem;height:30px;display:flex;align-items:flex-start;line-height:1}.manual-text{font-size:1.125rem;font-weight:600;color:#b45309;margin:0}.manual-subtext{font-size:.875rem;color:#92400e}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.modal-content{background-color:#fff;border-radius:.75rem;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb;background-color:#fffbeb}.modal-title{font-size:1.5rem;font-weight:700;color:#92400e;margin:0}.modal-close-btn{background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.modal-close-btn:hover{color:#374151}.modal-body{padding:1.5rem}.modal-description{font-size:.875rem;color:#6b7280;margin-bottom:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e5e7eb;background-color:#f9fafb}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:.875rem;font-weight:600;color:#78350f;margin-bottom:.5rem}.form-input,.form-textarea{padding:.75rem;border:1px solid #d97706;border-radius:.375rem;font-size:1rem;transition:all .2s;background-color:#fff}.form-input:focus,.form-textarea:focus{outline:none;border-color:#b45309;box-shadow:0 0 0 3px #f59e0b1a}.form-textarea{resize:vertical;min-height:80px}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem}.btn-cancel{padding:.75rem 1.5rem;background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:.375rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel:hover{background-color:#e5e7eb}.upload-input{position:absolute;width:0;height:0;opacity:0}.camera-label{cursor:pointer;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.5rem}.camera-icon{font-size:2.5rem;height:35px;display:flex;align-items:flex-start;line-height:1}.camera-text{font-size:1.125rem;font-weight:600;color:#047857;margin:0}.camera-subtext{font-size:.875rem;color:#065f46}.upload-label{cursor:pointer;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.5rem}.upload-icon{font-size:2.5rem;height:35px;display:flex;align-items:flex-start;line-height:1}.upload-text{font-size:1.125rem;font-weight:600;color:#374151;margin:0}.upload-subtext{font-size:.875rem;color:#6b7280}.image-preview-section{margin-top:2rem;padding:1.5rem;background-color:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb}.preview-title{font-size:1rem;font-weight:600;color:#111827;margin-bottom:1rem}.preview-image{width:100%;max-width:600px;height:auto;border-radius:.375rem;box-shadow:0 4px 6px -1px #0000001a;display:block;margin:0 auto}.processing-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.processing-modal{background:#fff;border-radius:1rem;padding:3rem 4rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;align-items:center;gap:1.5rem;min-width:320px;animation:modalFadeIn .3s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.loading-spinner-large{width:4rem;height:4rem;border:5px solid #e5e7eb;border-top-color:#3b82f6;border-right-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.processing-title{font-size:1.5rem;font-weight:700;color:#111827;margin:0}.processing-message{font-size:1rem;color:#6b7280;margin:0}.processing-dots{display:flex;gap:.5rem;margin-top:.5rem}.processing-dots .dot{width:.5rem;height:.5rem;background-color:#3b82f6;border-radius:50%;animation:dotBounce 1.4s infinite ease-in-out both}.processing-dots .dot:nth-child(1){animation-delay:-.32s}.processing-dots .dot:nth-child(2){animation-delay:-.16s}@keyframes dotBounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.recognition-result{margin-bottom:2rem;padding:.5rem;background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:.5rem}.result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.result-title{font-size:1.25rem;font-weight:600;color:#166534}.result-count{font-size:1.5rem;font-weight:700;color:#16a34a}.ticket-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.3rem;max-height:400px;overflow-y:auto;overflow-x:auto;width:100%}.ticket-item{background-color:#fff;border:1px solid #d1d5db;border-radius:.5rem;padding:5px;transition:all .2s;display:flex;align-items:center;gap:10px;overflow-x:auto;overflow-y:hidden;min-width:0}.ticket-item:hover{box-shadow:0 4px 6px -1px #0000001a;border-color:#3b82f6}.ticket-number{display:inline-block;background-color:#3b82f6;color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .5rem;border-radius:.25rem;min-width:45px;text-align:center;flex-shrink:0}.ticket-details{display:flex;flex:1;gap:.5rem;min-width:0}.ticket-info-row{display:flex;gap:0px;align-items:center;flex-wrap:nowrap;min-width:-moz-max-content;min-width:max-content;width:100%}.info-label{font-size:.875rem;font-weight:500;color:#6b7280;min-width:60px}.info-value{font-size:.875rem;color:#111827;font-weight:500;min-width:70px;text-align:left;flex-shrink:0}.info-value.info-error{font-size:12px;word-break:break-all;color:#888;min-width:auto}.info-badge{padding:4px 8px;border-radius:8px;font-size:12px;font-weight:700;color:#fff;white-space:nowrap;flex-shrink:0}.statistics-section{margin-bottom:2rem;padding:1.5rem;background-color:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb}.statistics-title{font-size:1.25rem;font-weight:600;color:#111827;margin-bottom:1.5rem}.statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.stat-card{background-color:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.stat-card-title{font-size:1rem;font-weight:600;color:#374151;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}.stat-list{display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:#f9fafb;border-radius:.375rem;transition:all .2s}.stat-item:hover{background-color:#eff6ff}.stat-name{font-size:.875rem;color:#374151;font-weight:500;flex:1}.stat-count{font-size:.875rem;font-weight:700;color:#3b82f6;background-color:#dbeafe;padding:.25rem .75rem;border-radius:.25rem}.action-buttons{display:flex;justify-content:flex-end;gap:1rem}.btn-reset,.btn-submit{padding:.75rem 2rem;font-size:1rem;font-weight:500;border-radius:.375rem;cursor:pointer;transition:all .2s;border:none;height:48px;display:inline-flex;align-items:center;justify-content:center}.btn-reset{background-color:#6b7280;color:#fff}.btn-reset:hover{background-color:#4b5563}.btn-submit{background-color:#10b981;color:#fff}.btn-submit:hover{background-color:#059669;box-shadow:0 4px 6px -1px #0000001a}.ticket-list::-webkit-scrollbar,.stat-list::-webkit-scrollbar,.restaurant-settlement-content::-webkit-scrollbar{width:8px;height:8px}.ticket-list::-webkit-scrollbar-track,.stat-list::-webkit-scrollbar-track,.restaurant-settlement-content::-webkit-scrollbar-track{background:#f1f5f9}.ticket-list::-webkit-scrollbar-thumb,.stat-list::-webkit-scrollbar-thumb,.restaurant-settlement-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.ticket-list::-webkit-scrollbar-thumb:hover,.stat-list::-webkit-scrollbar-thumb:hover,.restaurant-settlement-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.unrecognized-ticket-container{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:2rem;max-width:1200px;margin:0 auto}.unrecognized-form,.form-section{margin-bottom:2rem}.section-title{font-size:1.25rem;font-weight:600;color:#111827;margin-bottom:.5rem}.section-description{font-size:.875rem;color:#6b7280;margin-bottom:1.5rem}.unrecognized-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:1.5rem}.unrecognized-form-group{display:flex;flex-direction:column;margin-bottom:.5rem}.unrecognized-form-group.full-width{grid-column:1 / -1}.form-label{font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.form-label .required{color:#ef4444;margin-left:.25rem}.form-input{padding:.75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:1rem;transition:all .2s;width:100%}.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-input:disabled{background-color:#f3f4f6;cursor:not-allowed}.form-input[readonly]{background-color:#f9fafb}.form-textarea{padding:.75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:1rem;transition:all .2s;width:100%;resize:vertical;font-family:inherit}.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}.info-box{background-color:#f0f9ff;border:1px solid #bfdbfe;border-radius:.5rem;padding:1.5rem;margin-top:2rem}.info-title{font-size:1rem;font-weight:600;color:#1e40af;margin-bottom:1rem}.info-list{list-style-type:disc;padding-left:1.5rem;color:#1e3a8a}.info-list li{margin-bottom:.5rem;font-size:.875rem;line-height:1.5}.restaurant-settlement-content{overflow-y:auto;max-height:calc(100vh - 180px);-webkit-overflow-scrolling:touch}@media (max-width: 768px){.restaurant-settlement-content{max-height:calc(100vh - 200px)}.settlement-registration-container,.unrecognized-ticket-container,.form-section{padding:.5rem}.registration-title{font-size:1.5rem}.camera-area,.upload-area,.manual-entry-area{padding:1.5rem}.camera-icon,.upload-icon{font-size:2rem}.camera-text,.upload-text{font-size:1rem}.camera-subtext,.upload-subtext{font-size:.8rem}.statistics-grid,.ticket-list,.form-grid{grid-template-columns:1fr}.action-buttons{flex-direction:row;justify-content:space-between}.action-buttons .btn-reset,.action-buttons .btn-submit,.action-buttons .btn-debug{flex:1;padding:.75rem .5rem}.form-actions{flex-direction:column}.form-actions .btn-reset,.form-actions .btn-submit{width:100%}.processing-modal{padding:2rem 2.5rem;min-width:280px;margin:1rem}.processing-title{font-size:1.25rem}.loading-spinner-large{width:3rem;height:3rem}}.restaurant-dashboard-container{min-height:100vh;background-color:#f9fafb}.restaurant-nav{background-color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.restaurant-nav-content{max-width:80rem;margin:0 auto;padding:0 1rem}.restaurant-nav-flex{display:flex;justify-content:space-between;height:4rem}.restaurant-nav-left{display:flex;align-items:center}.restaurant-nav-title{font-size:1.25rem;font-weight:600;color:#111827}.restaurant-nav-right{display:flex;align-items:center;gap:1rem}.business-number{font-size:.875rem;color:#4b5563}.profile-button{background-color:#2563eb;padding:.5rem 1rem;border-radius:.375rem;color:#fff;font-size:.875rem;font-weight:500;border:none;cursor:pointer}.profile-button:hover{background-color:#1d4ed8}.restaurant-main{max-width:90rem;margin:0 auto;padding:1rem 1.5rm}.restaurant-main-content{padding:.5rem}.tab-nav{border-bottom:1px solid #e5e7eb;overflow-x:auto;-webkit-overflow-scrolling:touch;overflow-y:hidden;min-height:calc(3rem + 2px)}.tab-nav-flex{margin-bottom:-1px;display:flex;gap:.5rem}@media (min-width: 768px){.tab-nav-flex{gap:2rem}}.tab-button{white-space:nowrap;padding:.75rem 1rem;border:1px solid transparent;border-radius:.5rem;font-weight:500;font-size:.875rem;cursor:pointer;background-color:#f9fafb;transition:all .2s;display:flex;align-items:center;gap:.5rem}@media (min-width: 768px){.tab-button{padding:.5rem .25rem;border:none;border-radius:0;border-bottom:2px solid transparent;background:none}}.tab-button-active{background-color:#dbeafe;color:#2563eb;border-color:#3b82f6}@media (min-width: 768px){.tab-button-active{background:none;border-color:transparent;border-bottom-color:#3b82f6}}.tab-button-inactive{color:#6b7280}.tab-button-inactive:hover{color:#374151;background-color:#e5e7eb}@media (min-width: 768px){.tab-button-inactive:hover{background:none;border-bottom-color:#d1d5db}}.date-selector{margin-bottom:1.5rem;display:flex;align-items:center;justify-content:center;gap:1rem}.date-selector-group{display:flex;align-items:center;gap:.5rem}.date-label{font-size:.875rem;font-weight:500;color:#374151}.date-input{border:1px solid #d1d5db;border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem}.date-input:focus{outline:none;ring:2px;ring-color:#3b82f6}.loading-container{text-align:center;padding:3rem 0}.restaurant-loading-spinner{animation:spin 1s linear infinite;border-radius:9999px;height:3rem;width:3rem;border-bottom:2px solid #2563eb;margin:0 auto}.loading-text{margin-top:1rem;color:#4b5563}.stats-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:.5rem;margin-bottom:2rem}.stat-card{padding:.5rem;background-color:#fff;overflow:hidden;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;border-radius:.5rem}.stat-card-content{padding:.5rem}.stat-card-flex{display:flex;align-items:center}.stat-icon-wrapper{flex-shrink:0}.stat-icon{width:2rem;height:2rem;border-radius:.375rem;display:flex;align-items:center;justify-content:center}.stat-icon-green{background-color:#22c55e}.stat-icon-blue{background-color:#3b82f6}.stat-icon-purple{background-color:#a855f7}.stat-icon-emoji{color:#fff;font-size:.875rem;font-weight:500}.stat-info{margin-left:1.25rem;width:0;flex:1}.stat-info dl{display:flex;align-items:center;gap:.5rem;margin:0}.stat-label{font-size:.875rem;font-weight:500;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0}.stat-value{font-size:1.125rem;font-weight:500;color:#111827;margin:0}.details-card{background-color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;overflow:hidden;border-radius:.375rem}.details-card-content{padding:1.5rem}.details-title{font-size:1.125rem;line-height:1.75rem;font-weight:500;color:#111827;margin-bottom:1rem}.empty-state{text-align:center;padding:3rem 0}.empty-state-text{color:#6b7280}.department-list{display:flex;flex-direction:column;gap:1rem}.department-item{border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem}.department-header{display:flex;justify-content:space-between;align-items:flex-start}.department-title{font-size:1.125rem;font-weight:600;color:#111827}.department-stats{margin-top:.5rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;font-size:.875rem}.department-stat-label{color:#6b7280}.department-stat-value{font-weight:500}.transaction-list{margin-top:1rem;border-top:1px solid #e5e7eb;padding-top:1rem}.transaction-list-title{font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.transaction-items{display:flex;flex-direction:column;gap:.5rem;max-height:8rem;overflow-y:auto}.transaction-item{display:flex;justify-content:space-between;font-size:.75rem;color:#4b5563;background-color:#f9fafb;padding:.5rem;border-radius:.25rem}@media (min-width: 640px){.restaurant-nav-content{padding-left:1.5rem;padding-right:1.5rem}.restaurant-main{padding-left:1rem;padding-right:1rem}.restaurant-main-content{padding-left:0}}@media (max-width: 767px){.restaurant-nav-flex{flex-direction:column;height:auto;padding:1rem 0;gap:.75rem}.restaurant-nav-left{width:100%;justify-content:center}.restaurant-nav-title{font-size:1.125rem;text-align:center}.restaurant-nav-right{width:100%;flex-direction:column;align-items:stretch;gap:.5rem}.business-number{text-align:center;font-size:.875rem}.button-group{display:flex;gap:.5rem;width:100%}.button-group .profile-button,.button-group .logout-button{flex:1;padding:.625rem 1rem}.restaurant-main{padding:0}.restaurant-main-content{padding:.5rem}.details-card{border-radius:0;width:100vw;margin-left:calc(-50vw + 50%)}.details-card-content{padding:1rem}}@media (min-width: 768px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.restaurant-nav-content,.restaurant-main{padding-left:2rem;padding-right:2rem}}.user-info-dashboard{margin-bottom:2rem}.user-info-card{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.user-info-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .2s}.user-info-header:hover{background-color:#f9fafb}@media (min-width: 768px){.user-info-header{cursor:default;pointer-events:none}.user-info-header:hover{background-color:transparent}}.user-info-title{font-size:1.25rem;font-weight:600;color:#111827;margin:0}.user-info-toggle{background:none;border:none;font-size:1rem;color:#6b7280;cursor:pointer;padding:.25rem .5rem;transition:color .2s}.user-info-toggle:hover{color:#111827}@media (min-width: 768px){.user-info-toggle{display:none}}.user-info-content{max-height:0;overflow:hidden;transition:max-height .3s ease-out}.user-info-content.show{max-height:500px;transition:max-height .3s ease-in}@media (min-width: 768px){.user-info-content{max-height:none;overflow:visible}}.user-info-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1rem;padding:1rem 1.5rem}@media (min-width: 640px){.user-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.user-info-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.user-info-item{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem;background-color:#f9fafb;border-radius:.375rem}.user-info-label{font-size:.875rem;font-weight:500;color:#6b7280}.user-info-value{font-size:.875rem;font-weight:600;color:#111827;text-align:right}.restaurant-settlement-section{display:flex;flex-direction:column;gap:.5rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-dashboard-container{min-height:100vh;background-color:#f9fafb}.admin-dashboard-nav{background-color:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.admin-dashboard-nav-content{max-width:80rem;margin:0 auto;padding:0 1rem}.admin-dashboard-nav-flex{display:flex;justify-content:space-between;height:4rem}.admin-dashboard-nav-left{display:flex;align-items:center}.admin-dashboard-nav-title{font-size:1.25rem;font-weight:600;color:#111827}@media (max-width: 640px){.admin-dashboard-nav-title{font-size:1rem}}.admin-dashboard-nav-right{display:flex;align-items:center;gap:1rem}.logout-button{background-color:#dc2626;padding:.5rem 1rem;border-radius:.375rem;color:#fff;font-size:.875rem;font-weight:500;border:none;cursor:pointer}.logout-button:hover{background-color:#b91c1c}.admin-dashboard-main{max-width:80rem;margin:0 auto;padding:1.5rem 0}.admin-dashboard-main-content{padding:1.5rem 1rem}.admin-dashboard-center{text-align:center;padding:3rem 0}.admin-dashboard-center-title{font-size:1.5rem;font-weight:700;color:#111827}.admin-dashboard-center-text{margin-top:1rem;color:#4b5563}.tabs-container{display:flex;border-bottom:2px solid #e5e7eb;margin-bottom:2rem;gap:.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.tab-button{padding:.75rem 1.5rem;font-size:.9375rem;font-weight:500;color:#6b7280;background-color:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:all .2s;position:relative;top:2px;white-space:nowrap;flex-shrink:0}.tab-button:hover{color:#111827;background-color:#f9fafb}.tab-button.active{color:#2563eb;border-bottom-color:#2563eb}@media (max-width: 640px){.tabs-container{gap:0;padding-bottom:2px}.tab-button{padding:.625rem .875rem;font-size:.8125rem}}.bulk-upload-container{background-color:#fff;padding:2rem;border-radius:.5rem;box-shadow:0 1px 3px #0000001a}.bulk-upload-title{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:.5rem}.bulk-upload-description{color:#6b7280;margin-bottom:2rem}.template-download-section,.file-upload-section{margin-bottom:2rem;padding:1.5rem;background-color:#f9fafb;border-radius:.5rem}.template-download-section h3,.file-upload-section h3{font-size:1.125rem;font-weight:600;color:#111827;margin-bottom:1rem}.download-template-button{padding:.75rem 1.5rem;background-color:#059669;color:#fff;border:none;border-radius:.375rem;font-weight:500;cursor:pointer;transition:background-color .2s}.download-template-button:hover{background-color:#047857}.file-input-wrapper{margin-bottom:1rem}.file-input-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.file-input{display:block;width:100%;padding:.625rem;border:2px dashed #d1d5db;border-radius:.375rem;background-color:#fff;cursor:pointer;transition:border-color .2s}.file-input:hover{border-color:#9ca3af}.selected-file{margin-top:.5rem;font-size:.875rem;color:#059669;font-weight:500}.upload-button{padding:.75rem 1.5rem;background-color:#2563eb;color:#fff;border:none;border-radius:.375rem;font-weight:500;cursor:pointer;transition:background-color .2s}.upload-button:hover:not(:disabled){background-color:#1d4ed8}.upload-button:disabled{background-color:#9ca3af;cursor:not-allowed}@media (min-width: 640px){.admin-dashboard-nav-content,.admin-dashboard-main{padding-left:1.5rem;padding-right:1.5rem}.admin-dashboard-main-content{padding-left:0}}@media (min-width: 1024px){.admin-dashboard-nav-content,.admin-dashboard-main{padding-left:2rem;padding-right:2rem}}.statistics-container{background-color:#fff;padding:2rem;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;max-height:calc(100vh - 180px);overflow-y:auto;-webkit-overflow-scrolling:touch}.section-title{font-size:1.25rem;font-weight:700;color:#111827;margin-bottom:1.5rem}.section-description{color:#6b7280;margin-bottom:1.5rem}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media (min-width: 768px){.stats-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr;gap:.75rem}}.stat-card{background-color:#f9fafb;padding:1.5rem;border-radius:.5rem;text-align:center}.stat-card h3{font-size:.875rem;font-weight:500;color:#6b7280;margin-bottom:.5rem}.stat-value{font-size:2rem;font-weight:700;color:#111827;margin:0}.stat-sub{font-size:.75rem;color:#059669}.meal-ticket-stats{margin-top:2rem;padding-top:2rem;border-top:1px solid #e5e7eb}.month-selector{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem}.month-selector label{font-weight:500;color:#374151}.month-input{padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem}.settlement-auth-container{background-color:#fff;padding:2rem;border-radius:.5rem;box-shadow:0 1px 3px #0000001a}.selector-row{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.selector-group{flex:1;min-width:200px}@media (max-width: 640px){.selector-row{flex-direction:column;gap:.75rem}.selector-group{min-width:100%}}.selector-group label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.selector-input{width:100%;padding:.625rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;background-color:#fff}.selector-input:disabled{background-color:#f3f4f6;cursor:not-allowed}.users-table-container,.restaurants-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 640px){.users-table th,.users-table td,.restaurants-table th,.restaurants-table td{padding:.5rem .625rem;font-size:.75rem}.action-buttons{flex-direction:column;gap:.375rem}.edit-btn,.activate-btn,.deactivate-btn,.grant-btn,.revoke-btn{padding:.375rem .5rem;font-size:.6875rem}}.users-table,.restaurants-table{width:100%;border-collapse:collapse;font-size:.875rem}.users-table th,.users-table td,.restaurants-table th,.restaurants-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e5e7eb}.users-table th,.restaurants-table th{background-color:#f9fafb;font-weight:600;color:#374151}.users-table td,.restaurants-table td{color:#111827}.grant-btn{padding:.375rem .75rem;background-color:#2563eb;color:#fff;border:none;border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer}.grant-btn:hover{background-color:#1d4ed8}.revoke-btn{padding:.375rem .75rem;background-color:#dc2626;color:#fff;border:none;border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer}.revoke-btn:hover{background-color:#b91c1c}.activate-btn{padding:.375rem .75rem;background-color:#059669;color:#fff;border:none;border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer}.activate-btn:hover{background-color:#047857}.deactivate-btn{padding:.375rem .75rem;background-color:#f59e0b;color:#fff;border:none;border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer}.deactivate-btn:hover{background-color:#d97706}.no-action{color:#9ca3af}.no-data{text-align:center;color:#6b7280;padding:2rem}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-badge.active{background-color:#d1fae5;color:#059669}.status-badge.inactive{background-color:#fee2e2;color:#dc2626}.restaurant-manage-container{background-color:#fff;padding:2rem;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;max-height:70vh;display:flex;flex-direction:column}.restaurant-manage-container .restaurants-table-container{flex:1;overflow-y:auto;max-height:50vh}.edit-btn{padding:.375rem .75rem;background-color:#6366f1;color:#fff;border:none;border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer;margin-right:.5rem}.edit-btn:hover{background-color:#4f46e5}.restaurant-edit-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.restaurant-edit-modal{background-color:#fff;border-radius:.5rem;padding:2rem;width:90%;max-width:500px;max-height:80vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}.restaurant-edit-modal h2{font-size:1.25rem;font-weight:700;color:#111827;margin-bottom:1.5rem}.modal-form-group{margin-bottom:1rem}.modal-form-group label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.375rem}.modal-form-group input{width:100%;padding:.625rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;box-sizing:border-box}.modal-form-group input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.modal-button-group{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.modal-cancel-btn{padding:.625rem 1.25rem;background-color:#e5e7eb;color:#374151;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer}.modal-cancel-btn:hover{background-color:#d1d5db}.modal-save-btn{padding:.625rem 1.25rem;background-color:#2563eb;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer}.modal-save-btn:hover:not(:disabled){background-color:#1d4ed8}.modal-save-btn:disabled{background-color:#9ca3af;cursor:not-allowed}.action-buttons{display:flex;gap:.5rem}.users-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.users-modal{background-color:#fff;border-radius:.5rem;padding:1.5rem;width:95%;max-width:900px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040}.users-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.users-modal-header h2{font-size:1.25rem;font-weight:700;color:#111827;margin:0}.users-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:.25rem;line-height:1}.users-modal-close:hover{color:#111827}.users-search-container{margin-bottom:1rem}.users-search-input{width:100%;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;box-sizing:border-box}.users-search-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.users-search-input::-moz-placeholder{color:#9ca3af}.users-search-input::placeholder{color:#9ca3af}.users-modal-content{flex:1;overflow-y:auto}.users-total-count{font-size:.875rem;color:#6b7280;margin-bottom:1rem}.department-section{margin-bottom:1.5rem}.department-header{background-color:#2563eb;color:#fff;padding:.75rem 1rem;border-radius:.375rem .375rem 0 0;font-weight:600;font-size:.9375rem}.team-section{border:1px solid #e5e7eb;border-top:none}.team-section:last-child{border-radius:0 0 .375rem .375rem}.team-header{background-color:#f3f4f6;padding:.625rem 1rem;font-weight:500;font-size:.875rem;color:#374151;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.team-user-count{font-size:.75rem;color:#6b7280;font-weight:400}.team-users-list{background-color:#fff}.user-row{display:flex;justify-content:space-between;align-items:center;padding:.625rem 1rem;border-bottom:1px solid #f3f4f6;font-size:.875rem}.user-row:last-child{border-bottom:none}.user-info{display:flex;gap:1.5rem;flex:1}.user-name{font-weight:500;color:#111827;min-width:80px}.user-email{color:#6b7280}.user-role{font-size:.75rem;padding:.25rem .5rem;border-radius:9999px;background-color:#e5e7eb;color:#374151}.user-role.settlement{background-color:#dbeafe;color:#1d4ed8}.no-users-message{text-align:center;color:#6b7280;padding:2rem}.stat-card.clickable{cursor:pointer;transition:transform .2s,box-shadow .2s}.stat-card.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.ticket-stats-summary{display:flex;gap:1.5rem;padding:1rem;background-color:#f0f9ff;border-radius:.375rem;margin-bottom:1rem;flex-wrap:wrap}.ticket-stats-summary span{font-size:.875rem;color:#374151}.ticket-stats-summary strong{color:#1d4ed8}.ticket-dept-header{display:flex;justify-content:space-between;align-items:center}.dept-stats{font-size:.75rem;font-weight:400;opacity:.9}.ticket-user-row{display:flex;justify-content:space-between;align-items:center}.ticket-user-stats{display:flex;gap:.75rem}.ticket-stat{font-size:.75rem;padding:.125rem .5rem;border-radius:.25rem}.ticket-stat.allocated{background-color:#e0e7ff;color:#3730a3}.ticket-stat.used{background-color:#d1fae5;color:#065f46}.ticket-stat.unused{background-color:#fee2e2;color:#991b1b}.users-modal-split{display:flex;height:100%;min-height:400px}.users-modal-left{width:30%;border-right:1px solid #e5e7eb;overflow-y:auto;padding-right:1rem}.users-modal-right{width:70%;overflow-y:auto;padding-left:1rem}.stats-tree{padding:0}.stats-tree-dept{margin-bottom:.5rem}.stats-tree-dept-header{display:flex;justify-content:space-between;align-items:center;padding:.625rem .75rem;background-color:#2563eb;color:#fff;border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;transition:background-color .2s}.stats-tree-dept-header:hover{background-color:#1d4ed8}.stats-tree-dept-header.active{background-color:#1e40af}.stats-tree-dept-count{font-size:.75rem;background-color:#fff3;padding:.125rem .5rem;border-radius:9999px}.stats-tree-teams{margin-left:.75rem;margin-top:.25rem}.stats-tree-team{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background-color:#f3f4f6;border-radius:.25rem;margin-bottom:.25rem;cursor:pointer;font-size:.8125rem;color:#374151;transition:background-color .2s}.stats-tree-team:hover{background-color:#e5e7eb}.stats-tree-team.active{background-color:#dbeafe;color:#1d4ed8;font-weight:500}.stats-tree-team-count{font-size:.75rem;color:#6b7280}.stats-tree-team.active .stats-tree-team-count{color:#1d4ed8}.right-panel-title{font-size:1rem;font-weight:600;color:#111827;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.right-panel-placeholder{display:flex;justify-content:center;align-items:center;height:100%;color:#9ca3af;font-size:.875rem}.user-list-table{width:100%;border-collapse:collapse;font-size:.875rem}.user-list-table th,.user-list-table td{padding:.625rem .75rem;text-align:left;border-bottom:1px solid #e5e7eb}.user-list-table th{background-color:#f9fafb;font-weight:600;color:#374151}.user-list-table td{color:#111827}.checkbox-group{display:flex;align-items:center}.checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500;color:#374151}.checkbox-group input[type=checkbox]{width:1.125rem;height:1.125rem;cursor:pointer}.zeropay-qr-upload{margin-top:.5rem}.zeropay-qr-preview{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1rem;background-color:#f9fafb;border-radius:.375rem;border:1px solid #e5e7eb}.zeropay-qr-preview img{max-width:200px;max-height:200px;border-radius:.25rem;box-shadow:0 1px 3px #0000001a}.remove-qr-btn{padding:.375rem .75rem;background-color:#dc2626;color:#fff;border:none;border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer}.remove-qr-btn:hover{background-color:#b91c1c}.zeropay-qr-placeholder{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem;background-color:#f9fafb;border:2px dashed #d1d5db;border-radius:.375rem}.hidden-file-input{display:none}.upload-qr-btn{padding:.625rem 1.25rem;background-color:#2563eb;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer}.upload-qr-btn:hover{background-color:#1d4ed8}.dept-team-modal{max-width:700px}.bulk-upload-actions{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:#f0f9ff;border-radius:.375rem;margin-bottom:1rem;flex-wrap:wrap}.template-download-btn{padding:.5rem 1rem;background-color:#059669;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap}.template-download-btn:hover{background-color:#047857}.bulk-upload-file-group{display:flex;align-items:center;gap:.5rem}.bulk-file-input{padding:.375rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;background-color:#fff;max-width:200px}.bulk-upload-btn{padding:.5rem 1rem;background-color:#2563eb;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap}.bulk-upload-btn:hover:not(:disabled){background-color:#1d4ed8}.bulk-upload-btn:disabled{background-color:#9ca3af;cursor:not-allowed}.selected-file-name{font-size:.75rem;color:#059669;font-weight:500}.dept-team-table{width:100%;border-collapse:collapse;font-size:.875rem}.dept-team-table th,.dept-team-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e5e7eb}.dept-team-table th{background-color:#f9fafb;font-weight:600;color:#374151}.dept-team-table td{color:#111827}.dept-team-table tbody tr:hover{background-color:#f9fafb}
