:root{--color-black:#000;--color-white:#fff;--color-gray-100:#e0e0e0;--color-gray-200:silver;--color-gray-300:#9e9e9e;--color-gray-400:grey;--color-gray-500:#606060;--color-gray-600:#505050;--color-gray-700:#3a3a3a;--color-gray-800:#2a2a2a;--color-gray-850:#252525;--color-gray-900:#202020;--color-gray-950:#151515;--color-gray-975:#111;--color-primary-100:#ffcdcd;--color-primary-200:#ffb3b3;--color-primary-300:#ff9a9a;--color-primary-400:#ff8e8e;--color-primary-500:#ff7d7d;--color-primary-600:#c8301e;--color-primary-700:#b52c1c;--color-primary-800:#a02518;--color-primary-900:#8c2014;--color-success:#4caf50;--color-warning:#ff9800;--color-error:#f44336;--color-info:#2196f3;--background-dark:var(--color-black);--background-card:var(--color-gray-975);--background-elevated:var(--color-gray-950);--background-input:var(--color-gray-850);--text-color:var(--color-gray-100);--text-muted:var(--color-gray-300);--text-disabled:var(--color-gray-500);--text-inverse:var(--color-black);--accent-color:var(--color-primary-600);--accent-hover:var(--color-primary-500);--accent-active:var(--color-primary-700);--accent-light:var(--color-primary-400);--border-light:#ffffff1a;--border-medium:#ffffff26;--border-strong:#fff3;--border-accent:var(--accent-color);--shadow-sm:0 1px 2px #0006;--shadow-md:0 3px 6px #00000080;--shadow-lg:0 5px 15px #0009;--shadow-xl:0 10px 24px #000000b3;--shadow-inner:inset 0 2px 4px #0000004d;--card-shadow:0 3px 10px #0000004d;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--font-family-primary:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",system-ui,"Segoe UI","Roboto","Helvetica Neue",Arial,sans-serif;--font-family-display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Montserrat",system-ui,sans-serif;--font-family-mono:"SF Mono","Monaco","Cascadia Code","Roboto Mono",Consolas,"Courier New",monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-loose:1.8;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-round:9999px;--header-height:60px;--sidebar-width:250px;--container-width:1400px;--panel-padding:20px;--z-negative:-1;--z-base:0;--z-above:10;--z-dropdown:20;--z-sticky:30;--z-fixed:40;--z-modal:50;--z-popover:60;--z-tooltip:70;--z-toast:80;--z-max:9999;--transition-quick:0.1s ease;--transition-base:0.2s ease;--transition-slow:0.3s ease;--animation-spin:spin 1s linear infinite;--animation-ping:ping 1.5s cubic-bezier(0,0,0.2,1) infinite;--animation-pulse:pulse 2s cubic-bezier(0.4,0,0.6,1) infinite;--animation-bounce:bounce 1s infinite}*,:after,:before{box-sizing:border-box}blockquote,body,dd,dl,figure,h1,h2,h3,h4,h5,h6,html,p{margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background-dark);color:var(--text-color);font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;min-height:100vh;scroll-behavior:smooth;text-rendering:optimizeSpeed}#root,body,html{height:100%}img,picture{display:block;max-width:100%}button,input,select,textarea{color:inherit;font:inherit}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}a{color:inherit}ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}button{background:none;border:none;cursor:pointer;padding:0}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}:root{--breakpoint-xs:320px;--breakpoint-sm:480px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1200px;--breakpoint-xxl:1400px}@custom-media --xs-only (max-width: 320px);@custom-media --sm-only (min-width: 321px) and (max-width: 480px);@custom-media --mobile (max-width: 480px);@custom-media --tablet (min-width: 481px) and (max-width: 768px);@custom-media --mobile-tablet (max-width: 768px);@custom-media --laptop (min-width: 769px) and (max-width: 1024px);@custom-media --desktop (min-width: 1025px) and (max-width: 1200px);@custom-media --large-desktop (min-width: 1201px);@custom-media --non-mobile (min-width: 481px);@custom-media --non-tablet (min-width: 769px);.h1,h1{font-size:var(--text-4xl)}.h1,.h2,h1,h2{color:var(--text-color);font-weight:var(--font-weight-bold);line-height:1.2;margin-bottom:var(--space-4)}.h2,h2{font-size:var(--text-3xl)}.h3,h3{font-size:var(--text-2xl);line-height:1.3}.h3,.h4,h3,h4{color:var(--text-color);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-3)}.h4,h4{font-size:var(--text-xl);line-height:1.4}.h5,h5{font-size:var(--text-lg);line-height:1.4}.h5,.h6,h5,h6{color:var(--text-color);font-weight:var(--font-weight-medium);margin-bottom:var(--space-2)}.h6,h6{line-height:1.5}.h6,h6,p{font-size:var(--text-base)}p{color:var(--text-color);line-height:1.6;margin-bottom:var(--space-4)}.lead{font-size:var(--text-lg);line-height:1.5;margin-bottom:var(--space-5)}.small,small{font-size:var(--text-sm);line-height:1.5}.text-xs{font-size:var(--text-xs);line-height:1.5}.text-success{color:var(--color-success)!important}.text-warning{color:var(--color-warning)!important}.text-danger{color:var(--color-error)!important}.text-info{color:var(--color-info)!important}.font-semibold{font-weight:var(--font-weight-semibold)!important}.text-underline{text-decoration:underline!important}.text-no-underline{text-decoration:none!important}.text-line-through{text-decoration:line-through!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:1.8!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-break{word-wrap:break-word!important}.text-nowrap{white-space:nowrap!important}a{color:var(--accent-color);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--accent-color-hover);text-decoration:underline}ol,ul{margin-bottom:var(--space-4);padding-left:var(--space-5)}li{margin-bottom:var(--space-2)}.list-inline,.list-unstyled{list-style:none;padding-left:0}.list-inline-item{display:inline-block;margin-right:var(--space-3)}.list-inline-item:last-child{margin-right:0}blockquote{background-color:var(--background-elevated);border-left:4px solid var(--accent-color);font-size:var(--text-lg);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4)}blockquote footer{color:var(--text-muted);font-size:var(--text-sm);margin-top:var(--space-2)}code{border-radius:var(--radius-sm);color:var(--color-code);font-family:var(--font-family-mono);font-size:.9em;padding:var(--space-1) var(--space-2)}code,pre{background-color:var(--background-code)}pre{border-radius:var(--radius-md);margin-bottom:var(--space-4);overflow-x:auto;padding:var(--space-3)}pre code{background-color:initial;color:inherit;font-size:inherit;padding:0}hr{border:0;border-top:1px solid var(--border-light);margin:var(--space-5) 0}@media (max-width:992px){.h1,h1{font-size:var(--text-3xl)}.h2,h2{font-size:var(--text-2xl)}.h3,h3{font-size:var(--text-xl)}.lead{font-size:var(--text-base)}}@media (max-width:768px){.h1,h1{font-size:var(--text-2xl)}.h1,.h2,h1,h2{margin-bottom:var(--space-3)}.h2,h2{font-size:var(--text-xl)}.h3,h3{font-size:var(--text-lg)}.h3,.h4,h3,h4{margin-bottom:var(--space-2)}.h4,h4{font-size:var(--text-base)}ol,p,ul{margin-bottom:var(--space-3)}blockquote{font-size:var(--text-base);padding:var(--space-2) var(--space-3)}}@media (max-width:480px){.h1,h1{font-size:var(--text-xl)}.h2,h2{font-size:var(--text-lg)}.h3,h3{font-size:var(--text-base)}ol,p,ul{font-size:var(--text-sm)}}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-color);font-family:var(--font-family-primary);margin:0;overflow-x:hidden;padding:0}#root,body,html{background-color:var(--background-dark);min-height:100vh;position:relative}div,section{background-color:initial}body:after{content:none;display:none}.savoro-page-container{margin-bottom:0;padding-bottom:0}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideInUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideInDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes slideInLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.animate-spin{animation:spin 1s linear infinite}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-bounce{animation:bounce 1s infinite}.animate-fade-in{animation:fadeIn .3s ease-in}.animate-fade-out{animation:fadeOut .3s ease-out}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.justify-content-evenly{justify-content:space-evenly!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:var(--font-weight-light)!important}.font-weight-normal{font-weight:var(--font-weight-normal)!important}.font-weight-medium{font-weight:var(--font-weight-medium)!important}.font-weight-semibold{font-weight:var(--font-weight-semibold)!important}.font-weight-bold{font-weight:var(--font-weight-bold)!important}.text-secondary{color:var(--secondary-color)!important}.text-success{color:var(--success-color)!important}.text-error{color:var(--error-color)!important}.text-warning{color:var(--warning-color)!important}.text-info{color:var(--info-color)!important}.bg-secondary{background-color:var(--secondary-color)!important}.bg-success{background-color:var(--success-color)!important}.bg-error{background-color:var(--error-color)!important}.bg-warning{background-color:var(--warning-color)!important}.bg-info{background-color:var(--info-color)!important}.bg-light{background-color:var(--background-light)!important}.border{border:1px solid var(--border-color)!important}.border-top{border-top:1px solid var(--border-color)!important}.border-right{border-right:1px solid var(--border-color)!important}.border-bottom{border-bottom:1px solid var(--border-color)!important}.border-left{border-left:1px solid var(--border-color)!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.m-6{margin:var(--space-6)!important}.m-8{margin:var(--space-8)!important}.m-10{margin:var(--space-10)!important}.m-12{margin:var(--space-12)!important}.m-16{margin:var(--space-16)!important}.mt-6{margin-top:var(--space-6)!important}.mt-8{margin-top:var(--space-8)!important}.mt-10{margin-top:var(--space-10)!important}.mt-12{margin-top:var(--space-12)!important}.mt-16{margin-top:var(--space-16)!important}.mr-6{margin-right:var(--space-6)!important}.mr-8{margin-right:var(--space-8)!important}.mr-10{margin-right:var(--space-10)!important}.mr-12{margin-right:var(--space-12)!important}.mr-16{margin-right:var(--space-16)!important}.mb-6{margin-bottom:var(--space-6)!important}.mb-8{margin-bottom:var(--space-8)!important}.mb-10{margin-bottom:var(--space-10)!important}.mb-12{margin-bottom:var(--space-12)!important}.mb-16{margin-bottom:var(--space-16)!important}.ml-6{margin-left:var(--space-6)!important}.ml-8{margin-left:var(--space-8)!important}.ml-10{margin-left:var(--space-10)!important}.ml-12{margin-left:var(--space-12)!important}.ml-16{margin-left:var(--space-16)!important}.p-6{padding:var(--space-6)!important}.p-8{padding:var(--space-8)!important}.p-10{padding:var(--space-10)!important}.p-12{padding:var(--space-12)!important}.p-16{padding:var(--space-16)!important}.pt-6{padding-top:var(--space-6)!important}.pt-8{padding-top:var(--space-8)!important}.pt-10{padding-top:var(--space-10)!important}.pt-12{padding-top:var(--space-12)!important}.pt-16{padding-top:var(--space-16)!important}.pr-6{padding-right:var(--space-6)!important}.pr-8{padding-right:var(--space-8)!important}.pr-10{padding-right:var(--space-10)!important}.pr-12{padding-right:var(--space-12)!important}.pr-16{padding-right:var(--space-16)!important}.pb-6{padding-bottom:var(--space-6)!important}.pb-8{padding-bottom:var(--space-8)!important}.pb-10{padding-bottom:var(--space-10)!important}.pb-12{padding-bottom:var(--space-12)!important}.pb-16{padding-bottom:var(--space-16)!important}.pl-6{padding-left:var(--space-6)!important}.pl-8{padding-left:var(--space-8)!important}.pl-10{padding-left:var(--space-10)!important}.pl-12{padding-left:var(--space-12)!important}.pl-16{padding-left:var(--space-16)!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{left:0;position:fixed;right:0;z-index:1030}.fixed-bottom{bottom:0}.sticky-top{position:sticky;top:0;z-index:1020}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.shadow-none{box-shadow:none!important}.shadow-sm{box-shadow:var(--shadow-sm)!important}.shadow{box-shadow:var(--shadow-md)!important}.shadow-lg{box-shadow:var(--shadow-lg)!important}.sr-only,.sr-only-focusable:not(:focus){clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.container{margin-left:auto;margin-right:auto;max-width:var(--container-width)}.container,.container-fluid{padding-left:var(--space-5);padding-right:var(--space-5);width:100%}.container-sm{max-width:640px}.container-md{max-width:768px}.container-lg{max-width:1024px}.container-xl{max-width:1200px}.page-container{display:flex;flex-direction:column;min-height:calc(100vh - var(--header-height));padding-bottom:var(--space-5);padding-top:var(--space-5)}.grid{grid-gap:var(--space-5);gap:var(--space-5)}.grid-sm{gap:var(--space-2)}.grid-lg{gap:var(--space-8)}.card-grid{grid-gap:var(--space-5);display:grid;gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.two-column{display:flex;gap:var(--space-5)}.two-column>:first-child{flex:1 1}.two-column>:last-child{flex:2 1}.panel{padding:var(--panel-padding)}@media (max-width:1200px){.container{max-width:1140px}}@media (max-width:1024px){.container{max-width:960px}.two-column{flex-direction:column}.two-column>:first-child,.two-column>:last-child{flex:1 1}}@media (max-width:768px){.container{max-width:720px}.container,.container-fluid{padding-left:var(--space-4);padding-right:var(--space-4)}.panel{padding:var(--space-4)}.card-grid,.grid{gap:var(--space-4)}.card-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:480px){.container,.container-fluid{padding-left:var(--space-3);padding-right:var(--space-3)}.panel{border-radius:var(--radius-sm);padding:var(--space-3)}.grid{display:flex;flex-direction:column}.card-grid,.grid{gap:var(--space-3)}.card-grid{grid-template-columns:1fr}.page-container{padding-bottom:var(--space-3);padding-top:var(--space-3)}}.grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(12,1fr)}.grid-no-gutters{gap:0}.grid-sm-gutters{gap:var(--space-2)}.grid-lg-gutters{gap:var(--space-6)}.col-span-1{grid-column:span 1}.col-span-2{grid-column:span 2}.col-span-3{grid-column:span 3}.col-span-4{grid-column:span 4}.col-span-5{grid-column:span 5}.col-span-6{grid-column:span 6}.col-span-7{grid-column:span 7}.col-span-8{grid-column:span 8}.col-span-9{grid-column:span 9}.col-span-10{grid-column:span 10}.col-span-11{grid-column:span 11}.col-span-12{grid-column:span 12}.col-start-1{grid-column-start:1}.col-start-2{grid-column-start:2}.col-start-3{grid-column-start:3}.col-start-4{grid-column-start:4}.col-start-5{grid-column-start:5}.col-start-6{grid-column-start:6}.col-start-7{grid-column-start:7}.col-start-8{grid-column-start:8}.col-start-9{grid-column-start:9}.col-start-10{grid-column-start:10}.col-start-11{grid-column-start:11}.col-start-12{grid-column-start:12}.row-span-1{grid-row:span 1}.row-span-2{grid-row:span 2}.row-span-3{grid-row:span 3}.row-span-4{grid-row:span 4}.row-span-5{grid-row:span 5}.row-span-6{grid-row:span 6}.grid-auto-fit{grid-gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-auto-fill,.grid-auto-fit{display:grid;gap:var(--space-4)}.grid-auto-fill{grid-gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.grid-2-col{grid-gap:var(--space-4);grid-template-columns:repeat(2,1fr)}.grid-2-col,.grid-3-col{display:grid;gap:var(--space-4)}.grid-3-col{grid-gap:var(--space-4);grid-template-columns:repeat(3,1fr)}.grid-4-col{grid-gap:var(--space-4);grid-template-columns:repeat(4,1fr)}.grid-4-col,.grid-5-col{display:grid;gap:var(--space-4)}.grid-5-col{grid-gap:var(--space-4);grid-template-columns:repeat(5,1fr)}.grid-6-col{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(6,1fr)}.grid-justify-start{justify-content:start}.grid-justify-center{justify-content:center}.grid-justify-end{justify-content:end}.grid-justify-between{justify-content:space-between}.grid-justify-around{justify-content:space-around}.grid-justify-evenly{justify-content:space-evenly}.grid-align-start{align-items:start}.grid-align-center{align-items:center}.grid-align-end{align-items:end}.grid-align-stretch{align-items:stretch}.grid-dense{grid-auto-flow:dense}.row{display:flex;flex-wrap:wrap;margin:0 calc(var(--space-4)*-.5)}.row-no-gutters{margin:0}.row-no-gutters>.col{padding:0}.col{flex:1 0;padding:0 calc(var(--space-4)*.5)}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}@media (min-width:576px){.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}}@media (min-width:768px){.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}}@media (min-width:992px){.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}}@media (min-width:1200px){.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}}@media (max-width:992px){.grid-lg-auto-fit{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.grid-lg-2-col{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.grid{gap:var(--space-3)}.grid-md-auto-fit{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.grid-md-1-col{grid-template-columns:1fr}.grid-2-col,.grid-3-col,.grid-4-col,.grid-5-col,.grid-6-col,.grid-md-2-col{grid-template-columns:repeat(2,1fr)}.col-md-span-12{grid-column:1/-1}}@media (max-width:480px){.grid{gap:var(--space-2)}.grid-sm-auto-fit{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.grid-2-col,.grid-3-col,.grid-4-col,.grid-5-col,.grid-6-col,.grid-sm-1-col{grid-template-columns:1fr}.col-sm-span-12{grid-column:1/-1}}.savoro-page{background-color:var(--background-dark);color:var(--text-color);display:flex;flex-direction:column;height:calc(100vh - 70px);margin-bottom:0;overflow:hidden;padding:0;position:relative;width:100%}.savoro-page.scrollable{height:auto;min-height:calc(100vh - 70px);overflow-y:auto}.savoro-page-container{display:flex;flex:1 1;flex-direction:column;margin:0 auto;max-width:var(--container-max-width);padding:var(--space-5) var(--space-5) 0;width:100%}.page-section-description,.page-section-title{margin-bottom:var(--space-5)}.page-section-description{font-size:var(--text-base);max-width:700px}.page-with-sidebar{display:flex;gap:var(--space-6)}.page-sidebar{flex-shrink:0;width:280px}.page-main-content{flex:1 1}@media (max-width:992px){.savoro-page-container{padding:var(--space-4) var(--space-4) 0}.savoro-page{margin-bottom:0;padding:0}.page-with-sidebar{flex-direction:column}.page-sidebar{margin-bottom:var(--space-6);width:100%}}@media (max-width:768px){.savoro-page{overflow-y:auto}.savoro-page-container{margin-bottom:0;padding:var(--space-4) var(--space-4) 0}.page-section{margin-bottom:var(--space-6)}.page-section-title{font-size:var(--text-lg);margin-bottom:var(--space-4)}}@media (max-width:480px){.savoro-page-container{margin-bottom:0;padding:var(--space-3) var(--space-3) 0}.savoro-page{margin-bottom:0;padding:0}.page-section{margin-bottom:var(--space-5)}.page-section-title{font-size:var(--text-base);margin-bottom:var(--space-3)}.page-section-description{font-size:var(--text-sm)}}.page{display:flex;flex-direction:column;min-height:100vh}.page-content{flex:1 1;margin:0 auto;max-width:var(--container-max-width);padding:var(--space-4);width:100%}.page-content-full{max-width:none;padding:0}.page-content-narrow{max-width:768px;max-width:var(--container-narrow-width,768px)}.page-header{margin-bottom:var(--space-5)}.page-title{font-size:var(--text-2xl);font-weight:var(--font-weight-bold)}.page-description{color:var(--text-muted);font-size:var(--text-base);max-width:700px}.page-actions{display:flex;gap:var(--space-3);margin-top:var(--space-4)}.page-section{margin-bottom:var(--space-8)}.page-section-title{color:var(--text-color);font-size:var(--text-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-4)}.page-section-description{color:var(--text-muted);margin-bottom:var(--space-4)}.page-columns{display:flex;gap:var(--space-6)}.page-column{flex:1 1}.page-column-main{flex:3 1}.page-column-sidebar{flex:1 1}.page-back-link{align-items:center;color:var(--text-muted);display:inline-flex;font-size:var(--text-sm);margin-bottom:var(--space-3);text-decoration:none;transition:color .2s ease}.page-back-link:hover{color:var(--accent-color)}.page-back-link i,.page-back-link svg{margin-right:var(--space-1)}.page-hero{background-color:var(--background-elevated);border-bottom:1px solid var(--border-color);padding:var(--space-10) 0;text-align:center}.page-hero-title{color:var(--text-color);font-size:var(--text-4xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-4)}.page-hero-subtitle{color:var(--text-muted);font-size:var(--text-xl);margin-bottom:var(--space-6);margin-left:auto;margin-right:auto;max-width:700px}.page-hero-actions{gap:var(--space-4)}.page-hero-actions,.page-loading{display:flex;justify-content:center}.page-loading{align-items:center;flex-direction:column;height:50vh}.page-loading-spinner{animation:spin 1s linear infinite;border:3px solid rgba(var(--accent-color-rgb),.3);border-radius:50%;border-top-color:var(--accent-color);display:inline-block;height:50px;margin-bottom:var(--space-4);width:50px}.page-loading-text{color:var(--text-muted);font-size:var(--text-base)}.page-error{align-items:center;display:flex;flex-direction:column;height:50vh;justify-content:center;text-align:center}.page-error-icon{color:var(--error-color);font-size:48px;margin-bottom:var(--space-4)}.page-error-title{color:var(--text-color);font-size:var(--text-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}.page-error-message{color:var(--text-muted);margin-bottom:var(--space-4);max-width:600px}.page-error-actions{margin-top:var(--space-4)}@media (max-width:768px){.page-content{padding:var(--space-3)}.page-title{font-size:var(--text-xl)}.page-columns{flex-direction:column}.page-hero{padding:var(--space-6) var(--space-3)}.page-hero-title{font-size:var(--text-3xl)}.page-hero-subtitle{font-size:var(--text-lg)}.page-hero-actions{flex-direction:column;gap:var(--space-2)}}@media (max-width:576px){.page-content{padding:var(--space-2)}.page-title{font-size:var(--text-lg)}.page-hero-title{font-size:var(--text-2xl)}.page-section-title{font-size:var(--text-lg)}}.app-layout{background-color:var(--background-dark);display:flex;flex-direction:column;min-height:100vh}.app-content-container{animation:fadeIn .3s ease;flex:1 1;margin:0 auto;max-width:1200px;padding:var(--space-5) var(--space-4);width:100%}.app-loading{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-lg);justify-content:center;min-height:100vh;width:100%}.app-loading:after{animation:loading 1.5s infinite;content:"..."}@keyframes loading{0%{content:"."}33%{content:".."}66%{content:"..."}}@media (max-width:768px){.app-content-container{padding:var(--space-4) var(--space-3)}}@media (max-width:480px){.app-content-container{padding:var(--space-3) var(--space-2)}}.app-header{background-color:var(--background-card);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);position:sticky;top:0;transition:all .3s ease;width:100%;z-index:100}.app-header-content{align-items:center;display:flex;height:60px;height:var(--header-height,60px);justify-content:space-between;margin:0 auto;max-width:var(--container-max-width);padding:var(--space-3) var(--space-4)}.app-header-logo{align-items:center;color:var(--accent-color);display:flex;font-size:var(--text-xl);font-weight:var(--font-weight-bold);text-decoration:none}.app-header-logo img{height:32px;margin-right:var(--space-2)}.app-header-nav{align-items:center;display:flex}.app-header-nav-items{display:flex;list-style:none;margin:0;padding:0}.app-header-nav-item{margin:0 var(--space-3)}.app-header-nav-link{border-bottom:2px solid #0000;color:var(--text-color);font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-1);text-decoration:none;transition:all .2s ease}.app-header-nav-link.active,.app-header-nav-link:hover{border-bottom-color:var(--accent-color);color:var(--accent-color)}.app-header-actions{align-items:center;display:flex}.app-header-action-button{background:none;border:none;border-radius:var(--radius-md);color:var(--text-color);cursor:pointer;font-size:var(--text-base);margin-left:var(--space-2);padding:var(--space-2);transition:all .2s ease}.app-header-action-button:hover{background-color:var(--background-elevated);color:var(--accent-color)}.app-header-user{align-items:center;display:flex;margin-left:var(--space-3)}.app-header-user-avatar{align-items:center;background-color:var(--background-elevated);border-radius:50%;color:var(--text-color);display:flex;font-weight:var(--font-weight-semibold);height:32px;justify-content:center;margin-right:var(--space-2);width:32px}.app-header-user-name{font-size:var(--text-sm);font-weight:var(--font-weight-medium)}.app-header-mobile-toggle{background:none;border:none;color:var(--text-color);cursor:pointer;display:none;font-size:24px;padding:var(--space-2)}.app-header.scrolled{background-color:var(--background-card);box-shadow:var(--shadow-md)}.app-header.transparent{background-color:initial;border-bottom:none;box-shadow:none}.app-header.transparent.scrolled{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:rgba(var(--background-card-rgb),.95);border-bottom:1px solid var(--border-color)}@media (max-width:768px){.app-header-content{padding:var(--space-3)}.app-header-nav-items{display:none}.app-header-mobile-toggle{display:block}.app-header-actions{margin-left:auto}}@media (max-width:576px){.app-header-content{height:52px;height:var(--header-height-mobile,52px);padding:var(--space-2)}.app-header-logo{font-size:var(--text-lg)}.app-header-logo img{height:24px}.app-header-user-name{display:none}}.app-footer{background-color:var(--background-card);border-top:1px solid var(--border-color);margin-top:auto;padding:var(--space-8) 0}.app-footer-content{display:flex;flex-wrap:wrap;justify-content:space-between;margin:0 auto;max-width:var(--container-max-width);padding:0 var(--space-4)}.app-footer-brand{flex:0 0 100%;margin-bottom:var(--space-6)}@media (min-width:768px){.app-footer-brand{flex:0 0 25%;margin-bottom:0}}.app-footer-logo{align-items:center;color:var(--accent-color);display:flex;font-size:var(--text-xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-3);text-decoration:none}.app-footer-logo img{height:32px;margin-right:var(--space-2)}.app-footer-tagline{color:var(--text-muted);font-size:var(--text-sm);margin-bottom:var(--space-4)}.app-footer-social{display:flex;gap:var(--space-3)}.app-footer-social-link{align-items:center;background-color:var(--background-elevated);border-radius:50%;color:var(--text-color);display:flex;height:36px;justify-content:center;text-decoration:none;transition:all .2s ease;width:36px}.app-footer-social-link:hover{background-color:var(--accent-color);color:#fff;transform:translateY(-2px)}.app-footer-nav{display:flex;flex:0 0 100%;flex-wrap:wrap;gap:var(--space-6);margin-top:var(--space-6)}@media (min-width:768px){.app-footer-nav{flex:0 0 70%;margin-top:0}}.app-footer-nav-column{flex:1 0 calc(50% - var(--space-3))}@media (min-width:576px){.app-footer-nav-column{flex:1 0 calc(33.333% - var(--space-4))}}@media (min-width:992px){.app-footer-nav-column{flex:1 0 calc(25% - var(--space-4))}}.app-footer-nav-heading{color:var(--text-color);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-3)}.app-footer-nav-links{list-style:none;margin:0;padding:0}.app-footer-nav-link{margin-bottom:var(--space-2)}.app-footer-nav-link a{color:var(--text-muted);font-size:var(--text-sm);text-decoration:none;transition:color .2s ease}.app-footer-nav-link a:hover{color:var(--accent-color)}.app-footer-bottom{align-items:center;border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;justify-content:space-between;margin-left:auto;margin-right:auto;margin-top:var(--space-8);max-width:var(--container-max-width);padding-left:var(--space-4);padding-right:var(--space-4);padding-top:var(--space-4)}.app-footer-copyright{color:var(--text-muted);flex:0 0 100%;font-size:var(--text-xs);margin-bottom:var(--space-3);text-align:center}.app-footer-legal{display:flex;flex:0 0 100%;flex-wrap:wrap;gap:var(--space-4);justify-content:center}@media (min-width:768px){.app-footer-copyright{flex:0 0 auto;margin-bottom:0;text-align:left}.app-footer-legal{flex:0 0 auto;justify-content:flex-end}}.app-footer-legal-link{color:var(--text-muted);font-size:var(--text-xs);text-decoration:none;transition:color .2s ease}.app-footer-legal-link:hover{color:var(--accent-color)}.app-footer-newsletter{margin-top:var(--space-4)}.app-footer-newsletter-heading{color:var(--text-color);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}.app-footer-newsletter-text{color:var(--text-muted);font-size:var(--text-xs);margin-bottom:var(--space-3)}.app-footer-newsletter-form{display:flex}.app-footer-newsletter-input{background-color:var(--background-elevated);border:1px solid var(--border-color);border-bottom-left-radius:var(--radius-md);border-right:none;border-top-left-radius:var(--radius-md);color:var(--text-color);flex:1 1;font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}.app-footer-newsletter-input:focus{border-color:var(--accent-color);outline:none}.app-footer-newsletter-button{background-color:var(--accent-color);border:none;border-bottom-right-radius:var(--radius-md);border-top-right-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:var(--text-sm);padding:var(--space-2) var(--space-3);transition:background-color .2s ease}.app-footer-newsletter-button:hover{background-color:var(--accent-hover)}.app-sidebar{background-color:var(--background-card);border-right:1px solid var(--border-color);display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;transition:transform .3s ease;width:250px;width:var(--sidebar-width,250px);z-index:90}.app-sidebar-collapsed{width:70px;width:var(--sidebar-collapsed-width,70px)}.app-sidebar-hidden{transform:translateX(-100%)}.app-sidebar-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;height:60px;height:var(--header-height,60px);padding:var(--space-3) var(--space-4)}.app-sidebar-logo{align-items:center;color:var(--accent-color);display:flex;font-size:var(--text-lg);font-weight:var(--font-weight-bold);overflow:hidden;text-decoration:none;white-space:nowrap}.app-sidebar-logo img{height:28px;margin-right:var(--space-2);min-width:28px}.app-sidebar-collapsed .app-sidebar-logo span{display:none}.app-sidebar-toggle{background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;margin-left:auto;padding:var(--space-1);transition:all .2s ease}.app-sidebar-toggle:hover{background-color:var(--background-elevated);color:var(--accent-color)}.app-sidebar-content{flex:1 1;overflow-y:auto;padding:var(--space-4) 0}.app-sidebar-nav{list-style:none;margin:0;padding:0}.app-sidebar-nav-item{margin:var(--space-1) 0}.app-sidebar-nav-link{align-items:center;border-left:3px solid #0000;color:var(--text-color);display:flex;font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-4);text-decoration:none;transition:all .2s ease}.app-sidebar-nav-link.active,.app-sidebar-nav-link:hover{background-color:var(--background-elevated);color:var(--accent-color)}.app-sidebar-nav-link.active{border-left-color:var(--accent-color)}.app-sidebar-nav-icon{align-items:center;display:flex;font-size:var(--text-lg);height:20px;justify-content:center;margin-right:var(--space-3);width:20px}.app-sidebar-collapsed .app-sidebar-nav-icon{margin-left:var(--space-1);margin-right:0}.app-sidebar-nav-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar-collapsed .app-sidebar-nav-text{display:none}.app-sidebar-section{margin-top:var(--space-6);padding:0 var(--space-4)}.app-sidebar-section-title{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.05em;margin-bottom:var(--space-2);padding:0 var(--space-2);text-transform:uppercase}.app-sidebar-collapsed .app-sidebar-section-title{font-size:10px;text-align:center}.app-sidebar-footer{border-top:1px solid var(--border-color);padding:var(--space-3) var(--space-4)}.app-sidebar-user,.app-sidebar-user-avatar{align-items:center;display:flex}.app-sidebar-user-avatar{background-color:var(--background-elevated);border-radius:50%;color:var(--text-color);font-weight:var(--font-weight-semibold);height:32px;justify-content:center;margin-right:var(--space-2);width:32px}.app-sidebar-collapsed .app-sidebar-user-avatar{margin-right:0}.app-sidebar-user-info{overflow:hidden}.app-sidebar-collapsed .app-sidebar-user-info{display:none}.app-sidebar-user-name{color:var(--text-color);font-size:var(--text-sm);font-weight:var(--font-weight-medium)}.app-sidebar-user-email,.app-sidebar-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar-user-email{color:var(--text-muted);font-size:var(--text-xs)}.app-sidebar-tooltip{background-color:var(--background-elevated);border-radius:var(--radius-sm);color:var(--text-color);font-size:var(--text-xs);left:calc(70px + var(--space-2));left:calc(var(--sidebar-collapsed-width, 70px) + var(--space-2));opacity:0;padding:var(--space-1) var(--space-2);pointer-events:none;position:absolute;transform:translateX(-var(--space-2));transition:all .2s ease;white-space:nowrap;z-index:91}.app-sidebar-collapsed .app-sidebar-nav-item:hover .app-sidebar-tooltip{opacity:1;transform:translateX(0)}@media (max-width:992px){.app-sidebar{box-shadow:var(--shadow-lg);transform:translateX(-100%)}.app-sidebar.active{transform:translateX(0)}.sidebar-backdrop{background-color:#00000080;bottom:0;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transition:opacity .3s ease;z-index:89}.sidebar-backdrop.active{opacity:1;pointer-events:all}}.has-sidebar .page-content{margin-left:250px;margin-left:var(--sidebar-width,250px);transition:margin-left .3s ease}.has-sidebar.sidebar-collapsed .page-content{margin-left:70px;margin-left:var(--sidebar-collapsed-width,70px)}@media (max-width:992px){.has-sidebar .page-content{margin-left:0}}.btn,.savoro-button,button.btn{align-items:center;background-color:var(--color-gray-700);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--text-color);cursor:pointer;display:inline-flex;font-family:var(--font-family-primary);font-size:var(--text-sm);font-weight:var(--font-weight-medium);justify-content:center;line-height:1.5;outline:none;padding:var(--space-2) var(--space-4);text-decoration:none;transition:all var(--transition-base);-webkit-user-select:none;user-select:none}.btn:hover,.savoro-button:hover:not(:disabled),button.btn:hover{background-color:var(--color-gray-600);transform:translateY(-1px)}.btn:focus,.savoro-button:focus,button.btn:focus{box-shadow:0 0 0 3px rgba(var(--accent-color-rgb),.3);outline:none}.btn:disabled,.savoro-button:disabled,button.btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.btn:active:not(:disabled),.savoro-button:active:not(:disabled),button.btn:active:not(:disabled){transform:translateY(0)}.btn-primary,.savoro-button-primary,button.btn-primary{background-color:var(--accent-color);color:var(--color-white)}.btn-primary:hover,.savoro-button-primary:hover:not(:disabled),button.btn-primary:hover{background-color:var(--accent-hover)}.btn-secondary,.savoro-button-secondary,button.btn-secondary{background-color:var(--color-gray-700);color:var(--text-color)}.btn-secondary:hover,.savoro-button-secondary:hover:not(:disabled),button.btn-secondary:hover{background-color:var(--color-gray-600)}.btn-outline,.savoro-button-outline,button.btn-outline{background-color:initial;border:1px solid var(--color-gray-700);box-shadow:none;color:var(--text-color)}.btn-outline:hover,.savoro-button-outline:hover:not(:disabled),button.btn-outline:hover{background-color:#ffffff0d;border-color:var(--color-gray-600)}.filter-options .savoro-button-outline{border:1px solid var(--color-gray-800)}.btn-text,.savoro-button-text,button.btn-text{background-color:initial;box-shadow:none;color:var(--text-color);padding:var(--space-2) var(--space-3)}.btn-text:hover,.savoro-button-text:hover:not(:disabled),button.btn-text:hover{background-color:#ffffff0d}.btn-success,button.btn-success{background-color:var(--color-success);color:#fff}.btn-success:hover,button.btn-success:hover{background-color:var(--color-success-dark)}.btn-danger,.savoro-button-danger,button.btn-danger{background-color:var(--color-error);color:#fff}.btn-danger:hover,.savoro-button-danger:hover:not(:disabled),button.btn-danger:hover{background-color:var(--color-error-dark)}.btn-sm,.savoro-button-small,button.btn-sm{border-radius:var(--radius-sm);font-size:var(--text-xs);padding:var(--space-1) var(--space-3)}.filter-options .savoro-button-small{border-radius:50px!important;margin-bottom:4px;margin-right:4px;padding:7px 15px!important;transition:all .2s ease}.appliance-filters .savoro-button-small{margin:0 1px 1px 0!important;padding:6px 14px!important}.filter-options .savoro-button-small:hover{transform:translateY(-2px)}.filter-options .savoro-button-primary{background-color:initial!important;border:1px solid var(--accent-color)!important;box-shadow:none!important;color:var(--accent-color)!important}.filter-options .savoro-button-primary:hover{background-color:#c81e1e0d!important}.btn-lg,.savoro-button-large,button.btn-lg{font-size:var(--text-base);padding:var(--space-3) var(--space-6)}.btn-fullwidth,.savoro-button-fullwidth{width:100%}.btn-icon,.savoro-button-icon{margin-right:var(--space-2)}.btn-icon-only,.savoro-button-icon-only,button.btn-icon-only{border-radius:50%;height:2.5rem;padding:var(--space-2);width:2.5rem}.btn-icon-only.btn-sm,.savoro-button-icon-only.savoro-button-small,button.btn-icon-only.btn-sm{height:2rem;padding:var(--space-1);width:2rem}.btn-icon-only.btn-lg,.savoro-button-icon-only.savoro-button-large,button.btn-icon-only.btn-lg{height:3.5rem;padding:var(--space-3);width:3.5rem}.btn-group{display:inline-flex}.btn-group .btn:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .btn:not(:last-child){border-bottom-right-radius:0;border-right:none;border-top-right-radius:0}.category-tab{background-color:var(--color-gray-850);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-xs);padding:var(--space-1) var(--space-3);transition:all var(--transition-base);white-space:nowrap}.category-tab.active,.category-tab[data-active=true]{background-color:var(--accent-color);color:#fff}.category-tab:hover{background-color:var(--color-gray-700);color:var(--text-color)}.btn-badge{position:relative}.btn-badge:after{background-color:var(--color-error);border-radius:9999px;color:#fff;content:attr(data-count);font-size:.7rem;font-weight:var(--font-weight-bold);min-width:18px;padding:2px 6px;position:absolute;right:-8px;text-align:center;top:-8px}.btn-loading,.savoro-button-loading,button.btn-loading{color:#0000!important;pointer-events:none;position:relative}.btn-loading:after,.savoro-button-loading:after,button.btn-loading:after{animation:spin 1s linear infinite;border:2px solid #ffffff80;border-radius:50%;border-top-color:#fff;content:"";height:16px;left:50%;margin-left:-8px;margin-top:-8px;position:absolute;top:50%;width:16px}@media (max-width:768px){.btn,.savoro-button,button.btn{padding:.4rem .8rem}.btn-lg,.savoro-button-medium,button.btn-lg{padding:.6rem 1.2rem}.category-tab{font-size:.7rem;padding:var(--space-1) var(--space-2)}}@media (max-width:480px){.btn,.savoro-button,button.btn{font-size:var(--text-xs);padding:.3rem .7rem}.btn-lg,.savoro-button-large,button.btn-lg{font-size:var(--text-sm);padding:.5rem 1rem}.category-tab{font-size:.7rem;padding:2px 8px}}.form{display:flex;flex-direction:column;gap:var(--space-4);width:100%}.form-group{margin-bottom:var(--space-4)}.form-group:last-child{margin-bottom:0}.form-label{color:var(--text-color);display:block;font-size:var(--text-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--space-1)}.form-label.required:after{color:var(--accent-color);content:"*";margin-left:var(--space-1)}.form-control{background-color:var(--background-input);border:1px solid var(--color-gray-700);border-radius:var(--radius-md);color:var(--text-color);display:block;font-size:var(--text-sm);line-height:1.5;padding:var(--space-3);transition:border-color var(--transition-base),box-shadow var(--transition-base);width:100%}.form-control:hover{border-color:var(--color-gray-600)}.form-control:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px #ff6b6b33;outline:0}.form-control::placeholder{color:var(--text-muted);opacity:.7}.form-control:disabled,.form-control[readonly]{background-color:var(--color-gray-850);cursor:not-allowed;opacity:.7}input[type=email].form-control,input[type=number].form-control,input[type=password].form-control,input[type=search].form-control,input[type=tel].form-control,input[type=text].form-control,input[type=url].form-control{height:42px}textarea.form-control{min-height:100px;resize:vertical}select.form-control{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%239e9e9e'%3E%3Cpath d='m7 10 5 5 5-5H7z'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:16px;height:42px;padding-right:30px}.form-control-sm{border-radius:var(--radius-sm);font-size:var(--text-xs);height:34px;padding:var(--space-2)}.form-control-lg{font-size:var(--text-base);height:50px;padding:var(--space-3) var(--space-4)}.form-text{color:var(--text-muted);font-size:var(--text-xs);margin-top:var(--space-1)}.form-control.is-valid{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%234caf50'%3E%3Cpath d='M9 16.17 4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z'/%3E%3C/svg%3E");border-color:var(--color-success)}.form-control.is-invalid,.form-control.is-valid{background-position:right 10px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}.form-control.is-invalid{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f44336'%3E%3Cpath d='M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z'/%3E%3C/svg%3E");border-color:var(--color-error)}.invalid-feedback,.valid-feedback{display:none;font-size:var(--text-xs);margin-top:var(--space-1);width:100%}.valid-feedback{color:var(--color-success)}.invalid-feedback{color:var(--color-error)}.form-control.is-invalid~.invalid-feedback,.form-control.is-valid~.valid-feedback,.was-validated .form-control:invalid~.invalid-feedback,.was-validated .form-control:valid~.valid-feedback{display:block}.form-check{align-items:center;display:flex;margin-bottom:var(--space-2);padding-left:25px;position:relative}.form-check:last-child{margin-bottom:0}.form-check-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--background-input);border:1px solid var(--color-gray-600);height:18px;left:0;margin-top:2px;outline:none;position:absolute;vertical-align:top;width:18px}.form-check-input:checked{background-color:var(--accent-color);border-color:var(--accent-color)}.form-check-input:focus{box-shadow:0 0 0 3px #ff6b6b33}.form-check-input[type=checkbox]{border-radius:var(--radius-sm)}.form-check-input[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M9 16.17 4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:12px}.form-check-input[type=radio]{border-radius:50%}.form-check-input[type=radio]:checked{position:relative}.form-check-input[type=radio]:checked:after{background-color:#fff;border-radius:50%;content:"";height:8px;left:4px;position:absolute;top:4px;width:8px}.form-check-label{color:var(--text-color);font-size:var(--text-sm);margin-left:var(--space-1)}.input-group{align-items:stretch;display:flex;flex-wrap:wrap;position:relative;width:100%}.input-group>.form-control{flex:1 1 auto;position:relative;width:1%}.input-group-append,.input-group-prepend{display:flex}.input-group-text{align-items:center;background-color:var(--color-gray-850);border:1px solid var(--color-gray-700);color:var(--text-muted);display:flex;font-size:var(--text-sm);padding:var(--space-2) var(--space-3);text-align:center}.input-group-prepend .input-group-text{border-bottom-left-radius:var(--radius-md);border-right:0;border-top-left-radius:var(--radius-md)}.input-group-append .input-group-text{border-bottom-right-radius:var(--radius-md);border-left:0;border-top-right-radius:var(--radius-md)}.input-group>.form-control:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.input-group>.form-control:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.search-form{position:relative}.search-form .form-control{border-radius:var(--radius-round);padding-left:40px}.search-form-icon{color:var(--text-muted);left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}input[type=range].form-range{-webkit-appearance:none;appearance:none;background-color:var(--color-gray-700);border-radius:var(--radius-round);height:6px;outline:none;padding:0;width:100%}input[type=range].form-range::-webkit-slider-thumb{-webkit-appearance:none;background-color:var(--accent-color);border-radius:50%;cursor:pointer;height:18px;margin-top:-6px;-webkit-transition:transform var(--transition-base);transition:transform var(--transition-base);width:18px}input[type=range].form-range::-moz-range-thumb{-moz-appearance:none;background-color:var(--accent-color);border-radius:50%;cursor:pointer;height:18px;-moz-transition:transform var(--transition-base);transition:transform var(--transition-base);width:18px}input[type=range].form-range::-moz-range-thumb:hover,input[type=range].form-range::-webkit-slider-thumb:hover{transform:scale(1.1)}.form-row{display:flex;flex-wrap:wrap;gap:var(--space-4)}.form-row>*{flex:1 1;min-width:0}.form-actions{flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-4)}@media (max-width:768px){.form-row{gap:var(--space-3)}.form-actions,.form-row{flex-direction:column}.form-actions .btn{width:100%}}@media (max-width:480px){.form-label{font-size:var(--text-xs)}.form-control,input[type=email].form-control,input[type=number].form-control,input[type=password].form-control,input[type=search].form-control,input[type=tel].form-control,input[type=text].form-control,input[type=url].form-control,select.form-control{font-size:var(--text-xs);height:38px;padding:var(--space-2)}.form-group{margin-bottom:var(--space-3)}}.card{background-color:var(--background-card);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden;position:relative;transition:transform var(--transition-base),box-shadow var(--transition-base)}.card-hover:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card-bordered{border:1px solid var(--border-light);box-shadow:none}.card__header{padding:var(--space-4) var(--space-4) var(--space-2)}.card__body{padding:var(--space-4)}.card__footer{border-top:1px solid var(--border-light);padding:var(--space-2) var(--space-4) var(--space-4)}.card--padded{padding:var(--space-4)}.card__title{color:var(--text-color);font-size:var(--text-xl);font-weight:var(--font-weight-medium);margin-bottom:var(--space-2)}.card__subtitle{color:var(--text-muted);font-size:var(--text-sm);margin-bottom:var(--space-3)}.card__image{display:block;height:200px;object-fit:cover;width:100%}.card__image-container{overflow:hidden;position:relative}.card__image-overlay{background:linear-gradient(180deg,#0000 0,#000000b3);display:flex;flex-direction:column;height:100%;justify-content:flex-end;left:0;padding:var(--space-4);position:absolute;top:0;width:100%}.card__image-overlay .card__title{color:var(--color-white);margin-bottom:var(--space-1)}.card__image-overlay .card__subtitle{color:#fffc}.card--horizontal{display:flex}.card--horizontal .card__image-container{min-width:120px;width:30%}.card--horizontal .card__content{flex:1 1;padding:var(--space-4)}.card__badge{background-color:var(--color-gray-850);border-radius:var(--radius-sm);color:var(--text-color);display:inline-block;font-size:var(--text-xs);font-weight:var(--font-weight-medium);margin-bottom:var(--space-1);margin-right:var(--space-1);padding:var(--space-1) var(--space-2)}.card__badge--primary{background-color:#ff6b6b33;color:var(--accent-color)}.card__badge--corner{position:absolute;right:var(--space-3);top:var(--space-3);z-index:1}.recipe-card{display:flex;flex-direction:column;min-height:400px}.recipe-card__image{height:180px;object-fit:cover}.recipe-card__content{display:flex;flex:1 1;flex-direction:column;padding:var(--space-4)}.recipe-card__title{font-size:var(--text-lg);font-weight:var(--font-weight-medium);margin-bottom:var(--space-2)}.recipe-card__meta{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-xs);margin-bottom:var(--space-3)}.recipe-card__meta>*{align-items:center;display:flex;margin-right:var(--space-3)}.recipe-card__meta i,.recipe-card__meta svg{margin-right:var(--space-1)}.recipe-card__match{align-items:center;background-color:#4caf5026;border-radius:var(--radius-round);color:#4caf50;display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-weight-medium);padding:var(--space-1) var(--space-2);position:absolute;right:var(--space-3);top:var(--space-3)}.recipe-card__ingredients{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:auto;padding-top:var(--space-3)}.recipe-card__ingredient{align-items:center;background-color:var(--color-gray-850);border-radius:var(--radius-sm);color:var(--text-color);display:inline-flex;font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.recipe-card__ingredient--highlighted{background-color:#ff6b6b26;color:var(--accent-color)}.recipe-card__certified{background-color:var(--accent-color);border-radius:var(--radius-sm);color:#fff;font-size:var(--text-xs);font-weight:var(--font-weight-medium);left:var(--space-3);padding:var(--space-1) var(--space-2);position:absolute;top:var(--space-3);z-index:1}.action-card{display:flex;flex-direction:column;height:100%}.action-card__content{flex:1 1;padding:var(--space-4)}.action-card__footer{align-items:center;border-top:1px solid var(--border-light);display:flex;justify-content:space-between;padding:var(--space-3)}@media (max-width:768px){.action-card__content,.card--padded,.card__body,.card__footer,.card__header,.recipe-card__content{padding:var(--space-3)}.card__title{font-size:var(--text-lg)}.recipe-card__image{height:150px}.card--horizontal{flex-direction:column}.card--horizontal .card__image-container{width:100%}}@media (max-width:480px){.action-card__content,.card--padded,.card__body,.card__footer,.card__header,.recipe-card__content{padding:var(--space-2)}.card__image-overlay{padding:var(--space-3)}.recipe-card{min-height:350px}.recipe-card__image{height:130px}.recipe-card__title{font-size:var(--text-base)}}.navbar{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#121212f2;border-bottom:1px solid var(--border-light);display:flex;height:64px;height:var(--header-height,64px);justify-content:space-between;padding:0 var(--space-5);position:sticky;top:0;transition:all .3s ease;z-index:1040;z-index:calc(var(--z-modal, 1000) + 40)}.logo-wrapper{margin-right:10px;padding-left:12px}.navbar-brand{align-items:center;color:var(--text-color);display:flex;font-size:var(--text-xl);font-weight:var(--font-weight-bold);margin-right:var(--space-5);position:relative;text-decoration:none}.navbar-brand.landing-logo{font-family:Pacifico,Brush Script MT,cursive;font-size:2rem;font-weight:400;letter-spacing:1px;margin-right:20px;padding:5px 10px 5px 20px;text-shadow:2px 2px 4px #0000004d;transition:all .3s ease;-webkit-user-select:none;user-select:none}.navbar-brand.landing-logo:hover{color:#f44336;transform:scale(1.05)}.navbar-brand i{color:var(--accent-color);font-size:1.5em;margin-right:var(--space-2)}.navbar-brand .logo-icon{color:#f44336;display:inline-block;font-size:1rem;left:-12px;position:absolute;top:6px;transform:rotate(-5deg);transition:all .3s ease}.navbar-brand:hover .logo-icon{color:#ff5252;transform:rotate(5deg)}.brand-text{background:linear-gradient(to right,var(--color-primary-600),#dd4935);-webkit-background-clip:text;background-clip:text;color:#0000;font-family:Pacifico,cursive}.brand-tagline{display:inline-block;font-size:var(--text-xs);font-style:italic;font-weight:var(--font-weight-normal);margin-left:var(--space-2);opacity:.7;transform:translateY(2px)}.navbar-nav{align-items:center;display:flex;gap:var(--space-1);list-style:none;margin:0;padding:0}.nav-item{margin:0 2px;position:relative}.nav-link{align-items:center;border-bottom:none;border-radius:9999px;border-radius:var(--radius-full,9999px);color:#fffc;display:flex;font-size:15px;font-weight:var(--font-weight-medium);letter-spacing:.3px;overflow:hidden;padding:6px 16px;position:relative;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}.nav-link:before{background-color:#f44336;background-color:var(--accent-color,#f44336);border-radius:3px;bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);transition:width .3s ease;width:0}.nav-link:hover{border-bottom:none;color:#fff;text-decoration:none;transform:translateY(-1px)}.nav-link:hover:before{width:60%}.nav-link.active{border-bottom:none;color:#fff;font-weight:var(--font-weight-semibold);position:relative;text-decoration:none}.nav-link.active:after{background-color:#f44336;background-color:var(--accent-color,#f44336);border-radius:3px;bottom:0;box-shadow:none;content:"";height:2.5px;left:50%;position:absolute;transform:translateX(-50%);width:70%}.nav-link i,.nav-link svg{color:var(--accent-color);margin-right:var(--space-2)}.nav-links{-webkit-overflow-scrolling:touch;border-top:1px solid var(--border-color);gap:var(--space-2);overflow-x:auto;padding:var(--space-2) 0}.nav-links::-webkit-scrollbar{height:5px}.nav-links::-webkit-scrollbar-track{background:#0000}.nav-links::-webkit-scrollbar-thumb{background:var(--color-gray-700);border-radius:var(--radius-pill)}.nav-links::-webkit-scrollbar-thumb:hover{background:var(--color-gray-600)}.nav-text{margin-left:var(--space-2)}@media (max-width:768px){.nav-text{display:none}}.navbar-section{align-items:center;display:flex}.navbar-section--right{margin-left:auto}.navbar-collapse{display:flex;flex:1 1}.navbar-toggler{align-items:center;background-color:#ffffff14;border:none;border-radius:50%;color:var(--text-color);cursor:pointer;display:none;font-size:var(--text-xl);height:40px;justify-content:center;padding:8px;position:relative;transition:all .2s cubic-bezier(.4,0,.2,1);width:40px;z-index:1050;z-index:calc(var(--z-modal, 1000) + 50)}.navbar-toggler:hover{background-color:#f443361a;transform:rotate(5deg)}.navbar-toggler i.fa-times,.navbar-toggler:hover{color:#f44336;color:var(--accent-color,#f44336)}.nav-dropdown{position:relative}.nav-dropdown-menu{background-color:var(--background-elevated);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:none;margin-top:var(--space-1);min-width:200px;padding:var(--space-2);position:absolute;right:0;top:100%;z-index:var(--z-dropdown)}.nav-dropdown-menu.show{animation:fadeIn .2s ease;display:block}.nav-dropdown-item{background-color:initial;border:0;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:block;font-size:var(--text-sm);padding:var(--space-2) var(--space-3);text-align:left;text-decoration:none;transition:all var(--transition-base);width:100%}.nav-dropdown-item:hover{background-color:#ffffff0d;color:var(--text-color)}.nav-dropdown-item.active{background-color:#c81e1e1a;color:var(--accent-color)}.nav-dropdown-divider{background-color:var(--border-light);height:1px;margin:var(--space-2) 0}.sidebar{background-color:var(--background-elevated);border-right:1px solid var(--border-light);height:100vh;left:0;overflow-y:auto;padding:var(--space-4) 0;position:fixed;top:0;transition:transform var(--transition-base);width:var(--sidebar-width);z-index:var(--z-fixed)}.sidebar-header{border-bottom:1px solid var(--border-light);margin-bottom:var(--space-4);padding:0 var(--space-4) var(--space-4)}.sidebar-brand{align-items:center;color:var(--text-color);display:flex;font-size:var(--text-xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-3)}.sidebar-brand img{margin-right:var(--space-2);max-height:32px}.sidebar-nav{list-style:none;margin:0;padding:0}.sidebar-item{margin-bottom:var(--space-1)}.sidebar-link{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-sm);font-weight:var(--font-weight-medium);padding:var(--space-3) var(--space-4);text-decoration:none;transition:all var(--transition-base)}.sidebar-link:hover{background-color:#ffffff0d;color:var(--text-color)}.sidebar-link.active{background-color:#c81e1e1a;border-right:3px solid var(--accent-color);color:var(--accent-color)}.sidebar-link i,.sidebar-link svg{margin-right:var(--space-3);text-align:center;width:20px}.sidebar-section{margin-bottom:var(--space-4)}.sidebar-section-title{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-weight-medium);letter-spacing:1px;padding:var(--space-2) var(--space-4);text-transform:uppercase}.nav-tabs{border-bottom:1px solid var(--border-light);display:flex;gap:var(--space-1);margin-bottom:var(--space-4)}.nav-tab{background-color:initial;border:none;border-bottom:2px solid #0000;color:var(--text-muted);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-weight-medium);padding:var(--space-3) var(--space-4);transition:all var(--transition-base)}.nav-tab:hover{color:var(--text-color)}.nav-tab.active{border-bottom-color:var(--accent-color);color:var(--accent-color)}.mobile-nav{background-color:#1a1a1a;background-color:var(--background-elevated,#1a1a1a);border-left:1px solid #ffffff1a;bottom:0;box-shadow:-5px 0 15px #0003;overflow-y:auto;position:fixed;right:0;top:0;transform:translateX(100%);transition:transform .3s ease;transition:transform var(--transition-slow,.3s ease);width:280px;z-index:1000;z-index:var(--z-modal,1000)}.mobile-nav.open{transform:translateX(0)}.mobile-nav-overlay{background-color:#00000080;bottom:0;left:0;opacity:0;position:fixed;right:0;top:0;transition:opacity var(--transition-base),visibility var(--transition-base);visibility:hidden;z-index:999;z-index:calc(var(--z-modal, 1000) - 1)}.mobile-nav-overlay.visible{opacity:1;visibility:visible}.mobile-nav-close{align-items:center;background-color:#ffffff1a;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;position:absolute;right:15px;top:15px;transition:all .2s ease;width:32px}.mobile-nav-close:hover{background-color:#f4433626;color:#f44336;color:var(--accent-color,#f44336)}.mobile-nav-header{border-bottom:1px solid var(--border-light);justify-content:center;padding:var(--space-4);padding-bottom:25px;padding-top:25px}.mobile-nav-items{margin-top:10px;padding:var(--space-4) 0}.mobile-nav-item{align-items:center;background-color:initial;border:none;border-radius:6px;color:#e0e0e0;color:var(--text-color,#e0e0e0);cursor:pointer;display:flex;font-size:var(--text-base);margin:2px var(--space-3);padding:12px var(--space-4);text-align:left;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%;width:calc(100% - var(--space-3)*2)}.mobile-nav-item:hover{background-color:#f443361a;color:#fff;transform:translateX(3px)}.mobile-nav-item.active{background-color:#f4433626;border-bottom:none;box-shadow:none;color:#fff;font-weight:var(--font-weight-medium);position:relative;text-decoration:none}.mobile-nav-item.active:before{display:none}.mobile-nav-item i,.mobile-nav-item svg{color:#bdbdbd;font-size:1.1rem;margin-right:var(--space-3);text-align:center;transition:all .2s ease;width:20px}.mobile-nav-item.active i,.mobile-nav-item.active svg,.mobile-nav-item:hover i,.mobile-nav-item:hover svg{color:#f44336;color:var(--accent-color,#f44336)}.mobile-nav-divider{background-color:var(--border-light);height:1px;margin:var(--space-3) 0}.mobile-nav-header .navbar-brand.landing-logo{font-size:1.8rem;margin:0 auto;padding-left:18px}.mobile-nav-header .logo-icon{font-size:1rem;left:-2px;top:5px}@media (max-width:1024px){.navbar{padding:0 var(--space-4)}.navbar-brand{margin-right:var(--space-3)}.nav-link{padding:var(--space-2) var(--space-3)}}@media (max-width:768px){.navbar-toggler{display:flex}.navbar-brand .brand-tagline,.navbar-collapse,.navbar-section--right .nav-dropdown-toggle,.navbar-section--right .nav-link{display:none}.navbar-section--right .navbar-toggler{display:flex}.nav-links{justify-content:flex-start;padding:var(--space-1) 0 var(--space-4)}}@media (max-width:576px){.navbar{height:56px;padding:0 var(--space-3)}.navbar-brand{font-size:var(--text-lg)}.brand-text{font-size:1.2rem}.nav-links .nav-link{font-size:var(--text-xs);padding:var(--space-1) var(--space-3)}.nav-links .nav-link i{margin-right:var(--space-1)}}.navbar-section--right .nav-link{background-color:initial;border:none;border-radius:9999px;border-radius:var(--radius-full,9999px);cursor:pointer;margin-left:8px;padding:6px 12px;transition:all .2s cubic-bezier(.4,0,.2,1)}.navbar-section--right .nav-link:hover{background-color:#ffffff1a;transform:translateY(-1px)}.navbar-section--right .nav-link i{color:#e0e0e0;color:var(--text-color,#e0e0e0);font-size:1.1rem;transition:all .2s ease}.navbar-section--right .nav-link:hover i{color:#f44336;color:var(--accent-color,#f44336)}.mobile-nav a,.mobile-nav a.active,.mobile-nav a:hover,.mobile-nav-item,.mobile-nav-item.active,.mobile-nav-item:hover,.navbar a,.navbar a.active,.navbar a:hover,.navbar-nav a,.navbar-nav a.active,.navbar-nav a:hover{border-bottom:none!important;text-decoration:none!important}.panel{background-color:var(--background-card);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;flex-direction:column;height:100%;overflow:hidden}.panel-bordered{border:1px solid var(--border-light);box-shadow:none}.panel-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:var(--space-4)}.panel-title{color:var(--text-color);font-size:var(--text-lg);font-weight:var(--font-weight-medium);margin:0}.panel-subtitle{color:var(--text-muted);font-size:var(--text-sm);margin-top:var(--space-1)}.panel-actions{display:flex;gap:var(--space-2)}.panel-body{flex:1 1;overflow-y:auto;padding:var(--space-4)}.panel-body-flush{padding:0}.panel-footer{border-top:1px solid var(--border-light);display:flex;gap:var(--space-3);justify-content:flex-end;padding:var(--space-4)}.panel-full-height{height:100%}.panel-tabs{background-color:var(--color-gray-850);border-bottom:1px solid var(--border-light);display:flex}.panel-tab{background:none;border:none;border-bottom:2px solid #0000;color:var(--text-muted);cursor:pointer;font-size:var(--text-sm);padding:var(--space-3) var(--space-4)}.panel-tab:hover{color:var(--text-color)}.panel-tab.active{border-bottom-color:var(--accent-color);color:var(--accent-color)}.section-panel{margin-bottom:var(--space-5)}.section-panel-title{color:var(--text-color);font-size:var(--text-base);font-weight:var(--font-weight-medium);margin-bottom:var(--space-3);padding-bottom:var(--space-2)}.panel-item,.section-panel-title{border-bottom:1px solid var(--border-light)}.panel-item{align-items:center;display:flex;padding:var(--space-3) var(--space-4)}.panel-item:last-child{border-bottom:none}.panel-item-content{flex:1 1}.panel-item-title{color:var(--text-color);font-size:var(--text-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--space-1)}.panel-item-description{color:var(--text-muted);font-size:var(--text-xs)}.panel-item-actions{display:flex;gap:var(--space-2)}.dashboard-panel{display:flex;flex-direction:column;height:100%}.dashboard-panel-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:var(--space-3) var(--space-4)}.dashboard-panel-title{color:var(--text-color);font-size:var(--text-base);font-weight:var(--font-weight-medium)}.dashboard-panel-body{flex:1 1;overflow-y:auto;padding:var(--space-4)}.info-panel{background-color:var(--background-elevated);border-left:4px solid var(--accent-color);border-radius:var(--radius-md);display:flex;padding:var(--space-4)}.info-panel-icon{color:var(--accent-color);font-size:var(--text-lg);margin-right:var(--space-3)}.info-panel-content{flex:1 1}.info-panel-title{color:var(--text-color);font-size:var(--text-base);font-weight:var(--font-weight-medium);margin-bottom:var(--space-1)}.info-panel-text{color:var(--text-muted);font-size:var(--text-sm)}.info-panel-success{border-left-color:var(--color-success)}.info-panel-success .info-panel-icon{color:var(--color-success)}.info-panel-warning{border-left-color:var(--color-warning)}.info-panel-warning .info-panel-icon{color:var(--color-warning)}.info-panel-error{border-left-color:var(--color-error)}.info-panel-error .info-panel-icon{color:var(--color-error)}.info-panel-info{border-left-color:var(--color-info)}.info-panel-info .info-panel-icon{color:var(--color-info)}.status-panel{background-color:var(--background-elevated);border-radius:var(--radius-md);padding:var(--space-4);text-align:center}.status-panel-value{color:var(--text-color);font-size:var(--text-3xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-1)}.status-panel-label{color:var(--text-muted);font-size:var(--text-sm)}.status-panel-icon{color:var(--accent-color);font-size:var(--text-2xl);margin-bottom:var(--space-2)}.collapsible-panel{border:1px solid var(--border-light);border-radius:var(--radius-md);margin-bottom:var(--space-3);overflow:hidden}.collapsible-panel-header{align-items:center;background-color:var(--background-elevated);cursor:pointer;display:flex;justify-content:space-between;padding:var(--space-3) var(--space-4)}.collapsible-panel-title{color:var(--text-color);font-size:var(--text-base);font-weight:var(--font-weight-medium)}.collapsible-panel-icon{transition:transform var(--transition-base)}.collapsible-panel.open .collapsible-panel-icon{transform:rotate(180deg)}.collapsible-panel-content{background-color:var(--background-card);display:none;padding:var(--space-4)}.collapsible-panel.open .collapsible-panel-content{display:block}.recipe-panel{display:flex;flex-direction:column;height:100%}.recipe-panel-header{border-bottom:1px solid var(--border-light);padding:var(--space-4)}.recipe-panel-body{flex:1 1;overflow-y:auto;padding:var(--space-4)}.ingredient-panel{display:flex;flex-direction:column;height:100%}.ingredient-panel-header{border-bottom:1px solid var(--border-light);padding:var(--space-3) var(--space-4)}.ingredient-panel-body{flex:1 1;overflow-y:auto}.ingredient-panel-search{border-bottom:1px solid var(--border-light);padding:var(--space-3) var(--space-4)}.ingredient-panel-list{padding:var(--space-2)}@media (max-width:768px){.dashboard-panel-body,.dashboard-panel-header,.info-panel,.panel-body,.panel-footer,.panel-header,.recipe-panel-body,.recipe-panel-header{padding:var(--space-3)}.panel-tab{font-size:var(--text-xs);padding:var(--space-2) var(--space-3)}.section-panel{margin-bottom:var(--space-4)}.panel-item{padding:var(--space-2) var(--space-3)}.status-panel-value{font-size:var(--text-2xl)}}@media (max-width:480px){.dashboard-panel-body,.dashboard-panel-header,.info-panel,.panel-body,.panel-footer,.panel-header,.recipe-panel-body,.recipe-panel-header{padding:var(--space-2)}.panel-title{font-size:var(--text-base)}.panel-tabs{overflow-x:auto}.panel-item-actions{flex-direction:column;gap:var(--space-1)}}.savoro-panel{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;width:100%}.savoro-panel-header{align-items:center;background-color:var(--background-elevated);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;min-height:60px;padding:var(--space-4) var(--space-5);transition:all var(--transition-base)}.savoro-panel-title{color:var(--text-color);font-size:var(--text-lg);font-weight:var(--font-weight-semibold);margin:0}.savoro-panel-actions{align-items:center;display:flex;gap:var(--space-2);height:30px;position:relative}.savoro-panel-content{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:var(--space-5)}.savoro-panel-content.scrollable{overflow-y:auto;scrollbar-color:var(--color-gray-600) var(--color-gray-800);scrollbar-width:thin}.savoro-panel-content::-webkit-scrollbar{width:8px}.savoro-panel-content::-webkit-scrollbar-track{background:var(--color-gray-850);border-radius:var(--radius-sm)}.savoro-panel-content::-webkit-scrollbar-thumb{background:var(--color-gray-600);border-radius:var(--radius-sm)}.savoro-panel-content::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}.savoro-panel.full-height{height:100%;max-height:calc(100vh - 70px)}.savoro-panel.recipe-results-panel{display:flex;flex-direction:column;height:100%;max-height:70vh;min-height:500px;overflow:hidden}.savoro-panel.recipe-results-panel .savoro-panel-content{display:flex;flex-direction:column;height:100%;max-height:none;min-height:500px;overflow-y:auto;padding-bottom:0}.savoro-panel.ingredient-panel-container{display:flex;flex-direction:column;height:100%;max-height:70vh;min-height:500px;overflow:hidden}.savoro-panel.ingredient-panel-container .savoro-panel-content{display:flex;flex-direction:column;height:100%;overflow-y:auto}.savoro-panel.sidebar{flex-shrink:0;position:sticky;top:130px;width:280px}.savoro-panel.main-content{flex:1 1}.savoro-panel.bordered{border:1px solid var(--border-color)}.savoro-panel.transparent{background-color:initial;border:none;box-shadow:none}.savoro-panel.elevated{box-shadow:var(--shadow-lg)}@media (max-width:1024px){.savoro-panel.sidebar{position:static;width:100%}}@media (max-width:992px){.savoro-panel.recipe-results-panel{height:auto;max-height:none;min-height:450px}.savoro-panel.recipe-results-panel .savoro-panel-content{height:auto;min-height:450px}.savoro-panel-header{padding:var(--space-3) var(--space-4)}.savoro-panel-content{padding:var(--space-4)}}@media (max-width:768px){.savoro-panel{border-radius:var(--radius-sm)}.savoro-panel-header{min-height:50px}.savoro-panel-content,.savoro-panel-header{padding:var(--space-3)}.savoro-panel-title{font-size:var(--text-base)}.savoro-panel.full-height{height:auto;max-height:none}.savoro-panel.recipe-results-panel{height:auto;max-height:none;min-height:400px}.savoro-panel.recipe-results-panel .savoro-panel-content{max-height:none;min-height:400px;overflow-y:visible}.savoro-panel.ingredient-panel-container .savoro-panel-content{max-height:40vh}}@media (max-width:480px){.savoro-panel-header{min-height:45px;padding:var(--space-2) var(--space-3)}.savoro-panel-content{padding:var(--space-3)}.savoro-panel-title{font-size:var(--text-sm)}.savoro-panel.full-height{height:auto;max-height:none}.savoro-panel.recipe-results-panel,.savoro-panel.recipe-results-panel .savoro-panel-content{max-height:none;min-height:350px}.savoro-panel.ingredient-panel-container .savoro-panel-content{max-height:35vh}}.savoro-empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:var(--space-8) var(--space-5);text-align:center;transition:all var(--transition-base);width:100%}.savoro-empty-state-icon{color:var(--color-gray-500);font-size:var(--text-2xl);margin-bottom:var(--space-5);opacity:.7}.savoro-empty-state-title{color:var(--text-color);font-size:var(--text-lg);font-weight:var(--font-weight-medium);margin-bottom:var(--space-2)}.savoro-empty-state-description{color:var(--text-muted);font-size:var(--text-sm);line-height:1.5;margin:0 auto var(--space-5);max-width:320px}.savoro-empty-state-action{margin-top:var(--space-2)}.savoro-empty-state.compact{min-height:200px;padding:var(--space-5) var(--space-4)}.savoro-empty-state.compact .savoro-empty-state-icon{font-size:var(--text-xl);margin-bottom:var(--space-3)}.savoro-empty-state.compact .savoro-empty-state-title{font-size:var(--text-base)}@media (max-width:768px){.savoro-empty-state{min-height:250px;padding:var(--space-6) var(--space-4)}.savoro-empty-state-icon{font-size:var(--text-xl);margin-bottom:var(--space-4)}.savoro-empty-state-title{font-size:var(--text-base)}.savoro-empty-state-description{font-size:var(--text-xs);max-width:280px}}@media (max-width:480px){.savoro-empty-state{min-height:200px;padding:var(--space-5) var(--space-3)}.savoro-empty-state-icon{font-size:var(--text-lg);margin-bottom:var(--space-3)}.savoro-empty-state-title{font-size:var(--text-sm)}}.savoro-search-bar{align-items:center;display:flex;position:relative;width:100%}.search-container{padding:0;position:relative}.savoro-search-input{background-color:var(--color-gray-850);border:none;border-radius:var(--radius-round);color:var(--text-color);font-size:var(--text-sm);height:40px;padding:var(--space-3) var(--space-4) var(--space-3) var(--space-10);transition:all var(--transition-base);width:100%}.savoro-search-input:focus{background-color:var(--color-gray-800);box-shadow:var(--shadow-md);outline:none}.savoro-search-input::placeholder{color:var(--text-muted)}.savoro-search-icon{color:var(--accent-color);font-size:var(--text-base);left:var(--space-4);pointer-events:none;z-index:1}.savoro-clear-search,.savoro-search-icon{position:absolute;top:50%;transform:translateY(-50%)}.savoro-clear-search{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-sm);right:var(--space-4);transition:color var(--transition-base)}.savoro-clear-search:hover{color:var(--accent-color)}.search-sm .savoro-search-input{font-size:var(--text-xs);height:32px;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-8)}.search-sm .savoro-search-icon{font-size:var(--text-sm);left:var(--space-3)}.search-sm .savoro-clear-search{font-size:var(--text-xs);right:var(--space-3)}.search-lg .savoro-search-input{font-size:var(--text-base);height:48px;padding:var(--space-3) var(--space-5) var(--space-3) var(--space-12)}.search-lg .savoro-search-icon{font-size:var(--text-lg);left:var(--space-5)}.search-lg .savoro-clear-search{font-size:var(--text-base);right:var(--space-5)}.search-dark .savoro-search-input{background-color:#ffffff14}.search-dark .savoro-search-input:focus{background-color:#ffffff1f}.full-width{width:100%}@media (max-width:768px){.savoro-search-input{font-size:.9rem;height:40px;padding-left:var(--space-10)}.search-lg .savoro-search-input{height:46px}}@media (max-width:480px){.savoro-search-input{font-size:.95rem;height:42px}.search-lg .savoro-search-input{font-size:1rem;height:44px}.savoro-search-icon{font-size:1rem}}.savoro-recipe-card{background:var(--background-elevated);border:1px solid var(--border-color);border-radius:var(--radius-md);color:inherit;display:flex;flex-direction:column;height:auto;max-height:350px!important;min-height:300px!important;overflow:hidden;position:relative;text-decoration:none;transition:transform var(--transition-base),box-shadow var(--transition-base)}.savoro-recipe-card:active,.savoro-recipe-card:focus,.savoro-recipe-card:hover{border-color:var(--accent-color);box-shadow:var(--shadow-lg);text-decoration:none!important;transform:translateY(-5px)}.savoro-recipe-card *,.savoro-recipe-card:active *,.savoro-recipe-card:focus *,.savoro-recipe-card:hover *{text-decoration:none!important}.savoro-recipe-image{height:140px!important;max-height:140px!important;min-height:140px!important;overflow:hidden;position:relative}.savoro-recipe-image img{height:100%;object-fit:cover;transition:transform var(--transition-base);width:100%}.savoro-recipe-card:hover .savoro-recipe-image img{transform:scale(1.05)}.savoro-certified{align-items:center!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important;background-color:var(--color-primary-600)!important;border:1px solid #ffffff26!important;border-radius:4px!important;box-shadow:0 2px 4px #00000040!important;color:var(--color-white)!important;display:inline-flex!important;font-size:11px!important;font-weight:500!important;gap:4px!important;left:var(--space-3)!important;letter-spacing:.5px!important;max-width:fit-content!important;padding:3px 8px!important;position:absolute!important;text-transform:uppercase!important;top:var(--space-3)!important;transform:rotate(-5deg)!important;transform-origin:left center!important;width:auto!important;z-index:10!important}.savoro-certified i{font-size:10px!important}.savoro-recipe-match{border:1px solid #fff3;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);color:var(--color-white);font-size:var(--text-xs);font-weight:var(--font-weight-bold);letter-spacing:.5px;padding:var(--space-1) var(--space-2);position:absolute;right:var(--space-2);text-shadow:0 1px 2px #00000080;top:var(--space-2)}.savoro-recipe-match.high-match{background:#1e821ef2}.savoro-recipe-match.low-match{background:#505050d9}.savoro-recipe-info{display:flex;flex:1 1;flex-direction:column;max-height:none;overflow:visible;padding:var(--space-2)!important;padding-bottom:55px!important}.savoro-recipe-info h3{color:var(--text-color);display:block!important;font-size:var(--text-base)!important;line-height:1.3;margin:0 0 var(--space-2) 0!important;max-width:100%!important;min-height:22px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.savoro-recipe-info .recipe-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-muted);display:-webkit-box;font-size:var(--text-sm)!important;line-height:1.4;margin:0 0 var(--space-2) 0!important;max-height:2.8em;overflow:hidden}.savoro-recipe-tags{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-4);max-height:60px;overflow:hidden}.savoro-recipe-tag{background:var(--color-gray-700);border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.savoro-recipe-tag.more-tags{background:var(--color-gray-600)}.savoro-recipe-ingredients{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-6);max-height:none;overflow:visible;padding-bottom:var(--space-4);padding-right:var(--space-1)}.savoro-recipe-ingredients::-webkit-scrollbar{display:none}.savoro-ingredient-tag{align-items:center;background:var(--color-gray-800);border-radius:var(--radius-sm);color:var(--text-muted);display:inline-flex;font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.savoro-ingredient-tag.has-ingredient{background:#2c3e50;color:#3498db}.savoro-ingredient-tag.missing-ingredient{background:var(--color-gray-800);color:var(--text-muted)}.savoro-ingredient-icon{align-items:center;background:var(--color-gray-700);border-radius:var(--radius-round);color:var(--text-color);display:inline-flex;font-size:10px;font-weight:var(--font-weight-bold);height:18px;justify-content:center;margin-right:var(--space-1);text-transform:uppercase;width:18px}.savoro-recipe-meta{background:#0000;bottom:var(--space-3)!important;color:var(--text-muted);display:flex;font-size:var(--text-xs);justify-content:space-between;left:var(--space-3)!important;margin-bottom:0;position:absolute;right:var(--space-3)!important;width:calc(100% - var(--space-8));z-index:2}.savoro-recipe-category,.savoro-recipe-time{align-items:center;color:#ffffffa6;display:flex;font-weight:500;gap:var(--space-1)}.savoro-recipe-category i,.savoro-recipe-time i{color:#ffffffa6;font-size:12px}.savoro-view-recipe-btn{width:100%}.savoro-recipe-card:after{background-color:var(--background-elevated);border-top:1px solid var(--border-light);bottom:0;content:"";height:45px!important;left:0;position:absolute;width:100%;z-index:1}@media (max-width:768px){.savoro-recipe-card{min-height:370px}.savoro-recipe-image{height:150px;max-height:150px;min-height:150px}.savoro-recipe-info{padding:var(--space-2);padding-bottom:50px}.savoro-recipe-info h3{font-size:var(--text-base);min-height:21px}.savoro-recipe-card:after{height:45px}}@media (max-width:480px){.savoro-recipe-card{min-height:350px}.savoro-recipe-image{height:140px;max-height:140px;min-height:140px}.savoro-recipe-info h3{font-size:var(--text-sm);margin-bottom:var(--space-1);min-height:18px}.savoro-recipe-info{padding:var(--space-2);padding-bottom:45px}.savoro-recipe-card:after{height:40px}.savoro-recipe-meta{bottom:var(--space-2);font-size:var(--text-xs);left:var(--space-2);right:var(--space-2)}}.mobile-menu-toggle{background:none;border:none;color:var(--color-white);cursor:pointer;display:none;font-size:var(--text-xl);outline:none;padding:var(--space-2);z-index:1001}.mobile-menu-toggle:focus{box-shadow:none;outline:none}.mobile-menu-toggle:focus-visible{outline:none}.mobile-drawer{background-color:var(--background-elevated);box-shadow:var(--shadow-lg);overflow-y:auto;right:-280px;transition:right var(--transition-base);z-index:1000}.mobile-drawer,.mobile-nav{display:flex;flex-direction:column}.mobile-nav{margin-top:100px;margin-top:var(--header-height,100px);padding:0 var(--space-4)}.mobile-nav-link{border-bottom:1px solid var(--border-color);color:var(--text-color);font-size:var(--text-base);padding:var(--space-4) var(--space-2);transition:background-color var(--transition-base)}.mobile-nav-link i{font-size:var(--text-base);margin-right:var(--space-3);text-align:center;width:20px}.mobile-nav-link.active{background-color:rgba(var(--accent-color-rgb),.1);color:var(--accent-color)}.mobile-nav-link:hover{background-color:#ffffff0d}.mobile-divider{border:none;border-top:1px solid var(--border-color);margin:var(--space-4) 0}.mobile-user-actions{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-1) 0}.mobile-logout-btn,.mobile-settings-btn{align-items:center;background:none;border:none;color:var(--text-color);cursor:pointer;display:flex;font-size:var(--text-base);padding:var(--space-3) var(--space-2);text-align:left}.mobile-logout-btn i,.mobile-settings-btn i{margin-right:var(--space-3);text-align:center;width:20px}.mobile-logout-btn:hover,.mobile-settings-btn:hover{background-color:#ffffff0d}.mobile-logout-btn{color:var(--color-error)}.mobile-overlay{animation:fadeIn .3s ease;background-color:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}@media screen and (max-width:768px){.desktop-nav{display:none}.mobile-menu-toggle{display:block}.dashboard-user-menu{display:none}.dashboard-header{justify-content:space-between;padding:0 var(--space-4)}}@media screen and (max-width:400px){.mobile-drawer{right:-85%;width:85%}}.mobile-logo{align-items:center;color:var(--color-white);display:flex;flex-direction:column;font-family:Pacifico,cursive;font-family:var(--font-family-brand,"Pacifico",cursive);font-size:var(--text-2xl);font-weight:400;letter-spacing:1px;margin-bottom:var(--space-2);padding:var(--space-4) var(--space-2) var(--space-5);text-align:center;text-shadow:var(--shadow-sm)}.mobile-logo .logo-icon{color:var(--accent-color);font-size:var(--text-base);margin-right:var(--space-1)}.mobile-logo .logo-tagline{color:var(--text-color);display:block;font-family:Garamond,serif;font-family:var(--font-family-secondary,"Garamond",serif);font-size:var(--text-sm);font-style:italic;font-weight:400;letter-spacing:.8px;line-height:1;margin-top:var(--space-half);text-shadow:none}.recipe-timer{align-items:center;background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;justify-content:space-between;margin:var(--space-2) auto;max-width:200px;padding:var(--space-2) var(--space-3);transition:all var(--transition-base);width:fit-content}.recipe-timer.timer-running{background-color:#2196f326;border-color:#2196f3;box-shadow:var(--shadow-md)}.recipe-timer.timer-done{animation:pulse 1.5s infinite;background-color:rgba(var(--accent-color-rgb),.15);border-color:var(--accent-color);box-shadow:var(--shadow-md)}.timer-display{align-items:center;display:flex;gap:var(--space-1)}.timer-time{color:var(--color-white);font-size:var(--text-lg);font-weight:var(--font-weight-bold)}.timer-running .timer-time{color:#2196f3}.timer-done .timer-time{color:var(--accent-color)}.timer-label{color:var(--text-muted);font-size:var(--text-xs)}.timer-controls{display:flex;gap:var(--space-1)}.timer-button{align-items:center;background-color:var(--accent-color);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;font-size:var(--text-xs);font-weight:var(--font-weight-medium);justify-content:center;padding:var(--space-1) var(--space-2);transition:all var(--transition-base)}.timer-button:hover{background-color:var(--accent-hover);transform:translateY(-1px)}.timer-running .timer-button{background-color:#2196f3}.timer-running .timer-button:hover{background-color:#1e88e5}.reset-button{background-color:var(--color-gray-700)}.reset-button:hover{background-color:var(--color-gray-600)}.instruction-timers{align-items:center;display:flex;justify-content:flex-start;margin:var(--space-4) 0 0;text-align:left;width:100%}.instruction-timers .recipe-timer{margin:0}@media screen and (max-width:480px){.recipe-timer{align-items:center;flex-direction:row;gap:var(--space-2);margin:var(--space-3) 0;max-width:none;width:fit-content}.instruction-timers{align-items:center;display:flex;justify-content:flex-start;left:0;margin:var(--space-4) 0 0;padding:0;right:0;width:100%}.instruction-timers .recipe-timer{margin:0}}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000bf;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.login-modal,.modal-base{animation:modalFadeIn .3s ease;background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);color:var(--text-color);max-width:400px;padding:var(--space-8);position:relative;width:100%}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.close-modal{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;font-size:var(--text-lg);height:30px;justify-content:center;position:absolute;right:var(--space-4);top:var(--space-4);transition:all var(--transition-base);width:30px;z-index:10}.close-modal:hover{background-color:#ffffff1a;color:var(--color-white)}.modal-header{margin-bottom:var(--space-6);text-align:center}.modal-header h2{color:var(--color-white);font-size:var(--text-xl);font-weight:var(--font-weight-semibold);margin:0}.error-message{background-color:rgba(var(--color-error-rgb),.1);border:1px solid rgba(var(--color-error-rgb),.3);border-radius:var(--radius-sm)}.error-message,.success-message{margin-bottom:var(--space-5);padding:var(--space-3)}.success-message{background-color:rgba(var(--color-success-rgb),.1);border:1px solid rgba(var(--color-success-rgb),.3);border-radius:var(--radius-sm);color:var(--color-success);font-size:var(--text-sm)}.verification-message{color:var(--text-color);font-size:var(--text-sm);line-height:1.5;text-align:center}.form-group,.verification-message{margin-bottom:var(--space-5)}.form-group input{border:1px solid var(--border-color);color:var(--color-white);transition:all var(--transition-base)}.form-group input,.form-group input:focus{background-color:var(--background-elevated)}.form-group input:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px rgba(var(--accent-color-rgb),.2)}.form-group input::placeholder{color:var(--text-muted)}.modal-btn{align-items:center;background-color:var(--accent-color);border:none;border-radius:var(--radius-sm);color:var(--color-white);cursor:pointer;display:flex;font-size:var(--text-base);font-weight:var(--font-weight-semibold);height:48px;justify-content:center;margin-top:var(--space-3);padding:var(--space-3);transition:all var(--transition-base);width:100%}.modal-btn:hover:not(:disabled){background-color:var(--accent-hover);transform:translateY(-2px)}.modal-btn:disabled{cursor:not-allowed;opacity:.7}.form-footer{color:var(--text-muted);font-size:var(--text-sm);margin-top:var(--space-5);text-align:center}.form-footer a{color:var(--accent-color);font-weight:var(--font-weight-medium);text-decoration:none;transition:all var(--transition-base)}.form-footer a:hover{text-decoration:underline}.signup-prompt{border-top:1px solid var(--border-color);margin-top:var(--space-6);padding-top:var(--space-5);text-align:center}.signup-prompt p{color:var(--text-muted);margin-bottom:var(--space-3)}.secondary-btn{background-color:initial;border:1px solid var(--accent-color);border-radius:var(--radius-sm);color:var(--color-white);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-4);transition:all var(--transition-base)}.secondary-btn:hover{background-color:rgba(var(--accent-color-rgb),.1);transform:translateY(-2px)}.reset-success{padding:var(--space-5);text-align:center}.reset-success i{color:var(--color-success);font-size:var(--text-3xl);margin-bottom:var(--space-4)}.reset-success h3{color:var(--text-color);font-size:var(--text-lg);margin-bottom:var(--space-3)}.reset-success p{color:var(--text-muted);margin-bottom:var(--space-5)}.demo-btn{background-color:initial;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-weight-medium);margin-top:var(--space-3);padding:var(--space-3);text-align:center;transition:all var(--transition-base);width:100%}.demo-btn:hover{background-color:#ffffff0d;border-color:var(--color-gray-600);color:var(--color-white)}.demo-note{color:var(--text-muted);font-size:var(--text-xs);margin-top:var(--space-3);text-align:center}@media (max-width:480px){.login-modal,.modal-base{padding:var(--space-6) var(--space-5);width:90%}.modal-header h2{font-size:var(--text-lg)}}.ingredients-list{&::-webkit-scrollbar{display:none}}.about-page{background-color:var(--background-dark);color:var(--text-color);min-height:100vh;padding:180px 20px 80px}.about-header{margin:120px auto 60px;max-width:800px;padding-top:0;text-align:center}.about-header h1{color:var(--color-white);font-size:var(--text-4xl);margin-bottom:var(--space-4);text-shadow:0 2px 10px #000000b3}.about-subtitle{color:var(--text-muted);font-size:var(--text-xl);margin-bottom:var(--space-5)}.about-container{margin:0 auto;max-width:1200px;padding:0 var(--space-5)}.about-mission{padding:var(--space-20) 0}.about-mission .about-container{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-10)}.mission-content{flex:1 1;min-width:300px}.mission-content h2{color:var(--color-white);font-size:var(--text-3xl);margin-bottom:var(--space-6)}.mission-content p{color:var(--text-muted);font-size:var(--text-base);line-height:1.6;margin-bottom:var(--space-5)}.mission-image{flex:1 1;min-width:300px}.mission-image img{border-radius:var(--radius-md);box-shadow:var(--shadow-lg);width:100%}.about-values{background-color:var(--background-elevated);padding:var(--space-20) 0}.about-values h2{color:var(--color-white);font-size:var(--text-3xl);margin-bottom:var(--space-12);text-align:center}.values-grid{grid-gap:var(--space-8);display:grid;gap:var(--space-8);grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.value-item{background-color:var(--background-card);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-8);text-align:center;transition:transform var(--transition-base),box-shadow var(--transition-base)}.value-item:hover{box-shadow:var(--shadow-lg);transform:translateY(-10px)}.value-icon{align-items:center;background-color:rgba(var(--accent-color-rgb),.1);border-radius:50%;display:flex;height:70px;justify-content:center;margin:0 auto var(--space-5);width:70px}.value-icon i{color:var(--accent-color);font-size:var(--text-2xl)}.value-item h3{color:var(--color-white);font-size:var(--text-xl);margin-bottom:var(--space-4)}.value-item p{color:var(--text-muted);line-height:1.6}.about-team{padding:var(--space-20) 0}.about-team h2{color:var(--color-white);font-size:var(--text-3xl);margin-bottom:var(--space-12);text-align:center}.team-grid{grid-gap:var(--space-8);display:grid;gap:var(--space-8);grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.team-member{background-color:var(--background-card);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden;transition:transform var(--transition-base)}.team-member:hover{transform:translateY(-10px)}.member-photo{height:250px;overflow:hidden}.member-photo img{height:100%;object-fit:cover;transition:transform var(--transition-base);width:100%}.team-member:hover .member-photo img{transform:scale(1.05)}.team-member h3{color:var(--color-white);font-size:var(--text-lg);margin:var(--space-5) var(--space-5) var(--space-1)}.member-title{color:var(--accent-color);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);margin:0 var(--space-5) var(--space-2)}.member-bio{color:var(--text-muted);font-size:var(--text-sm);line-height:1.5;padding:0 var(--space-5) var(--space-5)}.about-journey{background-color:var(--background-elevated);padding:var(--space-20) 0}.about-journey h2{color:var(--color-white);font-size:var(--text-3xl);margin-bottom:var(--space-12);text-align:center}.timeline{margin:0 auto;max-width:700px;position:relative}.timeline:before{background-color:var(--accent-color);bottom:0;content:"";left:50px;position:absolute;top:0;width:2px}.timeline-item{display:flex;margin-bottom:var(--space-10);position:relative}.timeline-date{color:var(--accent-color);font-size:var(--text-lg);font-weight:var(--font-weight-bold);padding-top:var(--space-1);text-align:center;width:100px}.timeline-content{background-color:var(--background-card);border-radius:var(--radius-md);box-shadow:var(--shadow-md);flex:1 1;padding:var(--space-6)}.timeline-content h3{color:var(--color-white);font-size:var(--text-lg);margin-bottom:var(--space-2)}.timeline-content p{color:var(--text-muted);line-height:1.6}@media (max-width:992px){.about-header h1{font-size:var(--text-3xl)}.about-subtitle{font-size:var(--text-lg)}.about-journey h2,.about-team h2,.about-values h2,.mission-content h2{font-size:var(--text-2xl)}}@media (max-width:768px){.about-page{padding:160px 0 60px}.about-header{margin:90px auto 40px}.about-header h1{font-size:var(--text-2xl)}.about-subtitle{font-size:var(--text-base)}.about-journey,.about-mission,.about-team,.about-values{padding:var(--space-12) 0}.about-journey h2,.about-team h2,.about-values h2,.mission-content h2{font-size:var(--text-xl);margin-bottom:var(--space-8)}.timeline:before{left:30px}.timeline-date{font-size:var(--text-base);width:60px}}@media (max-width:480px){.about-page{padding:120px var(--space-2) 60px}.about-header{margin:60px auto 30px}.about-header h1{font-size:var(--text-xl)}.timeline:before{left:20px}.timeline-date{font-size:var(--text-sm);width:40px}.timeline-content{padding:var(--space-4)}.team-member,.value-item{padding:var(--space-5)}.member-photo{height:200px}}.contact-page{background-color:var(--background-dark);color:var(--text-color);min-height:100vh;padding:80px 20px}.contact-header{margin:0 auto 80px;max-width:600px;padding-top:40px;text-align:center}.contact-header h1{color:var(--color-white);font-size:var(--text-4xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-4)}.contact-subtitle{color:var(--text-muted);font-size:var(--text-lg);line-height:1.6;margin-bottom:0}.contact-container{margin:0 auto;max-width:800px;padding:0 var(--space-4)}.contact-simple-content{align-items:center;display:flex;flex-direction:column}.contact-email-section{margin:0 auto;max-width:500px;width:100%}.contact-email-card{background-color:var(--background-elevated);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-12) var(--space-8);text-align:center}.contact-icon{align-items:center;background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));border-radius:50%;box-shadow:var(--shadow-md);display:flex;height:80px;justify-content:center;margin:0 auto var(--space-6);width:80px}.contact-email-card h2,.contact-icon i{color:var(--color-white);font-size:var(--text-2xl)}.contact-email-card h2{font-weight:var(--font-weight-semibold);margin-bottom:var(--space-4)}.contact-email-card p{color:var(--text-muted);font-size:var(--text-base);line-height:1.6;margin-bottom:var(--space-8)}.email-link{background-color:initial;border:2px solid var(--accent-color);border-radius:var(--radius-md);color:var(--accent-color);display:inline-block;font-size:var(--text-xl);font-weight:var(--font-weight-medium);padding:var(--space-4) var(--space-6);text-decoration:none;transition:all var(--transition-base)}.email-link:hover{background-color:var(--accent-color);box-shadow:var(--shadow-md);color:var(--color-white);transform:translateY(-2px)}.landing-footer{border-top:1px solid var(--border-light);color:var(--text-muted);margin-top:var(--space-20);padding:var(--space-8) 0}@media (max-width:768px){.contact-page{padding:60px 16px}.contact-header{margin-bottom:60px;padding-top:20px}.contact-header h1{font-size:var(--text-3xl)}.contact-subtitle{font-size:var(--text-base)}.contact-email-card{padding:var(--space-10) var(--space-6)}.contact-icon{height:70px;width:70px}.contact-email-card h2,.contact-icon i{font-size:var(--text-xl)}.email-link{font-size:var(--text-lg);padding:var(--space-3) var(--space-5)}}@media (max-width:480px){.contact-page{padding:40px 12px}.contact-header{margin-bottom:40px}.contact-header h1{font-size:var(--text-2xl)}.contact-email-card{padding:var(--space-8) var(--space-4)}.contact-icon{height:60px;margin-bottom:var(--space-4);width:60px}.contact-email-card h2,.contact-icon i{font-size:var(--text-lg)}.email-link{font-size:var(--text-base);padding:var(--space-3) var(--space-4)}.landing-footer{margin-top:var(--space-16)}}body.login-page{align-items:center;background-color:var(--color-gray-900);background-image:linear-gradient(135deg,var(--color-gray-900) 0,var(--color-gray-800) 100%);display:flex;justify-content:center;margin:0;min-height:100vh;padding:0}body.login-page:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z' fill='%23fff' fill-opacity='.03' fill-rule='evenodd'/%3E%3C/svg%3E");content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.login-container{background-color:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);margin:100px auto;max-width:400px;padding:var(--space-8) var(--space-10);position:relative;text-align:center;z-index:1}.login-logo{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;background-clip:text;display:inline-block;font-family:var(--font-family-heading);font-size:var(--text-3xl);font-weight:var(--font-weight-bold);letter-spacing:-.5px;margin-bottom:var(--space-8);position:relative;text-shadow:0 2px 4px #0000001a}.login-logo:after{background:linear-gradient(90deg,#0000,#4caf5099,#0000);bottom:-3px;content:"";height:2px;left:0;position:absolute;width:100%}.login-title{color:var(--color-gray-900);font-size:var(--text-xl);margin-bottom:var(--space-6)}.login-form{display:flex;flex-direction:column;gap:var(--space-5);margin:0 auto;max-width:320px;width:100%}.form-group{text-align:left;width:100%}.form-group label{color:var(--color-gray-700);display:block;margin-bottom:var(--space-2)}.form-group input{border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);box-sizing:border-box;font-size:var(--text-base);padding:var(--space-3);transition:border-color var(--transition-base);width:100%}.form-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #2196f333;outline:none}.login-button{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border:none;border-radius:var(--radius-sm);box-sizing:border-box;color:var(--color-white);cursor:pointer;font-size:var(--text-base);font-weight:var(--font-weight-semibold);margin-top:var(--space-2);padding:var(--space-3);transition:all var(--transition-base);width:100%}.login-button:hover{background:linear-gradient(135deg,var(--color-primary-dark),var(--color-secondary-dark));box-shadow:var(--shadow-md);transform:translateY(-2px)}.login-button:active{transform:translateY(0)}.error-message{color:var(--color-error);font-size:var(--text-sm);margin-top:var(--space-4)}.application-title{color:var(--color-gray-900);font-size:var(--text-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-5);text-align:center}.forgot-password{margin-top:var(--space-4);text-align:center}.forgot-password a{color:var(--color-primary);text-decoration:none}.forgot-password a:hover{text-decoration:underline}.password-input-container{width:100%}.password-input-container input{flex:1 1;padding-right:var(--space-10)}.password-toggle-btn{color:var(--color-gray-600);opacity:.7;right:var(--space-2);top:50%;transform:translateY(-50%);transition:opacity var(--transition-base)}.password-toggle-btn:hover{opacity:1}.privacy-page,.terms-page{background-color:var(--background-dark);color:var(--text-color);min-height:100vh}.legal-content{margin:0 auto;max-width:900px;padding:120px 20px 80px}.legal-container{background-color:var(--background-elevated);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-12) var(--space-10)}.legal-container h1{color:var(--color-white);font-size:var(--text-4xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-4);text-align:center}.last-updated{color:var(--text-muted);font-size:var(--text-sm);font-style:italic;margin-bottom:var(--space-10);text-align:center}.legal-container section{margin-bottom:var(--space-8)}.legal-container h2{border-bottom:1px solid var(--border-light);color:var(--color-white);font-size:var(--text-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-3);padding-bottom:var(--space-2)}.legal-container p{color:var(--text-color);font-size:var(--text-base);line-height:1.7;margin-bottom:var(--space-4)}.legal-container a{color:var(--accent-color);font-weight:var(--font-weight-medium);text-decoration:none;transition:color var(--transition-base)}.legal-container a:hover{color:var(--accent-hover);text-decoration:underline}.legal-container section:last-child{margin-bottom:0}@media (max-width:768px){.legal-content{padding:100px 16px 60px}.legal-container{padding:var(--space-8) var(--space-6)}.legal-container h1{font-size:var(--text-3xl)}.legal-container h2{font-size:var(--text-lg)}.legal-container p{font-size:var(--text-sm)}}@media (max-width:480px){.legal-content{padding:80px 12px 40px}.legal-container{padding:var(--space-6) var(--space-4)}.legal-container h1{font-size:var(--text-2xl)}.legal-container h2{font-size:var(--text-base)}}.settings-page{min-height:100vh;padding:var(--space-5) 0}.settings-loading,.settings-page{background-color:var(--background-dark);color:var(--text-color)}.settings-loading{align-items:center;display:flex;font-size:var(--text-lg);height:100vh;justify-content:center}.settings-container{margin:0 auto;max-width:1000px;padding:0 var(--space-5)}.settings-title{color:var(--color-white);font-size:var(--text-2xl);margin-bottom:var(--space-8);text-align:center}.settings-layout{grid-gap:var(--space-8);background-color:var(--background-elevated);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:grid;gap:var(--space-8);grid-template-columns:250px 1fr;overflow:hidden}.settings-sidebar{background-color:var(--background-card);border-right:1px solid var(--border-color);min-height:100%;padding:var(--space-6) 0}.sidebar-tab{align-items:center;background:none;border:none;color:var(--text-color);cursor:pointer;display:flex;font-size:var(--text-base);gap:var(--space-3);padding:var(--space-4) var(--space-6);position:relative;text-align:left;transition:all var(--transition-base);width:100%}.sidebar-tab i{color:var(--accent-color);font-size:var(--text-base);text-align:center;width:20px}.sidebar-tab:hover{background-color:var(--color-gray-850);color:var(--color-white)}.sidebar-tab.active{background-color:rgba(var(--accent-color-rgb),.1);border-left:3px solid var(--accent-color);color:var(--color-white)}.sidebar-tab.active i{color:var(--accent-color)}.settings-content{padding:var(--space-8)}.settings-section h2{color:var(--color-white);font-size:var(--text-xl);margin-bottom:var(--space-2)}.settings-description{color:var(--text-muted);font-size:var(--text-sm);margin-bottom:var(--space-6)}.settings-form{gap:var(--space-5)}.form-group,.settings-form{display:flex;flex-direction:column}.form-group{gap:var(--space-2)}.form-group label{color:var(--text-color);font-size:var(--text-sm);font-weight:var(--font-weight-medium)}.form-group input[type=email],.form-group input[type=password],.form-group input[type=text],.form-group select,.form-group textarea{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--color-white);font-size:var(--text-sm);padding:var(--space-3) var(--space-4);transition:border-color var(--transition-base);width:100%}.form-group input[type=email]:focus,.form-group input[type=password]:focus,.form-group input[type=text]:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px rgba(var(--accent-color-rgb),.2);outline:none}.form-group select{-webkit-appearance:none;appearance:none;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="6"><path d="M0 0l6 6 6-6z" fill="%23ffffff"/></svg>');background-position:right 15px center;background-repeat:no-repeat;padding-right:var(--space-8)}.form-group textarea{min-height:100px;resize:vertical}.checkbox-group{margin-bottom:var(--space-2)}.checkbox-label{align-items:flex-start;cursor:pointer;display:flex;gap:var(--space-3)}.checkbox-label input[type=checkbox]{accent-color:var(--accent-color);cursor:pointer;height:18px;margin-top:2px;width:18px}.checkbox-text{display:flex;flex-direction:column;gap:var(--space-1)}.checkbox-text span{color:var(--text-color);font-size:var(--text-sm)}.checkbox-text .text-muted{color:var(--text-muted);font-size:var(--text-xs)}.dietary-preferences{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.profile-picture{margin-top:var(--space-2)}.picture-container{align-items:center;display:flex;gap:var(--space-5)}.current-picture{align-items:center;background-color:var(--background-card);border:2px solid var(--border-color);border-radius:50%;color:var(--accent-color);display:flex;font-size:var(--text-3xl);height:100px;justify-content:center;overflow:hidden;width:100px}.current-picture img{height:100%;object-fit:cover;width:100%}.picture-actions{display:flex;flex-direction:column;gap:var(--space-2)}.remove-btn,.upload-btn{align-items:center;background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-color);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-2) var(--space-3);transition:all var(--transition-base)}.upload-btn:hover{background-color:rgba(var(--color-info-rgb),.2);border-color:var(--color-info);color:var(--color-info)}.remove-btn:hover{background-color:rgba(var(--color-error-rgb),.2);border-color:var(--color-error);color:var(--color-error)}.remove-btn i,.upload-btn i{font-size:var(--text-sm)}.form-actions{display:flex;justify-content:flex-end;margin-top:var(--space-2)}.save-btn{background-color:var(--accent-color);border:none;border-radius:var(--radius-round);color:var(--color-white);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-weight-semibold);padding:var(--space-2) var(--space-6);transition:all var(--transition-base)}.save-btn:hover{background-color:var(--accent-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.save-btn:disabled{background-color:var(--color-gray-600);box-shadow:none;cursor:not-allowed;transform:none}.form-status{animation:fadeIn .3s ease;border-radius:var(--radius-sm);font-size:var(--text-sm);padding:var(--space-3) var(--space-4)}.form-status.success{background-color:rgba(var(--color-success-rgb),.2);border:1px solid rgba(var(--color-success-rgb),.5);color:var(--color-success)}.form-status.error{background-color:rgba(var(--color-error-rgb),.2);border:1px solid rgba(var(--color-error-rgb),.5);color:var(--color-error)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.settings-layout{grid-template-columns:1fr}.settings-sidebar{border-bottom:1px solid var(--border-color);border-right:none;padding:var(--space-4) 0}.sidebar-tab{padding:var(--space-3) var(--space-5)}.settings-content{padding:var(--space-5)}.dietary-preferences{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.picture-container{align-items:flex-start;flex-direction:column}}@media (max-width:480px){.settings-title{font-size:var(--text-xl);margin-bottom:var(--space-5)}.settings-section h2{font-size:var(--text-lg)}}.shopping-list-page{flex-direction:column;min-height:100vh;width:100%}.shopping-list-loading,.shopping-list-page{background-color:var(--background-dark);color:var(--text-color);display:flex}.shopping-list-loading{align-items:center;font-size:var(--text-lg);height:100vh;justify-content:center}.shopping-list-container{flex:1 1;margin:0 auto;max-width:1200px;padding:var(--space-8) var(--space-5) var(--space-10);width:100%}.shopping-list-title{color:var(--color-white);font-size:var(--text-2xl);margin-bottom:var(--space-4);text-align:center}.shopping-list-actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;margin-bottom:var(--space-5)}.view-toggle{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;overflow:hidden}.view-toggle button{align-items:center;background-color:var(--color-gray-800);border:none;color:var(--text-muted);cursor:pointer;display:flex;font-weight:var(--font-weight-medium);gap:var(--space-2);padding:var(--space-3) var(--space-4);transition:all var(--transition-base)}.view-toggle button.active{background-color:var(--accent-color);color:var(--color-white)}.view-toggle button:first-child{border-right:1px solid var(--border-color)}.list-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.list-actions a,.list-actions button{align-items:center;background-color:var(--color-gray-800);border:none;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);color:var(--text-color);cursor:pointer;display:flex;font-weight:var(--font-weight-medium);gap:var(--space-2);padding:var(--space-2) var(--space-3);text-decoration:none;transition:all var(--transition-base)}.list-actions a:hover,.list-actions button:hover{background-color:var(--color-gray-700)}.clear-checked,.print-list,.update-list{color:var(--text-color)}.update-list{background-color:var(--color-gray-800)}.shopping-list-content{background-color:var(--background-elevated);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-4)}.empty-shopping-list{color:var(--text-muted);padding:var(--space-8) 0;text-align:center}.empty-shopping-list i{color:var(--color-gray-500);font-size:var(--text-3xl);margin-bottom:var(--space-4)}.empty-shopping-list p{font-size:var(--text-base);margin-bottom:var(--space-2)}.empty-list-action{background-color:var(--accent-color);border-radius:var(--radius-sm);color:var(--color-white);display:inline-block;font-weight:var(--font-weight-medium);margin-top:var(--space-4);padding:var(--space-3) var(--space-4);text-decoration:none;transition:background-color var(--transition-base)}.empty-list-action:hover{background-color:var(--accent-hover)}.shopping-list-by-category,.shopping-list-by-recipe{display:flex;flex-direction:column;gap:var(--space-4)}.category-section,.recipe-section{border-bottom:1px solid var(--border-color);padding-bottom:var(--space-4)}.category-section:last-child,.recipe-section:last-child{border-bottom:none}.category-title,.recipe-title{align-items:center;color:var(--color-white);display:flex;font-size:var(--text-lg);margin-bottom:var(--space-3)}.category-title{padding-left:var(--space-2);position:relative}.category-title:before{background-color:var(--accent-color);border-radius:var(--radius-sm);content:"";height:100%;left:0;position:absolute;width:4px}.ingredients-list li{border-bottom:1px solid var(--border-light);justify-content:space-between;padding:var(--space-3) 0;transition:background-color var(--transition-base)}.ingredients-list li:hover{background-color:var(--background-card)}.ingredients-list li.checked .ingredient-amount,.ingredients-list li.checked .ingredient-category,.ingredients-list li.checked .ingredient-name{color:var(--color-gray-600);text-decoration:line-through}.ingredient-label{align-items:center;cursor:pointer;display:flex;gap:var(--space-2)}.ingredient-label input[type=checkbox]{cursor:pointer;height:18px;width:18px}.ingredient-name{color:var(--text-color);font-weight:var(--font-weight-medium);margin-right:var(--space-2)}.ingredient-amount{color:var(--text-muted);margin-right:var(--space-2)}.ingredient-category,.ingredient-recipes{color:var(--text-muted);font-size:var(--text-sm)}.recipe-count{background-color:var(--color-gray-700);border-radius:var(--radius-round);color:var(--text-muted);cursor:help;font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}@media print{body{background-color:#fff;color:#000}.dashboard-header,.shopping-list-actions{display:none}.shopping-list-container{padding:0}.shopping-list-content{background-color:#fff;box-shadow:none;color:#000;padding:0}.ingredients-list li.checked{display:none}.shopping-list-title{color:#000;margin-bottom:var(--space-5);text-align:center}.category-title,.ingredient-name,.recipe-title{color:#000}.ingredient-amount{color:var(--color-gray-700)}}@media (max-width:768px){.shopping-list-actions{align-items:flex-start;flex-direction:column}.list-actions{width:100%}.ingredients-list li{align-items:flex-start;flex-direction:column;gap:var(--space-2);padding:var(--space-3) 0}.ingredient-category,.ingredient-recipes{align-self:flex-end}}@media (max-width:480px){.list-actions{flex-direction:column;width:100%}.list-actions a,.list-actions button{justify-content:center;width:100%}.shopping-list-title{font-size:var(--text-xl)}}*{-ms-overflow-style:none;scrollbar-width:none}::-webkit-scrollbar{display:none}.discover-page{margin:0 auto;max-width:1200px;padding:20px;width:100%}.discover-container{display:flex;flex-direction:row;gap:20px;width:100%}.discover-sidebar{background-color:var(--card-bg);border-radius:8px;box-shadow:0 2px 8px #0000001a;min-width:280px;overflow-y:auto;padding:20px;width:280px}.discover-grid{grid-gap:20px;display:grid;flex:1 1;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));overflow-y:auto}.filter-section{gap:15px}.filter-group,.filter-section{display:flex;flex-direction:column}.filter-group{gap:10px}.filter-group h3{border-bottom:1px solid #ffffff0d;color:var(--text-color);font-size:16px;margin:0 0 12px;padding-bottom:8px;width:100%}.filter-group h3:after{content:none;display:none}.filter-options .savoro-button{margin-bottom:5px}.search-container{margin-bottom:10px;width:100%}.filter-tag{align-items:center;background-color:var(--light-bg);border:1px solid var(--border-color);border-radius:20px;cursor:pointer;display:inline-flex;font-size:14px;padding:4px 10px;transition:all .2s ease;-webkit-user-select:none;user-select:none}.filter-tag.selected{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.reset-filters-btn{margin-top:15px}@media (max-width:768px){.discover-container{flex-direction:column}.discover-sidebar{margin-bottom:20px;min-width:100%;width:100%}.discover-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (max-width:480px){.discover-page{padding:10px}.discover-grid{grid-template-columns:1fr}}.discover-loading{align-items:center;color:var(--text-secondary);display:flex;font-size:18px;height:500px;justify-content:center;width:100%}.recipe-card{transition:transform .3s ease,box-shadow .3s ease}.recipe-card:hover{box-shadow:0 10px 20px #0006}.savoro-certified{align-items:center;background-color:#f44336e6;border-radius:3px;color:#fff;display:flex;font-size:.75rem;gap:4px;padding:3px 6px;position:absolute;right:10px;top:10px}.savoro-certified i{font-size:.8rem}.savoro-page.discover-page{height:100vh!important;max-height:none!important;overflow:hidden!important}.savoro-page.discover-page .savoro-page-container{display:flex;flex-direction:column;height:100%!important;overflow:hidden!important}.savoro-page-container>.discover-container{display:flex;flex:1 1;flex-direction:row;gap:var(--space-5);overflow:hidden}@media (max-width:992px){.discover-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (max-width:576px){.discover-grid{grid-template-columns:1fr}}.filter-options{gap:10px;margin-bottom:5px}.appliance-filters,.category-filters{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin:0!important;padding:0!important;width:100%!important}.appliance-filters .savoro-button-small,.category-filters .savoro-button-small{border-radius:50px!important;margin:0 2px 2px 0!important}.recipe-detail-page{background-color:var(--background-dark);color:var(--text-color);display:flex;flex-direction:column;min-height:100vh;padding-top:0}.recipe-detail-loading{font-size:var(--text-lg)}.recipe-detail-loading,.recipe-not-found{align-items:center;background-color:var(--background-dark);color:var(--text-color);display:flex;height:100vh;justify-content:center}.recipe-not-found{flex-direction:column;padding:var(--space-5);text-align:center}.recipe-not-found h2{color:var(--color-white);font-size:var(--text-2xl);margin-bottom:var(--space-4)}.recipe-not-found p{color:var(--text-muted);font-size:var(--text-base);margin-bottom:var(--space-6)}.back-to-recipes{background-color:var(--accent-color);border:none;border-radius:var(--radius-round);color:#fff;cursor:pointer;display:inline-block;font-size:var(--text-sm);padding:var(--space-2) var(--space-5)}.back-to-recipes:hover{background-color:var(--accent-hover);transform:translateY(-2px)}.recipe-detail-container{margin:0 auto;max-width:1200px;padding:0 var(--space-5) var(--space-8)}.recipe-hero-image{height:35vh;margin-bottom:var(--space-5);margin-top:0;max-height:400px;min-height:250px;overflow:hidden;position:relative;width:100%}.recipe-hero-image img{height:100%;object-fit:cover;width:100%}.recipe-hero-image .savoro-certified{align-items:center;background-color:rgba(var(--accent-color-rgb),.9);border:1px solid #ffffff4d;border-radius:var(--radius-round);box-shadow:var(--shadow-md);color:#fff;display:flex;font-family:Pacifico,cursive;font-family:var(--font-family-brand,"Pacifico",cursive);font-size:var(--text-sm);font-weight:var(--font-weight-medium);gap:var(--space-1);left:15px;padding:var(--space-2) var(--space-4);position:absolute;text-shadow:0 1px 2px #00000080;top:65px;transform:rotate(-3deg);transform-origin:left center;z-index:5}.recipe-hero-image .savoro-certified i{font-size:var(--text-sm)}.recipe-actions-overlay{display:flex;gap:var(--space-2);position:absolute;right:var(--space-4);top:var(--space-4);z-index:100}.recipe-actions-overlay .action-btn{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#0009;border:1px solid #fff3;border-radius:var(--radius-round);box-shadow:var(--shadow-md);font-size:var(--text-sm);padding:var(--space-2) var(--space-3);transition:all var(--transition-base)}.recipe-actions-overlay .action-btn i{font-size:var(--text-sm)}.recipe-actions-overlay .action-btn span{margin-left:var(--space-1)}.recipe-actions-overlay .action-btn:hover{background-color:#000c;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.recipe-title-overlay{align-items:center;background:linear-gradient(0deg,#000000f2 0,#000000d9 40%,#0009 70%,#0003 90%,#0000);bottom:0;display:flex;flex-direction:column;left:0;padding:80px var(--space-5) var(--space-8);position:absolute;right:0}.title-wrapper{display:flex;flex-direction:column;max-width:1200px;width:100%}.recipe-title{font-size:var(--text-4xl)!important;font-weight:var(--font-weight-bold);letter-spacing:-.02em;line-height:1.1;margin-bottom:var(--space-3)!important;text-shadow:var(--shadow-md);width:100%}.recipe-description-text{color:var(--text-color)!important;display:block;font-size:var(--text-lg)!important;font-weight:var(--font-weight-light);line-height:1.5!important;margin:0 0 var(--space-3)!important;opacity:.9;text-shadow:var(--shadow-sm);width:100%}.recipe-difficulty-badge{display:none}.favorited-badge{background-color:rgba(var(--accent-color-rgb),.9);box-shadow:0 4px 12px rgba(var(--accent-color-rgb),.5),0 0 0 1px rgba(var(--accent-color-rgb),.3)}.favorited-badge,.saved-badge{align-items:center;border-radius:50%;color:var(--color-white);display:flex;height:40px;justify-content:center;left:var(--space-4);position:absolute;top:var(--space-4);width:40px;z-index:10}.saved-badge{background-color:#2196f3e6;box-shadow:0 4px 12px #2196f380,0 0 0 1px #2196f34d}.recipe-detail-nav{align-items:center;background-color:#000000b3;border-bottom:none;display:flex;justify-content:flex-end;left:0;padding:var(--space-4) var(--space-5);position:absolute;right:0;top:0;z-index:1000}.nav-links{display:flex;gap:var(--space-4)}.dashboard-nav-link{border-radius:var(--radius-round);color:var(--text-color);font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-3);text-decoration:none;transition:all var(--transition-base)}.dashboard-nav-link:hover{background-color:#ffffff0d;color:var(--accent-color)}.back-to-recipes{align-items:center;color:var(--text-color);display:flex;font-weight:var(--font-weight-medium);gap:var(--space-2);text-decoration:none;transition:all var(--transition-base)}.back-to-recipes i{font-size:var(--text-sm)}.back-to-recipes:hover{color:var(--accent-color)}.recipe-actions{gap:var(--space-4)}.action-btn{background-color:var(--background-card)}.action-btn i{font-size:var(--text-base)}.favorite-btn.favorited{background-color:rgba(var(--accent-color-rgb),.3)}.save-btn.saved{background-color:#2196f34d;border-color:#2196f3;box-shadow:0 3px 8px #2196f333;color:#2196f3}.save-btn.saved i{color:#2196f3}.recipe-header{margin-bottom:var(--space-8)}.recipe-meta{flex-wrap:wrap;gap:var(--space-5);margin-bottom:var(--space-4)}.meta-item{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-sm);gap:var(--space-2)}.meta-item i{color:var(--accent-color);font-size:var(--text-base)}.serving-select{appearance:none;-webkit-appearance:none;background-color:initial;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="6"><path d="M0 0l6 6 6-6z" fill="%23f44336"/></svg>');background-position:100%;background-repeat:no-repeat;border:none;color:var(--text-color);cursor:pointer;font-size:var(--text-sm);margin-left:var(--space-1);padding:2px var(--space-1);padding-right:var(--space-4)}.serving-select:focus{outline:none}.recipe-tags{gap:var(--space-2);margin-bottom:var(--space-5)}.recipe-tag{background-color:var(--background-card);color:var(--text-muted);transition:all var(--transition-base)}.recipe-tag:hover{background-color:rgba(var(--accent-color-rgb),.1);color:var(--accent-color)}.recipe-content{display:flex;gap:var(--space-8);margin-bottom:var(--space-12)}.recipe-main{flex:1 1}.recipe-sidebar{max-height:fit-content;width:300px}.recipe-image{border-radius:var(--radius-md);height:400px;margin-bottom:var(--space-6);width:100%}.recipe-description{color:var(--text-muted);font-size:var(--text-base);line-height:1.6;margin-bottom:var(--space-8)}.recipe-tabs button{background-color:initial;border:none;color:var(--text-color);cursor:pointer;font-size:var(--text-base);font-weight:var(--font-weight-medium);padding:var(--space-3) var(--space-5);position:relative;transition:all var(--transition-base)}.recipe-tabs button:hover{color:var(--color-white)}.recipe-tabs button.active{color:var(--accent-color)}.recipe-tabs button.active:after{background-color:var(--accent-color);bottom:-1px;content:"";height:2px;left:0;position:absolute;width:100%}.recipe-instructions-section h2,.recipe-notes-section h2,.recipe-nutrition-section h2{color:var(--color-white);font-size:var(--text-xl);margin-bottom:var(--space-5)}.instructions-list{counter-reset:instruction;list-style:none;padding:0}.instructions-list li{display:flex;gap:var(--space-4);margin-bottom:var(--space-5)}.instruction-number{align-items:center;background-color:var(--accent-color);border-radius:50%;color:var(--color-white);display:flex;flex-shrink:0;font-size:var(--text-sm);font-weight:var(--font-weight-semibold);height:30px;justify-content:center;margin-top:var(--space-1);width:30px}.instruction-content{flex:1 1}.instruction-text{color:var(--text-color);font-size:var(--text-base);line-height:1.6;margin-bottom:var(--space-2)}.instruction-timers{display:inline-block;margin-left:var(--space-2);vertical-align:middle}.instruction-content .recipe-timer{display:inline-flex;margin-bottom:0;margin-left:var(--space-2);margin-top:0;vertical-align:middle}.timer-help-text{color:var(--text-muted);font-size:var(--text-xs);font-style:italic;margin-top:var(--space-1)}.recipe-settings{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:var(--space-5);padding:var(--space-4)}.recipe-settings h3{color:var(--color-white);font-size:var(--text-base);margin-bottom:var(--space-2)}.timer-settings{margin-top:var(--space-2)}.timer-settings,.timer-toggle{align-items:center;display:flex;gap:var(--space-2)}.timer-toggle-label{color:var(--text-muted);font-size:var(--text-sm)}.timer-toggle-switch{display:inline-block;height:22px;position:relative;width:40px}.timer-toggle-switch input{height:0;opacity:0;width:0}.timer-toggle-slider{background-color:var(--color-gray-700);border-radius:22px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}.timer-toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:16px;left:3px;position:absolute;transition:.4s;width:16px}input:checked+.timer-toggle-slider{background-color:var(--accent-color)}input:checked+.timer-toggle-slider:before{transform:translateX(18px)}.recipe-nutrition-section{margin-bottom:var(--space-8)}.nutrition-disclaimer{color:var(--text-muted);font-size:var(--text-sm);margin-bottom:var(--space-5)}.nutrition-grid{grid-gap:var(--space-5);display:grid;gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin-bottom:var(--space-5)}.nutrition-item{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:var(--space-4);text-align:center}.nutrition-value{color:var(--accent-color);font-size:var(--text-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-1)}.nutrition-label{color:var(--text-muted);font-size:var(--text-sm)}.notes-list{color:var(--text-color);line-height:1.6;padding-left:var(--space-5)}.notes-list li{margin-bottom:var(--space-2)}.ingredients-section{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;margin-bottom:var(--space-8);max-height:max-content;overflow:hidden;padding:var(--space-4)}.ingredients-section h2{color:var(--color-white);font-size:var(--text-lg);margin:0 0 var(--space-3) 0;padding:0}.serving-info{color:var(--text-muted);font-size:var(--text-sm);line-height:1;margin:0 0 var(--space-3) 0;padding:0}.ingredients-list{list-style:none;margin:0;padding:0}.ingredients-list li{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-color);display:flex;font-size:var(--text-sm);line-height:1.3;padding:var(--space-1) 0}.ingredients-list li:last-child{border-bottom:none;padding-bottom:0}.add-to-shopping-list{align-items:center;background-color:initial;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:var(--font-weight-normal);gap:var(--space-2);justify-content:center;margin-top:var(--space-1);padding:var(--space-2) var(--space-3);transition:all var(--transition-base);width:100%}.add-to-shopping-list:hover{background-color:rgba(var(--accent-color-rgb),.1);border-color:var(--accent-color);color:var(--accent-color)}.nutrition-summary{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-6)}.nutrition-summary h3{color:var(--color-white);font-size:var(--text-base);margin-bottom:var(--space-4)}.nutrition-quick-facts{display:flex;justify-content:space-between}.nutrition-fact{text-align:center}.fact-value{color:var(--accent-color);display:block;font-size:var(--text-base);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-1)}.fact-label{color:var(--text-muted);font-size:var(--text-xs)}.serving-control{align-items:center;background-color:#ffffff1a;border-radius:var(--radius-round);display:inline-flex;margin-left:var(--space-2);padding:2px}.serving-btn{align-items:center;background-color:var(--background-card);border:none;border-radius:50%;color:var(--text-color);cursor:pointer;display:flex;font-size:10px;height:24px;justify-content:center;transition:all var(--transition-base);width:24px}.serving-btn:hover:not(:disabled){background-color:var(--accent-color);color:#fff}.serving-btn:disabled{cursor:not-allowed;opacity:.4}.serving-count{color:var(--accent-color);font-size:16px;font-weight:var(--font-weight-semibold);margin:0 var(--space-2);min-width:18px;text-align:center}@media screen and (max-width:1024px){.recipe-hero-image{height:30vh;min-height:240px}.recipe-title,.recipe-title[style]{font-size:var(--text-3xl)!important}.recipe-description-text,.recipe-description-text[style]{font-size:var(--text-base)!important}.recipe-content{flex-direction:column}.recipe-sidebar{margin-bottom:var(--space-8);order:-1;width:100%}.ingredients-section{margin-bottom:var(--space-5)}}@media screen and (max-width:768px){.recipe-hero-image{height:25vh;min-height:220px}.recipe-title,.recipe-title[style]{font-size:var(--text-2xl)!important}.recipe-description-text,.recipe-description-text[style]{font-size:var(--text-sm)!important}.recipe-detail-container{padding-left:var(--space-4);padding-right:var(--space-4);padding-top:var(--space-2)}.recipe-meta{gap:var(--space-4)}.meta-item{font-size:var(--text-xs)}.recipe-image{height:300px}.instruction-timers{display:flex;justify-content:center;margin-left:0;margin-top:var(--space-2);width:100%}.instruction-content .recipe-timer{margin-left:auto;margin-right:auto}.recipe-title-overlay{padding:var(--space-12) var(--space-5) var(--space-5)}.ingredients-section{padding:var(--space-4)}}@media screen and (max-width:480px){.recipe-hero-image{height:22vh;min-height:200px}.recipe-title,.recipe-title[style]{font-size:var(--text-xl)!important}.recipe-description-text,.recipe-description-text[style]{font-size:var(--text-xs)!important;line-height:1.4!important}.recipe-detail-nav{padding:var(--space-2) var(--space-4)}.recipe-actions{justify-content:space-between;width:100%}.action-btn{font-size:var(--text-xs);padding:var(--space-1) var(--space-3)}.recipe-tabs button{font-size:var(--text-sm);padding:var(--space-2)}.recipe-image{height:250px}.nutrition-grid{grid-template-columns:repeat(2,1fr)}.recipe-title-overlay{padding:var(--space-10) var(--space-4) var(--space-4)}}.saved-recipes-page{background-color:var(--background-dark);color:var(--text-color);min-height:calc(100vh - 60px);padding:var(--space-5) 0}.saved-recipes-container{margin:0 auto;max-width:1200px;padding:0 var(--space-5)}.saved-recipes-title{color:var(--color-white);font-size:var(--text-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-6)}.saved-recipes-loading{align-items:center;background-color:var(--background-dark);color:var(--text-color);display:flex;font-size:var(--text-lg);height:300px;justify-content:center}.recipe-tabs{border-bottom:1px solid var(--border-color);display:flex;margin-bottom:var(--space-6)}.recipe-tab{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-base);font-weight:var(--font-weight-semibold);padding:var(--space-3) var(--space-5);position:relative;transition:all var(--transition-base)}.recipe-tab.active,.recipe-tab:hover{color:#2a9d8f;color:var(--accent-secondary,#2a9d8f)}.recipe-tab.active:after{background-color:#2a9d8f;background-color:var(--accent-secondary,#2a9d8f);bottom:-1px;content:"";height:3px;left:0;position:absolute;width:100%}.recipe-tab i{margin-right:var(--space-2)}.recipes-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-6)}.search-box{flex:1 1;min-width:280px;position:relative}.search-box i{color:var(--text-muted);left:var(--space-3);position:absolute;top:50%;transform:translateY(-50%)}.search-box input{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--color-white);font-size:var(--text-sm);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-10);transition:border-color var(--transition-base);width:100%}.search-box input:focus{border-color:#2a9d8f;border-color:var(--accent-secondary,#2a9d8f);outline:none}.filter-options{display:flex;flex-wrap:wrap;gap:var(--space-4)}.filter{align-items:center;display:flex;gap:var(--space-2)}.filter label{color:var(--color-gray-600);font-size:var(--text-sm);font-weight:var(--font-weight-semibold)}.filter select{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-color);cursor:pointer;font-size:var(--text-sm);min-width:120px;padding:var(--space-2) var(--space-3)}.filter select:focus{border-color:#2a9d8f;border-color:var(--accent-secondary,#2a9d8f);outline:none}.recipes-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.recipe-card{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);height:100%;overflow:hidden;position:relative;transition:transform var(--transition-base),box-shadow var(--transition-base)}.recipe-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.recipe-link{color:inherit;display:block;height:100%;text-decoration:none}.recipe-actions{display:flex;gap:var(--space-2);position:absolute;right:var(--space-3);top:var(--space-3);z-index:5}.recipe-actions button{background-color:#000000b3;border:none;border-radius:50%;box-shadow:var(--shadow-md),0 0 0 1px #ffffff1a;color:var(--text-muted);height:36px;justify-content:center;width:36px}.action-btn,.recipe-actions button{align-items:center;cursor:pointer;display:flex;transition:all var(--transition-base)}.action-btn{background-color:initial;border:1px solid var(--border-color);border-radius:var(--radius-round);box-shadow:var(--shadow-sm);color:var(--text-color);font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-2) var(--space-4)}.action-btn:hover{background-color:var(--background-elevated);border-color:var(--accent-color);box-shadow:var(--shadow-md);color:var(--color-white);transform:translateY(-1px)}.favorite-btn.favorited{background-color:rgba(var(--accent-color-rgb),.15);border-color:var(--accent-color);box-shadow:0 3px 8px rgba(var(--accent-color-rgb),.2)}.favorite-btn.favorited,.favorite-btn.favorited i{color:var(--accent-color)}.recipe-card .favorited-badge{align-items:center;background-color:rgba(var(--accent-color-rgb),.9);border-radius:50%;box-shadow:var(--shadow-lg),0 0 0 1px rgba(var(--accent-color-rgb),.3);color:var(--color-white);display:flex;height:40px;justify-content:center;position:absolute;right:var(--space-4);top:var(--space-4);width:40px}.recipe-card .favorited-badge i,.recipe-card .saved-badge i{font-size:var(--text-base)}.remove-btn{align-items:center;background-color:initial;border:1px solid var(--border-color);border-radius:var(--radius-round);box-shadow:var(--shadow-sm);color:var(--text-color);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-2) var(--space-4);transition:all var(--transition-base)}.remove-btn:hover{background-color:var(--background-elevated);border-color:var(--accent-color);box-shadow:var(--shadow-md);color:var(--accent-color);transform:translateY(-1px)}.remove-btn i{font-size:var(--text-base)}.recipe-image{height:180px;overflow:hidden;position:relative}.recipe-image img{height:100%;object-fit:cover;transition:transform var(--transition-base);width:100%}.recipe-card:hover .recipe-image img{transform:scale(1.05)}.recipe-category{background-color:#2a9d8fe6;border-radius:var(--radius-sm);bottom:var(--space-3);color:#fff;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);left:var(--space-3);padding:var(--space-1) var(--space-2);position:absolute;text-transform:uppercase}.recipe-info{padding:var(--space-4)}.recipe-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-white);display:-webkit-box;font-size:var(--text-lg);font-weight:var(--font-weight-semibold);line-height:1.3;margin:0 0 var(--space-3);overflow:hidden;text-overflow:ellipsis}.recipe-tags{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-3)}.recipe-tag{background-color:var(--background-elevated);border:1px solid var(--border-color);border-radius:var(--radius-round);color:var(--text-color);font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.recipe-difficulty i,.recipe-time i{margin-right:var(--space-1)}.difficulty-easy{color:#4caf50;color:var(--color-success,#4caf50)}.difficulty-medium{color:#ff9800;color:var(--color-warning,#ff9800)}.difficulty-hard{color:#f44336;color:var(--color-error,#f44336)}.no-recipes-message{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);grid-column:1/-1;padding:var(--space-15) var(--space-5)}.no-recipes-message i{font-size:var(--text-4xl)}.no-recipes-message p{color:var(--text-muted);margin:var(--space-2) 0}.no-recipes-message p:first-of-type{color:var(--color-white);font-size:var(--text-lg);font-weight:var(--font-weight-semibold)}.browse-recipes-btn{background-color:#2a9d8f;background-color:var(--accent-secondary,#2a9d8f);border-radius:var(--radius-sm);color:#fff;display:inline-block;font-weight:var(--font-weight-semibold);margin-top:var(--space-5);padding:var(--space-2) var(--space-5);text-decoration:none;transition:background-color var(--transition-base)}.browse-recipes-btn:hover{background-color:#218a7e;background-color:var(--accent-secondary-hover,#218a7e)}@media (max-width:768px){.saved-recipes-title{font-size:var(--text-xl)}.recipes-toolbar{align-items:stretch;flex-direction:column}.filter-options{justify-content:space-between}.recipes-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:480px){.recipe-tabs{justify-content:center}.recipe-tab{font-size:var(--text-sm);padding:var(--space-2) var(--space-4)}.filter-options{flex-direction:column}.recipes-grid{grid-template-columns:1fr}.recipe-image{height:160px}}#root,#root>div,.pricing-page,body,html{background-color:#000!important;background-image:none!important}.pricing-page:before{background-color:#000;content:"";height:100%;left:0;position:fixed;top:0;width:100%;z-index:-1}.pricing-page{color:var(--text-color);min-height:100vh;padding:120px 20px 80px}.pricing-header{margin:60px auto 40px;max-width:800px;padding-top:60px;text-align:center}.pricing-header h1{color:var(--color-white);display:none;font-size:var(--text-3xl);margin-bottom:var(--space-5);text-shadow:var(--shadow-md)}.pricing-subtitle{color:var(--text-color)!important;display:block!important;font-size:var(--text-xl)!important;margin-bottom:var(--space-10);margin-top:var(--space-10)!important;opacity:1!important;padding:var(--space-4)!important;visibility:visible!important}.pricing-container{display:flex;flex-wrap:wrap;gap:var(--space-8);justify-content:center;margin:0 auto var(--space-15);margin-top:var(--space-5);max-width:900px;padding-top:var(--space-5)}.pricing-card{border:2px solid #0000;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:400px;padding:var(--space-10);position:relative;transition:transform var(--transition-base),box-shadow var(--transition-base);width:100%}.pricing-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-5px)}.free-plan{background-color:var(--background-card);border:2px solid var(--accent-color)}.pro-plan{background-color:var(--background-elevated);opacity:.8}.pricing-badge{background-color:var(--accent-color);border-radius:var(--radius-round);color:var(--color-white);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);letter-spacing:.5px;padding:var(--space-1) var(--space-4);position:absolute;right:20px;top:-12px}.pricing-disabled{opacity:.6;pointer-events:none}.pricing-card h2{color:var(--color-white);font-size:var(--text-2xl);margin-bottom:var(--space-4)}.pricing-price{color:var(--color-white);font-size:var(--text-4xl);font-weight:var(--font-weight-bold);margin:var(--space-5) 0 var(--space-1)}.pricing-period{color:var(--text-muted);font-size:var(--text-base);margin-bottom:var(--space-8)}.pricing-features{list-style-type:none;margin-bottom:var(--space-10);padding:0}.pricing-features li{align-items:flex-start;color:var(--text-color);display:flex;margin-bottom:var(--space-4)}.pricing-features i{color:var(--accent-color);font-size:var(--text-base);margin-right:var(--space-2);margin-top:var(--space-1);min-width:15px}.pricing-button{background-color:var(--accent-color);border:none;border-radius:var(--radius-sm);color:var(--color-white);cursor:pointer;font-size:var(--text-base);font-weight:var(--font-weight-semibold);padding:var(--space-4) 0;transition:all var(--transition-base);width:100%}.pricing-button:hover{background-color:var(--accent-hover);transform:translateY(-2px)}.pricing-button:disabled{background-color:var(--color-gray-700);cursor:not-allowed;opacity:.7;transform:none}.pricing-faq{margin:0 auto var(--space-20);max-width:1000px}.pricing-faq h2{color:var(--color-white);font-size:var(--text-2xl);margin-bottom:var(--space-10);text-align:center;text-shadow:var(--shadow-md)}.faq-grid{display:flex;flex-direction:column;gap:var(--space-5);margin:0 auto;max-width:800px}.faq-item{align-items:flex-start;background-color:var(--background-card);border-left:3px solid var(--accent-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;padding:var(--space-6);transition:transform var(--transition-base),box-shadow var(--transition-base)}.faq-item:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.faq-icon{color:var(--accent-color);font-size:var(--text-xl);margin-right:var(--space-5);min-width:30px}.faq-content{flex:1 1}.faq-item h3{color:var(--color-white);font-size:var(--text-lg);margin-bottom:var(--space-2)}.faq-item p{color:var(--text-muted);line-height:1.6}.pricing-cta{background-color:var(--background-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:0 auto var(--space-20);max-width:1200px;padding:var(--space-15) var(--space-5);text-align:center}.pricing-cta h2{color:var(--color-white);font-size:var(--text-2xl);margin-bottom:var(--space-5);text-shadow:var(--shadow-md)}.pricing-cta p{color:var(--text-muted);font-size:var(--text-lg);margin-bottom:var(--space-8);margin-left:auto;margin-right:auto;max-width:700px}.pricing-cta-button{background-color:var(--accent-color);border:none;border-radius:var(--radius-round);color:var(--color-white);cursor:pointer;font-size:var(--text-lg);font-weight:var(--font-weight-semibold);padding:var(--space-4) var(--space-10);transition:all var(--transition-base)}.pricing-cta-button:hover{background-color:var(--accent-hover);box-shadow:var(--shadow-lg);transform:translateY(-3px)}.landing-logo{text-decoration:none!important;transition:color .2s ease}.landing-logo:hover{color:var(--accent-color)!important}.landing-nav-link.active{color:var(--color-white);font-weight:var(--font-weight-semibold)}.landing-nav-link.active:after{width:100%}@media (max-width:992px){.pricing-header h1{font-size:var(--text-3xl)}.pricing-subtitle{font-size:var(--text-lg)}.pricing-container{gap:var(--space-8)}}@media (max-width:768px){.pricing-page{padding:var(--space-25) var(--space-5) var(--space-15)}.pricing-header h1{font-size:var(--text-2xl)}.pricing-subtitle{font-size:var(--text-base)}.faq-item{flex-direction:column}.faq-icon{font-size:var(--text-2xl);margin-bottom:var(--space-4);margin-right:0}.pricing-faq h2{font-size:var(--text-xl)}.pricing-cta-button{padding:var(--space-4) var(--space-5);width:100%}}@media (max-width:480px){.pricing-header h1{font-size:var(--text-xl)}.pricing-card{padding:var(--space-8) var(--space-5)}.pricing-price{font-size:var(--text-3xl)}.pricing-button{padding:var(--space-4) var(--space-5);width:100%}}.meal-plan-page{flex-direction:column;min-height:100vh}.meal-plan-loading,.meal-plan-page{background-color:var(--background-dark);color:var(--text-color);display:flex}.meal-plan-loading{align-items:center;font-size:var(--text-lg);height:100vh;justify-content:center}.meal-plan-container{flex:1 1;margin:0 auto;max-width:1400px;padding:var(--space-8) var(--space-5) var(--space-10);width:100%}.meal-plan-title{color:var(--color-white);font-size:var(--text-2xl);margin-bottom:var(--space-5);text-align:center}.instructions-panel{align-items:flex-start;background-color:rgba(var(--accent-color-rgb),.1);border:1px solid rgba(var(--accent-color-rgb),.3);border-radius:var(--radius-md);display:flex;gap:var(--space-5);margin-bottom:var(--space-8);padding:var(--space-5);position:relative}.instructions-icon{color:var(--accent-color);font-size:var(--text-2xl);margin-top:var(--space-1)}.instructions-content{flex:1 1}.instructions-content h3{color:var(--color-white);font-size:var(--text-lg);margin-bottom:var(--space-3)}.instructions-content p{color:var(--text-muted);line-height:1.5;margin-bottom:var(--space-4)}.instructions-content ul{padding-left:var(--space-5)}.instructions-content li{color:var(--text-muted);line-height:1.5;margin-bottom:var(--space-2)}.dismiss-instructions{background-color:initial;border:none;color:var(--accent-color);cursor:pointer;font-size:var(--text-lg);padding:var(--space-1);position:absolute;right:var(--space-3);top:var(--space-3);transition:all var(--transition-base)}.dismiss-instructions:hover{transform:scale(1.1)}.meal-plan-actions{display:flex;gap:var(--space-5);justify-content:center;margin-bottom:var(--space-8)}.clear-meal-plan,.generate-shopping-list{align-items:center;background-color:var(--accent-color);border:none;border-radius:var(--radius-round);color:var(--color-white);cursor:pointer;display:flex;font-size:var(--text-base);font-weight:var(--font-weight-medium);gap:var(--space-2);padding:var(--space-3) var(--space-6);transition:all var(--transition-base)}.clear-meal-plan:hover,.generate-shopping-list:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.clear-meal-plan{background-color:var(--background-elevated)}.clear-meal-plan:hover{background-color:var(--background-card)}.meal-plan-layout{display:flex;gap:var(--space-8)}.recipe-sidebar{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;flex-direction:column;flex-shrink:0;max-height:calc(100vh - 300px);overflow:hidden;width:320px}.recipe-search{padding:var(--space-5);position:relative}.meal-type-filter,.recipe-search{border-bottom:1px solid var(--border-color)}.meal-type-filter{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-4)}.meal-type-filter button{background-color:initial;border:1px solid var(--border-color);border-radius:var(--radius-round);color:var(--text-color);cursor:pointer;font-size:var(--text-xs);padding:var(--space-1) var(--space-3);transition:all var(--transition-base)}.meal-type-filter button:hover{background-color:#ffffff0d;border-color:var(--accent-color)}.meal-type-filter button.active{border-color:#0000;color:var(--color-white)}.meal-type-filter button.active[data-meal-type=All]{background-color:rgba(var(--accent-color-rgb),.15);border-color:var(--accent-color);color:var(--accent-color)}.meal-type-filter button.active[data-meal-type=Breakfast]{background-color:#ffc10726;border-color:#ffc107;color:#ffc107}.meal-type-filter button.active[data-meal-type=Lunch]{background-color:#2196f326;border-color:#2196f3;color:#2196f3}.meal-type-filter button.active[data-meal-type=Dinner]{background-color:#9c27b026;border-color:#9c27b0;color:#9c27b0}.recipes-list{flex:1 1;overflow-y:auto;padding:var(--space-4)}.draggable-recipe{background-color:var(--background-elevated);border:1px solid var(--border-hover);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);cursor:grab;display:flex;margin-bottom:var(--space-4);overflow:hidden;transition:all var(--transition-base)}.draggable-recipe:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.draggable-recipe.dragging{transform:rotate(2deg) scale(.95)}.recipe-thumb{align-items:center;background-color:var(--background-card);display:flex;height:80px;justify-content:center;overflow:hidden;position:relative;width:80px}.recipe-thumb:before{content:"";height:100%;left:0;position:absolute;top:0;width:4px;z-index:2}.recipe-thumb.breakfast:before{background-color:#ffc107}.recipe-thumb.lunch:before{background-color:#2196f3}.recipe-thumb.dinner:before{background-color:#9c27b0}.recipe-thumb img{height:100%;object-fit:cover;width:100%}.recipe-type{display:none}.recipe-info{flex:1 1;padding:var(--space-2) var(--space-4)}.recipe-info h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-white);display:-webkit-box;font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:1.4;margin-bottom:var(--space-2);overflow:hidden;text-overflow:ellipsis}.recipe-meta{color:var(--text-muted);display:flex;font-size:var(--text-xs);justify-content:space-between}.recipe-meta i{color:var(--accent-color);margin-right:var(--space-1)}.difficulty-easy{color:var(--color-success)}.difficulty-medium{color:var(--color-warning)}.difficulty-hard{color:var(--color-error)}.no-recipes-message{color:var(--text-muted);padding:var(--space-8) var(--space-4);text-align:center}.no-recipes-message i{color:var(--color-gray-700);font-size:var(--text-2xl);margin-bottom:var(--space-4)}.sidebar-footer{border-top:1px solid var(--border-color);padding:var(--space-4);text-align:center}.browse-more-btn{background-color:initial;border:1px solid var(--accent-color);border-radius:var(--radius-round);color:var(--accent-color);display:inline-block;font-size:var(--text-sm);padding:var(--space-2) var(--space-4);text-decoration:none;transition:all var(--transition-base)}.browse-more-btn:hover{background-color:rgba(var(--accent-color-rgb),.1)}.browse-more-btn i{margin-right:var(--space-1)}.weekly-calendar{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;flex:1 1;flex-direction:column;height:calc(100vh - 300px);overflow:hidden}.calendar-header{background-color:var(--background-elevated);border-bottom:1px solid var(--border-color);display:flex}.day-header{border-right:1px solid var(--border-color);color:var(--color-white);flex:1 1;font-weight:var(--font-weight-semibold);padding:var(--space-4);text-align:center}.day-header:last-child{border-right:none}.meal-type-column{background-color:var(--background-elevated);border-right:1px solid var(--border-color);flex-shrink:0;width:90px}.calendar-body{flex:1 1;overflow-y:auto}.meal-row{border-bottom:1px solid var(--border-color);display:flex;position:relative}.meal-row:last-child{border-bottom:none}.meal-row.breakfast:before,.meal-row.dinner:before,.meal-row.lunch:before{content:"";height:100%;left:0;position:absolute;top:0;width:4px;z-index:1}.meal-row.breakfast:before{background-color:#ffc107}.meal-row.lunch:before{background-color:#2196f3}.meal-row.dinner:before{background-color:#9c27b0}.meal-type-label{align-items:center;border-right:1px solid var(--border-color);display:flex;flex-direction:column;gap:var(--space-2);height:100%;justify-content:center;padding:var(--space-4) var(--space-2);position:relative;width:90px}.meal-type-label i{font-size:var(--text-lg);margin-bottom:var(--space-1)}.meal-type-label i.fa-coffee{color:#ffc107}.meal-type-label i.fa-hamburger{color:#2196f3}.meal-type-label i.fa-utensils{color:#9c27b0}.meal-type-label span{color:var(--text-color);font-weight:var(--font-weight-semibold)}.day-cell{border-right:1px solid var(--border-color);box-sizing:border-box;flex:1 1;min-height:150px;overflow-y:auto;padding:var(--space-2);transition:all var(--transition-base)}.day-cell:last-child{border-right:none}.day-cell.dragging-over{background-color:rgba(var(--accent-color-rgb),.1);box-shadow:inset 0 0 0 2px var(--accent-color);transform:scale(1.02);transition:all var(--transition-faster)}.empty-cell{align-items:center;color:var(--color-gray-700);display:flex;flex-direction:column;gap:var(--space-2);height:100%;justify-content:center;min-height:130px}.empty-cell i{font-size:var(--text-lg)}.meal-item{background-color:var(--background-elevated);border:1px solid var(--border-hover);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);cursor:grab;margin-bottom:var(--space-2);overflow:hidden;transition:all var(--transition-base)}.meal-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.meal-item.dragging{transform:rotate(2deg) scale(.9)}.meal-item-content{display:flex;position:relative}.meal-item-content img{height:60px;object-fit:cover;width:60px}.meal-item-content:after,.recipe-thumb:after{background:linear-gradient(90deg,#00000080 0,#0000 30%);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.meal-item-content:before{content:"";height:100%;left:0;position:absolute;top:0;width:4px;z-index:2}.meal-item-content.breakfast:before{background-color:#ffc107}.meal-item-content.lunch:before{background-color:#2196f3}.meal-item-content.dinner:before{background-color:#9c27b0}.meal-info{flex:1 1;padding:var(--space-2) var(--space-9) var(--space-2) var(--space-2)}.meal-info h4{color:var(--color-white);font-size:var(--text-xs);font-weight:var(--font-weight-medium);line-height:1.3;margin-bottom:var(--space-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meal-meta{color:var(--text-muted);font-size:var(--text-xs)}.meal-meta i{color:var(--accent-color);margin-right:var(--space-1)}.remove-meal{background-color:initial;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-sm);opacity:.7;padding:var(--space-1);position:absolute;right:var(--space-1);top:var(--space-1);transition:all var(--transition-base)}.remove-meal:hover{color:var(--accent-color);opacity:1}.dragging-active{cursor:grabbing!important}.draggable-recipe.dragging{width:300px}.draggable-recipe.dragging,.meal-item.dragging{box-shadow:var(--shadow-lg);opacity:.8;pointer-events:none;z-index:9999}@media screen and (max-width:1200px){.meal-plan-layout{flex-direction:column}.recipe-sidebar{max-height:400px;width:100%}.weekly-calendar{height:auto;max-height:calc(100vh - 600px)}}@media screen and (max-width:992px){.calendar-header,.meal-row{display:grid;grid-template-columns:90px repeat(3,1fr)}.day-cell:nth-child(n+5),.day-header:nth-child(n+5){display:none}.day-cell{border-bottom:1px solid var(--border-color)}}@media screen and (max-width:768px){.meal-plan-container{padding-left:var(--space-4);padding-right:var(--space-4);padding-top:110px}.meal-plan-title{font-size:var(--text-xl)}.instructions-panel{flex-direction:column;gap:var(--space-4)}.calendar-header,.meal-row{grid-template-columns:90px repeat(2,1fr)}.day-cell:nth-child(n+4),.day-header:nth-child(n+4){display:none}.meal-plan-actions{flex-direction:column;gap:var(--space-2)}}@media screen and (max-width:480px){.meal-plan-container{padding-left:var(--space-2);padding-right:var(--space-2);padding-top:100px}.calendar-header,.meal-row{grid-template-columns:90px 1fr}.day-cell:nth-child(n+3),.day-header:nth-child(n+3){display:none}.meal-type-column{width:90px}.meal-type-label{padding:var(--space-2) var(--space-1)}}.dashboard-container{background-color:var(--background-dark);display:flex;flex-direction:column;min-height:100vh;padding:20px;width:100%}.dashboard-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.dashboard-title{color:var(--text-color);font-size:2rem;font-weight:700}.dashboard-actions{display:flex;gap:10px}.dashboard-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:30px}.dashboard-card{background-color:var(--surface-color);border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.dashboard-card:hover{box-shadow:0 5px 15px #0003;transform:translateY(-5px)}.dashboard-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.dashboard-card-title{color:var(--text-color);font-size:1.25rem;font-weight:600}.dashboard-card-icon{color:var(--primary-color);font-size:1.5rem}.dashboard-card-content{margin-bottom:15px}.dashboard-card-footer{align-items:center;color:var(--text-secondary);display:flex;font-size:.9rem;justify-content:space-between}.dashboard-stat{display:flex;flex-direction:column}.stat-value{color:var(--text-color);font-size:2rem;font-weight:700;margin-bottom:5px}.stat-label{color:var(--text-secondary);font-size:.9rem}.activity-list{list-style:none;margin:0;padding:0}.activity-item{align-items:center;border-bottom:1px solid var(--border-color);display:flex;padding:12px 0}.activity-item:last-child{border-bottom:none}.activity-icon{align-items:center;background-color:var(--surface-color-alt);border-radius:50%;color:var(--primary-color);display:flex;height:36px;justify-content:center;margin-right:15px;width:36px}.activity-content{flex:1 1}.activity-title{color:var(--text-color);font-weight:500;margin-bottom:3px}.activity-time{color:var(--text-secondary);font-size:.8rem}.dashboard-chart{height:250px;margin-bottom:15px}.recent-items-list{display:flex;flex-direction:column;gap:15px}.recent-item{align-items:center;background-color:var(--surface-color-alt);border-radius:8px;display:flex;padding:10px;transition:background-color .2s ease}.recent-item:hover{background-color:var(--surface-color-hover)}.recent-item-image{border-radius:8px;height:60px;margin-right:15px;object-fit:cover;width:60px}.recent-item-content{flex:1 1}.recent-item-title{color:var(--text-color);font-weight:500;margin-bottom:5px}.recent-item-meta{color:var(--text-secondary);font-size:.85rem}.quick-actions{display:flex;flex-wrap:wrap;gap:10px}.quick-action-button{align-items:center;background-color:var(--surface-color-alt);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:15px;transition:all .2s ease;width:calc(33.333% - 10px)}.quick-action-button:hover{background-color:var(--primary-color);color:#fff}.quick-action-icon{font-size:1.5rem;margin-bottom:10px}.quick-action-label{font-size:.85rem;font-weight:500;text-align:center}@media (max-width:768px){.dashboard-grid{grid-template-columns:1fr}.dashboard-header{align-items:flex-start;flex-direction:column;gap:15px}.dashboard-actions{width:100%}.quick-action-button{width:calc(50% - 5px)}}.password-change-container{align-items:center;background-color:var(--background-dark);display:flex;justify-content:center;min-height:100vh;padding:var(--space-5)}.password-change-card{background-color:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:500px;padding:var(--space-8);width:100%}.password-change-header{margin-bottom:var(--space-6);text-align:center}.app-logo{color:var(--accent-color);font-size:var(--text-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-3)}.page-title{color:var(--text-color);font-size:var(--text-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}.password-change-form{gap:var(--space-5)}.form-field,.password-change-form{display:flex;flex-direction:column}.form-field{gap:var(--space-2)}.form-field label{color:var(--text-color);font-size:var(--text-sm);font-weight:var(--font-weight-medium)}.password-input-container{align-items:center;display:flex;position:relative}.password-input-container input{background-color:var(--background-elevated);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-color);font-size:var(--text-base);padding:var(--space-3) var(--space-4);transition:all var(--transition-base);width:100%}.password-input-container input:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px rgba(var(--accent-color-rgb),.2);outline:none}.password-input-container input::placeholder,.password-toggle-btn{color:var(--text-muted)}.password-toggle-btn{align-items:center;background:none;border:none;cursor:pointer;display:flex;justify-content:center;padding:0;position:absolute;right:var(--space-3);transition:color var(--transition-base)}.password-toggle-btn:hover{color:var(--accent-color)}.password-requirements{background-color:var(--background-elevated);border-left:3px solid var(--accent-color);border-radius:var(--radius-md);padding:var(--space-4)}.password-requirements h3{color:var(--text-color);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}.password-requirements ul{margin:0;padding-left:var(--space-4)}.password-requirements li{color:var(--text-muted);font-size:var(--text-xs);margin-bottom:var(--space-1)}.submit-button{background-color:var(--accent-color);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:var(--text-base);font-weight:var(--font-weight-semibold);margin-top:var(--space-4);padding:var(--space-3) var(--space-4);transition:all var(--transition-base)}.submit-button:hover:not(:disabled){background-color:var(--accent-hover);transform:translateY(-2px)}.submit-button:disabled{background-color:var(--color-gray-600);cursor:not-allowed;opacity:.7}.notification{border-radius:var(--radius-md);font-size:var(--text-sm);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4)}.notification.error{background-color:rgba(var(--error-color-rgb),.1);border-left:3px solid var(--error-color);color:var(--error-color)}.notification.success{background-color:rgba(var(--success-color-rgb),.1);border-left:3px solid var(--success-color);color:var(--success-color)}.notification.warning{background-color:rgba(var(--warning-color-rgb),.1);border-left:3px solid var(--warning-color);color:var(--warning-color)}@media (max-width:600px){.password-change-card{padding:var(--space-5)}.app-logo{font-size:var(--text-xl)}.page-title{font-size:var(--text-lg)}.password-requirements{padding:var(--space-3)}}@media (max-width:400px){.password-change-container{padding:var(--space-3)}.password-change-card{padding:var(--space-4)}.password-change-form{gap:var(--space-4)}.password-input-container input,.submit-button{padding:var(--space-2) var(--space-3)}}.d-none{display:none!important}.d-block{display:block!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.d-grid{display:grid!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-start{justify-content:flex-start!important}.justify-end{justify-content:flex-end!important}.justify-center{justify-content:center!important}.justify-between{justify-content:space-between!important}.justify-around{justify-content:space-around!important}.justify-evenly{justify-content:space-evenly!important}.items-start{align-items:flex-start!important}.items-end{align-items:flex-end!important}.items-center{align-items:center!important}.items-baseline{align-items:baseline!important}.items-stretch{align-items:stretch!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.text-left{text-align:left!important}.text-center{text-align:center!important}.text-right{text-align:right!important}.text-justify{text-align:justify!important}.text-truncate{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.text-break{overflow-wrap:break-word!important;word-break:break-word!important}.font-light{font-weight:var(--font-weight-light)!important}.font-normal{font-weight:var(--font-weight-normal)!important}.font-medium{font-weight:var(--font-weight-medium)!important}.font-bold{font-weight:var(--font-weight-bold)!important}.w-100{width:100%!important}.w-75{width:75%!important}.w-50{width:50%!important}.w-25{width:25%!important}.w-auto{width:auto!important}.h-100{height:100%!important}.h-75{height:75%!important}.h-50{height:50%!important}.h-25{height:25%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.m-0{margin:0!important}.m-1{margin:var(--space-1)!important}.m-2{margin:var(--space-2)!important}.m-3{margin:var(--space-3)!important}.m-4{margin:var(--space-4)!important}.m-5{margin:var(--space-5)!important}.m-auto{margin:auto!important}.mx-0{margin-left:0!important;margin-right:0!important}.mx-1{margin-left:var(--space-1)!important;margin-right:var(--space-1)!important}.mx-2{margin-left:var(--space-2)!important;margin-right:var(--space-2)!important}.mx-3{margin-left:var(--space-3)!important;margin-right:var(--space-3)!important}.mx-4{margin-left:var(--space-4)!important;margin-right:var(--space-4)!important}.mx-5{margin-left:var(--space-5)!important;margin-right:var(--space-5)!important}.mx-auto{margin-left:auto!important;margin-right:auto!important}.my-0{margin-bottom:0!important;margin-top:0!important}.my-1{margin-bottom:var(--space-1)!important;margin-top:var(--space-1)!important}.my-2{margin-bottom:var(--space-2)!important;margin-top:var(--space-2)!important}.my-3{margin-bottom:var(--space-3)!important;margin-top:var(--space-3)!important}.my-4{margin-bottom:var(--space-4)!important;margin-top:var(--space-4)!important}.my-5{margin-bottom:var(--space-5)!important;margin-top:var(--space-5)!important}.my-auto{margin-bottom:auto!important;margin-top:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:var(--space-1)!important}.mt-2{margin-top:var(--space-2)!important}.mt-3{margin-top:var(--space-3)!important}.mt-4{margin-top:var(--space-4)!important}.mt-5{margin-top:var(--space-5)!important}.mt-auto{margin-top:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:var(--space-1)!important}.mb-2{margin-bottom:var(--space-2)!important}.mb-3{margin-bottom:var(--space-3)!important}.mb-4{margin-bottom:var(--space-4)!important}.mb-5{margin-bottom:var(--space-5)!important}.mb-auto{margin-bottom:auto!important}.ml-0{margin-left:0!important}.ml-1{margin-left:var(--space-1)!important}.ml-2{margin-left:var(--space-2)!important}.ml-3{margin-left:var(--space-3)!important}.ml-4{margin-left:var(--space-4)!important}.ml-5{margin-left:var(--space-5)!important}.ml-auto{margin-left:auto!important}.mr-0{margin-right:0!important}.mr-1{margin-right:var(--space-1)!important}.mr-2{margin-right:var(--space-2)!important}.mr-3{margin-right:var(--space-3)!important}.mr-4{margin-right:var(--space-4)!important}.mr-5{margin-right:var(--space-5)!important}.mr-auto{margin-right:auto!important}.p-0{padding:0!important}.p-1{padding:var(--space-1)!important}.p-2{padding:var(--space-2)!important}.p-3{padding:var(--space-3)!important}.p-4{padding:var(--space-4)!important}.p-5{padding:var(--space-5)!important}.px-0{padding-left:0!important;padding-right:0!important}.px-1{padding-left:var(--space-1)!important;padding-right:var(--space-1)!important}.px-2{padding-left:var(--space-2)!important;padding-right:var(--space-2)!important}.px-3{padding-left:var(--space-3)!important;padding-right:var(--space-3)!important}.px-4{padding-left:var(--space-4)!important;padding-right:var(--space-4)!important}.px-5{padding-left:var(--space-5)!important;padding-right:var(--space-5)!important}.py-0{padding-bottom:0!important;padding-top:0!important}.py-1{padding-bottom:var(--space-1)!important;padding-top:var(--space-1)!important}.py-2{padding-bottom:var(--space-2)!important;padding-top:var(--space-2)!important}.py-3{padding-bottom:var(--space-3)!important;padding-top:var(--space-3)!important}.py-4{padding-bottom:var(--space-4)!important;padding-top:var(--space-4)!important}.py-5{padding-bottom:var(--space-5)!important;padding-top:var(--space-5)!important}.pt-0{padding-top:0!important}.pt-1{padding-top:var(--space-1)!important}.pt-2{padding-top:var(--space-2)!important}.pt-3{padding-top:var(--space-3)!important}.pt-4{padding-top:var(--space-4)!important}.pt-5{padding-top:var(--space-5)!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:var(--space-1)!important}.pb-2{padding-bottom:var(--space-2)!important}.pb-3{padding-bottom:var(--space-3)!important}.pb-4{padding-bottom:var(--space-4)!important}.pb-5{padding-bottom:var(--space-5)!important}.pl-0{padding-left:0!important}.pl-1{padding-left:var(--space-1)!important}.pl-2{padding-left:var(--space-2)!important}.pl-3{padding-left:var(--space-3)!important}.pl-4{padding-left:var(--space-4)!important}.pl-5{padding-left:var(--space-5)!important}.pr-0{padding-right:0!important}.pr-1{padding-right:var(--space-1)!important}.pr-2{padding-right:var(--space-2)!important}.pr-3{padding-right:var(--space-3)!important}.pr-4{padding-right:var(--space-4)!important}.pr-5{padding-right:var(--space-5)!important}.border{border:1px solid var(--border-light)!important}.border-0{border:0!important}.border-top{border-top:1px solid var(--border-light)!important}.border-right{border-right:1px solid var(--border-light)!important}.border-bottom{border-bottom:1px solid var(--border-light)!important}.border-left{border-left:1px solid var(--border-light)!important}.rounded{border-radius:var(--radius-md)!important}.rounded-sm{border-radius:var(--radius-sm)!important}.rounded-lg{border-radius:var(--radius-lg)!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:var(--radius-round)!important}.rounded-0{border-radius:0!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0!important}.fixed-bottom,.fixed-top{left:0!important;position:fixed!important;right:0!important;z-index:var(--z-fixed)!important}.fixed-bottom{bottom:0!important}.text-primary{color:var(--accent-color)!important}.text-light{color:var(--text-color)!important}.text-muted{color:var(--text-muted)!important}.text-disabled{color:var(--text-disabled)!important}.bg-dark{background-color:var(--background-dark)!important}.bg-card{background-color:var(--background-card)!important}.bg-elevated{background-color:var(--background-elevated)!important}.bg-primary{background-color:var(--accent-color)!important}.bg-transparent{background-color:initial!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.overflow-x-auto{overflow-x:auto!important}.overflow-y-auto{overflow-y:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-y-hidden{overflow-y:hidden!important}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}.sr-only{clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.clearfix:after{clear:both!important;content:""!important;display:block!important}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes ping{0%{opacity:1;transform:scale(1)}75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(0)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:translateY(-25%)}}#root,body,html{background-color:var(--background-dark);color:var(--text-color);min-height:100vh}#root,.app{display:flex;flex-direction:column}.app{min-height:100vh}.mobile-menu-btn{align-items:center;background:none;border:none;cursor:pointer;display:none;flex-direction:column;height:40px;justify-content:center;padding:0;transition:transform .2s ease;width:40px;z-index:1200}.mobile-menu-btn:hover{transform:scale(1.05)}.hamburger-line{background-color:#e0e0e0;border-radius:1px;display:block;height:2px;margin:3px 0;transform-origin:center;transition:all .3s cubic-bezier(.25,.46,.45,.94);width:22px}.mobile-menu-btn.open .hamburger-line:first-child{background-color:#f44336;transform:translateY(8px) rotate(45deg)}.mobile-menu-btn.open .hamburger-line:nth-child(2){opacity:0;transform:scale(0)}.mobile-menu-btn.open .hamburger-line:nth-child(3){background-color:#f44336;transform:translateY(-8px) rotate(-45deg)}.mobile-drawer{background-color:#1a1a1a;border-left:1px solid #333;box-shadow:-5px 0 15px #0000004d;height:100vh;position:fixed;right:-100%;top:0;transition:right .3s cubic-bezier(.25,.46,.45,.94);width:280px;z-index:1150}.mobile-drawer.open{right:0}.mobile-drawer-content{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:0}.mobile-nav-header{align-items:center;background-color:#000;border-bottom:1px solid #333;display:flex;justify-content:space-between;padding:20px 20px 30px}.mobile-logo{color:#f44336;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,system-ui,sans-serif;font-size:1.8rem;font-weight:700;letter-spacing:-.02em;text-decoration:none}.mobile-close-btn{align-items:center;background-color:initial;border:none;border-radius:50%;color:#e0e0e0;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.mobile-close-btn:hover{background-color:#ffffff1a;color:#f44336}.mobile-nav-links{display:flex;flex:1 1;flex-direction:column;padding:20px 0}.mobile-nav-link{align-items:center;border-bottom:1px solid #ffffff0d;color:#e0e0e0;display:flex;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;font-size:17px;font-weight:500;padding:16px 20px;position:relative;text-decoration:none;transition:all .2s ease}.mobile-nav-link:before{background-color:#f44336;bottom:0;content:"";left:0;position:absolute;top:0;transition:width .3s ease;width:0}.mobile-nav-link.active,.mobile-nav-link:hover{background-color:#f443361a;color:#f44336;padding-left:24px}.mobile-nav-link.active:before,.mobile-nav-link:hover:before{width:4px}.mobile-nav-link:last-child{border-bottom:none}.mobile-drawer-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000080;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1100}@media (max-width:768px){.mobile-menu-btn{display:flex}.landing-header .landing-nav-links{display:none!important}}@media (max-width:480px){.mobile-drawer{width:260px}.mobile-nav-link{font-size:16px;padding:14px 18px}.mobile-nav-header{padding:16px 18px 24px}}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideOutRight{0%{transform:translateX(0)}to{transform:translateX(100%)}}.homepage{color:#e6e6e6;display:flex;flex-direction:column;max-width:100%;min-height:100vh;overflow-x:hidden}.landing-header{align-items:center;background-color:#000;border-bottom:1px solid #111;box-shadow:0 2px 10px #00000080;display:flex;flex-shrink:0;height:90px;justify-content:space-between;left:0;padding:25px 40px;position:fixed;right:0;top:0;z-index:1100}.landing-logo{color:#fff;cursor:pointer;font-family:Pacifico,Brush Script MT,cursive;font-size:2.2rem;font-weight:400;letter-spacing:1px;padding:5px 10px;position:relative;text-decoration:none;text-shadow:2px 2px 4px #0000004d;-webkit-user-select:none;user-select:none}.landing-logo,.logo-icon{display:inline-block;transition:all .3s ease}.logo-icon{color:#f44336;font-size:1rem;left:-12px;position:absolute;top:6px;transform:rotate(-5deg)}.landing-logo:hover{color:#f44336;transform:scale(1.05)}.landing-logo:hover .logo-icon{color:#ff5252;transform:rotate(5deg)}.logo-bold{color:#f44336!important;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,system-ui,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important;font-size:2.4rem!important;font-weight:700!important;letter-spacing:-.02em!important;text-shadow:none!important}.landing-nav-links{align-items:center;display:flex;gap:20px}.landing-nav-link{border-radius:8px;color:#e0e0e0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,system-ui,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;font-weight:500;letter-spacing:-.01em;padding:6px 12px;position:relative;text-decoration:none;transition:all .2s ease}.landing-nav-link:after{background-color:#f44336;bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.landing-nav-link:hover{background-color:#ffffff14;color:#fff;transform:translateY(-1px)}.landing-nav-link:hover:after{width:100%}.landing-login-btn{align-items:center;background-color:#000;border:1px solid #f44336;border-radius:50px;color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:500;outline:none;padding:6px 16px;text-decoration:none;transition:all .2s ease}.landing-login-btn i{color:#f44336;margin-right:8px}.landing-login-btn:hover{background-color:#f44336;color:#fff}.landing-login-btn:hover i{color:#fff}.landing-footer{background-color:#000;border-top:1px solid #111;color:#999;font-size:.9rem;padding:30px 0;text-align:center}.footer-content{flex-direction:column;margin:0 auto;max-width:1200px;padding:0 20px}.footer-content,.footer-links{align-items:center;display:flex;gap:12px}.footer-link{color:#999;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;font-size:.85rem;text-decoration:none;transition:color .2s ease}.footer-link:hover{color:#f44336}.footer-separator{color:#666;font-size:.8rem}.hero{align-items:center;background-color:#000;display:flex;flex:1 1;justify-content:center;margin-top:90px;min-height:calc(100vh - 90px);overflow:hidden;padding:0 20px;position:relative;text-align:center}.hero:before{background-image:url(https://images.unsplash.com/photo-1495521821757-a1efb6729352?ixlib=rb-1.2.1&auto=format&fit=crop&w=1950&q=80);background-position:50%;background-size:cover;content:"";height:100%;left:0;opacity:.3;position:absolute;top:0;width:100%;z-index:1}.hero-content{max-width:800px;position:relative;z-index:2}.hero h1{color:#fff;font-size:4.2rem;font-weight:800;letter-spacing:-.5px;margin-bottom:1rem;text-shadow:0 2px 10px #000000b3}.hero h2{color:#e0e0e0;font-size:1.5rem;font-weight:400;margin-bottom:2rem;text-shadow:0 1px 2px #00000080}.hero-buttons{display:flex;gap:20px;justify-content:center}.btn-feature,.btn-primary,.btn-secondary{border-radius:50px;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;padding:12px 24px;text-decoration:none;transition:all .3s ease}.btn-primary{background-color:#f44336;border:none;color:#fff}.btn-primary:hover{background-color:#e53935;transform:translateY(-2px)}.btn-secondary{align-items:center;background-color:initial;border:2px solid #fff;color:#fff;display:inline-flex;justify-content:center;text-decoration:none}.btn-secondary:hover{background-color:#ffffff1a;transform:translateY(-2px)}.btn-red{align-items:center;background-color:#f44336;border:2px solid #f44336;border-radius:50px;color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;justify-content:center;padding:12px 24px;text-decoration:none;transition:all .3s ease}.btn-red:hover{background-color:#e53935;border-color:#e53935;box-shadow:0 8px 16px #f443364d;transform:translateY(-2px)}.value-prop{background-color:#000;padding:80px 20px;text-align:center}.value-prop h2{color:#fff;font-size:2.5rem;margin-bottom:50px}.value-cards{display:flex;flex-wrap:wrap;gap:30px;justify-content:center;margin:0 auto;max-width:1200px}.value-card{background-color:#111;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a;max-width:500px;padding:30px;transition:transform .3s ease,box-shadow .3s ease;width:calc(50% - 30px)}.value-card:hover{box-shadow:0 15px 20px -3px #0003;transform:translateY(-5px)}.value-card i{color:#f44336;display:block;font-size:2.5rem;margin-bottom:20px}.value-card h3{color:#f5f5f5;font-size:1.5rem;margin-bottom:15px}.value-card p{color:#bdbdbd;line-height:1.6}.features{background-color:#000;margin-bottom:0;padding:60px 20px 100px;text-align:center}.features h2{color:#fff;font-size:2.5rem;margin-bottom:50px}.feature-grid{display:flex;flex-direction:column;gap:30px;margin:0 auto;max-width:900px}.feature-spotlight{background-color:#111;border-radius:10px;box-shadow:0 10px 20px #0003;display:flex;height:250px;margin-bottom:30px;overflow:hidden}.feature-spotlight:nth-child(2n){flex-direction:row}.feature-image-container{overflow:hidden;position:relative;width:35%}.feature-image-container:after{background:#00000080;bottom:0;content:"";left:0;position:absolute;right:0;top:0}.feature-image-container img{height:100%;object-fit:cover;object-position:center;width:100%}.feature-title{color:#fff;font-size:1.4rem;font-weight:700;left:50%;position:absolute;text-align:center;text-shadow:0 2px 4px #00000080;top:50%;transform:translate(-50%,-50%);width:90%;z-index:10}.feature-content{display:flex;flex-direction:column;justify-content:center;padding:25px;text-align:left;width:65%}.feature-content p{color:#bdbdbd;font-size:.95rem;line-height:1.6;margin-bottom:15px}.feature-content ul{list-style-type:none;padding:0}.feature-content li{align-items:center;color:#e0e0e0;display:flex;font-size:.9rem;padding:6px 0}.feature-content li:before{color:#f44336;content:"•";font-size:1.2rem;line-height:0;margin-right:10px}@media (max-width:992px){.hero h1{font-size:3.5rem}.feature-spotlight{height:auto;margin-bottom:20px}.feature-spotlight,.feature-spotlight:nth-child(2n){flex-direction:column}.feature-content,.feature-image-container{width:100%}.feature-image-container{height:150px}.feature-content{padding:20px}.value-card{padding:25px;width:calc(50% - 20px)}}@media (max-width:768px){.landing-header{height:80px;padding:15px 20px}.landing-logo{font-size:1.8rem;margin-bottom:0}.logo-icon{font-size:.9rem;left:-10px;top:5px}.landing-nav-links{gap:20px}.landing-nav-link{font-size:16px;padding:6px 12px}.landing-login-btn{font-size:.9rem;padding:6px 15px}.hero{margin-top:80px;min-height:calc(100vh - 80px);padding-top:60px}.hero h1{font-size:3rem;margin-bottom:.8rem}.hero h2{font-size:1.2rem}.hero-buttons{flex-direction:column;gap:15px}.value-cards{align-items:center;flex-direction:column}.value-card{max-width:400px;width:100%}.features h2{font-size:2rem;margin-bottom:30px}.feature-title{font-size:1.2rem}.feature-content{padding:20px}.feature-content p{margin-bottom:10px}.cta h2{font-size:2rem}.btn-cta{width:100%}.footer-content,.footer-links{gap:8px}.footer-link{font-size:.8rem}}@media (max-width:480px){.landing-login-btn{font-size:.85rem;padding:5px 12px}.landing-header{height:70px;padding:10px 15px}.hero{margin-top:70px;min-height:calc(100vh - 70px)}.hero h1{font-size:2.6rem}.feature-title{font-size:1.1rem}.feature-image-container{height:150px}.feature-content{padding:15px}.landing-logo{font-size:1.6rem}.logo-icon{font-size:.8rem;left:-8px;top:4px}}.section-divider{align-items:center;background-color:#000;display:flex;justify-content:center;padding:40px 0;width:100%}.divider-line{background:linear-gradient(90deg,#f4433600,#f4433680 50%,#f4433600);height:1px;max-width:1200px;position:relative;width:80%}.divider-line:before{background-color:#f44336;border-radius:50%;content:"";height:8px;left:50%;position:absolute;top:-4px;transform:translateX(-50%);width:8px}.page-cta{background-color:#1a1a1a;margin:0;overflow:hidden;padding:80px 0;position:relative;text-align:center;width:100%}.page-cta:before{background-image:url(https://images.unsplash.com/photo-1556910638-6e2062af57e7?ixlib=rb-1.2.1&auto=format&fit=crop&w=1950&q=80);background-position:50%;background-size:cover;content:"";height:100%;left:0;opacity:.15;position:absolute;top:0;width:100%;z-index:1}.cta-container{margin:0 auto;max-width:800px;padding:0 20px;position:relative;z-index:2}.page-cta h2{color:#fff;font-size:2.5rem;margin-bottom:20px}.page-cta p{color:#bdbdbd;font-size:1.2rem;margin-bottom:40px;margin-left:auto;margin-right:auto;max-width:700px}.cta-button{background:linear-gradient(90deg,#f44336,#ff7043);border:none;border-radius:50px;box-shadow:0 4px 10px #f443364d;color:#fff;cursor:pointer;display:inline-block;font-size:1.2rem;font-weight:600;padding:15px 40px;transition:all .3s ease}.cta-button:hover{background:linear-gradient(90deg,#e53935,#ff8a65);box-shadow:0 10px 20px #f4433666;transform:translateY(-3px)}@media (max-width:768px){.page-cta{margin:60px 0 0;padding:60px 0}.page-cta h2{font-size:2rem}.page-cta p{font-size:1.1rem;margin-bottom:30px}.cta-button{max-width:300px;width:100%}}@media (max-width:480px){.page-cta{margin:40px 0 0;padding:50px 0}.page-cta h2{font-size:1.8rem;margin-bottom:15px}}.loading{background-color:#000;display:flex;font-size:1.2rem;height:100vh;justify-content:center}.dashboard-btn,.loading{align-items:center;color:#fff}.dashboard-btn{background-color:#f44336;border:none;border-radius:50px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:500;margin-right:10px;outline:none;padding:6px 16px;text-decoration:none;transition:all .2s ease}.dashboard-btn i{margin-right:8px}.dashboard-btn:hover{background-color:#e53935;transform:translateY(-2px)}.landing-logout-btn{align-items:center;background-color:#000;border:1px solid #666;border-radius:50px;color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:500;outline:none;padding:6px 16px;text-decoration:none;transition:all .2s ease}.landing-logout-btn i{color:#f44336;margin-right:8px}.landing-logout-btn:hover{background-color:#1a1a1a;color:#f44336}.pantry-page{background-color:var(--background-dark);color:var(--text-color);flex-direction:column}.pantry-content,.pantry-page{display:flex;height:100%;overflow:hidden}.pantry-content{flex:1 1;gap:var(--space-4);padding:var(--space-4)}.pantry-ingredients{background-color:var(--background-card);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;flex-direction:column;height:550px;max-height:550px;max-width:350px;min-height:550px;min-width:300px;overflow:hidden;width:25%}.pantry-search-container{margin-bottom:var(--space-3);padding:var(--space-3);padding-bottom:0;position:relative}.pantry-search-bar{width:100%}.category-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3);overflow-x:auto;padding:0 var(--space-3);white-space:nowrap}.category-tab.btn-outline{background-color:var(--color-gray-850);color:var(--text-muted)}.category-tab.btn-primary{background-color:var(--accent-color);color:#fff}.clear-all-btn.visible{opacity:1;pointer-events:auto;transition:opacity var(--transition-base);visibility:visible}.clear-all-btn.hidden{opacity:0;pointer-events:none;transition:opacity var(--transition-base);visibility:hidden}.ingredients-list{-ms-overflow-style:none;background-color:var(--background-card);border-radius:0 0 var(--radius-md) var(--radius-md);display:flex;flex:1 1;flex-direction:column;height:400px;max-height:400px;min-height:400px;overflow-y:auto;padding:0 var(--space-3);scrollbar-width:none;&::-webkit-scrollbar{display:none}}.ingredient-item{align-items:center;appearance:none;-webkit-appearance:none;background:#0000;border:none;box-shadow:none;color:var(--text-color);cursor:pointer;display:flex;font-family:var(--font-family-primary);gap:var(--space-2);height:54px;outline:none;padding:var(--space-3);text-align:left;transition:background-color var(--transition-base);width:100%}.ingredient-item:hover{background-color:initial;color:#a0a0a0}.ingredient-item:hover .ingredient-name{color:#a0a0a0}.ingredient-item.selected{background-color:initial;color:var(--text-color)}.ingredient-item.selected:after{color:var(--accent-color);content:"✓";font-weight:700;margin-left:10px}.ingredient-icon,.ingredient-item.selected .ingredient-icon{background:var(--color-gray-800);color:var(--text-color)}.ingredient-icon{align-items:center;border-radius:var(--radius-round);display:flex;flex-shrink:0;font-size:var(--text-sm);height:30px;justify-content:center;width:30px}.letter-icon{font-weight:700;text-transform:uppercase}.ingredient-item.selected .ingredient-icon{background:var(--accent-color);color:var(--color-white)}.ingredient-name{flex:1 1;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-ingredients{align-items:center;color:var(--text-muted);display:flex;font-style:italic;justify-content:center;min-height:200px;padding:var(--space-4);text-align:center}.pantry-recipes{background-color:var(--background-card);box-shadow:var(--shadow-md);flex:1 1;flex-direction:column;height:100%;min-height:500px;overflow:hidden}.pantry-recipes,.selected-ingredients-bar{border-radius:var(--radius-md);display:flex}.selected-ingredients-bar{align-items:center;background-color:var(--background-elevated);flex-wrap:wrap;gap:var(--space-2);margin:var(--space-3);min-height:50px;padding:var(--space-3)}.no-selected-ingredients{color:var(--text-muted);font-style:italic}.selected-ingredient{align-items:center;background-color:var(--accent-color);border-radius:var(--radius-round);color:var(--color-white);display:flex;font-size:var(--text-sm);font-weight:var(--font-weight-medium);padding:var(--space-1) var(--space-3)}.selected-ingredient-name{margin-right:var(--space-1);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remove-ingredient{background:none;border:none;color:var(--color-white);cursor:pointer;margin-left:var(--space-1);opacity:.8;padding:0;transition:opacity var(--transition-base)}.remove-ingredient:hover{opacity:1}.recipe-results{flex:1 1;overflow-y:auto;padding:0 var(--space-3) var(--space-3);width:100%}.recipe-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));padding-right:var(--space-2)}.recipes-empty-state{align-items:center;display:flex;grid-column:1/-1;height:100%;justify-content:center;min-height:300px}@media (max-width:992px){.pantry-page{overflow-y:auto}.pantry-content{flex-direction:column;height:auto;overflow:visible;padding:var(--space-3)}.pantry-ingredients{height:500px;margin-bottom:var(--space-4);max-width:100%;min-width:100%;width:100%}.pantry-recipes{min-height:400px}.ingredients-list{height:350px;max-height:350px;min-height:350px}}@media (max-width:768px){.pantry-content{padding:var(--space-2)}.pantry-ingredients{height:450px;max-height:450px;min-height:450px}.ingredients-list{height:300px;max-height:300px;min-height:300px}.recipe-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.selected-ingredients-bar{padding:var(--space-2)}}@media (max-width:480px){.recipe-grid{gap:var(--space-3);grid-template-columns:1fr}.selected-ingredient{font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.selected-ingredient-name{max-width:120px}.pantry-ingredients{height:400px;max-height:400px;min-height:400px}.ingredients-list{height:250px;max-height:250px;min-height:250px}}
/*# sourceMappingURL=main.7ac95db9.css.map*/