.fridge-hero{display:grid;grid-template-columns:1.35fr 1fr;min-height:330px;border:1px solid #d6dec8;border-radius:26px;overflow:hidden;background:linear-gradient(120deg,#e9eddc,#f2e8d4);margin:28px 0}.fridge-story{padding:38px;align-self:center}.fridge-story h2{font-size:clamp(30px,3vw,46px);line-height:1.18;margin:16px 0}.fridge-story h2 em{color:#7f6845}.fridge-story p{max-width:460px;margin:18px 0 24px;line-height:1.8}.fridge-small{display:block;font-size:11px;margin-top:14px;color:#68745d}.fridge-visual{position:relative;display:grid;place-items:center;isolation:isolate;min-height:300px}.fridge-visual>img{width:180px;height:240px;object-fit:contain;transform:rotate(-7deg);filter:drop-shadow(0 18px 18px #182d2b40)}.fridge-orbit{position:absolute;width:240px;height:240px;border-radius:50%;border:1px solid #afbb9666;box-shadow:0 0 0 30px #9caf7620,0 0 0 60px #9caf7610;z-index:-1}.fridge-bubble{position:absolute;bottom:25px;border-radius:20px;background:#fff8e5;padding:10px 18px;color:#405137;font-size:12px;transform:rotate(-4deg);box-shadow:0 6px 24px #17281f15}.fridge-moments{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fridge-moments h2{margin:12px 0;font-size:27px}.fridge-moments p{font-size:13px;line-height:1.7}.fridge-dialog{padding:36px}.fridge-dialog>h2{font-size:38px;line-height:1.2;margin:12px 35px 14px 0}.fridge-dialog>.muted{font-size:13px;line-height:1.7;margin-bottom:20px}.fridge-dialog .notice{margin:18px 0}.fridge-upload{border:1px dashed #8f9e7e;border-radius:18px;padding:20px}.fridge-upload .hint,.fridge-review .hint{font-size:12px}.fridge-upload input[type=file]{max-width:100%;white-space:normal}.fridge-upload img{display:block;width:100%;max-height:250px;object-fit:contain;border-radius:14px;margin-top:15px}.fridge-upload img[hidden]{display:none}.fridge-upload .inline-check,.fridge-review .inline-check{line-height:1.6;align-items:start}.fridge-dialog .inline-check input{margin-top:5px;flex-shrink:0}.fridge-food{display:flex;gap:12px;align-items:center}.fridge-food>div{flex:1;min-width:0}.fridge-food select{width:100%}.fridge-food .plain{font-size:25px}.fridge-dialog #fridgeStatus:not(:empty){padding:16px;margin-top:14px;border-left:3px solid #9daa78;background:#e8edde;font-size:13px}.fridge-result h2{margin:15px 0}.fridge-result ul,.fridge-steps{padding-left:22px;font-size:13px;line-height:1.85}.fridge-steps li{padding-left:6px;margin:12px 0}.fridge-match{display:flex;gap:20px;border:1px solid #d4dccb;padding:16px;border-radius:16px;margin-top:16px}.fridge-match img{width:110px;height:130px;object-fit:cover;border-radius:12px}.fridge-match h3{font-family:'Playfair Display',Georgia,serif;font-size:23px}.fridge-match p{font-size:12px;margin:10px 0}.gem-fridge{position:relative}.gem-fridge:after{content:'✦';position:absolute;right:-2px;top:0;font-size:21px;color:#d2bb81;text-shadow:0 1px 4px #19271a}
html[data-theme=dark] .fridge-hero{background:radial-gradient(ellipse at right,#6a713a24,transparent 70%),linear-gradient(110deg,#24382d,#16251f);border-color:var(--line)}html[data-theme=dark] .fridge-story h2 em{color:var(--gold)}html[data-theme=dark] :is(.fridge-small,.fridge-story p,.fridge-moments p,.fridge-match p){color:var(--muted)}html[data-theme=dark] .fridge-bubble{background:#354730;color:#f1e6c5;border:1px solid #6c7854}html[data-theme=dark] .fridge-match{background:var(--surface);border-color:var(--line)}html[data-theme=dark] .fridge-dialog #fridgeStatus:not(:empty){background:var(--raised);color:var(--ink)}
@media(max-width:760px){.fridge-hero{grid-template-columns:1fr;margin-top:20px}.fridge-story{padding:26px}.fridge-story h2{font-size:34px}.fridge-visual{min-height:220px}.fridge-visual>img{height:175px}.fridge-orbit{width:165px;height:165px}.fridge-bubble{bottom:10px}.fridge-moments{grid-template-columns:1fr;gap:14px}.fridge-dialog{padding:28px 18px}.fridge-dialog>h2{font-size:31px}.fridge-match{gap:12px;padding:12px}.fridge-match img{width:72px;height:90px}.fridge-match h3{font-size:20px}.fridge-review .row-wrap>.btn{width:100%}.mobile-nav .navbtn{min-width:0;flex:1}.mobile-nav .nav-label{font-size:7px}.mobile-nav .nav-art{width:33px;height:33px}.mobile-nav .nav-gem{width:31px;height:31px;flex-basis:31px}.mobile-nav .gem-fridge:after{font-size:14px}.fridge-upload{padding:15px}}
@media(max-width:760px){.mobile-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}.mobile-nav .navbtn{width:auto}.mobile-nav .badge-number{display:none}}
.fridge-stock h3{font-family:'Playfair Display',Georgia,serif;font-size:25px;margin:10px 0 14px}.fridge-stock .hint{line-height:1.7}.fridge-quantity{max-width:250px}.fridge-food{padding:12px 0;border-bottom:1px solid #cfd9c5}.fridge-food>.plain{align-self:flex-start;margin-top:14px}.fridge-stock [role=status]:not(:empty){margin-top:15px;padding:12px;border-radius:10px;background:#e7ecdb;font-size:13px;line-height:1.6}.fridge-food .hint{font-size:11px;margin:0 0 8px}html[data-theme=dark] .fridge-food{border-color:var(--line)}html[data-theme=dark] .fridge-stock [role=status]:not(:empty){background:var(--raised);color:var(--ink)}
.fridge-key{margin:18px 0;padding:20px;border:1px solid #aebd97;border-radius:16px;background:#edf0e4}.fridge-key[hidden]{display:none}.fridge-key summary{cursor:pointer;font-weight:600}.fridge-key .hint{font-size:12px;line-height:1.7}.fridge-key [role=status]:not(:empty){font-size:13px;margin-top:14px}.fridge-key .inline-check{align-items:flex-start;line-height:1.6}html[data-theme=dark] .fridge-key{background:var(--raised);border-color:#6e8057}
/* Interactive refrigerator: actual editable objects, decorative image-generated enamel. */
.virtual-fridge-dialog{padding:30px}.virtual-fridge-dialog>h2{font-size:36px;margin:10px 40px 22px 0}.fridge-stages{display:flex;gap:8px;padding:5px;background:#e7eadc;border-radius:16px;margin-bottom:20px}.fridge-stages button{flex:1;min-height:45px;border-radius:12px;background:none;color:#536349;font-weight:600;font-size:13px}.fridge-stages b{font-size:10px;opacity:.65;margin-right:7px}.fridge-stages button.active{background:#304f39;color:#fff7df;box-shadow:0 3px 10px #17261716}[data-fridge-view][hidden],.fridge-item-editor[hidden],.fridge-empty[hidden]{display:none!important}.virtual-fridge-dialog .section-head{margin:12px 0}.virtual-fridge-dialog .fridge-review>.hint{font-size:12px;margin-bottom:18px}.fridge-inventory-bar{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#697554;margin:16px 0 8px}.fridge-workbench{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:20px;align-items:start;margin-bottom:16px}.virtual-fridge{min-height:510px;background:url('assets/virtual-fridge-interior.webp') center/100% 100% no-repeat;filter:drop-shadow(0 14px 16px #0002)}#fridgeFoods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:159px;padding:66px 12% 84px;gap:10px 0;min-height:510px;align-content:start}.virtual-fridge .fridge-food{display:block;position:static;min-width:0;border:0;padding:0;background:none}.fridge-object{width:100%;height:159px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:transparent;padding:0 3px;color:#354b35;border-radius:18px;isolation:isolate}.fridge-object:before{content:'';position:absolute;inset:3px -3px 10px;border-radius:50%;background:radial-gradient(ellipse,#efffafdd,transparent 70%);opacity:0;transition:opacity .2s;z-index:-1}.fridge-object:after{content:'';position:absolute;height:9px;left:0;right:0;bottom:0;background:linear-gradient(#fffff9,#bac5a6 40%,#f9fae9 55%,#96a288);border-radius:2px;box-shadow:0 7px 8px #4b533631;z-index:-1}.fridge-number{font-size:14px;line-height:1;padding:7px 9px;border-radius:20px;background:#fffdf0;color:#354733;font-weight:700;box-shadow:0 2px 7px #3e4e2820;white-space:nowrap}.fridge-food-art{display:block;width:75px;height:75px;flex:none;background-size:300% 300%;background-repeat:no-repeat;mix-blend-mode:multiply;transition:transform .22s,filter .22s;line-height:75px;font-size:45px;font-family:'Playfair Display',Georgia,serif;color:#67734d}.fridge-object-name{font-size:10px;font-weight:650;line-height:1.25;max-width:100%;min-height:25px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-transform:capitalize}.fridge-object-note{font-size:8px;line-height:1.3;color:#596446;margin-top:3px}.fridge-object:hover:before,.fridge-object:focus-visible:before,.is-editing .fridge-object:before{opacity:1}.fridge-object:hover .fridge-food-art,.is-editing .fridge-food-art{transform:translateY(-5px) rotate(-4deg) scale(1.09);filter:drop-shadow(0 8px 5px #42531b50)}.fridge-object:focus-visible{outline:3px solid #766034;outline-offset:2px}.fridge-editor-idle{padding:22px 12px;text-align:center;border:1px dashed #b8c3a3;border-radius:20px;margin-top:45px}.fridge-editor-idle img{height:100px;width:90px;object-fit:contain;transform:rotate(6deg)}.fridge-editor-idle h3{font:26px/1.15 'Playfair Display',Georgia,serif;margin:12px 0}.fridge-editor-idle p{font-size:12px;line-height:1.7;color:#6b795c;margin-bottom:18px}.fridge-editor-idle small{font-size:10px;line-height:1.5}.has-editor .fridge-editor-idle{visibility:hidden}.fridge-item-editor{position:absolute;right:0;top:18px;width:220px;border:1px solid #abb996;background:#f8f8ed;border-radius:20px;padding:18px;box-shadow:0 12px 30px #1e342219;z-index:3}.fridge-item-editor h3{font:24px/1.2 'Playfair Display',Georgia,serif;text-transform:capitalize;margin:12px 0}.fridge-item-editor .field{margin:14px 0;font-size:11px}.fridge-item-editor .hint{font-size:10px;line-height:1.6}.fridge-item-editor .btn{width:100%;margin-top:14px}.fridge-item-editor .plain{font-size:10px;line-height:1.3;margin-top:10px;width:100%;justify-content:center}.fridge-quick{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#727f65;gap:6px;margin-top:14px}.fridge-quick button{width:35px;height:35px;border:1px solid #b7c5a9;border-radius:10px;background:#e1e9d4;color:#3b5637;font-size:20px}.fridge-quantity{max-width:none}.virtual-fridge-dialog .fridge-stock{margin-top:14px;padding:10px 0 0;border-top:1px solid #a9b99855}.fridge-stock .inline-check{font-size:11px}.fridge-empty{position:absolute;top:150px;width:calc(100% - 240px);padding:0 60px;text-align:center;color:#546243;pointer-events:none}.fridge-empty>span{font-size:40px;color:#89975d}.fridge-empty h3{font:32px/1.1 'Playfair Display',Georgia,serif;color:#3f553e!important;margin:12px 0}.fridge-empty p{font-size:12px;line-height:1.7}.virtual-fridge-dialog #fridgeStatus:not(:empty){padding:10px 12px;margin:10px 0;font-size:12px}.virtual-fridge-dialog .fridge-upload{padding:20px}.virtual-fridge-dialog .fridge-cook>.footnote{margin-top:14px}.virtual-fridge-dialog .fridge-cook .row-wrap{margin-top:18px}
html[data-theme=dark] .fridge-stages{background:#0f1d16}html[data-theme=dark] .fridge-stages button{color:#b9c9ac}html[data-theme=dark] .fridge-stages button.active{background:#d6d9ac;color:#283e2b}html[data-theme=dark] .fridge-item-editor{background:#25392e;border-color:#687e52;box-shadow:0 15px 40px #0005}html[data-theme=dark] .fridge-quick button{background:#40563a;border-color:#71825c;color:#f4e9c7}html[data-theme=dark] .fridge-quick{color:#bdc7ac}html[data-theme=dark] .fridge-inventory-bar{color:#bbcfab}html[data-theme=dark] .fridge-editor-idle{border-color:#62774b66}html[data-theme=dark] .fridge-editor-idle p{color:#b4c2a7}html[data-theme=dark] .fridge-object{color:#354b35}html[data-theme=dark] .fridge-number{color:#354733}
@media(max-width:760px){.virtual-fridge-dialog{padding:24px 14px}.virtual-fridge-dialog>h2{font-size:30px}.fridge-stages button{font-size:12px;min-height:40px}.fridge-stages b{display:none}.fridge-workbench{display:block}.fridge-editor-idle{display:none}.virtual-fridge{min-height:470px}#fridgeFoods{min-height:470px;padding-top:65px;grid-auto-rows:149px}.fridge-object{height:149px}.fridge-food-art{height:66px;width:66px}.fridge-number{font-size:12px;padding:6px 7px}.fridge-object-name{font-size:9px}.fridge-object-note{font-size:7px}.fridge-empty{width:100%;padding:0 60px;top:140px}.fridge-item-editor{position:fixed;top:50%;left:24px;right:24px;transform:translateY(-50%);width:auto;max-height:75dvh;overflow-y:auto;padding:22px;box-shadow:0 0 0 100vmax #06150cc9,0 16px 45px #0007}.fridge-item-editor .field{font-size:12px}.fridge-item-editor .hint{font-size:11px}.virtual-fridge-dialog .fridge-stock .row-wrap .btn{flex:1}.virtual-fridge-dialog .fridge-review>.section-head h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){.fridge-food-art,.fridge-object:before{transition:none}.fridge-object:hover .fridge-food-art,.is-editing .fridge-food-art{transform:none}}
.virtual-fridge{filter:none}
