
:root{--green:#375d23;--brown:#3c2116;--warm:#f7f4ee;--border:#e9e2d8;--muted:#766a60}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#2b211c;background:#fff;font-family:Arial,'Segoe UI',sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}header{height:76px;border-bottom:1px solid #eee;background:rgba(255,255,255,.97);position:sticky;top:0;z-index:8;box-shadow:0 1px 5px #00000009} .nav-inner{max-width:1440px;margin:auto;padding:0 28px;display:flex;align-items:center;gap:30px;height:100%}.brand{display:flex;gap:12px;align-items:center;white-space:nowrap;color:var(--brown)}.brand .hat{font-size:40px;line-height:1}.brand-name{font:700 27px Georgia,serif;display:block}.tagline{font:15px Georgia,serif}nav{display:flex;gap:24px;margin:auto;font-size:15px}nav a:hover,.topic:hover{color:var(--green)}.search-top{border:1px solid #e0dfdc;border-radius:30px;padding:11px 17px;width:260px;background:#fff}.shell{max-width:1410px;margin:0 auto;padding:0 28px}.hero{min-height:310px;background:linear-gradient(90deg,#1a130bc9,#120e0900 85%),url('hero.webp') center/cover;display:flex;align-items:center;color:white}.hero-inner{width:100%;max-width:1410px;margin:auto;padding:36px 48px}.hero h1{font:700 clamp(33px,4.4vw,60px)/.96 Georgia,serif;margin:0 0 10px;max-width:570px}.hero p{font:22px/1.24 Georgia,serif;max-width:450px;margin:8px 0 22px}.hero-search{display:flex;border-radius:26px;overflow:hidden;background:white;width:min(590px,100%);padding:3px}.hero-search input{width:100%;padding:12px 20px;border:0;min-width:0;outline:0}.hero-search button,.btn{background:var(--green);color:white;border:0;border-radius:23px;padding:10px 26px;font-weight:600}.tiles{display:grid;grid-template-columns:repeat(10,1fr);gap:13px;padding:24px 0 8px}.tile{text-align:center;font-weight:700;font-size:15px}.tile img{width:100%;height:110px;object-fit:cover;border-radius:8px;display:block;margin-bottom:9px}.tile:hover img{filter:brightness(.94)}.section{padding:20px 0}.section h2{font:700 29px Georgia,serif;color:#30190f;margin:14px 0 20px}.cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:17px}.card{display:flex;flex-direction:column;overflow:hidden;border-radius:9px;border:1px solid #f0ede9;box-shadow:0 2px 14px #0000000b;background:white}.card img{width:100%;height:160px;object-fit:cover}.card .ct{padding:12px 14px;flex:1}.card strong{font:700 18px/1.17 Georgia,serif;display:block}.card small{color:var(--green);display:block;margin-top:8px}.card:hover{box-shadow:0 6px 20px #00000018}.split{display:grid;grid-template-columns:1.2fr .9fr;gap:25px;margin:25px 0}.banner{background:linear-gradient(90deg,#1a130ebd,#0000),url('occasion-food.webp') center/cover;border-radius:9px;min-height:245px;display:flex;align-items:center;padding:34px;color:#fff}.banner h2{font:700 38px/1 Georgia,serif;margin:0 0 12px}.banner p{font:21px Georgia,serif}.panel{background:#f7f3ed;border-radius:9px;padding:20px}.panel h2{margin-top:0}.chapters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.chapter{border-radius:10px;border:1px solid var(--border);background:#fff;overflow:hidden}.chapter img{width:100%;height:115px;object-fit:cover}.chapter div{padding:13px}.chapter strong{font:700 20px Georgia,serif;display:block}.chapter small,.muted{color:var(--muted)}.chapter:hover{background:#fcfaf7}.filter-wrap{background:var(--warm);padding:18px;border-radius:12px;display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:13px 0 22px}.filter-wrap input,.filter-wrap select{border:1px solid #e0d7cb;padding:12px;border-radius:6px;background:white;min-width:165px;flex:1}.recipe-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.recipe-list .item{border:1px solid var(--border);padding:16px;border-radius:9px;display:block;background:#fff;min-height:115px}.item:hover{border-color:#9b9e86;background:#fdfaf7}.item strong{font:700 18px/1.16 Georgia,serif;display:block;margin:7px 0}.item small,.item span{color:var(--muted);font-size:12px}.item .label{color:var(--green);font-size:12px;font-weight:700}.footer{border-top:1px solid #eee;margin-top:40px;padding:22px 0;color:#75675e;font-size:13px}.crumbs{padding:23px 0;color:#75675e;font-size:14px}.crumbs a{color:var(--green)}.recipe-head{text-align:center;margin:15px auto 24px;max-width:980px}.recipe-head h1{font:700 clamp(32px,4.2vw,56px)/1.05 Georgia,serif;color:var(--brown);margin:12px 0}.recipe-head p{font-size:16px;color:#726258}.pill{display:inline-block;background:#edf2e5;border-radius:20px;color:var(--green);font-size:13px;font-weight:700;padding:7px 14px}.reader{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,.65fr);gap:24px;align-items:start}.scan-photo{background:#f9f6f0;border:1px solid #eee;border-radius:9px;padding:12px;min-width:0}.scan-photo img{display:block;width:100%;height:auto;max-width:1150px;margin:auto;object-fit:contain;box-shadow:0 3px 15px #00000017}.scan-photo .tools{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0 0}.scan-photo .tools a,.outline-btn{border:1px solid #ddd0c2;background:#fff;border-radius:7px;padding:9px 14px;font-size:14px}.reader-side{background:#faf7f1;border-radius:9px;padding:22px;position:sticky;top:98px}.reader-side h2{font:700 24px Georgia,serif}.reader-side p{line-height:1.5;color:#65574d}.reader-side .btn{display:inline-flex}.ocr{margin:24px auto;max-width:980px;border:1px solid var(--border);padding:18px;border-radius:8px}.ocr summary{cursor:pointer;font-weight:700}.ocr pre{font:14px/1.5 Arial,sans-serif;white-space:pre-wrap;word-wrap:break-word;color:#403c38}.related{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.related a{padding:15px;border:1px solid var(--border);border-radius:7px}.related strong{display:block;margin-top:7px} .notice{padding:14px 19px;border-left:3px solid #ba9d6b;background:#faf8f2;color:#5c4b38;margin:18px 0;line-height:1.5}.chapter-cover{background:#f8f4ee;padding:25px;border-radius:12px;display:flex;align-items:center;gap:26px;margin:18px 0}.chapter-cover img{width:230px;height:160px;object-fit:cover;border-radius:7px}.chapter-cover h1{font:700 43px Georgia,serif;margin:0 0 9px}.chapter-cover p{margin:0;color:var(--muted)} .group-heading{margin:35px 0 13px;font:700 26px Georgia,serif} @media print{header,.scan-photo .tools,.reader-side,.ocr,.footer,.related,.crumbs{display:none!important}.reader{display:block}.scan-photo{border:0;padding:0}.scan-photo img{max-height:95vh;width:auto;margin:auto}body{background:#fff}}@media(max-width:1000px){.tiles{grid-template-columns:repeat(5,1fr)}.cards{grid-template-columns:repeat(3,1fr)}.chapters,.recipe-list{grid-template-columns:repeat(3,1fr)}.search-top{width:180px}nav{gap:12px}.reader{grid-template-columns:1fr}.reader-side{position:static}}@media(max-width:660px){header{height:auto}.nav-inner{padding:10px 13px;gap:10px;flex-wrap:wrap}.brand-name{font-size:21px}.brand .hat{font-size:30px}.tagline{font-size:12px}nav{order:3;gap:17px;width:100%;justify-content:center;font-size:13px}.search-top{width:145px;margin-left:auto;padding:8px 10px}.shell{padding:0 15px}.hero{min-height:270px}.hero-inner{padding:23px 19px}.hero h1{font-size:36px}.hero p{font-size:18px}.tiles{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.tile img{height:65px}.tile{font-size:11px;overflow-wrap:anywhere}.cards,.related{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.card img{height:100px}.card strong{font-size:15px}.split{grid-template-columns:1fr}.chapters,.recipe-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.chapter img{height:85px}.chapter strong{font-size:16px}.recipe-list .item{padding:10px}.item strong{font-size:16px}.reader-side{padding:16px}.scan-photo{padding:5px}.chapter-cover{padding:14px}.chapter-cover img{width:115px;height:105px}.chapter-cover h1{font-size:28px}}

/* --- V11 additions --- */
.recipe-summary{display:grid;gap:24px;margin:26px 0 28px}
.recipe-hero{background:#fff;border:1px solid #eadfd3;border-radius:24px;overflow:hidden;box-shadow:0 10px 35px rgba(64,33,6,.06)}
.recipe-hero img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.recipe-hero figcaption{padding:12px 18px;color:#6f5b4c;font-size:.96rem;background:#faf5ef}
.quick-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}
.quick-meta .meta-card{background:#fff;border:1px solid #eadfd3;border-radius:18px;padding:16px 18px;box-shadow:0 8px 26px rgba(64,33,6,.05)}
.quick-meta .meta-card span{display:block;color:#7a6858;font-size:.9rem;margin-bottom:4px}
.quick-meta .meta-card strong{font-size:1.05rem;color:#2d2015}
.text-card-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:24px}
.text-card,.steps-card{background:#fff;border:1px solid #eadfd3;border-radius:24px;padding:22px;box-shadow:0 10px 30px rgba(64,33,6,.06)}
.text-card h2,.steps-card h2{margin:0 0 14px;font-size:1.4rem;color:#2d2015}
.ingredients-list,.steps-list{margin:0;padding-left:22px}
.ingredients-list li,.steps-list li{margin:0 0 11px;line-height:1.6}
.helper-note{background:#fff8ef;border:1px solid #f0d9b4;border-radius:18px;padding:14px 16px;color:#6d5234;font-size:.97rem}
.reader{align-items:start}
.reader-side .btn, .reader-side .outline-btn{margin-top:10px}
.small-badge{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;color:#6f5b4c;background:#f7efe6;border:1px solid #ead8c8;padding:8px 12px;border-radius:999px}
.cover-note{font-size:.93rem;color:#8a715e;margin-top:-8px}
@media (max-width: 860px){.text-card-grid{grid-template-columns:1fr}.recipe-summary{gap:18px}.recipe-hero img{aspect-ratio:4/3}}

/* Smaczny Dom V12 — textual recipes and responsibly labeled images */
.v12-recipe{margin:22px 0 38px}.v12-photo{margin:0;border-radius:19px;overflow:hidden;background:#fff;box-shadow:0 14px 37px #40280e13}
.v12-photo img{width:100%;height:clamp(280px,40vw,500px);object-fit:cover;display:block}
.v12-photo figcaption{padding:10px 18px;font-size:.87rem;color:#6b6259;background:#f6f1eb}
.v12-info{margin:22px 0 12px}.v12-intro{margin-bottom:15px}.v12-intro p{line-height:1.55;margin:10px 0;color:#5d4b3d}
.v12-status{display:inline-block;border-radius:99px;padding:8px 13px;font-size:.91rem;background:#f3e6d0;color:#644d2f;font-weight:600}
.v12-status.is-checked{background:#e3efde;color:#2e5632}.v12-alert{padding:12px 16px;border-radius:14px;background:#fff0d8;border:1px solid #e8c17f;color:#664719!important;font-weight:600}
.v12-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:20px 0}
.v12-meta-item{background:#fff;border:1px solid #eee1d5;padding:16px 18px;border-radius:14px}
.v12-meta-item small{display:block;color:#85705a;margin-bottom:4px}.v12-meta-item strong{display:block;line-height:1.3;color:#312217}
.v12-grid{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.2fr);gap:22px}
.v12-card{background:#fff;border:1px solid #eaddd1;border-radius:20px;padding:22px 24px;box-shadow:0 7px 26px #32190408}
.v12-card h2{font-size:1.4rem;margin:0 0 18px;color:#362316}
.v12-ingredients{list-style:none;padding:0;margin:0}
.v12-ingredients li{display:flex;gap:12px;align-items:flex-start;border-bottom:1px solid #f1ece5;padding:9px 2px;font-size:1.06rem;line-height:1.5}
.v12-ingredients input{width:20px;height:20px;flex:0 0 auto;accent-color:#3a6322;margin-top:2px}
.v12-ingredients input:checked+span{text-decoration:line-through;opacity:.57}
.v12-method{font-size:1.08rem;line-height:1.85;overflow-wrap:break-word;white-space:pre-wrap;margin:0 0 16px}
.v12-missing{font-weight:600;color:#895e2a;line-height:1.6}
.v12-action{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:17px 0 26px}
.v12-action button,.v12-action a{border:1px solid #ac927b;background:white;color:#3b2719;border-radius:99px;font:inherit;padding:11px 18px;text-decoration:none;cursor:pointer}
.v12-action .v12-print{background:#315a20;color:white;border-color:#315a20}
.v12-large .v12-method,.v12-large .v12-ingredients li{font-size:1.42rem;line-height:1.95}
.v12-raw{margin:28px 0;padding:16px;border:1px solid #ded0c1;border-radius:18px;background:#fff}
.v12-raw summary{cursor:pointer;font-weight:600}.v12-raw pre{white-space:pre-wrap;font-size:.95rem;line-height:1.5;max-height:440px;overflow:auto}
.v12-thumb{display:block;float:left;width:94px;height:78px;object-fit:cover;border-radius:9px;margin:0 14px 6px 0}
.recipe-list .item::after,#results .item::after{content:'';display:block;clear:both}
@media(max-width:760px){.v12-grid{grid-template-columns:1fr}.v12-meta{grid-template-columns:1fr 1fr}.v12-meta-item:last-child{grid-column:span 2}.v12-photo img{height:clamp(250px,60vw,400px)}.v12-card{padding:19px}.v12-thumb{width:72px;height:76px}}
@media print{header,.hero,.tiles,.footer,.v12-action,.reader,.related,.v12-raw,.crumbs{display:none!important}.v12-grid{display:block}.v12-card{box-shadow:none;page-break-inside:avoid}.v12-photo{max-width:500px}.v12-photo img{height:auto;max-height:260px}.v12-recipe{margin:0}}

/* V13 audited recipes */
.v13-steps{margin:0;padding-left:1.5rem;line-height:1.8;font-size:1.07rem}.v13-steps li{padding:0 0 .65rem .2rem}
.v13-source-note{margin:18px 0;padding:14px 18px;background:#f5f0e9;border:1px solid #e2d3bd;border-radius:12px;line-height:1.6;color:#5a4331}
.v13-link{display:inline-block;padding:10px 15px;border-radius:20px;background:#315a20;color:#fff;text-decoration:none}
.v13-banner{margin:20px auto 24px;padding:17px 20px;background:#fdf2df;border:1px solid #ecd6b4;border-radius:18px;line-height:1.65}
@media(max-width:720px){.v13-steps{font-size:1.12rem}}
@media print{.v13-source-note{background:none}}

/* Smaczny Dom V14 — zdjęcia wyłącznie przypisane do danej potrawy */
.v14-back{margin:22px 0 12px}
.v14-back a{display:inline-block;border-radius:99px;background:#f4efe6;padding:11px 18px;color:#375d23;font-weight:600}
.v14-back a:hover{background:#e7efdd}
.recipe-list .item:not(:has(img)),#results .item:not(:has(img)){padding-top:19px}
.v12-recipe:not(:has(.v12-photo)) .v12-info{margin-top:0}
.v12-recipe:not(:has(.v12-photo)){padding-top:4px}
.v12-recipe .v12-photo{margin:0 auto;max-width:1120px}
.v12-recipe .v12-photo img{height:clamp(250px,36vw,470px)}
@media print{.v14-back{display:none!important}.v12-recipe .v12-photo img{max-height:180px}}

/* V15: 10 illustrated soups */
.v15-soups{margin:34px 0 44px}
.v15-soups h2{font:700 clamp(24px,3vw,34px) Georgia,serif;color:#392315;margin:0 0 8px}
.v15-soups>p{margin:0 0 18px;color:#695448;line-height:1.55}
.v15-soup-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.v15-soup-card{display:block;border:1px solid #ecdfd0;border-radius:13px;background:#fff;overflow:hidden;color:#362519;text-decoration:none;box-shadow:0 8px 24px rgba(56,31,14,.06);transition:transform .15s ease,box-shadow .15s ease}
.v15-soup-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(56,31,14,.12)}
.v15-soup-card img{width:100%;aspect-ratio:5/4;display:block;object-fit:cover}
.v15-soup-card span{display:block;min-height:55px;padding:10px 12px;font:700 15px/1.25 Georgia,serif}
@media(max-width:960px){.v15-soup-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.v15-soup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v15-soup-card span{font-size:14px;min-height:60px}}
@media print{.v15-soups{display:none}}

/* V16: final technical review and accessibility */
.skip-to-content{position:absolute;top:-60px;left:10px;padding:12px 18px;background:white;z-index:9999;border-radius:5px;color:#244e18}
.skip-to-content:focus{top:10px} :focus-visible{outline:3px solid #a66a28!important;outline-offset:3px}
.v16-editor-note{margin:17px 0 20px;padding:17px 20px;border-radius:14px;background:#fff8ec;border:1px solid #e9d5b9;color:#62492f;font-size:1rem;line-height:1.6}
.v16-editor-note strong{display:block;margin-bottom:6px;color:#593b1a;font-size:1.07rem}
.v16-editor-note.critical{background:#fff0ed;border-color:#e9baa9;color:#783f2f}
.v16-safety{margin:19px 0;padding:18px 20px;border-radius:13px;background:#fff4e2;border-left:5px solid #c77938;line-height:1.6}
.v16-small-link{display:inline-block;margin:14px 0 10px;color:#315a20;text-decoration:underline;font-size:.95rem}
.v16-owner-note{border:1px solid #e7d5bf;background:#fffaf3;color:#563d2a;border-radius:10px;padding:13px 16px;line-height:1.6;margin:12px 0 20px}
.v16-audit-table{width:100%;border-collapse:collapse;background:white;font-size:14px}
.v16-audit-table th,.v16-audit-table td{padding:11px;border-bottom:1px solid #eee2d5;text-align:left;vertical-align:top}
.v16-audit-table th{position:sticky;top:76px;background:#f6eee2;z-index:2}
.v16-audit-table tr:hover{background:#faf7f2}
.v16-audit-table a{color:#2f5d21;text-decoration:underline}
.v16-audit-tools{display:flex;gap:12px;flex-wrap:wrap;padding:15px;background:#f8f4ed;border-radius:12px;margin:18px 0}
.v16-audit-tools input,.v16-audit-tools select{min-width:170px;border:1px solid #d9caba;border-radius:9px;background:white;padding:12px}
.v16-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:18px 0}
.v16-stat{border:1px solid #e7d6c3;background:white;border-radius:14px;padding:15px 17px}.v16-stat strong{display:block;font:700 27px Georgia,serif;color:#3b2414}.v16-stat small{color:#785c47;line-height:1.4}
.v16-table-wrap{overflow:auto;max-height:70vh;border:1px solid #e7dbcb;border-radius:12px}
@media(max-width:650px){.v16-audit-table th:nth-child(4),.v16-audit-table td:nth-child(4){display:none}.v16-audit-table th{top:110px}.v16-editor-note,.v16-safety{padding:14px}.v16-audit-tools input,.v16-audit-tools select{width:100%}}
@media print{.v16-editor-note,.v16-safety,.v16-small-link,.skip-to-content{display:none!important}}

/* V17: czytelność receptur i ostrzeżenia redakcyjne */
.v17-caution{background:#fff0dc;color:#693c21;border-left:4px solid #b76f3c;border-radius:8px;padding:13px 18px;margin:18px 0;line-height:1.65}
.v17-alias{background:#f3f5e9;border:1px solid #cad4b4;border-radius:12px;padding:18px;line-height:1.65}
.v17-alias a{font-weight:700;text-decoration:underline;color:#30612b}
.v12-ingredients li{padding:4px 0;line-height:1.6}
.v12-ingredients label{cursor:pointer}
.v12-ingredients input{width:19px;height:19px;vertical-align:middle;accent-color:#496b28;margin-right:8px}
.v12-ingredients input:checked+span{text-decoration:line-through}
.v12-steps li{line-height:1.7;margin-bottom:11px}
@media print{.v17-alias,.v17-caution{break-inside:avoid}.v12-ingredients input{display:none}}

/* V19 - autorskie receptury */
.v19-list{padding-left:1.45rem;margin:.5rem 0 0}.v19-list li{line-height:1.65;margin-bottom:.6rem}.v12-status:not(.is-draft){background:#ecf5e8;color:#255e37;border-color:#c5dcc4}@media print{.v12-action,.nav-inner nav{display:none}}
