:root{color-scheme:light;--bg:#f4f6f9;--panel:#fff;--ink:#172033;--muted:#667085;--line:#d8dee8;--accent:#2457d6;--accent-soft:#e9efff;--danger:#b42318;--warn:#a15c00;--ok:#16794a;--rail:#101828;--shadow:0 12px 32px rgba(16,24,40,.08);font-family:"IBM Plex Sans",system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}.skip-link{position:fixed;left:1rem;top:-4rem;z-index:100;background:#fff;padding:.75rem}.skip-link:focus{top:1rem}.product-landing{min-height:100vh;background:linear-gradient(120deg,var(--landing-a),var(--landing-b))}.landing-nav{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:auto;padding:1.25rem 2rem}.brand{display:flex;align-items:center;gap:.7rem;color:inherit;text-decoration:none;font-weight:800;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.5rem;background:var(--accent);color:#fff}.landing-actions{display:flex;gap:.75rem}.landing-hero{max-width:1200px;margin:auto;padding:7rem 2rem 5rem;display:grid;grid-template-columns:1.25fr .75fr;gap:5rem;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font:700 .72rem "IBM Plex Mono",monospace;color:var(--accent)}h1,h2,h3,p{margin-top:0}.landing-hero h1{font-family:var(--display,"IBM Plex Sans"),sans-serif;font-size:clamp(3rem,6vw,6.3rem);line-height:.92;letter-spacing:-.065em;margin:.7rem 0 1.5rem}.landing-hero p{font-size:1.15rem;line-height:1.7;max-width:44rem;color:var(--muted)}.hero-proof{border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);background:rgba(255,255,255,.65);backdrop-filter:blur(12px);padding:1.25rem;box-shadow:var(--shadow)}.hero-proof div{padding:1rem 0;border-bottom:1px solid var(--line)}.hero-proof div:last-child{border:0}.hero-proof strong,.hero-proof span{display:block}.hero-proof span{color:var(--muted);font-size:.85rem;margin-top:.25rem}.landing-section{max-width:1200px;margin:auto;padding:5rem 2rem}.cap-grid,.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.cap-card,.price-card{background:var(--panel);border:1px solid var(--line);padding:1.5rem;min-height:13rem}.cap-card p,.price-card p{color:var(--muted);line-height:1.55}.price-card.featured{border:2px solid var(--accent);transform:translateY(-.5rem)}.price{font:700 2rem "IBM Plex Mono",monospace}.fine-print{font-size:.8rem;color:var(--muted);line-height:1.5}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:1px solid var(--line);border-radius:.45rem;background:#fff;color:var(--ink);padding:.68rem 1rem;text-decoration:none;font-weight:700;cursor:pointer}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn:focus-visible,.nav-link:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:2px}.app-shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}.app-sidebar{background:var(--rail);color:#dce5f5;padding:1.2rem;position:sticky;top:0;height:100vh;overflow:auto}.app-sidebar .brand{color:#fff;margin-bottom:2rem}.nav-group-label{font:700 .66rem "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.12em;color:#90a2bd;margin:1.3rem .65rem .5rem}.nav-link{width:100%;display:flex;align-items:center;gap:.7rem;border:0;background:transparent;color:#cbd5e1;padding:.72rem;border-radius:.4rem;text-align:left;cursor:pointer}.nav-link[aria-current="page"]{background:var(--accent);color:#fff}.app-main{min-width:0}.app-header{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 1.6rem;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(10px)}.product-name{font-weight:800}.header-tools{display:flex;gap:.5rem;align-items:center}.workspace{padding:1.5rem;max-width:1600px;margin:auto}.screen{display:none}.screen.active{display:block}.screen-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.screen-head h1{font-size:1.8rem;letter-spacing:-.04em;margin-bottom:.2rem}.screen-head p{color:var(--muted);margin:0}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-bottom:1.2rem}.metric{background:var(--panel);border:1px solid var(--line);padding:1rem}.metric span,.field span{display:block;color:var(--muted);font-size:.75rem}.metric strong{display:block;font:700 1.4rem "IBM Plex Mono",monospace;margin-top:.4rem}.panel{background:var(--panel);border:1px solid var(--line);box-shadow:0 1px 2px rgba(16,24,40,.03);padding:1rem;margin-bottom:1rem}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.panel-head h2{font-size:1rem;margin:0}.upload-zone{border:1px dashed color-mix(in srgb,var(--accent) 55%,var(--line));background:var(--accent-soft);padding:2rem;text-align:center}.upload-zone input{display:none}.status{padding:.7rem .85rem;border-left:3px solid var(--accent);background:var(--accent-soft);font-size:.85rem;margin:.8rem 0}.status.error{border-color:var(--danger);background:#fff1f0;color:var(--danger)}.status.warn{border-color:var(--warn);background:#fff8e7;color:#744000}.field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.field{display:block}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:.35rem;padding:.65rem;background:#fff;color:var(--ink);margin-top:.3rem}.field textarea{min-height:94px;resize:vertical}.field.full{grid-column:1/-1}.table-wrap{overflow:auto;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;font-size:.82rem}th,td{text-align:left;padding:.72rem;border-bottom:1px solid var(--line);vertical-align:top}th{position:sticky;top:0;background:#f7f9fc;font:700 .68rem "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}tr.exception td{background:#fff0ef;color:#7a271a}.tab-row{display:flex;gap:.35rem;overflow:auto;padding-bottom:.5rem}.tab{white-space:nowrap}.tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.review-section{display:none}.review-section.active{display:block}.split{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.document-paper{min-height:320px;white-space:pre-wrap;background:#fff;border:1px solid var(--line);padding:2rem;font-family:Georgia,serif;line-height:1.7}.outstanding{border-left:4px solid var(--danger)}.empty{padding:2rem;text-align:center;color:var(--muted)}.auth-gate{position:fixed;inset:0;background:rgba(16,24,40,.72);display:grid;place-items:center;z-index:100}.auth-gate[hidden]{display:none}.auth-card{width:min(92vw,420px);background:#fff;padding:2rem}.toast{position:fixed;right:1rem;bottom:1rem;background:var(--rail);color:#fff;padding:.8rem 1rem;border-radius:.4rem;box-shadow:var(--shadow);z-index:200}.toast[hidden]{display:none}
@media(max-width:900px){.landing-hero{grid-template-columns:1fr;padding-top:4rem}.cap-grid,.price-grid{grid-template-columns:1fr}.price-card.featured{transform:none}.app-shell{grid-template-columns:1fr}.app-sidebar{position:static;height:auto;display:flex;align-items:center;gap:1rem;overflow:auto;padding:.75rem}.app-sidebar .brand{margin:0;min-width:max-content}.nav-group-label{display:none}.app-sidebar nav{display:flex;gap:.25rem}.nav-link{min-width:max-content}.metric-grid{grid-template-columns:1fr 1fr}.field-grid,.split{grid-template-columns:1fr}.field.full{grid-column:auto}}

/* Pipeline enterprise identity: a claim-file P with one evidence locator. */
.pipeline-logo-mark {
  --pipeline-logo-signal: #c86418;
  position: relative;
  display: inline-block;
  flex: 0 0 auto;
  width: 2.15rem;
  height: 2.3rem;
  color: inherit;
}

.pipeline-logo-mark::before {
  content: "";
  position: absolute;
  inset: 0;
  background: currentColor;
  -webkit-mask: url("/shared/pipeline-p.svg") center / contain no-repeat;
  mask: url("/shared/pipeline-p.svg") center / contain no-repeat;
}

.pipeline-logo-mark::after {
  content: "";
  position: absolute;
  top: .28rem;
  right: -.08rem;
  width: .42rem;
  height: .42rem;
  border-radius: 50%;
  background: var(--pipeline-logo-signal);
  box-shadow: 0 0 0 2px color-mix(in srgb, currentColor 18%, transparent);
}

.pipeline-wordmark {
  display: inline-flex;
  align-items: baseline;
  color: inherit;
  font-family: "Avenir Next", "IBM Plex Sans", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.08rem;
  font-style: normal;
  line-height: 1;
  letter-spacing: -.052em;
  text-transform: none;
  white-space: nowrap;
}

.pipeline-wordmark-pipe { font-weight: 780; }
.pipeline-wordmark-line { font-weight: 520; }

.pipeline-wordmark--header {
  font-size: 1.14rem;
  letter-spacing: -.056em;
}

.product-edition {
  display: inline-block;
  margin-left: .55rem;
  padding-left: .55rem;
  border-left: 1px solid currentColor;
  color: var(--muted, #626b75);
  font: 700 .59rem "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;
  letter-spacing: .09em;
  line-height: 1;
  text-transform: uppercase;
  vertical-align: .12rem;
}

.brand:hover .pipeline-logo-mark { transform: translateY(-1px); }
.brand:focus-visible { outline: 3px solid color-mix(in srgb, var(--accent, #2157c8) 35%, transparent); outline-offset: 4px; }

.auth-brand {
  display: flex;
  align-items: center;
  gap: .85rem;
  margin-bottom: 1.35rem;
  color: var(--rail, #17243a);
}

.auth-brand h2 { margin: 0; }

@media (prefers-reduced-motion: no-preference) {
  .pipeline-logo-mark { transition: transform 160ms ease; }
}
@media(max-width:560px){.landing-nav,.landing-hero,.landing-section{padding-left:1rem;padding-right:1rem}.landing-actions .secondary{display:none}.landing-hero h1{font-size:3rem}.app-header{padding:0 .8rem}.workspace{padding:.8rem}.metric-grid{grid-template-columns:1fr}.screen-head{align-items:flex-start;flex-direction:column}.document-paper{padding:1rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.btn:disabled,button:disabled,.btn[aria-disabled="true"],button[aria-disabled="true"]{background:#eef2f6!important;border-color:#94a3b8!important;border-style:dashed;color:#52606d!important;cursor:not-allowed;filter:saturate(.25);opacity:.72;box-shadow:none;transform:none}
.btn:disabled:hover,button:disabled:hover,.btn[aria-disabled="true"]:hover,button[aria-disabled="true"]:hover{background:#eef2f6!important;border-color:#94a3b8!important;color:#52606d!important;cursor:not-allowed;opacity:.72;box-shadow:none;transform:none}
