/* Scoped NovaFitHub article styling; no global header or menu overrides. */
.sleep-article-page{--sa-bg:var(--nf-bg,#f5f8f7);--sa-card:var(--nf-card,#fff);--sa-text:var(--nf-text,#0c2038);--sa-muted:var(--nf-muted,#66758f);--sa-line:rgba(15,40,60,.12);--sa-soft:var(--nf-green-soft,#e4f8ef);--sa-green:var(--nf-green,#00a86b);background:var(--sa-bg);color:var(--sa-text);padding:42px 16px 72px;transition:background-color .2s,color .2s}
/* Current NovaFitHub toggle uses body.dark; alternate selectors cover other theme implementations. */
body.dark .sleep-article-page,body.dark-mode .sleep-article-page,html.dark .sleep-article-page,html[data-theme=dark] .sleep-article-page,body[data-theme=dark] .sleep-article-page{--sa-bg:#071525;--sa-card:#102238;--sa-text:#f1f6fc;--sa-muted:#b6c5d6;--sa-line:rgba(255,255,255,.15);--sa-soft:#123c34;--sa-green:#55ddb0}
.sleep-article,.sleep-article *{box-sizing:border-box}
.sleep-article{max-width:880px;margin:auto}
.sleep-hero,.sleep-content{background:var(--sa-card);border:1px solid var(--sa-line);border-radius:17px;box-shadow:0 12px 38px rgba(5,27,39,.05)}
.sleep-hero{padding:32px 36px;margin-bottom:20px}
.sleep-kicker{display:inline-block;color:var(--sa-green);font-size:.74rem;font-weight:800;letter-spacing:.09em;margin-bottom:13px}
.sleep-hero h1{font-size:clamp(1.7rem,3.5vw,2.55rem);line-height:1.2;letter-spacing:-.025em;margin:0;color:var(--sa-text);text-align:left}
.sleep-content{padding:34px 38px 44px;text-align:left}
.sleep-content h2,.sleep-content h3{color:var(--sa-text);text-align:left;line-height:1.35}
.sleep-content h2{font-size:clamp(1.3rem,2.7vw,1.65rem);margin:35px 0 15px}
.sleep-content .sleep-section:first-child h2{margin-top:0}
.sleep-content h3{font-size:1.1rem;margin:24px 0 9px}
.sleep-content p,.sleep-content li{font-size:1rem;line-height:1.78;color:var(--sa-text)}
.sleep-content p{margin:0 0 15px}
.sleep-content a{color:var(--sa-green);text-underline-offset:3px;font-weight:650;overflow-wrap:anywhere}
.sleep-content a:hover{text-decoration-thickness:2px}
.sleep-callout,.sleep-safety{background:var(--sa-soft);padding:15px 18px;border-left:3px solid var(--sa-green);border-radius:8px;margin:17px 0 22px!important}
.sleep-table-scroll{overflow-x:auto;border:1px solid var(--sa-line);border-radius:10px;margin:18px 0 20px}
.sleep-table-scroll table{width:100%;min-width:400px;border-collapse:collapse}
.sleep-table-scroll th,.sleep-table-scroll td{padding:12px 16px;text-align:left;color:var(--sa-text);border-bottom:1px solid var(--sa-line);line-height:1.55}
.sleep-table-scroll thead{background:var(--sa-soft)}
.sleep-table-scroll tbody tr:last-child>*{border-bottom:0}
.sleep-faq{display:grid;gap:10px;margin:18px 0 28px}
.sleep-faq details{background:var(--sa-bg);border:1px solid var(--sa-line);border-radius:10px;overflow:hidden}
.sleep-faq summary{cursor:pointer;list-style:none;padding:14px 42px 14px 16px;font-weight:700;color:var(--sa-text);position:relative;line-height:1.45}
.sleep-faq summary::-webkit-details-marker{display:none}
.sleep-faq summary:after{content:'+';position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:1.3rem;color:var(--sa-green)}
.sleep-faq details[open] summary:after{content:'−'}
.sleep-faq details p{padding:0 16px 15px;margin:0;color:var(--sa-muted)}
.sleep-references{border-top:1px solid var(--sa-line);margin-top:32px;padding-top:4px}
.sleep-references ol{padding-left:23px}
.sleep-references li{margin:8px 0}
@media(max-width:768px){.sleep-article-page{padding:28px 12px 48px}.sleep-hero{padding:26px 24px}.sleep-content{padding:26px 24px}}
@media(max-width:480px){.sleep-article-page{padding:18px 8px 36px}.sleep-hero{padding:23px 18px;border-radius:13px}.sleep-content{padding:23px 17px;border-radius:13px}.sleep-content p,.sleep-content li{font-size:.96rem;line-height:1.72}.sleep-content h2{margin-top:28px}.sleep-table-scroll th,.sleep-table-scroll td{padding:11px}}
@media(prefers-reduced-motion:reduce){.sleep-article-page{transition:none}}
