.cooking-planner{padding-bottom:7rem}.cooking-planner h2{margin:.2rem 0;font:700 clamp(1.55rem,3vw,2.15rem)/1.3 Georgia,"Noto Serif TC",serif}.planner-eyebrow{margin:0;color:var(--gold);font-size:.78rem;font-weight:700;letter-spacing:.14em}.planner-settings{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem;padding:1.4rem;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(120deg,#162b4af5,#0a1629fa)}.planner-settings p:last-child,.npc-section-heading p{margin:.3rem 0 0;color:var(--text-muted);font-size:.92rem}.planner-settings__actions{display:flex;align-items:end;gap:.7rem}.planner-character{display:grid;gap:.35rem}.planner-character span{display:flex;align-items:center;gap:.4rem;color:var(--text-muted);font-size:.86rem}.planner-character input{width:7rem;min-height:46px;padding:.6rem .75rem;border:1px solid var(--line);border-radius:10px;outline:0;color:var(--text);background:#081426;font-size:1rem}.planner-reset{min-height:46px;display:flex;align-items:center;gap:.45rem;padding:.65rem .9rem;border:1px solid var(--line);border-radius:10px;color:var(--text-muted);background:transparent;cursor:pointer}.planner-reset:hover{color:#fda4af;border-color:#fb718559}.planner-workspace{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(20rem,.85fr);gap:1rem;align-items:start}.recipe-browser,.selected-plan,.purchase-results{min-width:0;padding:1.3rem;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(150deg,#122643f7,#081222fc)}.planner-section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.planner-section-heading>span{padding:.3rem .6rem;border:1px solid var(--line);border-radius:99px;color:var(--text-muted);font-size:.78rem}.recipe-filters{display:grid;grid-template-columns:minmax(10rem,1fr) repeat(2,minmax(8rem,.55fr));gap:.55rem;margin-bottom:1rem}.recipe-search{display:flex;align-items:center;gap:.5rem;padding:0 .75rem;border:1px solid var(--line);border-radius:10px;color:var(--text-dim);background:#081426}.recipe-search input,.recipe-filters select{width:100%;min-height:44px;border:0;outline:0;color:var(--text);background:transparent;font:inherit}.recipe-filters select{padding:.55rem .7rem;border:1px solid var(--line);border-radius:10px;background:#081426}.recipe-categories{display:grid;gap:.55rem}.recipe-category{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#050d1b6b}.recipe-category summary{display:flex;align-items:center;gap:.6rem;padding:.85rem 1rem;cursor:pointer;list-style:none}.recipe-category summary::-webkit-details-marker{display:none}.recipe-category summary span{font-weight:700}.recipe-category summary small{margin-left:auto;color:var(--text-dim);font-size:.78rem}.recipe-category summary svg{color:var(--gold);transition:transform .2s}.recipe-category[open] summary svg{transform:rotate(180deg)}.recipe-category__list{border-top:1px solid var(--line)}.recipe-option{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;border-bottom:1px solid var(--line)}.recipe-option:last-child{border:0}.recipe-option>div{min-width:0}.recipe-option strong,.recipe-option span{display:block}.recipe-option span{margin-top:.15rem;color:var(--text-dim);font-size:.8rem}.recipe-option button{flex:0 0 auto;display:flex;align-items:center;gap:.3rem;padding:.45rem .65rem;border:1px solid rgba(242,198,109,.35);border-radius:9px;color:var(--gold);background:#f2c66d12;cursor:pointer}.selected-list{display:grid;gap:.55rem}.selected-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.65rem;padding:.75rem;border:1px solid var(--line);border-radius:12px;background:#050d1b7a}.selected-item__name{min-width:0}.selected-item__name strong,.selected-item__name span{display:block}.selected-item__name span{margin-top:.15rem;color:var(--text-dim);font-size:.78rem}.quantity-control{display:grid;grid-template-columns:34px 3.6rem 34px}.quantity-control button,.selected-item__remove{display:grid;place-items:center;border:1px solid var(--line);color:var(--text-muted);background:#0a1729;cursor:pointer}.quantity-control button:first-child{border-radius:8px 0 0 8px}.quantity-control button:last-child{border-radius:0 8px 8px 0}.quantity-control input{min-width:0;height:36px;padding:.25rem;border-block:1px solid var(--line);border-inline:0;outline:0;color:var(--text);background:#081426;text-align:center}.selected-item__remove{width:36px;height:36px;border-radius:9px}.selected-item__remove:hover{color:#fda4af}.selected-empty,.result-empty{padding:3rem 1rem;text-align:center;color:var(--text-dim)}.selected-empty strong,.selected-empty p,.result-empty strong,.result-empty p{display:block}.selected-empty strong,.result-empty strong{margin-top:.6rem;color:var(--text)}.selected-empty p,.result-empty p{margin:.25rem 0 0;font-size:.88rem}.planner-empty{padding:2rem;text-align:center;color:var(--text-dim)}.purchase-results{margin-top:1rem}.result-status{display:flex!important;align-items:center;gap:.3rem!important}.result-status--ok{color:#86efac!important;border-color:#4ade804d!important}.result-status--short{color:#fda4af!important;border-color:#fb718559!important}.purchase-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.purchase-material{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem;border:1px solid var(--line);border-radius:12px;background:#050d1b7a}.purchase-material strong,.purchase-material span{display:block}.purchase-material span{margin-top:.15rem;color:var(--text-dim);font-size:.78rem}.purchase-material b{display:flex;align-items:center;gap:.3rem;color:#86efac;font-size:.8rem;white-space:nowrap}.purchase-material--short{border-color:#fb718561;background:#7f1d1d1f}.purchase-material--short b{color:#fda4af}.npc-section-heading{display:flex;align-items:center;gap:.65rem;margin:1.5rem 0 .8rem}.npc-section-heading>svg{color:var(--gold)}.npc-section-heading h3{margin:0}.npc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.npc-card{padding:1rem;border:1px solid var(--line);border-radius:14px;background:#050d1b8f}.npc-card h3{margin:0 0 .7rem;padding-bottom:.65rem;border-bottom:1px solid var(--line);font-size:1rem}.npc-card ul{display:grid;gap:.45rem;margin:0;padding:0;list-style:none}.npc-card li{display:flex;justify-content:space-between;gap:.6rem;color:var(--text-muted);font-size:.86rem}.npc-card li strong{color:var(--text)}.npc-card li small{color:var(--text-dim);font-weight:400}@media(max-width:1000px){.planner-workspace{grid-template-columns:1fr}.purchase-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.npc-grid{grid-template-columns:1fr}}@media(max-width:720px){.planner-settings{align-items:stretch;flex-direction:column}.planner-settings__actions{align-items:stretch}.planner-character{flex:1}.planner-character input{width:100%}.recipe-filters,.purchase-summary{grid-template-columns:1fr}}@media(max-width:520px){.cooking-planner{padding-bottom:4rem}.recipe-browser,.selected-plan,.purchase-results{padding:1rem}.planner-settings__actions{display:grid;grid-template-columns:1fr}.recipe-option{align-items:flex-start;flex-direction:column}.recipe-option button{width:100%;justify-content:center}.selected-item{grid-template-columns:1fr auto}.selected-item__name{grid-column:1/-1}.quantity-control{grid-template-columns:38px minmax(4rem,1fr) 38px}.planner-section-heading{align-items:flex-start}.purchase-material{align-items:flex-start;flex-direction:column}.purchase-material b{white-space:normal}}.planner-character select{width:8.5rem;min-height:46px;padding:.6rem .75rem;border:1px solid var(--line);border-radius:10px;outline:0;color:var(--text);background:#081426;font-size:1rem}.recipe-filters{display:block}.recipe-option .recipe-ingredients{margin-top:.28rem;color:var(--text-muted);font-size:.86rem;line-height:1.55}.recipe-option__title{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.cooking-tag{display:inline-flex!important;width:max-content;margin:0!important;padding:.16rem .45rem;border:1px solid;border-radius:999px;font-size:.74rem!important;line-height:1.25!important}.cooking-tag--advanced{color:#6ee7b7!important;border-color:#34d39959;background:#064e3b80}.cooking-tag--rare{color:#93c5fd!important;border-color:#60a5fa61;background:#1e40af66}.cooking-tag--elite{color:#c4b5fd!important;border-color:#a78bfa61;background:#4c1d957a}.cooking-tag--unavailable{color:#cbd5e1!important;border-color:#94a3b84d;background:#47556959}.ingredient-results{min-width:0;margin-top:1rem;padding:1.3rem;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(150deg,#122643f7,#081222fc)}.collapsible-results>summary{margin-bottom:0;cursor:pointer;list-style:none}.collapsible-results>summary::-webkit-details-marker{display:none}.collapsible-results>summary svg{transition:transform .2s ease}.collapsible-results[open]>summary{margin-bottom:1rem}.collapsible-results[open]>summary svg{transform:rotate(180deg)}.section-description{margin:.3rem 0 0;color:var(--text-muted);font-size:.92rem}.planner-section-heading>svg{flex:0 0 auto;color:var(--gold)}.ingredient-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.ingredient-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem .75rem;padding:.9rem;border:1px solid var(--line);border-radius:12px;background:#050d1b7a}.ingredient-card strong,.ingredient-card span{display:block}.ingredient-card span,.ingredient-card small{color:var(--text-dim);font-size:.8rem}.ingredient-card b{align-self:center;color:var(--gold);font-size:.88rem;white-space:nowrap}.ingredient-card small{grid-column:1 / -1;line-height:1.5}.other-material-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}.other-material-list article{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.8rem .9rem;border:1px solid var(--line);border-radius:11px;color:var(--text-muted);background:#050d1b7a}.other-material-list strong{color:var(--text)}.inline-empty{margin:0;padding:1.35rem;border:1px dashed var(--line);border-radius:12px;color:var(--text-dim);text-align:center}@media(max-width:1000px){.ingredient-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.other-material-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.planner-character select{width:100%}.ingredient-grid{grid-template-columns:1fr}.other-material-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.ingredient-results{padding:1rem}.other-material-list{grid-template-columns:1fr}}.purchase-total{margin-left:auto;padding:.45rem .7rem;border:1px solid rgba(242,198,109,.35);border-radius:9px;color:var(--gold);background:#f2c66d12;white-space:nowrap}@media(max-width:720px){.npc-section-heading{align-items:flex-start;flex-wrap:wrap}.purchase-total{width:100%;margin-left:0;text-align:center}}
