/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-900:oklch(39.6% .141 25.723);--color-orange-50:oklch(98% .016 73.684);--color-orange-400:oklch(75% .183 55.934);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-orange-900:oklch(40.8% .123 38.172);--color-green-50:oklch(98.2% .018 155.826);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-900:oklch(39.3% .095 152.535);--color-blue-50:oklch(97% .014 254.604);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-900:oklch(37.9% .146 265.522);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-900:oklch(38.1% .176 304.987);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-gray-950:oklch(13% .028 261.692);--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.-top-1{top:calc(var(--spacing)*-1)}.top-0{top:calc(var(--spacing)*0)}.-right-1{right:calc(var(--spacing)*-1)}.right-0{right:calc(var(--spacing)*0)}.right-3{right:calc(var(--spacing)*3)}.bottom-0{bottom:calc(var(--spacing)*0)}.left-0{left:calc(var(--spacing)*0)}.isolate{isolation:isolate}.mt-1{margin-top:calc(var(--spacing)*1)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-10{height:calc(var(--spacing)*10)}.h-11{height:calc(var(--spacing)*11)}.h-full{height:100%}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-3{width:calc(var(--spacing)*3)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-64{width:calc(var(--spacing)*64)}.w-full{width:100%}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.place-content-center{place-content:center}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*4)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-x-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-blue-500{border-color:var(--color-blue-500)}.border-gray-200{border-color:var(--color-gray-200)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-500{background-color:var(--color-green-500)}.bg-orange-50{background-color:var(--color-orange-50)}.bg-orange-500{background-color:var(--color-orange-500)}.bg-purple-50{background-color:var(--color-purple-50)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-500{background-color:var(--color-red-500)}.bg-white{background-color:var(--color-white)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-blue-500{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-blue-600{--tw-gradient-to:var(--color-blue-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.fill-white{fill:var(--color-white)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-6{padding:calc(var(--spacing)*6)}.px-3{padding-inline:calc(var(--spacing)*3)}.py-2{padding-block:calc(var(--spacing)*2)}.pt-4{padding-top:calc(var(--spacing)*4)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-900{color:var(--color-gray-900)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-orange-600{color:var(--color-orange-600)}.text-purple-600{color:var(--color-purple-600)}.text-red-600{color:var(--color-red-600)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow,.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition\!{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events!important;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function))!important;transition-duration:var(--tw-duration,var(--default-transition-duration))!important}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media(hover:hover){.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:text-blue-700:hover{color:var(--color-blue-700)}.hover\:text-gray-900:hover{color:var(--color-gray-900)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media(min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(prefers-color-scheme:dark){.dark\:border-gray-800{border-color:var(--color-gray-800)}.dark\:bg-blue-600{background-color:var(--color-blue-600)}.dark\:bg-blue-900\/20{background-color:#1c398e33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-blue-900\/20{background-color:color-mix(in oklab,var(--color-blue-900)20%,transparent)}}.dark\:bg-blue-900\/50{background-color:#1c398e80}@supports (color:color-mix(in lab,red,red)){.dark\:bg-blue-900\/50{background-color:color-mix(in oklab,var(--color-blue-900)50%,transparent)}}.dark\:bg-gray-700{background-color:var(--color-gray-700)}.dark\:bg-gray-900{background-color:var(--color-gray-900)}.dark\:bg-gray-950{background-color:var(--color-gray-950)}.dark\:bg-green-900\/20{background-color:#0d542b33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-green-900\/20{background-color:color-mix(in oklab,var(--color-green-900)20%,transparent)}}.dark\:bg-orange-900\/20{background-color:#7e2a0c33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-orange-900\/20{background-color:color-mix(in oklab,var(--color-orange-900)20%,transparent)}}.dark\:bg-purple-900\/20{background-color:#59168b33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-purple-900\/20{background-color:color-mix(in oklab,var(--color-purple-900)20%,transparent)}}.dark\:bg-red-900\/20{background-color:#82181a33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-red-900\/20{background-color:color-mix(in oklab,var(--color-red-900)20%,transparent)}}.dark\:text-blue-300{color:var(--color-blue-300)}.dark\:text-blue-400{color:var(--color-blue-400)}.dark\:text-gray-100{color:var(--color-gray-100)}.dark\:text-gray-300{color:var(--color-gray-300)}.dark\:text-gray-400{color:var(--color-gray-400)}.dark\:text-gray-500{color:var(--color-gray-500)}.dark\:text-green-400{color:var(--color-green-400)}.dark\:text-orange-400{color:var(--color-orange-400)}.dark\:text-purple-400{color:var(--color-purple-400)}.dark\:text-red-400{color:var(--color-red-400)}@media(hover:hover){.dark\:hover\:bg-gray-800:hover{background-color:var(--color-gray-800)}.dark\:hover\:text-blue-300:hover{color:var(--color-blue-300)}.dark\:hover\:text-gray-100:hover{color:var(--color-gray-100)}.dark\:hover\:text-gray-200:hover{color:var(--color-gray-200)}}}}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;font-size:16px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow-x:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@media(max-width:768px){html{font-size:15px}body{-webkit-overflow-scrolling:touch}}@media(max-width:480px){html{font-size:14px}}@supports (padding:env(safe-area-inset-bottom)){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom)}}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}:focus-visible{outline-offset:2px;outline:2px solid #fa541c}*{-webkit-tap-highlight-color:transparent}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.noel-decorations{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.snowflake{position:absolute;top:-20px;color:#fa541c;opacity:.6;font-size:inherit;animation:fall linear infinite;-webkit-user-select:none;-moz-user-select:none;user-select:none}@keyframes fall{0%{transform:translateY(0) rotate(0);opacity:.6}50%{opacity:.8}to{transform:translateY(100vh) rotate(360deg);opacity:.4}}.star{position:absolute;color:#fa541c;animation:twinkle 2s ease-in-out infinite;-webkit-user-select:none;-moz-user-select:none;user-select:none}.star-dark{opacity:.7;filter:drop-shadow(0 0 5px rgba(250,84,28,.6))}.star-light{opacity:.5;filter:drop-shadow(0 0 3px rgba(250,84,28,.4))}@keyframes twinkle{0%,to{opacity:.4;transform:scale(1) rotate(0)}50%{opacity:1;transform:scale(1.2) rotate(180deg)}}.ornament{position:absolute;font-size:2rem;animation:float 4s ease-in-out infinite;-webkit-user-select:none;-moz-user-select:none;user-select:none;filter:drop-shadow(0 0 10px rgba(250,84,28,.5))}.ornament-1{top:10%;left:5%;animation-delay:0s}.ornament-2{top:20%;right:8%;animation-delay:1s}.ornament-3{bottom:25%;left:10%;animation-delay:1.5s}.ornament-4{bottom:15%;right:5%;animation-delay:.5s}.ornament-5{top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:2s;font-size:1.5rem}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-20px) rotate(10deg)}66%{transform:translateY(10px) rotate(-10deg)}}.corner-decoration{position:fixed;font-size:1.5rem;color:#fa541c;animation:sparkle 3s ease-in-out infinite;-webkit-user-select:none;-moz-user-select:none;user-select:none;filter:drop-shadow(0 0 8px rgba(250,84,28,.6))}.corner-top-left{top:60px;left:20px;animation-delay:0s}.corner-top-right{top:60px;right:20px;animation-delay:.8s}.corner-bottom-left{bottom:20px;left:20px;animation-delay:1.6s}.corner-bottom-right{bottom:20px;right:20px;animation-delay:2.4s}@keyframes sparkle{0%,to{opacity:.4;transform:scale(1) rotate(0)}50%{opacity:1;transform:scale(1.3) rotate(180deg)}}@media(max-width:768px){.ornament{font-size:1.5rem}.corner-decoration,.ornament-5{font-size:1.2rem}.snowflake{font-size:.8rem}}.home-page{min-height:100vh;padding:20px;transition:background-color .3s ease}.home-page.dark-mode{background:#000;color:#fff}.home-page.light-mode{background:#f5f5f5;color:#333}.home-header{text-align:center;margin-bottom:50px;transition:color .3s ease}.home-header.admin-style{margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid;transition:border-color .3s ease}.home-page.dark-mode .home-header.admin-style{border-color:#333}.home-page.light-mode .home-header.admin-style{border-color:#e0e0e0}.home-page.dark-mode .home-header{color:#fff}.home-page.light-mode .home-header{color:#333}.header-content{position:relative;display:flex;justify-content:space-between;align-items:center;max-width:1600px;margin:0 auto}.home-header h1,.home-header p{margin:0}.home-header h1{font-size:2.5rem;margin-bottom:10px;font-weight:700;text-align:center;width:100%}.home-header p{font-size:1.2rem;opacity:.9}.home-page.dark-mode .home-button{background:#fa541c}.home-page.light-mode .home-button{background:#fff;color:#333;box-shadow:0 4px 15px #0000001a}.home-page.light-mode .home-button:hover{box-shadow:0 6px 20px #0003}.home-page.dark-mode .theme-toggle{background:#fa541c}.home-page.light-mode .theme-toggle{background:#fff;color:#333;box-shadow:0 4px 15px #0000001a}.home-page.light-mode .theme-toggle:hover{box-shadow:0 6px 20px #0003}.admin-button{position:absolute;top:50%;right:60px;transform:translateY(-50%);color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 15px #0003}.home-page.dark-mode .admin-button{background:#fa541c}.home-page.light-mode .admin-button{background:#fa541c;box-shadow:0 4px 15px #0000001a}.admin-button:hover{transform:translateY(-50%) scale(1.05);box-shadow:0 6px 20px #fa541c66;background:#e6450f}@media(max-width:768px){.admin-button{right:0;font-size:.9rem;padding:8px 15px}.theme-toggle{right:60px}}.home-main{display:flex;justify-content:center;align-items:center;min-height:50vh;padding:20px}.calendar-buttons-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;max-width:1200px;width:100%}.calendar-button{background:#fa541c;border:none;border-radius:20px;padding:40px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 15px 35px #fa541c4d;position:relative;overflow:hidden}.calendar-button:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#ffffff1a,#fff0);opacity:0;transition:opacity .3s ease}.calendar-button:hover:before{opacity:1}.calendar-button:hover{transform:translateY(-10px) scale(1.03);box-shadow:0 20px 45px #fa541c66}.calendar-button:active{transform:translateY(-5px) scale(1.01)}.button-content{position:relative;z-index:1;text-align:center}.button-content h2{color:#fff;font-size:2.5rem;font-weight:700;margin:0 0 15px;text-shadow:0 2px 10px rgba(0,0,0,.2)}.button-content p{color:#ffffffe6;font-size:1.2rem;margin:0;font-weight:500}.mobile-menu-overlay{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.home-sidebar{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.home-sidebar.mobile-open{transform:translate(0)!important}@media(max-width:768px){.home-sidebar{width:100%!important;max-width:100%!important;right:0!important;box-shadow:0 4px 20px #0000004d!important}}@media(max-width:768px){.home-page{padding:12px}.header-content{padding-left:50px;padding-right:50px;flex-wrap:wrap;gap:12px}.mobile-header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 18px #0000001f}.calendar-buttons-container{grid-template-columns:1fr;gap:16px;padding:0 8px}.calendar-button{padding:30px 24px}.button-content h2{font-size:1.8rem}.button-content p{font-size:.95rem}.home-header h1{font-size:1.8rem;text-align:center;width:100%}.home-header p{display:none!important}.home-header{margin-bottom:30px}.home-main{padding:12px;min-height:40vh}.home-button,.theme-toggle{width:44px;height:44px;font-size:1.3rem}}@media(max-width:480px){.home-page{padding:8px}.header-content{padding-left:0;padding-right:0;flex-direction:column;align-items:center;text-align:center}.header-content>div:first-child{order:2;width:100%}.home-button{position:static!important;transform:none!important;order:1}.theme-toggle{position:static!important;transform:none!important;order:3}.admin-button{position:static!important;transform:none!important;order:4;right:auto!important}.calendar-buttons-container{gap:12px;padding:0}.calendar-button{padding:24px 20px;border-radius:16px}.button-content h2{font-size:1.5rem}.button-content p{font-size:.9rem}.home-header h1{font-size:1.5rem;margin-bottom:8px;text-align:center;width:100%}.home-header p{display:none!important}.home-main{padding:8px}}@media(max-width:768px)and (orientation:landscape){.home-main{min-height:30vh}.calendar-buttons-container{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.calendar-button{padding:24px 20px}}.calendar{border-radius:24px;box-shadow:0 25px 50px #00000014,0 0 0 1px #ffffff0d;padding:48px;max-width:1600px;width:100%;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background-color .3s ease,border-color .3s ease}@media(max-width:768px){.calendar{padding:16px 8px;border-radius:12px;overflow-x:hidden;max-width:100%;box-sizing:border-box;margin:0}}@media(max-width:480px){.calendar{padding:12px 6px;border-radius:10px}}.calendar.dark-mode{background:#464646;border:1px solid rgba(255,255,255,.2)}.calendar.light-mode{background:#fff;border:1px solid rgba(0,0,0,.1);box-shadow:0 25px 50px #0000001a,0 0 0 1px #0000000d}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;padding:0 8px}@media(max-width:768px){.calendar-header{margin-bottom:16px;flex-wrap:wrap;gap:10px;justify-content:center}}@media(max-width:480px){.calendar-header{margin-bottom:12px;gap:8px;padding:0 4px}}.nav-button{color:#fff;border:none;border-radius:16px;width:48px;height:48px;font-size:22px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media(max-width:768px){.nav-button{width:40px;height:40px;font-size:18px}}.calendar.dark-mode .nav-button{background:#000;box-shadow:0 8px 25px #0000004d;border:1px solid rgba(255,255,255,.1)}.calendar.light-mode .nav-button{background:#333;box-shadow:0 8px 25px #0003;border:1px solid rgba(0,0,0,.1)}.nav-button:hover{transform:translateY(-2px) scale(1.05)}.calendar.dark-mode .nav-button:hover{background:#1a1a1a;box-shadow:0 12px 35px #00000080}.calendar.light-mode .nav-button:hover{background:#4a4a4a;box-shadow:0 12px 35px #0000004d}.month-year{font-size:1.4rem;font-weight:700;color:#fff;border-radius:20px;padding:16px 32px;margin:0;display:inline-block;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.5px;transition:all .3s ease}@media(max-width:768px){.month-year{font-size:1rem;padding:12px 20px;border-radius:12px;text-align:center}}.calendar.dark-mode .month-year{background:#000;box-shadow:0 8px 25px #0000004d;border:1px solid rgba(255,255,255,.1)}.calendar.light-mode .month-year{background:#333;box-shadow:0 8px 25px #0003;border:1px solid rgba(0,0,0,.1)}.calendar-container,.calendar-grid{display:flex;flex-direction:column;width:100%;overflow-x:hidden}.day-headers-row{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:16px;width:100%;min-width:0}@media(max-width:768px){.day-headers-row{gap:4px;margin-bottom:8px}}.day-header-cell{text-align:center;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:12px 8px;border-radius:12px;color:#fff;transition:all .3s ease;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:768px){.day-header-cell{font-size:.65rem;padding:8px 2px;letter-spacing:.1px;white-space:normal;word-break:break-word;line-height:1.2}}@media(max-width:480px){.day-header-cell{font-size:.55rem;padding:6px 1px;border-radius:8px}}.calendar.dark-mode .day-header-cell{background:#000;box-shadow:0 4px 15px #0000004d;border:1px solid rgba(255,255,255,.1)}.calendar.light-mode .day-header-cell{background:#333;box-shadow:0 4px 15px #0003;border:1px solid rgba(0,0,0,.1)}.date-headers{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:8px;width:100%;min-width:0}@media(max-width:768px){.date-headers{gap:4px;margin-bottom:4px}}.date-header{text-align:center;padding:16px 28px;border:1px solid #646464;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;display:flex;flex-direction:column;gap:12px;min-width:0;overflow:hidden;position:relative}.date-header.has-info-icon{padding-left:44px;padding-right:24px}@media(max-width:768px){.date-header{padding:14px 10px;gap:8px;border-radius:12px;min-height:80px;overflow:visible;align-items:center;justify-content:center;display:grid!important;grid-template-columns:1fr!important;place-items:center!important;text-align:center!important;position:relative!important;width:100%!important;box-sizing:border-box!important;max-width:100%!important}.date-header.has-info-icon{padding:14px 32px;box-sizing:border-box!important}}.calendar.dark-mode .date-header{background:#464646}.calendar.light-mode .date-header{background:#f8f9fa;border:1px solid rgba(0,0,0,.1)}.date-number{font-size:1.8rem;font-weight:700;color:#fff;background:#fa541c;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;margin:0 auto;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;overflow:visible}@media(max-width:768px){.date-number{font-size:1.1rem;width:40px!important;height:40px!important;margin:0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;align-self:center!important;justify-self:center!important;position:relative!important;left:auto!important;right:auto!important;transform:none!important;text-align:center!important;max-width:100%!important;box-sizing:border-box!important}.date-number span{display:block!important;width:100%!important;text-align:center!important;margin:0!important;padding:0!important}}@media(max-width:480px){.date-number{font-size:1rem;width:36px!important;height:36px!important;margin:0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;align-self:center!important;justify-self:center!important;position:relative!important;left:auto!important;right:auto!important;transform:none!important;text-align:center!important;max-width:100%!important;box-sizing:border-box!important}.date-number span{display:block!important;width:100%!important;text-align:center!important;margin:0!important;padding:0!important}}.date-number:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 8px 25px #ff980099}.time-slot{padding:12px 8px;border-radius:8px;font-size:.9rem;font-weight:600;text-align:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-height:50px;display:flex;align-items:center;justify-content:center;position:relative}@media(max-width:768px){.time-slot{padding:6px 4px;font-size:.7rem;min-height:40px;border-radius:6px}}@media(max-width:480px){.time-slot{padding:4px 2px;font-size:.6rem;min-height:35px;border-radius:4px}}.calendar.dark-mode .time-slot{background:#2a2a2a;border:1px solid rgba(255,255,255,.1);color:#fff}.calendar.light-mode .time-slot{background:#fff;border:1px solid rgba(0,0,0,.1);color:#333}.time-slot:hover:not(.disabled){transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.calendar.dark-mode .time-slot:hover:not(.disabled){background:#3a3a3a;box-shadow:0 4px 12px #0000004d}.calendar.light-mode .time-slot:hover:not(.disabled){background:#f0f0f0;box-shadow:0 4px 12px #00000026}.time-slot.disabled{opacity:.3;cursor:not-allowed;background:linear-gradient(135deg,#f1f5f9,#e2e8f0)!important;color:#94a3b8!important;border-color:#cbd5e1!important;box-shadow:none!important;transform:none!important}.calendar.dark-mode .time-slot.disabled{background:#1a1a1a!important;color:#fff!important;border-color:#333!important;opacity:1!important}.calendar.light-mode .time-slot.disabled{background:linear-gradient(135deg,#f1f5f9,#e2e8f0)!important;color:#1a1a1a!important;border-color:#cbd5e1!important;opacity:1!important}.day-name{font-size:.85rem;text-transform:uppercase;font-weight:600;letter-spacing:.5px;transition:color .3s ease}.calendar.dark-mode .day-name{color:#fff}.calendar.light-mode .day-name{color:#666}.date-boxes-row{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:16px}.date-box{height:90px;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid rgba(226,232,240,.8);border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.date-box:hover{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-color:#89cff0;transform:translateY(-2px);box-shadow:0 8px 25px #89cff033}.date-box.selected{background:linear-gradient(135deg,#89cff0,#5dade2);border-color:#89cff0;transform:translateY(-2px);box-shadow:0 8px 25px #89cff066}.date-header.empty,.date-box.empty{background:transparent;border:none;cursor:default}.date-header.fully-booked{opacity:.3;cursor:not-allowed}.date-number.fully-booked-number{background:linear-gradient(135deg,#f1f5f9,#e2e8f0)!important;color:#94a3b8!important;box-shadow:none!important;cursor:not-allowed!important}.date-header.past,.date-box.past{opacity:.3;cursor:not-allowed}.date-number.past{background:linear-gradient(135deg,#f1f5f9,#e2e8f0)!important;color:#94a3b8!important;box-shadow:none!important}.date-box.past:hover{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-color:#cbd5e1;transform:none;box-shadow:none}.booking-status{font-size:.8rem;font-weight:600;text-align:center;padding:4px}.date-box.fully-booked{background-color:#ffebee!important;border:2px solid #f44336!important;color:#d32f2f!important;opacity:.8;position:relative}.date-box.fully-booked .booking-status{color:#d32f2f;font-weight:700;font-size:.9rem}.date-box:not(.fully-booked):not(.past){background-color:#e8f5e8!important;border:2px solid #4caf50!important;color:#2e7d32!important}.date-box:not(.fully-booked):not(.past) .booking-status{color:#2e7d32;font-weight:600}.warning-text{color:#2e7d32;font-weight:700;font-size:.7rem}.date-header:has(.date-box:not(.fully-booked):not(.past)) .date-number{background:linear-gradient(135deg,#4caf50,#66bb6a)!important;color:#fff!important;box-shadow:0 4px 15px #4caf5066}.calendar-info-button{position:absolute!important;left:-28px!important;right:auto!important;top:50%!important;transform:translateY(-50%)!important;background:none;border:none;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .3s ease;flex-shrink:0;color:#fff;filter:brightness(0) invert(1);font-weight:700}.calendar-info-button-pose{position:absolute!important;left:-28px!important;right:auto!important;top:50%!important;transform:translateY(-50%)!important;background:none;border:none;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .3s ease;flex-shrink:0;font-weight:700}.dark-mode .calendar-info-button-pose{filter:brightness(0) invert(1)}.light-mode .calendar-info-button-pose{filter:brightness(0)}.date-number.fully-booked-number .calendar-info-button,.date-number.fully-booked-number .calendar-info-button-pose{color:#fff!important}.dark-mode .date-number.fully-booked-number .calendar-info-button,.dark-mode .date-number.fully-booked-number .calendar-info-button-pose{filter:brightness(0) invert(1)!important}.light-mode .date-number.fully-booked-number .calendar-info-button,.light-mode .date-number.fully-booked-number .calendar-info-button-pose{filter:brightness(0)!important}.calendar-info-button:hover,.calendar-info-button-pose:hover{transform:translateY(-50%) scale(1.2)!important}.calendar-info-button svg,.calendar-info-button-pose svg{width:100%;height:100%}@media(max-width:768px){.calendar-info-button,.calendar-info-button-pose{left:-24px!important;right:auto!important;width:18px;height:18px}}@media(max-width:480px){.calendar-info-button,.calendar-info-button-pose{left:-20px!important;right:auto!important;width:16px;height:16px}}.date-header-info-left{position:absolute;left:10px;top:12px;transform:none;display:flex;align-items:center;z-index:10;pointer-events:auto}.date-header-info-left .calendar-info-button-pose{position:relative!important;left:auto!important;right:auto!important;top:auto!important;transform:none!important}.date-header-actions{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:4px;align-items:center;z-index:10;pointer-events:auto}.calendar-edit-button-pose,.calendar-delete-button-pose{background:none;border:none;cursor:pointer;padding:2px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .3s ease;opacity:.8}.calendar-edit-button-pose:hover,.calendar-delete-button-pose:hover{transform:scale(1.2);opacity:1}@media(max-width:768px){.date-header-info-left{left:2px}.date-header-actions{gap:2px}.calendar-edit-button-pose,.calendar-delete-button-pose{width:18px;height:18px;font-size:12px}}.time-slot-actions{display:flex;flex-direction:column;gap:4px;align-items:center;position:absolute;right:4px;top:50%;transform:translateY(-50%);z-index:10}.calendar-edit-button,.calendar-delete-button{background:none;border:none;cursor:pointer;padding:2px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .3s ease;opacity:.8}.calendar-edit-button:hover,.calendar-delete-button:hover{transform:scale(1.2);opacity:1}@media(max-width:768px){.time-slot-actions{gap:2px}.calendar-edit-button,.calendar-delete-button{width:18px;height:18px;font-size:12px}}.calendar-info-popup{pointer-events:auto}.calendar-info-popup-content{background:#fff;border:2px solid #fa541c;border-radius:8px;padding:12px 16px;box-shadow:0 4px 12px #00000026;min-width:150px;max-width:250px;font-size:.9rem;position:relative}.calendar.dark-mode .calendar-info-popup-content{background:#2a2a2a;border-color:#fa541c;color:#fff}.calendar-info-popup-title{font-weight:600;color:#fa541c;margin-bottom:8px;font-size:.85rem}.calendar-info-popup-names{color:#333;line-height:1.6}.calendar.dark-mode .calendar-info-popup-names{color:#e0e0e0}.calendar-info-popup-names>div{padding:2px 0}.calendar-info-popup-close{position:absolute;top:4px;right:4px;background:none;border:none;font-size:20px;line-height:1;color:#fa541c;cursor:pointer;padding:4px 8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.calendar-info-popup-close:hover{background:#fa541c1a;color:#ff6b35;transform:scale(1.1)}.calendar.dark-mode .calendar-info-popup-close{color:#fa541c}.calendar.dark-mode .calendar-info-popup-close:hover{background:#fa541c33;color:#ff6b35}.time-slot.technicien-clickable{cursor:pointer!important;position:relative}.time-slot.technicien-clickable:hover{background:#fa541c26!important;border-color:#fa541c!important}.time-slot.technicien-clickable:after{content:"👁️";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:12px;opacity:0;transition:opacity .2s ease}.time-slot.technicien-clickable:hover:after{opacity:1}@media(max-width:768px){.calendar{padding:20px 12px;border-radius:16px}.calendar-header{position:sticky;top:0;z-index:100;padding:12px 8px;margin:-20px -12px 20px;border-radius:16px 16px 0 0;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:nowrap}.calendar.dark-mode .calendar-header{background:#464646f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.calendar.light-mode .calendar-header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-button{width:48px;height:48px;font-size:20px;border-radius:12px;flex-shrink:0}.month-year{font-size:1.1rem;padding:10px 16px;border-radius:10px;flex:1;text-align:center;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-headers-row{gap:6px;margin-bottom:12px}.day-header-cell{font-size:.7rem;padding:10px 4px;border-radius:8px;letter-spacing:0}.date-headers{gap:6px;margin-bottom:6px}.date-header{padding:14px 10px;gap:8px;border-radius:12px;min-height:80px;overflow:visible;align-items:center;justify-content:center;display:grid!important;grid-template-columns:1fr!important;place-items:center!important;text-align:center!important;position:relative!important;width:100%!important;box-sizing:border-box!important;max-width:100%!important}.date-header.has-info-icon{padding:14px 32px;box-sizing:border-box!important}.date-number{width:40px!important;height:40px!important;font-size:1.1rem!important;margin:0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;align-self:center!important;justify-self:center!important;position:relative!important;left:auto!important;right:auto!important;transform:none!important;text-align:center!important;max-width:100%!important;box-sizing:border-box!important}.date-number span{display:block!important;width:100%!important;text-align:center!important;margin:0!important;padding:0!important;position:relative!important;left:auto!important;right:auto!important;transform:none!important}.date-header{grid-template-rows:auto}.date-header .date-number{position:relative!important;left:auto!important;top:auto!important;transform:none!important;margin:0 auto!important;justify-self:center!important;align-self:center!important}.time-slot{padding:10px 6px;font-size:.75rem;min-height:48px;border-radius:8px;line-height:1.2}.time-slot-actions{gap:4px;right:2px}.calendar-edit-button,.calendar-delete-button{width:22px;height:22px;font-size:11px;padding:4px}.calendar-info-button,.calendar-info-button-pose{width:22px;height:22px;left:-20px!important}.date-header-info-left{left:6px;top:10px}.date-boxes-row{gap:6px;margin-top:12px}.date-box{height:70px;border-radius:10px}.booking-status{font-size:.7rem;padding:2px}.calendar{padding-bottom:32px}.calendar-grid{padding-bottom:16px}.date-headers:last-child .date-number,.date-headers:nth-last-child(2) .date-number{width:44px;height:44px;font-size:1.2rem;font-weight:700;box-shadow:0 4px 12px #fa541c80;border:2px solid rgba(255,255,255,.3)}.date-headers:last-child .date-header,.date-headers:nth-last-child(2) .date-header{padding:14px 8px;border-width:2px;box-shadow:0 2px 8px #00000026}.calendar.dark-mode .date-headers:last-child .date-header,.calendar.dark-mode .date-headers:nth-last-child(2) .date-header{background:#525252;border-color:#fff3}.calendar.light-mode .date-headers:last-child .date-header,.calendar.light-mode .date-headers:nth-last-child(2) .date-header{background:#fff;border-color:#00000026}}@media(max-width:480px){.calendar{padding:16px 10px;border-radius:14px}.calendar-header{padding:10px 6px;margin:-16px -10px 16px;gap:8px}.nav-button{width:44px;height:44px;font-size:18px;border-radius:10px}.month-year{font-size:.95rem;padding:8px 12px;border-radius:8px}.day-headers-row{gap:4px;margin-bottom:10px}.day-header-cell{font-size:.6rem;padding:8px 2px;border-radius:6px}.date-headers{gap:4px}.date-header{padding:12px 8px;gap:6px;border-radius:10px;min-height:70px;overflow:visible;align-items:center;justify-content:center;display:grid!important;grid-template-columns:1fr!important;place-items:center!important;text-align:center!important;position:relative!important;width:100%!important;box-sizing:border-box!important;max-width:100%!important}.date-header.has-info-icon{padding:12px 28px;box-sizing:border-box!important}.date-number{width:36px!important;height:36px!important;font-size:1rem!important;margin:0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;align-self:center!important;justify-self:center!important;position:relative!important;left:auto!important;right:auto!important;transform:none!important;text-align:center!important;max-width:100%!important;box-sizing:border-box!important}.date-header{grid-template-rows:auto}.date-header .date-number{position:relative!important;left:auto!important;top:auto!important;transform:none!important;margin:0 auto!important;justify-self:center!important;align-self:center!important}.date-number span{display:block!important;width:100%!important;text-align:center!important;margin:0!important;padding:0!important;position:relative!important;left:auto!important;right:auto!important;transform:none!important}.date-number span{display:block!important;width:100%!important;text-align:center!important;margin:0!important;padding:0!important}.time-slot{padding:8px 4px;font-size:.7rem;min-height:44px;border-radius:6px}.time-slot-actions{gap:3px;right:1px}.calendar-edit-button,.calendar-delete-button{width:20px;height:20px;font-size:10px;padding:3px}.calendar-info-button,.calendar-info-button-pose{width:20px;height:20px;left:-18px!important}.date-header-info-left{left:4px;top:8px}.date-boxes-row{gap:4px;margin-top:10px}.date-box{height:60px;border-radius:8px}.booking-status{font-size:.65rem}.warning-text{font-size:.6rem}.calendar{padding-bottom:28px}.calendar-grid{padding-bottom:14px}.date-headers:last-child .date-number,.date-headers:nth-last-child(2) .date-number{width:40px;height:40px;font-size:1.1rem;font-weight:700;box-shadow:0 3px 10px #fa541c80;border:2px solid rgba(255,255,255,.3)}.date-headers:last-child .date-header,.date-headers:nth-last-child(2) .date-header{padding:12px 6px;border-width:2px;box-shadow:0 2px 6px #00000026}.calendar.dark-mode .date-headers:last-child .date-header,.calendar.dark-mode .date-headers:nth-last-child(2) .date-header{background:#525252;border-color:#fff3}.calendar.light-mode .date-headers:last-child .date-header,.calendar.light-mode .date-headers:nth-last-child(2) .date-header{background:#fff;border-color:#00000026}}@media(max-width:768px){.nav-button:active{transform:scale(.95);opacity:.8}.date-number:active{transform:scale(.95)}.time-slot:active:not(.disabled){transform:scale(.98);opacity:.9}.date-box:active:not(.past):not(.fully-booked){transform:scale(.98);opacity:.9}}@media(max-width:768px){.calendar-info-popup-content{min-width:180px;max-width:calc(100vw - 40px);padding:14px 16px;font-size:.85rem;border-radius:12px}.calendar-info-popup-title{font-size:.8rem;margin-bottom:10px}.calendar-info-popup-close{width:28px;height:28px;font-size:18px;top:6px;right:6px}}@media(max-width:480px){.calendar-info-popup-content{min-width:160px;padding:12px 14px;font-size:.8rem;border-radius:10px}.calendar-info-popup-title{font-size:.75rem}.calendar-info-popup-close{width:26px;height:26px;font-size:16px}}@media(max-width:768px){.time-slot{position:relative;overflow:hidden;transition:all .2s ease}.time-slot:not(.disabled){border-width:2px;font-weight:600}.calendar.dark-mode .time-slot:not(.disabled){background:linear-gradient(135deg,#2d3748,#1a202c);border-color:#fa541c66}.calendar.light-mode .time-slot:not(.disabled){background:linear-gradient(135deg,#fff,#f7fafc);border-color:#fa541c4d}.time-slot.disabled{border-width:2px}.calendar.dark-mode .time-slot.disabled{background:linear-gradient(135deg,#1a1a1a,#262626)!important;border-color:#404040!important}.calendar.light-mode .time-slot.disabled{background:linear-gradient(135deg,#f0f4f8,#e2e8f0)!important;border-color:#cbd5e1!important}.time-slot.technicien-clickable{border-color:#fa541c80!important}.time-slot.technicien-clickable:after{font-size:14px;right:6px}.time-slot:not(.disabled):before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fa541c33;border-radius:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.time-slot:not(.disabled):active:before{width:200%;height:200%}.time-slot span{position:relative;z-index:1;display:block;text-align:center;line-height:1.3}.date-number{transition:all .2s ease;box-shadow:0 4px 12px #fa541c4d}.date-number:not(.past):not(.fully-booked-number):active{box-shadow:0 2px 8px #fa541c66;transform:scale(.95)}.date-box{transition:all .2s ease}.date-box:not(.past):not(.fully-booked):active{transform:scale(.98);box-shadow:0 2px 8px #0000001a}.calendar-info-button,.calendar-info-button-pose,.calendar-edit-button,.calendar-delete-button,.calendar-edit-button-pose,.calendar-delete-button-pose{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;margin:-12px;padding:12px}.calendar-edit-button:active,.calendar-delete-button:active,.calendar-edit-button-pose:active,.calendar-delete-button-pose:active{transform:scale(.9);opacity:.7}.calendar-info-button:active,.calendar-info-button-pose:active{transform:translateY(-50%) scale(.9)!important;opacity:.7}}@media(max-width:480px){.time-slot:not(.disabled):before{transition:width .25s ease,height .25s ease}.time-slot span{font-size:.7rem}.calendar-info-button,.calendar-info-button-pose,.calendar-edit-button,.calendar-delete-button,.calendar-edit-button-pose,.calendar-delete-button-pose{min-width:40px;min-height:40px;margin:-10px;padding:10px}}@media(max-width:768px){.calendar-container::-webkit-scrollbar,.calendar-grid::-webkit-scrollbar{display:none}.calendar-container,.calendar-grid{scrollbar-width:none;-ms-overflow-style:none}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-content{border-radius:20px;box-shadow:0 25px 50px #00000040;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .3s ease-out;transition:background-color .3s ease,color .3s ease}.modal-content.light-mode{background:#fff}.modal-content.dark-mode{background:#1a1a1a}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:30px 30px 20px;transition:border-color .3s ease}.modal-content.light-mode .modal-header{border-bottom:1px solid #eee}.modal-content.dark-mode .modal-header{border-bottom:1px solid #444}.modal-header h2{margin:0;font-size:1.8rem;font-weight:700;transition:color .3s ease}.modal-content.light-mode .modal-header h2{color:#333}.modal-content.dark-mode .modal-header h2{color:#fff}.close-button{background:none;border:none;font-size:2rem;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.modal-content.light-mode .close-button{color:#999}.modal-content.dark-mode .close-button{color:#aaa}.modal-content.light-mode .close-button:hover{background:#f5f5f5;color:#333}.modal-content.dark-mode .close-button:hover{background:#333;color:#fff}.selected-date{padding:20px 30px;font-size:1.1rem;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.modal-content.light-mode .selected-date{background:#f8f9ff;color:#fa541c;border-bottom:1px solid #eee}.modal-content.dark-mode .selected-date{background:#2a2a2a;color:#fa541c;border-bottom:1px solid #444}.booking-form{padding:30px}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:8px;font-weight:600;font-size:.95rem;transition:color .3s ease}.modal-content.light-mode .form-group label{color:#333}.modal-content.dark-mode .form-group label{color:#fff}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border-radius:12px;font-size:1rem;transition:all .3s ease;color:inherit}.modal-content.light-mode .form-group input,.modal-content.light-mode .form-group select,.modal-content.light-mode .form-group textarea{border:2px solid #e1e5e9;background:#fff;color:#333}.modal-content.dark-mode .form-group input,.modal-content.dark-mode .form-group select,.modal-content.dark-mode .form-group textarea{border:2px solid #444;background:#2a2a2a;color:#fff}.modal-content.dark-mode .form-group input::-moz-placeholder,.modal-content.dark-mode .form-group textarea::-moz-placeholder{color:#888}.modal-content.dark-mode .form-group input::placeholder,.modal-content.dark-mode .form-group textarea::placeholder{color:#888}.modal-content.light-mode .form-group input:focus,.modal-content.light-mode .form-group select:focus,.modal-content.light-mode .form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.modal-content.dark-mode .form-group input:focus,.modal-content.dark-mode .form-group select:focus,.modal-content.dark-mode .form-group textarea:focus{outline:none;border-color:#89cff0;box-shadow:0 0 0 3px #89cff033}.form-group input.error,.form-group select.error{border-color:#e74c3c;box-shadow:0 0 0 3px #e74c3c1a}.form-group textarea{resize:vertical;min-height:100px;font-family:inherit}.error-message{color:#e74c3c;font-size:.85rem;margin-top:5px;display:block}.form-actions{display:flex;gap:15px;margin-top:30px;padding-top:20px;transition:border-color .3s ease}.modal-content.light-mode .form-actions{border-top:1px solid #eee}.modal-content.dark-mode .form-actions{border-top:1px solid #444}.cancel-button,.submit-button{flex:1;padding:14px 24px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.cancel-button{transition:all .3s ease}.modal-content.light-mode .cancel-button{background:#f8f9fa;color:#6c757d;border:2px solid #e9ecef}.modal-content.light-mode .cancel-button:hover{background:#e9ecef;border-color:#dee2e6}.modal-content.dark-mode .cancel-button{background:#333;color:#aaa;border:2px solid #444}.modal-content.dark-mode .cancel-button:hover{background:#444;border-color:#555;color:#fff}.submit-button:hover{transform:translateY(-2px);box-shadow:0 10px 25px #fa541c4d}@media(max-width:600px){.modal-overlay{padding:20px 10px 10px;align-items:flex-start}.modal-content{margin:0;max-height:90vh;width:100%;border-radius:16px}.modal-header,.booking-form{padding:20px}.modal-header h2{font-size:1.4rem}.selected-date{padding:15px 20px;font-size:1rem}.form-group{margin-bottom:20px}.form-group label{font-size:.9rem}.form-group input,.form-group select,.form-group textarea{padding:10px 14px;font-size:16px;border-radius:10px}.form-actions{flex-direction:column;gap:12px;padding-top:16px;margin-top:20px}.cancel-button,.submit-button{padding:12px 20px;font-size:1rem;width:100%}.close-button{width:36px;height:36px;font-size:1.6rem}}@media(max-width:400px){.modal-overlay{padding:16px 8px 8px}.modal-content{border-radius:12px}.modal-header,.booking-form{padding:16px}.modal-header h2{font-size:1.2rem}.selected-date{padding:12px 16px;font-size:.95rem}.form-group{margin-bottom:16px}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border-radius:8px}}@media(max-width:768px)and (orientation:landscape){.modal-overlay{padding:8px;align-items:flex-start}.modal-content{max-height:95vh}.modal-header,.booking-form{padding:12px 16px}.form-group{margin-bottom:12px}.form-actions{flex-direction:row;margin-top:12px;padding-top:12px}}.technicien-modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.technicien-modal{width:90%;max-width:450px;border-radius:16px;overflow:hidden;animation:slideIn .25s ease-out;box-shadow:0 20px 50px #0006}.dark-mode .technicien-modal{background-color:#1a1a1a;border:1px solid #333333}.light-mode .technicien-modal{background-color:#fff;border:1px solid #e5e7eb}.technicien-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid}.dark-mode .technicien-modal-header{border-color:#333}.light-mode .technicien-modal-header{border-color:#e5e7eb}.technicien-modal-header h2{margin:0;font-size:18px;font-weight:600}.dark-mode .technicien-modal-header h2{color:#fff}.light-mode .technicien-modal-header h2{color:#111827}.technicien-modal-header .close-button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;font-size:24px;cursor:pointer;transition:all .2s}.dark-mode .technicien-modal-header .close-button{background-color:transparent;color:#9ca3af}.dark-mode .technicien-modal-header .close-button:hover{background-color:#333;color:#fff}.light-mode .technicien-modal-header .close-button{background-color:transparent;color:#6b7280}.light-mode .technicien-modal-header .close-button:hover{background-color:#f3f4f6;color:#111827}.technicien-modal-content{padding:24px;display:flex;flex-direction:column;gap:16px}.info-badge{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:8px;font-size:13px;font-weight:500;margin-bottom:8px}.dark-mode .info-badge{background-color:#fa541c26;color:#fa541c;border:1px solid rgba(250,84,28,.3)}.light-mode .info-badge{background-color:#fa541c1a;color:#fa541c;border:1px solid rgba(250,84,28,.2)}.info-badge .info-icon{font-size:16px}.info-group{display:flex;flex-direction:column;gap:6px}.info-label{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.dark-mode .info-label{color:#9ca3af}.light-mode .info-label{color:#6b7280}.info-value{font-size:15px;font-weight:500;padding:12px 14px;border-radius:8px}.dark-mode .info-value{color:#fff;background-color:#0a0a0a;border:1px solid #333333}.light-mode .info-value{color:#111827;background-color:#f9fafb;border:1px solid #e5e7eb}.info-value.message{white-space:pre-wrap;word-break:break-word;line-height:1.5}.technicien-modal-footer{padding:16px 24px 24px;display:flex;justify-content:flex-end}.close-action-button{padding:12px 24px;border-radius:8px;border:none;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;background:linear-gradient(135deg,#fa541c,#ff6b35);color:#fff;box-shadow:0 2px 8px #fa541c4d}.close-action-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #fa541c66}.close-action-button:active{transform:translateY(0)}@media(max-width:500px){.technicien-modal{width:95%;max-width:none;margin:10px}.technicien-modal-content,.technicien-modal-header{padding:16px}.technicien-modal-footer{padding:12px 16px 16px}}.App{min-height:100vh;padding:20px;transition:background-color .3s ease;position:relative;z-index:1}.App.dark-mode{background:#000}.App.light-mode{background:#f5f5f5}.app-logo{display:flex;justify-content:center;align-items:center;margin-bottom:30px;padding:20px 0}.logo-image{max-width:250px;max-height:100px;width:auto;height:auto;-o-object-fit:contain;object-fit:contain}.app-header{text-align:center;margin-bottom:40px;transition:color .3s ease}.app-header.admin-style{margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid;transition:border-color .3s ease}.App.dark-mode .app-header.admin-style{border-color:#333}.App.light-mode .app-header.admin-style{border-color:#e0e0e0}.App.dark-mode .app-header{color:#fff}.App.light-mode .app-header{color:#333}.header-content{position:relative;max-width:1600px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px}.header-content>div:first-child{display:flex;justify-content:flex-start}.header-content>div:nth-child(2){text-align:center;grid-column:2;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}.header-content>div:nth-child(2) h1{text-align:center;width:100%}.header-content>div:last-child{display:flex;justify-content:flex-end}.app-header h1,.app-header p{margin:0}.theme-toggle{position:absolute;top:50%;right:0;transform:translateY(-50%)}.app-header h1{font-size:2.5rem;margin-bottom:10px;font-weight:700;text-align:center;width:100%}.app-header p{font-size:1.2rem;opacity:.9}@media(max-width:768px){.App{padding:10px;overflow-x:hidden;max-width:100%;box-sizing:border-box}.app-header h1{font-size:1.5rem}.app-header p{font-size:1rem}.header-content{padding-left:60px;padding-right:60px;grid-template-columns:1fr auto 1fr}.header-content>div:nth-child(2){grid-column:2;text-align:center;width:100%}.app-main{overflow-x:hidden;max-width:100%}.desktop-header-icons{display:none!important}}.app-main{display:flex;justify-content:center;align-items:center;min-height:60vh}.new-page-button{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:15px;box-shadow:0 4px 15px #4facfe4d}.new-page-button:hover{background:linear-gradient(135deg,#3d8bfe,#00d4fe);transform:translateY(-2px);box-shadow:0 6px 20px #4facfe66}.home-button{position:absolute;top:50%;left:0;transform:translateY(-50%);color:#fff;border:none;border-radius:50%;width:50px;height:50px;font-size:1.5rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px #0003}.App.dark-mode .home-button{background:#fa541c}.App.light-mode .home-button{background:#fff;color:#333;box-shadow:0 4px 15px #0000001a}.home-button:hover{transform:translateY(-50%) scale(1.1) rotate(-15deg);box-shadow:0 6px 20px #0000004d}.App.light-mode .home-button:hover{box-shadow:0 6px 20px #0003}.theme-toggle{position:absolute;top:50%;right:0;transform:translateY(-50%);color:#fff;border:none;border-radius:50%;width:50px;height:50px;font-size:1.5rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px #0003}.App.dark-mode .theme-toggle{background:#fa541c}.App.light-mode .theme-toggle{background:#fff;color:#333;box-shadow:0 4px 15px #0000001a}.theme-toggle:hover{transform:translateY(-50%) scale(1.1) rotate(15deg);box-shadow:0 6px 20px #0000004d}.App.light-mode .theme-toggle:hover{box-shadow:0 6px 20px #0003}.notification-toast{position:fixed;top:20px;left:50%;transform:translate(-50%);padding:20px 30px;border-radius:12px;font-size:1.1rem;font-weight:500;z-index:10000;box-shadow:0 8px 32px #0000004d;animation:slideInFromTop .3s ease-out,fadeOut .3s ease-in 2.7s;max-width:90%;text-align:center;word-wrap:break-word;background:#fff;color:#333;border:1px solid #ddd}.notification-toast.persistent{animation:slideInFromTop .3s ease-out;display:flex;flex-direction:column;gap:15px;align-items:center}.notification-toast-button{background:#fa541c;color:#fff;border:none;border-radius:8px;padding:10px 25px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #fa541c4d}.notification-toast-button:hover{background:#e8481a;transform:translateY(-2px);box-shadow:0 6px 20px #fa541c66}@keyframes slideInFromTop{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes fadeOut{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-20px)}}@media(max-width:768px){.notification-toast{font-size:.95rem;padding:15px 20px;max-width:90%;top:10px}.notification-toast-button{padding:8px 20px;font-size:.9rem}.home-button,.theme-toggle{width:44px;height:44px;font-size:1.3rem}.new-page-button{padding:10px 16px;font-size:.85rem}}@media(max-width:480px){.App{padding:8px}.notification-toast{font-size:.9rem;padding:12px 16px;max-width:95%;border-radius:10px;top:8px}.notification-toast-button{padding:8px 16px;font-size:.85rem}.app-header h1{font-size:1.3rem;margin-bottom:6px}.app-header p{font-size:.9rem}.header-content{padding:0 8px}.header-content p,.app-header p{display:none!important}.home-button,.theme-toggle{width:40px;height:40px;font-size:1.2rem}.logo-image{max-width:180px;max-height:70px}}@media(max-width:768px)and (orientation:landscape){.app-main{min-height:40vh}}@media(max-width:768px){.App{padding:12px;min-height:100dvh}.app-logo{margin-bottom:16px;padding:12px 0}.logo-image{max-width:160px;max-height:60px}.app-header{margin-bottom:20px;padding:0 8px}.app-header.admin-style{margin-bottom:16px;padding-bottom:16px}.header-content{display:grid;grid-template-columns:48px 1fr 48px;gap:10px;align-items:center;padding:0}.app-header h1{font-size:1.25rem;line-height:1.3;margin-bottom:4px;word-wrap:break-word;text-align:center;width:100%;overflow-wrap:break-word}.app-header p{font-size:.85rem;line-height:1.4;opacity:.85}.home-button{position:relative;top:auto;left:auto;transform:none;width:44px;height:44px;font-size:1.2rem;border-radius:12px}.home-button:hover{transform:scale(1.05)}.home-button:active{transform:scale(.95);opacity:.8}.theme-toggle{position:relative;top:auto;right:auto;transform:none;width:44px;height:44px;font-size:1.2rem;border-radius:12px}.theme-toggle:hover{transform:scale(1.05)}.theme-toggle:active{transform:scale(.95);opacity:.8}.app-main{min-height:auto;padding:0;align-items:flex-start}.notification-toast{top:12px;left:12px;right:12px;transform:none;max-width:none;padding:16px 20px;border-radius:14px;font-size:.9rem;line-height:1.5}.notification-toast.persistent{gap:12px}.notification-toast-button{width:100%;padding:12px 20px;font-size:.9rem;border-radius:10px}.notification-toast-button:active{transform:scale(.98);opacity:.9}}@media(max-width:480px){.App{padding:10px}.app-logo{margin-bottom:12px;padding:8px 0}.logo-image{max-width:140px;max-height:50px}.app-header{margin-bottom:16px}.header-content{grid-template-columns:40px 1fr 40px;gap:8px}.app-header h1{font-size:1.1rem;margin-bottom:2px;text-align:center;width:100%}.app-header p{font-size:.8rem}.home-button,.theme-toggle{width:40px;height:40px;font-size:1.1rem;border-radius:10px}.notification-toast{top:10px;left:10px;right:10px;padding:14px 16px;border-radius:12px;font-size:.85rem}.notification-toast-button{padding:10px 16px;font-size:.85rem;border-radius:8px}}@supports (padding-top: env(safe-area-inset-top)){@media(max-width:768px){.App{padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom));padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.notification-toast{top:max(12px,env(safe-area-inset-top))}}}:root{--sidebar-width: 256px;--sidebar-collapsed-width: 64px;--mobile-header-height: 60px;--spacing-xs: 8px;--spacing-sm: 12px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 20px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .16);--shadow-xl: 0 12px 48px rgba(0, 0, 0, .2);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s cubic-bezier(.4, 0, .2, 1)}.mobile-menu-overlay{display:none;position:fixed;inset:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:998;opacity:0;transition:opacity var(--transition-slow)}.mobile-menu-overlay.active{opacity:1}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:var(--mobile-header-height);background:inherit;z-index:1000;padding:0 var(--spacing-md);align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-color, #e5e7eb);box-shadow:var(--shadow-sm);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.mobile-header-left{display:flex;align-items:center;gap:12px}.mobile-menu-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;border-radius:8px;transition:background-color .2s}.mobile-menu-btn:hover{background:#0000000d}.mobile-header-title{font-size:18px;font-weight:600}.mobile-header-actions{display:flex;align-items:center;gap:8px}.dashboard-container{display:flex;min-height:100vh;width:100%}.dashboard-sidebar{position:sticky;top:0;height:100vh;transition:width var(--transition-slow),transform var(--transition-slow);display:flex;flex-direction:column;box-shadow:var(--shadow-sm);z-index:999}.dashboard-main{flex:1;overflow:visible;display:flex;flex-direction:column}.dashboard-content{padding:var(--spacing-xl);flex:1;display:flex;flex-direction:column;min-height:0;max-width:1600px;margin:0 auto;width:100%}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.stat-card{padding:var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid;background:inherit;box-shadow:var(--shadow-sm);transition:all var(--transition-base);cursor:pointer;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,currentColor,transparent);opacity:0;transition:opacity var(--transition-base)}.stat-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:var(--shadow-md)}.stat-card:hover:before{opacity:.3}.content-grid{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:auto auto;gap:32px;flex:1;min-height:0}.chart-container{min-height:420px;overflow:visible!important;padding:var(--spacing-xl);border-radius:var(--radius-lg);border:1px solid;background:inherit;box-shadow:var(--shadow-sm);transition:all var(--transition-base);position:relative}.chart-container:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.notifications-dropdown{position:absolute;top:50px;right:0;width:380px;max-height:500px;border-radius:12px;box-shadow:0 8px 24px #00000026;z-index:1200;overflow:hidden;display:flex;flex-direction:column}@media(max-width:1024px){.content-grid{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:var(--spacing-lg)}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.dashboard-content{padding:var(--spacing-lg)}.notifications-dropdown{width:340px}.stat-card{padding:var(--spacing-md)!important}.chart-container{padding:var(--spacing-lg)!important}}@media(max-width:768px){.mobile-header{display:flex}.mobile-menu-overlay{display:block}.desktop-header{display:none!important}.dashboard-main{padding-top:var(--mobile-header-height)}.dashboard-sidebar{position:fixed!important;top:var(--mobile-header-height)!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;max-width:100vw!important;height:calc(100vh - var(--mobile-header-height))!important;min-height:calc(100vh - var(--mobile-header-height))!important;transform:translate(-100%);z-index:999;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-lg);padding:var(--spacing-md)!important;overflow-y:auto;-webkit-overflow-scrolling:touch}.dashboard-sidebar.mobile-open{transform:translate(0)!important}.dashboard-content{padding:var(--spacing-md)}.stats-grid{grid-template-columns:1fr;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.content-grid{grid-template-columns:1fr;gap:16px}.stat-card{padding:var(--spacing-md)!important;border-radius:var(--radius-md)!important;min-height:120px;display:flex;flex-direction:column;justify-content:space-between}.stat-card h3{font-size:13px!important;font-weight:500!important;line-height:1.4;margin-bottom:8px!important}.stat-card p{font-size:22px!important;font-weight:700!important;line-height:1.2;margin-bottom:4px!important}.chart-container{min-height:320px;padding:var(--spacing-md)!important;border-radius:var(--radius-md)!important;overflow-x:auto;overflow-y:visible!important;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.chart-container::-webkit-scrollbar{height:6px}.chart-container::-webkit-scrollbar-track{background:transparent}.chart-container::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}.chart-container::-webkit-scrollbar-thumb:hover{background:#0000004d}.chart-header{flex-direction:column;align-items:flex-start!important;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)!important}.chart-header h3{font-size:18px!important;font-weight:600!important;line-height:1.3}.chart-controls{width:100%;justify-content:space-between}.chart-legend{flex-wrap:wrap;gap:8px!important}.chart-legend>div{padding:4px 8px!important;font-size:11px!important}.month-navigation{flex-wrap:wrap;justify-content:center;gap:8px!important}.month-navigation button{width:32px!important;height:32px!important}.month-label{min-width:140px!important;font-size:13px!important;padding:6px 14px!important}.notifications-dropdown{position:fixed;top:var(--mobile-header-height);left:0;right:0;width:100%;max-height:calc(100vh - var(--mobile-header-height));border-radius:0}.activity-card{padding:var(--spacing-md)!important;border-radius:var(--radius-md)!important;min-height:200px}.activity-card h3{font-size:16px!important;font-weight:600!important;margin-bottom:var(--spacing-sm)!important}.activity-item{padding:var(--spacing-sm)!important;min-height:48px;border-radius:var(--radius-sm);margin-bottom:4px;transition:background-color var(--transition-fast)}.activity-item:active{background-color:#0000000d!important}.activity-item p{font-size:13px!important;line-height:1.5}.clients-card{padding:var(--spacing-md)!important;border-radius:var(--radius-md)!important;min-height:200px}.clients-card h3{font-size:16px!important;font-weight:600!important;margin-bottom:var(--spacing-sm)!important}.client-item{padding:var(--spacing-sm) var(--spacing-md)!important;font-size:14px!important;min-height:48px;border-radius:var(--radius-sm);margin-bottom:4px;display:flex;align-items:center;transition:background-color var(--transition-fast)}.client-item:active{background-color:#0000000d!important}.dashboard-header{flex-direction:column;align-items:flex-start!important;gap:var(--spacing-md);margin-bottom:var(--spacing-md)!important}.dashboard-header h1{font-size:28px!important;font-weight:700!important;line-height:1.2;margin-bottom:4px!important}.dashboard-header p{font-size:15px!important;line-height:1.5;opacity:.8}.header-actions{width:100%;justify-content:flex-end}}@media(max-width:480px){.dashboard-content{padding:var(--spacing-sm);padding-top:calc(var(--spacing-sm) + env(safe-area-inset-top,0px));padding-bottom:calc(var(--spacing-sm) + env(safe-area-inset-bottom,0px))}.stats-grid{gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.stat-card{padding:var(--spacing-md)!important;min-height:110px}.stat-card h3{font-size:12px!important;font-weight:500!important}.stat-card p{font-size:20px!important;font-weight:700!important}.content-grid{gap:var(--spacing-sm)}.chart-container{min-height:280px;padding:var(--spacing-md)!important;overflow-x:auto;overflow-y:visible!important;-webkit-overflow-scrolling:touch}.chart-header h3{font-size:16px!important;font-weight:600!important}.dashboard-header h1{font-size:24px!important;font-weight:700!important}.dashboard-header p{font-size:14px!important;line-height:1.4}.dashboard-sidebar{width:100vw!important;max-width:100vw!important;min-width:100vw!important;left:0!important;right:0!important;padding:var(--spacing-md)!important}.notifications-dropdown{max-height:70vh}.mobile-menu-btn,button,.activity-item,.client-item{min-height:44px;min-width:44px}}@media(max-width:768px)and (orientation:landscape){.dashboard-main{padding-top:50px}.mobile-header{height:50px}.stats-grid{grid-template-columns:repeat(2,1fr)}.chart-container{min-height:280px;overflow:visible!important}}@media print{.dashboard-sidebar,.mobile-header,.mobile-menu-overlay{display:none!important}.dashboard-main{padding-top:0}.dashboard-content{padding:20px}}@media(hover:none)and (pointer:coarse){.mobile-menu-btn,.header-action-btn,button,.activity-item,.client-item,.stat-card{min-width:44px;min-height:44px}.stat-card:active{transform:scale(.98);box-shadow:var(--shadow-sm)}.chart-container:active{transform:scale(.99)}.stat-card:hover,.chart-container:hover,.activity-card:hover,.clients-card:hover{transform:none!important;box-shadow:var(--shadow-sm)!important}}@media(min-resolution:192dpi){.chart-container svg{shape-rendering:geometricPrecision}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dashboard-content{animation:fadeIn .5s ease-out}.stats-grid{animation:fadeInUp .6s ease-out}.content-grid{animation:fadeInUp .8s ease-out}@media(prefers-reduced-motion:reduce){.dashboard-sidebar,.mobile-menu-overlay,.stat-card,.chart-container,.activity-card,.clients-card,.dashboard-content,.stats-grid,.content-grid{transition:none!important;animation:none!important}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb,#4facfe,#00f2fe);background-size:400% 400%;animation:gradientShift 15s ease infinite;padding:20px}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.login-background{position:absolute;inset:0;overflow:hidden;z-index:0}.gradient-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.6;animation:float 20s ease-in-out infinite}.orb-1{width:500px;height:500px;background:linear-gradient(135deg,#fa541c,#ff6b35);top:-200px;left:-200px;animation-delay:0s}.orb-2{width:400px;height:400px;background:linear-gradient(135deg,#667eea,#764ba2);bottom:-150px;right:-150px;animation-delay:5s}.orb-3{width:350px;height:350px;background:linear-gradient(135deg,#f093fb,#f5576c);top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:10s}@keyframes float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}}.login-container{position:relative;z-index:1;width:100%;max-width:450px;animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-card{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:48px 40px;box-shadow:0 20px 60px #0000004d,0 0 0 1px #fff3 inset;border:1px solid rgba(255,255,255,.3)}.login-header{text-align:center;margin-bottom:40px}.logo-wrapper{display:flex;justify-content:center;margin-bottom:24px}.logo-icon{width:64px;height:64px;background:linear-gradient(135deg,#fa541c,#ff6b35);border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 24px #fa541c66;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 8px 24px #fa541c66}50%{transform:scale(1.05);box-shadow:0 12px 32px #fa541c99}}.logo-icon svg{width:32px;height:32px}.login-title{font-size:32px;font-weight:700;color:#1a1a1a;margin:0 0 8px;letter-spacing:-.5px}.login-subtitle{font-size:16px;color:#666;margin:0;font-weight:400}.login-form{display:flex;flex-direction:column;gap:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:14px;font-weight:600;color:#333;margin-bottom:4px}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:16px;width:20px;height:20px;color:#999;z-index:1;pointer-events:none;display:flex;align-items:center;justify-content:center}.input-icon svg{width:100%;height:100%}.input-wrapper .form-input{padding-left:55px!important}.input-wrapper:has(.input-icon) .form-input{padding-left:55px!important}.form-input{width:100%;padding:14px 50px;font-size:16px;border:2px solid #e0e0e0;border-radius:12px;background:#fff;color:#1a1a1a;transition:all .3s ease;outline:none;font-family:inherit;box-sizing:border-box}.form-input:focus{border-color:#fa541c;box-shadow:0 0 0 4px #fa541c1a;transform:translateY(-1px)}.form-input::-moz-placeholder{color:#999}.form-input::placeholder{color:#999}.form-input.input-error{border-color:#ef4444;animation:shake .4s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}.password-toggle{position:absolute;right:18px;width:24px;height:24px;border:none;background:none;color:#999;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .3s ease;z-index:2;padding:0}.password-toggle:hover{color:#fa541c}.password-toggle svg{width:100%;height:100%}.error-message{font-size:13px;color:#ef4444;margin-top:4px;display:flex;align-items:center;gap:4px;animation:fadeIn .3s ease}.attempts-warning{margin-top:8px;margin-bottom:4px;padding:8px 12px;background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:8px;animation:fadeIn .3s ease}.attempts-text{font-size:13px;color:#ff9800;font-weight:500;display:flex;align-items:center;gap:6px}.attempts-text:before{content:"⚠️";font-size:14px}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.form-options{display:flex;justify-content:space-between;align-items:center;font-size:14px}.checkbox-wrapper{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.checkbox-input{width:18px;height:18px;cursor:pointer;accent-color:#fa541c}.checkbox-label{color:#666;font-weight:400}.forgot-password{color:#fa541c;text-decoration:none;font-weight:600;transition:all .3s ease}.forgot-password:hover{color:#ff6b35;text-decoration:underline}.login-button{width:100%;padding:16px 24px;font-size:16px;font-weight:600;color:#fff;background:linear-gradient(135deg,#fa541c,#ff6b35);border:none;border-radius:12px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 16px #fa541c66;margin-top:8px;position:relative;overflow:hidden}.login-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.login-button:hover:before{left:100%}.login-button:hover{transform:translateY(-2px);box-shadow:0 6px 24px #fa541c80}.login-button:active{transform:translateY(0)}.login-button:disabled,.login-button.disabled{opacity:.7;cursor:not-allowed;transform:none;background:linear-gradient(135deg,#9ca3af,#6b7280);box-shadow:0 4px 16px #9ca3af4d}.login-button.loading{pointer-events:none}.button-arrow{width:20px;height:20px;transition:transform .3s ease}.login-button:hover .button-arrow{transform:translate(4px)}.spinner{width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-footer{margin-top:32px;text-align:center;font-size:14px;color:#666}.signup-link{color:#fa541c;text-decoration:none;font-weight:600;transition:all .3s ease}.signup-link:hover{color:#ff6b35;text-decoration:underline}@media(max-width:768px){.login-card{padding:36px 28px;border-radius:20px}.login-title{font-size:28px}.login-subtitle{font-size:14px}.form-input{padding:12px 48px 12px 52px;font-size:16px}.input-wrapper .form-input{padding-left:52px!important}.orb-1,.orb-2,.orb-3{filter:blur(60px)}}@media(max-width:480px){.login-page{padding:16px}.login-card{padding:32px 24px}.login-title{font-size:24px}.logo-icon{width:56px;height:56px}.logo-icon svg{width:28px;height:28px}}@media(prefers-color-scheme:dark){.login-card{background:#1a1a1af2;border:1px solid rgba(255,255,255,.1)}.login-title{color:#fff}.login-subtitle{color:#aaa}.form-label{color:#e0e0e0}.form-input{background:#ffffff0d;border-color:#ffffff1a;color:#fff}.form-input:focus{background:#ffffff14}.checkbox-label,.login-footer{color:#aaa}}.admin-booking-modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1200;background:#00000073;padding:16px}.admin-booking-modal .modal-content{background:#fff;color:#111827;width:640px;max-width:100%;border-radius:16px;box-shadow:0 20px 60px #0000002e;overflow:hidden;display:flex;flex-direction:column}.admin-booking-modal.dark-mode .modal-content{background:#0f172a;color:#e5e7eb}.admin-booking-modal .modal-header,.admin-booking-modal .modal-footer{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-booking-modal .modal-body{padding:16px 20px;display:flex;flex-direction:column;gap:12px;max-height:75vh;overflow-y:auto}.admin-booking-modal .modal-title{font-size:1.1rem;font-weight:700}.admin-booking-modal .close-button{background:none;border:none;cursor:pointer;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;transition:background .2s ease,transform .2s ease}.admin-booking-modal .close-button:hover{background:#0000000d;transform:scale(1.04)}.admin-booking-modal.dark-mode .close-button:hover{background:#ffffff14}.admin-booking-modal form{display:grid;gap:12px}.admin-booking-modal label{font-weight:600;font-size:.95rem}.admin-booking-modal input,.admin-booking-modal select,.admin-booking-modal textarea{width:100%;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;background:#fff;color:#111827;box-sizing:border-box}.admin-booking-modal textarea{min-height:90px;resize:vertical}.admin-booking-modal input:focus,.admin-booking-modal select:focus,.admin-booking-modal textarea:focus{border-color:#fa541c;box-shadow:0 0 0 3px #fa541c33;outline:none}.admin-booking-modal.dark-mode input,.admin-booking-modal.dark-mode select,.admin-booking-modal.dark-mode textarea{background:#0b1220;border-color:#1f2937;color:#e5e7eb}.admin-booking-modal.dark-mode input:focus,.admin-booking-modal.dark-mode select:focus,.admin-booking-modal.dark-mode textarea:focus{border-color:#fa541c;box-shadow:0 0 0 3px #fa541c40}.admin-booking-modal .actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.admin-booking-modal .button{border:none;border-radius:10px;padding:10px 16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.admin-booking-modal .button.primary{background:linear-gradient(135deg,#fa541c,#ff6b35);color:#fff;box-shadow:0 10px 30px #fa541c59}.admin-booking-modal .button.secondary{background:#f1f5f9;color:#111827}.admin-booking-modal.dark-mode .button.secondary{background:#1f2937;color:#e5e7eb}.admin-booking-modal .button:active{transform:scale(.97)}@media(max-width:768px){.admin-booking-modal{padding:0;background:#000000a6}.admin-booking-modal .modal-content{width:100%;height:100%;max-height:none;border-radius:0}.admin-booking-modal .modal-header,.admin-booking-modal .modal-footer{padding:14px 16px}.admin-booking-modal .modal-body{padding:14px 16px 18px;max-height:none;height:100%}.admin-booking-modal .modal-title{font-size:1rem}.admin-booking-modal .close-button{width:40px;height:40px}.admin-booking-modal input,.admin-booking-modal select,.admin-booking-modal textarea{font-size:.95rem;padding:12px 14px}.admin-booking-modal .actions{flex-direction:column;align-items:stretch}.admin-booking-modal .button{width:100%;text-align:center;padding:12px 16px}}@media(max-width:480px){.admin-booking-modal .modal-header,.admin-booking-modal .modal-footer{padding:12px 14px}.admin-booking-modal .modal-body{padding:12px 14px 16px}.admin-booking-modal input,.admin-booking-modal select,.admin-booking-modal textarea{font-size:.93rem;padding:12px}.admin-booking-modal .button{padding:12px 14px}}.admin-booking-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.admin-booking-modal{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d;animation:slideIn .3s ease-out}.admin-booking-modal-overlay.dark-mode .admin-booking-modal{background:#1a1a1a;color:#fff}.admin-booking-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e0e0e0}.admin-booking-modal-overlay.dark-mode .admin-booking-modal-header{border-bottom-color:#333}.admin-booking-modal-header h2{margin:0;font-size:1.5rem;font-weight:700}.admin-booking-modal-overlay.dark-mode .close-button{color:#999}.admin-booking-modal-overlay.dark-mode .close-button:hover{background:#2a2a2a;color:#fff}.admin-booking-modal-form{padding:24px}.admin-booking-modal-overlay.dark-mode .form-group label{color:#fff}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border:1px solid #d0d0d0;border-radius:8px;font-size:1rem;transition:all .3s ease;font-family:inherit}.admin-booking-modal-overlay.dark-mode .form-group input,.admin-booking-modal-overlay.dark-mode .form-group select,.admin-booking-modal-overlay.dark-mode .form-group textarea{background:#0a0a0a;border-color:#333;color:#fff}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#fa541c;box-shadow:0 0 0 3px #fa541c1a}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#f44}.form-group textarea{resize:vertical;min-height:100px}.admin-booking-modal-overlay.dark-mode .form-actions{border-top-color:#333}.admin-booking-modal-overlay.dark-mode .cancel-button{background:#2a2a2a;color:#fff}.admin-booking-modal-overlay.dark-mode .cancel-button:hover{background:#3a3a3a}.submit-button{background:#fa541c;color:#fff}.submit-button:hover{background:#e6450f;transform:translateY(-2px);box-shadow:0 4px 12px #fa541c4d}@media(max-width:768px){.admin-booking-modal-overlay{padding:20px 12px 12px;align-items:flex-start}.admin-booking-modal{max-width:100%;border-radius:12px;max-height:90vh}.admin-booking-modal-header{padding:16px 20px}.admin-booking-modal-header h2{font-size:1.3rem}.admin-booking-modal-form{padding:20px}.form-group{margin-bottom:16px}.form-group input,.form-group select,.form-group textarea{padding:12px;font-size:16px}.form-group textarea{min-height:80px}.form-actions{flex-direction:column;gap:10px;margin-top:20px;padding-top:20px}.cancel-button,.submit-button{width:100%;padding:14px 20px}}@media(max-width:480px){.admin-booking-modal-overlay{padding:16px 8px 8px}.admin-booking-modal{border-radius:10px}.admin-booking-modal-header{padding:14px 16px}.admin-booking-modal-header h2{font-size:1.2rem}.admin-booking-modal-form{padding:16px}.form-group label{font-size:.85rem}.form-group input,.form-group select,.form-group textarea{padding:10px;border-radius:6px}}.admin-page{min-height:100vh;padding:20px;transition:background-color .3s ease,color .3s ease}.admin-page.dark-mode{background:#0a0a0a;color:#fff}.admin-page.light-mode{background:#f5f5f5;color:#333}.admin-header{margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid;transition:border-color .3s ease}.admin-page.dark-mode .admin-header{border-color:#333}.admin-page.light-mode .admin-header{border-color:#e0e0e0}.header-content{position:relative;display:flex;justify-content:space-between;align-items:center;max-width:1600px;margin:0 auto;text-align:center}.header-content>div:first-child{flex:1;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}@media(min-width:769px){.header-content{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;position:relative}.header-content>div:first-child{grid-column:2;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}.header-content>div:last-child{grid-column:3;display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px!important;justify-content:flex-end!important}}.admin-header h1{margin:0;font-size:2rem;font-weight:700;text-align:center;width:100%}.admin-header p{margin:5px 0 0;opacity:.8;font-size:1rem}.header-actions{position:absolute;right:70px;top:50%;transform:translateY(-50%);display:flex;gap:15px;align-items:center}.home-button,.theme-toggle,.logout-button{padding:10px 20px;border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .3s ease;font-weight:500}.home-button{position:absolute;left:0;top:50%;transform:translateY(-50%);border-radius:50%;width:50px;height:50px;font-size:1.5rem;display:flex;align-items:center;justify-content:center}.admin-page.dark-mode .home-button{background:#fa541c;color:#fff}.admin-page.light-mode .home-button{background:#fff;color:#333;box-shadow:0 2px 8px #0000001a}.theme-toggle{position:absolute;right:0;top:50%;transform:translateY(-50%);border-radius:50%;width:50px;height:50px;font-size:1.5rem;display:flex;align-items:center;justify-content:center}.admin-page.dark-mode .theme-toggle{background:#1a1a1a;color:#fff;border:1px solid #333}.admin-page.light-mode .theme-toggle{background:#fff;color:#333;border:1px solid #e0e0e0;box-shadow:0 2px 8px #0000001a}.logout-button{background:#f44;color:#fff}.logout-button:hover{background:#c00;transform:translateY(-2px)}.home-button:hover{transform:translateY(-50%) scale(1.1) rotate(-15deg)}.theme-toggle:hover{transform:translateY(-50%) scale(1.1) rotate(15deg)}.admin-filters{display:flex!important;gap:20px!important;margin-bottom:30px!important;padding:20px!important;border-radius:12px!important;flex-wrap:wrap!important;align-items:flex-end!important;max-width:1600px!important;margin-left:auto!important;margin-right:auto!important;transition:background-color .3s ease!important}.admin-filters .filter-group{display:flex!important;flex-direction:column!important;align-items:stretch!important;height:70px!important;min-height:70px!important;max-height:70px!important}.admin-page.dark-mode .admin-filters{background:#1a1a1a;border:1px solid #333}.admin-page.light-mode .admin-filters{background:#fff;border:1px solid #e0e0e0;box-shadow:0 2px 8px #0000000d}.filter-group{display:flex!important;flex-direction:column!important;gap:8px!important;min-width:200px!important;width:auto!important;justify-content:flex-end!important;height:70px!important;min-height:70px!important;max-height:70px!important;position:relative!important;align-items:stretch!important}.filter-group label{font-weight:600!important;font-size:.9rem!important;opacity:.9!important;height:20px!important;min-height:20px!important;max-height:20px!important;display:flex!important;align-items:center!important;margin:0!important;padding:0!important;line-height:20px!important;flex-shrink:0!important}.filter-group select,.filter-group input{padding:10px 15px!important;border-radius:8px!important;border:1px solid!important;font-size:1rem!important;transition:all .3s ease!important;height:42px!important;min-height:42px!important;max-height:42px!important;box-sizing:border-box!important;line-height:22px!important;vertical-align:middle!important;margin:0!important;flex-shrink:0!important;position:relative!important;width:100%!important}.filter-group input{padding-right:40px!important;width:100%!important}.filter-group input::-webkit-outer-spin-button,.filter-group input::-webkit-inner-spin-button,.filter-group input::-webkit-calendar-picker-indicator{position:absolute!important;right:10px!important;opacity:1!important}.filter-group input::-webkit-autofill,.filter-group input::-webkit-autofill:hover,.filter-group input::-webkit-autofill:focus{height:42px!important;min-height:42px!important;max-height:42px!important;box-sizing:border-box!important}.admin-filters>*{align-self:flex-end!important}.filter-group select,.filter-group input,.filter-group select *,.filter-group input *{height:42px!important;min-height:42px!important;max-height:42px!important}.filter-group input:before,.filter-group input:after{display:none!important}.filter-group{overflow:visible!important}.filter-group input[type=text],.filter-group input[type=search]{height:42px!important;min-height:42px!important;max-height:42px!important;padding:10px 40px 10px 15px!important;box-sizing:border-box!important}.filter-group>div{height:42px!important;min-height:42px!important;max-height:42px!important;width:100%!important;position:relative!important;flex-shrink:0!important}.filter-group>div>input{height:42px!important;min-height:42px!important;max-height:42px!important;width:100%!important;box-sizing:border-box!important;position:relative!important;margin:0!important;padding:10px 40px 10px 15px!important}.admin-page .filter-group>div{height:42px!important;min-height:42px!important;max-height:42px!important;width:100%!important;position:relative!important;flex-shrink:0!important;display:flex!important;align-items:center!important}.admin-page .filter-group select{height:42px!important;min-height:42px!important;max-height:42px!important;width:100%!important;box-sizing:border-box!important;margin:0!important;padding:10px 15px!important}.admin-page.dark-mode .filter-group select,.admin-page.dark-mode .filter-group input{background:#0a0a0a;border-color:#333;color:#fff}.admin-page.light-mode .filter-group select,.admin-page.light-mode .filter-group input{background:#fff;border-color:#d0d0d0;color:#333}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:#fa541c;box-shadow:0 0 0 3px #fa541c1a}.search-group{flex:1;min-width:250px}.refresh-button{padding:10px 20px;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s ease;font-weight:500;height:-moz-fit-content;height:fit-content;border:1px solid;display:flex;align-items:center;gap:8px}.admin-page.dark-mode .refresh-button,.admin-page.light-mode .refresh-button{background:#8b5cf630;border-color:#8b5cf6;color:#fff}.refresh-button:hover{transform:translateY(-2px);background:#7c3aed;border-color:#7c3aed}.admin-page.dark-mode .refresh-button:hover,.admin-page.light-mode .refresh-button:hover{background:#7c3aed;border-color:#7c3aed;color:#fff}.refresh-icon{width:18px;height:18px;color:#fff;flex-shrink:0}.create-button{padding:10px 20px;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s ease;font-weight:500;height:-moz-fit-content;height:fit-content;border:1px solid;display:flex;align-items:center;gap:8px}.admin-page.dark-mode .create-button,.admin-page.light-mode .create-button{background:#10b98130;border-color:#10b981;color:#fff}.create-button:hover{transform:translateY(-2px);background:#059669;border-color:#059669}.admin-page.dark-mode .create-button:hover,.admin-page.light-mode .create-button:hover{background:#059669;border-color:#059669;color:#fff}.create-icon{width:18px;height:18px;color:#fff;flex-shrink:0}.admin-main{max-width:1600px;margin:0 auto}.bookings-summary{margin-bottom:20px;padding:15px;border-radius:8px;font-weight:600;transition:background-color .3s ease}.admin-page.dark-mode .bookings-summary{background:#1a1a1a;border:1px solid #333}.admin-page.light-mode .bookings-summary{background:#fff;border:1px solid #e0e0e0;box-shadow:0 2px 8px #0000000d}.bookings-table-container{overflow-x:auto;border-radius:12px;transition:background-color .3s ease}.admin-page.dark-mode .bookings-table-container{background:#1a1a1a;border:1px solid #333}.admin-page.light-mode .bookings-table-container{background:#fff;border:1px solid #e0e0e0;box-shadow:0 2px 8px #0000000d}.bookings-table{width:100%;border-collapse:collapse;min-width:1200px}.bookings-table thead{position:sticky;top:0;z-index:10}.admin-page.dark-mode .bookings-table thead{background:#0a0a0a}.admin-page.light-mode .bookings-table thead{background:#f5f5f5}.bookings-table th{padding:15px;text-align:left;font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid;transition:border-color .3s ease}.admin-page.dark-mode .bookings-table th{border-color:#333;color:#fff}.admin-page.light-mode .bookings-table th{border-color:#e0e0e0;color:#333}.bookings-table td{padding:15px;border-bottom:1px solid;transition:border-color .3s ease}.admin-page.dark-mode .bookings-table td{border-color:#2a2a2a}.admin-page.light-mode .bookings-table td{border-color:#f0f0f0}.bookings-table tbody tr{transition:background-color .2s ease}.admin-page.dark-mode .bookings-table tbody tr:hover{background:#2a2a2a}.admin-page.light-mode .bookings-table tbody tr:hover{background:#f9f9f9}.highlighted-booking-row{position:relative;background:#fff7ed!important;box-shadow:0 0 0 2px #fa541c40;animation:highlightPulse 1.6s ease-in-out 2}.admin-page.dark-mode .highlighted-booking-row{background:#1f130d!important;box-shadow:0 0 0 2px #fa541c66}@keyframes highlightPulse{0%{box-shadow:0 0 #fa541c73}50%{box-shadow:0 0 0 6px #fa541c26}to{box-shadow:0 0 #fa541c0d}}.calendar-badge{display:inline-block;padding:5px 12px;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase}.admin-page.dark-mode .calendar-badge,.admin-page.light-mode .calendar-badge{background:#fa541c;color:#fff}.message-cell{max-width:300px;word-wrap:break-word}.no-message{opacity:.5;font-style:italic}.actions-cell{white-space:nowrap;padding:10px 15px}.edit-button,.delete-button{background:none;border:none;font-size:1.2rem;cursor:pointer;padding:5px 10px;margin:0 2px;border-radius:4px;transition:all .2s ease}.edit-button:hover{background:#fa541c1a;transform:scale(1.1)}.delete-button:hover{background:#ff44441a;transform:scale(1.1)}.admin-page.dark-mode .edit-button:hover{background:#fa541c33}.admin-page.dark-mode .delete-button:hover{background:#f443}.loading-message,.no-bookings{text-align:center;padding:60px 20px;font-size:1.2rem;opacity:.7}.time-slot-cell{white-space:nowrap}.time-slot-with-info{display:flex;align-items:center;gap:8px}.info-button{background:none;border:none;font-size:1rem;cursor:pointer;padding:4px 6px;border-radius:4px;transition:all .2s ease;opacity:.7}.info-button:hover{opacity:1;background:#fa541c1a;transform:scale(1.1)}.admin-page.dark-mode .info-button:hover{background:#fa541c33}.info-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1001;padding:20px}.info-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;box-shadow:0 10px 40px #0000004d;animation:slideIn .3s ease-out}.info-modal-overlay.dark-mode .info-modal{background:#1a1a1a;color:#fff}.info-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e0e0e0}.info-modal-overlay.dark-mode .info-modal-header{border-bottom-color:#333}.info-modal-header h3{margin:0;font-size:1.3rem;font-weight:700}.info-modal-header .close-button{background:none;border:none;font-size:2rem;cursor:pointer;color:#666;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.info-modal-overlay.dark-mode .info-modal-header .close-button{color:#999}.info-modal-header .close-button:hover{background:#f0f0f0;color:#333}.info-modal-overlay.dark-mode .info-modal-header .close-button:hover{background:#2a2a2a;color:#fff}.info-modal-content{padding:24px}.info-item{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #f0f0f0}.info-modal-overlay.dark-mode .info-item{border-bottom-color:#2a2a2a}.info-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.info-item strong{display:inline-block;min-width:120px;color:#fa541c;margin-right:8px}.info-modal-footer{padding:16px 24px;border-top:1px solid #e0e0e0;display:flex;justify-content:flex-end}.info-modal-overlay.dark-mode .info-modal-footer{border-top-color:#333}.close-info-button{padding:10px 24px;background:#fa541c;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.close-info-button:hover{background:#e6450f;transform:translateY(-2px);box-shadow:0 4px 12px #fa541c4d}@media(max-width:768px){.admin-page{padding:12px}.admin-filters{flex-direction:column;padding:16px!important;gap:16px!important}.filter-group{width:100%;min-width:100%!important;height:auto!important;min-height:auto!important;max-height:none!important}.filter-group label{height:auto!important;min-height:auto!important;max-height:none!important}.header-content{flex-direction:column;gap:16px;align-items:center;text-align:center;padding:0 8px}.header-content>div:first-child{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.admin-header h1{text-align:center;width:100%}.header-actions{width:100%;justify-content:center;position:static!important;transform:none!important;right:auto!important;top:auto!important}.admin-header h1{font-size:1.5rem}.admin-header p{display:none!important}.home-button,.theme-toggle{position:static!important;transform:none!important;width:44px;height:44px}.bookings-table-container{border-radius:8px;-webkit-overflow-scrolling:touch}.bookings-table{min-width:900px;font-size:.85rem}.bookings-table th,.bookings-table td{padding:10px 8px}.message-cell{max-width:150px}.refresh-button,.create-button{padding:8px 14px;font-size:.9rem}.holiday-management-section{padding:16px}.holiday-management-section h2{font-size:1.4rem}.holiday-add-form{padding:16px}}@media(max-width:480px){.admin-page{padding:8px}.admin-header h1{font-size:1.3rem;text-align:center;width:100%}.admin-filters{padding:12px!important;gap:12px!important}.bookings-table{font-size:.8rem}.bookings-table th,.bookings-table td{padding:8px 6px}.calendar-badge{padding:3px 8px;font-size:.75rem}.edit-button,.delete-button{padding:4px 6px;font-size:1rem}}@media(max-width:768px){.admin-page{padding:12px}.admin-header{margin-bottom:16px;padding-bottom:12px}.admin-header h1{font-size:1.35rem;line-height:1.25;text-align:center;width:100%}.admin-header p{display:none!important}.admin-main{padding-top:76px}.mobile-header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 18px #0000001f}.dashboard-sidebar{width:280px!important;max-width:85%;border-right:none!important;box-shadow:0 12px 40px #00000047;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.dashboard-sidebar.mobile-open{transform:translate(0)!important}.mobile-menu-overlay{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.dashboard-sidebar button,.dashboard-sidebar .nav-item,.dashboard-sidebar .nav-group{min-height:48px;font-size:.95rem}.admin-filters{flex-direction:column;gap:12px!important;padding:14px!important}.filter-group{width:100%!important}.filter-group select,.filter-group input{font-size:.95rem!important;padding:12px!important;height:46px!important;min-height:46px!important}.filter-actions{width:100%;display:flex;flex-direction:column;gap:10px}.refresh-button,.create-button{width:100%;justify-content:center;padding:12px 14px;font-size:.95rem;border-radius:10px}.bookings-summary,.holiday-management-section,.holiday-add-form{padding:14px;border-radius:12px}.section-title{font-size:1.05rem}.bookings-table-container,.holidays-table-container{overflow-x:auto;border-radius:12px;-webkit-overflow-scrolling:touch;box-shadow:0 8px 28px #00000014;padding-bottom:4px}.bookings-table,.holidays-table{min-width:720px;font-size:.9rem}.bookings-table th,.bookings-table td,.holidays-table th,.holidays-table td{padding:10px 8px}.message-cell{max-width:180px;white-space:normal}.edit-button,.delete-button{padding:6px 8px;min-width:42px;min-height:36px;border-radius:8px;font-size:1rem}}@media(max-width:480px){.admin-page{padding:10px}.admin-header h1{font-size:1.2rem;text-align:center;width:100%}.admin-header p{display:none!important}.admin-main{padding-top:70px}.dashboard-sidebar{width:260px!important}.admin-filters{padding:12px!important;gap:10px!important}.filter-group select,.filter-group input{font-size:.92rem!important;padding:11px!important;height:44px!important}.bookings-table,.holidays-table{min-width:640px;font-size:.85rem}.bookings-table th,.bookings-table td,.holidays-table th,.holidays-table td{padding:8px 6px}.calendar-badge{padding:3px 8px;font-size:.75rem}.edit-button,.delete-button{padding:5px 7px;min-height:34px;font-size:.95rem}}.holiday-toggle-button{padding:10px 20px;background:#6c757d;color:#fff;border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .3s ease;font-weight:500;height:-moz-fit-content;height:fit-content}.holiday-toggle-button:hover{background:#5a6268;transform:translateY(-2px)}.holiday-toggle-button.active{background:#17a2b8}.holiday-toggle-button.active:hover{background:#138496}.holiday-management-section{max-width:1600px;margin:0 auto 30px;padding:30px;border-radius:12px;transition:background-color .3s ease}.admin-page.dark-mode .holiday-management-section{background:#1a1a1a;border:1px solid #333}.admin-page.light-mode .holiday-management-section{background:#fff;border:1px solid #e0e0e0;box-shadow:0 2px 8px #0000000d}.holiday-management-section h2{margin:0 0 30px;font-size:1.8rem;font-weight:700}.holiday-management-section h3{margin:0 0 20px;font-size:1.3rem;font-weight:600;opacity:.9}.holiday-add-form{margin-bottom:40px;padding:25px;border-radius:8px;transition:background-color .3s ease}.admin-page.dark-mode .holiday-add-form{background:#0a0a0a;border:1px solid #2a2a2a}.admin-page.light-mode .holiday-add-form{background:#f9f9f9;border:1px solid #e0e0e0}.form-row{display:flex;gap:20px;flex-wrap:wrap;align-items:flex-end}.form-group{display:flex;flex-direction:column;gap:8px;min-width:200px;flex:1}.form-group label{font-weight:600;font-size:.9rem;opacity:.9}.form-group input,.form-group select{padding:10px 15px;border-radius:8px;border:1px solid;font-size:1rem;transition:all .3s ease}.admin-page.dark-mode .form-group input,.admin-page.dark-mode .form-group select{background:#1a1a1a;border-color:#333;color:#fff}.admin-page.light-mode .form-group input,.admin-page.light-mode .form-group select{background:#fff;border-color:#d0d0d0;color:#333}.form-group input:focus,.form-group select:focus{outline:none;border-color:#fa541c;box-shadow:0 0 0 3px #fa541c1a}.add-holiday-button{padding:10px 24px;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s ease;font-weight:500;height:-moz-fit-content;height:fit-content;white-space:nowrap;border:1px solid;display:flex;align-items:center;gap:8px}.admin-page.dark-mode .add-holiday-button,.admin-page.light-mode .add-holiday-button{background:#10b98130;border-color:#10b981;color:#fff}.add-holiday-button:hover{transform:translateY(-2px);background:#059669;border-color:#059669}.admin-page.dark-mode .add-holiday-button:hover,.admin-page.light-mode .add-holiday-button:hover{background:#059669;border-color:#059669;color:#fff}.add-holiday-icon{width:18px;height:18px;color:#fff;flex-shrink:0}.holiday-list-section{padding:25px;border-radius:8px;transition:background-color .3s ease}.admin-page.dark-mode .holiday-list-section{background:#0a0a0a;border:1px solid #2a2a2a}.admin-page.light-mode .holiday-list-section{background:#f9f9f9;border:1px solid #e0e0e0}.no-holidays{text-align:center;padding:40px 20px;font-size:1.1rem;opacity:.7;font-style:italic}.holidays-table-container{overflow-x:auto;border-radius:8px;margin-top:20px;transition:background-color .3s ease}.admin-page.dark-mode .holidays-table-container{background:#1a1a1a;border:1px solid #333}.admin-page.light-mode .holidays-table-container{background:#fff;border:1px solid #e0e0e0;box-shadow:0 2px 8px #0000000d}.holidays-table{width:100%;border-collapse:collapse;min-width:600px}.holidays-table thead{position:sticky;top:0;z-index:10}.admin-page.dark-mode .holidays-table thead{background:#0a0a0a}.admin-page.light-mode .holidays-table thead{background:#f5f5f5}.holidays-table th{padding:15px;text-align:left;font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid;transition:border-color .3s ease}.admin-page.dark-mode .holidays-table th{border-color:#333;color:#fff}.admin-page.light-mode .holidays-table th{border-color:#e0e0e0;color:#333}.holidays-table td{padding:15px;border-bottom:1px solid;transition:border-color .3s ease}.admin-page.dark-mode .holidays-table td{border-color:#2a2a2a}.admin-page.light-mode .holidays-table td{border-color:#f0f0f0}.holidays-table tbody tr{transition:background-color .2s ease}.admin-page.dark-mode .holidays-table tbody tr:hover{background:#2a2a2a}.admin-page.light-mode .holidays-table tbody tr:hover{background:#f9f9f9}@media(max-width:768px){.form-row{flex-direction:column}.form-group,.add-holiday-button{width:100%}}.user-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.user-modal{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d;animation:slideIn .3s ease-out}.user-modal-overlay.dark-mode .user-modal{background:#1a1a1a;color:#fff}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.user-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e0e0e0}.user-modal-overlay.dark-mode .user-modal-header{border-bottom-color:#333}.user-modal-header h2{margin:0;font-size:1.5rem;font-weight:700}.close-button{background:none;border:none;font-size:2rem;cursor:pointer;color:#666;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.user-modal-overlay.dark-mode .close-button{color:#999}.close-button:hover{background:#f0f0f0;color:#333}.user-modal-overlay.dark-mode .close-button:hover{background:#2a2a2a;color:#fff}.user-modal-form{padding:24px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;font-size:.9rem;color:#333}.user-modal-overlay.dark-mode .form-group label{color:#fff}.form-group input,.form-group select{width:100%;padding:12px;border:1px solid #d0d0d0;border-radius:8px;font-size:1rem;transition:all .3s ease;font-family:inherit;box-sizing:border-box}.user-modal-overlay.dark-mode .form-group input,.user-modal-overlay.dark-mode .form-group select{background:#0a0a0a;border-color:#333;color:#fff}.form-group input:focus,.form-group select:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.form-group input.error,.form-group select.error{border-color:#f44}.error-message{display:block;color:#f44;font-size:.85rem;margin-top:5px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:24px;border-top:1px solid #e0e0e0}.user-modal-overlay.dark-mode .form-actions{border-top-color:#333}.cancel-button,.submit-button{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.cancel-button{background:#f0f0f0;color:#333}.user-modal-overlay.dark-mode .cancel-button{background:#2a2a2a;color:#fff}.cancel-button:hover{background:#e0e0e0}.user-modal-overlay.dark-mode .cancel-button:hover{background:#3a3a3a}.submit-button{background:#10b981;color:#fff}.submit-button:hover{background:#059669;transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.submit-button:active{transform:translateY(0)}@media(max-width:768px){.user-modal-overlay{padding:20px 12px 12px;align-items:flex-start}.user-modal{max-width:100%;border-radius:12px;max-height:90vh}.user-modal-header{padding:16px 20px}.user-modal-header h2{font-size:1.3rem}.user-modal-form{padding:20px}.form-group{margin-bottom:16px}.form-group input,.form-group select{padding:12px;font-size:16px}.form-actions{flex-direction:column;gap:10px;margin-top:20px;padding-top:20px}.cancel-button,.submit-button{width:100%;padding:14px 20px}}@media(max-width:480px){.user-modal-overlay{padding:16px 8px 8px}.user-modal{border-radius:10px}.user-modal-header{padding:14px 16px}.user-modal-header h2{font-size:1.2rem}.user-modal-form{padding:16px}.form-group label{font-size:.85rem}.form-group input,.form-group select{padding:10px;border-radius:6px}}.settings-page{min-height:100vh;width:100%}@media(max-width:768px){.settings-page{min-height:calc(100vh - 60px);width:100%;padding-top:0;overflow-x:hidden;overflow-y:auto}.dashboard-main{width:100%!important;overflow-x:hidden!important;padding-left:0!important;padding-right:0!important}}.settings-header{padding:24px 32px;border-bottom:1px solid var(--border-color, #e5e7eb);background:var(--card-bg, #ffffff);position:sticky;top:0;z-index:10;box-shadow:0 1px 3px #0000000d}@media(max-width:768px){.settings-header{position:relative;top:auto;z-index:1;padding:16px 20px}}.settings-header .header-content{display:flex;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto}@media(min-width:769px){.settings-header .header-content{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;position:relative}.settings-header .header-content>div:first-child{grid-column:2;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}.settings-header .header-content>div:last-child{grid-column:3;display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px!important;justify-content:flex-end!important}}.settings-header h1{font-size:28px;font-weight:700;margin:0 0 4px;color:var(--text-color, #111827);background:linear-gradient(135deg,#fa541c,#ff6b35);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.settings-header p{font-size:14px;color:var(--text-secondary, #6b7280);margin:0}.settings-container{display:flex;max-width:1400px;margin:0 auto;padding:32px;gap:32px}@media(max-width:768px){.settings-container{padding:16px;gap:20px;width:100%;box-sizing:border-box}}.settings-sidebar{width:240px;flex-shrink:0;display:flex;flex-direction:column;gap:8px}.settings-content{flex:1;min-width:0}.settings-section{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-header{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid var(--border-color, #e5e7eb)}.section-header svg{color:var(--accent-color, #fa541c);flex-shrink:0}.section-header h2{font-size:24px;font-weight:600;margin:0 0 4px;color:var(--text-color, #111827)}.section-header p{font-size:14px;color:var(--text-secondary, #6b7280);margin:0}.settings-card{background:var(--card-bg, #ffffff);border-radius:16px;padding:24px;box-shadow:0 1px 3px #0000001a;border:1px solid var(--border-color, #e5e7eb);transition:all .3s ease}.settings-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:20px 0;border-bottom:1px solid var(--border-color, #e5e7eb);transition:all .2s ease}.setting-item:last-child{border-bottom:none}.setting-item:hover{padding-left:8px}.setting-info{display:flex;align-items:center;gap:16px;flex:1}.setting-info svg{color:var(--accent-color, #fa541c);flex-shrink:0}.setting-info label{display:block;font-size:16px;font-weight:600;color:var(--text-color, #111827);margin-bottom:4px}.setting-info p{font-size:14px;color:var(--text-secondary, #6b7280);margin:0}.setting-input{padding:10px 16px;border-radius:8px;border:1px solid var(--border-color, #e5e7eb);background:var(--card-bg, #ffffff);color:var(--text-color, #111827);font-size:14px;transition:all .2s ease;outline:none}.setting-input:focus{border-color:var(--accent-color, #fa541c);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-color, #fa541c) 10%,transparent)}.toggle-switch{position:relative;width:52px;height:28px;border-radius:14px;border:none;background:var(--border-color, #e5e7eb);cursor:pointer;transition:all .3s ease;padding:2px}.toggle-switch.active{background:#fa541c}.toggle-slider{display:block;width:24px;height:24px;border-radius:50%;background:#fff;transition:all .3s ease;transform:translate(0);box-shadow:0 2px 4px #0003}.toggle-switch.active .toggle-slider{transform:translate(24px)}.save-button{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;border:none;background:#fa541c;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #fa541c4d}.save-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #fa541c66}.save-button:disabled{opacity:.7;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.settings-page.dark-mode{--card-bg: #111111;--text-color: #ffffff;--text-secondary: #9ca3af;--border-color: #333333}.settings-page.dark-mode .settings-header{background:#000;border-bottom-color:#333}.settings-page.dark-mode .settings-card{background:#111;border-color:#333}.settings-page.dark-mode .settings-card:hover{box-shadow:0 4px 12px #0000004d}.settings-page.dark-mode .setting-input{background:#1a1a1a;border-color:#333;color:#fff}.settings-page.dark-mode .setting-input:focus{border-color:var(--accent-color, #fa541c);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-color, #fa541c) 20%,transparent)}.settings-page.dark-mode .toggle-switch{background:#333}.color-palette-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:12px;padding:16px;background:var(--card-bg, #f9fafb);border-radius:12px;border:1px solid var(--border-color, #e5e7eb)}.color-palette-item{width:60px;height:60px;border-radius:12px;border:2px solid var(--border-color, #e5e7eb);cursor:pointer;transition:all .2s ease;position:relative;box-shadow:0 2px 4px #0000001a}.color-palette-item:hover{transform:scale(1.05)}.color-palette-item.selected{border:3px solid var(--text-color, #000000);transform:scale(1.1);box-shadow:0 4px 12px currentColor}.color-preview{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--card-bg, #f9fafb);border-radius:8px;border:1px solid var(--border-color, #e5e7eb);margin-top:16px}@media(max-width:1024px){.settings-container{flex-direction:column;padding:24px}.settings-sidebar{width:100%;flex-direction:row;overflow-x:auto;padding-bottom:8px}.settings-nav-item{white-space:nowrap}}@media(max-width:768px){.settings-header{position:relative!important;top:auto!important;z-index:1!important;padding:16px 20px;margin-top:0}.settings-header .header-content{flex-direction:column;align-items:flex-start;gap:16px}.settings-header h1{font-size:22px}.settings-container{padding:16px;gap:20px}.settings-sidebar{gap:6px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.settings-sidebar::-webkit-scrollbar{display:none}.setting-item{flex-direction:column;align-items:flex-start;gap:16px;padding:16px 0}.setting-item:hover{padding-left:0}.setting-input{width:100%}.settings-card{padding:16px;border-radius:12px}.section-header{flex-wrap:wrap;gap:12px;margin-bottom:20px;padding-bottom:12px}.section-header h2{font-size:20px}.color-palette-grid{grid-template-columns:repeat(auto-fill,minmax(50px,1fr));gap:10px;padding:12px}.color-palette-item{width:50px;height:50px}}@media(max-width:480px){.settings-header{padding:12px 16px}.settings-header h1{font-size:20px}.settings-container{padding:12px;gap:16px}.settings-card{padding:12px;border-radius:10px}.setting-item{padding:12px 0;gap:12px}.setting-info{gap:12px}.setting-info label{font-size:14px}.setting-info p{font-size:12px}.section-header h2{font-size:18px}.section-header svg{width:20px;height:20px}.save-button{padding:10px 16px;font-size:13px;width:100%;justify-content:center}.color-palette-grid{grid-template-columns:repeat(5,1fr);gap:8px;padding:10px}.color-palette-item{width:100%;aspect-ratio:1;height:auto}}
