﻿@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700;800;900&display=swap');
:root {
  --bg:oklch(7% 0.006 95);--surface:oklch(11% 0.006 95);--surface-raised:oklch(15% 0.008 95);
  --border:oklch(78% 0 0 / 0.10);--border-strong:oklch(78% 0 0 / 0.14);
  --gold:oklch(84% 0.19 80.46);--gold-deep:oklch(61% 0.085 78);--gold-pale:oklch(86% 0.07 84);
  --patina:oklch(70% 0.12 188);--text:oklch(88% 0 0);--text-muted:oklch(72% 0 0);--text-faint:oklch(62% 0 0);
  --heading:oklch(91% 0 0);--g:#3fb950;--r:#f85149;--a:oklch(84% 0.19 80.46);--b:oklch(70% 0.12 188);
  --radius:6px;--radius-sm:4px;--transition:0.15s ease;
  --gold-3:oklch(84% 0.19 80.46 / 0.03);--g-bg:oklch(45% 0.18 145 / 0.15);--r-bg:oklch(58% 0.15 35 / 0.12);
  --gold-12:oklch(84% 0.19 80.46 / 0.12);--patina-12:oklch(70% 0.12 188 / 0.12);
  --sidebar-bg:oklch(9% 0.006 95);--r-tint-4:oklch(58% 0.15 35 / 0.04);--r-tint-8:oklch(58% 0.15 35 / 0.08);
  --font-body:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--font-display:'Cinzel',serif;
  --gold-btn-hover:oklch(86% 0.19 80.46);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--text);font-family:var(--font-body);line-height:1.5;font-size:1.22rem;padding:1.2rem 1.5rem;max-width:1500px;margin:0 auto}
a{color:var(--gold-pale);text-decoration:none;transition:color var(--transition)}
a:hover{color:var(--gold)}
.breadcrumb{padding:0.3rem 0 0.4rem;font-size:1rem;color:var(--text-faint);display:flex;gap:0.3rem;flex-wrap:wrap}
.breadcrumb a{color:var(--text-muted)}.breadcrumb a:hover{color:var(--text)}.breadcrumb span{color:var(--text-faint)}
.page-header{text-align:left;margin-bottom:1rem}
.page-header h1{font-size:2rem;font-weight:800;color:var(--heading);letter-spacing:-0.02em;margin-bottom:0.2rem;font-family:var(--font-display)}
.page-header .meta{font-size:1.05rem;color:var(--text-faint);font-weight:500}
.stats-bar{display:flex;gap:0.4rem;margin:0.6rem auto 0.8rem;flex-wrap:wrap;justify-content:center}
.pagination{display:flex;flex-wrap:wrap;gap:0.3rem;justify-content:center;align-items:center;margin:1rem 0 0.5rem}
.pg-btn{padding:0.3rem 0.6rem;font-size:0.72rem;background:var(--surface);border:1px solid var(--border);color:var(--text-muted);border-radius:4px;cursor:pointer;min-width:2rem;font-family:inherit;transition:all var(--transition)}
.pg-btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}
.pg-btn.active{background:var(--gold);border-color:var(--gold);color:var(--bg);font-weight:700}
.pg-btn:disabled{opacity:0.35;cursor:not-allowed}
.pg-ellipsis{color:var(--text-faint);font-size:0.8rem;padding:0 0.2rem}
.stats-bar .stat{padding:0.4rem 0.8rem;border:1px solid var(--border);border-radius:0;font-size:0.9rem;text-transform:uppercase;letter-spacing:0.05em;display:flex;gap:0.4rem;align-items:baseline;transition:background-color var(--transition),border-color var(--transition),color var(--transition),transform var(--transition)}
.stats-bar .stat:hover{border-color:var(--gold-deep)}
.stat .n{font-weight:800;font-size:1.2rem;font-family:var(--font-display);text-align:center}
.stat .l{color:var(--text-faint)}
.s-g{border-color:var(--g);color:var(--g);background:var(--g-bg)}.s-g .l{color:var(--g)}
.s-r{border-color:var(--gold);color:var(--gold);background:var(--gold-12)}.s-r .l{color:var(--gold)}
.s-f,.s-b{border-color:var(--patina);color:var(--patina);background:var(--patina-12)}.s-f .l,.s-b .l{color:var(--patina)}
.s-a{border-color:var(--a);color:var(--a);background:var(--gold-12)}.s-a .l{color:var(--a)}
.s-t{border-color:var(--patina);color:var(--patina);background:var(--patina-12)}.s-t .l{color:var(--patina)}
.s-p{border-color:var(--g);color:var(--g);background:var(--g-bg)}.s-p .l{color:var(--g)}
.s-n{border-color:var(--r);color:var(--r);background:var(--r-bg)}.s-n .l{color:var(--r)}
.s-i{border-color:var(--r);color:var(--r);background:var(--r-tint-4)}.s-i .l{color:var(--r)}
.filters{display:flex;gap:0.3rem;margin:0.4rem auto 0.7rem;flex-wrap:wrap;justify-content:center}
.filter{font-size:0.9rem;padding:0.25em 0.6em;border:1px solid var(--border);border-radius:3px;cursor:pointer;color:var(--text-muted);background:transparent;font-family:inherit;transition:background-color var(--transition),border-color var(--transition),color var(--transition),transform var(--transition)}
.filter:hover{border-color:var(--gold);color:var(--text)}
.filter.active{background:var(--gold);color:var(--bg);border-color:var(--gold);font-weight:700}
.cat-filters{display:flex;gap:0.3rem;margin:0.4rem auto 0.7rem;flex-wrap:wrap;justify-content:center}
.cat-filter{font-size:0.72rem;padding:0.22em 0.55em;border:1px solid var(--border);border-radius:3px;cursor:pointer;color:var(--text-muted);background:transparent;font-family:inherit;transition:background-color var(--transition),border-color var(--transition),color var(--transition)}
.cat-filter:hover{border-color:var(--gold);color:var(--text)}
.cat-filter.active{background:var(--gold);color:var(--bg);border-color:var(--gold);font-weight:700}
.sortable{cursor:pointer;user-select:none;transition:color var(--transition)}
.sortable:hover{color:var(--gold)}
.sortable.sort-asc::after{content:' \25B2';font-size:0.6em}
.sortable.sort-desc::after{content:' \25BC';font-size:0.6em}
.research-table{width:100%;border-collapse:collapse;margin:0.2rem 0}
.research-table th{text-align:left;padding:0.3rem 0.5rem;font-size:0.87rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-faint);border-bottom:1px solid var(--border-strong);background:var(--bg);position:sticky;top:0;z-index:2;font-weight:600}
.research-table td{padding:0.3rem 0.5rem;border-bottom:1px solid var(--border);font-size:1.02rem;vertical-align:middle;transition:background var(--transition)}
.research-table tbody tr:hover td{background:var(--gold-3)}
.research-table .col-cat{width:7em;font-size:0.87rem}
.research-table .col-find{color:var(--text-muted);font-size:0.93rem;line-height:1.35;vertical-align:top}
.research-table .col-meta{width:10em;font-size:0.87rem;color:var(--text-faint)}
.research-table .col-pmid{width:6em;text-align:right}
.research-table .col-pmid a{color:var(--gold-pale);font-weight:500}
.badge{display:inline-block;font-size:0.72rem;font-weight:700;padding:0.15em 0.5em;border-radius:10px;line-height:1.3;white-space:nowrap;letter-spacing:0.02em}
.bg-p{background:var(--g-bg);color:var(--g)}.bg-n{background:var(--r-bg);color:var(--r)}
.bg-a{background:var(--gold-12);color:var(--a)}.bg-b{background:var(--patina-12);color:var(--b)}
.bg-u{background:#1c1c1c;color:#6b7280}.bg-m{background:oklch(70% 0.13 75 / 0.15);color:oklch(82% 0.15 75)}.bg-e{background:oklch(56% 0.045 250 / 0.15);color:oklch(70% 0.06 250)}.bg-d{background:oklch(58% 0.17 25 / 0.20);color:oklch(82% 0.2 22)}
.tier-legend{display:flex;gap:0.5rem 1.1rem;flex-wrap:wrap;align-items:center;justify-content:center;margin:0.4rem auto 0.6rem;font-size:0.82rem;color:var(--text-faint)}
.section-h{font-size:1.35rem;font-weight:700;color:var(--heading);margin:0.8rem 0 0.3rem;padding-bottom:0.2rem;border-bottom:1px solid var(--border-strong);letter-spacing:-0.01em}
.section-h .count{font-size:0.93rem;color:var(--text-faint);font-weight:500;margin-left:0.3rem}
.result-count{text-align:center;font-size:0.9rem;color:var(--text-faint);margin:0.3rem 0}
.verdict{border:1px solid var(--border);border-left:2px solid var(--gold);padding:0.6rem 0.8rem;margin:0.6rem 0;font-size:1.08rem;background:var(--surface);border-radius:var(--radius-sm);line-height:1.5}
.verdict strong{color:var(--heading)}
.summary-box{border:1px solid var(--border);padding:0.6rem 0.8rem;margin:0.6rem 0;font-size:1.02rem;background:var(--surface);border-radius:var(--radius-sm)}
.summary-box h3{font-size:1.13rem;color:var(--heading);margin-bottom:0.2rem;font-weight:700}
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:0.6rem;margin:0.8rem 0}
.cat-card{border:1px solid var(--border);border-radius:var(--radius);padding:1rem;cursor:pointer;transition:all var(--transition);background:var(--surface)}
.cat-card:hover{transform:translateY(-2px);border-color:var(--gold-deep)}
.cat-starred{border-color:var(--gold-deep)!important;order:-1}
.cat-starred h2{color:var(--gold)!important}
.cat-card h2{font-size:1rem;margin-bottom:0.3rem;color:var(--heading);border:none;padding:0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-weight:700;letter-spacing:-0.01em}
.cat-card h2 .arrow{font-size:0.9rem;color:var(--text-faint);opacity:0.35;transition:all var(--transition);line-height:14px;display:inline-flex;align-items:center;height:14px}
.cat-card:hover h2 .arrow{opacity:1;color:var(--gold)}
.cat-card p{font-size:0.85rem;color:var(--text-muted);margin-bottom:0.7rem;line-height:1.35}
.cat-card .sub-links{display:flex;flex-wrap:wrap;gap:0.3rem}
.cat-card .sub-link{display:flex;align-items:center;gap:0.4rem;padding:0.45rem 0.75rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:0.95rem;color:var(--text-muted);text-decoration:none;transition:all var(--transition);font-weight:500;white-space:nowrap}
.cat-card .sub-link:hover{border-color:var(--gold-deep);color:var(--gold)}
.cat-card .sub-link .icon{width:1.05rem;height:1.05rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:0.5}
.cat-card .sub-link:hover .icon{opacity:1}
.cat-card .sub-link .count{font-size:0.78rem;color:var(--text-faint);margin-left:auto;font-weight:600}
.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0.5rem;margin:0.8rem 0}
.dash-stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:0.8rem;text-align:center;transition:all var(--transition);cursor:pointer}
.dash-stat:hover{transform:scale(1.03);border-color:var(--gold-deep)}
.dash-stat .n{font-size:1.8rem;font-weight:800;color:var(--gold);line-height:1;letter-spacing:-0.02em}
.dash-stat .d{font-size:0.78rem;color:var(--text-faint);margin-top:0.15rem;line-height:1.2}
.dash-stat .l{font-size:0.83rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-faint);margin-top:0.25rem;font-weight:600}
.dash-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0.4rem;margin:0.8rem 0}
.dash-link{display:block;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:0.8rem;text-decoration:none;color:var(--text);transition:all var(--transition);min-height:5.5rem}
.dash-link:hover{transform:translateY(-1px);border-color:var(--gold-deep)}
.dash-link h3{font-size:1.28rem;color:var(--heading);margin-bottom:0.2rem;font-weight:700}
.dash-link p{font-size:0.93rem;color:var(--text-muted);margin:0;line-height:1.4}
.search-bar{width:100%;max-width:700px;padding:0.5rem 0.8rem;font-size:1.2rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);margin:0.4rem auto 0.6rem;font-family:inherit;display:block;transition:all var(--transition)}
.search-bar:focus{outline:none;border-color:var(--gold);color:var(--heading)}
.search-bar::placeholder{color:var(--text-faint);font-weight:400}
.sidebar{position:fixed;top:0;left:0;width:17rem;height:100vh;background:var(--sidebar-bg);border-right:1px solid var(--border);padding:0.6rem 0.7rem 0.8rem;overflow-y:auto;overflow-x:hidden;z-index:5;transition:transform 0.2s cubic-bezier(0.4,0,0.2,1);display:flex;flex-direction:column;transform:translateX(0)}
.sidebar.closed{transform:translateX(-17rem);pointer-events:none}
body.has-sidebar{padding-left:17rem;transition:padding-left 0.2s cubic-bezier(0.4,0,0.2,1)}
body.has-sidebar.sb-closed{padding-left:1.5rem}
.sidebar-nav-bottom{margin-top:auto!important;padding-top:0.36rem;border-top:1px solid var(--border)}
.sidebar-logo{text-align:center;padding:0.15rem 0 0.35rem;margin-bottom:0.15rem;border-bottom:1px solid var(--border);flex-shrink:0}
.sidebar-logo-img{width:66px;height:66px}
.sidebar-toggle-btn{display:flex;position:fixed;top:0.6rem;left:17.5rem;z-index:6;width:22px;height:22px;border-radius:50%;background:var(--surface);border:1px solid var(--border);color:var(--text-faint);cursor:pointer;align-items:center;justify-content:center;font-size:0.65rem;transition:all 0.2s cubic-bezier(0.4,0,0.2,1)}
.sidebar-toggle-btn svg{flex-shrink:0}
.sidebar-link.open .s-chevron{transform:rotate(180deg)}
.sidebar .sidebar-link.open{background:var(--surface-raised);border:1px solid var(--gold-deep);box-shadow:inset 3px 0 0 0 var(--gold)}

.s-chevron{transition:transform 0.25s ease;flex-shrink:0}
.sidebar-link .s-chevron{width:12px!important;height:12px!important}
.sidebar-toggle-btn.sb-tuck{left:1rem}
@keyframes api-pulse{0%,100%{transform:scale(1);box-shadow:0 0 4px var(--glow-color)}50%{transform:scale(1.5);box-shadow:0 0 10px var(--glow-color),0 0 18px var(--glow-color)}}
.api-status-dot{position:fixed;top:0.55rem;left:0.55rem;width:6px;height:6px;border-radius:50%;background:var(--border);z-index:7;transition:background 0.3s ease,opacity 0.3s ease;display:flex;align-items:center;gap:0.35rem}
body.sb-closed .api-status-dot,body.sb-closed .api-status-tooltip{opacity:0;pointer-events:none}
.api-status-dot .dot-core{width:6px;height:6px;border-radius:50%;flex-shrink:0}
.api-status-dot .dot-label{font-size:0.58rem;color:var(--text-faint);white-space:nowrap;opacity:0;transition:opacity 0.3s}
.api-status-dot:hover .dot-label,.api-status-dot.show .dot-label{opacity:1}
.api-status-dot.online .dot-core{background:oklch(58% 0.18 145);animation:api-pulse 2.5s ease-in-out infinite;--glow-color:oklch(58% 0.18 145 / 0.5)}
.api-status-dot.partial .dot-core{background:oklch(62% 0.14 85);animation:api-pulse 2.5s ease-in-out infinite;--glow-color:oklch(62% 0.14 85 / 0.5)}
.api-status-dot.offline .dot-core{background:oklch(55% 0.14 25);--glow-color:oklch(55% 0.14 25 / 0)}
.api-status-tooltip{position:fixed;top:1.6rem;left:0.5rem;z-index:8;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:0.4rem 0.55rem;font-size:0.62rem;color:var(--text-muted);line-height:1.5;opacity:0;pointer-events:none;transition:opacity 0.2s}
.api-status-dot:hover+.api-status-tooltip,.api-status-tooltip:hover{opacity:1}
.sidebar-toggle-btn:hover{color:var(--gold);border-color:var(--gold)}
.mobile-topbar{display:none}
.mobile-scrim{display:none}
.sidebar-nav{display:flex;flex-direction:column;gap:0.15rem;flex-shrink:0}
.sidebar-link{display:flex;align-items:center;gap:0.66rem;padding:0.42rem 0.66rem;border-radius:var(--radius-sm);color:var(--text-muted);font-size:1.1rem;font-weight:600;text-decoration:none;transition:all var(--transition)}
.s-link-sm{font-size:1.18rem!important;padding:0.58rem 0.72rem!important;font-weight:600}
.s-starred{border:1px solid var(--gold-deep)!important;border-radius:var(--radius-sm)}
.s-star-icon{font-size:0.78rem;color:var(--gold);margin-left:auto}
.sidebar-link:hover{background:var(--surface);color:var(--text)}
.sidebar-link.active{background:var(--surface-raised);color:var(--gold);border:1px solid var(--gold-deep);box-shadow:inset 3px 0 0 0 var(--gold)}
.s-icon{width:17px;height:17px;flex-shrink:0}
.s-link-sm .s-icon{width:20px;height:20px}
.sidebar-subnav{overflow:hidden;max-height:0;transition:max-height 0.55s cubic-bezier(0.22,1,0.36,1);margin-left:0.2rem;border-left:1px solid var(--border);padding-left:0.15rem;gap:0.12rem}
.sidebar-subnav .sidebar-link{opacity:0;transform:translateY(-4px);flex-shrink:0;transition:opacity 0.35s ease,transform 0.35s ease,background var(--transition),color var(--transition)}
.sidebar.snap .sidebar-subnav .sidebar-link{opacity:1!important;transform:none!important;transition:none!important}
.sidebar.snap .sidebar-subnav{transition:none!important}
.sidebar-subnav.open .sidebar-link{opacity:1;transform:none}
.sidebar-subnav::-webkit-scrollbar{width:0;height:0;display:none}
@media(min-width:641px){
  .sidebar-subnav.index-sub{gap:0.07rem}
  .sidebar-subnav.index-sub .s-link-sm{font-size:0.95rem!important;padding:0.3rem 0.58rem!important}
  .sidebar-subnav.index-sub .s-link-sm .s-icon{width:15px;height:15px}
}
.sidebar-coming{opacity:0.4;font-size:1.14rem}
.sidebar-coming:hover{opacity:0.7}
.s-badge{font-size:1rem;color:var(--text-faint);margin-left:auto;font-weight:600}
footer{margin-top:1.5rem;padding-top:0.6rem;border-top:1px solid var(--border);font-size:0.87rem;color:var(--text-faint);display:flex;justify-content:space-between;font-weight:500}
footer a{color:var(--text-faint)}footer a:hover{color:var(--text-muted)}
.search-hide{display:none!important}
.disclaimer{background:var(--r-tint-4);border:1px solid var(--r-tint-8);border-radius:var(--radius-sm);padding:0.5rem 0.7rem;margin:0.6rem 0;font-size:0.98rem;color:var(--text-muted)}
.research-table tbody tr{animation:fadeIn 0.3s ease both}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.site-title{font-size:0.98rem;font-weight:600;color:var(--text-faint);text-transform:uppercase;letter-spacing:0.05em;opacity:0.55}
.pw-diagram{margin:0.4rem 0}
.pw-svg{width:100%;max-width:340px;height:auto;display:block}
.pw-viz-link{display:inline-block;margin-top:0.4rem;font-size:0.7rem;color:var(--gold-pale);text-decoration:none;font-weight:600;transition:color var(--transition)}
.pw-viz-link:hover{color:var(--gold)}
.pubmed-research{margin-top:0.8rem;padding-top:0.5rem;border-top:1px solid var(--border)}
.pm-live-search{display:flex;gap:0.4rem;margin-bottom:0.5rem}
.pm-live-input{flex:1;padding:0.35rem 0.5rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:0.7rem;font-family:inherit}
.pm-live-input:focus{outline:none;border-color:var(--gold)}
.pm-live-btn{padding:0.35rem 0.7rem;background:var(--gold);border:none;border-radius:var(--radius-sm);color:var(--bg);font-weight:700;cursor:pointer;font-family:inherit;font-size:0.65rem;text-transform:uppercase;letter-spacing:0.03em}
.pm-live-btn:hover{background:var(--gold-btn-hover)}
.pm-results{display:flex;flex-direction:column;gap:0.35rem;max-height:580px;overflow-y:auto;padding-right:0.3rem;scrollbar-width:thin;scrollbar-color:var(--border) transparent}
.pm-results::-webkit-scrollbar{width:5px}
.pm-results::-webkit-scrollbar-track{background:transparent}
.pm-results::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}
.pm-results::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}
.pm-finding{padding:0.5rem 0.6rem;background:var(--bg);border-radius:var(--radius-sm);border-left:2px solid var(--gold);font-size:0.7rem}
.pm-finding-title{color:var(--heading);text-decoration:none;font-weight:600;display:block;margin-bottom:0.2rem;font-size:0.75rem}
.pm-finding-title a{color:var(--heading);text-decoration:none}
.pm-finding-title a:hover{color:var(--gold)}
.pm-finding-meta{color:var(--text-faint);font-size:0.6rem;line-height:1.4}
.pm-abstract{color:var(--text-muted);font-size:0.65rem;line-height:1.45;margin-top:0.25rem;padding-top:0.25rem;border-top:1px solid var(--border)}
.pm-label{font-weight:700;color:var(--gold-pale);text-transform:uppercase;font-size:0.55rem;letter-spacing:0.04em}
.pm-finding-actions{display:flex;gap:0.4rem;margin-top:0.35rem;align-items:center}
.pm-save-btn{font-size:0.58rem;padding:0.15em 0.4em;background:var(--patina-12);color:var(--patina);border:1px solid var(--patina-12);border-radius:6px;cursor:pointer;font-family:inherit}
.pm-save-btn:hover{background:var(--patina);color:var(--bg)}
.pm-loading-text{text-align:center;padding:0.5rem;color:var(--text-faint);font-size:0.65rem}
.pm-none{text-align:center;padding:0.5rem;color:var(--text-faint);font-size:0.65rem}
.pw-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:0.4rem;overflow:hidden}
.pw-header{display:flex;align-items:center;gap:0.7rem;padding:0.55rem 0.8rem;cursor:pointer;transition:background var(--transition)}
.pw-header:hover{background:var(--gold-3)}
.pw-header .pw-title{flex:1;font-size:0.88rem;font-weight:600;color:var(--heading)}
.pw-header .pw-arrow{font-size:0.6rem;color:var(--text-faint);transition:transform 0.2s}
.pw-card.pw-open .pw-arrow{transform:rotate(180deg)}
.pw-body{display:none;padding:0 0.8rem 0.7rem}
.pw-card.pw-open .pw-body{display:block}
.pw-finding{font-size:0.8rem;color:var(--text);line-height:1.5;margin-bottom:0.5rem;padding:0.5rem 0.6rem;background:var(--bg);border-radius:var(--radius-sm);border-left:3px solid var(--gold)}
.pw-studies{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap;font-size:0.72rem}
.pw-studies-label{color:var(--text-faint);font-weight:600;text-transform:uppercase;letter-spacing:0.03em}
.pw-pmid{font-size:0.68rem;padding:0.2em 0.45em;background:var(--surface-raised);color:var(--gold-pale);border:1px solid var(--border);border-radius:10px;text-decoration:none;font-weight:600;transition:all var(--transition)}
.pw-pmid:hover{background:var(--gold-deep);color:var(--bg)}
@media(max-width:800px){
  .research-table{font-size:0.9rem}.research-table td,.research-table th{padding:0.15rem 0.25rem}
  .cat-grid{grid-template-columns:1fr}.page-header h1{font-size:1.4rem}
  .sidebar{display:flex;position:fixed;top:0;left:0;width:min(17rem,85vw);height:100vh;height:100dvh;transform:translateX(-100%);transition:transform 0.25s cubic-bezier(0.4,0,0.2,1);z-index:40;pointer-events:none}
  .sidebar.closed{transform:translateX(-100%);pointer-events:none}
  .sidebar.open{transform:translateX(0);pointer-events:auto;box-shadow:0 0 24px rgba(0,0,0,0.45)}
  .sidebar-toggle-btn{display:none}body.has-sidebar{padding-left:1.5rem!important}
  .site-title{display:none}
  .mobile-topbar{display:flex;position:sticky;top:0;z-index:30;align-items:center;gap:0.6rem;padding:0.55rem 0.75rem;margin:calc(-1.2rem - 1.5rem) -1.5rem 1rem;background:var(--surface);border-bottom:1px solid var(--border-strong)}
  .mobile-menu-btn{display:flex;align-items:center;justify-content:center;width:2.3rem;height:2.3rem;flex-shrink:0;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--gold);cursor:pointer;font-size:1.15rem;line-height:1;transition:all var(--transition)}
  .mobile-menu-btn:hover{border-color:var(--gold)}
  .mobile-wordmark{font-family:var(--font-display);font-size:1.05rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold);text-decoration:none;white-space:nowrap}
  .mobile-wordmark:hover{color:var(--gold-pale)}
  .mobile-scrim{display:block;position:fixed;inset:0;background:rgba(0,0,0,0.6);opacity:0;pointer-events:none;transition:opacity 0.25s ease;z-index:35}
  .mobile-scrim.open{opacity:1;pointer-events:auto}
  html.mobile-nav-open,body.mobile-nav-open{overflow:hidden}
}
@media(max-width:640px){
  .sidebar{width:56px;min-width:56px;transform:none;pointer-events:auto}
  .sidebar.closed{transform:none;pointer-events:auto}
  .sidebar.open{transform:none;box-shadow:none}
  body.has-sidebar{padding-left:4.5rem!important}
  .sidebar-link{font-size:0;justify-content:center!important;gap:0;padding:0.45rem 0.2rem}
  .s-link-sm{font-size:0!important;padding:0.3rem 0.2rem!important}
  .sidebar-link .s-chevron{display:none}
  .sidebar-logo{padding:0.4rem 0 0.6rem}
  .sidebar-logo-img{width:84px;height:84px}
  .sidebar-subnav{margin-left:0;border-left:none}
  .mobile-menu-btn{display:none}
  .mobile-scrim{opacity:0;pointer-events:none}
  .mobile-scrim.open{opacity:0;pointer-events:none}
  html.mobile-nav-open,body.mobile-nav-open{overflow:auto}
}

/* ============ Compound page redesign ============ */
.cp-hero{position:relative;border:1px solid var(--border);border-left:3px solid var(--acc,var(--gold));border-radius:var(--radius);padding:1.1rem 1.2rem;margin:0.6rem 0 1rem;background:linear-gradient(135deg,color-mix(in oklch,var(--acc,var(--gold)) 10%,var(--surface)),var(--surface) 55%);overflow:hidden;--acc:oklch(70% 0.16 80.46)}
.cp-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(560px 150px at 12% 0%,color-mix(in oklch,var(--acc,var(--gold)) 22%,transparent),transparent 62%);pointer-events:none}
.cp-chips{display:flex;flex-wrap:wrap;gap:0.4rem;margin-bottom:0.55rem;position:relative;z-index:1}
.cp-chip{font-size:0.58rem;text-transform:uppercase;letter-spacing:0.1em;padding:0.2em 0.7em;border-radius:999px;border:1px solid color-mix(in oklch,var(--acc,var(--gold)) 55%,transparent);color:var(--acc,var(--gold-pale));background:color-mix(in oklch,var(--acc,var(--gold)) 8%,transparent);font-weight:700;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.cp-chip-cat{--acc:var(--gold)}
.cp-hero h1{font-size:1.35rem;color:var(--heading);margin:0 0 0.35rem;font-family:var(--font-display);position:relative;z-index:1}
.cp-meta{font-size:0.72rem;color:var(--text-muted);line-height:1.55;max-width:74ch;position:relative;z-index:1}
.cp-verdict{border-left:3px solid var(--gold);background:color-mix(in oklch,var(--gold) 8%,transparent);border-radius:var(--radius-sm);padding:0.8rem 1rem;font-size:0.75rem;line-height:1.6;color:var(--text-muted);margin:0 0 0.9rem}
.cp-verdict strong{color:var(--gold-pale)}
.cp-quickfacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0.5rem;margin:0 0 0.9rem}
.cp-qf{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--acc,var(--gold));border-radius:var(--radius-sm);padding:0.55rem 0.7rem}
.cp-qf span{display:block;font-size:0.55rem;text-transform:uppercase;letter-spacing:0.1em;color:var(--text-faint);margin-bottom:0.2rem}
.cp-qf b{font-size:0.78rem;color:var(--heading);font-weight:700}
.cp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:0.8rem;margin:0.9rem 0 1.2rem;align-items:stretch}
.cp-card{border:1px solid var(--border);border-radius:var(--radius);padding:0.9rem 1rem;background:var(--surface);position:relative;overflow:hidden;display:flex;flex-direction:column;gap:0.4rem}
.cp-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.cp-card h3{font-size:0.66rem;text-transform:uppercase;letter-spacing:0.1em;font-weight:800;margin:0 0 0.25rem}
.cp-card p{font-size:0.72rem;color:var(--text-muted);line-height:1.65;margin:0}
.cp-card ul{list-style:none;margin:0;padding:0;font-size:0.72rem;color:var(--text-muted);line-height:1.6;display:flex;flex-direction:column;gap:0.4rem}
.cp-card li{display:flex;gap:0.45rem;align-items:flex-start}
.cp-card li::before{content:'\25B8';font-size:0.62rem;margin-top:0.12rem;flex-shrink:0}
.cp-card strong{color:var(--heading)}
.cp-mech{border-color:color-mix(in oklch,oklch(55% 0.16 255) 40%,var(--border))}.cp-mech::before{background:oklch(62% 0.17 255)}.cp-mech h3{color:oklch(76% 0.15 255)}.cp-mech li::before{color:oklch(70% 0.16 255)}
.cp-dose{border-color:color-mix(in oklch,oklch(54% 0.15 310) 40%,var(--border))}.cp-dose::before{background:oklch(60% 0.16 310)}.cp-dose h3{color:oklch(73% 0.15 310)}.cp-dose li::before{color:oklch(68% 0.16 310)}
.cp-risk{border-color:color-mix(in oklch,oklch(52% 0.17 22) 45%,var(--border))}.cp-risk::before{background:oklch(58% 0.19 22)}.cp-risk h3{color:oklch(73% 0.16 22)}.cp-risk li::before{color:oklch(68% 0.17 22)}
.cp-benefit{border-color:color-mix(in oklch,oklch(52% 0.15 150) 40%,var(--border))}.cp-benefit::before{background:oklch(58% 0.16 150)}.cp-benefit h3{color:oklch(73% 0.15 150)}.cp-benefit li::before{color:oklch(67% 0.16 150)}
.cp-pept{border-color:color-mix(in oklch,oklch(54% 0.15 330) 40%,var(--border))}.cp-pept::before{background:oklch(60% 0.16 330)}.cp-pept h3{color:oklch(73% 0.15 330)}.cp-pept li::before{color:oklch(68% 0.16 330)}
.cp-other{border-color:var(--border)}.cp-other::before{background:var(--text-faint)}.cp-other h3{color:var(--text)}
.cp-similar{border-color:color-mix(in oklch,oklch(52% 0.13 190) 40%,var(--border))}.cp-similar::before{background:oklch(58% 0.14 190)}.cp-similar h3{color:oklch(73% 0.14 190)}
.cp-stack{border-color:color-mix(in oklch,oklch(52% 0.15 55) 40%,var(--border))}.cp-stack::before{background:oklch(58% 0.16 55)}.cp-stack h3{color:oklch(73% 0.15 55)}
.cp-row{display:flex;flex-wrap:wrap;gap:0.4rem}
.cp-comp-link{color:var(--gold);text-decoration:none;font-weight:600;font-size:0.7rem;border:1px solid color-mix(in oklch,var(--gold) 35%,transparent);padding:0.25em 0.6em;border-radius:999px;background:color-mix(in oklch,var(--gold) 6%,transparent);transition:all var(--transition)}
.cp-comp-link:hover{border-color:var(--gold);background:color-mix(in oklch,var(--gold) 14%,transparent)}

/* ================= THEMES ================= */
html[data-theme="blood"]{
  --bg:oklch(8% 0.012 20);--surface:oklch(12% 0.014 20);--surface-raised:oklch(16% 0.016 20);
  --border:oklch(75% 0.06 20 / 0.12);--border-strong:oklch(75% 0.06 20 / 0.18);
  --gold:oklch(72% 0.19 25);--gold-deep:oklch(55% 0.14 25);--gold-pale:oklch(80% 0.08 25);
  --patina:oklch(70% 0.08 210);--text:oklch(90% 0.01 20);--text-muted:oklch(75% 0.01 20);--text-faint:oklch(64% 0.01 20);
  --heading:oklch(93% 0.01 20);--g:#3fb950;--r:#ff5a5a;--a:oklch(72% 0.19 25);--b:oklch(70% 0.08 210);
  --gold-3:oklch(72% 0.19 25 / 0.05);--g-bg:oklch(45% 0.18 145 / 0.15);--r-bg:oklch(55% 0.16 25 / 0.16);
  --gold-12:oklch(72% 0.19 25 / 0.14);--patina-12:oklch(70% 0.08 210 / 0.12);
  --sidebar-bg:oklch(10% 0.014 20);--r-tint-4:oklch(55% 0.16 25 / 0.06);--r-tint-8:oklch(55% 0.16 25 / 0.1);
  --gold-btn-hover:oklch(76% 0.19 25);
}
html[data-theme="emerald"]{
  --bg:oklch(7% 0.014 160);--surface:oklch(11% 0.016 160);--surface-raised:oklch(15% 0.018 160);
  --border:oklch(80% 0.05 160 / 0.12);--border-strong:oklch(80% 0.05 160 / 0.18);
  --gold:oklch(76% 0.17 155);--gold-deep:oklch(58% 0.11 155);--gold-pale:oklch(84% 0.08 155);
  --patina:oklch(72% 0.11 195);--text:oklch(90% 0.012 160);--text-muted:oklch(75% 0.01 160);--text-faint:oklch(64% 0.01 160);
  --heading:oklch(93% 0.012 160);--g:#3fb950;--r:#f85149;--a:oklch(76% 0.17 155);--b:oklch(72% 0.11 195);
  --gold-3:oklch(76% 0.17 155 / 0.05);--g-bg:oklch(45% 0.18 145 / 0.15);--r-bg:oklch(58% 0.15 35 / 0.12);
  --gold-12:oklch(76% 0.17 155 / 0.14);--patina-12:oklch(72% 0.11 195 / 0.12);
  --sidebar-bg:oklch(9% 0.014 160);--r-tint-4:oklch(58% 0.15 35 / 0.04);--r-tint-8:oklch(58% 0.15 35 / 0.08);
  --gold-btn-hover:oklch(80% 0.17 155);
}
html[data-theme="arctic"]{
  --bg:oklch(9% 0.02 250);--surface:oklch(13% 0.02 250);--surface-raised:oklch(17% 0.02 250);
  --border:oklch(82% 0.04 240 / 0.12);--border-strong:oklch(82% 0.04 240 / 0.18);
  --gold:oklch(82% 0.1 235);--gold-deep:oklch(64% 0.08 235);--gold-pale:oklch(88% 0.05 235);
  --patina:oklch(78% 0.09 210);--text:oklch(92% 0.008 250);--text-muted:oklch(77% 0.008 250);--text-faint:oklch(66% 0.008 250);
  --heading:oklch(95% 0.008 250);--g:#3fb950;--r:#f85149;--a:oklch(82% 0.1 235);--b:oklch(78% 0.09 210);
  --gold-3:oklch(82% 0.1 235 / 0.05);--g-bg:oklch(45% 0.18 145 / 0.15);--r-bg:oklch(58% 0.15 35 / 0.12);
  --gold-12:oklch(82% 0.1 235 / 0.14);--patina-12:oklch(78% 0.09 210 / 0.12);
  --sidebar-bg:oklch(11% 0.02 250);--r-tint-4:oklch(58% 0.15 35 / 0.04);--r-tint-8:oklch(58% 0.15 35 / 0.08);
  --gold-btn-hover:oklch(86% 0.1 235);
}
html[data-theme="violet"]{
  --bg:oklch(8% 0.02 300);--surface:oklch(12% 0.022 300);--surface-raised:oklch(16% 0.024 300);
  --border:oklch(80% 0.06 300 / 0.12);--border-strong:oklch(80% 0.06 300 / 0.18);
  --gold:oklch(80% 0.15 305);--gold-deep:oklch(62% 0.1 305);--gold-pale:oklch(86% 0.08 305);
  --patina:oklch(72% 0.1 260);--text:oklch(90% 0.012 300);--text-muted:oklch(75% 0.012 300);--text-faint:oklch(64% 0.012 300);
  --heading:oklch(93% 0.012 300);--g:#3fb950;--r:#f85149;--a:oklch(80% 0.15 305);--b:oklch(72% 0.1 260);
  --gold-3:oklch(80% 0.15 305 / 0.05);--g-bg:oklch(45% 0.18 145 / 0.15);--r-bg:oklch(58% 0.15 35 / 0.12);
  --gold-12:oklch(80% 0.15 305 / 0.14);--patina-12:oklch(72% 0.1 260 / 0.12);
  --sidebar-bg:oklch(10% 0.02 300);--r-tint-4:oklch(58% 0.15 35 / 0.04);--r-tint-8:oklch(58% 0.15 35 / 0.08);
  --gold-btn-hover:oklch(84% 0.15 305);
}
html[data-theme="ember"]{
  --bg:oklch(8% 0.016 50);--surface:oklch(12% 0.018 50);--surface-raised:oklch(16% 0.02 50);
  --border:oklch(78% 0.05 55 / 0.12);--border-strong:oklch(78% 0.05 55 / 0.18);
  --gold:oklch(80% 0.17 60);--gold-deep:oklch(60% 0.11 60);--gold-pale:oklch(86% 0.08 60);
  --patina:oklch(72% 0.1 170);--text:oklch(90% 0.012 50);--text-muted:oklch(75% 0.012 50);--text-faint:oklch(64% 0.012 50);
  --heading:oklch(93% 0.012 50);--g:#3fb950;--r:#f85149;--a:oklch(80% 0.17 60);--b:oklch(72% 0.1 170);
  --gold-3:oklch(80% 0.17 60 / 0.05);--g-bg:oklch(45% 0.18 145 / 0.15);--r-bg:oklch(58% 0.15 35 / 0.12);
  --gold-12:oklch(80% 0.17 60 / 0.14);--patina-12:oklch(72% 0.1 170 / 0.12);
  --sidebar-bg:oklch(10% 0.016 50);--r-tint-4:oklch(58% 0.15 35 / 0.04);--r-tint-8:oklch(58% 0.15 35 / 0.08);
  --gold-btn-hover:oklch(84% 0.17 60);
}
html[data-theme="nightfall"]{
  --bg:oklch(7% 0.02 265);--surface:oklch(10% 0.022 265);--surface-raised:oklch(14% 0.024 265);
  --border:oklch(80% 0.05 230 / 0.12);--border-strong:oklch(80% 0.05 230 / 0.18);
  --gold:oklch(85% 0.11 215);--gold-deep:oklch(65% 0.09 215);--gold-pale:oklch(90% 0.06 215);
  --patina:oklch(75% 0.1 180);--text:oklch(90% 0.012 265);--text-muted:oklch(75% 0.012 265);--text-faint:oklch(64% 0.012 265);
  --heading:oklch(93% 0.012 265);--g:#3fb950;--r:#f85149;--a:oklch(85% 0.11 215);--b:oklch(75% 0.1 180);
  --gold-3:oklch(85% 0.11 215 / 0.05);--g-bg:oklch(45% 0.18 145 / 0.15);--r-bg:oklch(58% 0.15 35 / 0.12);
  --gold-12:oklch(85% 0.11 215 / 0.14);--patina-12:oklch(75% 0.1 180 / 0.12);
  --sidebar-bg:oklch(9% 0.02 265);--r-tint-4:oklch(58% 0.15 35 / 0.04);--r-tint-8:oklch(58% 0.15 35 / 0.08);
  --gold-btn-hover:oklch(89% 0.11 215);
}
html[data-theme="ivory"]{
  --bg:oklch(95% 0.012 85);--surface:oklch(98% 0.008 85);--surface-raised:oklch(92% 0.012 85);
  --border:oklch(40% 0.02 85 / 0.18);--border-strong:oklch(40% 0.02 85 / 0.28);
  --gold:oklch(55% 0.14 75);--gold-deep:oklch(48% 0.11 75);--gold-pale:oklch(40% 0.09 75);
  --patina:oklch(50% 0.11 190);--text:oklch(30% 0.01 85);--text-muted:oklch(45% 0.01 85);--text-faint:oklch(55% 0.01 85);
  --heading:oklch(25% 0.01 85);--g:#2ea043;--r:#d1242f;--a:oklch(55% 0.14 75);--b:oklch(50% 0.11 190);
  --gold-3:oklch(55% 0.14 75 / 0.05);--g-bg:oklch(45% 0.14 150 / 0.18);--r-bg:oklch(55% 0.16 30 / 0.15);
  --gold-12:oklch(55% 0.14 75 / 0.14);--patina-12:oklch(50% 0.11 190 / 0.14);
  --sidebar-bg:oklch(93% 0.01 85);--r-tint-4:oklch(55% 0.16 30 / 0.06);--r-tint-8:oklch(55% 0.16 30 / 0.12);
  --gold-btn-hover:oklch(58% 0.14 75);
}

/* Research tables: findings sit beside compound names (native table layout) */
.research-table .col-find{max-width:46em}
.research-table .col-title{max-width:16em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.research-table td.col-find a{display:inline}

/* Themed thin scrollbars for scrollable panels and research tables */
.panel-body::-webkit-scrollbar,.research-table::-webkit-scrollbar{width:7px;height:7px}
.panel-body::-webkit-scrollbar-track,.research-table::-webkit-scrollbar-track{background:transparent}
.panel-body::-webkit-scrollbar-thumb,.research-table::-webkit-scrollbar-thumb{background:color-mix(in oklch,var(--gold-deep) 55%,transparent);border-radius:99px}
.panel-body::-webkit-scrollbar-thumb:hover,.research-table::-webkit-scrollbar-thumb:hover{background:var(--gold-deep)}
.panel-body,.research-table{scrollbar-width:thin;scrollbar-color:var(--gold-deep) transparent}

body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cat-grid{gap:0.9rem;margin:1.1rem 0}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cat-card{padding:1.7rem;border-radius:12px;min-height:15rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cat-card:hover{transform:translateY(-5px);box-shadow:0 8px 28px oklch(84% 0.19 80.46 / 0.08)}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cat-card h2{font-size:1.4rem;margin-bottom:0.5rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cat-card h2 .arrow{font-size:1.2rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cat-card p{font-size:1.05rem;margin-bottom:1rem;line-height:1.5}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cat-card .sub-links{gap:0.45rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cat-card .sub-link{padding:0.7rem 1.1rem;border-radius:8px;font-size:1.2rem;gap:0.6rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cat-card .sub-link .icon{width:1.55rem;height:1.55rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cat-card .sub-link .count{font-size:1rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cp-grid{gap:1.2rem;margin:1.3rem 0 1.7rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cp-card{padding:1.5rem 1.7rem;border-radius:12px;gap:0.6rem;min-height:15rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cp-card h3{font-size:0.92rem;margin-bottom:0.4rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cp-card p{font-size:1rem;line-height:1.75}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cp-card ul{font-size:1rem;line-height:1.7;gap:0.6rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cp-card li{gap:0.6rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .cp-card li::before{font-size:0.85rem;margin-top:0.18rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .ire-grid{gap:1.05rem;margin:1.1rem 0}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .ire-card{padding:2rem;border-radius:12px;min-height:17rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .ire-card:hover{transform:translateY(-6px);box-shadow:0 8px 28px oklch(84% 0.19 80.46 / 0.1)}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .preset-grid{gap:1.35rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .saved-grid{gap:1.05rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .saved-card{padding:1.3rem 1.5rem;border-radius:12px;gap:0.5rem;min-height:13rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .saved-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px oklch(84% 0.19 80.46 / 0.07)}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .sc-grid{gap:1.05rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .sc-card{padding:1.7rem;border-radius:12px;gap:0.6rem;min-height:13rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .sc-card:hover{transform:translateY(-5px)}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .folder-grid{gap:1.35rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .folder-box{padding:1.35rem 0.7rem 0.6rem;min-height:115px;gap:0.4rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .folder-box:hover{transform:translateY(-5px)}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .settings-grid{gap:1.5rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .set-card{padding:2rem;border-radius:12px}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .set-card h3{font-size:1.19rem;margin-bottom:1rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .preset{padding:1.45rem 1.6rem;border-radius:12px;min-height:13rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .preset:hover{transform:translateY(-5px);box-shadow:0 8px 28px oklch(84% 0.19 80.46 / 0.08)}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .preset h3{font-size:1.2rem;margin-bottom:0.3rem}
body:not(:has(#loginForm)):not(:has(#hubStudyCount)) .preset .ptag{font-size:0.9rem;line-height:1.5;margin-bottom:0.6rem;min-height:3.6rem}

/* ============ Global text overflow guards ============
   Every text container breaks long words; flex/grid text
   children may shrink; single-line labels ellipsize. */
.card,.panel,.panel-body,.sidebar,.side-link,.stat,.chip,.tile,
.post-card,.row,.cp-card,.cp-qf,.cat-card,.dash-stat,.dash-link,
.verdict,.summary-box,.pm-finding,.pm-finding-title,.pm-abstract,
.pw-finding,.pw-body,.research-table td,.research-table th{
  overflow-wrap:break-word;
  word-break:break-word;
}
.cat-card,.cp-card,.cp-qf,.dash-stat,.dash-link,.stat,.stat .n,
.stat .l,.breadcrumb a,.breadcrumb span,.sidebar-link,.s-link-sm,
.s-badge,.sub-link,.pw-header .pw-title,.pm-live-input,.cp-card li{min-width:0}
.sidebar-link,.s-link-sm,.s-badge,.sub-link,.pw-header .pw-title,
.ellipsis{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:100%;
  min-width:0;
}
.insights-block{margin:0.6rem 0}
.insights-chips{display:flex;flex-wrap:wrap;gap:0.5rem;margin:0.5rem 0 1rem}
.insights-compounds{display:flex;flex-direction:column;gap:0.5rem;margin:0.5rem 0 0.25rem}
