/* ── WOD Category Page — Variables (shared with homepage) ─────────────── */
:root {
  --wodc-brand:#6ec1e4;--wodc-brand-dark:#4aa8d4;--wodc-brand-deeper:#2d8bb8;--wodc-brand-lite:#e8f6fc;
  --wodc-navy:#0c2340;--wodc-navy2:#132d4f;--wodc-navy3:#1a3a5c;
  --wodc-g50:#f8fafb;--wodc-g100:#f1f4f7;--wodc-g200:#e2e7ed;--wodc-g300:#cbd4de;
  --wodc-g400:#94a3b8;--wodc-g500:#64748b;--wodc-g700:#334155;--wodc-g900:#0f172a;
  --wodc-accent:#00b894;--wodc-amber:#f59e0b;--wodc-coral:#ef4444;--wodc-orange:#f97316;
  --wodc-r:16px;--wodc-rs:10px;--wodc-sh:0 4px 20px rgba(12,35,64,.08);
  --wodc-max:1200px;
}

/* ── Shared utils ─────────────────────────────────────────────────────── */
.wodc-container { max-width:var(--wodc-max); margin:0 auto; padding:0 24px; }
.wodc-section-label { display:inline-flex; align-items:center; gap:6px; font-size:.7rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--wodc-brand-dark); margin-bottom:8px; }
.wodc-section-label span { width:16px; height:2px; background:var(--wodc-brand); display:inline-block; }
.wodc-section-title { font-family:'DM Serif Display',serif; font-size:1.45rem; color:var(--wodc-g900); margin-bottom:5px; line-height:1.25; }
.wodc-section-sub { font-size:.84rem; color:var(--wodc-g500); margin-bottom:20px; }
.wodc-see-all { display:inline-flex; align-items:center; gap:5px; font-size:.8rem; font-weight:600; color:var(--wodc-brand-dark); border:1px solid var(--wodc-g200); border-radius:50px; padding:5px 14px; transition:all .2s; text-decoration:none; }
.wodc-see-all:hover { background:var(--wodc-brand-lite); border-color:var(--wodc-brand); }
.wodc-btn-primary { display:inline-flex; align-items:center; gap:7px; background:var(--wodc-brand); color:#fff; font-weight:700; padding:11px 24px; border-radius:50px; font-size:.88rem; transition:all .2s; border:none; text-decoration:none; font-family:'Plus Jakarta Sans',sans-serif; cursor:pointer; }
.wodc-btn-primary:hover { background:var(--wodc-brand-dark); transform:translateY(-1px); color:#fff; }

/* ── BREADCRUMB ───────────────────────────────────────────────────────── */
.wodc-breadcrumb { background:#fff; border-bottom:1px solid var(--wodc-g100); padding:10px 0; font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-breadcrumb-inner { display:flex; align-items:center; gap:6px; font-size:.76rem; color:var(--wodc-g400); }
.wodc-breadcrumb-inner a { color:var(--wodc-g500); transition:color .2s; text-decoration:none; }
.wodc-breadcrumb-inner a:hover { color:var(--wodc-brand-dark); }
.wodc-breadcrumb-inner .wodc-sep { color:var(--wodc-g300); }
.wodc-breadcrumb-inner .wodc-current { color:var(--wodc-g700); font-weight:600; }

/* ── CATEGORY HERO ────────────────────────────────────────────────────── */
.wodc-cat-hero { margin-bottom:28px; font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-cat-hero-tag { display:inline-flex; align-items:center; gap:7px; font-size:.75rem; font-weight:700; color:var(--wodc-g700); margin-bottom:12px; }
.wodc-cat-hero-tag-icon { width:28px; height:28px; background:var(--wodc-g100); border-radius:8px; display:flex; align-items:center; justify-content:center; }
.wodc-cat-hero h1 { font-family:'DM Serif Display',serif; font-size:2.4rem; line-height:1.15; color:var(--wodc-g900); margin-bottom:12px; }
.wodc-cat-hero-desc { font-size:.9rem; color:var(--wodc-g500); line-height:1.7; max-width:540px; margin-bottom:18px; }
.wodc-pain-levels { display:flex; gap:8px; flex-wrap:wrap; }
.wodc-pain-btn { display:inline-flex; align-items:center; gap:6px; padding:7px 16px; border-radius:50px; border:1.5px solid var(--wodc-g200); background:#fff; font-size:.8rem; font-weight:600; cursor:pointer; transition:all .2s; font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-pain-btn span { font-size:.72rem; font-weight:500; opacity:.7; display:block; }
.wodc-pain-btn strong { display:block; line-height:1; }
.wodc-pain-btn.wodc-mild { border-color:#fbbf24; color:#92400e; background:#fffbeb; }
.wodc-pain-btn.wodc-moderate { border-color:#f97316; color:#9a3412; background:#fff7ed; }
.wodc-pain-btn.wodc-severe { border-color:#ef4444; color:#991b1b; background:#fef2f2; }
.wodc-pain-btn:hover { transform:translateY(-1px); box-shadow:var(--wodc-sh); }

/* ── MOLLY AI CHAT ────────────────────────────────────────────────────── */
.wodc-molly-chat { background:linear-gradient(135deg,var(--wodc-navy),var(--wodc-navy3)); border-radius:var(--wodc-r); padding:20px; margin-bottom:28px; position:relative; overflow:hidden; font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-molly-chat::after { content:''; position:absolute; top:-40px; right:-40px; width:140px; height:140px; border-radius:50%; background:rgba(110,193,228,.08); pointer-events:none; }
.wodc-molly-header { display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.wodc-molly-avatar { width:32px; height:32px; background:var(--wodc-brand); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:.85rem; font-weight:800; color:#fff; flex-shrink:0; }
.wodc-molly-name { font-size:.88rem; font-weight:700; color:#fff; }
.wodc-molly-status { font-size:.72rem; color:rgba(255,255,255,.55); display:flex; align-items:center; gap:4px; }
.wodc-molly-status::before { content:''; width:7px; height:7px; border-radius:50%; background:var(--wodc-accent); display:inline-block; }
.wodc-molly-bubble { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.1); border-radius:12px; padding:12px 14px; font-size:.82rem; color:rgba(255,255,255,.8); line-height:1.6; margin-bottom:12px; }
.wodc-molly-suggestions { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:12px; }
.wodc-molly-chip { background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.15); border-radius:50px; padding:5px 12px; font-size:.74rem; color:rgba(255,255,255,.8); cursor:pointer; transition:all .2s; white-space:nowrap; }
.wodc-molly-chip:hover { background:rgba(110,193,228,.2); border-color:rgba(110,193,228,.4); }
.wodc-molly-input-row { display:flex; gap:8px; align-items:center; }
.wodc-molly-input { flex:1; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); border-radius:50px; padding:9px 16px; font-size:.82rem; color:#fff; font-family:inherit; outline:none; transition:border-color .2s; }
.wodc-molly-input::placeholder { color:rgba(255,255,255,.35); }
.wodc-molly-input:focus { border-color:rgba(110,193,228,.5); }
.wodc-molly-send { width:34px; height:34px; border-radius:50%; background:var(--wodc-brand); border:none; display:flex; align-items:center; justify-content:center; cursor:pointer; flex-shrink:0; transition:background .2s; }
.wodc-molly-send:hover { background:var(--wodc-brand-dark); }
.wodc-molly-disclaimer { font-size:.67rem; color:rgba(255,255,255,.3); margin-top:8px; text-align:center; }

/* ── PAIN GUIDE ───────────────────────────────────────────────────────── */
.wodc-pain-guide { margin-bottom:28px; font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-pain-types-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.wodc-pain-type-item { display:flex; align-items:center; justify-content:space-between; padding:11px 14px; border-radius:var(--wodc-rs); border:1px solid var(--wodc-g100); background:#fff; cursor:pointer; transition:all .2s; gap:8px; text-decoration:none; }
.wodc-pain-type-item:hover { border-color:var(--wodc-brand); background:var(--wodc-brand-lite); }
.wodc-pain-type-left { display:flex; align-items:center; gap:8px; min-width:0; }
.wodc-pain-dot { width:9px; height:9px; border-radius:50%; flex-shrink:0; }
.wodc-pain-type-left span { font-size:.82rem; font-weight:600; color:var(--wodc-g900); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.wodc-pain-type-badge { display:inline-flex; align-items:center; font-size:.67rem; font-weight:700; padding:2px 8px; border-radius:50px; white-space:nowrap; flex-shrink:0; }
.wodc-badge-red { background:#fef2f2; color:#991b1b; }
.wodc-badge-orange { background:#fff7ed; color:#9a3412; }
.wodc-badge-blue { background:#eff6ff; color:#1d4ed8; }
.wodc-badge-purple { background:#f5f3ff; color:#6d28d9; }
.wodc-badge-amber { background:#fffbeb; color:#92400e; }
.wodc-badge-gray { background:var(--wodc-g100); color:var(--wodc-g700); }
.wodc-pain-type-arrow { color:var(--wodc-g300); font-size:.8rem; flex-shrink:0; }

/* ── ARTICLES GRID ────────────────────────────────────────────────────── */
.wodc-articles-section { margin-bottom:28px; font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-articles-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:8px; }
.wodc-art-card { background:#fff; border:1px solid var(--wodc-g200); border-radius:var(--wodc-r); overflow:hidden; cursor:pointer; transition:all .25s; text-decoration:none; display:block; }
.wodc-art-card:hover { transform:translateY(-3px); box-shadow:var(--wodc-sh); border-color:var(--wodc-brand); }
.wodc-art-thumb { height:110px; display:flex; align-items:center; justify-content:center; font-size:2.2rem; position:relative; }
.wodc-art-thumb img { width:100%; height:100%; object-fit:cover; }
.wodc-art-body { padding:14px; }
.wodc-art-meta { font-size:.7rem; color:var(--wodc-g400); margin-bottom:4px; }
.wodc-art-body h4 { font-size:.88rem; font-weight:700; color:var(--wodc-g900); line-height:1.35; margin-bottom:6px; }
.wodc-art-tag { display:inline-block; font-size:.67rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; padding:3px 8px; border-radius:5px; }

/* ── VIDEO SCROLL ─────────────────────────────────────────────────────── */
.wodc-videos-section { margin-bottom:28px; font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-video-scroll { display:flex; gap:12px; overflow-x:auto; padding-bottom:6px; -ms-overflow-style:none; scrollbar-width:none; }
.wodc-video-scroll::-webkit-scrollbar { display:none; }
.wodc-vid-card { flex:0 0 200px; background:#fff; border-radius:var(--wodc-rs); overflow:hidden; border:1px solid var(--wodc-g200); cursor:pointer; transition:all .2s; text-decoration:none; display:block; }
.wodc-vid-card:hover { transform:translateY(-3px); box-shadow:var(--wodc-sh); }
.wodc-vid-thumb { height:96px; display:flex; align-items:center; justify-content:center; position:relative; }
.wodc-vid-thumb-wave { width:100%; height:100%; display:flex; align-items:center; justify-content:center; gap:3px; }
.wodc-vid-wave-bar { width:3px; border-radius:3px; animation:wodc-wave 1.2s ease-in-out infinite; }
.wodc-vid-wave-bar:nth-child(1){height:18px;animation-delay:0s}
.wodc-vid-wave-bar:nth-child(2){height:32px;animation-delay:.1s}
.wodc-vid-wave-bar:nth-child(3){height:22px;animation-delay:.2s}
.wodc-vid-wave-bar:nth-child(4){height:38px;animation-delay:.3s}
.wodc-vid-wave-bar:nth-child(5){height:26px;animation-delay:.4s}
.wodc-vid-wave-bar:nth-child(6){height:16px;animation-delay:.5s}
@keyframes wodc-wave{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.5)}}
.wodc-vid-play { position:absolute; width:30px; height:30px; background:rgba(255,255,255,.92); border-radius:50%; display:flex; align-items:center; justify-content:center; box-shadow:0 2px 8px rgba(0,0,0,.12); }
.wodc-vid-duration { position:absolute; bottom:6px; right:8px; background:rgba(0,0,0,.55); color:#fff; font-size:.65rem; font-weight:700; padding:2px 6px; border-radius:4px; }
.wodc-vid-ep { position:absolute; bottom:6px; left:8px; background:rgba(0,0,0,.45); color:#fff; font-size:.62rem; font-weight:700; padding:2px 6px; border-radius:4px; }
.wodc-vid-body { padding:10px 12px; }
.wodc-vid-body h5 { font-size:.78rem; font-weight:700; color:var(--wodc-g900); line-height:1.3; margin-bottom:3px; }
.wodc-vid-body p { font-size:.68rem; color:var(--wodc-g400); }
.wodc-vc-red{background:linear-gradient(135deg,#fee2e2,#fca5a5)}
.wodc-vc-navy{background:linear-gradient(135deg,var(--wodc-navy),var(--wodc-navy3))}
.wodc-vc-green{background:linear-gradient(135deg,#d1fae5,#6ee7b7)}
.wodc-vc-amber{background:linear-gradient(135deg,#fef3c7,#fde68a)}
.wodc-vc-blue{background:linear-gradient(135deg,#dbeafe,#93c5fd)}
.wodc-vc-purple{background:linear-gradient(135deg,#ede9fe,#ddd6fe)}
.wodc-vc-rose{background:linear-gradient(135deg,#ffe4e6,#fecdd3)}

/* ── CATEGORY PRODUCTS ────────────────────────────────────────────────── */
.wodc-products-section { margin-bottom:32px; font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-products-row { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-bottom:8px; }
.wodc-prod-card { background:#fff; border:1px solid var(--wodc-g200); border-radius:var(--wodc-rs); padding:14px 12px; text-align:center; transition:all .2s; cursor:pointer; }
.wodc-prod-card:hover { transform:translateY(-2px); box-shadow:var(--wodc-sh); border-color:var(--wodc-brand); }
.wodc-prod-emoji { font-size:2rem; height:52px; display:flex; align-items:center; justify-content:center; margin-bottom:8px; }
.wodc-prod-cat-tag { font-size:.63rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; padding:2px 8px; border-radius:50px; margin-bottom:6px; display:inline-block; }
.wodc-prod-card h5 { font-size:.76rem; font-weight:600; color:var(--wodc-g900); line-height:1.3; margin-bottom:10px; min-height:2.6em; }
.wodc-btn-amz { display:inline-flex; align-items:center; gap:5px; background:#f59e0b; color:#fff; font-size:.68rem; font-weight:700; padding:6px 12px; border-radius:50px; border:none; cursor:pointer; width:100%; justify-content:center; transition:background .2s; text-decoration:none; font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-btn-amz:hover { background:#d97706; color:#fff; }

/* ── CATEGORY FAQ ─────────────────────────────────────────────────────── */
.wodc-faq-section { font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-faq-list { margin-bottom:28px; }
.wodc-faq-item { border-bottom:1px solid var(--wodc-g100); }
.wodc-faq-q { display:flex; align-items:flex-start; justify-content:space-between; padding:14px 0; cursor:pointer; gap:12px; }
.wodc-faq-q h4 { font-size:.88rem; font-weight:600; color:var(--wodc-g900); line-height:1.4; }
.wodc-faq-arrow { color:var(--wodc-g300); flex-shrink:0; margin-top:2px; transition:transform .2s; }
.wodc-faq-item.open .wodc-faq-arrow { transform:rotate(180deg); color:var(--wodc-brand-dark); }
.wodc-faq-a { font-size:.82rem; color:var(--wodc-g500); line-height:1.7; padding-bottom:14px; display:none; }
.wodc-faq-item.open .wodc-faq-a { display:block; }

/* ── SIDEBAR: Quick Actions ───────────────────────────────────────────── */
.wodc-sidebar-card { background:#fff; border:1px solid var(--wodc-g200); border-radius:var(--wodc-r); overflow:hidden; font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-sidebar-quick-label { font-size:.68rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--wodc-brand-dark); padding:14px 16px 8px; display:block; }
.wodc-quick-action { display:flex; align-items:center; gap:12px; padding:12px 16px; border-bottom:1px solid var(--wodc-g100); cursor:pointer; transition:background .2s; text-decoration:none; color:inherit; }
.wodc-quick-action:last-child { border-bottom:none; }
.wodc-quick-action:hover { background:var(--wodc-g50); }
.wodc-quick-action.wodc-highlight { background:linear-gradient(135deg,var(--wodc-navy),var(--wodc-navy3)); color:#fff; }
.wodc-quick-action.wodc-highlight:hover { background:linear-gradient(135deg,var(--wodc-navy2),var(--wodc-navy)); }
.wodc-quick-icon { width:36px; height:36px; border-radius:10px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.wodc-quick-action.wodc-highlight .wodc-quick-icon { background:rgba(255,255,255,.12); }
.wodc-quick-body h5 { font-size:.84rem; font-weight:700; line-height:1.2; }
.wodc-quick-body p { font-size:.72rem; opacity:.65; }
.wodc-quick-arrow { margin-left:auto; color:currentColor; opacity:.4; flex-shrink:0; }

/* ── SIDEBAR: Urgency Card ────────────────────────────────────────────── */
.wodc-urgency-card { background:#fff; border:1px solid var(--wodc-g200); border-radius:var(--wodc-r); padding:16px; font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-urgency-title { font-size:.8rem; font-weight:700; color:var(--wodc-g700); margin-bottom:12px; display:flex; align-items:center; gap:6px; }
.wodc-urgency-title svg { color:var(--wodc-brand-dark); }
.wodc-urgency-group { margin-bottom:12px; }
.wodc-urgency-group:last-child { margin-bottom:0; }
.wodc-urgency-group-label { font-size:.72rem; font-weight:700; margin-bottom:6px; }
.wodc-urgency-item { display:flex; align-items:flex-start; gap:7px; font-size:.78rem; color:var(--wodc-g700); margin-bottom:4px; line-height:1.4; }
.wodc-urgency-dot { width:8px; height:8px; border-radius:50%; flex-shrink:0; margin-top:4px; }

/* ── SIDEBAR: Find Dentist ────────────────────────────────────────────── */
.wodc-dir-sidebar { background:linear-gradient(160deg,var(--wodc-navy),var(--wodc-navy3)); border-radius:var(--wodc-r); padding:18px; color:#fff; font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-dir-sidebar h4 { font-family:'DM Serif Display',serif; font-size:1.15rem; color:#fff; line-height:1.3; margin-bottom:8px; }
.wodc-dir-sidebar p { font-size:.78rem; color:rgba(255,255,255,.6); line-height:1.6; margin-bottom:16px; }
.wodc-dir-sidebar .wodc-btn-primary { width:100%; justify-content:center; font-size:.82rem; padding:10px; }

/* ── SIDEBAR: Other Topics ────────────────────────────────────────────── */
.wodc-other-topics { background:#fff; border:1px solid var(--wodc-g200); border-radius:var(--wodc-r); font-family:'Plus Jakarta Sans',sans-serif; }
.wodc-other-topics-title { font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--wodc-g500); padding:14px 16px 8px; }
.wodc-topic-link { display:flex; align-items:center; justify-content:space-between; padding:10px 16px; border-top:1px solid var(--wodc-g100); font-size:.83rem; font-weight:600; color:var(--wodc-g700); cursor:pointer; transition:all .2s; text-decoration:none; }
.wodc-topic-link:hover { color:var(--wodc-brand-dark); background:var(--wodc-brand-lite); }
.wodc-topic-link-left { display:flex; align-items:center; gap:8px; }
.wodc-topic-link-icon { width:28px; height:28px; border-radius:7px; display:flex; align-items:center; justify-content:center; font-size:.9rem; flex-shrink:0; }

/* ── RESPONSIVE ───────────────────────────────────────────────────────── */
@media (max-width:1024px) {
  .wodc-products-row { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:768px) {
  .wodc-cat-hero h1 { font-size:1.85rem; }
  .wodc-articles-grid { grid-template-columns:1fr; }
  .wodc-products-row { grid-template-columns:repeat(2,1fr); }
  .wodc-pain-types-grid { grid-template-columns:1fr; }
}
@media (max-width:480px) {
  .wodc-cat-hero h1 { font-size:1.65rem; }
  .wodc-pain-levels { gap:6px; }
  .wodc-pain-btn { font-size:.75rem; padding:6px 12px; }
  .wodc-products-row { grid-template-columns:repeat(2,1fr); }
}
