:root {
  --ink: #e9edf1; --muted: #89949e; --bg: #0a0d0f; --panel: #11161a;
  --line: #273038; --signal: #d7ff45; --danger: #ff6b68; --blue: #8fc7ff;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.record-finding.case-start{border-left-color:var(--signal);background:rgba(33,217,142,.08)}
* { box-sizing: border-box; }
body { margin: 0; color: var(--ink); background: var(--bg); min-height: 100vh; }
body::before { content: ""; position: fixed; inset: 0; pointer-events: none; opacity: .18; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 36px 36px; mask-image: linear-gradient(to bottom, black, transparent 78%); }
.neural-overlay { display: none; position: fixed; inset: 0; z-index: 1000; place-content: center; justify-items: center; padding: 30px; text-align: center; background: radial-gradient(circle at center, rgba(35,55,25,.96), rgba(4,7,9,.985) 52%); backdrop-filter: blur(9px); }
body.neural-processing .neural-overlay { display: grid; }
.neural-overlay .eyebrow { margin-top: 32px; color: var(--signal); }
.neural-overlay h2 { font-size: clamp(28px, 4vw, 48px); font-weight: 350; }
.neural-overlay > p:last-child { color: #b9c4cc; width: min(900px, calc(100vw - 48px)); line-height: 1.6; text-wrap: balance; }
.neural-visual { position: relative; width: 280px; height: 180px; filter: drop-shadow(0 0 18px rgba(215,255,69,.28)); }
.neuron { position: absolute; z-index: 2; width: 18px; height: 18px; border-radius: 50%; background: var(--signal); box-shadow: 0 0 0 7px rgba(215,255,69,.08), 0 0 28px var(--signal); animation: neural-pulse 1.4s ease-in-out infinite alternate; }
.n1 { left: 8px; top: 35px; }.n2 { left: 8px; top: 125px; animation-delay: -.6s; }.n3 { left: 130px; top: 8px; animation-delay: -.3s; }.n4 { left: 130px; top: 82px; animation-delay: -.9s; }.n5 { left: 130px; top: 154px; animation-delay: -.5s; }.n6 { right: 8px; top: 42px; animation-delay: -.8s; }.n7 { right: 8px; top: 122px; animation-delay: -.2s; }
.synapse { position: absolute; z-index: 1; height: 2px; width: 128px; transform-origin: left center; background: linear-gradient(90deg, transparent, var(--blue), var(--signal), transparent); background-size: 220% 100%; animation: neural-flow 1.1s linear infinite; }
.s1 { left: 22px; top: 45px; transform: rotate(-14deg); }.s2 { left: 22px; top: 48px; transform: rotate(19deg); }.s3 { left: 22px; top: 135px; transform: rotate(-21deg); }.s4 { left: 143px; top: 20px; transform: rotate(17deg); }.s5 { left: 143px; top: 92px; transform: rotate(-18deg); }.s6 { left: 143px; top: 164px; transform: rotate(-20deg); }
@keyframes neural-pulse { to { transform: scale(1.45); background: #fff; box-shadow: 0 0 0 12px rgba(215,255,69,.04), 0 0 38px var(--signal); } }
@keyframes neural-flow { to { background-position: -220% 0; } }
@media (prefers-reduced-motion: reduce) { .neuron, .synapse { animation-duration: 4s; } }
.shell { width: min(1220px, calc(100% - 40px)); margin: 0 auto; padding: 58px 0 80px; position: relative; }
.masthead { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 48px; }
.eyebrow { color: var(--muted); font-size: 11px; font-weight: 750; letter-spacing: .16em; text-transform: uppercase; margin: 0 0 12px; }
.pulse { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--signal); box-shadow: 0 0 14px var(--signal); margin-right: 8px; }
h1 { font-size: clamp(42px, 6vw, 76px); font-weight: 320; letter-spacing: -.055em; line-height: .95; margin: 0; }
h1 span { color: var(--signal); }
.lede { color: var(--muted); margin: 18px 0 0; font-size: 16px; }
.source-badge { border: 1px solid var(--line); color: var(--muted); padding: 12px 15px; font: 700 11px ui-monospace, monospace; letter-spacing: .12em; }
.source-badge span { color: var(--signal); padding: 0 8px; }
.product-nav { display: flex; align-items: center; gap: 10px; }
.product-nav a { display: inline-flex; align-items: center; text-decoration: none; }
body:not(.test-bench-page) .test-bench-only,
body:not(.playbooks-page) .playbooks-only,
body:not(.synthetic-page) .synthetic-only { display: none !important; }
.test-bench-setup-page .synthetic-lab,
.test-bench-setup-page .direct-query,
.test-bench-setup-page #result,
.test-bench-workbench-page .lab-start { display: none !important; }
.test-bench-setup-page .synthetic-create-form { margin-top: 18px; border: 1px solid var(--line); background: #0a0e11; }
.search-panel, .result { border: 1px solid var(--line); background: color-mix(in srgb, var(--panel) 94%, transparent); box-shadow: 0 18px 70px rgba(0,0,0,.22); }
.search-panel { padding: 28px; }
.section-heading { display: flex; gap: 15px; align-items: flex-start; }
.step { color: var(--signal); font: 700 11px ui-monospace, monospace; border-top: 1px solid var(--signal); padding-top: 5px; }
h2, h3 { margin: 0; font-weight: 550; letter-spacing: -.02em; }
.section-heading p { color: var(--muted); margin: 5px 0 0; font-size: 13px; }
form { display: grid; grid-template-columns: 1fr 1fr auto; gap: 16px; align-items: end; margin-top: 26px; }
label { display: grid; gap: 8px; color: #bdc5cc; font-size: 12px; font-weight: 650; letter-spacing: .04em; }
label small { color: var(--muted); font-weight: 400; }
input, textarea, select { width: 100%; border: 1px solid var(--line); background: #0b0f12; color: var(--ink); padding: 14px 15px; font: 500 16px ui-monospace, monospace; outline: none; transition: .2s; }
input:focus, textarea:focus, select:focus { border-color: var(--signal); box-shadow: 0 0 0 3px rgba(215,255,69,.08); }
textarea { min-height: 170px; resize: vertical; font: 13px/1.6 ui-monospace, monospace; }
.actions { display: flex; gap: 10px; }
.button { min-height: 48px; border: 1px solid var(--line); padding: 0 17px; font-weight: 720; cursor: pointer; white-space: nowrap; }
.button.primary { background: var(--signal); color: #101400; border-color: var(--signal); }
.button.primary i { margin-left: 14px; font-style: normal; }
.button.secondary { background: transparent; color: var(--ink); }
.button.danger { background: transparent; color: var(--danger); border-color: rgba(255,107,104,.5); }
.button:disabled { opacity: .45; cursor: wait; }
.request-status { color: var(--muted); font-size: 12px; margin: 17px 0 0; }
.result { margin-top: 20px; }
.result-head { display: flex; justify-content: space-between; padding: 28px; border-bottom: 1px solid var(--line); }
.status-badge { align-self: flex-start; padding: 7px 10px; border: 1px solid currentColor; color: var(--signal); font: 700 10px ui-monospace, monospace; text-transform: uppercase; letter-spacing: .12em; }
.status-badge.error { color: var(--danger); }
.status-badge.running { color: var(--blue); }
.metrics { display: grid; grid-template-columns: repeat(5, minmax(118px, 1fr)); border-bottom: 1px solid var(--line); overflow-x: auto; }
.metrics article { min-width: 0; padding: 10px 14px; border-right: 1px solid var(--line); }
.metrics article:last-child { border: 0; }
.metrics p { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .06em; margin: 0 0 3px; white-space: nowrap; }
.metrics strong { display: block; overflow: hidden; color: var(--ink); font: 500 14px/1.2 ui-monospace, monospace; text-overflow: ellipsis; white-space: nowrap; }
.metrics .accent strong { color: var(--signal); }
.content-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(280px, .7fr); }
.timeline-panel, .history-panel { padding: 28px; min-width: 0; }
.history-panel { border-left: 1px solid var(--line); }
.panel-title { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 24px; }
.panel-title .eyebrow { margin-bottom: 5px; }
.panel-title > span { color: var(--muted); font-size: 11px; }
.timeline.empty-state { color: var(--muted); padding: 38px 0; border-top: 1px solid var(--line); }
.timeline-scroll:not(.empty-state) { max-height: 560px; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; padding-right: 12px; }
.timeline-scroll:not(.empty-state)::-webkit-scrollbar { width: 8px; }
.timeline-scroll:not(.empty-state)::-webkit-scrollbar-thumb { background: #334049; border-radius: 8px; }
.timeline-item { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 18px; padding: 18px 0; border-top: 1px solid var(--line); }
.timeline-item .ids { color: var(--signal); font: 600 11px/1.7 ui-monospace, monospace; }
.timeline-item h4 { margin: 0 0 6px; font-size: 14px; }
.timeline-item p { margin: 0; color: #a9b2b9; font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; }
.timeline-item time { display: block; color: var(--muted); font: 11px ui-monospace, monospace; margin-top: 9px; }
.history { margin: 0; padding: 0; list-style: none; }
.history li { display: grid; grid-template-columns: 12px 1fr auto; gap: 11px; padding: 13px 0; border-top: 1px solid var(--line); font-size: 12px; }
.history .dot { width: 7px; height: 7px; border-radius: 50%; margin-top: 4px; background: var(--signal); }
.history .dot.error { background: var(--danger); }
.history span { color: var(--muted); }
.error-panel { margin: 24px 28px 0; padding: 18px; color: #ffd3d2; background: rgba(255,107,104,.08); border: 1px solid rgba(255,107,104,.38); }
.error-panel pre { white-space: pre-wrap; margin: 10px 0 0; font-size: 12px; }
.intelligence { padding: 28px; border-bottom: 1px solid var(--line); background: linear-gradient(135deg, rgba(215,255,69,.045), transparent 55%); }
.intelligence-title { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 20px; }
.intelligence-title .eyebrow { margin-bottom: 6px; color: var(--signal); }
.intelligence-title > span { color: var(--muted); font: 10px ui-monospace, monospace; }
.intelligence-grid { display: grid; grid-template-columns: .8fr 1.4fr 1.15fr; border: 1px solid var(--line); }
.intelligence-grid article { padding: 24px; border-right: 1px solid var(--line); min-height: 230px; }
.intelligence-grid article:last-child { border-right: 0; }
.card-index { color: var(--muted); font: 700 10px ui-monospace, monospace; letter-spacing: .1em; margin: 0 0 24px; }
.risk-value { display: flex; align-items: baseline; gap: 12px; margin-bottom: 18px; }
.risk-value strong { font-size: 32px; font-weight: 500; text-transform: uppercase; color: var(--signal); }
.risk-value strong.high, .risk-value strong.critical { color: var(--danger); }
.risk-value span { color: var(--muted); font: 12px ui-monospace, monospace; }
.risk-card ul { margin: 0; padding-left: 17px; color: #b5bec5; font-size: 12px; line-height: 1.55; }
.analysis-copy { color: #d5dbe0; font-size: 14px; line-height: 1.7; margin: 0; }
.enrichment-status { display: block; margin-top: 10px; color: var(--muted); font: 10px/1.5 ui-monospace, monospace; }
.synthetic-trip-capabilities { display: flex; align-items: center; gap: 18px; padding: 12px 14px; border: 1px solid var(--line); }
.synthetic-trip-capabilities > span { color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.synthetic-trip-capabilities label { display: inline-flex; flex-direction: row; align-items: center; gap: 7px; margin: 0; }
.synthetic-trip-capabilities input { width: auto; }
.synthetic-ticket-header .header-capability { display: inline-flex; flex-direction: row; align-items: center; gap: 7px; margin: 0; color: var(--text); font-weight: 600; }
.synthetic-ticket-header .header-capability input { width: auto; accent-color: var(--signal); }
.enrichment-status.pending, .enrichment-status.summarizing, .enrichment-status.interpreting { color: var(--blue); }.enrichment-status.failed, .enrichment-status.skipped { color: #ffcf70; }
.priority { display: inline-block; color: var(--signal); border: 1px solid rgba(215,255,69,.5); padding: 5px 8px; margin-bottom: 14px; font: 700 9px ui-monospace, monospace; text-transform: uppercase; letter-spacing: .1em; }
.action-card small { display: block; color: var(--muted); font: 10px/1.5 ui-monospace, monospace; margin-top: 18px; }
.action-playbook-detail { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line); }
.action-playbook-detail > div { margin-bottom: 16px; }
.action-playbook-detail span { display: block; margin-bottom: 6px; color: var(--muted); font: 700 9px ui-monospace, monospace; letter-spacing: .1em; }
.action-playbook-detail strong, .action-playbook-detail p, .action-playbook-detail ol { color: #d5dbe0; font-size: 12px; line-height: 1.55; }
.action-playbook-detail p { margin: 0; }
.action-playbook-detail ol { margin: 0; padding-left: 20px; }
.action-playbook-detail li { margin-bottom: 5px; }
.action-playbook-detail .action-playbook-version { color: var(--signal); font: 10px ui-monospace, monospace; }
.extractor-layout { display:grid; grid-template-columns:300px minmax(0,1fr); border:1px solid var(--line); min-height:650px; background:var(--panel); }
.extractor-sidebar { padding:20px; border-right:1px solid var(--line); background:#0b0f12; }
.extractor-workspace { padding:28px; min-width:0; }.extractor-sidebar .panel-title .button{min-height:36px;padding:0 12px}
.extractor-card { width:100%; display:grid; gap:5px; padding:14px; border:1px solid var(--line); background:#101519; color:var(--ink); text-align:left; cursor:pointer; margin-bottom:8px; }
.extractor-card:hover { border-color:var(--signal); }.extractor-card span,.extractor-card small{color:var(--muted);font:10px ui-monospace,monospace}
.extractor-card.active { border-color: var(--signal); background: rgba(215,255,69,.04); }
.opportunity-case { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 18px; align-items: center; padding: 14px 0; border-top: 1px solid var(--line); }
.opportunity-case small { color: var(--signal); font: 10px ui-monospace,monospace; }
.opportunity-case p { margin: 5px 0 0; line-height: 1.45; }
.opportunity-case-actions { display: flex; align-items: center; gap: 8px; }
.opportunity-case-actions select { width: min(310px, 28vw); }
.opportunity-case-actions .button { min-height: 38px; padding: 0 12px; }
.opportunity-ground-truth{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:10px 0 0}.opportunity-ground-truth div{padding:7px 9px;border:1px solid var(--line);background:rgba(255,255,255,.02)}.opportunity-ground-truth dt{color:var(--muted);font:8px ui-monospace,monospace;text-transform:uppercase}.opportunity-ground-truth dd{margin:4px 0 0;font-size:11px}.improvement-impact{margin:14px 0;padding:14px;border:1px solid #8e6930;border-radius:10px;background:rgba(255,174,54,.07)}.improvement-impact.safe{border-color:rgba(61,193,137,.5);background:rgba(61,193,137,.07)}.improvement-impact.unsafe{border-color:rgba(255,107,107,.55);background:rgba(255,107,107,.07)}.improvement-impact p{margin:7px 0 0;color:var(--muted)}.impact-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.impact-metrics div{display:grid;gap:4px;padding:8px;border:1px solid var(--line)}.impact-metrics span{color:var(--muted);font-size:9px}.review-opportunity-link{display:block;margin-top:4px;color:var(--signal);font:700 9px ui-monospace,monospace;text-decoration:none}.review-opportunity-link:hover{text-decoration:underline}@media(max-width:850px){.impact-metrics,.opportunity-ground-truth{grid-template-columns:1fr}}
.button.danger { border-color: rgba(255,107,104,.55); color: var(--danger); background: rgba(255,107,104,.06); }
.extractor-form { grid-template-columns:1fr 1fr; border-top:1px solid var(--line); padding-top:24px; }.extractor-title{display:flex;justify-content:space-between;gap:20px;margin-bottom:28px}.extractor-title p:last-child{color:var(--muted)}
.extractor-version{border:1px solid var(--line);padding:20px;margin-bottom:16px}.extractor-version pre{white-space:pre-wrap;color:#aeb8c0;background:#0b0f12;padding:14px;font-size:11px}.extractor-version li{margin:7px 0;color:var(--muted)}.extractor-version li.positive{color:var(--signal)}.extractor-version li.negative{color:#ffcf70}
@media(max-width:900px){.extractor-layout{grid-template-columns:1fr}.extractor-sidebar{border-right:0;border-bottom:1px solid var(--line)}.extractor-form{grid-template-columns:1fr}}
.learning-flow{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin-bottom:20px;background:var(--panel)}
.learning-flow div{padding:18px 22px;border-right:1px solid var(--line);display:grid;grid-template-columns:auto 1fr;gap:3px 12px}.learning-flow div:last-child{border:0}.learning-flow b{grid-row:1/3;color:var(--signal);font:700 11px ui-monospace,monospace}.learning-flow span{font-weight:700}.learning-flow small{color:var(--muted)}
.learning-layout{display:grid;grid-template-columns:310px minmax(0,1fr);border:1px solid var(--line);background:var(--panel);min-height:700px}.learning-sidebar{padding:20px;border-right:1px solid var(--line);background:#0b0f12}.learning-workspace{padding:28px;min-width:0}
.learning-upload{grid-template-columns:minmax(180px,.7fr) minmax(260px,1.2fr) auto;margin-top:0;padding-bottom:28px;border-bottom:1px solid var(--line)}.wide-field{grid-column:1/-1}.learning-help{color:var(--muted);font-size:13px;line-height:1.55}.learning-help code{color:var(--blue)}
.learning-batch{display:grid;width:100%;gap:5px;text-align:left;padding:14px;margin-bottom:8px;border:1px solid var(--line);background:#101519;color:var(--ink);cursor:pointer}.learning-batch:hover,.learning-batch.selected{border-color:var(--signal)}.learning-batch span,.learning-batch small{color:var(--muted);font:10px ui-monospace,monospace}.learning-batch.selected span{color:var(--signal)}
.learning-detail{padding-top:28px}.learning-detail-head,.learning-results-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.learning-progress{height:5px;background:#07090a;margin:24px 0;overflow:hidden}.learning-progress i{display:block;width:0;height:100%;background:var(--signal);box-shadow:0 0 16px var(--signal);transition:width .4s}
.learning-metrics{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);margin-bottom:28px}.learning-metrics article{padding:18px;border-right:1px solid var(--line)}.learning-metrics article:last-child{border:0}.learning-metrics span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.learning-metrics strong{display:block;margin-top:8px;font:500 25px ui-monospace,monospace}.learning-metrics .warning strong{color:#ffcf70}.learning-metrics .danger strong{color:var(--danger)}
.learning-results-head{padding:20px 0}.learning-results-head label{min-width:210px}.learning-cases{border-top:1px solid var(--line)}.learning-case{padding:20px;border:1px solid var(--line);border-top:0;background:#0d1114}.learning-case.has-difference{border-left:3px solid #ffcf70}.learning-case header{display:flex;justify-content:space-between;gap:16px}.learning-case header div{display:grid;gap:5px}.learning-case header span{font-weight:700}.learning-case header small{color:var(--muted)}.learning-case>p{color:#cad1d6;font:13px/1.6 ui-monospace,monospace}.learning-compare{display:grid;grid-template-columns:1fr 1fr;gap:14px}.learning-compare section{padding:14px;border:1px solid var(--line)}.learning-compare h4{margin:0 0 10px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.learning-label{display:block;margin:6px 0;font-size:11px}.learning-label b{color:var(--signal);margin-right:8px}.learning-none{color:var(--muted);font-size:11px}.difference{padding:5px 7px;color:#ffcf70;border:1px solid currentColor;font:700 9px ui-monospace,monospace;text-transform:uppercase}.difference.false_positive{color:var(--danger)}.difference.match{color:var(--signal)}.difference-list{display:flex!important;grid-auto-flow:row;justify-items:end;gap:6px}.difference.inherited{color:var(--muted)}.inherited-differences{margin:10px 0 14px;padding:9px 11px;border:1px dashed var(--line);color:var(--muted);font-size:11px}.inherited-differences summary{cursor:pointer}.inherited-differences span{display:block;margin-top:7px;font-family:ui-monospace,monospace}
@media(max-width:900px){.learning-layout{grid-template-columns:1fr}.learning-sidebar{border-right:0;border-bottom:1px solid var(--line)}.learning-upload{grid-template-columns:1fr}.learning-metrics{grid-template-columns:repeat(2,1fr)}.learning-flow{grid-template-columns:repeat(2,1fr)}.learning-compare{grid-template-columns:1fr}}
.learning-label small{display:block;margin:4px 0 10px;color:var(--muted);line-height:1.45}
.record-finding{display:grid;gap:4px;margin:12px 0;padding:11px 13px;border:1px solid var(--line);border-left:3px solid var(--muted);background:#10171b}.record-finding>span,.new-actions>h4{color:var(--muted);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.record-finding strong{font-size:12px}.record-finding small{color:#c6ced3;font-size:11px}.record-finding.operational{border-left-color:var(--signal)}.record-finding.informative{border-left-color:#65b8ff}.record-finding.ignored{border-left-color:#8c969c}.record-finding.no_finding{border-left-color:#d1a25f}.new-actions{margin:14px 0}.new-actions>h4{margin:0 0 8px}.step-transition{margin:7px 0;padding:10px 12px;border:1px solid var(--line);background:#0b1013}.step-transition.new{border-left:3px solid var(--signal)}.step-transition.maintained{border-left:3px solid #6f7b82}.step-transition header{align-items:center}.step-transition header div{display:flex;align-items:baseline;gap:8px}.step-transition header strong{font-size:12px}.step-transition header code{color:var(--muted);font-size:9px}.step-transition header>span{color:var(--signal);font:700 9px ui-monospace,monospace}.step-transition.maintained header>span{color:var(--muted)}.step-engines{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.step-engine{display:grid;gap:3px;padding-top:7px;border-top:1px solid var(--line);font-size:10px}.step-engine b{color:var(--muted);text-transform:uppercase}.step-engine small{color:#c6ced3;line-height:1.4}.maintained-actions,.raw-comparison{margin:10px 0;padding:9px 11px;border:1px dashed var(--line);color:var(--muted);font-size:11px}.maintained-actions summary,.raw-comparison summary{cursor:pointer}.raw-comparison .learning-compare{margin-top:10px}@media(max-width:700px){.step-engines{grid-template-columns:1fr}.step-transition header div{display:grid;gap:3px}}
.next-step{margin-top:10px;padding:10px 12px;border:1px solid rgba(215,255,69,.28);background:rgba(215,255,69,.035)}.next-step h5{margin:0 0 8px;color:var(--signal);font:700 9px ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase}.next-step-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.next-step-engine{display:grid;gap:4px;font-size:10px}.next-step-engine>b{color:var(--muted);font-size:9px;text-transform:uppercase}.next-step-engine>span{display:flex;flex-wrap:wrap;gap:7px;align-items:baseline}.next-step-engine code{color:var(--muted);font-size:9px}.next-step-engine small{color:#c6ced3;line-height:1.4}.next-step-engine.pending{border-left:2px solid #d1a25f;padding-left:8px}.next-step-engine.finished{color:var(--muted)}@media(max-width:700px){.next-step-grid{grid-template-columns:1fr}}
.engine-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.engine-action-comparison{padding:11px 12px;border:1px solid var(--line);background:#10171b}.engine-action-comparison h5{margin:0 0 9px;color:var(--signal);font:700 9px ui-monospace,monospace;letter-spacing:.09em;text-transform:uppercase}.engine-action-comparison dl{display:grid;gap:7px;margin:0}.engine-action-comparison dl div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:8px;padding-top:7px;border-top:1px solid var(--line)}.engine-action-comparison dt{color:var(--muted);font:700 9px ui-monospace,monospace}.engine-action-comparison dd{margin:0;color:#dce2e5;font-size:11px;line-height:1.45;overflow-wrap:anywhere}@media(max-width:850px){.engine-action-grid{grid-template-columns:1fr}.engine-action-comparison dl div{grid-template-columns:1fr;gap:3px}}
.review-summary{margin:8px 0 0;color:var(--signal);font:700 10px ui-monospace,monospace}.adjudication{margin-top:14px;padding:12px;border:1px solid rgba(101,184,255,.34);background:rgba(101,184,255,.025)}.adjudication>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.adjudication>header div{display:grid;gap:3px}.adjudication>header span{color:var(--muted);font:700 9px ui-monospace,monospace;text-transform:uppercase;letter-spacing:.09em}.adjudication>header strong{font-size:11px}.adjudication>header small{color:#65b8ff;font:9px ui-monospace,monospace}.adjudication-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.adjudication-actions .button{min-height:34px;padding:0 10px;font-size:9px}.none-review-form,.manual-review-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:11px;padding-top:11px;border-top:1px solid var(--line)}.none-review-form label,.manual-review-form label{font-size:9px}.none-review-form input,.none-review-form select,.manual-review-form input,.manual-review-form select{min-height:38px;padding:8px 10px;font-size:11px}.manual-review-form label>small{display:block;margin-top:4px;color:var(--muted);font-size:8px}.none-review-form .button,.manual-review-form .button{align-self:end;min-height:38px}.adjudication-message{min-height:14px;margin:7px 0 0;color:#ffcf70;font:9px ui-monospace,monospace}@media(max-width:850px){.none-review-form,.manual-review-form{grid-template-columns:1fr}}
.adjudication-guidance{margin:9px 0 0;color:#b8c2c8;font-size:10px;line-height:1.5}
.evaluation-actions{display:grid;justify-items:end;gap:10px}.evaluation-panel{margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}
.evaluation-metrics{grid-template-columns:repeat(6,1fr)}.evaluation-metrics strong{font-size:19px}.evaluation-list{display:grid;gap:14px}
.evaluation-record{padding:18px;border:1px solid var(--line);background:#0d1114}.evaluation-record.has-error{border-left:3px solid var(--danger)}.evaluation-record>header,.evaluation-record>footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.evaluation-record>header div{display:grid;gap:4px}.evaluation-record>header small,.evaluation-record>footer{color:var(--muted);font:10px ui-monospace,monospace}.record-text{padding:12px;border-left:2px solid var(--blue);background:#090c0e;font:13px/1.5 ui-monospace,monospace}
.historical-case-group{margin:26px 0;border:2px solid rgba(215,255,69,.72);border-radius:12px;overflow:hidden;background:#080c0e;box-shadow:0 0 0 4px rgba(215,255,69,.045)}.historical-case-group:first-child{margin-top:0}.historical-case-header{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:16px;align-items:center;padding:17px 20px;background:linear-gradient(100deg,rgba(215,255,69,.26),rgba(215,255,69,.07));border-bottom:2px solid rgba(215,255,69,.72)}.case-number{display:grid;place-items:center;align-content:center;min-height:62px;border:2px solid var(--signal);border-radius:9px;color:var(--signal);background:#0a0f0e}.case-number small{font:800 8px ui-monospace,monospace;letter-spacing:.15em}.case-number strong{font:600 27px ui-monospace,monospace}.case-heading{display:grid;gap:4px}.case-heading>span,.historical-case-footer span{color:var(--signal);font:800 10px ui-monospace,monospace;letter-spacing:.16em}.case-heading h3{margin:0;font-size:18px}.case-heading p{margin:1px 0 0;color:#d8e0d0;font-size:11px;line-height:1.45}.case-scope{display:grid;gap:5px;justify-items:end;text-align:right}.case-scope b{padding:5px 8px;border:1px solid currentColor;color:var(--signal);font:800 8px ui-monospace,monospace;letter-spacing:.1em}.case-scope small{color:#c1cac0;font:9px ui-monospace,monospace}.historical-case-records{display:grid;gap:10px;padding:14px;background:rgba(255,255,255,.012)}.historical-case-records .learning-case{border-top:1px solid var(--line)}.historical-case-footer{display:grid;grid-template-columns:minmax(0,1fr) 1.5fr auto;gap:18px;align-items:center;padding:15px 20px;border-top:2px solid #65b8ff;background:linear-gradient(100deg,rgba(101,184,255,.18),rgba(101,184,255,.04))}.historical-case-footer div{display:grid;gap:3px}.historical-case-footer span{color:#65b8ff}.historical-case-footer strong{font-size:12px}.historical-case-footer p{margin:0;color:#c6d5df;font-size:10px;line-height:1.45}.historical-case-footer>small{color:#9fb2be;font:9px ui-monospace,monospace}.historical-case-footer.continues{border-top-color:#ffcf70;background:rgba(255,207,112,.08)}.historical-case-footer.continues span{color:#ffcf70}.historical-case-group.reconstructed{border-color:#b68cff;box-shadow:0 0 0 4px rgba(182,140,255,.05)}.historical-case-group.reconstructed .historical-case-header{border-bottom-color:#b68cff;background:linear-gradient(100deg,rgba(182,140,255,.24),rgba(182,140,255,.05))}.historical-case-group.reconstructed .case-number{border-color:#b68cff;color:#d2baff}.historical-case-group.reconstructed .case-heading>span{color:#d2baff}@media(max-width:760px){.historical-case-header{grid-template-columns:58px minmax(0,1fr)}.case-number{min-height:54px}.case-scope{grid-column:1/-1;grid-template-columns:auto 1fr auto;justify-items:start;text-align:left}.historical-case-footer{grid-template-columns:1fr}.historical-case-footer>small{justify-self:start}}
.summary-comparison{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.summary-comparison section,.evaluation-decisions section{padding:12px;border:1px solid var(--line)}.summary-comparison h4,.evaluation-decisions h4{margin:0 0 8px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.09em}.summary-comparison p{margin:0;font-size:12px;line-height:1.5}
.evaluation-decisions{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:10px;margin-bottom:12px}.evaluation-decisions .final-decision{border-color:rgba(100,230,160,.45);background:rgba(100,230,160,.035)}.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px 12px;margin:0}.decision-grid dt{color:var(--muted);font-size:8px;text-transform:uppercase}.decision-grid dd{margin:2px 0 0;overflow-wrap:anywhere;font-size:11px}.evaluation-record>footer{flex-wrap:wrap}.review-actions{display:flex;gap:7px;margin-left:auto}.review-actions .button{padding:7px 10px;font-size:9px}.evaluation-error{color:var(--danger)}
.accumulated-action-states{margin:0 0 12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.02)}.accumulated-action-states>h4{margin:0 0 8px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.accumulated-action-states>div{display:grid;gap:7px}.accumulated-action{padding:8px 10px;border-left:3px solid #8e6930;background:rgba(255,174,54,.05)}.accumulated-action.completed{border-left-color:var(--signal);background:rgba(61,193,137,.05)}.accumulated-action.failed,.accumulated-action.negated{border-left-color:#ff6b6b}.accumulated-action header{display:flex;justify-content:space-between;gap:10px}.accumulated-action header span{font:700 9px ui-monospace,monospace;text-transform:uppercase}.accumulated-action small{display:block;margin-top:4px;color:var(--muted);font-size:9px}
.review-form{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.review-form .button{align-self:end}.review-form input,.review-form select{min-height:38px}
@media(max-width:1100px){.evaluation-metrics{grid-template-columns:repeat(3,1fr)}.evaluation-decisions{grid-template-columns:1fr}.summary-comparison{grid-template-columns:1fr}}
.analysis-note { color: var(--muted); font-size: 10px; margin: 12px 0 0; }
.raw-panel { border-top: 1px solid var(--line); }
.raw-panel summary { cursor: pointer; padding: 20px 28px; display: flex; justify-content: space-between; }
.raw-panel summary small { color: var(--muted); }
.raw-panel pre { max-height: 480px; overflow: auto; margin: 0; padding: 24px 28px; color: #b9d8bd; background: #090c0e; font: 12px/1.6 ui-monospace, monospace; }
.playbook-panel { margin-top: 20px; padding: 28px; border: 1px solid var(--line); background: color-mix(in srgb, var(--panel) 94%, transparent); box-shadow: 0 18px 70px rgba(0,0,0,.22); }
.catalog-layout { display: grid; grid-template-columns: 290px minmax(0, 1fr); margin-top: 24px; border: 1px solid var(--line); }
.catalog-view { margin-top: 24px; padding: 22px; border: 1px solid var(--line); }
.catalog-sidebar { border-right: 1px solid var(--line); padding: 20px; }
.catalog-editor { margin-top: 24px; padding: 22px; border: 1px solid var(--line); min-width: 0; }
.catalog-title { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 16px; }
.catalog-title .eyebrow { margin-bottom: 5px; }
.icon-button { width: 34px; height: 34px; border: 1px solid var(--signal); color: var(--signal); background: transparent; font-size: 20px; cursor: pointer; }
.icon-button:disabled { opacity: .3; cursor: not-allowed; }
.service-toolbar { display: grid; grid-template-columns: minmax(240px, 420px) 38px; gap: 10px; align-items: end; margin-bottom: 20px; }
.service-toolbar .service-filter { margin: 0; }
.master-list { display: grid; gap: 8px; }
.catalog-row { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 14px; padding: 12px; border: 1px solid var(--line); background: #0c1013; }
.catalog-row.active { border-color: var(--signal); background: rgba(215,255,69,.035); }
.catalog-summary { min-width: 0; border: 0; background: transparent; color: var(--ink); text-align: left; cursor: pointer; }
div.catalog-summary { cursor: default; }
.catalog-summary strong, .catalog-summary small { display: block; }
.catalog-summary strong { font-size: 13px; }
.catalog-summary small { color: var(--muted); margin-top: 5px; font: 10px ui-monospace, monospace; }
.catalog-summary small.review-warning { color: var(--danger); }
.client-section { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--line); }
.client-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 16px; }
.client-section-head .eyebrow { margin-bottom: 5px; }
.detail-nav { display: flex; align-items: center; gap: 22px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.detail-nav .eyebrow { margin-bottom: 5px; }
.detail-context { display: flex; gap: 10px; margin-top: 18px; }
.detail-context span { padding: 8px 11px; border: 1px solid var(--line); color: var(--muted); font: 10px ui-monospace, monospace; text-transform: uppercase; }
.detail-context strong { color: var(--ink); margin-left: 6px; font-weight: 650; text-transform: none; }
.catalog-list { display: grid; gap: 7px; }
.service-filter { margin-bottom: 16px; }
.service-filter select { font-size: 12px; padding: 10px; }
.catalog-list .empty-state { color: var(--muted); font-size: 12px; }
.catalog-item { width: 100%; text-align: left; padding: 12px; border: 1px solid var(--line); background: #0c1013; color: var(--ink); cursor: pointer; }
.catalog-item:hover, .catalog-item.active { border-color: var(--signal); }
.catalog-item.client { margin-left: 14px; width: calc(100% - 14px); }
.catalog-item strong, .catalog-item small { display: block; }
.catalog-item strong { font-size: 12px; }
.catalog-item small { color: var(--muted); font: 9px ui-monospace, monospace; margin-top: 5px; text-transform: uppercase; }
.documents-panel { grid-column: 1 / -1; border: 1px solid var(--line); padding: 20px; }
.documents-panel > div:first-child > p:last-child { color: var(--muted); font-size: 12px; margin: 7px 0 18px; }
.upload-zone { display: block; padding: 22px; border: 1px dashed #53606a; text-align: center; color: var(--blue); cursor: pointer; }
.upload-zone input { display: block; margin-top: 12px; padding: 8px; font-size: 11px; }
.document-list { display: grid; gap: 8px; margin-top: 14px; }
.document-item { display: grid; grid-template-columns: 1fr auto auto; gap: 14px; align-items: center; padding: 11px 13px; background: #0b0f12; border: 1px solid var(--line); }
.document-item strong { font-size: 12px; overflow-wrap: anywhere; }
.document-item span { color: var(--muted); font: 10px ui-monospace, monospace; }
.document-item button { border: 0; background: transparent; color: var(--danger); cursor: pointer; }
.cost-notice { display: flex; gap: 18px; margin-top: 24px; padding: 14px 16px; border-left: 2px solid var(--blue); background: rgba(143,199,255,.05); font-size: 12px; }
.cost-notice strong { color: var(--blue); white-space: nowrap; }
.cost-notice span { color: var(--muted); }
.playbook-form { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items: start; }
.playbook-meta { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.factory-actions { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.factory-actions .request-status { margin: 0; }
.playbook-result { margin-top: 26px; border: 1px solid var(--line); }
.draft-head { display: flex; justify-content: space-between; gap: 20px; padding: 24px; border-bottom: 1px solid var(--line); }
.draft-head .eyebrow { color: var(--signal); margin-bottom: 6px; }
.draft-head div > p:not(.eyebrow) { color: var(--muted); margin: 7px 0 0; font-size: 13px; }
.draft-source-summary { display: block; color: var(--blue); margin-top: 9px; font: 10px/1.5 ui-monospace, monospace; }
.draft-metrics { display: grid; grid-template-columns: repeat(5, 1fr); border-bottom: 1px solid var(--line); }
.draft-metrics span { padding: 15px; border-right: 1px solid var(--line); color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.draft-metrics span:last-child { border: 0; }
.draft-metrics strong { display: block; margin-top: 7px; color: var(--ink); font: 600 12px ui-monospace, monospace; text-transform: none; }
.playbook-steps { margin: 0; padding: 0 24px; list-style: none; }
.playbook-steps li { padding: 21px 0; border-bottom: 1px solid var(--line); }
.playbook-step-head { display: flex; justify-content: space-between; gap: 18px; }
.playbook-step-head h4 { margin: 0; font-size: 14px; }
.playbook-step-head span { color: var(--signal); font: 700 10px ui-monospace, monospace; text-transform: uppercase; }
.playbook-steps p { color: #c5cdd3; margin: 9px 0; font-size: 13px; line-height: 1.6; }
.playbook-steps small { color: var(--muted); font: 10px/1.5 ui-monospace, monospace; }
.playbook-process-map { padding: 20px 24px 8px; border-bottom: 1px solid var(--line); }
.playbook-actions-title { padding: 18px 24px 0; }
.process-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 10px; }
.process-card { padding: 14px; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.025); }
.process-card h4 { margin: 0 0 7px; font-size: 13px; }
.process-card p { margin: 0 0 8px; color: #c5cdd3; font-size: 12px; line-height: 1.45; }
.process-card small { color: var(--muted); font: 10px/1.4 ui-monospace, monospace; }
.process-card .process-composition { display: block; margin-top: .45rem; color: var(--accent); }
.playbook-impact { margin: 20px 24px; padding: 18px; border: 1px solid #8e6930; border-radius: 12px; background: rgba(255, 174, 54, .08); }
.playbook-impact.safe { border-color: rgba(61, 193, 137, .45); background: rgba(61, 193, 137, .07); }
.playbook-impact h4 { margin: 0 0 8px; }
.playbook-impact p { margin: 5px 0; color: var(--muted); }
.impact-step { display: grid; grid-template-columns: minmax(180px, 1fr) minmax(180px, 1fr); gap: 12px; align-items: center; padding: 10px 0; border-top: 1px solid var(--line); }
.impact-step select { width: 100%; }
.replacement-recommendation { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; line-height: 1.35; }
.replacement-recommendation.confident { color: var(--signal); }
.review-box { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 20px 24px; background: rgba(215,255,69,.035); }
.review-box p { color: var(--muted); font-size: 12px; line-height: 1.5; margin: 0; }
.review-box strong { color: var(--ink); }
.generation-progress { grid-column: 1 / -1; margin: 0; padding: 16px 20px 16px 38px; border: 1px solid var(--line); background: #0b0f12; color: var(--muted); font: 11px/1.8 ui-monospace, monospace; }
.generation-progress li.active { color: var(--blue); }
.generation-progress li.done { color: var(--signal); }
.version-panel { padding: 20px 24px; border-bottom: 1px solid var(--line); }
.version-panel .eyebrow { margin-bottom: 5px; }
.version-history { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.version-history-item { display: inline-flex; }
.version-history button { border: 1px solid var(--line); background: #0b0f12; color: var(--ink); padding: 7px 10px; cursor: pointer; font: 10px ui-monospace, monospace; }
.version-history button.active { border-color: var(--signal); color: var(--signal); }
.version-history .delete-version { padding: 5px 9px; border-left: 0; color: var(--danger); font-size: 15px; line-height: 1; }
.version-history .delete-version:hover { background: rgba(255,107,104,.08); border-color: var(--danger); }
.version-diff { color: var(--muted); margin-top: 14px; font-size: 11px; line-height: 1.6; }
.version-analysis-button { margin-top: 16px; }
.version-analysis { margin-top: 16px; padding: 20px; border: 1px solid #3a4650; background: #090d10; }
.analysis-heading { display: flex; justify-content: space-between; gap: 20px; }
.analysis-heading .eyebrow { color: var(--blue); margin-bottom: 5px; }
.analysis-heading h4 { margin: 0; font-size: 15px; }
.analysis-heading p:last-child { color: var(--muted); margin: 7px 0 0; font-size: 11px; }
.diff-summary { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 18px; border: 1px solid var(--line); }
.diff-count { padding: 15px; border-right: 1px solid var(--line); }
.diff-count:last-child { border: 0; }
.diff-count strong, .diff-count span { display: block; }
.diff-count strong { font: 500 24px ui-monospace, monospace; }
.diff-count span { color: var(--muted); margin-top: 4px; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.diff-count.added strong { color: var(--signal); }.diff-count.modified strong { color: var(--blue); }.diff-count.removed strong { color: var(--danger); }
.diff-group { margin-top: 18px; padding-left: 14px; border-left: 2px solid var(--line); }
.diff-group.added { border-color: var(--signal); }.diff-group.modified { border-color: var(--blue); }.diff-group.removed { border-color: var(--danger); }
.diff-group h5 { margin: 0 0 8px; font-size: 12px; }
.diff-group ul { margin: 0; padding-left: 18px; color: #b8c1c8; font-size: 11px; line-height: 1.7; }
.no-differences { color: var(--signal); margin: 18px 0 0; font-size: 12px; }
.comparison-context { margin: 18px 0 0; padding: 12px 14px; border-left: 2px solid var(--blue); color: #b7c5d2; background: rgba(143,199,255,.05); font-size: 11px; line-height: 1.6; }
.comparison-assessment { display: inline-block; margin-top: 16px; padding: 7px 10px; border: 1px solid currentColor; font: 700 10px ui-monospace, monospace; text-transform: uppercase; letter-spacing: .08em; }
.comparison-assessment.equivalent { color: var(--signal); }.comparison-assessment.minor { color: var(--blue); }.comparison-assessment.material { color: var(--danger); }
.semantic-change { margin-top: 14px; padding: 15px; border: 1px solid var(--line); border-left-width: 3px; }
.semantic-change.added { border-left-color: var(--signal); }.semantic-change.modified { border-left-color: var(--blue); }.semantic-change.removed { border-left-color: var(--danger); }
.semantic-change h5, .unchanged-core h5 { margin: 0 0 8px; font-size: 12px; }
.semantic-change p { margin: 0 0 8px; color: #c6cdd3; font-size: 12px; line-height: 1.6; }
.semantic-change small, .cached-analysis { color: var(--muted); font-size: 10px; line-height: 1.5; }
.unchanged-core { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.unchanged-core ul { margin: 0; padding-left: 18px; color: #b8c1c8; font-size: 11px; line-height: 1.7; }
.review-recommendation { margin: 18px 0 0; color: var(--ink); font-size: 12px; line-height: 1.6; }
.cached-analysis { display: block; margin-top: 10px; }
.hidden { display: none !important; }
.user-menu { display: flex; align-items: center; gap: 10px; padding-left: 14px; border-left: 1px solid var(--line); }
.user-menu span { color: var(--muted); font: 10px ui-monospace, monospace; }
.user-menu button { border: 0; background: none; color: var(--ink); cursor: pointer; font-size: 10px; text-decoration: underline; }
.login-page { min-height: 100vh; background: radial-gradient(circle at 15% 20%, rgba(215,255,69,.08), transparent 32%), #080b0d; }
.login-shell { width: min(100% - 40px, 1040px); min-height: 100vh; margin: auto; display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; gap: 80px; }
.login-brand h1 { margin: 14px 0; font-size: clamp(48px, 7vw, 86px); line-height: .9; letter-spacing: -.06em; }
.login-brand h1 span { color: var(--signal); }
.login-brand > p:last-child { max-width: 460px; color: var(--muted); font-size: 16px; line-height: 1.7; }
.login-card { padding: 34px; border: 1px solid var(--line); background: var(--panel); box-shadow: 0 25px 90px rgba(0,0,0,.4); }
.login-card h2 { margin: 5px 0 8px; font-size: 30px; }
.login-card > div > p:last-child { color: var(--muted); font-size: 12px; }
.login-card form { display: grid; grid-template-columns: 1fr; gap: 18px; margin-top: 28px; }
.login-card .button { width: 100%; }
@media (max-width: 760px) { .login-shell { grid-template-columns: 1fr; gap: 30px; padding: 55px 0; } .login-brand h1 { font-size: 52px; } }

.synthetic-lab { margin-top: 20px; border: 1px solid var(--line); padding: 28px; background: color-mix(in srgb, var(--panel) 94%, transparent); box-shadow: 0 18px 70px rgba(0,0,0,.22); }
.factory-tabs { display: flex; gap: 4px; margin: 0 0 28px; padding: 6px; border: 1px solid var(--line); background: #0b0f12; overflow-x: auto; }
.factory-tabs a { padding: 11px 16px; color: var(--muted); text-decoration: none; white-space: nowrap; border: 1px solid transparent; }
.factory-tabs a:hover, .factory-tabs a.active { color: var(--ink); border-color: var(--line); background: #151b20; }
.factory-tabs a.active { color: var(--signal); }
.lab-start { margin-top: 20px; padding: 28px; border: 1px solid var(--line); background: linear-gradient(135deg, rgba(215,255,69,.035), transparent 45%), var(--panel); }
.source-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 24px; }
.source-card { display: grid; grid-template-columns: 42px 1fr; gap: 3px 12px; padding: 20px; min-height: 128px; text-align: left; color: var(--ink); background: #0d1216; border: 1px solid var(--line); cursor: pointer; }
.source-card > span { grid-row: 1 / 3; font: 700 20px/38px monospace; color: var(--signal); }
.source-card strong { font-size: 15px; align-self: end; }
.source-card small { color: var(--muted); line-height: 1.5; }
.source-card:hover, .source-card.active { border-color: var(--signal); background: rgba(215,255,69,.045); transform: translateY(-1px); }
.source-import { display: grid; grid-template-columns: minmax(220px, 1.6fr) 1fr 1fr auto; align-items: end; gap: 16px; margin-top: 16px; padding: 20px; border: 1px solid var(--line); background: #0a0e11; }
.source-import > div p:last-child { color: var(--muted); margin-bottom: 0; }
.source-import code { color: var(--signal); }
.playback-controls { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 18px; margin: 16px 0; border: 1px solid rgba(215,255,69,.35); background: rgba(215,255,69,.035); }
.playback-controls > div:first-child { display: grid; gap: 3px; }
.playback-controls small { color: var(--muted); }
.locked-step { opacity: .38; filter: grayscale(.8); }
.locked-step::after { content: 'PENDIENTE'; align-self: center; color: var(--muted); font: 700 10px/1 monospace; letter-spacing: .12em; }
.direct-query { margin-top: 20px; }
.direct-query > summary { cursor: pointer; color: var(--muted); font-weight: 700; letter-spacing: .04em; }
.direct-query[open] > summary { margin-bottom: 24px; color: var(--ink); }
@media (max-width: 900px) { .source-cards { grid-template-columns: 1fr; } .source-import { grid-template-columns: 1fr; } .playback-controls { align-items: flex-start; flex-direction: column; } }
.synthetic-layout { display: grid; grid-template-columns: 280px minmax(0, 1fr); margin-top: 25px; border: 1px solid var(--line); min-height: 620px; }
.synthetic-sidebar { padding: 20px; border-right: 1px solid var(--line); background: #0b0f12; }
.synthetic-list { display: grid; gap: 8px; max-height: 480px; overflow: auto; margin-bottom: 16px; }
.synthetic-ticket-row { display: grid; grid-template-columns: minmax(0, 1fr) 34px; }
.synthetic-ticket-card { padding: 13px; border: 1px solid var(--line); background: #101519; color: var(--ink); text-align: left; cursor: pointer; }
.synthetic-ticket-card:hover, .synthetic-ticket-card.active { border-color: var(--signal); background: rgba(215,255,69,.04); }
.synthetic-ticket-card strong, .synthetic-ticket-card span { display: block; }
.synthetic-ticket-card strong { font-size: 13px; }
.synthetic-ticket-card span { margin-top: 6px; color: var(--muted); font: 9px/1.5 ui-monospace, monospace; text-transform: uppercase; }
.synthetic-ticket-delete { border: 1px solid var(--line); border-left: 0; background: #101519; color: var(--danger); cursor: pointer; font-size: 20px; }
.synthetic-ticket-delete:hover { border-color: var(--danger); background: rgba(255,107,104,.08); }
.full-button { width: 100%; }
.synthetic-workspace { min-width: 0; }
.synthetic-create-form, .timeline-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 20px 24px; margin: 0; gap: 12px 16px; }
.form-heading, .synthetic-form-actions, .wide-field { grid-column: 1 / -1; }
.form-heading .eyebrow { margin-bottom: 5px; }
.synthetic-form-actions { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.synthetic-form-actions .request-status { margin: 0; }
.synthetic-detail-head { display: flex; justify-content: space-between; gap: 20px; padding: 16px 22px; border-bottom: 1px solid var(--line); }
.synthetic-detail-head .eyebrow { margin-bottom: 6px; color: var(--signal); }
.synthetic-detail-head p:last-child { color: var(--muted); font: 11px ui-monospace, monospace; margin: 8px 0 0; }
.synthetic-ticket-header { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border-bottom: 1px solid var(--line); }
.synthetic-ticket-header div { min-width: 0; padding: 8px 11px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.synthetic-ticket-header span, .synthetic-ticket-header strong { display: block; overflow-wrap: anywhere; }
.synthetic-ticket-header span { color: var(--muted); font: 9px ui-monospace, monospace; }
.synthetic-ticket-header strong { margin-top: 3px; color: var(--ink); font-size: 10px; line-height: 1.3; }
.header-capability { display: inline-flex; align-items: center; gap: 6px; margin-top: 3px; color: var(--ink); font-size: 10px; line-height: 1.2; }
.header-capability input { width: 14px; height: 14px; margin: 0; }
.synthetic-flow { display: flex; align-items: center; gap: 12px; padding: 13px 26px; border-bottom: 1px solid var(--line); color: var(--muted); font: 10px ui-monospace, monospace; text-transform: uppercase; }
.synthetic-flow span { padding: 7px 9px; border: 1px solid var(--line); }
.synthetic-flow i { color: var(--signal); font-style: normal; }
.timeline-form { border-bottom: 1px solid var(--line); }
.timeline-form textarea { min-height: 105px; }
.synthetic-notify-bar { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px 26px; background: linear-gradient(90deg, rgba(143,199,255,.08), transparent); border-bottom: 1px solid var(--line); }
.synthetic-notify-bar strong { font-size: 13px; }
.synthetic-notify-bar p { color: var(--muted); margin: 5px 0 0; font-size: 11px; }
.synthetic-results-grid { display: grid; grid-template-columns: 1fr; }
.synthetic-results-grid > section { min-width: 0; padding: 25px; }
.synthetic-results-grid > section + section { border-left: 1px solid var(--line); }
.synthetic-results-grid #synthetic-timeline.timeline-scroll:not(.empty-state) { max-height: 272px; }
.synthetic-step { box-sizing: border-box; display: block; position: relative; height: 68px; padding: 8px 0; overflow: hidden; }
.synthetic-step.current-step { border-left: 2px solid var(--signal); padding-left: 10px; }
.timeline-item-head, .timeline-item-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.timeline-identity { color: var(--signal); font: 600 11px/1.25 ui-monospace, monospace; }
.timeline-item-meta { justify-content: flex-start; margin: 3px 0 5px; color: var(--muted); font: 10px/1.3 ui-monospace, monospace; }
.timeline-item-meta time { display: inline; margin: 0; }
.timeline-item-meta span::before { content: '·'; margin-right: 12px; }
.synthetic-step > p { overflow: hidden; font-size: 12px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.timeline-toolbar { display: flex; align-items: center; gap: 12px; }
.timeline-toolbar > span { color: var(--muted); font-size: 11px; }
.timeline-toolbar .button { min-height: 36px; padding: 0 12px; font-size: 11px; }
.timeline-item-actions { display: flex; flex: 0 0 auto; gap: 12px; margin: 0 0 0 auto; }
.timeline-item-actions button { border: 0; padding: 0; background: transparent; color: var(--blue); cursor: pointer; font-size: 11px; }
.timeline-item-actions button.danger-link { color: var(--danger); }
.synthetic-run { display: flex; justify-content: space-between; gap: 10px; padding: 10px 12px; margin-bottom: 12px; border: 1px solid rgba(215,255,69,.4); color: var(--signal); font: 9px ui-monospace, monospace; text-transform: uppercase; }
.synthetic-run.error { color: var(--danger); border-color: rgba(255,107,104,.5); }
.synthetic-analysis-card { padding: 18px 0; border-top: 1px solid var(--line); }
.synthetic-analysis-card .card-index { margin-bottom: 10px; }
.synthetic-analysis-card strong { color: var(--signal); font-size: 22px; }
.synthetic-analysis-card > p:not(.card-index) { color: #d0d7dc; margin: 0; font-size: 12px; line-height: 1.65; }
.synthetic-analysis-card p:last-child { color: #d0d7dc; margin: 0; font-size: 12px; line-height: 1.65; }
.llm-result-area { min-height: 48px; margin-top: 12px; padding: 10px 12px; border: 1px solid var(--line); background: rgba(255,255,255,.015); }
.llm-result-area > span { display: block; margin-bottom: 5px; color: var(--muted); font: 700 9px ui-monospace, monospace; letter-spacing: .08em; }
.llm-result-area ul { margin: 0; padding-left: 18px; color: #cbd4da; font-size: 11px; line-height: 1.55; }
.llm-result-area .enrichment-status { margin-top: 0; }
.synthetic-system-result small { display: block; color: var(--muted); margin-top: 14px; font: 9px ui-monospace, monospace; }
.synthetic-error { color: var(--danger); font-size: 12px; }
@media (max-width: 900px) { form { grid-template-columns: 1fr 1fr; } .actions { grid-column: 1 / -1; } .intelligence-grid { grid-template-columns: 1fr; } .intelligence-grid article { border-right: 0; border-bottom: 1px solid var(--line); min-height: 0; } .metrics { grid-template-columns: repeat(5, minmax(118px, 1fr)); } .content-grid { grid-template-columns: 1fr; } .history-panel { border-left: 0; border-top: 1px solid var(--line); } .catalog-layout, .synthetic-layout { grid-template-columns: 1fr; } .catalog-sidebar, .synthetic-sidebar { border-right: 0; border-bottom: 1px solid var(--line); } .playbook-form { grid-template-columns: 1fr; } .playbook-meta, .factory-actions { grid-column: auto; } .draft-metrics { grid-template-columns: repeat(2, 1fr); } .synthetic-results-grid { grid-template-columns: 1fr; } .synthetic-results-grid > section + section { border-left: 0; border-top: 1px solid var(--line); } .synthetic-ticket-header { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .shell { width: min(100% - 24px, 1220px); padding-top: 30px; } .masthead { display: block; } .product-nav { align-items: flex-start; flex-direction: column; margin-top: 25px; } .source-badge { display: inline-block; } form, .playbook-meta { grid-template-columns: 1fr; } .actions { grid-column: auto; display: grid; } .metrics { grid-template-columns: repeat(5, minmax(118px, 1fr)); } .result-head, .draft-head, .factory-actions, .review-box, .cost-notice, .client-section-head, .detail-nav { align-items: stretch; flex-direction: column; } .timeline-item { grid-template-columns: 1fr; } .catalog-row { grid-template-columns: 1fr; } }
.manual-rule-explanation{grid-column:1/-1}.manual-rule-explanation textarea{min-height:84px}.manual-review-buttons{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.rule-workshop{margin-top:12px;padding:14px;border:1px solid rgba(101,184,255,.42);border-radius:10px;background:rgba(19,42,61,.45)}.rule-workshop.active{border-color:rgba(61,193,137,.65);background:rgba(61,193,137,.07)}.rule-workshop>header{display:flex;justify-content:space-between;gap:12px;align-items:center}.rule-workshop>header div{display:grid;gap:3px}.rule-workshop>header span{color:var(--muted);font:700 9px ui-monospace,monospace;text-transform:uppercase;letter-spacing:.08em}.rule-workshop>header strong{color:#65b8ff;font-size:11px}.rule-workshop.active>header strong{color:#3dc189}.rule-workshop>header small{color:var(--muted);font-size:9px}.rule-workshop>p,.rule-proposal>p{color:var(--muted);font-size:11px;line-height:1.5}.rule-workshop ul{margin:10px 0;padding-left:20px;font-size:11px}.rule-clarification-form,.rule-test-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.rule-clarification-form label{grid-column:1/-1}.rule-clarification-form textarea,.rule-test-form textarea{min-height:92px}.rule-clarification-form .button,.rule-test-form .button{justify-self:end}.rule-proposal{margin-top:12px;padding:12px;border:1px solid var(--line);background:rgba(0,0,0,.16)}.rule-proposal h4{margin:0}.rule-proposal dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:10px 0}.rule-proposal dl div{padding:8px;border:1px solid var(--line)}.rule-proposal dt{color:var(--muted);font:8px ui-monospace,monospace;text-transform:uppercase}.rule-proposal dd{margin:4px 0 0;font-size:10px;overflow-wrap:anywhere}.rule-proposal details{margin-top:8px}.rule-proposal pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:10px}.rule-safety{display:flex;justify-content:space-between;gap:12px;margin-top:10px;padding:9px 11px;border:1px solid #8e6930;background:rgba(255,174,54,.07);font-size:10px}.rule-safety.safe{border-color:rgba(61,193,137,.5);background:rgba(61,193,137,.07)}.rule-safety span{color:var(--muted)}.rule-test-results{display:grid;gap:6px;margin-top:10px}.rule-test-results article{padding:9px;border-left:3px solid #ff6b6b;background:rgba(255,107,107,.06)}.rule-test-results article.passed{border-color:#3dc189;background:rgba(61,193,137,.06)}.rule-test-results p{margin:4px 0;font-size:11px}.rule-test-results small{color:var(--muted);font-size:9px}.rule-workshop-actions{display:flex;align-items:center;gap:10px;margin-top:12px}.rule-workshop-actions small{color:var(--muted);font-size:9px}.rule-workshop-message{min-height:14px;margin:8px 0 0;color:#ffcf70!important;font:9px ui-monospace,monospace}.rule-active-message{color:#3dc189!important;font-weight:700}@media(max-width:850px){.manual-review-buttons,.rule-workshop-actions{align-items:stretch;flex-direction:column}.rule-test-form,.rule-proposal dl{grid-template-columns:1fr}.rule-safety{flex-direction:column}}

/* Case frames must never make the historical record wider than its viewport. */
.historical-ticket-header{margin:30px 0 14px;padding:18px 20px;border:1px solid #65b8ff;border-radius:12px;background:linear-gradient(110deg,#102634,#0d161c);display:grid;grid-template-columns:minmax(100px,auto) minmax(0,1fr);gap:24px;align-items:center}
.historical-ticket-header:first-child{margin-top:0}
.process-card.selected{border-color:#b4ed55;box-shadow:0 0 0 1px #b4ed55}
.process-select{display:block;width:100%;text-align:left;border:0;background:transparent;color:inherit;padding:0;cursor:pointer;font:inherit}
.process-select:focus-visible{outline:2px solid #b4ed55;outline-offset:5px}
.process-diagram-button{margin-top:14px}
.process-filter-bar,.process-diagram-heading,.diagram-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:16px 0}
.process-action-conditions{color:#c4e0a8;font-size:12px}
.process-diagram-dialog{width:min(1400px,96vw);max-width:96vw;max-height:94vh;box-sizing:border-box;background:#10191e;color:#edf4f7;border:1px solid #526a76;border-radius:14px;padding:22px;overflow:auto}
.process-diagram-dialog::backdrop{background:#000b}
.process-diagram-dialog [hidden]{display:none!important}
.process-diagram-heading{margin-top:0}.process-diagram-heading h2{margin:0;max-width:80%;overflow-wrap:anywhere}
.diagram-disclaimer{color:#b6c7d0;font-size:12px}.diagram-toolbar{justify-content:flex-start}.diagram-toolbar small{color:#a5b8c4}
.process-diagram-canvas{overflow:auto;max-height:65vh;background:#10191e;border:1px solid #30444f;border-radius:8px;min-height:40px}
.process-diagram-canvas:empty{display:none}.process-diagram-canvas svg{display:block;max-width:none}
.diagram-warning{border-left:3px solid #d7b65b;padding-left:12px;color:#e4d5a8}
#process-diagram-notes article{padding:10px 0;border-bottom:1px solid #30444f}#process-diagram-notes p{font-size:13px;overflow-wrap:anywhere}
.diagram-busy::before{content:'';display:inline-block;width:14px;height:14px;margin-right:10px;border:2px solid #596a4e;border-top-color:#b4ed55;border-radius:50%;animation:diagram-spin 1s linear infinite}
@keyframes diagram-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.diagram-busy::before{animation:none}}
.historical-ticket-title span{font:800 10px ui-monospace,monospace;letter-spacing:.16em;color:#8dceff}
.historical-ticket-title h3{margin:5px 0 0;font-size:21px;overflow-wrap:anywhere}
.historical-ticket-header dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 20px;margin:0}
.historical-ticket-header dl>div{min-width:0}
.historical-ticket-header dt{font-size:10px;color:#a6bdca;margin-bottom:4px}
.historical-ticket-header dd{margin:0;font-size:13px;font-weight:600;color:#edf6fc;overflow-wrap:anywhere}
@media(max-width:760px){.historical-ticket-header{grid-template-columns:1fr;gap:15px;padding:16px}.historical-ticket-header dl{grid-template-columns:repeat(2,minmax(0,1fr))}}
.historical-case-group *{box-sizing:border-box;min-width:0}
.historical-case-header,.historical-case-footer,.learning-case>header,.step-transition header{overflow-wrap:anywhere}
.case-heading h3,.case-heading p,.case-scope small,.historical-case-footer strong,.historical-case-footer p,.historical-case-footer>small,.learning-case header small,.learning-case>p,.record-finding small,.step-transition strong,.step-transition code,.step-engine small,.next-step-engine small{overflow-wrap:anywhere;word-break:break-word}
.historical-case-group code,.historical-case-group small,.historical-case-group span,.historical-case-group p,.historical-case-group strong,.historical-case-group dd{overflow-wrap:anywhere;word-break:break-word}
.learning-compare,.learning-compare section{max-width:100%;min-width:0}
.learning-label,.inherited-differences span{white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.difference-list{flex-wrap:wrap;justify-content:flex-end;max-width:100%}
.difference{max-width:100%;overflow-wrap:anywhere;word-break:break-word}
.step-transition header div,.next-step-engine>span{flex-wrap:wrap}

@media(max-width:760px){
  .learning-workspace{padding:18px}
  .learning-detail-head,.learning-results-head{flex-direction:column}
  .historical-case-header{grid-template-columns:50px minmax(0,1fr);gap:10px;padding:14px 12px}
  .case-number{min-height:50px}
  .case-heading h3{font-size:16px}
  .case-scope{grid-column:1/-1;grid-template-columns:1fr;gap:4px;justify-items:start;text-align:left}
  .historical-case-records{gap:8px;padding:8px}
  .learning-case{padding:14px 12px}
  .learning-case>header{flex-direction:column;gap:9px}
  .difference-list{justify-content:flex-start}
  .historical-case-footer{grid-template-columns:1fr;gap:9px;padding:14px 12px}
  .historical-case-footer>small{justify-self:start}
}
