/* ------------------------------------------------------------------
   PACR — design tokens
   Near-black navy type,one blue accent,hairline grays,a single teal
   for status. No gradients,no glows,no floating objects.
------------------------------------------------------------------- */
:root{
  --ink:#0A1626; --ink-soft:#3B4859; --ink-muted:#657185; --ink-faint:#8B95A6;
  --line:#E4E8EF; --line-strong:#D2D9E4; --line-soft:#EEF1F6;
  --canvas:#fff; --subtle:#FAFBFD; --sunken:#F4F7FA;
  --blue-50:#EAF7FE; --blue-100:#CFEEFB; --blue-200:#A5DFF8;
  --blue-500:#29B6F0; --blue-600:#0AAAEB; --blue-700:#0787BD; --blue-950:#06485F;
  --signal:#0E8F7E; --signal-soft:#E2F4F1; --caution:#9A5B08; --caution-soft:#FDF3E4;
  --sans:"Open Sauce One",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --mono:"Open Sauce One",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --shadow-card:0 1px 2px rgba(10,22,38,.04), 0 12px 28px -18px rgba(10,22,38,.22);
  --shadow-panel:0 1px 2px rgba(10,22,38,.05), 0 24px 48px -28px rgba(10,22,38,.28);
  --shadow-lift:0 1px 2px rgba(10,22,38,.05), 0 32px 64px -32px rgba(10,22,38,.34);
  --shadow-menu:0 24px 60px -24px rgba(10,22,38,.28), 0 2px 6px rgba(10,22,38,.05);
  --hairline:0 0 0 1px rgba(10,22,38,.06);
  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-out:cubic-bezier(.22,1,.36,1);
}
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth;scroll-padding-top:7.5rem;}
body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--sans);
  font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
h1,h2,h3,h4,.ui-h4{margin:0;text-wrap:balance;font-weight:500;}
/* one display weight everywhere: hero,transitions,section and modal headings */
.d-xl,.d-lg,.d-md,.d-sm,.dm__h,.cmp__head h2,.finalcta h2,.mod__head h2{font-weight:400;}
p{margin:0;text-wrap:pretty;}
ul,ol,dl,dd{margin:0;padding:0;list-style:none;}
a{color:inherit;text-decoration:none;}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;}
table{border-collapse:collapse;width:100%;}
:focus-visible{outline:2px solid var(--blue-600);outline-offset:2px;border-radius:3px;}
::selection{background:var(--blue-100);color:var(--blue-950);}
.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;}
/* ---------------- layout ---------------- */
.shell{max-width:1200px;margin:0 auto;padding-left:20px;padding-right:20px;}
@media(min-width:640px){.shell{padding-left:32px;padding-right:32px;}}
.sect{border-top:0;padding:96px 0;}
.sect--flush{border-top:0;}
/* sections share one surface so nothing shows a seam against the transitions */
.sect--subtle{background:transparent;}
.sect--ink{background:var(--blue-950);color:#fff;border-top:0;}
@media(min-width:1024px){.sect{padding:144px 0;}}
.stack-lg{margin-top:56px;}
.rule-top{border-top:1px solid var(--line);padding-top:48px;margin-top:56px;}
/* hairline precision grid,used only behind hero headers */
.grid-motif{position:absolute;inset:0 0 auto 0;height:480px;pointer-events:none;
  background-image:linear-gradient(to right,rgba(10,22,38,.045) 1px,transparent 1px),
    linear-gradient(to bottom,rgba(10,22,38,.045) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(110% 82% at 50% 0%,#000 38%,transparent 78%);
  mask-image:radial-gradient(110% 82% at 50% 0%,#000 38%,transparent 78%);}
/* ---------------- type ---------------- */
.d-xl{font-size:clamp(2.6rem,6.4vw,4.25rem);line-height:1.04;letter-spacing:-.028em;}
.d-lg{font-size:clamp(2.2rem,4.6vw,3.5rem);line-height:1.07;letter-spacing:-.026em;}
.d-md{font-size:clamp(1.9rem,3.6vw,2.75rem);line-height:1.12;letter-spacing:-.022em;}
.d-sm{font-size:clamp(1.6rem,2.6vw,2.125rem);line-height:1.18;letter-spacing:-.02em;}
.h-sec{font-size:1.5rem;line-height:1.3;letter-spacing:-.012em;}
.lead{font-size:1.125rem;line-height:1.7;color:var(--ink-soft);}
@media(min-width:1024px){.lead--hero{font-size:1.25rem;}}
.body{font-size:.9375rem;line-height:1.72;color:var(--ink-soft);}
.small{font-size:.875rem;line-height:1.68;color:var(--ink-soft);}
.micro{font-size:.75rem;line-height:1.62;color:var(--ink-faint);}
.mono{font-family:var(--mono);}
.eyebrow{font-family:var(--mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;
  font-weight:500;color:var(--blue-600);}
.eyebrow--muted{color:var(--ink-muted);}
.eyebrow--invert{color:var(--blue-200);}
.muted{color:var(--ink-muted);}
.faint{color:var(--ink-faint);}
.measure{max-width:44rem;}
.measure-sm{max-width:34rem;}
.head{max-width:48rem;}
.head h2{margin-top:16px;}
.head p{margin-top:20px;}
/* ---------------- buttons ---------------- */
/* one pill size everywhere — no large/small variants */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border-radius:999px;font-weight:500;font-size:.875rem;height:38px;padding:0 18px;
  white-space:nowrap;
  border:1px solid transparent;transition:background-color .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease);}
.btn--sm,.btn--lg{height:38px;padding:0 18px;font-size:.875rem;}
.btn--primary{background:var(--blue-600);color:#fff;box-shadow:0 1px 2px rgba(10,22,38,.16);}
.btn--primary:hover{background:var(--blue-700);}
.btn--secondary{border-color:var(--line-strong);background:#fff;color:var(--ink);}
.btn--secondary:hover{border-color:var(--ink-faint);background:var(--subtle);}
.btn--invert{background:#fff;color:var(--blue-950);}
.btn--invert:hover{background:var(--blue-50);}
.btn--invert-ghost{border-color:rgba(255,255,255,.25);color:#fff;}
.btn--invert-ghost:hover{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.1);}
.btn--block{width:100%;}
.tlink{display:inline-flex;align-items:center;gap:6px;font-size:.9375rem;font-weight:500;color:var(--blue-600);}
.tlink:hover{color:var(--blue-700);}
.tlink svg{width:14px;height:14px;}
/* cinematic workflow transition — scroll-linked product transformation.
   No arrows,links,cards,or duplicated labels. Progress driven by --p (0..1). */
.wtrans{position:relative;padding:56px 0;background:transparent;overflow:hidden;
  --p:0;}
/* soft wash so a transition always blends into the sections either side */
.wtrans::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;
  background:linear-gradient(180deg,transparent,var(--subtle) 28%,var(--subtle) 72%,transparent);}
@media(min-width:768px){.wtrans{padding:72px 0;}}
.wtrans__inner{max-width:60rem;margin:0 auto;padding:0 24px;text-align:center;}
/* mini product-transformation visual */
.wtrans__stage{position:relative;height:96px;margin:0 auto 22px;max-width:340px;}
@media(min-width:768px){.wtrans__stage{height:104px;}}
.wtrans__frag{position:absolute;left:0;right:0;margin:0 auto;border-radius:9px;background:#fff;
  border:1px solid var(--line);box-shadow:var(--shadow-card);will-change:transform,opacity;}
/* the "source/answer" fragment that condenses */
.wtrans__src{top:0;height:26px;max-width:300px;display:flex;align-items:center;gap:8px;padding:0 12px;
  opacity:calc(1 - var(--p)*1.2);
  transform:translateY(calc(var(--p)*-14px)) scale(calc(1 - var(--p)*0.06));}
.wtrans__src .dot{width:7px;height:7px;border-radius:50%;background:var(--v,#5B3BE0);flex:none;}
.wtrans__src .ln{height:5px;border-radius:3px;background:var(--v05,#F1ECFF);flex:1;}
/* three paper rows that separate then align into library rows */
.wtrans__row{height:16px;max-width:300px;display:flex;align-items:center;gap:8px;padding:0 12px;}
.wtrans__row .ic{width:9px;height:9px;border-radius:2px;flex:none;background:var(--blue-100);}
.wtrans__row .ln{height:5px;border-radius:3px;flex:1;background:var(--line-strong);}
.wtrans__row .tag{width:26px;height:8px;border-radius:3px;background:var(--blue-50);flex:none;}
.wtrans__r1{top:30px;opacity:calc(var(--p)*1.6);transform:translateY(calc((1 - var(--p))*10px));}
.wtrans__r2{top:54px;opacity:calc(var(--p)*1.6 - 0.15);transform:translateY(calc((1 - var(--p))*16px));}
.wtrans__r3{top:78px;opacity:calc(var(--p)*1.6 - 0.3);transform:translateY(calc((1 - var(--p))*22px));}
/* as p->1 rows tighten toward a library block */
.wtrans__stage[data-settled="true"] .wtrans__row{background:var(--subtle);border-color:var(--line);}
/* copy */
.wtrans__title{font-size:clamp(1.875rem,4.4vw,3.25rem);font-weight:400;letter-spacing:-.024em;line-height:1.12;
  color:var(--ink);max-width:32ch;margin:0 auto;}
.wtrans__title .hl{color:var(--blue-600);}
/* explicit <br> sets the break; wrapping stays normal so every line centres */
.wtrans__title{text-wrap:balance;}
.wtrans__sub{font-size:1.0625rem;line-height:1.6;color:var(--ink-muted);margin-top:16px;max-width:40rem;margin-left:auto;margin-right:auto;text-wrap:pretty;}
@media(min-width:768px){.wtrans__title{font-size:clamp(2.25rem,4vw,3.25rem);}}
@media(max-width:767px){.wtrans{padding:40px 0;position:relative;}
.wtrans__title{font-size:clamp(1.125rem,4.9vw,1.625rem);}
.wtrans__stage{height:88px;max-width:280px;}}
/* reveal states (IntersectionObserver adds .is-in) */
.wtrans__stage,.wtrans__title,.wtrans__sub{opacity:0;filter:blur(6px);
  transform:translateY(14px) scale(.94);transform-origin:50% 60%;
  transition:opacity .85s var(--ease-out),transform .85s var(--ease-out),filter .85s var(--ease-out);
  will-change:transform,opacity,filter;}
.wtrans.is-in .wtrans__stage{opacity:1;filter:none;transform:none;transition-delay:0s;}
.wtrans.is-in .wtrans__title{opacity:1;filter:none;transition-delay:.1s;
  transform:scale(calc(.94 + (var(--p, 1) * .06)));}
.wtrans.is-in .wtrans__sub{opacity:1;filter:none;transition-delay:.2s;
  transform:scale(calc(.97 + (var(--p, 1) * .03)));}
@media(prefers-reduced-motion:no-preference){.wtrans.is-in .wtrans__title,.wtrans.is-in .wtrans__sub{transition-duration:.85s,1.1s,.85s;}}
/* ambient glow behind the whole statement,not just the highlighted phrase —
   the same violet→blue radial gradient used by the final CTA,sized to the
   full headline so the light sits behind the entire sentence. */
.wtrans__title{position:relative;z-index:0;}
/* keep the highlighted phrase on one line so it never splits */
.wtrans__title .hl{display:inline-block;}
.wtrans__title::before{
  content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:128%;height:210%;z-index:-1;pointer-events:none;
  background:radial-gradient(50% 50% at 50% 50%,rgba(10,170,235,.09),rgba(41,182,240,.05) 55%,transparent 78%);
}
@media(max-width:640px){.wtrans__title::before{width:150%;height:190%;
    background:radial-gradient(50% 50% at 50% 50%,rgba(10,170,235,.07),rgba(41,182,240,.04) 55%,transparent 78%);}}
@media(prefers-reduced-motion:reduce){.wtrans__stage,.wtrans__title,.wtrans__sub{transition:none;opacity:1;transform:none;filter:none;}
.wtrans__frag{transition:none;}}
/* ---------------- header ---------------- */
.announce{border-bottom:1px solid var(--line);background:var(--subtle);}
.announce .shell{display:flex;justify-content:center;gap:12px;padding-top:8px;padding-bottom:8px;}
.announce p{font-size:.8125rem;color:var(--ink-soft);text-align:center;}
/* ---------------- hero ---------------- */
.hero{position:relative;z-index:1;padding:56px 0 60px;}
@media(min-width:1024px){.hero{padding:80px 0 80px;}}
.hero__actions{margin-top:32px;display:flex;flex-direction:column;gap:12px;justify-content:center;}
@media(min-width:640px){.hero__actions{flex-direction:row;align-items:center;}}
/* Centered,prominent workflow map — the first thing users scan. */
.hero__map{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 20px;margin-top:36px;}
.hero__map li{display:flex;align-items:center;gap:10px;}
.hero__map .dash{display:none;width:28px;height:1px;background:var(--line-strong);}
@media(min-width:640px){.hero__map .dash{display:block;}}
.hero__map .dash--soft{background:var(--line-strong);}
.hero__map .idx{font-family:var(--mono);font-size:.6875rem;color:var(--ink-faint);}
.hero__map .name{font-size:1rem;font-weight:600;color:var(--ink);letter-spacing:-.01em;}
.hero__map .name--soft{color:var(--ink);}
.hero__map a{display:flex;align-items:center;gap:10px;transition:opacity .18s var(--ease);}
.hero__map a:hover{opacity:.6;}
/* ---------------- interface mockups ---------------- */
.frame{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden;box-shadow:var(--shadow-panel);}
.frame--hero{border-radius:14px;box-shadow:var(--shadow-lift);}
.frame--flat{box-shadow:var(--shadow-card);}
.frame__bar{display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:8px 12px;border-bottom:1px solid var(--line);background:var(--subtle);}
@media(min-width:640px){.frame__bar{padding:8px 16px;}}
.crumb{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;}
.crumb span{font-size:.75rem;color:var(--ink-muted);white-space:nowrap;}
.crumb span:last-child{color:var(--ink);font-weight:500;}
.crumb i{color:var(--ink-faint);font-style:normal;}
.samplemark{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);
  font-size:.625rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap;}
.samplemark::before{content:"";width:4px;height:4px;border-radius:50%;background:rgba(139,149,166,.7);}
@media(max-width:520px){.samplemark--hide{display:none;}}
.split{display:grid;}
.pane{padding:16px;}
@media(min-width:640px){.pane{padding:20px;}}
.pane--rail{background:var(--subtle);padding:12px;}
.pane--b{border-bottom:1px solid var(--line);}
.mlabel{font-family:var(--mono);font-size:.625rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted);}
.mlabel--blue{color:var(--blue-600);}
.qfield{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:8px;
  background:#fff;padding:10px 14px;}
.qfield svg{width:14px;height:14px;margin-top:3px;flex:none;color:var(--ink-faint);}
.qfield p{font-size:.875rem;line-height:1.35;}
.modes{display:flex;flex-wrap:wrap;gap:6px;}
.mode{display:inline-flex;align-items:center;border:1px solid var(--line);background:#fff;
  border-radius:6px;padding:4px 8px;font-size:11px;font-weight:500;color:var(--ink-muted);}
.mode--on{border-color:var(--blue-200);background:var(--blue-50);color:var(--blue-700);}
.answer p{font-size:.8125rem;line-height:1.7;color:var(--ink-soft);}
.answer p+p{margin-top:12px;}
.cite{display:inline-flex;align-items:center;justify-content:center;min-width:15px;height:15px;
  padding:0 4px;margin-left:2px;border:1px solid var(--blue-200);background:var(--blue-50);
  border-radius:3px;font-family:var(--mono);font-size:9px;font-weight:500;color:var(--blue-700);
  vertical-align:baseline;transform:translateY(-1px);}
.refnum{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;
  border:1px solid var(--line);background:var(--subtle);border-radius:3px;
  font-family:var(--mono);font-size:9px;color:var(--ink-muted);margin-top:2px;flex:none;}
.srclist li{display:flex;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line-soft);}
.srclist p.t{font-size:.75rem;font-weight:500;line-height:1.35;}
.srclist p.m{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:11px;color:var(--ink-muted);margin-top:4px;}
.db{display:inline-flex;border:1px solid var(--line);background:var(--subtle);border-radius:4px;
  padding:1px 6px;font-family:var(--mono);font-size:9px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-muted);}
.citecard{border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px;box-shadow:var(--shadow-card);}
.citecard dl{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;border-top:1px solid var(--line-soft);
  margin-top:10px;padding-top:10px;font-size:10.5px;}
.citecard dt{color:var(--ink-faint);}
.citecard dd{color:var(--ink-soft);margin:0;}
.chips{display:flex;flex-wrap:wrap;gap:6px;}
.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;
  border-radius:6px;padding:4px 8px;font-size:11px;color:var(--ink-soft);}
.chip svg{width:10px;height:10px;color:var(--blue-500);}
.tag{display:inline-flex;border:1px solid var(--line);background:#fff;border-radius:4px;
  padding:1px 6px;font-size:10px;color:var(--ink-muted);}
.status{display:inline-flex;border-radius:4px;border:1px solid var(--line);background:var(--subtle);
  padding:2px 6px;font-size:10px;font-weight:500;color:var(--ink-muted);white-space:nowrap;}
.status--ext{border-color:rgba(14,143,126,.25);background:var(--signal-soft);color:var(--signal);}
.status--read{border-color:var(--blue-200);background:var(--blue-50);color:var(--blue-700);}
.ini{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;
  border:1px solid var(--line);background:var(--sunken);color:var(--ink-soft);font-weight:500;
  width:24px;height:24px;font-size:10px;flex:none;}
.ini--xs{width:20px;height:20px;font-size:9px;}
.ini--md{width:40px;height:40px;font-size:13px;}
.ini--blue{border-color:var(--blue-200);background:var(--blue-50);color:var(--blue-700);}
.stack-ini{display:flex;}
.stack-ini .ini+.ini{margin-left:-6px;}
.dtable th{font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:.08em;
  text-transform:uppercase;color:var(--ink-faint);text-align:left;padding:6px 12px;
  background:var(--subtle);border-bottom:1px solid var(--line);}
.dtable td{padding:10px 12px;vertical-align:top;border-bottom:1px solid var(--line-soft);}
.dtable tr.on td{background:rgba(238,244,255,.5);}
.dtable p.t{font-size:.75rem;font-weight:500;line-height:1.35;}
.dtable p.m{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:10.5px;color:var(--ink-muted);margin-top:4px;}
.folder{display:flex;align-items:center;gap:8px;border-radius:6px;padding:6px;}
.folder.on{background:#fff;box-shadow:var(--hairline);}
.folder .n{flex:1;min-width:0;font-size:11.5px;color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.folder .c{font-family:var(--mono);font-size:10px;color:var(--ink-faint);}
.subfolders{margin:2px 0 0 12px;border-left:1px solid var(--line);padding-left:8px;}
.subfolders li{display:flex;align-items:center;gap:8px;border-radius:6px;padding:4px 6px;}
.subfolders li.on{background:var(--blue-50);}
.subfolders li.on .n{color:var(--blue-700);font-weight:500;}
.subfolders .n{flex:1;font-size:11px;color:var(--ink-muted);}
.mini{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;}
.bars{display:flex;align-items:flex-end;gap:8px;height:96px;}
.bars .col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;}
.bars .bar{width:100%;border-radius:3px;background:rgba(41,182,240,.85);}
.checkbox{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;
  border:1px solid var(--line-strong);border-radius:3px;background:#fff;margin-top:2px;flex:none;}
.checkbox.on{background:var(--signal);border-color:var(--signal);color:#fff;}
.checkbox svg{width:8px;height:8px;}
.timeline{border-left:1px solid var(--line);padding-left:12px;}
.timeline li{position:relative;}
.timeline li::before{content:"";position:absolute;left:-15px;top:6px;width:6px;height:6px;
  border-radius:50%;background:#fff;border:1px solid var(--line-strong);}
/* ---------------- generic blocks ---------------- */
.badge{display:inline-flex;align-items:center;border:1px solid;border-radius:4px;padding:2px 6px;
  font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;}
.badge--beta{border-color:rgba(14,143,126,.25);background:var(--signal-soft);color:var(--signal);}
.badge--soon{border-color:rgba(154,91,8,.2);background:var(--caution-soft);color:var(--caution);}
.grid{display:grid;gap:20px;}
.cells{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;}
.cells>*{background:#fff;}
.cell{padding:24px;height:100%;}
/* Solutions: distinct separate boxes (not a hairline-joined block) */
#solutions .cells{background:transparent;border:0;border-radius:0;overflow:visible;gap:20px;}
#solutions .cell{border:1px solid var(--line);border-radius:16px;background:#fff;padding:28px;box-shadow:var(--shadow-card);}
#solutions .cell:hover{transform:translateY(-2px);box-shadow:var(--shadow-panel);}
@media(min-width:1024px){.cell{padding:28px;}}
.card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:20px;}
.card--subtle{background:var(--subtle);}
/* ============ Stripe-inspired modular card system ============ */
/* Sections become airy containers; content lives in rounded modules. */
.sect--mod{border-top:0;padding:72px 0;}
@media(min-width:1024px){.sect--mod{padding:88px 0;}
@media(min-width:1024px){.sect--mod{padding:112px 0;}}}
.mod{position:relative;border:1px solid var(--line);border-radius:20px;background:#fff;
  padding:24px;box-shadow:var(--shadow-card);}
@media(min-width:640px){.mod{padding:32px;border-radius:20px;}}
@media(min-width:1024px){.mod{padding:44px;}}
/* inline search sits inside a module card — drop its own container padding */
.mod .srch-inline{margin-left:0;margin-right:0;}
.mod .srch-inline > .shell{padding-left:0;padding-right:0;max-width:none;}
/* Discover: heading + search + coverage stack full-width (not a 2-col grid) */
.disc-stack{display:block;}
.disc-stack .head{max-width:42rem;}
.mod .srch-inline{width:100%;}
.mod .srch-inline .srch{margin-left:auto;margin-right:auto;}
/* mobile safety: keep all module content within the card */
.mod,.mod *{min-width:0;}
.mod .pk{max-width:100%;}
@media(max-width:1023px){.mod .pk-crumb{overflow:hidden;}
.mod .pk-crumb span{overflow:hidden;text-overflow:ellipsis;}
.mod .pk-win{max-width:100%;overflow:hidden;}}
.mod--subtle{background:var(--subtle);}
.mod__eyebrow{font-family:var(--mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-600);}
.mod__title{font-size:clamp(1.5rem,3vw,2rem);font-weight:600;letter-spacing:-.02em;line-height:1.12;margin-top:12px;}
.mod__lead{font-size:1.0625rem;line-height:1.55;color:var(--ink-soft);margin-top:12px;max-width:36rem;}
.mod__head{margin-bottom:28px;}
/* module grid for capability cards */
.mgrid{display:grid;gap:20px;grid-template-columns:1fr;}
@media(min-width:768px){.mgrid--2{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(min-width:960px){.mgrid--3{grid-template-columns:repeat(3,minmax(0,1fr));}}
.mgrid--feature{grid-template-columns:1fr;}
@media(min-width:960px){.mgrid--feature{grid-template-columns:1.5fr 1fr;}}
/* expand affordance (diagonal arrows),Stripe-style */
.mod__expand{position:absolute;top:20px;right:20px;width:34px;height:34px;border-radius:9px;
  border:1px solid var(--line-strong);background:#fff;color:var(--ink-muted);display:inline-flex;
  align-items:center;justify-content:center;z-index:2;
  transition:border-color .2s var(--ease),color .2s var(--ease),background-color .2s var(--ease),transform .2s var(--ease);}
.mod__expand:hover{border-color:var(--blue-600);color:var(--blue-700);background:var(--blue-50);transform:translateY(-1px);}
.mod__expand svg{width:16px;height:16px;}
.mod--clickable{cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease);}
.mod--clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow-panel);border-color:var(--line-strong);}
/* soft glow variant,used sparingly inside a card visual */
.mod--glow{overflow:hidden;}
.mod--glow::before{content:"";position:absolute;inset:auto -10% -30% -10%;height:60%;z-index:0;pointer-events:none;
  background:radial-gradient(60% 80% at 50% 100%,rgba(41,182,240,.14),rgba(10,170,235,.06) 45%,transparent 72%);}
.mod--glow>*{position:relative;z-index:1;}
/* clipped product visual inside a card */
.mvis{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--subtle);}
.mvis--pad{padding:16px;}
/* ============ modal for expanded previews ============ */
.modal{position:fixed;inset:0;z-index:120;display:none;align-items:center;justify-content:center;padding:20px;}
.modal[data-open="true"]{display:flex;}
.modal__scrim{position:absolute;inset:0;background:rgba(10,22,38,.5);backdrop-filter:blur(2px);
  opacity:0;transition:opacity .25s var(--ease);}
.modal[data-open="true"] .modal__scrim{opacity:1;}
.modal__panel{position:relative;width:100%;max-width:960px;max-height:88vh;overflow:auto;
  background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-lift);
  padding:28px;opacity:0;transform:translateY(12px) scale(.99);transition:opacity .28s var(--ease),transform .28s var(--ease);}
@media(min-width:768px){.modal__panel{padding:40px;}}
.modal[data-open="true"] .modal__panel{opacity:1;transform:none;}
.modal__close{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:9px;
  border:1px solid var(--line-strong);background:#fff;color:var(--ink-muted);display:inline-flex;
  align-items:center;justify-content:center;transition:border-color .2s,color .2s,background-color .2s;}
.modal__close:hover{border-color:var(--ink-faint);color:var(--ink);background:var(--subtle);}
.modal__close svg{width:18px;height:18px;}
.modal__eyebrow{font-family:var(--mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-600);}
.modal__title{font-size:1.5rem;font-weight:600;letter-spacing:-.02em;margin-top:10px;}
.modal__lead{font-size:1rem;line-height:1.6;color:var(--ink-soft);margin-top:10px;max-width:44rem;}
.modal__body{margin-top:24px;}
/* modal rich layout: Stripe-style — buttons left,checklist right,visual below */
.modal__top{display:grid;gap:24px 40px;grid-template-columns:1fr;align-items:start;}
@media(min-width:820px){.modal__top{grid-template-columns:1.2fr 1fr;}}
.modal__col{display:flex;flex-direction:column;}
.mcheck{display:grid;gap:14px;margin:0;}
.mcheck li{display:flex;gap:11px;align-items:flex-start;font-size:.9375rem;line-height:1.45;color:var(--ink-soft);}
.mcheck li svg{width:14px;height:14px;flex:none;margin-top:3px;color:#fff;background:var(--v,#5B3BE0);border-radius:50%;padding:2px;box-sizing:border-box;}
.mcta{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px;}
.modal__visual{margin-top:32px;border:1px solid var(--line);border-radius:14px;overflow:hidden;}
/* keyword highlight — draws the eye to focus words */
.kw{color:var(--v6,#4B2FC9);font-weight:600;}
.kw--blue{color:var(--blue-700);font-weight:600;}
@media(prefers-reduced-motion:reduce){.modal__scrim,.modal__panel{transition:none;}
.modal__panel{transform:none;}}
/* ============ Stripe-style stats block ============ */
.statband{display:grid;gap:28px 20px;grid-template-columns:repeat(2,minmax(0,1fr));}
@media(min-width:900px){.statband{grid-template-columns:repeat(4,minmax(0,1fr));}}
/* slimmed inline traction line */
.statband--inline{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 32px;grid-template-columns:none;text-align:center;}
.statband--inline .statb{display:inline-flex;align-items:baseline;gap:8px;}
.statband--inline .statb__v{font-size:1.5rem;font-weight:600;letter-spacing:-.02em;color:var(--ink);}
.statband--inline .statb__l{font-size:.9375rem;color:var(--ink-muted);}
.prooflite{margin-top:40px;text-align:center;}
.prooflite__row{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px 40px;}
.prooflite__row li img{max-height:30px;width:auto;opacity:.55;filter:grayscale(1);transition:opacity .25s var(--ease),filter .25s var(--ease);}
.prooflite__row li:hover img{opacity:.9;filter:grayscale(0);}
.prooflite__pub{margin-top:24px;font-size:.8125rem;color:var(--ink-faint);}
.prooflite__pub span{color:var(--ink-muted);font-weight:500;}
.prooflite__pub span:not(:last-child)::after{content:"·";margin:0 8px;color:var(--line-strong);font-weight:400;}
.statb{text-align:left;}
.statb__v{font-size:clamp(2rem,4vw,2.75rem);font-weight:600;letter-spacing:-.03em;color:var(--ink);line-height:1;}
.statb__l{margin-top:10px;font-size:.875rem;line-height:1.45;color:var(--ink-muted);max-width:14rem;}
.dots li{display:flex;gap:10px;font-size:.875rem;color:var(--ink-soft);}
.dots li::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--blue-500);
  margin-top:9px;flex:none;}
.dots li+li{margin-top:8px;}
.dots li.hl{color:var(--ink);font-weight:600;}
.dots li.hl::before{background:var(--v,#5B3BE0);width:5px;height:5px;margin-top:8px;box-shadow:0 0 0 3px var(--v05,#F1ECFF);}
.metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px;}
@media(min-width:1024px){.metrics{grid-template-columns:repeat(4,minmax(0,1fr));}}
.metric{border-left:1px solid var(--line);padding-left:18px;}
.metric .v{display:block;font-size:clamp(1.6rem,2.6vw,2.125rem);font-weight:600;letter-spacing:-.03em;}
.metric .l{display:block;margin-top:8px;font-size:.875rem;font-weight:500;color:var(--ink-soft);}
.metric .d{display:block;margin-top:4px;font-size:.75rem;color:var(--ink-faint);}
.logos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:8px;overflow:hidden;margin-top:20px;}
@media(min-width:640px){.logos{grid-template-columns:repeat(3,minmax(0,1fr));}}
.logos li{background:#fff;min-height:64px;display:flex;align-items:center;justify-content:center;
  padding:16px;text-align:center;}
.logos li span{font-family:var(--mono);font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);}
.logos li.verified span{font-family:var(--sans);font-size:.875rem;font-weight:500;
  letter-spacing:normal;text-transform:none;color:var(--ink-soft);}
/* social proof (item 3): two prominent,centered logo sections */
.proof{text-align:center;}
.proof__eyebrow{justify-content:center;}
.proof__row{margin-top:32px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden;}
@media(min-width:640px){.proof__row{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(min-width:1024px){.proof__row--6{grid-template-columns:repeat(6,minmax(0,1fr));}}
.proof__row li{background:#fff;min-height:96px;display:flex;align-items:center;justify-content:center;padding:20px 24px;}
.proof__row li img{max-height:40px;width:auto;max-width:100%;opacity:.72;filter:grayscale(1);
  transition:opacity .15s,filter .15s;}
.proof__row li:hover img{opacity:1;filter:grayscale(0);}
.proof__note{margin-top:16px;max-width:44rem;margin-left:auto;margin-right:auto;}
@media(max-width:520px){.proof__row li{min-height:80px;padding:16px;}
.proof__row li img{max-height:32px;}}
/* workflow tabs */
.tabs{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;}
@media(min-width:640px){.tabs{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(min-width:1024px){.tabs{grid-template-columns:repeat(4,minmax(0,1fr));}}
.tab{position:relative;background:#fff;text-align:left;padding:18px 20px;transition:background-color .15s;}
.tab:hover{background:var(--subtle);}
.tab[aria-selected="true"]{background:#fff;}
.tab::before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:transparent;}
.tab[aria-selected="true"]::before{background:var(--blue-600);}
.tab .row{display:flex;align-items:baseline;gap:8px;}
.tab .idx{font-family:var(--mono);font-size:.625rem;color:var(--ink-faint);}
.tab .nm{font-size:.9375rem;font-weight:600;color:var(--ink-soft);}
.tab[aria-selected="true"] .nm{color:var(--ink);}
.tab .beyond{margin-left:auto;font-family:var(--mono);font-size:9px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--blue-600);}
.tab .sm{display:block;margin-top:8px;font-size:.75rem;line-height:1.6;color:var(--ink-muted);}
.tabpanel{margin-top:32px;}
.tabpanel[hidden]{display:none;}
/* compact clickable workflow bar (replaces the large platform tab section) */
.wfbar-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--subtle);}
.wfbar-line{text-align:center;font-size:1.0625rem;color:var(--ink-soft);max-width:40rem;margin:0 auto;}
.wfbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 8px;margin-top:24px;}
.wfbar__item{display:inline-flex;align-items:center;gap:9px;padding:10px 18px;border:1px solid var(--line-strong);border-radius:999px;background:#fff;transition:border-color .2s var(--ease),background-color .2s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease);}
.wfbar__item:hover{border-color:var(--blue-600);background:var(--blue-50);transform:translateY(-1px);box-shadow:0 8px 20px -14px rgba(10,170,235,.4);}
.wfbar__idx{font-family:var(--mono);font-size:.625rem;color:var(--ink-faint);}
.wfbar__nm{font-size:.9375rem;font-weight:600;color:var(--ink);letter-spacing:-.01em;}
.wfbar__arrow{display:inline-flex;color:var(--ink-faint);}
.wfbar__arrow svg{width:15px;height:15px;}
@media(max-width:560px){.wfbar__arrow{display:none;}
.wfbar__item{padding:9px 14px;}}
/* pricing */
.pcards{display:grid;gap:20px;}
@media(min-width:1024px){.pcards{grid-template-columns:repeat(3,minmax(0,1fr));}}
.pcard{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);
  border-radius:10px;background:#fff;padding:24px;}
@media(min-width:1024px){.pcard{padding:28px;}}
.pcard--rec{border-color:var(--blue-600);box-shadow:var(--shadow-card);}
.pcard__flag{position:absolute;top:-10px;left:24px;background:var(--blue-600);color:#fff;
  border-radius:4px;padding:2px 8px;font-family:var(--mono);font-size:.625rem;font-weight:500;
  letter-spacing:.08em;text-transform:uppercase;}
.pcard__amt{font-size:clamp(1.6rem,2.6vw,2.125rem);font-weight:600;letter-spacing:-.03em;}
.pcard ul.feat{margin-top:24px;border-top:1px solid var(--line);padding-top:24px;}
.pcard ul.feat li{display:flex;gap:10px;font-size:.875rem;color:var(--ink-soft);}
.pcard ul.feat li+li{margin-top:10px;}
.pcard ul.feat svg{width:14px;height:14px;margin-top:4px;flex:none;color:var(--blue-600);}
.toggle{display:inline-flex;border:1px solid var(--line);background:var(--subtle);border-radius:8px;padding:4px;}
.toggle div{position:relative;}
.toggle input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;}
.toggle label{display:flex;align-items:center;gap:8px;height:36px;padding:0 16px;border-radius:6px;
  font-size:.875rem;font-weight:500;color:var(--ink-muted);cursor:pointer;}
.toggle input:checked+label{background:#fff;color:var(--ink);box-shadow:var(--hairline);}
.toggle input:focus-visible+label{outline:2px solid var(--blue-600);outline-offset:2px;}
.toggle .save{font-family:var(--mono);font-size:.625rem;font-weight:500;letter-spacing:.06em;
  text-transform:uppercase;color:var(--blue-600);}
.region{display:flex;align-items:center;gap:8px;}
.region select{height:36px;border:1px solid var(--line);border-radius:8px;background:#fff;
  padding:0 10px;font:inherit;font-size:.875rem;color:var(--ink);}
.ctable{overflow-x:auto;}
.ctable table{min-width:720px;}
.ctable thead th{text-align:center;padding:16px;vertical-align:bottom;border-bottom:1px solid var(--line-strong);}
.ctable thead th:first-child{text-align:left;width:34%;padding-left:0;font-size:.875rem;font-weight:500;}
.ctable .gname{display:block;font-size:.9375rem;font-weight:600;}
.ctable .gprice{display:block;margin-top:4px;font-size:.8125rem;color:var(--ink-muted);}
.ctable .gsub{display:block;margin-top:2px;font-size:.6875rem;color:var(--ink-faint);}
.ctable .grec{display:inline-flex;margin-top:8px;background:var(--blue-50);color:var(--blue-700);
  border-radius:4px;padding:2px 6px;font-family:var(--mono);font-size:.625rem;font-weight:500;
  letter-spacing:.06em;text-transform:uppercase;}
.ctable .group th{background:var(--subtle);border-bottom:1px solid var(--line);padding:12px 0;text-align:left;}
.ctable .group .gt{display:block;font-family:var(--mono);font-size:.625rem;font-weight:500;
  letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted);}
.ctable .group .gd{display:block;margin-top:4px;font-size:.75rem;font-weight:400;color:var(--ink-faint);}
.ctable tbody td{text-align:center;padding:12px 16px;vertical-align:top;border-bottom:1px solid var(--line-soft);}
.ctable tbody th{text-align:left;font-weight:400;padding:12px 16px 12px 0;vertical-align:top;border-bottom:1px solid var(--line-soft);}
.ctable tbody th .rl{display:block;font-size:.8125rem;font-weight:500;}
.ctable tbody th .rh{display:block;margin-top:2px;font-size:.75rem;color:var(--ink-faint);}
.ctable td.rec{background:rgba(238,244,255,.45);}
.ctable td span.val{font-size:.8125rem;color:var(--ink-soft);}
.ctable svg.yes{width:16px;height:16px;color:var(--blue-600);}
.faq{border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.faq>div+div{border-top:1px solid var(--line);}
.faq summary{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;
  padding:20px 0;cursor:pointer;list-style:none;font-size:.9375rem;font-weight:500;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary svg{width:16px;height:16px;margin-top:4px;flex:none;color:var(--ink-muted);transition:transform .18s;}
.faq details[open] summary svg{transform:rotate(45deg);}
.faq .a{max-width:42rem;padding:0 40px 20px 0;font-size:.875rem;line-height:1.7;color:var(--ink-soft);}
/* footer */
.ftr{border-top:1px solid var(--line);background:var(--subtle);padding:64px 0;}
@media(min-width:1024px){.ftr{padding:80px 0;}}
.ftr__grid{display:grid;gap:48px;}
@media(min-width:1024px){.ftr__grid{grid-template-columns:minmax(0,1fr) minmax(0,2.1fr);}}
.ftr__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 24px;}
@media(min-width:640px){.ftr__cols{grid-template-columns:repeat(4,minmax(0,1fr));}}
.ftr h2{font-family:var(--mono);font-size:.625rem;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;color:var(--ink-muted);}
.ftr__cols ul{margin-top:16px;}
.ftr__cols li+li{margin-top:10px;}
.ftr__cols a{font-size:.875rem;color:var(--ink-soft);}
.ftr__cols a:hover{color:var(--blue-700);}
.ftr__base{margin-top:56px;border-top:1px solid var(--line);padding-top:24px;display:flex;
  flex-direction:column;gap:16px;}
@media(min-width:640px){.ftr__base{flex-direction:row;align-items:center;justify-content:space-between;}}
/* motion */
@keyframes fade{from{opacity:0}to{opacity:1}}
/* Section reveal: blur-to-focus + opacity + rise + subtle scale.
   Restrained by design. Only elements with .reveal opt in (major sections,cards,mock-ups,selected headings) — not every paragraph. Content becomes
   fully sharp before it reaches the reading line. */
.js .reveal{opacity:.82;transform:translateY(20px) scale(.992);filter:blur(5px);
  will-change:opacity,transform,filter;
  transition:opacity .72s var(--ease),transform .72s var(--ease),filter .6s var(--ease);
  transition-delay:var(--d,0ms);}
.js .reveal[data-visible="true"]{opacity:1;transform:none;filter:none;}
/* Gentle stagger hook for grouped cards (set --d per item inline). */
@media(max-width:640px){
  /* Mobile: reduce blur and distance, shorten timing per the brief. */
  .js .reveal{transform:translateY(12px) scale(.996);filter:blur(3px);
    transition:opacity .5s var(--ease),transform .5s var(--ease),filter .45s var(--ease);}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}
.js .reveal,.js .reveal[data-visible="true"]{opacity:1;transform:none;filter:none;transition:none;will-change:auto;}}
/* helpers */
.flex{display:flex;}
.between{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.wrap{flex-wrap:wrap;}
.gap-6{gap:6px}
.gap-8{gap:8px}
.gap-12{gap:12px}
.gap-16{gap:16px}
.gap-24{gap:24px}
.mt-4{margin-top:4px}
.mt-8{margin-top:8px}
.mt-12{margin-top:12px}
.mt-16{margin-top:16px}
.mt-20{margin-top:20px}
.mt-24{margin-top:24px}
.mt-32{margin-top:32px}
.mt-40{margin-top:40px}
.mt-48{margin-top:48px}
.mt-56{margin-top:56px}
.center{text-align:center}
.trunc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.clamp2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.two{display:grid;gap:40px;}
@media(min-width:1024px){.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;}
.two--wide{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);align-items:end;}
.two--l{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);}
.two--demo{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;}}
.three{display:grid;gap:20px;}
@media(min-width:640px){.three{grid-template-columns:repeat(3,minmax(0,1fr));}}
.cols2{display:grid;gap:24px 40px;}
@media(min-width:640px){.cols2{grid-template-columns:repeat(2,minmax(0,1fr));}}
.cols3{display:grid;gap:24px 40px;}
@media(min-width:640px){.cols3{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(min-width:1024px){.cols3{grid-template-columns:repeat(3,minmax(0,1fr));}}
.cells--2{grid-template-columns:1fr;}
@media(min-width:640px){.cells--2{grid-template-columns:repeat(2,minmax(0,1fr));}}
.cells--3{grid-template-columns:1fr;}
@media(min-width:640px){.cells--3{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(min-width:1024px){.cells--3{grid-template-columns:repeat(3,minmax(0,1fr));}}
.cells--4{grid-template-columns:1fr;}
@media(min-width:640px){.cells--4{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(min-width:1024px){.cells--4{grid-template-columns:repeat(4,minmax(0,1fr));}}
/* Stage 4 — restrained interaction polish (house easing,transform/opacity only) */
.btn{transition:background-color .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease),box-shadow .2s var(--ease),transform .2s var(--ease);}
.btn--primary{box-shadow:0 1px 2px rgba(10,22,38,.16),0 10px 22px -14px rgba(10,170,235,.5);}
.btn--primary:hover{box-shadow:0 1px 2px rgba(10,22,38,.16),0 14px 26px -12px rgba(10,170,235,.55);transform:translateY(-1px);}
.btn--primary:active,.btn--secondary:active,.btn--invert:active{transform:translateY(0);}
.btn--secondary:hover{transform:translateY(-1px);box-shadow:0 8px 20px -14px rgba(10,22,38,.3);}
.btn--lg:hover{transform:translateY(-1px);}
/* Feature/solution cards: soft lift + fine border warm on hover. */
.cell{transition:transform .25s var(--ease),box-shadow .25s var(--ease),background-color .25s var(--ease);}
.cell:hover{transform:translateY(-2px);box-shadow:var(--shadow-card);}
/* Product mock-up windows: gentle lift on hover,no distortion. */
.pk-win{transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pk-win--lift:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift),0 40px 80px -40px rgba(10,170,235,.28);}
/* Workflow tab active indicator glides rather than snaps. */
.tab{transition:background-color .2s var(--ease);}
.tab::before{transition:background-color .3s var(--ease),box-shadow .3s var(--ease);}
.tab[aria-selected="true"]::before{box-shadow:0 0 12px -2px rgba(10,170,235,.4);}
.tab .nm{transition:color .2s var(--ease);}
/* Social-proof logos: smooth clarify on hover (grayscale→color already set). */
.proof__row li img{transition:opacity .3s var(--ease),filter .3s var(--ease),transform .3s var(--ease);}
.proof__row li:hover img{transform:translateY(-1px);}
@media(prefers-reduced-motion:reduce){.btn,.cell,.pk-win,.pk-win--lift:hover,.btn--primary:hover,.btn--secondary:hover,.cell:hover,.proof__row li:hover img{transform:none;}}
/* ============ DISCOVER full-screen product modal ============ */
.dm{position:fixed;inset:0;z-index:200;display:none;}
.dm[data-open="true"]{display:block;}
.dm__scrim{position:absolute;inset:0;background:rgba(10,22,38,.5);backdrop-filter:blur(3px);
  opacity:0;transition:opacity .3s var(--ease-out);}
.dm[data-open="true"] .dm__scrim{opacity:1;}
.dm__panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.985);
  width:95vw;max-width:1600px;height:94vh;background:#fff;border:1px solid var(--line);
  border-radius:22px;overflow:hidden;box-shadow:var(--shadow-lift);
  opacity:0;transition:opacity .32s var(--ease-out),transform .32s var(--ease-out);
  display:flex;flex-direction:column;}
.dm[data-open="true"] .dm__panel{opacity:1;transform:translate(-50%,-50%) scale(1);}
.dm__scroll{overflow-y:auto;overflow-x:hidden;flex:1;scroll-behavior:smooth;position:relative;}
.dm__close{position:absolute;top:18px;right:18px;z-index:20;
  width:40px;height:40px;border-radius:11px;border:1px solid var(--line-strong);background:#fff;
  color:var(--ink-muted);display:inline-flex;align-items:center;justify-content:center;
  box-shadow:var(--shadow-card);transition:border-color .2s,color .2s,background-color .2s;}
.dm__close:hover{border-color:var(--ink-faint);color:var(--ink);background:var(--subtle);}
.dm__close svg{width:20px;height:20px;}
.dm__wrap{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,56px);}
/* sticky internal nav */
.dm__nav{position:sticky;top:0;z-index:15;background:rgba(255,255,255,.85);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line-soft);}
.dm__nav-inner{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,56px);
  display:flex;gap:6px;height:52px;align-items:center;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.dm__nav a{font-size:.8125rem;font-weight:500;color:var(--ink-muted);padding:7px 14px;border-radius:999px;
  white-space:nowrap;transition:color .18s,background-color .18s;}
.dm__nav a:hover{color:var(--ink);background:var(--subtle);}
.dm__nav a[aria-current="true"]{color:var(--blue-700);background:var(--blue-50);}
/* section rhythm */
.dm__sect{padding:clamp(40px,5vw,64px) 0;border-top:0;}
.dm__sect:first-child{border-top:0;}
.dm__eyebrow{font-family:var(--mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-600);}
.dm__h{font-size:clamp(1.75rem,3.4vw,2.5rem);font-weight:400;letter-spacing:-.02em;line-height:1.1;color:var(--ink);}
.dm__eyebrow+.dm__h{margin-top:12px;}
.dm__lead{font-size:1.0625rem;line-height:1.6;color:var(--ink-soft);margin-top:14px;max-width:40rem;}
.dm-reveal{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);}
.dm-reveal.in{opacity:1;transform:none;}
/* hero */
.dm__hero{display:grid;grid-template-columns:1fr;gap:36px;align-items:start;padding-top:clamp(40px,6vw,64px);}
@media(min-width:900px){.dm__hero{grid-template-columns:1.62fr 1fr;gap:76px;}}
@media(min-width:1180px){.dm__hero{grid-template-columns:1.7fr 1fr;gap:88px;}}
.dm__hero h1{font-size:clamp(2rem,4.2vw,3.25rem);font-weight:400;letter-spacing:-.024em;line-height:1.05;color:var(--ink);margin-top:12px;}
.dm__hero p.sub{font-size:1.125rem;line-height:1.55;color:var(--ink-soft);margin-top:14px;max-width:34rem;}
.dm__hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;}
.dm__benefits{display:grid;gap:16px;align-content:start;padding-top:4px;}
.dm__benefits li{display:flex;gap:11px;align-items:flex-start;font-size:1rem;line-height:1.4;color:var(--ink-soft);}
.dm__benefits li svg{width:20px;height:20px;flex:none;margin-top:1px;color:var(--blue-600);}
/* generic mockup frame */
.dmk{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;box-shadow:var(--shadow-card);}
.dmk__bar{display:flex;align-items:center;gap:8px;padding:11px 16px;border-bottom:1px solid var(--line-soft);background:var(--subtle);}
.dmk__crumb{display:flex;align-items:center;gap:7px;font-size:.75rem;color:var(--ink-muted);min-width:0;overflow:hidden;}
.dmk__crumb .cur{color:var(--ink);font-weight:500;}
.dmk__crumb svg{width:14px;height:14px;flex:none;color:var(--blue-500);}
.dmk__mark{margin-left:auto;font-family:var(--mono);font-size:.5625rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap;}
.dmk__body{padding:20px;}
/* search experience */
.dm__search-stage{background:linear-gradient(165deg,var(--blue-50),#fff 62%);border:1px solid var(--blue-100);
  border-radius:22px;padding:clamp(20px,3vw,40px);margin-top:26px;}
.dm__modes{display:flex;gap:8px;flex-wrap:wrap;}
.dm__mode{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px;border-radius:11px;
  border:1px solid var(--line-strong);background:#fff;font-size:.9375rem;font-weight:500;color:var(--ink-soft);
  cursor:pointer;transition:border-color .18s,background-color .18s,color .18s;white-space:nowrap;}
.dm__mode[aria-pressed="true"]{border-color:var(--blue-600);background:var(--blue-50);color:var(--blue-700);}
.dm__mode svg{width:16px;height:16px;}
.dm__mode-desc{margin-top:16px;font-size:.9375rem;color:var(--ink-soft);line-height:1.5;max-width:40rem;}
.dm__mode-title{font-size:1.0625rem;font-weight:500;letter-spacing:-.01em;color:var(--ink);margin-top:26px;margin-bottom:16px;}
.dm__mode-title+.dm__mode-desc{margin-top:-8px;margin-bottom:16px;}
.dm__pdf-panel>.dm__mode-title:first-child,.dm__entity>.dm__mode-title:first-child{margin-top:0;}
.dm__mode-desc b{color:var(--ink);font-weight:600;}
.dm__qbox{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line-strong);
  border-radius:13px;padding:14px 16px;margin-top:18px;box-shadow:var(--shadow-card);}
.dm__qbox svg{width:19px;height:19px;color:var(--blue-600);flex:none;}
.dm__qbox .q{font-size:.9375rem;color:var(--ink);line-height:1.4;}
.dm__panes{display:grid;grid-template-columns:1fr;gap:16px;margin-top:0;}
@media(min-width:820px){.dm__panes{grid-template-columns:1.5fr 1fr;}}
.dm__result{padding:18px 20px;}
.dm__result h4,.dm__result .ui-h4{font-size:.9375rem;font-weight:600;color:var(--ink);}
.dm__result .prog{height:5px;border-radius:3px;background:var(--blue-100);overflow:hidden;margin:14px 0;}
.dm__result .prog i{display:block;height:100%;background:var(--blue-600);border-radius:3px;width:0;transition:width .8s var(--ease-out);}
.dm__result.in .prog i{width:100%;}
.dm__answer{font-size:.9375rem;line-height:1.65;color:var(--ink-soft);}
.dm__answer sup{color:var(--blue-600);font-weight:600;cursor:pointer;padding:0 1px;}
.dm__result-meta{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px;}
.dm__pill{font-size:.75rem;padding:5px 11px;border-radius:999px;border:1px solid var(--line);background:var(--subtle);color:var(--ink-muted);}
.dm__pill--b{border-color:var(--blue-100);background:var(--blue-50);color:var(--blue-700);}
.dm__sources h5,.dm__sources .ui-h5{font-size:.6875rem;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);}
.dm__src{display:flex;gap:10px;padding:11px 0;border-bottom:1px solid var(--line-soft);}
.dm__src:last-child{border-bottom:0;}
.dm__src .n{font-family:var(--mono);font-size:.6875rem;color:var(--blue-600);flex:none;margin-top:2px;}
.dm__src .t{font-size:.8125rem;color:var(--ink);line-height:1.35;}
.dm__src .m{font-size:.6875rem;color:var(--ink-faint);margin-top:3px;}
/* entity cards / tabs */
.dm__tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px;}
.dm__tab{height:38px;padding:0 16px;border-radius:999px;border:1px solid var(--line-strong);background:#fff;
  font-size:.875rem;font-weight:500;color:var(--ink-soft);cursor:pointer;transition:border-color .18s,background-color .18s,color .18s;}
.dm__tab[aria-pressed="true"]{border-color:var(--blue-600);background:var(--blue-50);color:var(--blue-700);}
.dm__entity{display:none;margin-top:26px;}
.dm__entity[data-active="true"]{display:block;}
.dm__rows{display:grid;gap:10px;}
.dm__row{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;transition:box-shadow .2s,transform .2s,border-color .2s;}
.dm__row:hover{box-shadow:var(--shadow-card);transform:translateY(-1px);border-color:var(--line-strong);}
.dm__row . av{width:38px;height:38px;border-radius:9px;background:var(--blue-50);border:1px solid var(--blue-100);flex:none;display:flex;align-items:center;justify-content:center;color:var(--blue-600);font-weight:600;font-size:.8125rem;}
.dm__row .main{min-width:0;flex:1;}
.dm__row .main .t{font-size:.9375rem;font-weight:500;color:var(--ink);}
.dm__row .main .s{font-size:.8125rem;color:var(--ink-muted);margin-top:2px;}
.dm__row .meta{display:flex;gap:14px;flex:none;}
.dm__row .meta .kv{text-align:right;}
.dm__row .meta .kv .v{font-size:.9375rem;font-weight:600;color:var(--ink);}
.dm__row .meta .kv .k{font-size:.625rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.05em;}
@media(max-width:640px){.dm__row .meta{display:none;}}
/* filters */
.dm__filter-wrap{display:grid;grid-template-columns:1fr;gap:20px;margin-top:26px;}
@media(min-width:820px){.dm__filter-wrap{grid-template-columns:280px 1fr;}}
.dm__filters{border:1px solid var(--line);border-radius:14px;padding:18px;background:#fff;}
.dm__filters h5,.dm__filters .ui-h5{font-size:.8125rem;font-weight:600;color:var(--ink);margin-bottom:12px;}
.dm__fgroup{padding:12px 0;border-top:1px solid var(--line-soft);}
.dm__fgroup:first-of-type{border-top:0;}
.dm__fgroup .lbl{font-size:.6875rem;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);}
.dm__fopts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.dm__fopt{font-size:.8125rem;padding:6px 11px;border-radius:8px;border:1px solid var(--line-strong);background:#fff;color:var(--ink-soft);cursor:pointer;transition:all .16s;}
.dm__fopt[aria-pressed="true"]{border-color:var(--blue-600);background:var(--blue-600);color:#fff;}
.dm__results-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px;}
.dm__chips{display:flex;flex-wrap:wrap;gap:7px;}
.dm__chip{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;padding:5px 10px;border-radius:999px;background:var(--blue-50);border:1px solid var(--blue-100);color:var(--blue-700);}
.dm__chip button{color:var(--blue-600);line-height:1;font-size:.875rem;}
.dm__count{font-size:.875rem;color:var(--ink-muted);}
.dm__count b{color:var(--ink);font-weight:600;}
/* cited answers */
.dm__cited{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;margin-top:26px;box-shadow:var(--shadow-card);}
.dm__cited-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:16px 22px;border-bottom:1px solid var(--line-soft);background:var(--subtle);}
.dm__style-sel{display:flex;align-items:center;gap:10px;}
.dm__style-sel label{font-size:.8125rem;color:var(--ink-muted);}
.dm__style-sel select{height:34px;border:1px solid var(--line-strong);border-radius:8px;padding:0 10px;font-family:inherit;font-size:.8125rem;color:var(--ink);background:#fff;cursor:pointer;}
.dm__style-note{font-family:var(--mono);font-size:.625rem;letter-spacing:.06em;text-transform:uppercase;color:var(--blue-600);}
.dm__cited-body{padding:26px 24px;}
.dm__cited-body p{font-size:1.0625rem;line-height:1.75;color:var(--ink);}
.dm__cite{color:var(--blue-600);font-weight:600;cursor:pointer;vertical-align:super;font-size:.75em;padding:0 1px;border-radius:3px;transition:background-color .15s;}
.dm__cite:hover,.dm__cite[aria-expanded="true"]{background:var(--blue-100);}
.dm__cited-body p.hl{background:linear-gradient(var(--blue-50),var(--blue-50));border-radius:4px;}
.dm__refs{margin-top:24px;padding-top:18px;border-top:1px solid var(--line-soft);}
.dm__refs h5,.dm__refs .ui-h5{font-size:.6875rem;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:12px;}
.dm__ref{display:flex;gap:10px;font-size:.8125rem;line-height:1.5;color:var(--ink-soft);padding:6px 0;}
.dm__ref .n{font-family:var(--mono);color:var(--blue-600);flex:none;}
/* citation card popover */
.dm__ccard{position:fixed;z-index:30;width:min(360px,90vw);background:#fff;border:1px solid var(--line);
  border-radius:14px;box-shadow:var(--shadow-lift);padding:18px;display:none;}
.dm__ccard[data-open="true"]{display:block;}
.dm__ccard h4,.dm__ccard .ui-h4{font-size:.9375rem;font-weight:600;color:var(--ink);line-height:1.3;}
.dm__ccard .authors{font-size:.8125rem;color:var(--ink-muted);margin-top:6px;}
.dm__ccard .meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;}
.dm__ccard .excerpt{font-size:.8125rem;line-height:1.55;color:var(--ink-soft);margin-top:12px;padding:10px 12px;background:var(--subtle);border-radius:9px;border-left:2px solid var(--blue-300,var(--blue-200));}
.dm__ccard .acts{display:flex;gap:8px;margin-top:14px;}
.dm__ccard .acts a{font-size:.8125rem;font-weight:500;}
/* PDF workspace */
.dm__pdf{display:grid;grid-template-columns:1fr;gap:16px;margin-top:26px;}
@media(min-width:900px){.dm__pdf{grid-template-columns:1.15fr 1fr;}}
.dm__pdf-page{border:1px solid var(--line);border-radius:14px;background:#fff;padding:24px;box-shadow:var(--shadow-card);}
.dm__pdf-page .ttl{font-size:1rem;font-weight:600;color:var(--ink);line-height:1.3;}
.dm__pdf-page .ab{font-size:.75rem;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-top:14px;}
.dm__pdf-page p{font-size:.8125rem;line-height:1.65;color:var(--ink-soft);margin-top:8px;}
.dm__pdf-page mark{background:var(--blue-100);color:var(--ink);border-radius:2px;padding:0 2px;}
.dm__fig{margin-top:14px;height:96px;border:1px dashed var(--line-strong);border-radius:10px;background:var(--subtle);display:flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--ink-faint);}
.dm__pdf-ai{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-card);}
.dm__pdf-tabs{display:flex;gap:4px;padding:8px;border-bottom:1px solid var(--line-soft);background:var(--subtle);}
.dm__pdf-tab{flex:1;height:34px;border-radius:8px;font-size:.8125rem;font-weight:500;color:var(--ink-muted);cursor:pointer;transition:background-color .16s,color .16s;}
.dm__pdf-tab[aria-pressed="true"]{background:#fff;color:var(--blue-700);box-shadow:var(--shadow-card);}
.dm__pdf-panel{padding:18px;display:none;}
.dm__pdf-panel[data-active="true"]+.dm__pdf-panel[data-active="true"]{border-top:1px solid var(--line-soft);padding-top:22px;}
.dm__pdf-panel[data-active="true"]{display:block;}
.dm__prompts{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px;}
.dm__prompt{font-size:.8125rem;padding:7px 12px;border-radius:999px;border:1px solid var(--line-strong);background:#fff;color:var(--ink-soft);cursor:pointer;transition:all .16s;}
.dm__prompt:hover{border-color:var(--blue-600);color:var(--blue-700);background:var(--blue-50);}
.dm__ai-msg{font-size:.875rem;line-height:1.6;color:var(--ink-soft);padding:14px;background:var(--subtle);border-radius:10px;}
.dm__ai-msg .src{display:block;margin-top:10px;font-size:.75rem;color:var(--blue-600);}
.dm__pdf-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px;}
.dm__pdf-act{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;padding:6px 11px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--ink-soft);}
.dm__pdf-act svg{width:13px;height:13px;color:var(--blue-600);}
/* three benefit columns */
.dm__cols{display:grid;grid-template-columns:1fr;gap:24px;margin-top:26px;}
@media(min-width:760px){.dm__cols{grid-template-columns:repeat(3,1fr);}}
.dm__col .ic{width:40px;height:40px;border-radius:10px;border:1px solid var(--blue-100);background:var(--blue-50);display:flex;align-items:center;justify-content:center;color:var(--blue-600);}
.dm__col .ic svg{width:20px;height:20px;}
.dm__col h4,.dm__col .ui-h4{font-size:1.0625rem;font-weight:600;color:var(--ink);margin-top:14px;}
.dm__col p{font-size:.9375rem;line-height:1.55;color:var(--ink-soft);margin-top:8px;}
/* more to discover */
.dm__more{display:grid;grid-template-columns:1fr;gap:24px;margin-top:26px;}
@media(min-width:760px){.dm__more{grid-template-columns:repeat(3,1fr);}}
.dm__mcard{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;cursor:pointer;transition:box-shadow .22s,transform .22s,border-color .22s;text-align:left;display:flex;flex-direction:column;}
.dm__mcard:hover{box-shadow:var(--shadow-panel);transform:translateY(-2px);border-color:var(--line-strong);}
.dm__mcard .prev{height:120px;background:linear-gradient(160deg,var(--blue-50),var(--subtle));border-bottom:1px solid var(--line-soft);display:flex;align-items:center;justify-content:center;}
.dm__mcard .prev svg{width:34px;height:34px;color:var(--blue-400,var(--blue-500));}
.dm__mcard .body{padding:20px;}
.dm__mcard h4,.dm__mcard .ui-h4{font-size:1.0625rem;font-weight:600;color:var(--ink);}
.dm__mcard p{font-size:.875rem;line-height:1.5;color:var(--ink-muted);margin-top:8px;}
@media(prefers-reduced-motion:reduce){.dm__scrim,.dm__panel,.dm-reveal,.dm__result .prog i{transition:none;}
.dm-reveal{opacity:1;transform:none;}}
/* mobile */
@media(max-width:768px){
  .dm__panel{width:100vw;height:100vh;max-width:none;border-radius:0;border:0;top:0;left:0;transform:none;}
  .dm[data-open="true"] .dm__panel{transform:none;}
  .dm__close{top:14px;right:14px;position:absolute;}
  .dm__pdf{grid-template-columns:1fr;}
  .dm__hero{grid-template-columns:1fr;}
}
/* ===== Organize modal: library-specific surfaces =====
   Reuses the .dm full-screen shell + .pk product language. Only the library
   workspace pieces below are new. All state is local/deterministic. */
.om__stage{background:linear-gradient(168deg,var(--blue-50),#fff 62%);border:1px solid var(--blue-100);
  border-radius:20px;padding:clamp(16px,2.4vw,26px);margin-top:26px;}
.om__win{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;box-shadow:var(--shadow-card);}
.om__topnav{display:flex;gap:4px;padding:8px 12px;border-bottom:1px solid var(--line-soft);background:var(--subtle);
  overflow-x:auto;scrollbar-width:none;}
.om__topnav::-webkit-scrollbar{display:none;}
.om__tn{flex:none;border:0;background:none;border-radius:7px;padding:5px 11px;font-family:inherit;
  font-size:11.5px;font-weight:500;color:var(--ink-muted);cursor:pointer;transition:background-color .18s,color .18s;}
.om__tn[aria-pressed="true"]{background:#fff;color:var(--blue-700);box-shadow:var(--shadow-card);}
.om__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;
  padding:14px 16px;border-bottom:1px solid var(--line-soft);}
.om__name{font-size:14px;font-weight:600;color:var(--ink);}
.om__desc{font-size:11.5px;color:var(--ink-muted);margin-top:4px;max-width:34rem;line-height:1.5;}
.om__meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px;}
.om__vis{display:flex;gap:4px;border:1px solid var(--line-strong);border-radius:8px;padding:3px;background:#fff;}
.om__vis button{border:0;background:none;border-radius:6px;padding:4px 9px;font-family:inherit;font-size:10.5px;
  font-weight:500;color:var(--ink-muted);cursor:pointer;transition:background-color .18s,color .18s;white-space:nowrap;}
.om__vis button[aria-pressed="true"]{background:var(--blue-600);color:#fff;}
/* workspace split */
.om__body{display:grid;grid-template-columns:1fr;}
@media(min-width:900px){.om__body{grid-template-columns:210px 1fr;}
.om__body>*+*{border-left:1px solid var(--line-soft);}}
@media(max-width:899px){.om__body>*+*{border-top:1px solid var(--line-soft);}}
.om__side{padding:12px;background:var(--subtle);}
.om__main{padding:12px;min-width:0;}
/* folder tree */
.om__tree{display:grid;gap:1px;}
.om__f{display:flex;align-items:center;gap:7px;border:0;background:none;width:100%;text-align:left;
  border-radius:7px;padding:6px 8px;font-family:inherit;font-size:11.5px;color:var(--ink-soft);cursor:pointer;
  transition:background-color .16s,color .16s;}
.om__f:hover{background:#fff;}
.om__f[aria-pressed="true"]{background:var(--v05);color:var(--v6);font-weight:500;}
.om__f .cnt{margin-left:auto;font-family:var(--mono);font-size:9.5px;color:var(--ink-faint);}
.om__f--sub{padding-left:22px;font-size:11px;}
.om__caret{width:9px;height:9px;flex:none;color:var(--ink-faint);transition:transform .2s var(--ease);}
.om__f[data-open="true"] .om__caret{transform:rotate(90deg);}
/* paper rows */
.om__rows{display:grid;gap:7px;}
.om__paper{border:1px solid var(--line);border-radius:10px;padding:10px 11px;background:#fff;cursor:pointer;
  transition:border-color .18s,box-shadow .18s,transform .18s;}
.om__paper:hover{border-color:var(--line-strong);box-shadow:var(--shadow-card);transform:translateY(-1px);}
.om__paper[aria-pressed="true"]{border-color:var(--v-line);background:var(--v05);}
.om__paper .t{font-size:11.5px;line-height:1.4;color:var(--ink);font-weight:500;}
.om__paper .m{font-size:10px;color:var(--ink-faint);margin-top:3px;}
/* field table */
.om__fields{width:100%;border-collapse:collapse;font-size:11px;}
.om__fields th,.om__fields td{text-align:left;padding:7px 9px;border-bottom:1px solid var(--line-soft);}
.om__fields th{font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);font-weight:500;}
.om__fields td{color:var(--ink-soft);}
.om__fields tr:last-child td{border-bottom:0;}
.om__addfield{border:1px dashed var(--line-strong);background:#fff;border-radius:9px;padding:8px 11px;
  font-family:inherit;font-size:11px;color:var(--ink-muted);cursor:pointer;width:100%;margin-top:8px;
  transition:border-color .18s,color .18s,background-color .18s;}
.om__addfield:hover{border-color:var(--blue-600);color:var(--blue-700);background:var(--blue-50);}
.om__types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;}
@media(min-width:620px){.om__types{grid-template-columns:repeat(4,minmax(0,1fr));}}
.om__type{border:1px solid var(--line-strong);background:#fff;border-radius:10px;padding:10px 12px;text-align:center;
  font-family:inherit;font-size:10.5px;color:var(--ink-soft);cursor:pointer;transition:all .16s;}
.om__type:hover,.om__type[aria-pressed="true"]{border-color:var(--v);background:var(--v05);color:var(--v6);}
/* detail tabs */
.om__tabs{display:flex;gap:3px;border-bottom:1px solid var(--line-soft);padding:0 2px;overflow-x:auto;scrollbar-width:none;}
.om__tabs::-webkit-scrollbar{display:none;}
.om__tab{flex:none;border:0;background:none;padding:8px 11px;font-family:inherit;font-size:11.5px;font-weight:500;
  color:var(--ink-muted);cursor:pointer;position:relative;transition:color .18s;}
.om__tab[aria-pressed="true"]{color:var(--blue-700);}
.om__tab::after{content:"";position:absolute;left:9px;right:9px;bottom:-1px;height:2px;background:var(--blue-600);
  border-radius:2px;transform:scaleX(0);transition:transform .25s var(--ease-out);}
.om__tab[aria-pressed="true"]::after{transform:scaleX(1);}
.om__pane{display:none;padding:12px 2px 0;}
.om__pane[data-active="true"]{display:block;}
.om__item{display:flex;gap:9px;padding:9px 0;border-bottom:1px solid var(--line-soft);}
.om__item:last-child{border-bottom:0;}
.om__item .t{font-size:11.5px;line-height:1.45;color:var(--ink-soft);}
.om__item .t b{color:var(--ink);font-weight:600;}
.om__item .m{font-size:10px;color:var(--ink-faint);margin-top:3px;}
/* AI panel */
.om__ai{border:1px solid var(--v-line);border-radius:14px;background:linear-gradient(168deg,var(--v05),#fff 60%);
  padding:clamp(14px,2vw,20px);margin-top:22px;}
.om__scope{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0;}
.om__sc{border:1px solid var(--line-strong);background:#fff;border-radius:999px;padding:5px 12px;
  font-family:inherit;font-size:11.5px;color:var(--ink-soft);cursor:pointer;transition:all .18s;}
.om__sc[aria-pressed="true"]{border-color:var(--v);background:var(--v);color:#fff;}
.om__prompts{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.om__prompt{border:1px solid var(--line-strong);background:#fff;border-radius:9px;padding:6px 11px;
  font-family:inherit;font-size:11px;color:var(--ink-soft);cursor:pointer;text-align:left;transition:all .18s;}
.om__prompt:hover{border-color:var(--v);color:var(--v6);background:var(--v05);}
.om__answer{margin-top:12px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:14px;}
.om__answer h5,.om__answer .ui-h5{font-family:var(--mono);font-size:9.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--v6);margin-bottom:8px;}
.om__answer p{font-size:11.5px;line-height:1.7;color:var(--ink-soft);}
.om__answer p+p{margin-top:8px;}
.om__answer .grp{margin-top:10px;padding-top:9px;border-top:1px solid var(--line-soft);}
.om__answer .grp .lbl{font-size:10px;font-weight:600;color:var(--ink);}
/* public library */
.om__pub{border:1px solid var(--line);border-radius:14px;background:#fff;padding:clamp(14px,2vw,20px);margin-top:22px;
  box-shadow:var(--shadow-card);}
.om__pubstats{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.om__use{margin-top:12px;border:1px solid var(--blue-100);background:var(--blue-50);border-radius:10px;
  padding:11px 13px;font-size:11.5px;color:var(--blue-950);display:none;}
.om__use[data-show="true"]{display:block;}
.om__ctrl{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;
  border-bottom:1px solid var(--line-soft);font-size:11.5px;color:var(--ink-soft);}
.om__ctrl:last-child{border-bottom:0;}
.om__sw{width:32px;height:18px;border-radius:999px;border:1px solid var(--line-strong);background:var(--sunken);
  position:relative;cursor:pointer;flex:none;transition:background-color .2s,border-color .2s;}
.om__sw::after{content:"";position:absolute;top:1px;left:1px;width:14px;height:14px;border-radius:50%;background:#fff;
  box-shadow:var(--shadow-card);transition:transform .2s var(--ease);}
.om__sw[aria-pressed="true"]{background:var(--blue-600);border-color:var(--blue-600);}
.om__sw[aria-pressed="true"]::after{transform:translateX(14px);}
/* toast */
.om__toast{display:inline-flex;align-items:center;gap:7px;margin-top:10px;font-size:11px;color:#0E8F7E;
  background:#E2F4F1;border:1px solid #BFE7E0;border-radius:8px;padding:6px 11px;
  opacity:0;transform:translateY(-3px);transition:opacity .3s var(--ease),transform .3s var(--ease);}
.om__toast[data-show="true"]{opacity:1;transform:none;}
.om__live{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.om__live span{font-size:10.5px;color:var(--ink-muted);background:var(--subtle);border:1px solid var(--line);
  border-radius:999px;padding:4px 10px;}
@media(prefers-reduced-motion:reduce){.om__tab::after,.om__toast,.om__sw::after,.om__caret{transition:none;}}
@media(max-width:640px){.om__stage{padding:12px;}
.om__side{padding:10px;}
.om__main{padding:10px;}}
/* ===== WRITE modal: manuscript workspace surfaces =====
   Reuses the .dm full-screen shell + .pk product language. Deterministic,frontend-only state. */
.wm__stage{background:linear-gradient(168deg,var(--blue-50),#fff 62%);border:1px solid var(--blue-100);
  border-radius:20px;padding:clamp(14px,2.2vw,24px);margin-top:24px;}
.wm__win{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;box-shadow:var(--shadow-card);}
.wm__bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
  padding:10px 14px;border-bottom:1px solid var(--line-soft);background:var(--subtle);}
.wm__title{font-size:12px;font-weight:600;color:var(--ink);}
.wm__seg{display:flex;gap:3px;border:1px solid var(--line-strong);border-radius:8px;padding:3px;background:#fff;}
.wm__seg button{border:0;background:none;border-radius:6px;padding:4px 10px;font-family:inherit;font-size:10.5px;
  font-weight:500;color:var(--ink-muted);cursor:pointer;transition:background-color .18s,color .18s;white-space:nowrap;}
.wm__seg button[aria-pressed="true"]{background:var(--blue-600);color:#fff;}
/* 3-pane workspace */
.wm__body{display:grid;grid-template-columns:1fr;}
@media(min-width:1000px){.wm__body{grid-template-columns:172px 1fr 232px;}
.wm__body>*+*{border-left:1px solid var(--line-soft);}}
@media(max-width:999px){.wm__body>*+*{border-top:1px solid var(--line-soft);}}
.wm__side{padding:11px;background:var(--subtle);min-width:0;}
.wm__main{padding:14px;min-width:0;}
.wm__right{padding:11px;min-width:0;}
.wm__o{display:flex;align-items:center;gap:6px;border:0;background:none;width:100%;text-align:left;border-radius:6px;
  padding:5px 7px;font-family:inherit;font-size:11px;color:var(--ink-soft);cursor:pointer;transition:background-color .16s,color .16s;}
.wm__o:hover{background:#fff;}
.wm__o[aria-pressed="true"]{background:var(--v05);color:var(--v6);font-weight:500;}
.wm__o .n{font-family:var(--mono);font-size:9px;color:var(--ink-faint);flex:none;}
/* editor */
.wm__doc{font-size:12.5px;line-height:1.85;color:var(--ink-soft);}
.wm__doc h4,.wm__doc .ui-h4{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:8px;}
.wm__doc p+p{margin-top:10px;}
.wm__doc .sel{background:rgba(10,170,235,.10);border-radius:2px;}
.wm__doc .tc{background:#E2F4F1;border-bottom:1px solid #9AD5CB;border-radius:2px;}
.wm__doc .cmt{background:var(--amber-bg);border-bottom:1px dashed rgba(154,91,8,.4);border-radius:2px;cursor:pointer;}
.wm__caret{display:inline-block;width:1.5px;height:13px;background:var(--v);vertical-align:-2px;animation:wmBlink 1.1s steps(1,end) infinite;}
@keyframes wmBlink{50%{opacity:0;}}
.wm__latex{font-family:var(--mono);font-size:11px;line-height:1.75;color:var(--ink-soft);background:var(--sunken);
  border:1px solid var(--line);border-radius:9px;padding:12px;white-space:pre-wrap;overflow-x:auto;}
.wm__eq{border:1px solid var(--line);border-radius:9px;background:var(--subtle);padding:12px;text-align:center;
  font-size:14px;color:var(--ink);margin:10px 0;}
.wm__eq .num{float:right;font-family:var(--mono);font-size:10px;color:var(--ink-faint);}
/* ghost suggestion */
.wm__ghost{color:var(--v6);background:var(--v05);border-radius:3px;padding:0 2px;}
.wm__sugbar{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px;}
.wm__sb{border:1px solid var(--line-strong);background:#fff;border-radius:7px;padding:4px 9px;font-family:inherit;
  font-size:10.5px;color:var(--ink-soft);cursor:pointer;transition:all .16s;}
.wm__sb:hover{border-color:var(--v);color:var(--v6);background:var(--v05);}
.wm__sb--go{border-color:var(--v);background:var(--v);color:#fff;}
.wm__sb--go:hover{background:var(--v6);border-color:var(--v6);color:#fff;}
/* right panel tabs */
.wm__tabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line-soft);margin-bottom:9px;}
.wm__tabs::-webkit-scrollbar{display:none;}
.wm__tab{flex:none;border:0;background:none;padding:6px 8px;font-family:inherit;font-size:10.5px;font-weight:500;
  color:var(--ink-muted);cursor:pointer;position:relative;transition:color .18s;white-space:nowrap;}
.wm__tab[aria-pressed="true"]{color:var(--blue-700);}
.wm__tab::after{content:"";position:absolute;left:6px;right:6px;bottom:-1px;height:2px;background:var(--blue-600);
  border-radius:2px;transform:scaleX(0);transition:transform .25s var(--ease-out);}
.wm__tab[aria-pressed="true"]::after{transform:scaleX(1);}
.wm__pane{display:none;}
.wm__pane[data-active="true"]{display:block;}
.wm__item{padding:8px 0;border-bottom:1px solid var(--line-soft);}
.wm__item:last-child{border-bottom:0;}
.wm__item .t{font-size:10.5px;line-height:1.45;color:var(--ink-soft);}
.wm__item .t b{color:var(--ink);font-weight:600;}
.wm__item .m{font-size:9.5px;color:var(--ink-faint);margin-top:3px;}
/* claim states */
.wm__claim{border:1px solid var(--line);border-radius:11px;padding:12px;background:#fff;margin-top:10px;}
.wm__state{display:inline-flex;align-items:center;gap:5px;border-radius:6px;padding:3px 9px;font-size:10.5px;font-weight:500;}
.wm__state--ok{background:var(--green-bg,#E2F4F1);color:var(--green,#0E8F7E);}
.wm__state--part{background:var(--amber-bg,#FDF3E4);color:var(--amber,#9A5B08);}
.wm__state--no{background:#FDECEC;color:#B3261E;}
.wm__signals{display:grid;gap:5px;margin-top:10px;}
.wm__sig{display:flex;align-items:center;gap:7px;font-size:10.5px;color:var(--ink-soft);}
.wm__sig i{width:13px;height:13px;border-radius:50%;flex:none;display:inline-flex;align-items:center;justify-content:center;
  font-size:8px;font-style:normal;font-weight:700;color:#fff;}
.wm__sig i[data-v="y"]{background:var(--green,#0E8F7E);}
.wm__sig i[data-v="n"]{background:var(--amber,#9A5B08);}
/* diff */
.wm__diff{display:grid;gap:10px;grid-template-columns:1fr;margin-top:12px;}
@media(min-width:760px){.wm__diff{grid-template-columns:1fr 1fr;}}
.wm__side-box{border:1px solid var(--line);border-radius:11px;padding:12px;background:#fff;}
.wm__side-box .lbl{font-family:var(--mono);font-size:9.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-faint);}
.wm__side-box p{font-size:11.5px;line-height:1.65;color:var(--ink-soft);margin-top:7px;}
.wm__del{background:#FDECEC;color:#B3261E;text-decoration:line-through;border-radius:2px;}
.wm__ins{background:var(--green-bg,#E2F4F1);color:var(--green,#0E8F7E);border-radius:2px;}
/* contribution map */
.wm__contrib{display:grid;gap:6px;margin-top:10px;}
.wm__cbar{display:flex;align-items:center;gap:9px;font-size:10.5px;color:var(--ink-soft);}
.wm__cbar .sw{width:11px;height:11px;border-radius:3px;flex:none;}
.wm__mapline{display:flex;height:9px;border-radius:5px;overflow:hidden;border:1px solid var(--line);margin-top:9px;}
.wm__mapline i{display:block;height:100%;}
/* welcome back */
.wm__wb{border:1px solid var(--blue-100);background:linear-gradient(168deg,var(--blue-50),#fff 65%);
  border-radius:14px;padding:clamp(14px,2vw,20px);margin-top:20px;}
.wm__wb h4,.wm__wb .ui-h4{font-size:14px;font-weight:600;color:var(--ink);}
.wm__wb p{font-size:11.5px;line-height:1.65;color:var(--ink-soft);margin-top:8px;}
/* review panel */
.wm__rev{display:grid;gap:10px;grid-template-columns:1fr;margin-top:12px;}
@media(min-width:760px){.wm__rev{grid-template-columns:1fr 1fr;}}
.wm__revcard{border:1px solid var(--line);border-radius:11px;padding:12px;background:#fff;}
.wm__revcard h5,.wm__revcard .ui-h5{font-size:11px;font-weight:600;color:var(--ink);margin-bottom:8px;}
.wm__revrow{display:flex;align-items:flex-start;gap:7px;padding:5px 0;font-size:10.5px;color:var(--ink-soft);line-height:1.45;}
.wm__dot{width:6px;height:6px;border-radius:50%;flex:none;margin-top:5px;}
/* checklist */
.wm__check{display:grid;gap:6px;margin-top:10px;}
.wm__crow{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--ink-soft);padding:6px 0;border-bottom:1px solid var(--line-soft);}
.wm__crow:last-child{border-bottom:0;}
.wm__crow i{width:15px;height:15px;border-radius:4px;background:var(--green-bg,#E2F4F1);color:var(--green,#0E8F7E);
  display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-style:normal;font-weight:700;flex:none;}
/* generic bits */
.wm__prompt{border:1px solid var(--line-strong);background:#fff;border-radius:9px;padding:6px 11px;font-family:inherit;
  font-size:11px;color:var(--ink-soft);cursor:pointer;text-align:left;transition:all .18s;}
.wm__prompt:hover{border-color:var(--v);color:var(--v6);background:var(--v05);}
.wm__prompts{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.wm__out{margin-top:11px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:13px;}
.wm__out h5,.wm__out .ui-h5{font-family:var(--mono);font-size:9.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--v6);margin-bottom:8px;}
.wm__out p{font-size:11.5px;line-height:1.7;color:var(--ink-soft);}
.wm__out p+p{margin-top:8px;}
.wm__toast{display:inline-flex;align-items:center;gap:7px;margin-top:10px;font-size:11px;color:#0E8F7E;
  background:#E2F4F1;border:1px solid #BFE7E0;border-radius:8px;padding:6px 11px;
  opacity:0;transform:translateY(-3px);transition:opacity .3s var(--ease),transform .3s var(--ease);}
.wm__toast[data-show="true"]{opacity:1;transform:none;}
.wm__live{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.wm__live span{font-size:10.5px;color:var(--ink-muted);background:var(--subtle);border:1px solid var(--line);
  border-radius:999px;padding:4px 10px;}
.wm__note{font-size:10.5px;line-height:1.55;color:var(--ink-faint);margin-top:10px;}
/* preview */
.wm__pv{border:1px solid var(--line);border-radius:11px;background:#fff;padding:16px;box-shadow:var(--shadow-card);}
.wm__pv .ttl{font-size:12px;font-weight:600;color:var(--ink);text-align:center;}
.wm__pv .au{font-size:10px;color:var(--ink-muted);text-align:center;margin-top:4px;}
.wm__pv .bd{font-size:10px;line-height:1.7;color:var(--ink-soft);margin-top:11px;column-count:2;column-gap:14px;}
@media(max-width:640px){.wm__pv .bd{column-count:1;}}
@media(prefers-reduced-motion:reduce){.wm__caret{animation:none;}
.wm__tab::after,.wm__toast{transition:none;}}
@media(max-width:640px){.wm__stage{padding:11px;}
.wm__side,.wm__right{padding:10px;}
.wm__main{padding:11px;}}
/* ===== PACR hero: research canvas + connected pathway ===== */
/* the hero surface moved to .topwrap so the science wall sits above it */
.topwrap{background:linear-gradient(180deg,#fff 0%,var(--subtle) 42%,#fff 72%);overflow:hidden;}
.hero{position:relative;padding:clamp(56px,7vw,88px) 0 clamp(48px,6vw,72px);
  background:transparent;}
/* research canvas: fine grid + citation nodes + document outlines + radial glow */
.hcanvas{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
.hcanvas__grid{position:absolute;inset:-2px;
  background-image:linear-gradient(var(--line-soft) 1px,transparent 1px),
                   linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);
  background-size:56px 56px;background-position:50% 0;opacity:.5;
  -webkit-mask-image:radial-gradient(72% 62% at 50% 42%,#000 0%,rgba(0,0,0,.55) 55%,transparent 82%);
          mask-image:radial-gradient(72% 62% at 50% 42%,#000 0%,rgba(0,0,0,.55) 55%,transparent 82%);}
.hcanvas__glow{position:absolute;left:50%;top:34%;transform:translate(-50%,-50%);
  width:min(1040px,110vw);height:620px;
  background:radial-gradient(50% 50% at 50% 50%,rgba(41,182,240,.10),rgba(10,170,235,.05) 52%,transparent 78%);}
@media(max-width:700px){.hcanvas__grid{background-size:40px 40px;}}
/* hero content */
.hero__inner{position:relative;z-index:1;}
.hero__eyebrow{font-family:var(--mono);font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--blue-600);}
.hero h1{font-size:clamp(2.25rem,5.4vw,4rem);font-weight:400;letter-spacing:-.022em;line-height:1.04;
  color:var(--ink);margin-top:18px;text-wrap:balance;}
.hero h1 .l2{display:block;}
.hero__sub{font-size:clamp(1rem,1.5vw,1.1875rem);line-height:1.6;color:var(--ink-muted);
  max-width:40rem;margin:28px auto 0;text-wrap:pretty;}
.hero__actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px;}
.hero .btn--primary{box-shadow:0 1px 2px rgba(10,22,38,.10),0 8px 20px -10px rgba(10,170,235,.5);}
/* ===== research pathway ===== */
.rpath{position:relative;z-index:1;margin:clamp(40px,5vw,60px) auto 0;max-width:920px;padding:0 12px;}
.rpath__track{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:0;}
.rpath__line{position:absolute;left:10%;right:10%;top:19px;height:1px;background:var(--line-strong);}
.rpath__line i{position:absolute;left:0;top:0;height:100%;width:0;background:linear-gradient(90deg,var(--blue-500),var(--blue-600));
  transition:width .9s var(--ease-out);}
.rstage{position:relative;display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center;
  border:0;background:none;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer;-webkit-appearance:none;appearance:none;}
.rstage:focus-visible{outline:2px solid var(--blue-600);outline-offset:6px;border-radius:10px;}
.rstage__node{width:38px;height:38px;border-radius:50%;border:1px solid var(--line-strong);background:#fff;
  display:flex;align-items:center;justify-content:center;color:var(--ink-faint);position:relative;z-index:1;
  transition:border-color .5s var(--ease),color .5s var(--ease),box-shadow .5s var(--ease),transform .5s var(--ease);}
.rstage__node svg{width:16px;height:16px;}
.rstage__n{font-family:var(--mono);font-size:.5625rem;letter-spacing:.1em;color:var(--ink-faint);
  transition:color .5s var(--ease);}
.rstage__nm{font-size:.8125rem;font-weight:500;color:var(--ink-muted);transition:color .5s var(--ease);}
.rstage[data-on="true"] .rstage__node{border-color:var(--blue-600);color:var(--blue-600);
  box-shadow:0 0 0 4px rgba(41,182,240,.10);transform:translateY(-1px);}
.rstage[data-on="true"] .rstage__nm{color:var(--ink);}
.rstage[data-on="true"] .rstage__n{color:var(--blue-600);}
.rstage[data-done="true"] .rstage__node{border-color:var(--blue-200);color:var(--blue-500);}
@media(max-width:640px){.rpath__track{grid-template-columns:repeat(5,1fr);}
.rstage__nm{font-size:.625rem;}
.rstage__node{width:32px;height:32px;}
.rstage__node svg{width:14px;height:14px;}
.rpath__line{top:16px;}}
@media(prefers-reduced-motion:reduce){.rpath__line i,.rstage__node,.rstage__nm,.rstage__n{transition:none;}}
/* ===== three-panel research canvas preview ===== */
.hwork{position:relative;z-index:1;margin-top:clamp(24px,3vw,36px);}
.hwork__grid{display:grid;gap:14px;grid-template-columns:1fr;align-items:start;}
@media(min-width:960px){.hwork__grid{grid-template-columns:1.06fr 0.94fr 1.06fr;gap:16px;}
.hwork__p--mid{margin-top:30px;z-index:2;}
.hwork__p--l{z-index:1;}
.hwork__p--r{z-index:1;}}
.hwork__p{border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden;
  box-shadow:0 1px 2px rgba(10,22,38,.05),0 20px 44px -26px rgba(10,22,38,.30);}
.hwork__bar{display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:9px 13px;border-bottom:1px solid var(--line-soft);background:var(--subtle);}
.hwork__lab{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.5625rem;
  letter-spacing:.1em;text-transform:uppercase;color:var(--blue-700);}
.hwork__lab svg{width:11px;height:11px;}
.hwork__step{font-family:var(--mono);font-size:.5625rem;color:var(--ink-faint);}
.hwork__b{padding:14px;}
.hq{display:flex;gap:8px;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:9px 11px;background:#fff;}
.hq svg{width:13px;height:13px;color:var(--blue-600);flex:none;margin-top:2px;}
.hq p{font-size:11.5px;line-height:1.45;color:var(--ink);}
.ha{font-size:11.5px;line-height:1.7;color:var(--ink-soft);margin-top:10px;}
.ha .c{display:inline-block;min-width:14px;height:14px;padding:0 4px;border-radius:4px;background:var(--blue-50);
  border:1px solid var(--blue-100);color:var(--blue-700);font-family:var(--mono);font-size:8.5px;
  line-height:13px;text-align:center;vertical-align:1px;margin:0 1px;}
.hrow{display:flex;gap:9px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--line-soft);}
.hrow:last-child{border-bottom:0;}
.hrow__i{width:22px;height:22px;border-radius:6px;background:var(--blue-50);border:1px solid var(--blue-100);
  flex:none;display:flex;align-items:center;justify-content:center;color:var(--blue-600);}
.hrow__i svg{width:11px;height:11px;}
.hrow .t{font-size:11px;line-height:1.4;color:var(--ink);}
.hrow .m{font-size:9.5px;color:var(--ink-faint);margin-top:2px;}
.hnote{margin-top:9px;border-left:2px solid var(--blue-200);background:var(--blue-50);border-radius:0 8px 8px 0;
  padding:8px 10px;font-size:10.5px;line-height:1.5;color:var(--ink-soft);}
.hcmt{display:flex;gap:8px;align-items:flex-start;margin-top:9px;}
.hcmt__av{width:20px;height:20px;border-radius:50%;background:var(--blue-600);color:#fff;flex:none;
  display:flex;align-items:center;justify-content:center;font-size:8.5px;font-weight:600;}
.hcmt p{font-size:10.5px;line-height:1.45;color:var(--ink-soft);}
.hcmt b{color:var(--ink);font-weight:600;}
.hms{font-size:11px;line-height:1.75;color:var(--ink-soft);}
.hms h5,.hms .ui-h5{font-size:11.5px;font-weight:600;color:var(--ink);margin-bottom:6px;}
.hms mark{background:var(--blue-50);color:var(--ink);border-radius:2px;padding:0 2px;}
/* connective flow line between panels (desktop only) */
.hwork__link{display:none;}
@media(min-width:960px){.hwork__link{display:block;position:absolute;top:50%;width:34px;height:1px;background:var(--blue-200);z-index:3;}
.hwork__link--a{left:calc(35.3% - 8px);width:16px;}
.hwork__link--b{left:calc(64.7% - 8px);width:16px;}
.hwork__link::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
    width:5px;height:5px;border-radius:50%;background:var(--blue-500);}}
/* ===== traction ===== */
.trac{padding:clamp(64px,8vw,104px) 0 clamp(56px,7vw,88px);background:transparent;border-top:0;position:relative;overflow:hidden;}
/* same soft blue-violet glow used in the workflow transitions */
.trac::before{content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);
  width:min(1100px,110vw);height:340px;pointer-events:none;z-index:0;
  background:radial-gradient(50% 50% at 50% 50%,rgba(10,170,235,.07),rgba(41,182,240,.04) 55%,transparent 78%);}
.trac>*{position:relative;z-index:1;}
.trac__logos{margin-top:0;text-align:center;}
.trac__eb{font-family:var(--mono);font-size:.625rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);}
.trac__row{margin-top:18px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px 44px;}
.trac__row img{max-height:28px;width:auto;opacity:.45;filter:grayscale(1);transition:opacity .25s var(--ease);}
.trac__row li:hover img{opacity:.7;}
.trac__note{margin-top:24px;font-size:.8125rem;line-height:1.6;color:var(--ink-faint);max-width:34rem;
  margin-left:auto;margin-right:auto;}
/* ===== COLLABORATION modal: research-native collaboration surfaces ===== */
@keyframes cmIn{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
.cm__stage{background:linear-gradient(168deg,var(--blue-50),#fff 62%);border:1px solid var(--blue-100);
  border-radius:20px;padding:clamp(14px,2.2vw,24px);margin-top:22px;}
.cm__win{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;box-shadow:var(--shadow-card);}
.cm__bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
  padding:11px 15px;border-bottom:1px solid var(--line-soft);background:var(--subtle);}
.cm__name{font-size:12.5px;font-weight:600;color:var(--ink);}
.cm__sub{font-size:10px;color:var(--ink-faint);margin-top:2px;}
/* presence avatars */
.cm__people{display:flex;align-items:center;gap:8px;}
.cm__avs{display:flex;}
.cm__av{width:24px;height:24px;border-radius:50%;border:2px solid #fff;display:flex;align-items:center;
  justify-content:center;font-size:9px;font-weight:600;color:#fff;margin-left:-7px;position:relative;
  opacity:0;transform:scale(.85);animation:cmJoin .5s var(--ease-out) forwards;}
.cm__av:first-child{margin-left:0;}
.cm__av--s{background:#0AAAEB;}
.cm__av--m{background:#0E8F7E;}
.cm__av--d{background:#5B3BE0;}
.cm__av[data-live="true"]::after{content:"";position:absolute;right:-1px;bottom:-1px;width:7px;height:7px;
  border-radius:50%;background:#0E8F7E;border:1.5px solid #fff;}
@keyframes cmJoin{to{opacity:1;transform:none;}}
.cm__invite{height:26px;padding:0 11px;border-radius:7px;border:1px solid var(--blue-600);background:var(--blue-600);
  color:#fff;font-family:inherit;font-size:10.5px;font-weight:500;cursor:default;}
/* library split */
.cm__split{display:grid;grid-template-columns:1fr;}
@media(min-width:880px){.cm__split{grid-template-columns:1.25fr 1fr;}
.cm__split>*+*{border-left:1px solid var(--line-soft);}}
@media(max-width:879px){.cm__split>*+*{border-top:1px solid var(--line-soft);}}
.cm__col{padding:13px;min-width:0;}
/* paper rows */
.cm__paper{border:1px solid var(--line);border-radius:10px;padding:10px 11px;margin-bottom:7px;background:#fff;
  position:relative;transition:border-color .2s var(--ease),background-color .2s var(--ease);}
.cm__paper:last-child{margin-bottom:0;}
.cm__paper[data-sel="true"]{border-color:var(--blue-200);background:var(--blue-50);}
.cm__paper .t{font-size:11.5px;line-height:1.4;color:var(--ink);font-weight:500;}
.cm__paper .m{font-size:9.5px;color:var(--ink-faint);margin-top:3px;}
/* live cursor */
.cm__cursor{position:absolute;pointer-events:none;display:flex;align-items:flex-start;gap:3px;
  animation:cmDrift 6s ease-in-out infinite;}
.cm__cursor svg{width:11px;height:11px;}
.cm__cursor span{font-size:8px;font-weight:600;color:#fff;border-radius:3px;padding:1px 4px;white-space:nowrap;}
.cm__cursor--s{top:12px;right:16px;color:#0AAAEB;}
.cm__cursor--s span{background:#0AAAEB;}
.cm__cursor--d{bottom:10px;right:38px;color:#5B3BE0;animation-delay:1.6s;}
.cm__cursor--d span{background:#5B3BE0;}
@keyframes cmDrift{0%,100%{transform:translate(0,0);}50%{transform:translate(-7px,5px);}}
/* activity items inside context */
.cm__ctx{border-left:2px solid var(--blue-200);background:var(--blue-50);border-radius:0 8px 8px 0;
  padding:9px 11px;margin-top:8px;}
.cm__ctx .who{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--ink-muted);}
.cm__ctx .who b{color:var(--ink);font-weight:600;}
.cm__ctx p{font-size:11px;line-height:1.5;color:var(--ink-soft);margin-top:5px;}
.cm__ctx--task{border-left-color:#9AD5CB;background:#E2F4F1;}
.cm__ctx--disc{border-left-color:#E6E0FA;background:#F1ECFF;}
.cm__dot{width:5px;height:5px;border-radius:50%;flex:none;}
/* task state */
.cm__task{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--ink-soft);}
.cm__chk{width:15px;height:15px;border-radius:4px;border:1px solid var(--line-strong);background:#fff;flex:none;
  display:flex;align-items:center;justify-content:center;transition:background-color .3s var(--ease),border-color .3s var(--ease);}
.cm__chk svg{width:9px;height:9px;color:#fff;opacity:0;transition:opacity .3s var(--ease);}
.cm__task[data-done="true"] .cm__chk{background:#0E8F7E;border-color:#0E8F7E;}
.cm__task[data-done="true"] .cm__chk svg{opacity:1;}
.cm__task[data-done="true"] .lbl{color:var(--ink-faint);text-decoration:line-through;}
/* toast */
.cm__toast{position:absolute;right:13px;bottom:13px;display:flex;align-items:center;gap:7px;
  background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 11px;box-shadow:var(--shadow-lift);
  font-size:10.5px;color:var(--ink-soft);opacity:0;transform:translateY(6px);
  animation:cmToast 7s ease-in-out infinite;}
.cm__toast b{color:var(--ink);font-weight:600;}
@keyframes cmToast{0%,8%{opacity:0;transform:translateY(6px);}14%,42%{opacity:1;transform:none;}52%,100%{opacity:0;transform:translateY(6px);}}
/* manuscript */
.cm__ms{display:grid;grid-template-columns:1fr;}
@media(min-width:980px){.cm__ms{grid-template-columns:150px 1fr 190px;}
.cm__ms>*+*{border-left:1px solid var(--line-soft);}}
@media(max-width:979px){.cm__ms>*+*{border-top:1px solid var(--line-soft);}}
.cm__out{display:flex;align-items:center;gap:6px;border-radius:6px;padding:5px 7px;font-size:10.5px;color:var(--ink-soft);}
.cm__out[data-on="true"]{background:var(--v05);color:var(--v6);font-weight:500;}
.cm__doc{font-size:11.5px;line-height:1.85;color:var(--ink-soft);position:relative;}
.cm__doc h5,.cm__doc .ui-h5{font-size:12px;font-weight:600;color:var(--ink);margin-bottom:7px;}
.cm__doc p+p{margin-top:9px;}
.cm__doc .live{background:rgba(10,170,235,.10);border-radius:2px;box-shadow:-1px 0 0 #0AAAEB;}
.cm__doc .sug{background:#E2F4F1;border-bottom:1px solid #9AD5CB;border-radius:2px;}
.cm__doc .cmt{background:var(--blue-50);border-bottom:1px dashed var(--blue-200);border-radius:2px;}
.cm__cite{display:inline-block;min-width:14px;padding:0 4px;border-radius:4px;background:var(--blue-50);
  border:1px solid var(--blue-100);color:var(--blue-700);font-family:var(--mono);font-size:8.5px;
  line-height:13px;text-align:center;vertical-align:1px;margin:0 1px;
  animation:cmCite 7s ease-in-out infinite;}
@keyframes cmCite{0%,30%{opacity:0;transform:translateX(-10px) scale(.9);}40%,100%{opacity:1;transform:none;}}
.cm__cmtcard{border:1px solid var(--line);border-radius:9px;padding:9px 10px;margin-bottom:7px;background:#fff;}
.cm__cmtcard .hd{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--ink-muted);}
.cm__cmtcard .hd b{color:var(--ink);font-weight:600;}
.cm__cmtcard p{font-size:10.5px;line-height:1.5;color:var(--ink-soft);margin-top:5px;}
.cm__cmtcard[data-resolved="true"]{opacity:.6;}
.cm__pill{display:inline-flex;align-items:center;gap:4px;font-size:9px;border-radius:999px;padding:2px 7px;
  border:1px solid var(--line);background:var(--subtle);color:var(--ink-muted);}
.cm__pill--ok{border-color:#9AD5CB;background:#E2F4F1;color:#0E8F7E;}
/* activity feed */
.cm__filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;}
.cm__f{border:1px solid var(--line-strong);background:#fff;border-radius:999px;padding:5px 12px;
  font-family:inherit;font-size:11.5px;color:var(--ink-soft);cursor:pointer;transition:all .18s var(--ease);}
.cm__f[aria-pressed="true"]{border-color:var(--blue-600);background:var(--blue-50);color:var(--blue-700);}
.cm__day{font-family:var(--mono);font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;
  color:var(--ink-faint);margin:14px 0 8px;}
.cm__act{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line-soft);}
.cm__act:last-child{border-bottom:0;}
.cm__act .ic{width:26px;height:26px;border-radius:7px;flex:none;display:flex;align-items:center;
  justify-content:center;background:var(--blue-50);border:1px solid var(--blue-100);color:var(--blue-600);}
.cm__act .ic svg{width:12px;height:12px;}
.cm__act .ic--ok{background:#E2F4F1;border-color:#9AD5CB;color:#0E8F7E;}
.cm__act .ic--d{background:#F1ECFF;border-color:#E6E0FA;color:#5B3BE0;}
.cm__act .bd{min-width:0;flex:1;}
.cm__act .bd p{font-size:11.5px;line-height:1.5;color:var(--ink-soft);}
.cm__act .bd b{color:var(--ink);font-weight:600;}
.cm__act .bd .m{font-size:9.5px;color:var(--ink-faint);margin-top:3px;}
/* benefit row */
.cm__bens{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
.cm__ben{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;
  padding:7px 14px;font-size:.8125rem;color:var(--ink-soft);background:#fff;}
.cm__ben svg{width:13px;height:13px;color:var(--blue-600);}
@media(prefers-reduced-motion:reduce){.cm__av,.cm__cursor,.cm__toast,.cm__cite{animation:none;}
.cm__av{opacity:1;transform:none;}
.cm__toast{opacity:1;transform:none;}
.cm__cite{opacity:1;transform:none;}
.cm__tab::after{transition:none;}}
@media(max-width:640px){.cm__stage{padding:11px;}
.cm__col{padding:11px;}}
.pk{--v:#5B3BE0;--v6:#4B2FC9;--v05:#F1ECFF;--v-line:#E6E0FA;--teal:#0E7CA8;--teal-bg:#CDEBF6;
  --pink:#B0308A;--green:#0E8F7E;--green-bg:#E2F4F1;--amber:#9A5B08;--amber-bg:#FDF3E4;
  font-size:13px;color:var(--ink);}
.pk *{box-sizing:border-box;}
.pk-win{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;box-shadow:var(--shadow-panel);}
.pk-win--lift{box-shadow:var(--shadow-lift);border-radius:14px;}
.pk-win--flat{box-shadow:var(--shadow-card);}
/* window chrome */
.pk-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 14px;
  border-bottom:1px solid var(--line);background:var(--subtle);}
.pk-crumb{display:flex;align-items:center;gap:7px;min-width:0;overflow:hidden;}
.pk-crumb .l{width:16px;height:16px;color:var(--v);flex:none;}
.pk-crumb span{font-size:12px;color:var(--ink-muted);white-space:nowrap;}
.pk-crumb span.cur{color:var(--ink);font-weight:600;}
.pk-crumb i{color:var(--ink-faint);font-style:normal;}
.pk-mark{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.625rem;
  letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap;}
.pk-mark::before{content:"";width:4px;height:4px;border-radius:50%;background:rgba(139,149,166,.7);}
@media(max-width:560px){.pk-mark--hide{display:none;}}
.pk-svg{width:15px;height:15px;flex:none;}
.pk-mono{font-family:var(--mono);}
.pk-lbl{font-family:var(--mono);font-size:.625rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted);}
.pk-lbl--v{color:var(--v6);}
/* pills / chips */
.pk-pill{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px;border:1px solid var(--line-strong);
  border-radius:8px;font-size:12px;font-weight:500;color:var(--ink);background:#fff;white-space:nowrap;}
.pk-pill svg{width:12px;height:12px;color:var(--ink-muted);}
.pk-mode{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line-strong);border-radius:999px;
  padding:4px 11px;font-size:11.5px;font-weight:500;color:var(--ink-muted);background:#fff;}
.pk-mode svg{width:12px;height:12px;}
.pk-mode.on{border-color:var(--v);color:var(--v6);box-shadow:0 0 0 1px var(--v);}
.pk-tag{display:inline-flex;align-items:center;border:1px solid var(--line);background:#fff;border-radius:5px;
  padding:1px 6px;font-size:10px;color:var(--ink-muted);}
.pk-badge{display:inline-flex;align-items:center;border:1px solid;border-radius:5px;padding:1px 6px;
  font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;}
.pk-badge--beta{border-color:rgba(14,143,126,.3);background:var(--green-bg);color:var(--green);}
.pk-badge--soon{border-color:rgba(154,91,8,.25);background:var(--amber-bg);color:var(--amber);}
.pk-status{display:inline-flex;align-items:center;border-radius:5px;border:1px solid var(--line);
  background:var(--subtle);padding:2px 7px;font-size:10.5px;font-weight:500;color:var(--ink-muted);white-space:nowrap;}
.pk-status--ext{border-color:rgba(14,143,126,.28);background:var(--green-bg);color:var(--green);}
.pk-status--read{border-color:var(--v-line);background:var(--v05);color:var(--v6);}
.pk-ref{color:var(--v6);font-weight:500;}
.pk-cite{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;
  border:1px solid var(--v-line);background:var(--v05);border-radius:4px;font-family:var(--mono);font-size:9px;
  font-weight:600;color:var(--v6);vertical-align:baseline;margin-left:2px;}
.pk-ini{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--line);
  background:var(--sunken);color:var(--ink-soft);font-weight:600;width:24px;height:24px;font-size:10px;flex:none;}
.pk-ini--v{border-color:var(--v-line);background:var(--v05);color:var(--v6);}
.pk-ini--xs{width:20px;height:20px;font-size:9px;}
.pk-ini--lg{width:40px;height:40px;font-size:13px;}
.pk-stack{display:flex;}
.pk-stack .pk-ini+.pk-ini{margin-left:-6px;}
.pk-go{width:34px;height:34px;flex:none;border-radius:50%;background:var(--v);color:#fff;display:flex;align-items:center;justify-content:center;}
.pk-go svg{width:15px;height:15px;}
/* generic panes */
.pk-grid{display:grid;}
.pk-pane{padding:16px;}
.pk-rail{background:var(--subtle);padding:12px;}
/* answer doc */
.pk-doc h3{color:var(--v6);font-size:15px;font-weight:700;line-height:1.3;letter-spacing:-.01em;}
.pk-doc h4,.pk-doc .ui-h4{font-size:13px;font-weight:600;margin-top:14px;display:flex;align-items:center;gap:6px;}
.pk-doc h4 svg,.pk-doc .ui-h4 svg{width:12px;height:12px;color:var(--ink-faint);}
.pk-doc p{font-size:12.5px;line-height:1.7;color:#2C3A4B;margin-top:8px;}
.pk-q{display:flex;flex-direction:column;align-items:center;gap:7px;margin-bottom:14px;}
.pk-qmeta{font-size:10.5px;color:var(--ink-faint);}
.pk-bubble{background:var(--v);color:#fff;font-weight:600;border-radius:11px;padding:9px 16px;font-size:12.5px;text-align:center;}
.pk-qtag{display:inline-flex;align-items:center;gap:7px;font-size:10.5px;color:var(--ink-muted);}
.pk-qtag b{background:var(--v05);color:var(--v6);border-radius:5px;padding:1px 7px;font-weight:600;}
/* reference card */
.pk-refcard{border:1px solid var(--line);border-radius:11px;padding:13px;}
.pk-idx{color:var(--v6);font-weight:700;font-size:12px;}
.pk-refcard h5,.pk-refcard .ui-h5{font-size:13.5px;font-weight:600;margin-top:4px;line-height:1.3;}
.pk-refmeta{margin-top:10px;display:grid;gap:7px;}
.pk-refmeta div{display:flex;align-items:center;gap:8px;font-size:12px;color:#2C3A4B;}
.pk-refmeta svg{width:13px;height:13px;flex:none;color:var(--ink-muted);}
.pk-apa{margin-top:11px;display:flex;gap:7px;align-items:flex-start;}
.pk-apa svg{width:12px;height:12px;flex:none;color:var(--ink-muted);margin-top:2px;}
.pk-apa p{font-size:11px;line-height:1.55;font-style:italic;color:var(--v6);}
.pk-abs{margin-top:11px;background:var(--sunken);border-radius:9px;padding:10px 12px;}
.pk-abs .h{font-size:12px;font-weight:600;}
.pk-abs p{font-size:11px;line-height:1.6;color:var(--ink-soft);margin-top:6px;}
/* dock */
.pk-dock{border-top:1px solid var(--line);background:#F7F5FF;padding:11px 13px;}
.pk-field{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line-strong);border-radius:11px;padding:8px 10px;}
.pk-field .aisearch{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 10px;border:1px solid var(--line-strong);
  border-radius:8px;font-size:12px;font-weight:600;color:var(--v6);background:var(--v05);white-space:nowrap;}
.pk-field .aisearch svg{width:12px;height:12px;}
.pk-field .ph{flex:1;min-width:0;font-size:12.5px;color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pk-dockmodes{display:flex;gap:7px;margin-top:8px;}
/* table */
.pk-tbl{width:100%;border-collapse:collapse;}
.pk-tbl th{font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink-faint);text-align:left;padding:6px 12px;background:var(--subtle);border-bottom:1px solid var(--line);}
.pk-tbl td{padding:9px 12px;vertical-align:top;border-bottom:1px solid var(--line-soft);}
.pk-tbl tr.on td{background:var(--v05);}
.pk-tbl p.t{font-size:12px;font-weight:500;line-height:1.35;}
.pk-tbl p.m{display:flex;flex-wrap:wrap;align-items:center;gap:5px;font-size:10.5px;color:var(--ink-muted);margin-top:4px;}
/* folders */
.pk-folder{display:flex;align-items:center;gap:8px;border-radius:6px;padding:6px;}
.pk-folder.on{background:#fff;box-shadow:var(--hairline);}
.pk-folder .n{flex:1;min-width:0;font-size:11.5px;color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pk-folder .c{font-family:var(--mono);font-size:10px;color:var(--ink-faint);}
.pk-folder svg{width:13px;height:13px;color:var(--ink-faint);flex:none;}
.pk-sub{margin:2px 0 0 13px;border-left:1px solid var(--line);padding-left:8px;}
.pk-sub li{display:flex;align-items:center;gap:8px;border-radius:6px;padding:4px 6px;}
.pk-sub li.on{background:var(--v05);}
.pk-sub li.on .n{color:var(--v6);font-weight:500;}
.pk-sub .n{flex:1;font-size:11px;color:var(--ink-muted);}
.pk-mini{border:1px solid var(--line);border-radius:9px;background:#fff;padding:10px;}
.pk-check{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;border:1px solid var(--line-strong);
  border-radius:3px;background:#fff;margin-top:2px;flex:none;}
.pk-check.on{background:var(--green);border-color:var(--green);color:#fff;}
.pk-check svg{width:8px;height:8px;}
.pk-tl{border-left:1px solid var(--line);padding-left:12px;}
.pk-tl li{position:relative;}
.pk-tl li::before{content:"";position:absolute;left:-15px;top:5px;width:6px;height:6px;border-radius:50%;background:#fff;border:1px solid var(--line-strong);}
.pk-bars{display:flex;align-items:flex-end;gap:7px;}
.pk-bars .bar{flex:1;border-radius:3px 3px 0 0;background:var(--v);opacity:.9;}
.pk-chips{display:flex;flex-wrap:wrap;gap:6px;}
.pk-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:7px;padding:4px 8px;font-size:11px;color:var(--ink-soft);}
.pk-chip svg{width:10px;height:10px;color:var(--v);}
/* ===== TRACK & SHARE modal ===== */
.tm__stage{background:linear-gradient(168deg,var(--blue-50),#fff 62%);border:1px solid var(--blue-100);
  border-radius:20px;padding:clamp(14px,2.2vw,24px);margin-top:22px;}
.tm__win{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;
  box-shadow:var(--shadow-card);position:relative;}
.tm__bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
  padding:11px 15px;border-bottom:1px solid var(--line-soft);background:var(--subtle);}
.tm__name{font-size:12.5px;font-weight:600;color:var(--ink);}
.tm__sync{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:var(--ink-faint);}
.tm__sync svg{width:11px;height:11px;color:var(--blue-600);animation:tmSpin 5s linear infinite;}
@keyframes tmSpin{to{transform:rotate(360deg);}}
.tm__col{padding:13px;min-width:0;}
/* publication rows */
.tm__pub{display:flex;gap:11px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--line-soft);}
.tm__pub:last-child{border-bottom:0;}
.tm__pub .bd{min-width:0;flex:1;}
.tm__pub .t{font-size:11.5px;line-height:1.4;color:var(--ink);font-weight:500;}
.tm__pub .m{font-size:9.5px;color:var(--ink-faint);margin-top:3px;}
.tm__st{flex:none;font-size:9px;border-radius:999px;padding:3px 9px;border:1px solid var(--line);
  background:var(--subtle);color:var(--ink-muted);white-space:nowrap;}
.tm__st--pub{border-color:#9AD5CB;background:#E2F4F1;color:#0E8F7E;}
.tm__st--acc{border-color:var(--blue-100);background:var(--blue-50);color:var(--blue-700);}
.tm__st--rev{border-color:rgba(154,91,8,.25);background:#FDF3E4;color:#9A5B08;}
.tm__st--pre{border-color:#E6E0FA;background:#F1ECFF;color:#4B2FC9;}
.tm__new{position:relative;}
.tm__new::before{content:"";position:absolute;left:-13px;top:16px;width:5px;height:5px;border-radius:50%;
  background:var(--blue-600);animation:tmPulse 3.5s ease-in-out infinite;}
@keyframes tmPulse{0%,100%{opacity:.3;}50%{opacity:1;}}
/* detection flow */
.tm__flow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;}
.tm__step{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:var(--ink-muted);
  border:1px solid var(--line);background:#fff;border-radius:999px;padding:5px 11px;}
.tm__step i{width:5px;height:5px;border-radius:50%;background:var(--blue-500);flex:none;}
.tm__arrow{width:12px;height:1px;background:var(--line-strong);flex:none;}
/* notification toast */
.tm__note{position:absolute;right:13px;bottom:13px;width:min(280px,72%);background:#fff;
  border:1px solid var(--blue-100);border-radius:12px;padding:11px 13px;box-shadow:var(--shadow-lift);
  opacity:0;transform:translateY(8px);animation:tmNote 9s ease-in-out infinite;}
.tm__note .hd{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:600;color:var(--blue-700);}
.tm__note .hd svg{width:12px;height:12px;}
.tm__note p{font-size:10.5px;line-height:1.5;color:var(--ink-soft);margin-top:6px;}
@keyframes tmNote{0%,6%{opacity:0;transform:translateY(8px);}12%,46%{opacity:1;transform:none;}56%,100%{opacity:0;transform:translateY(8px);}}
/* stats */
.tm__cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
@media(min-width:700px){.tm__cards{grid-template-columns:repeat(4,1fr);}}
.tm__card{border:1px solid var(--line);border-radius:12px;background:#fff;padding:14px;}
.tm__v{font-size:clamp(1.25rem,2.4vw,1.625rem);font-weight:600;letter-spacing:-.03em;color:var(--ink);line-height:1;}
.tm__l{font-size:10px;color:var(--ink-muted);margin-top:6px;}
.tm__d{font-size:9px;color:var(--blue-600);margin-top:4px;}
.tm__charts{display:grid;grid-template-columns:1fr;gap:12px;margin-top:12px;}
@media(min-width:820px){.tm__charts{grid-template-columns:1.3fr 1fr;}}
.tm__chart{border:1px solid var(--line);border-radius:12px;background:#fff;padding:14px;}
.tm__chart h5,.tm__chart .ui-h5{font-size:10.5px;font-weight:600;color:var(--ink);}
.tm__chart .sub{font-size:9px;color:var(--ink-faint);margin-top:3px;}
.tm__bars{display:flex;align-items:flex-end;gap:6px;height:78px;margin-top:12px;}
.tm__bars i{flex:1;background:linear-gradient(180deg,var(--blue-500),var(--blue-600));border-radius:3px 3px 0 0;
  opacity:.9;transform-origin:bottom;animation:tmGrow .9s var(--ease-out) both;}
@keyframes tmGrow{from{transform:scaleY(.15);opacity:.3;}to{transform:scaleY(1);opacity:.9;}}
.tm__axis{display:flex;justify-content:space-between;margin-top:7px;font-family:var(--mono);font-size:8.5px;color:var(--ink-faint);}
.tm__list{margin-top:10px;}
.tm__lrow{display:flex;align-items:center;gap:9px;padding:7px 0;border-bottom:1px solid var(--line-soft);}
.tm__lrow:last-child{border-bottom:0;}
.tm__lrow .t{font-size:10.5px;color:var(--ink);flex:1;min-width:0;line-height:1.35;}
.tm__lrow .n{font-family:var(--mono);font-size:10px;color:var(--blue-700);flex:none;}
.tm__meter{height:4px;border-radius:2px;background:var(--sunken);overflow:hidden;margin-top:5px;}
.tm__meter i{display:block;height:100%;background:var(--blue-500);border-radius:2px;}
/* profile */
.tm__prof{display:grid;grid-template-columns:1fr;}
@media(min-width:880px){.tm__prof{grid-template-columns:230px 1fr;}
.tm__prof>*+*{border-left:1px solid var(--line-soft);}}
@media(max-width:879px){.tm__prof>*+*{border-top:1px solid var(--line-soft);}}
.tm__ava{width:52px;height:52px;border-radius:50%;background:linear-gradient(160deg,var(--blue-500),var(--v,#5B3BE0));
  color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;}
.tm__pname{font-size:14px;font-weight:600;color:var(--ink);margin-top:11px;}
.tm__prole{font-size:10.5px;color:var(--ink-muted);margin-top:3px;line-height:1.5;}
.tm__btn{height:30px;padding:0 13px;border-radius:8px;border:1px solid var(--blue-600);background:var(--blue-600);
  color:#fff;font-family:inherit;font-size:11px;font-weight:500;cursor:default;}
.tm__btn--o{background:#fff;color:var(--blue-700);}
/* career map */
.tm__map{position:relative;border:1px solid var(--line);border-radius:14px;background:#fff;
  padding:clamp(14px,2vw,22px);overflow-x:auto;}
.tm__track{display:grid;grid-template-columns:repeat(4,minmax(168px,1fr));gap:0;min-width:660px;position:relative;}
.tm__spine{position:absolute;left:6%;right:6%;top:34px;height:2px;
  background:linear-gradient(90deg,var(--blue-200),var(--blue-500),var(--v,#5B3BE0));border-radius:2px;}
.tm__yr{position:relative;padding:0 10px;text-align:center;}
.tm__ynode{width:26px;height:26px;border-radius:50%;background:#fff;border:2px solid var(--blue-500);
  margin:22px auto 0;display:flex;align-items:center;justify-content:center;position:relative;z-index:1;
  font-family:var(--mono);font-size:8.5px;color:var(--blue-700);font-weight:600;}
.tm__yr:last-child .tm__ynode{border-color:var(--v,#5B3BE0);color:var(--v6,#4B2FC9);}
.tm__ylab{font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--ink);margin-top:9px;font-weight:600;}
.tm__branch{display:grid;gap:6px;margin-top:11px;}
.tm__leaf{border:1px solid var(--line);border-radius:9px;background:#fff;padding:7px 9px;text-align:left;
  animation:tmLeaf .6s var(--ease-out) both;}
.tm__leaf .k{font-family:var(--mono);font-size:7.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);}
.tm__leaf .v{font-size:10px;line-height:1.4;color:var(--ink);margin-top:3px;}
@keyframes tmLeaf{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
.tm__leaf--imp{border-color:var(--blue-100);background:var(--blue-50);}
.tm__leaf--th{border-color:#E6E0FA;background:#F1ECFF;}
.tm__legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px;}
.tm__lg{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:var(--ink-muted);}
.tm__lg i{width:8px;height:8px;border-radius:3px;flex:none;}
/* benefit row */
.tm__bens{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
.tm__ben{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;
  padding:7px 14px;font-size:.8125rem;color:var(--ink-soft);background:#fff;}
.tm__ben svg{width:13px;height:13px;color:var(--blue-600);}
@media(prefers-reduced-motion:reduce){.tm__sync svg,.tm__note,.tm__new::before,.tm__bars i,.tm__leaf{animation:none;}
.tm__note{opacity:1;transform:none;}}
@media(max-width:640px){.tm__stage{padding:11px;}
.tm__col{padding:11px;}}
/* result: plain figures,not fake controls */
.calc2__facts{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:26px;
  border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;}
.calc2__facts>div{padding:14px 16px;}
.calc2__facts>div+div{border-left:1px solid var(--line);}
.calc2__facts dt{font-size:.75rem;color:var(--ink-muted);}
.calc2__facts dd{margin:5px 0 0;font-size:1.25rem;font-weight:500;color:var(--ink);
  letter-spacing:-.02em;font-variant-numeric:tabular-nums;}
.calc2__facts>div:last-child dd{color:var(--blue-700);}
/* breakdown — this genuinely changes with the inputs */
.calc2__break{margin-top:24px;}
.calc2__breakhead{font-size:.75rem;color:var(--ink-muted);margin-bottom:12px;}
.calc2__brow{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:baseline;margin-bottom:12px;}
.calc2__brow:last-child{margin-bottom:0;}
.calc2__brow .k{font-size:.8125rem;color:var(--ink-soft);}
.calc2__brow .v{font-size:.8125rem;font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums;}
.calc2__brow .m{grid-column:1/-1;height:6px;border-radius:999px;background:var(--sunken);overflow:hidden;}
.calc2__brow .m i{display:block;height:100%;border-radius:999px;
  background:linear-gradient(90deg,var(--blue-500),var(--blue-600));transition:width .45s var(--ease-out);}
@media(prefers-reduced-motion:reduce){.calc2__brow .m i{transition:none;}}
/* modal + mockup heading weights,aligned with the page type scale */
.dm h4,.dm h5,.dm .ttl,.pk h4,.pk h5,.pk .ttl{font-weight:500;}
.dm b,.pk b,.dm strong,.pk strong{font-weight:500;}
.cm__name,.tm__name,.om__name,.wm__title,.calc2__modebox .t{font-weight:500;}
.dm__cite{font-weight:500;}
/* remaining mockup text; avatar initials keep their weight (tiny circles need it) */
.pk-cite,.tm__v,.tm__pname,.tm__ylab,.tm__ynode,.cm__cmtcard .hd,.tm__pub .t,.dm sup,.pk sup,.dm i,.pk i,.dm .v,.pk .v{font-weight:500;}
.dm b,.pk b,.cm__ctx .who b,.cm__act .bd b,.wm__item .t b{font-weight:500;}
.dm .v,.pk .v,.cm__cmtcard .hd,.cm__cmtcard .hd b,.hcmt b,#collab-modal b,#collab-modal span,#track-modal .hd{font-weight:500;}
/* avatar initials stay heavier — small circles need the weight to read */
.pk-ini,.cm__av,.tm__ava,.hcmt__av{font-weight:600;}
.dm__analyzed{margin-top:14px;padding-top:12px;border-top:1px solid var(--line-soft);
  font-size:.8125rem;color:var(--ink-muted);}
.dm__analyzed span{font-weight:500;color:var(--ink);}
/* modal panes scroll natively; smooth scrolling is for in-page anchors */
.dm__scroll{scroll-behavior:auto;overscroll-behavior:contain;}
/* modern select: custom chevron,no native chrome */
.dm__style-sel{display:inline-flex;align-items:center;gap:10px;}
.dm__style-sel label{font-size:.8125rem;color:var(--ink-muted);}
.dm__style-sel select{-webkit-appearance:none;appearance:none;font-family:inherit;font-size:.875rem;
  font-weight:500;color:var(--ink);background:#fff;border:1px solid var(--line-strong);border-radius:10px;
  padding:9px 36px 9px 13px;cursor:pointer;line-height:1.2;
  box-shadow:0 1px 2px rgba(10,22,38,.05);
  background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23657185' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6.5 4 4 4-4'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;background-size:14px;
  transition:border-color .18s var(--ease),box-shadow .18s var(--ease);}
.dm__style-sel select:hover{border-color:var(--blue-600);}
.dm__style-sel select:focus-visible{outline:none;border-color:var(--blue-600);
  box-shadow:0 0 0 3px rgba(41,182,240,.16);}
/* quoted source passages shown inline rather than described */
.dm__quote{display:block;border-left:2px solid var(--blue-200);background:var(--blue-50);
  border-radius:0 8px 8px 0;padding:10px 12px;font-size:.8125rem;line-height:1.6;color:var(--ink-soft);}
.dm__quote .lbl{display:block;font-family:var(--mono);font-size:.5625rem;letter-spacing:.09em;
  text-transform:uppercase;color:var(--blue-700);margin-bottom:5px;}
.dm__ai-msg .dm__quote{margin-top:12px;}
.dm__note-item{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff;}
.dm__note-body{font-size:.8125rem;line-height:1.6;color:var(--ink-soft);margin-top:10px;}
.dm__note-body b{color:var(--ink);}
.dm__note-meta{font-size:.6875rem;color:var(--ink-faint);margin-top:10px;}
/* PDF page fills its column rather than leaving dead space */
.dm__pdf-page{display:flex;flex-direction:column;}
.dm__pdf-page>p:last-of-type{margin-bottom:0;}
@media(min-width:900px){.dm__pdf-page{justify-content:space-between;}}
/* each section gets a landing offset so jumps never tuck under the header */
section[id]{scroll-margin-top:6rem;}
/* the intro section and the first mode belong together — tighten the seam */
/* highlights in the PDF read as annotation,not selection */
.dm__pdf-page mark{background:#FFF3BF;color:var(--ink);border-radius:2px;
  box-shadow:inset 0 -1px 0 rgba(180,140,10,.35);}
/* custom citation-style picker (a native select cannot style its option list) */
.dmsel{position:relative;}
.dmsel__btn{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;min-width:170px;
  font-family:inherit;font-size:.875rem;font-weight:500;color:var(--ink);background:#fff;
  border:1px solid var(--line-strong);border-radius:10px;padding:9px 13px;cursor:pointer;
  box-shadow:0 1px 2px rgba(10,22,38,.05);transition:border-color .18s var(--ease),box-shadow .18s var(--ease);}
.dmsel__btn svg{width:14px;height:14px;color:var(--ink-muted);transition:transform .2s var(--ease);}
.dmsel__btn:hover{border-color:var(--blue-600);}
.dmsel__btn[aria-expanded="true"]{border-color:var(--blue-600);box-shadow:0 0 0 3px rgba(41,182,240,.16);}
.dmsel__btn[aria-expanded="true"] svg{transform:rotate(180deg);}
.dmsel__list{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:100%;margin:0;padding:6px;
  list-style:none;background:#fff;border:1px solid var(--line);border-radius:12px;
  box-shadow:0 1px 2px rgba(10,22,38,.06),0 12px 28px -12px rgba(10,22,38,.28);}
.dmsel__list li{border-radius:8px;padding:9px 12px;font-size:.875rem;color:var(--ink-soft);cursor:pointer;
  white-space:nowrap;transition:background-color .14s var(--ease),color .14s var(--ease);}
.dmsel__list li:hover{background:var(--subtle);color:var(--ink);}
.dmsel__list li[aria-selected="true"]{background:var(--blue-50);color:var(--blue-700);font-weight:500;}
.dmsel__list li:focus-visible{outline:2px solid var(--blue-600);outline-offset:-2px;}
/* project-level tabs (Libraries / Tasks / Discussions / Activity) */
.om__ptabs{display:flex;gap:2px;padding:0 14px;border-bottom:1px solid var(--line-soft);
  background:#fff;overflow-x:auto;scrollbar-width:none;}
.om__ptabs::-webkit-scrollbar{display:none;}
.om__pt{position:relative;flex:none;border:0;background:none;padding:11px 13px;font-family:inherit;
  font-size:12px;font-weight:500;color:var(--ink-muted);cursor:pointer;white-space:nowrap;
  transition:color .2s var(--ease);}
.om__pt:hover{color:var(--ink);}
.om__pt[aria-pressed="true"]{color:var(--blue-700);}
.om__pt::after{content:"";position:absolute;left:11px;right:11px;bottom:-1px;height:2px;border-radius:2px;
  background:var(--blue-600);transform:scaleX(0);transition:transform .25s var(--ease-out);}
.om__pt[aria-pressed="true"]::after{transform:scaleX(1);}
.om__pview{display:none;}
.om__pview[data-active="true"]{display:block;animation:omIn .3s var(--ease-out);}
@keyframes omIn{from{opacity:0;transform:translateY(5px);}to{opacity:1;transform:none;}}
/* task rows */
.om__trow{display:flex;gap:11px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--line-soft);}
.om__trow:last-of-type{border-bottom:0;}
.om__trow .bd{flex:1;min-width:0;}
.om__trow .t{font-size:11.5px;color:var(--ink);font-weight:500;}
.om__trow .m{font-size:10px;color:var(--ink-faint);margin-top:3px;}
.om__chk{width:16px;height:16px;border-radius:5px;border:1px solid var(--line-strong);background:#fff;
  flex:none;margin-top:2px;display:flex;align-items:center;justify-content:center;color:#fff;}
.om__chk svg{width:9px;height:9px;}
.om__trow[data-done="true"] .om__chk{background:#0E8F7E;border-color:#0E8F7E;}
.om__trow[data-done="true"] .t{color:var(--ink-faint);text-decoration:line-through;}
/* discussion rows */
.om__drow{padding:12px 0;border-bottom:1px solid var(--line-soft);}
.om__drow:last-of-type{border-bottom:0;}
.om__drow .q{font-size:11.5px;line-height:1.5;color:var(--ink);font-weight:500;}
.om__drow .m{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--ink-faint);margin-top:6px;}
.om__drow[data-resolved="true"]{opacity:.6;}
/* project panes share the workspace padding */
.om__pview .om__col{padding:16px 18px 20px;}
.om__pview[data-pview="libraries"] .om__col{padding:12px;}
/* All Projects list */
.om__plist{padding:14px 16px 0;display:grid;gap:10px;}
.om__pcard{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:#fff;cursor:pointer;
  transition:border-color .18s var(--ease),box-shadow .18s var(--ease),transform .18s var(--ease);}
.om__pcard:hover{border-color:var(--line-strong);box-shadow:var(--shadow-card);transform:translateY(-1px);}
.om__pcard .t{font-size:12.5px;font-weight:500;color:var(--ink);}
.om__pcard .d{font-size:11px;line-height:1.5;color:var(--ink-muted);margin:4px 0 8px;}
.om__plist[hidden]{display:none;}
.om__aifoot{font-size:10.5px;color:var(--ink-faint);margin-top:10px;padding-top:9px;border-top:1px solid var(--line-soft);}
.om__share{border:1px solid var(--line);border-radius:16px;background:#fff;padding:20px;margin-top:22px;}
.om__shrow{display:grid;grid-template-columns:1fr;gap:14px;align-items:center;}
@media(min-width:820px){.om__shrow{grid-template-columns:1fr auto 1fr;}}
.om__shcard{border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--subtle);}
.om__shcard--pub{border-color:var(--blue-200);background:linear-gradient(168deg,var(--blue-50),#fff 70%);}
.om__shcard .t{font-size:13px;font-weight:500;color:var(--ink);margin-top:10px;}
.om__shcard .d{font-size:11.5px;line-height:1.55;color:var(--ink-muted);margin-top:5px;}
.om__sharrow{display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--blue-600);}
.om__sharrow svg{width:26px;height:26px;}
.om__sharrow span{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);}
@media(max-width:819px){.om__sharrow{flex-direction:row;justify-content:center;}
.om__sharrow svg{transform:rotate(90deg);}}
.om__shacts{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.om__shbtn{border:1px solid var(--line-strong);background:#fff;border-radius:999px;padding:7px 14px;
  font-family:inherit;font-size:11.5px;font-weight:500;color:var(--ink-soft);cursor:pointer;transition:all .18s var(--ease);}
.om__shbtn:hover{border-color:var(--blue-600);color:var(--blue-700);}
.om__shbtn--p{background:var(--blue-600);border-color:var(--blue-600);color:#fff;}
.om__shbtn--p:hover{background:var(--blue-700);border-color:var(--blue-700);color:#fff;}
.om__shtoast{margin-top:10px;font-size:11px;color:#0E8F7E;opacity:0;transition:opacity .3s var(--ease);}
.om__shtoast[data-show="true"]{opacity:1;}
/* library papers as columns */
.om__thead,.om__prow{display:grid;grid-template-columns:2.1fr 1fr 1fr .8fr .7fr;gap:12px;align-items:start;}
.om__thead{padding:0 10px 8px;font-family:var(--mono);font-size:9px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid var(--line);}
.om__prow{width:100%;text-align:left;border:0;border-bottom:1px solid var(--line-soft);background:none;
  font-family:inherit;padding:11px 10px;cursor:pointer;transition:background-color .16s var(--ease);}
.om__prow:hover{background:var(--subtle);}
.om__prow[aria-pressed="true"]{background:var(--blue-50);}
.om__prow .ti{font-size:11.5px;line-height:1.4;color:var(--ink);font-weight:500;}
.om__prow .ab{display:block;font-size:10px;line-height:1.5;color:var(--ink-faint);font-weight:400;margin-top:4px;}
.om__prow .au,.om__prow .jo,.om__prow .wh{font-size:10.5px;color:var(--ink-muted);line-height:1.4;}
@media(max-width:860px){.om__thead{display:none;}
.om__prow{grid-template-columns:1fr;gap:5px;}}
/* add-field column */
.om__addcol{width:1%;white-space:nowrap;border-left:1px dashed var(--line-strong);}
.om__addbtn{border:0;background:none;font-family:inherit;font-size:10.5px;font-weight:500;
  color:var(--blue-700);cursor:pointer;padding:0;white-space:nowrap;}
.om__addbtn:hover{text-decoration:underline;}
.om__ai{border:1px solid var(--line);border-radius:16px;background:#fff;padding:0;overflow:hidden;margin-top:22px;}
.om__aibar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;
  border-bottom:1px solid var(--line-soft);background:var(--subtle);}
.om__aifolder{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:500;color:var(--ink);}
.om__aifolder svg{width:15px;height:15px;color:var(--blue-600);}
.om__aicount{font-size:11px;color:var(--ink-faint);}
.om__aibox{padding:18px;}
.om__aiask{font-size:11.5px;color:var(--ink-muted);margin-bottom:10px;}
.om__prompts{display:flex;flex-wrap:wrap;gap:7px;}
.om__prompt[aria-pressed="true"]{border-color:var(--blue-600);background:var(--blue-50);color:var(--blue-700);}
.om__aianswer{margin-top:16px;border-top:1px solid var(--line-soft);padding-top:16px;}
.om__aihint{font-size:11.5px;color:var(--ink-faint);}
.om__aiq{font-size:11.5px;font-weight:500;color:var(--ink);margin-bottom:10px;}
.om__aianswer p{font-size:11.5px;line-height:1.7;color:var(--ink-soft);}
.om__aianswer p+p{margin-top:9px;}
/* hero entry — a brief,minimal rise on first load only */
.js [data-hero-in] .hero__eyebrow,.js [data-hero-in] h1 .hl1,.js [data-hero-in] h1 .l2,.js [data-hero-in] .hero__sub,.js [data-hero-in] .hero__actions{
  opacity:0;transform:translateY(12px);
  animation:heroIn .7s var(--ease-out) forwards;}
.js [data-hero-in] h1 .hl1,.js [data-hero-in] h1 .l2{display:inline-block;}
.js [data-hero-in] .hero__eyebrow{animation-delay:.05s;}
.js [data-hero-in] h1 .hl1{animation-delay:.16s;}
.js [data-hero-in] h1 .l2{animation-delay:.26s;}
.js [data-hero-in] .hero__sub{animation-delay:.40s;}
.js [data-hero-in] .hero__actions{animation-delay:.50s;}
@keyframes heroIn{to{opacity:1;transform:none;}}
@media(prefers-reduced-motion:reduce){.js [data-hero-in] .hero__eyebrow,.js [data-hero-in] h1 .hl1,.js [data-hero-in] h1 .l2,.js [data-hero-in] .hero__sub,.js [data-hero-in] .hero__actions{animation:none;opacity:1;transform:none;}}
/* pathway entry — each stage rises just after the hero settles */
.js [data-rpath-in] .rstage{opacity:0;transform:translateY(10px);
  animation:heroIn .6s var(--ease-out) forwards;}
.js [data-rpath-in] .rstage:nth-of-type(1){animation-delay:.62s;}
.js [data-rpath-in] .rstage:nth-of-type(2){animation-delay:.70s;}
.js [data-rpath-in] .rstage:nth-of-type(3){animation-delay:.78s;}
.js [data-rpath-in] .rstage:nth-of-type(4){animation-delay:.86s;}
.js [data-rpath-in] .rstage:nth-of-type(5){animation-delay:.94s;}
/* the connecting line draws in behind them */
.js [data-rpath-in] .rpath__line{opacity:0;animation:heroIn .7s var(--ease-out) .58s forwards;}
@media(prefers-reduced-motion:reduce){.js [data-rpath-in] .rstage,.js [data-rpath-in] .rpath__line{animation:none;opacity:1;transform:none;}}
/* text-selection effect on the two key phrases: the highlight sweeps in left
   to right as if a cursor were dragged across the words,holds,clears,then
   repeats on a slow loop so the page keeps a quiet sign of life. */
.hero h1 .sel{position:relative;display:inline-block;z-index:0;}
.hero h1 .sel::before{
  content:"";position:absolute;left:-.06em;right:-.06em;top:.06em;bottom:.06em;z-index:-1;
  background:rgba(41,182,240,.22);border-radius:3px;
  transform:scaleX(0);transform-origin:left center;}
.js [data-hero-in] .sel::before{
  animation:selLoop 11s var(--ease-out) .92s infinite;}
.js [data-hero-in] .sel--b::before{animation-delay:1.14s;}
@keyframes selLoop{
  0%   {transform:scaleX(0);opacity:1;}
  4%   {transform:scaleX(1);opacity:1;}   /* sweep across */
  46%  {transform:scaleX(1);opacity:1;}   /* hold selected */
  52%  {transform:scaleX(1);opacity:0;}   /* release */
  53%  {transform:scaleX(0);opacity:0;}
  99%  {transform:scaleX(0);opacity:0;}   /* pause before repeating */
  100% {transform:scaleX(0);opacity:1;}
}
/* no JS: show the highlight without the sweep */
html:not(.js) .hero h1 .sel::before{transform:scaleX(1);}
@media(prefers-reduced-motion:reduce){.js [data-hero-in] .sel::before,.js [data-hero-in] .sel--b::before{animation:none;transform:scaleX(1);}}
/* the Features panel carries five workflow columns */
@media(min-width:1100px){.mega__grid--feat{grid-template-columns:repeat(5,minmax(0,1fr));gap:28px;}}
/* footer mirrors the header: the same five workflows and their features */
@media(min-width:760px){.ftr__cols--feat{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px;}}
@media(min-width:1100px){.ftr__cols--feat{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 28px;}}
.ftr__cols--feat h2{white-space:nowrap;}
.ftr__cols--feat li a{white-space:nowrap;}
.ftr__cols--feat a{cursor:pointer;}
.ftr__legal{display:flex;flex-wrap:wrap;gap:8px 20px;list-style:none;margin:0;padding:0;}
.ftr__legal a{font-size:.75rem;color:var(--ink-faint);}
.ftr__legal a:hover{color:var(--ink);}
/* Science wall: scientific notation laid out on an even grid behind the hero,brought forward by a soft spotlight that follows the cursor. A grid rather
   than a scatter,so nothing overlaps and the field reads as texture. */
.topwrap{position:relative;}
.sciwall{position:absolute;left:0;right:0;top:0;height:var(--wall-h,100%);z-index:0;
  pointer-events:none;overflow:hidden;--mx:50%;--my:30%;--r:62px;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 var(--solid,62%),
    rgba(0,0,0,.6) var(--soft,80%),rgba(0,0,0,.22) 92%,transparent 100%);
          mask-image:linear-gradient(180deg,#000 0%,#000 var(--solid,62%),
    rgba(0,0,0,.6) var(--soft,80%),rgba(0,0,0,.22) 92%,transparent 100%);}
.sciwall__base,.sciwall__lit{position:absolute;inset:-14px;display:grid;
  grid-template-columns:repeat(auto-fill,minmax(94px,1fr));
  grid-auto-rows:27px;align-content:start;}
.sciwall__base{opacity:0;}
.sciwall__lit{opacity:0;transform-origin:var(--mx) var(--my);
  transition:opacity .28s var(--ease-out),transform .28s var(--ease-out);
  -webkit-mask-image:radial-gradient(circle var(--r) at var(--mx) var(--my),#000 0%,#000 52%,rgba(0,0,0,.45) 76%,transparent 100%);
          mask-image:radial-gradient(circle var(--r) at var(--mx) var(--my),#000 0%,#000 52%,rgba(0,0,0,.45) 76%,transparent 100%);}
.sciwall[data-lit="true"] .sciwall__lit{opacity:1;transform:scale(1.3);}
.sciwall i{display:flex;align-items:center;justify-content:center;font-style:normal;
  font-size:10px;line-height:1;white-space:nowrap;overflow:hidden;padding:0 5px;}
.sciwall__base i{color:var(--ink-faint);opacity:.3;}
.sciwall__lit  i{color:var(--blue-600);opacity:.85;}
.sciwall i.m{font-family:var(--mono);font-size:9px;}
@media(max-width:760px){.sciwall{display:none;}}
@media(prefers-reduced-motion:reduce){.sciwall__lit{transition:none;}}
/* ============================================================
   Micro-interactions — additive only. Nothing here changes
   layout,colour or content; it adds motion on hover,press,focus and reveal. One easing curve throughout so the whole
   page feels like a single piece of software.
   ============================================================ */
:root{
  --mi-out:cubic-bezier(.22,.61,.36,1);      /* settle */
  --mi-inout:cubic-bezier(.45,0,.25,1);      /* travel */
}
/* ---- buttons: lift on hover,compress on press ---- */
.btn{transition:background-color .18s var(--mi-out),border-color .18s var(--mi-out),
  color .18s var(--mi-out),box-shadow .22s var(--mi-out),transform .18s var(--mi-out);}
.btn:hover{transform:translateY(-1px);}
.btn--primary:hover{box-shadow:0 2px 4px rgba(10,22,38,.14),0 10px 22px -12px rgba(10,170,235,.55);}
.btn--secondary:hover{box-shadow:0 1px 2px rgba(10,22,38,.06),0 8px 18px -12px rgba(10,22,38,.4);}
.btn:active{transform:translateY(0) scale(.985);transition-duration:.08s;}
.btn:focus-visible{outline:2px solid var(--blue-600);outline-offset:2px;}
/* ---- cards: a considered lift,never a jump ---- */
.mod,.ben__c,.pcard,.trac__c,.om__pcard,.dm__mcard,.steps__s{
  transition:box-shadow .3s var(--mi-out),transform .3s var(--mi-out),border-color .25s var(--mi-out);}
.dm__mcard:hover,.steps__s:hover{transform:translateY(-2px);
  box-shadow:0 1px 2px rgba(10,22,38,.05),0 16px 32px -22px rgba(10,22,38,.3);}
/* ---- links: underline grows from the left ---- */
.ftr__cols a{position:relative;}
.ftr__cols a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;
  background:currentColor;transform:scaleX(0);transform-origin:left center;
  transition:transform .26s var(--mi-out);}
.ftr__cols a:hover::after{transform:scaleX(1);}
/* ---- pathway stages ---- */
.rstage{transition:transform .22s var(--mi-out);}
.rstage:hover{transform:translateY(-2px);}
/* ---- form fields settle rather than snap ---- */
.fld input,.fld select,.fld textarea{
  transition:border-color .2s var(--mi-out),box-shadow .2s var(--mi-out),background-color .2s var(--mi-out);}
.fld input:hover,.fld select:hover,.fld textarea:hover{border-color:var(--ink-faint);}
/* ---- role and mode choices ---- */
.role__b,.calc2__modebox,.calc2__seg button,.om__pt,.dmsel__btn{
  transition:background-color .2s var(--mi-out),border-color .2s var(--mi-out),
  color .2s var(--mi-out),box-shadow .2s var(--mi-out),transform .2s var(--mi-out);}
.role:hover .role__b{transform:translateY(-2px);}
/* ---- scroll reveal: one curve,a slightly longer settle ---- */
.js .reveal{transition:opacity .72s var(--mi-out),transform .72s var(--mi-out),filter .72s var(--mi-out);}
.js .dm-reveal{transition:opacity .6s var(--mi-out),transform .6s var(--mi-out);}
/* ---- modal panel arrives with weight ---- */
.dm__panel{transition:opacity .34s var(--mi-out),transform .42s var(--mi-out);}
.dm__close{transition:border-color .2s var(--mi-out),color .2s var(--mi-out),
  background-color .2s var(--mi-out),transform .2s var(--mi-out);}
.dm__close:hover{transform:rotate(90deg);}
/* ---- small interactive chips ---- */
.pk-tag,.dm__pill,.dm__prompt,.om__type,.dm__pdf-act{
  transition:background-color .18s var(--mi-out),border-color .18s var(--mi-out),
  color .18s var(--mi-out),transform .18s var(--mi-out);}
.dm__prompt:hover,.om__type:hover,.dm__pdf-act:hover{transform:translateY(-1px);}
/* ---- table rows and list rows ---- */
.om__prow,.dm__row,.om__f{transition:background-color .18s var(--mi-out);}
/* ---- respect the setting ---- */
@media(prefers-reduced-motion:reduce){
  .btn,.btn:hover,.btn:active,.mega__link:hover,.dm__mcard:hover,.steps__s:hover,
  .rstage:hover,.role:hover .role__b,.dm__close:hover,.dm__prompt:hover,
  .om__type:hover,.dm__pdf-act:hover{transform:none;}
  .ftr__cols a::after{transition:none;}
  .js .reveal,.js .dm-reveal{transition:none;}
}
/* keeps the revealed notation from sitting directly behind the hero copy:
   a soft white pocket above the wall but beneath the text itself */
.hero__inner{position:relative;}
.hero__inner > *{position:relative;}
/* the shield spans the whole hero band,above the wall but below the copy */
.hero::before{content:"";position:absolute;z-index:-1;pointer-events:none;
  left:0;top:0;
  width:100%;height:100%;
  background:
    /* the headline block */
    radial-gradient(46% 40% at 50% 42%,#fff 0%,#fff 46%,
      rgba(255,255,255,.9) 62%,rgba(255,255,255,.55) 78%,transparent 94%),
    /* the Discover → Publish pathway row */
    radial-gradient(56% 20% at 50% 82%,#fff 0%,#fff 62%,
      rgba(255,255,255,.92) 76%,rgba(255,255,255,.55) 88%,transparent 100%);}
/* Supported-by line,set above the two logo rows */
.trac__support{display:flex;flex-direction:column;align-items:center;gap:8px;
  margin-bottom:clamp(36px,5vw,56px);}
.trac__supportlbl{font-family:var(--mono);font-size:.625rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--ink-faint);}
.trac__supportname{font-size:clamp(1.25rem,2.4vw,1.75rem);font-weight:400;
  letter-spacing:-.016em;color:var(--ink);}
/* the two logo rows sit apart but read as one block */
.trac__logos--j{margin-top:clamp(32px,4.5vw,52px);}
.trac__logos--j .trac__row{opacity:.9;}
/* tap targets: small text links get a comfortable hit area */
.ftr__cols a,.ftr__legal a,a.tlink,.ftr .flex.wrap a{display:inline-block;padding-block:6px;min-height:28px;}
.ftr__cols li,.ftr__legal li{line-height:1.5;}
.srch__input,input[type="text"],input[type="email"],input[type="search"]{min-height:28px;}
.calc2 .calc2__field input[type=range]{height:28px;}
/* smallest UI text raised to a legible floor */
.ha .c,.hcmt__av,.pk-ini--xs,.pk-ini{font-size:10px;}
.wflow{padding:clamp(24px,3vw,40px) 0 clamp(72px,9vw,112px);background:transparent;border-top:0;}
.wflow .hwork{margin-top:clamp(28px,3.5vw,44px);}
.wflow .head{margin-bottom:0;}
.srch{--v:#5B3BE0;--v6:#4B2FC9;--v05:#F1ECFF;--v-line:#E6E0FA;}
.srch__intro{max-width:44rem;margin:0 auto;text-align:center;}
.srch__toggle{display:inline-flex;background:#fff;border:1px solid var(--line-strong);border-radius:999px;padding:5px;box-shadow:var(--shadow-card);}
.srch__toggle button{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 22px;border-radius:999px;font-size:.9375rem;font-weight:500;color:var(--ink-muted);transition:color .25s var(--ease),background-color .25s var(--ease),box-shadow .25s var(--ease);}
.srch__toggle button[aria-selected="true"]{background:var(--v05);color:var(--v6);box-shadow:inset 0 0 0 1px var(--v-line);}
.srch__toggle button svg{width:17px;height:17px;}
.srch__modes{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;}
.srch__mode{display:inline-flex;align-items:center;gap:9px;height:46px;padding:0 20px;border:1px solid var(--line-strong);border-radius:999px;background:#fff;font-size:.9375rem;font-weight:500;color:var(--ink-soft);transition:border-color .25s var(--ease),background-color .25s var(--ease),color .25s var(--ease),box-shadow .25s var(--ease);}
.srch__mode svg{width:17px;height:17px;color:var(--ink-muted);transition:color .25s var(--ease);}
.srch__mode:hover{border-color:var(--v-line);}
.srch__mode[aria-pressed="true"]{border-color:var(--v);background:var(--v05);color:var(--v6);box-shadow:0 0 0 1px var(--v);}
.srch__mode[aria-pressed="true"] svg{color:var(--v6);}
.srch__box{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line-strong);border-radius:14px;padding:14px 14px 14px 20px;box-shadow:var(--shadow-panel);transition:border-color .25s var(--ease),box-shadow .25s var(--ease);}
.srch__box:focus-within{border-color:var(--v);box-shadow:0 0 0 1px var(--v),0 18px 40px -24px rgba(10,170,235,.35),var(--shadow-panel);}
.srch__input{flex:1;min-width:0;border:0;outline:none;background:transparent;font-family:inherit;font-size:1.0625rem;color:var(--ink);}
.srch__input::placeholder{color:var(--ink-faint);}
.srch__submit{flex:none;width:52px;height:52px;border-radius:50%;background:linear-gradient(145deg,var(--v) 0%,#4733C4 55%,#3D2FB0 100%);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 18px -8px rgba(10,170,235,.55);transition:transform .2s var(--ease),box-shadow .2s var(--ease),filter .2s var(--ease);}
.srch__submit:hover{filter:brightness(1.05);box-shadow:0 12px 24px -8px rgba(10,170,235,.6);transform:translateY(-1px);}
.srch__submit:active{transform:translateY(0);}
.srch__submit svg{width:20px;height:20px;}
.srch__examples{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 14px;}
.srch__example{height:44px;padding:0 20px;border:1px solid var(--line-strong);border-radius:999px;background:#fff;font-size:.9375rem;color:var(--ink-soft);transition:border-color .25s var(--ease),color .25s var(--ease),background-color .25s var(--ease),box-shadow .25s var(--ease);}
.srch__example:hover{border-color:var(--v-line);color:var(--v6);background:var(--v05);box-shadow:0 6px 16px -10px rgba(10,170,235,.4);}
.srch--classic .srch__modes{opacity:.4;pointer-events:none;transition:opacity .3s var(--ease);}
@media(max-width:640px){.srch__mode,.srch__example{height:42px;font-size:.875rem;}
.srch__input{font-size:1rem;}
.srch__submit{width:46px;height:46px;}}
/* Stage 3 — ambient depth & transitions (scoped,restrained) */
/* Soft pale-lavender radial glow behind the hero search centrepiece. */
.srch-section{position:relative;isolation:isolate;}
.srch-section::before{content:"";position:absolute;left:50%;top:42%;width:min(760px,92%);height:420px;
  transform:translate(-50%,-50%);z-index:-1;pointer-events:none;
  background:radial-gradient(60% 60% at 50% 50%,rgba(10,170,235,.10) 0%,rgba(10,170,235,.05) 38%,transparent 72%);}
@media(max-width:640px){.srch-section::before{height:300px;background:radial-gradient(60% 60% at 50% 50%,rgba(10,170,235,.07),transparent 72%);}}
/* Smooth crossfade + slight rise when a workflow preview panel becomes active. */
.js .tabpanel:not([hidden]){animation:panelIn .42s var(--ease) both;}
@keyframes panelIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.js .tabpanel:not([hidden]){animation:none;}}
/* Soft ambient violet light behind lifted product mock-up windows. */
.pk-win--lift{position:relative;}
.pk-win--lift::after{content:"";position:absolute;inset:-8% -4% -12% -4%;z-index:-1;pointer-events:none;
  background:radial-gradient(50% 45% at 50% 30%,rgba(10,170,235,.08),transparent 70%);}
@media(prefers-reduced-motion:reduce){.pk-win--lift::after{opacity:.6;}}
.pk-disc-grid{grid-template-columns:1fr;}
.pk-disc-refs{border-top:1px solid var(--line);}
@media(min-width:1024px){.pk-disc-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);}
.pk-disc-refs{border-top:0;border-left:1px solid var(--line);}}
.pk-hs{display:none}
.pk-hm{display:none}
@media(min-width:640px){.pk-hs{display:table-cell}}
@media(min-width:768px){.pk-hm{display:table-cell}}
.pk-lib-grid{grid-template-columns:1fr;}
.pk-lib-nav,.pk-lib-table{border-bottom:1px solid var(--line);}
@media(min-width:1024px){.pk-lib-grid{grid-template-columns:minmax(0,.72fr) minmax(0,1.9fr) minmax(0,1.1fr);}
.pk-lib-nav,.pk-lib-table{border-bottom:0;border-right:1px solid var(--line);}}
.pk-write-grid{grid-template-columns:1fr;}
.pk-write-ev{border-top:1px solid var(--line);}
@media(min-width:1024px){.pk-write-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);}
.pk-write-ev{border-top:0;border-left:1px solid var(--line);}}
.pk-collab-grid{grid-template-columns:1fr;}
.pk-collab-left{border-bottom:1px solid var(--line);}
@media(min-width:640px){.pk-collab-grid{grid-template-columns:1fr 1fr;}
.pk-collab-left{border-bottom:0;border-right:1px solid var(--line);}}
.pk-prof-grid{grid-template-columns:1fr;}
.pk-prof-left{border-bottom:1px solid var(--line);}
@media(min-width:1024px){.pk-prof-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);}
.pk-prof-left{border-bottom:0;border-right:1px solid var(--line);}}
.cmp{padding:72px 0;background:linear-gradient(180deg,#fff 0%,var(--subtle) 46%,#fff 100%);overflow:hidden;}
@media(min-width:1024px){.cmp{padding:112px 0;}}
.cmp .shell{max-width:1200px;}
/* heading */
.cmp__head{max-width:760px;margin:0 auto clamp(40px,5vw,60px);text-align:center;position:relative;}
.cmp__head::before{content:"";position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);
  width:120%;height:220%;z-index:-1;pointer-events:none;
  background:radial-gradient(50% 50% at 50% 50%,rgba(10,170,235,.07),rgba(41,182,240,.04) 55%,transparent 78%);}
.cmp__head h2{font-size:clamp(1.875rem,3.8vw,2.75rem);font-weight:400;letter-spacing:-.024em;
  line-height:1.1;color:var(--ink);margin-top:14px;text-wrap:balance;}
.cmp__head h2 .br{display:block;}
.cmp__head p{font-size:1.0625rem;line-height:1.6;color:var(--ink-muted);max-width:36rem;margin:16px auto 0;text-wrap:pretty;}
/* card */
.cmp__card{margin-top:22px;margin-bottom:22px;border:1px solid var(--line);border-radius:24px;background:#fff;overflow:visible;
  box-shadow:0 1px 2px rgba(10,22,38,.04),0 12px 32px -18px rgba(10,22,38,.18);}
@media(max-width:879px){.cmp__card{border:0;border-radius:0;background:none;overflow:visible;box-shadow:none;}}
.cmp__grid{display:none;}
@media(min-width:880px){.cmp__grid{display:block;}}
.cmp__hrow,.cmp__row{display:grid;grid-template-columns:0.86fr 0.94fr 1.42fr;align-items:stretch;}
.cmp__hrow{border-bottom:1px solid var(--line);}
.cmp__h{padding:16px 26px;display:flex;align-items:center;gap:8px;}
.cmp__h--p{justify-content:center;}
.cmp__h--p .lab--p img{width:14px;height:14px;object-fit:contain;filter:brightness(0) invert(1);}
.cmp__h .lab{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.625rem;
  letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);
  border:1px solid var(--line);background:var(--subtle);border-radius:999px;padding:5px 11px;}
.cmp__h .lab--p{color:var(--blue-700);border-color:var(--blue-100);background:var(--blue-50);}
.cmp__h .lab svg{width:11px;height:11px;}
.cmp__h--w{font-size:.6875rem;font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);}
/* PACR column band */
/* ---- PACR column: a physically larger,raised panel ---- */
.cmp__h--p,.cmp__c--p{position:relative;z-index:2;background:#fff;
  border-left:1px solid var(--blue-200);border-right:1px solid var(--blue-200);
  box-shadow:-14px 0 30px -22px rgba(10,170,235,.55),14px 0 30px -22px rgba(10,170,235,.55);}
/* header cell rises above the card */
.cmp__h--p{margin-top:-22px;padding-top:38px;padding-bottom:20px;
  border-top:1px solid var(--blue-200);border-radius:20px 20px 0 0;
  background:linear-gradient(180deg,var(--blue-50),#fff 92%);}
/* last cell extends below the card */
.cmp__row:last-child .cmp__c--p{margin-bottom:-22px;padding-bottom:44px;
  border-bottom:1px solid var(--blue-200);border-radius:0 0 20px 20px;}
/* bigger,stronger content in the PACR column */
.cmp__c--p{padding:30px 28px;font-size:1rem;line-height:1.6;font-weight:500;color:var(--ink);}
.cmp__h--p .lab--p{background:var(--blue-600);color:#fff;border-color:var(--blue-600);
  font-weight:600;font-size:.6875rem;padding:6px 14px;}
.cmp__row:hover .cmp__c--p{background:var(--blue-50);}
/* recede the "other tools" column */
.cmp__c--o{font-size:.875rem;color:var(--ink-faint);}
.cmp__h .lab{opacity:.8;}
.cmp__row{border-top:1px solid var(--line-soft);transition:background-color .22s var(--ease);}
.cmp__row:first-child{border-top:0;}
.cmp__row:hover{background:rgba(10,22,38,.014);}
.cmp__c{padding:24px 26px;font-size:.9375rem;line-height:1.6;display:flex;align-items:flex-start;gap:9px;}
.cmp__c--w{font-weight:600;color:var(--ink);letter-spacing:-.01em;}
.cmp__c--o{color:var(--ink-muted);}
.cmp__c--p{color:var(--ink);font-weight:500;}
.cmp__ck{width:17px;height:17px;flex:none;margin-top:4px;color:var(--blue-600);stroke-width:2.6;}
/* mobile cards */
.cmp__cards{display:grid;gap:14px;}
@media(min-width:880px){.cmp__cards{display:none;}}
.cmp__mc{border:1px solid var(--line);border-radius:20px;background:#fff;padding:20px;
  box-shadow:0 1px 2px rgba(10,22,38,.04);}
.cmp__mc h3{font-size:1rem;font-weight:600;letter-spacing:-.01em;color:var(--ink);}
.cmp__ml{display:inline-block;font-family:var(--mono);font-size:.5625rem;letter-spacing:.09em;
  text-transform:uppercase;color:var(--ink-faint);margin-bottom:5px;}
.cmp__ml--p{color:var(--blue-700);}
.cmp__mo{margin-top:14px;}
.cmp__mo p{font-size:.875rem;line-height:1.55;color:var(--ink-muted);}
.cmp__mp{margin-top:14px;border:1px solid var(--blue-100);border-radius:14px;
  background:linear-gradient(180deg,rgba(41,182,240,.05),rgba(10,170,235,.035));padding:14px 15px;}
.cmp__mp p{font-size:.875rem;line-height:1.55;color:var(--ink);font-weight:500;display:flex;gap:8px;align-items:flex-start;}
@media(prefers-reduced-motion:reduce){.cmp__row{transition:none;}}
.finalcta{position:relative;border-top:0;padding:clamp(72px,10vw,120px) 0 clamp(56px,8vw,88px);text-align:center;background:#fff;}
.finalcta::before{content:"";position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);
  width:min(640px,86vw);height:340px;pointer-events:none;z-index:0;
  background:radial-gradient(50% 50% at 50% 50%,rgba(10,170,235,.07),rgba(41,182,240,.04) 55%,transparent 78%);}
.finalcta__inner{position:relative;z-index:1;max-width:52rem;margin:0 auto;padding:0 20px;}
.finalcta__logo{width:40px;height:40px;margin:0 auto 22px;display:block;}
.finalcta h2{font-size:clamp(1.75rem,3.6vw,2.5rem);font-weight:400;letter-spacing:-.02em;line-height:1.12;color:var(--ink);max-width:44rem;margin:0 auto;}
.finalcta p{font-size:1.0625rem;line-height:1.6;color:var(--ink-muted);max-width:38rem;margin:16px auto 0;}
.finalcta__cta{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:32px;}
@media(max-width:480px){.finalcta__cta{flex-direction:column;align-items:stretch;max-width:20rem;margin-left:auto;margin-right:auto;}}
.egg{padding:34px 0 26px;text-align:center;}
.egg__mark{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;
    border:0;background:none;color:var(--ink-faint);opacity:.45;cursor:pointer;border-radius:8px;
    transition:opacity .25s var(--ease),color .25s var(--ease),transform .3s var(--ease);}
.egg__mark:hover{opacity:1;color:var(--v,#5B3BE0);}
.egg__mark:focus-visible{outline:2px solid var(--blue-600);outline-offset:3px;opacity:1;}
.egg__mark img{width:18px;height:18px;object-fit:contain;filter:grayscale(1);transition:filter .25s var(--ease);}
.egg__mark:hover img,.egg__mark[aria-expanded="true"] img{filter:none;}
.egg__mark[aria-expanded="true"]{opacity:1;}
.egg__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease);}
.egg__panel[data-open="true"]{grid-template-rows:1fr;}
.egg__clip{overflow:hidden;min-height:0;}
.egg__note{margin:18px auto 0;max-width:34rem;text-align:left;background:#fff;border:1px solid var(--line);
    border-radius:16px;padding:26px 28px;box-shadow:0 0 0 5px rgba(10,170,235,.045),var(--shadow-card);
    opacity:0;transform:translateY(6px);transition:opacity .35s var(--ease) .1s,transform .35s var(--ease) .1s;}
.egg__panel[data-open="true"] .egg__note{opacity:1;transform:none;}
.egg__note p{font-size:.9375rem;line-height:1.65;color:var(--ink-soft);}
.egg__note p+p{margin-top:12px;}
.egg__cta{margin-top:18px;text-align:center;}
@media(prefers-reduced-motion:reduce){.egg__panel,.egg__note,.egg__mark{transition:none;}
.egg__panel[data-open="true"] .egg__note{opacity:1;transform:none;}}
/* ===== time calculator ===== */
.calc2{margin-top:clamp(28px,3.5vw,44px);display:grid;grid-template-columns:1fr;gap:0;
  border:1px solid var(--line);border-radius:22px;background:#fff;overflow:hidden;
  box-shadow:0 1px 2px rgba(10,22,38,.04),0 18px 40px -28px rgba(10,22,38,.28);}
@media(min-width:900px){.calc2{grid-template-columns:1fr 1.05fr;}}
.calc2__in{padding:clamp(22px,3vw,36px);display:flex;flex-direction:column;gap:26px;}
/* segmented role picker */
.calc2__seg{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--subtle);}
.calc2__seg button{flex:1;border:0;background:none;border-radius:9px;padding:9px 6px;font-family:inherit;
  font-size:.8125rem;font-weight:500;color:var(--ink-muted);cursor:pointer;
  transition:background-color .2s var(--ease),color .2s var(--ease),box-shadow .2s var(--ease);}
.calc2__seg button[aria-pressed="true"]{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(10,22,38,.08);}
/* fields */
.calc2__row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px;}
.calc2__row label{font-size:.9375rem;color:var(--ink-soft);}
.calc2__row output{font-size:1.375rem;font-weight:500;color:var(--ink);letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;}
/* slider */
.calc2 input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:22px;background:none;cursor:pointer;}
.calc2 input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:999px;
  background:linear-gradient(90deg,var(--blue-600) var(--fill,50%),var(--sunken) var(--fill,50%));}
.calc2 input[type=range]::-moz-range-track{height:6px;border-radius:999px;background:var(--sunken);}
.calc2 input[type=range]::-moz-range-progress{height:6px;border-radius:999px;background:var(--blue-600);}
.calc2 input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;
  background:#fff;border:1px solid var(--line-strong);margin-top:-7px;
  box-shadow:0 1px 3px rgba(10,22,38,.18);transition:transform .15s var(--ease),border-color .15s var(--ease);}
.calc2 input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;
  border:1px solid var(--line-strong);box-shadow:0 1px 3px rgba(10,22,38,.18);}
.calc2 input[type=range]:hover::-webkit-slider-thumb{border-color:var(--blue-600);transform:scale(1.06);}
.calc2 input[type=range]:focus-visible::-webkit-slider-thumb{outline:2px solid var(--blue-600);outline-offset:2px;}
/* result panel */
.calc2__out{padding:clamp(22px,3vw,36px);background:linear-gradient(168deg,var(--blue-50),#fff 70%);
  border-top:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;}
@media(min-width:900px){.calc2__out{border-top:0;border-left:1px solid var(--line);}}
.calc2__eyebrow{font-family:var(--mono);font-size:.625rem;letter-spacing:.11em;text-transform:uppercase;color:var(--blue-700);}
.calc2__big{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-top:12px;}
.calc2__big span:first-child{font-size:clamp(3rem,6vw,4.25rem);font-weight:400;letter-spacing:-.03em;
  line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;}
.calc2__big .u{font-size:1rem;color:var(--ink-muted);}
.calc2__sub{font-size:.9375rem;color:var(--ink-muted);margin-top:10px;}
/* comparison bars */
.calc2__bars{margin-top:32px;padding-top:0;display:grid;gap:16px;}
.calc2__barhead{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:7px;}
.calc2__barhead span{font-size:.8125rem;color:var(--ink-muted);}
.calc2__barhead b{font-size:.9375rem;font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums;}
.calc2__track{height:8px;border-radius:999px;background:var(--sunken);overflow:hidden;}
.calc2__track i{display:block;height:100%;border-radius:999px;transition:width .5s var(--ease-out);}
.calc2__track .is-before{background:var(--line-strong);}
.calc2__track .is-after{background:linear-gradient(90deg,var(--blue-500),var(--blue-600));}
.calc2__note{font-size:.75rem;line-height:1.6;color:var(--ink-faint);margin-top:24px;}
@media(prefers-reduced-motion:reduce){.calc2__track i{transition:none;}}
/* mode toggles */
.calc2__modes{display:grid;gap:8px;}
.calc2__mode{display:block;cursor:pointer;}
.calc2__mode input{position:absolute;opacity:0;width:0;height:0;}
.calc2__modebox{display:flex;flex-direction:column;gap:2px;position:relative;
  border:1px solid var(--line);border-radius:12px;padding:12px 14px 12px 42px;background:#fff;
  transition:border-color .2s var(--ease),background-color .2s var(--ease),box-shadow .2s var(--ease);}
.calc2__modebox::before{content:"";position:absolute;left:14px;top:50%;transform:translateY(-50%);
  width:18px;height:18px;border-radius:6px;border:1px solid var(--line-strong);background:#fff;
  transition:background-color .2s var(--ease),border-color .2s var(--ease);}
.calc2__modebox::after{content:"";position:absolute;left:20px;top:50%;
  width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;
  transform:translateY(-60%) rotate(45deg) scale(.6);opacity:0;
  transition:opacity .2s var(--ease),transform .2s var(--ease);}
.calc2__mode input:checked+.calc2__modebox{border-color:var(--blue-200);background:var(--blue-50);}
.calc2__mode input:checked+.calc2__modebox::before{background:var(--blue-600);border-color:var(--blue-600);}
.calc2__mode input:checked+.calc2__modebox::after{opacity:1;transform:translateY(-60%) rotate(45deg) scale(1);}
.calc2__mode input:focus-visible+.calc2__modebox{outline:2px solid var(--blue-600);outline-offset:2px;}
.calc2__mode:hover .calc2__modebox{border-color:var(--line-strong);}
.calc2__modebox .t{font-size:.9375rem;font-weight:500;color:var(--ink);}
.calc2__modebox .s{font-size:.8125rem;color:var(--ink-muted);}
.calc2__field[hidden]{display:none;}
.calc2__field{transition:opacity .25s var(--ease);}
@media(prefers-reduced-motion:reduce){.calc2__modebox,.calc2__modebox::before,.calc2__modebox::after{transition:none;}}
.calc2__mode.is-locked{cursor:default;}
.calc2__mode.is-locked .calc2__modebox{opacity:.92;}
/* ---- header revisions (edit in marketing/src) ---- */

/* The Features menu lists stages only,and the whole column is the link:
   heading{display:block;cursor:pointer;}
/* The tabs sit in the middle of the bar rather than tucked beside the logo. */
@media(min-width:1024px){.nav{display:flex;flex:1;justify-content:center;}}
/* Log in reads as a button too: the same pill as the primary action,outlined instead of filled. Visible at every width{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  height:38px;padding:0 18px;border-radius:999px;white-space:nowrap;
  border:1px solid var(--line-strong);background:#fff;color:var(--ink);
  font-size:.875rem;font-weight:500;
  transition:border-color .15s var(--ease),background-color .15s var(--ease),color .15s var(--ease);}
/* Both header buttons are the same size,so the pair reads as one control.
   124px is the width of "Explore PACR"{min-width:124px;}
/* One call to action at a time. Below the desktop breakpoint the header's own
   button gives way to the bar,which rides the sticky header and appears once
   the page's primary button has scrolled out of sight. */
@media(max-width:1023px){.hdr__cta{display:none;}}
/* The burger ships both icons with hidden on the closed one,but the hidden
   attribute does not style an SVG element{display:none;}
/* The logo wall holds real marks,shown at full size and in their own
   colours rather than the placeholders' dimmed grayscale. A max-width keeps
   the wide wordmarks from dwarfing the square crests,since the set runs
   from 4.8:1 (Stanford) to square (IIT Madras). */
/* The science field deliberately runs past the logo row and dissolves
   below it,but it belongs behind: equations crossing a university crest
   read as a rendering fault. The section is already positioned,so it only
   needs a layer above the field's z-index:0. */
.trac{z-index:1;}
.trac__row{gap:26px 56px;}
.trac__row img{max-height:64px;max-width:225px;width:auto;opacity:1;filter:none;
  transition:transform .2s var(--ease);}
/* The bundle dimmed a logo to 70% on hover,which on a full-colour mark
   reads as it losing brightness. Grow it slightly instead. */
.trac__row li:hover img{opacity:1;transform:scale(1.07);}
/* One height does not suit the whole set: it runs from 4.8:1 wordmarks
   (Stanford) to the AIIMS crest,which is square. Capping a square mark at
   a wordmark's height leaves it looking half the size. */
.trac__row img[src*="aiims"]{max-height:104px;}
.trac__row img[src*="cell-press"]{max-height:86px;}
.trac__row img[src*="jama"]{max-height:76px;}
/* One button shape across the whole site. The bundle shipped two
   generations: eight pages use a 38px pill,while the pricing and AI pages
   use an 8px-radius 44px button with its own small and large sizes — so the
   identical header markup came out a different shape on those two. These
   rules are last in every page's stylesheet,so the pill wins everywhere. */
.btn{border-radius:999px;height:38px;padding:0 18px;font-size:.875rem;white-space:nowrap;}
.btn--sm{height:38px;padding:0 18px;font-size:.875rem;}
/* The hero's call to action carries the page,so it is the larger of the
   two sizes; the header keeps the 38px one. */
.btn--lg{height:52px;padding:0 30px;font-size:1rem;}
.btn--block{width:100%;}
/* Header height matches the app's own header. The mark here is the full
   wordmark rather than the app's square icon,so it is set shorter than the
   app's 46px: same presence{height:70px;}
/* The bundle's blue,restated in PACR's. Tokens cover most of the site;
   the hardcoded values in this stylesheet were remapped in the source. */
:root{
  --blue-50:#EAF7FE;
  --blue-100:#CFEEFB;
  --blue-200:#A5DFF8;
  --blue-500:#29B6F0;
  --blue-600:#0AAAEB;
  --blue-700:#0787BD;
  --blue-950:#06485F;
}

/* ── appended by scripts/import-marketing.mjs ──
   While the interaction layer has not run yet, .reveal must not hide
   anything. Last in the file so it outranks the identically specific
   `.js .reveal` rules above. See components/Marketing/MarketingPage. */
.pacr-pre .reveal{opacity:1;transform:none;filter:none;transition:none;}


/* ── Form rows ──
   A field carries a 16px top margin, zeroed on the first one — correct for a
   stacked list, but a .frow is a grid with its own 16px gap. In a two-column
   row only the first field was zeroed, so the right-hand column sat 16px
   below the left and no two labels lined up. Let the grid do the spacing
   inside a row, and space the rows themselves. */
.frow{margin-top:16px;}
.frow:first-child{margin-top:0;}
.frow>.fld{margin-top:0;}
/* A select renders its text a little taller than an input, so a row mixing
   the two came out uneven. Pin them to one height. */
.fld input,.fld select{height:44px;}
.fld select{line-height:1.2;}

/* ── Lead forms ──
   The bundle never had to report a failure, so it has no colour for one.
   One token, used by both the field state and the form-level message. */
:root{--danger:#C0392B;--danger-line:#F0C4BE;--danger-bg:#FDF1EF;}

/* The honeypot. Off-screen rather than display:none or hidden: a bot that
   skips what it cannot see would walk straight past those, and this field
   only works if it is tempting. Real users never reach it — it is out of the
   tab order and hidden from the accessibility tree. */
.hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;}

/* A field the visitor needs to come back to, and the reason under it. */
.fld[data-invalid="true"] input,
.fld[data-invalid="true"] select,
.fld[data-invalid="true"] textarea{border-color:var(--danger);}
.fld__err{display:block;margin-top:6px;font-size:.8125rem;line-height:1.4;color:var(--danger);}

/* Whatever the form as a whole has to say: a rejection from the API, a rate
   limit, or a request that never arrived. */
.fmsg{margin-top:16px;padding:12px 14px;border-radius:10px;font-size:.875rem;line-height:1.5;
  background:var(--danger-bg);border:1px solid var(--danger-line);color:var(--danger);}
.fmsg[hidden]{display:none;}

/* In flight. The button keeps its size so the form does not shift. */
form[data-pform][data-busy="true"] button[type="submit"]{opacity:.6;cursor:default;}
