@import"https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=Marcellus&display=swap";:root{color-scheme:light;font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,ui-sans-serif,sans-serif;color:#171615;background:#d9cdb8;font-synthesis:none;text-rendering:optimizeLegibility;--paper: #f6f1e8;--paper-warm: #eee4d3;--paper-deep: #e1d2bc;--ink: #171615;--ink-soft: #39342e;--muted: #71695f;--faint: #9c9183;--hair: #d4c7b5;--hair-strong: #b7a995;--burgundy: #8b1e1e;--burgundy-deep: #641717;--sage: #597057;--steel: #4c7187;--gold: #a9792f;--success: #527a47;--danger: #9d2e2e;--shadow: 0 18px 50px rgba(46, 33, 18, .12)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button,select,input[type=range],label{cursor:pointer}button{border:0}img{display:block}::selection{background:#8b1e1e38}.appShell{background:linear-gradient(90deg,rgba(76,113,135,.08),transparent 28%,rgba(89,112,87,.08)),var(--paper-warm);color:var(--ink);min-height:100vh}.desktopShell{display:grid;grid-template-columns:256px minmax(0,1fr)}.sidebar{background:#171615;color:var(--paper);display:flex;flex-direction:column;min-height:100vh;padding:18px;position:sticky;top:0}.brandButton,.navItem,.mobileNavItem,.actionButton,.ghostButton,.iconButton,.backButton,.imageButton,.treeCard,.suggestionCard,.sessionButton{align-items:center;display:inline-flex;gap:10px}.brandButton{background:transparent;color:inherit;padding:8px;text-align:left;width:100%}.brandButton svg{background:var(--burgundy);border-radius:8px;padding:4px}.brandButton strong,.brandButton small,.navItem span{display:block}.brandButton strong{font-family:Marcellus,Georgia,serif;font-size:1.18rem;font-weight:400}.brandButton small{color:#f6f1e894;font-size:.78rem;margin-top:2px}.mainNav{display:grid;gap:6px;margin-top:28px}.navItem{background:transparent;border:1px solid transparent;border-radius:8px;color:#f6f1e8a6;min-height:42px;padding:0 12px;transition:background .15s ease,border-color .15s ease,color .15s ease;width:100%}.navItem:hover,.navItem.isActive{background:#f6f1e814;border-color:#f6f1e821;color:var(--paper)}.navItem.isActive svg{color:#f0c077}.sidebarFooter{border-top:1px solid rgba(246,241,232,.12);display:grid;gap:10px;margin-top:auto;padding-top:16px}.miniStat{align-items:center;display:flex;justify-content:space-between}.miniStat span{color:#f6f1e88a;font-size:.8rem}.miniStat strong{color:var(--paper)}.workspace{min-width:0;padding:0 28px 34px}.topbar,.mobileTopbar{align-items:center;display:flex;justify-content:space-between}.topbar{background:#f6f1e8e0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--hair);margin:0 -28px 22px;min-height:72px;padding:0 28px;position:sticky;top:0;z-index:20}.topbar h1,.mobileTopbar h1,.recipeHeader h2,.detailHero h2,.cookHero h2,.awardHero h2{font-family:Marcellus,Georgia,serif;font-weight:400;margin:0}.topbar h1{font-size:1.65rem}.eyebrow{color:var(--muted);display:block;font-size:.72rem;font-weight:700;text-transform:uppercase}.topbarActions,.recipeHeaderActions,.heroActions,.cardActions,.cookModeActions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.surface{display:grid;gap:18px}.recipeHeader{align-items:center;background:var(--paper);border:1px solid var(--hair);border-radius:8px;box-shadow:var(--shadow);display:flex;gap:18px;justify-content:space-between;padding:20px}.recipeHeader h2{font-size:2rem;line-height:1.05}.recipeHeaderActions.compact{max-width:720px}.searchBox,.fieldStack textarea,.fieldStack select,.recipeHeader select,.recipeHeaderActions select{background:#ffffff7a;border:1px solid var(--hair);border-radius:8px;color:var(--ink);min-height:40px;outline:none}.searchBox{display:flex;gap:9px;padding:0 12px;width:min(360px,100%)}.searchBox input{background:transparent;border:0;color:inherit;min-width:0;outline:none;width:100%}.searchBox:focus-within,.fieldStack textarea:focus,.fieldStack select:focus,.recipeHeader select:focus,.recipeHeaderActions select:focus{border-color:var(--burgundy)}.recipeHeader select,.recipeHeaderActions select{padding:0 12px}.actionButton,.ghostButton,.iconButton,.backButton{border-radius:8px;font-weight:700;min-height:40px;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.actionButton{background:var(--burgundy);color:var(--paper);padding:0 14px}.actionButton.dark{background:var(--ink)}.actionButton.light{background:var(--paper);color:var(--ink)}.actionButton.wide,.ghostButton.wide{justify-content:center;width:100%}.ghostButton{background:transparent;border:1px solid var(--hair-strong);color:var(--ink);padding:0 13px}.ghostButton.light{border-color:#f6f1e852;color:var(--paper)}.iconButton{background:#ffffff6b;border:1px solid var(--hair);color:var(--ink);justify-content:center;padding:0;width:40px}.backButton{background:transparent;color:var(--ink-soft);justify-self:start;padding:0 6px 0 0}.actionButton:hover,.ghostButton:hover,.iconButton:hover,.backButton:hover,.treeCard:hover,.suggestionCard:hover,.sessionButton:hover{transform:translateY(-1px)}.metricStrip{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(130px,1fr))}.metric{background:var(--paper);border:1px solid var(--hair);border-radius:8px;display:grid;gap:6px;padding:16px}.metric svg{color:var(--burgundy)}.metric span{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase}.metric strong{font-family:Marcellus,Georgia,serif;font-size:2rem;font-weight:400}.recipeGrid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.recipeCard,.panel,.importPanel,.bottleCard{background:var(--paper);border:1px solid var(--hair);border-radius:8px;box-shadow:var(--shadow);overflow:hidden}.recipeCard{display:grid;min-width:0}.imageButton{background:transparent;color:inherit;display:block;padding:0;width:100%}.recipeImage{background:linear-gradient(135deg,var(--photo-a),var(--photo-b)),var(--paper-deep);height:186px;overflow:hidden;position:relative;width:100%}.recipeImage:after{background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.46));content:"";top:0;right:0;bottom:0;left:0;position:absolute}.recipeImage img{height:100%;object-fit:cover;transition:opacity .15s ease,transform .25s ease;width:100%}.recipeCard:hover .recipeImage img,.suggestionCard:hover .recipeImage img{transform:scale(1.03)}.recipeImage span{background:#f6f1e8db;border-radius:6px;bottom:10px;color:var(--ink);font-size:.72rem;font-weight:700;left:10px;max-width:calc(100% - 20px);overflow:hidden;padding:5px 8px;position:absolute;text-overflow:ellipsis;white-space:nowrap;z-index:1}.recipeImage.compact{border-radius:7px;flex:0 0 auto;height:58px;width:72px}.recipeImage.compact span{display:none}.recipeCardBody{display:grid;gap:12px;padding:16px}.recipeCardHead,.detailTitleRow,.panelTitleRow{align-items:start;display:flex;gap:14px;justify-content:space-between}.recipeCard h3,.panel h3,.importPanel h3,.bottleCard h3{color:var(--ink);font-size:1rem;line-height:1.2;margin:2px 0 0}.recipeCard p,.detailHero p,.cookHero p,.pairingBlock p,.bottleCard p{color:var(--ink-soft);line-height:1.48;margin:0}.metaRow,.detailMeta{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;font-size:.82rem;gap:10px 14px}.metaRow span,.detailMeta span,.timerPill{align-items:center;display:inline-flex;gap:5px}.difficultyMark{align-items:center;color:var(--ink-soft);display:inline-flex;font-size:.78rem;font-weight:700;gap:7px;text-transform:capitalize}.difficultyMark>span{display:inline-flex;gap:2px}.difficultyMark i{border:1px solid var(--hair-strong);display:block;height:10px;width:4px}.difficultyMark i.filled{background:var(--ink);border-color:var(--ink)}.scoreBadge{align-items:center;background:var(--ink);border-radius:8px;color:var(--paper);display:inline-flex;flex:0 0 auto;font-weight:800;justify-content:center;min-height:36px;min-width:44px;padding:0 9px}.scoreBadge.large{font-size:1.2rem;min-height:50px;min-width:58px}.scoreBadge.compact{min-height:30px;min-width:34px}.skillChips,.nodeList,.confidenceRows{display:flex;flex-wrap:wrap;gap:8px}.nodeChip,.plainChip,.quietBadge,.timerPill{align-items:center;background:#5970571a;border:1px solid rgba(89,112,87,.18);border-radius:999px;color:var(--sage);display:inline-flex;font-size:.75rem;font-weight:700;gap:6px;min-height:28px;padding:0 10px}.nodeChip.needsReview{background:#a9792f1f;border-color:#a9792f3d;color:#835d22}.nodeChip.detailed{border-radius:8px;min-height:46px}.nodeChip span,.suggestionCard span,.sessionRow span{min-width:0}.nodeChip strong,.nodeChip small{display:block}.nodeChip small{color:var(--muted);font-weight:500;margin-top:2px}.plainChip,.quietBadge,.timerPill{background:#4c71871a;border-color:#4c718733;color:var(--steel)}.suggestionRail{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.suggestionCard{background:var(--ink);border:1px solid rgba(246,241,232,.14);border-radius:8px;color:var(--paper);min-width:0;padding:8px;text-align:left}.suggestionCard span{display:grid;flex:1;gap:3px}.suggestionCard small{color:#f6f1e899}.detailHero,.cookHero{background:var(--paper);border:1px solid var(--hair);border-radius:8px;box-shadow:var(--shadow);display:grid;gap:22px;grid-template-columns:minmax(280px,.86fr) minmax(0,1fr);overflow:hidden}.detailHero .recipeImage,.cookHero .recipeImage{height:100%;min-height:360px}.detailHeroBody,.cookHero>div:last-child{align-content:center;display:grid;gap:18px;padding:30px 30px 30px 0}.detailHero h2,.cookHero h2{font-size:2.8rem;line-height:1}.detailGrid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.detailGrid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.panel,.importPanel{align-content:start;display:grid;gap:16px;padding:18px}.ingredientList{color:var(--ink-soft);display:grid;gap:10px;list-style:none;margin:0;padding:0}.ingredientList li{align-items:center;display:flex;gap:9px;line-height:1.35}.ingredientList li:before{background:var(--burgundy);border-radius:999px;content:"";flex:0 0 auto;height:5px;width:5px}.ingredientList.compact{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.stepList,.cookSteps{counter-reset:steps;display:grid;gap:12px;list-style:none;margin:0;padding:0}.stepList li,.cookSteps li{display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr)}.stepNumber,.bigStepNumber,.levelBox{align-items:center;background:var(--ink);color:var(--paper);display:inline-flex;font-weight:800;justify-content:center}.stepNumber{border-radius:7px;height:30px;width:30px}.stepList p,.cookSteps p{margin:2px 0 0}.stepList small,.cookSteps small{color:var(--muted);display:block;line-height:1.42;margin-top:5px}.wineGrid,.profileGrid,.coverageGrid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.pairingBlock,.profileCell{background:#ffffff6b;border:1px solid var(--hair);border-radius:8px;display:grid;gap:7px;padding:12px}.pairingBlock strong{line-height:1.2}.pairingBlock small{color:var(--burgundy);font-weight:800}.profileCell span{color:var(--muted);font-size:.76rem;font-weight:700;text-transform:uppercase}.profileCell strong{overflow-wrap:anywhere}.sessionList,.xpRows,.variantList,.matchList,.barList{display:grid;gap:10px}.sessionButton{background:transparent;color:inherit;padding:0;text-align:left;width:100%}.sessionRow{align-items:center;background:#ffffff6b;border:1px solid var(--hair);border-radius:8px;display:grid;gap:12px;grid-template-columns:72px minmax(0,1fr) auto auto;padding:8px;width:100%}.sessionRow.compact{grid-template-columns:58px minmax(0,1fr) auto}.sessionRow.compact .sessionXp{display:none}.sessionRow strong,.sessionRow small{display:block;min-width:0}.sessionRow small{color:var(--muted);margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sessionScores{color:var(--ink-soft);display:flex;gap:8px}.sessionXp{text-align:right}.fieldStack{display:grid;gap:6px}.fieldStack span,.smallTitle{color:var(--muted);font-size:.78rem;font-weight:800;margin:0;text-transform:uppercase}.fieldStack textarea{min-height:124px;padding:10px 12px;resize:vertical}.fieldStack select{padding:0 12px}.importGrid{display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr)}.reviewPanel{background:#ffffff70;border:1px solid var(--hair);border-radius:8px;display:grid;gap:14px;padding:14px}.setupStats{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.setupStats div{background:#ffffff73;border:1px solid var(--hair);border-radius:8px;display:grid;gap:4px;padding:12px}.setupStats strong{font-size:1.4rem}.setupStats span,.emptyText{color:var(--muted);font-size:.8rem}.emptyText.light{color:#f6f1e8b8}.variantToggle{align-items:center;background:#ffffff70;border:1px solid var(--hair);border-radius:8px;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr);padding:12px}.variantToggle.dark{background:#f6f1e814;border-color:#f6f1e824;color:var(--paper)}.variantToggle input,.toggleLine input{accent-color:var(--burgundy)}.variantToggle strong,.variantToggle small{display:block}.variantToggle small{color:var(--muted);margin-top:3px}.variantToggle.dark small{color:#f6f1e894}.cookMode{background:#0e0d0c;color:var(--paper);display:grid;gap:18px;margin:0 -28px -34px;min-height:calc(100vh - 72px);padding:0 28px 34px}.cookModeBar{align-items:center;background:#0e0d0ce6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(246,241,232,.12);display:flex;gap:14px;justify-content:space-between;margin:0 -28px;padding:18px 28px;position:sticky;top:72px;z-index:10}.cookModeBar h2{font-family:Marcellus,Georgia,serif;font-size:1.8rem;font-weight:400;margin:0}.cookDrawer{background:#f6f1e814;border:1px solid rgba(246,241,232,.14);border-radius:8px;padding:16px}.cookDrawer .ingredientList{color:#f6f1e8c7}.cookSteps{gap:16px}.cookSteps li{background:#f6f1e80f;border:1px solid rgba(246,241,232,.12);border-radius:8px;grid-template-columns:48px minmax(0,1fr);padding:18px}.bigStepNumber{background:var(--paper);border-radius:8px;color:var(--ink);height:48px;width:48px}.cookSteps p{font-size:1.15rem;line-height:1.5}.cookSteps small{color:#f6f1e899}.timerButton{align-items:center;background:#f6f1e81a;border:1px solid rgba(246,241,232,.2);border-radius:8px;color:var(--paper);display:inline-flex;gap:8px;margin-top:12px;min-height:40px;padding:0 12px}.timerButton.isRunning{background:var(--burgundy);border-color:var(--burgundy)}.logPanel{max-width:1080px;width:100%}.scoreScale{align-items:center;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;margin:8px 0 18px}.scoreButtons{display:grid;gap:4px;grid-template-columns:repeat(10,minmax(28px,1fr))}.scoreButtons button,.skipButton{background:#ffffff80;border:1px solid var(--hair);border-radius:7px;color:var(--ink);min-height:34px}.scoreButtons button.isActive{background:var(--burgundy);border-color:var(--burgundy);color:var(--paper)}.scoreScale>span{color:var(--muted);font-size:.84rem;grid-column:1 / -1}.xpRow,.matchRow{align-items:center;background:#ffffff6b;border:1px solid var(--hair);border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:12px}.xpRow strong,.xpRow small{display:block}.xpRow small,.matchRow small{color:var(--muted);margin-top:3px}.xpTotal{align-items:center;background:var(--ink);border-radius:8px;color:var(--paper);display:flex;justify-content:space-between;padding:14px}.awardHero{align-items:center;background:var(--ink);border-radius:8px;color:var(--paper);display:grid;justify-items:center;padding:36px 20px;text-align:center}.awardHero svg{color:#f0c077}.awardHero h2{font-size:2.5rem;margin-top:8px}.segmented{background:#ffffff7a;border:1px solid var(--hair);border-radius:8px;display:inline-flex;gap:3px;padding:3px}.segmented button{background:transparent;border-radius:6px;color:var(--ink-soft);min-height:34px;padding:0 12px}.segmented.compact button{min-height:30px;padding:0 10px}.segmented button.isActive{background:var(--ink);color:var(--paper)}.skillsLayout{display:grid;gap:16px;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr)}.treeCards{display:grid;gap:10px}.treeCard{background:var(--paper);border:1px solid var(--hair);border-radius:8px;color:var(--ink);display:grid;gap:10px;grid-template-columns:40px minmax(0,1fr);padding:14px;text-align:left}.treeCard .progressBar{grid-column:1 / -1}.treeCardIcon{align-items:center;background:var(--accent);border-radius:8px;color:var(--paper);display:inline-flex;height:40px;justify-content:center;width:40px}.treeCard strong,.treeCard small{display:block}.treeCard small{color:var(--muted);margin-top:3px}.progressBar{background:var(--hair);border-radius:999px;display:block;height:8px;overflow:hidden;width:100%}.progressBar i{border-radius:inherit;display:block;height:100%;min-width:4px}.treePanel{overflow:auto}.treeGraphWrap{background:var(--paper-warm);border:1px solid var(--hair);border-radius:8px;overflow:auto}.treeGraphWrap.compact{max-height:310px}.treeGraph{display:block;min-width:640px;width:100%}.treeGraph line{stroke:var(--hair-strong);stroke-width:1.5}.treeGraph line.isLocked{stroke:var(--hair);stroke-dasharray:5 5}.treeGraph .node circle:first-child{fill:var(--ink)}.treeGraph .node.locked circle:first-child{fill:transparent;stroke:var(--hair-strong);stroke-dasharray:4 4}.treeGraph text{dominant-baseline:middle;fill:var(--paper);font-size:13px;font-weight:800;text-anchor:middle}.treeGraph .node.locked text{fill:var(--muted)}.treeGraph .nodeLabel{fill:var(--ink-soft);font-size:11px;font-weight:600}.treeGraph .pendingDot{fill:var(--burgundy)}.treeRows,.heatNodeCards{display:grid;gap:16px}.treeRows.compact,.heatNodeCards.compact{max-height:300px;overflow:auto}.tierHeader{align-items:center;color:var(--muted);display:flex;font-size:.78rem;font-weight:800;justify-content:space-between;margin-bottom:8px;text-transform:uppercase}.treeRow,.heatNodeCard{align-items:center;background:#ffffff70;border:1px solid var(--hair);border-radius:8px;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) minmax(110px,.4fr);padding:12px}.treeRow.isLocked,.heatNodeCard.isLocked{opacity:.55}.treeRow strong,.treeRow small,.heatNodeCard strong,.heatNodeCard span{display:block}.treeRow small,.heatNodeCard span{color:var(--muted);margin-top:3px}.levelBox{border-radius:7px;height:34px;width:34px}.levelBox.locked{background:transparent;border:1px dashed var(--hair-strong);color:var(--muted)}.heatNodeCards{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.heatNodeCard{grid-template-columns:auto minmax(0,1fr) auto}.treePreview{min-height:250px}.cellarGrid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.bottleCard{display:grid;gap:16px;padding:16px;position:relative}.wineMark{border-radius:999px;height:12px;position:absolute;right:16px;top:16px;width:12px}.wineMark.full-red,.wineMark.light-red{background:var(--burgundy)}.wineMark.full-white,.wineMark.crisp-white{background:var(--gold)}.wineMark.sparkling{background:var(--steel)}.bottleFoot{align-items:end;display:flex;gap:12px;justify-content:space-between}.bottleFoot span{color:var(--muted);font-size:.82rem}.bottleFoot strong{align-items:center;background:var(--ink);border-radius:8px;color:var(--paper);display:inline-flex;justify-content:center;min-height:34px;min-width:34px}.toggleLine{align-items:center;color:var(--ink-soft);display:inline-flex;gap:8px;font-weight:700}.heatmap{display:grid;gap:5px;grid-template-columns:repeat(14,1fr)}.heatCell{aspect-ratio:1;background:#e2d7c6;border-radius:4px}.heatCell.level1{background:#d1c3ae}.heatCell.level2{background:#aa9e70}.heatCell.level3{background:#8c7044}.heatCell.level4{background:#8b1e1e}.barRow{align-items:center;display:grid;gap:10px;grid-template-columns:92px minmax(0,1fr) 28px}.barRow span,.barRow strong{font-size:.82rem}.barRow i{background:var(--steel);border-radius:999px;display:block;height:10px;min-width:6px}.scoreBars{align-items:end;display:grid;gap:10px;grid-template-columns:repeat(6,1fr);min-height:220px}.scoreBars span{align-items:end;background:linear-gradient(180deg,var(--burgundy),var(--gold));border-radius:8px 8px 0 0;color:var(--paper);display:flex;font-size:.78rem;font-weight:800;justify-content:center;min-height:30px;padding-bottom:7px}.rangeField{align-items:center;background:#ffffff7a;border:1px solid var(--hair);border-radius:8px;display:grid;gap:8px;grid-template-columns:auto minmax(130px,1fr) 62px;min-height:40px;padding:0 12px}.rangeField input{accent-color:var(--burgundy);width:100%}.mobileShell{padding-bottom:76px;overflow-x:hidden}.mobileTopbar{background:#f6f1e8e6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--hair);min-height:70px;padding:12px 16px;position:sticky;top:0;z-index:20}.mobileTopbar h1{font-size:1.38rem}.mobileWorkspace{min-width:0;overflow-x:hidden;padding:16px}.mobileNav{align-items:center;background:#171615f0;border-top:1px solid rgba(246,241,232,.12);bottom:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));left:0;min-height:68px;padding:6px 8px 8px;position:fixed;right:0;z-index:30}.mobileNavItem{background:transparent;border-radius:8px;color:#f6f1e894;display:grid;gap:4px;justify-items:center;min-height:54px;min-width:0;padding:6px 2px}.mobileNavItem span{font-size:.68rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobileNavItem.isActive{background:#f6f1e81a;color:var(--paper)}.mobileShell .recipeHeader,.mobileShell .detailHero,.mobileShell .cookHero,.mobileShell .metric,.mobileShell .panel,.mobileShell .recipeCard{box-shadow:none}.mobileShell .recipeHeader,.mobileShell .detailHero,.mobileShell .cookHero{align-items:flex-start;flex-direction:column;display:flex;min-width:0;width:100%}.mobileShell .recipeHeaderActions,.mobileShell .topbarActions{align-items:stretch;flex-direction:column;min-width:0;width:100%}.mobileShell .searchBox,.mobileShell select,.mobileShell .actionButton,.mobileShell .ghostButton,.mobileShell .rangeField{max-width:100%;min-width:0;width:100%}.mobileShell .metricStrip,.mobileShell .suggestionRail,.mobileShell .detailGrid,.mobileShell .detailGrid.three,.mobileShell .skillsLayout,.mobileShell .wineGrid,.mobileShell .profileGrid,.mobileShell .coverageGrid,.mobileShell .importGrid{grid-template-columns:1fr}.mobileShell .detailHero .recipeImage,.mobileShell .cookHero .recipeImage{height:240px;min-height:240px}.mobileShell .detailHeroBody,.mobileShell .cookHero>div:last-child{padding:18px}.mobileShell .detailHero h2,.mobileShell .cookHero h2{font-size:2rem}.mobileShell .sessionRow{grid-template-columns:58px minmax(0,1fr)}.mobileShell .sessionScores,.mobileShell .sessionXp{grid-column:2;text-align:left}.mobileShell .cookMode{margin:-16px -16px -76px;min-height:calc(100vh - 70px);padding:0 16px 92px}.mobileShell .cookModeBar{align-items:stretch;flex-direction:column;margin:0 -16px;padding:14px 16px;top:70px}.mobileShell .cookModeActions{align-items:stretch;display:grid;grid-template-columns:repeat(3,1fr)}.mobileShell .cookSteps li{grid-template-columns:38px minmax(0,1fr);padding:14px}.mobileShell .bigStepNumber{height:38px;width:38px}.mobileShell .cookSteps p{font-size:1rem}@media (max-width: 1100px){.desktopShell{grid-template-columns:74px minmax(0,1fr)}.brandButton span,.navItem span,.sidebarFooter{display:none}.brandButton,.navItem{justify-content:center}.sidebar{padding:14px 10px}.metricStrip,.suggestionRail,.detailGrid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.skillsLayout,.detailGrid{grid-template-columns:1fr}}@media (max-width: 720px){.desktopShell{display:block}.desktopShell .sidebar{display:none}.workspace{padding:0 16px 24px}.topbar{margin:0 -16px 16px;padding:12px 16px}.metricStrip,.suggestionRail,.detailGrid,.detailGrid.three,.wineGrid,.profileGrid,.coverageGrid,.importGrid{grid-template-columns:1fr}.recipeHeader,.detailHero,.cookHero{align-items:flex-start;flex-direction:column;display:flex}.recipeHeaderActions{align-items:stretch;flex-direction:column;width:100%}.searchBox,.recipeHeaderActions select,.actionButton,.ghostButton,.rangeField{width:100%}.detailHero .recipeImage,.cookHero .recipeImage{height:240px;min-height:240px}.detailHeroBody,.cookHero>div:last-child{padding:18px}.detailHero h2,.cookHero h2{font-size:2rem}.scoreButtons{grid-template-columns:repeat(5,1fr)}}.emptyHint{color:#ffffff8c;font-size:.92rem;padding:.4rem .2rem}.bottleActions{display:flex;gap:.4rem;margin-top:.6rem}.ghostButton.small{padding:.3rem .7rem;font-size:.82rem}.ghostButton.danger{color:#c0573d;border-color:#c0573d66}.ghostButton.danger:hover{background:#c0573d1f}.bottleForm{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem 1rem;margin-top:.8rem}.bottleForm .fullRow{grid-column:1 / -1}.formActions{display:flex;gap:.6rem;justify-content:flex-end}.formError{color:#c0573d;font-size:.88rem}@media (max-width: 720px){.bottleForm{grid-template-columns:1fr;gap:.7rem}.bottleForm input,.bottleForm select,.bottleForm textarea{font-size:1rem;padding:.65rem .75rem}.formActions{flex-direction:column-reverse;gap:.5rem}.formActions .ghostButton,.formActions .actionButton{width:100%;justify-content:center}.importPanel{padding:1rem}}
