:root{--cad-cream:#fbf5e9;--cad-paper:#fffdf8;--cad-ink:#29241f;--cad-muted:#746b60;--cad-burgundy:#7a2e3a;--cad-forest:#315747;--cad-gold:#c89b4b;--cad-line:#e8decd;--cad-shadow:0 16px 50px rgba(64,45,30,.11);--cad-radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body.cad-site{margin:0;background:var(--cad-cream);color:var(--cad-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}body.cad-site h1,body.cad-site h2,body.cad-site h3,.cad-brand strong{font-family:Georgia,"Times New Roman",serif;line-height:1.12}.cad-skip{position:fixed;left:12px;top:-80px;z-index:9999;background:#fff;color:#000;padding:10px}.cad-skip:focus{top:12px}.cad-site-header{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px clamp(18px,4vw,64px);background:rgba(255,253,248,.94);border-bottom:1px solid var(--cad-line);position:sticky;top:0;z-index:50;backdrop-filter:blur(12px)}.cad-site-header a{color:var(--cad-burgundy);text-decoration:none;font-weight:750}.cad-brand{display:flex;align-items:center;gap:12px;color:var(--cad-ink)!important}.cad-brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--cad-burgundy);color:#fff;font:700 15px Georgia}.cad-brand strong,.cad-brand small{display:block}.cad-brand strong{font-size:22px}.cad-brand small{color:var(--cad-muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.cad-account-nav{display:flex;align-items:center;gap:18px}.cad-account-nav span{color:var(--cad-muted);font-size:14px}.cad-app{min-height:75vh}.cad-loading,.cad-empty,.cad-gate{text-align:center;max-width:680px;margin:90px auto;padding:40px}.cad-spinner{display:inline-block;width:30px;height:30px;border-radius:50%;border:3px solid var(--cad-line);border-top-color:var(--cad-burgundy);animation:cad-spin .8s linear infinite}@keyframes cad-spin{to{transform:rotate(360deg)}}.cad-hero{padding:clamp(46px,8vw,100px) clamp(20px,7vw,110px) 52px;background:linear-gradient(135deg,rgba(122,46,58,.97),rgba(75,38,47,.97));color:#fff;position:relative;overflow:hidden}.cad-hero:after{content:"";position:absolute;width:350px;height:350px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-90px;top:-150px;box-shadow:0 0 0 46px rgba(255,255,255,.04),0 0 0 92px rgba(255,255,255,.03)}.cad-hero-inner{max-width:1040px;position:relative;z-index:1}.cad-eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:12px;font-weight:850;color:var(--cad-gold);margin:0 0 12px}.cad-hero h1{font-size:clamp(42px,7vw,78px);margin:0 0 16px;max-width:900px}.cad-hero p:not(.cad-eyebrow){font-size:clamp(17px,2vw,21px);max-width:680px;color:#f1e6dd}.cad-search-wrap{display:flex;gap:10px;max-width:760px;margin-top:30px}.cad-search-wrap input{flex:1;border:0;border-radius:14px;padding:17px 19px;font:inherit;box-shadow:0 7px 22px rgba(0,0,0,.15)}.cad-main{max-width:1500px;margin:auto;padding:36px clamp(16px,4vw,64px) 70px}.cad-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.cad-toolbar h2{font-size:clamp(28px,4vw,42px);margin:0}.cad-view-nav{display:flex;gap:8px;flex-wrap:wrap}.cad-button,.cad-chip,.cad-view-nav button{appearance:none;border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;background:var(--cad-burgundy);color:#fff;text-decoration:none;padding:12px 20px;font:800 14px/1.1 inherit;cursor:pointer}.cad-button:hover,.cad-button:focus{background:#5f202b}.cad-button-small{padding:9px 14px}.cad-button-quiet,.cad-view-nav button{background:var(--cad-paper);color:var(--cad-burgundy);border:1px solid var(--cad-line)}.cad-button-danger{background:#922f34}.cad-filters{background:var(--cad-paper);border:1px solid var(--cad-line);padding:16px;border-radius:18px;margin-bottom:28px;display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px}.cad-filters select,.cad-field input,.cad-field textarea,.cad-field select{width:100%;border:1px solid #d8cbb8;background:#fff;border-radius:11px;padding:11px 12px;font:inherit;color:var(--cad-ink)}.cad-field textarea{min-height:120px;resize:vertical}.cad-filter-status{grid-column:1/-1;display:flex;justify-content:space-between;color:var(--cad-muted);font-size:14px}.cad-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:22px}.cad-card{background:var(--cad-paper);border:1px solid var(--cad-line);border-radius:var(--cad-radius);overflow:hidden;box-shadow:0 8px 28px rgba(64,45,30,.06);transition:.2s transform,.2s box-shadow}.cad-card:hover{transform:translateY(-4px);box-shadow:var(--cad-shadow)}.cad-card a{display:block;color:inherit;text-decoration:none;height:100%}.cad-card-image{aspect-ratio:16/10;background:linear-gradient(135deg,#e6d6c1,#f6ead8);display:grid;place-items:center;color:var(--cad-burgundy);font:700 42px Georgia;overflow:hidden}.cad-card-image img{width:100%;height:100%;object-fit:cover}.cad-card-body{padding:20px}.cad-card h3{font-size:23px;margin:7px 0 10px}.cad-card p{margin:0;color:var(--cad-muted);font-size:14px}.cad-pills{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.cad-pills span,.cad-visibility{display:inline-flex;align-items:center;border-radius:999px;background:#f1e8d8;color:var(--cad-forest);font-size:11px;font-weight:800;padding:5px 9px}.cad-visibility.cad-public{background:#dfeee4}.cad-visibility.cad-family{background:#efe3e6;color:var(--cad-burgundy)}.cad-panel{max-width:1050px;margin:0 auto;background:var(--cad-paper);border:1px solid var(--cad-line);border-radius:var(--cad-radius);padding:clamp(22px,4vw,46px);box-shadow:var(--cad-shadow)}.cad-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px}.cad-panel h1{font-size:clamp(34px,5vw,54px);margin:0}.cad-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.cad-field{display:block}.cad-field>span{display:block;font-weight:800;margin-bottom:7px}.cad-field small{display:block;color:var(--cad-muted);margin-top:5px}.cad-field-full{grid-column:1/-1}.cad-form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.cad-toggle{display:flex;gap:12px;align-items:flex-start;background:#f7f0e3;padding:14px;border-radius:12px}.cad-toggle input{margin-top:5px}.cad-upload-box{border:2px dashed #cbb99e;border-radius:16px;padding:22px;text-align:center}.cad-upload-list{display:grid;gap:8px;margin-top:12px}.cad-progress{height:9px;border-radius:99px;background:#eee4d3;overflow:hidden;margin:14px 0}.cad-progress span{display:block;height:100%;background:var(--cad-forest);transition:width .2s}.cad-notice{border-left:4px solid var(--cad-gold);background:#fff8df;padding:13px 16px;border-radius:7px;margin:14px 0}.cad-error{border-left-color:#a52d34;background:#fff0f0}.cad-success{border-left-color:var(--cad-forest);background:#edf7f0}.cad-duplicate-list{display:grid;gap:10px;margin:16px 0}.cad-duplicate{border:1px solid var(--cad-line);padding:14px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:14px}.cad-contributor-grid,.cad-member-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}.cad-person{background:var(--cad-paper);border:1px solid var(--cad-line);border-radius:16px;padding:19px}.cad-person h3{margin:0 0 6px}.cad-person p{margin:0;color:var(--cad-muted)}.cad-scan-drop{border:2px dashed #bea98d;background:#fcf7ed;border-radius:20px;padding:50px 24px;text-align:center}.cad-scan-drop input{max-width:100%}.cad-single-wrap{max-width:1250px;margin:auto;padding:45px clamp(16px,4vw,60px) 80px}.cad-single{background:var(--cad-paper);border:1px solid var(--cad-line);border-radius:28px;padding:clamp(22px,5vw,66px);box-shadow:var(--cad-shadow)}.cad-recipe-hero{display:grid;grid-template-columns:1.35fr .65fr;gap:40px;align-items:center;padding-bottom:34px;border-bottom:1px solid var(--cad-line)}.cad-recipe-hero h1{font-size:clamp(42px,7vw,72px);margin:0 0 14px}.cad-recipe-hero>img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:22px}.cad-byline{color:var(--cad-muted);font-style:italic}.cad-recipe-actions{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.cad-story{font-family:Georgia,serif;font-size:19px;max-width:800px;margin:45px auto}.cad-story>p:not(.cad-eyebrow):first-of-type::first-letter{float:left;font-size:64px;line-height:.8;padding-right:8px;color:var(--cad-burgundy)}.cad-media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:35px 0}.cad-media-grid figure{margin:0}.cad-media-grid img{width:100%;height:250px;object-fit:cover;border-radius:14px}.cad-media-grid figcaption{color:var(--cad-muted);font-size:13px}.cad-recipe-columns{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr);gap:clamp(30px,6vw,80px);margin:48px 0}.cad-recipe-columns h2,.cad-note h2,.cad-video h2,.cad-contributions h2{font-size:32px}.cad-ingredients ul{list-style:none;padding:0}.cad-ingredients li,.cad-directions li{border-bottom:1px solid var(--cad-line);padding:12px 0}.cad-directions li{padding-left:8px}.cad-ingredients label,.cad-directions label{cursor:pointer}.cad-ingredients input,.cad-directions input{width:19px;height:19px;accent-color:var(--cad-forest);vertical-align:-3px;margin-right:7px}.cad-ingredients input:checked+span,.cad-directions input:checked+span{text-decoration:line-through;color:var(--cad-muted)}.cad-note{background:#f5ead8;border-radius:16px;padding:22px;margin:35px 0}.cad-video video{width:100%;max-height:680px;background:#000;border-radius:16px}.cad-contributions article{border-left:3px solid var(--cad-gold);padding:4px 0 4px 22px;margin:26px 0}.cad-original{text-align:center;margin-top:40px}.cad-footer{text-align:center;padding:34px;color:var(--cad-muted)}.cad-cook-mode{position:fixed;inset:0;z-index:1000;background:var(--cad-paper);overflow:auto;padding:25px clamp(18px,5vw,70px)}.cad-cook-head{display:flex;position:sticky;top:0;background:var(--cad-paper);z-index:2;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--cad-line)}.cad-cook-mode .cad-recipe-columns{font-size:clamp(20px,2.5vw,30px)}.cad-cook-mode .cad-recipe-columns h2{font-size:clamp(34px,5vw,58px)}.cad-modal{position:fixed;inset:0;background:rgba(35,28,24,.66);z-index:900;display:grid;place-items:center;padding:18px}.cad-modal-card{background:var(--cad-paper);border-radius:20px;max-width:720px;width:100%;max-height:90vh;overflow:auto;padding:30px;box-shadow:0 20px 80px rgba(0,0,0,.25)}.cad-hidden{display:none!important}
@media(max-width:1050px){.cad-filters{grid-template-columns:repeat(3,minmax(130px,1fr))}}@media(max-width:720px){.cad-site-header{position:relative}.cad-account-nav span{display:none}.cad-brand strong{font-size:18px}.cad-hero{padding-top:55px}.cad-search-wrap{display:block}.cad-search-wrap button{width:100%;margin-top:9px}.cad-toolbar,.cad-panel-head{align-items:flex-start;flex-direction:column}.cad-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.cad-form-grid{grid-template-columns:1fr}.cad-field-full{grid-column:auto}.cad-recipe-hero,.cad-recipe-columns{grid-template-columns:1fr}.cad-recipe-hero>img{order:-1;aspect-ratio:16/10}.cad-single{border-radius:0}.cad-single-wrap{padding:0}.cad-card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media(max-width:450px){.cad-filters{grid-template-columns:1fr}.cad-card-grid{grid-template-columns:1fr}.cad-brand small{display:none}}
@media print{body.cad-site{background:#fff;font-size:11pt}.cad-print-hide,.cad-site-header,.cad-footer,.cad-story,.cad-media-grid,.cad-video,.cad-contributions,.cad-original{display:none!important}.cad-single-wrap,.cad-single{padding:0;box-shadow:none;border:0}.cad-recipe-hero{display:block}.cad-recipe-hero>img{display:none}.cad-recipe-hero h1{font-size:30pt}.cad-recipe-columns{display:grid;grid-template-columns:1fr 1.5fr;gap:32px;margin:15px 0}.cad-ingredients li,.cad-directions li{padding:6px 0;break-inside:avoid}.cad-ingredients input,.cad-directions input{display:none}.cad-note{padding:12px;break-inside:avoid}@page{margin:.55in}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
