/* Vegemania Green World – playful interactive companion modules */
@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@600;700&family=Nunito:wght@500;600;700;800&family=Quicksand:wght@500;600;700&display=swap');
:root[data-theme="peach"]{--dark:#663f3a;--pine:#89584c;--sage:#f7e5d7;--cream:#fff8f1;--text:#59443e;--muted:#907c72;--line:#f1e3d9;--lime:#ffe5ae}
:root[data-theme="lavender"]{--dark:#49405e;--pine:#685b83;--sage:#ede6f7;--cream:#fcf9ff;--text:#514b64;--muted:#8c8599;--line:#ece7f0;--lime:#e6d6fd}
:root[data-theme="ocean"]{--dark:#214b58;--pine:#347486;--sage:#ddf1ed;--cream:#f6fbfa;--text:#37515a;--muted:#79939a;--line:#e2efec;--lime:#c7ede0}
:root[data-font="sans"] .page-heading h1,:root[data-font="sans"] .panel-title,:root[data-font="sans"] .hero h2,:root[data-font="sans"] .feature-title,:root[data-font="sans"] .moment-card h3{font-family:"DM Sans",sans-serif;font-weight:800;letter-spacing:-.045em}
.app .sidebar,.hero,.btn.primary{transition:background-color .3s}.feature-intro{margin-bottom:20px;display:flex;align-items:center;gap:18px;justify-content:space-between}.feature-intro .sticker-chip{--tilt:12deg}.feature-title{font-family:"DM Serif Display",Georgia,serif;font-size:clamp(25px,3vw,36px);color:var(--dark);font-weight:400;margin:5px 0 8px}.feature-description{color:var(--muted);font-size:12px;line-height:1.7;max-width:740px}.explore-banner{background:linear-gradient(125deg,var(--dark),var(--pine));color:white;padding:26px 30px;border-radius:22px;position:relative;overflow:hidden;margin-bottom:18px}.explore-banner:after{content:"✿ ✦ 🌿";font-size:60px;color:#ffffff25;position:absolute;right:30px;bottom:-12px;transform:rotate(-12deg)}.explore-banner h2{font:400 34px/1.12 "DM Serif Display",Georgia,serif;margin:10px 0}.explore-banner p{color:#d5e8d8;font-size:12px;line-height:1.65;max-width:620px}.explore-banner .eyebrow{color:#c5e8b5}.explore-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:19px 0}.explore-tab{display:flex;align-items:center;justify-content:center;gap:8px;flex-direction:column;min-height:77px;padding:11px 6px;background:#fff;border:1px solid var(--line);border-radius:15px;font-size:10px;font-weight:800;text-align:center;color:var(--dark);box-shadow:0 5px 15px #143d2e08;transition:.18s}.explore-tab span:first-child{font-size:26px}.explore-tab:hover{transform:translateY(-3px)}.explore-tab.active{background:var(--dark);color:white;border-color:var(--dark)}.feature-shell{min-height:250px}.feature-panel{background:white;border:1px solid var(--line);border-radius:21px;padding:25px;box-shadow:var(--shadow)}.feature-panel+.feature-panel{margin-top:16px}.secondary-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.mini-tag{font-size:10px;font-weight:800;letter-spacing:.08em;padding:6px 10px;border-radius:25px;background:var(--sage);color:var(--pine)}
.sticker-option.locked-sticker{opacity:.42;filter:grayscale(1);position:relative}.sticker-option.locked-sticker:after{content:"🔒";position:absolute;top:-1px;right:0;font-size:17px}
.garden-scene{height:305px;position:relative;border-radius:21px;background:linear-gradient(#c5e7d9,#e4f4e5 68%,#cbdec2 68%,#b7d6a8);overflow:hidden;border:5px solid #fff;box-shadow:inset 0 0 0 1px #b5d8c6,0 13px 30px #36563f13;display:flex;align-items:flex-end;justify-content:center}.garden-scene:before{content:"";position:absolute;top:29px;right:44px;background:#fff2ab;border-radius:50%;width:73px;height:73px;box-shadow:0 0 0 16px #fff9cb77}.garden-scene:after{content:"";position:absolute;bottom:-39px;left:-10%;height:112px;width:120%;background:#a3c592;border-radius:60% 50% 0 0}.garden-plant{font-size:120px;position:relative;z-index:2;filter:drop-shadow(0 9px 3px #4a735844);animation:bob 5s infinite;transform-origin:bottom}.garden-plant.grown{font-size:135px}.garden-deco{position:absolute;z-index:3;font-size:32px;animation:bob 4s ease-in-out infinite}.garden-deco.d1{bottom:35px;left:15%}.garden-deco.d2{bottom:55px;right:18%;animation-delay:1s}.garden-deco.d3{top:70px;left:20%;animation-delay:2s}.garden-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.growth-levels{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:17px 0}.growth-stage{text-align:center;background:#f7faf3;border:1px solid var(--line);border-radius:13px;padding:12px 5px}.growth-stage .symbol{font-size:27px}.growth-stage small{font-size:9px;color:var(--muted);display:block;margin-top:6px}.growth-stage.achieved{background:#dcead5;border-color:#8eb17c}
.recipe-controls{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:16px}.recipe-controls .field{max-width:360px}.filter-pill{border:1px solid var(--line);background:#fff;border-radius:24px;padding:9px 12px;font-size:11px;color:var(--pine);font-weight:800}.filter-pill.active{background:var(--dark);border-color:var(--dark);color:white}.recipe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.recipe-card{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow)}.recipe-cover{min-height:140px;display:grid;place-items:center;background:radial-gradient(circle at 75% 30%,#ffffffa8 0 15%,transparent 16%),linear-gradient(125deg,#edf5df,#ffe5d7);position:relative}.recipe-cover .recipe-emoji{font-size:68px;filter:drop-shadow(0 8px 2px #5d76591a)}.recipe-cover .recipe-category{position:absolute;top:12px;left:12px;border-radius:25px;background:#fffdf8d9;padding:5px 10px;font-size:10px;font-weight:800;color:#56765d}.recipe-cover .recipe-heart{position:absolute;right:12px;top:10px;background:white;border:0;border-radius:50%;height:32px;width:32px;font-size:17px}.recipe-copy{padding:18px;flex:1;display:flex;flex-direction:column}.recipe-copy h3{margin:0;color:var(--dark);font-size:15px;line-height:1.35}.recipe-copy p{color:var(--muted);font-size:11px;line-height:1.6}.recipe-copy .btn{margin-top:auto;align-self:flex-start}.recipe-copy .small-meta{font-size:10px;font-weight:800;color:#77907c;margin:9px 0 14px}
.calendar-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap}.calendar-toolbar h3{font-family:"DM Serif Display",serif;font-weight:400;font-size:25px;color:var(--dark);margin:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-dow{text-align:center;color:#839488;font-size:10px;text-transform:uppercase;font-weight:800;padding:11px 0}.calendar-cell{background:#fafcf7;border:1px solid #e9ede5;border-radius:11px;min-height:95px;text-align:left;padding:9px 7px;position:relative;min-width:0;cursor:pointer;transition:background .15s}.calendar-cell:hover{background:#ecf6e7}.calendar-cell.out{opacity:.35}.calendar-cell.today{border-color:#6d9b6d;border-width:2px}.calendar-cell .date-number{font-size:12px;font-weight:800;color:var(--dark)}.calendar-entry{display:block;background:#dfeeda;color:#356047;border-radius:5px;padding:3px 5px;margin-top:5px;font-size:9px;line-height:1.2;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.calendar-entry.personal{background:#ffecd9;color:#86644b}.calendar-entry.event{background:#e9e2fc;color:#645b89}
.badge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.reward-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:21px;text-align:center;position:relative;overflow:hidden}.reward-card.locked{filter:grayscale(.9);opacity:.55}.reward-card .badge-icon{height:88px;width:88px;border-radius:50%;border:6px solid #fff;background:#f7e4ad;display:grid;place-items:center;font-size:45px;box-shadow:0 5px 14px #5e4a2119;margin:0 auto 13px}.reward-card h3{font-size:13px;margin:0 0 5px;color:var(--dark)}.reward-card p{font-size:10px;color:var(--muted);line-height:1.5;margin:0}.reward-card .reward-status{margin-top:10px;font-size:10px;font-weight:800;color:#5c915f}
.roulette-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:20px;align-items:center}.wheel-wrap{height:350px;display:grid;place-items:center;position:relative}.wheel{width:min(330px,84vw);height:min(330px,84vw);border-radius:50%;border:12px solid white;box-shadow:0 8px 35px #294c3924;background:conic-gradient(#c7e9b3 0deg 60deg,#f7d9bb 60deg 120deg,#e8d6f6 120deg 180deg,#f6edab 180deg 240deg,#f9cad4 240deg 300deg,#bddce3 300deg 360deg);display:grid;place-items:center;position:relative;transition:transform .8s cubic-bezier(.13,.67,.2,1)}.wheel:before{content:"🍓 🍲 🥑 🥕 🍋 🥗";position:absolute;inset:42px;border-radius:50%;border:2px dashed #ffffff94;display:grid;place-items:center;font-size:27px;letter-spacing:.32em;line-height:2;text-align:center}.wheel:after{content:"🌱";position:relative;z-index:2;display:grid;place-items:center;border-radius:50%;width:90px;height:90px;border:7px solid white;background:var(--dark);font-size:42px}.wheel-pointer{position:absolute;top:0;z-index:3;font-size:39px;color:var(--dark);transform:rotate(180deg)}.wheel-spinning{animation:wheelspin .8s ease-out}@keyframes wheelspin{from{transform:rotate(0)}to{transform:rotate(1000deg)}}
.gratitude-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.gratitude-list{display:grid;gap:12px}.gratitude-list label{font-size:11px;font-weight:800;color:var(--pine)}.gratitude-photo{border:2px dashed #bacfb9;border-radius:17px;background:#f9fcf6;min-height:190px;display:grid;place-items:center;overflow:hidden;text-align:center;padding:15px}.gratitude-photo img{max-width:100%;max-height:210px;object-fit:contain;border-radius:11px}.gratitude-date{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:17px}
.wellness-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.wellness-card{border-radius:18px;background:#fff;border:1px solid var(--line);padding:22px}.wellness-card h3{font-family:"DM Serif Display",serif;font-size:24px;color:var(--dark);font-weight:400;margin:4px 0}.wellness-card p{font-size:11px;color:var(--muted);line-height:1.5}.water-cups{display:flex;flex-wrap:wrap;gap:6px;margin:15px 0}.water-cup{background:#f0f6f4;border:1px solid #d4e9e2;border-radius:10px;padding:7px;font-size:20px;opacity:.4}.water-cup.filled{opacity:1;background:#d9f0e8;transform:translateY(-2px)}.wellness-number{font-size:31px;font-family:"DM Serif Display",serif;color:var(--dark)}.wellness-controls{display:flex;align-items:center;gap:9px;margin-top:15px}.wellness-controls .btn{min-width:38px}
.pantry-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:17px}.pantry-table{width:100%;border-collapse:collapse}.pantry-table td{border-bottom:1px solid var(--line);padding:12px 7px;font-size:12px}.pantry-quantity{display:flex;align-items:center;gap:7px}.pantry-quantity button{border:1px solid #d7e4d0;background:#f8faf5;border-radius:8px;width:29px;height:29px;color:var(--dark);font-weight:800}.pantry-quantity strong{min-width:15px;text-align:center}.pantry-low{color:#b56750;font-size:10px;font-weight:800}
.challenge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.challenge-day{border:1px solid var(--line);border-radius:15px;background:#fff;padding:15px;text-align:left;min-height:125px;display:flex;flex-direction:column;gap:8px}.challenge-day strong{font-size:11px;color:#78987f;letter-spacing:.08em}.challenge-day span{font-size:12px;line-height:1.5;font-weight:700;color:var(--dark)}.challenge-day.done{background:#e1f0dc;border-color:#a5cba0}.challenge-day.done:after{content:"✓ Ostvareno";font-size:10px;font-weight:800;color:#447d50;margin-top:auto}
.theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.theme-swatch{border:2px solid #e7ebdf;border-radius:15px;background:white;padding:10px;text-align:center;cursor:pointer}.theme-swatch.active{border-color:#639d67;box-shadow:0 0 0 3px #a4cc9b45}.theme-colors{height:85px;border-radius:10px;margin-bottom:11px;display:flex;overflow:hidden}.theme-colors span{flex:1}.cover-sample{border-radius:18px;min-height:115px;display:grid;place-items:center;color:white;font:30px "DM Serif Display",serif;position:relative;overflow:hidden}.cover-sample.botanical{background:#245641}.cover-sample.daisy{background:#d6b38a}.cover-sample.citrus{background:#dfbe62}.cover-sample.strawberry{background:#c78d91}.cover-sample .emoji{font-size:44px}
:root[data-cover="daisy"] .hero{background:linear-gradient(125deg,var(--dark),#a28a62)}:root[data-cover="citrus"] .hero{background:linear-gradient(125deg,var(--dark),#9d883e)}:root[data-cover="strawberry"] .hero{background:linear-gradient(125deg,var(--dark),#9a626b)}
@media(max-width:1120px){.explore-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.recipe-grid{grid-template-columns:repeat(2,1fr)}.badge-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:770px){.nav{grid-template-columns:repeat(7,minmax(0,1fr))}.nav button{gap:2px}.nav .glyph{font-size:17px}.nav .nav-text{font-size:8px}.explore-banner{padding:24px 19px}.explore-banner h2{font-size:30px}.explore-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.explore-tab{min-height:67px;font-size:9px;gap:4px;padding:7px 3px}.explore-tab span:first-child{font-size:22px}.garden-grid,.roulette-layout,.gratitude-grid,.pantry-grid{grid-template-columns:1fr}.garden-scene{height:260px}.recipe-grid{grid-template-columns:1fr 1fr;gap:10px}.recipe-cover{min-height:120px}.recipe-cover .recipe-emoji{font-size:48px}.recipe-copy{padding:13px}.recipe-copy h3{font-size:12px}.recipe-copy p{font-size:10px}.calendar-cell{min-height:65px;padding:5px 2px;border-radius:6px}.calendar-cell .date-number{font-size:10px}.calendar-entry{font-size:7px;padding:2px}.calendar-grid{gap:3px}.badge-grid{grid-template-columns:repeat(2,1fr)}.wellness-grid,.challenge-grid{grid-template-columns:1fr 1fr}.theme-grid{grid-template-columns:repeat(2,1fr)}.feature-panel{padding:18px}.feature-intro .sticker-chip{width:64px;height:64px}.feature-intro .sticker-emoji{font-size:26px}}
@media(max-width:450px){.explore-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.explore-tab{font-size:8px}.wellness-grid,.challenge-grid{grid-template-columns:1fr}.recipe-grid{grid-template-columns:1fr 1fr}}
@media print{.explore-tabs,.recipe-controls,.filter-pill,.roulette-layout,.theme-grid,.wellness-controls,.secondary-cta{display:none!important}.feature-panel,.reward-card,.calendar-cell{break-inside:avoid}.calendar-grid{grid-template-columns:repeat(7,1fr)}}

/* Vegemania colour studio: fourteen palettes, with iconic green gradient as default. */
:root{--highlight:#81bd7c;--card-radius:20px}
:root[data-theme="forest"]{--dark:#173e32;--pine:#2d714d;--highlight:#8fc96e;--sage:#e6f0dd;--cream:#f8f9f2}
:root[data-theme="mint"]{--dark:#286d61;--pine:#459c85;--highlight:#a8e0cd;--sage:#e2f7ee;--cream:#f4fff9;--text:#285748;--line:#d8eee4}
:root[data-theme="sage"]{--dark:#526a56;--pine:#76977b;--highlight:#bdd1ac;--sage:#e8f0df;--cream:#f7f9f0;--text:#425747;--line:#e1e9da}
:root[data-theme="pistachio"]{--dark:#637143;--pine:#8da45a;--highlight:#d9e9a6;--sage:#eef5d5;--cream:#fcfdf0;--text:#58633d;--line:#e5edcf}
:root[data-theme="apricot"]{--dark:#855b42;--pine:#c68e69;--highlight:#fbd6ae;--sage:#fff0dd;--cream:#fffaf1;--text:#76513f;--line:#f2e3cf}
:root[data-theme="rose"]{--dark:#8d536c;--pine:#b97996;--highlight:#f5c6d9;--sage:#ffebf2;--cream:#fff7fa;--text:#734c60;--line:#f5e4eb}
:root[data-theme="blush"]{--dark:#a06e73;--pine:#c9939c;--highlight:#f9dfe2;--sage:#fff0f0;--cream:#fffaf8;--text:#77575b;--line:#f6e8e6}
:root[data-theme="lilac"]{--dark:#73618e;--pine:#9f87bf;--highlight:#e6d6f5;--sage:#f3eafd;--cream:#fdf9ff;--text:#655476;--line:#eee3f4}
:root[data-theme="sky"]{--dark:#446b91;--pine:#6b9dc6;--highlight:#c8e2fa;--sage:#eaf4ff;--cream:#f7fbff;--text:#425d76;--line:#e4eff7}
:root[data-theme="sunshine"]{--dark:#886c3d;--pine:#b99c54;--highlight:#f9e7aa;--sage:#fcf1cb;--cream:#fffdf4;--text:#75643b;--line:#f1e8cc}
:root[data-theme="berry"]{--dark:#7e4565;--pine:#ad7395;--highlight:#eab9d0;--sage:#f8e6ef;--cream:#fff8fb;--text:#72465c;--line:#f0e3ea}
:root[data-theme="peach"]{--highlight:#f5bea9}
:root[data-theme="lavender"]{--highlight:#d4bfe8}
:root[data-theme="ocean"]{--highlight:#a6ded0}
.app .sidebar{background:linear-gradient(163deg,var(--dark),var(--pine) 95%)}
.hero{background:linear-gradient(125deg,var(--dark) 0%,var(--pine) 64%,var(--highlight) 145%)}
.btn.primary,.goal-check.done{background:linear-gradient(125deg,var(--dark),var(--pine) 72%,var(--highlight) 180%);border-color:var(--pine);color:white}
.btn.primary:hover{filter:brightness(1.1);background:linear-gradient(125deg,var(--pine),var(--dark))}
.nav button:hover,.nav button.active{background:#ffffff25}
.explore-banner{background:linear-gradient(125deg,var(--dark),var(--pine),var(--highlight))}
.style-welcome{background:linear-gradient(120deg,#e2f2da,#f7e0e7 52%,#fff1bd);border:2px solid white;box-shadow:var(--shadow);border-radius:25px;padding:27px 33px;display:flex;align-items:center;gap:25px;justify-content:space-between;margin-bottom:17px}
.style-welcome h2{font:400 clamp(26px,3vw,39px)/1.2 "DM Serif Display",Georgia,serif;color:#214e3d;margin:8px 0}
.style-welcome p{font-size:12px;line-height:1.7;color:#57715c;max-width:600px}
.style-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:17px}
.style-option{background:linear-gradient(150deg,#fff,#fbfaf6);border:2px solid var(--line);border-radius:16px;padding:18px 9px;display:flex;align-items:center;flex-direction:column;gap:7px;color:var(--dark);min-height:95px;transition:transform .2s,border-color .2s}
.style-option>span{font-size:27px;line-height:1.4}.style-option strong{font-size:11px}.style-option:hover,.theme-swatch:hover{transform:translateY(-3px)}
.style-option.selected{border-color:var(--pine);box-shadow:0 0 0 3px #a2cda54a;background:var(--sage)}
.theme-swatch{transition:transform .2s,border-color .2s;position:relative;overflow:hidden}.theme-swatch.active:after{content:"✓";position:absolute;top:3px;right:5px;color:#fff;background:var(--pine);border-radius:50%;height:19px;width:19px;font-size:12px;display:grid;place-items:center}
.theme-swatch strong{font-size:11px;overflow-wrap:anywhere}.theme-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.cover-sample.sunflower{background:linear-gradient(135deg,#a4af60,#f0d988)}
.cover-sample.rainbow{background:linear-gradient(135deg,#9ec7bf,#f3bed0,#e8d59c)}
.cover-sample.moon{background:linear-gradient(135deg,#625a97,#9caaca)}
.cover-sample.mushroom{background:linear-gradient(135deg,#6b8b66,#dcbca4)}
.cover-sample.butterfly{background:linear-gradient(135deg,#8ac7ca,#d4b6e4)}
.cover-sample.avocado{background:linear-gradient(135deg,#3f8154,#cbe29b)}
:root[data-cover="sunflower"] .hero{background:linear-gradient(125deg,var(--dark),#a5ad62)}
:root[data-cover="rainbow"] .hero{background:linear-gradient(120deg,var(--dark),#9e83ad,#b9989c)}
:root[data-cover="moon"] .hero{background:linear-gradient(125deg,var(--dark),#626b9a)}
:root[data-cover="mushroom"] .hero{background:linear-gradient(125deg,var(--dark),#8d7766)}
:root[data-cover="butterfly"] .hero{background:linear-gradient(125deg,var(--dark),#659ca1)}
:root[data-cover="avocado"] .hero{background:linear-gradient(125deg,var(--dark),#6a9b4e)}
:root[data-font="rounded"] body,:root[data-font="rounded"] button{font-family:"Nunito","DM Sans",sans-serif}
:root[data-font="rounded"] .page-heading h1,:root[data-font="rounded"] .panel-title,:root[data-font="rounded"] .hero h2,:root[data-font="rounded"] .feature-title,:root[data-font="rounded"] .moment-card h3,:root[data-font="rounded"] .style-welcome h2{font-family:"Quicksand","Nunito",sans-serif;font-weight:700;letter-spacing:-.025em}
:root[data-font="handwritten"] .page-heading h1,:root[data-font="handwritten"] .panel-title,:root[data-font="handwritten"] .hero h2,:root[data-font="handwritten"] .feature-title,:root[data-font="handwritten"] .moment-card h3,:root[data-font="handwritten"] .style-welcome h2{font-family:"Caveat",cursive;font-weight:700;font-size:clamp(32px,4vw,49px);letter-spacing:0;line-height:1.06}
:root[data-font="classic"] body,:root[data-font="classic"] button{font-family:Georgia,serif}
:root[data-font="classic"] .page-heading h1,:root[data-font="classic"] .panel-title,:root[data-font="classic"] .hero h2,:root[data-font="classic"] .feature-title{font-family:Georgia,serif;font-weight:700;letter-spacing:-.02em}
:root[data-layout="spacious"] .panel,:root[data-layout="spacious"] .feature-panel,:root[data-layout="spacious"] .goal-card{padding:34px}
:root[data-layout="spacious"] .dashboard-grid,:root[data-layout="spacious"] .quick-grid,:root[data-layout="spacious"] .recipe-grid{gap:23px}
:root[data-layout="playful"] .stat:nth-child(2n),:root[data-layout="playful"] .quick:nth-child(2n),:root[data-layout="playful"] .goal-card:nth-child(2n){transform:rotate(.6deg)}
:root[data-layout="playful"] .panel,:root[data-layout="playful"] .feature-panel{box-shadow:6px 8px 0 #d5e5c14a}
:root[data-background="dots"] body{background-image:radial-gradient(#a9cda149 1.3px,transparent 1.3px);background-size:22px 22px}
:root[data-background="confetti"] body{background-image:radial-gradient(#b5dfac70 2px,transparent 2px),radial-gradient(#f3bfca77 2px,transparent 2px),radial-gradient(#d6c2ed70 1.5px,transparent 1.5px);background-size:54px 54px,67px 67px,44px 44px;background-position:0 0,22px 27px,13px 10px}
:root[data-cards="scrapbook"] .panel,:root[data-cards="scrapbook"] .feature-panel,:root[data-cards="scrapbook"] .stat,:root[data-cards="scrapbook"] .quick,:root[data-cards="scrapbook"] .recipe-card,:root[data-cards="scrapbook"] .moment-card,:root[data-cards="scrapbook"] .goal-card{border:2px solid #e6d1c4;border-left:6px solid #c2d5b2;border-radius:12px;box-shadow:4px 7px 0 #eccbd14a}
:root[data-cards="minimal"] .panel,:root[data-cards="minimal"] .feature-panel,:root[data-cards="minimal"] .stat,:root[data-cards="minimal"] .quick,:root[data-cards="minimal"] .recipe-card,:root[data-cards="minimal"] .moment-card,:root[data-cards="minimal"] .goal-card{border-radius:7px;box-shadow:none}
.pdf-button{background:#fff8eb;border-color:#dfdfc7;color:#466d53}.pdf-button:hover{background:#e8f5df}
.modal-actions{flex-wrap:wrap}.modal-actions .btn{flex:1 1 130px}
.quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1100px){.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:770px){.sidebar{background:linear-gradient(100deg,var(--dark),var(--pine))}.nav{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;gap:3px}.nav button{min-width:60px;flex:1 0 60px}.nav .nav-text{font-size:9px}.style-welcome{padding:20px;gap:6px}.style-welcome .sticker-chip{width:72px;height:72px}.style-welcome .sticker-emoji{font-size:25px}.quick-grid{grid-template-columns:1fr}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.top-actions{gap:4px}.top-actions .btn{padding:8px;font-size:10px}}
@media(max-width:430px){.style-welcome .sticker-chip{display:none}.hero-content{max-width:95%}.hero-stickers{opacity:.55}.nav button{min-width:56px;flex-basis:56px}.today-chip{display:none}}

/* Pantry-to-recipe recommendations, built from ingredients already on hand. */
.cook-mini{display:flex;align-items:center;gap:20px;padding:21px 25px;margin-top:20px;border-radius:21px;background:linear-gradient(110deg,#e6f3dc 0%,#fff1e0 55%,#f6e4ed 100%);border:2px solid white;box-shadow:var(--shadow)}
.cook-mini-icon{font-size:50px;filter:drop-shadow(0 6px 6px #456f4422)}
.cook-mini>div{flex:1;min-width:0}.cook-mini h3{margin:5px 0;font:400 25px/1.2 "DM Serif Display",Georgia,serif;color:#24563e}.cook-mini p{margin:6px 0;color:#667a69;font-size:12px;line-height:1.55}.cook-mini .btn{flex-shrink:0}
.cook-link{display:flex;align-items:center;gap:13px;justify-content:space-between;flex-wrap:wrap;background:#f0f7e9;padding:12px 18px;border-radius:16px;margin:0 0 18px;color:#40694d;font-size:12px;font-weight:700}
.cook-intro{display:flex;align-items:center;gap:21px;background:linear-gradient(120deg,#e7f3d8 0%,#fff0e2 57%,#f5e5f4 100%);border:2px solid white;border-radius:22px;padding:22px 24px;box-shadow:var(--shadow);margin-bottom:18px}
.cook-intro-emoji{font-size:47px;max-width:130px;line-height:1.2;text-align:center;letter-spacing:-.19em;filter:drop-shadow(0 6px 5px #315b3b15)}
.cook-intro>div:nth-child(2){flex:1;min-width:0}.cook-intro h3{font:400 25px "DM Serif Display",Georgia,serif;color:#24563e;margin:0 0 6px}.cook-intro p{font-size:12px;line-height:1.55;color:#637d69;margin:0}.cook-intro .btn{flex-shrink:0}
.cook-mini-stats{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.cook-mini-stats span{border-radius:20px;padding:6px 10px;background:#ffffffac;color:#426f52;font-size:10px;font-weight:800}
.cook-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:17px 0 8px}.cook-hint{font-size:11px;color:var(--muted);line-height:1.5;margin:8px 0 16px}
.cook-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.cook-result{background:#fff;border:1px solid var(--line);border-radius:19px;padding:21px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px;min-width:0}.cook-result.cook-ready{background:linear-gradient(155deg,#f2faed,#fff 80%);border-color:#b5d8a8}
.cook-result-top{display:flex;align-items:start;gap:13px}.cook-recipe-emoji{background:#f3f3e7;border-radius:15px;width:61px;height:61px;display:grid;place-items:center;flex-shrink:0;font-size:34px}
.cook-result-top>div{flex:1;min-width:0}.cook-result h3{font-size:16px;color:var(--dark);margin:8px 0 4px;line-height:1.32}.cook-result-top p{margin:4px 0;font-size:10px;color:var(--muted)}
.cook-badge{background:#fff0df;color:#9a6a4d;border-radius:20px;font-size:10px;font-weight:800;display:inline-block;padding:5px 9px}.cook-badge.is-ready{color:#356b43;background:#d9efcf}
.cook-score{display:flex;justify-content:space-between;gap:8px;color:#718c73;font-size:11px;font-weight:700}.cook-score strong{font-size:14px;color:var(--pine)}.cook-result .progress{margin-top:-7px;height:8px}.cook-result .progress>span{background:linear-gradient(90deg,#81b890,#d1e792)}
.cook-items{background:#f8faf6;border-radius:12px;padding:13px 14px;color:#627463;font-size:11px;line-height:1.75;display:grid;gap:8px;flex:1;overflow-wrap:anywhere}.cook-items strong{color:#3a674e}.cook-all-good{font-weight:700;color:#58865c}.cook-actions{display:flex;flex-wrap:wrap;gap:8px}.cook-actions .btn{flex:1 1 auto;text-align:center}
.cook-empty{text-align:center;background:#fff;border:2px dashed #c3d8b6;border-radius:20px;padding:36px 23px;grid-column:1/-1}.cook-empty-icon{font-size:58px}.cook-empty h3{font:400 27px "DM Serif Display",Georgia,serif;color:var(--dark);margin:9px 0}.cook-empty p{font-size:12px;line-height:1.7;color:var(--muted);max-width:510px;margin:0 auto 20px}
.explore-tabs{grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:1100px){.explore-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.cook-results{grid-template-columns:1fr}}
@media(max-width:770px){.explore-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.cook-mini,.cook-intro{padding:18px;gap:13px;flex-wrap:wrap}.cook-mini-icon,.cook-intro-emoji{font-size:37px}.cook-mini>div,.cook-intro>div:nth-child(2){flex-basis:calc(100% - 75px)}.cook-mini>.btn,.cook-intro>.btn{width:100%}.cook-result{padding:17px}.cook-results{grid-template-columns:1fr}}
@media(max-width:440px){.explore-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.cook-mini-stats span{font-size:9px}.cook-recipe-emoji{height:48px;width:48px;font-size:27px}}
/* Green Life 2026: personal cookbook, playful planner modules and PWA. */
.upgrade-shortcuts,.budget-grid,.family-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:18px 0}.upgrade-shortcuts{grid-template-columns:repeat(4,minmax(0,1fr))}.upgrade-shortcut{min-width:0;text-align:left;cursor:pointer;border:1px solid #d5e9d0;border-radius:20px;background:linear-gradient(150deg,#fffefa,#e9f6e8 60%,#f8e9f3);padding:20px;display:flex;flex-direction:column;gap:7px;font-size:30px;box-shadow:var(--shadow);transition:transform .18s}.upgrade-shortcut:hover{transform:translateY(-3px)}.upgrade-shortcut strong{font-size:14px;color:#305c41}.upgrade-shortcut small{font-size:11px;color:#678374}
.magic-panel{display:flex;gap:15px;align-items:center;background:linear-gradient(120deg,#e9f6dc,#fbeddf,#f4e9ff)}.magic-panel>div:first-child{flex:1}.magic-form{margin-top:18px;display:flex;flex-wrap:wrap;align-items:end;gap:12px}.magic-form>label{font-size:12px;font-weight:700;color:#4d7257;display:grid;gap:7px}.magic-form>.checkline{display:flex;gap:7px;align-items:center}.magic-graphic{font-size:76px;white-space:nowrap}.magic-graphic span{font-size:35px;display:inline-block;transform:rotate(-16deg)}.mini-menu-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:15px}.mini-menu-day{min-width:0;background:#f5f9f2;border-radius:13px;padding:12px 8px}.mini-menu-day strong{display:block;color:#315b42;font-size:11px;margin-bottom:6px}.mini-menu-day small{display:block;font-size:10px;color:#65796b;line-height:1.55;overflow-wrap:anywhere;margin:5px 0}
.budget-hero,.family-hero{border-radius:23px;background:linear-gradient(115deg,#1c593f,#448d63 61%,#82b981);color:#fff;padding:26px 30px;display:flex;justify-content:space-between;gap:14px;align-items:center;margin:17px 0}.budget-hero h3{font-size:36px;line-height:1.3;margin:5px 0;color:#fff}.budget-hero p{font-size:13px;color:#f0f9e9}.budget-hero small{font-size:11px}.budget-hero .progress{background:#ffffff55}.budget-hero .progress span{background:#def0ad}.budget-emoji,.family-emoji{font-size:60px;min-width:0}.budget-entry-form{display:grid;gap:10px;margin-top:14px}.budget-list{margin-top:14px}.budget-line,.pantry-expiry-row{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e4eee2}.budget-line span,.pantry-expiry-row span{flex:1;min-width:0;font-size:12px;overflow-wrap:anywhere}.budget-line small,.pantry-expiry-row small{display:block;color:#809486;margin-top:4px}.budget-line>strong{color:#31664b;font-size:13px}.budget-line:last-child{border-bottom:0}
.season-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:16px}.season-item{border-radius:17px;background:linear-gradient(145deg,#eaf5db,#fff6e8);padding:17px;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.season-item>span{font-size:28px}.season-item strong{flex:1;font-size:12px;color:#375b45}.season-recipes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:17px}.season-recipe{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid #dcead9;border-radius:14px;padding:12px;background:#fff;cursor:pointer}.season-recipe>span{font-size:28px}.season-recipe strong{flex:1;font-size:12px;color:#315c41}.season-recipe small{color:#71917b;white-space:nowrap}
.my-recipes-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.my-recipes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.my-recipe-card{min-width:0;border:1px solid #e2e9db;background:#fff;border-radius:20px;padding:17px;box-shadow:var(--shadow)}.my-recipe-photo{width:100%;height:154px;object-fit:cover;border-radius:12px}.my-recipe-emoji{display:grid;place-items:center;font-size:60px;height:154px;background:linear-gradient(125deg,#e3f5d7,#fff1df);border-radius:12px}.my-recipe-card h3{margin:14px 0 7px;color:#31563e;font-size:16px}.my-recipe-card p{color:#7a8b7e;font-size:11px}.my-recipe-card .actions{margin-top:14px;gap:5px;flex-wrap:wrap}.custom-recipe-form{display:grid;gap:12px}.custom-recipe-form>label,.custom-recipe-duo label{font-size:12px;font-weight:700;color:#4d7257}.custom-recipe-duo{display:grid;grid-template-columns:1fr 1fr;gap:12px}.custom-recipe-duo label{display:grid;gap:7px}.recipe-photo-row{display:flex;align-items:center;gap:18px}.recipe-photo-row #custom-photo-preview{height:98px;width:120px;display:grid;place-items:center;background:#edf7e8;border-radius:15px;font-size:40px;overflow:hidden}.recipe-photo-row img{width:100%;height:100%;object-fit:cover}.recipe-detail-photo{width:100%;max-height:200px;object-fit:cover;border-radius:15px;margin:12px 0}
.family-hero{background:linear-gradient(115deg,#e4f3de,#fbe5ef,#f5ecdc);color:#385c42}.family-hero .subtext{color:#59785f}.serving-choices,.avatar-picks{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0}.serving-choice,.avatar-pick{border:1px solid #d0e0c9;border-radius:12px;background:#fff;min-width:39px;padding:9px 10px;color:#386b4d;cursor:pointer;font-weight:750}.serving-choice.selected,.avatar-pick.selected{background:linear-gradient(135deg,#3e985f,#77bb77);color:#fff;border-color:#36915a}.avatar-pick{font-size:26px}.family-example{line-height:2;color:#57705a;font-size:13px}
.surprise-card{text-align:center;border-radius:27px;background:linear-gradient(130deg,#f5f3cf,#e6f5db,#f4dff0);border:2px dashed #e7bbd2;padding:55px 18px;max-width:760px;margin:20px auto}.surprise-art{font-size:105px;filter:drop-shadow(0 10px 12px #3258331f)}.surprise-card h3{font:400 32px "DM Serif Display",Georgia,serif;color:#325d40}.surprise-card p{max-width:500px;margin:12px auto 22px;line-height:1.6;color:#587462}.surprise-card.opened{background:linear-gradient(130deg,#dff3d4,#fff0d8,#f4e4f9)}
.cook-main-step{font:400 24px Georgia,serif;color:#315c42;line-height:1.5;background:linear-gradient(120deg,#edf8e4,#fff4e7);border-radius:18px;padding:24px;margin:18px 0}.cook-progress{font-weight:800;font-size:12px;letter-spacing:.09em;color:#537d5b}.cook-timer{display:block;color:#39855c;font-size:26px;padding:10px 0}.expiry-warning{margin-top:20px;padding:17px;border-radius:16px;background:#fff0d9;color:#835633;font-size:12px}.expiry-warning p{margin:8px 0}.pantry-expiry-list{margin-top:13px}.pdf-addon{margin:17px 0}.pdf-addon .btn{margin-left:auto}
@media(max-width:900px){.upgrade-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.mini-menu-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.my-recipes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.upgrade-shortcuts,.budget-grid,.family-grid,.my-recipes-grid,.season-recipes{grid-template-columns:1fr}.season-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mini-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.magic-panel{flex-direction:column}.magic-graphic{font-size:44px}.budget-hero{padding:20px}.budget-hero h3{font-size:26px}.budget-emoji,.family-emoji{font-size:39px}.custom-recipe-duo{grid-template-columns:1fr}.recipe-photo-row{flex-wrap:wrap}}
