:root {
  color-scheme: dark;
  --bg: #070b10;
  --surface: #0e151d;
  --surface-2: #151e28;
  --line: #304455;
  --text: #f3f7fb;
  --muted: #a9b9c7;
  --cyan: #26d8ff;
  --blue: #5d7cff;
  --mint: #2ee6a6;
  --amber: #ffbd45;
  --red: #ff667a;
  --radius: 24px;
  --shadow: 0 24px 80px rgba(0,0,0,.35);
}
* { box-sizing: border-box; }
html { background: var(--bg); scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 0;
  min-height: 100vh;
  background:
    radial-gradient(circle at 85% -10%, rgba(93,124,255,.18), transparent 32rem),
    radial-gradient(circle at -10% 28%, rgba(38,216,255,.10), transparent 24rem),
    var(--bg);
  color: var(--text);
  font-family: Inter, system-ui, -apple-system, sans-serif;
}
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
a { color: var(--cyan); }
.shell { width: min(100%, 1120px); margin: 0 auto; padding: 0 18px 112px; }
.topbar {
  position: sticky; top: 0; z-index: 20;
  display: flex; align-items: center; justify-content: space-between;
  min-height: 78px; padding: 10px 0;
  background: linear-gradient(180deg, rgba(7,11,16,.98) 62%, rgba(7,11,16,0));
  backdrop-filter: blur(16px);
}
.brand { display: flex; align-items: center; gap: 11px; min-width: 0; }
.brand-mark {
  position: relative; width: 42px; height: 42px; flex: 0 0 42px;
  border: 2px solid var(--cyan); border-radius: 50%;
  box-shadow: 0 0 24px rgba(38,216,255,.22), inset 0 0 18px rgba(38,216,255,.08);
}
.brand-mark::before, .brand-mark::after { content: ""; position: absolute; border-radius: 50%; }
.brand-mark::before { inset: 7px; border: 2px solid var(--blue); border-left-color: transparent; transform: rotate(-30deg); }
.brand-mark::after { width: 7px; height: 7px; background: var(--mint); top: 5px; right: 2px; box-shadow: 0 0 10px var(--mint); }
.brand-title-row { display: flex; align-items: center; gap: 8px; }
.brand-name { font: 700 16px/1 Space Grotesk, sans-serif; letter-spacing: .08em; white-space: nowrap; }
.beta-badge { padding: 4px 7px 3px; border: 1px solid rgba(46,230,166,.58); border-radius: 999px; color: var(--mint); background: rgba(46,230,166,.08); box-shadow: 0 0 16px rgba(46,230,166,.12); font-size: 9px; font-weight: 900; line-height: 1; letter-spacing: .1em; }
.brand-sub { margin-top: 5px; color: var(--muted); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.lang-toggle { display: flex; padding: 4px; background: var(--surface); border: 1px solid var(--line); border-radius: 999px; }
.lang-toggle button { min-width: 45px; min-height: 38px; border: 0; border-radius: 999px; background: transparent; color: var(--muted); font-weight: 800; cursor: pointer; }
.lang-toggle button.active { background: var(--text); color: #071018; }
.hero { padding: 28px 0 14px; }
.eyebrow { color: var(--mint); font-weight: 800; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; text-shadow:0 0 14px rgba(46,230,166,.5); }
h1 { margin: 10px 0 12px; max-width: 780px; font: 700 clamp(42px, 8vw, 82px)/.96 Space Grotesk, sans-serif; letter-spacing: -.055em; }
.gradient-text { background: linear-gradient(90deg, var(--cyan), #7d8cff 62%, #82d3ff); background-clip: text; color: transparent; }
.hero-copy { max-width: 670px; margin: 0; color: #b2bfcb; font-size: clamp(16px, 2vw, 19px); line-height: 1.6; }
.dashboard { display: grid; grid-template-columns: 1.2fr .8fr; gap: 16px; margin: 25px 0 28px; }
.panel { background: linear-gradient(145deg, rgba(21,30,40,.92), rgba(12,19,27,.92)); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }
.pulse-panel { display: flex; align-items: center; gap: 20px; padding: 22px; }
.ring {
  display: grid; place-items: center; width: 112px; height: 112px; flex: 0 0 112px;
  border-radius: 50%; background: conic-gradient(var(--mint) 0 78%, #183129 78% 100%); position: relative;
  box-shadow: 0 0 35px rgba(46,230,166,.12);
}
.ring::after { content: ""; position: absolute; inset: 11px; border-radius: 50%; background: #0d141b; }
.ring-value { position: relative; z-index: 1; text-align: center; font: 700 30px/1 Space Grotesk; }
.ring-value small { display: block; margin-top: 5px; color: var(--muted); font: 600 9px/1 Inter; letter-spacing: .08em; text-transform: uppercase; }
.pulse-copy h2 { margin: 0 0 7px; font: 700 21px/1.2 Space Grotesk; }
.pulse-copy p { margin: 0; color: var(--muted); line-height: 1.5; font-size: 13px; }
.mini-stats { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; overflow: hidden; }
.mini-stat { padding: 24px 18px; background: rgba(10,16,23,.7); }
.mini-stat strong { display: block; font: 700 30px/1 Space Grotesk; }
.mini-stat span { display: block; margin-top: 7px; color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .09em; }
.toolbar { display: grid; grid-template-columns: minmax(220px,280px) minmax(0,1fr); gap: 12px; margin: 18px 0 20px; }
.search { position: relative; }
.search::before { content: "⌕"; position: absolute; left: 18px; top: 12px; color: var(--cyan); font-size: 25px; }
.search input { width: 100%; height: 54px; padding: 0 18px 0 52px; color: var(--text); background: var(--surface); border: 1px solid var(--line); border-radius: 18px; outline: none; }
.search input:focus { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(38,216,255,.10); }
.filter-row { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px; }
.filter-row::-webkit-scrollbar { display: none; }
.category-scroll{display:flex;align-items:center;gap:8px;min-width:0}
.category-scroll .filter-row{flex:1;min-width:0;overscroll-behavior-x:contain}
.category-scroll .chip{flex:0 0 auto}
.category-scroll-arrow{display:none;flex:0 0 44px;width:44px;height:48px;padding:0;border:1px solid #40616e;border-radius:14px;background:#10212b;color:#83e6f5;font:400 30px/1 Inter,system-ui;cursor:pointer;touch-action:manipulation}
.category-scroll-arrow:disabled{opacity:.3;cursor:default}
.category-scroll-arrow:hover:not(:disabled){background:#1a3a47;border-color:#79deee}
.category-scroll-arrow:focus-visible{outline:2px solid #79deee;outline-offset:2px}
@media(min-width:701px){.category-scroll[data-overflow="true"] .category-scroll-arrow{display:block}}
.chip { min-height: 48px; padding: 0 17px; border: 1px solid color-mix(in srgb,var(--chip-accent) 20%,var(--line)); border-radius: 16px; background: var(--surface); color: color-mix(in srgb,var(--chip-accent) 46%,var(--muted)); font-weight: 700; white-space: nowrap; cursor: pointer; }
.chip.active { background: color-mix(in srgb,var(--chip-accent) 14%,var(--surface)); color: var(--chip-accent); border-color: color-mix(in srgb,var(--chip-accent) 52%,var(--line)); box-shadow: 0 0 18px color-mix(in srgb,var(--chip-accent) 10%,transparent); }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 12px; margin: 30px 0 15px; }
.section-heading h2 { margin: 0; font: 700 26px/1.1 Space Grotesk; }
.section-heading span { color: var(--muted); font-size: 12px; }
.cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.product-card { position: relative; min-height: 285px; padding: 20px; overflow: hidden; display: flex; flex-direction: column; }
.product-card::after { content: ""; position: absolute; width: 180px; height: 180px; right: -95px; top: -95px; border: 28px solid var(--accent, var(--cyan)); border-radius: 50%; opacity: .1; pointer-events: none; }
.card-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.status { display: inline-flex; align-items: center; gap: 7px; color: var(--mint); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; text-shadow:0 0 12px color-mix(in srgb,currentColor 55%,transparent); }
.status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 10px currentColor; }
.status.sold-out { color:#ff5c68; }
.status.in-stock { color:var(--mint); }
.status.limited { color:var(--amber); }
.status.almost-gone { color:#ff657d; }
.save { position: relative; z-index: 2; width: 44px; height: 44px; flex: 0 0 44px; padding: 0; display: inline-grid; place-items: center; border: 1px solid rgba(38,216,255,.28); border-radius: 14px; background: rgba(7,11,16,.72); color:#9bafbf; box-shadow:0 0 14px rgba(38,216,255,.08); cursor: pointer; font-size: 21px; line-height: 1; }
.save.saved { color: var(--amber); border-color: rgba(255,189,69,.48); box-shadow:0 0 18px rgba(255,189,69,.16); }
.product-card h3 { margin: 23px 0 9px; font: 700 30px/1 Space Grotesk; letter-spacing: -.03em; }
.category-tag { width:fit-content; margin-bottom:8px; padding:5px 8px; border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line)); border-radius:999px; background:color-mix(in srgb,var(--accent) 9%,transparent); color:var(--accent); font-size:11px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; text-shadow:0 0 11px color-mix(in srgb,var(--accent) 45%,transparent); }
.card-kicker { min-height: 40px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.5; }
.evidence { display: inline-flex; align-items: center; gap: 7px; margin-top: 16px; color:#dce8f3; font-size: 11px; font-weight: 700; }
.evidence i { width: 30px; height: 5px; border-radius: 99px; background: linear-gradient(90deg, var(--accent), rgba(255,255,255,.16)); }
.card-bottom { display: flex; align-items: end; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 20px; }
.price small { display: block; color: var(--muted); font-size: 10px; margin-bottom: 4px; }
.price strong { font: 700 23px/1 Space Grotesk; }
.explore { min-width: 112px; min-height: 48px; border: 0; border-radius: 15px; background: var(--accent); color: #071018; font-weight: 800; cursor: pointer; }
.empty { grid-column: 1/-1; padding: 40px; text-align: center; color: var(--muted); }
.notice { margin-top: 24px; padding: 18px 20px; color: #a9b7c4; font-size: 12px; line-height: 1.6; }
.notice strong { color: var(--text); }
.detail { padding-top: 12px; }
.back { min-height: 46px; padding: 0 16px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface); color: var(--text); font-weight: 700; cursor: pointer; }
.detail-hero { margin: 18px 0 16px; padding: 26px; position: relative; overflow: hidden; }
.detail-hero::after { content:""; position:absolute; width:260px; height:260px; right:-145px; top:-135px; border:34px solid var(--accent); border-radius:50%; opacity:.12; }
.detail-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 17px; }
.badge { padding: 8px 11px; border: 1px solid var(--line); border-radius: 999px; color: #c2ced9; background: rgba(7,11,16,.5); font-size: 11px; font-weight: 700; }
.badge.accent { color: var(--accent); border-color: color-mix(in srgb, var(--accent) 40%, transparent); }
.detail h1 { margin: 0 0 12px; font-size: clamp(42px, 8vw, 72px); }
.detail-lead { position: relative; z-index: 1; max-width: 760px; margin: 0; color: #b7c3ce; line-height: 1.65; }
.format-list { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 22px; }
.format { padding: 12px 14px; border-radius: 14px; background: rgba(7,11,16,.58); border: 1px solid var(--line); font-size: 12px; }
.format strong { margin-left: 8px; color: var(--amber); }
.format small { display:block; margin-top:7px; color:var(--mint); font-size:9px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.format.limited { border-color:rgba(255,189,69,.42); background:rgba(255,189,69,.06); }
.format.limited small { color:var(--amber); }
.format.almost-gone { border-color:rgba(255,101,125,.42); background:rgba(255,101,125,.07); }
.format.almost-gone small,.format.sold-out small { color:#ff657d; }
.format.format-sold { border-color:rgba(255,101,125,.3); background:rgba(255,101,125,.06); }
.detail-save { position: relative; z-index: 2; min-height: 52px; margin-top: 16px; padding: 0 18px; border: 1px solid rgba(38,216,255,.45); border-radius: 16px; background: rgba(38,216,255,.12); color: var(--cyan); font-weight: 800; cursor: pointer; }
.detail-save span { margin-right: 9px; font-size: 19px; }
.detail-save.saved { color: var(--amber); border-color: rgba(255,189,69,.42); background: rgba(255,189,69,.1); }
.detail-grid { display: grid; grid-template-columns: 1fr; gap: 16px; align-items: start; }
.signal-card { padding: 22px; position: static; }
.signal-card h2 { margin: 0; font: 700 20px/1.2 Space Grotesk; }
.signal-meter { display: grid; place-items: center; width: 196px; height: 196px; margin: 22px auto 13px; border-radius: 50%; background: conic-gradient(var(--accent) 0 var(--meter), #1c2833 var(--meter) 100%); position: relative; }
.signal-meter::after { content:""; position:absolute; inset:15px; border-radius:50%; background:var(--surface); }
.signal-core { position:relative; z-index:1; width:70px; height:70px; border:1px solid color-mix(in srgb, var(--accent) 42%, transparent); border-radius:50%; box-shadow:0 0 28px color-mix(in srgb, var(--accent) 18%, transparent); }
.signal-core i { position:absolute; width:10px; height:10px; border-radius:50%; background:var(--accent); box-shadow:0 0 12px var(--accent); }
.signal-core i:nth-child(1) { left:29px; top:8px; }
.signal-core i:nth-child(2) { left:10px; bottom:13px; opacity:.72; }
.signal-core i:nth-child(3) { right:10px; bottom:13px; opacity:.45; }
.signal-stage { width: fit-content; max-width: 100%; margin: 0 auto 17px; padding: 8px 11px; border: 1px solid color-mix(in srgb, var(--accent) 38%, var(--line)); border-radius: 999px; color: var(--accent); text-align: center; font-size: 12px; font-weight: 800; }
.signal-card p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.saved-overview { display: grid; grid-template-columns: auto 1fr; gap: 22px; align-items: center; padding: 20px; margin: 0 0 18px; }
.saved-ring-wrap { width: 118px; text-align: center; }
.saved-ring { width: 118px; height: 118px; display: grid; place-items: center; border-radius: 50%; position: relative; }
.saved-ring::after { content:""; position:absolute; inset:11px; border-radius:50%; background:var(--surface); }
.saved-ring strong { position:relative; z-index:1; display:block; font:700 36px/1 Space Grotesk; }
.saved-ring-label { margin-top:9px; color:var(--muted); font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.saved-copy h3 { margin:0 0 12px; font:700 20px/1.2 Space Grotesk; }
.saved-copy p { margin:0; color:var(--muted); font-size:13px; line-height:1.5; }
.saved-breakdown { display:flex; flex-wrap:wrap; gap:8px; }
.saved-breakdown span { display:inline-flex; align-items:center; gap:7px; padding:9px 10px; border:1px solid var(--line); border-radius:12px; color:var(--muted); font-size:11px; }
.saved-breakdown i { width:7px; height:7px; border-radius:50%; }
.saved-breakdown strong { color:var(--text); }
.accordions { display: grid; gap: 10px; }
details { background: linear-gradient(145deg, rgba(21,30,40,.92), rgba(12,19,27,.92)); border: 1px solid var(--line); border-radius: 19px; overflow: hidden; }
summary { list-style: none; min-height: 66px; padding: 19px 54px 19px 20px; position: relative; cursor: pointer; font-weight: 800; }
summary::-webkit-details-marker { display: none; }
summary::after { content:"+"; position:absolute; right:20px; top:15px; color:var(--cyan); font-size:28px; font-weight:400; }
details[open] summary::after { content:"−"; }
.detail-body { padding: 0 20px 20px; color: #aebac5; font-size: 14px; line-height: 1.68; }
.detail-body p:first-child { margin-top: 0; }
.detail-body ul { padding-left: 19px; }
.detail-body li + li { margin-top: 7px; }
.protocol-block{border-color:color-mix(in srgb,var(--accent) 56%,var(--line));background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--accent) 13%,transparent),transparent 18rem),linear-gradient(145deg,rgba(17,31,42,.98),rgba(10,18,25,.96));box-shadow:0 0 24px color-mix(in srgb,var(--accent) 8%,transparent)}
.protocol-block summary{color:#eafaff}.protocol-block summary::before{content:attr(data-label);display:inline-flex;margin-right:10px;padding:4px 7px;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--line));border-radius:999px;color:var(--accent);font-size:9px;line-height:1;letter-spacing:.09em;vertical-align:2px}.protocol-block .detail-body{color:#c7d7e1;font-size:15px}
.source-list { display: grid; gap: 9px; }
.source-link { display: flex; justify-content: space-between; gap: 12px; padding: 12px; border-radius: 13px; background: rgba(7,11,16,.55); text-decoration: none; font-size: 12px; }
.source-link span { min-width:0; overflow-wrap:anywhere; }
.source-link span:last-child { color: var(--muted); white-space: normal; }
@media(max-width:600px){.source-link{display:grid;grid-template-columns:minmax(0,1fr);gap:5px}}
.bottom-nav { position: fixed; z-index: 30; left: 50%; bottom: 12px; transform: translateX(-50%); width: min(calc(100% - 18px), 720px); display: grid; grid-template-columns: repeat(5, 1fr); padding: 6px; border: 1px solid var(--line); border-radius: 20px; background: rgba(14,21,29,.93); box-shadow: var(--shadow); backdrop-filter: blur(18px); }
.nav-btn { min-width: 0; min-height: 54px; padding: 5px 2px; border: 0; border-radius: 15px; background: transparent; color: var(--muted); font-size: 10px; font-weight: 700; letter-spacing: -.02em; cursor: pointer; }
.nav-btn span { display: block; margin-bottom: 4px; font-size: 20px; }
.nav-btn.active { background: rgba(38,216,255,.11); color: var(--cyan); }
.tool-page { padding-top: 0; }
.tool-heading { padding: 24px 0 22px; }
.tool-heading h1 { margin: 8px 0 10px; font-size: clamp(38px,7vw,66px); }
.tool-heading p { max-width: 700px; margin: 0; color:#c6d3df; font-size: 16px; line-height: 1.6; }
.compare-setup { padding: 18px; margin-bottom: 14px; }
.setup-title { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:13px; color:var(--muted); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.setup-title button { border:0; background:transparent; color:var(--amber); font-size:11px; font-weight:800; cursor:pointer; }
.selected-strip { display:flex; gap:10px; overflow-x:auto; padding-bottom:4px; scrollbar-width:thin; scrollbar-color:var(--cyan) transparent; }
.selected-product, .add-product { min-width:170px; min-height:94px; padding:14px; border:1px solid color-mix(in srgb,var(--accent,var(--cyan)) 45%,var(--line)); border-radius:17px; background:linear-gradient(145deg,color-mix(in srgb,var(--accent,var(--cyan)) 12%,#0a1118),#091018); text-align:left; scroll-snap-align:start; cursor:pointer; }
.selected-product > span { color:var(--accent); font-size:10px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.selected-product strong { display:flex; align-items:center; gap:8px; margin-top:8px; overflow:hidden; color:var(--text); font-size:16px; white-space:nowrap; text-overflow:ellipsis; }
.selected-product strong i { width:8px; height:8px; flex:0 0 8px; border-radius:50%; background:var(--accent); box-shadow:0 0 11px var(--accent); }
.selected-product small { display:block; margin-top:7px; color:#adc1d2; font-size:10px; }
.add-product { display:grid; place-items:center; gap:4px; border-style:dashed; border-color:rgba(38,216,255,.35); color:var(--cyan); text-align:center; font-size:11px; font-weight:800; }
.add-product span { font-size:24px; line-height:1; }
.profile-chooser { margin-top:14px; padding:14px; border:1px solid var(--line); border-radius:17px; background:#080f16; }
.chooser-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:11px; }
.chooser-heading strong { font-size:14px; }
.chooser-heading button { width:36px; height:36px; border:1px solid var(--line); border-radius:50%; background:var(--surface); color:var(--muted); font-size:22px; cursor:pointer; }
.chooser-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; max-height:52vh; overflow-y:auto; padding-right:3px; }
.chooser-grid button { min-width:0; min-height:68px; padding:11px; display:grid; grid-template-columns:9px 1fr; column-gap:8px; border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line)); border-radius:14px; background:color-mix(in srgb,var(--accent) 8%,#0b1219); color:var(--text); text-align:left; cursor:pointer; }
.chooser-grid button:disabled { opacity:.3; cursor:not-allowed; }
.chooser-grid i { width:8px; height:8px; margin-top:4px; border-radius:50%; background:var(--accent); }
.chooser-grid span { overflow:hidden; font-weight:800; white-space:nowrap; text-overflow:ellipsis; }
.chooser-grid small { grid-column:2; margin-top:3px; overflow:hidden; color:var(--muted); font-size:9px; white-space:nowrap; text-overflow:ellipsis; }
.swap-mark { display: grid; place-items: center; width: 46px; height: 46px; margin-bottom: 4px; border: 1px solid var(--line); border-radius: 50%; color: var(--cyan); background: #0a121a; font-size: 20px; }
.cross-note { margin: 0 0 14px; padding: 13px 15px; border: 1px solid rgba(255,189,69,.28); border-radius: 14px; background: rgba(255,189,69,.08); color: #d8bd83; font-size: 13px; line-height: 1.5; }
.swipe-hint { margin:0 0 8px; color:var(--cyan); text-align:right; font-size:11px; font-weight:800; text-shadow:0 0 12px rgba(38,216,255,.5); }
.matrix-scroll { overflow-x:auto; padding:0; scrollbar-width:thin; scrollbar-color:var(--cyan) transparent; }
.compare-matrix { min-width:calc(var(--compare-count) * 170px); }
.matrix-head, .matrix-values { display:grid; grid-template-columns:repeat(var(--compare-count),minmax(0,1fr)); }
.matrix-head { position:relative; border-bottom:1px solid var(--line); background:rgba(9,16,23,.98); }
.matrix-head article { position:relative; min-width:0; min-height:156px; padding:17px 14px; border-top:3px solid var(--accent); }
.matrix-head article + article, .matrix-values article + article { border-left:1px solid var(--line); }
.matrix-head article > span { display:grid; place-items:center; width:22px; height:22px; margin-bottom:10px; border-radius:50%; background:var(--accent); color:#061018; font-size:11px; font-weight:900; }
.matrix-head strong { display:block; overflow:hidden; font:700 19px/1.1 Space Grotesk; white-space:nowrap; text-overflow:ellipsis; }
.matrix-head small { display:block; min-height:31px; margin-top:6px; color:#b7c7d5; font-size:10px; line-height:1.4; }
.matrix-head button { margin-top:10px; padding:7px 9px; border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line)); border-radius:10px; background:color-mix(in srgb,var(--accent) 10%,#091018); color:var(--accent); font-size:10px; font-weight:900; cursor:pointer; }
.matrix-row h2 { margin:0; padding:13px 14px; border-bottom:1px solid var(--line); background:#111a23; color:#d9f3ff; font-size:11px; letter-spacing:.08em; text-transform:uppercase; text-shadow:0 0 12px rgba(38,216,255,.22); }
.matrix-values article { min-width:0; padding:17px 14px; background:rgba(8,14,20,.62); }
.matrix-values p { margin:0; color:#ced9e3; font-size:12px; line-height:1.55; }
.matrix-values .accent-copy { color:var(--accent); font-weight:800; text-shadow:0 0 11px color-mix(in srgb,var(--accent) 38%,transparent); }
.compare-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.compare-list li { position: relative; padding-left: 18px; color:#cfdae4; font-size: 12px; line-height: 1.45; }
.compare-list li::before { position: absolute; left: 0; font-weight: 900; }
.compare-list.pros li::before { content: '＋'; color: var(--mint); }
.compare-list.cons li::before { content: '−'; color: var(--amber); }
.solution-calculator { max-width:980px; margin:0 auto; padding:18px; overflow:hidden; }
.calculator-unit-choice { margin-bottom:14px; padding:15px; border:1px solid rgba(38,216,255,.32); border-radius:17px; background:linear-gradient(135deg,rgba(38,216,255,.1),rgba(8,14,20,.76)); }
.calculator-unit-choice > span { display:block; margin-bottom:10px; color:#dff8ff; font-size:13px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.calc-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.calc-step { position:relative; min-width:0; padding:18px; border:1px solid color-mix(in srgb,var(--step-accent) 32%,var(--line)); border-radius:19px; background:linear-gradient(145deg,color-mix(in srgb,var(--step-accent) 8%,#0a1118),#091018); overflow:hidden; }
.calc-step::after { content:""; position:absolute; width:120px; height:120px; right:-72px; top:-72px; border:18px solid var(--step-accent); border-radius:50%; opacity:.08; pointer-events:none; }
.calc-step-head { position:relative; z-index:1; display:grid; grid-template-columns:34px 1fr; gap:11px; align-items:start; }
.calc-step-head > span { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:var(--step-accent); color:#061018; font-weight:900; box-shadow:0 0 18px color-mix(in srgb,var(--step-accent) 34%,transparent); }
.calc-step h2 { margin:1px 0 5px; color:var(--text); font:700 18px/1.15 Space Grotesk; }
.calc-step-head p { min-height:47px; margin:0; color:var(--muted); font-size:12px; line-height:1.45; }
.target-unit-toggle { position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:5px; padding:5px; border:1px solid var(--line); border-radius:14px; background:#071018; }
.target-unit-toggle button { display:grid; place-items:center; gap:2px; min-height:54px; border:0; border-radius:10px; background:transparent; color:var(--muted); font-weight:900; cursor:pointer; }
.target-unit-toggle button strong { font-size:17px; line-height:1; text-transform:none; }
.target-unit-toggle button small { font-size:11px; font-weight:700; }
.target-unit-toggle button.active { background:rgba(38,216,255,.15); color:var(--cyan); box-shadow:0 0 18px rgba(38,216,255,.14); }
.calc-presets { position:relative; z-index:1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin-top:16px; }
.calc-presets button { min-width:0; min-height:42px; padding:6px; border:1px solid var(--line); border-radius:12px; background:#071018; color:#b7c8d6; font-size:12px; font-weight:800; cursor:pointer; }
.calc-presets button.active { border-color:color-mix(in srgb,var(--step-accent) 58%,var(--line)); background:color-mix(in srgb,var(--step-accent) 14%,#071018); color:var(--step-accent); box-shadow:0 0 17px color-mix(in srgb,var(--step-accent) 12%,transparent); }
.calc-custom { position:relative; z-index:1; display:grid; gap:7px; margin-top:13px; }
.calc-custom span { color:var(--step-accent); font-size:11px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.calc-custom input { width:100%; min-height:50px; padding:0 14px; border:1px solid var(--line); border-radius:13px; background:#071018; color:var(--text); outline:none; font:700 19px/1 Space Grotesk; }
.calc-custom input:focus { border-color:var(--step-accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--step-accent) 11%,transparent); }
.calc-result { margin-top:14px; padding:20px; border:1px solid rgba(38,216,255,.35); border-radius:20px; background:radial-gradient(circle at 10% 15%,rgba(38,216,255,.11),transparent 38%),linear-gradient(145deg,#0d1822,#091018); }
.result-heading span { color:var(--cyan); font-size:12px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; text-shadow:0 0 13px rgba(38,216,255,.48); }
.result-layout { display:grid; grid-template-columns:180px 1fr; gap:20px; align-items:center; margin-top:15px; }
.sample-ring { width:170px; height:170px; display:grid; place-items:center; border-radius:50%; background:conic-gradient(var(--cyan) 0 var(--sample-fill),#1b2a36 var(--sample-fill) 100%); box-shadow:0 0 34px rgba(38,216,255,.13); position:relative; }
.sample-ring::after { content:""; position:absolute; inset:14px; border-radius:50%; background:#0b141c; }
.sample-ring > div { position:relative; z-index:1; width:105px; text-align:center; }
.sample-ring strong { display:block; color:var(--cyan); font:700 27px/1 Space Grotesk; text-shadow:0 0 16px rgba(38,216,255,.35); }
.sample-ring small { display:block; margin-top:7px; color:var(--muted); font-size:11px; font-weight:800; line-height:1.25; text-transform:uppercase; }
.result-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.result-metrics > div { min-width:0; min-height:118px; padding:14px; border:1px solid var(--line); border-radius:15px; background:rgba(7,11,16,.62); }
.result-metrics span { display:block; color:var(--muted); font-size:11px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.result-metrics strong { display:block; margin-top:13px; color:var(--text); font:700 20px/1.08 Space Grotesk; overflow-wrap:anywhere; }
.result-metrics small { display:block; margin-top:7px; color:var(--cyan); font-size:11px; font-weight:800; }
.calculation-line { display:flex; justify-content:space-between; gap:16px; margin-top:15px; padding-top:14px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }
.calculation-line span { text-transform:uppercase; letter-spacing:.06em; font-weight:800; }
.calculation-line strong { color:#dceaf4; text-align:right; }
.calc-empty { padding:40px 12px; color:var(--muted); text-align:center; font-size:14px; }
.calc-reset { display:block; min-height:42px; margin:13px auto 0; padding:0 16px; border:1px solid var(--line); border-radius:999px; background:#091119; color:var(--muted); font-size:12px; font-weight:800; cursor:pointer; }
.calculator-limit { max-width: 720px; margin: 14px auto 0; padding: 17px; display: flex; align-items: flex-start; gap: 12px; }
.calculator-limit > span { display: grid; place-items: center; width: 26px; height: 26px; flex: 0 0 26px; border: 1px solid var(--cyan); border-radius: 50%; color: var(--cyan); font-weight: 800; }
.calculator-limit p { margin: 2px 0 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.site-footer { max-width:1100px; margin:0 auto; padding:10px 18px 108px; color:#6f8291; font-size:11px; font-weight:700; letter-spacing:.04em; text-align:center; }
.site-footer strong { display:block; color:#9db0bf; font:700 13px/1.2 Space Grotesk,sans-serif; letter-spacing:.01em; }
.site-footer span { display:block; margin-top:5px; }
.install-layer { position:fixed; inset:0; z-index:500; display:grid; align-items:end; justify-items:center; padding:18px; background:rgba(1,5,8,.78); backdrop-filter:blur(12px); }
.install-sheet { position:relative; width:min(100%,460px); padding:22px; border:1px solid rgba(38,216,255,.42); border-radius:26px; background:radial-gradient(circle at 10% 0,rgba(38,216,255,.16),transparent 38%),linear-gradient(155deg,#111d28,#070d13 72%); box-shadow:0 24px 80px rgba(0,0,0,.65),0 0 38px rgba(38,216,255,.11); }
.install-handle { width:48px; height:5px; margin:-10px auto 18px; border-radius:999px; background:#344959; }
.install-close { position:absolute; top:15px; right:15px; width:38px; height:38px; border:1px solid var(--line); border-radius:50%; background:#091119; color:#a9bac7; font-size:25px; line-height:1; cursor:pointer; }
.install-symbol { display:grid; place-items:center; width:62px; height:62px; margin-bottom:17px; border:2px solid var(--cyan); border-radius:18px; color:var(--cyan); background:#08141c; box-shadow:0 0 24px rgba(38,216,255,.24); }
.install-symbol span { font-size:35px; line-height:1; transform:translateY(-2px); }
.install-badge { color:var(--mint); font-size:11px; font-weight:900; letter-spacing:.13em; }
.install-sheet h2 { max-width:350px; margin:8px 0; color:var(--text); font:700 29px/1.05 Space Grotesk; }
.install-benefit { margin:0; color:#adbdc9; font-size:15px; line-height:1.5; }
.install-steps { display:grid; grid-template-columns:auto 1fr; gap:12px; align-items:start; margin-top:18px; padding:15px; border:1px solid var(--line); border-radius:16px; background:rgba(6,13,19,.75); }
.install-steps span { padding:5px 8px; border-radius:999px; background:rgba(38,216,255,.13); color:var(--cyan); font-size:11px; font-weight:900; }
.install-steps p { margin:0; color:#d2dce4; font-size:14px; line-height:1.5; }
.install-actions { display:grid; grid-template-columns:1fr auto; gap:9px; margin-top:18px; }
.install-actions button { min-height:48px; padding:0 17px; border-radius:14px; font-size:14px; font-weight:900; cursor:pointer; }
.install-primary { border:0; background:linear-gradient(135deg,var(--cyan),#55e7ff); color:#061018; box-shadow:0 0 22px rgba(38,216,255,.18); }
.install-secondary { border:1px solid var(--line); background:#091119; color:#a9bac7; }
@media (max-width: 780px) {
  .dashboard, .detail-grid { grid-template-columns: 1fr; }
  .cards { grid-template-columns: 1fr; }
  .product-card { min-height: 250px; }
  .signal-card { position: static; }
  .toolbar { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .shell { padding-inline: 14px; }
  .brand-sub { display: none; }
  .brand-name { font-size: 14px; }
  .pulse-panel { padding: 17px; gap: 15px; }
  .ring { width: 92px; height: 92px; flex-basis: 92px; }
  .ring-value { font-size: 25px; }
  .mini-stat { padding: 19px 14px; }
  .mini-stat strong { font-size: 26px; }
  .detail-hero { padding: 22px 18px; }
  .saved-overview { grid-template-columns: 96px 1fr; gap: 14px; padding: 16px; }
  .saved-ring-wrap { width:96px; }
  .saved-ring { width: 96px; height: 96px; }
  .compare-setup { padding:14px; }
  .selected-product, .add-product { min-height:84px; padding:12px; }
  .chooser-grid { grid-template-columns:1fr; }
  .solution-calculator { padding:12px; }
  .calc-flow { grid-template-columns:1fr; }
  .calc-step { padding:16px; }
  .calc-step-head p { min-height:0; }
  .calc-presets { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .result-layout { grid-template-columns:1fr; }
  .sample-ring { width:150px; height:150px; margin:0 auto; }
  .result-metrics { grid-template-columns:1fr; }
  .result-metrics > div { min-height:0; }
  .calculation-line { display:grid; gap:7px; }
  .calculation-line strong { text-align:left; }
  .install-layer { padding:10px; }
  .install-sheet { padding:20px 18px calc(20px + env(safe-area-inset-bottom)); border-radius:24px; }
  .install-sheet h2 { font-size:26px; }
}
@media (prefers-reduced-motion: no-preference) {
  .product-card, .explore, .chip, .save { transition: transform .18s ease, border-color .18s ease, background .18s ease; }
  .product-card:hover { transform: translateY(-3px); border-color: color-mix(in srgb, var(--accent) 45%, var(--line)); }
  .explore:active, .chip:active, .save:active { transform: scale(.96); }
  .install-sheet { animation:install-rise .28s ease-out both; }
}
@keyframes install-rise { from { opacity:0; transform:translateY(32px); } to { opacity:1; transform:translateY(0); } }

.status.coming-soon,.format.coming-soon{color:#ffd084}.format.coming-soon{border-color:#b98442;background:linear-gradient(145deg,rgba(135,85,28,.27),rgba(12,19,27,.92));box-shadow:0 0 26px rgba(255,185,75,.16)}
.incoming-section{margin:4px 0 34px;padding:22px;border:1px solid #c5944f;border-radius:26px;background:radial-gradient(circle at 92% 4%,rgba(255,199,105,.28),transparent 28rem),linear-gradient(145deg,rgba(59,44,28,.98),rgba(11,18,25,.94));box-shadow:0 22px 75px rgba(0,0,0,.32),0 0 28px rgba(255,185,75,.19)}
.incoming-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:17px}.incoming-heading span{color:#ffda96;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.incoming-heading h2{margin:6px 0 5px;font:700 29px/1.05 Space Grotesk}.incoming-heading p{max-width:620px;margin:0;color:#dfc9aa;font-size:13px;line-height:1.55}.incoming-heading>i{display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;border:1px solid #dbac67;border-radius:17px;color:#ffe8bc;background:#4b3422;box-shadow:0 0 26px rgba(255,185,75,.4);font-size:26px;font-style:normal}
.incoming-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.incoming-card{display:grid;grid-template-rows:1fr auto auto;gap:11px;min-height:215px;padding:17px;border:1px solid #8b683e;border-radius:18px;background:rgba(8,14,21,.76)}.incoming-status{color:#ffd084;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.incoming-card h3{margin:9px 0 5px;font:700 22px/1.05 Space Grotesk}.incoming-card p{margin:0;color:#f0dfc5;font-size:13px}.incoming-card small{display:block;margin-top:8px;color:#c8b596;font-size:11px;line-height:1.45}.interest-button{min-height:44px;border:1px solid #f4c678;border-radius:13px;background:linear-gradient(135deg,#ffda96,#dba14d);color:#211709;font-weight:800;cursor:pointer}.interest-button.saved{border-color:#3b8d76;background:#173a31;color:#91ebce}.interest-note{color:#bfad93;font-size:9px;line-height:1.35;text-align:center}.interest-button:disabled{cursor:default}
.incoming-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.incoming-actions button{min-width:0;padding:8px 9px}.incoming-explore{min-height:44px;border:1px solid #ad8247;border-radius:13px;background:#332718;color:#ffe0a9;font-weight:800}.incoming-card .category-tag{margin-top:7px;margin-bottom:8px;--accent:#ffd084}.detail-hero>.interest-note{display:block;margin-top:8px;text-align:left}
@media(max-width:780px){.incoming-grid{grid-template-columns:1fr}.incoming-card{min-height:0}}
@media(max-width:480px){.incoming-section{padding:17px}.incoming-heading h2{font-size:25px}.incoming-heading>i{width:44px;height:44px;flex-basis:44px}}

/* Keep each metadata item in normal flow, including long translated categories. */
.incoming-card>div:first-child{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0}
.incoming-card h3,.incoming-card p,.incoming-card small{margin:0;max-width:100%;overflow-wrap:anywhere;line-height:1.45}
.incoming-card h3{line-height:1.15}
.incoming-card .category-tag{display:inline-flex;align-items:center;max-width:100%;margin:0;white-space:normal;overflow-wrap:anywhere;line-height:1.45}
.incoming-card,.incoming-heading>div{min-width:0}
.incoming-section{box-shadow:inset 0 1px 0 #ffe5ad66,0 22px 75px #0005,0 0 38px #ffb94b30}
.incoming-heading h2{color:#ffe8bc;text-shadow:0 0 25px #ffb94b30}
.interest-button{box-shadow:inset 0 1px 0 #fff1c8a6,0 0 18px #ffb94b26}
.interest-button.saved{box-shadow:none}
.format.coming-soon small{color:#ffd084}
.incoming-actions button{white-space:normal;overflow-wrap:anywhere;line-height:1.35}
@media(max-width:360px){.incoming-actions{grid-template-columns:minmax(0,1fr)}.incoming-heading{gap:10px}}
.peptide-request{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,.78fr);gap:20px;align-items:center;overflow:hidden;margin:38px 0 24px;padding:28px;border:1px solid #5586a0;border-radius:26px;background:radial-gradient(circle at 7% 105%,rgba(39,215,255,.16),transparent 18rem),radial-gradient(circle at 96% 0,rgba(190,127,255,.2),transparent 23rem),linear-gradient(145deg,rgba(24,20,42,.96),rgba(7,17,24,.97));box-shadow:0 24px 80px rgba(0,0,0,.34),0 0 30px rgba(169,110,255,.08)}
.request-copy{position:relative;z-index:1;max-width:650px}.request-copy>span{color:#a3dfff;font-size:11px;font-weight:900;letter-spacing:.16em}.request-copy h2{margin:8px 0 8px;font:700 30px/1.08 Space Grotesk}.request-copy p{max-width:610px;margin:0;color:#aebec7;font-size:13px;line-height:1.58}.request-form{position:relative;z-index:1;display:grid;gap:9px}.request-form label{min-width:0}.request-form input{width:100%;min-height:54px;padding:0 16px;border:1px solid #47556c;border-radius:15px;background:rgba(5,13,20,.82);color:#edf7ff;font:650 14px/1.2 Inter}.request-form input:focus{outline:2px solid rgba(113,221,255,.38);border-color:#71ddff}.request-form button{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 17px;border:1px solid #75b0d0;border-radius:15px;background:linear-gradient(135deg,#487d9a,#294a5b);color:#e5f6ff;font-weight:850;cursor:pointer}.request-form button i{font-size:21px;font-style:normal}.request-form button:disabled{cursor:default;opacity:.84}.request-status{position:relative;z-index:1;grid-column:2;margin:-12px 2px 0;color:#82939c;font-size:10px;line-height:1.4}.request-status.error{color:#ff91a1}.peptide-request.success{border-color:#3a977b;background:radial-gradient(circle at 96% 0,rgba(44,225,178,.18),transparent 23rem),linear-gradient(145deg,rgba(16,42,36,.96),rgba(7,17,24,.97))}.peptide-request.success .request-form button{border-color:#3b9d7e;background:#173f35;color:#9af1d6}.request-orbit{position:absolute;right:-64px;top:-90px;width:230px;height:230px;border:24px solid rgba(185,124,255,.08);border-radius:50%}.request-orbit i,.request-orbit b{position:absolute;border-radius:50%;background:#7cd1ff;box-shadow:0 0 24px rgba(189,124,255,.7)}.request-orbit i{width:10px;height:10px;left:9px;top:46px}.request-orbit b{width:6px;height:6px;right:20px;bottom:42px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.peptide-request{grid-template-columns:1fr;padding:22px}.request-status{grid-column:1;margin:0}.request-copy h2{font-size:27px}}
@media(max-width:480px){.peptide-request{padding:19px 17px}.request-copy h2{font-size:25px}.request-form input,.request-form button{min-height:50px}}

.incoming-card{grid-template-rows:1fr auto auto auto}
.interest-count{display:block;color:#ffe0a9;font-size:14px;line-height:1.5;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.incoming-card>.interest-count{text-align:center;padding:8px 12px;border:1px solid #e1b46a55;border-radius:12px;background:#e1b46a0d}
.detail-hero>.interest-count{margin-top:14px}
.format .interest-count{flex-basis:100%;font-size:12px}

/* Deliberate playback, with the same text available directly in the profile. */
.peptide-listen{position:relative;margin:22px 0;padding:20px;min-width:0;max-width:100%;border:1px solid #7ba7be;border-radius:20px;background:linear-gradient(130deg,#20343f,#182332);box-shadow:0 0 24px #b864db18}
.peptide-listen .audio-eyebrow{font-size:12px;line-height:1.5;letter-spacing:.06em;font-weight:750;color:#b7e6ff}.peptide-listen h2{font-size:22px;line-height:1.3;margin:6px 0 10px;color:#eaf8ff}.peptide-listen p{font-size:16px;line-height:1.5;color:#c5d4dc;margin:10px 0}.peptide-listen :is(h2,p,button,span){white-space:normal;word-break:normal;overflow-wrap:break-word;max-width:100%}
.audio-actions{display:flex;flex-wrap:wrap;gap:10px}.audio-actions button{flex:1 1 170px;min-width:0;min-height:48px;padding:12px 16px;border:1px solid #7da6bc;border-radius:12px;background:#33576a;color:#eaf8ff;font:600 16px/1.4 system-ui;cursor:pointer}.audio-actions button[data-audio-stop]{flex:0 1 auto;background:transparent}.audio-actions button[aria-pressed=true]{background:#395d4b;border-color:#8bdbb6;color:#d5ffe7}.audio-actions button:focus-visible{outline:3px solid #c9ecff;outline-offset:3px}.peptide-listen [data-audio-status]:empty{display:none}.peptide-listen [data-audio-status]{font-size:14px}
.peptide-listen .audio-voice-label{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;max-width:100%;margin:14px 0;font:500 14px/1.5 system-ui;color:#cde1eb}.peptide-listen select{width:100%;min-width:0;max-width:100%;min-height:44px;padding:10px;border:1px solid #739aaf;border-radius:10px;background:#172329;color:#eaf8ff;font:400 16px/1.4 system-ui}

/* Shared source-specific regimen rows in profiles and calculator. */
.calculator-profile { margin-bottom:20px; padding:clamp(18px,3vw,28px); background:radial-gradient(ellipse at 100% 0,#26d8ff0d,transparent 65%),linear-gradient(145deg,#111c25,#0a1219); }
.calculator-profile>h2 { margin:0 0 14px; font-size:1rem; line-height:1.45; }
.compound-trigger { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; min-height:76px; padding:16px 18px; text-align:left; border:1px solid #416371; border-radius:16px; background:#0a171f; color:var(--text); cursor:pointer; }
.compound-trigger>span { min-width:0; }
.compound-trigger strong { display:block; font:700 1.25rem/1.25 Space Grotesk,system-ui,sans-serif; overflow-wrap:anywhere; }
.compound-trigger small { display:block; margin-top:5px; font-size:.875rem; color:var(--muted); }
.compound-trigger svg { flex:none; color:var(--cyan); transition:transform .15s; }
.compound-trigger[aria-expanded=true] { border-color:var(--cyan); }
.compound-trigger[aria-expanded=true] svg { transform:rotate(180deg); }
.calculator-profile button:focus-visible { outline:2px solid var(--cyan); outline-offset:3px; }
.compound-chooser { margin-top:12px; padding:12px; border:1px solid #365764; border-radius:16px; background:#0a131c; }
.compound-chooser[hidden] { display:none; }
.compound-chooser-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 2px 10px; color:var(--muted); font-size:.875rem; }
.compound-chooser-heading button { width:44px; height:44px; border:1px solid var(--line); border-radius:12px; background:var(--surface); color:var(--text); font-size:1.5rem; cursor:pointer; }
.compound-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; max-height:min(360px,45svh); overflow-y:auto; overscroll-behavior:contain; scrollbar-color:#416371 transparent; padding:4px; }
.compound-options button { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:54px; padding:12px; border:1px solid #2d414e; border-radius:12px; background:#111e28; text-align:left; font-size:1rem; font-weight:600; cursor:pointer; overflow-wrap:anywhere; }
.compound-options button[aria-pressed=true] { border-color:#70d8e8; background:#133442; color:#c6f6ff; }
.compound-check { flex:none; color:#7cb7c4; }
.compound-clear { width:100%; min-height:44px; margin-top:10px; border:0; border-radius:10px; background:transparent; color:var(--muted); font-size:.875rem; cursor:pointer; }
.calculator-protocol:not(:empty) { margin-top:22px; padding-top:20px; border-top:1px solid #304853; }
.calculator-reference-heading { display:flex; align-items:center; gap:10px; margin-bottom:18px; }
.calculator-reference-heading>span { width:8px; height:8px; flex:none; border-radius:50%; background:var(--cyan); box-shadow:0 0 14px #26d8ff40; }
.calculator-reference-heading h3 { margin:0; font-size:1.125rem; line-height:1.4; }
.protocol-facts { margin:0; }
.protocol-facts>div { display:grid; grid-template-columns:minmax(90px,30%) minmax(0,1fr); gap:12px; padding:12px 0; border-bottom:1px solid var(--line); }
.protocol-facts dt { color:var(--muted); font-size:14px; }
.protocol-facts dd { margin:0; font-weight:600; overflow-wrap:anywhere; }
.protocol-sources { display:grid; gap:10px; margin-top:18px; font-size:.875rem; overflow-wrap:anywhere; }
.protocol-sources a { display:block; padding:12px 14px; border:1px solid #36505c; border-radius:12px; background:#09151b; color:#8ddde9; text-decoration:none; line-height:1.5; }
.protocol-sources a:hover { border-color:#77c4d3; text-decoration:underline; }
.protocol-block summary:not([data-label])::before { content:none; }
.calculator-protocol .protocol-facts { display:grid; gap:8px; }
.calculator-protocol .protocol-facts>div { grid-template-columns:minmax(90px,28%) minmax(0,1fr); padding:14px; border:1px solid #263c49; border-radius:12px; background:#0b161e; }
.calculator-protocol .protocol-facts dt { font-size:.875rem; line-height:1.45; }
.calculator-protocol .protocol-facts dd { font-size:1rem; line-height:1.5; }
.calculator-protocol p { margin:18px 0; font-size:1rem; line-height:1.65; color:#b9cbd7; }
.blend-composition { margin-top:22px; padding:20px; border:1px solid #326660; border-radius:18px; background:linear-gradient(140deg,#122a2b,#0a171e); }
.blend-heading>span { color:#87ddc6; font-size:.75rem; font-weight:750; letter-spacing:.09em; }
.blend-heading h3 { margin:7px 0 12px; font-size:1.25rem; line-height:1.3; }
.blend-formula { margin:0 0 20px; color:#b9cbd7; font-size:.875rem; line-height:1.65; overflow-wrap:anywhere; }
.blend-amount-label { display:grid; gap:10px; font-size:1rem; font-weight:600; line-height:1.5; }
.blend-amount-field { display:flex; align-items:center; gap:10px; border:1px solid #477b75; border-radius:12px; background:#08171c; padding:12px 16px; }
.blend-amount-field:focus-within { outline:2px solid #85e0c7; outline-offset:3px; }
.blend-amount-field input { width:100%; min-width:0; min-height:32px; padding:0; border:0; background:transparent; color:var(--text); font:600 1.125rem/1.4 system-ui; outline:none; }
.blend-amount-field input::placeholder { font-size:1rem; font-weight:400; color:#9cb0b8; }
.blend-amount-field>span { color:#87ddc6; }
.blend-result { margin-top:16px; }
.blend-components { display:grid; gap:0; margin:0; }
.blend-components>div { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:13px 0; border-bottom:1px solid #2a4549; }
.blend-components dt { font-size:.9375rem; color:#bbced5; }
.blend-components dd { margin:0; text-align:right; font:700 1.25rem/1.3 Space Grotesk,system-ui,sans-serif; overflow-wrap:anywhere; }
.blend-components dd small { font-size:.875rem; font-weight:500; }
.blend-components .blend-total { margin-top:8px; padding:14px; border:1px solid #3c7165; border-radius:12px; background:#143a33; }
.blend-total :is(dt,dd) { color:#a4f0d6; }
.blend-equation,.blend-hint,.blend-note { margin:14px 0 0; color:#a8c2c7; font-size:.875rem; line-height:1.6; }
.blend-note { padding-top:14px; border-top:1px solid #2a4549; }
@media(max-width:520px){.calculator-protocol .protocol-facts>div { grid-template-columns:1fr; gap:5px; }.compound-trigger { padding:15px; }}
@media(max-width:400px){.blend-composition { padding:16px; }.blend-components .blend-total { padding:12px; }}
@media(prefers-reduced-motion:reduce){.compound-trigger svg { transition:none; }}
@media(max-width:360px){.protocol-facts>div { grid-template-columns:1fr; gap:5px; }}

.app-update-notice { position:fixed; top:calc(env(safe-area-inset-top,0px) + 10px); left:50%; transform:translateX(-50%); z-index:10000; display:flex; align-items:center; gap:12px; width:max-content; max-width:calc(100% - 24px); padding:12px 16px; border:1px solid #43545b; border-radius:14px; background:#101a20; color:#f4f8fa; box-shadow:0 8px 28px #0009; font-size:14px; }
.app-update-notice button { flex:none; min-height:40px; padding:8px 14px; border:0; border-radius:10px; color:#071014; background:#82d6e4; font:inherit; font-weight:700; }

.compound-options{display:flex;flex-direction:column;gap:2px;max-height:230px}.compound-options button{flex-shrink:0;min-height:44px;padding:10px 12px;border-radius:8px;border:0;border-left:3px solid var(--compound-accent);font-size:.95rem}.compound-options button[aria-pressed=true]{color:var(--compound-accent);background:#182d38}.calculator-profile .compound-trigger{border-color:var(--compound-accent)}.calculator-profile .compound-trigger strong,.calculator-profile .compound-trigger svg{color:var(--compound-accent)}.calculator-reference-heading>span{background:var(--compound-accent)}.compound-chooser{padding:10px}.compound-chooser-heading{font-size:.85rem}.compound-clear{padding:8px;font-size:.85rem}

.cards>.incoming-card{border:1px solid #303b45;border-radius:24px;background:#0b1219;padding:24px}.cards>.incoming-card .category-tag{color:var(--accent);border-color:var(--accent)}.cards>.incoming-card .incoming-explore{background:var(--accent);color:#071019}.cards>.incoming-card h3{font-size:1.7rem}.cards>.incoming-card .incoming-status{color:#ffd084}
/* A shared, readable protocol workspace for profiles and the calculator. */
.protocol-workspace{--accent:var(--protocol-accent);margin:0 0 20px;color:#e9f4fa}.protocol-step-title{display:flex;align-items:center;gap:12px;margin:22px 0 14px}.protocol-step-title>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--protocol-accent);color:#06111b;font-weight:800;flex-shrink:0}.protocol-step-title h3{font-size:1.15rem;margin:0}.protocol-vials{display:flex;gap:10px;overflow-x:auto;padding:3px 2px 10px;scrollbar-color:var(--protocol-accent) transparent}.protocol-vials button{flex:0 0 auto;display:grid;gap:6px;min-height:66px;border:1px solid #354552;border-radius:14px;background:#0a151e;padding:14px;text-align:left;color:#e9f4fa;cursor:pointer}.protocol-vials button[aria-pressed=true]{border-color:var(--protocol-accent);background:color-mix(in srgb,var(--protocol-accent) 13%,#09131c);box-shadow:inset 0 0 0 1px var(--protocol-accent)}.protocol-vials strong{font-size:1rem}.protocol-vials small{font-size:.875rem;color:#b1c3cf}.protocol-format-caption,.protocol-source-note{font-size:.9rem;line-height:1.6;color:#b7c7d1}.protocol-reference{margin:22px 0;padding:20px;border:1px solid #334754;border-radius:18px;background:#0a1720}.protocol-source-heading{display:grid;gap:8px}.protocol-source-heading>span{font-size:.75rem;letter-spacing:.1em;color:var(--protocol-accent);font-weight:700}.protocol-source-heading strong{font-size:1rem}.protocol-quick-facts{display:grid;grid-template-columns:1fr;gap:10px;margin:16px 0}.protocol-quick-facts>div{padding:12px 0;border-bottom:1px solid #263945}.protocol-quick-facts dt{font-size:.875rem;color:#a7bbc8;margin-bottom:7px}.protocol-quick-facts dd{margin:0;font-size:1.05rem;font-weight:650;line-height:1.5;color:#f2f7fb}.protocol-checked{display:block;font-size:.8rem;color:#93a9b8;margin-top:14px}.protocol-inputs{display:grid;grid-template-columns:1fr 1fr;gap:14px}.protocol-inputs label{display:grid;align-content:start;gap:8px;font-size:.9rem;color:#c3d2db}.protocol-inputs input{width:100%;min-width:0;box-sizing:border-box;border:1px solid #3a4d5a;background:#07111a;color:#fff;border-radius:12px;padding:14px;font-size:1.1rem}.protocol-units,.protocol-basis{display:flex;gap:8px;flex-wrap:wrap}.protocol-units{grid-column:1/-1}.protocol-units button,.protocol-basis button{border:1px solid #354957;border-radius:10px;background:#0c1b25;color:#b8cbd7;min-height:44px;padding:10px 16px;font-size:.9rem}.protocol-units button[aria-pressed=true],.protocol-basis button[aria-pressed=true]{color:var(--protocol-accent);border-color:var(--protocol-accent);background:color-mix(in srgb,var(--protocol-accent) 12%,#09131c)}.protocol-basis{margin-bottom:16px}.protocol-results{display:grid;gap:12px;margin-top:20px}.protocol-results>div{display:grid;gap:7px;padding:16px;border-radius:14px;background:#101f2a;border:1px solid #2e4453}.protocol-results span,.protocol-results small{font-size:.875rem;color:#aebfca}.protocol-results strong{font-size:1.35rem;color:var(--protocol-accent)}.protocol-math-result>p{color:#b4c6d1;font-size:.9rem}.protocol-components{display:grid;gap:0;border:1px solid #304552;border-radius:14px;padding:8px 14px}.protocol-components>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #273b48}.protocol-components>div:last-child{border:0}.protocol-components dd{margin:0;color:var(--protocol-accent);font-weight:700}.protocol-formula{display:flex;flex-wrap:wrap;gap:8px}.protocol-formula>span{display:grid;gap:4px;background:#111f2b;border-radius:10px;padding:10px 12px;font-size:.85rem;color:#aebfcd}.protocol-formula strong{color:var(--protocol-accent)}.protocol-evidence{border-top:1px solid #324552;margin-top:24px;padding-top:16px}.protocol-evidence>summary{font-size:1rem;padding:8px 0;color:#c7d9e4;cursor:pointer}.protocol-workspace button:focus-visible,.protocol-workspace input:focus-visible{outline:2px solid var(--protocol-accent);outline-offset:3px}@media(max-width:480px){.protocol-inputs{grid-template-columns:1fr}.protocol-reference{padding:14px}.protocol-workspace{min-width:0}.protocol-quick-facts dd{font-size:1rem}}
/* Signal Axiom journal */
.research-shortcut{margin:0 0 20px}.research-shortcut a,.research-preview a,.research-back,.research-article-sources a,.research-calculator-link{color:var(--cyan,#62ddf4);text-decoration:none}.research-shortcut a{display:inline-flex;gap:28px;border:1px solid #38545f;border-radius:999px;padding:10px 16px;background:#0d1c23;font-weight:650}.research-preview{margin:40px 0}.research-preview>p{color:#b3c3ce;max-width:650px;margin:0 0 22px}.research-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.research-card{display:flex;flex-direction:column;gap:16px;padding:26px;border-radius:24px;border:1px solid #31414b;border-top:3px solid var(--article-accent);background:linear-gradient(145deg,#12212af5,#080e14f7);color:#eff8fc!important;text-decoration:none;min-width:0;transition:transform .2s,border-color .2s}.research-card:hover{transform:translateY(-3px);border-color:var(--article-accent)}.research-card:focus-visible{outline:3px solid var(--article-accent);outline-offset:4px}.research-card-meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.73rem;letter-spacing:.04em;color:#9bb1bd}.research-card-meta>span{color:var(--article-accent);font-weight:750}.research-card h3{font-size:1.45rem;line-height:1.2;margin:0;letter-spacing:-.02em}.research-card p{color:#b6c4ce;font-size:1rem;line-height:1.6;margin:0}.research-read{display:flex;justify-content:space-between;color:var(--article-accent);font-weight:650;margin-top:auto;padding-top:12px}.research-back{display:inline-flex;margin:24px 0 8px;padding:10px 0;min-height:44px}.research-filters{display:flex;gap:10px;margin:24px 0}.research-filters button{border:1px solid #35515e;background:#0c171f;border-radius:999px;color:#b9ccd7;padding:10px 20px;min-height:44px;font:inherit}.research-filters button[aria-pressed=true]{border-color:#64daef;color:#8ce8f7;background:#17303a}.research-article{max-width:840px;margin:20px auto 0;padding:clamp(22px,5vw,52px);border:1px solid #364e5b;border-top:3px solid var(--article-accent);border-radius:28px;background:#0b141df5}.research-article-heading h1{font-size:clamp(2.1rem,5vw,3.7rem);line-height:1.04;letter-spacing:-.04em;margin:16px 0 24px}.research-article-heading .eyebrow{color:var(--article-accent)}.research-article-heading .lead{font-size:1.25rem;color:#b7cad5;line-height:1.6}.research-byline{display:flex;flex-wrap:wrap;gap:8px 18px;color:#9fb4c1;font-size:.82rem;padding:18px 0 28px;border-bottom:1px solid #2c4350}.research-article section{margin:30px 0}.research-article h2{font-size:1.45rem;line-height:1.25}.research-article p{color:#bdccd6;line-height:1.8;font-size:1.05rem}.research-table-scroll{overflow-x:auto;margin:24px -2px}.research-table-scroll table{border-collapse:collapse;width:100%;white-space:nowrap;font-size:.9rem}.research-table-scroll caption{text-align:left;color:#acbfcb;margin-bottom:14px;white-space:normal}.research-table-scroll th,.research-table-scroll td{text-align:left;padding:14px 12px;border-bottom:1px solid #304753}.research-table-scroll thead{color:var(--article-accent);background:#14232d}.research-article-sources{border-top:1px solid #314955;padding-top:14px}.research-article-sources a{display:block;overflow-wrap:anywhere;margin:12px 0}.research-article-sources p,.research-editorial-note{font-size:.85rem;color:#9cb0bd}.research-calculator-link{display:inline-block;border:1px solid var(--article-accent);border-radius:14px;padding:14px 20px;font-weight:650}.research-related{margin-top:40px}.research-related .research-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.research-editorial-note{margin:28px 0;line-height:1.7}.format-list button.format{text-align:left;font:inherit;color:inherit;cursor:pointer}.format-list button.format:hover,.format-list button.format:focus-visible{border-color:var(--accent,#62ddf4);outline:2px solid var(--accent,#62ddf4);outline-offset:2px}.protocol-workspace{scroll-margin-top:130px}.solution-calculator[hidden]{display:none!important}
@media(max-width:760px){.research-grid{grid-template-columns:1fr}.research-related .research-grid{grid-template-columns:1fr}.research-card{padding:24px}.research-card h3{font-size:1.5rem}.research-preview .section-heading{align-items:flex-start;gap:12px}.research-preview .section-heading h2{max-width:70%}.research-preview .section-heading a{white-space:nowrap}.research-article{padding:24px 20px}.research-article p{font-size:1rem}.research-article-heading h1{font-size:2.25rem}.research-table-scroll{margin-right:-8px}.research-article-sources a{font-size:.9rem}}

/* Shared reading rhythm. Words wrap at boundaries and controls never squeeze text. */
.shell :is(h1,h2,h3,h4,p,dd,summary,button,a){word-break:normal;overflow-wrap:break-word;hyphens:manual}
.shell :is(.panel,.detail-body,.protocol-workspace,.calc-step,.calc-step-head>div){min-width:0}
.shell h1{line-height:1.12}.shell h2,.shell h3{line-height:1.3}
.persistent-back{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:calc(92px + env(safe-area-inset-bottom));z-index:45;min-height:44px;padding:10px 18px;border:1px solid #47616e;border-radius:999px;background:#10232ef5;color:#e6f9ff;box-shadow:0 5px 24px #0008;font:600 15px/1.3 Inter,system-ui;cursor:pointer}
.persistent-back:focus-visible{outline:3px solid #25d8ff;outline-offset:3px}
.protocol-vials{flex-wrap:wrap;overflow:visible}.protocol-vials button{flex:1 1 100px;min-width:0}.protocol-reference>summary{cursor:pointer;font-weight:650;min-height:44px;display:flex;align-items:center;line-height:1.5}.protocol-reference{margin:16px 0;padding:12px 16px}
.calc-capacity-warning{border-left:3px solid #f5c566;padding:12px;color:#f5d68d}
.result-metrics>div:nth-child(2){border:1px solid #27cde5;border-radius:14px;padding:18px;background:#103440}.result-metrics>div:nth-child(2)>strong{color:#6cecff;font-size:2rem}
.protocol-inputs input{font-size:16px}.calculator-profile{margin-top:24px}
@media(max-width:600px){.shell{padding-left:16px;padding-right:16px}.detail-body{padding:16px!important}.protocol-step-title{align-items:flex-start}.protocol-step-title h3{font-size:1.05rem}.protocol-workspace p{font-size:1rem;line-height:1.6}.protocol-results{grid-template-columns:1fr}.research-article-heading h1{font-size:2rem;line-height:1.18}.research-article{padding:20px}.calc-flow{grid-template-columns:1fr}.calc-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.calc-presets button{min-width:0;padding:10px 6px;min-height:44px}.result-layout{gap:16px}.sample-ring{display:none}.result-metrics{width:100%}.protocol-facts>div{grid-template-columns:1fr;gap:6px}}

.tool-links{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 24px}.tool-links a{padding:10px 14px;min-height:44px;box-sizing:border-box;border:1px solid #2c4654;border-radius:12px;color:#a9cedb;background:#0b1922;text-decoration:none;font-size:.9rem;font-weight:600}.tool-links a[aria-current=page]{background:#133643;color:#70eaff;border-color:#26d8ff}
.protocol-library-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.protocol-library-tabs button{min-height:44px;padding:10px 18px;background:#0d1d27;border:1px solid #304956;border-radius:999px;color:#c2d7e0;font:inherit;cursor:pointer}.protocol-library-tabs button[aria-pressed=true]{background:#193e4b;color:#89efff;border-color:#25d8ff}.protocol-search-label{display:grid;gap:10px;color:#adc3cf;font-size:1rem;max-width:640px}.protocol-search-label input{width:100%;box-sizing:border-box;min-height:50px;border:1px solid #395868;border-radius:14px;background:#0b1720;color:#eefaff;padding:14px;font:inherit}.protocol-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.protocol-library-card{display:flex;flex-direction:column;gap:14px;padding:24px;border:1px solid #2a4351;border-radius:20px;background:linear-gradient(140deg,#102630,#0a121b);text-decoration:none;color:#eefaff;min-width:0}.protocol-library-card:hover{border-color:#27d5ed}.protocol-library-card h2{font-size:1.3rem;margin:0}.protocol-library-card p{font-size:.9rem;color:#a3bdca;line-height:1.7;margin:0}.protocol-card-kind{color:#69dff4;font-size:.75rem;letter-spacing:.08em;font-weight:700}.protocol-library-card>span:last-child{color:#8aeafa;margin-top:auto;font-size:.9rem}.stack-component{display:block;margin:14px 0;padding:18px;border:1px solid #325363;border-radius:12px;color:#86e7f5;text-decoration:none}.protocols-page>.panel{max-width:900px;margin:auto}.protocols-page .protocol-quick-facts{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:800px){.protocol-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.protocol-library-grid{grid-template-columns:1fr}.protocol-library-card{padding:20px}.tool-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.tool-links a{padding:10px 4px;text-align:center;font-size:.8rem}.protocols-page .protocol-quick-facts{grid-template-columns:1fr}.protocols-page>.panel{padding:18px}}

.syringe-choice{border:0;margin:20px 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.syringe-choice legend{font-size:.9rem;color:#b1cbd7;margin-bottom:12px}.syringe-choice button{min-height:44px;border-radius:12px;border:1px solid #3b5563;background:#0b1c27;color:#bdd5df;padding:10px 14px;font:inherit;font-size:.9rem;cursor:pointer}.syringe-choice button[aria-pressed=true]{border-color:#6be5f8;color:#7aeeff;background:#123b46}.syringe-scale{margin:24px 0}.syringe-track{height:32px;border:1px solid #83bfcd;border-radius:5px;background:repeating-linear-gradient(to right,transparent 0,transparent calc(10% - 1px),#7cb4c3 calc(10% - 1px),#7cb4c3 10%);overflow:hidden}.syringe-track>span{display:block;height:100%;background:#20cfe866;border-right:2px solid #6bf1ff;box-sizing:border-box}.syringe-labels{display:flex;justify-content:space-between;color:#b8d7df;font-size:.875rem;padding-top:8px}.syringe-scale small{display:block;margin-top:12px;line-height:1.6;color:#b0c6d3}.reference-notes{margin-top:16px}.reference-notes summary{font-size:.9rem;color:#8adce8;cursor:pointer;min-height:44px;line-height:1.5}.protocol-workspace>details{width:100%;box-sizing:border-box}
@media(max-width:520px){.tool-links{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.tool-links a{flex:1 0 auto;white-space:nowrap;overflow-wrap:normal;padding:10px 12px;font-size:.875rem}}

/* Keep protocol surfaces tied to the catalog peptide color. */
.protocol-library-card{border-top:3px solid var(--peptide-accent);background:linear-gradient(140deg,color-mix(in srgb,var(--peptide-accent) 9%,#101a23),#0a121b)}
.protocol-library-card:hover,.protocol-library-card:focus-visible{border-color:var(--peptide-accent);outline-color:var(--peptide-accent)}
.protocol-library-card .protocol-card-kind,.protocol-library-card>span:last-child{color:var(--peptide-accent)}
.protocols-page>.panel{border-top:3px solid var(--peptide-accent)}
.protocols-page .tool-heading h1{color:var(--peptide-accent)}
.stack-component{color:var(--peptide-accent);border-color:color-mix(in srgb,var(--peptide-accent) 55%,#253746)}

.evidence-spotlight{margin:0 0 30px;padding:24px;border:1px solid #b9903c;border-top:4px solid #ffd36d;border-radius:18px;background:linear-gradient(145deg,#302817,#111923);box-shadow:0 8px 30px #0003}
.evidence-spotlight h2{color:#ffdb87;font-size:1.4rem;line-height:1.3;margin:0 0 24px}.evidence-spotlight .protocol-facts{margin:0}.evidence-spotlight .protocol-facts>div{padding:16px 0;border-color:#675634}.evidence-spotlight p{line-height:1.65;margin:20px 0}.evidence-spotlight .protocol-sources a{display:block;padding:14px 16px;margin-top:10px;color:#ffe2a1;border-color:#75613a;overflow-wrap:anywhere}
.syringe-visual{margin:22px 0;padding:18px 12px;background:#08131c;border:1px solid #354b58;border-radius:16px;min-width:0}.syringe-visual figcaption{display:grid;gap:6px;text-align:center}.syringe-visual figcaption strong{color:var(--syringe-color);font-size:1.6rem}.syringe-visual figcaption span,.syringe-visual p{font-size:.875rem;color:#b6cbd6;line-height:1.5}.syringe-visual svg{display:block;width:100%;height:auto;margin:18px 0 0}.syringe-visual p{margin:8px 4px 0}.tool-links a{display:flex;align-items:center;justify-content:center;gap:7px}.tool-links a.protocols-highlight{color:#ffe3a0;border-color:#e7b64d;background:linear-gradient(145deg,#59421e,#251f12);box-shadow:0 0 14px #eab94920}.tool-new{font-size:12px;font-weight:800;color:#44f3a4;line-height:1.2}.tool-links a.protocols-highlight[aria-current=page]{border-color:#ffdd84;color:#ffe8b8;background:#4a3919}@media(max-width:520px){.evidence-spotlight{padding:20px 16px}.evidence-spotlight h2{font-size:1.25rem}.tool-links a{flex-direction:column;gap:3px}}

.protocol-alphabet{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0}.protocol-alphabet button{min-width:44px;min-height:44px;border:1px solid #44505d;border-radius:10px;background:#0e1a24;color:#d9e6ec;font:inherit;font-weight:650;cursor:pointer}.protocol-alphabet button[aria-pressed=true]{background:#ffd36d;color:#17120a;border-color:#ffd36d}.protocol-alphabet button:focus-visible{outline:2px solid #ffd36d;outline-offset:2px}

/* Clear calculator handoff and blend measurements. */
a.protocol-tool-link{display:flex;align-items:center;justify-content:center;width:100%;min-height:58px;margin:24px 0 4px;padding:16px 20px;box-sizing:border-box;border:1px solid var(--calculator-link-accent,#26d8ff);border-radius:18px;background:var(--calculator-link-accent,#26d8ff);color:#071017!important;text-decoration:none!important;font-size:1.08rem;font-weight:800;box-shadow:0 6px 24px #0005}
a.protocol-tool-link:focus-visible{outline:3px solid white;outline-offset:4px}
.calculator-blend-choice{padding:20px;border:1px solid #64899d;border-radius:22px;background:#151426}.calculator-blend-choice h3{margin:0 0 14px}.calculator-blend-choice p{font-size:.9rem;line-height:1.5;color:#bac8d2;margin:12px 0 0}.calculator-blend-choice .protocol-basis{display:flex;gap:10px}.calculator-blend-choice button{flex:1;min-height:48px}
.calculator-blend-results{margin:24px 0;padding:20px;border:1px solid #65899d;border-radius:20px;background:#101621}.calculator-blend-results h3{margin:0 0 12px}.calculator-blend-results dl{margin:0}.calculator-blend-results dl>div{display:flex;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid #354451}.calculator-blend-results dd{margin:0;text-align:right}.calculator-blend-results dd small{display:block;color:#b4c5d2;font-size:.8rem;margin-top:5px}.calculator-blend-results dl>div:last-child{border:0;color:#a8e1ff}
/* Syringe selection: exact scale diagrams and volume-specific feedback. */
.calculator-mode{display:flex;gap:10px;margin:0 0 22px;flex-wrap:wrap}.calculator-mode button{flex:1;min-width:145px;min-height:50px;border:1px solid #385462;border-radius:14px;background:#0b1821;color:#c4d8e1;font:inherit;font-size:1rem;padding:12px;cursor:pointer}.calculator-mode button[aria-pressed=true]{background:#103541;border-color:#69deef;color:#e6fbff;box-shadow:inset 0 0 0 1px #69deef}.syringe-picker{border:0;padding:0;min-width:0;margin:30px 0 22px}.syringe-picker legend{font-size:1.25rem;font-weight:750;color:#eef8fc;padding:0;margin-bottom:8px}.syringe-help{font-size:.9rem;color:#b5cbd5;line-height:1.6;margin:8px 0 16px}.syringe-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.syringe-card{min-width:0;border:1px solid #355260;background:#0a1822;border-radius:16px;padding:16px 12px;color:#c6dce6;cursor:pointer;text-align:left;font:inherit;transition:border-color .15s,background .15s}.syringe-card:hover{border-color:#78c6d8;background:#0b2330}.syringe-card[aria-pressed=true]{background:#0d303b;border-color:#71e3ed;box-shadow:inset 0 0 0 1px #71e3ed;color:#81edfa}.syringe-card-top{display:flex;align-items:start;justify-content:space-between;gap:5px}.syringe-card strong{font-size:1rem;line-height:1.4;color:#e9f8fc}.syringe-selected{min-width:16px;color:#88f2d9}.syringe-diagram{display:block;width:100%;height:auto;color:var(--syringe-color,#75deee)}.syringe-card .syringe-diagram{margin:12px 0 5px}.syringe-card-caption{display:block;font-size:.875rem;line-height:1.5;color:#bdd0d9}.syringe-custom-card{display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:8px;min-height:155px}.syringe-custom-plus{font-size:2.2rem;font-weight:300;color:#8ac8d5}.syringe-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:18px 0 10px}.syringe-settings label{display:grid;gap:8px;font-size:.9rem;color:#bdd4df}.syringe-settings input{width:100%;min-width:0;box-sizing:border-box;background:#091720;border:1px solid #3c5a6b;border-radius:12px;padding:12px 14px;color:#f1fbff;font:inherit;font-size:1.1rem}.syringe-picker button:focus-visible,.syringe-picker input:focus-visible,.calculator-mode button:focus-visible{outline:3px solid #70e1ed;outline-offset:3px}.water-volume-input h2{font-size:1.25rem;margin:0 0 12px}.water-volume-input>p{font-size:1rem;line-height:1.6;color:#b5cbd5}.water-summary{display:grid;gap:10px;padding:20px;background:#0a2631;border:1px solid #387387;border-radius:16px}.water-summary>strong{font-size:2rem;color:#78e3f0}.water-summary>span{font-size:1.1rem;color:#e7f7ff}.water-summary>p{margin:0;color:#bbd5df;font-size:1rem}.syringe-visual.syringe-attention{border-color:#90753f}.syringe-visual .calc-capacity-warning{margin:12px 0;color:#ffd285}.compound-calculation[hidden]{display:none!important}@media(min-width:760px){.syringe-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:360px){.syringe-card-grid{grid-template-columns:1fr}}

/* Goal-aware references and water concentration comparisons */
.calculator-goals h3{margin:0 0 12px}.goal-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}.goal-options button,.water-comparisons button{border:1px solid #36505c;border-radius:14px;background:#091720;color:#cfe3e9;padding:16px;text-align:left;font:inherit;cursor:pointer}.goal-options button[aria-pressed=true],.water-comparisons button[aria-pressed=true],.water-vial-input button[aria-pressed=true]{background:#123541;border-color:#75dcec;box-shadow:inset 0 0 0 1px #75dcec;color:#eafcff}.goal-options button:focus-visible,.water-comparisons button:focus-visible{outline:3px solid #fff;outline-offset:3px}.evidence-route{padding:14px 16px;background:#11232c;border-radius:12px;color:#99d8e4!important;font-size:.94rem}.goal-prompt,.water-assumption{color:#adbec9;font-size:.9rem;line-height:1.6}.water-vial-input{margin-bottom:28px}.water-comparisons button{display:flex;flex-direction:column;gap:8px;text-align:center}.water-comparisons small{font-weight:400;color:#a3d7df}.water-volume-input{margin-top:28px}.water-concentration{display:flex;flex-direction:column;gap:10px;padding:24px;border:1px solid #2a6272;background:#102732;border-radius:18px;margin-bottom:20px}.water-concentration strong{font-size:1.7rem;color:#72ddea}#calculator-goal-result{padding-top:12px}#calculator-goal-result h3{color:#8adceb}.calculator-goals .reference-notes{margin-top:16px}@media(max-width:380px){.goal-options{grid-template-columns:1fr}}
.reported-practice{margin-top:24px;padding:22px;border:1px solid #6a5a35;border-radius:18px;background:rgba(205,158,63,.06)}.reported-practice h3{color:#ebcb81!important}.reported-practice .protocol-source-note{font-size:.92rem}
/* Compact calculator: one decision at a time, with optional details nearby. */
.calculator-disclosure{border:1px solid #304a57;border-radius:12px;margin:12px 0;background:#09171dcc;overflow:hidden}.calculator-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;color:#cceaf1;font-size:1rem;list-style:none}.calculator-disclosure>summary::-webkit-details-marker{display:none}.calculator-disclosure>summary:after{content:'+';font-size:1.3rem;color:#70ddea}.calculator-disclosure[open]>summary:after{content:'−'}.calculator-disclosure>summary small{margin-left:auto;color:#a8c2ce;font-size:.8rem}.calculator-disclosure>summary strong{margin-left:auto;font-size:.95rem}.calculator-disclosure>summary:focus-visible{outline:3px solid #70e1ed;outline-offset:-3px}.calculator-disclosure[open]>:not(summary){margin:12px 16px}.calculator-disclosure .calculator-goals{border:0;padding:0}.water-vial-input{margin-bottom:24px}.water-vial-input h2,.water-volume-input h2{font-size:1.2rem;margin:0 0 12px}.water-vial-input>p,.water-reference-empty{font-size:.9rem;line-height:1.5;color:#b5cbd5}.water-reference{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:18px;border:1px solid #3b8795;border-radius:14px;background:#0e2c35;margin:12px 0 16px}.water-reference>div{display:grid;gap:4px}.water-reference span{font-size:.85rem;color:#b7d4df}.water-reference strong{font-size:1.8rem;color:#7ee7f1}.water-reference small{color:#a9d9df}.water-reference button{border:1px solid #65cfdd;border-radius:10px;padding:12px;color:#e8fbff;background:#16424e;font:inherit;font-size:.9rem;cursor:pointer}.water-reference p{grid-column:1/-1;margin:0;font-size:.85rem;line-height:1.5;color:#c0d5dd}.water-reference a{grid-column:1/-1;font-size:.85rem;color:#8cdcea}.syringe-picker .syringe-card{padding:12px 10px;border-radius:12px}.syringe-picker .syringe-card .syringe-diagram{max-height:48px;margin:5px 0}.syringe-picker .syringe-card-caption{font-size:.8rem}.syringe-picker .syringe-custom-card{min-height:110px}.syringe-picker .syringe-custom-plus{font-size:1.4rem}.calculator-protocol:has(>.calculator-disclosure){margin-top:16px;padding-top:0;border-top:0}.calculator-protocol>.calculator-disclosure{margin-bottom:0}.tool-page .solution-calculator .calc-result{margin-top:20px}@media(max-width:420px){.water-reference{padding:14px;gap:10px}.water-reference button{max-width:130px}.calculator-disclosure>summary{padding:12px;font-size:.95rem;flex-wrap:wrap}}
.calculator-disclosure>summary:after{position:static;flex:0 0 auto;line-height:1}.calculator-disclosure>summary strong,.calculator-disclosure>summary small{min-width:0}.calculator-disclosure[open]>summary{border-bottom:1px solid #304a57}
.solution-calculator[hidden]{display:none!important}
.calculator-disclosure details:not([open])>summary:after{content:'+'}
/* Beginner journey: essential choices stay visible. */
.unit-primer,.beginner-callout{padding:20px;border:1px solid #315767;border-radius:18px;background:#0c2029;margin:18px 0;color:#d5e7ed}.unit-primer p{margin:8px 0}.unit-primer small,.beginner-number small{color:#b6cad4;line-height:1.55}.beginner-guide-link{display:inline-block;color:#7fe4ed;font-weight:750;margin:12px 0;text-decoration:underline;text-underline-offset:4px}.beginner-calculator .calculator-mode button{display:grid;gap:7px;text-align:left}.beginner-calculator .calculator-mode small{font-size:14px;font-weight:400}.known-options{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 26px}.known-options button{padding:14px 18px;border:1px solid #385766;border-radius:12px;background:#0b1b25;color:#d4e7ec;font-size:16px}.known-options button[aria-pressed=true]{background:#153c47;border:2px solid #79ddea}.beginner-number{display:grid;gap:10px;margin:24px 0}.beginner-number>span{font-weight:750;font-size:18px}.beginner-number b{color:#77e3ef;margin-left:6px}.beginner-number input{width:100%;box-sizing:border-box;padding:16px;border:1px solid #3f6171;border-radius:12px;background:#06121b;color:white;font-size:24px}.beginner-amount{border-top:1px solid #36515c;padding-top:18px}.beginner-calculator .syringe-card{padding:12px;gap:4px;min-height:0}.beginner-calculator .syringe-card-top strong{font-size:17px}.beginner-calculator .syringe-card-caption{font-size:13px;line-height:1.4}.beginner-calculator .syringe-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.beginner-calculator .syringe-custom-plus{font-size:24px}.beginner-calculator .syringe-custom-card{min-height:80px}.beginner-calculator .target-unit-toggle{display:flex;gap:12px}.beginner-calculator .target-unit-toggle button{flex:1;font-size:20px;min-height:70px}.beginner-calculator .target-unit-toggle button[aria-pressed=true]{border:2px solid #7be1eb;background:#143c48}.beginner-calculator .calc-result:empty{display:none}.beginner-protocol{margin-top:24px}.beginner-guide{max-width:900px}.beginner-guide .guide-section{padding:24px;margin:22px 0}.beginner-guide p,.beginner-guide li{font-size:18px;line-height:1.65}.beginner-guide li{margin:12px 0}.beginner-guide h2{font-size:26px}.guide-links{display:flex;flex-wrap:wrap;gap:12px}.guide-links a{padding:12px 16px;background:#102d38;border:1px solid #477483;border-radius:12px;color:#a0eef0}.guide-terms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.guide-terms div{padding:18px;border:1px solid #345965;border-radius:14px}.guide-terms dt{font-size:24px;font-weight:750;color:#80e7ec}.guide-terms dd{margin:8px 0 0;line-height:1.6}.beginner-intro{border:1px solid #426c79;background:#0a232c;padding:22px;border-radius:20px;margin:20px 0}.beginner-intro h2{margin-top:0}.beginner-intro p{line-height:1.6}.plain-profile{margin:20px 0;padding:20px;border-left:3px solid var(--accent,#77dfe5);background:#0b1b23;border-radius:8px}.plain-profile h2{font-size:20px}.plain-profile p{font-size:18px;line-height:1.6}.beginner-calculator [hidden]{display:none!important}@media(max-width:600px){.beginner-calculator .syringe-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.known-options{display:grid}.guide-terms{grid-template-columns:1fr}.beginner-calculator .solution-calculator{padding:20px}.beginner-calculator h2{font-size:23px}.unit-primer{font-size:15px}.beginner-guide .guide-section{padding:20px}.beginner-calculator .calculator-mode button{font-size:17px;padding:15px}}

.beginner-calculator .target-unit-toggle button small{display:block;font-size:14px}.beginner-calculator .target-unit-toggle button{color:#d6edf0;background:#0b1b25;border:1px solid #3b6270;border-radius:12px}.beginner-calculator .syringe-picker{margin-top:26px}.profile-research-intro{margin-bottom:16px}.profile-research-intro summary{cursor:pointer;padding:12px;color:#96dce8}.guide-section a{color:#8ae1eb}.tool-links{flex-wrap:wrap}
/* Guided questions: one active step, spacious references, clear next action. */
.guided-calculator{max-width:820px}.guided-calculator .tool-heading{margin:30px 0 18px}.guided-calculator .tool-heading h1{font-size:clamp(28px,5vw,40px);line-height:1.2}.guided-progress{color:#80dfe8;font-size:14px;font-weight:700;letter-spacing:.04em}.guided-stage{padding:32px;margin:20px 0 28px}.guided-stage h2{font-size:26px;line-height:1.35;margin:0 0 20px}.guided-stage h3{font-size:21px;line-height:1.4;margin:24px 0 16px}.guided-stage p{font-size:17px;line-height:1.65;margin:16px 0 24px}.guided-stage .calculator-profile{padding:0;margin:0;border:0;box-shadow:none;background:none}.guided-summary{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.guided-summary button{font:inherit;font-size:14px;padding:9px 13px;border:1px solid #375563;border-radius:99px;background:#0b1b23;color:#c4e0e7}.guided-summary span{margin-left:8px;color:#79dfe8}.guided-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}.guided-choices button,.guided-actions button{padding:18px;border:1px solid #456673;border-radius:14px;background:#0c202a;color:#e6f9ff;font:inherit;font-size:17px;line-height:1.45;text-align:left;cursor:pointer}.guided-choices button small{display:block;color:#b5d0d9;margin-top:9px;font-size:15px}.guided-choices button[aria-pressed=true]{background:#143d49;border:2px solid #7adfe9}.guided-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px;align-items:center}.guided-actions .guided-next{background:#81e0e8;color:#06212a;font-weight:750;flex:1;text-align:center}.guided-actions button:disabled{opacity:.4;cursor:not-allowed}.guided-text-button{border:0;background:none;color:#8be4eb;padding:12px 0;font:inherit;text-decoration:underline;text-underline-offset:4px}.guided-actions .guided-text-button{width:100%;border:0;background:none;text-align:center;color:#b9d7de;font-size:15px}.guided-source,.guided-reference-amount{padding:20px;border:1px solid #486979;border-radius:14px;background:#0d222b;line-height:1.65}.guided-stage .protocol-quick-facts{display:grid;grid-template-columns:1fr;gap:0}.guided-stage .protocol-quick-facts>div{padding:20px 0}.guided-stage .protocol-quick-facts dt{margin-bottom:9px}.guided-stage .protocol-quick-facts dd{margin:0;line-height:1.6}.guided-stage .goal-options{gap:16px;margin:24px 0}.guided-stage .goal-options button{padding:18px;line-height:1.45}.guided-stage .reported-practice{padding:24px;margin:28px 0}.guided-stage .reference-notes{margin:24px 0}.guided-stage .water-reference{display:grid;grid-template-columns:1fr;gap:16px}.guided-stage .water-reference p{margin:0}.guided-stage .calculator-blend-choice{margin:28px 0}.guided-stage .calc-result{padding:0;border:0;background:none}.guided-stage .guided-validation:empty{display:none}.guided-validation{color:#ffce7c}.guided-stage :focus-visible{outline:3px solid #7be5ed;outline-offset:4px}#guided-question:focus{outline:none}.beginner-protocol,.protocols-page>.panel{padding:30px}.protocols-page .protocol-quick-facts{gap:20px}.protocols-page p,.detail-body p{line-height:1.75}.protocols-page .goal-options{gap:16px;margin:24px 0}.protocols-page .reported-practice{padding:24px}.protocols-page .protocol-quick-facts>div{padding:18px 0}.persistent-back{position:static;display:block;width:fit-content;margin:16px 0;box-shadow:none;min-height:44px}.tool-links{display:flex;gap:12px;flex-wrap:wrap}.tool-links a{flex:1}.guided-calculator .syringe-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.guided-calculator .syringe-card{padding:16px}.guided-calculator .syringe-card-caption{line-height:1.6}.guided-calculator .calculator-limit{padding:24px}
@media(max-width:520px){.guided-stage{padding:22px 18px}.guided-stage h2{font-size:24px}.guided-choices{grid-template-columns:1fr}.guided-stage .reported-practice{padding:18px}.guided-stage .water-reference{padding:20px}.tool-links{display:flex;gap:10px}.tool-links a{padding:12px 10px}.beginner-protocol,.protocols-page>.panel{padding:24px 18px}.bottom-nav .nav-btn{font-size:11px}.guided-calculator .syringe-card-top strong{font-size:16px}.guided-calculator .syringe-card{padding:12px}.guided-stage .protocol-basis{flex-wrap:wrap}}
/* Friendly explanations and private reusable calculations. */
.plain-profile .guide-links{flex-wrap:wrap;margin-top:16px}.plain-profile .guide-links button{background:none;border:0;padding:10px 0;color:var(--accent,#26d8ff);font:inherit;text-align:left;cursor:pointer}.plain-profile p,.beginner-intro p{font-size:1rem;line-height:1.65}.calculation-save{margin-top:24px;padding-top:20px;border-top:1px solid #304858}.calculation-save h3,.saved-calculations h3{font-size:1.15rem}.calculation-save p,.saved-calculations p{line-height:1.6;font-size:1rem}.calculation-save label{display:grid;gap:8px;margin:16px 0}.calculation-save input{width:100%;min-height:44px;padding:12px;border:1px solid #3d5667;border-radius:12px;background:#0a1620;color:#f4fbff;font:inherit}.calculation-save button,.saved-calculation-row button{min-height:44px}.saved-calculations{margin-top:24px;padding:16px}.saved-calculation-row{display:grid;gap:12px;padding:18px 0;border-top:1px solid #304858}.saved-calculation-row small{display:block;margin-top:7px;color:#b5c8d4;font-size:.875rem}.saved-calculation-row>div:last-child{display:flex;gap:12px;flex-wrap:wrap}.saved-calculation-row strong{overflow-wrap:anywhere}

/* Calculator: one working surface, visible inputs, optional reference detail. */
body:has(.guided-calculator)::before{opacity:.045}
.guided-calculator{max-width:760px;padding-bottom:140px}
.guided-calculator>.tool-links,.guided-calculator>.persistent-back{display:none}
.guided-calculator .tool-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0;padding:0}
.guided-calculator .tool-heading h1{font-size:1.5rem;margin:0}
.guided-calculator .beginner-guide-link{font-size:.875rem;margin:0;padding:12px 0}
.guided-progress{margin:12px 0;font-size:.875rem}
.guided-summary{gap:8px;margin:12px 0 20px}
.guided-summary button{padding:8px 12px;min-height:44px;font-size:.875rem}
.guided-stage{padding:28px;margin:0 0 20px;background:#0b141b;border:1px solid #304653;border-radius:22px;box-shadow:0 10px 30px #0002}
.guided-stage h2{font-size:1.4rem;line-height:1.35;margin:0 0 18px}
.guided-stage h3{font-size:1.125rem;line-height:1.4;margin:20px 0 12px}
.guided-stage p{font-size:1rem;line-height:1.55;margin:12px 0 20px}
.guided-stage .quick-context{font-size:.875rem;color:#b9cbd4;line-height:1.5;margin:12px 0 22px}
.guided-stage .quick-fill{display:flex;flex-direction:column;gap:6px;width:100%;min-height:66px;padding:16px 18px;border:1px solid #75dce4;border-radius:14px;background:#163b45;color:#e9fdff;text-align:left;cursor:pointer}
.guided-stage .quick-fill strong{font-size:1.0625rem;line-height:1.4}
.guided-stage .quick-fill span{font-size:.875rem;line-height:1.4;color:#bcdee4}
.guided-stage .quick-fill[aria-pressed=true]{box-shadow:inset 0 0 0 1px #7be1eb;background:#20535c}
.guided-basis{border:0;padding:0;margin:24px 0;min-width:0}
.guided-basis legend{font-size:.875rem;font-weight:650;margin-bottom:12px;color:#c2d5dd}
.protocol-timing{margin:28px 0;padding-top:24px;border-top:1px solid #34505a;min-width:0}
.protocol-timing h3{margin:0 0 10px;font-size:1.2rem;line-height:1.4;color:#9fe8ec}
.protocol-timing .timing-kind{font-size:.875rem;color:#b8c9d2;line-height:1.5;margin:0 0 10px}
.protocol-timing .timing-headline{font-size:1.125rem;font-weight:650;line-height:1.5;color:#edf8fa;margin:0 0 18px}
.protocol-timing dl{display:grid;grid-template-columns:1fr;gap:18px;margin:0}
.protocol-timing dt{font-size:.875rem;color:#9fe8ec;font-weight:650;margin-bottom:6px}
.protocol-timing dd{font-size:1rem;line-height:1.6;margin:0;color:#d1e0e6;overflow-wrap:anywhere}
.protocol-timing .timing-sources{margin:20px 0 0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.protocol-timing .timing-sources summary{font-size:1rem;line-height:1.5;min-height:44px;padding:12px 0;color:#9fe8ec;cursor:pointer}
.protocol-timing .timing-sources .reference-body{padding:4px 0 12px;font-size:.9375rem;line-height:1.6}
.protocol-timing .timing-sources ul{display:grid;gap:16px;padding:0;list-style:none}
.protocol-timing .timing-sources li{display:grid;gap:4px;overflow-wrap:anywhere}
.protocol-timing .timing-sources li span,.protocol-timing small{font-size:.8125rem;color:#afc5d0}
.protocol-timing .timing-sources a{font-size:.9375rem;color:#9fe8ec}
.protocol-timing summary:focus-visible{outline:2px solid #9fe8ec;outline-offset:4px}
.simple-blend-guide{margin:24px 0;padding:20px 0;border-top:1px solid #34505a;min-width:0;color:#c5d9e1}
.simple-blend-guide h3,.guided-stage .simple-blend-guide h3{margin:0 0 12px;font-size:1.125rem;line-height:1.4;color:#9fe8ec}
.simple-blend-guide p,.guided-stage .simple-blend-guide p{font-size:1rem;line-height:1.6;margin:12px 0}
.simple-blend-guide strong{color:#edf8fa}
.simple-blend-guide details{margin:16px 0 0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.simple-blend-guide summary{padding:12px 0;min-height:44px;color:#9fe8ec;font-size:1rem;cursor:pointer;box-sizing:border-box}
.simple-blend-guide table{width:100%;table-layout:fixed;border-collapse:collapse;margin:18px 0;font-size:.875rem;line-height:1.5}
.simple-blend-guide caption{text-align:left;font-size:.875rem;color:#bed1da;margin-bottom:10px}
.simple-blend-guide th,.simple-blend-guide td{text-align:left;padding:12px 6px;border-bottom:1px solid #34505a;overflow-wrap:anywhere}
.simple-blend-guide th:first-child{width:40%;padding-left:0}
.simple-blend-guide tbody td{color:#edf8fa;font-weight:650}
.simple-blend-guide summary:focus-visible{outline:2px solid #9fe8ec;outline-offset:4px}
.guided-basis .protocol-basis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;border:0;background:none}
.guided-basis .protocol-basis button{min-width:0;padding:12px 8px;min-height:54px;font-size:.875rem;line-height:1.35;border-radius:10px}
.guided-stage .blend-details{margin:10px 0 0;border:0;border-radius:0;background:none;box-shadow:none}
.guided-stage .blend-details summary{padding:10px 0;font-size:.875rem;color:#a9cbd6;min-height:44px}
.guided-stage .amount-entry{margin:24px 0 0}
.guided-stage .target-unit-toggle{width:fit-content;gap:8px;padding:0;background:none;border:0;margin:0 0 14px;border-radius:0}
.guided-stage .target-unit-toggle button{flex:0 1 auto;min-height:44px;min-width:70px;padding:10px 18px;font-size:1rem;line-height:1.25}
.guided-stage .beginner-number{margin:16px 0 22px;gap:10px}
.guided-stage .beginner-number>span{font-size:1rem;line-height:1.5}
.guided-stage .beginner-number input{min-height:60px;padding:14px 16px;font-size:1.5rem}
.guided-stage .beginner-number small{font-size:.875rem}
.guided-stage .amount-status{font-size:.875rem;color:#9be2d5;margin:0 0 16px}
.guided-stage .amount-status:empty,.guided-stage .guided-source:empty{display:none}
.guided-stage .compact-reference{border:0;border-top:1px solid #2c404b;border-radius:0;background:none;box-shadow:none;margin:22px 0 0;padding:0}
.guided-stage .compact-reference>summary{padding:16px 0;min-height:48px;font-size:.875rem}
.guided-stage .reference-body{padding:4px 2px 18px;overflow-wrap:anywhere}
.guided-stage .reference-body .reference-notes{padding:0;border:0;background:none;box-shadow:none;border-radius:0;margin:16px 0}
.guided-stage .reference-body .reference-notes>summary{padding:12px 0}
.guided-stage .reference-body .reported-practice{padding:16px;margin:18px 0}
.guided-stage .reference-body .protocol-quick-facts>div{padding:12px 0}
.guided-stage .reference-body p{font-size:.9375rem}
.guided-stage .compact-known{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 24px}
.guided-stage .compact-known button{flex:1;min-width:80px;min-height:44px;padding:10px;font-size:.875rem;line-height:1.4}
.guided-stage .guided-choices{gap:12px;margin:18px 0}
.guided-stage .guided-choices button{padding:14px 16px;font-size:1rem}
.guided-actions{gap:12px;margin-top:24px}
.guided-actions button{padding:14px 16px;font-size:1rem;min-height:50px}
.guided-stage .calculation-save{border:0;border-radius:0;background:none;padding:0;margin:22px 0 28px}
.guided-stage .calculation-save>[data-save-calculation]{width:100%;min-height:52px;font-size:1rem}
.guided-stage .calculation-save>p{font-size:.875rem;margin:10px 0;color:#bdd1da}
.guided-stage .calculation-save>p:empty{display:none}
.guided-stage .save-name{border:0;padding:0;border-radius:0;background:none;box-shadow:none;margin:0}
.guided-stage .save-name summary{padding:10px 0;min-height:44px;font-size:.875rem}
.guided-stage .save-name label{display:grid;gap:8px;font-size:.875rem;padding:8px 0}
.guided-stage .save-name input{width:100%;min-height:48px}
.guided-calculator .calc-reset{margin:8px auto 0}
.guided-stage #guided-question{scroll-margin-top:100px}
@media(max-width:520px){
 .guided-calculator{padding-left:14px;padding-right:14px}
 .guided-stage{padding:22px 18px;border-radius:18px}
 .guided-stage h2{font-size:1.25rem}
 .guided-calculator .tool-heading{margin:12px 0}
 .guided-calculator .tool-heading h1{font-size:1.375rem}
 .guided-basis .protocol-basis{grid-template-columns:repeat(3,minmax(0,1fr))}
 .guided-stage .reference-body .reported-practice{padding:12px}
}

.guided-stage .amount-entry{position:relative;padding-top:2px}
.guided-stage .amount-entry .target-unit-toggle{position:absolute;right:0;top:0;gap:6px}
.guided-stage .amount-entry .target-unit-toggle button{min-width:48px;padding:10px;min-height:44px}
.guided-stage .amount-entry .beginner-number>span{padding-right:120px;min-height:46px;display:flex;align-items:center;line-height:1.35}
.guided-stage .amount-entry .beginner-number b{display:none}
.guided-stage .amount-entry .beginner-number input{font-size:1.5rem}
@media(max-width:360px){.guided-stage .amount-entry .target-unit-toggle{position:static;margin-bottom:12px}.guided-stage .amount-entry .beginner-number>span{padding-right:0;min-height:0}}
/* Shared smart entry: quiet surfaces, generous touch spacing, no nested card maze. */
.guided-calculator .smart-entry{margin:0 0 20px;padding:18px;border:1px solid #315361;border-radius:16px;background:#0b1b24}
.guided-calculator .smart-entry h2{font-size:1.25rem;line-height:1.35;margin:0 0 12px}
.guided-calculator .smart-entry p{font-size:.9375rem;line-height:1.5;margin:0 0 16px;color:#bdd1da}
.guided-calculator .smart-entry details{padding:0;border:0;background:none;box-shadow:none;margin:0}
.guided-calculator .smart-entry summary{padding:0;min-height:44px;display:flex;align-items:center;justify-content:space-between;font-size:1rem;gap:12px}
.guided-calculator .smart-entry summary span{font-size:.7rem;letter-spacing:.08em;padding:4px 8px;background:#22434a;color:#a6f2e8;border-radius:6px}
.guided-calculator .smart-entry details[open] summary{margin-bottom:16px}
.smart-entry form{display:grid;gap:12px}.smart-entry form label{font-size:.875rem;font-weight:650}
.smart-entry textarea{width:100%;resize:vertical;min-height:95px;padding:14px;border:1px solid #426170;border-radius:12px;background:#071219;color:#f0f8fb;font:inherit;font-size:16px;line-height:1.45;box-sizing:border-box}
.smart-entry button{min-height:48px;padding:12px 16px;border:1px solid #69d6db;border-radius:12px;background:#17424c;color:#e9fdff;font:inherit;font-size:1rem;cursor:pointer}
.smart-entry button:disabled{opacity:.6;cursor:wait}.smart-entry small{display:block;color:#9ab4c0;font-size:.75rem;line-height:1.5;margin-top:14px}
.smart-entry .smart-status{margin-top:14px}.smart-entry .smart-status:empty{display:none}
.smart-review{border-top:1px solid #315361;margin-top:18px;padding-top:18px}.smart-review h3{font-size:1rem;margin:0 0 12px}
.smart-review dl{margin:0 0 16px}.smart-review dl>div{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid #243e48}
.smart-review dt{color:#adc6ce;font-size:.875rem}.smart-review dd{margin:0;font-size:.9375rem;text-align:right;font-weight:650}
.smart-review-actions{display:grid;gap:10px}.smart-review-actions button+button{background:none;border-color:#45626c}
.smart-divider{text-align:center;color:#94b0bb;font-size:.8125rem;margin:18px 0}
.guided-stage .protocol-example-choices h3{font-size:1rem;margin:18px 0 8px}.guided-stage .protocol-example-choices .guided-choices{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}
.guided-stage .protocol-example-choices button{flex:1 1 80px;min-height:52px;text-align:center}.smart-source-link{font-size:.8125rem;color:#85d8e6}
.guided-stage .amount-entry .target-unit-toggle{position:static;margin-bottom:14px}.guided-stage .amount-entry .beginner-number>span{padding-right:0;min-height:0}
.guided-stage .quick-saved{margin-top:18px;padding-top:18px;border-top:1px solid #315361}.quick-saved button{min-height:48px;width:100%;margin:6px 0;padding:12px 16px;text-align:left;font:inherit;border-radius:12px;border:1px solid #436572;background:#102c36;color:#e0f5f6}.quick-saved small{display:block;margin-top:4px;color:#9ebecb}
@media(max-width:520px){.guided-calculator .smart-entry{padding:16px}.guided-stage:has(.smart-entry){padding:18px 14px}.guided-calculator .guided-summary{gap:8px}.guided-calculator .guided-summary button{font-size:.8125rem;padding:9px 12px;min-height:42px}}
.smart-format{display:grid;gap:10px;margin-bottom:18px;font-size:.875rem}.smart-format select{font:inherit;font-size:16px;min-height:48px;padding:12px;border:1px solid #54747f;border-radius:10px;background:#071b23;color:#edf9fb;width:100%}
body:has(.guided-calculator){min-width:0}
.guided-calculator .smart-entry summary::after{position:static;margin-left:auto;font-size:1.25rem;line-height:1;flex:0 0 auto}

/* Protocol overview is always visible; supporting reading stays optional. */
body:has(.protocols-page){min-width:0}
.protocol-overview{min-width:0;margin:0 0 20px}
.protocol-overview h2{margin:0 0 8px;font-size:1.35rem;line-height:1.3}
.protocol-overview .protocol-caption{font-size:.8125rem;line-height:1.5;color:#aec4cf;margin:0 0 18px}
.protocols-page .protocol-overview .protocol-quick-facts{gap:0;margin:0 0 16px}
.protocol-overview .protocol-quick-facts>div{padding:14px 0}
.protocol-overview .protocol-quick-facts>div:first-child dd{font-size:1.5rem;color:#a1e8ec}
.protocol-overview .protocol-quick-facts dd{overflow-wrap:anywhere}
.protocol-overview .protocol-context,.protocol-background{border:0;border-top:1px solid #30434d;border-radius:0;background:none;box-shadow:none;padding:0;margin:20px 0 0}
.protocol-overview .protocol-context>summary,.protocol-background>summary{min-height:48px;padding:14px 0;font-size:.9375rem;line-height:1.4}
.protocol-background>.reference-body{padding:16px 0 0}
.protocols-page .protocol-tool-link{margin:20px 0;min-height:52px;padding:16px;text-align:center}
.protocols-page .protocol-background .beginner-profile-intro{margin-top:24px}
.protocols-page .tool-heading{margin-bottom:22px}
@media(max-width:520px){.protocols-page{padding-left:14px;padding-right:14px}.protocols-page>.panel{padding:22px 18px}.protocols-page .tool-heading h1{font-size:2rem}.protocols-page .tool-heading p{font-size:.9375rem;line-height:1.5}.protocol-overview .protocol-quick-facts dt{font-size:.8125rem}.protocol-overview .protocol-quick-facts dd{font-size:1rem}}

/* One reachable Back control; calculator selections align below the app header. */
.detail>.persistent-back,.protocols-page>.persistent-back{position:sticky;top:calc(86px + var(--sa-safe-top,0px));bottom:auto;left:auto;z-index:19;background:#10232e;box-shadow:0 3px 14px #0006}
.guided-stage #guided-question{scroll-margin-top:calc(94px + var(--sa-safe-top,0px))}
.guided-stage .calculator-profile+.quick-saved{margin-bottom:20px}

.interest-feedback{position:relative;z-index:2;grid-column:1/-1;margin:4px 0 0;color:#ffb2bb;font-size:12px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
.library-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 24px;margin:0 0 18px;line-height:1.6;letter-spacing:0}
.library-links a{color:#9edce4;text-underline-offset:4px;overflow-wrap:anywhere}
.home-introduction{width:min(900px,calc(100% - 36px));margin:clamp(32px,8vw,96px) auto;padding-bottom:48px;line-height:1.7}
.home-introduction h1{font:700 clamp(40px,8vw,72px)/1.1 'Space Grotesk',sans-serif;margin:24px 0 12px}
.home-introduction h2{font:700 28px/1.2 'Space Grotesk',sans-serif;margin:0 0 14px}
.home-introduction p{max-width:720px;color:#b9c9d3}
.home-introduction .library-links{justify-content:flex-start;margin-top:28px}
