.workspace-tools{display:flex;align-items:center;gap:12px;flex:none}
#motion-toggle{display:none}
.scene-mode{--table-white:#F3F6F2;--table-muted:#D0DBD2;--table-green:#93B7A2;--table-yellow:#E0C66D;--table-red:#CB4B43}
.scene-mode .app-header{background:#252B2A;border-color:#ffffff20;color:var(--table-white)}
.scene-mode .brand{color:var(--table-white)}
.scene-mode .brand-mark{border-color:#93B7A277;color:var(--table-green)}
.scene-mode .search{background:#ffffff0d;border-color:#ffffff30}
.scene-mode .search input{color:var(--table-white)}
.scene-mode .search input::placeholder,.scene-mode .search>.lucide{color:var(--table-muted)}
.scene-mode .search:focus-within{border-color:var(--table-green);box-shadow:0 0 0 2px #93B7A230}
.scene-mode .header-actions .button{color:var(--table-white);background:transparent;border-color:#ffffff30}
.scene-mode .header-actions .button:hover,.scene-mode .app-header .icon-button:hover{background:#ffffff14}
.scene-mode .header-actions .count{background:#ffffff12;color:var(--table-muted)}
.scene-mode .header-actions .has-ingredients,.scene-mode .favorites-toggle[aria-pressed=true]{border-color:var(--table-green);background:#93B7A218;color:#D8F0DF}
.scene-mode .mobile-filter{display:inline-flex}
.scene-mode .layout,.scene-mode .layout.has-detail{grid-template-columns:minmax(0,1fr)}
.scene-mode .workspace{display:block;overflow-y:auto;overscroll-behavior:contain;color:var(--table-white);background:#BBC0B8 url("assets/images/long-table.jpg") center/cover no-repeat;background-blend-mode:multiply;isolation:isolate}
.scene-mode .workspace-heading{padding:24px 40px 8px;min-height:94px;border:0;background:#20282470}
.scene-mode .workspace-heading h1{font-size:27px;font-weight:500}
.scene-mode .workspace-heading p{color:var(--table-muted)}
.scene-mode .view-switch{background:#18201fc9;border-color:#ffffff25}
.scene-mode .view-switch button{color:var(--table-muted)}
.scene-mode .view-switch button[aria-pressed=true]{color:#252B2A;background:var(--table-white);box-shadow:none}
.scene-mode #motion-toggle{display:inline-flex;border:1px solid #ffffff40}
.scene-mode #motion-toggle:hover{background:#ffffff1a}
.scene-mode #motion-toggle:disabled{opacity:.7}
.scene-mode .workspace>.pantry-summary{display:none}
.scene-mode .active-filters{padding:10px 40px;background:#20282499;border-color:#ffffff25}
.scene-mode .active-filter{background:#29382fe6;border-color:#93B7A270;color:var(--table-white)}
.scene-mode :focus-visible{outline-color:var(--table-yellow)}
.scene-mode dialog :focus-visible{outline-color:var(--blue)}
.scene-mode .filter-dialog .mobile-only{display:inline-flex}
.scene-section{background:#20282470;min-width:0}
.scene-cuisines{display:flex;align-items:stretch;gap:28px;min-height:52px;padding:0 40px;border-bottom:1px solid #ffffff25;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#93B7A266 transparent}
.scene-cuisine{display:flex;align-items:center;gap:7px;flex:none;min-height:52px;font-size:16px;color:var(--table-muted);padding:0 0 3px;border-bottom:2px solid transparent}
.scene-cuisine-count{font-size:14px;font-variant-numeric:tabular-nums;color:#B3CBB9}
.scene-cuisine[aria-pressed=true]{color:var(--table-white);border-bottom-color:var(--table-yellow)}
.scene-cuisine[aria-pressed=true] .scene-cuisine-count{color:var(--table-yellow)}
.scene-cuisine:hover{color:#fff}
.scene-stage{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(300px,1.1fr);align-items:center;gap:42px;max-width:1180px;margin:0 auto;padding:24px 40px 28px;min-height:460px}
.scene-copy{max-width:420px;min-width:0}
.scene-dish-meta{font-size:16px;color:var(--table-green);line-height:1.7;margin:0 0 14px}
.scene-copy h2{font-family:var(--serif);font-size:54px;font-weight:500;line-height:1.3;margin:0 0 16px;overflow-wrap:anywhere;text-shadow:0 2px 16px #0004;scroll-margin-top:20px}
.scene-description{font-size:16px;color:var(--table-muted);line-height:1.85;margin:0 0 22px;max-width:390px}
.scene-facts{display:flex;gap:18px;flex-wrap:wrap;font-size:14px;color:var(--table-white);line-height:1.7}
.scene-facts>span{display:inline-flex;align-items:center;gap:7px}
.scene-facts .lucide{width:17px;height:17px;color:var(--table-green)}
.scene-actions{display:flex;align-items:center;gap:14px;margin:26px 0 28px}
.scene-primary{background:var(--table-white);border-color:var(--table-white);color:#252B2A;min-height:46px;padding:11px 20px;font-size:16px}
.scene-primary:hover{background:#DCE8DF;border-color:#DCE8DF}
.scene-actions .bookmark-button{width:46px;height:46px;border:1px solid #ffffff40;color:var(--table-white)}
.scene-actions .bookmark-button:hover{background:#ffffff18}
.scene-actions .bookmark-button[aria-pressed=true]{color:var(--table-yellow);border-color:var(--table-yellow)}
.scene-actions .bookmark-button[aria-pressed=true] .lucide{fill:#E0C66D28}
.scene-pairing{padding-top:20px;border-top:1px solid #ffffff30}
.scene-pairing h3{font-size:14px;color:var(--table-muted);font-weight:400;margin:0 0 12px}
.scene-ingredients{display:flex;flex-wrap:wrap;gap:9px}
.scene-ingredient{display:inline-flex;align-items:center;gap:7px;font-size:16px;padding:3px 0;color:var(--table-white);background:none;border:0;border-bottom:1px solid #ffffff50;border-radius:0;line-height:1.6}
.scene-ingredient+.scene-ingredient{margin-left:10px}
.scene-ingredient:hover{color:var(--table-yellow);border-color:var(--table-yellow)}
.scene-ingredient.is-stocked{color:#B7DABD;border-color:var(--table-green)}
.scene-ingredient .lucide{width:16px;height:16px}
.scene-mode .scene-pairing .pantry-match{color:#F1D884}
.scene-mode .scene-pairing .pantry-match.is-complete{color:#B7DABD}
.scene-mode .scene-pairing .missing-names{color:var(--table-muted)}
.scene-food{min-width:0;display:grid;justify-items:center;align-content:center}
.scene-platter{width:min(100%,400px);aspect-ratio:1;position:relative;transform:translate(var(--table-x,0px),var(--table-y,0px));transition:transform .6s ease-out}
.scene-photo-button{display:block;width:100%;height:100%;padding:0;border-radius:50%;box-shadow:0 26px 45px #0007,0 3px 5px #0004;background:#E7EBE4}
#scene-photo-slot{display:block;width:100%;height:100%;border-radius:50%;animation:table-breathe 8s ease-in-out infinite}
.scene-photo{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%;border:12px solid #F3F6F2;animation:platter-enter .65s ease-out both}
.scene-photo.photo-placeholder{display:grid}
.scene-photo-button:focus-visible{outline-offset:8px}
.scene-steam{position:absolute;pointer-events:none;left:24%;right:24%;top:-8%;height:160px}
.scene-steam span{position:absolute;bottom:0;left:15%;width:28px;height:95px;border-left:3px solid #F3F6F2A8;border-radius:50%;opacity:0;animation:steam-rise 6s ease-in-out infinite;filter:blur(2px)}
.scene-steam span:nth-child(2){left:48%;height:120px;animation-delay:-2s}
.scene-steam span:nth-child(3){left:80%;height:80px;animation-delay:-4s}
.scene-dish-navigation{display:flex;align-items:center;gap:14px;margin-top:18px}
.scene-dish-navigation .icon-button{border:1px solid #ffffff40;color:var(--table-white);width:36px;height:36px}
.scene-dish-navigation .icon-button:hover{background:#ffffff1a}
.scene-dish-navigation output{width:64px;text-align:center;font-size:14px;font-variant-numeric:tabular-nums;color:var(--table-muted)}
.scene-photo-credit{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;color:#D0DBD2;font-size:14px;line-height:1.6;margin-top:10px}
.scene-photo-credit a{text-underline-offset:4px}
.scene-table-edge{display:grid;grid-template-columns:264px minmax(0,1fr);gap:28px;padding:18px 40px 24px;background:#1F2B24D9;border-top:1px solid #ffffff30}
.scene-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;margin-bottom:10px}
.scene-section-heading h3{font-size:16px;line-height:1.6;font-weight:500;margin:0;display:inline-flex;align-items:center;gap:8px}
.scene-section-heading h3 .lucide{color:var(--table-green)}
.scene-section-heading>span{font-size:14px;color:var(--table-muted)}
.scene-section-heading .icon-button{width:32px;height:32px;border:1px solid #ffffff30}
.scene-section-heading .icon-button:hover{background:#ffffff18}
.scene-pantry{padding-right:26px;border-right:1px solid #ffffff25;min-width:0}
.scene-pantry-items{display:flex;gap:8px;flex-wrap:wrap;min-height:40px;align-items:center}
.scene-pantry-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;min-height:36px;border:1px solid #93B7A266;background:#93B7A218;color:#D7E9DA;border-radius:4px;font-size:14px;line-height:1.5}
.scene-pantry-chip .lucide{width:14px;height:14px}
.scene-pantry-chip:hover{background:#93B7A230}
.scene-pantry-empty{font-size:14px;color:var(--table-muted);border-bottom:1px solid #93B7A270;padding:6px 0;line-height:1.6}
.scene-pantry .complete-filter{color:var(--table-muted);line-height:1.6}
.scene-pantry input{accent-color:var(--table-green)}
.scene-menu{min-width:0}
.scene-dishes{position:relative;display:flex;gap:10px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#93B7A266 transparent;padding:0 0 10px;scroll-snap-type:x proximity}
.scene-dish-choice{display:flex;align-items:center;gap:10px;text-align:left;flex:0 0 182px;min-height:82px;border-bottom:2px solid transparent;padding:5px 8px 9px;scroll-snap-align:start;color:var(--table-muted)}
.scene-dish-choice[aria-pressed=true]{border-bottom-color:var(--table-yellow);background:#ffffff0c;color:var(--table-white)}
.scene-dish-choice:hover{background:#ffffff12}
.scene-menu-photo{width:56px;height:56px;object-fit:cover;border-radius:50%;border:2px solid #ffffff50;flex:none}
.scene-menu-copy{display:grid;gap:5px;min-width:0}
.scene-menu-name{font-size:16px;line-height:1.5;overflow-wrap:anywhere}
.scene-menu-time{font-size:14px;line-height:1.5;color:var(--table-muted)}
.scene-mode .workspace>.empty-state{background:#252B2AEC;border:1px solid #ffffff25;border-radius:6px;color:var(--table-white);margin:28px auto;max-width:calc(100% - 32px)}
.scene-mode .workspace>.empty-state p{color:var(--table-muted)}
.scene-mode .workspace>.empty-state .empty-icon{background:#ffffff12;color:var(--table-muted)}
.scene-mode .detail-dialog{width:440px}
.motion-paused .scene-section *{animation:none!important;transition:none!important}
@keyframes table-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes platter-enter{from{transform:rotate(-7deg) scale(.94)}to{transform:rotate(0) scale(1)}}
@keyframes steam-rise{0%{opacity:0;transform:translate(0,16px) scale(.7)}25%{opacity:.35}65%{opacity:.18}100%{opacity:0;transform:translate(14px,-65px) scale(1.3)}}
@media(min-width:1550px){.scene-stage{max-width:1320px;gap:90px;padding-top:32px;padding-bottom:32px}.scene-platter{width:min(100%,440px)}.scene-copy{max-width:450px}.scene-copy h2{font-size:60px}.scene-description{max-width:420px}.scene-table-edge{padding-left:64px;padding-right:64px}.scene-mode .workspace-heading{padding-left:64px;padding-right:64px}.scene-cuisines{padding-left:64px;padding-right:64px}}
@media(max-width:1000px){.scene-mode .workspace-heading{padding:20px 24px 8px}.scene-cuisines{padding:0 24px;gap:24px}.scene-stage{gap:26px;padding:24px;grid-template-columns:minmax(240px,.9fr) minmax(270px,1.1fr)}.scene-copy h2{font-size:44px}.scene-platter{width:min(100%,350px)}.scene-table-edge{padding:16px 24px 20px;grid-template-columns:225px minmax(0,1fr);gap:20px}.scene-pantry{padding-right:20px}.scene-facts{gap:12px}.workspace-tools{gap:8px}}
@media(max-width:760px){.scene-mode .workspace{background-position:60% top;background-size:auto 950px;background-repeat:repeat-y}.scene-mode .workspace-heading{padding:18px 16px 12px;min-height:92px;align-items:center;gap:8px;flex-wrap:wrap}.scene-mode .workspace-heading h1{font-size:24px}.scene-mode .workspace-heading p{max-width:none}.workspace-tools{gap:7px}.view-switch button{padding:0 7px}.scene-mode .view-switch .lucide{display:none}.scene-mode #motion-toggle{width:34px;height:36px}.scene-cuisines{padding:0 16px;gap:24px;min-height:48px}.scene-cuisine{min-height:48px;font-size:16px}.scene-stage{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:0;padding:22px 24px 28px;text-align:center}.scene-copy{display:contents}.scene-dish-meta{order:0;margin:0 0 5px;font-size:14px}.scene-copy h2{order:1;font-size:38px;margin:0 0 14px}.scene-description{order:4;max-width:440px;margin:20px auto 0;font-size:16px;line-height:1.8;text-align:left}.scene-facts{order:2;justify-content:center;gap:18px;margin-bottom:24px}.scene-food{order:3;width:100%}.scene-platter{width:min(86%,300px)}.scene-photo{border-width:9px}.scene-steam{top:-6%;height:110px}.scene-steam span{height:75px}.scene-steam span:nth-child(2){height:90px}.scene-actions{order:5;justify-content:center;margin:22px 0}.scene-pairing{order:6;width:100%;max-width:440px;margin:auto;text-align:left;padding-top:18px}.scene-ingredients{justify-content:flex-start}.scene-photo-credit{font-size:14px;margin-top:8px}.scene-dish-navigation{margin-top:14px}.scene-table-edge{grid-template-columns:minmax(0,1fr);padding:16px 20px 24px;gap:20px}.scene-pantry{border-right:0;border-bottom:1px solid #ffffff25;padding:0 0 16px}.scene-section-heading{margin-bottom:8px}.scene-mode .detail-dialog{width:100%}.scene-mode .active-filters{padding:10px 16px}.scene-mode .workspace>.empty-state{margin:20px 16px}.scene-mode .workspace-heading .view-switch{flex:none}.scene-dish-choice{flex-basis:178px}.scene-mode .detail-dialog .detail-photo{aspect-ratio:16/10}}
@media(max-width:360px){.scene-mode .workspace-heading{align-items:flex-start}.scene-mode .workspace-heading>div:first-child{width:100%}.scene-mode .workspace-tools{width:100%;justify-content:space-between}.scene-mode .workspace-tools .view-switch{flex:1}.scene-mode .view-switch button{flex:1}.scene-stage{padding-left:20px;padding-right:20px}.scene-copy h2{font-size:34px}.scene-facts{gap:12px}}
@media(max-width:760px){.workspace-heading{flex-wrap:wrap}.workspace-tools{max-width:100%}.view-switch .lucide{display:none}.scene-mode .workspace{padding-bottom:80px}.scene-actions{position:fixed;left:0;right:0;bottom:0;z-index:10;display:flex;gap:12px;margin:0;padding:12px 16px;background:#252B2AF5;border-top:1px solid #ffffff30}.scene-actions>.scene-primary{flex:1}.scene-mode .workspace>.empty-state{margin-bottom:0}}
@media(prefers-reduced-motion:reduce){.scene-platter{transform:none}.scene-steam{display:none}}
