@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Open+Sans:wght@300;400;500;600;700&display=swap";:root{--background:30 10% 97%;--foreground:0 0% 25%;--card:0 0% 100%;--card-foreground:0 0% 25%;--primary:0 0% 30%;--primary-foreground:0 0% 100%;--secondary:30 10% 94%;--secondary-foreground:0 0% 25%;--muted:30 10% 94%;--muted-foreground:0 0% 50%;--accent-magenta:330 75% 45%;--accent-cyan:197 92% 35%;--accent-gold:45 85% 50%;--accent-green:145 55% 35%;--accent:197 92% 35%;--accent-foreground:0 0% 100%;--destructive:0 84.2% 60.2%;--destructive-foreground:0 0% 100%;--border:30 10% 88%;--input:30 10% 88%;--ring:197 92% 35%;--radius:.5rem;--font-heading:"Cormorant Garamond",Georgia,serif;--font-body:"Open Sans","Helvetica Neue",sans-serif;font-family:var(--font-body);color:hsl(var(--foreground));background-color:hsl(var(--background));font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.6}*{box-sizing:border-box;border-color:hsl(var(--border));margin:0;padding:0}body{min-height:100vh;font-family:var(--font-body);background-color:hsl(var(--background));color:hsl(var(--foreground));margin:0}h1,h2,h3,h4,h5,h6{line-height:1.2;font-family:var(--font-heading)}a{color:hsl(var(--accent-cyan));-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}a:hover{color:hsl(var(--accent-green))}button{font-family:inherit}.brand-logo{font-family:var(--font-heading);color:hsl(var(--foreground));letter-spacing:.05em}.brand-letter-magenta{color:hsl(var(--accent-magenta))}.brand-letter-cyan{color:hsl(var(--accent-cyan))}.brand-letter-gold{color:hsl(var(--accent-gold))}.brand-letter-green{color:hsl(var(--accent-green))}.ripple-letter{transition:color .3s;animation:4s infinite rippleGreenAuto;display:inline-block}.brand-logo-animated:hover .ripple-letter{animation:.6s forwards rippleGreen}@keyframes rippleGreen{0%{color:hsl(var(--foreground))}50%{color:hsl(var(--accent-green))}to{color:hsl(var(--foreground))}}@keyframes rippleGreenAuto{0%,10%{color:hsl(var(--foreground))}15%{color:hsl(var(--accent-green))}25%,to{color:hsl(var(--foreground))}}.gradient-text{background:linear-gradient(135deg,hsl(var(--accent-magenta))0%,hsl(var(--accent-cyan))50%,hsl(var(--accent-gold))100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up{animation:.8s ease-out forwards fadeUp}.animate-fade-in{animation:.6s ease-out forwards fadeIn}*,:after,:before,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.relative{position:relative}.z-10{z-index:10}.z-50{z-index:50}.m-0{margin:0}.mx-auto{margin-left:auto;margin-right:auto}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.block{display:block}.flex{display:flex}.hidden{display:none}.size-4{width:1rem;height:1rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-5,.h-\[1\.25rem\]{height:1.25rem}.w-12{width:3rem}.w-36{width:9rem}.w-5{width:1.25rem}.w-64{width:16rem}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-pointer{cursor:pointer}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-4{gap:1rem}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-gray-900\/25{border-color:#11182740}.bg-blue-600\/10{background-color:#2563eb1a}.bg-transparent{background-color:#0000}.fill-none{fill:none}.stroke-current{stroke:currentColor}.stroke-2{stroke-width:2px}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.text-center{text-align:center}.align-middle{vertical-align:middle}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.blur{--tw-blur:blur(8px)}.blur,.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-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:left-0:after{content:var(--tw-content);left:0}.after\:h-full:after{content:var(--tw-content);height:100%}.after\:w-\[var\(--progress-width\)\]:after{content:var(--tw-content);width:var(--progress-width)}.after\:bg-blue-600:after{content:var(--tw-content);--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.after\:transition-\[width\]:after{content:var(--tw-content);transition-property:width;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.after\:duration-500:after{content:var(--tw-content);transition-duration:.5s}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}.focus-within\:outline-none:focus-within{outline-offset:2px;outline:2px solid #0000}.focus-within\:ring-2:focus-within{--tw-ring-offset-shadow:var(--tw-ring-inset)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-within\:ring-blue-600:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgb(37 99 235/var(--tw-ring-opacity,1))}.focus-within\:ring-offset-2:focus-within{--tw-ring-offset-width:2px}.hover\:bg-slate-200:hover{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.hover\:text-blue-500:hover{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.hover\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.disabled\:pointer-events-none:disabled{pointer-events:none}.group:hover .group-hover\:block{display:block}.group:hover .group-hover\:hidden{display:none}.data-\[state\=disabled\]\:cursor-not-allowed[data-state=disabled],.data-\[state\=readying\]\:cursor-not-allowed[data-state=readying]{cursor:not-allowed}.data-\[state\=disabled\]\:bg-blue-400[data-state=disabled]{--tw-bg-opacity:1;background-color:rgb(96 165 250/var(--tw-bg-opacity,1))}.data-\[state\=ready\]\:bg-blue-600[data-state=ready]{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.data-\[state\=readying\]\:bg-blue-400[data-state=readying],.data-\[state\=uploading\]\:bg-blue-400[data-state=uploading]{--tw-bg-opacity:1;background-color:rgb(96 165 250/var(--tw-bg-opacity,1))}.data-\[state\=uploading\]\:after\:bg-blue-600[data-state=uploading]:after{content:var(--tw-content);--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.navbar{background-color:hsl(var(--background));border-bottom:1px solid hsl(var(--border));z-index:1000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background-color:#f8f7f7e6;padding:1rem 2rem;position:sticky;top:0;box-shadow:0 2px 4px #0000000d}.nav-container{justify-content:space-between;align-items:center;width:100%;max-width:1200px;margin:0 auto;display:flex}.nav-logo{font-size:1.5rem;font-weight:500;text-decoration:none}.logo-full{display:inline}.logo-mobile{display:none}.nav-menu{flex-wrap:wrap;align-items:center;gap:2rem;margin:0;padding:0;list-style:none;display:flex}.nav-item{align-items:center;gap:1rem;display:flex}.nav-link{color:hsl(var(--muted-foreground));font-weight:500;text-decoration:none;transition:color .3s}.nav-link:hover{color:hsl(var(--foreground))}.btn-primary{background-color:hsl(var(--accent-green));border:2px solid hsl(var(--accent-green));border-radius:.375rem;padding:.5rem 1.5rem;transition:all .3s;color:#fff!important}.btn-primary:hover{background-color:#0000;color:hsl(var(--accent-green))!important}.nav-link-admin{font-weight:600;color:hsl(var(--accent-magenta))!important}.nav-link-admin:hover{color:#9c1659!important}.nav-link-account{align-items:center;gap:.5rem;display:inline-flex;position:relative}.nav-unread-badge{color:#fff;text-align:center;background-color:#d92626;border-radius:1rem;min-width:1.25rem;padding:.125rem .4rem;font-size:.7rem;font-weight:700;line-height:1.2}@media (max-width:768px){.navbar{padding:.75rem 1rem}.nav-menu{gap:1rem}.nav-item{gap:.5rem}.nav-logo{font-size:1.25rem}.nav-link{font-size:.9rem}.btn-primary{padding:.4rem 1rem;font-size:.9rem}}@media (max-width:480px){.navbar{padding:.5rem .75rem}.nav-menu{gap:.5rem}.nav-item{gap:.25rem}.nav-link{font-size:.85rem}.logo-full{display:none}.logo-mobile{font-size:1.75rem;display:inline}.btn-primary{padding:.35rem .75rem;font-size:.85rem}.nav-unread-badge{min-width:1rem;padding:.1rem .3rem;font-size:.65rem}}.footer{background-color:hsl(var(--foreground));color:hsl(var(--background));margin-top:auto;padding:1rem 2rem}.footer .brand-logo{color:hsl(var(--background))}.footer-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;max-width:1200px;margin:0 auto;display:flex}.footer-section h3,.footer-section h4{color:hsl(var(--accent-cyan));margin-bottom:1rem}.footer-section ul{padding:0;list-style:none}.footer-section li{margin-bottom:.5rem}.footer-section a{color:hsl(var(--background));text-decoration:none;transition:color .3s}.footer-section a:hover{color:hsl(var(--accent-gold))}.home-page{min-height:100vh}.hero{background:hsl(var(--background));color:hsl(var(--foreground));text-align:center;justify-content:center;align-items:center;min-height:70vh;padding:8rem 2rem 6rem;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background:radial-gradient(circle at 50% 50%,hsla(var(--accent-cyan),.05)0%,transparent 60%);pointer-events:none;position:absolute;inset:0}.hero-content{z-index:1;max-width:900px;margin:0 auto;position:relative}.hero h1{letter-spacing:-.02em;font-size:clamp(2.5rem,6vw,4rem);font-weight:500;line-height:1.2;font-family:var(--font-heading);color:hsl(var(--foreground));margin-bottom:1.5rem}.hero-subtitle{max-width:700px;color:hsl(var(--muted-foreground));margin-bottom:3rem;margin-left:auto;margin-right:auto;font-size:clamp(1.125rem,2.5vw,1.35rem);font-weight:300;line-height:1.6}.hero-buttons{flex-wrap:wrap;justify-content:center;gap:1.25rem;display:flex}.btn{letter-spacing:.01em;border:none;border-radius:.5rem;padding:1rem 2.5rem;font-size:1rem;font-weight:500;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-block}.btn-primary{box-shadow:0 4px 12px hsla(var(--accent-green),.3);background-color:hsl(var(--accent-green))!important;color:#fff!important}.btn-primary:hover{box-shadow:0 8px 20px hsla(var(--accent-green),.4);transform:translateY(-3px);background-color:#196639!important}.btn-secondary{color:hsl(var(--foreground));border:2px solid hsl(var(--border));background-color:#0000}.btn-secondary:hover{border-color:hsl(var(--accent-cyan));color:hsl(var(--accent-cyan))}.btn-admin{background-color:hsl(var(--accent-magenta));color:#fff;box-shadow:0 4px 12px hsla(var(--accent-magenta),.3)}.btn-admin:hover{box-shadow:0 8px 20px hsla(var(--accent-magenta),.4);background-color:#ad1f66;transform:translateY(-3px)}.features{background:linear-gradient(to bottom,hsl(var(--secondary))0%,hsl(var(--background))100%);padding:6rem 2rem}.container{box-sizing:border-box;max-width:1200px;margin:0 auto;padding:0 1rem}.features h2{text-align:center;color:hsl(var(--foreground));letter-spacing:-.02em;margin-bottom:4rem;font-size:clamp(2rem,4vw,3rem);font-weight:700}.features-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;display:grid}.feature-card{background:hsl(var(--card));text-align:center;border:1px solid hsl(var(--border));border-radius:1rem;padding:2.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d,0 10px 30px #0000000d}.feature-card:hover{box-shadow:0 4px 20px hsla(var(--accent-cyan),.15),0 15px 40px #0000001a;border-color:hsl(var(--accent-cyan))}.feature-icon{filter:drop-shadow(0 2px 4px #0000001a);margin-bottom:1.5rem;font-size:3.5rem}.feature-card h3{color:hsl(var(--accent-cyan));letter-spacing:-.01em;margin-bottom:1rem;font-size:1.375rem;font-weight:600}.feature-card p{color:hsl(var(--muted-foreground));font-size:1rem;line-height:1.7}.feature-link{color:#de3163;margin-top:1rem;font-size:.95rem;font-weight:600;display:inline-block}.cta{background:hsl(var(--secondary));color:hsl(var(--foreground));text-align:center;padding:6rem 2rem;position:relative;overflow:hidden}.cta:before{content:"";background:radial-gradient(circle at 70% 50%,hsla(var(--accent-cyan),.08)0%,transparent 60%);pointer-events:none;position:absolute;inset:0}.cta>.container{z-index:1;position:relative}.cta h2{letter-spacing:-.02em;font-size:clamp(2rem,4vw,2.5rem);font-weight:500;font-family:var(--font-heading);color:hsl(var(--foreground));margin-bottom:1.5rem}.cta p{color:hsl(var(--muted-foreground));margin-bottom:2rem;font-size:1.125rem}.cta-examples{text-align:left;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:1rem;max-width:750px;margin:3rem auto;padding:2.5rem 3rem;list-style:none;box-shadow:0 4px 20px #0000000d}.cta-examples li{color:hsl(var(--foreground));margin-bottom:1.25rem;padding-left:2.5rem;font-size:1.125rem;line-height:1.6;position:relative}.cta-examples li:last-child{margin-bottom:0}.cta-examples li:before{content:"→";color:hsl(var(--accent-gold));font-size:1.5rem;font-weight:700;line-height:1.4;position:absolute;left:0}.cta-footer{letter-spacing:-.01em;color:hsl(var(--foreground));margin-top:3rem;margin-bottom:2.5rem;font-size:1.25rem;font-weight:500}.btn-large{background-color:hsl(var(--accent-green));color:#fff;padding:1.25rem 3.5rem;font-size:1.1875rem;font-weight:600;box-shadow:0 6px 20px #0003}.btn-large:hover{background-color:#196639;transform:translateY(-3px);box-shadow:0 10px 30px #00000040}@media (max-width:768px){.hero{min-height:60vh;padding:5rem 1.5rem 4rem}.features{padding:4rem 1.5rem}.features .container,.cta .container{text-align:center;flex-direction:column;align-items:center;width:100%;display:flex}.features h2,.cta h2,.cta p,.cta-footer{text-align:center;width:100%}.features-grid{gap:1.5rem;width:100%;max-width:500px;margin:0 auto}.cta{padding:4rem 1.5rem}.cta-examples{box-sizing:border-box;width:100%;max-width:500px;margin:2rem auto;padding:2rem 1.5rem}}.services-page{min-height:100vh}.services-hero{background:hsl(var(--background));color:hsl(var(--foreground));text-align:center;border-bottom:1px solid hsl(var(--border));padding:5rem 2rem 3rem}.services-hero h1{font-size:2.5rem;font-family:var(--font-heading);margin-bottom:.5rem;font-weight:500}.services-content{max-width:1200px;margin:0 auto;padding:4rem 2rem}.services-grid{flex-wrap:wrap;justify-content:center;gap:2rem;margin-top:2rem;display:flex}.service-card{background:hsl(var(--card));border:2px solid hsl(var(--border));border-radius:.75rem;flex-direction:column;width:100%;min-width:320px;max-width:380px;padding:2rem;transition:all .3s;display:flex}.service-card:hover{border-color:hsl(var(--accent-cyan));box-shadow:0 8px 24px hsla(var(--accent-cyan),.15)}.service-header{margin-bottom:1rem}.service-header h3{color:hsl(var(--foreground));margin-bottom:.5rem;font-size:1.5rem}.service-price{color:hsl(var(--accent-cyan));margin:0;font-size:1.75rem;font-weight:700}.service-features{flex-grow:1;margin-bottom:1.5rem;padding:0;list-style:none}.service-features li{color:hsl(var(--foreground));border-bottom:1px solid hsl(var(--border));padding:.5rem 0}.service-features li:last-child{border-bottom:none}.btn-book{background-color:hsl(var(--accent-green));color:#fff;cursor:pointer;border:none;border-radius:.5rem;width:100%;margin-top:auto;padding:.875rem 2rem;font-weight:600;transition:all .3s}.btn-book:hover{background-color:#196639}.service-duration{color:hsl(var(--muted-foreground));border-top:1px solid hsl(var(--border));margin-bottom:1.5rem;padding:.5rem 0;font-size:.875rem}.payment-info{background-color:hsl(var(--secondary));text-align:center;padding:3rem 2rem}.payment-info h2{color:hsl(var(--foreground));margin-bottom:1rem}.payment-note{color:hsl(var(--muted-foreground));margin-top:1rem;font-size:.875rem}.how-it-works-cta{text-align:center;background:hsl(var(--background));border-top:1px solid hsl(var(--border));padding:3rem 2rem}.how-it-works-cta h2{color:hsl(var(--foreground));margin-bottom:.75rem;font-size:1.5rem}.how-it-works-cta p{color:hsl(var(--muted-foreground));max-width:600px;margin:0 auto 1.5rem;line-height:1.6}.how-it-works-cta .btn{border-radius:.5rem;padding:.875rem 2rem;font-weight:500;text-decoration:none;display:inline-block}.about-page{min-height:100vh}.about-hero{background:hsl(var(--background));color:hsl(var(--foreground));text-align:center;border-bottom:1px solid hsl(var(--border));padding:5rem 2rem 3rem}.about-hero h1{font-size:2.5rem;font-family:var(--font-heading);margin-bottom:.5rem;font-weight:500}.about-content{max-width:900px;margin:0 auto;padding:4rem 2rem}.about-section{margin-bottom:3rem}.about-section h2{color:hsl(var(--foreground));margin-bottom:1rem;font-size:2rem}.about-section p{color:hsl(var(--muted-foreground));font-size:1.125rem;line-height:1.8}.expertise-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:2rem;display:grid}.expertise-item{border-left:4px solid hsl(var(--accent-cyan));padding-left:1rem}.expertise-item h3{color:hsl(var(--foreground));margin-bottom:.5rem;font-size:1.125rem}.expertise-item p{color:hsl(var(--muted-foreground));font-size:.95rem;line-height:1.6}.benefits-list{padding:0;list-style:none}.benefits-list li{color:hsl(var(--foreground));padding:.75rem 0 .75rem 2rem;font-size:1.125rem;position:relative}.benefits-list li:before{content:"✓";color:hsl(var(--accent-green));font-size:1.25rem;font-weight:700;position:absolute;left:0}.contact-page{min-height:100vh}.contact-hero{background:hsl(var(--background));color:hsl(var(--foreground));text-align:center;border-bottom:1px solid hsl(var(--border));padding:5rem 2rem 3rem}.contact-hero h1{font-size:2.5rem;font-family:var(--font-heading);margin-bottom:.5rem;font-weight:500}.contact-content{padding:4rem 2rem}.contact-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem;max-width:1000px;margin:0 auto;display:grid}.contact-info h2{color:hsl(var(--foreground));margin-bottom:1rem;font-size:2rem}.contact-info p{color:hsl(var(--muted-foreground));margin-bottom:2rem;line-height:1.6}.contact-details{flex-direction:column;gap:1.5rem;display:flex}.contact-item{border-left:4px solid hsl(var(--accent-cyan));padding-left:1rem}.contact-item h3{color:hsl(var(--foreground));margin-bottom:.5rem;font-size:1.125rem}.contact-item p{color:hsl(var(--foreground));margin:.25rem 0}.professional-advice-notice{border-left:4px solid hsl(var(--accent-green));margin-bottom:2rem;padding-left:1rem}.professional-advice-notice h3{color:hsl(var(--foreground));margin-bottom:.75rem;font-size:1.25rem}.professional-advice-notice p{color:hsl(var(--muted-foreground));margin-bottom:1.25rem;line-height:1.7}.btn-book-consultation{background-color:hsl(var(--accent-green));color:#fff;border-radius:.5rem;padding:.75rem 1.5rem;font-weight:600;text-decoration:none;transition:background-color .3s;display:inline-block}.btn-book-consultation:hover{background-color:#196639}.contact-form-container{background:#fff;border-radius:.75rem;min-width:0;padding:2rem;overflow:hidden;box-shadow:0 4px 16px #0000001a}.contact-form-container:has(.success-message){display:block}.contact-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;display:flex}.form-group label{color:hsl(var(--foreground));margin-bottom:.5rem;font-weight:600}.btn-submit{background-color:hsl(var(--accent-green));color:#fff;cursor:pointer;border:none;border-radius:.5rem;padding:1rem 2rem;font-size:1.125rem;font-weight:600;transition:all .3s}.btn-submit:disabled{background-color:hsl(var(--muted));cursor:not-allowed}.success-message{text-align:center;column-count:unset;columns:unset;flex-direction:column;align-items:center;padding:2rem;display:flex}.success-message h3{color:hsl(var(--accent-green));width:100%;margin-bottom:.5rem;font-size:1.75rem}.success-message>p{color:hsl(var(--muted-foreground));width:100%;max-width:100%;margin-bottom:1.5rem}.reference-box{background-color:hsl(var(--secondary));border:2px dashed hsl(var(--border));box-sizing:border-box;border-radius:.5rem;width:100%;margin-bottom:1.5rem;padding:1.5rem}.reference-box p{margin:0}.reference-label{color:hsl(var(--muted-foreground));font-size:.875rem;margin-bottom:.5rem!important}.reference-number{color:hsl(var(--foreground));letter-spacing:.05em;word-break:break-all;font-family:monospace;font-size:1.25rem;font-weight:700}.reference-note{color:hsl(var(--muted-foreground));width:100%;max-width:100%;margin-bottom:1rem;font-size:.875rem}.signed-in-note{color:hsl(var(--muted-foreground));width:100%;max-width:100%;margin-bottom:1.5rem;font-size:.875rem}.signed-in-note a{color:hsl(var(--accent-cyan));text-decoration:none}.signed-in-note a:hover{text-decoration:underline}.error-message{color:#821717;background-color:#fbe9e9;border:1px solid #e87d7d;border-radius:.5rem;margin-bottom:1rem;padding:1rem}.signed-in-info{background-color:hsl(var(--secondary));border-radius:.5rem;margin-bottom:.5rem;padding:1rem}.signed-in-info p{color:hsl(var(--foreground));margin:0}.auth-page{background:linear-gradient(135deg,hsl(var(--background))0%,hsl(var(--secondary))100%);flex:1;justify-content:center;align-items:center;padding:2rem;display:flex}.auth-container{width:100%;max-width:450px}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{text-transform:none;appearance:button;cursor:pointer;overflow:visible}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-calendar{box-sizing:border-box;flex-direction:column;align-items:stretch;height:100%;display:flex}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar :before,.rbc-calendar :after{-webkit-box-sizing:inherit;box-sizing:inherit}.rbc-abs-full,.rbc-row-bg{position:absolute;inset:0;overflow:hidden}.rbc-ellipsis,.rbc-show-more,.rbc-row-segment .rbc-event-content,.rbc-event-label{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-off-range-bg{background:#e6e6e6}.rbc-header{text-overflow:ellipsis;white-space:nowrap;text-align:center;vertical-align:middle;border-bottom:1px solid #ddd;flex:1 0;min-height:0;padding:0 3px;font-size:90%;font-weight:700;overflow:hidden}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{color:inherit;cursor:pointer;-webkit-user-select:text;user-select:text;background:0 0;border:none;margin:0;padding:0}.rbc-row-content{-webkit-user-select:none;user-select:none;z-index:4;position:relative}.rbc-row-content-scrollable{flex-direction:column;height:100%;display:flex}.rbc-row-content-scrollable .rbc-row-content-scroll-container{-ms-overflow-style:none;scrollbar-width:none;-ms-overflow-style:none;scrollbar-width:none;height:100%;overflow-y:scroll}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-toolbar{flex-wrap:wrap;justify-content:center;align-items:center;margin-bottom:10px;font-size:16px;display:flex}.rbc-toolbar .rbc-toolbar-label{text-align:center;flex-grow:1;padding:0 10px}.rbc-toolbar button{color:#373a3c;text-align:center;vertical-align:middle;white-space:nowrap;background:0 0;border:1px solid #ccc;border-radius:4px;margin:0;padding:.375rem 1rem;line-height:normal;display:inline-block}.rbc-toolbar button:active,.rbc-toolbar button.rbc-active{background-color:#e6e6e6;background-image:none;border-color:#adadad;box-shadow:inset 0 3px 5px #00000020}.rbc-toolbar button:active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button.rbc-active:focus{color:#373a3c;background-color:#d4d4d4;border-color:#8c8c8c}.rbc-toolbar button:focus{color:#373a3c;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:hover{color:#373a3c;cursor:pointer;background-color:#e6e6e6;border-color:#adadad}.rbc-btn-group{white-space:nowrap;display:inline-block}.rbc-btn-group>button:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:0 4px 4px 0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px 0 0 4px}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media (max-width:767px){.rbc-toolbar{flex-direction:column}}.rbc-event,.rbc-day-slot .rbc-background-event{box-sizing:border-box;-webkit-box-shadow:none;box-shadow:none;color:#fff;cursor:pointer;text-align:left;background-color:#3174ad;border:none;border-radius:5px;width:100%;margin:0;padding:2px 5px}.rbc-slot-selecting .rbc-event,.rbc-slot-selecting .rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-slot-selecting .rbc-background-event{cursor:inherit;pointer-events:none}.rbc-event.rbc-selected,.rbc-day-slot .rbc-selected.rbc-background-event{background-color:#265985}.rbc-event:focus,.rbc-day-slot .rbc-background-event:focus{outline:5px auto #3b99fc}.rbc-event-label{font-size:80%}.rbc-event-overlaps{box-shadow:-1px 1px 5px #33333380}.rbc-event-continues-prior{border-top-left-radius:0;border-bottom-left-radius:0}.rbc-event-continues-after{border-top-right-radius:0;border-bottom-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-right-radius:0;border-bottom-left-radius:0}.rbc-row{flex-direction:row;display:flex}.rbc-row-segment{padding:0 1px 1px}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{z-index:4;color:#3174ad;background-color:#ffffff4d;height:auto;font-size:85%;font-weight:700;line-height:normal}.rbc-show-more:hover,.rbc-show-more:focus{color:#265985}.rbc-month-view{-webkit-user-select:none;user-select:none;border:1px solid #ddd;flex-direction:column;flex:1 0 0;width:100%;height:100%;display:flex;position:relative}.rbc-month-header{flex-direction:row;display:flex}.rbc-month-row{flex-direction:column;flex:1 0 0;height:100%;display:flex;position:relative;overflow:hidden}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{text-align:right;flex:1 1 0;min-width:0;padding-right:5px}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{flex-direction:row;flex:1 0 0;display:flex;right:1px;overflow:hidden}.rbc-day-bg{flex:1 0}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{z-index:5;background-color:#fff;border:1px solid #e5e5e5;padding:10px;position:absolute;box-shadow:0 5px 15px #00000040}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{flex-direction:column;flex:1 0 0;display:flex;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{border-spacing:0;border-collapse:collapse;border:1px solid #ddd;width:100%}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{vertical-align:top;padding:5px 10px}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{text-transform:lowercase;padding-left:15px;padding-right:15px}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:left;border-bottom:1px solid #ddd;padding:3px 5px}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{flex-direction:column;min-height:100%;display:flex}.rbc-time-column .rbc-timeslot-group{flex:1}.rbc-timeslot-group{border-bottom:1px solid #ddd;flex-flow:column;min-height:40px;display:flex}.rbc-time-gutter,.rbc-header-gutter{flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{margin-right:10px;position:absolute;inset:0}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-event,.rbc-day-slot .rbc-background-event{border:1px solid #265985;flex-flow:column wrap;align-items:flex-start;min-height:20px;max-height:100%;display:flex;position:absolute;overflow:hidden}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{flex:none;width:auto;padding-right:5px}.rbc-day-slot .rbc-event-content{word-wrap:break-word;flex:1 1 0;width:100%;height:100%;min-height:1em;line-height:1}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{z-index:10;background-color:#fff;border-right:1px solid #ddd;margin-right:-1px;position:sticky;left:0}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{flex:1 0 0;min-width:auto}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-header,.rbc-time-view-resources .rbc-day-bg{flex:1 1 0;-ms-flex-preferred-size:0 px;flex-basis:0 px;width:140px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{flex:1 0 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{z-index:10;color:#fff;background-color:#00000080;width:100%;padding:3px;font-size:75%;position:absolute}.rbc-slot-selecting{cursor:move}.rbc-time-view{border:1px solid #ddd;flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.rbc-time-view .rbc-time-gutter{white-space:nowrap;text-align:right}.rbc-time-view .rbc-allday-cell{box-sizing:content-box;width:100%;height:100%;position:relative}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{z-index:4;position:relative}.rbc-time-view .rbc-row{box-sizing:border-box;min-height:20px}.rbc-time-header{flex-direction:row;flex:none;display:flex}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-left:1px solid #ddd;border-right-width:0}.rbc-time-header>.rbc-row:first-child,.rbc-time-header>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{border-left:1px solid #ddd;flex-direction:column;flex:1;min-width:0;display:flex}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;flex-shrink:0}.rbc-time-content{border-top:2px solid #ddd;flex:1 0;align-items:flex-start;width:100%;display:flex;position:relative;overflow-y:auto}.rbc-time-content>.rbc-time-gutter{flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{-webkit-user-select:none;user-select:none;width:100%}.rbc-current-time-indicator{z-index:3;pointer-events:none;background-color:#74ad31;height:1px;position:absolute;left:0;right:0}.rbc-resource-grouping.rbc-time-header-content{flex-direction:column;display:flex}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.booking-calendar{max-width:1200px;margin:0 auto;padding:2rem}.booking-calendar h2{color:hsl(var(--foreground));margin-bottom:.5rem}.booking-calendar>p{color:hsl(var(--muted-foreground));margin-bottom:2rem}.booking-loading{text-align:center;color:hsl(var(--muted-foreground));padding:3rem}.calendar-container{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;margin-bottom:1rem;padding:2rem;box-shadow:0 2px 8px #0000000d}.scroll-indicator{text-align:center;margin-bottom:1rem;padding:1.5rem 0;animation:.5s ease-in fadeIn}.scroll-arrow{color:hsl(var(--accent-cyan));margin-bottom:.5rem;font-size:2rem;animation:2s infinite bounce}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.scroll-indicator p{color:hsl(var(--accent-cyan));margin:0;font-size:.95rem;font-weight:600}.rbc-calendar{font-family:var(--font-body)}.rbc-toolbar{font-family:var(--font-body);margin-bottom:1rem}.rbc-toolbar button{font-family:var(--font-body)}.rbc-header{font-family:var(--font-body);padding:.5rem;font-weight:600}.rbc-allday-cell{display:none}.rbc-time-view .rbc-header{border-bottom:none}.rbc-time-content{font-family:var(--font-body)}.rbc-label{font-size:.875rem}.rbc-event.available-slot{cursor:pointer;border-radius:4px;margin:1px;font-size:.75rem;background-color:hsl(var(--accent-green))!important;border:2px solid hsl(var(--card))!important}.rbc-event.available-slot:hover{background-color:#206f41!important}.rbc-event-label{display:none}.rbc-event-content{font-size:.75rem;font-weight:500}.rbc-today{background-color:hsla(var(--accent-cyan),.1)}.rbc-time-slot{border-top:1px solid hsl(var(--border));min-height:40px}.rbc-day-slot .rbc-events-container{margin-right:2px}.rbc-timeslot-group{min-height:50px}.booking-form-container{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;padding:2rem;box-shadow:0 2px 8px #0000000d}.booking-form-container h3{color:hsl(var(--foreground));margin-bottom:1rem}.selected-time{border-left:4px solid hsl(var(--accent-cyan));margin-bottom:1.5rem;padding-left:1rem}.selected-time strong{color:hsl(var(--foreground))}.selected-time .duration{color:hsl(var(--muted-foreground));font-size:.875rem}.booking-form{flex-direction:column;gap:1.5rem;display:flex}.form-group select,.form-group textarea{border:2px solid hsl(var(--border));border-radius:.375rem;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .3s}.form-group select:focus,.form-group textarea:focus{border-color:hsl(var(--accent-cyan));outline:none}.form-actions{justify-content:flex-end;gap:1rem;display:flex}.btn-cancel,.btn-confirm{cursor:pointer;border:none;border-radius:.5rem;padding:.875rem 2rem;font-weight:600;transition:all .3s}.btn-cancel{background-color:hsl(var(--secondary));color:hsl(var(--foreground))}.btn-cancel:hover{background-color:hsl(var(--border))}.btn-confirm{background-color:hsl(var(--accent-green));color:#fff}.btn-confirm:hover{background-color:#196639}.no-availability{background:hsl(var(--card));text-align:center;border:1px solid hsl(var(--border));border-radius:.75rem;padding:3rem;box-shadow:0 2px 8px #0000000d}.no-availability p{color:hsl(var(--muted-foreground));font-size:1.125rem}.service-description{background-color:hsla(var(--accent-cyan),.05);border-left:3px solid hsl(var(--accent-cyan));border-radius:.375rem;padding:.75rem 1rem}.service-description p{color:hsl(var(--muted-foreground));margin:0;font-size:.875rem;line-height:1.5}.time-allocation-info{background:linear-gradient(135deg,hsla(var(--accent-green),.1)0%,hsla(var(--accent-cyan),.08)100%);border-left:4px solid hsl(var(--accent-green));border-radius:.5rem;padding:1rem}.time-allocation-info h4{color:hsl(var(--foreground));margin:0 0 .75rem;font-size:.95rem;font-weight:600}.time-breakdown{flex-direction:column;gap:.5rem;margin-bottom:.75rem;display:flex}.time-item{background:#ffffffb3;border-radius:.375rem;justify-content:space-between;align-items:center;padding:.5rem;display:flex}.time-item.available{background:hsla(var(--accent-green),.15);font-weight:600}.time-item-label{color:hsl(var(--foreground));font-size:.875rem}.time-item-value{color:hsl(var(--accent-green));font-size:.9rem;font-weight:600}.time-allocation-note{color:hsl(var(--muted-foreground));margin:0;font-size:.8rem;font-style:italic}.document-reminder{border-left:4px solid hsl(var(--accent-cyan));margin-bottom:.5rem;padding-left:1rem}.document-reminder h4{color:hsl(var(--foreground));margin:0 0 .75rem;font-size:1rem;font-weight:600}.document-reminder p{color:hsl(var(--muted-foreground));margin:0 0 .75rem;font-size:.875rem;line-height:1.6}.document-reminder p:last-child{margin-bottom:0}.document-examples{color:hsl(var(--muted-foreground));opacity:.85;font-style:italic;font-size:.8rem!important}.field-help-text{color:hsl(var(--muted-foreground));margin:.5rem 0 0;font-size:.8rem;font-style:italic}.case-selection{background-color:hsla(var(--accent-green),.05);border-left:4px solid hsl(var(--accent-green));border-radius:.5rem;padding:1rem}.case-selection label{color:hsl(var(--foreground))!important}.case-selection select{background-color:#fff}.payment-summary{background-color:hsl(var(--secondary));border-radius:.5rem;margin-top:.5rem;padding:1.25rem}.total-amount{justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:1.125rem;display:flex}.total-amount span{color:hsl(var(--foreground))}.total-amount strong{color:hsl(var(--accent-green));font-size:1.5rem}.payment-note{color:hsl(var(--muted-foreground));text-align:center;margin:0;font-size:.8rem}.form-group select:disabled,.form-group textarea:disabled{background-color:hsl(var(--secondary));cursor:not-allowed;opacity:.7}.btn-cancel:disabled,.btn-confirm:disabled{cursor:not-allowed;opacity:.6}.btn-confirm:disabled:hover{background-color:hsl(var(--accent-green))}@media (max-width:768px){.booking-calendar{padding:1rem}.calendar-container{padding:1rem;overflow-x:auto}.rbc-toolbar{flex-direction:column;align-items:stretch;gap:.75rem}.rbc-toolbar-label{text-align:center;order:-1;font-weight:600}.rbc-btn-group{justify-content:center;display:flex}.rbc-btn-group button{padding:.5rem .75rem;font-size:.875rem}.booking-form-container{padding:1.25rem}.form-actions{flex-direction:column}.btn-cancel,.btn-confirm{text-align:center;width:100%}.payment-summary{padding:1rem}.total-amount{text-align:center;flex-direction:column;gap:.25rem}}@media (max-width:480px){.booking-calendar,.calendar-container{padding:.5rem}.rbc-time-view{min-width:300px}.rbc-header{padding:.25rem;font-size:.75rem}.rbc-label{font-size:.7rem}.rbc-time-slot{min-height:30px}.rbc-timeslot-group{min-height:40px}.rbc-event.available-slot{font-size:.65rem}.rbc-event-content{display:none}.selected-time{padding:.75rem}.document-reminder{padding:1rem}.document-reminder h4{font-size:.9rem}.document-reminder p{font-size:.8rem}}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.cancellation-modal{background:#fff;border-radius:16px;width:100%;max-width:500px;max-height:90vh;animation:.3s ease-out modalSlideIn;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-close{color:#666;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.5rem;transition:background .2s,color .2s;display:flex;position:absolute;top:1rem;right:1rem}.modal-close:hover{color:#333;background:#f0f0f0}.modal-header{text-align:center;border-bottom:1px solid #eee;padding:2rem 2rem 1rem}.modal-icon{margin-bottom:.5rem;font-size:3rem}.modal-content{padding:1.5rem 2rem}.appointment-summary{background:#f8f9fa;border-radius:12px;margin-bottom:1.5rem;padding:1rem}.summary-row{border-bottom:1px solid #e9ecef;justify-content:space-between;padding:.5rem 0;display:flex}.summary-row:last-child{border-bottom:none}.summary-label{color:#666;font-size:.9rem}.summary-value{color:#333;text-align:right;font-weight:500}.policy-section{margin-bottom:1.5rem}.policy-section h3{color:#333;margin:0 0 .75rem;font-size:1rem}.policy-section.warning{background:#fff3cd;border:1px solid #ffc107;border-radius:12px;padding:1.25rem}.policy-section.warning h3{color:#856404}.policy-section.warning p{color:#856404;margin:.5rem 0;line-height:1.5}.policy-list{margin:0;padding:0;list-style:none}.policy-list li{color:#555;align-items:flex-start;gap:.75rem;padding:.5rem 0;line-height:1.4;display:flex}.policy-icon{text-align:center;flex-shrink:0;width:20px}.time-notice{border-radius:8px;align-items:center;gap:.75rem;margin-bottom:1rem;padding:1rem;display:flex}.time-notice.success{color:#155724;background:#d4edda;border:1px solid #c3e6cb}.notice-icon{font-size:1.25rem}.contact-section{background:#e7f3ff;border:1px solid #b8daff;border-radius:12px;margin-top:1rem;padding:1.25rem}.contact-section h3{color:#004085;margin:0 0 .5rem;font-size:1rem}.contact-section p{color:#004085;margin:.5rem 0;line-height:1.4}.contact-options{flex-direction:column;gap:.5rem;margin:1rem 0;display:flex}.contact-link{color:#0056b3;align-items:center;gap:.5rem;padding:.5rem 0;font-weight:500;text-decoration:none;display:inline-flex}.contact-link:hover{text-decoration:underline}.contact-note{color:#666;font-size:.85rem}.cancellation-modal .error-message{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;align-items:center;gap:.5rem;margin-top:1rem;padding:1rem;display:flex}.error-icon{font-size:1.25rem}.modal-actions{background:#f8f9fa;border-top:1px solid #eee;border-radius:0 0 16px 16px;gap:1rem;padding:1.5rem 2rem;display:flex}.modal-actions button{cursor:pointer;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.875rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s;display:flex}.btn-secondary:hover:not(:disabled){background:#f0f0f0;border-color:#ccc}.btn-danger{color:#fff;background:#dc3545;border:none}.btn-danger:hover:not(:disabled){background:#c82333}.btn-danger:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}@media (max-width:480px){.cancellation-modal{border-radius:16px 16px 0 0;max-height:100vh;margin-top:auto}.modal-overlay{align-items:flex-end;padding:0}.modal-header{padding:1.5rem 1.5rem 1rem}.modal-content{padding:1rem 1.5rem}.modal-actions{flex-direction:column-reverse;padding:1rem 1.5rem 1.5rem}.modal-actions button{width:100%}.summary-row{flex-direction:column;gap:.25rem}.summary-value{text-align:left}}.appointments-list{max-width:1200px;margin:0 auto;padding:2rem 2rem 3rem}.appointments-list h2{color:hsl(var(--foreground));margin-bottom:2rem}.success-message{color:#155724;background:#d4edda;border:1px solid #c3e6cb;border-radius:8px;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem;animation:.3s ease-out fadeIn;display:flex}.success-icon{flex-shrink:0;font-size:1.25rem}.appointments-loading{text-align:center;color:hsl(var(--muted-foreground));padding:3rem}.no-appointments{background:hsl(var(--card));text-align:center;border:1px solid hsl(var(--border));border-radius:.75rem;padding:3rem;box-shadow:0 2px 8px #0000000d}.no-appointments p{color:hsl(var(--muted-foreground));margin:.5rem 0;font-size:1.125rem}.appointments-section{margin-bottom:3rem}.appointments-section h3{color:hsl(var(--foreground));margin-bottom:1.5rem;font-size:1.5rem}.appointments-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;display:grid}.appointment-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-left:4px solid hsl(var(--accent-cyan));border-radius:.75rem;padding:1.5rem;transition:box-shadow .3s;box-shadow:0 2px 8px #0000000d}.appointment-card:hover{box-shadow:0 4px 16px hsla(var(--accent-cyan),.15)}.appointment-card.past{opacity:.8;border-left-color:hsl(var(--muted-foreground))}.appointment-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.appointment-status{border-radius:1rem;padding:.25rem .75rem;font-size:.875rem;font-weight:600}.status-pending{background-color:hsla(var(--accent-gold),.2);color:hsl(var(--accent-gold))}.status-confirmed{background-color:hsla(var(--accent-green),.2);color:hsl(var(--accent-green))}.status-cancelled{background-color:hsla(var(--destructive),.15);color:hsl(var(--destructive))}.status-completed{background-color:hsla(var(--accent-cyan),.2);color:hsl(var(--accent-cyan))}.appointment-body{flex-direction:column;gap:1rem;display:flex}.appointment-service{color:hsl(var(--foreground));font-size:1.125rem;font-weight:600}.appointment-time{color:hsl(var(--foreground));line-height:1.6}.appointment-notes{background-color:hsl(var(--secondary));color:hsl(var(--muted-foreground));border-radius:.5rem;padding:1rem;font-size:.875rem}.appointment-notes strong{color:hsl(var(--foreground))}.appointment-actions{border-top:1px solid hsl(var(--border));margin-top:1rem;padding-top:1rem}.btn-cancel-appointment{background-color:hsl(var(--destructive));color:#fff;cursor:pointer;border:none;border-radius:.375rem;width:100%;padding:.625rem 1.25rem;font-weight:600;transition:all .3s}.btn-cancel-appointment:hover{background-color:#eb1414}@media (max-width:768px){.appointments-grid{grid-template-columns:1fr}}.document-manager{max-width:1000px;margin:0 auto}.document-manager h2{color:hsl(var(--foreground));margin-bottom:.5rem;font-size:2rem}.document-description{color:hsl(var(--muted-foreground));margin-bottom:2rem}.document-loading{text-align:center;color:hsl(var(--muted-foreground));padding:3rem}.setup-required{background:hsla(var(--accent-gold),.15);border:2px solid hsl(var(--accent-gold));border-radius:.75rem;margin:2rem 0;padding:2rem}.setup-required h3{color:hsl(var(--accent-gold));margin-top:0}.setup-required ol{text-align:left;margin:1.5rem 0;padding-left:2rem}.setup-required li{color:hsl(var(--foreground));margin:.75rem 0}.setup-required code{background:hsla(var(--accent-gold),.3);color:hsl(var(--foreground));border-radius:.25rem;padding:.25rem .5rem;font-family:monospace}.setup-required .error-details{color:hsl(var(--destructive));background:#fff;border-radius:.5rem;margin-top:1.5rem;padding:1rem;font-family:monospace;font-size:.875rem}.upload-section{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;margin-bottom:2rem;padding:2rem;box-shadow:0 1px 3px #0000000d}.upload-section h3{color:hsl(var(--foreground));margin-top:0;margin-bottom:1.5rem}.upload-area{border:2px dashed hsl(var(--border));text-align:center;background:hsl(var(--secondary));border-radius:.75rem;padding:3rem 2rem;transition:all .3s;position:relative}.upload-area:hover{border-color:hsl(var(--accent-cyan));background:hsla(var(--accent-cyan),.1)}.file-upload-label{cursor:pointer;display:block}.file-upload-label:hover .upload-icon{transform:scale(1.1)}.upload-icon{margin-bottom:1rem;font-size:4rem;transition:transform .3s}.upload-text{color:hsl(var(--foreground));margin-bottom:.5rem;font-size:1.125rem;font-weight:500}.upload-hint{color:hsl(var(--muted-foreground));margin:0;font-size:.875rem}.file-input{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.upload-progress{margin-top:1.5rem}.progress-bar{background:hsl(var(--secondary));border-radius:9999px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,hsl(var(--accent-cyan))0%,hsl(var(--accent-green))100%);border-radius:9999px;height:100%;transition:width .3s}.progress-text{text-align:center;color:hsl(var(--accent-cyan));margin-top:.5rem;font-size:.875rem;font-weight:500}.upload-button-container{text-align:center;margin-top:1rem}.documents-list{margin-top:2rem}.documents-list h3{color:hsl(var(--foreground));margin-bottom:1.5rem}.no-documents{text-align:center;background:hsl(var(--secondary));color:hsl(var(--muted-foreground));border-radius:.75rem;padding:3rem}.documents-grid{gap:1rem;display:grid}.document-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;align-items:center;gap:1.5rem;padding:1.5rem;transition:all .3s;display:flex;box-shadow:0 1px 3px #0000000d}.document-card:hover{box-shadow:0 4px 12px hsla(var(--accent-cyan),.15);border-color:hsl(var(--accent-cyan))}.document-icon{flex-shrink:0;font-size:2.5rem}.document-info{flex:1;min-width:0}.document-name{color:hsl(var(--foreground));word-break:break-word;margin:0 0 .5rem;font-size:1.125rem}.document-meta{color:hsl(var(--muted-foreground));margin:0;font-size:.875rem}.document-source{color:hsl(var(--accent-green));margin:.375rem 0 0;font-size:.8rem;font-weight:500}.document-description-text{color:hsl(var(--muted-foreground));margin:.375rem 0 0;font-size:.8rem;font-style:italic}.document-actions{flex-shrink:0;gap:.75rem;display:flex}.btn-view,.btn-delete{cursor:pointer;border:none;border-radius:.375rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .3s}.btn-view{background-color:hsl(var(--accent-cyan));color:#fff}.btn-view:hover{background-color:#066b93}.btn-delete{background-color:hsl(var(--destructive));color:#fff}.error-message{background-color:hsla(var(--destructive),.1);color:hsl(var(--destructive));border-radius:.5rem;margin-bottom:1.5rem;padding:1rem}@media (max-width:768px){.document-card{flex-direction:column;align-items:flex-start}.document-actions{justify-content:flex-end;width:100%}}.purchase-history{max-width:800px;margin:0 auto}.purchase-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.purchase-header h2{color:var(--text-color,#333);margin:0}.total-spent{background:var(--card-background,#f8f9fa);border:1px solid var(--border-color,#e0e0e0);border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.25rem;display:flex}.total-label{color:var(--text-muted,#666);font-size:.9rem}.total-amount{color:var(--primary-color,#2c5282);font-size:1.25rem;font-weight:600}.loading-state,.error-state{text-align:center;color:var(--text-muted,#666);padding:3rem}.error-state{color:var(--error-color,#c53030)}.empty-state{text-align:center;background:var(--card-background,#f8f9fa);border:2px dashed var(--border-color,#e0e0e0);border-radius:12px;padding:4rem 2rem}.empty-icon{margin-bottom:1rem;font-size:3rem}.empty-state h3{color:var(--text-color,#333);margin:0 0 .5rem}.empty-state p{color:var(--text-muted,#666);margin:0}.purchase-list{flex-direction:column;gap:1rem;display:flex}.purchase-card{background:var(--card-background,#fff);border:1px solid var(--border-color,#e0e0e0);border-radius:12px;justify-content:space-between;align-items:flex-start;padding:1.25rem;transition:box-shadow .2s;display:flex}.purchase-card:hover{box-shadow:0 4px 12px #00000014}.purchase-main{flex:1}.purchase-service{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.purchase-service h3{color:var(--text-color,#333);margin:0;font-size:1.1rem}.status-paid{color:#276749;background:#c6f6d5}.status-refunded{color:#c53030;background:#fed7d7}.status-pending{color:#c05621;background:#feebc8}.purchase-date,.purchase-time{gap:.5rem;margin-bottom:.25rem;font-size:.9rem;display:flex}.purchase-date .label,.purchase-time .label{color:var(--text-muted,#666)}.purchase-date .value,.purchase-time .value{color:var(--text-color,#333)}.purchase-amount{flex-direction:column;align-items:flex-end;gap:.25rem;display:flex}.purchase-amount .amount{color:var(--primary-color,#2c5282);font-size:1.5rem;font-weight:600}.purchase-amount .purchased-on{color:var(--text-muted,#666);font-size:.8rem}@media (max-width:600px){.purchase-card{flex-direction:column;gap:1rem}.purchase-amount{border-top:1px solid var(--border-color,#e0e0e0);align-items:flex-start;width:100%;padding-top:1rem}.purchase-header{flex-direction:column;align-items:flex-start}}.conversation-view{flex-direction:column;height:100%;min-height:500px;display:flex}.conversation-header{border-bottom:1px solid hsl(var(--border));align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;display:flex}.conversation-title{color:hsl(var(--foreground));flex:1;font-size:1.125rem;font-weight:600}.conversation-actions{gap:.5rem;display:flex}.status-select{border:1px solid hsl(var(--border));background-color:#fff;border-radius:.375rem;padding:.375rem .75rem;font-size:.875rem}.conversation-info{background-color:hsl(var(--secondary));color:hsl(var(--muted-foreground));border-radius:.375rem;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.conversation-ref{font-family:monospace;font-size:.75rem}.conversation-loading{text-align:center;color:hsl(var(--muted-foreground));padding:3rem}.messages-container{flex-direction:column;flex:1;gap:1rem;padding:1rem 0;display:flex;overflow-y:auto}.no-messages{text-align:center;color:hsl(var(--muted-foreground));padding:3rem}.message{border-radius:.75rem;max-width:80%;padding:.75rem 1rem}.message-own{background-color:hsl(var(--accent-cyan));color:#fff;align-self:flex-end}.message-other{background-color:hsl(var(--secondary));color:hsl(var(--foreground));align-self:flex-start}.message-header{justify-content:space-between;gap:1rem;margin-bottom:.375rem;font-size:.75rem;display:flex}.message-own .message-header{opacity:.9}.message-other .message-header{color:hsl(var(--muted-foreground))}.message-sender{font-weight:600}.message-time{white-space:nowrap}.message-content{white-space:pre-wrap;word-break:break-word;line-height:1.5}.message-email-status{opacity:.8;margin-top:.5rem;font-size:.75rem}.message-input-form{border-top:1px solid hsl(var(--border));align-items:flex-end;gap:.75rem;padding-top:1rem;display:flex}.message-input-form textarea{border:2px solid hsl(var(--border));resize:none;border-radius:.5rem;flex:1;padding:.75rem;font-family:inherit;font-size:1rem}.message-input-form textarea:focus{border-color:hsl(var(--accent-cyan));outline:none}.btn-send{background-color:hsl(var(--accent-green));color:#fff;cursor:pointer;border:none;border-radius:.5rem;height:fit-content;padding:.75rem 1.5rem;font-weight:600;transition:background-color .3s}.btn-send:hover{background-color:#196639}.btn-send:disabled{background-color:hsl(var(--muted));cursor:not-allowed}@media (max-width:640px){.message{max-width:90%}.message-input-form{flex-direction:column}.message-input-form textarea,.btn-send{width:100%}}.messages-view{flex-direction:column;height:100%;display:flex}.messages-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.messages-header h2{color:hsl(var(--foreground));margin:0}.btn-new-message{background-color:hsl(var(--accent-green));color:#fff;cursor:pointer;border:none;border-radius:.375rem;padding:.5rem 1rem;font-weight:600;transition:background-color .3s}.btn-new-message:hover{background-color:#196639}.messages-empty p{margin-bottom:1rem}.messages-empty .btn-primary{background-color:hsl(var(--accent-green));color:#fff;cursor:pointer;border:none;border-radius:.375rem;margin-top:1rem;padding:.75rem 1.5rem;font-weight:600}.conversations-list{flex-direction:column;gap:.5rem;display:flex}.conversation-item{background-color:hsl(var(--card));border:1px solid hsl(var(--border));cursor:pointer;border-radius:.5rem;justify-content:space-between;align-items:center;padding:1rem;transition:border-color .2s,background-color .2s;display:flex}.conversation-item:hover{border-color:hsl(var(--accent-cyan));background-color:hsl(var(--secondary))}.conversation-subject{color:hsl(var(--foreground));white-space:nowrap;text-overflow:ellipsis;margin-bottom:.25rem;font-weight:600;overflow:hidden}.conversation-meta{gap:.75rem;font-size:.875rem;display:flex}.conversation-status{text-transform:capitalize;border-radius:1rem;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.conversation-date{color:hsl(var(--muted-foreground));white-space:nowrap;margin-left:1rem;font-size:.875rem}.new-message-form{height:100%}.form-header{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.btn-back{color:hsl(var(--accent-cyan));cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem}.btn-back:hover{text-decoration:underline}.form-header h2{color:hsl(var(--foreground));margin:0}.new-message-form .form-group{margin-bottom:1.25rem}.new-message-form label{color:hsl(var(--foreground));margin-bottom:.5rem;font-weight:600;display:block}.new-message-form input,.new-message-form select,.new-message-form textarea{border:2px solid hsl(var(--border));box-sizing:border-box;background-color:#fff;border-radius:.375rem;width:100%;padding:.75rem;font-family:inherit;font-size:1rem}.new-message-form input:focus,.new-message-form select:focus,.new-message-form textarea:focus{border-color:hsl(var(--accent-cyan));outline:none}.new-message-form textarea{resize:vertical}.new-message-form .btn-submit{background-color:hsl(var(--accent-green));color:#fff;cursor:pointer;border:none;border-radius:.375rem;padding:.75rem 1.5rem;font-weight:600;transition:background-color .3s}.new-message-form .btn-submit:hover{background-color:#196639}.new-message-form .btn-submit:disabled{background-color:hsl(var(--muted));cursor:not-allowed}.new-message-form .error-message{color:#821717;background-color:#fbe9e9;border:1px solid #e87d7d;border-radius:.5rem;margin-bottom:1rem;padding:1rem}.cases-view{max-width:1200px;margin:0 auto;padding:2rem}.loading{text-align:center;color:#666;padding:3rem;font-size:1.1rem}.no-cases{text-align:center;background:#f8f9fa;border-radius:8px;margin-top:2rem;padding:3rem}.no-cases h2{color:#2c3e50;margin-bottom:1rem}.no-cases p{color:#666;margin:.5rem 0;line-height:1.6}.cases-header,.case-header{margin-bottom:2rem}.cases-header h1,.case-header h1{color:#2c3e50;margin-bottom:.5rem}.cases-header p,.case-header p{color:#666;margin:.25rem 0}.case-title{align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.back-btn{color:#fff;cursor:pointer;background:#6c757d;border:none;border-radius:4px;margin-bottom:1rem;padding:.5rem 1rem;font-size:.9rem;transition:background .2s}.back-btn:hover{background:#5a6268}.closed-info{color:#dc3545;font-style:italic}.time-balance{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:8px;margin-top:1.5rem;padding:1.5rem}.time-balance h3{color:#fff;margin:0 0 1rem;font-size:1.1rem}.time-stats{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.time-stat{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:6px;padding:1rem}.time-stat .time-value{margin-bottom:.25rem;font-size:1.5rem;font-weight:700;display:block}.time-stat .time-label{opacity:.9;font-size:.85rem;display:block}.time-stat.available .time-value{color:#4ade80}.time-stat.used .time-value{color:#fb923c}.time-stat.total .time-value{color:#60a5fa}.time-warning{background:#fb923c33;border-left:4px solid #fb923c;border-radius:6px;margin:1rem 0 0;padding:.75rem;font-size:.9rem}.cases-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.case-card{cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;transition:all .2s}.case-card:hover{border-color:#007bff;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.case-card-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.case-card-header h3{color:#2c3e50;margin:0;font-size:1.1rem}.case-card-details{margin-bottom:1rem}.case-card-details p{color:#666;margin:.5rem 0;font-size:.9rem}.case-sections{flex-direction:column;gap:2rem;display:flex}.case-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem}.case-section h2{color:#2c3e50;border-bottom:2px solid #007bff;margin:0 0 1rem;padding-bottom:.5rem;font-size:1.3rem}.empty-message{color:#999;text-align:center;padding:1rem;font-style:italic}.items-list{flex-direction:column;gap:1rem;display:flex}.item-card{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;padding:1rem}.item-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.item-header h3{color:#2c3e50;margin:0;font-size:1rem}.item-card p{color:#666;margin:.5rem 0;font-size:.9rem}.item-card p strong{color:#2c3e50}.status-badge.confirmed,.status-badge.open{color:#155724;background:#d4edda}.status-badge.pending{color:#856404;background:#fff3cd}.status-badge.cancelled,.status-badge.closed{color:#721c24;background:#f8d7da}.status-badge.completed{color:#0c5460;background:#d1ecf1}.note-type{color:#06c;text-transform:uppercase;background:#e7f3ff;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.note-content{white-space:pre-wrap;line-height:1.6;margin:.75rem 0!important}.note-meta{color:#999!important;font-size:.85rem!important}.admin-upload{color:#007bff!important;font-size:.85rem!important}.download-link{color:#007bff;margin-top:.5rem;font-weight:500;text-decoration:none;display:inline-block}.download-link:hover{text-decoration:underline}.card-btn{color:#fff;cursor:pointer;background:#007bff;border:none;border-radius:4px;width:100%;margin-top:.5rem;padding:.5rem 1rem;font-size:.9rem;transition:background .2s}.card-btn:hover{background:#0056b3}@media (max-width:768px){.cases-view{padding:1rem}.cases-list{grid-template-columns:1fr}.case-title,.item-header{flex-direction:column;align-items:flex-start;gap:.5rem}.time-stats{grid-template-columns:1fr;gap:.75rem}.time-balance{padding:1rem}}.dashboard-page{background-color:hsl(var(--background));padding:2rem 2rem 3rem}.dashboard-container{max-width:1200px;margin:0 auto}.dashboard-header{margin-bottom:2rem}.dashboard-header h1{color:hsl(var(--foreground));margin-bottom:.5rem;font-size:2.5rem}.dashboard-header p{color:hsl(var(--muted-foreground));font-size:1.125rem}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.dashboard-card{background:hsl(var(--card));cursor:pointer;border:1px solid hsl(var(--border));border-radius:.75rem;padding:2rem;transition:transform .3s,box-shadow .3s;box-shadow:0 2px 8px #0000000d}.dashboard-card:hover{box-shadow:0 4px 16px hsla(var(--accent-cyan),.15);border-color:hsl(var(--accent-cyan))}.dashboard-card h2{color:hsl(var(--foreground));margin-bottom:.75rem;font-size:1.25rem}.dashboard-card p{color:hsl(var(--muted-foreground));margin-bottom:1.5rem}.card-btn{background-color:hsl(var(--accent-green));color:#fff;cursor:pointer;border:none;border-radius:.375rem;width:100%;padding:.625rem 1.5rem;font-weight:600;transition:all .3s}.card-btn:hover{background-color:#196639}.dashboard-card.cta-card{background:linear-gradient(135deg,hsl(var(--accent-green))0%,#288a51 100%);border:none;grid-column:1/-1}.dashboard-card.cta-card h2{color:#fff;font-size:1.5rem}.dashboard-card.cta-card p{color:#ffffffe6;font-size:1.1rem}.dashboard-card.cta-card:hover{box-shadow:0 8px 24px hsla(var(--accent-green),.4);border-color:#0000}.dashboard-card.cta-card .cta-btn{color:hsl(var(--accent-green));background-color:#fff;max-width:200px;padding:.875rem 2rem;font-size:1.1rem}.dashboard-card.cta-card .cta-btn:hover{background-color:#ffffffe6}.dashboard-info{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;padding:2rem;box-shadow:0 2px 8px #0000000d}.dashboard-info h3{color:hsl(var(--foreground));margin-bottom:1rem;font-size:1.5rem}.info-grid{gap:1rem;display:grid}.info-item{border-bottom:1px solid hsl(var(--border));padding:.75rem 0;display:flex}.info-item:last-child{border-bottom:none}.info-label{color:hsl(var(--muted-foreground));min-width:150px;font-weight:600}.info-value{color:hsl(var(--foreground))}.info-value.admin-badge{color:hsl(var(--accent-magenta));font-weight:600}.coming-soon{background:hsl(var(--card));text-align:center;color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border));border-radius:.75rem;padding:4rem 2rem;font-size:1.25rem;box-shadow:0 2px 8px #0000000d}.resources-page{min-height:100vh}.resources-hero{background:hsl(var(--background));color:hsl(var(--foreground));text-align:center;border-bottom:1px solid hsl(var(--border));padding:5rem 2rem 3rem}.resources-hero h1{font-size:2.5rem;font-family:var(--font-heading);margin-bottom:.5rem;font-weight:500}.resources-hero p{color:hsl(var(--muted-foreground));max-width:600px;margin:0 auto;font-size:1.2rem}.articles-section{max-width:1200px;margin:0 auto;padding:4rem 2rem}.articles-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;display:grid}.article-card{background:hsl(var(--card));border:1px solid hsl(var(--border));color:inherit;border-radius:.75rem;flex-direction:column;padding:1.5rem;text-decoration:none;transition:border-color .2s,box-shadow .2s;display:flex}.article-card:hover{border-color:hsl(var(--accent-cyan));box-shadow:0 8px 24px hsla(var(--accent-cyan),.15)}.article-category{background:hsl(var(--accent-magenta));color:#fff;border-radius:20px;align-self:flex-start;margin-bottom:1rem;padding:.25rem .75rem;font-size:.8rem;font-weight:600;display:inline-block}.article-title{color:hsl(var(--foreground));margin-bottom:.75rem;font-size:1.4rem;line-height:1.3}.article-description{color:hsl(var(--muted-foreground));flex-grow:1;margin-bottom:1rem;font-size:1rem;line-height:1.6}.article-meta{border-top:1px solid hsl(var(--border));justify-content:space-between;align-items:center;padding-top:1rem;display:flex}.read-time{color:hsl(var(--muted-foreground));font-size:.9rem}.read-more{color:hsl(var(--accent-magenta));font-size:.9rem;font-weight:600}.resources-cta{background:linear-gradient(135deg,hsl(var(--accent-green))0%,#227745 100%);color:#fff;text-align:center;border-radius:12px;margin-top:3rem;padding:3rem 2rem}.resources-cta h2{margin-bottom:1rem;font-size:1.8rem}.resources-cta p{opacity:.9;max-width:600px;margin:0 auto 1.5rem;font-size:1.1rem}.resources-cta .cta-button{color:hsl(var(--accent-green));background:#fff;border-radius:.5rem;padding:.75rem 2rem;font-weight:600;text-decoration:none;transition:background .2s,transform .2s;display:inline-block}.resources-cta .cta-button:hover{background:hsl(var(--background));transform:translateY(-2px)}@media (max-width:768px){.resources-hero h1{font-size:2rem}.articles-grid{grid-template-columns:1fr}.resources-cta{padding:2rem 1.5rem}}.article-page{max-width:800px;margin:0 auto;padding:2rem}.back-link{color:#de3163;margin-bottom:2rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-block}.back-link:hover{color:#c42a56}.article-container{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.article-header{border-bottom:1px solid #eee;margin-bottom:2rem;padding-bottom:1.5rem}.article-header .article-category{color:#fff;background:#de3163;border-radius:20px;margin-bottom:1rem;padding:.25rem .75rem;font-size:.8rem;font-weight:600;display:inline-block}.article-header h1{color:#1a1a2e;margin-bottom:.75rem;font-size:2.2rem;line-height:1.2}.article-read-time{color:#999;font-size:.9rem}.article-content{color:#333;font-size:1.1rem;line-height:1.8}.article-content .article-intro{color:#555;margin-bottom:2rem;font-size:1.2rem;line-height:1.7}.article-content h2{color:#1a1a2e;margin-top:2rem;margin-bottom:1rem;font-size:1.5rem}.article-content p{margin-bottom:1rem}.article-content ul{margin:1rem 0 1.5rem 1.5rem}.article-content ul li{margin-bottom:.5rem}.article-footer{border-top:1px solid #eee;margin-top:3rem;padding-top:2rem}.article-cta{color:#fff;text-align:center;background:linear-gradient(135deg,#1a1a2e 0%,#2d2d44 100%);border-radius:12px;padding:2rem}.article-cta h3{margin-bottom:.75rem;font-size:1.4rem}.article-cta p{opacity:.9;margin-bottom:1.5rem}.article-cta .cta-button{color:#fff;background:#de3163;border-radius:8px;padding:.75rem 2rem;font-weight:600;text-decoration:none;transition:background .2s;display:inline-block}.article-cta .cta-button:hover{background:#c42a56}.article-not-found{text-align:center;padding:4rem 2rem}.article-not-found h1{color:#1a1a2e;margin-bottom:1rem;font-size:2rem}.article-not-found p{color:#666;margin-bottom:2rem}@media (max-width:768px){.article-page{padding:1rem}.article-container{padding:1.5rem}.article-header h1{font-size:1.8rem}.article-content{font-size:1rem}.article-content .article-intro{font-size:1.1rem}}.book-session-page{min-height:calc(100vh - 200px)}.book-session-hero{background:hsl(var(--background));color:hsl(var(--foreground));text-align:center;border-bottom:1px solid hsl(var(--border));padding:5rem 2rem 3rem}.book-session-hero h1{font-size:2.5rem;font-family:var(--font-heading);margin-bottom:.5rem;font-weight:500}.book-session-hero p{color:hsl(var(--muted-foreground));font-size:1.125rem}.book-session-page .container{max-width:1200px;margin:0 auto;padding:0 1.5rem}@media (max-width:768px){.book-session-hero{padding:3rem 1rem 2rem}.book-session-hero h1{font-size:1.75rem}.book-session-hero p{font-size:1rem}.book-session-page .container{padding:0 .5rem}}.how-it-works-page{min-height:100vh}.how-hero{background:hsl(var(--background));color:hsl(var(--foreground));text-align:center;border-bottom:1px solid hsl(var(--border));padding:5rem 2rem 3rem}.how-hero h1{font-size:2.5rem;font-family:var(--font-heading);margin-bottom:.5rem;font-weight:500}.how-hero p{color:hsl(var(--muted-foreground));max-width:600px;margin:0 auto;font-size:1.2rem}.journey-section{background:linear-gradient(to bottom,hsl(var(--secondary))0%,hsl(var(--background))100%);padding:4rem 2rem}.journey-section h2{text-align:center;color:hsl(var(--foreground));margin-bottom:3rem;font-size:2rem}.journey-steps{max-width:800px;margin:0 auto;position:relative}.journey-steps:before{content:"";background:hsl(var(--border));width:2px;position:absolute;top:40px;bottom:40px;left:24px}.journey-step{align-items:flex-start;gap:1.5rem;margin-bottom:2rem;display:flex;position:relative}.step-number{background:hsl(var(--accent-green));color:#fff;z-index:1;border-radius:50%;justify-content:center;align-items:center;width:50px;min-width:50px;height:50px;font-size:1.25rem;font-weight:600;display:flex}.journey-step-content{flex-direction:column;flex:1;display:flex}@media (min-width:769px){.journey-step-content{flex-direction:row;gap:1.5rem}}.journey-step h3{color:hsl(var(--foreground));flex-shrink:0;min-width:200px;margin-bottom:.5rem;font-size:1.25rem}.journey-step p{color:hsl(var(--muted-foreground));flex:1;line-height:1.7}.feature-section{padding:4rem 2rem}.feature-section.alt-bg{background:hsl(var(--secondary))}.feature-section h2{text-align:center;color:hsl(var(--foreground));margin-bottom:1rem;font-size:2rem}.section-intro{text-align:center;color:hsl(var(--muted-foreground));max-width:700px;margin:0 auto 3rem;font-size:1.125rem;line-height:1.7}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto;display:grid}.feature-block{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;padding:2rem;transition:border-color .2s}.feature-block:hover{border-color:hsl(var(--accent-cyan))}.feature-block h3{color:hsl(var(--foreground));margin-bottom:.75rem;font-size:1.125rem}.feature-block p{color:hsl(var(--muted-foreground));font-size:.95rem;line-height:1.7}.faq-section{background:hsl(var(--background));padding:4rem 2rem}.faq-section h2{text-align:center;color:hsl(var(--foreground));margin-bottom:3rem;font-size:2rem}.faq-list{max-width:800px;margin:0 auto}.faq-item{border-bottom:1px solid hsl(var(--border));margin-bottom:1.5rem;padding-bottom:1.5rem}.faq-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.faq-item h3{color:hsl(var(--foreground));margin-bottom:.75rem;font-size:1.125rem}.faq-item p{color:hsl(var(--muted-foreground));line-height:1.7}.how-cta{text-align:center;background:linear-gradient(135deg,hsl(var(--accent-green))0%,#227745 100%);color:#fff;padding:4rem 2rem}.how-cta h2{margin-bottom:1rem;font-size:2rem}.how-cta p{opacity:.9;max-width:600px;margin:0 auto 2rem;font-size:1.125rem}.cta-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.how-cta .btn-primary{box-shadow:none;color:hsl(var(--accent-green))!important;background:#fff!important}.how-cta .btn-primary:hover{transform:translateY(-2px);background:hsl(var(--background))!important}.how-cta .btn-secondary{color:#fff;background:0 0;border-color:#fff}.how-cta .btn-secondary:hover{color:#fff;background:#ffffff1a;border-color:#fff}@media (max-width:768px){.how-hero h1{font-size:2rem}.journey-steps:before{display:none}.journey-step{flex-direction:column;align-items:flex-start}.step-number{width:40px;min-width:40px;height:40px;font-size:1rem}.journey-step-content{flex-direction:column}.journey-step h3{min-width:unset}.feature-grid{grid-template-columns:1fr}.feature-section,.journey-section,.faq-section{padding:3rem 1.5rem}}.availability-manager{max-width:1200px;margin:0 auto;padding:2rem}.availability-manager h2{color:hsl(var(--foreground));margin-bottom:.5rem}.availability-manager>p{color:hsl(var(--muted-foreground));margin-bottom:2rem}.availability-loading{text-align:center;color:hsl(var(--muted-foreground));padding:3rem}.error-message{color:hsl(var(--destructive));border-left:4px solid hsl(var(--destructive));margin-bottom:1.5rem;padding-left:1rem}.availability-content{grid-template-columns:1fr 1fr;gap:2rem;display:grid}@media (max-width:768px){.availability-content{grid-template-columns:1fr}}.add-slot-section,.slots-list-section{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;padding:2rem;box-shadow:0 2px 8px #0000000d}.add-slot-section h3,.slots-list-section h3{color:hsl(var(--foreground));margin-bottom:1.5rem;font-size:1.25rem}.add-slot-form{flex-direction:column;gap:1.5rem;display:flex}.form-group input[type=radio]{margin-right:.5rem}.form-group label:has(input[type=radio]){cursor:pointer;flex-direction:row;align-items:center;font-weight:400}.form-group select,.form-group input[type=time],.form-group input[type=date]{border:2px solid hsl(var(--border));border-radius:.375rem;padding:.75rem;font-size:1rem;transition:border-color .3s}.form-group select:focus,.form-group input:focus{border-color:hsl(var(--accent-cyan));outline:none}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.btn-submit{background-color:hsl(var(--accent-green));color:#fff;cursor:pointer;border:none;border-radius:.5rem;padding:.875rem 1.5rem;font-weight:600;transition:all .3s}.btn-submit:hover{background-color:#196639}.no-slots{color:hsl(var(--muted-foreground));text-align:center;padding:2rem;font-style:italic}.success-message{color:#248f50;border-left:4px solid #29a35c;margin-bottom:1.5rem;padding-left:1rem}.generate-section{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;padding:2rem;box-shadow:0 2px 8px #0000000d}.generate-section h3{color:hsl(var(--foreground));margin-bottom:.5rem;font-size:1.25rem}.generate-section p{color:hsl(var(--muted-foreground));margin-bottom:1.5rem}.generate-form{flex-direction:column;gap:1.25rem;margin-bottom:1.5rem;display:flex}.days-checkbox-group{flex-wrap:wrap;gap:.5rem;display:flex}.day-checkbox{background:hsl(var(--background));border:2px solid hsl(var(--border));cursor:pointer;border-radius:.5rem;align-items:center;gap:.35rem;padding:.5rem .75rem;font-weight:400;transition:all .2s;display:flex}.day-checkbox:hover{border-color:hsl(var(--accent-cyan))}.day-checkbox input[type=checkbox]{accent-color:hsl(var(--accent-cyan))}.day-checkbox:has(input:checked){background:hsla(var(--accent-cyan),.1);border-color:hsl(var(--accent-cyan))}.btn-generate{background-color:hsl(var(--accent-cyan));color:#fff;cursor:pointer;border:none;border-radius:.5rem;padding:.875rem 1.5rem;font-weight:600;transition:all .3s}.btn-generate:hover:not(:disabled){background-color:#1b7898}.btn-generate:disabled{opacity:.6;cursor:not-allowed}.slots-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.slots-header h3{color:hsl(var(--foreground));margin:0;font-size:1.25rem}.btn-delete-all{background-color:hsl(var(--destructive));color:#fff;cursor:pointer;border:none;border-radius:.375rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;transition:all .3s}.btn-delete-all:hover:not(:disabled){background-color:#eb1414}.btn-delete-all:disabled{opacity:.6;cursor:not-allowed}.slots-by-date{flex-direction:column;gap:1.5rem;display:flex}.date-header{border-bottom:1px solid hsl(var(--border));justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.date-header h4{color:hsl(var(--foreground));margin:0;font-size:1rem}.btn-delete-day{border:1px solid hsl(var(--destructive));color:hsl(var(--destructive));cursor:pointer;background:0 0;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;transition:all .2s}.btn-delete-day:hover:not(:disabled){background-color:hsl(var(--destructive));color:#fff}.btn-delete-day:disabled{opacity:.5;cursor:not-allowed}.slots-grid{flex-wrap:wrap;gap:.5rem;display:flex}.slot-chip{background:hsl(var(--background));border:1px solid hsl(var(--border));color:hsl(var(--foreground));border-radius:2rem;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;display:inline-flex}.btn-delete-small{color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border:none;padding:0;font-size:1.25rem;line-height:1;transition:color .2s}.btn-delete-small:hover{color:hsl(var(--destructive))}.more-dates{color:hsl(var(--muted-foreground));text-align:center;padding:1rem;font-style:italic}.slots-list{flex-direction:column;gap:1rem;display:flex}.slot-card{border:2px solid hsl(var(--border));border-radius:.5rem;justify-content:space-between;align-items:center;padding:1rem;transition:border-color .3s;display:flex}.slot-card:hover{border-color:hsl(var(--accent-cyan))}.slot-info{flex:1}.slot-day{color:hsl(var(--foreground));margin-bottom:.25rem;font-weight:600}.slot-time{color:hsl(var(--muted-foreground));font-size:.875rem}.btn-delete{background-color:hsl(var(--destructive));color:#fff;cursor:pointer;border:none;border-radius:.375rem;padding:.5rem 1rem;font-weight:600;transition:all .3s}.btn-delete:hover{background-color:#eb1414}.admin-messages{flex-direction:column;height:100%;display:flex}.admin-messages .messages-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.admin-messages .messages-header h2{color:hsl(var(--foreground));align-items:center;gap:.75rem;margin:0;display:flex}.unread-badge{color:#fff;text-align:center;background-color:#d92626;border-radius:1rem;min-width:1.5rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.filter-tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.filter-tab{border:1px solid hsl(var(--border));cursor:pointer;color:hsl(var(--foreground));background-color:#0000;border-radius:.375rem;padding:.5rem 1rem;font-size:.875rem;transition:all .2s}.filter-tab:hover{background-color:hsl(var(--secondary))}.filter-tab.active{background-color:hsl(var(--accent-cyan));color:#fff;border-color:hsl(var(--accent-cyan))}.messages-loading,.messages-empty{text-align:center;color:hsl(var(--muted-foreground));padding:3rem 1rem}.btn-link{color:hsl(var(--accent-cyan));cursor:pointer;background:0 0;border:none;font-size:1rem;text-decoration:underline}.admin-messages .conversations-list{flex-direction:column;gap:.75rem;display:flex}.admin-messages .conversation-item{background-color:hsl(var(--card));border:1px solid hsl(var(--border));cursor:pointer;border-radius:.5rem;justify-content:space-between;align-items:flex-start;padding:1rem;transition:border-color .2s,background-color .2s;display:flex}.admin-messages .conversation-item:hover{border-color:hsl(var(--accent-cyan));background-color:hsl(var(--secondary))}.conversation-main{flex:1;min-width:0}.conversation-top-row{align-items:center;gap:.75rem;margin-bottom:.375rem;display:flex}.customer-tag{background-color:hsl(var(--accent-cyan));color:#fff;border-radius:.25rem;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.guest-tag{background-color:hsl(var(--muted));color:hsl(var(--foreground));border-radius:.25rem;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.conversation-email{color:hsl(var(--muted-foreground));font-size:.875rem}.admin-messages .conversation-subject{color:hsl(var(--foreground));white-space:nowrap;text-overflow:ellipsis;margin-bottom:.375rem;font-weight:600;overflow:hidden}.admin-messages .conversation-meta{flex-wrap:wrap;gap:.75rem;font-size:.8rem;display:flex}.conversation-category{color:hsl(var(--muted-foreground));text-transform:capitalize}.conversation-ref{color:hsl(var(--muted-foreground));font-family:monospace;font-size:.75rem}.admin-messages .conversation-status{text-transform:capitalize;border-radius:1rem;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.status-open{color:#1f7a45;background-color:#d9f2e3}.status-closed{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground))}.admin-messages .conversation-date{color:hsl(var(--muted-foreground));white-space:nowrap;margin-left:1rem;font-size:.8rem}@media (max-width:640px){.filter-tabs{gap:.25rem}.filter-tab{padding:.375rem .75rem;font-size:.8rem}.admin-messages .conversation-item{flex-direction:column;gap:.5rem}.admin-messages .conversation-date{margin-left:0}}.admin-page{background-color:hsl(var(--background));min-height:calc(100vh - 200px);padding:2rem}.admin-container{max-width:1400px;margin:0 auto}.back-button{background-color:hsl(var(--secondary));color:hsl(var(--foreground));cursor:pointer;border:none;border-radius:.375rem;margin-bottom:1.5rem;padding:.625rem 1.25rem;font-weight:600;transition:background-color .3s}.back-button:hover{background-color:hsl(var(--border))}.admin-header{margin-bottom:2rem}.admin-header h1{color:hsl(var(--foreground));font-size:2.5rem;font-family:var(--font-heading);margin-bottom:.5rem;font-weight:500}.admin-header p{color:hsl(var(--muted-foreground));font-size:1.125rem}.admin-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.admin-card{background:hsl(var(--card));cursor:pointer;border:1px solid hsl(var(--border));text-align:center;color:inherit;border-radius:.75rem;flex-direction:column;padding:2rem;text-decoration:none;display:flex;box-shadow:0 2px 8px #0000000d}a.admin-card:hover{text-decoration:none}.card-icon{margin-bottom:1rem;font-size:3rem}.admin-card h2{color:hsl(var(--foreground));margin-bottom:.75rem;font-size:1.5rem}.admin-card p{color:hsl(var(--muted-foreground));flex-grow:1;margin-bottom:1rem}.card-stat{color:hsl(var(--accent-cyan));margin-bottom:1rem;font-size:1.25rem;font-weight:600}.admin-card .card-btn{background-color:hsl(var(--accent-green));color:#fff;cursor:pointer;border:none;border-radius:.375rem;padding:.75rem 1.5rem;font-weight:600;transition:all .3s}.admin-card .card-btn:hover{background-color:#196639}.admin-stats{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;margin-bottom:2rem;padding:2rem}.admin-stats h3{color:hsl(var(--foreground));margin-bottom:1.5rem;font-size:1.25rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.5rem;display:grid}.stat-item{text-align:center;background:hsl(var(--background));border-radius:.5rem;padding:1rem}.stat-value{color:hsl(var(--accent-cyan));font-size:2.5rem;font-weight:700;display:block}.stat-label{color:hsl(var(--muted-foreground));margin-top:.25rem;font-size:.875rem;display:block}.upcoming-appointments{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;margin-bottom:2rem;padding:2rem}.upcoming-appointments h3{color:hsl(var(--foreground));margin-bottom:1.5rem;font-size:1.25rem}.no-upcoming{color:hsl(var(--muted-foreground));text-align:center;padding:2rem}.upcoming-list{flex-direction:column;gap:.75rem;display:flex}.upcoming-item{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:.5rem;align-items:center;gap:1.5rem;padding:1rem;display:flex}.upcoming-date{flex-direction:column;min-width:100px;display:flex}.upcoming-day{color:hsl(var(--foreground));font-weight:600}.upcoming-time{color:hsl(var(--accent-cyan));font-size:.875rem;font-weight:500}.upcoming-details{flex-direction:column;flex:1;gap:.25rem;display:flex}.upcoming-client{color:hsl(var(--foreground));font-weight:600}.upcoming-service{color:hsl(var(--muted-foreground));font-size:.875rem}.upcoming-item-clickable{cursor:pointer;color:inherit;text-decoration:none;transition:background-color .2s,border-color .2s}.upcoming-item-clickable:hover{background:hsl(var(--secondary));border-color:hsl(var(--accent-cyan));text-decoration:none}.view-client-arrow{color:hsl(var(--muted-foreground));margin-left:auto;font-size:1.25rem}.upcoming-item-clickable:hover .view-client-arrow{color:hsl(var(--accent-cyan))}.client-info-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;margin-bottom:2rem;padding:2rem}.client-info-card h3{color:hsl(var(--foreground));margin-bottom:1.5rem;font-size:1.25rem}.client-info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.client-info-item{background:hsl(var(--background));border-radius:.5rem;flex-direction:column;gap:.25rem;padding:1rem;display:flex}.client-info-item .info-label{color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.client-info-item .info-value{color:hsl(var(--foreground));font-size:1.125rem;font-weight:600}.client-appointments{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;padding:2rem}.client-appointments h3{color:hsl(var(--foreground));margin-bottom:1.5rem;font-size:1.25rem}.appointments-table-container{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;overflow-x:auto}.appointments-table{border-collapse:collapse;width:100%}.appointments-table th,.appointments-table td{text-align:left;border-bottom:1px solid hsl(var(--border));padding:1rem}.appointments-table th{background:hsl(var(--secondary));color:hsl(var(--foreground));white-space:nowrap;font-weight:600}.appointments-table tr:hover{background:hsla(var(--accent-cyan),.05)}.view-client-link{color:hsl(var(--accent-cyan));font-size:.875rem;font-weight:500;text-decoration:none}.view-client-link:hover{text-decoration:underline}.status-badge{text-transform:uppercase;border-radius:9999px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.status-confirmed{color:#248f50;background-color:#2eb86726}.status-pending{color:#aa8109;background-color:#f2b90d26}.status-cancelled{color:#ad1f1f;background-color:#d9262626}.status-completed{color:#1b6e98;background-color:#269dd926}.payment-badge{border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.payment-paid{color:#248f50;background-color:#2eb86726}.payment-pending{color:#aa8109;background-color:#f2b90d26}.payment-refunded{color:#6629a3;background-color:#8033cc26}.payment-failed{color:#ad1f1f;background-color:#d9262626}.services-list{flex-direction:column;gap:1rem;display:flex}.service-item{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;padding:1.5rem;transition:box-shadow .3s}.service-item:hover{box-shadow:0 4px 12px #0000001a}.service-item.inactive{opacity:.6;background:hsl(var(--secondary))}.service-display{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.service-info{flex:1}.service-info h3{color:hsl(var(--foreground));margin-bottom:.25rem;font-size:1.25rem}.service-type{color:hsl(var(--muted-foreground));margin-bottom:.5rem;font-family:monospace;font-size:.75rem}.service-description{color:hsl(var(--muted-foreground));margin-bottom:1rem;line-height:1.5}.service-meta{flex-wrap:wrap;gap:1rem;display:flex}.service-price{color:hsl(var(--accent-green));font-size:1.25rem;font-weight:700}.service-duration{color:hsl(var(--muted-foreground));background:hsl(var(--secondary));border-radius:.25rem;padding:.25rem .75rem;font-size:.875rem}.service-status{border-radius:.25rem;padding:.25rem .75rem;font-size:.875rem;font-weight:500}.service-status.active{color:#248f50;background-color:#2eb86726}.service-status.inactive{color:#ad1f1f;background-color:#d9262626}.btn-edit{background:hsl(var(--accent-cyan));color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:.375rem;padding:.5rem 1.25rem;font-weight:600;transition:all .3s}.btn-edit:hover{background:#0d8ca5}.service-edit-form{flex-direction:column;gap:1rem;display:flex}.form-row{flex-direction:column;gap:.5rem;display:flex}.form-row label{color:hsl(var(--foreground));font-size:.875rem;font-weight:600}.form-row input,.form-row textarea{border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground));border-radius:.375rem;padding:.75rem;font-size:1rem}.form-row input:focus,.form-row textarea:focus{border-color:hsl(var(--accent-cyan));box-shadow:0 0 0 3px hsla(var(--accent-cyan),.2);outline:none}.form-row .disabled-input{opacity:.5;cursor:not-allowed}.form-row-group{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.price-preview{color:hsl(var(--accent-green));margin-top:.25rem;font-size:.875rem;font-weight:600}.checkbox-row label{cursor:pointer;align-items:center;gap:.5rem;display:flex}.checkbox-row input[type=checkbox]{cursor:pointer;width:1.25rem;height:1.25rem}.form-actions{gap:1rem;margin-top:.5rem;display:flex}.btn-save:hover{background:#196639}.btn-cancel:hover{background:hsl(var(--border))}.save-message{border-radius:.5rem;margin-bottom:1.5rem;padding:1rem;font-weight:500}.save-message.success{color:#248f50;background-color:#2eb86726;border:1px solid #2eb867}.save-message.error{color:#ad1f1f;background-color:#d9262626;border:1px solid #d92626}.loading,.empty-state{text-align:center;color:hsl(var(--muted-foreground));padding:3rem;font-size:1.125rem}@media (max-width:768px){.admin-page{padding:1rem}.admin-header h1{font-size:2rem}.form-row-group{grid-template-columns:1fr}.service-display{flex-direction:column}.btn-edit{width:100%}.appointments-table{font-size:.875rem}.appointments-table th,.appointments-table td{padding:.75rem .5rem}}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background:hsl(var(--card));border-radius:.75rem;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0003}.modal-header{border-bottom:1px solid hsl(var(--border));justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-header h2{color:hsl(var(--foreground));margin:0;font-size:1.25rem}.modal-close{cursor:pointer;color:hsl(var(--muted-foreground));background:0 0;border:none;padding:.25rem;font-size:1.5rem;line-height:1}.modal-close:hover{color:hsl(var(--foreground))}.note-form{flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex}.form-error{color:#ad1f1f;background:#d9262626;border-radius:.375rem;padding:.75rem 1rem;font-size:.875rem}.form-group input[type=text],.form-group textarea{border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground));border-radius:.375rem;padding:.75rem;font-family:inherit;font-size:1rem}.form-group input[type=text]:focus,.form-group textarea:focus{border-color:hsl(var(--accent-cyan));box-shadow:0 0 0 3px hsla(var(--accent-cyan),.2);outline:none}.form-group textarea{resize:vertical;min-height:150px}.radio-group{flex-wrap:wrap;gap:1.5rem;display:flex}.radio-label{cursor:pointer;color:hsl(var(--foreground));align-items:center;gap:.5rem;font-weight:400;display:flex}.radio-label input[type=radio]{cursor:pointer;width:1rem;height:1rem}.visibility-options{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.visibility-option{border:2px solid hsl(var(--border));cursor:pointer;border-radius:.5rem;align-items:center;gap:.75rem;padding:1rem;font-weight:400;transition:all .2s;display:flex}.visibility-option:hover{border-color:hsl(var(--accent-cyan))}.visibility-option.selected{border-color:hsl(var(--accent-cyan));background:hsla(var(--accent-cyan),.1)}.visibility-option input[type=radio]{display:none}.visibility-icon{font-size:1.5rem}.visibility-text{flex-direction:column;gap:.125rem;display:flex}.visibility-text strong{color:hsl(var(--foreground));font-size:.875rem}.visibility-text small{color:hsl(var(--muted-foreground));font-size:.75rem}.modal-actions{justify-content:flex-end;gap:.75rem;padding-top:.5rem;display:flex}.btn-cancel{background:hsl(var(--secondary));color:hsl(var(--foreground));cursor:pointer;border:none;border-radius:.375rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s}.btn-cancel:hover:not(:disabled){background:hsl(var(--border))}.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-save{background:hsl(var(--accent-green));color:#fff;cursor:pointer;border:none;border-radius:.375rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s}.btn-save:hover:not(:disabled){background:#196639}.btn-save:disabled{opacity:.5;cursor:not-allowed}@media (max-width:600px){.modal-content{border-radius:0;max-height:100vh}.visibility-options{grid-template-columns:1fr}.radio-group{flex-direction:column;gap:.75rem}}.upload-form{flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex}.drop-zone{border:2px dashed hsl(var(--border));text-align:center;cursor:pointer;background:hsl(var(--background));border-radius:.75rem;padding:2rem;transition:all .2s}.drop-zone:hover{border-color:hsl(var(--accent-cyan));background:hsla(var(--accent-cyan),.05)}.drop-zone.has-file{border-style:solid;border-color:hsl(var(--accent-green));background:hsla(var(--accent-green),.05)}.drop-zone-content{color:hsl(var(--muted-foreground));flex-direction:column;align-items:center;gap:.5rem;display:flex}.drop-icon{opacity:.6;font-size:2.5rem}.drop-zone-content p{margin:0;font-size:1rem}.drop-zone-content small{opacity:.7;font-size:.75rem}.file-preview{align-items:center;gap:1rem;padding:.5rem;display:flex}.file-icon{font-size:2rem}.file-info{flex-direction:column;flex:1;align-items:flex-start;display:flex}.file-name{color:hsl(var(--foreground));word-break:break-all;font-weight:600}.file-size{color:hsl(var(--muted-foreground));font-size:.75rem}.remove-file{background:hsl(var(--secondary));cursor:pointer;width:2rem;height:2rem;color:hsl(var(--muted-foreground));border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.25rem;transition:all .2s;display:flex}.remove-file:hover:not(:disabled){color:#ad1f1f;background:#d9262633}.upload-progress{align-items:center;gap:1rem;display:flex}.progress-bar{background:hsl(var(--secondary));border-radius:4px;flex:1;height:8px;overflow:hidden}.progress-fill{background:hsl(var(--accent-cyan));height:100%;transition:width .3s}.progress-text{color:hsl(var(--accent-cyan));min-width:40px;font-size:.875rem;font-weight:600}.admin-book-modal{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.admin-book-content{background:#fff;border-radius:8px;width:100%;max-width:600px;max-height:90vh;padding:2rem;overflow-y:auto}.admin-book-content h2{color:#2c3e50;margin:0 0 1.5rem}.error-message{color:#c33;background-color:#fee;border-left:4px solid #c33;border-radius:4px;margin-bottom:1rem;padding:1rem}.no-cases-message{background:#fff3cd;border:1px solid #ffc107;border-radius:4px;margin:1rem 0;padding:1.5rem}.no-cases-message p{color:#856404;margin:.5rem 0}.time-balance-info{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:8px;margin-bottom:1.5rem;padding:1rem}.time-balance-info h4{color:#fff;margin:0 0 .75rem;font-size:.95rem}.balance-stats{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.balance-item{flex-direction:column;gap:.25rem;display:flex}.balance-label{opacity:.9;font-size:.85rem}.balance-value{font-size:1.25rem;font-weight:700}.balance-value.available{color:#4ade80}.balance-value.used{color:#fb923c}.admin-book-form{flex-direction:column;gap:1.25rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:#2c3e50;font-size:.9rem;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:2px solid #e0e0e0;border-radius:4px;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#007bff;outline:none}.form-group textarea{resize:vertical}.duration-warning{color:#dc3545;margin:.25rem 0 0;font-size:.85rem;font-weight:600}.modal-actions{border-top:1px solid #e0e0e0;justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:4px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s}.btn-primary{color:#fff;background:#007bff}.btn-primary:hover:not(:disabled){background:#0056b3}.btn-primary:disabled{cursor:not-allowed;opacity:.7;background:#ccc}.btn-secondary{color:#fff;background:#6c757d}.btn-secondary:hover:not(:disabled){background:#5a6268}.btn-secondary:disabled{cursor:not-allowed;opacity:.7}@media (max-width:640px){.admin-book-content{padding:1.5rem}.balance-stats{grid-template-columns:1fr}.modal-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.client-cases-summary{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.client-cases-summary h3{color:#2c3e50;margin:0 0 1rem}.cases-badges{flex-direction:column;gap:.75rem;display:flex}.case-badge{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.case-status{text-transform:uppercase;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.case-status.open{color:#155724;background:#d4edda}.case-status.closed{color:#721c24;background:#f8d7da}.case-info{color:#666;font-size:.9rem}.case-time-balance{color:#007bff;margin-left:auto;font-size:.85rem;font-weight:600}.client-actions{flex-wrap:wrap;gap:1rem;margin-bottom:2rem;display:flex}.btn-action{cursor:pointer;border:none;border-radius:.375rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s}.btn-action.btn-primary{background:hsl(var(--accent-green));color:#fff}.btn-action.btn-primary:hover{background:#196639}.btn-action.btn-secondary{background:hsl(var(--accent-cyan));color:#fff}.btn-action.btn-secondary:hover{background:#0d8ca5}.client-timeline-section{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;margin-bottom:2rem;padding:2rem}.client-timeline-section h3{color:hsl(var(--foreground));margin-bottom:1.5rem;font-size:1.25rem}.timeline{padding-left:2rem;position:relative}.timeline:before{content:"";background:hsl(var(--border));width:2px;position:absolute;top:0;bottom:0;left:.5rem}.timeline-item{padding-bottom:1.5rem;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-marker{background:hsl(var(--accent-cyan));border:2px solid hsl(var(--card));width:12px;height:12px;box-shadow:0 0 0 2px hsl(var(--accent-cyan));border-radius:50%;position:absolute;top:.25rem;left:-1.5rem}.timeline-content{margin-left:.5rem}.timeline-date{color:hsl(var(--muted-foreground));margin-bottom:.5rem;font-size:.75rem;font-weight:500}.timeline-card{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:.5rem;gap:1rem;padding:1rem;display:flex}.timeline-icon{flex-shrink:0;font-size:1.5rem}.timeline-details{flex:1;min-width:0}.timeline-title{color:hsl(var(--foreground));word-break:break-word;margin-bottom:.375rem;font-weight:600}.timeline-title a{color:hsl(var(--accent-cyan));text-decoration:none}.timeline-title a:hover{text-decoration:underline}.timeline-title .file-size{color:hsl(var(--muted-foreground));margin-left:.5rem;font-size:.875rem;font-weight:400}.timeline-meta{color:hsl(var(--muted-foreground));flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.5rem;font-size:.8rem;display:flex}.timeline-amount{color:hsl(var(--accent-green));font-weight:500}.timeline-notes{color:hsl(var(--muted-foreground));margin-top:.5rem;font-size:.875rem;line-height:1.5}.visibility-badge{border-radius:.25rem;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:.7rem;font-weight:500;display:inline-flex}.visibility-badge.visibility-internal{color:#a17d12;background:#f2b90d26}.visibility-badge.visibility-shared{color:#248f50;background:#2eb86726}.timeline-note-content{color:hsl(var(--foreground));white-space:pre-wrap;max-height:4.5em;margin-top:.5rem;font-size:.875rem;line-height:1.6;position:relative;overflow:hidden}.timeline-note-content:not(.expanded):after{content:"";background:linear-gradient(transparent,hsl(var(--background)));height:1.5em;position:absolute;bottom:0;left:0;right:0}.timeline-note-content.expanded{max-height:none}.timeline-note-content.expanded:after{display:none}.timeline-note-actions{gap:1rem;margin-top:.75rem;display:flex}.btn-link{color:hsl(var(--accent-cyan));cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem;font-weight:500}.btn-link:hover{text-decoration:underline}.btn-link.btn-link-danger{color:#c32222}.appointments-details{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;overflow:hidden}.appointments-summary{cursor:pointer;-webkit-user-select:none;user-select:none;padding:1.5rem 2rem;list-style:none}.appointments-summary::-webkit-details-marker{display:none}.appointments-summary h3{color:hsl(var(--foreground));align-items:center;gap:.5rem;margin:0;font-size:1.125rem;display:flex}.appointments-summary h3:before{content:"▶";font-size:.75rem;transition:transform .2s}.appointments-details[open] .appointments-summary h3:before{transform:rotate(90deg)}.appointments-details .client-appointments{border-top:1px solid hsl(var(--border));padding:0 2rem 2rem}.timeline-appointment .timeline-marker{background:hsl(var(--accent-cyan));box-shadow:0 0 0 2px hsl(var(--accent-cyan))}.timeline-document .timeline-marker{background:hsl(var(--accent-green));box-shadow:0 0 0 2px hsl(var(--accent-green))}.timeline-note .timeline-marker{background:#8033cc;box-shadow:0 0 0 2px #8033cc}@media (max-width:768px){.client-actions{flex-direction:column}.btn-action{text-align:center;width:100%}.timeline{padding-left:1.5rem}.timeline:before{left:.375rem}.timeline-marker{width:10px;height:10px;left:-1.25rem}.timeline-card{flex-direction:column;gap:.5rem}.timeline-meta{flex-direction:column;align-items:flex-start;gap:.375rem}}.cases-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin:2rem 0;display:grid}.stat-card{text-align:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem}.stat-value{color:#007bff;margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.stat-label{color:#666;text-transform:uppercase;letter-spacing:.5px;font-size:.9rem}.cases-filters{gap:1rem;margin-bottom:2rem;display:flex}.filter-btn{cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:.5rem 1.5rem;font-size:.9rem;transition:all .2s}.filter-btn:hover{color:#007bff;border-color:#007bff}.filter-btn.active{color:#fff;background:#007bff;border-color:#007bff}.cases-table{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.cases-table table{border-collapse:collapse;width:100%}.cases-table th,.cases-table td{text-align:left;border-bottom:1px solid #e0e0e0;padding:1rem}.cases-table th{color:#2c3e50;text-transform:uppercase;letter-spacing:.5px;background:#f8f9fa;font-size:.9rem;font-weight:600}.cases-table tbody tr:hover{background:#f8f9fa}.cases-table tbody tr:last-child td{border-bottom:none}.case-id a{color:#007bff;font-family:monospace;text-decoration:none}.case-id a:hover{text-decoration:underline}.status-badge{text-transform:uppercase;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.status-badge.open{color:#155724;background:#d4edda}.status-badge.closed{color:#721c24;background:#f8d7da}.actions{text-align:right}.action-btn{cursor:pointer;border:none;border-radius:4px;padding:.4rem 1rem;font-size:.85rem;font-weight:500;transition:all .2s}.close-btn{color:#fff;background:#dc3545}.close-btn:hover{background:#c82333}.reopen-btn{color:#fff;background:#28a745}.reopen-btn:hover{background:#218838}.no-data{text-align:center;color:#999;padding:3rem;font-style:italic}.back-link{color:#007bff;font-size:.9rem;text-decoration:none}@media (max-width:768px){.cases-table{overflow-x:auto}.cases-table table{min-width:800px}.cases-filters{flex-direction:column}.filter-btn{width:100%}}.admin-articles-page{max-width:1200px;margin:0 auto;padding:2rem}.admin-header{justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:2rem;display:flex}.admin-header h1{color:var(--text-primary,#1a1a1a);margin:.5rem 0}.admin-header p{color:var(--text-secondary,#666);margin:.5rem 0 0}.back-link{color:var(--primary,#2563eb);margin-bottom:1rem;font-size:.9rem;text-decoration:none;display:inline-block}.back-link:hover{text-decoration:underline}.filters{background:#f8f9fa;border-radius:8px;gap:1.5rem;margin-bottom:2rem;padding:1rem;display:flex}.filter-group{align-items:center;gap:.5rem;display:flex}.filter-group label{color:var(--text-primary,#1a1a1a);font-weight:500}.filter-group select{background:#fff;border:1px solid #ddd;border-radius:4px;padding:.5rem 1rem;font-size:.95rem}.articles-list{flex-direction:column;gap:1rem;display:flex}.article-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:2rem;padding:1.5rem;display:flex}.article-info{flex:1}.article-header-row{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem;display:flex}.article-item h3{color:var(--text-primary,#1a1a1a);margin:0;font-size:1.25rem}.badges{flex-shrink:0;gap:.5rem;display:flex}.badge{text-transform:uppercase;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:500}.badge-published{color:#065f46;background:#d1fae5}.badge-draft{color:#92400e;background:#fef3c7}.badge-type{color:#3730a3;background:#e0e7ff}.article-description{color:var(--text-secondary,#666);margin:.5rem 0;line-height:1.5}.article-meta{color:var(--text-tertiary,#999);gap:1.5rem;margin-top:.75rem;font-size:.85rem;display:flex}.meta-item{align-items:center;display:flex}.article-actions{flex-shrink:0;gap:.5rem;display:flex}.btn-primary,.btn-secondary,.btn-danger{cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-block}.btn-primary{background:var(--primary,#2563eb);color:#fff}.btn-primary:hover{background:var(--primary-dark,#1d4ed8)}.btn-secondary{color:var(--text-primary,#1a1a1a);background:#fff;border:1px solid #ddd}.btn-secondary:hover{background:#f8f9fa}.btn-danger{color:#fff;background:#dc2626}.btn-danger:hover{background:#b91c1c}.loading,.no-articles{text-align:center;color:var(--text-secondary,#666);padding:3rem}@media (max-width:768px){.admin-articles-page{padding:1rem}.admin-header{flex-direction:column}.filters,.article-item{flex-direction:column;gap:1rem}.article-actions{justify-content:stretch;width:100%}.article-actions button,.article-actions a{flex:1}.article-header-row{flex-direction:column;align-items:flex-start}.article-meta{flex-direction:column;gap:.25rem}}.admin-article-editor{max-width:1200px;margin:0 auto;padding:2rem}.editor-header{margin-bottom:2rem}.editor-header h1{color:var(--text-primary,#1a1a1a);margin:.5rem 0}.editor-form{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-primary,#1a1a1a);margin-bottom:.5rem;font-weight:500;display:block}.form-group input,.form-group textarea,.form-group select{border:1px solid #ddd;border-radius:4px;width:100%;padding:.75rem;font-family:inherit;font-size:1rem}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--primary,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb1a}.form-group small{color:var(--text-tertiary,#999);margin-top:.5rem;font-size:.85rem;display:block}.form-group .error{color:#dc2626;margin-top:.5rem;font-size:.85rem;display:block}.radio-group{gap:2rem;display:flex}.radio-group label{cursor:pointer;align-items:center;gap:.5rem;font-weight:400;display:flex}.radio-group input[type=radio]{cursor:pointer;width:auto}.content-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.content-editor{gap:1rem;display:flex}.content-editor textarea{resize:vertical;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9rem}.content-editor textarea.half-width{width:50%}.markdown-preview{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;flex:1;max-height:500px;padding:1rem;overflow-y:auto}.markdown-preview h4{color:var(--text-primary,#1a1a1a);margin:0 0 1rem}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3{margin-top:1.5rem;margin-bottom:.5rem}.markdown-preview h1:first-child,.markdown-preview h2:first-child,.markdown-preview h3:first-child{margin-top:0}.markdown-preview p{margin-bottom:1rem;line-height:1.6}.markdown-preview ul,.markdown-preview ol{margin-bottom:1rem;padding-left:2rem}.markdown-preview li{margin-bottom:.5rem}.markdown-preview code{background:#e5e7eb;border-radius:3px;padding:.2rem .4rem;font-size:.85em}.markdown-preview pre{color:#f3f4f6;background:#1f2937;border-radius:4px;padding:1rem;overflow-x:auto}.markdown-preview pre code{color:inherit;background:0 0;padding:0}.form-actions{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:2rem;display:flex}.btn-sm{padding:.4rem .8rem;font-size:.85rem}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.loading{text-align:center;color:var(--text-secondary,#666);padding:3rem}@media (max-width:768px){.admin-article-editor,.editor-form{padding:1rem}.content-editor{flex-direction:column}.content-editor textarea.half-width{width:100%}.radio-group{flex-direction:column;gap:.75rem}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.app{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1}.container{max-width:1200px;margin:0 auto;padding:0 2rem}
