/* Pawculate — style.css */
:root{--green:#3a7d44;--green-light:#e8f5eb;--green-mid:#6ab07a;--beige:#fdf6ec;--beige-dark:#f0e6d3;--text:#2c2c2c;--text-light:#5a5a5a;--white:#fff;--border:#dde5d0;--radius:12px;--shadow:0 2px 12px rgba(0,0,0,.08);--font:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif}
[data-theme=dark]{--beige:#1a1f1c;--beige-dark:#232b25;--white:#1e2820;--text:#e8ede9;--text-light:#9fb59f;--border:#2e3d30;--green-light:#1e2f20;--shadow:0 2px 12px rgba(0,0,0,.3)}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);background:var(--beige);color:var(--text);line-height:1.6;min-height:100vh}
a{color:var(--green);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;display:block}

/* NAV */
nav{background:var(--white);border-bottom:2px solid var(--border);padding:.8rem 1rem;position:sticky;top:0;z-index:100;box-shadow:var(--shadow)}
.nav-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.nav-logo{font-size:1.4rem;font-weight:800;color:var(--green);display:flex;align-items:center;gap:.4rem}
.nav-logo svg{width:28px;height:28px}
.nav-links{display:flex;gap:1.2rem;list-style:none;flex-wrap:wrap}
.nav-links a{color:var(--text-light);font-size:.9rem;font-weight:500;transition:color .2s}
.nav-links a:hover{color:var(--green);text-decoration:none}
#theme-toggle{background:var(--green-light);border:2px solid var(--border);border-radius:20px;padding:.3rem .8rem;cursor:pointer;font-size:.85rem;color:var(--text);transition:background .2s}
#theme-toggle:hover{background:var(--beige-dark)}

/* BREADCRUMB */
.breadcrumb{max-width:1100px;margin:.6rem auto;padding:0 1rem;font-size:.82rem;color:var(--text-light)}
.breadcrumb a{color:var(--green)}
.breadcrumb span{margin:0 .3rem}

/* HERO */
.hero{background:linear-gradient(135deg,var(--green) 0%,var(--green-mid) 100%);color:#fff;padding:3rem 1rem;text-align:center}
.hero h1{font-size:clamp(1.8rem,5vw,3rem);font-weight:800;margin-bottom:.8rem}
.hero p{font-size:1.1rem;opacity:.92;max-width:560px;margin:0 auto 1.5rem}
.hero-sub{font-size:.9rem;opacity:.8}

/* CARDS GRID */
.section{max-width:1100px;margin:0 auto;padding:2rem 1rem}
.section-title{font-size:1.4rem;font-weight:700;margin-bottom:1.2rem;color:var(--green)}
.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.2rem}
.card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--radius);padding:1.4rem;transition:box-shadow .2s,transform .15s;display:flex;flex-direction:column;gap:.5rem}
.card:hover{box-shadow:0 6px 24px rgba(58,125,68,.15);transform:translateY(-2px);text-decoration:none}
.card-icon{font-size:2rem}
.card h3{font-size:1rem;font-weight:700;color:var(--text)}
.card p{font-size:.85rem;color:var(--text-light);flex:1}
.card-link{font-size:.85rem;font-weight:600;color:var(--green);margin-top:.3rem}

/* CALCULATOR PAGE LAYOUT */
.calc-page{max-width:800px;margin:0 auto;padding:1.5rem 1rem 3rem}
.calc-page h1{font-size:clamp(1.5rem,4vw,2.2rem);font-weight:800;color:var(--green);margin-bottom:.5rem}
.calc-page .lead{color:var(--text-light);margin-bottom:1.5rem;font-size:1rem}

/* UNIT TOGGLE */
.unit-toggle{display:flex;gap:0;margin-bottom:1.2rem;border:2px solid var(--green);border-radius:8px;overflow:hidden;width:fit-content}
.unit-btn{padding:.4rem 1.1rem;background:var(--white);border:none;cursor:pointer;font-size:.9rem;font-weight:600;color:var(--green);transition:background .15s,color .15s}
.unit-btn.active{background:var(--green);color:#fff}

/* FORM */
.calc-form{background:var(--white);border:1.5px solid var(--border);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.2rem}
.form-group{margin-bottom:1rem}
.form-group label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.35rem;color:var(--text)}
.form-group input[type=number],.form-group select{width:100%;padding:.6rem .9rem;border:2px solid var(--border);border-radius:8px;font-size:1rem;background:var(--beige);color:var(--text);transition:border-color .15s}
.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--green)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.radio-group{display:flex;gap:.8rem;flex-wrap:wrap}
.radio-group label{display:flex;align-items:center;gap:.35rem;font-weight:400;font-size:.9rem;cursor:pointer}

/* RESULT CARD */
.result-card{background:linear-gradient(135deg,var(--green-light),var(--beige));border:2px solid var(--green);border-radius:var(--radius);padding:1.4rem;display:none}
.result-card.show{display:block}
.result-card h2{font-size:1rem;font-weight:600;color:var(--green);margin-bottom:.8rem}
.result-main{font-size:2.4rem;font-weight:800;color:var(--green);line-height:1.1}
.result-sub{font-size:1rem;color:var(--text-light);margin-top:.2rem}
.result-details{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border);font-size:.9rem;color:var(--text-light);line-height:1.7}
.result-both{display:flex;gap:2rem;flex-wrap:wrap;margin-top:.5rem}
.result-both .r-item{display:flex;flex-direction:column}
.result-both .r-val{font-size:1.8rem;font-weight:800;color:var(--green)}
.result-both .r-unit{font-size:.8rem;color:var(--text-light)}

/* CONTENT */
.content{margin-top:2rem}
.content h2{font-size:1.2rem;font-weight:700;margin:1.5rem 0 .5rem;color:var(--green)}
.content p{margin-bottom:.9rem;font-size:.95rem;color:var(--text-light)}
.content ul{padding-left:1.2rem;margin-bottom:.9rem}
.content li{font-size:.95rem;color:var(--text-light);margin-bottom:.3rem}

/* FAQ */
.faq{margin-top:1.5rem}
.faq-item{border-bottom:1px solid var(--border);padding:.9rem 0}
.faq-q{font-weight:700;font-size:.95rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:var(--text)}
.faq-q::after{content:'▼';font-size:.7rem;color:var(--green);transition:transform .2s}
.faq-item.open .faq-q::after{transform:rotate(180deg)}
.faq-a{display:none;padding-top:.6rem;font-size:.9rem;color:var(--text-light);line-height:1.7}
.faq-item.open .faq-a{display:block}

/* RELATED */
.related{margin-top:2rem;padding:1.2rem;background:var(--white);border:1.5px solid var(--border);border-radius:var(--radius)}
.related h3{font-size:1rem;font-weight:700;margin-bottom:.8rem;color:var(--green)}
.related-links{display:flex;flex-wrap:wrap;gap:.5rem}
.related-links a{background:var(--green-light);border:1px solid var(--border);border-radius:20px;padding:.3rem .9rem;font-size:.85rem;font-weight:500;color:var(--green);transition:background .15s}
.related-links a:hover{background:var(--green);color:#fff;text-decoration:none}

/* SOURCES */
.sources{margin-top:1.5rem;font-size:.8rem;color:var(--text-light);border-top:1px solid var(--border);padding-top:1rem}
.sources strong{color:var(--text)}

/* DISCLAIMER BOX */
.disclaimer-box{background:#fff8e1;border:2px solid #f9a825;border-radius:var(--radius);padding:1rem 1.2rem;font-size:.88rem;color:#5a4a00;margin-bottom:1.2rem}
.disclaimer-box strong{color:#b36a00}

/* FOOTER */
footer{background:var(--white);border-top:2px solid var(--border);padding:2rem 1rem;margin-top:3rem}
.footer-inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;font-size:.88rem;color:var(--text-light)}
.footer-col h4{font-weight:700;color:var(--text);margin-bottom:.6rem;font-size:.95rem}
.footer-col ul{list-style:none}
.footer-col li{margin-bottom:.3rem}
.footer-col a{color:var(--text-light)}
.footer-col a:hover{color:var(--green)}
.footer-bottom{max-width:1100px;margin:.8rem auto 0;border-top:1px solid var(--border);padding-top:.8rem;font-size:.8rem;color:var(--text-light);text-align:center}

/* LEGAL PAGES */
.legal-page{max-width:760px;margin:0 auto;padding:2rem 1rem 3rem}
.legal-page h1{font-size:1.8rem;font-weight:800;color:var(--green);margin-bottom:1rem}
.legal-page h2{font-size:1.1rem;font-weight:700;margin:1.4rem 0 .4rem;color:var(--text)}
.legal-page p,.legal-page li{font-size:.95rem;color:var(--text-light);line-height:1.7;margin-bottom:.7rem}
.legal-page ul{padding-left:1.3rem}

/* CONTACT FORM */
.contact-form{background:var(--white);border:1.5px solid var(--border);border-radius:var(--radius);padding:1.5rem;max-width:560px}
.contact-form input,.contact-form textarea{width:100%;padding:.7rem .9rem;border:2px solid var(--border);border-radius:8px;font-size:.95rem;background:var(--beige);color:var(--text);margin-bottom:1rem;font-family:var(--font)}
.contact-form textarea{height:140px;resize:vertical}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--green)}
.btn{background:var(--green);color:#fff;border:none;border-radius:8px;padding:.7rem 1.8rem;font-size:1rem;font-weight:700;cursor:pointer;transition:background .2s}
.btn:hover{background:#2d6335}
.success-msg{display:none;background:#e8f5eb;border:1.5px solid var(--green);border-radius:8px;padding:1rem;color:var(--green);font-weight:600;margin-top:.8rem}

/* ABOUT */
.about-page{max-width:760px;margin:0 auto;padding:2rem 1rem 3rem}
.about-page h1{font-size:1.8rem;font-weight:800;color:var(--green);margin-bottom:.5rem}
.about-page h2{font-size:1.1rem;font-weight:700;margin:1.4rem 0 .4rem;color:var(--text)}
.about-page p{font-size:.95rem;color:var(--text-light);line-height:1.7;margin-bottom:.8rem}
.values-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin:1rem 0}
.value-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--radius);padding:1rem;text-align:center}
.value-card .vi{font-size:1.8rem;margin-bottom:.4rem}
.value-card strong{display:block;font-size:.9rem;color:var(--text)}
.value-card span{font-size:.82rem;color:var(--text-light)}

/* RESPONSIVE */
@media(max-width:600px){
  .form-row{grid-template-columns:1fr}
  .nav-links{display:none}
  .result-main{font-size:1.8rem}
  .cards-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:400px){.cards-grid{grid-template-columns:1fr}}

/* EEAT byline */
.meta-byline{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;font-size:.78rem;color:var(--text-light);background:var(--green-light);border:1px solid var(--border);border-radius:8px;padding:.5rem .8rem;margin-bottom:1.2rem}
.meta-byline span{line-height:1.4}

/* AUTHOR BOX */
.author-box{background:var(--white);border:1.5px solid var(--border);border-radius:var(--radius);padding:1rem 1.2rem;margin:1.5rem 0;display:flex;gap:1rem;align-items:flex-start}
.author-box .au-avatar{width:48px;height:48px;background:var(--green-light);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}
.author-box .au-body{flex:1}
.author-box .au-name{font-weight:700;font-size:.95rem;color:var(--text);margin-bottom:.2rem}
.author-box .au-role{font-size:.8rem;color:var(--text-light);margin-bottom:.4rem}
.author-box .au-bio{font-size:.85rem;color:var(--text-light);line-height:1.6}

/* ERROR MSG */
.error-msg{display:none;background:#fdecea;border:1.5px solid #c0392b;border-radius:8px;padding:1rem;color:#992d22;font-weight:600;margin-top:.8rem}

/* MEDICAL REVIEW BANNER */
.review-banner{background:var(--green-light);border-left:4px solid var(--green);border-radius:6px;padding:.7rem 1rem;font-size:.85rem;color:var(--text-light);margin-bottom:1.2rem}
.review-banner strong{color:var(--green)}
