:root{--admin-primary: #A0452E;--admin-primary-light: #C1664D;--admin-secondary: #8B6B4A;--admin-accent: #C9A227;--admin-success: #5A7A4A;--admin-danger: #B5422C;--admin-bg: #FDF9F3;--admin-surface: #FFFFFF;--admin-sidebar: #2A1F15;--admin-text: #2A1F15;--admin-text-muted: rgba(42, 31, 21, .6);--admin-border: rgba(139, 107, 74, .1);--admin-shadow: 0 10px 30px rgba(42, 31, 21, .05);--admin-radius: 20px;--admin-radius-sm: 12px;--admin-radius-lg: 32px}.admin-layout--premium{display:flex;min-height:100vh;background-color:var(--admin-bg);color:var(--admin-text);font-family:var(--font-base)}.admin-sidebar{background-color:var(--admin-sidebar);color:#fff;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:100;box-shadow:10px 0 40px #0000001a;overflow:hidden}.admin-sidebar-header{padding:32px 24px;display:flex;align-items:center;gap:16px;border-bottom:1px solid rgba(255,255,255,.05)}.admin-sidebar-logo{height:32px;filter:brightness(0) invert(1);transition:transform .3s ease}.admin-sidebar:hover .admin-sidebar-logo{transform:scale(1.1) rotate(-5deg)}.admin-sidebar-nav{flex:1;padding:24px 16px;display:flex;flex-direction:column;gap:6px}.admin-sidebar-link{display:flex;align-items:center;gap:16px;padding:12px 16px;border-radius:var(--admin-radius-sm);text-decoration:none;color:#fff9;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}.admin-sidebar-link:hover{background:#ffffff0d;color:#fff;transform:translate(4px)}.admin-sidebar-link.active{background:var(--admin-primary);color:#fff;font-weight:700;box-shadow:0 8px 16px #a0452e33}.admin-sidebar-link.active:hover{transform:scale(1.02)}.admin-sidebar-footer{padding:24px;border-top:1px solid rgba(255,255,255,.05);background:#0000001a}.admin-user-profile{display:flex;align-items:center;gap:12px;margin-bottom:20px}.admin-avatar{width:44px;height:44px;border-radius:14px;background:var(--admin-primary);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.1rem;box-shadow:0 4px 12px #a0452e33}.admin-logout-btn{width:100%;display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--admin-radius-sm);border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s}.admin-logout-btn:hover{background:#ffffff1a;border-color:#fff3;transform:translateY(-2px)}.admin-main{flex:1;display:flex;flex-direction:column;min-width:0}.admin-header{height:80px;background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--admin-border);display:flex;align-items:center;padding:0 40px;justify-content:space-between;position:sticky;top:0;z-index:90}.admin-header-title{font-size:1.5rem;font-weight:800;letter-spacing:-.02em}.admin-content{padding:40px;flex:1;animation:adminFadeIn .4s ease-out}@keyframes adminFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.admin-card{background:var(--admin-surface);border-radius:var(--admin-radius);padding:32px;border:1px solid var(--admin-border);box-shadow:var(--admin-shadow);transition:all .3s cubic-bezier(.4,0,.2,1)}.admin-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #2a1f1514}.admin-stat-card{display:flex;flex-direction:column;gap:16px;position:relative;overflow:hidden}.admin-stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.admin-stat-value{font-size:2.5rem;font-weight:900;letter-spacing:-.03em;margin-bottom:4px}.admin-stat-label{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--admin-text-muted)}.admin-glass{background:#fff9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.4)}.admin-table-container{border-radius:var(--admin-radius);overflow:hidden;border:1px solid var(--admin-border);background:var(--admin-surface)}.admin-table{width:100%;border-collapse:collapse;text-align:left}.admin-table th{padding:24px 32px;background:#00000005;font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:var(--admin-text-muted)}.admin-table td{padding:24px 32px;border-top:1px solid var(--admin-border)}.admin-table tr{transition:all .2s}.admin-table tr:hover{background:#a0452e05}.admin-btn{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;border-radius:var(--admin-radius-sm);font-weight:700;cursor:pointer;transition:all .2s;border:none;font-size:.95rem}.admin-btn-primary{background:var(--admin-primary);color:#fff;box-shadow:0 4px 12px #a0452e33}.admin-btn-primary:hover{background:var(--admin-primary-light);transform:translateY(-2px);box-shadow:0 8px 20px #a0452e4d}.admin-btn-secondary{background:var(--admin-surface);color:var(--admin-text);border:1px solid var(--admin-border)}.admin-btn-secondary:hover{background:var(--admin-bg);transform:translateY(-2px)}.admin-sidebar::-webkit-scrollbar{width:4px}.admin-sidebar::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}:root{--color-primary: #A0452E;--color-primary-700: #7A3422;--color-secondary: #8B6B4A;--color-secondary-light: #A67B5B;--color-accent: #C9A227;--color-accent-light: #D4B84A;--color-green-gray: #8B9576;--color-forest-green: #4A5D3A;--color-avocado: #3D4A32;--color-deep: #3D2914;--color-ink: #2A1F15;--color-bg: #FDF9F3;--color-surface: #F5EDE3;--color-surface-variant: #E8DCC8;--color-paper: #FFFDFC;--color-footer: #3D2914;--color-on-footer: #FDF9F3;--color-text: #2A1F15;--color-muted: rgba(42, 31, 21, .6);--color-border: rgba(139, 107, 74, .12);--color-shadow: rgba(42, 31, 21, .05);--color-on-surface: #3D2914;--color-success: #5A7A4A;--color-danger: #B5422C;--color-on-primary: #FDF9F3;--font-base: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, "Roboto Mono", monospace;--text-base: 16px;--text-sm: 14px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: clamp(24px, 5vw, 36px);--text-hero: clamp(32px, 7vw, 64px);--radius-sm: 12px;--radius-md: 18px;--radius-lg: 32px;--radius-xl: 48px;--radius-full: 9999px;--shadow-sm: 0 4px 12px var(--color-shadow);--shadow-md: 0 10px 30px var(--color-shadow);--shadow-lg: 0 20px 60px rgba(42, 31, 21, .08);--shadow-premium: 0 20px 40px rgba(42, 31, 21, .1);--glass-bg: rgba(255, 255, 255, .8);--glass-blur: 20px;--glass-border: rgba(255, 255, 255, .4);--max-width: 1400px;--container-padding: 40px;--gap-sm: 12px;--gap-md: 16px;--gap-lg: 32px;--gap-xl: 48px;--page-padding-y: 40px}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-base);font-size:var(--text-base);color:var(--color-text);background:#faf6e8;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:var(--leading-normal);-webkit-tap-highlight-color:transparent;letter-spacing:-.01em;min-height:100vh}html{scroll-behavior:smooth}::selection{background:#a0452e33;color:var(--color-ink)}h1,h2,h3,h4,.page-title{font-family:var(--font-base);font-weight:700;line-height:var(--leading-tight);letter-spacing:-.02em;color:var(--color-ink)}h1,.page-title{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.container{width:100%;max-width:var(--max-width);padding-left:var(--container-padding);padding-right:var(--container-padding);margin-left:auto;margin-right:auto}.page{padding:var(--page-padding-y) 0}.page-section{margin-top:var(--gap-xl)}.page-section:first-child{margin-top:0}.section-title{margin:0 0 var(--gap-sm) 0;color:var(--color-ink);position:relative;display:inline-block}.section-title:after{content:"";position:absolute;bottom:-4px;left:0;width:40px;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:2px}.section-subtitle{margin:12px 0 var(--gap-md) 0;color:var(--color-secondary);font-size:var(--text-sm)}.stack{display:flex;flex-direction:column;gap:var(--gap-md)}.row{display:flex;gap:var(--gap-md);align-items:center}.space-between{display:flex;justify-content:space-between;align-items:center}.center{display:flex;justify-content:center;align-items:center}.sr-only{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}.site-header{background:#5c4a3af2;padding:12px 0;position:sticky;top:0;z-index:40;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(139,107,74,.4);overflow-x:hidden;transition:background .2s ease,box-shadow .2s ease}.site-header.scrolled{background:#5c4a3a;box-shadow:0 4px 20px #3d291433}.site-header .brand h1{color:#fff;font-weight:700}.site-header .brand p{color:#ffffffd9}.site-header .nav-link{color:#fff;font-weight:500}.site-header .nav-link:hover{color:#fff;background:#ffffff26}.site-header .nav-link.active{color:#fff;background:#fff3}.site-header .header-search{background:#fff;border-color:#8b6b4a4d;color:var(--color-text)}.site-header .header-search::placeholder{color:var(--color-muted)}.site-header .button-primary{background:linear-gradient(135deg,var(--color-green-gray),#7A8566);color:#fff}.site-header .button-ghost{color:#fff;border-color:transparent;background:transparent}.site-header .button-ghost:hover{background:#ffffff26;border-color:#ffffff4d;color:#fff}.site-header .container{min-width:0}.site-header .row{min-width:0;width:100%}.site-header .nav-actions{flex-shrink:0}.brand{display:flex;gap:12px;align-items:center;min-width:0;flex-shrink:1}.brand a{display:flex;align-items:center;gap:12px;min-width:0;flex-shrink:1;text-decoration:none;transition:opacity .15s ease}.brand a:hover{opacity:.85}.brand .logo{width:48px;height:48px;border-radius:12px;flex-shrink:0;background:linear-gradient(135deg,var(--color-green-gray),#7A8566);box-shadow:0 4px 16px #8b957640;transition:transform .2s ease,box-shadow .2s ease}.brand .logo:hover{transform:scale(1.05) rotate(-2deg);box-shadow:0 6px 24px #8b957659}.brand h1{margin:0;font-family:var(--font-base);font-size:18px;font-weight:700;letter-spacing:-.02em;color:var(--color-ink)}.brand-subtitle{font-size:11px;color:var(--color-muted);letter-spacing:.02em;font-weight:500}@media (max-width: 767px){.site-header{padding:10px 0}.brand .logo{width:40px;height:40px;border-radius:10px}.brand h1{font-size:16px}.brand-subtitle{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand>a>div{min-width:0;overflow:hidden}.brand h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes marquee{0%{transform:translate(100vw)}to{transform:translate(-100%)}}}.nav{display:flex;gap:12px;align-items:center}.nav a{color:var(--color-muted);padding:8px 10px;border-radius:8px;transition:background-color .12s ease,color .12s ease,transform .08s ease}.nav a:hover{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,#fff 90%);transform:translateY(-1px)}.nav a.cta{background:var(--color-primary);color:var(--color-on-primary);font-weight:600}.nav a:focus,.button:focus{outline:3px solid rgba(156,43,0,.18);outline-offset:2px}.nav-drawer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000008c;z-index:10000;animation:nav-drawer-overlay-in .2s ease-out}.nav-drawer-panel{position:fixed;top:0;right:0;bottom:0;width:min(280px,90vw);max-width:100vw;background:var(--color-bg);box-shadow:-4px 0 24px #0003;z-index:10001;padding:24px;box-sizing:border-box;display:flex;flex-direction:column;gap:8px;overflow:hidden;animation:nav-drawer-panel-in .25s ease-out}@keyframes nav-drawer-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes nav-drawer-panel-in{0%{transform:translate(100%)}to{transform:translate(0)}}.nav-drawer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;flex-shrink:0}.nav-drawer-links{display:flex;flex-direction:column;gap:8px;min-height:0;overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}.bottom-nav{display:none}@media (max-width: 767px){.bottom-nav{display:block;position:fixed;bottom:0;left:0;right:0;z-index:50;background:var(--color-bg);border-top:1px solid var(--color-border);padding-bottom:env(safe-area-inset-bottom,0);box-shadow:0 -2px 12px var(--color-shadow)}.bottom-nav-inner{display:flex;justify-content:space-around;align-items:center;max-width:var(--max-width);margin:0 auto;padding:8px 8px 12px;gap:4px}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 4px;min-width:0;font-family:var(--font-base);font-size:11px;font-weight:500;color:var(--color-muted);background:none;border:none;border-radius:8px;cursor:pointer;text-decoration:none;transition:color .15s ease,background .15s ease}.bottom-nav-item:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-primary) 8%,var(--color-bg) 92%)}.bottom-nav-item.active{color:var(--color-primary);font-weight:600}.bottom-nav-icon{font-size:20px;line-height:1}.bottom-nav-label{text-align:center;line-height:1.1;display:block;max-width:100%;word-wrap:break-word}.app-content.has-bottom-nav{padding-bottom:calc(72px + env(safe-area-inset-bottom,0))}}.hero{padding:48px 40px;display:grid;grid-template-columns:1fr;gap:var(--gap-lg);align-items:center;border-radius:24px;overflow:hidden;background:linear-gradient(135deg,var(--color-surface-variant) 0%,var(--color-surface) 50%,#ffffff 100%);border:1px solid var(--color-border);box-shadow:0 1px 2px #3d291405,0 4px 8px #3d291408,0 12px 24px #3d29140a,0 24px 48px #3d29140d;position:relative}.hero .kicker{font-family:var(--font-base);color:var(--color-accent);font-weight:600;font-size:12px;letter-spacing:.12em;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px}.hero .kicker:before{content:"";width:40px;height:2px;background:var(--color-accent);border-radius:2px}.hero-split{display:grid;grid-template-columns:1fr 1.2fr;align-items:stretch;padding:0;min-height:500px}.hero-split-content{padding:60px 50px;display:flex;flex-direction:column;justify-content:center}.hero-split-image{background-size:cover;background-position:center;position:relative}.hero-split-image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,var(--color-surface) 0%,transparent 20%)}@media (max-width: 991px){.hero-split{grid-template-columns:1fr}.hero-split-image{height:300px;order:-1}.hero-split-image:after{background:linear-gradient(0deg,var(--color-surface) 0%,transparent 20%)}}.glass{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border)}.parchment-section{background-color:var(--parchment-bg);background-image:url(/src/assets/parchment_texture.png);background-blend-mode:multiply;border-radius:32px;padding:48px;position:relative;overflow:hidden}.bubble-nav{display:flex;justify-content:center;gap:32px;flex-wrap:wrap;padding:24px 0}.bubble-item{display:flex;flex-direction:column;align-items:center;gap:12px;text-decoration:none}.bubble-image{width:100px;height:100px;border-radius:50%;border:4px solid #fff;box-shadow:0 8px 20px #0000001a;overflow:hidden;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.bubble-item:hover .bubble-image{transform:scale(1.1) rotate(5deg);box-shadow:0 12px 28px #a0452e33;border-color:var(--color-primary)}.bubble-label{font-weight:700;font-size:14px;color:var(--color-text);letter-spacing:.05em;text-transform:uppercase}.hero h2{margin:16px 0 0;font-size:clamp(32px,5vw,48px);line-height:1.1;color:var(--color-ink);font-family:var(--font-base);letter-spacing:-.02em}.hero p{color:var(--color-muted);margin:16px 0 0;max-width:60ch;font-size:17px;line-height:1.6;font-weight:400}.hero .cta-row{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}.hero-content{padding:0}.hero-title,.hero-subtitle{margin-top:16px!important}.hero-ctas{margin-top:32px!important}.hero-cta{text-decoration:none!important;color:inherit!important}.hero-banner--compact{padding:32px 28px;border-radius:20px}.hero-banner--compact .hero-content{padding:0}.hero-banner--compact .hero-title{margin-top:12px!important;font-size:clamp(24px,4vw,32px)}.hero-banner--compact .hero-ctas{margin-top:24px!important}@media (max-width: 767px){.hero{padding:28px 20px;border-radius:20px}.hero h2{font-size:28px}.hero p{font-size:15px}}.card{background:var(--color-paper);border-radius:var(--radius-lg);padding:32px;border:1px solid var(--color-border);box-shadow:var(--shadow-md);transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s ease;position:relative;overflow:hidden}.card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.card.card--accent{border-color:#a0452e33}.card h3,.card h4{margin:0 0 16px;font-size:1.4rem;font-weight:800;letter-spacing:-.02em;color:var(--color-ink)}.card p{color:var(--color-muted);font-size:1rem;line-height:1.6}.recipe-card{display:flex;gap:24px;align-items:center;background:var(--color-paper);border-radius:var(--radius-md);padding:16px;border:1px solid var(--color-border);transition:all .3s ease}.recipe-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.recipe-card-image{width:120px;height:90px;border-radius:var(--radius-sm);object-fit:cover;transition:transform .4s ease}.recipe-card:hover .recipe-card-image{transform:scale(1.05)}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 32px;border-radius:var(--radius-full);border:none;cursor:pointer;font-weight:700;font-size:15px;letter-spacing:-.01em;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;white-space:nowrap}.button:active{transform:scale(.97)}.button-primary{background:var(--color-primary);color:#fff!important;box-shadow:0 10px 25px #a0452e40}.button-primary:hover{background:var(--color-primary-700);transform:translateY(-3px);box-shadow:0 15px 35px #a0452e59}.button-secondary{background:#a0452e14;color:var(--color-primary)}.button-secondary:hover{background:#a0452e1f;transform:translateY(-2px)}.button-ghost{background:transparent;color:var(--color-text);border:2px solid var(--color-border)}.button-ghost:hover{background:var(--color-surface);border-color:var(--color-primary);color:var(--color-primary)}.button-small{padding:8px 20px;font-size:13px}.button-large{padding:18px 40px;font-size:18px}label{display:block;margin-bottom:10px;font-weight:700;color:var(--color-ink);font-size:14px;text-transform:uppercase;letter-spacing:.05em}input[type=text],input[type=email],input[type=password],input[type=search],textarea,select{width:100%;padding:16px 24px;border-radius:var(--radius-md);border:2px solid var(--color-border);background:#fff;font-size:1rem;color:var(--color-text);transition:all .2s ease}input:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px #a0452e1a;background:#fff}textarea{min-height:140px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}@media (max-width: 600px){.form-row{grid-template-columns:1fr}}.header-search-form{width:280px;min-width:200px}.header-search{width:100%;min-width:0;padding:10px 14px 10px 40px;font-size:14px;font-family:var(--font-base);border-radius:12px;border:1.5px solid var(--color-border);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238B6B4A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") no-repeat 14px center;color:var(--color-text);transition:all .2s ease}.header-search:hover{border-color:#8b6b4a40;background-color:var(--color-surface)}.header-search:focus{outline:none;border-color:var(--color-primary);background-color:#fff;box-shadow:0 0 0 3px #a0452e1a}@media (max-width: 767px){.header-search-form{width:100%;min-width:auto}}.grid{display:grid;gap:var(--gap-lg);grid-template-columns:repeat(1,1fr)}.grid.cols-2{grid-template-columns:repeat(2,1fr)}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.mobile-only{display:none}.web-only{display:block}@media (max-width: 767px){.hero{padding:28px 0}.grid.cols-2{grid-template-columns:1fr}.mobile-only{display:block}.web-only{display:none}.nav{gap:8px}.container{padding-left:12px;padding-right:12px}}@media (min-width: 768px){.hero{grid-template-columns:1fr 480px;gap:40px;align-items:start}.grid.cols-2{grid-template-columns:repeat(2,1fr)}.grid.cols-3{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1100px){.hero{grid-template-columns:1fr 520px}}.tag-pills-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:var(--gap-md)}.recipe-grid{gap:var(--gap-lg)}.recipe-list-mobile{display:flex;flex-direction:column;gap:var(--gap-md)}.text-sm{font-size:var(--text-sm)}.muted{color:var(--color-muted)}.uppercase{text-transform:uppercase;letter-spacing:1px}.chip{padding:8px 14px;border-radius:8px;background:var(--color-surface);color:var(--color-secondary);font-weight:600;font-size:13px;letter-spacing:-.01em;border:1.5px solid var(--color-border);transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer}.chip:hover{transform:translateY(-2px);background:var(--color-surface-variant);border-color:#8b6b4a40;box-shadow:0 4px 12px var(--color-shadow)}.chip:active{transform:translateY(0)}.language-switcher{position:relative}.language-switcher--ghost .language-switcher__trigger{padding:8px 10px;font-size:13px;font-weight:500;background:transparent;border-radius:var(--radius-sm);border:1px solid rgba(156,43,0,.08);color:var(--color-primary)}.language-switcher--ghost .language-switcher__trigger:hover{background:#9c2b000f}.language-switcher--ghost .language-switcher__trigger[aria-expanded=true]{background:#9c2b0014;border-color:color-mix(in srgb,var(--color-primary) 30%,transparent)}.language-switcher__trigger{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:var(--text-sm);font-weight:500;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease,background-color .12s ease}.language-switcher:not(.language-switcher--ghost) .language-switcher__trigger:hover{background:color-mix(in srgb,var(--color-primary) 6%,var(--color-surface) 94%);border-color:color-mix(in srgb,var(--color-primary) 25%,transparent);box-shadow:0 2px 8px var(--color-shadow)}.language-switcher:not(.language-switcher--ghost) .language-switcher__trigger[aria-expanded=true]{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,var(--color-surface) 90%);box-shadow:0 2px 8px var(--color-shadow)}.language-switcher--pill .language-switcher__trigger{padding:6px 12px;font-size:13px;font-weight:600;color:var(--color-primary-700);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-full);box-shadow:0 1px 3px var(--color-shadow)}.language-switcher--pill .language-switcher__trigger:hover{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 6%,#fff 94%);box-shadow:0 2px 8px var(--color-shadow)}.language-switcher--pill .language-switcher__trigger[aria-expanded=true]{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,#fff 88%);color:var(--color-ink);box-shadow:0 2px 10px var(--color-shadow)}.language-switcher__globe{font-size:1.1em;line-height:1}.language-switcher__label{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.language-switcher__chevron{flex-shrink:0;opacity:.7;transition:transform .2s ease}.language-switcher__dropdown{position:absolute;right:0;min-width:200px;margin-top:6px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 16px 48px #0000001f;z-index:1000;overflow:hidden;display:flex;flex-direction:column;animation:language-switcher-open .18s ease}body>.language-switcher__dropdown{position:fixed;right:auto;margin:0}.language-switcher__dropdown--drop-up{animation:language-switcher-open-drop-up .18s ease}.language-switcher--drop-up .language-switcher__dropdown{bottom:100%;margin-bottom:6px;margin-top:0}@keyframes language-switcher-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.language-switcher--drop-up .language-switcher__dropdown{animation:language-switcher-open-drop-up .18s ease}@keyframes language-switcher-open-drop-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.language-switcher__list{list-style:none;margin:0;padding:6px 0;overflow-y:auto;overflow-x:hidden;max-height:min(80vh,520px);-webkit-overflow-scrolling:touch}.language-switcher__list li{margin:0}.language-switcher__option{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:10px 14px;font-size:var(--text-sm);color:var(--color-text);background:transparent;border:none;cursor:pointer;text-align:left;transition:background-color .1s ease}.language-switcher__option:hover{background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.language-switcher__option--selected{background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary-700);font-weight:600}.language-switcher__option--selected:hover{background:color-mix(in srgb,var(--color-primary) 16%,transparent)}.language-switcher__option-name{flex:1;min-width:0}.language-switcher__option-check{flex-shrink:0;color:var(--color-primary);display:flex;align-items:center;justify-content:center}.language-switcher__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:999;animation:language-switcher-backdrop-in .2s ease}.language-switcher__sheet{position:fixed;left:0;right:0;bottom:0;max-height:65vh;background:var(--color-bg);border-radius:var(--radius-md) var(--radius-md) 0 0;box-shadow:0 -8px 32px #00000026;z-index:1000;display:flex;flex-direction:column;animation:language-switcher-sheet-in .25s ease}.language-switcher__sheet-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--color-border);flex-shrink:0}.language-switcher__sheet-title{margin:0;font-size:var(--text-lg);font-weight:600;color:var(--color-text)}.language-switcher__sheet-close{padding:6px 10px;font-size:18px;line-height:1;color:var(--color-muted);background:none;border:none;cursor:pointer;border-radius:var(--radius-sm)}.language-switcher__sheet-close:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.language-switcher__sheet-list{overflow-y:auto;-webkit-overflow-scrolling:touch;max-height:calc(65vh - 52px);padding:8px 0}.language-switcher__sheet-list .language-switcher__list{max-height:none}@keyframes language-switcher-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes language-switcher-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}.badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:8px;background:var(--color-surface);color:var(--color-text-secondary);font-weight:600;font-size:12px;letter-spacing:.01em;border:1px solid var(--color-border)}.pill{display:inline-flex;align-items:center;padding:10px 18px;border-radius:8px;background:linear-gradient(180deg,#ffffff 0%,var(--color-surface) 100%);color:var(--color-secondary);font-weight:500;font-size:14px;font-family:var(--font-base);border:1.5px solid var(--color-border);transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer;letter-spacing:-.01em}.pill:hover{background:linear-gradient(180deg,var(--color-surface) 0%,var(--color-surface-variant) 100%);border-color:var(--color-secondary-light);color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px var(--color-shadow)}.pill[aria-pressed=true],.tag-pill-active{background:linear-gradient(135deg,var(--color-green-gray),#7A8566);border-color:#7a8566;color:#fff;font-weight:600;box-shadow:0 1px 2px #8b957633,0 4px 12px #8b957626}.pill[aria-pressed=true]:hover,.tag-pill-active:hover{transform:translateY(-2px);box-shadow:0 2px 4px #8b957640,0 8px 20px #8b957633}.chip-input-wrapper{display:flex;align-items:center;gap:8px;padding:8px;border-radius:12px;background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-surface-variant) 12%,#000 0%);box-shadow:0 6px 18px #2e1f1a0a;min-height:44px}.chip-input-wrapper input{border:none;outline:none;background:transparent;flex:1;font-size:15px;padding:6px 4px;color:var(--color-text)}.chip-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;background:color-mix(in srgb,var(--color-surface-variant) 18%,#fff 82%);color:var(--color-text);font-weight:600;font-size:13px}.input-clear-btn{background:transparent;border:none;color:var(--color-muted);cursor:pointer;padding:6px;border-radius:6px}.input-clear-btn:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-primary) 6%,#fff 94%)}.divider{height:1px;background:var(--color-border);width:100%;margin:12px 0;border-radius:2px}@media (prefers-reduced-motion: reduce){.button,*{transition:none!important;animation:none!important}}.fixed-footer{position:static;background:linear-gradient(165deg,var(--color-secondary) 0%,#5C4A3A 100%);color:var(--color-on-footer);border-top:1px solid rgba(61,41,20,.1);padding:32px 0;z-index:10;margin-top:var(--gap-xl);position:relative;box-shadow:0 -4px 24px #3d291414}.footer{padding:0;text-align:center;color:#ffffffe6;font-size:14px;font-family:var(--font-base)}.footer .logo{border-radius:8px;box-shadow:0 2px 8px #0003}.footer a{color:#fffffff2;text-decoration:none;transition:all .2s ease;font-weight:500}.footer a:hover{color:#fff;text-decoration:underline;opacity:1}.footer-brand{display:flex;gap:10px;align-items:center;color:var(--color-on-footer);font-size:14px;line-height:1.4}.footer-brand strong{font-weight:700;font-family:var(--font-base);letter-spacing:-.01em}.footer-links{display:flex;gap:24px;align-items:center}.footer-links a{font-size:14px;padding:4px 0;position:relative}.footer-links a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:#fff9;transition:width .2s ease}.footer-links a:hover:after{width:100%}@media (max-width: 767px){.fixed-footer{padding:24px 0}.footer .container.space-between{flex-direction:column;flex-wrap:wrap;gap:16px;justify-content:center;text-align:center}.footer-links{gap:20px}}.recipe-detail .recipe-hero{padding:16px}.recipe-detail .recipe-hero img{border-radius:8px}.recipe-detail .card{padding:16px}.recipe-pie-nav{position:fixed;bottom:24px;right:24px;z-index:100;pointer-events:none}.recipe-pie-nav>*{pointer-events:auto}.recipe-pie-nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;z-index:98;opacity:1;transition:opacity .2s}.recipe-pie-nav-circle{position:relative;width:56px;height:56px;border-radius:50%;background:var(--color-surface);border:2px solid var(--color-border);box-shadow:0 4px 20px #0000001f;transition:width .25s ease,height .25s ease,background .2s;overflow:hidden}.recipe-pie-nav-circle.open{width:200px;height:200px;background:color-mix(in srgb,var(--color-surface) 98%,var(--color-primary) 2%);border-color:var(--color-primary-700)}.recipe-pie-nav-wedge{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-start;justify-content:center;padding-top:18%;text-decoration:none;color:var(--color-text);transition:background .15s}.recipe-pie-nav-wedge:hover{background:color-mix(in srgb,var(--color-primary) 18%,transparent 82%);color:var(--color-ink)}.recipe-pie-nav-wedge:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.recipe-pie-nav-wedge-inner{display:flex;flex-direction:column;align-items:center;gap:2px}.recipe-pie-nav-icon{font-size:18px;line-height:1}.recipe-pie-nav-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.recipe-pie-nav-center{position:absolute;top:50%;left:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;border:2px solid var(--color-primary-700);background:var(--color-primary);color:var(--color-on-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 12px #00000026;transition:transform .2s,background .2s;z-index:2}.recipe-pie-nav-center:hover{background:var(--color-primary-700);transform:scale(1.05)}.recipe-pie-nav-center-icon{font-size:18px;line-height:1}.recipe-detail .chip{background:color-mix(in srgb,var(--color-primary-700) 12%,#fff 88%);color:var(--color-primary-700);padding:6px 10px;border-radius:8px;font-weight:700}.recipe-detail .ingredients-list{list-style:none;padding:0;margin:0}.recipe-detail .ingredients-list li{padding:8px 0;border-bottom:1px solid var(--color-border);display:flex;gap:12px;align-items:center}.recipe-detail .steps-list{padding-left:18px}.recipe-detail .steps-list li{margin-bottom:12px}.recipe-detail h1{margin-bottom:8px}.recipe-detail .muted{color:var(--color-muted)}.recipe-sidebar{position:sticky;top:84px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999}.lightbox-img{max-width:90%;max-height:80%;border-radius:8px;box-shadow:0 20px 50px #0009}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;background:#ffffffe6;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:20px;color:#333}.lightbox-close{top:20px;right:20px}.lightbox-prev{left:20px;top:50%;transform:translateY(-50%)}.lightbox-next{right:20px;top:50%;transform:translateY(-50%)}.ingredients-list li{padding:8px 0;border-bottom:1px solid var(--color-border)}.steps-list li{padding:12px 10px;border-bottom:1px solid var(--color-border)}.steps-list li:last-child{border-bottom:none}.fixed-footer a{color:var(--color-on-footer);text-decoration:none;opacity:.95}.fixed-footer a:hover{text-decoration:underline;opacity:1}.admin-page{min-height:100vh;background:linear-gradient(160deg,var(--color-bg) 0%,color-mix(in srgb,var(--color-surface) 60%,var(--color-bg) 40%) 100%)}.admin-login-page{display:flex;align-items:center;justify-content:center;padding:var(--gap-lg)}.admin-login-card{width:100%;max-width:400px;padding:var(--gap-lg);box-shadow:0 20px 50px #2e1f1a14}.admin-login-header{text-align:center;margin-bottom:var(--gap-lg)}.admin-login-logo{width:64px;height:64px;border-radius:var(--radius-md);object-fit:cover;margin-bottom:var(--gap-md)}.admin-login-title{margin:0 0 4px;font-size:var(--text-xl);color:var(--color-text)}.admin-login-form{margin-bottom:var(--gap-md)}.admin-login-form input[type=text],.admin-login-form input[type=email],.admin-login-form input[type=password]{margin-bottom:4px}.admin-login-error{padding:10px 12px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-danger) 12%,#fff 88%);color:var(--color-danger);font-size:var(--text-sm);font-weight:600}.admin-login-hint{font-size:var(--text-sm);margin:0 0 var(--gap-md) 0;text-align:center}.admin-back-link{display:inline-block;font-size:var(--text-sm);color:var(--color-muted)}.admin-back-link:hover{color:var(--color-primary)}.auth-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--gap-lg);background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-modal-card{position:relative;width:100%;max-width:400px;padding:var(--gap-lg);box-shadow:0 20px 50px #2e1f1a26;animation:auth-modal-in .2s ease-out}@keyframes auth-modal-in{0%{opacity:0;transform:scale(.96) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}.auth-modal-tabs{border-bottom:1px solid var(--color-border)}.auth-modal-tab{padding:8px 16px;font-size:var(--text-sm);font-weight:600;color:var(--color-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;margin-bottom:-1px}.auth-modal-tab:hover{color:var(--color-text)}.auth-modal-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.auth-modal-close{position:absolute;top:var(--gap-md);right:var(--gap-md);width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1;color:var(--color-muted);background:none;border:none;border-radius:var(--radius-sm);cursor:pointer}.auth-modal-close:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-border) 50%,transparent)}.link-button{background:none;border:none;padding:0;font:inherit;color:var(--color-primary);cursor:pointer;text-decoration:underline}.link-button:hover{color:var(--color-primary-hover, var(--color-primary))}.basics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-bottom:32px}.basics-card{display:flex;align-items:center;justify-content:center;min-height:56px;padding:12px 16px;text-decoration:none;color:var(--color-text);font-weight:600;font-size:var(--text-sm);text-align:center;transition:background .2s,border-color .2s}.basics-card:hover{background:color-mix(in srgb,var(--color-primary) 14%,var(--color-surface) 86%);border-color:var(--color-primary-700);text-decoration:none;color:var(--color-text)}.recipes-page{padding-bottom:32px}.recipes-page-header{margin-bottom:24px}.recipes-search-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.recipes-search-input{flex:1;min-width:200px;max-width:400px;padding:10px 14px;border-radius:8px;border:1px solid var(--color-border);font-size:15px;background:var(--color-bg);color:var(--color-text)}.recipes-compass-section{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-bottom:28px}.recipe-compass-wrap{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:12px}.recipe-compass{position:relative}.recipe-compass-circle{position:relative;width:200px;height:200px;border-radius:50%;background:var(--color-surface);border:3px solid var(--color-border);box-shadow:0 4px 20px #00000014}.recipe-compass-segment{position:absolute;top:4px;right:4px;bottom:4px;left:4px;padding:0;border:none;background:color-mix(in srgb,var(--color-primary) 8%,var(--color-surface) 92%);cursor:pointer;transition:background .2s;overflow:hidden}.recipe-compass-segment:hover{background:color-mix(in srgb,var(--color-primary) 16%,var(--color-surface) 84%)}.recipe-compass-segment.open{background:color-mix(in srgb,var(--color-primary) 20%,var(--color-surface) 80%)}.recipe-compass-segment.has-value{background:color-mix(in srgb,var(--color-primary) 18%,var(--color-surface) 82%);border:2px solid var(--color-primary-700)}.recipe-compass-segment-inner{position:absolute;top:22%;left:50%;transform-origin:center center;display:flex;flex-direction:column;align-items:center;gap:2px;width:80px;margin-left:-40px;pointer-events:none}.recipe-compass-segment-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink)}.recipe-compass-segment-value{font-size:10px;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70px}.recipe-compass-center{position:absolute;top:50%;left:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;background:var(--color-primary);color:var(--color-on-primary);display:flex;align-items:center;justify-content:center;font-size:18px;pointer-events:none;box-shadow:0 2px 8px #00000026}.recipe-compass-panel{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:12px;min-width:260px;max-width:90vw;max-height:320px;padding:0;z-index:50;box-shadow:0 12px 40px #00000026}.recipe-compass-panel-head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--color-border)}.recipe-compass-panel-title{margin:0;font-size:14px;font-weight:700;color:var(--color-text);text-transform:uppercase;letter-spacing:.03em}.recipe-compass-panel-close{width:28px;height:28px;padding:0;border:none;border-radius:6px;background:none;font-size:18px;color:var(--color-muted);cursor:pointer}.recipe-compass-panel-close:hover{color:var(--color-text);background:var(--color-surface)}.recipe-compass-panel-chips{padding:12px;overflow-y:auto;max-height:260px;display:flex;flex-wrap:wrap;gap:8px}.recipe-compass-chip{padding:8px 12px;font-size:13px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);cursor:pointer;transition:background .15s,border-color .15s}.recipe-compass-chip:hover{background:color-mix(in srgb,var(--color-primary) 12%,var(--color-bg) 88%);border-color:var(--color-primary-700)}.recipe-compass-chip.active{background:color-mix(in srgb,var(--color-primary) 16%,var(--color-surface) 84%);border-color:var(--color-primary-700);color:var(--color-ink);font-weight:600}.recipe-compass-clear{font-size:13px}.recipes-basics-tag{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:6px 12px;border-radius:8px;background:color-mix(in srgb,var(--color-primary) 14%,var(--color-surface) 86%);border:1px solid var(--color-primary-700);font-size:13px;font-weight:600}.recipes-basics-tag-clear{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;border-radius:50%;background:color-mix(in srgb,var(--color-text) 20%,transparent);font-size:14px;cursor:pointer;text-decoration:none;color:inherit}.recipes-basics-tag-clear:hover{background:color-mix(in srgb,var(--color-text) 40%,transparent)}.recipes-filter-section{margin-bottom:20px}.recipes-filter-section:last-of-type{margin-bottom:0}.recipes-filter-heading{margin:0 0 8px;font-size:var(--text-sm);font-weight:600;color:var(--color-muted);text-transform:uppercase;letter-spacing:.02em}.recipes-filter-chips{display:flex;flex-wrap:wrap;gap:6px}.recipes-filter-chip{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;font-size:13px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);cursor:pointer;transition:background .15s,border-color .15s}.recipes-filter-chip:hover{background:color-mix(in srgb,var(--color-primary) 10%,var(--color-bg) 90%);border-color:var(--color-primary-700)}.recipes-filter-chip.active{background:color-mix(in srgb,var(--color-primary) 14%,var(--color-surface) 86%);border-color:var(--color-primary-700);color:var(--color-ink);font-weight:600}.recipes-filter-clear-one{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:4px;padding:0;border:none;border-radius:50%;background:color-mix(in srgb,var(--color-text) 20%,transparent);color:inherit;font-size:14px;line-height:1;cursor:pointer}.recipes-filter-clear-one:hover{background:color-mix(in srgb,var(--color-text) 35%,transparent)}.recipes-filter-dot{display:inline-block;width:8px;height:8px;margin-left:6px;border-radius:50%;background:var(--color-primary)}.recipes-main{margin-top:0}.bento-nav{margin-bottom:28px}.bento-nav-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media (min-width: 600px){.bento-nav-grid{grid-template-columns:repeat(4,1fr);gap:20px}}.bento-nav-tile{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:88px;padding:20px;text-decoration:none;color:#fff;border-radius:var(--radius-md);border:2px solid rgba(160,69,46,.3);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-700) 100%);transition:background .2s,border-color .2s,transform .15s}.bento-nav-tile:hover{background:linear-gradient(135deg,var(--color-primary-700) 0%,#8B3D28 100%);border-color:#a0452e80;color:#fff;text-decoration:none;transform:translateY(-2px);box-shadow:0 8px 24px #a0452e40}.bento-nav-tile .muted{color:#ffffffd9}.bento-nav-tile-label{font-size:16px;font-weight:700;margin-bottom:4px}.bento-nav-tile-desc{font-size:13px}.recipes-pagination{display:flex;align-items:center;gap:16px;margin-top:24px;flex-wrap:wrap}.recipes-pagination-info{font-size:14px;color:var(--color-muted)}.recipes-pagination button:disabled{opacity:.5;cursor:not-allowed}.browse-by-page{padding-bottom:32px}.content-page .page-title{margin-bottom:var(--gap-sm)}.content-page .page-intro{margin-bottom:var(--gap-lg)}.content-card{padding:var(--gap-lg);max-width:640px}.content-card h3{margin-top:var(--gap-lg);margin-bottom:var(--gap-sm)}.content-card h3:first-child{margin-top:0}.content-card .button{margin-top:var(--gap-md)}.cookbook-login-card{max-width:420px;margin:0 auto;text-align:center}.cookbook-login-actions{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:var(--gap-md)}.cookbook-login-or{margin:0 4px;font-size:var(--text-sm)}.not-found-page{display:flex;align-items:center;justify-content:center;min-height:50vh}.not-found-card{max-width:420px;margin:0 auto;padding:var(--gap-xl);text-align:center}.not-found-code{display:block;font-family:var(--font-base);font-size:clamp(48px,12vw,72px);font-weight:800;color:var(--color-muted);line-height:1;margin-bottom:var(--gap-sm)}.not-found-title{margin-bottom:var(--gap-sm)!important}.not-found-message{margin-bottom:var(--gap-lg)!important}.browse-by-header{margin-bottom:var(--gap-lg)}.browse-by-header .back-link{margin-bottom:var(--gap-sm);display:inline-block}.browse-by-header .page-title{margin-bottom:var(--gap-sm)}.browse-by-header .page-intro{margin-bottom:0}.browse-by-layout{display:flex;gap:24px;align-items:flex-start}.browse-by-sidebar{width:200px;flex-shrink:0;position:sticky;top:90px;padding:16px;background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border)}.browse-by-clear{width:100%;margin-bottom:12px;font-size:13px}.browse-by-chips{display:flex;flex-direction:column;gap:8px}.browse-by-chip{display:block;width:100%;padding:10px 12px;font-size:13px;text-align:left;border-radius:8px;border:1px solid rgba(160,69,46,.2);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-700) 100%);color:#fff;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}.browse-by-chip:hover{background:linear-gradient(135deg,var(--color-primary-700) 0%,#8B3D28 100%);border-color:#a0452e66;transform:translate(4px)}.browse-by-chip.active{background:linear-gradient(135deg,#8b3d28,#6b2e1f);border-color:#a0452e99;color:#fff;font-weight:600;box-shadow:0 4px 12px #a0452e40}.browse-by-main{flex:1;min-width:0}@media (max-width: 767px){.browse-by-layout{flex-direction:column}.browse-by-sidebar{width:100%;position:static;display:flex;flex-wrap:wrap;gap:8px}.browse-by-chips{flex-direction:row;flex-wrap:wrap}.browse-by-chip{width:auto}}.admin-dashboard-page{padding-bottom:48px}.admin-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:12px 0;position:sticky;top:0;z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.admin-header-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--gap-md)}.admin-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.admin-brand:hover{opacity:.95}.admin-brand-logo{width:40px;height:40px;border-radius:var(--radius-sm);object-fit:cover}.admin-brand-text{font-weight:700;font-size:var(--text-lg);color:var(--color-text)}.admin-header-actions{display:flex;align-items:center;gap:8px}.admin-user-name{font-size:var(--text-sm);color:var(--color-muted);margin-right:4px}.admin-header-btn{padding:8px 14px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;text-decoration:none;color:var(--color-primary);background:transparent;border:1px solid color-mix(in srgb,var(--color-primary) 30%,transparent);cursor:pointer;transition:background .15s,color .15s}.admin-header-btn:hover{background:color-mix(in srgb,var(--color-primary) 10%,#fff 90%);color:var(--color-primary-700)}.admin-header-btn-ghost{border-color:var(--color-border);color:var(--color-text)}.admin-header-btn-ghost:hover{background:color-mix(in srgb,var(--color-primary) 8%,#fff 92%);color:var(--color-primary)}.admin-topnav{background:#fff;border-bottom:1px solid var(--color-border);padding:0 var(--container-padding);position:sticky;top:56px;z-index:25}.admin-topnav-inner{display:flex;flex-wrap:wrap;gap:2px;align-items:center;justify-content:center;min-height:44px}.admin-topnav-link{display:inline-block;padding:10px 14px;font-size:var(--text-sm);font-weight:500;color:var(--color-muted);text-decoration:none;border-radius:var(--radius-sm);transition:color .12s,background .12s}.admin-topnav-link:hover{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,#fff 92%)}.admin-topnav-link.active{color:var(--color-primary);font-weight:600;background:color-mix(in srgb,var(--color-primary) 12%,#fff 88%)}@media (max-width: 767px){.admin-topnav-inner{overflow-x:auto;flex-wrap:nowrap;padding:4px 0;-webkit-overflow-scrolling:touch}.admin-topnav-link{flex-shrink:0}}.admin-body{min-height:calc(100vh - 56px)}.admin-back-bar{display:flex;align-items:center;gap:12px;padding:12px var(--container-padding) 0;margin-bottom:8px;flex-wrap:wrap}.admin-back-link{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--color-primary);text-decoration:none;font-weight:500}.admin-back-link:hover{text-decoration:underline}.admin-breadcrumb{font-size:var(--text-sm);color:var(--color-muted)}.admin-main{padding:var(--gap-lg) var(--container-padding) 48px}.admin-page-title{margin:0 0 4px;font-size:clamp(22px,4vw,28px);color:var(--color-text)}.admin-page-subtitle{margin:0 0 var(--gap-lg) 0;font-size:var(--text-sm)}.admin-stats-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:var(--gap-md);margin-bottom:var(--gap-lg)}@media (min-width: 600px){.admin-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.admin-stats-grid{grid-template-columns:repeat(4,1fr)}}.admin-stat-card{display:flex;align-items:center;gap:var(--gap-md);padding:var(--gap-md)}.admin-stat-icon{font-size:28px;line-height:1}.admin-stat-content{display:flex;flex-direction:column;gap:2px}.admin-stat-value{font-size:24px;font-weight:700;color:var(--color-text)}.admin-stat-label{font-size:var(--text-sm);color:var(--color-muted)}.admin-section{margin-bottom:var(--gap-lg);padding:var(--gap-lg)}.admin-section-title{margin:0 0 var(--gap-md) 0;font-size:var(--text-lg);color:var(--color-text)}.admin-form-page-header{margin-bottom:var(--gap-lg)}.admin-form-page-header .admin-page-title{margin-top:8px}.admin-form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-md)}.admin-ingredient-row{display:flex;gap:var(--gap-sm);align-items:center;margin-bottom:var(--gap-sm)}.admin-ingredient-name{flex:1;min-width:0}.admin-ingredient-qty{width:80px}.admin-ingredient-unit{width:70px}.admin-step-row{display:flex;gap:var(--gap-sm);align-items:flex-start;margin-bottom:var(--gap-sm)}.admin-step-num{flex-shrink:0;font-weight:700;width:28px}.admin-step-input{flex:1;min-width:0;resize:vertical}.admin-form-actions{display:flex;gap:var(--gap-md);margin-top:var(--gap-lg);padding-top:var(--gap-md);border-top:1px solid var(--color-border)}.admin-actions-row{display:flex;align-items:center;gap:var(--gap-md);flex-wrap:wrap}.admin-list{list-style:none;padding:0;margin:0}.admin-list li{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--color-border);gap:12px}.admin-list li:last-child{border-bottom:none}.admin-list-title{font-weight:600;color:var(--color-text)}.admin-dashboard-page.admin-page{background:var(--color-bg)}.admin-dashboard-page .admin-body{background:linear-gradient(180deg,var(--color-bg) 0%,var(--color-surface) 100%)}.admin-hero-block{margin-bottom:var(--gap-lg)}.admin-hero-title{margin:0 0 6px;font-size:clamp(28px,5vw,36px);font-weight:800;color:var(--color-text);letter-spacing:-.02em}.admin-hero-desc{margin:0;font-size:var(--text-lg);color:var(--color-muted)}.admin-bento{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:1000px}.admin-bento-card{display:flex;align-items:flex-start;gap:14px;padding:20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);text-decoration:none;color:inherit;box-shadow:0 6px 18px var(--color-shadow);transition:background .2s,border-color .2s,transform .15s,box-shadow .2s}.admin-bento-card:hover{background:color-mix(in srgb,var(--color-surface-variant) 12%,var(--color-surface) 88%);border-color:color-mix(in srgb,var(--color-primary) 20%,transparent);transform:translateY(-2px);box-shadow:0 12px 28px var(--color-shadow)}.admin-bento-card--wide{grid-column:span 2}.admin-bento-card--tall{grid-row:span 2;flex-direction:column}.admin-bento-card--tall .admin-bento-content{flex:1}.admin-bento-icon{font-size:32px;line-height:1;flex-shrink:0}.admin-bento-content{flex:1;min-width:0}.admin-bento-title{margin:0 0 4px;font-size:18px;font-weight:700;color:var(--color-text)}.admin-bento-desc{margin:0;font-size:14px;color:var(--color-muted);line-height:1.4}.admin-bento-stat{display:inline-block;margin-top:8px;font-size:24px;font-weight:800;color:var(--color-primary)}.admin-bento-arrow{font-size:18px;color:var(--color-muted);flex-shrink:0;transition:transform .15s,color .15s}.admin-bento-card:hover .admin-bento-arrow{transform:translate(4px);color:var(--color-primary)}@media (min-width: 900px){.admin-bento{grid-template-columns:repeat(4,1fr)}.admin-bento-card--wide{grid-column:span 2}}@media (max-width: 599px){.admin-bento{grid-template-columns:1fr}.admin-bento-card--wide{grid-column:span 1}.admin-bento-card--tall{grid-row:span 1}}.admin-toolbar{display:flex;flex-wrap:wrap;gap:var(--gap-md);align-items:center;margin-bottom:var(--gap-md)}.admin-search{max-width:280px;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--color-border);font-size:var(--text-sm)}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.admin-table th,.admin-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--color-border)}.admin-table th{font-weight:600;color:var(--color-muted);text-transform:uppercase;letter-spacing:.5px}.admin-table tbody tr:hover{background:color-mix(in srgb,var(--color-surface-variant) 8%,#fff 92%)}.admin-btn-sm{padding:4px 8px!important;font-size:12px!important}.admin-btn-danger{color:var(--color-danger);border-color:#b43c3c40}.admin-btn-danger:hover{color:var(--color-danger)!important;background:color-mix(in srgb,var(--color-danger) 10%,transparent)}.admin-add-group-card{border:2px solid rgba(156,43,0,.2);background:color-mix(in srgb,var(--color-primary) 4%,#fff)}.admin-add-group-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px}.admin-add-group-toolbar .admin-search{min-width:200px;flex:1}.admin-add-group-toolbar .button-primary{flex-shrink:0}.admin-filter-group-header{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px}.admin-filter-group-header .admin-accordion{flex:1;min-width:0}.admin-group-actions{display:flex;gap:8px;flex-shrink:0}.admin-group-actions .button{min-width:72px;padding:8px 14px;font-size:14px}.admin-btn-edit{background:color-mix(in srgb,var(--color-primary) 8%,#fff);border:1px solid rgba(156,43,0,.25);color:var(--color-primary)}.admin-btn-edit:hover{background:color-mix(in srgb,var(--color-primary) 14%,#fff)}.admin-actions-col{white-space:nowrap;min-width:140px}.admin-actions-col .button{margin-right:4px;min-width:56px}.admin-tags-add-row{margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border)}.admin-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100;padding:var(--gap-lg)}.admin-modal{max-width:480px;width:100%;max-height:90vh;overflow-y:auto}.admin-form label{margin-top:8px}.admin-form label:first-of-type{margin-top:0}.admin-modal-actions{display:flex;gap:var(--gap-md);justify-content:flex-end;margin-top:var(--gap-lg);padding-top:var(--gap-md);border-top:1px solid var(--color-border)}.admin-quick-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.admin-quick-link{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-primary) 6%,#fff 94%);color:var(--color-text);text-decoration:none;font-size:var(--text-sm);transition:background .12s}.admin-quick-link:hover{background:color-mix(in srgb,var(--color-primary) 12%,#fff 88%);color:var(--color-primary)}.admin-stat-link{text-decoration:none;color:inherit;transition:transform .12s,box-shadow .12s}.admin-stat-link:hover{transform:translateY(-2px);box-shadow:0 12px 28px #2e1f1a14}.admin-details{margin-top:var(--gap-md)}.admin-details summary{cursor:pointer;font-weight:600;color:var(--color-primary)}.admin-accordion{width:100%;display:flex;align-items:center;gap:8px;padding:0;margin:0 0 var(--gap-md) 0;background:none;border:none;font-size:inherit;cursor:pointer;text-align:left}.admin-accordion-body{padding-top:0}.admin-list-small .admin-list-title{font-weight:400}.admin-section-desc{font-size:var(--text-sm);margin:-4px 0 var(--gap-md) 0}.admin-tag-list{display:flex;flex-wrap:wrap;gap:8px}.admin-tag{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:8px;background:color-mix(in srgb,var(--color-surface-variant) 18%,#fff 82%);font-size:var(--text-sm);font-weight:600}.admin-tag-remove{background:none;border:none;padding:0 2px;cursor:pointer;font-size:16px;line-height:1;color:var(--color-muted)}.admin-tag-remove:hover{color:var(--color-danger)}.admin-tag-chip-wrap{position:relative}.admin-tag-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;min-height:44px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface)}.admin-tag-input{flex:1;min-width:120px;border:none!important;background:transparent!important;padding:4px 0!important;margin:0!important}.admin-tag-input:focus{outline:none;box-shadow:none!important}.admin-tag-suggestions{position:absolute;top:100%;left:0;right:0;margin-top:4px;padding:8px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:0 8px 24px var(--color-shadow);z-index:10;max-height:200px;overflow-y:auto;display:flex;flex-wrap:wrap;gap:6px}.admin-tag-suggestion{padding:6px 12px;border-radius:8px;border:1px solid var(--color-border);background:#fff;cursor:pointer;font-size:var(--text-sm)}.admin-tag-suggestion:hover{background:color-mix(in srgb,var(--color-primary) 10%,#fff 90%);border-color:var(--color-primary)}.admin-recipes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}@media (min-width: 500px){.admin-recipes-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width: 768px){.admin-recipes-grid{grid-template-columns:repeat(6,1fr)}}@media (min-width: 1100px){.admin-recipes-grid{grid-template-columns:repeat(8,1fr)}}.admin-recipe-card{padding:0;overflow:hidden;display:flex;flex-direction:column}.admin-recipe-card-image{height:72px;background:var(--color-border);overflow:hidden;flex-shrink:0}.admin-recipe-card-image img{width:100%;height:100%;object-fit:cover}.admin-recipe-card-body{padding:6px 8px;display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.admin-recipe-card-title{margin:0;font-size:12px;font-weight:600;color:var(--color-text);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-recipe-card-actions{display:flex;gap:4px}.admin-recipe-card-actions .admin-btn-sm{padding:2px 6px!important;font-size:11px!important}.admin-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--gap-md)}.admin-media-card{padding:0;overflow:hidden}.admin-media-preview{aspect-ratio:1;background:var(--color-border)}.admin-media-preview img{width:100%;height:100%;object-fit:cover}.admin-media-info{padding:10px 12px;display:flex;flex-direction:column;gap:2px}.admin-media-info strong{font-size:var(--text-sm)}.admin-inline-input{max-width:200px;margin-right:8px}.admin-recipes-nav-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;padding:16px;margin-bottom:12px}.admin-recipes-nav-row-fields{flex:1;min-width:200px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-recipes-nav-row-fields .admin-inline-input{max-width:none;flex:1;min-width:120px}.admin-recipes-nav-row-actions{display:flex;gap:6px;align-items:center}.admin-form-inline input{max-width:140px}.admin-health-ok{margin:0;color:var(--color-success);font-weight:600}.cross-nav-page{min-height:100vh;background:var(--color-bg)}.cross-nav-hero{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-primary) 100%);padding:20px 0 16px;color:#fff;position:relative;overflow:hidden}.cross-nav-hero .container{position:relative;z-index:1}.cross-nav-back{display:inline-flex;align-items:center;gap:8px;color:#ffffffd9;font-size:var(--text-sm);text-decoration:none;margin-bottom:12px;transition:color .2s}.cross-nav-back:hover{color:#fff}.cross-nav-hero-title{font-size:var(--text-2xl);font-weight:700;margin:0 0 8px;color:#fff}.cross-nav-hero-subtitle{font-size:var(--text-sm);color:#ffffffd9;margin:0 0 16px;max-width:500px}.cross-nav-match-bar{display:flex;align-items:center;justify-content:space-between;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-lg);padding:12px 20px;border:1px solid rgba(255,255,255,.2)}.cross-nav-match-info{display:flex;align-items:baseline;gap:8px}.cross-nav-match-count{font-size:32px;font-weight:700;color:#fff;line-height:1}.cross-nav-match-label{font-size:var(--text-base);color:#ffffffe6}.cross-nav-clear-btn{padding:10px 20px;background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-full);color:#fff;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all .2s}.cross-nav-clear-btn:hover{background:#ffffff4d}.cross-nav-layout{display:grid;grid-template-columns:320px 1fr;gap:32px;padding-top:32px;padding-bottom:48px}.cross-nav-sidebar{position:sticky;top:100px;height:fit-content;max-height:calc(100vh - 120px);overflow-y:auto}.cross-nav-sidebar-inner{background:var(--color-surface);border-radius:var(--radius-xl);padding:24px;border:1px solid var(--color-border);box-shadow:0 4px 20px #0000000d}.cross-nav-sidebar-title{font-size:var(--text-lg);font-weight:600;color:var(--color-text);margin:0 0 20px;padding-bottom:16px;border-bottom:2px solid var(--color-border)}.cross-nav-accordion{border-bottom:1px solid var(--color-border)}.cross-nav-accordion:last-child{border-bottom:none}.cross-nav-accordion-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:16px 0;background:none;border:none;cursor:pointer;text-align:left;transition:background .2s}.cross-nav-accordion-info{display:flex;align-items:center;gap:12px}.cross-nav-accordion-title{display:block;font-size:var(--text-base);font-weight:600;color:var(--color-text)}.cross-nav-accordion-subtitle{display:block;font-size:var(--text-xs);color:var(--color-muted);margin-top:2px}.cross-nav-accordion-meta{display:flex;align-items:center;gap:8px}.cross-nav-accordion-badge{min-width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-full);padding:0 6px}.cross-nav-accordion-chevron{font-size:12px;color:var(--color-muted);transition:transform .3s ease}.cross-nav-accordion.open .cross-nav-accordion-chevron{transform:rotate(90deg)}.cross-nav-accordion-content{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease}.cross-nav-accordion-content.open{max-height:300px;overflow-y:auto;padding-bottom:16px;padding-right:8px}.cross-nav-accordion-content::-webkit-scrollbar{width:4px}.cross-nav-accordion-content::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.cross-nav-selected-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;padding:10px;background:#a0452e14;border-radius:var(--radius-md);border-left:3px solid var(--color-primary)}.cross-nav-selected-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:var(--color-primary);color:#fff;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:500}.cross-nav-selected-tag-remove{background:none;border:none;color:#fff;font-size:14px;line-height:1;cursor:pointer;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.cross-nav-selected-tag-remove:hover{background:#fff3}.cross-nav-tags{display:flex;flex-wrap:wrap;gap:8px}.cross-nav-tag{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-full);border:2px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all .2s ease}.cross-nav-tag:hover{border-color:var(--color-primary);background:#a0452e0d;transform:translateY(-1px)}.cross-nav-tag.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 2px 8px #a0452e4d}.cross-nav-tag-check{font-size:12px}.cross-nav-results-area{min-height:600px}.cross-nav-active-pills{display:flex;align-items:flex-start;gap:12px;margin-bottom:24px;padding:16px 20px;background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border)}.cross-nav-pills-label{font-size:var(--text-sm);font-weight:600;color:var(--color-muted);white-space:nowrap;padding-top:6px}.cross-nav-pills-list{display:flex;flex-wrap:wrap;gap:8px;flex:1}.cross-nav-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-full);font-size:var(--text-sm);cursor:pointer;transition:all .2s;animation:pillAppear .3s ease}@keyframes pillAppear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.cross-nav-pill:hover{background:var(--color-primary-700);transform:translateY(-1px)}.cross-nav-pill-category{opacity:.8;font-size:var(--text-xs)}.cross-nav-pill-tag{font-weight:500}.cross-nav-pill-remove{font-size:16px;line-height:1;margin-left:2px;opacity:.8}.cross-nav-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.cross-nav-result-item{animation:fadeInUp .4s ease forwards;opacity:0;transform:translateY(20px)}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.cross-nav-empty{text-align:center;padding:60px 20px;background:var(--color-surface);border-radius:var(--radius-xl);border:2px dashed var(--color-border)}.cross-nav-empty-icon{font-size:64px;margin-bottom:20px;opacity:.6}.cross-nav-empty h3{font-size:var(--text-xl);color:var(--color-text);margin:0 0 8px}.cross-nav-empty p{color:var(--color-muted);margin:0 0 24px}.recipes-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.recipes-header-top .section-subtitle{margin:0}.recipes-explorer-btn{white-space:nowrap;flex-shrink:0;background:#fff;color:var(--color-primary)!important;border:2px solid var(--color-primary);border-radius:var(--radius-full);padding:10px 24px;font-weight:600;font-size:var(--text-sm);box-shadow:0 2px 8px #a0452e26;transition:all .2s ease}.recipes-explorer-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #a0452e33}@media (max-width: 900px){.cross-nav-layout{grid-template-columns:1fr}.cross-nav-sidebar{position:static;max-height:none;order:2}.cross-nav-results-area{order:1}.cross-nav-hero{padding:20px 0 16px}.cross-nav-hero-title{font-size:var(--text-2xl)}.cross-nav-match-bar{flex-direction:column;gap:12px;text-align:center}.recipes-header-top{flex-direction:column;gap:16px}.recipes-explorer-btn{width:100%;text-align:center}}@media (max-width: 640px){.cross-nav-results-grid{grid-template-columns:1fr}.cross-nav-active-pills{flex-direction:column}.cross-nav-pills-label{padding-top:0}}.recipe-history-page{padding-top:24px;padding-bottom:40px}.recipe-history-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.recipe-history-header .page-title{margin:0}.recipe-history-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.recipe-history-item{animation:fadeInUp .4s ease forwards;opacity:0;transform:translateY(20px)}.recipe-history-empty{text-align:center;padding:60px 20px}.recipe-history-empty-icon{font-size:64px;margin-bottom:20px;opacity:.6}.user-profile-page{padding-top:24px;padding-bottom:40px;max-width:600px}.profile-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.profile-header .page-title{margin:0}.profile-section{margin-bottom:24px;padding:24px}.profile-section .section-title{margin:0 0 20px;font-size:var(--text-lg)}.profile-section .section-title.danger-title{color:var(--color-primary)}.profile-form .form-group{margin-bottom:16px}.profile-form label{display:block;margin-bottom:6px;font-weight:500;font-size:var(--text-sm)}.profile-form input{width:100%;padding:10px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-base)}.profile-form input:focus{outline:none;border-color:var(--color-primary)}.form-actions{display:flex;gap:12px;margin-top:20px}.profile-info{display:flex;flex-direction:column;gap:16px}.profile-field{display:flex;gap:8px}.profile-label{font-weight:600;color:var(--color-muted);min-width:60px}.profile-value{color:var(--color-text)}.error-message{background:#a0452e1a;color:var(--color-primary);padding:12px 16px;border-radius:var(--radius-md);margin-bottom:16px;font-size:var(--text-sm)}.success-message{background:#5a7a4a1a;color:var(--color-success);padding:12px 16px;border-radius:var(--radius-md);margin-bottom:16px;font-size:var(--text-sm)}.profile-danger{border-left:4px solid var(--color-primary)}.delete-confirm{margin-top:16px}.delete-warning{color:var(--color-primary);font-weight:600;margin-bottom:12px}.button-danger{background:var(--color-primary);color:#fff;border:none;padding:10px 20px;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all .2s}.button-danger:hover{background:var(--color-primary-700)}.recipe-card--saved{border:2px solid var(--color-accent)}.saved-badge{position:absolute;top:12px;right:12px;background:var(--color-accent);color:#fff;padding:4px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;z-index:1}.button-saved{background:var(--color-accent);color:#fff;border:none;padding:8px 16px;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all .2s}.recipe-card-buttons{display:flex;gap:8px}.multi-recipe-view{padding-top:24px;padding-bottom:48px}.multi-recipe-header{margin-bottom:24px}.multi-recipe-header .page-title{margin-bottom:8px}.multi-recipe-controls{display:flex;justify-content:space-between;gap:24px;margin-bottom:24px;flex-wrap:wrap}.multi-recipe-selection{flex:1;min-width:300px}.multi-recipe-selection h3{margin:0 0 12px}.multi-recipe-selected-list{background:var(--color-surface);border-radius:var(--radius-md);padding:16px}.multi-recipe-selected-items{display:flex;flex-direction:column;gap:8px}.multi-recipe-selected-item{display:flex;align-items:center;gap:12px;padding:8px;background:#fff;border-radius:var(--radius-md)}.multi-recipe-selected-item img{width:40px;height:40px;object-fit:cover;border-radius:var(--radius-sm)}.multi-recipe-selected-item span{flex:1;font-size:14px}.multi-recipe-actions{display:flex;flex-direction:column;gap:12px;min-width:200px}.multi-recipe-layout-controls{display:flex;align-items:center;gap:8px;background:var(--color-surface);padding:8px 12px;border-radius:var(--radius-full)}.multi-recipe-layout-controls button{width:28px;height:28px;display:flex;align-items:center;justify-content:center;padding:0}.multi-recipe-grid{display:grid;gap:20px;margin-bottom:32px}.multi-recipe-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.multi-recipe-card.selected{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent)}.multi-recipe-card-header{padding:16px;background:var(--color-surface);display:flex;flex-direction:column;gap:12px}.multi-recipe-card-header img{width:100%;height:120px;object-fit:cover;border-radius:var(--radius-md)}.multi-recipe-card-header h4{margin:0;font-size:1.1rem}.multi-recipe-card-header .button{width:100%;margin-top:8px}.multi-recipe-card-body{padding:16px}.recipe-meta{display:flex;gap:16px;margin-bottom:16px;font-size:14px}.recipe-ingredients h5{margin:0 0 8px;font-size:1rem}.recipe-ingredients ul{margin:0;padding-left:20px;list-style-type:disc}.multi-recipe-selected-views{display:grid;gap:20px}.multi-recipe-selected-view{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;background:#fff}.multi-recipe-selected-header{padding:16px;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.multi-recipe-selected-header h3{margin:0;font-size:1.1rem}.multi-recipe-selected-content{padding:16px}.multi-recipe-selected-section{margin-bottom:20px}.multi-recipe-selected-section h4{margin:0 0 12px;font-size:1rem;color:var(--color-primary)}.multi-recipe-selected-section ul,.multi-recipe-selected-section ol{margin:0;padding-left:20px}.cookbook-page{padding-top:24px;padding-bottom:48px}.cookbook-empty-card{padding:48px 32px;text-align:center}.cookbook-empty-icon{font-size:48px;margin-bottom:16px}.cookbook-recipes-grid{gap:20px}.cookbook-recipe-wrapper{position:relative}.cookbook-folder-select{display:inline-block}.cookbook-folder-select select{padding:8px 12px;font-size:14px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;cursor:pointer;min-width:140px;font-family:inherit;font-weight:500}.cookbook-folder-select select:hover{border-color:var(--color-primary)}.cookbook-recipe-wrapper .cookbook-folder-select{position:absolute;top:8px;right:8px}.cookbook-folder-dropdown-container{position:relative;display:inline-block}.cookbook-folder-dropdown{position:absolute;top:100%;left:0;z-index:1000;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:160px;margin-top:4px;font-family:inherit;max-height:200px;overflow-y:auto}.cookbook-folder-dropdown select{width:100%;border:none;border-radius:var(--radius-md);padding:10px 12px;font-size:14px;cursor:pointer;font-family:inherit;background:#fff;color:var(--color-text);margin:4px}.cookbook-folders-section{background:var(--color-surface);border-radius:var(--radius-lg);padding:24px}.cookbook-folders-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}.cookbook-all-layout{display:flex;gap:24px}.cookbook-all-sidebar{flex:0 0 250px;background:var(--color-surface);border-radius:var(--radius-lg);padding:20px;height:fit-content;position:sticky;top:24px}.cookbook-all-sidebar h4{margin:0 0 16px;font-size:1rem}.cookbook-folders-list-simple{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.cookbook-folder-item{display:flex;align-items:center;gap:8px;padding:10px;border-radius:var(--radius-md);cursor:pointer;transition:background .2s}.cookbook-folder-item:not(.highlightable){cursor:default;opacity:.7}.cookbook-folder-item.highlightable:hover{background:var(--color-primary-bg)}.cookbook-folder-item .folder-icon .cookbook-folder-item.selected{background:var(--color-primary-bg);border:1px solid var(--color-primary)}.cookbook-folder-item .folder-name{flex:1}.cookbook-folder-item .folder-count{background:var(--color-muted-bg);color:var(--color-muted);padding:2px 8px;border-radius:var(--radius-full);font-size:.8rem}.cookbook-all-content{flex:1}.cookbook-all-content h4{margin:0 0 20px;font-size:1rem}.cookbook-recipe-wrapper.highlighted{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-md)}.cookbook-folders-header h3{margin:0;font-size:1.25rem}.cookbook-new-folder-form{display:flex;align-items:center;gap:8px}.cookbook-new-folder-form input{padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;font-size:14px;min-width:250px}.cookbook-new-folder-form input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #3b82f633}.cookbook-empty-folders{text-align:center;padding:48px 24px}.cookbook-folders-list{display:flex;flex-direction:column;gap:16px}.cookbook-folder-card{background:#fff;border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.cookbook-folder-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.cookbook-folder-info{display:flex;align-items:center;gap:10px}.cookbook-folder-icon{font-size:20px}.cookbook-folder-info h4{margin:0;font-size:1.1rem}.cookbook-folder-count{font-size:12px;color:var(--color-muted);background:var(--color-surface);padding:2px 8px;border-radius:var(--radius-full)}.cookbook-folder-recipes{display:flex;flex-direction:column;gap:8px}.cookbook-folder-recipe-item{display:flex;align-items:center;gap:12px;padding:10px;border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:background .2s}.cookbook-folder-recipe-item:hover{background:var(--color-surface)}.cookbook-folder-recipe-item img{width:48px;height:48px;object-fit:cover;border-radius:var(--radius-md)}.cookbook-folder-recipe-info{display:flex;flex-direction:column;gap:2px}.cookbook-folder-recipe-title{font-weight:500;color:var(--color-text)}.cookbook-folder-recipe-time{font-size:12px;color:var(--color-muted)}.cookbook-folder-empty{padding:24px;text-align:center;background:var(--color-surface);border-radius:var(--radius-md)}.cookbook-mealplan-section{background:var(--color-surface);border-radius:var(--radius-lg);padding:24px}.cookbook-mealplan-header{margin-bottom:24px}.cookbook-mealplan-header h3{margin:0 0 8px;font-size:1.25rem}.cookbook-mealplan-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}@media (max-width: 1024px){.cookbook-mealplan-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 640px){.cookbook-mealplan-grid{grid-template-columns:repeat(2,1fr)}}.cookbook-mealplan-day.has-recipe{border-color:var(--color-accent);background:linear-gradient(to bottom,white,var(--color-surface))}.cookbook-mealplan-day-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cookbook-day-name{font-weight:600;font-size:14px;color:var(--color-text)}.cookbook-clear-day{background:none;border:none;font-size:18px;color:var(--color-muted);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:all .2s}.cookbook-clear-day:hover{background:var(--color-error-bg, #fee2e2);color:var(--color-error, #dc2626)}.cookbook-mealplan-select-wrapper{margin-bottom:12px}.cookbook-mealplan-select-wrapper select{width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:13px;background:#fff;cursor:pointer}.cookbook-mealplan-select-wrapper select:focus{outline:none;border-color:var(--color-primary)}.cookbook-mealplan-recipe{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;margin-top:auto}.cookbook-mealplan-recipe img{width:100%;height:80px;object-fit:cover;border-radius:var(--radius-md)}.cookbook-mealplan-recipe-title{font-size:13px;font-weight:500;color:var(--color-primary);line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.cookbook-mealplan-recipe:hover .cookbook-mealplan-recipe-title{text-decoration:underline}.cookbook-recipe-actions{position:absolute;top:8px;right:8px;display:flex;gap:4px}.cookbook-mealplan-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}.cookbook-mealplan-recipe-item{position:relative;margin-bottom:8px;padding:8px;border-radius:var(--radius-md);border:1px solid var(--color-border-light);background:var(--color-surface)}.cookbook-recipe-mealtype-badge{position:absolute;top:-10px;left:8px;background:var(--color-primary);color:#fff;font-size:10px;padding:2px 6px;border-radius:var(--radius-full);z-index:1;display:flex;align-items:center;gap:4px}.cookbook-remove-recipe{position:absolute;top:4px;right:4px;background:#fffc;border:1px solid var(--color-border);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:12px;opacity:0;transition:opacity .2s}.cookbook-mealplan-recipe-item:hover .cookbook-remove-recipe{opacity:1}.cookbook-remove-recipe:hover{background:var(--color-error-bg);color:var(--color-error)}.cookbook-mealplan-add-wrapper{margin-bottom:12px}.cookbook-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.cookbook-modal-content{background:#fff;border-radius:var(--radius-lg);max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 10px 25px #0003}.cookbook-modal-header{padding:16px 24px;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.cookbook-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--color-muted)}.cookbook-modal-close:hover{color:var(--color-text)}.cookbook-modal-body{padding:24px}.cookbook-meal-type-buttons{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.cookbook-recipe-option{display:flex;gap:12px;padding:12px;border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:12px}.cookbook-recipe-option img{width:60px;height:60px;object-fit:cover;border-radius:var(--radius-sm)}.cookbook-recipe-info{flex:1}.cookbook-recipe-option h5{margin:0 0 4px;font-size:14px}.cookbook-recipe-meta{font-size:11px;color:var(--color-muted);margin-bottom:6px}.cookbook-meal-type-selection{display:flex;gap:6px;flex-wrap:wrap}.cookbook-folder-select{min-width:150px;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:14px;background:#fff;cursor:pointer}.cookbook-search-input{flex:1;min-width:200px;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:14px}.cookbook-search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #3b82f633}.cookbook-search-container{position:relative;flex:1;min-width:200px}.cookbook-recipe-filters{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap;align-items:center}.cookbook-recipe-filters .button{margin:0}.cookbook-recipe-filters>*{min-width:0}.cookbook-search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;cursor:pointer;color:var(--color-muted);width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:all .2s}.cookbook-search-clear:hover{background:var(--color-error-bg, #fee2e2);color:var(--color-error, #dc2626)}.cookbook-recipes-list{max-height:400px;overflow-y:auto;padding-right:8px}.cookbook-recipes-list::-webkit-scrollbar{width:6px}.cookbook-recipes-list::-webkit-scrollbar-track{background:var(--color-surface);border-radius:10px}.cookbook-recipes-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:10px}.cookbook-no-recipes-message{padding:16px;text-align:center;color:var(--color-muted);font-style:italic}.cookbook-custom-recipe-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--color-border)}.cookbook-custom-recipe-form{margin-top:12px;padding:16px;background:var(--color-surface);border-radius:var(--radius-md)}.cookbook-custom-recipe-form input,.cookbook-custom-recipe-form textarea{width:100%;margin-bottom:12px;padding:8px;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.cookbook-custom-recipe-form textarea{min-height:80px;resize:vertical}.cookbook-custom-recipes-list{margin-top:16px}.cookbook-custom-recipe-item{padding:8px 0;border-bottom:1px solid var(--color-border-light)}.cookbook-mealplan-recipes-container{flex-grow:1;min-height:0;overflow-y:auto;max-height:120px;padding-right:4px}.cookbook-mealplan-recipes-container::-webkit-scrollbar{width:6px}.cookbook-mealplan-recipes-container::-webkit-scrollbar-track{background:var(--color-surface);border-radius:10px}.cookbook-mealplan-recipes-container::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:10px}.cookbook-mealplan-actions{display:flex;align-items:center;gap:12px}.cookbook-folder-item.selected{background:var(--color-primary-bg);border:1px solid var(--color-primary)}.cookbook-folder-item .folder-icon{font-size:16px}.cookbook-folder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px}.cookbook-folder-header h4{margin:0;flex:1}.cookbook-all-sidebar{flex:0 0 280px;background:var(--color-surface);border-radius:var(--radius-lg);padding:24px;height:fit-content;position:sticky;top:24px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.cookbook-all-sidebar h4{margin:0 0 20px;font-size:1.1rem;font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:8px}.cookbook-new-folder-form{background:var(--color-bg);padding:16px;border-radius:var(--radius-md);border:1px solid var(--color-border);margin-bottom:20px}.cookbook-new-folder-form input{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:12px;font-size:14px;font-family:inherit}.cookbook-new-folder-form input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-bg)}.cookbook-new-folder-form .button-group{display:flex;gap:8px}.cookbook-folders-list-simple{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.cookbook-folder-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;background:#fff;border:1px solid var(--color-border);position:relative}.cookbook-folder-item:hover{transform:translate(4px);box-shadow:var(--shadow-sm);border-color:var(--color-primary)}.cookbook-folder-item.highlightable:hover{background:var(--color-primary-bg);border-color:var(--color-primary)}.cookbook-folder-item.selected{background:var(--color-primary-bg);border:1px solid var(--color-primary);box-shadow:var(--shadow-md)}.cookbook-folder-item .folder-icon{font-size:18px;flex-shrink:0}.cookbook-folder-item .folder-name{flex:1;font-weight:500;color:var(--color-text)}.cookbook-folder-item .folder-count{background:var(--color-muted-bg);color:var(--color-muted);padding:4px 10px;border-radius:var(--radius-full);font-size:.85rem;font-weight:500;min-width:24px;text-align:center}.cookbook-folder-item.highlightable .folder-count{background:var(--color-primary);color:#fff}.cookbook-all-content{flex:1;padding:0 24px}.cookbook-all-content h4{margin:0 0 24px;font-size:1.3rem;font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:12px}.cookbook-folder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:16px}.cookbook-folder-header h4{margin:0;flex:1;font-size:1.4rem;display:flex;align-items:center;gap:12px}.cookbook-folder-header .button-secondary{padding:10px 16px;font-weight:500}.cookbook-recipes-grid{gap:24px}.cookbook-recipe-wrapper.highlighted{outline:2px solid var(--color-primary);outline-offset:4px;border-radius:var(--radius-md);transform:scale(1.02);transition:all .2s ease}.cookbook-mealplan-day{background:#fff;border-radius:var(--radius-lg);padding:16px;border:1px solid var(--color-border);min-height:400px;display:flex;flex-direction:column}.cookbook-mealplan-recipes-container{flex-grow:1;min-height:0;overflow-y:auto;padding-right:4px}.cookbook-mealtype-section{margin-bottom:12px;padding:8px;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface-light, #f9fafb)}.cookbook-mealplan-recipe-item{position:relative;margin-bottom:8px;padding:8px;border-radius:var(--radius-md);border:1px solid var(--color-border-light);background:#fff;display:flex;align-items:center;gap:8px}.cookbook-recipe-mealtype-badge{position:static;background:var(--color-primary);color:#fff;font-size:10px;padding:2px 6px;border-radius:var(--radius-full);z-index:1;display:flex;align-items:center;gap:4px}.cookbook-remove-recipe{position:static;background:none;border:1px solid var(--color-border);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:12px;opacity:.7;transition:opacity .2s}.cookbook-mealplan-no-recipe{padding:8px 0;text-align:center;color:var(--color-muted);font-size:12px;font-style:italic}.cookbook-mealplan-table{display:grid;grid-template-columns:1fr repeat(4,1fr);gap:8px;margin-top:16px;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:#fff;box-shadow:0 1px 3px #0000001a}.cookbook-mealplan-table-header{display:contents;background:var(--color-primary);color:#fff;font-weight:600}.cookbook-mealplan-table-row{display:contents;border-top:1px solid var(--color-border)}.cookbook-mealplan-day-cell,.cookbook-mealplan-mealtype-cell{padding:12px;border-right:1px solid var(--color-border);min-height:120px;display:flex;flex-direction:column;background:#fff}.cookbook-mealplan-day-cell{background:var(--color-surface);display:flex;align-items:center;justify-content:space-between;font-weight:600}.cookbook-mealplan-day-cell,.cookbook-mealplan-mealtype-cell{padding:12px;border-right:1px solid var(--color-border);min-height:100px;display:flex;flex-direction:column}.cookbook-mealplan-day-cell:last-child,.cookbook-mealplan-mealtype-cell:last-child{border-right:none}.header-day,.header-mealtype{padding:12px;text-align:center;font-weight:600;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;gap:6px}.cookbook-mealplan-day-cell{background:var(--color-surface);display:flex;align-items:center;justify-content:space-between}.cookbook-mealplan-mealtype-cell{background:var(--color-surface-light, #f9fafb);position:relative;min-height:120px}.cookbook-mealplan-recipe-item{position:static;margin-bottom:8px;padding:8px;border-radius:var(--radius-md);border:1px solid var(--color-border-light);background:#fff;display:flex;align-items:center;gap:8px;width:100%;box-shadow:0 1px 2px #0000000d;transition:box-shadow .2s ease}.cookbook-mealplan-recipe-item:hover{box-shadow:0 2px 4px #0000001a}.cookbook-mealplan-recipe{display:flex;flex-direction:row;align-items:center;gap:8px;text-decoration:none;color:inherit;flex-grow:1}.cookbook-mealplan-recipe-title{font-size:12px;font-weight:500;color:var(--color-primary);line-height:1.3;margin:0;flex-grow:1}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#2a1f1566;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .3s ease-out}.modal-content--premium{background:var(--color-paper);width:100%;max-width:680px;max-height:90vh;border-radius:var(--radius-xl);padding:40px;box-shadow:var(--shadow-lg);position:relative;display:flex;flex-direction:column;border:1px solid var(--glass-border);animation:modalScaleIn .4s cubic-bezier(.175,.885,.32,1.275)}.modal-content--premium .glass-panel{background:var(--color-surface);border:1px solid var(--color-border);transition:all .3s ease}.modal-content--premium .glass-panel:hover{background:var(--color-paper);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalScaleIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-content--premium .stack::-webkit-scrollbar{width:6px}.modal-content--premium .stack::-webkit-scrollbar-track{background:transparent}.modal-content--premium .stack::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:10px}.modal-content--premium .stack::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}.cookbook-remove-recipe:hover{opacity:1;background:var(--color-error-bg);color:var(--color-error)}.cookbook-mealplan-add-wrapper{margin-bottom:12px;text-align:center}@media (max-width: 1024px){.cookbook-mealplan-table{display:block}.cookbook-mealplan-table-header,.cookbook-mealplan-table-row{display:flex;flex-wrap:wrap;border:1px solid var(--color-border);margin-bottom:8px;border-radius:var(--radius-md)}.cookbook-mealplan-day-cell,.cookbook-mealplan-mealtype-cell{flex:1;min-width:120px;border-right:1px solid var(--color-border)}.cookbook-mealplan-day-cell:last-child,.cookbook-mealplan-mealtype-cell:last-child{border-right:none}}@media (max-width: 768px){.cookbook-mealplan-day-cell,.cookbook-mealplan-mealtype-cell{min-width:100%;border-bottom:1px solid var(--color-border);border-right:none}.cookbook-mealplan-day-cell:not(:last-child),.cookbook-mealplan-mealtype-cell:not(:last-child){border-right:none}}.cookbook-mealplan-quick-actions{margin-bottom:24px;padding:16px;background:var(--color-surface);border-radius:var(--radius-md)}.cookbook-quick-add-section h4{margin:0 0 12px;font-size:16px}.cookbook-quick-add-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.cookbook-quick-add-controls select,.cookbook-quick-add-controls button{min-width:150px}.cookbook-mealplan-title-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.cookbook-mealplan-view-selector{display:flex;gap:8px;flex-wrap:wrap}.cookbook-mealplan-split-view{display:flex;gap:24px;margin-top:16px;min-height:500px}.cookbook-mealplan-days-panel{flex:0 0 200px;background:var(--color-surface);border-radius:var(--radius-md);padding:16px;height:fit-content}.cookbook-mealplan-days-list{list-style:none;padding:0;margin:0}.cookbook-mealplan-day-item{padding:12px;border-radius:var(--radius-md);margin-bottom:8px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background-color .2s}.cookbook-mealplan-day-item:hover{background:var(--color-surface-light)}.cookbook-mealplan-day-item.selected{background:var(--color-primary-bg);color:var(--color-primary);font-weight:500}.cookbook-day-progress{background:var(--color-surface-light);border-radius:var(--radius-full);padding:2px 8px;font-size:12px;font-weight:500}.cookbook-mealplan-details-panel{flex:1;background:#fff;border-radius:var(--radius-md);padding:16px;border:1px solid var(--color-border)}.cookbook-mealplan-day-details{width:100%}.cookbook-mealplan-day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.cookbook-mealplan-day-header h4{margin:0;font-size:18px}.cookbook-mealtype-section{margin-bottom:16px;padding:12px;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface-light, #f9fafb)}.cookbook-mealtype-header{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-weight:600;color:var(--color-text)}.cookbook-mealtype-icon{font-size:14px}.cookbook-mealtype-label{font-size:13px;text-transform:uppercase;letter-spacing:.5px}.cookbook-mealtype-content{min-height:60px}.cookbook-mealplan-no-selection{display:flex;align-items:center;justify-content:center;height:300px;color:var(--color-muted);font-style:italic}.cookbook-mealplan-progress-view{margin-top:16px}.cookbook-progress-summary{background:#fff;border-radius:var(--radius-md);padding:16px;margin-bottom:24px;border:1px solid var(--color-border)}.cookbook-progress-container{width:100%}.cookbook-progress-text{margin-bottom:8px;font-weight:500}.cookbook-progress-bar{width:100%;height:20px;background:var(--color-surface-light);border-radius:var(--radius-full);overflow:hidden}.cookbook-progress-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.cookbook-progress-day-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:16px;text-align:center}.cookbook-progress-day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.cookbook-progress-percentage{font-weight:600;color:var(--color-primary)}.cookbook-progress-bar-small{width:100%;height:10px;background:var(--color-surface-light);border-radius:var(--radius-full);margin-bottom:8px;overflow:hidden}.cookbook-progress-fill-small{height:100%;background:var(--color-primary);transition:width .3s ease}.cookbook-progress-status{font-size:12px;color:var(--color-muted);margin-bottom:12px}@media (max-width: 1024px){.cookbook-mealplan-split-view{flex-direction:column}.cookbook-mealplan-days-panel{flex:0 0 auto}.cookbook-mealplan-table{display:block}.cookbook-mealplan-table-header,.cookbook-mealplan-table-row{display:flex;flex-wrap:wrap;border:1px solid var(--color-border);margin-bottom:8px;border-radius:var(--radius-md)}.cookbook-mealplan-day-cell,.cookbook-mealplan-mealtype-cell{flex:1;min-width:120px;border-right:1px solid var(--color-border)}.cookbook-mealplan-day-cell:last-child,.cookbook-mealplan-mealtype-cell:last-child{border-right:none}}.cookbook-progress-bar-small-inline{width:40px;height:6px;background:var(--color-surface-light);border-radius:var(--radius-full);margin-right:8px;display:inline-block;vertical-align:middle;overflow:hidden}.cookbook-mealplan-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:16px}.cookbook-mealplan-title-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.cookbook-mealplan-view-selector{display:flex;gap:8px}.cookbook-mealplan-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cookbook-mealplan-combined-view{margin-top:16px}.cookbook-progress-summary{background:var(--color-surface-light);padding:16px;border-radius:var(--radius-md);margin-bottom:16px}.cookbook-weekly-progress-bar{margin-top:12px}.cookbook-progress-container{display:flex;flex-direction:column;gap:8px}.cookbook-progress-text{font-size:.9rem;color:var(--color-text-secondary)}.cookbook-progress-bar{width:100%;height:8px;background:var(--color-surface);border-radius:var(--radius-full);overflow:hidden}.cookbook-progress-fill{height:100%;background:var(--color-primary);transition:width .3s ease}.cookbook-mealplan-split-view{display:flex;gap:16px;min-height:400px}.cookbook-mealplan-days-panel{flex:0 0 200px;background:var(--color-surface-light);border-radius:var(--radius-md);padding:16px}.cookbook-mealplan-days-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.cookbook-mealplan-day-item{padding:12px;border-radius:var(--radius-sm);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background-color .2s ease}.cookbook-mealplan-day-item:hover{background:var(--color-surface)}.cookbook-mealplan-day-item.selected{background:var(--color-primary-light);color:var(--color-primary)}.cookbook-day-name{font-weight:600}.cookbook-day-progress{display:flex;align-items:center;gap:4px}.cookbook-progress-bar-small-inline{width:40px;height:6px;background:var(--color-surface);border-radius:var(--radius-full);overflow:hidden;display:inline-block;vertical-align:middle}.cookbook-progress-fill-small-inline{height:100%;background:var(--color-success, #10b981);transition:width .3s ease}.cookbook-day-count{font-size:.8rem;color:var(--color-text-secondary)}.cookbook-mealplan-details-panel{flex:1;background:var(--color-surface-light);border-radius:var(--radius-md);padding:16px;min-height:400px}.cookbook-mealplan-day-details{display:flex;flex-direction:column;gap:16px}.cookbook-mealplan-day-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.cookbook-mealtype-section{display:flex;flex-direction:column;gap:8px;padding:12px 0;border-bottom:1px solid var(--color-border-light)}.cookbook-mealtype-section:last-child{border-bottom:none}.cookbook-mealtype-header{display:flex;align-items:center;gap:8px;font-weight:600}.cookbook-mealtype-icon{font-size:1.2rem}.cookbook-mealtype-content{padding-left:20px}.cookbook-mealplan-recipe-item{display:flex;align-items:center;gap:12px;padding:8px;background:var(--color-surface);border-radius:var(--radius-sm);margin-bottom:8px}.cookbook-mealplan-recipe{display:flex;align-items:center;gap:8px;flex:1;text-decoration:none;color:var(--color-text)}.cookbook-mealplan-recipe img{width:40px;height:40px;object-fit:cover;border-radius:var(--radius-sm)}.cookbook-mealplan-recipe-title{flex:1;font-size:.9rem}.cookbook-remove-recipe{background:none;border:1px solid var(--color-error);color:var(--color-error);width:24px;height:24px;border-radius:var(--radius-full);cursor:pointer;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.cookbook-remove-recipe:hover{background:var(--color-error);color:#fff}.cookbook-mealplan-no-selection{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-secondary)}.cookbook-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.cookbook-modal{background:#fff;border-radius:var(--radius-lg);max-width:600px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 10px 25px #0003}.cookbook-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--color-border)}.cookbook-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-secondary)}.cookbook-modal-body{padding:16px}.cookbook-search-container{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.cookbook-search-input{flex:1;min-width:200px;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md)}.cookbook-folder-dropdown{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff}.cookbook-custom-recipe-form{margin-bottom:16px;padding:16px;background:var(--color-surface-light);border-radius:var(--radius-md)}.cookbook-custom-recipe-form h4{margin-top:0;margin-bottom:12px}.cookbook-custom-recipe-form form{display:flex;gap:8px;flex-wrap:wrap}.cookbook-custom-recipe-form input{flex:1;min-width:200px;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md)}.cookbook-custom-recipe-form button{padding:8px 16px;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;cursor:pointer}.cookbook-recipe-list{max-height:300px;overflow-y:auto}.cookbook-recipe-item{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);margin-bottom:8px}.cookbook-recipe-info{display:flex;align-items:center;gap:12px;flex:1}.cookbook-recipe-info img{width:40px;height:40px;object-fit:cover;border-radius:var(--radius-sm)}.cookbook-recipe-info div{flex:1}.cookbook-recipe-info h5{margin:0 0 4px;font-size:.95rem}.cookbook-recipe-folder{font-size:.8rem;color:var(--color-text-secondary);background:var(--color-surface);padding:2px 6px;border-radius:var(--radius-full)}.button.button-danger{background:var(--color-error, #ef4444);color:#fff;border:none}.button.button-danger:hover{background:var(--color-error-dark, #dc2626)}.hero-split{display:grid;grid-template-columns:1fr;min-height:auto;padding:0;gap:0;background:var(--color-bg);border-radius:24px;overflow:hidden;border:1px solid var(--color-border)}@media (min-width: 992px){.hero-split{grid-template-columns:1.2fr 1fr;min-height:560px}}.hero-split-left{padding:60px 40px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-bg) 100%);position:relative}.hero-split-right{position:relative;min-height:300px;background:#e0e0e0;overflow:hidden}.hero-split-image{width:100%;height:100%;object-fit:cover;transition:transform 1.5s cubic-bezier(.2,.8,.2,1)}.hero-split:hover .hero-split-image{transform:scale(1.05)}.hero-badge{display:inline-block;padding:6px 14px;background:var(--color-accent);color:#fff;border-radius:var(--radius-full);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:24px;box-shadow:0 4px 12px #c9a22740}.hero-split-title{font-size:clamp(36px,6vw,64px);line-height:.95;margin:0;color:var(--color-ink);letter-spacing:-.04em}.hero-split-subtitle{font-size:18px;margin-top:24px;max-width:45ch;line-height:1.6}.category-tray-container{margin:40px 0;padding:20px 0;overflow-x:auto;-webkit-overflow-scrolling:touch}.category-tray{display:flex;gap:32px;padding:10px;min-width:min-content}.bubble-nav-item{display:flex;flex-direction:column;align-items:center;gap:16px;text-decoration:none;color:inherit;width:110px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.bubble-nav-item:hover{transform:translateY(-8px)}.bubble-image-wrapper{width:100px;height:100px;border-radius:50%;overflow:hidden;background:var(--color-surface-variant);border:3px solid white;box-shadow:0 8px 16px var(--color-shadow);transition:box-shadow .3s ease}.bubble-nav-item:hover .bubble-image-wrapper{box-shadow:0 12px 24px #8b6b4a33}.bubble-image-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--color-surface-variant),white);display:flex;align-items:center;justify-content:center;font-size:24px}.bubble-label{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.05em;text-align:center}.foundation-section{background:#fdfaf3;padding:80px 0;margin:60px 0;position:relative}.foundation-section:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-border),transparent)}.foundation-section:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-border),transparent)}.foundation-content{display:grid;grid-template-columns:1fr;gap:40px}@media (min-width: 992px){.foundation-content{grid-template-columns:320px 1fr}}.foundation-intro h2{font-size:42px;margin-bottom:16px;letter-spacing:-.03em}.foundation-intro p{font-size:16px;line-height:1.7;color:var(--color-muted)}.glass-overlay{position:absolute;bottom:24px;left:24px;right:24px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffffbf;border:1px solid rgba(255,255,255,.3);padding:24px;border-radius:16px;box-shadow:0 12px 32px #0000001a;transform:translateY(0);transition:transform .3s ease,background .3s ease}.glass-pill{display:inline-flex;padding:4px 12px;background:#c9a22726;color:var(--color-accent);border-radius:var(--radius-full);font-size:11px;font-weight:700;margin-bottom:8px}.home-page .section-title{text-align:center;display:block;margin-bottom:40px}.home-page .section-title:after{left:50%;transform:translate(-50%)}.recipe-card--immersive{padding:0!important;height:480px;display:flex!important;flex-direction:column;justify-content:flex-end;border:none!important;position:relative;overflow:hidden;border-radius:24px}.recipe-card--immersive .recipe-card-image{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;border-radius:0;transition:transform 1.2s cubic-bezier(.2,.8,.2,1);object-fit:cover}.recipe-card--immersive:hover .recipe-card-image{transform:scale(1.08)}.recipe-card--immersive .recipe-card-body{position:relative;z-index:2;margin:24px;padding:32px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#ffffffb8;border-radius:20px;border:1px solid rgba(255,255,255,.4);box-shadow:0 16px 48px #0000001f;transition:all .4s cubic-bezier(.4,0,.2,1)}.recipe-card--immersive:hover .recipe-card-body{background:#ffffffd9;transform:translateY(-8px);box-shadow:0 24px 64px #0000002e}.recipe-card--immersive .recipe-card-title{font-size:24px!important;margin-bottom:12px!important}.recipe-card--immersive .recipe-card-meta{font-size:14px!important;opacity:.8}.philosophy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:24px;margin-top:40px}.philosophy-card{background:#fff;padding:32px 24px;border-radius:20px;text-align:center;border:1px solid var(--color-border);transition:all .3s ease}.philosophy-card:hover{transform:translateY(-8px);border-color:var(--color-accent);box-shadow:0 12px 32px var(--color-shadow)}.philosophy-icon{font-size:32px;margin-bottom:16px;display:block}.philosophy-card h4{margin:0 0 12px;color:var(--color-primary);font-size:16px;text-transform:uppercase;letter-spacing:.05em}.philosophy-card p{font-size:14px;line-height:1.5;color:var(--color-muted);margin:0}.heritage-section{background:#fdf9f3;padding:100px 0;margin:80px 0;text-align:center;position:relative;overflow:hidden}.heritage-section:before{content:'"';position:absolute;top:40px;left:50%;transform:translate(-50%);font-size:120px;font-family:serif;color:var(--color-accent);opacity:.1}.heritage-content{max-width:800px;margin:0 auto;position:relative;z-index:1}.heritage-content h2{font-size:48px;margin-bottom:32px;letter-spacing:-.02em}.heritage-content p{font-size:19px;line-height:1.8;color:var(--color-text);font-style:italic;opacity:.9}.tips-grid{display:grid;grid-template-columns:1fr;gap:40px;margin-top:40px}@media (min-width: 768px){.tips-grid{grid-template-columns:1fr 1fr}}.tip-card{display:flex;gap:24px;align-items:flex-start;padding:32px;background:#fff;border-radius:24px;border:1px solid var(--color-border)}.tip-number{font-size:48px;font-weight:800;color:var(--color-accent);opacity:.3;line-height:1}.tip-content h4{margin:0 0 12px;font-size:20px}.tip-content p{color:var(--color-muted);line-height:1.6;margin:0}.journey-section{padding:80px 0;text-align:center}.journey-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;margin-top:60px}.journey-step{position:relative}.journey-step-number{width:48px;height:48px;background:var(--color-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;margin:0 auto 24px;box-shadow:0 4px 12px #a0452e4d}.journey-step h4{margin-bottom:12px}.journey-step p{color:var(--color-muted);font-size:15px}.recipe-detail--premium{--recipe-accent: #A0452E;--recipe-bg-warm: #FDF9F3}.recipe-hero--premium{position:relative;padding:100px 0;margin-bottom:60px;background:var(--color-ink);color:#fff;overflow:hidden;border-radius:0 0 40px 40px}.recipe-hero-image-bg{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.4;object-fit:cover;width:100%;height:100%}.recipe-hero-content{position:relative;z-index:2;text-align:center;max-width:1000px;margin:0 auto;padding:0 20px}.recipe-hero-title{font-size:clamp(32px,6vw,64px);color:#fff;margin-bottom:24px;line-height:1.1;font-weight:800}.recipe-quick-info{display:inline-flex;gap:40px;padding:16px 40px;background:#ffffff1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:8px;border:1px solid rgba(255,255,255,.2);margin-top:32px;flex-wrap:wrap;justify-content:center}.info-item{display:flex;align-items:center;gap:10px;font-weight:600;font-size:15px;color:#fff}.info-item svg{color:var(--color-accent)}.recipe-main-layout{display:grid;grid-template-columns:360px 1fr;gap:60px;align-items:start}@media (max-width: 1024px){.recipe-main-layout{grid-template-columns:1fr;gap:40px}}.ingredients-sidebar--premium{position:sticky;top:100px;background:#fff;padding:32px;border-radius:32px;box-shadow:0 20px 60px var(--color-shadow);border:1px solid var(--color-border)}.ingredient-item{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid rgba(0,0,0,.06);cursor:pointer;transition:all .2s ease}.ingredient-item:last-child{border-bottom:none}.ingredient-item.checked{opacity:.4}.ingredient-name{font-weight:600;font-size:1.05rem;line-height:1.4}.ingredient-meta{font-size:.9rem;color:var(--color-muted);margin-top:4px}.instruction-step{display:flex;gap:32px;margin-bottom:56px;position:relative}.step-number-pill{width:52px;height:52px;background:var(--color-primary);color:#fff;border-radius:18px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;flex-shrink:0;box-shadow:0 8px 20px #a0452e40}.step-text{font-size:1.25rem;line-height:1.8;color:var(--color-text);margin-bottom:20px}.chef-note-box{background:#c9a2270a;border-radius:20px;padding:32px;border:1px dashed var(--color-accent);margin-top:40px}.interaction-ribbon-wrapper{position:fixed;bottom:0;left:0;right:0;padding:32px;display:flex;justify-content:center;z-index:1000;pointer-events:none}.interaction-ribbon{pointer-events:auto;background:#2a1f15f2;-webkit-backdrop-filter:blur(24px) saturate(1.8);backdrop-filter:blur(24px) saturate(1.8);border:1px solid rgba(255,255,255,.12);border-radius:16px;display:flex;align-items:center;gap:12px;padding:10px;box-shadow:0 30px 60px #0006,0 0 0 1px #ffffff0d;animation:ribbon-slide-up .8s cubic-bezier(.16,1,.3,1)}@keyframes ribbon-slide-up{0%{transform:translateY(100px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.ribbon-btn{background:transparent;border:none;color:#ffffffb3;display:flex;align-items:center;gap:10px;padding:12px 20px;border-radius:8px;font-weight:700;font-size:.9rem;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);white-space:nowrap}.ribbon-btn:hover{background:#ffffff14;color:#fff;transform:translateY(-2px)}.ribbon-btn.active{background:var(--color-primary);color:#fff;box-shadow:0 8px 20px #b5422c4d}.ribbon-btn svg{transition:transform .2s ease}.ribbon-btn:active svg{transform:scale(.85)}.ribbon-divider{width:1px;height:24px;background:#ffffff26;margin:0 4px}.ribbon-btn-icon-only{padding:12px;aspect-ratio:1;justify-content:center}.servings-control--premium{display:flex;align-items:center;gap:16px;background:#ffffff0d;padding:6px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.servings-btn{background:transparent;border:none;color:#fff;font-size:20px;cursor:pointer;opacity:.6;transition:opacity .2s}.servings-btn:hover{opacity:1}.custom-cb{width:22px;height:22px;border:2px solid var(--color-primary);border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;transition:all .2s}.ingredient-item.checked .custom-cb{background:var(--color-primary)}.cross-nav-sidebar-scrollable::-webkit-scrollbar{width:6px}.cross-nav-sidebar-scrollable::-webkit-scrollbar-track{background:transparent}.cross-nav-sidebar-scrollable::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:10px}.cross-nav-sidebar-scrollable::-webkit-scrollbar-thumb:hover{background:var(--color-muted)}.cross-nav-sidebar-scrollable{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.pantry-card{background:#fff;border-radius:32px;overflow:hidden;box-shadow:0 4px 20px #00000008;transition:all .4s cubic-bezier(.175,.885,.32,1.275);cursor:pointer;border:4px solid transparent;position:relative}.pantry-card:hover{transform:translateY(-12px) scale(1.02);box-shadow:0 20px 40px #b5422c14}.pantry-card.active{border-color:var(--color-primary);background:#b5422c05}.pantry-card-visual{height:200px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.pantry-icon-overlay{background:#b5422c1a;color:var(--color-primary);padding:24px;border-radius:50%;transition:.3s}.pantry-card.active .pantry-icon-overlay{background:var(--color-primary);color:#fff}.pantry-tag-label{position:absolute;top:16px;right:16px;background:#0006;color:#fff;padding:6px 14px;border-radius:20px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pantry-card-content{padding:24px;text-align:center}.pantry-card-content h3{margin:0 0 8px;font-weight:900;text-transform:capitalize}.pantry-card-content p{font-size:.9rem;opacity:.6;margin:0}.pantry-cart-launcher{position:fixed;bottom:0;left:0;width:100%;padding:40px;pointer-events:none;z-index:1000;display:flex;justify-content:center}.pantry-cart-pills{pointer-events:auto;background:#1a1a1a;color:#fff;padding:16px 32px;border-radius:40px;display:flex;align-items:center;gap:32px;box-shadow:0 20px 50px #0000004d;animation:slideInUp .6s cubic-bezier(.23,1,.32,1)}@keyframes slideInUp{0%{transform:translateY(100%) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.cart-icon-bg{position:relative;width:56px;height:56px;background:var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center}.cart-badge{position:absolute;top:-6px;right:-6px;background:#fff;color:#000;width:24px;height:24px;border-radius:50%;font-size:.75rem;font-weight:900;display:flex;align-items:center;justify-content:center}.selected-items-row{display:flex;gap:8px;align-items:center}.mini-chip{background:#ffffff1a;padding:6px 14px;border-radius:12px;font-size:.85rem;font-weight:600;display:flex;align-items:center;gap:8px}.mini-chip svg{cursor:pointer}.pantry-launch-btn{background:#fff;color:#000;border:none;padding:14px 28px;border-radius:20px;font-weight:800;display:flex;align-items:center;gap:12px;cursor:pointer;transition:.2s}.pantry-launch-btn:hover{background:var(--color-primary);color:#fff}.pantry-hub--premium{background:var(--color-bg);min-height:100vh}.ingredient-grid-layout{display:flex;flex-direction:column;gap:var(--gap-lg)}.ingredient-masonry{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:32px}.pantry-card{background:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;border:1px solid var(--color-border);transition:all .4s cubic-bezier(.165,.84,.44,1);position:relative;display:flex;flex-direction:column}.pantry-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.pantry-card.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 20px 40px #a0452e33}.pantry-card-visual{height:140px;background:#00000008;display:flex;align-items:center;justify-content:center;position:relative}.pantry-icon-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;transition:.3s}.pantry-card.active .pantry-icon-overlay{background:#a0452e33}.pantry-tag-label{position:absolute;bottom:12px;right:12px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;opacity:.1}.pantry-card-content{padding:24px}.pantry-card-content h3{margin:0 0 8px;font-size:1.4rem;font-weight:800}.pantry-card.active .pantry-card-content h3,.pantry-card.active .pantry-card-content p{color:#fff}.pantry-card-content p{margin:0;font-size:.9rem;opacity:.7}.pantry-cart-launcher{position:fixed;bottom:40px;left:0;right:0;z-index:1000;display:flex;justify-content:center;padding:0 40px;animation:pantry-slide-up .5s cubic-bezier(.175,.885,.32,1.275)}@keyframes pantry-slide-up{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}.pantry-cart-pills{background:#2a1f15f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:16px 32px;border-radius:var(--radius-xl);display:flex;align-items:center;gap:32px;color:#fff;border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 80px #0000004d}.cart-icon-bg{position:relative;width:56px;height:56px;background:var(--color-primary);border-radius:20px;display:flex;align-items:center;justify-content:center}.cart-badge{position:absolute;top:-8px;right:-8px;background:#fff;color:var(--color-primary);font-weight:900;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;box-shadow:0 4px 10px #0003}.selected-items-row{display:flex;gap:12px;max-width:400px;overflow:hidden}.mini-chip{padding:8px 16px;background:#ffffff1a;border-radius:12px;font-size:.9rem;font-weight:700;white-space:nowrap;display:flex;align-items:center;gap:8px}.mini-chip svg{cursor:pointer;opacity:.6}.mini-chip svg:hover{opacity:1}.pantry-launch-btn{background:#fff;color:var(--color-ink);padding:16px 32px;border-radius:18px;font-weight:800;border:none;cursor:pointer;display:flex;align-items:center;gap:12px;transition:all .3s}.pantry-launch-btn:hover{transform:scale(1.05);background:var(--color-accent)}.pantry-preview-stack{display:flex;flex-direction:column;gap:0;width:100%}.pantry-preview-stack>div{width:100%;transition:all .4s ease}.pantry-preview-stack:hover>div{transform:rotate(0) translateY(0)!important}@media (max-width: 991px){.recipes-page--premium .stack[style*="gridTemplateColumns: repeat(3, 1fr)"]{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 768px){.recipes-page--premium .stack[style*="gridTemplateColumns: repeat(3, 1fr)"]{grid-template-columns:1fr!important}.pantry-cart-pills{padding:12px 20px;gap:16px;width:100%}.selected-items-row{display:none}.pantry-launch-btn{padding:12px 20px;font-size:.85rem}}.admin-table.dense td{padding:10px 16px;border-bottom:1px solid rgba(0,0,0,.03);vertical-align:middle}.mini-admin-pill{padding:3px 8px;background:#0000000d;border-radius:6px;font-size:.7rem;font-weight:700;color:var(--color-ink);text-transform:uppercase}.mini-admin-pill.blue{background:#007aff1a;color:#007aff}.admin-status-badge{padding:4px 10px;border-radius:8px;background:var(--color-primary-100);color:var(--color-primary);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.admin-btn-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;border:1px solid var(--admin-border);background:#fff;color:var(--admin-text-muted);transition:all .2s;cursor:pointer}.admin-btn-icon:hover{background:var(--admin-bg);color:var(--admin-primary);border-color:var(--admin-primary);transform:translateY(-1px)}.admin-btn-icon.danger:hover{background:#fff5f5;color:#e03131;border-color:#ffa8a8}.page-btn{min-width:40px;height:36px;padding:0 12px;border-radius:8px;border:1px solid var(--admin-border);background:#fff;font-size:.85rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.page-btn:hover:not(:disabled){border-color:var(--admin-primary);color:var(--admin-primary);background:var(--admin-bg)}.page-btn.active{background:var(--admin-primary);color:#fff;border-color:var(--admin-primary)}.page-btn:disabled{opacity:.3;cursor:not-allowed}
