:root{--CulinSpark-terracotta: #E27D60;--CulinSpark-zimt-orange: #E8A87C;--CulinSpark-cremiges-beige: #F9F5E3;--CulinSpark-karamellbraun: #85604D;--CulinSpark-olivgruen: #5C7b69;--CulinSpark-primary: var(--CulinSpark-terracotta);--CulinSpark-secondary: var(--CulinSpark-karamellbraun);--CulinSpark-accent: var(--CulinSpark-zimt-orange);--CulinSpark-background: var(--CulinSpark-cremiges-beige);--CulinSpark-icon: var(--CulinSpark-olivgruen);--CulinSpark-text: #2A2D34;--CulinSpark-light-text: white;--CulinSpark-success-color: #78A499;--CulinSpark-error-color: #DD6E6E;--CulinSpark-warning-color: #E9B949;--CulinSpark-navbar-bg: var(--CulinSpark-terracotta);--CulinSpark-dropdown-bg: var(--CulinSpark-cremiges-beige);--CulinSpark-card-bg: #FFFFFF;--CulinSpark-hover-effect: rgba(232, 168, 124, .15);--CulinSpark-box-shadow: 0 2px 8px rgba(133, 96, 77, .15);--CulinSpark-card-shadow: 0 4px 12px rgba(133, 96, 77, .12)}html,body{height:100%;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}body{background-color:var(--CulinSpark-background);color:var(--CulinSpark-text)}h1,h2,h3{color:var(--CulinSpark-secondary)}.welcome-view{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:2rem}.welcome-title{font-size:2.5rem;margin-bottom:1rem;color:var(--CulinSpark-primary)}.welcome-description{font-size:1.2rem;margin-bottom:2rem;color:var(--CulinSpark-secondary)}.primary-button{background-color:var(--CulinSpark-primary);color:var(--CulinSpark-light-text);border:none;padding:.75rem 1.5rem;border-radius:4px;font-weight:500;cursor:pointer;transition:background-color .2s}.primary-button:hover{background-color:var(--CulinSpark-accent);box-shadow:var(--CulinSpark-box-shadow)}.secondary-button{background-color:transparent;color:var(--CulinSpark-primary);border:1px solid var(--CulinSpark-primary);padding:.75rem 1.5rem;border-radius:4px;font-weight:500;cursor:pointer;transition:all .2s}.secondary-button:hover{background-color:var(--CulinSpark-hover-effect);border-color:var(--CulinSpark-accent);color:var(--CulinSpark-accent)}.content-container{max-width:1200px;margin:0 auto;padding:1rem}.debug-info{margin-top:2rem;padding:1rem;background-color:#f3f3f3;border:1px solid #ddd;border-radius:4px}@media(max-width:768px){.hidden-mobile{display:none!important}}.native-input{width:100%;padding:.85rem 1rem;border-radius:8px;border:1px solid rgba(133,96,77,.2);background-color:#fff;color:var(--CulinSpark-text);font-size:1rem;box-sizing:border-box;margin-bottom:1.2rem;outline:none;transition:border-color .2s,box-shadow .2s}.native-input:focus{border-color:var(--CulinSpark-terracotta);box-shadow:0 0 0 3px #e27d6026}.native-button{width:100%;padding:.85rem 1rem;border-radius:8px;border:none;background-color:var(--CulinSpark-primary);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s;margin-top:.5rem;margin-bottom:1.5rem}.native-button:hover{background-color:var(--CulinSpark-accent)}.native-button:active{transform:scale(.98)}.login-view,.register-view{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 64px);width:100%;padding:2rem;box-sizing:border-box}@keyframes steamPulse{0%{transform:translateY(0) scale(1);opacity:.6}50%{transform:translateY(-4px) scale(1.05);opacity:.95}to{transform:translateY(0) scale(1);opacity:.6}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.steaming-pot{animation:steamPulse 2.2s infinite ease-in-out}.CulinSpark-card{transition:transform .25s cubic-bezier(.175,.885,.32,1.275),box-shadow .25s ease!important;animation:fadeInScale .4s ease-out}.CulinSpark-card:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 12px 24px #85604d33!important}.custom-error-view{animation:fadeInScale .5s ease-out}html[theme~=dark],[theme~=dark],.dark-theme{--CulinSpark-cremiges-beige: #1A1816;--CulinSpark-background: #1A1816;--CulinSpark-card-bg: #24201C;--CulinSpark-text: #ECE5D8;--CulinSpark-secondary: #D4B2A0;--CulinSpark-dropdown-bg: #2C2621;--CulinSpark-hover-effect: rgba(232, 168, 124, .25);--CulinSpark-box-shadow: 0 2px 8px rgba(0, 0, 0, .4);--CulinSpark-card-shadow: 0 4px 12px rgba(0, 0, 0, .35);--lumo-base-color: #1A1816;--lumo-body-text-color: #ECE5D8;--lumo-header-text-color: #D4B2A0;--lumo-contrast-10pct: rgba(212, 178, 160, .15);--lumo-contrast-20pct: rgba(212, 178, 160, .25);--lumo-contrast-30pct: rgba(212, 178, 160, .35)}html[theme~=dark] vaadin-card,.dark-theme vaadin-card{background-color:var(--CulinSpark-card-bg)}html[theme~=dark] .native-input,.dark-theme .native-input{background-color:#24201c;color:#ece5d8;border-color:#d4b2a040}.admin-glass-panel{background:#ffffffa6!important;backdrop-filter:blur(16px) saturate(180%)!important;-webkit-backdrop-filter:blur(16px) saturate(180%)!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 8px 32px #85604d14!important;border-radius:12px!important;transition:transform .25s ease,box-shadow .25s ease!important}html[theme~=dark] .admin-glass-panel,.dark-theme .admin-glass-panel{background:#24201cb3!important;border:1px solid rgba(212,178,160,.15)!important;box-shadow:0 8px 32px #0000004d!important}.admin-glass-panel:hover{transform:translateY(-4px) scale(1.005);box-shadow:0 12px 36px #e27d6026!important}.stats-card-premium{display:flex!important;align-items:center!important;padding:18px!important;background:#fff;border-radius:12px;border:1px solid #E8ECF0;box-shadow:0 4px 12px #85604d14;transition:all .25s cubic-bezier(.175,.885,.32,1.275)}html[theme~=dark] .stats-card-premium,.dark-theme .stats-card-premium{background:#24201c;border-color:#d4b2a026;box-shadow:0 4px 12px #00000040}.stats-card-premium:hover{transform:translateY(-5px);border-color:var(--CulinSpark-terracotta);box-shadow:0 12px 24px #e27d6033}@keyframes pulse-ring{0%{transform:scale(.95);opacity:.5}50%{transform:scale(1.1);opacity:.9}to{transform:scale(.95);opacity:.5}}.alert-pulse-icon{animation:pulse-ring 2s infinite ease-in-out;color:#c0392b!important}.matrix-grid-cell{display:flex!important;align-items:center!important;justify-content:center!important}@keyframes steam-rise{0%{transform:translateY(0) scaleX(1);opacity:0}15%{opacity:.6}50%{transform:translateY(-20px) scaleX(1.3);opacity:.3}to{transform:translateY(-40px) scaleX(.8);opacity:0}}.steam-bubble{position:absolute;background:#ffffff40;border-radius:50%;animation:steam-rise 3s infinite ease-out}html[theme~=dark] .steam-bubble,.dark-theme .steam-bubble{background:#ece5d826}html[theme~=cinnamon-cozy],[theme~=cinnamon-cozy],.cinnamon-cozy-theme{--CulinSpark-cremiges-beige: #12100E;--CulinSpark-background: #12100E;--CulinSpark-card-bg: #1B1714;--CulinSpark-text: #F4EBE1;--CulinSpark-primary: #E27D60;--CulinSpark-secondary: #E8A87C;--CulinSpark-accent: #D96A4B;--CulinSpark-box-shadow: 0 4px 15px rgba(226, 125, 96, .15);--CulinSpark-card-shadow: 0 8px 24px rgba(0, 0, 0, .5);--lumo-base-color: #12100E;--lumo-body-text-color: #F4EBE1}html[theme~=forest-hearth],[theme~=forest-hearth],.forest-hearth-theme{--CulinSpark-cremiges-beige: #101512;--CulinSpark-background: #101512;--CulinSpark-card-bg: #16201B;--CulinSpark-text: #E5EDE9;--CulinSpark-primary: #5C7b69;--CulinSpark-secondary: #A3C9A8;--CulinSpark-accent: #4B6856;--CulinSpark-box-shadow: 0 4px 15px rgba(92, 123, 105, .15);--CulinSpark-card-shadow: 0 8px 24px rgba(0, 0, 0, .5);--lumo-base-color: #101512;--lumo-body-text-color: #E5EDE9}html[theme~=espresso-dark],[theme~=espresso-dark],.espresso-dark-theme{--CulinSpark-cremiges-beige: #0D0A08;--CulinSpark-background: #0D0A08;--CulinSpark-card-bg: #1A1410;--CulinSpark-text: #F5EFEB;--CulinSpark-primary: #85604D;--CulinSpark-secondary: #D4B2A0;--CulinSpark-accent: #6E4D3E;--CulinSpark-box-shadow: 0 4px 15px rgba(133, 96, 77, .15);--CulinSpark-card-shadow: 0 8px 24px rgba(0, 0, 0, .5);--lumo-base-color: #0D0A08;--lumo-body-text-color: #F5EFEB}.sous-chef-overlay{background:#12100ee6!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;border-radius:16px;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px #0009;padding:30px;animation:fadeInScale .4s cubic-bezier(.165,.84,.44,1)}.xp-progress-bar-container{width:100%;background:#0003;border-radius:20px;padding:4px;box-sizing:border-box;border:1px solid rgba(212,178,160,.15)}.xp-progress-bar-fill{height:14px;background:linear-gradient(90deg,var(--CulinSpark-primary),var(--CulinSpark-secondary));border-radius:10px;transition:width .8s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px #e27d6066}@keyframes heart-explode{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.4);opacity:1}to{transform:scale(1);opacity:0}}.heart-splash-animation{position:absolute;font-size:40px;color:#dd6e6e;animation:heart-explode .6s cubic-bezier(.175,.885,.32,1.275) forwards;pointer-events:none}.odometer-digit{transition:transform .6s cubic-bezier(.19,1,.22,1)}.mixing-pot-drawer{background:#e27d6014!important;border:2px dashed rgba(226,125,96,.3)!important;border-radius:16px;padding:20px;transition:background-color .3s ease,border-color .3s ease}.mixing-pot-drawer.active-drag{background:#e27d602e!important;border-color:var(--CulinSpark-primary)!important}.vibe-selector-container{margin-top:15px;display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:12px 20px;background:#fff6;backdrop-filter:blur(8px);border-radius:12px;border:1px solid rgba(133,96,77,.1);box-shadow:0 4px 10px #85604d0d}html[theme~=dark] .vibe-selector-container,.dark-theme .vibe-selector-container{background:#24201c66;border-color:#d4b2a01a}.vibe-selector-title{font-weight:600;font-size:.95rem;color:var(--CulinSpark-secondary)}.vibe-chips{display:flex;gap:10px}.vibe-chip{padding:6px 14px;border-radius:20px;background:#fff;border:1px solid rgba(133,96,77,.15);color:var(--CulinSpark-text);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .25s cubic-bezier(.175,.885,.32,1.275);user-select:none;box-shadow:0 2px 4px #00000005}html[theme~=dark] .vibe-chip,.dark-theme .vibe-chip{background:#24201c;border-color:#d4b2a026}.vibe-chip:hover{transform:translateY(-2px);border-color:var(--CulinSpark-primary);box-shadow:0 4px 8px #e27d6026}.vibe-chip.active{background:var(--CulinSpark-primary)!important;color:#fff!important;border-color:var(--CulinSpark-primary)!important;box-shadow:0 4px 12px #e27d6066!important}.fridge-section{padding:20px;border-radius:12px;background:#ffffff80;border:1px dashed rgba(133,96,77,.25);margin-bottom:25px;display:flex;flex-direction:column;gap:12px}html[theme~=dark] .fridge-section,.dark-theme .fridge-section{background:#24201c80;border-color:#d4b2a033}.fridge-title{margin:0;font-size:1.15rem;color:var(--CulinSpark-primary);display:flex;align-items:center;gap:8px}.fridge-desc{margin:0;font-size:.85rem;color:var(--CulinSpark-secondary);line-height:1.4}.fridge-input{margin:0!important}.add-fridge-ingredient-button{background-color:var(--CulinSpark-primary)!important;color:#fff!important;border-radius:8px!important;font-weight:700!important;font-size:1.2rem!important;min-width:44px!important;height:44px!important;padding:0!important}.fridge-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px}.fridge-tag-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:15px;background:#e27d601f;border:1px solid rgba(226,125,96,.3);color:var(--CulinSpark-text);font-size:.85rem;font-weight:500;animation:fadeInScale .2s cubic-bezier(.175,.885,.32,1.275)}html[theme~=dark] .fridge-tag-chip,.dark-theme .fridge-tag-chip{background:#e27d6033;border-color:#e27d6066}.remove-tag{cursor:pointer;font-weight:700;font-size:1rem;color:var(--CulinSpark-primary);transition:transform .15s ease;display:inline-block;line-height:1}.remove-tag:hover{transform:scale(1.3)}@keyframes swirl{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fridge-mixing-bowl{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;background:#85604d0d;border:1px solid rgba(133,96,77,.1);margin-top:5px}.fridge-mixing-bowl.mixing .bowl-icon{animation:swirl 1.5s infinite linear;display:inline-block}.bowl-icon{font-size:1.4rem}.bowl-text{font-size:.85rem;font-weight:600;color:var(--CulinSpark-secondary)}.recipe-card__match-badge{position:absolute;top:12px;left:12px;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:700;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 6px #0000001a;z-index:2;text-transform:uppercase;letter-spacing:.5px}.recipe-card__fridge-stats{display:flex;flex-direction:column;gap:6px;padding:10px 0;border-top:1px solid rgba(133,96,77,.1);border-bottom:1px solid rgba(133,96,77,.1);margin:10px 0;font-size:.8rem}html[theme~=dark] .recipe-card__fridge-stats,.dark-theme .recipe-card__fridge-stats{border-color:#d4b2a01a}.fridge-stats__matched,.fridge-stats__missing{line-height:1.4;color:var(--CulinSpark-secondary)}.fridge-stats__matched span:first-child{color:#2e7d32;font-weight:700}.fridge-stats__missing span:first-child{color:#c62828;font-weight:700}.fridge-stat-matched-tag{color:#2e7d32;font-weight:500}.fridge-stat-missing-tag{color:#c62828;font-weight:500}.fade-in-animation{animation:fadeInScale .35s ease-out forwards}.CulinSpark-bookshelf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:40px 30px;background:linear-gradient(180deg,#3d2b1f,#2b1e15);border:12px solid #1a120c;padding:50px 30px;border-radius:16px;box-shadow:inset 0 20px 40px #000c,0 15px 35px #00000080;position:relative;min-height:400px}.CulinSpark-bookshelf-grid:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:20px;background:linear-gradient(180deg,#5c4033,#3e2a20);border-top:1px solid rgba(255,255,255,.1);box-shadow:0 5px 15px #0009;z-index:1}.recipe-binder-book{position:relative;width:180px;height:250px;background:#f7f3eb;border-radius:4px 16px 16px 4px;box-shadow:5px 10px 20px #0006;transition:transform .35s cubic-bezier(.25,.8,.25,1),box-shadow .35s ease;cursor:pointer;perspective:1000px;transform-style:preserve-3d;margin:0 auto 15px;border:1px solid rgba(0,0,0,.15)}.recipe-binder-book:hover{transform:rotateY(-25deg) translateZ(15px) translateY(-8px);box-shadow:20px 25px 35px #0009}.recipe-binder-book .spine{position:absolute;left:0;top:0;width:40px;height:100%;background:var(--binder-color, #E27D60);border-radius:3px 0 0 3px;box-shadow:inset -6px 0 12px #00000040;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:15px 0;box-sizing:border-box}.recipe-binder-book .spine:after{content:"";width:18px;height:18px;border-radius:50%;background:radial-gradient(circle,#777 20%,#bbb 60%,#444 90%);border:1px solid #222;box-shadow:inset 0 2px 4px #0009;margin-top:auto;margin-bottom:20px}.recipe-binder-book .spine-decor{width:100%;height:60px;border-top:4px double rgba(255,255,255,.4);border-bottom:4px double rgba(255,255,255,.4);opacity:.8}.recipe-binder-book .cover-label{position:absolute;inset:15px 15px 15px 52px;background:#fff;border:2px solid var(--binder-color, #E27D60);padding:15px 10px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:inset 0 0 8px #00000014;border-radius:4px;box-sizing:border-box}.recipe-binder-book .cover-label h4{margin:0 0 8px;font-size:.95rem;font-weight:700;color:#2c3e50;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.recipe-binder-book .cover-label .meta-row{display:flex;flex-direction:column;gap:5px;font-size:.75rem;color:#7f8c8d}.recipe-binder-book .cover-label .meta-badge{background-color:var(--binder-color, #E27D60);color:#fff;padding:2px 6px;border-radius:4px;font-weight:700;font-size:.65rem;width:fit-content}.recipe-binder-book .cover-label .rating-span{font-size:.8rem;color:#f1c40f;font-weight:700}.sous-chef-dialog .cv-cinematic-title{color:#fff!important;font-size:2.2rem;font-weight:800;text-align:center;text-shadow:0 4px 15px rgba(0,0,0,.6);margin-top:10px}.sous-chef-dialog .cv-cinematic-step-num{color:var(--CulinSpark-secondary)!important;font-size:1.8rem;font-weight:800;text-shadow:0 2px 5px rgba(0,0,0,.5);letter-spacing:1px}.sous-chef-dialog .cv-cinematic-text{color:#fff!important;font-size:2.6rem!important;font-weight:600;line-height:1.6;text-align:center;text-shadow:0 2px 10px rgba(0,0,0,.5)}.sous-chef-dialog .cv-cinematic-timer{font-size:5rem!important;font-weight:800;color:#fff!important;text-shadow:0 4px 20px rgba(0,0,0,.7);letter-spacing:3px}@keyframes alert-pulse-edge{0%{box-shadow:inset 0 0 30px #dd6e6e66;border-color:#dd6e6e66}50%{box-shadow:inset 0 0 70px #dd6e6e;border-color:#dd6e6e}to{box-shadow:inset 0 0 30px #dd6e6e66;border-color:#dd6e6e66}}.alert-pulse-edge{animation:alert-pulse-edge 1.2s infinite ease-in-out!important;background-color:#1c0c0afc!important}.taste-profile-layout{display:grid;grid-template-columns:minmax(320px,1.2fr) 1fr;gap:30px;width:100%;margin-top:15px}@media(max-width:800px){.taste-profile-layout{grid-template-columns:1fr}}.taste-chart-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px}.taste-sliders-card{padding:30px;display:flex;flex-direction:column;gap:20px}.taste-slider-group{display:flex;flex-direction:column;gap:8px;width:100%}.taste-slider-header{display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:.95rem;color:var(--CulinSpark-secondary)}.taste-slider-value{color:var(--CulinSpark-primary);font-weight:700}.taste-sliders-card vaadin-slider{width:100%;margin:0;padding:0}.taste-save-button{margin-top:15px;background-color:var(--CulinSpark-primary)!important;color:#fff!important;font-weight:700!important;border-radius:8px!important;box-shadow:0 4px 15px #e27d6040!important;cursor:pointer;transition:all .2s ease-in-out}.taste-save-button:hover{background-color:var(--CulinSpark-accent)!important;box-shadow:0 6px 20px #e27d6066!important}.radar-grid-line{stroke:#85604d26;stroke-width:1}html[theme~=dark] .radar-grid-line,.dark-theme .radar-grid-line{stroke:#d4b2a026}.radar-grid-poly{fill:none;stroke:#85604d1f;stroke-width:1}html[theme~=dark] .radar-grid-poly,.dark-theme .radar-grid-poly{stroke:#d4b2a01a}.radar-axis-line{stroke:#85604d40;stroke-width:1.5;stroke-dasharray:4,4}html[theme~=dark] .radar-axis-line,.dark-theme .radar-axis-line{stroke:#d4b2a033}.glowing-radar-poly{fill:#e27d6038;stroke:var(--CulinSpark-primary);stroke-width:3.5;stroke-linejoin:round;transition:all .3s cubic-bezier(.25,.8,.25,1)}.radar-label{font-family:inherit;font-size:11px;font-weight:700;fill:var(--CulinSpark-secondary);text-anchor:middle;dominant-baseline:middle}.radar-vertex{fill:#fff;stroke:var(--CulinSpark-primary);stroke-width:2.5;transition:all .3s cubic-bezier(.25,.8,.25,1)}.taste-match-badge{padding:3px 10px;border-radius:12px;font-size:.75rem;font-weight:700;border:1px solid;display:inline-block;width:fit-content}.taste-match-badge-high{background-color:#2e7d3226;color:#2e7d32;border-color:#2e7d32}.taste-match-badge-medium{background-color:#ef6c0026;color:#ef6c00;border-color:#ef6c00}.taste-match-badge-low{background-color:#c6282826;color:#c62828;border-color:#c62828}.recipes-headline{margin-top:30px;margin-bottom:15px;color:var(--CulinSpark-primary);display:flex;align-items:center;gap:8px}.scrapbook-stats-header{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px;width:100%;border-radius:12px;background:#ffffff73;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(133,96,77,.15);box-shadow:0 8px 32px #85604d0d;padding:20px;align-items:center;justify-content:space-between}.scrapbook-welcome-box{flex:1 1 300px}.scrapbook-welcome-box h3{margin:0 0 6px;font-size:1.35rem;color:var(--CulinSpark-secondary)}.scrapbook-welcome-box p{margin:0;font-size:.88rem;color:var(--CulinSpark-text);opacity:.85}.scrapbook-stats-grid{display:flex;gap:16px;flex-wrap:wrap}.scrapbook-stat-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 18px;border-radius:8px;background:#fffc;border:1px solid rgba(226,125,96,.2);min-width:90px;text-align:center;box-shadow:var(--CulinSpark-box-shadow);transition:transform .2s,border-color .2s}.scrapbook-stat-item:hover{transform:translateY(-2px);border-color:var(--CulinSpark-primary)}.scrapbook-stat-value{font-size:1.35rem;font-weight:700;color:var(--CulinSpark-primary)}.scrapbook-stat-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--CulinSpark-secondary);margin-top:2px}.scrapbook-filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;padding:4px;border-radius:30px;background:#85604d0a;width:fit-content;border:1px solid rgba(133,96,77,.08)}.scrapbook-filter-badge{padding:8px 16px;font-size:.8rem;font-weight:600;color:var(--CulinSpark-secondary);border-radius:20px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);user-select:none;display:flex;align-items:center;gap:6px;border:1px solid transparent}.scrapbook-filter-badge:hover{background:#e8a87c26;transform:translateY(-1px)}.scrapbook-filter-badge.active{background:var(--CulinSpark-primary);color:#fff;border-color:var(--CulinSpark-primary);box-shadow:0 4px 10px #e27d604d}.scrapbook-polaroid-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px;width:100%}.scrapbook-polaroid-card{position:relative;background:#fff;padding:16px 16px 24px;border-radius:4px;border:1px solid rgba(133,96,77,.12);box-shadow:0 6px 20px #85604d14;display:flex;flex-direction:column;gap:12px;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease,border-color .4s ease;cursor:pointer;overflow:visible;animation:polaroid-fade-in-up .5s ease-out forwards}.scrapbook-polaroid-card:before{content:"";position:absolute;top:-10px;left:50%;transform:translate(-50%) rotate(-3deg);width:70px;height:20px;background:#e8a87c59;backdrop-filter:blur(1px);border:1px dashed rgba(226,125,96,.2);pointer-events:none}.scrapbook-polaroid-card:hover{transform:translateY(-10px) scale(1.03) rotate(0)!important;box-shadow:0 16px 36px #85604d29;border-color:#e27d6066;z-index:10}.polaroid-photo-frame{width:100%;aspect-ratio:1.05;border-radius:2px;overflow:hidden;position:relative;border:1px solid rgba(133,96,77,.08);background:#fbfbfb;display:flex;align-items:center;justify-content:center}.polaroid-photo-frame img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.165,.84,.44,1)}.scrapbook-polaroid-card:hover .polaroid-photo-frame img{transform:scale(1.06)}.polaroid-handwritten-caption{font-family:Outfit,Georgia,serif;display:flex;flex-direction:column;gap:6px;padding:4px 4px 0}.polaroid-date-label{font-size:.72rem;color:var(--CulinSpark-secondary);font-style:italic;opacity:.8;display:flex;align-items:center;gap:4px}.polaroid-title-label{font-size:.95rem;font-weight:700;color:var(--CulinSpark-secondary);line-height:1.2}.polaroid-note-excerpt{font-size:.82rem;color:var(--CulinSpark-text);line-height:1.45;margin:4px 0 0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.scrapbook-open-dialog{border-radius:12px;border:none;background:transparent;padding:0;overflow:visible!important}.scrapbook-dialog-container{display:flex;background:#fdfaf2;border:4px solid var(--CulinSpark-secondary);border-radius:12px;box-shadow:0 24px 64px #85604d59;max-width:800px;width:100%;min-height:480px;overflow:hidden;position:relative}.scrapbook-dialog-container:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;background:#85604d26;box-shadow:-2px 0 6px #00000014,2px 0 6px #00000014;z-index:5}.scrapbook-dialog-left{flex:1;padding:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fcf8ee;position:relative;z-index:2}.scrapbook-dialog-right{flex:1;padding:40px 30px 30px 40px;display:flex;flex-direction:column;gap:16px;background:#fdfaf2;position:relative;z-index:2;justify-content:flex-start}.scrapbook-dialog-close{position:absolute;top:12px;right:12px;background:#fff;border:1px solid rgba(133,96,77,.2);border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--CulinSpark-box-shadow);z-index:10;font-weight:700;color:var(--CulinSpark-secondary);transition:all .2s}.scrapbook-dialog-close:hover{background:var(--CulinSpark-primary);color:#fff;transform:rotate(90deg)}@keyframes polaroid-fade-in-up{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.confetti-canvas-container{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:9999;overflow:hidden}.confetti-piece{position:absolute;width:10px;height:10px;background:var(--CulinSpark-primary);border-radius:2px;animation:confetti-fall 2.5s ease-out forwards}@keyframes confetti-fall{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(105vh) rotate(720deg);opacity:0}}@media(max-width:768px){.scrapbook-dialog-container{flex-direction:column;height:auto;max-height:85vh;overflow-y:auto}.scrapbook-dialog-container:before{display:none}.scrapbook-dialog-left,.scrapbook-dialog-right{flex:none;width:100%;padding:20px}}.forum-layout{display:flex;gap:24px;width:100%;margin-top:15px}@media(max-width:900px){.forum-layout{flex-direction:column}}.forum-sidebar{flex:0 0 280px;display:flex;flex-direction:column;gap:12px}.forum-sidebar-card{padding:16px;border-radius:12px;background:#fff;border:1px solid rgba(133,96,77,.12);box-shadow:var(--CulinSpark-box-shadow);transition:all .25s cubic-bezier(.175,.885,.32,1.275);cursor:pointer}html[theme~=dark] .forum-sidebar-card,.dark-theme .forum-sidebar-card{background:#24201c;border-color:#d4b2a01f}.forum-sidebar-card:hover{transform:translateY(-2px);border-color:var(--CulinSpark-primary);box-shadow:0 6px 16px #e27d6026}.forum-sidebar-card.active{border:2px solid var(--CulinSpark-primary);background:#e27d600a}html[theme~=dark] .forum-sidebar-card.active,.dark-theme .forum-sidebar-card.active{background:#e27d601a}.forum-sidebar-card h4{margin:0 0 4px;font-size:1.05rem;color:var(--CulinSpark-secondary);display:flex;align-items:center;gap:8px}.forum-sidebar-card p{margin:0;font-size:.8rem;color:var(--CulinSpark-text);opacity:.8;line-height:1.4}.forum-threads-container{flex:1;display:flex;flex-direction:column;gap:16px}.forum-header-row{display:flex;justify-content:space-between;align-items:center;width:100%}.forum-thread-card{background:#ffffffa6!important;backdrop-filter:blur(12px) saturate(180%)!important;-webkit-backdrop-filter:blur(12px) saturate(180%)!important;border:1px solid rgba(255,255,255,.4)!important;border-left:5px solid var(--CulinSpark-primary)!important;box-shadow:0 8px 32px #85604d0f!important;border-radius:12px!important;padding:20px!important;transition:transform .25s ease,box-shadow .25s ease!important;animation:fadeInScale .4s ease-out;cursor:pointer;display:flex;flex-direction:column;gap:10px}html[theme~=dark] .forum-thread-card,.dark-theme .forum-thread-card{background:#24201cb3!important;border:1px solid rgba(212,178,160,.15)!important;border-left:5px solid var(--CulinSpark-primary)!important;box-shadow:0 8px 32px #00000040!important}.forum-thread-card:hover{transform:translateY(-4px) scale(1.005);box-shadow:0 12px 36px #e27d6026!important}.forum-thread-card__header{display:flex;justify-content:space-between;align-items:center}.forum-thread-card__title{margin:0;font-size:1.2rem;font-weight:700;color:var(--CulinSpark-secondary)}.forum-thread-card__meta{display:flex;gap:12px;font-size:.8rem;color:var(--CulinSpark-text);opacity:.75}.forum-thread-card__author{font-weight:600}.forum-thread-card__body{font-size:.95rem;color:var(--CulinSpark-text);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.forum-thread-card__recipe-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#5c7b691f;border:1px solid rgba(92,123,105,.3);border-radius:12px;font-size:.8rem;color:var(--CulinSpark-icon);font-weight:500;margin-top:5px}.forum-thread-card__footer{display:flex;gap:16px;border-top:1px solid rgba(133,96,77,.1);padding-top:10px;margin-top:5px}.forum-telemetry-item{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:var(--CulinSpark-secondary)}.forum-telemetry-item .icon{font-size:1.1rem}.forum-telemetry-item.liked{color:#dd6e6e}.comments-book-dialog-container{display:flex;width:900px;height:600px;border-radius:16px;overflow:hidden;background:#fdfaf2;box-shadow:0 25px 50px -12px #0006;border:8px solid #5c4033;position:relative}.comments-book-dialog-container:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:4px;transform:translate(-50%);background:linear-gradient(90deg,#00000026,#0006,#00000026);z-index:5;box-shadow:0 0 10px #0000004d}.comments-book-left{flex:1;padding:30px;background:#fcf8ee;border-right:1px solid rgba(133,96,77,.15);display:flex;flex-direction:column;gap:16px;overflow-y:auto;position:relative;z-index:2}.comments-book-right{flex:1;padding:30px;background:#fdfaf2;border-left:1px solid rgba(133,96,77,.15);display:flex;flex-direction:column;gap:16px;overflow-y:auto;position:relative;z-index:2}.book-vintage-post{display:flex;flex-direction:column;gap:14px}.book-vintage-post__title{font-family:Georgia,serif;font-size:1.6rem;font-weight:700;color:#3e2723;margin:0;line-height:1.3}.book-vintage-post__meta{font-size:.8rem;color:#5d4037;opacity:.8;border-bottom:2px dashed rgba(133,96,77,.2);padding-bottom:8px}.book-vintage-post__content{font-size:1rem;line-height:1.6;color:#3e2723;white-space:pre-line;font-style:italic}.book-comments-title{font-family:Georgia,serif;font-size:1.25rem;font-weight:700;color:#3e2723;border-bottom:2px dashed rgba(133,96,77,.2);padding-bottom:8px;margin:0}.book-comments-feed{display:flex;flex-direction:column;gap:12px;flex:1}.book-comment-bubble{background:#fff;border:1px solid rgba(133,96,77,.12);border-radius:12px;padding:12px;box-shadow:0 2px 6px #00000005;animation:polaroid-fade-in-up .3s ease-out;display:flex;flex-direction:column;gap:4px}.book-comment-bubble__author{font-weight:600;font-size:.85rem;color:var(--CulinSpark-primary)}.book-comment-bubble__content{font-size:.9rem;color:var(--CulinSpark-text);line-height:1.4}.book-comment-bubble__time{font-size:.75rem;color:var(--CulinSpark-text);opacity:.6;align-self:flex-end}.book-comment-composer{display:flex;gap:8px;align-items:center;border-top:1px solid rgba(133,96,77,.15);padding-top:12px;margin-top:auto}@media(max-width:900px){.comments-book-dialog-container{flex-direction:column;width:100%;height:auto;max-height:90vh}.comments-book-dialog-container:before{display:none}.comments-book-left,.comments-book-right{flex:none;width:100%;padding:20px;border:none!important}}.kitchenmates-presence-dot{width:10px;height:10px;background-color:#2ecc71;border-radius:50%;box-shadow:0 0 #2ecc71b3;animation:pulse-green 1.8s infinite;display:inline-block}.kitchenmates-presence-dot.offline{background-color:#bdc3c7;animation:none;box-shadow:none}@keyframes pulse-green{0%{transform:scale(.95);box-shadow:0 0 #2ecc71b3}70%{transform:scale(1);box-shadow:0 0 0 6px #2ecc7100}to{transform:scale(.95);box-shadow:0 0 #2ecc7100}}.compatibility-badge{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:700;box-shadow:0 2px 8px #e67e224d;display:inline-flex;align-items:center;gap:4px}.compatibility-badge.high{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 2px 8px #e74c3c4d}.kitchenmates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;width:100%}.kitchenmate-card{background:#fff;border:1px solid rgba(133,96,77,.12);border-radius:16px;padding:20px;box-shadow:var(--CulinSpark-box-shadow);transition:all .25s cubic-bezier(.175,.885,.32,1.275);display:flex;flex-direction:column;gap:12px}html[theme~=dark] .kitchenmate-card,.dark-theme .kitchenmate-card{background:#24201c;border-color:#d4b2a01f}.kitchenmate-card:hover{transform:translateY(-4px);box-shadow:0 10px 20px #85604d26;border-color:var(--CulinSpark-primary)}.kitchenmate-card__header{display:flex;align-items:center;gap:12px}.kitchenmate-card__avatar{width:48px;height:48px;border-radius:50%;background:#f7ebdb;color:var(--CulinSpark-primary);display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:700;border:2px solid var(--CulinSpark-primary)}html[theme~=dark] .kitchenmate-card__avatar,.dark-theme .kitchenmate-card__avatar{background:#2c2621}.kitchenmate-card__info{display:flex;flex-direction:column;gap:2px}.kitchenmate-card__name{font-size:1.1rem;font-weight:700;color:var(--CulinSpark-secondary);display:flex;align-items:center;gap:8px}.kitchenmate-card__stats{font-size:.8rem;color:var(--CulinSpark-text);opacity:.8}.kitchenmate-card__footer{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid rgba(133,96,77,.1);padding-top:12px;margin-top:auto}.recipe-image-banner-container{width:100%;height:340px;position:relative;overflow:hidden;border-radius:20px;box-shadow:0 12px 35px #0006;margin-bottom:30px;background:#110d0a;border:1px solid rgba(212,178,160,.18);display:flex;align-items:center}.recipe-image-banner-track{display:flex;gap:20px;padding:20px 40px;height:calc(100% - 40px);width:100%;overflow-x:auto;scroll-behavior:smooth;align-items:center;box-sizing:border-box}.recipe-image-banner-track::-webkit-scrollbar{height:6px}.recipe-image-banner-track::-webkit-scrollbar-track{background:#0003;border-radius:10px}.recipe-image-banner-track::-webkit-scrollbar-thumb{background:var(--CulinSpark-primary);border-radius:10px}.recipe-banner-image-card{flex:0 0 auto;height:100%;width:420px;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px #0006;border:1px solid rgba(255,255,255,.1);transition:transform .4s cubic-bezier(.165,.84,.44,1),box-shadow .4s ease,border-color .4s;cursor:pointer;position:relative}.recipe-banner-image-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000 60%,#0009);pointer-events:none}.recipe-banner-image-card:hover{transform:scale(1.03) translateY(-4px);box-shadow:0 15px 35px #e27d604d;border-color:#e27d6066}.recipe-banner-image{width:100%;height:100%;object-fit:cover;transition:filter .4s ease,transform .4s ease}.recipe-banner-image-card:hover .recipe-banner-image{transform:scale(1.05)}.recipe-banner-arrow{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;border-radius:50%!important;background:#ffffff26!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2)!important;color:#fff!important;font-size:1.4rem!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;z-index:5;transition:all .3s ease!important;box-shadow:0 4px 15px #0000004d!important}.recipe-banner-arrow:hover{background:var(--CulinSpark-primary)!important;border-color:var(--CulinSpark-primary)!important;transform:translateY(-50%) scale(1.1)!important;box-shadow:0 6px 20px #e27d6066!important}.recipe-banner-arrow.left{left:20px}.recipe-banner-arrow.right{right:20px}.recipe-detail-image-fallback{width:100%;height:280px;background:linear-gradient(135deg,var(--fallback-color-start, #E27D60),var(--fallback-color-end, #C63D10));border-radius:20px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;box-shadow:0 12px 35px #00000040;border:1px solid rgba(255,255,255,.15);margin-bottom:30px}.recipe-detail-image-fallback:before{content:"";position:absolute;top:-50%;left:-20%;width:80%;height:200%;background:radial-gradient(circle,#ffffff26,#fff0 70%);transform:rotate(-30deg);pointer-events:none}.fallback-glass-card{background:#ffffff1f;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:30px;width:80%;max-width:600px;display:flex;flex-direction:column;align-items:center;gap:15px;text-align:center;box-shadow:0 8px 32px #0003;color:#fff;animation:fadeInScale .5s ease-out}.fallback-glass-icon{font-size:3.5rem;animation:pulse 2s infinite ease-in-out}.fallback-glass-title{font-size:1.8rem;font-weight:800;margin:0;text-shadow:0 2px 10px rgba(0,0,0,.2)}.fallback-glass-meta{font-size:.95rem;opacity:.9;font-weight:500}
