/* Famous Nutrition — Content Hub | shared stylesheet */
:root{--ink:#0c0c0e;--ink2:#1a1a1f;--red:#e01e2b;--red2:#ff3d3d;--flame:#ff6a00;--pale:#fff1ee;--cream:#f7f4f0;--border:#e5ded7;--text:#141414;--mid:#454545;--muted:#8a8580;--sidebar:262px;
--cA:#e01e2b;--cB:#c2410c;--cC:#ff6a00;--cD:#7c3aed;--cE:#0f766e;--cF:#0369a1;--cG:#4338ca;--cH:#b45309;--cI:#0891b2;--cJ:#334155;}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Segoe UI',system-ui,sans-serif;background:var(--cream);color:var(--text);display:flex;min-height:100vh;}
#sidebar{width:var(--sidebar);background:var(--ink);position:fixed;top:0;left:0;bottom:0;overflow-y:auto;z-index:100;display:flex;flex-direction:column;}
.sb-brand{padding:1.25rem 1rem .75rem;border-bottom:1px solid rgba(255,255,255,.08);}
.sb-brand .sb-label{font-size:10px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:var(--flame);margin-bottom:4px;}
.sb-brand h1{font-size:16px;font-weight:800;color:#fff;line-height:1.15;letter-spacing:.3px;}
.sb-brand p{font-size:11px;color:rgba(255,255,255,.4);margin-top:4px;}
.sb-search{padding:.5rem 1rem;border-bottom:1px solid rgba(255,255,255,.06);}
.sb-search input{width:100%;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:6px 10px;font-size:12px;color:#fff;outline:none;}
.sb-search input::placeholder{color:rgba(255,255,255,.35);}
.sb-search input:focus{border-color:var(--red2);}
.sb-scroll{flex:1;overflow-y:auto;padding-bottom:2rem;}
.nav-section{padding:.6rem 1rem .2rem;font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.32);margin-top:.4rem;}
.nav-item{display:flex;align-items:flex-start;gap:8px;padding:.45rem 1rem;cursor:pointer;border-left:2px solid transparent;transition:background .12s;}
.nav-item:hover{background:rgba(255,255,255,.05);}
.nav-item.active{background:rgba(224,30,43,.2);border-left-color:var(--red2);}
.nav-code{font-size:10px;font-weight:800;color:rgba(255,255,255,.3);min-width:26px;margin-top:1px;flex-shrink:0;}
.nav-item.active .nav-code{color:var(--red2);}
.nav-title{font-size:11.5px;color:rgba(255,255,255,.55);line-height:1.35;}
.nav-item.active .nav-title{color:#fff;}
#main{margin-left:var(--sidebar);flex:1;padding:2.5rem 2.5rem 5rem;max-width:860px;}
#progress{position:fixed;top:0;left:var(--sidebar);right:0;height:3px;background:linear-gradient(90deg,var(--red),var(--flame));transform:scaleX(0);transform-origin:left;transition:transform .3s;z-index:200;}
#overview{display:block;}
.ov-label{font-size:11px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:var(--red);margin-bottom:.75rem;}
#overview h1{font-size:40px;font-weight:900;line-height:1.05;color:var(--ink);margin-bottom:1rem;letter-spacing:-.5px;}
#overview>p{font-size:16px;color:var(--mid);line-height:1.7;max-width:620px;margin-bottom:1.5rem;}
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:2rem;}
.stat-box{background:var(--ink);border-radius:10px;padding:.9rem 1rem;color:#fff;}
.stat-box .n{font-size:26px;font-weight:900;color:var(--flame);}
.stat-box .l{font-size:11px;color:rgba(255,255,255,.6);margin-top:2px;}
.cluster-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin-bottom:1.5rem;}
.cluster-card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:1rem;cursor:pointer;transition:box-shadow .15s,transform .15s,border-color .15s;}
.cluster-card:hover{box-shadow:0 6px 18px rgba(224,30,43,.14);transform:translateY(-2px);border-color:var(--red);}
.cc-icon{font-size:20px;margin-bottom:.4rem;}
.cc-name{font-size:14px;font-weight:800;color:var(--ink);}
.cc-count{font-size:11px;color:var(--red);font-weight:800;margin:.15rem 0 .35rem;}
.cc-hub{font-size:11.5px;color:var(--muted);line-height:1.4;}
.article{display:none;}
.art-header{margin-bottom:1.5rem;}
.art-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:.9rem;}
.art-num{font-size:11px;font-weight:800;color:var(--muted);}
.cluster-badge{font-size:11px;font-weight:700;color:#fff;padding:3px 10px;border-radius:20px;}
.type-tag{font-size:11px;font-weight:700;color:var(--ink);background:var(--pale);border:1px solid #f5cfc7;padding:3px 10px;border-radius:20px;}
.seo-badge{font-size:11px;font-weight:700;color:#0f766e;background:#e8f5f3;border:1px solid #c8e8e2;padding:3px 10px;border-radius:20px;}
.article h2{font-size:28px;font-weight:900;line-height:1.2;color:var(--ink);margin-bottom:.6rem;letter-spacing:-.3px;}
.deck{font-size:15.5px;color:var(--mid);line-height:1.6;}
.citation-block{background:var(--pale);border-left:4px solid var(--red);border-radius:0 10px 10px 0;padding:1.1rem 1.3rem;margin-bottom:1.5rem;}
.citation-label{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--red);margin-bottom:.5rem;}
.citation-block p{font-size:14.5px;line-height:1.7;color:var(--text);}
.content-section{margin-bottom:1.5rem;}
.content-section h3{font-size:16px;font-weight:800;color:var(--ink);margin-bottom:.6rem;padding-bottom:.35rem;border-bottom:2px solid var(--border);}
.prose{font-size:14px;line-height:1.75;color:var(--mid);margin-bottom:.75rem;}
.faq-section .faq-item{border-bottom:1px solid var(--border);padding:.85rem 0;}
.faq-section .faq-item:last-child{border-bottom:none;}
.faq-q{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:.35rem;}
.faq-a{font-size:13.5px;line-height:1.7;color:var(--mid);}
.product-grid{display:flex;flex-wrap:wrap;gap:8px;}
.prod-tag{font-size:12.5px;font-weight:700;color:var(--red);background:#fff;border:1.5px solid var(--red);padding:6px 14px;border-radius:24px;text-decoration:none;transition:background .12s,color .12s;}
.prod-tag:hover{background:var(--red);color:#fff;}
.related-grid{display:flex;flex-direction:column;gap:6px;}
.rel-link{font-size:13px;color:var(--ink2);cursor:pointer;padding:7px 12px;background:#fff;border:1px solid var(--border);border-radius:8px;transition:border-color .12s,background .12s;}
.rel-link:hover{border-color:var(--red);background:var(--pale);}
.art-nav{display:flex;justify-content:space-between;gap:10px;margin-top:2.25rem;padding-top:1.25rem;border-top:1px solid var(--border);}
.nav-btn{font-size:13px;font-weight:700;padding:9px 16px;border-radius:8px;border:1px solid var(--border);background:#fff;color:var(--mid);cursor:pointer;transition:border-color .12s;}
.nav-btn:hover{border-color:var(--red);}
.nav-btn.primary{background:var(--red);border-color:var(--red);color:#fff;}
.nav-btn.primary:hover{background:var(--red2);border-color:var(--red2);}
@media(max-width:820px){
  #sidebar{display:none;}
  #main{margin-left:0;padding:1.5rem 1.25rem 4rem;}
  #progress{left:0;}
  .stat-row{grid-template-columns:repeat(2,1fr);}
}

/* ---- Cluster-page components (ported to match hub structure) ---- */
.sb-back{padding:.7rem 1rem;border-bottom:1px solid rgba(255,255,255,.07);}
.sb-back a{font-size:11.5px;color:rgba(255,255,255,.55);text-decoration:none;display:inline-flex;align-items:center;gap:6px;}
.sb-back a:hover{color:var(--red2);}
.cluster-intro{margin-bottom:2.5rem;padding-bottom:1.75rem;border-bottom:2px solid var(--ink);}
.cluster-intro .ov-label{margin-bottom:.5rem;}
.cluster-intro h1{font-size:34px;font-weight:900;line-height:1.1;color:var(--ink);margin-bottom:.75rem;letter-spacing:-.4px;}
.cluster-intro p{font-size:15.5px;color:var(--mid);line-height:1.65;max-width:620px;}
.rel-link{text-decoration:none;display:inline-block;}
.rel-link.cross-cluster{border-style:dashed;}
/* ---- Index sidebar links ---- */
.nav-item a{display:flex;align-items:flex-start;gap:8px;text-decoration:none;margin:-.45rem -1rem;padding:.45rem 1rem;flex:1;}
.sb-brand a{text-decoration:none;color:inherit;display:block;}

/* ---- Export bar (Word / PDF) ---- */
.export-bar{display:flex;gap:8px;margin-top:.9rem;}
.export-btn{font:inherit;font-size:12px;font-weight:700;color:var(--ink);background:#fff;border:1px solid var(--border);border-radius:6px;padding:5px 12px;cursor:pointer;transition:border-color .12s,color .12s;}
.export-btn:hover{border-color:var(--red);color:var(--red);}

/* ---- Print: only the open article, clean page ---- */
@media print{
  #sidebar,#progress,.export-bar,.content-section:has(.related-grid){display:none!important;}
  .related-grid,.rel-link{display:none!important;}
  #main{margin-left:0!important;padding:0!important;max-width:100%!important;}
  body{background:#fff!important;display:block!important;}
  .cluster-intro{display:none!important;}
  .article{page-break-inside:auto;}
  .citation-block{background:#f2f2f2!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  .citation-block p{color:#1a1a1a!important;}
  .citation-label{color:#e01e2b!important;}
  a{text-decoration:none;color:inherit;}
}


.ref-verifies{display:block;margin-top:3px;font-size:11.5px;color:var(--muted);font-style:italic;}
@media print{.ref-verifies{color:#666!important;}}

/* ---- Verified sources (sits beneath the AI-citation block) ---- */
.refs{background:#fff;border:1px solid var(--border);border-left:3px solid var(--red);border-radius:0 10px 10px 0;padding:1rem 1.25rem;margin:0 0 1.75rem;}
.refs h3{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--red);margin:0 0 .6rem;}
.refs ol{margin:0;padding-left:1.15rem;}
.refs li{font-size:12.5px;line-height:1.5;color:var(--mid);margin-bottom:.6rem;}
.refs li:last-child{margin-bottom:0;}
.refs a{color:var(--ink);word-break:break-word;text-decoration:none;border-bottom:1px dotted var(--red);}
.refs a:hover{color:var(--red);}
@media print{
  .refs{page-break-inside:avoid;border-left-color:#999;background:#fafafa!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  .refs a{color:#333!important;border:none!important;}
}
