/*
Theme Name: Niewyplute Editorial
Author: Niewyplute
Description: High-contrast editorial cooking website with bilingual recipe views.
Version: 1.0.4
Text Domain: niewyplute
Requires PHP: 8.0
*/
:root{--red:#c81922;--ink:#151515;--paper:#f8f5ef;--cream:#f2e8d5;--muted:#655f5b;--line:#d9d1c7;--max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.57}button,input,select{font:inherit}a{color:inherit}a:hover{text-decoration-color:var(--red)}button,.pill{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--red);outline-offset:3px}.wrap{max-width:var(--max);width:calc(100% - 48px);margin-inline:auto}.header{position:sticky;top:0;z-index:30;background:rgba(248,245,239,.98);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{text-decoration:none;font-size:1.65rem;font-weight:950;letter-spacing:-.065em;white-space:nowrap;line-height:1}.logo::after{content:".";color:var(--red)}.nav{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.nav a{font-weight:750;font-size:.85rem;text-decoration:none;letter-spacing:.005em}.nav a[aria-current=page]{border-bottom:2px solid var(--red)}.lang{display:flex;border:1px solid var(--line);border-radius:99px;overflow:hidden;flex-shrink:0}.lang a{font-size:.78rem;font-weight:800;padding:7px 11px;text-decoration:none}.lang a.active{background:var(--ink);color:var(--paper)}.mob-nav{display:none}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:900;color:var(--red)}.hero{min-height:610px;background:var(--ink);color:#fff;display:grid;grid-template-columns:1.15fr .85fr;overflow:hidden}.hero-copy{padding:clamp(36px,6vw,105px) 5vw;display:flex;flex-direction:column;justify-content:center}.hero h1{font-size:clamp(3.2rem,6.4vw,7.9rem);line-height:.91;letter-spacing:-.085em;max-width:750px;margin:.4em 0 .25em;text-transform:uppercase;font-weight:1000}.hero .eyebrow{color:#ef5b54}.hero p{font-size:1.12rem;color:#e1d5c9;max-width:480px}.hero-cover{background:#a70a13;position:relative;min-height:520px}.hero-cover:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink),transparent 18%);z-index:1;pointer-events:none}.hero-cover img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:3px;background:var(--red);color:white;padding:15px 23px;text-transform:uppercase;font-size:.8rem;font-weight:950;letter-spacing:.08em;text-decoration:none;min-height:46px}.btn:hover{background:#9d121c;color:#fff}.btn.black{background:var(--ink)}.btn.outline{background:transparent;border:1px solid var(--ink);color:var(--ink)}.section{padding:72px 0}.section-top{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}.section-title{font-weight:950;letter-spacing:-.055em;text-transform:uppercase;font-size:clamp(2.2rem,4vw,4.2rem);line-height:1.02;margin:7px 0 0}.section-lead{color:var(--muted);max-width:580px;margin:8px 0 25px}.accent-bar{width:70px;height:5px;background:var(--red);margin:30px 0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.recipe-card{border:1px solid var(--line);background:#fff;display:flex;flex-direction:column;text-decoration:none;transition:transform .2s,border-color .2s;min-width:0}.recipe-card:hover{transform:translateY(-4px);border-color:#baafa5}.recipe-photo{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:#312e2b}.recipe-card .content{padding:22px;flex:1}.recipe-card .tag{color:var(--red);font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.12em}.recipe-card h3{margin:.4em 0 .6em;font-size:1.38rem;line-height:1.19;letter-spacing:-.035em}.recipe-card p{margin:0;color:var(--muted);font-size:.9rem}.placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(155deg,#332a27,#7c201c);color:#fff;font-weight:900;letter-spacing:.12em;padding:16px;text-align:center}.stripe{background:var(--red);color:#fff;padding:70px 0}.stripe h2{font-size:clamp(2.4rem,5vw,6rem);line-height:.99;text-transform:uppercase;letter-spacing:-.075em;font-weight:950;margin:0}.principles{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:30px}.principle{padding:24px;border-top:4px solid var(--red);background:white}.principle h3{font-size:1.25rem;line-height:1.12;text-transform:uppercase;letter-spacing:-.025em}.principle p{color:var(--muted);font-size:.92rem}.footer{background:var(--ink);color:var(--cream);padding:50px 0 25px}.footer-top{display:flex;justify-content:space-between;gap:30px}.footer a{color:inherit;text-decoration:none}.footer p{color:#b9b1ab}.footer-bottom{border-top:1px solid #4a4541;padding-top:20px;margin-top:38px;font-size:.78rem;color:#b8b3ab}.pagehead{padding:65px 0 35px;border-bottom:1px solid var(--line)}.pagehead h1{font-size:clamp(3rem,7vw,7rem);font-weight:950;text-transform:uppercase;line-height:.95;letter-spacing:-.075em;margin:14px 0}.filterbar{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.filter{border:1px solid var(--line);border-radius:99px;font-weight:750;text-decoration:none;padding:10px 17px;background:white;font-size:.82rem}.filter.active{background:var(--ink);border-color:var(--ink);color:white}.search-field{width:100%;max-width:500px;background:white;border:1px solid var(--line);padding:15px 18px;border-radius:2px}.empty{padding:60px 0;color:var(--muted)}.recipe-head{padding:54px 0 20px}.breadcrumb{font-size:.8rem;color:var(--muted)}.recipe-head h1{font-size:clamp(3.2rem,6.3vw,6.5rem);line-height:.99;letter-spacing:-.075em;margin:12px 0 17px}.recipe-head .metadata{display:flex;gap:24px;flex-wrap:wrap;font-weight:700;font-size:.84rem;color:#666}.recipe-hero{width:100%;max-height:570px;aspect-ratio:16/8.5;object-fit:cover;display:block;margin:20px 0 32px;background:#4a2928}.recipe-grid{display:grid;grid-template-columns:minmax(260px,390px) minmax(0,1fr);align-items:start;gap:clamp(25px,5vw,75px);padding-bottom:75px}.intro-text{font-size:1.1rem;max-width:820px;line-height:1.75;margin-bottom:42px}.intro-text p{margin:0 0 17px}.ingredients-panel{position:sticky;top:108px;background:#fff;border-top:5px solid var(--red);padding:24px;box-shadow:0 12px 35px #100c0a0b}.small-title{font-size:1.4rem;text-transform:uppercase;letter-spacing:-.04em;line-height:1.1;margin:0 0 24px}.serving-control{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:10px;border-bottom:1px solid var(--line);padding-bottom:15px}.serving-control label{font-size:.77rem;color:var(--muted);font-weight:800;text-transform:uppercase}.serving-control select{padding:8px;border:1px solid var(--line);background:#fff}.ing{display:flex;gap:11px;align-items:flex-start;margin:12px 0;line-height:1.35;font-size:.91rem}.ing input{width:18px;height:18px;accent-color:var(--red);margin-top:1px;flex-shrink:0}.ing input:checked+span{text-decoration:line-through;color:#999}.steps{counter-reset:step}.step{position:relative;padding:0 0 19px 54px;margin-bottom:18px;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.7}.step:before{counter-increment:step;content:counter(step);position:absolute;left:0;top:0;color:var(--red);font-size:1.5rem;line-height:1;font-weight:950}.step.heading{font-size:1.27rem;font-weight:900;counter-increment:none}.step.heading:before{content:"•"}.source{padding:22px;background:#eee5d8;margin:35px 0;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.source img{width:118px;height:118px;background:white;padding:7px}.source p{margin:7px 0}.source a{overflow-wrap:anywhere}.recipe-actions{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0 40px}.note-original{padding:18px;border-left:4px solid var(--red);background:#f4e8da;margin:20px 0}.pantry-layout{display:grid;grid-template-columns:minmax(270px,380px) minmax(0,1fr);gap:40px;padding:30px 0 100px}.pantry-filters{background:white;padding:26px;border-top:5px solid var(--red);align-self:start}.pantry-choice{display:flex;gap:9px;align-items:center;font-size:.86rem;padding:8px 2px;cursor:pointer}.pantry-choice input{accent-color:var(--red);width:17px;height:17px}.pantry-count{font-weight:900;margin-bottom:15px}.pantry-results .result-group{margin-bottom:36px}.result-row{display:flex;gap:15px;padding:15px 0;border-bottom:1px solid var(--line);text-decoration:none;align-items:center}.result-row img,.result-row .placeholder{width:100px;height:83px;aspect-ratio:unset;object-fit:cover;flex-shrink:0}.result-row strong{font-size:1rem;line-height:1.25;display:block}.result-row small{font-size:.8rem;color:var(--muted);display:block;margin-top:6px}.pantry-prompt{margin:60px 0;color:var(--muted)}.book-hero{display:grid;grid-template-columns:1fr 330px;gap:60px;align-items:center;padding:65px 0}.book-hero img{width:100%;box-shadow:25px 25px 0 #ddd2c4}.prose{max-width:780px;padding:35px 0 80px;font-size:1.1rem;line-height:1.85}.prose p{margin:0 0 20px}.master-card{background:var(--ink);color:white;padding:55px;margin-bottom:25px}.master-card h2{font-size:2.7rem;line-height:1;letter-spacing:-.05em}@media(max-width:900px){.nav{gap:13px}.nav a{font-size:.76rem}.hero{grid-template-columns:1fr 42%}.hero h1{font-size:clamp(3rem,6.3vw,5rem)}.hero-cover{min-height:430px}.principles{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.wrap{width:calc(100% - 34px)}.header-inner{height:65px}.logo{font-size:1.4rem}.nav{display:none}.mob-nav{display:block}.mob-nav summary{padding:9px 6px;cursor:pointer;font-weight:900}.mob-nav[open] .menu-panel{position:absolute;background:var(--paper);left:0;right:0;top:65px;display:grid;gap:6px;padding:20px;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #0001}.mob-nav .menu-panel a{padding:8px 4px;text-decoration:none;font-weight:800}.hero{display:flex;flex-direction:column}.hero-copy{padding:55px 26px 45px}.hero h1{font-size:clamp(3.2rem,13.1vw,5.2rem)}.hero-cover{min-height:330px;max-height:440px}.hero-cover:before{background:linear-gradient(0deg,transparent,#151515 100%);height:40%;bottom:auto}.section{padding:45px 0}.section-title{font-size:2.35rem}.section-top{align-items:start;flex-direction:column}.cards{grid-template-columns:1fr;gap:15px}.principles{grid-template-columns:1fr}.footer-top{display:block}.recipe-head h1{font-size:clamp(2.8rem,12vw,4.2rem)}.recipe-hero{aspect-ratio:4/3}.recipe-grid,.pantry-layout{grid-template-columns:1fr}.ingredients-panel{position:relative;top:0}.recipe-grid .ingredients-panel{order:1}.recipe-grid .method{order:2}.pantry-filters{max-height:none}.book-hero{grid-template-columns:1fr;gap:30px;padding:34px 0}.book-hero img{max-width:250px}.source{align-items:start}.pagehead{padding:45px 0 23px}}@media print{.header,.footer,.btn,.recipe-actions,.source img,.search-field,.filterbar,.mob-nav{display:none!important}.wrap{max-width:100%}.recipe-grid{display:block}.ingredients-panel{box-shadow:none;border:0;padding:0;page-break-inside:avoid}.recipe-hero{max-height:220px}.recipe-head h1{font-size:2.5rem}.step{padding-bottom:7px;margin-bottom:8px}.hero{display:none}}

/* Niewyplute 1.0.1: consistent, wider recipe listing */
:root{--max:1480px}
#catalog-cards{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:24px}
#catalog-cards .catalog-item{min-width:0;display:flex}
#catalog-cards .catalog-item[hidden]{display:none!important}
#catalog-cards .recipe-card{width:100%;height:100%;display:flex;flex-direction:column}
#catalog-cards .recipe-photo{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;flex:none}
#catalog-cards .recipe-card .content{flex:1;display:flex;flex-direction:column}
#catalog-cards .recipe-card h3{flex:1}
@media(max-width:960px){#catalog-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){#catalog-cards{grid-template-columns:1fr}}

/* 1.0.2: pantry list with predictable scrolling and uncut labels */
.pantry-filters{min-width:0}.pantry-choice{align-items:flex-start;overflow-wrap:anywhere}.pantry-choice span{flex:1;min-width:0}.pantry-choice input{flex:0 0 17px;margin-top:3px}#pantry-options{max-height:540px;overflow-y:auto;overscroll-behavior:contain;padding:4px 8px 4px 0;scrollbar-gutter:stable}#pantry-options .pantry-choice{border-bottom:1px solid #f0ece7}.pantry-filters .search-field{min-width:0}

/* v1.0.3: recipe card metadata */
.recipe-card .card-metadata{display:flex;gap:9px 20px;align-items:center;flex-wrap:wrap;margin-top:auto;padding-top:14px;color:var(--muted);font-size:.85rem}
.recipe-card .card-meta{display:inline-flex;align-items:center;gap:6px;min-width:0;line-height:1.4}
.recipe-card .card-meta svg{flex:0 0 17px;color:var(--red)}
.recipe-card .content{display:flex;flex-direction:column}
.recipe-card .content h3{flex:1}

/* 1.0.4: grouped pantry and saved selection */
.pantry-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0}.pantry-tab{border:1px solid var(--line);background:#f8f5ef;border-radius:5px;padding:7px 10px;font-size:.77rem;line-height:1.3;text-align:left}.pantry-tab.active{background:var(--ink);border-color:var(--ink);color:white}.pantry-picked{margin:18px 0 0}.pantry-picked>strong{font-size:.82rem;text-transform:uppercase}.pantry-chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.pantry-chip{background:#f6e7e4;border:1px solid #e6c9c5;color:#5a2020;border-radius:4px;padding:5px 9px;font-size:.77rem;max-width:100%;overflow-wrap:anywhere}.pantry-no-products{color:var(--muted);font-size:.88rem}.pantry-filters{min-width:0}.pantry-tabs button:focus-visible,.pantry-chip:focus-visible{outline:2px solid var(--red);outline-offset:2px}@media(max-width:680px){.pantry-layout{gap:25px}.pantry-tabs{gap:6px}#pantry-options{max-height:340px}}
