:root{--paper: #faf3e3;--paper-deep: #f3e7cd;--card: #fffdf6;--marigold: #f2a93b;--marigold-soft: #f8d59a;--orange: #f07a13;--red: #d93a1c;--red-deep: #b52c12;--spoon: #d8d8d8;--ink: #43301f;--ink-soft: #7a6450;--green: #3e8e5a;--border: rgba(240, 122, 19, .35);--shadow: 0 4px 14px rgba(67, 48, 31, .1);--radius: 16px;--font-display: "Chewy", "Comic Sans MS", cursive;--font-body: "Nunito", -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:1.55}.app{min-height:100vh;display:flex;flex-direction:column}main{flex:1;width:min(1080px,100% - 2rem);margin:0 auto;padding-bottom:4rem}h1,h2,h3{font-family:var(--font-display);font-weight:400;letter-spacing:.02em;margin:0}a{color:var(--red)}.button{display:inline-flex;align-items:center;gap:.4em;font-family:var(--font-body);font-weight:800;font-size:1rem;padding:.55em 1.2em;border-radius:999px;border:2.5px solid transparent;cursor:pointer;text-decoration:none;transition:transform .08s ease,box-shadow .08s ease;line-height:1.2}.button:active{transform:scale(.97)}.button-primary{background:var(--red);color:#fff;box-shadow:0 3px 0 var(--red-deep)}.button-primary:hover{background:var(--red-deep)}.button-ghost{background:transparent;color:var(--ink);border-color:var(--border)}.button-ghost:hover{background:var(--paper-deep)}.button-danger{background:transparent;color:var(--red-deep);border-color:var(--red)}.button-danger:hover{background:#fbe3dd}.button:disabled{opacity:.55;cursor:not-allowed}.link-button{background:none;border:none;padding:0;font:inherit;font-weight:700;color:var(--red);cursor:pointer}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem 1rem;background:color-mix(in srgb,var(--paper) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:2.5px solid var(--border)}.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none}.brand-pot{height:44px;width:auto}.brand-name{font-family:var(--font-display);font-size:1.7rem;color:var(--red);letter-spacing:.04em}.site-nav{display:flex;align-items:center;gap:.6rem}.hero{text-align:center;padding:2.2rem 0 .6rem}.hero-cover{width:min(320px,70vw);height:auto;filter:drop-shadow(0 10px 22px rgba(67,48,31,.18))}.hero-sub{margin:.8rem 0 0;color:var(--ink-soft);font-size:1.1rem;font-weight:600}.controls{position:sticky;top:62px;z-index:10;padding:.8rem 0;background:color-mix(in srgb,var(--paper) 92%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);margin-inline:calc(50% - 50vw);padding-inline:calc(50vw - 50%)}.search-wrap{max-width:560px;margin:0 auto .8rem}.search-input{width:100%;font:inherit;font-weight:600;padding:.7em 1.2em;border:2.5px solid var(--border);border-radius:999px;background:var(--card);color:var(--ink);outline:none}.search-input:focus{border-color:var(--orange);box-shadow:0 0 0 4px #f2a93b40}.chapter-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem}.chip{font-family:var(--font-body);font-weight:800;font-size:.88rem;color:var(--ink);background:var(--card);border:2px solid var(--border);border-radius:999px;padding:.35em .9em;cursor:pointer;display:inline-flex;align-items:center;gap:.45em;transition:background .1s ease}.chip:hover{background:var(--marigold-soft)}.chip-active{background:var(--marigold);border-color:var(--orange)}.chip-count{font-size:.75rem;background:#43301f1f;border-radius:999px;padding:.05em .55em}.chapter-section{margin-top:2.4rem}.chapter-heading{font-size:1.9rem;color:var(--red);margin-bottom:.9rem;position:relative;display:inline-block}.chapter-heading:after{content:"";display:block;height:6px;margin-top:2px;border-radius:3px;background:linear-gradient(90deg,var(--marigold),var(--orange));transform:rotate(-.6deg)}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.recipe-card{display:flex;flex-direction:column;gap:.5rem;background:var(--card);border:2.5px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:transform .1s ease,border-color .1s ease}.recipe-card:hover{transform:translateY(-3px) rotate(-.4deg);border-color:var(--orange)}.recipe-card-top{display:flex;justify-content:space-between;align-items:center}.recipe-card-chapter{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--orange)}.verified-mark{display:inline-flex;align-items:center;justify-content:center;width:1.5em;height:1.5em;border-radius:50%;background:var(--green);color:#fff;font-weight:800;font-size:.85rem;flex-shrink:0}.recipe-card-title{font-size:1.35rem;line-height:1.2;color:var(--ink)}.recipe-card-meta{display:flex;flex-wrap:wrap;gap:.3rem}.tag-chip{font-size:.75rem;font-weight:700;color:var(--ink-soft);background:var(--paper-deep);border-radius:999px;padding:.15em .7em}.recipe-card-foot{margin-top:auto;display:flex;justify-content:space-between;gap:.5rem;font-size:.8rem;color:var(--ink-soft);font-weight:600}.verified-by{color:var(--green)}.status-block{text-align:center;padding:4rem 1rem;color:var(--ink-soft);font-weight:600}.pot-loader{font-size:3rem;animation:bubble 1.2s ease-in-out infinite}@keyframes bubble{0%,to{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(3deg)}}.empty-note{color:var(--ink-soft);font-weight:600}.recipe-page{padding-top:1.4rem;max-width:860px;margin:0 auto}.breadcrumb{display:flex;align-items:center;gap:.8rem;margin-bottom:1rem}.breadcrumb-chapter{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--orange)}.recipe-title{font-size:clamp(2rem,5vw,3rem);color:var(--red);line-height:1.1}.recipe-attribution{margin:.5rem 0 0;color:var(--ink-soft);font-weight:700;font-style:italic}.recipe-attribution strong{color:var(--orange)}.verified-banner{display:flex;align-items:center;gap:.5rem;color:var(--green);font-weight:800;margin:.6rem 0 0}.recipe-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.7rem}.recipe-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.3rem 0 2rem}.recipe-columns{display:grid;grid-template-columns:minmax(240px,1fr) 2fr;gap:2rem;align-items:start}.recipe-ingredients,.recipe-method{background:var(--card);border:2.5px solid var(--border);border-radius:var(--radius);padding:1.2rem 1.4rem;box-shadow:var(--shadow)}.recipe-ingredients h2,.recipe-method h2{color:var(--orange);font-size:1.5rem;margin-bottom:.7rem}.ingredient-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.ingredient-list label{display:flex;gap:.6rem;align-items:baseline;cursor:pointer;font-weight:600}.ingredient-list input[type=checkbox]{accent-color:var(--green);width:1.1em;height:1.1em;flex-shrink:0;transform:translateY(2px)}label.ticked span{text-decoration:line-through;color:var(--ink-soft)}.method-list{margin:0;padding-left:1.4rem;display:flex;flex-direction:column;gap:.8rem}.method-list li::marker{font-family:var(--font-display);color:var(--orange);font-size:1.1em}.original-page{margin-top:2.4rem;text-align:center}.original-page figure{margin:1.2rem 0 0}.original-page img{max-width:min(560px,100%);border-radius:var(--radius);border:3px solid var(--marigold);box-shadow:var(--shadow);transform:rotate(-.8deg)}.original-page figcaption{margin-top:.6rem;color:var(--ink-soft);font-weight:600;font-size:.9rem}.cookmode{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:var(--paper);display:flex;flex-direction:column;padding:1rem clamp(1rem,5vw,3rem) 2rem;overflow-y:auto}.cookmode-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;border-bottom:2.5px solid var(--border)}.cookmode-title{font-family:var(--font-display);font-size:1.4rem;color:var(--red);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cookmode-bar-actions{display:flex;gap:.5rem;flex-shrink:0}.cookmode-progress{margin-top:2rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.85rem;color:var(--orange)}.cookmode-step{flex:1;font-size:clamp(1.5rem,4vw,2.3rem);font-weight:700;line-height:1.4;max-width:30ch;margin:1rem auto;align-content:center;text-align:center}.cookmode-nav{display:flex;justify-content:space-between;gap:1rem}.cookmode-nav-btn{font-size:1.15rem;padding:.8em 1.6em}.cookmode-ingredients{list-style:none;margin:1.5rem auto;padding:0;max-width:560px;width:100%;display:flex;flex-direction:column;gap:.8rem;font-size:1.25rem}.cookmode-ingredients label{display:flex;gap:.8rem;align-items:baseline;cursor:pointer;font-weight:600}.cookmode-ingredients input[type=checkbox]{accent-color:var(--green);width:1.3em;height:1.3em;transform:translateY(3px)}.page-title{font-size:clamp(1.8rem,4vw,2.5rem);color:var(--red);margin:1.6rem 0 1.2rem}.edit-page,.login-page{max-width:680px;margin:0 auto}.edit-form{display:flex;flex-direction:column;gap:1.3rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group>label{font-weight:800}.form-group small{color:var(--ink-soft);font-weight:600}.form-group input,.form-group textarea,.form-group select,.list-editor input,.list-editor textarea{font:inherit;font-weight:600;color:var(--ink);background:var(--card);border:2.5px solid var(--border);border-radius:12px;padding:.55em .9em;outline:none;width:100%}.form-group input:focus,.form-group textarea:focus,.form-group select:focus,.list-editor input:focus,.list-editor textarea:focus{border-color:var(--orange);box-shadow:0 0 0 4px #f2a93b40}.list-editor{display:flex;flex-direction:column;gap:.5rem}.list-editor-row{display:flex;gap:.5rem;align-items:flex-start}.row-remove{background:none;border:2px solid var(--border);border-radius:50%;width:2rem;height:2rem;flex-shrink:0;cursor:pointer;color:var(--ink-soft);font-weight:800;margin-top:.3rem}.row-remove:hover{color:var(--red);border-color:var(--red)}.list-editor-hint{margin:0;font-size:.8rem;color:var(--ink-soft);font-weight:600}.form-error{background:#fbe3dd;border:2px solid var(--red);border-radius:12px;padding:.7em 1em;color:var(--red-deep);font-weight:700}.form-actions{display:flex;flex-wrap:wrap;gap:.7rem}.login-blurb{color:var(--ink-soft);font-weight:600;margin-top:0}.site-footer{text-align:center;padding:2rem 1rem 2.6rem;border-top:2.5px solid var(--border);color:var(--ink-soft);font-weight:600;font-size:.95rem}.site-footer p{margin:0;max-width:46ch;margin-inline:auto}@media(max-width:720px){.recipe-columns{grid-template-columns:1fr;gap:1.2rem}.controls{top:58px}.chapter-chips{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scrollbar-width:none;padding:0 .2rem .3rem;margin:0 -1rem;padding-inline:1rem}.chapter-chips::-webkit-scrollbar{display:none}.chip{flex-shrink:0}.brand-name{font-size:1.4rem}.hero{padding-top:1.4rem}}@media print{.site-header,.site-footer,.no-print{display:none!important}body{background:#fff;font-size:12pt}.recipe-columns{grid-template-columns:1fr;gap:1rem}.recipe-ingredients,.recipe-method{border:1px solid #999;box-shadow:none}.recipe-title{color:#000}}
