:root{font-family:Helvetica,Arial,sans-serif;color:#202b3e;background:#f5f7fa;font-synthesis:none;--muted:#627086;--line:#dce2ea;--accent:#0b5ead;--navy:#222942}*{box-sizing:border-box}body{margin:0}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:wait}a{color:var(--accent)}[hidden]{display:none!important}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.shell{max-width:1480px;margin:auto;padding:0 24px}header{height:90px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:22px;letter-spacing:-.8px;font-weight:700;text-decoration:none;color:#202b3e}.brand span{font-weight:450;color:var(--muted);font-size:18px;margin-left:10px}#schedule{font-size:12px;color:var(--muted)}.heading{display:flex;justify-content:space-between;align-items:center;margin:48px 0 24px}h1{margin:0;font-weight:600;font-size:32px;letter-spacing:-1px}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}@media(max-width:700px){.shell{padding:0 18px}header{height:72px}.brand{font-size:20px}.brand span{font-size:15px;margin-left:5px}#schedule{font-size:10px}.heading{margin-top:32px}h1{font-size:27px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.state-notes{border-top:1px solid var(--line);padding-top:16px}.source-links{list-style:none;margin:0 0 20px;padding:0}.source-links li{margin:7px 0}.source-links a{font-size:12px;text-decoration:none;overflow-wrap:anywhere}.source-links a:hover{text-decoration:underline}
.heading{gap:18px}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:100%;max-width:400px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:32px}.login-card h1{font-size:27px;line-height:1.2;margin:18px 0 30px}.login-card label{display:block;font-size:13px;margin-bottom:8px}.login-card input[type=password]{width:100%;font:inherit;border:1px solid var(--line);border-radius:6px;padding:12px}.login-card input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.login-card button{width:100%;border:0;border-radius:6px;padding:12px;background:var(--accent);color:#fff;margin-top:18px}#login-error{font-size:12px;color:#a03932;margin:10px 0 0}@media(max-width:700px){.heading{align-items:flex-start}.heading h1{font-size:25px}.login-card{padding:26px}}

/* HBS visual identity: navy masthead, blue accents, compact serif wordmark. */
header{height:102px;background:var(--navy);color:white;position:relative;border:0;box-shadow:0 0 0 100vmax var(--navy);clip-path:inset(0 -100vmax);border-bottom:3px solid #8db9df}
.brand{display:inline-flex;flex-direction:column;align-items:flex-start;gap:1px;color:var(--navy);text-decoration:none}
.brand .brand-name{font-family:Georgia,"Times New Roman",serif;font-size:35px;line-height:1;font-weight:700;letter-spacing:.2px;color:inherit;margin:0}
.brand .brand-subtitle{font-size:10px;line-height:1.5;text-transform:uppercase;letter-spacing:1.65px;font-weight:600;color:inherit;margin:0}
header .brand{color:white}header .brand-subtitle{color:#b8d6ee}
.header-meta{display:flex;flex-direction:column;gap:7px;text-align:right}.demo-label{font-size:12px;color:#e4edf6;letter-spacing:.2px}#schedule{color:#b8c8da}
.heading{margin:36px 0 24px}h1{color:var(--navy);letter-spacing:-.9px;line-height:1.2}
.login-page{background:var(--navy)}.login-card{max-width:430px;border:0;border-top:4px solid #8db9df;border-radius:8px;box-shadow:0 16px 50px #0003;padding:38px}.login-card .brand{margin-bottom:14px}.login-card h1{font-size:26px;margin:20px 0 30px}.login-card button{background:var(--accent);font-weight:600}.login-card button:hover{background:#084c8d}
@media(max-width:700px){header{height:88px}.brand .brand-name{font-size:29px}.brand .brand-subtitle{font-size:8px;letter-spacing:1.3px}.demo-label{font-size:10px}#schedule{font-size:10px}.heading{margin-top:28px;gap:12px}.heading h1{font-size:26px}.login-card{padding:30px}}

/* Pipeline view. */
.pipeline{margin:0 0 36px}.pipeline-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:16px}.pipeline-head h2{margin:0 0 8px;font-size:22px;font-weight:600;color:var(--navy);letter-spacing:-.4px}.pipeline-intro{margin:0 0 6px;max-width:820px;font-size:13px;line-height:1.7;color:#46556b}.pipeline-intro strong{color:#263852}.pipeline-meta{margin:0;font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.run-button{flex-shrink:0;border:0;border-radius:6px;padding:12px 22px;background:var(--accent);color:#fff;font-weight:600;font-size:14px}.run-button:hover:not(:disabled){background:#084c8d}.run-button:disabled{opacity:.5;cursor:not-allowed}
.pipeline-permission{font-size:12px;color:#87651e;margin:0 0 14px}#pipeline-notice{font-size:12px;color:#287044;margin:0 0 12px}#pipeline-notice.error{color:#a03932}
.orders-card{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px 18px;margin:0 0 16px}.orders-text strong{font-size:13px;color:var(--navy)}.orders-text p{margin:4px 0 0;font-size:12px;line-height:1.6;color:#46556b}.stale{color:#a03932}
.drop-zone{flex-shrink:0;border:1.5px dashed #a9bfd6;border-radius:8px;padding:14px 18px;font-size:12px;color:#46556b;cursor:pointer;text-align:center;max-width:330px}.drop-zone.dragging{background:#edf4fb;border-color:var(--accent)}.drop-zone input{display:none}.drop-link{color:var(--accent);text-decoration:underline}
.pipeline-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:#fff}.pipeline-table{width:100%;min-width:980px;border-collapse:collapse;font-size:12px;line-height:1.5;text-align:left}.pipeline-table thead{background:#eef2f7}.pipeline-table th,.pipeline-table td{padding:11px 13px;border-bottom:1px solid var(--line);vertical-align:top}.pipeline-table thead th{font-size:11px;font-weight:600;color:#54637a;white-space:nowrap}.pipeline-table tr:last-child>*{border-bottom:0}.pipeline-table tbody th{font-weight:600;color:var(--navy);white-space:nowrap}
.state-name{display:block}.state-code{display:block;font-size:10px;font-weight:500;color:var(--muted)}.option-label{display:block;margin-bottom:4px;color:#263852}.option-why{display:block;margin-top:4px;font-size:11px;color:var(--muted)}.run-when{display:block;margin-top:4px;font-size:11px;color:var(--muted)}.run-error{display:block;margin-top:4px;font-size:11px;color:#a03932}.run-warning{color:#87651e}.muted{color:var(--muted)}.download{display:block;margin-top:4px;font-size:11px}
.badge{display:inline-block;font-size:10px;font-weight:600;border-radius:10px;padding:2px 8px;background:#eef2f7;color:#54637a;white-space:nowrap}.badge-ready,.badge-success{background:#e3f2e8;color:#287044}.badge-needs_purchase,.badge-needs_setup,.badge-partial,.badge-no_orders{background:#fbf0dc;color:#87651e}.badge-failed,.badge-action_required{background:#fbe5e3;color:#a03932}.badge-running,.badge-pending{background:#e3eefa;color:var(--accent)}
.segmented{display:inline-flex;border:1px solid var(--line);border-radius:6px;overflow:hidden}.segmented button{border:0;background:#fff;padding:6px 11px;font-size:11px;color:#46556b}.segmented button+button{border-left:1px solid var(--line)}.segmented button[aria-pressed=true]{background:var(--accent);color:#fff}.segmented button:disabled{cursor:not-allowed;opacity:.45}.segmented button[aria-pressed=true]:disabled{opacity:.6}
.sync-title{font-size:15px;font-weight:600;color:var(--navy);margin:24px 0 10px}.sync{background:#fff;border:1px solid var(--line);border-radius:8px;margin-bottom:8px}.sync>summary{padding:12px 14px;font-size:12px}.sync>summary strong{color:var(--navy)}.sync-scroll{overflow-x:auto;border-top:1px solid var(--line)}.sync-table{width:100%;min-width:640px;border-collapse:collapse;font-size:12px}.sync-table th,.sync-table td{padding:8px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.sync-table th{font-weight:600;color:#263852;white-space:nowrap}.sync-table tr:last-child>*{border-bottom:0}
@media(max-width:700px){.pipeline-head{flex-direction:column}.run-button{width:100%}.orders-card{flex-direction:column;align-items:stretch}.drop-zone{max-width:none}.pipeline-table tbody th{position:sticky;left:0;background:#fff;box-shadow:1px 0 var(--line)}}
.row-run{border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--accent);font-size:11px;font-weight:600;padding:6px 12px;white-space:nowrap}.row-run:hover:not(:disabled){background:#edf4fb;border-color:#b3c9df}.row-run:disabled{cursor:not-allowed;opacity:.45}.pipeline-help{margin:0 0 14px;font-size:12px;color:var(--muted)}.pipeline-help strong{color:#46556b}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.state-notes{margin-top:6px;font-weight:400}.state-notes>summary{font-size:11px;color:var(--accent);cursor:pointer}.state-notes[open]{min-width:280px;max-width:420px;white-space:normal}.state-notes dl{margin:8px 0 0}.state-notes dt{font-size:11px;font-weight:600;color:#46556b;margin-top:8px}.state-notes dd{margin:2px 0 0;font-size:11px;line-height:1.55;color:#5c6b80}.state-notes .source-links{margin:8px 0 0;padding-left:16px}.state-notes .source-links a{font-size:11px}
.pipeline-table thead th{position:relative}
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:0 0 24px}.tabs [role=tab]{border:0;background:none;padding:10px 14px;font-size:14px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px}.tabs [role=tab][aria-selected=true]{color:var(--navy);font-weight:600;border-bottom-color:var(--accent)}.tabs [role=tab]:hover{color:var(--navy)}
.results-toggle{display:block;margin-top:4px;border:0;background:none;padding:0;color:var(--accent);font-size:11px;text-decoration:underline}.results-row>td{background:#f7f9fc;padding:0}.results-panel{padding:16px 18px;max-width:1200px}.results-meta{margin:0 0 10px;font-size:12px;color:#46556b}.results-links{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:14px}.results-links a{font-size:12px}.results-heading{margin:14px 0 8px;font-size:12px;font-weight:600;color:var(--navy)}.results-samples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.results-samples pre{margin:0;font-size:10px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;max-height:360px;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:6px;background:#fff;color:#354d6b}@media(max-width:850px){.results-samples{grid-template-columns:1fr}}
.results-tab{margin:0 0 48px}.results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}.state-card{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 2px 5px #22294204;min-width:0}.state-card:has(.card-body){grid-column:1/-1;border-color:#94b5d6}.card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:start;padding:18px 20px}.card-title h3{margin:0 0 4px;font-size:17px;font-weight:600;color:var(--navy)}.card-title p{margin:0;font-size:12px;color:var(--muted)}.card-head .badge{grid-column:1;justify-self:start}.card-count{grid-column:1;font-size:12px;color:#46556b;font-variant-numeric:tabular-nums}.card-toggle{grid-column:2;grid-row:1;width:30px;height:30px;border:0;border-radius:5px;background:none;color:var(--accent);font-size:22px;line-height:1;padding:0}.card-toggle:hover{background:#e7f0fa}.card-body{border-top:1px solid var(--line);background:#fafbfd;padding:4px 0 16px}.card-body .results-panel{padding:12px 20px}.card-facts{display:flex;flex-wrap:wrap;gap:8px 32px;margin:12px 20px 0}.card-facts dt{font-size:11px;font-weight:600;color:#55657c}.card-facts dd{margin:2px 0 0;font-size:12px;color:#46556b}.card-body>.run-error{margin:10px 20px 0}.card-body>.state-notes{margin:8px 20px 0}.state-card .state-notes[open]{max-width:900px}@media(min-width:701px) and (max-width:1000px){.results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.results-grid{grid-template-columns:minmax(0,1fr)}}
.settings-tab{margin:0 0 48px}.settings-table{min-width:720px}
.activity-tab{margin:0 0 48px}
.card-head{cursor:pointer}.card-head:hover .card-title h3{color:var(--accent)}
.card-toggle{display:grid;place-items:center}.card-toggle::before{content:"";width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .15s}.card-toggle[aria-expanded=true]::before{transform:translateY(2px) rotate(-135deg)}@media(prefers-reduced-motion:reduce){.card-toggle::before{transition:none}}
.role-input{position:absolute;opacity:0;pointer-events:none}.role-toggle{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:6px;overflow:hidden;margin-bottom:20px}.role-toggle label{margin:0;padding:10px;text-align:center;cursor:pointer;font-size:14px}#role-viewer:checked~.role-toggle label[for=role-viewer],#role-admin:checked~.role-toggle label[for=role-admin]{background:var(--accent);color:#fff;font-weight:600}#role-viewer:focus-visible~.role-toggle label[for=role-viewer],#role-admin:focus-visible~.role-toggle label[for=role-admin]{outline:2px solid var(--accent);outline-offset:-2px}.admin-only{display:none;margin-bottom:16px}#role-admin:checked~.admin-only{display:block}.login-card input[type=text]{width:100%;font:inherit;border:1px solid var(--line);border-radius:6px;padding:12px}
