/* The homepage, in Harvey's order (docs/gtm/landing/HARVEY_SPEC.md), with our sections.
   Linked from index.html only. site.css is shared across every page and stays as it is. */

:root{--paper:#FAFAF9;--paper2:#F1F0EC;--ink2:#15130F;--mute:#5A5751;--rule:#E4E2DD;--rule-dark:#2B2925}
.hv{max-width:1376px;margin:0 auto}
.btn-ink{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 22px;border-radius:6px;background:var(--ink);color:var(--ivory);font:500 16px/1 var(--sans);transition:background var(--dur-fast) var(--ease)}
.btn-ink:hover{background:#2B2925}
.btn-line-light{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 20px;border-radius:6px;border:1px solid rgba(250,250,249,.7);color:var(--ivory);font:500 15px/1 var(--sans);transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}
.btn-line-light:hover{background:rgba(250,250,249,.1);border-color:var(--ivory)}
.btn-line-dark{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 20px;border-radius:6px;border:1px solid rgba(15,14,13,.35);color:var(--ink);font:500 15px/1 var(--sans);transition:border-color var(--dur-fast) var(--ease)}
.btn-line-dark:hover{border-color:var(--ink)}

/* S0 · hero: two columns over one composite image */
.top{background:var(--paper);color:var(--ink);padding:calc(var(--head) + 88px) var(--gutter) 96px}
.top-grid{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:64px;align-items:start}
.top h1{font:400 clamp(44px,5vw,72px)/1.05 var(--serif);letter-spacing:-.015em;max-width:12ch}
.top-side{padding-top:10px}
.top-side p{font:400 20px/1.5 var(--sans);color:var(--mute)}
.top-ctas{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap}
.top-shot{margin-top:64px}
.top-shot img{width:100%;height:auto;border-radius:8px}

/* S1 · practice areas in the logo wall's shape */
.areas{background:var(--paper);padding:24px var(--gutter) 112px;text-align:center}
.areas h2{font:400 clamp(24px,2.3vw,32px)/1.25 var(--serif);letter-spacing:-.01em;max-width:30ch;margin:0 auto}
.areas ul{list-style:none;margin:56px auto 0;display:grid;grid-template-columns:repeat(6,1fr);gap:0 24px;max-width:1240px}
.areas li{height:58px;display:flex;align-items:center;justify-content:center;font:400 22px/1.2 var(--serif);color:var(--g500)}

/* S2 · one platform, two doors */
.doors{background:var(--paper);color:var(--ink);padding:56px var(--gutter) 128px}
.doors-head{max-width:760px;margin:0 auto 64px;text-align:center}
.doors-head h2{font:400 clamp(36px,3.4vw,48px)/1.08 var(--serif);letter-spacing:-.012em}
.doors-head p{margin:22px auto 0;max-width:640px;font:400 18px/1.55 var(--sans);color:var(--mute)}
.doors-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.door{position:relative;overflow:hidden;border-radius:8px;aspect-ratio:680/688;color:var(--ivory);isolation:isolate;background:var(--ink2)}
.door-tex{position:absolute;inset:0;z-index:0}
.door-tex img{width:100%;height:100%;object-fit:cover}
.door-copy{position:relative;z-index:2;padding:40px 40px 0;max-width:520px}
.door-copy .label{font:400 32px/1.1 var(--serif);letter-spacing:-.01em}
.door-copy p{margin-top:16px;font:400 17px/1.5 var(--sans);color:rgba(250,250,249,.92)}
.door-copy .btn-line-light{margin-top:24px}
.door-ui{position:absolute;z-index:1;left:32px;top:49%;width:122%;margin:0}
.door-ui img{width:100%;height:auto;max-width:none;border-radius:8px 0 0 0;box-shadow:0 24px 60px rgba(0,0,0,.45)}

/* S4 · the product as four jobs, in the four-part shape of Harvey's Contract Intelligence page
   (HARVEY_SPEC.md 7): a verb headline top-left, the outcome sentence top-right, ONE small image
   below-left on a pale painted card, and the named features below-right. Every image is one
   interface element with a verdict or a count visible, shown at or above its native size. */
.jobs{background:var(--paper);color:var(--ink);padding:0 var(--gutter) 40px}
.jobs h2{font:500 32px/1.2 var(--sans);letter-spacing:-.01em;margin-bottom:56px}
.job{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px 64px;align-items:start;
  padding-top:40px;border-top:1px solid var(--rule);margin-bottom:88px}
.job-head{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:start}
.job-head h3{font:400 clamp(28px,2.6vw,36px)/1.12 var(--serif);letter-spacing:-.012em;max-width:16ch}
.job-head p{font:400 18px/1.55 var(--sans);color:var(--mute);max-width:46ch}
.job-card{position:relative;overflow:hidden;border-radius:10px;aspect-ratio:4/3;margin:0;
  background:#a8bdb1 url('media/tex-pale-sage.jpg') center/cover no-repeat;--w:100%;--l:7%;--t:9%}
.job:nth-of-type(even) .job-card{background-image:url('media/tex-pale-stone.jpg');background-color:#c4bba6}
.job-card img{position:absolute;left:var(--l);top:var(--t);width:var(--w);max-width:none;height:auto;
  border-radius:6px;box-shadow:0 22px 52px rgba(24,30,26,.3)}
.job-findings{--w:112%}
.job-word{--w:118%;--t:12%}
.job-deal{--w:124%}
.job-wording{--w:108%}
.job-playbook{--w:96%;--l:2%;--t:2%}
.job-feats{list-style:none;padding-top:8px}
.job-feats li{border-top:1px solid var(--rule);padding:18px 0}
.job-feats li:last-child{border-bottom:1px solid var(--rule)}
.job-feats b{display:block;font:500 16px/1.3 var(--sans);color:var(--ink)}
.job-feats span{display:block;margin-top:6px;font:400 15px/1.55 var(--sans);color:var(--mute);max-width:46ch}

/* S7 · stats */
.stats{background:var(--ink);color:var(--ivory);padding:112px var(--gutter)}
.stats h2{font:500 32px/1.2 var(--sans);letter-spacing:-.01em;max-width:22ch}
.stats dl{margin-top:48px}
.stats .row{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:26px 0;border-top:1px solid var(--rule-dark)}
.stats .row:last-child{border-bottom:1px solid var(--rule-dark)}
.stats dt{font:400 18px/1.4 var(--sans);color:var(--muted-dark)}
.stats dd{font:400 clamp(40px,4.5vw,64px)/1 var(--serif);letter-spacing:-.02em;white-space:nowrap}

/* S8 · security band, dark with the painted grain */
.sec{background:var(--ink) url('media/tex-ink.jpg') center/cover no-repeat;color:var(--ivory);padding:112px var(--gutter) 120px}
.sec-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:start}
.sec h2{font:500 32px/1.2 var(--sans);letter-spacing:-.01em}
.sec .body{margin-top:22px;max-width:52ch;font:400 16px/1.6 var(--sans);color:var(--muted-dark)}
.sec .btn-line-light{margin-top:32px}
.sec ul{list-style:none;border-bottom:1px solid var(--rule-dark)}
.sec li{display:flex;align-items:center;gap:16px;padding:20px 0;border-top:1px solid var(--rule-dark);font:400 18px/1.3 var(--sans)}
.sec li svg{flex:0 0 auto;width:22px;height:22px;opacity:.7}
.sec li a{margin-inline-start:auto;font:400 14px/1 var(--sans);color:var(--g500);border-bottom:1px solid transparent;transition:color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}
.sec li a:hover{color:var(--ivory);border-color:currentColor}

.foot-cta .acts{display:flex;gap:12px;flex-wrap:wrap}
.foot-cta .btn-ghost{height:48px;padding:0 20px;font:500 16px/1 var(--sans)}

@media (max-width:1100px){
  .top-grid{grid-template-columns:1fr;gap:28px}
  .top h1{max-width:none}
  .job{grid-template-columns:1fr;gap:28px;margin-bottom:64px}
  .job-head{grid-template-columns:1fr;gap:16px}
  .sec-grid{grid-template-columns:1fr;gap:48px}
  .areas ul{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:700px){
  .top{padding:calc(var(--head) + 40px) var(--gutter) 64px}
  .top h1{font-size:clamp(40px,12vw,56px)}
  .top-side p{font-size:18px}
  .top-ctas > a{flex:1;justify-content:center}
  .top-shot{margin-top:40px}
  .areas{padding-bottom:72px}
  .areas ul{grid-template-columns:1fr 1fr;gap:0 12px;margin-top:32px}
  .areas li{height:48px;font-size:18px}
  .doors{padding-bottom:80px}
  .doors-grid{grid-template-columns:1fr;gap:16px}
  .door{aspect-ratio:auto;min-height:520px}
  .door-copy{padding:28px 24px 0}
  .door-copy .label{font-size:28px}
  .door-ui{left:24px;top:auto;bottom:-6%;width:130%}
    .jobs{padding-bottom:24px}
  .jobs h2{font-size:26px;margin-bottom:32px}
  .job{margin-bottom:52px;gap:22px;padding-top:28px}
  .job-card{aspect-ratio:5/4}
  .job-word{--w:126%;--l:4%}
  .job-deal{--w:132%;--l:4%}
  .stats{padding:80px var(--gutter)}
  .stats .row{flex-direction:column;align-items:flex-start;gap:8px;padding:20px 0}
  .sec{padding:80px var(--gutter) 88px}
  .sec li{font-size:16px;padding:16px 0}
  .foot-cta .acts{width:100%}
  .foot-cta .acts > a{flex:1}
}

/* S0 · the hero as a simulation of the review table (sim.js). Painted card, app frame inside. */
.top-shot .sim{position:relative;border-radius:10px;padding:clamp(14px,2.4vw,34px);background:#a8bdb1 url('media/tex-pale-sage.jpg') center/cover no-repeat;min-height:320px}
.sim-screen{background:#fff;border-radius:8px;box-shadow:0 22px 52px rgba(24,30,26,.3);overflow:hidden;font:400 13px/1.4 var(--sans);color:#1b1a18}
.sim-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px 8px;flex-wrap:wrap}
.sim-crumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:15px;color:#8f8b85;min-width:0}
.sim-crumb{color:#8f8b85}
.sim-crumb-btn{background:none;border:0;padding:0;font:inherit;color:#8f8b85;cursor:pointer;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;transition:color .15s,text-decoration-color .15s}
.sim-crumb-btn:hover,.sim-crumb-btn:focus-visible{color:#1b1a18;text-decoration-color:#1b1a18;outline:none}
.sim-crumb-here{color:#1b1a18;font-weight:500;font-size:17px;letter-spacing:-.01em}
.sim-sep{color:#c9c6c0}
.sim-acts{display:flex;gap:8px;flex-shrink:0}
.sim-act{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 12px;border:1px solid #e2dfd9;border-radius:6px;font:400 13px var(--sans);color:#1b1a18;background:#fff;cursor:pointer}
.sim-act:hover,.sim-act:focus-visible{border-color:#1b1a18;outline:none}
.sim-act .sim-tile{width:14px;height:14px}
.sim-act-run{background:#1b1a18;color:#fff;border-color:#1b1a18}
.sim-act-run:hover{background:#000}
.sim-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:0 20px 12px;font-size:13px;color:#706d66}
.sim-legend{display:inline-flex;gap:14px;align-items:center}
.sim-legend-s{gap:10px}
.sim-lg{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.sim-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#c9c6c0}
.sim-lg-favorable .sim-dot,.sim-chip-favorable .sim-dot{background:#3f8f6b}
.sim-lg-unclear .sim-dot,.sim-chip-unclear .sim-dot{background:#c99a2a}
.sim-lg-adverse .sim-dot,.sim-chip-adverse .sim-dot{background:#c9403c}
.sim-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-top:1px solid #edeae4}
.sim-table{border-collapse:separate;border-spacing:0;width:100%;min-width:1080px;table-layout:fixed}
.sim-table th{font-weight:500;color:#5b5852;text-align:left;padding:10px 10px;border-bottom:1px solid #e6e3dd;background:#faf9f7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12.5px}
.sim-table th.sim-n,.sim-table td.sim-n{width:34px;text-align:center;color:#a19d96;font-size:12px}
.sim-table th.sim-doc,.sim-table td.sim-doc{width:210px}
.sim-table td{padding:0;border-bottom:1px solid #edeae4;vertical-align:middle;height:44px}
.sim-table td.sim-doc{padding:0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}
.sim-tile{display:inline-block;width:18px;height:18px;margin-right:8px;vertical-align:-4px;flex-shrink:0}
.sim-cell{padding:0}
.sim-cellbtn{display:block;width:100%;height:44px;padding:0 10px;border:0;background:transparent;font:inherit;color:#1b1a18;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;text-decoration:underline;text-decoration-color:#d6d3cc;text-underline-offset:3px;transition:background .12s}
.sim-favorable .sim-cellbtn{background:#e2f2ea}
.sim-unclear .sim-cellbtn{background:#fbf1cd}
.sim-adverse .sim-cellbtn{background:#f9dedc}
.sim-empty .sim-cellbtn{color:#8f8b85;font-style:italic}
.sim-cellbtn:hover{filter:brightness(.96)}
.sim-cellbtn:focus-visible{outline:2px solid #1b1a18;outline-offset:-2px}
.sim-cellbtn[aria-expanded="true"]{text-decoration-color:#1b1a18}
.sim-notfound{display:block;padding:0 10px;color:#a19d96}
.sim-cite{position:absolute;z-index:6;display:flex;flex-direction:column;gap:8px;width:330px;padding:12px 14px;border:1px solid #e2dfd9;border-radius:10px;background:#fff;box-shadow:0 10px 30px rgba(24,30,26,.16);white-space:normal;text-align:left;animation:ts-in .16s ease-out}
.sim-cite-source{font-size:11px;color:#5b5852}
.sim-cite-value{font-size:13px;line-height:18px;color:#1b1a18}
.sim-cite-open{align-self:flex-start;border:0;background:none;padding:0;font:500 12px var(--sans);color:#2f5fd0;cursor:pointer}
.sim-cite-open:hover{text-decoration:underline}
.sim-foot{padding:12px 20px;font-size:12.5px;color:#8f8b85}
.sim-detail{margin:0 20px 20px;padding:16px 18px;border:1px solid #e2dfd9;border-radius:8px;background:#faf9f7}
.sim-detail-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.sim-chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:12px;font-size:12.5px;font-weight:500;background:#efece6}
.sim-chip-favorable{background:#e2f2ea}.sim-chip-unclear{background:#fbf1cd}.sim-chip-adverse{background:#f9dedc}
.sim-close{background:none;border:1px solid #e2dfd9;border-radius:6px;height:28px;padding:0 10px;font:inherit;font-size:12.5px;color:#4a4742;cursor:pointer}
.sim-close:hover{border-color:#1b1a18;color:#1b1a18}
.sim-detail-doc{font-weight:500;margin-bottom:12px}
.sim-detail-q-label,.sim-detail-a-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:#8f8b85;margin:8px 0 4px}
.sim-detail-q{color:#4a4742;font-style:italic}
.sim-detail-a{font-size:14px;line-height:1.5;max-width:78ch}
.sim-list{border-top:1px solid #edeae4}
.sim-row{display:grid;grid-template-columns:minmax(0,1fr) 100px 90px 190px 100px;gap:12px;align-items:center;width:100%;padding:12px 20px;border:0;border-bottom:1px solid #edeae4;background:#fff;font:inherit;color:#1b1a18;text-align:left;cursor:pointer}
.sim-row:hover,.sim-row:focus-visible{background:#faf9f7;outline:none}
.sim-row-head{cursor:default;font-weight:500;color:#5b5852;font-size:12.5px;background:#faf9f7}
.sim-row-head:hover{background:#faf9f7}
.sim-row-name{display:flex;align-items:center;gap:10px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}
.sim-tbl{color:#8f8b85;font-size:14px}
.sim-cap{margin-top:14px;font:400 13px/1.5 var(--sans);color:var(--mute)}
@media (max-width:720px){
  .top-shot .sim{padding:10px}
  .sim-bar{padding:12px 12px 6px}
  .sim-meta{padding:0 12px 10px}
  .sim-crumb-here{font-size:15px}
  .sim-acts{display:none}
  .sim-detail{margin:0 12px 12px}
  .sim-row{grid-template-columns:minmax(0,1fr) 70px 70px;padding:10px 12px}
  .sim-row > :nth-child(4),.sim-row > :nth-child(5){display:none}
}

/* S6 · the thread as a simulation (threads.js): three recorded runs, replayed */
.ts-shell{display:flex;flex-direction:column;gap:14px}
.ts-picker{display:flex;gap:8px;flex-wrap:wrap}
.ts-pick{min-height:36px;padding:8px 14px;line-height:1.25;text-align:left;border-radius:18px;border:1px solid rgba(27,26,24,.25);background:rgba(255,255,255,.55);color:#1b1a18;font:500 13.5px/1 var(--sans);cursor:pointer;transition:background .15s,border-color .15s}
.ts-pick:hover{background:#fff}
.ts-pick-on,.ts-pick-on:hover{background:#1b1a18;color:#fff;border-color:#1b1a18}
.ts-pick:focus-visible{outline:2px solid #1b1a18;outline-offset:2px}
.ts-app{display:grid;grid-template-columns:minmax(0,1fr) 280px;background:#fff;overflow:hidden;font:400 14px/1.5 var(--sans);color:#1b1a18;height:100%}
.ts-main{display:flex;flex-direction:column;min-width:0;border-right:1px solid #edeae4}
.ts-top{padding:16px 22px 12px;border-bottom:1px solid #edeae4}
.ts-top-title{font-size:17px;font-weight:500;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ts-top-meta{display:flex;gap:8px;align-items:center;margin-top:4px;font-size:12.5px;color:#8f8b85;white-space:nowrap;overflow:hidden}
.ts-matter{border:1px solid #e2dfd9;border-radius:6px;padding:2px 8px;color:#4a4742;overflow:hidden;text-overflow:ellipsis}
.ts-transcript{flex:1;min-height:0;padding:22px 22px 12px;display:flex;flex-direction:column;gap:14px;overflow:auto;scroll-behavior:smooth}
.ts-user{display:flex;gap:12px;align-items:flex-start}
.ts-user p{margin:0;font-size:15px;line-height:1.55}
.ts-avatar{flex-shrink:0;width:28px;height:28px;border-radius:50%;border:1px solid #d6d3cc;background:#faf9f7 center/14px no-repeat;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238f8b85' stroke-width='1.6'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4 3.6-7 8-7s8 3 8 7'/%3E%3C/svg%3E")}
.ts-lines{display:flex;flex-direction:column;gap:6px;padding-left:40px;font-size:13.5px;color:#8f8b85}
.ts-line{animation:ts-in .25s ease-out}
.ts-working{display:flex;align-items:center;gap:8px;padding-left:40px;font-size:13.5px;color:#8f8b85}
.ts-spin{width:12px;height:12px;border-radius:50%;border:1.5px solid #d6d3cc;border-top-color:#1b1a18;animation:ts-spin 1s linear infinite}
@keyframes ts-spin{to{transform:rotate(360deg)}}
@keyframes ts-in{from{opacity:0;transform:translateY(3px)}}
.ts-answer{padding-left:40px;display:flex;flex-direction:column;gap:16px}
.ts-answer>*{animation:ts-in .35s ease-out}
.ts-prose p{margin:0 0 10px;font-size:14.5px;line-height:1.6}
.ts-prose ul{margin:0 0 10px;padding-left:20px}
.ts-prose li{margin:4px 0;font-size:14.5px;line-height:1.55}
.ts-composer{display:flex;align-items:center;justify-content:space-between;margin:8px 22px 18px;padding:12px 16px;border-radius:12px;background:#f4f2ee;color:#8f8b85;font-size:14px}
.ts-stop{display:inline-flex;align-items:center;height:30px;padding:0 14px;border:0;border-radius:8px;background:#1b1a18;color:#fff;font:400 13px var(--sans);cursor:pointer;flex-shrink:0}
.ts-stop:hover{background:#000}
.ts-stop:focus-visible{outline:2px solid #1b1a18;outline-offset:2px}
.ts-composer-ta{flex:1;min-width:0;border:0;background:none;resize:none;font:400 14px/1.5 var(--sans);color:#1b1a18;outline:none;padding:0;margin-right:12px}
.ts-composer-ta::placeholder{color:#8f8b85}
.ts-rail{padding:16px 18px;display:flex;flex-direction:column;gap:22px;background:#fff}
.ts-progress-head{display:flex;justify-content:space-between;font-size:14px;color:#5b5852;margin-bottom:12px}
.ts-progress-count{color:#4a4742}
.ts-tasks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;position:relative}
.ts-tasks::before{content:"";position:absolute;left:8px;top:14px;bottom:14px;width:1px;background:#e6e3dd}
.ts-task{display:flex;gap:12px;align-items:flex-start;font-size:13.5px;line-height:1.4;animation:ts-in .25s ease-out;position:relative}
.ts-ring{flex-shrink:0;width:16px;height:16px;border-radius:50%;border:1.5px solid #1b1a18;background:#fff;margin-top:1px;box-sizing:border-box}
.ts-task-pending{color:#a19d96}
.ts-task-pending .ts-ring{border-style:dashed;border-color:#c9c6c0}
.ts-task-running .ts-ring{border-color:#1b1a18}
.ts-task-done{color:#8f8b85;text-decoration:line-through}
.ts-task-done .ts-ring{border-color:#3f8f6b;background:#3f8f6b center/10px no-repeat;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E")}
.ts-sources{display:flex;flex-wrap:wrap;gap:6px}
.ts-src{border:1px solid #e2dfd9;border-radius:14px;padding:3px 10px;font-size:12px;color:#4a4742;background:#faf9f7}
.ts-src-none{font-size:12.5px;color:#a19d96;font-style:italic}
.ts-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font:400 13px/1.5 var(--sans);color:#4a4742}
.ts-again{height:32px;padding:0 14px;border-radius:6px;border:1px solid #1b1a18;background:#fff;color:#1b1a18;font:500 13px/1 var(--sans);cursor:pointer}
.ts-again:hover{background:#1b1a18;color:#fff}
.ts-review-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:12.5px;color:#706d66}
.ts-legend{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap}
.ts-legend-note{color:#a19d96}
.ts-chip{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 9px;border-radius:11px;font-size:12px;font-weight:500;color:#1b1a18;background:#efece6;white-space:nowrap}
.ts-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#c9c6c0}
.ts-aligned{background:#e2f2ea}.ts-aligned .ts-dot{background:#3f8f6b}
.ts-review-c{background:#fbf1cd}.ts-review-c .ts-dot{background:#c99a2a}
.ts-deviates{background:#f9dedc}.ts-deviates .ts-dot{background:#c9403c}
.ts-filters{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 12px}
.ts-filter{height:28px;padding:0 12px;border-radius:14px;border:1px solid #e2dfd9;background:#fff;color:#4a4742;font:400 12.5px/1 var(--sans);cursor:pointer}
.ts-filter-on{background:#1b1a18;color:#fff;border-color:#1b1a18}
.ts-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;align-items:start}
.ts-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px 16px;border:1px solid #e2dfd9;border-radius:10px;background:#fff}
.ts-card-deviates{border-color:#e6b3b0}
.ts-card-title{margin:2px 0 0;font-size:15px;font-weight:500;letter-spacing:-.01em;line-height:1.3}
.ts-label{font-size:10.5px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#8f8b85;margin-top:4px}
.ts-label-redraft{padding-top:8px;border-top:1px solid #edeae4}
.ts-text{margin:0;font-size:13.5px;line-height:1.5}
.ts-absent{color:#8f8b85;font-style:italic}
.ts-diff{margin:0;font-size:13.5px;line-height:1.6;overflow-wrap:anywhere}
.ts-del{color:#9b3528;background:rgba(155,53,40,.10);text-decoration:line-through;text-decoration-color:#9b3528;padding:0 2px;border-radius:2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.ts-ins{background:rgba(30,107,87,.12);padding:0 2px;border-radius:2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.ts-ins-block{background:rgba(30,107,87,.10);padding:8px 10px;border-radius:6px}
@media (max-width:900px){
  .ts-app{grid-template-columns:1fr}
  .ts-main{border-right:0;border-bottom:1px solid #edeae4}
  .ts-transcript{max-height:none}
}
@media (max-width:720px){
  .ts-transcript{padding:16px 14px 10px}
  .ts-lines,.ts-working,.ts-answer{padding-left:0}
  .ts-composer{margin:8px 14px 14px}
  .ts-cards{grid-template-columns:1fr}
}

/* S0 · the workspace: rail + main, inside the painted card */
.sim-app{position:relative;display:grid;grid-template-columns:224px minmax(0,1fr);background:#fff;border-radius:8px;box-shadow:0 22px 52px rgba(24,30,26,.3);overflow:hidden;font:400 13px/1.4 var(--sans);color:#1b1a18;height:680px}
.sim-main{min-width:0;min-height:0;display:flex;flex-direction:column;overflow:auto}
.sim-main .sim-screen{box-shadow:none;border-radius:0;flex:1}
.sim-main .ts-shell{gap:0;flex:1;min-height:0;display:flex;flex-direction:column}
.sim-main .ts-shell>.ts-app{flex:1;min-height:0}
.sim-main .ts-main{min-height:0}
.sim-main .ts-rail{overflow:auto;min-height:0}
.sim-main .ts-foot{padding:10px 20px 14px;border-top:1px solid #edeae4;background:#faf9f7}
.sim-rail{display:flex;flex-direction:column;gap:4px;padding:14px 12px;background:#faf9f7;border-right:1px solid #edeae4;text-align:left}
.sim-org{display:flex;align-items:center;gap:8px;padding:4px 6px 14px;font-size:14px;font-weight:500}
.sim-org-mark{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:5px;background:#1b1a18;color:#fff;font:500 12px/1 var(--serif)}
.sim-nav{display:block;width:100%;padding:8px 10px;border:0;border-radius:8px;background:none;color:#1b1a18;font:400 13.5px/1.35 var(--sans);text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .12s}
.sim-nav:hover{background:#efece6}
.sim-nav-on{background:#e9e6df;font-weight:500}
.sim-nav:focus-visible{outline:2px solid #1b1a18;outline-offset:-2px}
.sim-nav-new::before{content:"+";margin-right:8px;color:#4a4742}
.sim-nav-lib::before{content:"\2261";margin-right:8px;color:#4a4742}
.sim-nav-recent{font-size:13px;padding-left:14px}
.sim-nav-recent::before{content:"\2022";margin-right:8px;color:#c9c6c0}
.sim-rail-h{margin:14px 10px 4px;font-size:11.5px;letter-spacing:.04em;color:#8f8b85}
.sim-space{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px 6px 14px;border:0;border-radius:8px;background:none;font:400 13px var(--sans);color:#4a4742;text-align:left;cursor:pointer}
.sim-space:hover,.sim-space:focus-visible{background:#efece6;color:#1b1a18;outline:none}
.sim-space-dot{width:8px;height:8px;border-radius:50%;background:#7b419d}
.sim-space-trt{background:#8a2e6b}.sim-space-cor{background:#3f62b0}
.sim-me{margin-top:auto;display:flex;align-items:center;gap:8px;padding:10px 6px 2px;font-size:13px;color:#4a4742}
.sim-me-av{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#e9e6df;font-size:10px;font-weight:500}
.sim-main{position:relative}
.sim-new{padding:34px 32px 28px;display:flex;flex-direction:column;gap:14px;max-width:820px;margin:0 auto;width:100%}
.sim-new-h{margin:0 0 4px;text-align:center;font:600 34px/1.1 var(--serif);letter-spacing:-.01em}
.sim-starters{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.sim-starter{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 12px;border:1px solid #e2dfd9;border-radius:6px;background:#fff;font:400 13.5px var(--sans);color:#1b1a18;cursor:pointer}
.sim-starter:hover,.sim-starter:focus-visible{border-color:#1b1a18;outline:none}
.sim-starter-ic{width:16px;height:16px;border:1.5px solid #4a4742;border-radius:3px;position:relative}
.sim-starter-doc::after{content:"";position:absolute;left:3px;right:3px;top:4px;height:1.5px;background:#4a4742;box-shadow:0 3px 0 #4a4742}
.sim-starter-table::after{content:"";position:absolute;left:0;right:0;top:5px;height:1.5px;background:#4a4742;box-shadow:0 4px 0 #4a4742}
.sim-starter-table::before{content:"";position:absolute;top:0;bottom:0;left:5px;width:1.5px;background:#4a4742}
.sim-above{display:flex;justify-content:space-between;align-items:center;margin-top:18px}
.sim-tool{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 8px;border:0;border-radius:6px;background:none;font:400 13.5px var(--sans);color:#1b1a18;cursor:pointer;max-width:320px}
.sim-tool:hover,.sim-tool:focus-visible{background:#efece6;outline:none}
.sim-tool-set{background:#efece6;font-weight:500}
.sim-tool-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sim-tool-ic{display:inline-block;width:14px;height:14px;flex:0 0 14px;background:center/14px 14px no-repeat}
.sim-ic-focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231b1a18' stroke-width='1.8'%3E%3Cpath d='M3 8h18v11H3z'/%3E%3Cpath d='M8 8V5h8v3'/%3E%3C/svg%3E")}
.sim-ic-agents{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231b1a18' stroke-width='1.8'%3E%3Cpath d='M12 3l8 4v6c0 5-3.5 7.5-8 8-4.5-.5-8-3-8-8V7z'/%3E%3C/svg%3E")}
.sim-ic-files{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%231b1a18' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 5.5 6.2 10.3a1.6 1.6 0 0 0 2.3 2.3l4.8-4.8a3 3 0 0 0-4.2-4.3L4.3 8.2a4.4 4.4 0 0 0 6.2 6.2l4.3-4.3'/%3E%3C/svg%3E")}
.sim-ic-sources{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%231b1a18' stroke-width='1.14' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 6 8 2l6 4M2.67 6.67V12M6 6.67V12M10 6.67V12M13.33 6.67V12M2 14h12'/%3E%3C/svg%3E")}
.sim-ic-improve{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%231b1a18' stroke-width='1.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 2.2l1.3 3.2 3.2 1.3-3.2 1.3L8 11.2 6.7 8 3.5 6.7l3.2-1.3L8 2.2ZM12.7 11.3l.6 1.4 1.4.6-1.4.6-.6 1.4-.6-1.4-1.4-.6 1.4-.6.6-1.4Z'/%3E%3C/svg%3E")}
.sim-ic-effort{width:16px;height:16px;margin-right:6px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231b1a18' stroke-width='2'%3E%3Cpath d='M4 7h16M4 12h16M4 17h16'/%3E%3C/svg%3E")}
.sim-composer{display:flex;flex-direction:column;gap:8px;padding:14px 14px 10px;border-radius:14px;background:#f4f2ee}
.sim-ta{width:100%;border:0;background:none;resize:none;font:400 15px/1.5 var(--sans);color:#1b1a18;outline:none;min-height:66px}
.sim-ta::placeholder{color:#8f8b85}
.sim-chips{display:flex;flex-wrap:wrap;gap:6px}
.sim-chip{background:#fff;padding-right:4px}
.sim-chip-x{border:0;background:none;color:#8f8b85;font:400 15px/1 var(--sans);cursor:pointer;padding:2px 4px;border-radius:4px}
.sim-chip-x:hover{color:#1b1a18;background:#efece6}
.sim-composer-bar{display:flex;align-items:center;gap:2px}
.sim-composer-bar .sim-tool:hover,.sim-composer-bar .sim-tool:focus-visible{background:#e6e2da}
.sim-composer-sp{flex:1}
.sim-send{width:32px;height:32px;border:0;border-radius:50%;background:#1b1a18;color:#fff;font:500 16px/1 var(--sans);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.sim-send:hover{background:#000}
.sim-send:focus-visible{outline:2px solid #1b1a18;outline-offset:2px}
.sim-recent{width:100%;border-collapse:collapse;margin-top:26px;font-size:13.5px}
.sim-recent th{text-align:left;font-weight:400;color:#706d66;padding:8px 10px 10px;border-bottom:1px solid #edeae4;font-size:13px}
.sim-recent td{padding:12px 10px;border-bottom:1px solid #edeae4;vertical-align:middle}
.sim-recent-row{cursor:pointer}
.sim-recent-row:hover td{background:#faf9f7}
.sim-recent-row:focus-visible{outline:2px solid #1b1a18;outline-offset:-2px}
.sim-recent-name{font-size:14px;max-width:340px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sim-recent-matter,.sim-recent-when{color:#4a4742;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}
.sim-recent-when{text-align:right}
.sim-recent-status{white-space:nowrap;color:#4a4742;font-size:13px}
.sim-recent-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#1b1a18;margin-right:8px;vertical-align:1px}
.sim-pop{position:absolute;z-index:5;display:flex;flex-direction:column;background:#fff;border:1px solid #e2dfd9;border-radius:12px;box-shadow:0 14px 34px rgba(24,30,26,.18);padding:8px;min-width:280px;max-width:min(560px,calc(100% - 16px));animation:ts-in .16s ease-out}
.sim-pop-h{padding:8px 10px 6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8f8b85}
.sim-pop-sep{height:1px;background:#edeae4;margin:4px 6px}
.sim-pop-opt,.sim-pop-row{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:8px;background:none;font:400 14px var(--sans);color:#1b1a18;text-align:left;cursor:pointer}
.sim-pop-opt:hover,.sim-pop-row:hover,.sim-pop-opt:focus-visible,.sim-pop-row:focus-visible{background:#f4f2ee;outline:none}
.sim-pop-check{margin-left:auto;color:#1b1a18;opacity:0;font-size:13px}
.sim-pop-on .sim-pop-check{opacity:1}
.sim-pop-ic{display:inline-block;width:18px;height:18px;flex:0 0 18px;background:center/contain no-repeat}
.sim-flag{display:inline-flex;width:20px;height:14px;flex-shrink:0;border-radius:2px;overflow:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.sim-flag svg{display:block}
.sim-pop-plus{width:20px;text-align:center;color:#8f8b85;font-size:16px;line-height:1;flex-shrink:0}
.sim-pop-ask{color:#5b5852}
.sim-ic-web{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%235aa9e6' stroke-width='1.3'%3E%3Ccircle cx='8' cy='8' r='6.2'/%3E%3Cpath d='M8 1.8c2 2 2 10.4 0 12.4M8 1.8c-2 2-2 10.4 0 12.4M2 8h12'/%3E%3C/svg%3E")}
.sim-ic-edgar{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%231b1a18' stroke-width='1.2' stroke-linejoin='round'%3E%3Cpath d='M2.5 3.2h4a1.5 1.5 0 0 1 1.5 1.5v8a1.2 1.2 0 0 0-1.2-1.2H2.5V3.2ZM13.5 3.2h-4A1.5 1.5 0 0 0 8 4.7v8a1.2 1.2 0 0 1 1.2-1.2h4.3V3.2Z'/%3E%3C/svg%3E")}
.sim-ic-library{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231b1a18' stroke-width='1.8'%3E%3Cpath d='M4 4v16M9 4v16M14 4v16M17 5l4 15'/%3E%3C/svg%3E")}
.sim-ic-space{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b4fd8' stroke-width='1.8'%3E%3Cpath d='M12 3l9 5-9 5-9-5zM3 12l9 5 9-5M3 16l9 5 9-5'/%3E%3C/svg%3E")}
.sim-ic-matter{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f5fd0' stroke-width='1.8'%3E%3Cpath d='M3 8h18v11H3z'/%3E%3Cpath d='M8 8V5h8v3'/%3E%3C/svg%3E")}
.sim-pop-head{display:flex;justify-content:space-between;align-items:center;padding:6px 10px 10px}
.sim-pop-title{font-size:15px;font-weight:500}
.sim-pop-x{border:0;background:none;font:400 20px/1 var(--sans);color:#4a4742;cursor:pointer;padding:0 4px}
.sim-pop-search{width:calc(100% - 12px);box-sizing:border-box;margin:0 6px 8px;padding:9px 12px;border:0;border-radius:8px;background:#f4f2ee;color:#1b1a18;font:400 14px var(--sans);outline:none}
.sim-pop-search::placeholder{color:#8f8b85}
.sim-pop-list{min-height:0;flex:1;overflow:auto}
.sim-pop-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sim-pop-kind{color:#8f8b85;font-size:13px;flex-shrink:0}
.sim-pop-text{display:flex;flex-direction:column;min-width:0;flex:1}
.sim-pop-meta{font-size:12px;color:#8f8b85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sim-pop-focus{width:560px}
.sim-pop-files{width:520px}
.sim-gate{position:absolute;inset:0;z-index:8;background:rgba(27,26,24,.42);display:flex;align-items:center;justify-content:center;padding:20px;animation:ts-in .2s ease-out}
.sim-gate-card{background:#fff;border-radius:14px;padding:28px 30px 22px;max-width:520px;width:100%;display:flex;flex-direction:column;gap:14px;box-shadow:0 24px 60px rgba(24,30,26,.35)}
.sim-gate-h{margin:0;font:600 24px/1.2 var(--serif);letter-spacing:-.01em}
.sim-gate-p{margin:0;font-size:14.5px;line-height:1.55;color:#4a4742}
.sim-gate-q{margin:0;padding:10px 14px;border-left:3px solid #e2dfd9;color:#1b1a18;font-size:14px;line-height:1.5;max-height:120px;overflow:hidden}
.sim-gate-atts{padding-left:17px}
.sim-gate-acts{display:flex;gap:10px;margin-top:4px}
.sim-gate-start,.sim-gate-login{display:inline-flex;align-items:center;justify-content:center;height:42px;padding:0 20px;border-radius:6px;font:500 14.5px var(--sans);text-decoration:none}
.sim-gate-start{background:#1b1a18;color:#fff}
.sim-gate-start:hover{background:#000}
.sim-gate-login{border:1px solid #d6d3cc;color:#1b1a18}
.sim-gate-login:hover{border-color:#1b1a18}
.sim-gate-back{align-self:flex-start;border:0;background:none;color:#706d66;font:400 13.5px var(--sans);cursor:pointer;padding:4px 0;text-decoration:underline;text-underline-offset:3px}
.sim-gate-back:hover{color:#1b1a18}
@media (max-width:900px){
  .sim-app{grid-template-columns:1fr;height:620px;grid-template-rows:auto minmax(0,1fr)}
  .sim-cite{width:min(330px,calc(100% - 16px))}
  .sim-rail{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding:10px;border-right:0;border-bottom:1px solid #edeae4;align-items:center}
  .sim-org{padding:0 8px 0 2px;white-space:nowrap}
  .sim-org-name{display:none}
  .sim-nav{width:auto;padding:7px 10px;border:1px solid #e2dfd9;background:#fff;flex-shrink:0;max-width:220px}
  .sim-nav-on{background:#1b1a18;color:#fff;border-color:#1b1a18}
  .sim-rail-h,.sim-space,.sim-me{display:none}
  .sim-new{padding:22px 16px}
  .sim-new-h{font-size:28px}
  .sim-recent-matter,.sim-recent-when{display:none}
  .sim-pop-focus,.sim-pop-files{width:auto}
  .sim-gate-card{padding:20px}
  .sim-gate-acts{flex-direction:column}
}

/* S0 · Library tabs, playbook rules and positions, the agents roster */
.sim-page{display:flex;flex-direction:column}
.sim-page .sim-list,.sim-page .sim-agents{max-height:620px;overflow:auto}
.sim-pagehead{display:flex;justify-content:space-between;align-items:center;padding:18px 20px 6px}
.sim-pagetitle{margin:0;font-size:20px;font-weight:500;letter-spacing:-.01em}
.sim-tabs{display:flex;gap:4px;padding:6px 20px 0;border-bottom:1px solid #edeae4}
.sim-tab{padding:10px 12px;border:0;border-bottom:2px solid transparent;background:none;font:400 13.5px/1 var(--sans);color:#706d66;cursor:pointer;margin-bottom:-1px}
.sim-tab:hover{color:#1b1a18}
.sim-tab-on{color:#1b1a18;font-weight:500;border-bottom-color:#1b1a18}
.sim-tab:focus-visible{outline:2px solid #1b1a18;outline-offset:-2px}
.sim-row-5{grid-template-columns:minmax(0,1fr) 100px 90px 190px 100px}
.sim-row-4{grid-template-columns:minmax(0,1fr) 180px 220px 100px}
.sim-row-3{grid-template-columns:minmax(0,1fr) 260px 100px}
.sim-row-static{cursor:default}
.sim-row-static:hover{background:#fff}
.sim-pill{display:inline-block;padding:2px 8px;border-radius:10px;background:#f4f2ee;font-size:12px;color:#4a4742;width:max-content}
.sim-muted{color:#8f8b85}
.sim-pb{display:grid;grid-template-columns:280px minmax(0,1fr);border-top:1px solid #edeae4;min-height:420px}
.sim-pb-rules{list-style:none;margin:0;padding:10px;border-right:1px solid #edeae4;display:flex;flex-direction:column;gap:2px;max-height:560px;overflow:auto}
.sim-pb-rule{display:block;width:100%;padding:9px 12px;border:0;border-radius:6px;background:none;font:400 13px/1.35 var(--sans);color:#1b1a18;text-align:left;cursor:pointer}
.sim-pb-rule:hover{background:#f4f2ee}
.sim-pb-rule-on{background:#e9e6df;font-weight:500}
.sim-pb-detail{padding:20px 26px 26px;display:flex;flex-direction:column;gap:10px;max-height:560px;overflow:auto}
.sim-pb-title{margin:0 0 4px;font-size:18px;font-weight:500;letter-spacing:-.01em}
.sim-pb-text{margin:0;font-size:14px;line-height:1.55;max-width:70ch}
.sim-pos{padding:14px 16px;border:1px solid #e2dfd9;border-radius:10px;background:#fff;display:flex;flex-direction:column;gap:6px}
.sim-pos-pref{border-color:#c9dccf;background:#fbfdfb}
.sim-pos-h{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500}
.sim-pos-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#3f8f6b;color:#fff;font-size:11px}
.sim-pos-n{color:#8f8b85;font-size:12px}
.sim-agents{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;padding:12px 20px 20px}
.sim-agent{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border:1px solid #e2dfd9;border-radius:10px;background:#fff;font:inherit;text-align:left;cursor:pointer;transition:border-color .12s,background .12s}
.sim-agent:hover,.sim-agent:focus-visible{border-color:#1b1a18;outline:none}
.sim-agent-on{border-color:#1b1a18;background:#faf9f7}
.sim-agent-title{font-size:14.5px;font-weight:500;line-height:1.3}
.sim-agent-meta{font-size:12.5px;color:#706d66}
.sim-agent-src{margin-top:4px;font-size:11.5px;color:#8f8b85}
.sim-agent-detail{margin:0 20px 20px;padding:16px 18px;border:1px solid #e2dfd9;border-radius:10px;background:#faf9f7;display:flex;flex-direction:column;gap:10px}
.sim-agent-detail-title{margin:0;font-size:17px;font-weight:500}
.sim-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.sim-field{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:#4a4742}
.sim-input{width:100%;min-height:34px;padding:7px 10px;border:1px solid #e2dfd9;border-radius:6px;background:#fff;color:#1b1a18;font:400 13px/1.4 var(--sans);resize:vertical}
.sim-input::placeholder{color:#a19d96}
.sim-input:focus{border-color:#1b1a18;outline:none}
.sim-textarea{min-height:64px}
.sim-field{position:relative}
.sim-select{appearance:none;-webkit-appearance:none;padding-right:28px;cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238f8b85' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 8px center/14px no-repeat}
.sim-agent-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:12.5px}
.sim-nav-agents::before{content:"\25CE";margin-right:8px;color:#4a4742}
@media (max-width:720px){
  .sim-tabs{overflow-x:auto;padding:6px 12px 0}
  .sim-row-5,.sim-row-4,.sim-row-3{grid-template-columns:minmax(0,1fr) 80px}
  .sim-row-5 > :nth-child(n+3),.sim-row-4 > :nth-child(n+3),.sim-row-3 > :nth-child(3){display:none}
  .sim-pb{grid-template-columns:1fr}
  .sim-pb-rules{max-height:200px;border-right:0;border-bottom:1px solid #edeae4}
  .sim-agents{padding:12px}
  .sim-agent-detail{margin:0 12px 12px}
}

/* S0 · the thread's attachments and its tables (the review table, the analysis table) */
.ts-user-body{min-width:0;display:flex;flex-direction:column;gap:8px}
.ts-atts{display:flex;flex-wrap:wrap;gap:6px}
.ts-att{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:5px 10px 5px 8px;border:1px solid #e2dfd9;border-radius:8px;background:#faf9f7;font-size:12.5px;color:#1b1a18}
.ts-att .sim-tile{margin:0}
.ts-att-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ts-rt{border:1px solid #e6e3dd;border-radius:8px;overflow:hidden;background:#fff}
.ts-rt-band{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f4f2ee;font-size:13px;color:#4a4742}
.ts-rt-band-label{font-weight:500;color:#1b1a18}
.ts-rt-spacer{flex:1}
.ts-rt-open{border:1px solid #e2dfd9;border-radius:6px;background:#fff;padding:5px 10px;font:inherit;font-size:12.5px;color:#1b1a18;cursor:pointer}
.ts-rt-open:hover{border-color:#1b1a18}
.ts-rt-open-static{cursor:default}
.ts-rt-apply-all{border:0;background:#1b1a18;color:#fff;border-radius:6px;padding:6px 12px;font:400 12.5px var(--sans);cursor:pointer}
.ts-rt-apply-all:hover{background:#000}
.ts-rt-grid{display:flex;flex-direction:column}
.ts-rt-row{display:grid;grid-template-columns:92px 150fr 230fr 150fr;gap:12px;padding:10px 12px;border-top:1px solid #edeae4;font-size:13px;line-height:1.45;align-items:start}
.ts-rt-head{border-top:0;color:#5b5852;font-size:12.5px;background:#faf9f7}
.ts-rt-where{font-weight:500}
.ts-rt-change{color:#1b1a18;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
.ts-rt-why{color:#706d66;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
.ts-rt-foot{padding:8px 12px;border-top:1px solid #edeae4;font-size:12px;color:#8f8b85}
.ts-rt .ts-review{padding:12px}
.ts-an-counts{display:flex;gap:8px;padding:8px 12px 4px}
.ts-an-grid{display:flex;flex-direction:column}
.ts-an-row{display:grid;grid-template-columns:200fr 260fr 44px 52px;gap:12px;padding:10px 12px;border-top:1px solid #edeae4;font-size:13px;line-height:1.45;align-items:start}
.ts-an-item{display:flex;gap:8px;align-items:flex-start;font-weight:500}
.ts-an-item .ts-dot{margin-top:6px;flex-shrink:0}
.ts-dot-crit{background:#c9403c}.ts-dot-risk{background:#c99a2a}
.ts-an-change{color:#1e6b57;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}
.ts-an-src{display:inline-block;padding:1px 6px;border-radius:4px;background:#f4f2ee;font-size:11.5px;color:#4a4742;width:max-content}
.ts-an-apply{border:0;background:none;padding:0;color:#1b1a18;font:500 12.5px var(--sans);text-align:right;cursor:pointer;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px}
.ts-an-apply:hover{text-decoration-color:#1b1a18}
@media (max-width:720px){
  .ts-rt-row{grid-template-columns:80px minmax(0,1fr)}
  .ts-rt-row > :nth-child(3),.ts-rt-row > :nth-child(4){display:none}
  .ts-an-row{grid-template-columns:minmax(0,1fr) 44px}
  .ts-an-row > :nth-child(2),.ts-an-row > :nth-child(4){display:none}
}

/* S0 · the thread's Context panel, as the app draws it */
.ts-progress-right{display:inline-flex;align-items:center;gap:10px}
.ts-fold{border:0;background:none;padding:0 2px;color:#8f8b85;font:400 12px var(--sans);cursor:pointer}
.ts-fold:hover{color:#1b1a18}
.ts-fold[aria-expanded="false"]{transform:rotate(180deg)}
.ts-folded>*:not(:first-child){display:none}
.ts-context{display:flex;flex-direction:column;gap:10px;padding-top:18px;border-top:1px solid #edeae4}
.ts-seg{display:grid;grid-template-columns:repeat(3,1fr);padding:3px;border:1px solid #e2dfd9;border-radius:8px;background:#fff}
.ts-seg-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:28px;border:0;border-radius:6px;background:none;font:400 12.5px/1 var(--sans);color:#4a4742;cursor:pointer}
.ts-seg-on{background:#f0eee9;color:#1b1a18;font-weight:500}
.ts-seg-btn:focus-visible{outline:2px solid #1b1a18;outline-offset:-2px}
.ts-seg-n{font-size:11px;color:#8f8b85;font-variant-numeric:tabular-nums}
.ts-pane{display:flex;flex-direction:column;gap:6px;padding-top:4px}
.ts-file{display:flex;align-items:flex-start;gap:9px;padding:8px 10px;border:1px solid #edeae4;border-radius:8px;background:#fff;animation:ts-in .25s ease-out}
.ts-file .sim-tile{margin:0;margin-top:1px}
.ts-file-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.ts-file-name{font-size:12.5px;line-height:1.35;color:#1b1a18;overflow-wrap:anywhere}
.ts-file-meta{font-size:11.5px;color:#8f8b85}
.ts-tile-table{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;background:#e2f2ea;color:#1e6b57;font-size:12px;flex-shrink:0}
.ts-empty{display:flex;flex-direction:column;gap:3px;padding:8px 2px}
.ts-empty-title{font-size:13px;color:#4a4742}
.ts-empty-body{font-size:12px;line-height:1.45;color:#a19d96}
.ts-grounded{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding-top:12px;border-top:1px solid #edeae4;font-size:12.5px}
.ts-grounded-label{color:#706d66;margin-right:2px}
.ts-src-more{color:#706d66;border-style:dashed}

/* Contract Intelligence replay (cisim.js) — verdict colors are the product's own, packages/ui/src/tokens.ts */
#cisim{position:relative;height:600px;border-radius:12px;overflow:hidden;background:#fff;border:1px solid var(--rule);font:400 14px/1.4 var(--sans);color:var(--ink);box-shadow:0 30px 70px rgba(20,18,15,.14)}
.ci-v-aligned{--ci-bg:#D8F3E9;--ci-ink:#3F6B3F}
.ci-v-review{--ci-bg:#FDF4C8;--ci-ink:#7A5A1F}
.ci-v-deviates{--ci-bg:#F7E3E5;--ci-ink:#8B2A2A}
.ci-v-none{--ci-bg:#F1F0EC;--ci-ink:#8F8B86}
.ci-shell{display:flex;height:100%}
.ci-stage{position:relative;height:100%;flex:1;min-width:0}
.ci-rail{flex:0 0 212px;display:flex;flex-direction:column;gap:1px;padding:14px 9px;background:#F6F6F4;border-right:1px solid #E7E6E2;overflow:hidden}
.ci-rail-org{display:flex;align-items:center;gap:8px;padding:2px 6px 12px;font:600 13.5px/1.2 var(--sans);color:#131313;white-space:nowrap}
.ci-rail-orgmark{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:5.5px;background:#454340;color:#fff;font:600 11px/1 var(--sans);flex:none}
.ci-rail-row{display:flex;align-items:center;gap:7px;padding:6px 8px 6px 10px;border-radius:7px;font-size:13px;color:#232220;min-width:0}
.ci-rail-mark{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:none;color:#232220}
.ci-rail-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ci-rail-on{background:#EFEEEC;font-weight:500}
.ci-rail-muted,.ci-rail-muted .ci-rail-mark{color:#8A8983}
.ci-rail-recent{font-size:12.5px}
.ci-rail-dot{width:5px;height:5px;border-radius:1.5px;background:#8A8983;opacity:.55}
.ci-rail-space{width:10px;height:10px;border-radius:50%}
.ci-rail-h{padding:14px 10px 4px;font:500 11px/1 var(--sans);color:#8A8983}
.ci-rail-count{padding:2px 6px;border-radius:999px;background:#454340;color:#fff;font:600 10px/1.3 var(--sans)}
.ci-rail-me{margin-top:auto;display:flex;align-items:center;gap:8px;padding:8px 8px 0;font-size:12.5px;color:#232220}
.ci-rail-me .ci-avatar{width:22px;height:22px}

.ci-queue{height:100%;overflow:auto;padding:28px 32px 20px}
.ci-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.ci-title{font:400 28px/1.1 var(--serif);letter-spacing:-.01em;margin:0}
.ci-since{display:flex;align-items:flex-start;gap:8px;margin:16px 0 0;font:500 14px/1.3 var(--sans);color:var(--ink)}
.ci-since .ci-vmark{margin-top:1px}
.ci-since-m{color:var(--mute)}
.ci-vmark{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:3px;background:#15130F;color:#fff;font:600 9.5px/1 var(--sans);flex:none}
.ci-vmark-quiet{width:13px;height:13px;border-radius:2px;background:#A9A59E;font-size:7.5px}
.ci-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;flex-wrap:wrap}
.ci-bar-tabs{display:flex;gap:4px}
.ci-bar-tab{padding:6px 10px;border-radius:6px;font:500 12px/1 var(--sans);color:var(--mute)}
.ci-bar-tab-on{background:#F1F0EC;color:var(--ink)}
.ci-bar-tools{display:flex;align-items:center;gap:8px}
.ci-bar-filter{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;background:#F6F5F2;color:#6B6A66}
.ci-bar-search{display:inline-flex;align-items:center;gap:7px;width:170px;height:30px;padding:0 10px;border:1px solid #E2DFD8;border-radius:6px;font-size:12px;color:#8F8B86;box-sizing:border-box}
.ci-bar-manage{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 11px;border:1px solid #E2DFD8;border-radius:6px;font:500 12px/1 var(--sans);color:var(--ink);box-sizing:border-box}
.ci-bar-icon,.ci-bar-outlook{flex:none}
.ci-soon{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:4px;background:#F1F0EC;color:#6B6A66;font:600 9.5px/1.3 var(--sans);letter-spacing:.03em;text-transform:uppercase;vertical-align:1px;white-space:nowrap}
.ci-bar-manage .ci-soon{margin-left:0}
.ci-soon-n{align-self:flex-start;margin:3px 0 4px;font-size:10.5px;padding:4px 8px}
.ci-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}
.ci-tile{background:#F6F5F2;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}
.ci-tile-n{font:400 26px/1 var(--serif);color:var(--ink);transition:color .3s ease}
.ci-tile-l{font-size:12px;color:var(--mute)}
.ci-tile-alert .ci-tile-n{color:#8B2A2A}
.ci-colhead{display:flex;margin-top:12px;padding:10px 12px;border-radius:8px;background:#F6F5F2;font:500 12px/1 var(--sans);color:var(--mute)}
.ci-col-0,.ci-cell-doc{flex:0 0 36%}
.ci-col-1,.ci-cell-status{flex:0 0 14%}
.ci-col-2,.ci-cell-verdict{flex:1}
.ci-col-3,.ci-cell-when{flex:0 0 96px}
.ci-col-4,.ci-cell-who{flex:0 0 150px}
.ci-rows{display:flex;flex-direction:column}
.ci-row{display:flex;align-items:center;width:100%;padding:13px 12px;border:0;border-bottom:1px solid var(--rule);background:#fff;text-align:left;font:inherit;color:inherit;transition:box-shadow .35s ease,transform .35s ease,background .2s ease;border-radius:0}
.ci-row-btn{cursor:pointer}
.ci-row-btn:hover{background:#FAF9F7}
.ci-row-lift{position:relative;z-index:3;transform:translateY(-1px);box-shadow:0 10px 26px rgba(20,18,15,.14);border-radius:8px;border-bottom-color:transparent}
.ci-cell{padding-right:10px;min-width:0}
.ci-cell-doc{display:flex;align-items:center;gap:10px;min-width:0}
.ci-doc-names{min-width:0}
.ci-filetile{flex-shrink:0;width:18px;height:18px}
.ci-doc-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ci-doc-type{font-size:12px;color:var(--mute);margin-top:2px}
.ci-status{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:5px;font:500 11.5px/1.3 var(--sans);white-space:nowrap}
.ci-s-queued{background:#F1F0EC;color:#6F6B64}
.ci-s-running{background:#FDF4C8;color:#7A5A1F}
.ci-s-running .ci-dot{animation:ci-pulse 1.1s ease-in-out infinite}
.ci-s-ready{background:#E3ECF8;color:#2F5C95}
.ci-dot,.ci-count-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none;display:inline-block}
.ci-count-dot{background:var(--ci-ink)}
.ci-cell-verdict{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ci-count{display:inline-flex;align-items:center;gap:5px;font:500 12.5px/1 var(--sans);color:var(--ci-ink)}
.ci-count .ci-count-dot{width:8px;height:8px}
.ci-who{display:inline-flex;align-items:center;gap:7px;font-size:12px;white-space:nowrap}
.ci-avatar{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:50%;background:#EFEDE8;color:var(--mute);font:600 9.5px/1 var(--sans)}
.ci-step{font-size:12.5px;color:var(--mute);background:linear-gradient(90deg,#8F8B86 0%,#8F8B86 35%,#E4E1DB 50%,#8F8B86 65%,#8F8B86 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:ci-shimmer 1.6s linear infinite}
.ci-muted{color:#8F8B86;font-size:12.5px}
.ci-cell-when{color:var(--mute);font-size:12px}
.ci-scrim{position:absolute;inset:0;background:rgba(246,245,242,.62);opacity:0;pointer-events:none;transition:opacity .45s ease;z-index:2}
.ci-stage-dim .ci-scrim{opacity:1}
.ci-drawer{position:absolute;top:12px;right:12px;bottom:12px;width:452px;max-width:calc(100% - 24px);display:flex;flex-direction:column;background:#fff;border:1px solid var(--rule);border-radius:12px;box-shadow:0 24px 60px rgba(20,18,15,.18);transform:translateX(calc(100% + 24px));visibility:hidden;transition:transform .5s cubic-bezier(.2,.8,.2,1),visibility 0s linear .5s;z-index:4}
.ci-drawer-open{transform:none;visibility:visible;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.ci-drawer-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px 12px;border-bottom:1px solid var(--rule)}
.ci-drawer-title{margin:0;font:600 15px/1.35 var(--sans)}
.ci-close{background:none;border:0;font-size:22px;line-height:1;color:var(--mute);cursor:pointer;padding:0 2px}
.ci-close:hover{color:var(--ink)}
.ci-drawer-body{flex:1;overflow:auto;padding:14px 18px 18px}
.ci-fields{display:grid;grid-template-columns:104px 1fr;row-gap:9px}
.ci-field{display:contents}
.ci-field-l{color:var(--mute);font-size:12.5px}
.ci-field-v{font-size:12.5px;color:var(--ink)}
.ci-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:16px}
.ci-count-tile{background:var(--ci-bg);border-radius:9px;padding:9px 10px;display:flex;flex-direction:column;gap:3px}
.ci-count-n{font:400 22px/1 var(--serif);color:var(--ci-ink)}
.ci-count-l{font:500 11px/1.2 var(--sans);color:var(--ci-ink)}
.ci-tabs{display:flex;gap:4px;margin-top:16px}
.ci-tab{background:none;border:0;border-radius:6px;padding:6px 10px;font:500 12.5px/1 var(--sans);color:var(--mute);cursor:pointer}
.ci-tab-on{background:#F1F0EC;color:var(--ink)}
.ci-summary{margin-top:12px;font-size:13px;line-height:1.55;color:#3d3a35}
.ci-summary p{margin:0 0 9px}
.ci-summary ul{margin:0 0 9px;padding-left:18px}
.ci-summary li{margin-bottom:6px}
.ci-findings{margin-top:6px}
.ci-finding{padding:11px 0;border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:5px}
.ci-finding-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ci-finding-rule{font:600 13px/1.3 var(--sans)}
.ci-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:12px;background:var(--ci-bg);color:var(--ci-ink);font:500 11.5px/1 var(--sans);white-space:nowrap}
.ci-finding-p{margin:0;font-size:12.5px;line-height:1.5;color:var(--mute)}
.ci-finding-found{color:#4a4742}
.ci-redline{display:flex;flex-direction:column;gap:3px;font-size:12.5px;line-height:1.45}
.ci-redline-del{color:#9B3528;text-decoration:line-through}
.ci-redline-ins{color:#1E6B57;text-decoration:underline}
.ci-activity{margin-top:16px;padding-top:12px;border-top:1px solid var(--rule)}
.ci-section-l{font:600 10.5px/1 var(--sans);letter-spacing:.05em;text-transform:uppercase;color:var(--mute);margin-bottom:8px}
.ci-act{display:flex;gap:10px;padding:4px 0;font-size:12.5px}
.ci-act-t{flex:0 0 34px;color:#8F8B86;font-variant-numeric:tabular-nums}
.ci-act-x{color:#3d3a35}
.ci-drawer-foot{display:flex;gap:8px;padding:12px 18px;border-top:1px solid var(--rule)}
.ci-btn{display:inline-flex;align-items:center;padding:8px 13px;border-radius:7px;background:var(--ink2,#15130F);color:#fff;font:500 12.5px/1 var(--sans);text-decoration:none}
.ci-btn-line{background:none;border:1px solid var(--rule);color:var(--ink)}
@keyframes ci-pulse{50%{opacity:.35}}
@keyframes ci-shimmer{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){
  .ci-drawer,.ci-row,.ci-scrim{transition:none}
  .ci-step,.ci-s-running .ci-dot{animation:none}
  .ci-step{color:var(--mute);background:none}
}
@media (max-width:1100px){
  .ci-rail{display:none}
}
@media (max-width:768px){
  #cisim{height:620px}
  .ci-queue{padding:20px 16px 16px}
  .ci-title{font-size:23px}
  .ci-tiles{gap:6px}
  .ci-tile{padding:10px}
  .ci-tile-n{font-size:21px}
  .ci-colhead{display:none}
  .ci-row{flex-wrap:wrap;gap:6px 10px;padding:12px 6px}
  .ci-cell-doc{flex:0 0 100%}
  .ci-cell-status,.ci-cell-verdict,.ci-cell-when,.ci-cell-who{flex:none;text-align:left}
  .ci-bar-search{display:none}
  .ci-bar{margin-top:16px}
  .ci-since{font-size:13px}
  .ci-drawer{top:8px;right:8px;bottom:8px;left:8px;width:auto;max-width:none}
  .ci-counts{grid-template-columns:repeat(2,1fr)}
}
