@import url(https://fonts.googleapis.com/css2?family=Arsenal:wght@400;700&family=Cormorant+Garamond:ital,wght@0,500;0,700;1,500;1,700&family=Playfair+Display:ital,wght@0,400;0,600;1,400&display=swap);@import url(https://fonts.googleapis.com/css2?family=Roboto:wght@400;500&display=swap);@import url(https://fonts.googleapis.com/css2?family=Arsenal:wght@400;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500;1,600&display=swap);*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.left-3{left:.75rem}.right-2{right:.5rem}.right-3{right:.75rem}.top-1\/2{top:50%}.top-2\.5{top:.625rem}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-bottom:.5rem;margin-top:.5rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-5{margin-left:1.25rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.hidden{display:none}.h-1\.5{height:.375rem}.h-12{height:3rem}.h-16{height:4rem}.h-24{height:6rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.min-h-\[40vh\]{min-height:40vh}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-1\/2{width:50%}.w-12{width:3rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-full{width:100%}.max-w-7xl{max-width:80rem}.max-w-md{max-width:28rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-1\/2,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-6{gap:1.5rem}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.375rem*var(--tw-space-y-reverse));margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-2{border-left-width:2px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-dashed{border-style:dashed}.border-\[\#3c4c42\]{--tw-border-opacity:1;border-color:#3c4c42;border-color:rgb(60 76 66/var(--tw-border-opacity,1))}.border-\[\#5c6861\]{--tw-border-opacity:1;border-color:#5c6861;border-color:rgb(92 104 97/var(--tw-border-opacity,1))}.border-\[\#989ca0\]{--tw-border-opacity:1;border-color:#989ca0;border-color:rgb(152 156 160/var(--tw-border-opacity,1))}.border-amber-200{--tw-border-opacity:1;border-color:#fde68a;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-blue-100{--tw-border-opacity:1;border-color:#dbeafe;border-color:rgb(219 234 254/var(--tw-border-opacity,1))}.border-blue-200{--tw-border-opacity:1;border-color:#bfdbfe;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.border-gray-100{--tw-border-opacity:1;border-color:#f3f4f6;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:#e5e7eb;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:#d1d5db;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-green-200{--tw-border-opacity:1;border-color:#bbf7d0;border-color:rgb(187 247 208/var(--tw-border-opacity,1))}.border-green-300{--tw-border-opacity:1;border-color:#86efac;border-color:rgb(134 239 172/var(--tw-border-opacity,1))}.border-orange-200{--tw-border-opacity:1;border-color:#fed7aa;border-color:rgb(254 215 170/var(--tw-border-opacity,1))}.border-purple-200{--tw-border-opacity:1;border-color:#e9d5ff;border-color:rgb(233 213 255/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:#fecaca;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-red-300{--tw-border-opacity:1;border-color:#fca5a5;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity:1;border-color:#e2e8f0;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.border-transparent{border-color:#0000}.border-yellow-200{--tw-border-opacity:1;border-color:#fef08a;border-color:rgb(254 240 138/var(--tw-border-opacity,1))}.bg-\[\#2d3d23\]{--tw-bg-opacity:1;background-color:#2d3d23;background-color:rgb(45 61 35/var(--tw-bg-opacity,1))}.bg-\[\#3c4c42\]{--tw-bg-opacity:1;background-color:#3c4c42;background-color:rgb(60 76 66/var(--tw-bg-opacity,1))}.bg-\[\#5c6861\]{--tw-bg-opacity:1;background-color:#5c6861;background-color:rgb(92 104 97/var(--tw-bg-opacity,1))}.bg-\[\#f4f4f4\]{--tw-bg-opacity:1;background-color:#f4f4f4;background-color:rgb(244 244 244/var(--tw-bg-opacity,1))}.bg-amber-50{--tw-bg-opacity:1;background-color:#fffbeb;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:#000;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-blue-100{--tw-bg-opacity:1;background-color:#dbeafe;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:#eff6ff;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-500{--tw-bg-opacity:1;background-color:#3b82f6;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-emerald-50{--tw-bg-opacity:1;background-color:#ecfdf5;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:#e5e7eb;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-400{--tw-bg-opacity:1;background-color:#9ca3af;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:#f9fafb;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-gray-500{--tw-bg-opacity:1;background-color:#6b7280;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.bg-green-100{--tw-bg-opacity:1;background-color:#dcfce7;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:#f0fdf4;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-green-500{--tw-bg-opacity:1;background-color:#22c55e;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-green-600{--tw-bg-opacity:1;background-color:#16a34a;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.bg-orange-50{--tw-bg-opacity:1;background-color:#fff7ed;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-purple-100{--tw-bg-opacity:1;background-color:#f3e8ff;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.bg-purple-50{--tw-bg-opacity:1;background-color:#faf5ff;background-color:rgb(250 245 255/var(--tw-bg-opacity,1))}.bg-red-100{--tw-bg-opacity:1;background-color:#fee2e2;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:#fef2f2;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-500{--tw-bg-opacity:1;background-color:#ef4444;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-slate-50{--tw-bg-opacity:1;background-color:#f8fafc;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-yellow-50{--tw-bg-opacity:1;background-color:#fefce8;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.bg-opacity-50{--tw-bg-opacity:0.5}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-12{padding-bottom:3rem;padding-top:3rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pr-20{padding-right:5rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.text-center{text-align:center}.font-arsenal{font-family:Arsenal,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-feature-settings:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.text-\[\#2d3d23\]{--tw-text-opacity:1;color:#2d3d23;color:rgb(45 61 35/var(--tw-text-opacity,1))}.text-\[\#3c4c42\]{--tw-text-opacity:1;color:#3c4c42;color:rgb(60 76 66/var(--tw-text-opacity,1))}.text-\[\#5c6861\]{--tw-text-opacity:1;color:#5c6861;color:rgb(92 104 97/var(--tw-text-opacity,1))}.text-\[\#989ca0\]{--tw-text-opacity:1;color:#989ca0;color:rgb(152 156 160/var(--tw-text-opacity,1))}.text-amber-700{--tw-text-opacity:1;color:#b45309;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-amber-800{--tw-text-opacity:1;color:#92400e;color:rgb(146 64 14/var(--tw-text-opacity,1))}.text-amber-900{--tw-text-opacity:1;color:#78350f;color:rgb(120 53 15/var(--tw-text-opacity,1))}.text-blue-700{--tw-text-opacity:1;color:#1d4ed8;color:rgb(29 78 216/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:#1e40af;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-blue-900{--tw-text-opacity:1;color:#1e3a8a;color:rgb(30 58 138/var(--tw-text-opacity,1))}.text-emerald-800{--tw-text-opacity:1;color:#065f46;color:rgb(6 95 70/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:#9ca3af;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:#6b7280;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:#4b5563;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:#374151;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:#1f2937;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:#111827;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-green-500{--tw-text-opacity:1;color:#22c55e;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:#15803d;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:#166534;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-orange-700{--tw-text-opacity:1;color:#c2410c;color:rgb(194 65 12/var(--tw-text-opacity,1))}.text-purple-700{--tw-text-opacity:1;color:#7e22ce;color:rgb(126 34 206/var(--tw-text-opacity,1))}.text-purple-800{--tw-text-opacity:1;color:#6b21a8;color:rgb(107 33 168/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:#ef4444;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:#dc2626;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:#b91c1c;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:#991b1b;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-slate-800{--tw-text-opacity:1;color:#1e293b;color:rgb(30 41 59/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-yellow-700{--tw-text-opacity:1;color:#a16207;color:rgb(161 98 7/var(--tw-text-opacity,1))}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-sm{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.outline{outline-style:solid}.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-all{transition-duration:.15s}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.last\:border-0:last-child{border-width:0}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-gray-300:hover{--tw-border-opacity:1;border-color:#d1d5db;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.hover\:bg-\[\#f4f4f4\]:hover{--tw-bg-opacity:1;background-color:#f4f4f4;background-color:rgb(244 244 244/var(--tw-bg-opacity,1))}.hover\:bg-blue-200:hover{--tw-bg-opacity:1;background-color:#bfdbfe;background-color:rgb(191 219 254/var(--tw-bg-opacity,1))}.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:#2563eb;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:#f9fafb;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-gray-600:hover{--tw-bg-opacity:1;background-color:#4b5563;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.hover\:bg-green-200:hover{--tw-bg-opacity:1;background-color:#bbf7d0;background-color:rgb(187 247 208/var(--tw-bg-opacity,1))}.hover\:bg-green-600:hover{--tw-bg-opacity:1;background-color:#16a34a;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.hover\:bg-green-700:hover{--tw-bg-opacity:1;background-color:#15803d;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.hover\:bg-purple-200:hover{--tw-bg-opacity:1;background-color:#e9d5ff;background-color:rgb(233 213 255/var(--tw-bg-opacity,1))}.hover\:bg-red-200:hover{--tw-bg-opacity:1;background-color:#fecaca;background-color:rgb(254 202 202/var(--tw-bg-opacity,1))}.hover\:bg-red-50:hover{--tw-bg-opacity:1;background-color:#fef2f2;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.hover\:text-gray-600:hover{--tw-text-opacity:1;color:#4b5563;color:rgb(75 85 99/var(--tw-text-opacity,1))}.hover\:text-gray-800:hover{--tw-text-opacity:1;color:#1f2937;color:rgb(31 41 55/var(--tw-text-opacity,1))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:border-\[\#3c4c42\]:focus{--tw-border-opacity:1;border-color:#3c4c42;border-color:rgb(60 76 66/var(--tw-border-opacity,1))}.focus\:border-green-500:focus{--tw-border-opacity:1;border-color:#22c55e;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.focus\:bg-white:focus{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.focus\:outline-none:focus{outline:2px solid #0000;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-green-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(34 197 94/var(--tw-ring-opacity,1))}.focus\:ring-opacity-20:focus{--tw-ring-opacity:0.2}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-gray-100:disabled{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:640px){.sm\:left-4{left:1rem}.sm\:right-3{right:.75rem}.sm\:mb-6{margin-bottom:1.5rem}.sm\:mb-8{margin-bottom:2rem}.sm\:mt-0{margin-top:0}.sm\:h-10{height:2.5rem}.sm\:h-20{height:5rem}.sm\:h-4{height:1rem}.sm\:h-5{height:1.25rem}.sm\:w-10{width:2.5rem}.sm\:w-20{width:5rem}.sm\:w-4{width:1rem}.sm\:w-5{width:1.25rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-2{gap:.5rem}.sm\:gap-3{gap:.75rem}.sm\:gap-6{gap:1.5rem}.sm\:p-2{padding:.5rem}.sm\:p-4{padding:1rem}.sm\:p-6{padding:1.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-12{padding-bottom:3rem;padding-top:3rem}.sm\:py-8{padding-bottom:2rem;padding-top:2rem}.sm\:pl-11{padding-left:2.75rem}.sm\:pl-4{padding-left:1rem}.sm\:pr-10{padding-right:2.5rem}.sm\:pr-24{padding-right:6rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){.md\:col-span-2{grid-column:span 2/span 2}.md\:col-span-4{grid-column:span 4/span 4}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (min-width:1280px){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}*{box-sizing:border-box;font-family:var(--font-sans);margin:0;padding:0}body{background-color:var(--page-bg);color:var(--fg);line-height:1.6}.app-container{--sidebar-width:250px;--hamburger-btn-size:40px;--hamburger-gap:0.75rem;display:flex;min-height:100vh;position:relative}.app-container.sidebar-collapsed{--sidebar-width:0px}.app-container>:not(.sidebar):not(.hamburger-button-collapsed):not(.mobile-top-nav){flex:1 1;margin-left:var(--sidebar-width);min-width:0;transition:margin-left .3s ease-in-out}.app-container.sidebar-collapsed>:not(.sidebar):not(.hamburger-button-collapsed):not(.mobile-top-nav){padding-left:calc(1rem + var(--hamburger-btn-size) + var(--hamburger-gap))}.main-content{flex:1 1;padding:2rem;transition:margin-left .3s ease-in-out}.sidebar{background-color:var(--green-deep);color:var(--page-bg);display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;transition:transform .3s ease-in-out;width:250px;z-index:1000}.sidebar.collapsed{transform:translateX(-250px)}.hamburger-button{align-items:center;background-color:initial;border:none;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:6px;height:40px;justify-content:center;left:auto;padding:8px;position:relative;top:auto;transition:all .3s ease;width:40px;z-index:1001}.hamburger-button:hover{background-color:var(--alpha-green-20)}.hamburger-button span{background-color:var(--page-bg);display:block;height:2px;transform-origin:center;transition:all .3s ease;width:24px}.hamburger-button.active span:first-child{transform:translateY(8px) rotate(45deg)}.hamburger-button.active span:nth-child(2){opacity:0}.hamburger-button.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.sidebar-header{align-items:center;border-bottom:1px solid var(--alpha-sidebar-border);display:flex;height:64px;justify-content:space-between;margin-bottom:1rem;padding:1rem 1.5rem}.sidebar-title{color:var(--page-bg);font-family:var(--font-sans);font-size:1.25rem;font-weight:600;margin:0}.sidebar-nav{display:flex;flex-direction:column;overflow-y:auto;padding:.5rem 0}.nav-item{align-items:center;border-left:3px solid #0000;color:var(--page-bg);display:flex;gap:.75rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s ease}.nav-item.active,.nav-item:hover{background-color:var(--green-med);border-left-color:var(--page-bg)}.nav-item svg{height:20px;width:20px}.styled-form{background-color:var(--paper);border-radius:8px;box-shadow:var(--shadow-card);margin:0 auto;max-width:800px;padding:2rem}.form-group{margin-bottom:1.5rem}.form-label{font-weight:700}.form-input,.form-select,.form-textarea{border:1px solid var(--gray);transition:border-color .3s,box-shadow .3s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--green-med);box-shadow:0 0 0 2px var(--alpha-green-20)}.btn{border-radius:4px;font-weight:700;transition:background-color .3s,transform .2s}.btn-primary{background-color:var(--green-deep);color:var(--page-bg)}.btn-primary:hover{background-color:var(--green-med)}.btn-secondary{background-color:var(--gray);color:var(--fg)}.btn-secondary:hover{background-color:var(--green-slate);color:var(--page-bg)}.btn-danger{color:var(--page-bg)}.client-card,.recipe-card{background-color:var(--paper);border-radius:8px;box-shadow:var(--shadow-card);padding:1.5rem;transition:transform .3s,box-shadow .3s}.client-card:hover,.recipe-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.client-grid,.recipe-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));padding:1rem}.modal-overlay{background-color:var(--alpha-fg-70);z-index:1000}.modal-content{background-color:var(--page-bg);border-radius:8px;max-width:90%;padding:2rem}.search-section{background-color:var(--paper);border-radius:8px;box-shadow:var(--shadow-card);padding:1.5rem}.search-input{background-color:var(--paper);border:1px solid var(--gray);border-radius:4px;padding:.75rem .75rem .75rem 2.5rem;width:100%}.filter-tag{background-color:var(--green-med);border-radius:4px;color:var(--page-bg)}.loading-container{align-items:center;display:flex;justify-content:center;min-height:200px}.loading-spinner{border-top:4px solid var(--page-bg);border:4px solid var(--page-bg);border-top-color:var(--green-med)}.error-message{background-color:var(--danger);border-radius:4px;color:var(--page-bg);margin-bottom:1rem;padding:1rem}h1,h2,h3,h4,h5,h6{color:var(--fg);margin-bottom:1rem}.page-title{font-size:2rem;font-weight:700;margin-bottom:2rem}.page-title,.text-primary{color:var(--green-deep)}.text-secondary{color:var(--green-med)}.text-muted{color:var(--gray)}.bg-primary{background-color:var(--green-deep)}.bg-secondary{background-color:var(--green-med)}@media (max-width:768px){.app-container{--sidebar-width:0px}.app-container>:not(.sidebar):not(.hamburger-button-collapsed){margin-left:0;padding-left:1rem;padding-right:1rem}.app-container.sidebar-collapsed>:not(.sidebar):not(.hamburger-button-collapsed):not(.mobile-top-nav){padding-left:calc(1rem + var(--hamburger-btn-size) + var(--hamburger-gap))}.main-content{padding:1rem}.sidebar{transform:translateX(-250px)}.sidebar.open{transform:translateX(0)}.hamburger-button{display:flex}.client-grid,.recipe-grid{gap:16px;grid-template-columns:1fr}.sidebar-header{height:56px;padding:.75rem 1rem}.sidebar-title{font-size:1.125rem}.hamburger-button{height:36px;width:36px}}.preference-item{background-color:var(--page-bg);border:1px solid var(--gray);border-radius:4px;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding:1rem}.remove-button{border:none;border-radius:4px;color:var(--page-bg);cursor:pointer;padding:.5rem 1rem}.remove-button,.remove-button:hover{background-color:var(--danger)}.add-button{background-color:var(--green-deep);border:none;border-radius:4px;color:var(--page-bg);cursor:pointer;margin-bottom:1rem;padding:.5rem 1rem}.add-button:hover{background-color:var(--green-med)}.recipe-grid{grid-gap:24px;box-sizing:border-box;gap:24px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));width:100%}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.disabled-tab{color:var(--neutral-400)!important;cursor:not-allowed!important;opacity:.5!important}.disabled-tab:hover{background-color:initial!important}.edit-notice{background:var(--warning-bg);border:1px solid var(--warning);border-radius:8px;margin:16px 0;padding:12px 16px}.notice-content{align-items:flex-start;display:flex;gap:12px}.notice-icon{color:var(--warning);flex-shrink:0;margin-top:2px}.notice-content p{font-size:14px;line-height:1.5;margin:0}.notice-content p,.notice-content strong{color:var(--warning)}.recipe-card{word-wrap:break-word;border:1px solid var(--alpha-black-05);box-shadow:0 2px 8px var(--alpha-black-10);break-inside:avoid;cursor:pointer;overflow-wrap:anywhere;padding:24px;page-break-inside:avoid;position:relative;z-index:1}.recipe-card:hover{border-color:var(--alpha-black-10);box-shadow:0 8px 16px var(--alpha-black-10);transform:translateY(-4px) scale(1.02)}.recipe-card h3{color:var(--neutral-700);font-size:1.25rem;font-weight:600;line-height:1.2;margin-bottom:1rem}.recipe-card .meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:1rem}.recipe-card .meta span{background:var(--neutral-50);border-radius:9999px;color:var(--neutral-500);font-size:.875rem;padding:4px 12px}.recipe-card .source{color:var(--text-meta);font-size:.875rem;font-style:italic;margin-bottom:1rem}.recipe-card .description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:var(--neutral-500);display:-webkit-box;font-size:.9375rem;line-height:1.5;margin-bottom:1.5rem;overflow:hidden}.recipe-card .ingredients{background:var(--neutral-50);border-radius:8px;padding:1rem}.recipe-card .ingredients h4{color:var(--neutral-500);font-size:.875rem;font-weight:600;margin-bottom:.5rem}.recipe-card .ingredients ul{color:var(--text-meta);list-style-position:inside;list-style-type:disc}.recipe-card .ingredients li{font-size:.875rem;margin-bottom:.25rem}.controls{margin-bottom:2rem}.sort-select{background-color:#fff;border:1px solid var(--neutral-200);border-radius:.5rem;color:var(--neutral-500);cursor:pointer;font-size:.875rem;padding:.5rem 1rem}.sort-select:focus{border-color:var(--green-med);outline:none}.loading{align-items:center;color:var(--text-meta);display:flex;font-size:1.125rem;justify-content:center;min-height:200px}.error{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:.5rem;color:var(--danger);margin:2rem 0;padding:1rem;text-align:center}@media (max-width:1024px){.recipe-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.main-content{padding:16px}.recipe-grid{grid-template-columns:1fr}.recipe-card{padding:20px}}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.transition-all{transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transform{transform:translateZ(0)}.hover\:scale-102:hover{transform:scale(1.02)}.hover\:shadow-lg:hover{box-shadow:var(--shadow-elevated)}.meal-plans-container{background-color:var(--neutral-50);margin-left:0;max-width:100%;overflow-x:hidden;padding:20px}.meal-plan-grid{grid-gap:24px;box-sizing:border-box;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));width:100%}.card-meal-plan{background:#fff;border:1px solid var(--alpha-black-05);border-radius:12px;box-shadow:0 2px 8px var(--alpha-black-10);cursor:pointer;padding:1.5rem;position:relative;transition:all .3s ease}.card-meal-plan:hover{border-color:var(--green-med);box-shadow:0 8px 16px var(--alpha-green-deep-15);transform:translateY(-4px)}.meal-plan-header{border-bottom:2px solid var(--neutral-100);margin-bottom:1rem;padding-bottom:1rem}.meal-plan-title{color:var(--green-deep);font-family:var(--font-sans);font-size:1.5rem;margin-bottom:.75rem}.meal-plan-meta{gap:.75rem}.meal-plan-meta span{align-items:center;background:var(--page-bg);border-radius:9999px;color:var(--green-med);display:inline-flex;font-size:.875rem;gap:.5rem;padding:.25rem .75rem;transition:all .2s ease}.meal-plan-meta span:hover{background:var(--neutral-100)}@media (max-width:768px){.meal-plan-modal-content,.meal-plan-modal-header{padding:1.5rem}.meal-plan-modal-title{font-size:1.5rem}.card-meal-plan,.meal-plan-modal-day,.meal-plan-modal-section{padding:1rem}}.App-header{background-color:var(--info);box-shadow:0 4px 6px var(--alpha-black-10);color:#fff;padding:20px;text-align:center}.action-buttons{display:flex;gap:15px;justify-content:center;margin-top:20px}.primary-button{background-color:var(--info);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px;transition:background-color .3s ease}.primary-button:hover{background-color:var(--info-muted)}.days-checkbox-group{display:flex;flex-wrap:wrap;gap:10px}.day-checkbox{gap:5px}.meal-day{background:var(--neutral-50);border:1px solid var(--rule);border-radius:5px;margin-bottom:15px;padding:10px}.meal-day h4{margin-top:0}.meal-plan-header{border-bottom:1px solid var(--neutral-100);padding:20px}.meal-plan-title{color:var(--neutral-700);font-size:1.25rem;font-weight:600;margin-bottom:8px}.meal-plan-meta{color:var(--text-meta);display:flex;flex-wrap:wrap;font-size:.875rem;gap:16px}.meal-plan-content{padding:20px}.day-section{border-bottom:1px solid var(--neutral-100);padding:12px 0}.day-section:last-child{border-bottom:none}.day-title{color:var(--neutral-500);font-weight:600;margin-bottom:12px}.meal-item{background:var(--neutral-50);border-radius:8px;margin-bottom:8px;padding:12px}.meal-item:last-child{margin-bottom:0}.meal-type{color:var(--text-meta);font-size:.75rem;margin-bottom:4px}.meal-name{color:var(--neutral-700);font-weight:500}.meal-plan-actions{display:flex;gap:8px;position:absolute;right:16px;top:16px}.action-button{align-items:center;background:#0000;border:none;border-radius:50%;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:background-color .2s}.action-button:hover{background-color:var(--neutral-50)}.action-button.delete:hover{background-color:var(--danger-bg);color:var(--danger)}.meal-plans-loading{align-items:center;display:flex;justify-content:center;min-height:400px}.meal-plans-empty{color:var(--text-meta);padding:40px;text-align:center}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-card{animation:shimmer 1.5s infinite;background:var(--desk);background-image:linear-gradient(90deg,var(--desk) 25%,var(--rule) 50%,var(--desk) 75%);background-size:200% 100%;border-radius:8px;height:200px}.nutrition{background:var(--neutral-50);border-radius:4px;margin-top:10px;padding:8px}.meta,.nutrition{color:var(--text-meta);font-size:.9rem}.meta{display:flex;gap:15px;margin:10px 0}.description{line-height:1.4;min-height:60px}.description,.source{color:var(--text-meta)}.source{font-style:italic;margin-bottom:10px}.ingredients{background:var(--neutral-50);border-radius:6px;margin-top:15px;padding:10px}.ingredients h4{color:var(--text-meta);font-size:.9rem;margin:0 0 8px}.ingredients ul{margin:0;padding-left:20px}.ingredients li{color:var(--text-meta);font-size:.85rem;margin-bottom:4px}.filter-group{background:var(--neutral-50);border-radius:8px;padding:12px}.filter-select{margin-top:8px;width:100%}.portion-range{align-items:center;display:flex;gap:8px}.portion-range input{padding:6px;width:80px}.filter-chips{flex-wrap:wrap;margin-bottom:16px}.chip,.filter-chips{display:flex;gap:8px}.chip{align-items:center;background:var(--neutral-200);border-radius:20px;padding:6px 12px}.chip button{background:none;border:none;color:var(--text-meta);cursor:pointer}.clear-all{background:var(--danger);border:none;border-radius:20px;color:#fff;padding:6px 12px}.modal-overlay{align-items:center;background-color:var(--alpha-black-75);bottom:0;display:flex;justify-content:center;left:0;padding:1.5rem;position:fixed;right:0;top:0;z-index:9999}.modal-content{background:#fff;border-radius:1rem;box-shadow:var(--shadow-modal);max-height:90vh;max-width:900px;overflow-y:auto;position:relative;width:90%}.modal-header{background:#fff;border-bottom:1px solid var(--neutral-200);padding:2rem 2.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.modal-header .close-button{align-items:center;background:#0000;border:none;border-radius:9999px;color:var(--text-meta);cursor:pointer;display:flex;height:2.5rem;justify-content:center;position:absolute;right:1.5rem;top:1.5rem;transition:all .2s ease;width:2.5rem}.modal-header .close-button:hover{background-color:var(--neutral-50);color:var(--neutral-500)}.modal-header .recipe-title{color:var(--neutral-700);font-size:2rem;font-weight:700;line-height:1.2;margin-bottom:1rem;padding-right:3rem}.modal-header .recipe-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}.modal-header .meta-item{align-items:center;background:var(--neutral-50);border-radius:9999px;color:var(--neutral-500);display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.modal-header .meta-item:hover{background:var(--neutral-100)}.modal-header .meta-item svg{color:var(--text-meta);height:1.25rem;width:1.25rem}.modal-body{padding:2rem 2.5rem}.modal-section{margin-bottom:2rem}.modal-section:last-child{margin-bottom:0}.modal-section-title{align-items:center;color:var(--neutral-700);display:flex;font-size:1.25rem;font-weight:600;gap:.75rem;margin-bottom:1rem}.modal-section-title:before{background:var(--green-med);content:"";display:block;height:2px;width:2rem}.recipe-modal-toolbar{align-items:center;border-bottom:1px solid var(--neutral-200);display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem}.recipe-modal-toolbar-hint{color:var(--text-meta);font-size:.8125rem;margin-right:auto}.recipe-card-detail-toolbar--actions,.recipe-modal-toolbar--actions{justify-content:flex-end}.recipe-modal-toolbar button{background:var(--paper);border:1px solid var(--neutral-200);border-radius:.5rem;color:var(--neutral-500);cursor:pointer;font-size:.8125rem;font-weight:500;padding:.375rem .75rem;transition:background .15s ease,border-color .15s ease,color .15s ease}.recipe-modal-toolbar button:hover{background:var(--neutral-50);border-color:var(--neutral-300);color:var(--neutral-700)}.recipe-modal-accordion-trigger{align-items:center;background:#0000;border:none;border-radius:.5rem;color:inherit;cursor:pointer;display:flex;gap:.75rem;margin:0 -.75rem .75rem;padding:.625rem .75rem;text-align:left;transition:background .15s ease;width:100%}.recipe-modal-accordion-trigger:hover{background:var(--neutral-50)}.recipe-modal-accordion-trigger:focus-visible{outline:2px solid var(--green-med);outline-offset:2px}.recipe-modal-accordion-title-bar{background:var(--green-med);flex-shrink:0;height:2px;width:2rem}.recipe-modal-accordion-label{color:var(--neutral-700);flex:1 1;font-size:1.25rem;font-weight:600;line-height:1.3}.recipe-modal-accordion-meta{color:var(--text-meta);font-size:.8125rem;font-weight:500}.recipe-modal-accordion-chevron{color:var(--text-meta);flex-shrink:0;transition:transform .2s ease}.recipe-modal-accordion-chevron--open{transform:rotate(180deg)}.recipe-modal-empty{background:var(--neutral-50);border-radius:.75rem;color:var(--text-meta);font-size:.9375rem;line-height:1.5;margin:0;padding:1rem 1.25rem}.recipe-modal-tags{display:flex;flex-wrap:wrap;gap:.5rem}.recipe-modal-tag{align-items:center;background:var(--neutral-100);border-radius:9999px;color:var(--neutral-500);display:inline-flex;font-size:.8125rem;font-weight:500;padding:.375rem .75rem}.recipe-modal-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.recipe-modal-edit-link{align-items:center;background:var(--paper);border:1px solid var(--neutral-200);border-radius:9999px;color:var(--green-deep);display:inline-flex;font-size:.875rem;font-weight:600;gap:.375rem;padding:.5rem 1rem;text-decoration:none;transition:background .15s ease,border-color .15s ease}.recipe-modal-edit-link:hover{background:var(--neutral-50);border-color:var(--neutral-300)}.recipe-card-detail-toolbar.recipe-modal-toolbar{margin-bottom:1rem;padding-bottom:.75rem}.recipe-card-detail-toolbar .recipe-modal-toolbar-hint{flex:1 1 100%;font-size:.75rem;line-height:1.35}@media (min-width:640px){.recipe-card-detail-toolbar .recipe-modal-toolbar-hint{flex:1 1 auto}}.recipe-card-accordion-section.modal-section{margin-bottom:1rem}.recipe-card-accordion-section .recipe-modal-accordion-trigger{margin-left:0;margin-right:0;padding-left:.5rem;padding-right:.5rem}.recipe-card-accordion-section .recipe-modal-accordion-label{font-size:1.0625rem}.recipe-body-editorial{color:var(--fg);font-size:.9375rem;line-height:1.5;margin-bottom:1.25rem;width:100%}.recipe-body-editorial--in-card{margin-top:.25rem}.recipe-body-editorial__grid{grid-gap:2rem 2.5rem;display:grid;gap:2rem 2.5rem;grid-template-columns:1fr}@media (min-width:768px){.recipe-body-editorial__grid{align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.recipe-body-editorial__section-header{align-items:baseline;display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:space-between;margin-bottom:.5rem}.recipe-body-editorial__title{color:var(--fg);font-family:Arsenal,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.8125rem;font-weight:700;letter-spacing:.12em;margin:0;text-transform:uppercase}.recipe-body-editorial__count{color:var(--text-meta);font-size:.75rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.recipe-body-editorial__rule{border:none;border-bottom:1px solid var(--rule);height:0;margin:0 0 .75rem}.recipe-body-editorial__rule--spaced{margin-bottom:.75rem;margin-top:1.5rem}.recipe-body-editorial__meta{grid-gap:.5rem 1rem;display:grid;gap:.5rem 1rem;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin:0 0 1rem;padding:0}.recipe-body-editorial__meta-row{margin:0}.recipe-body-editorial__meta-row dt{color:var(--text-meta);font-size:.6875rem;font-weight:600;letter-spacing:.04em;margin:0;text-transform:uppercase}.recipe-body-editorial__meta-row dd{color:var(--neutral-600);font-size:.8125rem;line-height:1.4;margin:.15rem 0 0}.recipe-body-editorial__ing-list{list-style:none;margin:0;padding:0}.recipe-body-editorial__ing-row{align-items:center;border-bottom:1px solid var(--neutral-200);display:flex;gap:.5rem .75rem;padding:.7rem .5rem .7rem .4rem}.recipe-body-editorial__ing-row[data-stripe=a]{background:var(--paper)}.recipe-body-editorial__ing-row[data-stripe=b]{background:var(--neutral-50)}.recipe-body-editorial__ing-dot{background:var(--gray-soft);border-radius:50%;flex-shrink:0;height:5px;margin-top:.1em;width:5px}.recipe-body-editorial__ing-name{color:var(--fg);flex:1 1 auto;font-weight:500;min-width:0}.recipe-body-editorial__ing-qty{color:var(--text-meta);flex-shrink:0;font-size:.875rem;text-align:right}.recipe-body-editorial__steps{list-style:none;margin:0;padding:0}.recipe-body-editorial__step{align-items:flex-start;display:flex;gap:.75rem 1rem;margin-bottom:1.25rem}.recipe-body-editorial__step:last-child{margin-bottom:.25rem}.recipe-body-editorial__step-num{color:var(--fg);flex-shrink:0;font-family:Playfair Display,Georgia,Times New Roman,serif;font-size:1.35rem;font-style:italic;font-weight:400;line-height:1.1;min-width:1.9rem}.recipe-body-editorial__step-text{color:var(--fg);padding-top:.1rem}.recipe-body-editorial__step-lead{color:var(--fg);font-weight:700}.recipe-body-editorial__step-body{display:block;white-space:pre-wrap}.recipe-body-editorial__empty{color:var(--text-meta);font-size:.875rem;margin:0}.recipe-body-editorial__tip{padding-top:.15rem}.recipe-body-editorial__tip-label{color:var(--fg);font-family:var(--font-sans);font-size:.75rem;font-weight:700;letter-spacing:.1em;margin:0 0 .35rem;text-transform:uppercase}.recipe-card--expanded{grid-column:1/-1}.recipe-card__summary--expanded{border-bottom:1px solid var(--neutral-200);padding-bottom:.75rem!important}.recipe-card__expanded-toolbar{align-items:center;display:flex;gap:12px;justify-content:space-between}.recipe-card__expanded-label{color:var(--text-meta);font-size:.6875rem;font-weight:700;letter-spacing:.14em;margin:0;text-transform:uppercase}.recipe-card-collapse{align-items:center;background:var(--neutral-50);border:1px solid var(--border-default);border-radius:8px;color:var(--neutral-600);cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:500;gap:6px;padding:6px 12px}.recipe-card-collapse:hover{background:var(--neutral-100)}.recipe-card__sheet{padding:0 1rem 1.25rem}@media (min-width:640px){.recipe-card__sheet{padding:0 1.5rem 1.5rem}}.recipe-card__admin-tags{align-items:center;border-top:1px solid var(--neutral-200);display:flex;flex-wrap:wrap;gap:8px;margin-top:1rem;padding-top:1rem}.recipe-card__admin-tags-label{color:var(--neutral-400);font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.recipe-card__meta-dates{color:var(--neutral-400);display:flex;flex-wrap:wrap;font-size:.75rem;gap:12px;margin-top:.75rem}.recipe-body-editorial__tip-text{color:var(--fg);font-family:Playfair Display,Georgia,serif;font-size:.95rem;font-style:italic;line-height:1.45;margin:0;white-space:pre-wrap}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:var(--neutral-50)}.modal-content::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:4px}.modal-content::-webkit-scrollbar-thumb:hover{background:var(--neutral-400)}.search-section{background:var(--paper);border:1px solid var(--alpha-black-05);border-radius:12px;box-shadow:0 2px 8px var(--alpha-black-10);margin-bottom:2rem;overflow:hidden;transition:all .3s ease}.search-section>div{margin:1rem;padding:1.5rem 2rem}.search-section input{background-color:var(--neutral-50);border:1px solid var(--neutral-200);border-radius:12px;color:var(--neutral-700);font-family:Arial,sans-serif;font-size:1rem;max-width:600px;padding:.75rem 3rem;transition:all .3s ease;width:60%}.search-section input:focus{background-color:#fff;border-color:var(--success);box-shadow:0 2px 8px var(--success-bg);outline:none}.search-section input::placeholder{color:var(--text-meta);font-size:.9375rem}.btn{border:1px solid #0000;border-radius:8px;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.btn-primary{background-color:var(--success);box-shadow:0 1px 2px var(--success-bg);color:#fff}.btn-primary:hover{background-color:var(--success-strong);box-shadow:0 4px 6px var(--success-bg);transform:translateY(-1px)}.btn-secondary{background-color:var(--neutral-50);border:1px solid var(--neutral-200);color:var(--neutral-500)}.btn-secondary:hover{background-color:var(--neutral-100);box-shadow:0 2px 4px var(--alpha-black-05);color:var(--neutral-700);transform:translateY(-1px)}.btn-icon{background-color:initial;border-radius:8px;color:var(--text-meta);padding:.5rem}.btn-icon:hover{background-color:var(--neutral-50);color:var(--neutral-700);transform:translateY(-1px)}.btn-danger{box-shadow:0 1px 2px var(--danger-bg);color:#fff}.btn-danger,.btn-danger:hover{background-color:var(--danger)}.btn-danger:hover{box-shadow:0 4px 6px var(--danger-bg);transform:translateY(-1px)}.filter-tag{background-color:var(--success-bg);border-radius:8px;color:var(--success);font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem}.filter-tag,.filter-tag button{align-items:center;display:inline-flex;transition:all .2s ease}.filter-tag button{background-color:initial;border-radius:6px;color:currentColor;justify-content:center;padding:.25rem}.filter-tag button:hover{opacity:1}.recipe-form-container{background-color:var(--paper);border-radius:16px;box-shadow:0 4px 20px var(--alpha-black-08);margin:2rem auto;max-width:900px;padding:2.5rem}.recipe-form{display:flex;flex-direction:column;gap:2.5rem}.form-section{background-color:var(--page-bg);border:1px solid var(--gray);border-radius:12px;padding:2rem;transition:all .3s ease}.form-section:hover{border-color:var(--green-med);box-shadow:0 2px 12px var(--shadow-soft)}.form-section-title{border-bottom:2px solid var(--green-med);color:var(--green-deep);font-family:var(--font-sans);font-size:1.5rem;font-weight:700;padding-bottom:.75rem}.form-row{gap:1.5rem}.form-group{min-width:200px}.form-label{color:var(--fg);font-family:var(--font-sans);font-size:1rem;font-weight:600;margin-bottom:.75rem}.form-input,.form-select,.form-textarea{background-color:var(--paper);border:2px solid var(--gray);border-radius:8px;color:var(--fg);font-family:var(--font-sans);padding:.875rem 1rem}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:var(--green-med)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--green-deep);box-shadow:0 0 0 3px var(--alpha-green-deep-10)}.form-textarea{line-height:1.5}.ingredients-list{display:flex;flex-direction:column;gap:1rem}.ingredient-item{grid-gap:1rem;background-color:var(--paper);border:1px solid var(--gray);border-radius:8px;display:grid;grid-template-columns:120px 120px 1fr 40px;padding:1.25rem;transition:all .3s ease}.ingredient-item:hover{border-color:var(--green-med);box-shadow:0 2px 8px var(--shadow-soft)}.ingredient-item input,.ingredient-item select{border:1px solid var(--gray);border-radius:6px;font-family:var(--font-sans);padding:.75rem;transition:all .3s ease;width:100%}.steps-list{display:flex;flex-direction:column;gap:1.25rem}.step-item{grid-gap:1rem;align-items:start;background-color:var(--paper);border:1px solid var(--gray);border-radius:8px;display:grid;gap:1rem;grid-template-columns:40px 1fr 40px;padding:1.25rem;transition:all .3s ease}.step-item:hover{border-color:var(--green-med);box-shadow:0 2px 8px var(--shadow-soft)}.step-number{align-items:center;background-color:var(--green-deep);border-radius:50%;color:var(--page-bg);display:flex;font-size:1rem;font-weight:700;height:32px;justify-content:center;width:32px}.step-description{flex:1 1}.form-buttons{margin-top:2.5rem}.btn-add{background-color:var(--green-deep);border:none;border-radius:8px;color:var(--page-bg);display:flex;font-family:var(--font-sans);font-size:1rem;font-weight:600;padding:.75rem 1.25rem;transition:all .3s ease}.btn-add:hover{background-color:var(--green-med);transform:translateY(-1px)}.btn-remove{align-items:center;background-color:initial;border:none;border-radius:6px;color:var(--danger);display:flex;justify-content:center;transition:all .3s ease}.btn-remove:hover{background-color:var(--danger-bg);transform:scale(1.1)}.btn-submit{background-color:var(--green-deep);border-radius:8px;color:var(--page-bg);font-family:var(--font-sans);font-size:1rem;font-weight:600;padding:.875rem 2rem;transition:all .3s ease}.btn-submit:hover{background-color:var(--green-med);box-shadow:0 4px 12px var(--alpha-green-deep-15);transform:translateY(-1px)}.btn-cancel{background-color:var(--gray);color:var(--fg);font-family:var(--font-sans);font-size:1rem;font-weight:600;padding:.875rem 2rem}.btn-cancel:hover{background-color:var(--green-slate);color:var(--page-bg);transform:translateY(-1px)}.error-text{font-family:var(--font-sans);margin-top:.5rem}.required-field:after{margin-left:.25rem}@media (max-width:768px){.recipe-form-container{margin:1rem;padding:1.5rem}.form-section{padding:1.5rem}.form-row{flex-direction:column;gap:1rem}.ingredient-item{gap:.75rem;grid-template-columns:1fr}.step-item{grid-template-columns:40px 1fr}.btn-remove{position:absolute;right:.5rem;top:.5rem}.form-buttons{flex-direction:column;gap:.75rem}.btn-cancel,.btn-submit{width:100%}}.form-section{position:relative}.form-section:before{background:linear-gradient(to right,var(--green-deep),var(--green-med));border-radius:4px 4px 0 0;content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.form-section:hover:before{opacity:1}.ingredient-item,.step-item{position:relative}.meal-plan-days{display:flex;flex-direction:column;gap:1rem}.meal-plan-modal-day{background:#fff;border:1px solid var(--neutral-100);border-radius:8px;padding:1.5rem;transition:all .3s ease}.meal-plan-modal-day:hover{border-color:var(--green-med);box-shadow:0 2px 8px var(--shadow-soft)}.meal-plan-modal-day-title{align-items:center;color:var(--green-deep);display:flex;font-family:var(--font-sans);font-size:1.1rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.meal-plan-modal-meal{background:var(--page-bg);border-radius:8px;padding:1.25rem;transition:all .2s ease}.meal-plan-modal-meal:hover{background:#fff;border-color:var(--green-med);box-shadow:0 2px 8px var(--shadow-soft)}.meal-plan-modal-meal-name{color:var(--fg);font-family:var(--font-sans);font-size:1.1rem;font-weight:500;margin-bottom:.5rem}.meal-plan-modal-meal-description{color:var(--neutral-500);font-size:.9rem;line-height:1.5;margin-bottom:.75rem}.meal-plan-modal-meal-portions{align-items:center;color:var(--text-meta);display:flex;font-size:.875rem;gap:.5rem}.shopping-list-table{background:#fff;border:1px solid var(--neutral-100);border-radius:8px;overflow:hidden}.shopping-list-table table{border-collapse:collapse;width:100%}.shopping-list-table th{background:var(--page-bg);border-bottom:2px solid var(--green-med);color:var(--green-deep);font-size:.875rem;font-weight:600;letter-spacing:.05em;padding:1rem;text-align:left;text-transform:uppercase}.shopping-list-table td{border-bottom:1px solid var(--neutral-100);color:var(--neutral-500);font-size:.95rem;padding:1rem}.shopping-list-table tr:last-child td{border-bottom:none}.shopping-list-table tr:hover td{background:var(--page-bg)}.text-right{text-align:right}.modal-section-title svg{color:var(--green-deep);height:1.25rem;width:1.25rem}.meal-days-container{display:flex;flex-direction:column;gap:1.5rem}.meal-day{border:1px solid var(--neutral-100);padding:1.5rem;transition:all .3s ease}.meal-day:hover{border-color:var(--green-med);box-shadow:0 2px 8px var(--shadow-soft)}.meal-day-title{border-bottom:1px solid var(--neutral-100);color:var(--green-deep);font-family:var(--font-sans);font-size:1.25rem;margin-bottom:1.25rem;padding-bottom:.75rem}.meal-selections{display:flex;flex-direction:column}.days-checkbox-group{grid-gap:1rem;background:#fff;border:1px solid var(--neutral-100);border-radius:8px;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));padding:1rem}.day-checkbox{background:var(--page-bg);border-radius:8px;font-family:var(--font-sans);gap:.75rem;padding:.75rem;transition:all .3s ease}.day-checkbox:hover{background:var(--neutral-100);transform:translateY(-1px)}.day-checkbox input[type=checkbox]{border:2px solid var(--green-med);border-radius:4px;height:1.25rem;width:1.25rem}.day-checkbox input[type=checkbox]:checked{background-color:var(--green-deep);border-color:var(--green-deep)}.day-checkbox span{color:var(--fg);font-size:1rem;font-weight:500}@media (max-width:768px){.meal-day{padding:1rem}.meal-selections{gap:.75rem}.days-checkbox-group{gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));padding:.75rem}.day-checkbox{padding:.5rem}}.hamburger-button-collapsed{align-items:center;background-color:var(--green-deep);border:none;border-radius:8px;box-shadow:0 2px 8px var(--alpha-black-10);cursor:pointer;display:none;flex-direction:column;gap:6px;height:40px;justify-content:center;left:1rem;padding:8px;position:fixed;top:1rem;transition:all .3s ease;width:40px;z-index:1002}.hamburger-button-collapsed:hover{background-color:var(--green-med);transform:scale(1.05)}.hamburger-button-collapsed span{background-color:var(--page-bg);display:block;height:2px;transform-origin:center;transition:all .3s ease;width:24px}.account-header{margin-bottom:2rem}.account-header h1{margin-bottom:.5rem}.message-container{align-items:center;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1rem}.message-container.success{background-color:var(--success-bg);border:1px solid var(--success-border);color:var(--success-strong)}.message-container.error{background-color:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-strong)}.message-container.info{background-color:var(--info-bg);border:1px solid var(--info-border);color:var(--info)}.message-content{align-items:center;display:flex;gap:.5rem}.message-icon{height:1.25rem;width:1.25rem}.message-close{background:none;border:none;border-radius:4px;color:inherit;cursor:pointer;padding:.25rem;transition:background-color .2s ease}.message-close:hover{background-color:var(--alpha-black-10)}.tabs-container{background-color:var(--paper);border-radius:8px;box-shadow:var(--shadow-card);margin-bottom:2rem;overflow:hidden}.tabs-header{border-bottom:1px solid var(--border-default)}.tabs-nav{display:flex;padding:0 1.5rem}.tab-button{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:var(--text-meta);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;margin-right:2rem;padding:1rem .25rem;transition:all .2s ease}.tab-button:hover{border-bottom-color:var(--neutral-300);color:var(--neutral-600)}.tab-button.active{border-bottom-color:var(--green-med);color:var(--green-med)}.tab-icon{height:1rem;width:1rem}.tab-content{padding:1.5rem}.account-form{display:flex;flex-direction:column;gap:1.5rem}.form-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-section{border-top:1px solid var(--border-default);padding-top:1.5rem}.form-section:first-child{border-top:none;padding-top:0}.section-title{align-items:center;color:var(--fg);display:flex;font-size:1.125rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.section-icon{color:var(--green-med);height:1.25rem;width:1.25rem}.required{color:var(--danger)}.form-input.error,.form-select.error{border-color:var(--danger)}.password-input-container{position:relative}.password-toggle{background:none;border:none;border-radius:4px;color:var(--text-meta);cursor:pointer;padding:.25rem;position:absolute;right:.75rem;top:50%;transform:translateY(-50%);transition:color .2s ease}.password-toggle:hover{color:var(--neutral-600)}.info-box{background-color:var(--info-bg);border:1px solid var(--info-border);border-radius:8px;padding:1rem}.info-content{align-items:flex-start;display:flex;gap:.75rem}.info-icon{color:var(--info);flex-shrink:0;height:1.25rem;margin-top:.125rem;width:1.25rem}.info-title{font-weight:600;margin-bottom:.25rem}.info-list,.info-title{color:var(--info);font-size:.875rem}.info-list{line-height:1.5}.info-list li{margin-bottom:.25rem}.toggle-group{display:flex;flex-direction:column;gap:1rem}.toggle-item{align-items:center;background-color:var(--neutral-50);border:1px solid var(--border-default);border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.toggle-info{flex:1 1}.toggle-title{color:var(--fg);font-size:.875rem;font-weight:600;margin-bottom:.25rem}.toggle-description{color:var(--text-meta);font-size:.875rem;line-height:1.4}.toggle-switch{cursor:pointer;display:inline-block;height:24px;position:relative;width:44px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:var(--neutral-300);border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;box-shadow:0 2px 4px var(--alpha-black-20);content:"";height:18px;left:3px;position:absolute;transition:.3s;width:18px}.toggle-switch input:checked+.toggle-slider{background-color:var(--green-med)}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.form-actions{border-top:1px solid var(--border-default);display:flex;justify-content:flex-end;padding-top:1rem}.account-actions{background-color:var(--paper);border-radius:8px;box-shadow:var(--shadow-card);padding:1.5rem}.action-item{background-color:var(--danger-bg);border:1px solid var(--danger-border);border-radius:8px;justify-content:space-between;padding:1rem}.action-info{flex:1 1}.action-title{color:var(--danger-strong);font-size:.875rem;font-weight:600;margin-bottom:.25rem}.action-description{color:var(--danger);font-size:.875rem}@media (max-width:768px){.tabs-nav{flex-direction:column;gap:0}.tab-button{border-bottom:none;border-left:3px solid #0000;margin-right:0;padding:1rem}.tab-button.active{background-color:var(--neutral-50);border-left-color:var(--green-med)}.form-grid{grid-template-columns:1fr}.action-item,.toggle-item{align-items:flex-start;flex-direction:column;gap:1rem}}.sidebar.collapsed+.hamburger-button-collapsed{display:flex}.login-container{align-items:center;background:linear-gradient(135deg,var(--green-deep) 0,var(--green-med) 100%);display:flex;justify-content:center;min-height:100vh;padding:1rem}.login-card{background:#fff;border:1px solid var(--neutral-200);border-radius:12px;box-shadow:var(--shadow-login);max-width:400px;padding:2rem;width:100%}.login-header{margin-bottom:2rem;text-align:center}.login-header h2{color:var(--green-deep);font-size:1.8rem;font-weight:600;margin-bottom:.5rem}.login-header p{color:var(--text-meta);margin:0}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-form .form-group{display:flex;flex-direction:column;gap:.5rem}.login-form .form-label{color:var(--neutral-600);font-size:.875rem;font-weight:500}.login-form .form-input{border:1px solid var(--neutral-300);border-radius:6px;font-size:1rem;padding:.75rem;transition:border-color .2s}.login-form .form-input:focus{border-color:var(--green-med);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.login-form .form-input:disabled{background-color:var(--neutral-50);cursor:not-allowed}.error-message{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:6px;font-size:.9rem;padding:.75rem}.login-btn{align-items:center;background:var(--green-deep);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;justify-content:center;min-height:44px;padding:.75rem;transition:background .2s}.login-btn:hover:not(:disabled){background:var(--green-med)}.login-btn:disabled{background:var(--neutral-400);cursor:not-allowed}.login-btn .loading-container{gap:.5rem}.login-btn .loading-container,.login-btn .loading-spinner{align-items:center;display:flex;justify-content:center}.login-btn .spinner{animation:spin 1s linear infinite;border:2px solid var(--alpha-white-30);border-radius:50%;border-top:2px solid #fff;height:16px;width:16px}.login-footer{border-top:1px solid var(--neutral-200);margin-top:1.5rem;padding-top:1.5rem;text-align:center}.login-footer p{color:var(--text-meta);font-size:.9rem;margin:0}.dropdown-menu{background:#fff;border:1px solid var(--neutral-300);border-radius:6px;box-shadow:0 4px 6px var(--alpha-black-10);z-index:1000}.dropdown-item:hover{background-color:var(--neutral-50)}.dropdown-item:last-child{border-bottom:none}.user-info{display:flex;flex-direction:column;gap:.25rem}.user-name{color:var(--neutral-800)}.user-email{font-size:.75rem}.days-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-top:1rem}.day-card{border-radius:8px;transition:all .2s ease}.day-card:hover{background-color:var(--neutral-50);border-color:var(--accent)}.day-checkbox{padding:1rem;position:relative}.day-checkbox input[type=checkbox]{cursor:pointer;opacity:0;position:absolute}.checkmark{background-color:#fff;border:2px solid var(--neutral-300);border-radius:4px;height:20px;position:absolute;right:1rem;top:1rem;transition:all .2s ease;width:20px}.day-checkbox input[type=checkbox]:checked~.checkmark{background-color:var(--accent);border-color:var(--accent)}.day-checkbox input[type=checkbox]:checked~.checkmark:after{color:#fff;content:"✓";font-size:12px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.day-content{width:100%}.day-label{text-align:center}.checkbox-label{color:var(--neutral-600);font-weight:500;gap:.75rem}.form-checkbox{background-color:#fff;border:2px solid var(--neutral-300);border-radius:4px;cursor:pointer;height:20px;position:relative;transition:all .2s ease;width:20px}.form-checkbox:checked{background-color:var(--accent);border-color:var(--accent)}.form-checkbox:checked:after{color:#fff;content:"✓";font-size:12px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.meals-container{display:flex;flex-direction:column;gap:2rem}.meal-day{background:#fff;border:1px solid var(--border-default);border-radius:12px;box-shadow:0 1px 3px var(--alpha-black-10);overflow:hidden}.meal-day-title{background:var(--neutral-50);border-bottom:1px solid var(--border-default);color:var(--neutral-800);margin:0;padding:1rem 1.5rem}.meal-selections{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));padding:1.5rem}@media (max-width:768px){.days-grid{gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.day-content{gap:.25rem}.day-icon{font-size:1.25rem}.day-label{font-size:.875rem}.meal-selections{grid-template-columns:1fr;padding:1rem}.dropdown-menu{max-height:150px}}.sidebar-user-section{background-color:var(--neutral-50);border-top:1px solid var(--neutral-200);margin-top:auto;padding:1rem}.user-info{background-color:#fff;border:1px solid var(--neutral-200);border-radius:8px;box-shadow:0 1px 3px var(--alpha-black-10);overflow:hidden}.user-details{border-bottom:1px solid var(--neutral-100);padding:1rem}.user-name{color:var(--fg);font-size:.9rem;font-weight:600;margin-bottom:.25rem}.user-role{color:var(--text-meta);font-size:.75rem;text-transform:capitalize}.user-actions{flex-direction:column}.user-action-btn,.user-actions{display:flex;gap:.5rem;padding:.75rem}.user-action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;justify-content:flex-start;text-decoration:none;transition:all .2s}.user-action-btn:hover{transform:translateY(-1px)}.user-action-btn:active{transform:translateY(0)}.settings-btn{background:var(--info-bg);border:1px solid var(--info-border);color:var(--info)}.settings-btn:hover{background:var(--info-bg);border-color:var(--info-border)}.settings-btn.active{background:var(--info);border-color:var(--info);color:#fff}.logout-btn{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger)}.logout-btn:hover{background:var(--danger-border);border-color:var(--danger-border)}.sidebar.collapsed .sidebar-user-section{padding:.5rem}.sidebar.collapsed .user-info{border-radius:6px}.sidebar.collapsed .user-details{border-bottom:none;padding:.5rem}.sidebar.collapsed .user-name,.sidebar.collapsed .user-role{display:none}.sidebar.collapsed .user-actions{gap:.25rem;padding:.25rem}.sidebar.collapsed .user-action-btn{font-size:.75rem;justify-content:center;padding:.5rem}.sidebar.collapsed .user-action-btn span{display:none}.ingredient-test-container{margin:0 auto;max-width:1200px;padding:20px}.ingredient-test-container h2{color:var(--neutral-700);font-size:1.5rem;font-weight:600;margin-bottom:20px;text-align:center}.test-section{background:#fff;border:1px solid var(--neutral-200);border-radius:8px;box-shadow:0 2px 4px var(--alpha-black-05);margin-bottom:20px;padding:20px}.test-section h3{border-bottom:2px solid var(--green-med);color:var(--neutral-700);font-size:1.125rem;font-weight:600;margin-bottom:15px;padding-bottom:8px}.test-textarea{border:2px solid var(--neutral-200);border-radius:6px;font-family:inherit;font-size:.875rem;line-height:1.5;padding:12px;resize:vertical;transition:border-color .2s;width:100%}.test-textarea:focus{border-color:var(--green-med);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.test-button{background:var(--green-med);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;margin-top:10px;padding:10px 20px;transition:background-color .2s}.test-button:hover{background:var(--green-deep)}.result-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.result-item{background:var(--neutral-50);border-left:4px solid var(--green-med);border-radius:6px;padding:12px}.result-item strong{color:var(--neutral-700);font-weight:600}.ingredients-section,.instructions-section{margin-top:20px}.ingredients-section h4,.instructions-section h4{color:var(--neutral-500);font-size:1rem;font-weight:600;margin-bottom:10px}.ingredients-section ul{list-style-type:disc;margin:0;padding-left:20px}.ingredients-section li{color:var(--neutral-500);font-size:.875rem;margin-bottom:5px}.instructions-section p{background:var(--neutral-50);border-left:4px solid var(--success);border-radius:6px;color:var(--neutral-500);font-size:.875rem;line-height:1.6;margin:0;padding:15px;white-space:pre-wrap}.validation-result{border-radius:6px;font-weight:500;margin-bottom:15px;padding:12px}.validation-result.valid{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-strong)}.validation-result.invalid{background:var(--danger-border);border:1px solid var(--danger-border);color:var(--danger)}@media (max-width:768px){.ingredient-test-container{padding:15px}.result-grid{grid-template-columns:1fr}.test-section{padding:15px}}a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{border:0;font-size:100%;font:inherit;margin:0;padding:0;vertical-align:initial}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0}.nice-form-group{--nf-input-size:1rem;--nf-input-font-size:calc(var(--nf-input-size)*0.875);--nf-small-font-size:calc(var(--nf-input-size)*0.875);--nf-input-font-family:inherit;--nf-label-font-family:inherit;--nf-input-color:var(--fg);--nf-input-border-radius:0.25rem;--nf-input-placeholder-color:var(--gray);--nf-input-border-color:var(--gray-soft);--nf-input-border-width:1px;--nf-input-border-style:solid;--nf-input-border-bottom-width:2px;--nf-input-focus-border-color:var(--info);--nf-input-background-color:var(--neutral-50);--nf-invalid-input-border-color:var(--nf-input-border-color);--nf-invalid-input-background-color:var(--nf-input-background-color);--nf-invalid-input-color:var(--nf-input-color);--nf-valid-input-border-color:var(--nf-input-border-color);--nf-valid-input-background-color:var(--nf-input-background-color);--nf-valid-input-color:inherit;--nf-invalid-input-border-bottom-color:red;--nf-valid-input-border-bottom-color:green;--nf-label-font-size:var(--nf-small-font-size);--nf-label-color:var(--neutral-600);--nf-label-font-weight:500;--nf-slider-track-background:var(--rule);--nf-slider-track-height:0.25rem;--nf-slider-thumb-size:calc(var(--nf-slider-track-height)*4);--nf-slider-track-border-radius:var(--nf-slider-track-height);--nf-slider-thumb-border-width:2px;--nf-slider-thumb-border-focus-width:1px;--nf-slider-thumb-border-color:var(--paper);--nf-slider-thumb-background:var(--nf-input-focus-border-color);--switch-orb-size:var(--nf-input-size);--switch-orb-offset:calc(var(--nf-input-border-width)*2);--switch-width:calc(var(--nf-input-size)*2.5);--switch-height:calc(var(--nf-input-size)*1.25 + var(--switch-orb-offset));display:block;line-height:1;margin-top:calc(var(--nf-input-size)*1.5);white-space:nowrap}.nice-form-group>label{color:var(--nf-label-color);display:block;font-family:var(--nf-label-font-family);font-size:var(--nf-label-font-size);font-weight:var(--nf-label-font-weight);margin-bottom:calc(var(--nf-input-size)/2);white-space:normal}.nice-form-group>label+small{font-style:normal}.nice-form-group small{display:block;font-family:var(--nf-input-font-family);font-size:var(--nf-small-font-size);font-weight:400;margin-bottom:calc(var(--nf-input-size)*.75);opacity:.75}.nice-form-group small:last-child{margin-bottom:0}.nice-form-group>legend{color:var(--nf-label-color);display:block;font-family:var(--nf-label-font-family);font-size:var(--nf-label-font-size);font-weight:var(--nf-label-font-weight);margin-bottom:calc(var(--nf-input-size)/5)}.nice-form-group>.nice-form-group{margin-top:calc(var(--nf-input-size)/2)}.nice-form-group>input[type=checkbox],.nice-form-group>input[type=date],.nice-form-group>input[type=email],.nice-form-group>input[type=month],.nice-form-group>input[type=number],.nice-form-group>input[type=password],.nice-form-group>input[type=radio],.nice-form-group>input[type=search],.nice-form-group>input[type=tel],.nice-form-group>input[type=text],.nice-form-group>input[type=time],.nice-form-group>input[type=url],.nice-form-group>input[type=week],.nice-form-group>select,.nice-form-group>textarea{--icon-padding:calc(var(--nf-input-size)*2.25);--icon-background-offset:calc(var(--nf-input-size)*0.75);-webkit-appearance:none;appearance:none;background:var(--nf-input-background-color);border-bottom-width:var(--nf-input-border-width);border:var(--nf-input-border-width) var(--nf-input-border-style) var(--nf-input-border-color);border-bottom:var(--nf-input-border-bottom-width) var(--nf-input-border-style) var(--nf-input-border-color);border-radius:var(--nf-input-border-radius);box-shadow:none;color:var(--nf-input-color);font-family:inherit;font-family:var(--nf-input-font-family);font-size:var(--nf-input-font-size);height:calc(var(--nf-input-size)*2.75);line-height:normal;padding:calc(var(--nf-input-size)*.75);transition:all .15s ease-out;width:100%}.nice-form-group>input[type=checkbox]:required:not(:placeholder-shown):invalid,.nice-form-group>input[type=date]:required:not(:placeholder-shown):invalid,.nice-form-group>input[type=email]:required:not(:placeholder-shown):invalid,.nice-form-group>input[type=month]:required:not(:placeholder-shown):invalid,.nice-form-group>input[type=number]:required:not(:placeholder-shown):invalid,.nice-form-group>input[type=password]:required:not(:placeholder-shown):invalid,.nice-form-group>input[type=radio]:required:not(:placeholder-shown):invalid,.nice-form-group>input[type=search]:required:not(:placeholder-shown):invalid,.nice-form-group>input[type=tel]:required:not(:placeholder-shown):invalid,.nice-form-group>input[type=text]:required:not(:placeholder-shown):invalid,.nice-form-group>input[type=time]:required:not(:placeholder-shown):invalid,.nice-form-group>input[type=url]:required:not(:placeholder-shown):invalid,.nice-form-group>input[type=week]:required:not(:placeholder-shown):invalid,.nice-form-group>select:required:not(:placeholder-shown):invalid,.nice-form-group>textarea:required:not(:placeholder-shown):invalid{background-color:var(--nf-invalid-input-background-color);border-bottom-color:var(--nf-valid-input-border-color);border-color:var(--nf-valid-input-border-color) var(--nf-valid-input-border-color) var(--nf-invalid-input-border-bottom-color);color:var(--nf-invalid-input-color)}.nice-form-group>input[type=checkbox]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>input[type=date]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>input[type=email]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>input[type=month]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>input[type=number]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>input[type=password]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>input[type=radio]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>input[type=search]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>input[type=tel]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>input[type=text]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>input[type=time]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>input[type=url]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>input[type=week]:required:not(:placeholder-shown):invalid:focus,.nice-form-group>select:required:not(:placeholder-shown):invalid:focus,.nice-form-group>textarea:required:not(:placeholder-shown):invalid:focus{background-color:var(--nf-input-background-color);border-color:var(--nf-input-border-color);color:var(--nf-input-color)}.nice-form-group>input[type=checkbox]:required:not(:placeholder-shown):valid,.nice-form-group>input[type=date]:required:not(:placeholder-shown):valid,.nice-form-group>input[type=email]:required:not(:placeholder-shown):valid,.nice-form-group>input[type=month]:required:not(:placeholder-shown):valid,.nice-form-group>input[type=number]:required:not(:placeholder-shown):valid,.nice-form-group>input[type=password]:required:not(:placeholder-shown):valid,.nice-form-group>input[type=radio]:required:not(:placeholder-shown):valid,.nice-form-group>input[type=search]:required:not(:placeholder-shown):valid,.nice-form-group>input[type=tel]:required:not(:placeholder-shown):valid,.nice-form-group>input[type=text]:required:not(:placeholder-shown):valid,.nice-form-group>input[type=time]:required:not(:placeholder-shown):valid,.nice-form-group>input[type=url]:required:not(:placeholder-shown):valid,.nice-form-group>input[type=week]:required:not(:placeholder-shown):valid,.nice-form-group>select:required:not(:placeholder-shown):valid,.nice-form-group>textarea:required:not(:placeholder-shown):valid{background-color:var(--nf-valid-input-background-color);border-bottom-color:var(--nf-valid-input-border-color);border-color:var(--nf-valid-input-border-color) var(--nf-valid-input-border-color) var(--nf-valid-input-border-bottom-color);color:var(--nf-valid-input-color)}.nice-form-group>input[type=checkbox]:disabled,.nice-form-group>input[type=date]:disabled,.nice-form-group>input[type=email]:disabled,.nice-form-group>input[type=month]:disabled,.nice-form-group>input[type=number]:disabled,.nice-form-group>input[type=password]:disabled,.nice-form-group>input[type=radio]:disabled,.nice-form-group>input[type=search]:disabled,.nice-form-group>input[type=tel]:disabled,.nice-form-group>input[type=text]:disabled,.nice-form-group>input[type=time]:disabled,.nice-form-group>input[type=url]:disabled,.nice-form-group>input[type=week]:disabled,.nice-form-group>select:disabled,.nice-form-group>textarea:disabled{cursor:not-allowed;opacity:.75}.nice-form-group>input[type=checkbox]::-webkit-input-placeholder,.nice-form-group>input[type=date]::-webkit-input-placeholder,.nice-form-group>input[type=email]::-webkit-input-placeholder,.nice-form-group>input[type=month]::-webkit-input-placeholder,.nice-form-group>input[type=number]::-webkit-input-placeholder,.nice-form-group>input[type=password]::-webkit-input-placeholder,.nice-form-group>input[type=radio]::-webkit-input-placeholder,.nice-form-group>input[type=search]::-webkit-input-placeholder,.nice-form-group>input[type=tel]::-webkit-input-placeholder,.nice-form-group>input[type=text]::-webkit-input-placeholder,.nice-form-group>input[type=time]::-webkit-input-placeholder,.nice-form-group>input[type=url]::-webkit-input-placeholder,.nice-form-group>input[type=week]::-webkit-input-placeholder,.nice-form-group>select::-webkit-input-placeholder,.nice-form-group>textarea::-webkit-input-placeholder{color:var(--nf-input-placeholder-color);letter-spacing:0}.nice-form-group>input[type=checkbox]:-ms-input-placeholder,.nice-form-group>input[type=date]:-ms-input-placeholder,.nice-form-group>input[type=email]:-ms-input-placeholder,.nice-form-group>input[type=month]:-ms-input-placeholder,.nice-form-group>input[type=number]:-ms-input-placeholder,.nice-form-group>input[type=password]:-ms-input-placeholder,.nice-form-group>input[type=radio]:-ms-input-placeholder,.nice-form-group>input[type=search]:-ms-input-placeholder,.nice-form-group>input[type=tel]:-ms-input-placeholder,.nice-form-group>input[type=text]:-ms-input-placeholder,.nice-form-group>input[type=time]:-ms-input-placeholder,.nice-form-group>input[type=url]:-ms-input-placeholder,.nice-form-group>input[type=week]:-ms-input-placeholder,.nice-form-group>select:-ms-input-placeholder,.nice-form-group>textarea:-ms-input-placeholder{color:var(--nf-input-placeholder-color);letter-spacing:0}.nice-form-group>input[type=checkbox]:-moz-placeholder,.nice-form-group>input[type=checkbox]::-moz-placeholder,.nice-form-group>input[type=date]:-moz-placeholder,.nice-form-group>input[type=date]::-moz-placeholder,.nice-form-group>input[type=email]:-moz-placeholder,.nice-form-group>input[type=email]::-moz-placeholder,.nice-form-group>input[type=month]:-moz-placeholder,.nice-form-group>input[type=month]::-moz-placeholder,.nice-form-group>input[type=number]:-moz-placeholder,.nice-form-group>input[type=number]::-moz-placeholder,.nice-form-group>input[type=password]:-moz-placeholder,.nice-form-group>input[type=password]::-moz-placeholder,.nice-form-group>input[type=radio]:-moz-placeholder,.nice-form-group>input[type=radio]::-moz-placeholder,.nice-form-group>input[type=search]:-moz-placeholder,.nice-form-group>input[type=search]::-moz-placeholder,.nice-form-group>input[type=tel]:-moz-placeholder,.nice-form-group>input[type=tel]::-moz-placeholder,.nice-form-group>input[type=text]:-moz-placeholder,.nice-form-group>input[type=text]::-moz-placeholder,.nice-form-group>input[type=time]:-moz-placeholder,.nice-form-group>input[type=time]::-moz-placeholder,.nice-form-group>input[type=url]:-moz-placeholder,.nice-form-group>input[type=url]::-moz-placeholder,.nice-form-group>input[type=week]:-moz-placeholder,.nice-form-group>input[type=week]::-moz-placeholder,.nice-form-group>select:-moz-placeholder,.nice-form-group>select::-moz-placeholder,.nice-form-group>textarea:-moz-placeholder,.nice-form-group>textarea::-moz-placeholder{color:var(--nf-input-placeholder-color);letter-spacing:0}.nice-form-group>input[type=checkbox]:focus,.nice-form-group>input[type=date]:focus,.nice-form-group>input[type=email]:focus,.nice-form-group>input[type=month]:focus,.nice-form-group>input[type=number]:focus,.nice-form-group>input[type=password]:focus,.nice-form-group>input[type=radio]:focus,.nice-form-group>input[type=search]:focus,.nice-form-group>input[type=tel]:focus,.nice-form-group>input[type=text]:focus,.nice-form-group>input[type=time]:focus,.nice-form-group>input[type=url]:focus,.nice-form-group>input[type=week]:focus,.nice-form-group>select:focus,.nice-form-group>textarea:focus{border-color:var(--nf-input-focus-border-color);outline:none}.nice-form-group>input[type=checkbox]+small,.nice-form-group>input[type=date]+small,.nice-form-group>input[type=email]+small,.nice-form-group>input[type=month]+small,.nice-form-group>input[type=number]+small,.nice-form-group>input[type=password]+small,.nice-form-group>input[type=radio]+small,.nice-form-group>input[type=search]+small,.nice-form-group>input[type=tel]+small,.nice-form-group>input[type=text]+small,.nice-form-group>input[type=time]+small,.nice-form-group>input[type=url]+small,.nice-form-group>input[type=week]+small,.nice-form-group>select+small,.nice-form-group>textarea+small{margin-top:.5rem}.nice-form-group>input[type=checkbox].icon-left,.nice-form-group>input[type=date].icon-left,.nice-form-group>input[type=email].icon-left,.nice-form-group>input[type=month].icon-left,.nice-form-group>input[type=number].icon-left,.nice-form-group>input[type=password].icon-left,.nice-form-group>input[type=radio].icon-left,.nice-form-group>input[type=search].icon-left,.nice-form-group>input[type=tel].icon-left,.nice-form-group>input[type=text].icon-left,.nice-form-group>input[type=time].icon-left,.nice-form-group>input[type=url].icon-left,.nice-form-group>input[type=week].icon-left,.nice-form-group>select.icon-left,.nice-form-group>textarea.icon-left{background-position:left var(--icon-background-offset) bottom 50%;background-size:var(--nf-input-size);padding-left:var(--icon-padding)}.nice-form-group>input[type=checkbox].icon-right,.nice-form-group>input[type=date].icon-right,.nice-form-group>input[type=email].icon-right,.nice-form-group>input[type=month].icon-right,.nice-form-group>input[type=number].icon-right,.nice-form-group>input[type=password].icon-right,.nice-form-group>input[type=radio].icon-right,.nice-form-group>input[type=search].icon-right,.nice-form-group>input[type=tel].icon-right,.nice-form-group>input[type=text].icon-right,.nice-form-group>input[type=time].icon-right,.nice-form-group>input[type=url].icon-right,.nice-form-group>input[type=week].icon-right,.nice-form-group>select.icon-right,.nice-form-group>textarea.icon-right{background-position:right var(--icon-background-offset) bottom 50%;background-size:var(--nf-input-size);padding-right:var(--icon-padding)}.nice-form-group>input[type=checkbox]:-webkit-autofill,.nice-form-group>input[type=date]:-webkit-autofill,.nice-form-group>input[type=email]:-webkit-autofill,.nice-form-group>input[type=month]:-webkit-autofill,.nice-form-group>input[type=number]:-webkit-autofill,.nice-form-group>input[type=password]:-webkit-autofill,.nice-form-group>input[type=radio]:-webkit-autofill,.nice-form-group>input[type=search]:-webkit-autofill,.nice-form-group>input[type=tel]:-webkit-autofill,.nice-form-group>input[type=text]:-webkit-autofill,.nice-form-group>input[type=time]:-webkit-autofill,.nice-form-group>input[type=url]:-webkit-autofill,.nice-form-group>input[type=week]:-webkit-autofill,.nice-form-group>select:-webkit-autofill,.nice-form-group>textarea:-webkit-autofill{padding:calc(var(--nf-input-size)*.75)!important}.nice-form-group>input[type=search]:placeholder-shown{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-search'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E");background-position:left calc(var(--nf-input-size)*.75) bottom 50%;background-repeat:no-repeat;background-size:var(--nf-input-size);padding-left:calc(var(--nf-input-size)*2.25)}.nice-form-group>input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-x'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E");height:var(--nf-input-size);width:var(--nf-input-size)}.nice-form-group>input[type=search]:focus{background-position:left calc(var(--nf-input-size)*-1) bottom 50%;padding-left:calc(var(--nf-input-size)*.75)}.nice-form-group>input[type=email][class^=icon]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-at-sign'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-3.92 7.94'/%3E%3C/svg%3E");background-repeat:no-repeat}.nice-form-group>input[type=tel][class^=icon]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-phone'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E");background-repeat:no-repeat}.nice-form-group>input[type=url][class^=icon]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-link'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/svg%3E");background-repeat:no-repeat}.nice-form-group>input[type=password]{letter-spacing:2px}.nice-form-group>input[type=password][class^=icon]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-lock'%3E%3Crect x='3' y='11' width='18' height='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E");background-repeat:no-repeat}.nice-form-group>input[type=range]{-webkit-appearance:none;cursor:pointer;width:100%}.nice-form-group>input[type=range]:focus{outline:none}.nice-form-group>input[type=range]::-webkit-slider-runnable-track{background:var(--nf-slider-track-background);border-radius:var(--nf-slider-track-border-radius);height:var(--nf-slider-track-height);width:100%}.nice-form-group>input[type=range]::-moz-range-track{background:var(--nf-slider-track-background);border-radius:var(--nf-slider-track-border-radius);height:var(--nf-slider-track-height);width:100%}.nice-form-group>input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--nf-slider-thumb-background);border:0;border:var(--nf-slider-thumb-border-width) solid var(--nf-slider-thumb-border-color);border-radius:var(--nf-slider-thumb-size);height:var(--nf-slider-thumb-size);margin-top:calc(var(--nf-slider-track-height)*.5 - var(--nf-slider-thumb-size)*.5);width:var(--nf-slider-thumb-size)}.nice-form-group>input[type=range]::-moz-range-thumb{appearance:none;background:var(--nf-slider-thumb-background);border:0;border:var(--nf-slider-thumb-border-width) solid var(--nf-slider-thumb-border-color);border-radius:var(--nf-slider-thumb-size);box-sizing:border-box;height:var(--nf-slider-thumb-size);width:var(--nf-slider-thumb-size)}.nice-form-group>input[type=range]:focus::-webkit-slider-thumb{box-shadow:0 0 0 var(--nf-slider-thumb-border-focus-width) var(--nf-slider-thumb-background)}.nice-form-group>input[type=range]:focus::-moz-range-thumb{box-shadow:0 0 0 var(--nf-slider-thumb-border-focus-width) var(--nf-slider-thumb-background)}.nice-form-group>input[type=color]{border:var(--nf-input-border-width) solid var(--nf-input-border-color);border-bottom-width:var(--nf-input-border-bottom-width);border-radius:var(--nf-input-border-radius);height:calc(var(--nf-input-size)*2);padding:calc(var(--nf-input-border-width)*2)}.nice-form-group>input[type=color]:focus{border-color:var(--nf-input-focus-border-color);outline:none}.nice-form-group>input[type=color]::-webkit-color-swatch-wrapper{padding:5%}.nice-form-group>input[type=color]::-moz-color-swatch{border:none;border-radius:calc(var(--nf-input-border-radius)/2)}.nice-form-group>input[type=color]::-webkit-color-swatch{border:none;border-radius:calc(var(--nf-input-border-radius)/2)}.nice-form-group>input[type=number]{width:auto}.nice-form-group>input[type=date],.nice-form-group>input[type=month],.nice-form-group>input[type=week]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-calendar'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cpath d='M16 2v4M8 2v4m-5 4h18'/%3E%3C/svg%3E");min-width:14em}.nice-form-group>input[type=time]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-clock'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/svg%3E");min-width:6em}.nice-form-group>input[type=date],.nice-form-group>input[type=month],.nice-form-group>input[type=time],.nice-form-group>input[type=week]{background-position:right calc(var(--nf-input-size)*.75) bottom 50%;background-repeat:no-repeat;background-size:var(--nf-input-size);width:auto}.nice-form-group>input[type=date]::-webkit-calendar-picker-indicator,.nice-form-group>input[type=date]::-webkit-inner-spin-button,.nice-form-group>input[type=month]::-webkit-calendar-picker-indicator,.nice-form-group>input[type=month]::-webkit-inner-spin-button,.nice-form-group>input[type=time]::-webkit-calendar-picker-indicator,.nice-form-group>input[type=time]::-webkit-inner-spin-button,.nice-form-group>input[type=week]::-webkit-calendar-picker-indicator,.nice-form-group>input[type=week]::-webkit-inner-spin-button{-webkit-appearance:none;cursor:pointer;opacity:0}@-moz-document url-prefix(){.nice-form-group>input[type=date],.nice-form-group>input[type=month],.nice-form-group>input[type=time],.nice-form-group>input[type=week]{background-image:none;min-width:auto;width:auto}}.nice-form-group>textarea{height:auto}.nice-form-group>input[type=checkbox],.nice-form-group>input[type=radio]{background-position:50%;border-radius:calc(var(--nf-input-border-radius)/2);border-width:var(--nf-input-border-width);cursor:pointer;display:inline-block;height:var(--nf-input-size);margin:0;padding:inherit;vertical-align:top;width:var(--nf-input-size)}.nice-form-group>input[type=checkbox]:focus:not(:checked),.nice-form-group>input[type=radio]:focus:not(:checked){border:var(--nf-input-border-width) solid var(--nf-input-focus-border-color);outline:none}.nice-form-group>input[type=checkbox]:hover,.nice-form-group>input[type=radio]:hover{border:var(--nf-input-border-width) solid var(--nf-input-focus-border-color)}.nice-form-group>input[type=checkbox]+label,.nice-form-group>input[type=radio]+label{cursor:pointer;display:inline-block;font-weight:400;line-height:normal;margin-bottom:0;max-width:calc(100% - var(--nf-input-size)*2);padding-left:calc(var(--nf-input-size)/2.5);-webkit-user-select:none;user-select:none}.nice-form-group>input[type=checkbox]+label>small,.nice-form-group>input[type=radio]+label>small{margin-top:calc(var(--nf-input-size)/4)}.nice-form-group>input[type=checkbox]:checked{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23FFF' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' class='feather feather-check'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") no-repeat 50%/85%;background-color:var(--nf-input-focus-border-color);border-color:var(--nf-input-focus-border-color)}.nice-form-group>input[type=radio]{border-radius:100%}.nice-form-group>input[type=radio]:checked{background-color:var(--nf-input-focus-border-color);border-color:var(--nf-input-focus-border-color);box-shadow:inset 0 0 0 3px var(--paper)}.nice-form-group>input[type=checkbox].switch{border-radius:var(--switch-height);height:var(--switch-height);position:relative;width:var(--switch-width)}.nice-form-group>input[type=checkbox].switch:after{background:var(--nf-input-border-color);border-radius:var(--switch-orb-size);content:"";height:var(--switch-orb-size);left:var(--switch-orb-offset);position:absolute;top:50%;transform:translateY(-50%);transition:all .2s ease-out;width:var(--switch-orb-size)}.nice-form-group>input[type=checkbox].switch+label{margin-top:calc(var(--switch-height)/8)}.nice-form-group>input[type=checkbox].switch:checked{background:none;background-color:var(--nf-input-focus-border-color);background-position:0 0}.nice-form-group>input[type=checkbox].switch:checked:after{background:var(--paper);transform:translateY(-50%) translateX(calc(var(--switch-width)/2 - var(--switch-orb-offset)))}.nice-form-group>input[type=file]{background:var(--alpha-black-04);border:1px dashed var(--nf-input-border-color);border-radius:var(--nf-input-border-radius);cursor:pointer;display:block;outline:none;padding:var(--nf-input-size);width:100%}.nice-form-group>input[type=file]:focus,.nice-form-group>input[type=file]:hover{border-color:var(--nf-input-focus-border-color)}.nice-form-group>input[type=file]::file-selector-button{-webkit-appearance:none;appearance:none;background:var(--nf-input-focus-border-color);border:0;border-radius:var(--nf-input-border-radius);color:var(--paper);cursor:pointer;font-family:var(--nf-input-font-family);margin-right:1rem;outline:none;padding:.5rem}.nice-form-group>input[type=file]::-webkit-file-upload-button{-webkit-appearance:none;appearance:none;background:var(--nf-input-focus-border-color);border:0;border-radius:var(--nf-input-border-radius);color:var(--paper);cursor:pointer;font-family:var(--nf-input-font-family);margin-right:1rem;outline:none;padding:.5rem}.nice-form-group>select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-chevron-down'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right calc(var(--nf-input-size)*.75) bottom 50%;background-repeat:no-repeat;background-size:var(--nf-input-size)}*,:after,:before{box-sizing:inherit}html{box-sizing:border-box;font-size:16px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--paper-tint);color:var(--neutral-500);font-family:Roboto,sans-serif}.demo-page{display:flex;margin:0 auto;max-width:55em}.demo-page .demo-page-navigation{padding:2em 1em;width:18em}@media only screen and (max-width:750px){.demo-page .demo-page-navigation{display:none}}.demo-page .demo-page-navigation nav{background:var(--paper);border-radius:.75rem;box-shadow:0 10px 15px -3px var(--alpha-black-10),0 4px 6px -2px var(--alpha-black-05);padding:.5em;position:-webkit-sticky;position:sticky;top:2em}.demo-page .demo-page-navigation a{align-items:center;border-radius:.25em;color:var(--neutral-600);display:flex;padding:.75em 1em;text-decoration:none}.demo-page .demo-page-navigation a:hover{background:var(--neutral-100)}.demo-page .demo-page-navigation a svg{color:var(--neutral-800);height:1.25em;margin-right:1em;width:1.25em}.demo-page .demo-page-content{max-width:100%;padding:2em 1em}@media only screen and (min-width:750px){.demo-page .demo-page-content{width:calc(100% - 18em)}}footer{margin:2.5em 0;text-align:center}.href-target{position:absolute;top:-2em}.to-repo,.to-reset{align-items:center;border-radius:5px;color:var(--paper);display:inline-flex;padding:.5em 1em;text-decoration:none;transition:background .2s ease-out}.to-repo,.to-repo:hover,.to-reset,.to-reset:hover{background:var(--fg)}.to-repo svg,.to-reset svg{height:1.125rem;margin-right:.75em;width:1.125rem}.to-reset,.to-reset:hover{background:var(--info)}section{background:var(--paper);border-radius:.75rem;box-shadow:0 10px 15px -3px var(--alpha-black-10),0 4px 6px -2px var(--alpha-black-05);font-size:.875rem;line-height:1.6;margin-bottom:2rem;overflow:hidden;padding:2em;position:relative}section h1{color:var(--fg);font-size:1.25rem;font-weight:500;margin-bottom:.75rem}section h1 svg{display:inline-block;height:1em;margin-right:.25em;vertical-align:-10%;width:1em}section h1.package-name{font-size:2rem;margin-bottom:.75rem;margin-top:-.5rem}section strong{color:var(--fg);font-weight:500}section p{margin:.5rem 0 1.5rem}section p a{color:var(--info);font-weight:500;text-decoration:none}section p:last-child{margin-bottom:0}section code{background:var(--neutral-100);border-radius:3px;content:"";font-family:Consolas,monaco,monospace;font-weight:500;margin:0 2px;padding:2px 5px;position:relative;white-space:nowrap;z-index:1}section ul{list-style-type:disc;margin-top:.5em;padding-left:1em}details{background:var(--neutral-100);margin:2em -2em -2em;padding:1.5em 2em}details .gist{margin-top:1.5em}details .toggle-code{border-radius:5px;color:var(--paper);cursor:pointer;display:inline-block;font-size:.875rem;font-weight:500;padding:.5em 1em;right:1em;top:1em;-webkit-user-select:none;user-select:none}details .toggle-code,details .toggle-code:hover{background:var(--success)}details .toggle-code svg{display:inline-block;margin-right:.25em;vertical-align:-15%}details summary{list-style-type:none;outline:none}details summary::marker{display:none}details summary::-webkit-details-marker{display:none}:root{--color-background:var(--page-bg);--color-text-primary:var(--fg);--color-text-secondary:var(--green-med);--color-accent-primary:var(--green-deep);--color-accent-secondary:var(--green-slate);--color-neutral:var(--gray);--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:1rem;--shadow-sm:0 1px 2px var(--alpha-black-05);--shadow-md:0 4px 6px var(--alpha-black-10);--shadow-lg:0 10px 15px var(--alpha-black-10)}.card{background-color:var(--paper);border:1px solid var(--color-neutral);border-radius:1rem;border-radius:var(--radius-lg);box-shadow:0 1px 2px var(--alpha-black-05);box-shadow:var(--shadow-sm);transition:box-shadow .3s ease}.card:hover{box-shadow:0 4px 6px var(--alpha-black-10);box-shadow:var(--shadow-md)}.card-header{border-bottom:1px solid var(--color-background);padding:1.5rem;padding:var(--spacing-lg)}.card-title{color:var(--green-deep);color:var(--color-accent-primary);font-family:var(--font-sans);font-size:1.5rem;font-weight:700;line-height:1.2;margin:0}.card-content{padding:1.5rem;padding:var(--spacing-lg)}.card--recipe{overflow:hidden}.card--recipe img{height:200px;object-fit:cover;width:100%}.card--planner{background-color:var(--page-bg);background-color:var(--color-background)}.button{border:none;border-radius:.5rem;border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-sans);font-weight:500;padding:.5rem 1.5rem;padding:var(--spacing-sm) var(--spacing-lg);transition:all .3s ease}.button--primary{background-color:var(--green-deep);background-color:var(--color-accent-primary);color:var(--paper)}.button--primary:hover{background-color:var(--green-slate);background-color:var(--color-accent-secondary)}.button--secondary{background-color:var(--page-bg);background-color:var(--color-background);border:1px solid var(--color-neutral);color:var(--green-med);color:var(--color-text-secondary)}.button--secondary:hover{background-color:var(--gray);background-color:var(--color-neutral);color:var(--paper)}.input{border:1px solid var(--color-neutral);border-radius:.5rem;border-radius:var(--radius-md);font-family:var(--font-sans);padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);transition:border-color .3s ease;width:100%}.input:focus{border-color:var(--color-accent-secondary);outline:none}.grid{grid-gap:1rem;grid-gap:var(--spacing-md);gap:1rem;gap:var(--spacing-md)}.grid--2-cols{grid-template-columns:repeat(2,1fr)}.grid--3-cols{grid-template-columns:repeat(3,1fr)}@media (max-width:768px){.grid--2-cols,.grid--3-cols{grid-template-columns:1fr}.card-content,.card-header{padding:1rem;padding:var(--spacing-md)}}.fade-in{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}:focus{outline:2px solid var(--green-slate);outline:2px solid var(--color-accent-secondary);outline-offset:2px}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.streamlined-form{background:var(--neutral-50);min-height:100vh}.streamlined-form-container{background:var(--neutral-50);margin:0 auto;max-width:4xl;min-height:calc(100vh - 4rem);padding:2rem 1rem}@media (min-width:768px){.streamlined-form-container{padding:2rem}}@media (min-width:1024px){.streamlined-form-container{max-width:64rem}}.step-indicator{display:flex;justify-content:space-between;margin-bottom:2rem;position:relative}.step-indicator:before{background:var(--border-default);content:"";height:2px;left:0;position:absolute;right:0;top:24px;z-index:1}.step-item{background:var(--neutral-50);flex-direction:column;padding:0 1rem;position:relative;z-index:2}.step-circle,.step-item{align-items:center;display:flex}.step-circle{border-radius:50%;font-weight:600;height:48px;justify-content:center;margin-bottom:.5rem;transition:all .3s ease;width:48px}.step-circle.active{background:var(--info);color:var(--paper)}.step-circle.completed{background:var(--success);color:var(--paper)}.step-circle.pending{background:var(--border-default);color:var(--text-meta)}.step-title{font-size:.875rem;font-weight:500;margin-bottom:.25rem;text-align:center}.step-description{color:var(--text-meta);font-size:.75rem;text-align:center}.form-step{border-radius:.5rem;box-shadow:0 1px 3px 0 var(--alpha-black-10);margin-bottom:2rem;padding:2rem}.day-card,.form-step{background:var(--paper)}.day-card{border:2px solid var(--border-default);border-radius:.5rem;cursor:pointer;padding:1rem;transition:all .3s ease}.day-card:hover{border-color:var(--info);box-shadow:0 4px 6px -1px var(--alpha-black-10);transform:translateY(-2px)}.day-card.selected{background:var(--select-active-bg);border-color:var(--info)}.day-checkbox{cursor:pointer;width:100%}.day-checkbox,.day-content{align-items:center;display:flex}.day-content{flex-direction:column;gap:.5rem}.day-icon{font-size:1.5rem}.day-label{color:var(--neutral-600);font-weight:500}.meal-day-card{background:var(--neutral-50);border:1px solid var(--border-default);border-radius:.5rem;margin-bottom:1rem;padding:1.5rem}.meal-day-title{align-items:center;color:var(--neutral-600);display:flex;font-size:1.125rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.review-section{background:var(--neutral-50);border:1px solid var(--border-default);border-radius:.5rem;padding:1.5rem}.review-title{color:var(--neutral-600);font-size:1.25rem;font-weight:600;margin-bottom:1rem}.review-content p{color:var(--text-meta);margin-bottom:.5rem}.review-content strong{color:var(--neutral-600);font-weight:600}.searchable-dropdown{position:relative}.dropdown-menu{background:var(--paper);border:1px solid var(--border-default);border-radius:.375rem;box-shadow:0 10px 15px -3px var(--alpha-black-10);left:0;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:50}.dropdown-item{border-bottom:1px solid var(--neutral-100);cursor:pointer;padding:.75rem;transition:background-color .2s}.dropdown-item:hover{background:var(--neutral-100)}.dropdown-item.disabled{color:var(--neutral-400);cursor:not-allowed}.user-name{color:var(--neutral-600);font-weight:500}.user-email{color:var(--text-meta);font-size:.875rem}.btn{align-items:center;border:none;border-radius:.375rem;cursor:pointer;display:inline-flex;font-weight:500;justify-content:center;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s}.btn-primary{background:var(--info)}.btn-primary:hover:not(:disabled){background:var(--select-active)}.btn-secondary{background:var(--text-meta);color:var(--paper)}.btn-secondary:hover:not(:disabled){background:var(--neutral-500)}.btn:disabled{cursor:not-allowed;opacity:.5}.error-text{color:var(--danger);font-size:.875rem;margin-top:.25rem}.form-group{margin-bottom:1rem}.form-label{color:var(--neutral-600)}.form-input{border:1px solid var(--neutral-300);border-radius:.375rem;font-size:1rem;padding:.75rem;transition:border-color .2s;width:100%}.form-input:focus{border-color:var(--info);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.checkbox-label{align-items:center;cursor:pointer;display:flex;gap:.5rem}.form-checkbox{accent-color:var(--info);height:1rem;width:1rem}.space-y-6>*+*{margin-top:1.5rem}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.gap-4{gap:1rem}@media (min-width:768px){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:1024px){.streamlined-form-container{padding:1rem}.step-indicator{flex-direction:column;gap:1rem}.step-indicator:before{display:none}.step-item{background:var(--paper);border-radius:.5rem;box-shadow:0 1px 3px 0 var(--alpha-black-10);flex-direction:row;gap:.75rem;justify-content:flex-start;padding:.75rem}.step-circle{height:2rem;margin-bottom:0;width:2rem}.step-title{font-size:.875rem;text-align:left}.step-description{display:none}}@media (max-width:768px){.streamlined-form-container{padding:.75rem}.grid-cols-2,.grid-cols-3{grid-template-columns:1fr}.grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}.input-method-tabs{background:var(--neutral-50);border-bottom:1px solid var(--border-default);border-radius:.5rem .5rem 0 0;margin-bottom:2rem}.input-method-tabs .MuiTab-root{color:var(--text-meta);font-weight:500;min-height:48px;text-transform:none}.input-method-tabs .MuiTab-root.Mui-selected{background:var(--paper);border-radius:.5rem .5rem 0 0;color:var(--info)}.input-method-tabs .MuiTabs-indicator{background-color:var(--info);height:3px}.image-upload-section{padding:2rem}.upload-container{align-items:center;background-color:var(--neutral-50);border:2px dashed var(--info);border-radius:8px;display:flex;flex-direction:column;justify-content:center;margin:1rem 0;min-height:200px;padding:3rem 2rem;position:relative;transition:all .3s ease}.upload-container:hover{background-color:var(--neutral-50);border-color:var(--info-muted)}.upload-hint{color:var(--text-meta);font-size:.95rem;margin:1rem 0 0;text-align:center}.upload-icon{color:var(--info);font-size:2.5rem;margin-bottom:1rem}.file-input{height:.1px;margin-bottom:1rem;opacity:0;overflow:hidden;position:absolute;width:.1px;z-index:-1}.file-input+label{align-items:center;background-color:var(--paper);border:2px solid var(--info);border-radius:4px;color:var(--info);cursor:pointer;display:inline-flex;font-size:1rem;gap:.5rem;margin-bottom:1rem;padding:.75rem 1.5rem;transition:all .3s ease}.file-input+label:hover{background-color:var(--info);color:var(--paper)}.file-input+label svg{height:20px;width:20px}.image-preview{border-radius:8px;box-shadow:0 2px 4px var(--alpha-black-10);margin-top:1.5rem;max-width:500px;overflow:hidden;width:100%}.image-preview img{display:block;height:auto;object-fit:cover;width:100%}.processing-indicator{align-items:center;color:var(--text-meta);display:flex;font-style:italic;gap:.5rem;justify-content:center;margin:1rem 0}.processing-indicator:before{animation:spin 1s linear infinite;border:2px solid var(--info);border-radius:50%;border-top:2px solid #0000;content:"";height:16px;width:16px}.text-input-section{padding:0;width:100%}.text-input-container{margin:0;width:100%}.recipe-text-input{background-color:var(--paper);border:2px solid var(--rule);border-radius:8px;box-shadow:inset 0 1px 3px var(--alpha-black-10);display:block;font-family:inherit;font-size:1rem;height:400px;line-height:1.6;margin-bottom:1.5rem;padding:1.5rem;resize:none;transition:border-color .3s ease;width:100%}.recipe-text-input:focus{border-color:var(--info);box-shadow:inset 0 1px 3px var(--alpha-black-10),0 0 0 2px var(--focus-ring);outline:none}.recipe-text-input::placeholder{color:var(--text-meta);opacity:.7;white-space:pre-line}.form-buttons{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.btn-cancel{background:var(--paper);border:1px solid var(--neutral-300);border-radius:.375rem;color:var(--text-meta);padding:.75rem 1.5rem;transition:all .2s ease}.btn-cancel:hover{background:var(--neutral-50);border-color:var(--neutral-400);color:var(--neutral-600)}.btn-submit{background:var(--info);border:none;border-radius:.375rem;color:var(--paper);cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.btn-submit:hover{background:var(--select-active)}.btn-submit:disabled{background:var(--neutral-300);cursor:not-allowed}.form-section{background:var(--paper);border-radius:8px;box-shadow:0 1px 3px var(--alpha-black-05);margin-bottom:2rem;padding:1.5rem}.form-section-title{border-bottom:2px solid var(--border-default);color:var(--neutral-600);font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;padding-bottom:.5rem}.form-row{display:flex;gap:1rem;margin-bottom:1.5rem}.form-group{flex:1 1}.form-label{color:var(--text-meta);display:block;font-weight:500;margin-bottom:.5rem}.required-field:after{color:var(--danger);content:"*";margin-left:4px}.form-input,.form-select,.form-textarea{border:1px solid var(--rule);border-radius:4px;font-size:1rem;padding:.75rem;transition:all .3s ease;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--info);box-shadow:0 0 0 2px var(--focus-ring);outline:none}.form-textarea{min-height:120px;resize:vertical}.ingredients-list{margin-bottom:1.5rem}.ingredient-item{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.ingredient-item input{border:1px solid var(--neutral-300);border-radius:.375rem;font-size:1rem;padding:.75rem;transition:border-color .2s}.ingredient-item input:focus{border-color:var(--info);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.btn-remove{background:var(--paper);border:1px solid var(--neutral-300);border-radius:.375rem;color:var(--text-meta);cursor:pointer;font-size:1.2rem;line-height:1;padding:.5rem;transition:all .2s ease}.btn-remove:hover{background:var(--danger-bg);border-color:var(--danger);color:var(--danger)}.btn-add{align-items:center;background:var(--paper);border:2px solid var(--info);border-radius:.375rem;color:var(--info);cursor:pointer;display:inline-flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.btn-add:hover{background:var(--info);color:var(--paper)}.btn-add:before{content:"+";font-size:1.2rem;line-height:1}@media (max-width:768px){.form-row,.ingredient-item{flex-direction:column}.ingredient-item{gap:.5rem}.ingredient-item input{width:100%}.form-buttons{flex-direction:column;gap:.75rem}.btn-cancel,.btn-submit{justify-content:center;width:100%}.input-method-tabs .MuiTab-root{font-size:.875rem;padding:.75rem .5rem}}.recipe-text-placeholder{color:var(--text-meta);font-size:1rem;left:1.5rem;line-height:1.6;opacity:.7;pointer-events:none;position:absolute;right:1.5rem;top:1.5rem;white-space:pre-wrap}.recipe-manager{margin:0 auto;max-width:1200px;padding:20px}.recipe-manager-header{align-items:center;border-bottom:2px solid var(--rule);display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.recipe-manager-header h2{color:var(--fg);font-size:2rem;font-weight:600;margin:0}.header-actions{display:flex;gap:15px}.btn-primary{align-items:center;background:linear-gradient(135deg,var(--accent) 0,var(--green-slate) 100%);border:none;border-radius:8px;box-shadow:0 4px 15px var(--focus-ring);display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:12px 24px;transition:all .3s ease}.btn-primary,.btn-primary:hover{color:var(--paper);text-decoration:none}.btn-primary:hover{box-shadow:0 6px 20px var(--focus-ring);transform:translateY(-2px)}.view-mode-selector{background:var(--neutral-50);border-radius:12px;display:flex;gap:10px;margin-bottom:25px;padding:10px}.view-mode-btn{background:var(--paper);border:2px solid #0000;border-radius:8px;color:var(--text-meta);cursor:pointer;flex:1 1;font-weight:500;padding:12px 20px;transition:all .3s ease}.view-mode-btn.active{background:linear-gradient(135deg,var(--accent) 0,var(--green-slate) 100%);border-color:var(--accent);box-shadow:0 4px 15px var(--focus-ring);color:var(--paper)}.view-mode-btn:hover:not(.active){border-color:var(--accent);color:var(--accent)}.recipe-controls{display:flex;flex-direction:column;gap:20px;margin-bottom:30px}.recipe-stats{background:var(--neutral-50);border-left:4px solid var(--accent);border-radius:8px;margin-bottom:25px;padding:15px}.recipe-stats p{color:var(--text-meta);font-size:14px;margin:0}.recipe-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:20px}.no-recipes{background:var(--neutral-50);border:2px dashed var(--rule);border-radius:12px;padding:60px 20px;text-align:center}.no-recipes-icon{color:var(--gray-soft);font-size:4rem;margin-bottom:20px}.no-recipes h3{color:var(--text-meta);font-size:1.5rem;margin-bottom:10px}.no-recipes p{color:var(--gray);font-size:1rem;margin-bottom:25px}.error-container,.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border-top:4px solid var(--neutral-100);border:4px solid var(--neutral-100);border-radius:50%;border-top-color:var(--accent);height:40px;margin-bottom:15px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message{color:var(--danger);font-size:1.1rem;margin-bottom:20px}.btn-back,.btn-retry{background:var(--accent);border:none;border-radius:6px;color:var(--paper);cursor:pointer;font-size:14px;padding:10px 20px;transition:background .3s ease}.btn-back:hover,.btn-retry:hover{background:var(--accent-hover)}.recipe-search{width:100%}.recipe-search__box{position:relative;width:100%}.recipe-search__field{margin:0}.recipe-search__field .ds-field__label{display:none}.recipe-search__input{border-radius:var(--radius-lg)!important;padding-left:2.5rem!important;padding-right:2.5rem!important;width:100%}.recipe-search__icon{color:var(--text-meta);height:1.125rem;left:var(--space-3);pointer-events:none;width:1.125rem}.recipe-search__icon,.recipe-search__spinner{position:absolute;top:50%;transform:translateY(-50%);z-index:2}.recipe-search__spinner{animation:recipe-search-spin .7s linear infinite;border:2px solid var(--border-default);border-radius:50%;border-top-color:var(--accent);height:1rem;right:var(--space-3);width:1rem}@keyframes recipe-search-spin{to{transform:translateY(-50%) rotate(1turn)}}.recipe-search__clear{align-items:center;background:none;border:none;color:var(--text-meta);cursor:pointer;display:flex;justify-content:center;padding:var(--space-1);position:absolute;right:var(--space-2);top:50%;transform:translateY(-50%);z-index:2}.recipe-search__clear:hover{color:var(--fg)}.recipe-search__suggestions{background:var(--paper);border:1px solid var(--border-default);border-radius:0 0 var(--radius-lg) var(--radius-lg);box-shadow:var(--shadow-card);left:0;max-height:300px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 2px);z-index:1000}.recipe-search__suggestion{align-items:center;background:none;border:none;color:var(--fg);cursor:pointer;display:flex;font-family:var(--font-sans);font-size:.9375rem;gap:var(--space-2);padding:var(--space-3);text-align:left;width:100%}.recipe-search__suggestion:hover{background:var(--surface-sunken)}.recipe-search__suggestion-icon{color:var(--gray);flex-shrink:0}.recipe-search--compact .recipe-search__input{font-size:.875rem;padding-bottom:var(--space-2)!important;padding-top:var(--space-2)!important}.recipe-filters{background:var(--paper);border-radius:12px;box-shadow:0 2px 10px var(--alpha-black-10);overflow:hidden}.filters-header{align-items:center;background:var(--neutral-50);border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;padding:15px 20px}.filters-toggle{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-meta);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 12px;transition:all .3s ease}.filters-toggle:hover{background:var(--neutral-100);color:var(--fg)}.filter-badge,.filters-toggle.active{color:var(--accent)}.filter-badge{font-weight:700}.clear-filters-btn{border:none;border-radius:6px;color:var(--paper);cursor:pointer;font-size:12px;padding:6px 12px;transition:background .3s ease}.clear-filters-btn,.clear-filters-btn:hover{background:var(--danger)}.filters-panel{padding:20px}.filter-section{margin-bottom:25px}.filter-section:last-child{margin-bottom:0}.filter-section h4{color:var(--fg);font-size:16px;font-weight:600;margin:0 0 15px}.filter-hint{color:var(--text-meta);font-size:13px;margin:-8px 0 12px}.filter-options{display:flex;flex-wrap:wrap;gap:10px}.filter-option{background:var(--paper);border:2px solid var(--rule);border-radius:20px;color:var(--text-meta);cursor:pointer;font-size:14px;padding:8px 16px;transition:all .3s ease}.filter-option:hover{border-color:var(--accent);color:var(--accent)}.filter-option.active{background:var(--accent);border-color:var(--accent);color:var(--paper)}.tags-filter{display:flex;flex-wrap:wrap;gap:8px}.tag-filter{background:var(--paper);border:1px solid var(--rule);border-radius:15px;color:var(--text-meta);cursor:pointer;font-size:12px;padding:6px 12px;transition:all .3s ease}.tag-filter:hover{border-color:var(--accent);color:var(--accent)}.tag-filter.active{background:var(--accent);border-color:var(--accent);color:var(--paper)}.tag-filter--exclude.active{background:var(--danger);border-color:var(--danger)}.selected-tag--exclude{background:var(--danger-bg);color:var(--danger)}.selected-tags{background:var(--neutral-50);border-radius:8px;margin-top:15px;padding:10px}.selected-tags span{color:var(--text-meta);font-size:14px;margin-right:10px}.selected-tag{align-items:center;background:var(--accent);border-radius:12px;color:var(--paper);display:inline-flex;font-size:12px;gap:5px;margin:2px;padding:4px 8px}.remove-tag{background:none;border:none;color:var(--paper);cursor:pointer;font-size:14px;margin-left:5px;padding:0}.remove-tag:hover{opacity:.8}.recipe-card{background:var(--paper);border:1px solid var(--rule);border-radius:12px;box-shadow:0 4px 15px var(--alpha-black-10);overflow:hidden;transition:all .3s ease}.recipe-card:hover{box-shadow:0 8px 25px var(--alpha-black-15);transform:translateY(-4px)}.recipe-card--active,.recipe-card--active:hover{transform:none}.recipe-card.expanded{box-shadow:0 8px 25px var(--alpha-black-15)}.recipe-card.error{background:var(--danger-bg);border:2px solid var(--danger);color:var(--danger-strong);font-weight:500;padding:20px;text-align:center}.card-header{align-items:flex-start;cursor:pointer;display:flex;justify-content:space-between;padding:20px;position:relative;transition:background .3s ease}.card-header:hover{background:var(--neutral-50)}.card-header:active{background:var(--neutral-100)}.card-title{flex:1 1}.card-title h3{color:var(--fg);cursor:pointer;font-size:1.3rem;font-weight:600;line-height:1.3;margin:0 0 10px}.card-title h3:hover{color:var(--accent)}.expand-indicator{color:var(--gray);font-size:.8em;margin-left:8px;transition:all .3s ease}.card-title h3:hover .expand-indicator{color:var(--accent)}.card-badges{display:flex;flex-wrap:wrap;gap:8px}.badge{border-radius:12px;font-size:11px;font-weight:500;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.badge.public{background:var(--success-bg);color:var(--success-strong)}.badge.private{background:var(--danger-bg);color:var(--danger-strong)}.badge.category{align-items:center;background:var(--info-bg);color:var(--info-muted);display:inline-flex;gap:4px}.recipe-meta-strip{align-items:center;background:var(--neutral-50);border-bottom:1px solid var(--rule);display:flex;flex-wrap:wrap;gap:1rem;padding:12px 20px}.recipe-meta-strip-group{align-items:center;display:inline-flex;flex-wrap:wrap;gap:.5rem}.recipe-meta-strip-group--tags{align-items:flex-start}.recipe-meta-strip-label{color:var(--text-meta);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.action-toggle,.card-actions{position:relative}.action-toggle{background:none;border:none;border-radius:6px;color:var(--gray);cursor:pointer;font-size:16px;padding:8px;transition:all .3s ease;z-index:10}.action-toggle:hover{background:var(--neutral-50);color:var(--text-meta)}.action-toggle:active{background:var(--neutral-100)}.action-menu{background:var(--paper);border:1px solid var(--rule);border-radius:8px;box-shadow:0 4px 15px var(--alpha-black-10);margin-top:5px;min-width:180px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.action-item{align-items:center;background:none;border:none;color:var(--text-meta);cursor:pointer;display:flex;font-size:14px;gap:10px;padding:12px 16px;text-align:left;text-decoration:none;transition:background .3s ease;width:100%}.action-item:hover{background:var(--neutral-50);color:var(--fg)}.action-item.delete:hover{background:var(--danger-bg);color:var(--danger-strong)}.card-body{animation:slideDown .3s ease-out;border-top:1px solid var(--rule);padding:0 20px 20px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.recipe-meta{margin-bottom:20px}.recipe-meta p{color:var(--text-meta);font-size:14px;margin:8px 0}.recipe-description{margin-bottom:20px}.recipe-description p{color:var(--fg);line-height:1.6;margin:0}.recipe-tags{margin-bottom:20px}.recipe-tags strong{color:var(--fg);display:block;font-size:14px;margin-bottom:8px}.tags-list{display:flex;flex-wrap:wrap;gap:6px}.tag{background:var(--neutral-100);border-radius:12px;color:var(--text-meta);font-size:12px;padding:4px 8px}.recipe-ingredients h4{color:var(--fg);font-size:16px;font-weight:600;margin:0 0 15px}.recipe-ingredients ul{margin:0;padding-left:20px}.recipe-ingredients li{color:var(--text-meta);line-height:1.4;margin-bottom:8px}.recipe-edit-container{margin:0 auto;max-width:800px;padding:20px}.edit-header{align-items:center;border-bottom:2px solid var(--rule);display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.edit-header h2{color:var(--fg);font-size:2rem;font-weight:600;margin:0}.edit-actions{display:flex;gap:15px}.btn-cancel{border:none;border-radius:8px;color:var(--paper);cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:all .3s ease}.btn-cancel,.btn-cancel:hover{background:var(--green-slate)}.btn-save{background:linear-gradient(135deg,var(--success) 0,var(--success) 100%);border:none;border-radius:8px;box-shadow:0 4px 15px var(--success-bg);color:var(--paper);cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:all .3s ease}.btn-save:hover{box-shadow:0 6px 20px var(--success-bg);transform:translateY(-2px)}@media (max-width:768px){.recipe-manager{padding:15px}.recipe-manager-header{align-items:stretch;flex-direction:column;gap:15px}.view-mode-selector{flex-direction:column}.recipe-grid{gap:20px;grid-template-columns:1fr}.recipe-controls{gap:15px}.filter-options{flex-direction:column}.filter-option{text-align:center}.edit-header{align-items:stretch;flex-direction:column;gap:15px}.edit-actions{justify-content:center}}@media (max-width:480px){.recipe-manager-header h2{font-size:1.5rem}.card-header{padding:15px}.card-title h3{font-size:1.1rem}.card-badges{gap:5px}.badge{font-size:10px;padding:3px 6px}}.recipe-manager--shell{max-width:none;padding:16px 20px 32px}.recipe-manager-topbar{align-items:flex-start;border-bottom:1px solid var(--neutral-200);display:flex;gap:16px;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.recipe-manager-topbar h2{color:var(--neutral-800);font-size:clamp(1.5rem,2vw,2rem);margin:0}.recipe-manager-topbar__subtitle{color:var(--text-meta);font-size:.95rem;margin:6px 0 0}.recipe-manager-topbar__cta{flex-shrink:0;white-space:nowrap}.recipe-manager-shell{grid-gap:0;align-items:start;display:grid;gap:0;grid-template-columns:minmax(0,1fr);min-height:0}.recipe-manager-main{min-width:0}.recipe-toolbar{background:var(--paper);border:1px solid var(--neutral-200);border-radius:14px;box-shadow:0 1px 2px var(--alpha-black-04);display:flex;flex-direction:column;gap:12px;margin-bottom:16px;padding:14px 16px}.recipe-toolbar__views{display:flex;flex-wrap:wrap;gap:8px}.recipe-toolbar__view{background:var(--paper);border:1px solid var(--border-default);border-radius:999px;color:var(--neutral-500);cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 14px;transition:all .2s ease}.recipe-toolbar__view:hover{border-color:var(--accent);color:var(--accent)}.recipe-toolbar__view.is-active{background:linear-gradient(135deg,var(--accent) 0,var(--green-slate) 100%);border-color:#0000;box-shadow:0 4px 14px var(--focus-ring);color:var(--paper)}.recipe-toolbar__actions{align-items:stretch;display:flex;flex-wrap:wrap;gap:10px}.recipe-toolbar__search{flex:1 1 220px;min-width:0}.recipe-search--compact .recipe-search__input{min-height:44px}.recipe-filter-toggle{align-items:center;background:var(--paper);border:1px solid var(--border-default);border-radius:10px;color:var(--neutral-600);cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;justify-content:center;min-height:44px;padding:0 16px;transition:all .2s ease}.recipe-filter-toggle.is-active,.recipe-filter-toggle:hover{background:var(--info-bg);border-color:var(--accent);color:var(--accent)}.recipe-filter-toggle__badge{align-items:center;background:var(--accent);border-radius:999px;color:var(--paper);display:inline-flex;font-size:.75rem;font-weight:700;height:20px;justify-content:center;min-width:20px;padding:0 6px}.recipe-active-filters{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.recipe-active-filters__chip{align-items:center;background:var(--info-bg);border:none;border-radius:999px;color:var(--green-deep);cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:500;gap:6px;padding:6px 10px}.recipe-active-filters__chip.is-exclude{background:var(--danger-bg);color:var(--danger)}.recipe-active-filters__clear{background:#0000;border:none;color:var(--text-meta);cursor:pointer;font-size:.8rem;font-weight:600;padding:6px 10px;text-decoration:underline}.recipe-results-grid{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.recipe-card--active,.recipe-card--active:hover{transform:none!important}.recipe-detail-panel{animation:recipe-detail-enter .22s ease-out;background:var(--paper);border:1px solid var(--border-default);border-radius:12px;box-shadow:0 8px 24px var(--shadow-soft);grid-column:1/-1;padding:0 1rem 1.25rem}@media (min-width:640px){.recipe-detail-panel{padding:0 1.5rem 1.5rem}}@keyframes recipe-detail-enter{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.recipe-detail-panel__toolbar{align-items:center;border-bottom:1px solid var(--rule,var(--neutral-200));display:flex;gap:12px;justify-content:space-between;margin-bottom:.5rem;padding:.85rem 0 .5rem}.recipe-detail-panel__toolbar-actions{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:12px}.recipe-detail-panel__edit-link{align-items:center;color:var(--green-deep);color:var(--green-deep,var(--green-deep));display:inline-flex;font-family:inherit;font-family:var(--font-sans,inherit);font-size:.6875rem;font-weight:700;gap:6px;letter-spacing:.14em;letter-spacing:var(--tracking-wider,.14em);text-decoration:none;text-transform:uppercase;transition:color .15s ease}.recipe-detail-panel__edit-link:hover{color:var(--green-med);color:var(--green-med,var(--green-med))}.recipe-detail-panel__label{color:var(--text-meta);color:var(--gray,var(--text-meta));font-family:inherit;font-family:var(--font-sans,inherit);font-size:.6875rem;font-weight:700;letter-spacing:.14em;margin:0;text-transform:uppercase}.recipe-empty-state{align-items:center;background:var(--paper);border:1px dashed var(--neutral-300);border-radius:16px;display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:320px;padding:40px 20px;text-align:center}.recipe-empty-state__icon{background:var(--neutral-100);border-radius:999px;color:var(--neutral-400);display:grid;height:72px;place-items:center;width:72px}.recipe-empty-state__icon svg{height:36px;width:36px}.recipe-empty-state h3{color:var(--fg)827;margin:0}.recipe-empty-state p{color:var(--text-meta);margin:0;max-width:36ch}.btn-secondary{align-items:center;background:var(--paper);border:1px solid var(--neutral-300);border-radius:10px;color:var(--neutral-600);cursor:pointer;display:inline-flex;font-weight:600;gap:8px;padding:10px 16px}.recipe-filter-backdrop{background:var(--overlay-scrim);inset:0;opacity:0;pointer-events:none;position:fixed;transition:opacity .24s ease;z-index:60}.recipe-filter-backdrop.is-visible{opacity:1;pointer-events:auto}.recipe-filter-sidebar{background:var(--paper);border-left:1px solid var(--border-default);box-shadow:-12px 0 40px var(--alpha-black-10);display:flex;flex-direction:column;height:100dvh;position:fixed;right:0;top:0;transform:translateX(100%);transition:transform .28s cubic-bezier(.22,1,.36,1);width:min(100vw,380px);z-index:70}.recipe-filter-sidebar.is-open{transform:translateX(0)}.recipe-filter-sidebar__header{align-items:center;background:var(--neutral-50);border-bottom:1px solid var(--neutral-100);display:flex;gap:12px;justify-content:space-between;padding:16px 18px}.recipe-filter-sidebar__title-row{align-items:center;display:flex;gap:10px}.recipe-filter-sidebar__title-row h3{color:var(--fg)827;font-size:1.05rem;margin:0}.recipe-filter-sidebar__badge{background:var(--accent);border-radius:999px;color:var(--paper);font-size:.75rem;font-weight:700;height:22px;min-width:22px;padding:0 7px}.recipe-filter-sidebar__badge,.recipe-filter-sidebar__close{align-items:center;display:inline-flex;justify-content:center}.recipe-filter-sidebar__close{background:var(--paper);border:none;border-radius:10px;color:var(--neutral-500);cursor:pointer;height:36px;width:36px}.recipe-filter-sidebar__close:hover{background:var(--neutral-100)}.recipe-filter-sidebar__body{flex:1 1;overflow-y:auto;overscroll-behavior:contain;padding:8px 12px 20px}.recipe-filter-sidebar__footer{grid-gap:10px;background:var(--paper);border-top:1px solid var(--neutral-100);display:grid;gap:10px;grid-template-columns:1fr 1fr;padding:14px 16px calc(14px + env(safe-area-inset-bottom))}.recipe-filter-sidebar__apply,.recipe-filter-sidebar__clear{border-radius:10px;cursor:pointer;font-size:.9rem;font-weight:600;min-height:42px}.recipe-filter-sidebar__clear{background:var(--paper);border:1px solid var(--neutral-300);color:var(--neutral-500)}.recipe-filter-sidebar__clear:disabled{cursor:not-allowed;opacity:.45}.recipe-filter-sidebar__apply{background:linear-gradient(135deg,var(--accent) 0,var(--green-slate) 100%);border:none;color:var(--paper)}.filter-sidebar-section{border-bottom:1px solid var(--neutral-100)}.filter-sidebar-section__toggle{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;justify-content:space-between;padding:14px 8px;text-align:left;width:100%}.filter-sidebar-section__title{align-items:center;color:var(--fg)827;display:inline-flex;font-size:.92rem;font-weight:600;gap:8px}.filter-sidebar-section__count{align-items:center;background:var(--info-bg);border-radius:999px;color:var(--green-deep);display:inline-flex;font-size:.72rem;font-weight:700;height:18px;justify-content:center;min-width:18px;padding:0 5px}.filter-sidebar-section__chevron{color:var(--neutral-400);transition:transform .2s ease}.filter-sidebar-section__chevron.is-open{transform:rotate(180deg)}.filter-sidebar-section__hint{color:var(--text-meta);font-size:.78rem;line-height:1.4;margin:-6px 8px 10px}.filter-sidebar-section__body{padding:0 4px 14px}.filter-options--sidebar,.tags-filter--sidebar{gap:8px}.filter-options--sidebar .filter-option,.tags-filter--sidebar .tag-filter{font-size:.8rem}body.recipe-filters-drawer-open{overflow:hidden}@media (min-width:1200px){.recipe-manager-shell{gap:20px;grid-template-columns:minmax(0,1fr) 340px}.recipe-filter-backdrop{display:none!important}.recipe-filter-sidebar{border:1px solid var(--neutral-200);border-radius:16px;box-shadow:0 8px 24px var(--alpha-black-05);height:calc(100vh - 32px);max-height:calc(100dvh - 32px);opacity:1;pointer-events:auto;position:-webkit-sticky;position:sticky;top:16px;transform:none!important;width:100%;z-index:1}.recipe-filter-sidebar:not(.is-open){display:none}.recipe-manager-shell:has(.recipe-filter-sidebar.is-open){grid-template-columns:minmax(0,1fr) 340px}.recipe-filter-sidebar__apply,.recipe-filter-sidebar__close{display:none}.recipe-filter-sidebar__footer{grid-template-columns:1fr}body.recipe-filters-drawer-open{overflow:auto}.recipe-filter-toggle{display:inline-flex}}@media (max-width:1199px){.recipe-manager-topbar{align-items:stretch;flex-direction:column}.recipe-toolbar__actions{flex-direction:column}.recipe-filter-toggle{width:100%}}@media (max-width:640px){.recipe-manager--shell{padding:12px 12px 24px}.recipe-results-grid{grid-template-columns:1fr}}.recipe-card-admin-bar{background:linear-gradient(180deg,var(--neutral-50) 0,var(--surface-sunken) 100%);border-radius:12px 12px 0 0;display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px}.recipe-card-admin-bar__btn{align-items:center;border:1px solid var(--neutral-300);border-radius:8px;color:var(--neutral-600);cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:500;gap:6px;padding:6px 12px;text-decoration:none;transition:background .15s ease,border-color .15s ease,color .15s ease}.recipe-card-admin-bar__btn:hover{background:var(--neutral-50);border-color:var(--neutral-400);color:var(--fg)827}.recipe-card-admin-bar__btn.is-archive:hover{border-color:var(--warning);color:var(--warning)}.recipe-card-admin-bar__btn.is-restore:hover{border-color:var(--success);color:var(--chip-aprobado-fg)}.recipe-card--archived{border-style:dashed;opacity:.92}.recipe-card-archived-badge{background:var(--warning-bg);border-radius:999px;color:var(--warning);display:inline-block;font-size:.6875rem;font-weight:600;letter-spacing:.04em;margin-left:8px;padding:2px 8px;text-transform:uppercase;vertical-align:middle}.recipe-manager-toast{background:var(--fg)827;border-radius:.5rem;bottom:1.5rem;box-shadow:0 8px 24px var(--alpha-black-20);color:var(--paper);font-size:.875rem;max-width:min(360px,calc(100vw - 2rem));padding:.75rem 1rem;position:fixed;right:1.5rem;z-index:110}.recipe-results-grid .recipe-card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);cursor:pointer;overflow:visible;transition:border-color .15s ease,box-shadow .15s ease}.recipe-results-grid .recipe-card--menu-open{position:relative;z-index:40}.recipe-results-grid .recipe-card:hover{border-color:var(--green-med);box-shadow:0 4px 20px var(--shadow-soft)}.recipe-results-grid .recipe-card--active{border-color:var(--green-deep);box-shadow:0 0 0 1px var(--green-deep)}.recipe-results-grid .recipe-card--error{background:var(--reject-bg);border-color:var(--reject-border);color:var(--reject);cursor:default;padding:var(--space-4);text-align:center}.recipe-results-grid .recipe-card__layout{grid-gap:0;display:grid;gap:0;grid-template-columns:120px 1fr}.recipe-results-grid .recipe-card__photo{background:var(--photo-bg);border-radius:var(--radius-lg) 0 0 var(--radius-lg);min-height:120px;overflow:hidden;position:relative}.recipe-results-grid .recipe-card__photo-img{display:block;height:100%;min-height:120px;object-fit:cover;width:100%}.recipe-results-grid .recipe-card__type-badge{background:#2d3d23cc;border-radius:2px;bottom:var(--space-1);color:var(--paper);font-family:var(--font-sans);font-size:.5625rem;left:var(--space-1);letter-spacing:.1em;padding:2px 6px;position:absolute;text-transform:uppercase}.recipe-results-grid .recipe-card__main{min-width:0;padding:var(--space-3) var(--space-4)}.recipe-results-grid .recipe-card__head{align-items:flex-start;display:flex;gap:var(--space-2);justify-content:space-between}.recipe-results-grid .recipe-card__name{align-items:center;color:var(--fg);display:flex;flex-wrap:wrap;font-family:var(--font-display);font-size:1.125rem;font-style:italic;font-weight:600;gap:var(--space-2);margin:0 0 var(--space-2)}.recipe-results-grid .recipe-card__feedback,.recipe-results-grid .recipe-card__tags{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-2)}.recipe-results-grid .recipe-card__meta{color:var(--text-meta);display:flex;flex-wrap:wrap;font-size:.8125rem;gap:var(--space-3);margin-bottom:var(--space-2)}.recipe-results-grid .recipe-card__meta a{color:var(--link)}.recipe-results-grid .recipe-card__desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-meta);display:-webkit-box;font-size:.875rem;line-height:1.45;margin:0 0 var(--space-2);overflow:hidden}.recipe-results-grid .recipe-card__expand{align-items:center;color:var(--green-med);display:inline-flex;font-size:.75rem;font-weight:600;gap:var(--space-1);letter-spacing:.08em;text-transform:uppercase}.recipe-results-grid .recipe-card__expand svg{transition:transform .15s ease}.recipe-results-grid .recipe-card__expand svg.is-flipped,.recipe-results-grid .recipe-card__expand.is-active svg{transform:rotate(180deg)}.recipe-results-grid .recipe-card__actions{flex-shrink:0;position:relative}.recipe-results-grid .recipe-card__menu-link{align-items:center;color:inherit;display:inline-flex;font:inherit;gap:var(--space-2);text-decoration:none;width:100%}.recipe-filter-toggle__chip{margin-left:var(--space-1)}.recipe-active-filters__chip-btn{align-items:center;background:none;border:none;color:var(--text-meta);cursor:pointer;display:inline-flex;gap:var(--space-1);padding:0}.recipe-card-admin-bar{background:var(--surface-sunken);border-bottom:1px solid var(--border-default)}.recipe-card-admin-bar__btn{background:var(--paper);border:1px solid var(--border-default);color:var(--fg)}.recipe-card-admin-bar__btn:hover{background:var(--paper);border-color:var(--green-med)}.recipe-card-admin-bar__btn.is-archive:hover{border-color:var(--reject-border);color:var(--reject)}.recipe-card-admin-bar__btn.is-restore:hover{border-color:var(--approve-border);color:var(--approve)}@media (max-width:640px){.recipe-results-grid .recipe-card__layout{grid-template-columns:1fr}.recipe-results-grid .recipe-card__photo{border-radius:var(--radius-lg) var(--radius-lg) 0 0}}.recipe-sheet{--rs-fg:var(--fg);--rs-gray:var(--gray);--rs-gray-soft:var(--gray-soft);--rs-rule:var(--rule);--rs-green-deep:var(--green-deep);--rs-green-med:var(--green-med);--rs-paper-tint:var(--paper-tint);--rs-photo-bg:var(--photo-bg);--rs-text-micro:0.6875rem;--rs-text-label:0.75rem;--rs-text-meta:0.8125rem;--rs-text-body:0.9375rem;--rs-text-step-num:1.25rem;--rs-text-title:clamp(1.5rem,2.2vw,2rem);color:var(--rs-fg);font-size:var(--rs-text-body);line-height:1.5;width:100%}.recipe-sheet--in-card{padding-top:.5rem}.recipe-sheet__header{display:flex;flex-direction:column;gap:12px;margin-bottom:1.25rem}.recipe-sheet__header-rule{background:var(--rs-green-med);height:2px;width:100%}.recipe-sheet__header-row{align-items:baseline;color:var(--rs-gray);display:flex;flex-wrap:wrap;font-family:var(--font-sans);font-size:var(--rs-text-micro);gap:1rem;justify-content:space-between;letter-spacing:.2em;text-transform:uppercase}.recipe-sheet__brand{font-weight:700;letter-spacing:.24em}.recipe-sheet__client{text-align:right}.recipe-sheet__bullet{color:var(--rs-gray-soft);margin:0 8px}.recipe-sheet__title-block{margin-bottom:1rem}.recipe-sheet__title{color:var(--rs-fg);font-family:Cormorant Garamond,Georgia,serif;font-size:var(--rs-text-title);font-style:italic;font-weight:700;letter-spacing:-.01em;line-height:1.1;margin:0 0 .65rem}.recipe-sheet__meta{align-items:center;color:var(--rs-gray);display:flex;flex-wrap:wrap;font-family:var(--font-sans);font-size:var(--rs-text-meta);gap:10px;letter-spacing:.08em;line-height:1.4;text-transform:uppercase}.recipe-sheet__meta-divider{background:var(--rs-rule);flex-shrink:0;height:.85em;width:1px}.recipe-sheet__meta strong{color:var(--rs-fg);font-weight:700;letter-spacing:.06em;margin-right:4px}.recipe-sheet__top-split{grid-gap:1.25rem;align-items:start;display:grid;gap:1.25rem;grid-template-columns:1fr}@media (min-width:640px){.recipe-sheet__top-split{column-gap:1.5rem;grid-template-columns:minmax(0,1fr) 200px}}@media (min-width:900px){.recipe-sheet__top-split{column-gap:26px;grid-template-columns:minmax(0,1fr) 248px}}.recipe-sheet__top-left{display:flex;flex-direction:column;min-width:0}.recipe-sheet__section-label{align-items:center;border-bottom:1px solid var(--rs-green-med);color:var(--rs-green-med);display:flex;font-family:var(--font-sans);font-size:var(--rs-text-label);font-weight:700;gap:.5rem;justify-content:space-between;letter-spacing:.18em;margin-bottom:12px;padding-bottom:8px;text-transform:uppercase}.recipe-sheet__section-count{color:var(--rs-gray-soft);font-size:var(--rs-text-micro);font-weight:400;letter-spacing:.1em;white-space:nowrap}.recipe-sheet__ingredients{list-style:none;margin:0;padding:0}.recipe-sheet__ingredients li{grid-column-gap:10px;align-items:baseline;color:var(--rs-fg);column-gap:10px;display:grid;font-family:var(--font-sans);font-size:var(--rs-text-body);grid-template-columns:12px 1fr auto;line-height:1.45;padding:8px 10px}.recipe-sheet__ingredients li:nth-child(odd):not(.recipe-sheet__ing-section){background:var(--rs-paper-tint)}.recipe-sheet__ing-dot{color:var(--rs-green-med);font-size:.875em;line-height:1;transform:translateY(-1px)}.recipe-sheet__ing-qty{font-feature-settings:"tnum";color:var(--rs-gray);font-size:.933em;font-variant-numeric:tabular-nums;letter-spacing:.02em;padding-left:8px;white-space:nowrap}.recipe-sheet__ing-section{background:none!important;display:block!important;grid-column:1/-1;padding:12px 10px 4px!important}.recipe-sheet__ing-section:first-child{padding-top:4px!important}.recipe-sheet__ing-section-name{color:var(--rs-gray);font-family:var(--font-sans);font-size:var(--rs-text-label);font-weight:700;letter-spacing:.14em;text-transform:uppercase}.recipe-sheet__photo-wrap{aspect-ratio:1;background:var(--rs-photo-bg);flex-shrink:0;justify-self:center;max-width:248px;overflow:hidden;position:relative;width:100%}@media (min-width:640px){.recipe-sheet__photo-wrap{justify-self:stretch;width:100%}}.recipe-sheet__photo-wrap:before{background:repeating-linear-gradient(135deg,#fff0 0 18px,#ffffff59 18px 19px);content:"";inset:0;mix-blend-mode:soft-light;opacity:.5;pointer-events:none;position:absolute}.recipe-sheet__photo-img{display:block;height:100%;object-fit:cover;position:relative;width:100%;z-index:1}.recipe-sheet__photo-label{align-items:center;color:var(--gray);display:flex;flex-direction:column;font-family:Cormorant Garamond,Georgia,serif;font-size:var(--rs-text-meta);font-style:italic;gap:10px;inset:0;justify-content:center;letter-spacing:.2em;position:absolute;text-transform:uppercase;z-index:0}.recipe-sheet__photo-tick{background:var(--gray-soft);height:1px;width:26px}.recipe-sheet__photo-corner{border:1px solid var(--gray-soft);height:12px;position:absolute;width:12px;z-index:2}.recipe-sheet__photo-corner--tl{border-bottom:none;border-right:none;left:10px;top:10px}.recipe-sheet__photo-corner--tr{border-bottom:none;border-left:none;right:10px;top:10px}.recipe-sheet__photo-corner--bl{border-right:none;border-top:none;bottom:10px;left:10px}.recipe-sheet__photo-corner--br{border-left:none;border-top:none;bottom:10px;right:10px}.recipe-sheet__full-section{border-top:1px solid var(--rs-rule);margin-top:1.25rem;padding-top:1.25rem}.recipe-sheet__steps{counter-reset:recipe-step;list-style:none;margin:0;padding:0}.recipe-sheet__steps>li{grid-column-gap:12px;color:var(--rs-fg);column-gap:12px;counter-increment:recipe-step;display:grid;font-family:var(--font-sans);font-size:var(--rs-text-body);grid-template-columns:2rem 1fr;line-height:1.55;padding:6px 0 14px}.recipe-sheet__steps>li:before{color:var(--rs-green-med);content:counter(recipe-step,decimal-leading-zero);font-family:Cormorant Garamond,Georgia,serif;font-size:var(--rs-text-step-num);font-style:italic;font-weight:500;letter-spacing:-.02em;line-height:1;padding-top:2px}.recipe-sheet__steps>li p{text-wrap:pretty;margin:0}.recipe-sheet__steps>li strong{font-weight:700}.recipe-sheet__step-section{color:var(--rs-gray);counter-increment:none!important;display:block;font-family:var(--font-sans);font-size:var(--rs-text-label);font-weight:700;letter-spacing:.14em;margin-bottom:2px;padding:12px 0 4px;text-transform:uppercase}.recipe-sheet__step-section:first-child{padding-top:0}.recipe-sheet__step-section:before{content:none!important}.recipe-sheet__bottom-full{border-top:1px solid var(--rs-rule);margin-top:1rem;padding-top:1rem}.recipe-sheet__tip{text-wrap:pretty;color:var(--rs-fg);font-family:Cormorant Garamond,Georgia,serif;font-size:1.0625rem;font-style:italic;line-height:1.45;margin:0}.recipe-sheet__tip-tag{color:var(--rs-green-med);font-family:var(--font-sans);font-size:var(--rs-text-label);font-style:normal;font-weight:700;letter-spacing:.2em;margin-right:10px;text-transform:uppercase}.recipe-sheet__source-block{align-items:flex-end;display:flex;flex-direction:column;gap:6px;margin-bottom:.75rem;margin-top:1rem;text-align:right}.recipe-sheet__source-label{color:var(--rs-gray);font-family:var(--font-sans);font-size:var(--rs-text-micro);font-weight:700;letter-spacing:.14em;text-transform:uppercase}.recipe-sheet__source-link{border-bottom:1px dotted var(--gray-soft);color:var(--rs-green-med);display:inline-block;font-family:var(--font-sans);font-size:var(--rs-text-meta);line-height:1.45;max-width:min(100%,320px);text-align:right;text-decoration:none;word-break:break-all}.recipe-sheet__source-link:hover{color:var(--rs-green-deep)}.recipe-sheet__footer{margin-top:auto;padding-top:12px}.recipe-sheet__footer-rule{background:var(--rs-rule);height:1px}.recipe-sheet__footer-row{align-items:baseline;color:var(--rs-gray);display:flex;font-family:var(--font-sans);font-size:var(--rs-text-micro);justify-content:flex-end;letter-spacing:.18em;margin-top:10px;text-transform:uppercase}.recipe-sheet__footer-brand{color:var(--rs-gray)}.recipe-sheet__empty{color:var(--rs-gray);font-family:var(--font-sans);font-size:var(--rs-text-body);font-style:italic;margin:0;padding:6px 10px}.weekly-menu{--wm-fg:var(--fg);--wm-gray:var(--gray);--wm-gray-soft:var(--gray-soft);--wm-rule:var(--rule);--wm-green-deep:var(--green-deep);--wm-green-med:var(--green-med);--wm-paper-tint:var(--paper-tint);--wm-photo-bg:var(--photo-bg);color:var(--wm-fg);max-width:1100px}.weekly-menu__doc-header{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:1.25rem}.weekly-menu__week-range{color:var(--gray);font-family:var(--font-sans);font-size:.75rem;letter-spacing:var(--tracking-wide);margin:0;text-transform:uppercase}.weekly-menu__admin-notes{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.weekly-menu__doc-link,.weekly-menu__edit-link{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-lg);color:var(--green-deep);font-family:var(--font-sans);font-size:11px;font-weight:700;letter-spacing:.1em;padding:8px 12px;text-decoration:none;text-transform:uppercase}.weekly-menu__edit-link--disabled{opacity:.5;pointer-events:none}.weekly-menu__doc-link:hover,.weekly-menu__edit-link:hover{border-color:var(--green-med)}.weekly-menu__doc-rule{background:var(--wm-green-med);height:2px;width:100%}.weekly-menu__doc-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.weekly-menu__brand{font-weight:700;letter-spacing:.24em}.weekly-menu__brand,.weekly-menu__week-tag{color:var(--wm-gray);font-family:Arsenal,sans-serif;font-size:.6875rem;text-transform:uppercase}.weekly-menu__week-tag{letter-spacing:.28em;white-space:nowrap}.weekly-menu__week-tag .sep{background:var(--wm-gray-soft);border-radius:50%;display:inline-block;height:3px;margin:0 8px 2px;vertical-align:middle;width:3px}.weekly-menu__title-block{grid-gap:1.5rem;align-items:end;border-bottom:1px solid var(--wm-green-med);display:grid;gap:1.5rem;grid-template-columns:1fr auto;margin-bottom:.5rem;padding-bottom:1.25rem}.weekly-menu__title{color:var(--wm-fg);font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.75rem,4vw,2.75rem);font-style:italic;font-weight:500;letter-spacing:-.015em;line-height:1.05;margin:0}.weekly-menu__title em{font-style:italic;font-weight:700}.weekly-menu__summary{color:var(--wm-gray);font-family:Arsenal,sans-serif;font-size:.625rem;letter-spacing:.28em;line-height:1.2;padding-bottom:4px;text-align:right;text-transform:uppercase}.weekly-menu__summary-big{color:var(--wm-green-deep);display:block;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2rem,5vw,3rem);font-style:italic;font-weight:400;letter-spacing:0;line-height:.9;margin-bottom:6px;text-transform:none}.weekly-menu__admin-bar{background:var(--wm-paper-tint);border:1px solid var(--wm-rule);border-radius:4px;margin:1rem 0 1.25rem;padding:1rem 1.125rem}.weekly-menu__admin-bar summary{color:var(--wm-green-med);cursor:pointer;font-family:Arsenal,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.weekly-menu__admin-body{align-items:flex-end;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.875rem}.weekly-menu__status{background:var(--paper);border:1px solid var(--wm-rule);border-radius:2px;color:var(--wm-green-med);font-family:Arsenal,sans-serif;font-size:.6875rem;letter-spacing:.18em;padding:.35rem .65rem;text-transform:uppercase}.weekly-menu__status--propuesto{background:var(--status-propuesto-bg);border-color:var(--status-propuesto-border);color:var(--status-propuesto-fg)}.weekly-menu__status--aprobado,.weekly-menu__status--enviado{background:var(--status-approved-bg);border-color:var(--approve-border);color:var(--wm-green-deep)}.weekly-menu__notes{background:var(--wm-paper-tint);border-left:2px solid var(--wm-green-med);margin-top:1.5rem;padding:1rem 1.125rem}.weekly-menu__notes h3{color:var(--wm-green-med);font-family:Arsenal,sans-serif;font-size:.6875rem;letter-spacing:.2em;margin:0 0 .5rem;text-transform:uppercase}.weekly-menu__notes p{font-size:.9375rem;line-height:1.55;margin:0;white-space:pre-wrap}.weekly-menu__client-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.weekly-menu-list{max-width:960px}.weekly-menu-list__subtitle{color:var(--text-meta);font-size:.875rem;margin:var(--space-1) 0 0}.weekly-menu-list__toolbar{align-items:flex-end;display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-4)}.weekly-menu-list__toolbar .ds-field{flex:1 1;min-width:220px}.weekly-menu-list__client-filter{flex:1.2 1;min-width:12rem}.weekly-menu-list__toolbar-actions{align-items:center;display:flex;gap:var(--space-2)}.weekly-menu-list__filters{margin-bottom:var(--space-4)}.weekly-menu-list__filters-label{color:var(--text-meta);display:block;font-size:.6875rem;font-weight:700;letter-spacing:.14em;margin-bottom:var(--space-2);text-transform:uppercase}.weekly-menu-list__filter-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.weekly-menu-list__filter-btn{background:var(--paper);border:1px solid var(--border-default);border-radius:999px;color:var(--fg);cursor:pointer;font-family:var(--font-sans);font-size:.8125rem;padding:.35rem .75rem}.weekly-menu-list__filter-btn.is-active{background:var(--approve-bg);border-color:var(--green-deep);color:var(--green-deep)}.weekly-menu-list__active-filters{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.weekly-menu-list__count{color:var(--text-meta);font-size:.875rem;margin:0 0 var(--space-4)}.weekly-menu-list__empty{color:var(--text-meta);padding:var(--space-8) var(--space-4);text-align:center}.weekly-menu-list__empty-icon{color:var(--gray-soft);height:2.5rem;margin-bottom:var(--space-3);width:2.5rem}.weekly-menu-list__actions{align-items:center;display:flex;gap:var(--space-2)}.weekly-menu-list__week{margin-bottom:2rem}.weekly-menu-list__week-title{border-bottom:1px solid var(--rule);color:var(--green-med);font-family:Arsenal,sans-serif;font-size:.6875rem;font-weight:700;letter-spacing:.24em;margin:0 0 .75rem;padding-bottom:.5rem;text-transform:uppercase}.weekly-menu-list__rows{list-style:none;margin:0;padding:0}.weekly-menu-list__row{grid-gap:.75rem 1rem;align-items:center;border-bottom:1px solid var(--rule);display:grid;gap:.75rem 1rem;grid-template-columns:1fr auto auto;padding:.875rem 0}.weekly-menu-list__row:last-child{border-bottom:none}.weekly-menu-list__primary{min-width:0}.weekly-menu-list__client{color:var(--fg);font-family:Cormorant Garamond,Georgia,serif;font-size:1.25rem;font-style:italic;font-weight:600;line-height:1.2;margin:0 0 2px}.weekly-menu-list__meta{color:var(--gray);font-family:Arsenal,sans-serif;font-size:.625rem;letter-spacing:.16em;text-transform:uppercase}.weekly-menu-list__estado{border:1px solid var(--rule);color:var(--green-med);font-size:.5625rem;letter-spacing:.14em;padding:.25rem .5rem}.weekly-menu-list__estado,.weekly-menu-list__link{font-family:Arsenal,sans-serif;text-transform:uppercase;white-space:nowrap}.weekly-menu-list__link{color:var(--green-deep);font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-decoration:none}.weekly-menu-list__link:hover{text-decoration:underline}.weekly-menu-list__delete{background:none;border:none;color:var(--reject);cursor:pointer;font-family:var(--font-sans);font-size:.625rem;letter-spacing:.1em;margin-left:.5rem;padding:0;text-transform:uppercase}.weekly-menu-list__delete:hover{text-decoration:underline}@media (max-width:768px){.weekly-menu__title-block{grid-template-columns:1fr}.weekly-menu__summary{text-align:left}.weekly-menu-list__row{gap:.5rem;grid-template-columns:1fr}}.meal-plan-tray{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:minmax(220px,280px) 1fr;min-height:420px}.meal-plan-tray__recipes{border:1px solid var(--border-default);border-radius:.75rem;display:flex;flex-direction:column;min-height:0}.meal-plan-tray__recipes-header{border-bottom:1px solid var(--border-default);padding:.75rem 1rem}.meal-plan-tray__title{font-size:1rem;font-weight:600;margin:0 0 .25rem}.meal-plan-tray__recipe-list{display:flex;flex-direction:column;gap:.35rem;max-height:520px;overflow-y:auto;padding:.5rem}.meal-plan-tray__recipe-card{align-items:center;background:var(--paper);border:1px solid var(--border-default);border-radius:.5rem;cursor:grab;display:flex;flex-wrap:wrap;gap:.35rem;padding:.5rem .65rem;text-align:left}.meal-plan-tray__recipe-card.is-selected{background:var(--select-active-bg);border-color:var(--select-active)}.meal-plan-tray__recipe-name{flex:1 1 auto;font-size:.875rem;font-weight:500}.meal-plan-tray__recipe-meta{color:var(--text-meta);font-size:.75rem}.meal-plan-tray__warn{color:var(--warning)}.meal-plan-tray__board{border:1px solid var(--border-default);border-radius:.75rem;overflow:hidden}.meal-plan-tray__board-scroll{display:flex;gap:.75rem;overflow-x:auto;padding:.75rem}.meal-plan-tray__day-column{flex:0 0 auto;min-width:148px}.meal-plan-tray__day-title{font-size:.875rem;font-weight:600;margin:0 0 .5rem;text-align:center}.meal-plan-tray__slot{background:var(--neutral-50);border:1px dashed var(--neutral-300);border-radius:.5rem;cursor:pointer;margin-bottom:.4rem;min-height:3.25rem;padding:.45rem .5rem;position:relative}.meal-plan-tray__slot.is-droppable{background:var(--info-bg);border-color:var(--select-active)}.meal-plan-tray__slot.is-filled{background:var(--paper);border-style:solid}.meal-plan-tray__slot-label{color:var(--text-meta);display:block;font-size:.65rem;letter-spacing:.04em;text-transform:uppercase}.meal-plan-tray__slot-value{display:block;font-size:.75rem;font-weight:500;line-height:1.3;margin-top:.15rem}.meal-plan-tray__slot-clear{background:#0000;border:none;color:var(--neutral-400);cursor:pointer;padding:.1rem;position:absolute;right:.2rem;top:.2rem}.add-to-plan-overlay{align-items:center;background:var(--overlay-scrim);display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:100}.add-to-plan-picker{background:var(--paper);border-radius:.75rem;box-shadow:var(--shadow-panel);max-height:80vh;overflow-y:auto;padding:1rem 1.25rem 1.25rem;width:min(100%,420px)}.add-to-plan-picker__header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;margin-bottom:.75rem}.add-to-plan-picker__header h3{font-size:1.125rem;margin:0}.add-to-plan-picker__close{background:#0000;border:none;color:var(--text-meta);cursor:pointer;padding:.25rem}.add-to-plan-picker__create{align-items:center;background:var(--select-active-bg);border:1px solid var(--select-active);border-radius:.5rem;color:var(--select-active-fg);cursor:pointer;display:flex;font-weight:600;gap:.5rem;margin-bottom:.75rem;padding:.65rem .75rem;width:100%}.add-to-plan-picker__section-label{color:var(--text-meta);font-size:.75rem;font-weight:600;letter-spacing:.04em;margin:.5rem 0 .35rem;text-transform:uppercase}.meal-plan-tray__slot.is-target{border-color:var(--tray-target);box-shadow:0 0 0 2px var(--alpha-violet-20)}.meal-plan-tray__state-notice{background:var(--paper)beb;border:1px solid var(--warning-border);border-radius:.5rem;color:var(--warning);font-size:.875rem;grid-column:1/-1;margin:0 0 .75rem;padding:.5rem .75rem}.meal-plan-tray__recipe-desc{color:var(--text-meta);font-size:.7rem;width:100%}.add-to-plan-picker__plan-row{grid-gap:.15rem .5rem;align-items:start;background:var(--paper);border:1px solid var(--border-default);border-radius:.5rem;cursor:pointer;display:grid;gap:.15rem .5rem;grid-template-columns:1fr auto;margin-bottom:.35rem;padding:.55rem .65rem;text-align:left;width:100%}.add-to-plan-picker__plan-client{font-size:.875rem;font-weight:600;grid-column:1}.add-to-plan-picker__plan-detail{color:var(--neutral-500);font-size:.8125rem;grid-column:1}.add-to-plan-picker__estado{align-self:center;border-radius:999px;font-size:.6875rem;font-weight:600;grid-column:2;grid-row:1/span 2;letter-spacing:.03em;padding:.15rem .45rem;text-transform:uppercase}.add-to-plan-picker__estado--borrador{background:var(--neutral-100);color:var(--neutral-600)}.add-to-plan-picker__estado--propuesto{background:var(--info-bg);color:var(--select-active-fg)}.add-to-plan-picker__estado--aprobado{background:var(--success-bg);color:var(--chip-aprobado-fg)}.add-to-plan-picker__plan-row:hover{background:var(--neutral-50);border-color:var(--info-border)}.add-to-plan-picker__chips{display:flex;flex-wrap:wrap;gap:.35rem}.add-to-plan-picker__chip{background:var(--paper);border:1px solid var(--neutral-300);border-radius:999px;cursor:pointer;font-size:.8125rem;padding:.35rem .65rem}.add-to-plan-picker__chip.is-active{background:var(--select-active);border-color:var(--select-active);color:var(--paper)}.add-to-plan-picker__actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.add-to-plan-picker__create.is-primary{font-weight:600}.add-to-plan-picker__create-secondary{background:#0000;border:none;color:var(--green-deep);cursor:pointer;display:block;font-size:.875rem;margin-top:.75rem;padding:.5rem;text-align:center;width:100%}.add-to-plan-picker__create-secondary:hover{text-decoration:underline}.add-to-plan-picker__empty-hint,.add-to-plan-picker__hint,.add-to-plan-picker__queue-hint,.add-to-plan-picker__recipe-name{color:var(--text-meta);font-size:.875rem;margin:.25rem 0 0}.add-to-plan-picker__empty-hint{line-height:1.45;margin:.75rem 0}.add-to-plan-picker__create-form{display:flex;flex-direction:column;gap:.75rem}.add-to-plan-picker__create-lead,.add-to-plan-picker__slot-intro,.add-to-plan-picker__slot-plan{font-size:.875rem;line-height:1.45;margin:0 0 .75rem}.add-to-plan-picker__dias-field{display:flex;flex-direction:column;gap:.5rem}.add-to-plan-picker__success{padding:.5rem 0 .25rem;text-align:center}.add-to-plan-picker__success-icon{align-items:center;background:var(--approve-bg);border-radius:50%;color:var(--approve);display:inline-flex;font-size:1.25rem;height:2.5rem;justify-content:center;margin:0 auto .75rem;width:2.5rem}.add-to-plan-picker__success-message{font-size:.9375rem;line-height:1.45;margin:0 0 .35rem}.add-to-plan-picker__success-detail{color:var(--text-meta);font-size:.8125rem;margin:0 0 1rem}.add-to-plan-picker__success-actions{display:flex;flex-direction:column;gap:.5rem}.meal-plan-editor-notice__row{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.meal-plan-editor-notice__dismiss{background:none;border:none;color:inherit;cursor:pointer;flex-shrink:0;font-size:.8125rem;text-decoration:underline}.meal-plan-editor-footer{flex-wrap:wrap;gap:.75rem}.ds-page__subtitle{color:var(--text-meta);font-size:.875rem;margin:.35rem 0 0}@media (max-width:900px){.meal-plan-tray{grid-template-columns:1fr}}.weekly-menu--with-recipe .weekly-menu__body{grid-gap:var(--space-5);align-items:start;display:grid;gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(280px,360px)}.weekly-menu__schedule{min-width:0}.weekly-menu__recipe-aside{background:var(--paper);border:1px solid var(--wm-rule);border-radius:var(--radius-xl);max-height:calc(100vh - 2rem);overflow-y:auto;position:-webkit-sticky;position:sticky;top:var(--space-4)}.weekly-menu__recipe-placeholder{padding:var(--space-6) var(--space-5);text-align:center}.weekly-menu__recipe-placeholder-title{color:var(--fg);font-family:var(--font-serif);font-size:1.25rem;margin:0 0 var(--space-2)}.weekly-menu__recipe-placeholder-text{color:var(--gray);font-family:var(--font-sans);font-size:.875rem;line-height:1.5;margin:0}@media (max-width:768px){.weekly-menu--with-recipe .weekly-menu__body{grid-template-columns:1fr}.weekly-menu__recipe-aside{display:none}}.meal-plan-recipe-panel--aside{padding:0 var(--space-4) var(--space-4)}.meal-plan-recipe-panel--aside .recipe-sheet__top-split{grid-template-columns:1fr}.meal-plan-recipe-panel--aside .recipe-sheet__photo-wrap{margin:0 auto;max-width:200px}.meal-plan-recipe-panel--inline{background:var(--paper);border:1px solid var(--wm-rule);border-radius:var(--radius-xl);margin-top:var(--space-3);padding:0 var(--space-4) var(--space-4)}.meal-plan-recipe-panel__loading{color:var(--gray);font-family:var(--font-sans);font-size:.875rem;padding:var(--space-6);text-align:center}.meal-plan-recipe-sheet{display:flex;flex-direction:column;inset:0;justify-content:flex-end;position:fixed;z-index:200}.meal-plan-recipe-sheet__scrim{background:var(--overlay-dark);border:none;cursor:pointer;inset:0;position:absolute}.meal-plan-recipe-sheet__body{background:var(--paper);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-card);max-height:88vh;overflow-y:auto;padding:var(--space-4);position:relative;z-index:1}.weekly-menu__error{color:var(--reject);font-size:.875rem;margin-bottom:var(--space-3)}.weekly-menu__empty-hint{color:var(--gray);font-size:.875rem;margin-top:var(--space-4)}@font-face{font-display:swap;font-family:Arsenal;font-style:normal;font-weight:400;src:url(/static/media/Arsenal-Regular.c67ceeee927eaa2d6729.ttf) format("truetype")}@font-face{font-display:swap;font-family:Arsenal;font-style:normal;font-weight:700;src:url(/static/media/Arsenal-Bold.fc61d14c29022b07dd5d.ttf) format("truetype")}@font-face{font-display:swap;font-family:Arsenal;font-style:italic;font-weight:400;src:url(/static/media/Arsenal-Italic.79d0c518746f280e0703.ttf) format("truetype")}@font-face{font-display:swap;font-family:Arsenal;font-style:italic;font-weight:700;src:url(/static/media/Arsenal-BoldItalic.287c24be680501e16929.ttf) format("truetype")}:root{--font-sans:"Arsenal",-apple-system,BlinkMacSystemFont,sans-serif;--font-display:"Cormorant Garamond",Georgia,serif;--green-deep:#2d3d23;--green-med:#3c4c42;--green-slate:#5c6861;--fg:#232323;--gray:#989ca0;--gray-soft:#b7bac0;--rule:#dcdcdc;--paper:#fff;--paper-tint:#f9f8f6;--photo-bg:#f0ede8;--desk:#e9e7e3;--approve:#3a6b3a;--approve-bg:#3a6b3a0d;--approve-border:#c8dbc8;--reject:#8b3a3a;--reject-bg:#8b3a3a0d;--reject-border:#dbc8c8;--text-body:var(--fg);--text-meta:var(--gray);--text-quiet:var(--gray-soft);--surface-card:var(--paper);--surface-sunken:var(--paper-tint);--border-default:var(--rule);--accent:var(--green-deep);--accent-hover:var(--green-med);--link:var(--green-deep);--link-hover:var(--green-med);--page-bg:#f4f4f4;--on-dark:var(--page-bg);--neutral-50:var(--paper-tint);--neutral-100:var(--paper-tint);--neutral-200:var(--rule);--neutral-300:var(--gray-soft);--neutral-400:var(--gray);--neutral-500:var(--green-slate);--neutral-600:var(--fg);--neutral-700:var(--fg);--neutral-800:var(--green-deep);--info:#0369a1;--info-bg:#e0f2fe;--info-border:#bae6fd;--info-muted:#0c4a6e;--warning:#92400e;--warning-bg:#fef3c7;--warning-border:#fcd34d;--danger:var(--reject);--danger-bg:var(--reject-bg);--danger-border:var(--reject-border);--danger-strong:#991b1b;--success:var(--approve);--success-bg:var(--approve-bg);--success-border:var(--approve-border);--success-strong:#166534;--focus-ring:#3c4c421a;--shadow-soft:#2d3d2314;--overlay-dark:#00000080;--overlay-scrim:#0f172a59;--alpha-black-04:#0000000a;--alpha-black-05:#0000000d;--alpha-black-08:#00000014;--alpha-black-10:#0000001a;--alpha-black-15:#00000026;--alpha-black-20:#0003;--alpha-black-75:#000000bf;--alpha-fg-70:#232323b3;--alpha-green-10:#3c4c421a;--alpha-green-20:#3c4c4233;--alpha-green-deep-10:#2d3d231a;--alpha-green-deep-15:#2d3d2326;--alpha-sidebar-border:#f4f4f41a;--alpha-white-30:#ffffff4d;--alpha-info-10:#0c4a6e1a;--alpha-violet-20:#7c3aed33;--shadow-card:0 2px 4px var(--alpha-black-10);--shadow-card-hover:0 4px 8px var(--alpha-black-15);--shadow-elevated:0 10px 15px -3px var(--alpha-black-10),0 4px 6px -2px var(--alpha-black-05);--shadow-modal:0 20px 25px -5px var(--alpha-black-10),0 10px 10px -5px var(--alpha-black-04);--shadow-panel:0 20px 40px var(--alpha-black-15);--shadow-login:0 10px 30px var(--alpha-black-20);--select-active:#2563eb;--select-active-bg:#eff6ff;--select-active-fg:#1d4ed8;--tray-target:#7c3aed;--status-propuesto-border:#d4c4a8;--status-propuesto-fg:#7a5c2e;--status-propuesto-bg:#faf6ef;--status-approved-bg:#f4f8f4;--chip-borrador-bg:var(--neutral-100);--chip-borrador-fg:var(--neutral-600);--chip-propuesto-bg:var(--info-bg);--chip-propuesto-fg:var(--select-active-fg);--chip-aprobado-bg:var(--success-bg);--chip-aprobado-fg:#047857;--display-2xl:italic 500 58px/1.02 var(--font-display);--display-xl:italic 700 50px/1.02 var(--font-display);--display-lg:italic 600 32px/1.05 var(--font-display);--display-md:italic 500 24px/1.15 var(--font-display);--display-sm:italic 400 18px/1.2 var(--font-display);--body-note:italic 400 13px/1.4 var(--font-display);--label-xl:700 11px/1 var(--font-sans);--label-lg:700 10px/1 var(--font-sans);--label-md:400 10px/1.3 var(--font-sans);--label-sm:400 9px/1.3 var(--font-sans);--ui-body:400 13px/1.5 var(--font-sans);--ui-body-sm:400 11.5px/1.4 var(--font-sans);--tracking-tight:-0.01em;--tracking-normal:0.02em;--tracking-wide:0.06em;--tracking-wider:0.14em;--tracking-label:0.22em;--tracking-eyebrow:0.3em;--tracking-widest:0.4em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--radius-sm:2px;--radius-md:4px;--radius-lg:6px;--radius-xl:8px;--radius-pill:999px;--radius-round:50%;--shadow-page:0 1px 0 #0000000a,0 30px 60px -20px #1e281e2e,0 10px 30px -10px #1e281e1f;--shadow-card:0 2px 8px #0000000f;--page-letter-w:816px;--page-letter-h:1056px;--page-a4-w:794px;--page-a4-h:1123px}.ds-btn{border:1.5px solid #0000;border-radius:var(--radius-lg);cursor:pointer;font-family:var(--font-sans);font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:background .2s,border-color .2s,color .2s}.ds-btn--pill{border-radius:var(--radius-pill)}.ds-btn--sm{font-size:11px;padding:8px 16px}.ds-btn--md{font-size:12px;padding:13px 20px}.ds-btn--solid{background:var(--green-deep);color:var(--paper)}.ds-btn--solid:hover:not(:disabled){background:var(--green-med)}.ds-btn--solid:disabled{background:var(--gray-soft);cursor:not-allowed}.ds-btn--outline{background:var(--paper);border-color:var(--rule);color:var(--gray)}.ds-btn--ghost{background:#0000;border:none;color:var(--green-deep);letter-spacing:.06em}.ds-btn--block{width:100%}.ds-eyebrow{color:var(--green-deep);font-family:var(--font-sans);font-size:11px;font-weight:700;letter-spacing:.42em;text-transform:uppercase}.ds-eyebrow--center{text-align:center}.ds-eyebrow-dot{background:var(--green-deep);border-radius:50%;display:inline-block;height:4px;margin:0 14px 3px;opacity:.7;vertical-align:middle;width:4px}.ds-divider{background:var(--rule);height:1px;width:100%}.ds-divider--short{margin:0 auto;opacity:.85;width:64px}.ds-divider--brand{background:var(--green-med);height:2px}.ds-badge{align-items:center;border-radius:var(--radius-pill);display:inline-flex;font-family:var(--font-sans);font-size:10px;font-weight:700;gap:10px;letter-spacing:.32em;line-height:1;padding:7px 16px 6px;text-transform:uppercase}.ds-badge--dark{background:var(--green-deep);color:var(--paper)}.ds-badge--light{background:var(--paper-tint);color:var(--green-deep)}.ds-status-dot{align-items:center;color:var(--gray);display:inline-flex;font-family:var(--font-sans);font-size:11px;gap:5px}.ds-status-dot__mark{border-radius:50%;display:inline-block;height:7px;width:7px}.ds-status-dot__mark--approved{background:var(--approve)}.ds-status-dot__mark--rejected{background:var(--reject)}.ds-status-dot__mark--pending{background:var(--rule);border:1px solid var(--gray-soft)}.ds-photo-placeholder{background:var(--photo-bg);border-radius:var(--radius-md);overflow:hidden;position:relative;width:100%}.ds-photo-placeholder__stripe{background:repeating-linear-gradient(135deg,#fff0 0 18px,#ffffff59 18px 19px);inset:0;mix-blend-mode:soft-light;opacity:.5;pointer-events:none;position:absolute}.ds-photo-placeholder__corner{border:1px solid #d9d3c7;height:14px;position:absolute;width:14px}.ds-photo-placeholder__corner--tl{border-bottom:none;border-right:none;left:10px;top:10px}.ds-photo-placeholder__corner--tr{border-bottom:none;border-left:none;right:10px;top:10px}.ds-photo-placeholder__corner--bl{border-right:none;border-top:none;bottom:10px;left:10px}.ds-photo-placeholder__corner--br{border-left:none;border-top:none;bottom:10px;right:10px}.ds-photo-placeholder__label{align-items:center;color:var(--gray-soft);display:flex;flex-direction:column;font-family:var(--font-display);font-size:14px;font-style:italic;gap:10px;inset:0;justify-content:center;letter-spacing:.2em;position:absolute;text-transform:uppercase}.ds-photo-placeholder__tick{background:#cec8bd;height:1px;width:26px}.ds-photo-placeholder__hint{color:var(--gray-soft);font-family:var(--font-sans);font-size:10px;font-style:normal;letter-spacing:.22em}.ds-ingredient-list{list-style:none;margin:0;padding:0}.ds-ingredient-list__section{color:var(--gray);font-family:var(--font-sans);font-size:8.5px;font-weight:700;letter-spacing:.22em;padding:10px 8px 2px;text-transform:uppercase}.ds-ingredient-list__row{grid-column-gap:8px;align-items:baseline;color:var(--fg);column-gap:8px;display:grid;font-family:var(--font-sans);font-size:10.5px;grid-template-columns:10px 1fr auto;line-height:1.28;padding:5px 8px}.ds-ingredient-list__row:nth-child(odd of .ds-ingredient-list__row){background:var(--paper-tint)}.ds-ingredient-list__bullet{color:var(--green-med);font-size:10px;transform:translateY(-1px)}.ds-ingredient-list__qty{font-feature-settings:"tnum";color:var(--gray);font-variant-numeric:tabular-nums;letter-spacing:.02em;padding-left:8px;white-space:nowrap}.ds-steps-list{list-style:none;margin:0;padding:0}.ds-steps-list__section{color:var(--gray);font-family:var(--font-sans);font-size:8.5px;font-weight:700;letter-spacing:.22em;padding:10px 0 3px;text-transform:uppercase}.ds-steps-list__row{grid-column-gap:10px;column-gap:10px;display:grid;grid-template-columns:28px 1fr;padding:3px 0 11px}.ds-steps-list__num{color:var(--green-med);font-family:var(--font-display);font-size:18px;font-style:italic;font-weight:500;letter-spacing:-.02em;line-height:1}.ds-steps-list__text{color:var(--fg);font-family:var(--font-sans);font-size:11px;line-height:1.5;margin:0}.ds-checklist__header{align-items:baseline;border-bottom:1px solid var(--green-med);display:flex;justify-content:space-between;margin-bottom:6px;padding-bottom:7px}.ds-checklist__category{color:var(--green-med);font-size:10px;font-weight:700;letter-spacing:.3em}.ds-checklist__category,.ds-checklist__count{font-family:var(--font-sans);text-transform:uppercase}.ds-checklist__count{color:var(--gray);font-size:9px;letter-spacing:.24em}.ds-checklist__list{list-style:none;margin:0;padding:0}.ds-checklist__row{grid-column-gap:8px;align-items:center;color:var(--fg);column-gap:8px;display:grid;font-family:var(--font-sans);font-size:11.5px;grid-template-columns:14px 1fr auto;padding:5px 8px}.ds-checklist__row:nth-child(2n){background:var(--paper-tint)}.ds-checklist__box{border:1px solid var(--gray-soft);border-radius:var(--radius-sm);height:10px;width:10px}.ds-checklist__qty{font-feature-settings:"tnum";font-size:11px;font-variant-numeric:tabular-nums;padding-left:6px}.ds-app-header{align-items:flex-end;background:var(--green-deep);display:flex;justify-content:space-between;padding:28px 24px 24px}.ds-app-header__brand{color:#ffffff8c;font-family:var(--font-sans);font-size:9px;letter-spacing:.28em;margin-bottom:8px;text-transform:uppercase}.ds-app-header__week{color:var(--paper);font-family:var(--font-display);font-size:32px;font-style:italic;line-height:1}.ds-app-header__right{text-align:right}.ds-app-header__client{color:var(--paper);font-family:var(--font-sans);font-size:13px;font-weight:700;letter-spacing:.04em}.ds-app-header__dates{color:#ffffff80;font-family:var(--font-sans);font-size:10px;letter-spacing:.1em;margin-top:4px}.ds-action-dot{align-items:center;background:var(--paper);border:1.5px solid var(--approve-border);border-radius:var(--radius-round);color:var(--approve);cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;padding:0;transition:all .15s;width:32px}.ds-action-dot--reject{border-color:var(--reject-border);color:var(--reject)}.ds-action-dot--active.ds-action-dot--approve{background:var(--approve);border-color:var(--approve);color:var(--paper)}.ds-action-dot--active.ds-action-dot--reject{background:var(--reject);border-color:var(--reject);color:var(--paper)}.ds-dish-row{align-items:stretch;background:#0000;border-bottom:1px solid var(--rule);display:flex}.ds-dish-row--approved{background:var(--approve-bg)}.ds-dish-row--rejected{background:var(--reject-bg)}.ds-dish-row__bar{background:var(--rule);flex-shrink:0;width:3px}.ds-dish-row--approved .ds-dish-row__bar{background:var(--approve)}.ds-dish-row--rejected .ds-dish-row__bar{background:var(--reject)}.ds-dish-row__photo{align-self:center;border-radius:var(--radius-md);flex-shrink:0;height:72px;margin:10px 0 10px 10px;overflow:hidden;position:relative;width:72px}.ds-dish-row__photo-img{display:block;height:100%;object-fit:cover;width:100%}.ds-dish-row__type-badge{background:#2d3d23bf;border-radius:var(--radius-sm);bottom:4px;color:var(--paper);font-family:var(--font-sans);font-size:7px;left:4px;letter-spacing:.1em;padding:2px 5px;position:absolute;text-transform:uppercase}.ds-dish-row__body{display:flex;flex:1 1;flex-direction:column;gap:4px;justify-content:center;min-width:0;padding:12px 10px 12px 12px}.ds-dish-row__name{background:none;border:none;color:var(--fg);cursor:pointer;font-family:var(--font-sans);font-size:13px;font-weight:700;overflow:hidden;padding:0;text-align:left;text-overflow:ellipsis;white-space:nowrap}.ds-dish-row__name:disabled{cursor:default}.ds-dish-row__meta{align-items:center;display:flex;gap:10px}.ds-dish-row__time{color:var(--gray);font-size:10px}.ds-dish-row__source{color:var(--gray-soft);font-size:9px;letter-spacing:.06em;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-dish-row__actions{align-items:center;display:flex;flex-direction:column;gap:6px;justify-content:center;padding:12px 12px 12px 6px}.ds-dish-row--selected .ds-dish-row__name{color:var(--green-deep)}.ds-day-block{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-xl);margin-bottom:12px;overflow:hidden}.ds-day-block__header{align-items:center;background:var(--paper-tint);border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;padding:10px 16px}.ds-day-block__day{color:var(--green-deep);font-family:var(--font-sans);font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.ds-day-block__date{color:var(--gray);font-size:10px;letter-spacing:.06em}.ds-status-bar{align-items:center;background:var(--paper);border-bottom:1px solid var(--rule);box-shadow:var(--shadow-card);display:flex;justify-content:space-between;padding:12px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.ds-status-bar__counts{display:flex;flex-wrap:wrap;gap:16px}.ds-confirm-sheet{align-items:flex-end;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:200}.ds-confirm-sheet__panel{background:var(--paper);border-radius:16px 16px 0 0;max-width:500px;padding:28px 24px 40px;width:100%}.ds-confirm-sheet__title{color:var(--fg);font-family:var(--font-display);font-size:24px;font-weight:600;margin:0 0 8px}.ds-confirm-sheet__body{color:var(--gray);font-size:13px;line-height:1.6;margin-bottom:24px}.ds-confirm-sheet__summary{background:var(--paper-tint);border-radius:var(--radius-xl);color:var(--fg);font-size:12px;line-height:1.7;margin-bottom:20px;padding:14px 16px}.ds-confirm-sheet__actions{display:flex;gap:10px}.ds-confirm-sheet__actions>:first-child{flex:1 1}.ds-confirm-sheet__actions>:last-child{flex:2 1}.ds-toast{background:var(--fg);border-radius:var(--radius-lg);bottom:24px;box-shadow:var(--shadow-card);color:var(--paper);font-family:var(--font-sans);font-size:12px;left:50%;letter-spacing:.02em;padding:10px 20px;position:fixed;transform:translateX(-50%);z-index:300}.ds-paper-page{background:var(--paper);overflow:hidden;position:relative}.ds-paper-page--desk{box-shadow:var(--shadow-page)}.ds-paper-page--letter{height:var(--page-letter-h);width:var(--page-letter-w)}.ds-paper-page--a4{height:var(--page-a4-h);width:var(--page-a4-w)}.ds-paper-page__inner{display:flex;flex-direction:column;position:absolute}.ds-paper-page--letter .ds-paper-page__inner{height:calc(100% - 80px);inset:40px 64px}.ds-paper-page--a4 .ds-paper-page__inner{left:76px;right:76px;top:76px}.ds-source-block{align-items:flex-end;display:flex;flex-direction:column;gap:5px;margin-bottom:12px;text-align:right}.ds-source-block__label{color:var(--gray);font-family:var(--font-sans);font-size:7.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.ds-source-block__link{border-bottom:1px dotted var(--gray-soft);color:var(--green-med);display:inline-block;font-family:var(--font-sans);font-size:8px;line-height:1.4;max-width:220px;text-decoration:none}.ds-source-block__qr{display:block;height:60px;margin-top:3px;width:60px}@media print{.ds-paper-page--desk{box-shadow:none}}.ds-field{display:flex;flex-direction:column;gap:var(--space-1)}.ds-field__label{color:var(--gray);font-family:var(--font-sans);font-size:var(--label-lg);font-weight:700;letter-spacing:var(--tracking-label);text-transform:uppercase}.ds-field__input{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md);box-sizing:border-box;color:var(--fg);font-family:var(--font-sans);font-size:var(--ui-body);line-height:1.5;padding:10px 12px;width:100%}.ds-field__input:focus{border-color:var(--green-med);box-shadow:0 0 0 1px #3c4c4233;outline:none}.ds-field__textarea{min-height:80px;resize:vertical}.ds-field__select{-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,#0000 50%,var(--gray) 50%),linear-gradient(135deg,var(--gray) 50%,#0000 50%);background-position:calc(100% - 16px) calc(50% - 2px),calc(100% - 11px) calc(50% - 2px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:28px}.ds-field__error{color:var(--reject);font-size:11px;margin:0}.ds-field__hint{color:var(--gray);font-size:11px;margin:0}.ds-dialog{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:var(--space-4);position:fixed;z-index:200}.ds-dialog__panel{background:var(--paper);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);max-height:90vh;overflow-y:auto;padding:var(--space-6);width:100%}.ds-dialog__panel--sm{max-width:400px}.ds-dialog__panel--md{max-width:520px}.ds-dialog__panel--lg{max-width:720px}.ds-dialog__title{color:var(--fg);font-family:var(--font-display);font-size:var(--display-md);font-style:italic;font-weight:600;margin:0 0 var(--space-4)}.ds-dialog__body{margin-bottom:var(--space-4)}.ds-dialog__footer{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.ds-table-wrap{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-xl);overflow-x:auto}.ds-table{border-collapse:collapse;font-family:var(--font-sans);font-size:var(--ui-body-sm);width:100%}.ds-table__cell{border-bottom:1px solid var(--rule);color:var(--fg);padding:10px 14px;text-align:left}.ds-table__cell--head{background:var(--paper-tint);color:var(--gray);font-size:var(--label-lg);font-weight:700;letter-spacing:var(--tracking-label);text-transform:uppercase}.ds-table__row:last-child .ds-table__cell{border-bottom:none}.ds-table__row--clickable{cursor:pointer}.ds-table__row--clickable:hover{background:var(--paper-tint)}.ds-tabs__list{border-bottom:1px solid var(--rule);display:flex;gap:4px;margin-bottom:var(--space-4)}.ds-tabs__tab{background:#0000;border:none;border-bottom:2px solid #0000;color:var(--gray);cursor:pointer;font-family:var(--font-sans);font-size:11px;font-weight:700;letter-spacing:.14em;margin-bottom:-1px;padding:8px 16px;text-transform:uppercase}.ds-tabs__tab--active{border-bottom-color:var(--green-deep);color:var(--green-deep)}.ds-page{margin:0 auto;max-width:1280px;padding:var(--space-6)}.ds-page__header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-6)}.ds-page__title{color:var(--fg);font-family:var(--font-display);font-size:var(--display-md);font-style:italic;font-weight:600;margin:0}.ds-page__actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2)}.ds-toolbar{align-items:flex-end;display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-4)}.ds-toolbar__grow{flex:1 1;min-width:200px}.ds-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4)}.ds-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.ds-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:900px){.ds-grid--2,.ds-grid--3,.ds-grid--4{grid-template-columns:1fr}}.ds-grid__span-2{grid-column:span 2}@media (max-width:900px){.ds-grid__span-2{grid-column:span 1}}.ds-card{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-xl)}.ds-card__body{padding:var(--space-5)}.ds-stat-card__label{color:var(--gray);font-family:var(--font-sans);font-size:var(--label-lg);letter-spacing:var(--tracking-label);margin:0 0 var(--space-2);text-transform:uppercase}.ds-stat-card__value{color:var(--fg);font-family:var(--font-display);font-size:2rem;font-style:italic;font-weight:600;margin:0}.ds-stat-card__row{align-items:flex-start;display:flex;gap:var(--space-3);justify-content:space-between}.ds-stat-card__icon{color:var(--green-deep);opacity:.85}.ds-alert{border:1px solid var(--rule);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--ui-body-sm);margin-bottom:var(--space-2);padding:var(--space-3) var(--space-4)}.ds-alert--info{background:var(--paper-tint);color:var(--fg)}.ds-alert--success{background:var(--approve-bg);border-color:var(--approve-border);color:var(--approve)}.ds-alert--warning{background:#8b3a3a0d;border-color:#dbc8c8;color:#7a5c2e}.ds-alert--error{background:var(--reject-bg);border-color:var(--reject-border);color:var(--reject)}.ds-chip{align-items:center;background:var(--paper-tint);border:1px solid var(--rule);border-radius:var(--radius-pill);color:var(--gray);display:inline-flex;font-family:var(--font-sans);font-size:9px;font-weight:700;gap:4px;letter-spacing:.08em;padding:4px 10px;text-transform:uppercase}button.ds-chip{cursor:pointer;line-height:inherit}button.ds-chip:disabled{cursor:not-allowed;opacity:.55}button.ds-chip:focus-visible{outline:2px solid var(--green-deep);outline-offset:2px}.ds-chip--selected{background:var(--green-deep);border-color:var(--green-deep);color:var(--paper)}.ds-chip--selected:hover:not(:disabled){background:var(--green-med);border-color:var(--green-med)}.ds-chip--success{background:var(--approve-bg);border-color:var(--approve-border);color:var(--approve)}.ds-chip--warning{background:#faf6ef;border-color:#d4c4a8;color:#7a5c2e}.ds-chip--error{background:var(--reject-bg);border-color:var(--reject-border);color:var(--reject)}.ds-chip--info{background:#f4f8f4;border-color:#c5d4c5;color:var(--green-deep)}.ds-checkbox,.ds-chip__icon{display:inline-flex}.ds-checkbox{align-items:center;color:var(--fg);cursor:pointer;font-family:var(--font-sans);font-size:var(--ui-body-sm);gap:var(--space-2)}.ds-checkbox__input{height:0;opacity:0;position:absolute;width:0}.ds-checkbox__box{background:var(--paper);border:1px solid var(--gray-soft);border-radius:var(--radius-sm);flex-shrink:0;height:14px;width:14px}.ds-checkbox__input:checked+.ds-checkbox__box{background:var(--green-deep);border-color:var(--green-deep);box-shadow:inset 0 0 0 2px var(--paper)}.ds-switch{align-items:center;cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:var(--ui-body-sm);gap:var(--space-2)}.ds-switch__input{opacity:0;position:absolute}.ds-switch__track{background:var(--rule);border-radius:var(--radius-pill);flex-shrink:0;height:20px;position:relative;width:36px}.ds-switch__track:after{background:var(--paper);border-radius:50%;content:"";height:16px;left:2px;position:absolute;top:2px;transition:transform .15s ease;width:16px}.ds-switch__input:checked+.ds-switch__track{background:var(--green-deep)}.ds-switch__input:checked+.ds-switch__track:after{transform:translateX(16px)}.ds-accordion{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.ds-accordion__summary{cursor:pointer;font-family:var(--font-sans);font-size:var(--ui-body-sm);font-weight:700;list-style:none;padding:var(--space-3) var(--space-4)}.ds-accordion__summary::-webkit-details-marker{display:none}.ds-accordion__body{border-top:1px solid var(--rule);padding:0 var(--space-4) var(--space-4)}.client-profile-fields__section-title{align-items:center;display:inline-flex;gap:.35rem}.client-profile-fields__section-icon{color:var(--green-med);flex-shrink:0;height:1.125rem;width:1.125rem}.ds-avatar{align-items:center;background:var(--paper-tint);border-radius:var(--radius-round);color:var(--green-deep);display:inline-flex;flex-shrink:0;font-family:var(--font-sans);font-weight:700;justify-content:center;overflow:hidden}.ds-avatar__img{height:100%;object-fit:cover;width:100%}.ds-stepper{flex-wrap:wrap;list-style:none;margin:0 0 var(--space-5);padding:0}.ds-stepper,.ds-stepper__step{display:flex;gap:var(--space-2)}.ds-stepper__step{align-items:center;color:var(--gray-soft);font-family:var(--font-sans);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.ds-stepper__step--active,.ds-stepper__step--done{color:var(--green-deep)}.ds-stepper__num{align-items:center;border:1px solid var(--rule);border-radius:50%;display:inline-flex;font-weight:700;height:22px;justify-content:center;width:22px}.ds-stepper__step--active .ds-stepper__num,.ds-stepper__step--done .ds-stepper__num{background:var(--green-deep);border-color:var(--green-deep);color:var(--paper)}.ds-menu{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md);box-shadow:var(--shadow-card);margin-top:4px;min-width:160px;padding:var(--space-1);position:absolute;right:0;top:100%;z-index:150}.ds-menu--anchored{margin-top:0;position:fixed;right:auto;top:auto;transform:translateX(-100%);z-index:300}.ds-menu__item{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--fg);cursor:pointer;display:flex;font:var(--ui-body-sm);gap:var(--space-2);padding:6px 10px;text-align:left;width:100%}.ds-menu__item svg{flex-shrink:0;height:14px;width:14px}.ds-menu__item:hover,.ds-progress{background:var(--paper-tint)}.ds-progress{border-radius:var(--radius-sm);height:8px;overflow:hidden}.ds-progress__fill{background:var(--green-med);border-radius:var(--radius-sm);height:100%}.ds-icon-btn{align-items:center;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md);color:var(--gray);cursor:pointer;display:inline-flex;height:32px;justify-content:center;padding:0;width:32px}.ds-icon-btn:hover{border-color:var(--green-med);color:var(--green-deep)}.ds-icon-btn--danger:hover{border-color:var(--reject-border);color:var(--reject)}.ds-bulk-bar{background:var(--paper-tint);border:1px solid var(--rule);border-radius:var(--radius-md);font-size:var(--ui-body-sm);margin-bottom:var(--space-3);padding:var(--space-3)}.ds-form-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:640px){.ds-form-grid{grid-template-columns:1fr}}.ds-form-grid--full{grid-column:1/-1}.ds-form-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.ds-auth-page{align-items:center;background:var(--paper-tint);display:flex;justify-content:center;min-height:100vh;padding:var(--space-4)}.ds-auth-card{max-width:560px;width:100%}.ds-list{list-style:none;margin:0;padding:0}.ds-list__item{align-items:center;border-bottom:1px solid var(--rule);display:flex;gap:var(--space-3);padding:var(--space-3) 0}.ds-list__item:last-child{border-bottom:none}.ds-list__main{flex:1 1;min-width:0}.ds-list__primary{color:var(--fg);font-size:var(--ui-body-sm);font-weight:700}.ds-list__secondary{color:var(--gray);font-size:11px}.ds-cell-user{align-items:center;display:flex;gap:var(--space-3)}.ds-cell-stack{display:flex;flex-direction:column;gap:2px}.ds-cell-actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-1);justify-content:flex-end}.ds-menu-anchor{display:inline-flex;position:relative}.ds-section-title{color:var(--green-deep);font-size:var(--label-xl);letter-spacing:var(--tracking-label);text-transform:uppercase}.ds-section-title,.ds-subsection-title{font-family:var(--font-sans);font-weight:700;margin:0 0 var(--space-3)}.ds-subsection-title{color:var(--fg);font-size:var(--ui-body)}.ds-avatar-upload{display:inline-block;position:relative}.ds-avatar-upload__btn{bottom:0;position:absolute;right:0}.ds-check-group{display:flex;flex-direction:column;gap:var(--space-2)}.ds-register-actions{display:flex;gap:var(--space-3);justify-content:space-between;margin-top:var(--space-5)}.ds-text-center{text-align:center}.ds-text-muted{color:var(--gray);font-size:var(--ui-body-sm)}.ds-link{color:var(--link);text-decoration:none}.ds-link:hover{color:var(--link-hover)}.dashboard-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:900px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-card__header{align-items:flex-start;display:flex;gap:var(--space-3);justify-content:space-between;margin-bottom:var(--space-4)}.dashboard-card__title{align-items:center;color:var(--fg);display:flex;font-family:var(--font-sans);font-size:1rem;font-weight:700;gap:var(--space-2);margin:0}.dashboard-card__title svg{color:var(--green-med);flex-shrink:0}.dashboard-card__subtitle{color:var(--text-meta);font-size:.875rem;margin:var(--space-1) 0 0}.dashboard-meta{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-4)}.dashboard-meta__item{align-items:center;color:var(--text-meta);display:flex;font-size:.875rem;gap:var(--space-2)}.dashboard-meta__item strong{color:var(--fg)}.dashboard-section{border-top:1px solid var(--border-default);margin-top:var(--space-4);padding-top:var(--space-4)}.dashboard-section__title{color:var(--text-meta);font-family:var(--font-sans);font-size:.6875rem;font-weight:700;letter-spacing:.16em;margin:0 0 var(--space-3);text-transform:uppercase}.dashboard-meal-list,.dashboard-shopping-list{display:flex;flex-direction:column;gap:var(--space-2)}.dashboard-grid .dashboard-card--wide{grid-column:1/-1}.dashboard-meal-row,.dashboard-shopping-row{align-items:center;display:flex;gap:var(--space-3);justify-content:space-between}.dashboard-meal-row__info{align-items:center;display:flex;gap:var(--space-2);min-width:0}.dashboard-shopping-row{align-items:center;display:flex;gap:var(--space-3);justify-content:space-between}.dashboard-meal-name,.dashboard-shopping-name{color:var(--fg);font-size:.9375rem}.dashboard-shopping-name.is-done{color:var(--text-quiet);text-decoration:line-through}.dashboard-progress-list{display:flex;flex-direction:column;gap:var(--space-2)}.dashboard-progress-row{grid-gap:var(--space-2);align-items:center;display:grid;gap:var(--space-2);grid-template-columns:2.5rem 1fr 2.5rem}.dashboard-progress-day{color:var(--text-meta);font-size:.75rem;text-transform:capitalize}.dashboard-progress-pct{color:var(--text-meta);font-size:.75rem;text-align:right}.dashboard-empty{color:var(--text-meta);padding:var(--space-6) var(--space-4);text-align:center}.dashboard-empty svg{color:var(--gray-soft);height:2.5rem;margin-bottom:var(--space-3);width:2.5rem}.dashboard-empty h3{color:var(--fg);font-family:var(--font-display);font-style:italic;font-weight:600;margin:0 0 var(--space-2)}.dashboard-reminder{border-bottom:1px solid var(--border-default);padding:var(--space-3) 0}.dashboard-reminder:last-child{border-bottom:none}.dashboard-reminder__head{align-items:flex-start;display:flex;gap:var(--space-2);justify-content:space-between;margin-bottom:var(--space-1)}.dashboard-reminder__title{color:var(--fg);font-size:.9375rem;font-weight:600;margin:0}.dashboard-reminder__desc{color:var(--text-meta);font-size:.8125rem;margin:0 0 var(--space-2)}.dashboard-reminder__link{align-items:center;color:var(--link);display:inline-flex;font-size:.8125rem;font-weight:600;gap:var(--space-1);text-decoration:none}.dashboard-reminder__link:hover{color:var(--link-hover);text-decoration:underline}.dashboard-tip{align-items:flex-start;display:flex;gap:var(--space-3)}.dashboard-tip svg{color:var(--green-med);flex-shrink:0}.dashboard-tip h3{color:var(--fg);font-size:.9375rem;font-weight:700;margin:0 0 var(--space-1)}.dashboard-tip p{color:var(--text-meta);font-size:.875rem;line-height:1.5;margin:0}.dashboard-quick-actions{grid-gap:var(--space-2);display:grid;gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:640px){.dashboard-quick-actions{grid-template-columns:1fr}}.dashboard-quick-actions a{align-items:center;background:var(--surface-sunken);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--fg);display:flex;font-size:.875rem;font-weight:600;gap:var(--space-2);justify-content:center;padding:var(--space-3);text-decoration:none;transition:border-color .15s ease,background .15s ease}.dashboard-quick-actions a:hover{background:var(--paper);border-color:var(--green-med)}.admin-kpi-strip{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:var(--space-6)}@media (max-width:1100px){.admin-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.admin-kpi-strip{grid-template-columns:1fr}}.admin-kpi-card__head{align-items:center;color:var(--text-meta);display:flex;gap:var(--space-2);margin-bottom:var(--space-2)}.admin-kpi-card__head svg{color:var(--green-med);flex-shrink:0}.admin-kpi-card__label{color:var(--text-meta);font-size:.75rem;font-weight:600;line-height:1.3;margin:0}.admin-kpi-card__value{color:var(--fg);font-size:1.25rem;font-weight:700;line-height:1.2;margin:0}.admin-home-grid{margin-top:0}.mobile-top-nav{display:none}@media (max-width:768px){.app-container{--mobile-nav-height:3.25rem}.mobile-top-nav{align-items:center;background-color:var(--green-deep);box-shadow:0 2px 8px var(--alpha-black-10);color:var(--page-bg);display:flex;height:var(--mobile-nav-height);justify-content:space-between;left:0;padding:0 1rem;position:fixed;right:0;top:0;z-index:1100}.mobile-top-nav__brand{font-family:var(--font-sans);font-size:1.125rem;font-weight:600;letter-spacing:.01em}.mobile-top-nav__toggle{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--page-bg);cursor:pointer;display:flex;height:2.5rem;justify-content:center;transition:background-color .2s ease;width:2.5rem}.mobile-top-nav__toggle:focus-visible,.mobile-top-nav__toggle:hover{background-color:var(--alpha-green-20);outline:none}.mobile-nav-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:var(--alpha-black-10);inset:0;position:fixed;z-index:1101}.mobile-nav-sheet{background:var(--paper);bottom:0;display:flex;flex-direction:column;left:0;opacity:0;overflow:hidden;pointer-events:none;position:fixed;right:0;top:var(--mobile-nav-height);transform:translateY(-8px);transition:transform .25s ease,opacity .25s ease;z-index:1102}.mobile-nav-sheet.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-nav-sheet__user{background:var(--neutral-50);border-bottom:1px solid var(--neutral-200);padding:1rem 1.25rem}.mobile-nav-sheet__name{color:var(--fg);font-size:.95rem;font-weight:600;margin:0}.mobile-nav-sheet__role{color:var(--text-meta);font-size:.75rem;margin:.15rem 0 0;text-transform:capitalize}.mobile-nav-sheet__links{flex:1 1;overflow-y:auto;padding:.5rem 0}.mobile-nav-sheet__link{align-items:center;border-left:3px solid #0000;color:var(--fg);display:flex;font-size:.95rem;gap:.75rem;padding:.875rem 1.25rem;text-decoration:none;transition:background-color .2s ease,border-color .2s ease}.mobile-nav-sheet__link:hover{background:var(--neutral-50)}.mobile-nav-sheet__link.is-active{background:var(--alpha-green-20);border-left-color:var(--green-deep);color:var(--green-deep);font-weight:600}.mobile-nav-sheet__footer{background:var(--neutral-50);border-top:1px solid var(--neutral-200);display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1rem 1.25rem}.mobile-nav-sheet__action{align-items:center;border:1px solid #0000;border-radius:8px;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1rem;text-decoration:none;transition:background-color .2s ease;width:100%}.mobile-nav-sheet__action--settings{background:var(--info-bg);border-color:var(--info-border);color:var(--info)}.mobile-nav-sheet__action--settings.is-active{background:var(--info);color:var(--page-bg)}.mobile-nav-sheet__action--logout{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger)}.hamburger-button-collapsed,.sidebar{display:none!important}.app-container>:not(.sidebar):not(.hamburger-button-collapsed):not(.mobile-top-nav){margin-left:0;padding-left:1rem;padding-right:1rem;padding-top:calc(var(--mobile-nav-height) + .75rem)}.app-container.sidebar-collapsed>:not(.sidebar):not(.hamburger-button-collapsed):not(.mobile-top-nav){padding-left:1rem}}.portal-shell{background:#f8f7f4;background:var(--tmc-color-bg,#f8f7f4);min-height:100vh}.portal-shell__header{align-items:center;background:#fff;border-bottom:1px solid #e5e2db;border-bottom:1px solid var(--tmc-color-border,#e5e2db);display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.25rem}.portal-shell__brand{align-items:center;display:flex;gap:.75rem}.portal-shell__logo{align-items:center;background:#2f4f3f;background:var(--tmc-color-primary,#2f4f3f);border-radius:.75rem;color:#fff;display:inline-flex;font-weight:700;height:2.5rem;justify-content:center;width:2.5rem}.portal-shell__title{font-weight:600;margin:0}.portal-shell__user{color:#6b7280;color:var(--tmc-color-text-muted,#6b7280);font-size:.875rem;margin:.125rem 0 0}.portal-shell__nav{background:#fff;border-bottom:1px solid #e5e2db;border-bottom:1px solid var(--tmc-color-border,#e5e2db);display:flex;gap:.5rem;overflow-x:auto;padding:.75rem 1.25rem}.portal-shell__nav-link{align-items:center;border-radius:999px;color:#1f2937;color:var(--tmc-color-text,#1f2937);display:inline-flex;gap:.5rem;padding:.5rem .875rem;text-decoration:none;white-space:nowrap}.portal-shell__nav-link--active{background:#2f4f3f1a;color:#2f4f3f;color:var(--tmc-color-primary,#2f4f3f);font-weight:600}.portal-shell__main{margin:0 auto;max-width:960px;padding:1.5rem 1.25rem 3rem}.portal-login .login-container{min-height:100vh}.portal-preferences__actions{display:flex;justify-content:flex-end;margin-top:1.5rem}.portal-home__grid{grid-gap:1rem;display:grid;gap:1rem}@media (min-width:768px){.portal-home__grid{grid-template-columns:repeat(2,1fr)}.portal-home__grid>:last-child:nth-child(odd){grid-column:1/-1}}.portal-home__card-icon{display:inline-block;margin-right:.35rem;vertical-align:-.15em}.portal-plans__week{margin-bottom:1.5rem}.portal-plans__week-title{color:#6b7280;color:var(--tmc-color-text-muted,#6b7280);font-size:.875rem;font-weight:600;letter-spacing:.06em;margin:0 0 .75rem;text-transform:uppercase}.portal-plans__list{grid-gap:.75rem;display:grid;gap:.75rem}.portal-plans__card-head{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.portal-plans__card-title{font-size:1.05rem;font-weight:600;margin:0}.portal-plans__card-range{font-size:.875rem;margin:.25rem 0 0}.portal-plans__card-hint{color:#2f4f3f;color:var(--tmc-color-primary,#2f4f3f);font-size:.875rem;margin:0 0 .75rem}.portal-plan-detail__back{align-items:center;color:#6b7280;color:var(--tmc-color-text-muted,#6b7280);display:inline-flex;font-size:.875rem;gap:.35rem;margin-bottom:1rem;text-decoration:none}.portal-plan-detail__back:hover{color:#2f4f3f;color:var(--tmc-color-primary,#2f4f3f)}.portal-plan-detail__documents{background:#fff;border:1px solid #e5e2db;border:1px solid var(--tmc-color-border,#e5e2db);border-radius:.75rem;margin-bottom:1.25rem;padding:1rem}.portal-plan-detail__documents-title{align-items:center;display:flex;font-weight:600;gap:.5rem;margin:0 0 .75rem}.portal-plan-detail__documents-actions{display:flex;flex-wrap:wrap;gap:.5rem}.portal-plan-detail__recipe-docs{margin-top:.75rem}.portal-plan-detail__recipe-docs summary{align-items:center;color:#6b7280;color:var(--tmc-color-text-muted,#6b7280);cursor:pointer;display:flex;font-size:.875rem;gap:.35rem}.portal-plan-detail__recipe-docs-list{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.portal-recipes__search{max-width:28rem}.portal-recipes__grid{grid-gap:1rem;display:grid;gap:1rem}@media (min-width:640px){.portal-recipes__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:960px){.portal-recipes__grid{grid-template-columns:repeat(3,1fr)}}.onboarding-page{align-items:flex-start;background:#f9f8f6;background:var(--paper-tint,#f9f8f6);display:flex;justify-content:center;min-height:100vh;padding:2rem 1rem}.onboarding-card{max-width:720px;width:100%}.onboarding-card__header{margin-bottom:1.5rem}.onboarding-card__title{font-family:Georgia,serif;font-family:var(--font-display,Georgia,serif);font-size:1.75rem;margin:0 0 .5rem}.onboarding-card__nav{border-top:1px solid #dcdcdc;border-top:1px solid var(--rule,#dcdcdc);display:flex;gap:1rem;justify-content:space-between;margin-top:2rem;padding-top:1.5rem}.onboarding-review__section{margin-bottom:1.25rem}.onboarding-review__section h3{color:#3c4c42;color:var(--green-med,#3c4c42);font-size:.75rem;letter-spacing:.2em;margin:0 0 .35rem;text-transform:uppercase}.onboarding-review__section p{font-size:.95rem;margin:.15rem 0}.grocery-group-toggle{display:inline-flex;flex-wrap:wrap;gap:.35rem}.plan-share-control{align-items:center;display:inline-flex;flex-wrap:wrap;gap:.5rem}.plan-share-control__msg{color:#3c4c42;color:var(--green-med,#3c4c42);font-size:.8rem}.plan-share-control__error{margin-top:.25rem;width:100%}.public-share-page__back{align-items:center;color:#2d3d23;color:var(--green-deep,#2d3d23);display:inline-flex;gap:.35rem;margin-bottom:1rem;text-decoration:none}.invite-client-form{grid-gap:1rem;display:grid;gap:1rem}.invite-client-form__link{align-items:stretch;display:flex;gap:.5rem}.invite-client-form__link input{flex:1 1;font-size:.85rem}
/*# sourceMappingURL=main.9afbdf3e.css.map*/