@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Outfit:wght@400;500;600;700;800;900&display=swap');
:root{--bg:#fff4e9;--paper:#fffaf4;--ink:#07383a;--muted:#637273;--line:#e8dcd0;--brand:#043d40;--brand-dark:#062c30;--orange:#ff704e;--tint:#e0f4d3;--sage:#c7f0c4;--green:#065f49;--error:#aa4436;--shadow:0 10px 32px rgba(0,60,54,.07)}
html,body{font-family:'DM Sans',system-ui,sans-serif;background:var(--bg)}h1,h2,h3,.serif,.stat strong{font-family:'Outfit',system-ui,sans-serif;font-weight:800;letter-spacing:-.05em}h1{line-height:.99}h2{letter-spacing:-.045em}.logo{font-family:'Outfit',sans-serif;font-weight:900;letter-spacing:-.045em}.logo-icon{background:#ff7d5b;color:#063d3e}.logo-meta{letter-spacing:.17em}.site-header{background:#fff6ec}.top-nav button.active{background:#d1f3bc}.btn{border-radius:15px;background:#063d3e;font-weight:800}.btn:hover{background:#095659}.btn.secondary{background:#d6f0c6;color:#064a42}.btn.ghost{border-color:#d4dfd4}.card{border:1px solid #f2e6da;border-radius:22px}.vibrant-hero{background:linear-gradient(122deg,#ff9274 0%,#ffb29b 53%,#ffd9b7 100%);color:#072d30;min-height:410px;align-items:center;grid-template-columns:1.1fr .9fr}.vibrant-hero .eyebrow{color:#6e2f28;font-weight:800}.vibrant-hero h1{font-size:clamp(3.3rem,6.6vw,5.8rem);letter-spacing:-.075em;line-height:.96}.vibrant-hero h1 em{font-style:normal;color:#fff9ec;text-shadow:0 2px 0 #d7513a}.vibrant-hero p{color:#193e3d;font-weight:600;font-size:1.04rem}.vibrant-hero .hero-cta{background:#073d3f;color:white}.vibrant-hero .hero-art{opacity:1;position:relative;right:auto;bottom:auto;transform:none;width:100%;height:auto;align-self:center}.vibrant-hero .hero-art img{width:115%;max-width:410px;display:block;filter:drop-shadow(0 17px 17px #ae573c33)}.stat{border:0}.stat strong{font-size:2.8rem}.stat span{color:#214b4a}.candy-lilac{background:#e8d2ff}.candy-mint{background:#bcefe3}.candy-peach{background:#ffdd9d}.featured-coffee{display:grid;grid-template-columns:145px 1fr;overflow:hidden}.featured-coffee .coffee-photo{height:100%;min-height:165px}.featured-body{padding:20px}.coffee-card{box-shadow:0 8px 20px #0c474412}.coffee-card:nth-child(4n+1){background:#e4f4e8}.coffee-card:nth-child(4n+2){background:#ffe2e4}.coffee-card:nth-child(4n+3){background:#ffedc4}.coffee-card:nth-child(4n+4){background:#e7dcff}.coffee-card .eyebrow{color:#325959}.coffee-card h3{font-weight:800}.coffee-empty{background:linear-gradient(145deg,#fa9e70,#ffc82d);color:#064146}.fav-tag{display:inline-block;color:#095745;font-size:.72rem;font-weight:800;margin-top:10px}.pill{background:#d3f1c1;color:#084d42}.badge.green{background:#ccf3c7}.recipe-card{padding:20px;border:1px solid #e4e9db;border-radius:19px;background:#fffdf8;display:flex;flex-direction:column;gap:14px}.recipe-card.is-favorite{background:linear-gradient(135deg,#dcf4c6,#f8fbe9);border-color:#b8e7ac}.recipe-card h3{font-size:1.35rem}.recipe-card .eyebrow{color:#096c57}.recipe-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.recipe-metrics>div{background:#ffffffaa;border-radius:12px;padding:12px 7px;text-align:center}.recipe-metrics small{display:block;font-size:.65rem;color:#56736e}.recipe-metrics strong{display:block;font-family:'Outfit',sans-serif;font-size:1.12rem;margin-top:3px}.recipe-extra{display:flex;flex-wrap:wrap;gap:8px;color:#52716c;font-size:.76rem}.recipe-extra span{background:#ffffff9c;padding:7px 10px;border-radius:20px}.recipe-extra p{flex-basis:100%;line-height:1.4}.rating{font-size:.7rem;color:#095c51;font-weight:800;text-align:right}.review-form{background:#fffaf2;padding:14px;border-radius:14px}.review-history{border-top:1px solid #cbdac5;padding-top:10px}.review-history summary{font-size:.8rem;font-weight:700;cursor:pointer}.review-item{padding:12px 0;border-bottom:1px solid #e7ebdf;font-size:.8rem}.review-item span{color:#677}.review-item p{margin:5px 0}.recipe-editor{border-top:2px dashed #d1e6cb;padding-top:20px}.favorite-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.favorite-tile{border:0;background:#d8f3c3;border-radius:20px;padding:20px;text-align:left;color:#073d3e;display:flex;flex-direction:column;gap:8px}.favorite-tile:nth-child(even){background:#ffd9b1}.favorite-tile strong{font-size:1.25rem;font-family:'Outfit';font-weight:800}.favorite-tile span:last-child{font-size:.8rem}.filter-pills{display:flex;gap:9px;margin-bottom:20px}.btn-tab.on{background:#073d3e;color:#fff}.auth{background:radial-gradient(circle at 90% 8%,#ffc324 0 10%,transparent 30%),linear-gradient(140deg,#ff9a80,#ffddc0)}.auth-box{border:0;box-shadow:0 22px 50px #9b53362a}.auth-illustration{background:#063d3e}.bottom-nav{background:#fffaf5f5}.bottom-nav button.active{color:#075d55}.input:focus,.textarea:focus,.select:focus{border-color:#0a7a68;box-shadow:0 0 0 3px #8bdec15e}
@media(max-width:780px){.vibrant-hero{min-height:365px;display:block;padding:30px 24px}.vibrant-hero h1{font-size:clamp(2.9rem,11vw,4.4rem)}.vibrant-hero .hero-copy{position:relative;z-index:2;max-width:78%}.vibrant-hero .hero-art{position:absolute;right:-80px;bottom:-45px;width:65%;z-index:1}.vibrant-hero .hero-art img{width:100%}.vibrant-hero p{font-size:.87rem}.stat strong{font-size:2rem}.featured-coffee{grid-template-columns:110px 1fr}.recipe-metrics strong{font-size:.95rem}.recipe-card{padding:15px}.recipe-card .toolbar .btn{flex:1 1 auto}.favorite-grid{grid-template-columns:1fr 1fr}.bottom-nav button b{font-size:1.4rem}}
@media(max-width:390px){.vibrant-hero .hero-copy{max-width:83%}.vibrant-hero .hero-art{right:-95px;opacity:.85}.recipe-metrics strong{font-size:.84rem}.recipe-metrics>div{padding:10px 3px}}
