/* ═══════════════ e'thix AI — Agent v2: the chat-first consultant (agent-chat.js, C24 workstream E) ═══════════════
   Tokens only (core.css): paper, ink, gold, --g-agent, the shadows and the springs; dark mode follows the tokens. */

/* ─── the shell's own thread and composer step aside while the v2 conversation is showing ─── */
/* b-uifix: every rule here is scoped to the stage's mode — the ONE fact chat.js writes (data-mode). This surface stays
   mounted while Chat is active (its draft and session come back with Agent), so a rule keyed to the class alone hid the
   chat's own thread and composer and left the Agent pane visible behind Chat — the owner's bug. The script side (agent-chat.js
   place()) drops the class and hides the surface too; this is what makes the first paint after the route change right. */
.stage.av2-on:not([data-mode="chat"]) .chat-pane > .thread,
.stage.av2-on:not([data-mode="chat"]) .chat-pane > .composer-wrap{display:none}
.stage.av2-on:not([data-mode="chat"]) .chat-pane{background:var(--bg)}
.stage[data-mode="chat"] .chat-pane > .av2,.av2[hidden]{display:none}
/* no artifact open: the conversation takes the whole stage (desktop), and the phone has no pane to switch to */
.stage.av2-on.av2-noart[data-mode="agent"] .chat-pane{flex-basis:100%}
.stage.av2-on.av2-noart[data-mode="agent"] .split-handle{flex-basis:0;opacity:0;visibility:hidden;pointer-events:none}
.stage.av2-on.av2-noart[data-mode="agent"] .work-pane{opacity:0;visibility:hidden;pointer-events:none;border:0}
.stage.av2-on.av2-noart[data-mode="agent"] .pane-switch{display:none}

.av2{flex:1;min-height:0;display:flex;flex-direction:column;position:relative;isolation:isolate;container-type:inline-size;container-name:av2}
.av2::before{content:"";position:absolute;inset:-20% -10% auto;height:340px;z-index:-1;pointer-events:none;opacity:.55;
  background:radial-gradient(40% 60% at 20% 30%,var(--aurora-3),transparent 70%),radial-gradient(35% 55% at 80% 20%,var(--aurora-2),transparent 70%);
  filter:blur(30px)}

/* ─── head ─── */
.av2-head{display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 16px;border-bottom:1px solid var(--line);
  background:color-mix(in srgb,var(--surface) 72%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:relative;z-index:2}
.av2-head-id{display:flex;align-items:center;gap:10px;min-width:0;flex:1}
.av2-mark{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;flex:none;background:var(--g-agent);color:#141922;box-shadow:var(--shadow-1),var(--hair)}
.av2-mark .i{width:16px;height:16px}
.av2-head-title{font-size:14.5px;font-weight:700;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.av2-head-end{display:flex;align-items:center;gap:8px;flex:none}
.av2-allow{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border-radius:99px;font-size:12px;font-weight:600;
  color:var(--ink-soft);background:color-mix(in srgb,var(--surface) 80%,transparent);border:1px solid var(--line);box-shadow:var(--hair);
  transition:border-color var(--t-fast),color var(--t-fast),transform .45s var(--spring)}
.av2-allow .i{width:14px;height:14px;color:var(--gold-deep)}
.av2-allow.out{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,var(--line));background:var(--danger-soft)}
.av2-allow.out .i{color:var(--danger)}
@media (hover:hover){.av2-allow:hover{border-color:color-mix(in srgb,var(--accent-b) 50%,var(--line));color:var(--ink)}}
.av2-allow:active{transform:scale(.97)}
.av2-new .i{width:15px;height:15px}

/* ─── the conversation ─── */
.av2-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:20px 16px 12px;
  scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 20%,transparent) transparent;outline:none}
.av2-msgs,.av2-home,.av2-notice{max-width:780px;margin-inline:auto}
.av2-msgs{list-style:none;margin-block:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:18px}

/* home */
.av2-home{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;padding-block:clamp(8px,6vh,56px) 8px;animation:rise-in .7s var(--ios) both}
.av2-hero{display:grid;justify-items:center;text-align:center;gap:8px}
.av2-orb{position:relative;width:76px;height:76px;display:grid;place-items:center;margin-bottom:6px}
.av2-orb span{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,#B7C6DD,#7488A8,var(--accent-b),#D9A48F,#B7C6DD);filter:blur(14px);opacity:.7;animation:spin 14s linear infinite}
.av2-orb .i{position:relative;width:34px;height:34px;padding:18px;box-sizing:content-box;border-radius:24px;background:var(--surface);color:var(--gold-deep);box-shadow:var(--shadow-2),var(--hair)}
.av2-kicker{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text)}
.av2-h{font-size:clamp(22px,3.2vw,30px);font-weight:700;letter-spacing:-.015em;line-height:1.25;text-wrap:balance}
.av2-p{max-width:560px;color:var(--ink-soft);font-size:14.5px;line-height:1.7;text-wrap:pretty}
.av2-trust{list-style:none;padding:0;margin:6px 0 0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;font-size:12px;color:var(--muted)}
.av2-trust li{display:inline-flex;align-items:center;gap:6px}
.av2-trust .i{width:14px;height:14px;color:var(--gold-deep)}
.av2-sugg{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.av2-chip{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px 0 12px;border-radius:99px;font-size:13.5px;font-weight:600;
  background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-1),var(--hair);color:var(--ink);
  animation:rise-in .5s var(--ios) both;transition:transform .45s var(--spring),box-shadow var(--t),border-color var(--t)}
.av2-chip:nth-child(2){animation-delay:.04s}.av2-chip:nth-child(3){animation-delay:.08s}.av2-chip:nth-child(4){animation-delay:.12s}.av2-chip:nth-child(5){animation-delay:.16s}
html[dir="rtl"] .av2-chip{padding:0 12px 0 16px}
.av2-chip .i{width:16px;height:16px;color:#56667F}
html[data-theme="dark"] .av2-chip .i{color:#B7C6DD}
@media (hover:hover){.av2-chip:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);border-color:color-mix(in srgb,var(--accent-b) 45%,var(--line))}}
.av2-chip:active{transform:scale(.97)}

/* rows */
.av2-row{display:flex;gap:12px;align-items:flex-start;animation:msg-in .5s var(--ios) both}
.av2-row.user{justify-content:flex-end;animation-name:msg-in-user}
.av2-bubble{max-width:min(620px,86%);padding:11px 15px;border-radius:18px 18px 6px 18px;background:var(--g-ink);color:#F4EFE6;box-shadow:var(--shadow-1)}
html[dir="rtl"] .av2-bubble{border-radius:18px 18px 18px 6px}
html[data-theme="dark"] .av2-bubble{background:linear-gradient(145deg,#39424F,#2C343F);color:var(--ink)}
.av2-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;font-size:14.5px}
/* e-honesty: code the customer pasted (an HTML template) reads left to right in its own block, never mirrored in an Arabic bubble */
.av2-text-mixed{white-space:normal;display:grid;gap:8px;min-width:0}
.av2-text-mixed>p{margin:0;white-space:pre-wrap}
.av2-code{margin:0;direction:ltr;text-align:left;unicode-bidi:isolate;max-width:100%;max-height:320px;overflow:auto;padding:10px 12px;border-radius:12px;background:rgba(0,0,0,.28);font:12.5px/1.55 var(--mono);white-space:pre;tab-size:2}
.av2-code code{font:inherit;white-space:inherit;background:none;padding:0;color:inherit}
.av2-att{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.av2-bubble .av2-chip-att{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.16);color:inherit}
.av2-av{width:32px;height:32px;border-radius:11px;display:grid;place-items:center;flex:none;background:var(--g-agent);color:#141922;box-shadow:var(--shadow-1)}
.av2-av .i{width:16px;height:16px}
.av2-body{flex:1;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.av2-md{font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.av2-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--muted)}
.av2-lawyer{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:99px;font-weight:600;
  color:var(--gold-text);background:color-mix(in srgb,var(--accent-b) 16%,transparent);border:1px solid color-mix(in srgb,var(--accent-b) 35%,transparent)}
.av2-lawyer .i{width:13px;height:13px}
.av2-served{font-weight:500}
.av2-copy{margin-inline-start:auto}
.av2-row.notice{justify-content:center;font-size:12px;color:var(--muted)}
.av2-row.notice > span{padding:4px 12px;border-radius:99px;background:color-mix(in srgb,var(--ink) 5%,transparent)}
.av2-row.notice.error{color:var(--danger);align-items:center;gap:6px}
.av2-row.notice.error > .i{width:14px;height:14px}
.av2-row.notice.error > span{background:var(--danger-soft)}
/* p0-ux: what a turn that did not complete saved, under its own notice, labelled */
.av2-row.notice.has-arts{flex-wrap:wrap}
.av2-arts-unfinished{flex-basis:100%;width:100%;max-width:560px;margin-inline:auto;font-size:13px}
.av2-art.unfinished{border-style:dashed}
.av2-art-flag{font-size:11px;font-weight:600;padding:3px 8px;border-radius:99px;color:var(--danger);background:var(--danger-soft);white-space:nowrap}
.av2-fallback{display:flex;align-items:flex-start;gap:6px;margin-top:6px;font-size:12.5px;line-height:1.6;color:var(--ink-soft)}
.av2-fallback .i{width:14px;height:14px;flex:none;margin-top:3px;color:var(--gold-text)}
.av2-sugg-i{display:flex}
.av2-limit{font-size:12.5px;line-height:1.6;color:var(--danger);padding:2px 4px 0}

/* artifact cards in an answer */
.av2-arts{display:grid;gap:8px}
.av2-art{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:16px;text-align:start;background:var(--surface);
  border:1px solid var(--line);box-shadow:var(--shadow-1),var(--hair);transition:transform .45s var(--spring),box-shadow var(--t),border-color var(--t)}
@media (hover:hover){.av2-art:hover{transform:translateY(-1px);box-shadow:var(--shadow-2);border-color:color-mix(in srgb,var(--accent-b) 40%,var(--line))}}
.av2-art-ic{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:none;background:color-mix(in srgb,#7488A8 14%,transparent);color:#56667F}
html[data-theme="dark"] .av2-art-ic{color:#B7C6DD}
.av2-art-ic.k-contract_analysis{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}
.av2-art-ic.k-html_page{background:color-mix(in srgb,#6F52C2 14%,transparent);color:#6F52C2}
.av2-art-ic .i{width:18px;height:18px}
.av2-art-txt{flex:1;min-width:0;display:grid;gap:2px}
.av2-art-txt b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.av2-art-txt small{font-size:12px;color:var(--muted)}
.av2-art-badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:99px;color:var(--gold-text);background:color-mix(in srgb,var(--accent-b) 16%,transparent);white-space:nowrap}
.av2-art-go{width:16px;height:16px;color:var(--muted)}
html[dir="rtl"] .av2-art-go{transform:scaleX(-1)}

/* ask cards */
.av2-ask{display:grid;gap:12px;padding:16px;border-radius:18px;background:var(--surface);border:1px solid color-mix(in srgb,var(--accent-b) 40%,var(--line));
  box-shadow:var(--shadow-1),var(--hair);position:relative;overflow:hidden}
.av2-ask::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--g-accent)}
.av2-ask.done{border-color:var(--line);opacity:.82}
.av2-ask.done::before{background:var(--line)}
.av2-ask-head{display:flex;align-items:center;gap:8px;font-size:14px}
.av2-ask-head > .i{width:18px;height:18px;color:var(--gold-deep)}
.av2-ask-done{margin-inline-start:auto;display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--ok);font-weight:600}
.av2-ask-done .i{width:14px;height:14px}
.av2-ask-lead{font-size:12.5px;color:var(--muted)}
.av2-q{border:0;margin:0;padding:12px 0 0;border-top:1px dashed var(--line);display:grid;gap:8px;min-width:0}
.av2-q legend{float:inline-start;width:100%;font-weight:600;font-size:14.5px;line-height:1.6;padding:0}
.av2-why{font-size:12.5px;color:var(--ink-soft);line-height:1.6}
.av2-why span:first-child{font-weight:600;color:var(--gold-text)}
.av2-opts{display:flex;flex-wrap:wrap;gap:6px}
.av2-opt{min-height:36px;padding:0 14px;border-radius:12px;font-size:13.5px;background:color-mix(in srgb,var(--ink) 5%,transparent);border:1px solid transparent;
  transition:background var(--t-fast),border-color var(--t-fast),transform .4s var(--spring)}
@media (hover:hover){.av2-opt:hover{background:color-mix(in srgb,var(--ink) 9%,transparent)}}
.av2-opt[aria-checked="true"]{background:color-mix(in srgb,var(--accent-b) 22%,transparent);border-color:color-mix(in srgb,var(--accent-b) 60%,transparent);font-weight:600}
.av2-opt:active{transform:scale(.97)}
.av2-other{min-height:38px;font-size:13.5px}
.av2-ask-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}

/* notices */
.av2-notice{display:flex;align-items:center;gap:8px;margin-top:16px;font-size:13px}
.av2-notice.error{color:var(--danger)}
.av2-notice .i{width:16px;height:16px;flex:none}
.av2-refusal{display:flex;align-items:flex-start;gap:12px;width:100%;padding:14px 16px;border-radius:16px;background:var(--danger-soft);
  border:1px solid color-mix(in srgb,var(--danger) 30%,transparent)}
.av2-refusal > .i{color:var(--danger);margin-top:2px}
.av2-refusal > div{flex:1;display:grid;gap:4px}
.av2-refusal p{font-size:13.5px}
.av2-refusal small{color:var(--muted)}

/* ─── the foot: live status, the drawer, the composer ─── */
.av2-foot{position:relative;z-index:2;display:grid;gap:8px;padding:8px 16px calc(12px + env(safe-area-inset-bottom));
  background:linear-gradient(to top,var(--bg) 70%,transparent)}
.av2-foot > *{width:100%;max-width:780px;margin-inline:auto}
.av2-live{border-radius:14px;background:color-mix(in srgb,var(--surface) 86%,transparent);border:1px solid var(--line);box-shadow:var(--shadow-1);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:relative;overflow:hidden;animation:rise-in .45s var(--ios) both}
.av2-live[data-tone="active"]::before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#7488A8,var(--accent-b),transparent);
  background-size:200% 100%;animation:shimmer 1.6s linear infinite}
.av2-live-row{display:flex;align-items:center;gap:10px;min-height:42px;padding:4px 6px 4px 12px}
html[dir="rtl"] .av2-live-row{padding:4px 12px 4px 6px}
.av2-live-ic{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;flex:none;background:var(--g-agent);color:#141922}
.av2-live-ic .i{width:14px;height:14px}
.av2-live-ic .spinner{width:15px;height:15px}
.av2-live[data-tone="done"] .av2-live-ic{background:linear-gradient(135deg,#A6DDB4,#4E8A5E);color:#fff}
.av2-live[data-tone="wait"] .av2-live-ic{background:var(--g-accent)}
.av2-live[data-tone="failed"] .av2-live-ic,.av2-live[data-tone="lost"] .av2-live-ic{background:var(--danger-soft);color:var(--danger)}
.av2-live[data-tone="limit"] .av2-live-ic{background:color-mix(in srgb,var(--accent-b) 22%,transparent);color:var(--gold-text)}
.av2-live[data-tone="stopped"] .av2-live-ic{background:color-mix(in srgb,var(--ink) 10%,transparent);color:var(--ink-soft)}
.av2-live-text{flex:1;min-width:0;font-size:13.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.av2-live-text.av2-tick{animation:av2-in .35s var(--ios) both}
/* while Ethix works the line breathes between ink and gold (a colour animation: no clipped gradient to smear) */
.av2-live[data-tone="active"] .av2-live-text{animation:av2-glow 2.4s ease-in-out infinite}
.av2-live[data-tone="active"] .av2-live-text.av2-tick{animation:av2-in .35s var(--ios) both,av2-glow 2.4s ease-in-out .35s infinite}
html.reduce-motion .av2-live-text,html.reduce-motion .av2-live::before{animation:none !important}
@keyframes av2-in{from{opacity:0;transform:translateY(4px)}}
/* the glow ends on --gold-text (AA on the surface, 4.9:1), never the decorative --gold-deep (3.2:1) */
@keyframes av2-glow{50%{color:var(--gold-text)}}
.av2-drawer-btn{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;border-radius:10px;font-size:12px;font-weight:600;color:var(--ink-soft);flex:none;
  transition:background var(--t-fast),color var(--t-fast)}
.av2-drawer-btn .i{width:14px;height:14px}
.av2-drawer-btn .av2-chev{transition:transform .45s var(--spring)}
.av2-drawer-btn[aria-expanded="true"] .av2-chev{transform:rotate(180deg)}
@media (hover:hover){.av2-drawer-btn:hover{background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink)}}
.av2-retry{flex:none}

.av2-drawer{border-radius:14px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-2);max-height:min(44vh,360px);overflow:auto;
  overscroll-behavior:contain;padding:12px 14px;animation:fade-up .4s var(--ios) both}
.av2-drawer-note{font-size:11.5px;color:var(--muted);line-height:1.6;margin-bottom:8px}
.av2-drawer-quiet{font-size:11.5px;color:var(--muted);line-height:1.6;margin-top:8px}
/* AGENT_V2_LAWYER_BADGE=false: the pending-lawyer label is hidden on artifacts too (agent-chat.js sets data-lawyer-badge from the session) */
:root[data-lawyer-badge="off"] .av2-art-badge,:root[data-lawyer-badge="off"] .ap-lawyer,:root[data-lawyer-badge="off"] .ap-badge,:root[data-lawyer-badge="off"] .ap-tab-dot{display:none}
.av2-steps{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.av2-step{display:grid;grid-template-columns:25px minmax(0,1fr) auto;grid-template-areas:"dot line time" "dot tags tags";align-items:center;gap:2px 10px;
  min-height:32px;padding-block:3px;font-size:13px;color:var(--ink-soft);position:relative;animation:item-in .45s var(--ios) both}
.av2-step::before{content:"";position:absolute;inset-inline-start:12px;top:-6px;height:10px;width:1.5px;background:var(--line)}
.av2-step-time{grid-area:time}
.av2-step-tags{grid-area:tags;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.av2-step:first-child::before{display:none}
.av2-step-dot{grid-area:dot;align-self:start;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--surface-2);border:1.5px solid var(--line);color:var(--muted);position:relative;z-index:1}
.av2-step-dot .i{width:13px;height:13px}
.av2-step.now{color:var(--ink);font-weight:600}
.av2-step.now .av2-step-dot{background:var(--g-agent);border-color:transparent;color:#141922}
.av2-step-line{grid-area:line;min-width:0;line-height:1.5}
.av2-target{display:inline-flex;align-items:center;gap:4px;min-height:26px;padding:0 9px;border-radius:8px;font-size:12px;font-weight:600;
  color:var(--gold-text);background:color-mix(in srgb,var(--accent-b) 14%,transparent);max-width:220px}
.av2-target span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.av2-target .i{width:12px;height:12px;flex:none}
.av2-target.plain{color:var(--muted);background:color-mix(in srgb,var(--ink) 5%,transparent);font-weight:500}
@media (hover:hover){button.av2-target:hover{background:color-mix(in srgb,var(--accent-b) 26%,transparent)}}
.av2-step-tool{font-family:var(--mono);font-size:11px;padding:2px 7px;border-radius:7px;background:color-mix(in srgb,#7488A8 12%,transparent);color:#56667F}
html[data-theme="dark"] .av2-step-tool{color:#B7C6DD}
.av2-step-time{font-size:11px;color:var(--muted)}

/* composer */
.av2-composer{display:grid;gap:8px;padding:10px 10px 8px 14px;border-radius:22px;background:var(--surface);border:1px solid var(--line);
  box-shadow:var(--shadow-2),var(--hair);transition:border-color var(--t),box-shadow var(--t)}
html[dir="rtl"] .av2-composer{padding:10px 14px 8px 10px}
.av2-composer:focus-within{border-color:color-mix(in srgb,var(--accent-b) 55%,var(--line));box-shadow:var(--shadow-2),var(--ring)}
.av2-armed{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:12px;font-size:12.5px;font-weight:600;color:var(--gold-text);
  background:color-mix(in srgb,var(--accent-b) 14%,transparent)}
.av2-armed .i{width:14px;height:14px}
.av2-armed span{flex:1}
.av2-armed-x{font-size:12px;text-decoration:underline;text-underline-offset:3px;color:var(--ink-soft)}
.av2-tray{display:flex;flex-wrap:wrap;gap:6px}
.av2-chip-att{display:inline-flex;align-items:center;gap:6px;min-height:30px;max-width:260px;padding:0 6px 0 10px;border-radius:10px;font-size:12.5px;
  background:color-mix(in srgb,var(--ink) 5%,transparent);border:1px solid var(--line);animation:tray-in .45s var(--spring) both}
html[dir="rtl"] .av2-chip-att{padding:0 10px 0 6px}
.av2-chip-att > .i{width:14px;height:14px;flex:none;color:#3F6FC2}
.av2-chip-att.k-url > .i{color:#2F8A55}
.av2-chip-att.k-artifact > .i{color:var(--gold-deep)}
.av2-chip-att.s-failed{border-color:color-mix(in srgb,var(--danger) 40%,transparent);color:var(--danger)}
.av2-chip-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.av2-chip-att small{font-size:11px;color:var(--muted);white-space:nowrap}
.av2-chip-x{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;flex:none;color:var(--muted)}
.av2-chip-x .i{width:12px;height:12px}
@media (hover:hover){.av2-chip-x:hover{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}}
.av2-input{width:100%;min-height:44px;max-height:240px;resize:none;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:15px;line-height:1.6;padding:6px 2px}
.av2-input::placeholder{color:var(--muted)}
.av2-bar{display:flex;align-items:center;justify-content:space-between;gap:8px}
.av2-bar-start,.av2-bar-end{display:flex;align-items:center;gap:6px;min-width:0}
.av2-send{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;flex:none;background:var(--g-ink);color:#F4EFE6;box-shadow:var(--shadow-1);
  transition:transform .45s var(--spring),opacity var(--t-fast),background var(--t)}
html[data-theme="dark"] .av2-send{background:var(--g-accent);color:var(--on-accent)}
.av2-send .i{width:18px;height:18px}
.av2-send:disabled{opacity:.35;cursor:default}
.av2-send:not(:disabled):active{transform:scale(.92)}
.av2-send.stop,html[data-theme="dark"] .av2-send.stop{background:var(--danger-soft);color:var(--danger)}
.av2-model:disabled{opacity:.75;cursor:default}
.av2-back{margin-inline-end:6px}
.av2-back .i{width:14px;height:14px}

/* ─── a narrow conversation column (the desktop split with the sidebar open, a tablet) ─── */
.av2-allow-short{display:none}
@container av2 (max-width:560px){
  .av2-new span{display:none}
  .av2-new{padding:0 10px}
  .av2-allow-long{display:none}
  .av2-allow-short{display:inline}
  .av2-drawer-btn .av2-drawer-lbl{display:none}
  .av2-bubble{max-width:92%}
}
/* a phone-wide column: the artifact card wraps — its title and kind keep the row, the lawyer badge goes under them */
@container av2 (max-width:480px){
  .av2-art{display:grid;grid-template-columns:38px minmax(0,1fr) 16px;align-items:center;column-gap:12px;row-gap:6px}
  .av2-art-go{grid-column:3;grid-row:1}
  .av2-art-txt small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .av2-art-badge{grid-column:2;grid-row:2;justify-self:start;white-space:normal}
  .av2-art-flag{grid-column:2;justify-self:start;white-space:normal}
}

/* ─── phones ─── */
@media (max-width:640px){
  .av2-head{padding:6px 12px;min-height:48px}
  .av2-head-title{font-size:13.5px}
  .av2-allow{padding:0 10px;font-size:11.5px;max-width:52vw}
  .av2-allow span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .av2-new span{display:none}
  .av2-new{padding:0 10px}
  .av2-scroll{padding:14px 12px 8px}
  .av2-foot{padding:6px 10px calc(10px + env(safe-area-inset-bottom))}
  .av2-bubble{max-width:92%}
  .av2-row{gap:8px}
  .av2-av{width:28px;height:28px;border-radius:9px}
  .av2-chip{min-height:38px;font-size:13px}
  .av2-drawer-btn .av2-drawer-lbl{display:none}
  .av2-trust{flex-direction:column;align-items:center}
}
@media (max-width:360px){
  .av2-allow .i{display:none}
  .av2-mark{display:none}
}

/* ═══════════════ The Agent's workspace, in the house style (2026-10-02, css/house.css) ═══════════════
   agent-chat.js renderHome / placeComposer / renderRail / syncBuddy. The column (.av2-col: the conversation and its
   foot) and the work rail (.av2-rail) share .av2-split; the rail shows only on a column wide enough for both and no file
   open (the work pane then holds the file), and takes the drawer's place there. On the home of a wide column the
   composer sits under the statement (.av2-docked) with Buddy standing on its edge; elsewhere it stays in the foot. */
.av2-split{flex:1;min-height:0;display:flex;position:relative}
.av2-col{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;position:relative}
.av2-rail{display:none}
@container av2 (min-width:960px){
  .av2-rail:not([hidden]){display:flex}
  .av2-split:has(> .av2-rail:not([hidden])) .av2-drawer-btn,
  .av2-split:has(> .av2-rail:not([hidden])) .av2-drawer{display:none}
}

/* ─── the head ─── */
.av2-head{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom-color:var(--hairline,var(--line))}
.av2-mark{border-radius:50%;background:transparent;color:var(--steel,#A8B7CC);box-shadow:none;border:1px solid color-mix(in srgb,#A8B7CC 55%,transparent)}
html:not([data-theme="dark"]) .av2-mark{color:#56667F}
.av2-head-title{font-family:var(--disp,inherit);font-weight:600;font-size:15px;letter-spacing:0}
html[lang="en"] .av2-head-title{font-weight:700}
.av2-allow{background:transparent;box-shadow:none;border-radius:999px}
.av2-docked .av2-head{border-bottom-color:transparent}
.av2::before{display:none}

/* ─── the home ─── */
.av2-docked .av2-scroll{display:flex;flex-direction:column}
.av2-docked .av2-home{margin-block:auto}
.av2-docked .av2-foot{display:none}
.av2:not(.av2-docked) .av2-dock{display:none}
.av2-home{max-width:900px;gap:28px;padding-block:clamp(12px,5vh,48px) 24px;justify-items:center}
.av2-hero{gap:10px;max-width:760px}
.av2-orb{width:56px;height:56px;margin-bottom:10px}
.av2-orb span{display:none}
.av2-orb .i{width:22px;height:22px;padding:16px;border-radius:50%;background:transparent;color:#56667F;box-shadow:none;border:1px solid color-mix(in srgb,#A8B7CC 60%,transparent);stroke-width:1.5}
html[data-theme="dark"] .av2-orb .i{color:#A8B7CC}
.av2-docked.av2-has-buddy .av2-orb{display:none}
.av2-kicker{display:flex;align-items:center;gap:14px;font-family:var(--lt);font-size:11px;font-weight:600;letter-spacing:.2em;color:var(--gold-text)}
html[lang="ar"] .av2-kicker{font-family:var(--ar);font-size:12.5px;letter-spacing:.02em}
.av2-kicker::before,.av2-kicker::after{content:"";width:34px;height:1px;background:var(--gold-rule,var(--gold))}
.av2-h{font-family:var(--disp,inherit);font-weight:800;font-size:clamp(32px,5.4cqi,60px);line-height:1.25;letter-spacing:0;color:var(--ink)}
html[lang="en"] .av2-h{font-weight:700;letter-spacing:-.03em;line-height:1.05}
.av2-voice{font-family:var(--naskh,var(--statute));font-weight:600;font-size:clamp(19px,2.3cqi,26px);line-height:1.6;color:var(--gold-text)}
html[lang="en"] .av2-voice{font-family:var(--lt);font-weight:600;font-size:clamp(16px,1.8cqi,20px);letter-spacing:-.005em}
.av2-p{font-size:15.5px;line-height:1.8;max-width:600px;margin-top:4px}

/* the composer as the brief, with Buddy standing on its edge */
.av2-dock{position:relative;width:100%;max-width:720px;margin-top:4px}
.av2-dock .av2-composer{position:relative;z-index:2;border-radius:24px;padding:14px 14px 10px 18px;
  box-shadow:0 26px 60px -30px rgba(14,17,22,.55),0 0 0 1px rgba(255,255,255,.4) inset}
html[dir="rtl"] .av2-dock .av2-composer{padding:14px 18px 10px 14px}
html[data-theme="dark"] .av2-dock .av2-composer{box-shadow:0 26px 60px -24px rgba(0,0,0,.95)}
.av2-dock .av2-input{min-height:78px;font-size:16px}
.av2-bd{position:relative;pointer-events:auto}
.av2-bd .bd-svg{width:100%;height:100%;display:block;overflow:visible;filter:drop-shadow(0 10px 16px rgba(14,17,22,.28))}
.av2-dock .av2-bd{position:absolute;z-index:1;inset-block-end:2px;inset-inline-end:-84px;width:58px;height:104px}
/* a column with no room beside the box: he stands on its edge instead, and the box makes room above it */
@container av2 (max-width:920px){
  .av2-dock .av2-bd{inset-block-end:calc(100% - 16px);inset-inline-end:34px}
  .av2-has-buddy .av2-dock{margin-top:72px}
}

/* the starters as numbered task cards, in one ruled row */
.av2-sugg{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;width:100%;counter-reset:task;
  border-top:1px solid var(--line);border-inline-start:1px solid var(--line)}
.av2-sugg-i{display:flex;border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line)}
.av2-chip,html[dir="rtl"] .av2-chip{counter-increment:task;flex:1;display:grid;grid-template-rows:auto auto 1fr;justify-items:start;align-content:start;gap:10px;
  min-height:112px;padding:14px 14px 16px;border-radius:0;background:transparent;border:0;box-shadow:none;text-align:start;
  font-size:13.5px;font-weight:600;line-height:1.5;color:var(--ink);animation:none;transition:background-color .3s var(--ease)}
.av2-chip::before{content:counter(task,decimal-leading-zero);font:700 12.5px/1 var(--lt);letter-spacing:.1em;color:var(--gold-text);direction:ltr}
.av2-chip .i,html[data-theme="dark"] .av2-chip .i{width:20px;height:20px;stroke-width:1.6;color:var(--gold-deep)}
@media (hover:hover){.av2-chip:hover{transform:none;box-shadow:none;border-color:transparent;background-color:color-mix(in srgb,var(--gold) 7%,transparent)}}
.av2-chip:active{transform:none;background-color:color-mix(in srgb,var(--gold) 12%,transparent)}

/* the steps you will see: the server's own event words on one thread */
.av2-legend{display:grid;gap:14px;width:100%}
.av2-home-h{display:flex;align-items:center;justify-content:center;gap:12px;margin:0;font:600 10.5px/1.3 var(--lt);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
html[lang="ar"] .av2-home-h{font:600 12.5px/1.5 var(--ar);letter-spacing:0;text-transform:none}
.av2-home-h::before,.av2-home-h::after{content:"";flex:1;max-width:140px;height:1px;background:var(--line)}
.av2-legend-list{list-style:none;margin:0;padding:0;display:flex;justify-content:center}
.av2-legend-list li{position:relative;flex:1 1 0;max-width:132px;display:grid;justify-items:center;gap:8px;padding:0 4px;text-align:center;font-size:12.5px;line-height:1.45;color:var(--ink-soft)}
.av2-legend-list li::before{content:"";position:absolute;top:16px;inset-inline-start:calc(50% + 22px);inset-inline-end:calc(-50% + 22px);height:1px;
  background:linear-gradient(90deg,color-mix(in srgb,#A8B7CC 55%,transparent),color-mix(in srgb,var(--gold) 55%,transparent))}
.av2-legend-list li:last-child::before{display:none}
.av2-legend-dot{width:33px;height:33px;border-radius:50%;display:grid;place-items:center;color:#56667F;border:1px solid color-mix(in srgb,#A8B7CC 60%,transparent);background:var(--bg)}
html[data-theme="dark"] .av2-legend-dot{color:#A8B7CC}
.av2-legend-list li.k-reading_article .av2-legend-dot,.av2-legend-list li.k-checking_citation .av2-legend-dot{color:var(--gold-deep);border-color:var(--gold-rule,var(--gold))}
.av2-legend-dot .i{width:15px;height:15px}

.av2-home .av2-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 0;margin:0;font-size:12px}
.av2-home .av2-trust li{padding:0 14px}
.av2-home .av2-trust li + li{border-inline-start:1px solid var(--line)}
.av2-home .av2-trust .i{color:var(--gold-deep)}

.av2-recent{display:grid;gap:10px;width:100%;max-width:720px}
.av2-recent-list{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid var(--line)}
.av2-recent-i{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 4px;border-bottom:1px solid var(--line);text-decoration:none;font-size:13.5px;color:var(--ink-soft);transition:background-color .25s var(--ease)}
.av2-recent-i .i{width:15px;height:15px;flex:none;color:var(--muted)}
.av2-recent-t{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink);font-weight:500}
.av2-recent-w{flex:none;font-size:12px;color:var(--muted)}
@media (hover:hover){.av2-recent-i:hover{background-color:color-mix(in srgb,var(--gold) 6%,transparent)}}

/* ─── the conversation ─── */
.av2-av{border-radius:50%;background:transparent;color:var(--gold-deep);box-shadow:none;border:1px solid var(--gold-rule,var(--gold))}
.av2-av .i{stroke-width:1.6}
.av2-bubble,html[dir="rtl"] .av2-bubble{background:var(--night,#0E1116);color:#ECE7DE;box-shadow:none;border-radius:20px 20px 6px 20px}
html[dir="rtl"] .av2-bubble{border-radius:20px 20px 20px 6px}
html[data-theme="dark"] .av2-bubble{background:var(--night-3,#1E242E);color:#ECE7DE;box-shadow:inset 0 0 0 1px rgba(236,231,222,.06)}
.av2-md{font-size:15.5px}
.av2-ask{border-color:var(--line);box-shadow:none;border-radius:18px}
.av2-ask::before{height:2px;background:linear-gradient(90deg,var(--gold),transparent)}
html[dir="rtl"] .av2-ask::before{background:linear-gradient(270deg,var(--gold),transparent)}
.av2-ask-head > .i{color:var(--gold-deep)}
.av2-opt{border-radius:999px;border:1px solid var(--line);background:transparent}
.av2-opt[aria-checked="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.av2-art{border-radius:10px;box-shadow:none;border-inline-start:2px solid var(--gold)}
.av2-art.unfinished{border-inline-start-color:var(--danger)}
.av2-art-ic,html[data-theme="dark"] .av2-art-ic{border-radius:50%;background:transparent;border:1px solid var(--line);color:var(--gold-deep)}
.av2-art-ic.k-contract_analysis{background:transparent;color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}
.av2-art-ic.k-html_page{background:transparent;color:#56667F}
html[data-theme="dark"] .av2-art-ic.k-html_page{color:#A8B7CC}
.av2-row.notice > span{background:transparent;border:1px solid var(--line)}

/* ─── the foot: the live line, the drawer as a thread, the composer ─── */
.av2-foot{background:linear-gradient(to top,var(--bg) 72%,transparent)}
.av2-live{border-radius:999px;background:var(--surface);box-shadow:none;border-color:var(--line)}
.av2-live[data-tone="active"]::before{inset:auto 18px 0;height:1.5px;background:linear-gradient(90deg,transparent,#A8B7CC,var(--gold),transparent);background-size:200% 100%}
.av2-live-ic{border-radius:50%;background:transparent;border:1px solid color-mix(in srgb,#A8B7CC 60%,transparent);color:#56667F}
html[data-theme="dark"] .av2-live-ic{color:#A8B7CC}
.av2-live[data-tone="done"] .av2-live-ic{background:transparent;color:var(--ok);border-color:color-mix(in srgb,var(--ok) 50%,transparent)}
.av2-live[data-tone="wait"] .av2-live-ic{background:transparent;color:var(--gold-deep);border-color:var(--gold-rule,var(--gold))}
.av2-live[data-tone="failed"] .av2-live-ic,.av2-live[data-tone="lost"] .av2-live-ic{background:transparent;border-color:color-mix(in srgb,var(--danger) 45%,transparent)}
.av2-drawer-btn{border-radius:999px}
.av2-drawer{border-radius:18px;box-shadow:var(--shadow-2)}
.av2-step-dot{background:var(--surface);border-width:1px}
.av2-step.now .av2-step-dot{background:linear-gradient(180deg,#DCE3EC,#A8B7CC);color:#14171C}
.av2-target{border-radius:999px;background:transparent;border:1px solid var(--gold-rule,var(--gold))}
.av2-target.plain{border-color:var(--line);background:transparent}
.av2-composer{border-radius:22px;box-shadow:0 18px 40px -26px rgba(14,17,22,.45)}
html[data-theme="dark"] .av2-composer{background:var(--night-2,#171C24)}
.av2-composer:focus-within{border-color:var(--gold-rule,var(--gold));box-shadow:0 18px 40px -26px rgba(14,17,22,.45),0 0 0 4px color-mix(in srgb,var(--gold) 12%,transparent)}
.av2-send,html[data-theme="dark"] .av2-send{border-radius:50%;background:var(--night,#0E1116);color:#ECE7DE;box-shadow:none}
html[data-theme="dark"] .av2-send{background:var(--night-3,#1E242E)}
.av2-send:not(:disabled):not(.stop){background:var(--g-cta,var(--g-accent));color:#14171C;box-shadow:0 8px 18px -10px rgba(154,126,81,.9)}
.av2-armed{border-radius:999px;background:color-mix(in srgb,var(--gold) 10%,transparent)}
.av2-chip-att{border-radius:999px}

/* ─── the work rail ─── */
.av2-rail{--rail-bg:color-mix(in srgb,var(--surface) 45%,var(--bg));flex:none;inline-size:clamp(284px,27%,340px);flex-direction:column;gap:18px;min-height:0;overflow:hidden;
  padding:16px 18px 14px;border-inline-start:1px solid var(--hairline,var(--line));background:var(--rail-bg)}
html[data-theme="dark"] .av2-rail{--rail-bg:#0B0E12}
.av2-op{position:relative;isolation:isolate;overflow:hidden;flex:none;display:flex;align-items:flex-end;gap:14px;min-height:132px;padding:14px 16px;
  border-radius:18px;background:var(--night,#0E1116);color:#ECE7DE;border:1px solid rgba(201,174,126,.22)}
.av2-op::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(70% 90% at 12% 105%,rgba(201,174,126,.2),rgba(201,174,126,0) 70%)}
html[dir="rtl"] .av2-op::before{background:radial-gradient(70% 90% at 88% 105%,rgba(201,174,126,.2),rgba(201,174,126,0) 70%)}
.av2-rail[data-tone="active"] .av2-op::after{content:"";position:absolute;inset:auto 0 0;height:2px;
  background:linear-gradient(90deg,transparent,#A8B7CC,#C9AE7E,transparent);background-size:200% 100%;animation:shimmer 1.6s linear infinite}
.av2-op-fig{position:relative;flex:none;width:56px;height:100px;display:grid;place-items:center}
.av2-op-seal{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:#E2CCA2;border:1px solid rgba(201,174,126,.5)}
.av2-op-seal .i{width:20px;height:20px;stroke-width:1.5}
.av2-op-fig .av2-bd{position:absolute;inset:0}
.av2-has-buddy .av2-op-seal{display:none}
.av2-op-txt{flex:1;min-width:0;display:grid;gap:6px;align-content:end;padding-bottom:2px}
.av2-op-state{justify-self:start;display:inline-flex;align-items:center;gap:8px;font:600 10.5px/1.2 var(--lt);letter-spacing:.16em;text-transform:uppercase;color:#C9D3E0}
html[lang="ar"] .av2-op-state{font:600 12px/1.4 var(--ar);letter-spacing:0;text-transform:none}
.av2-op-state::before{content:"";width:7px;height:7px;border-radius:50%;background:#A8B7CC;animation:av2-ping 1.6s var(--ease) infinite}
@keyframes av2-ping{0%{box-shadow:0 0 0 0 rgba(168,183,204,.6)}70%,100%{box-shadow:0 0 0 7px rgba(168,183,204,0)}}
.av2-op-line{font-family:var(--disp,inherit);font-weight:600;font-size:17px;line-height:1.5;color:#ECE7DE;overflow-wrap:anywhere}
html[lang="en"] .av2-op-line{font-weight:700;letter-spacing:-.01em}
.av2-rail[data-tone="done"] .av2-op-line{color:#E2CCA2}
.av2-rail[data-tone="failed"] .av2-op-line,.av2-rail[data-tone="lost"] .av2-op-line{color:#EE9A8E}
.av2-op-meta{font-size:12px;color:#959DA8}

.av2-rs{display:flex;flex-direction:column;gap:10px;min-height:0;flex:0 1 auto;max-height:30%;overflow-y:auto;overscroll-behavior:contain}
.av2-rs-log{flex:1 1 0;max-height:none;min-height:120px}
.av2-rs-h{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:8px;margin:0;padding-bottom:2px;
  font:600 10.5px/1.3 var(--lt);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-text);background:var(--rail-bg)}
html[lang="ar"] .av2-rs-h{font:700 12.5px/1.5 var(--ar);letter-spacing:0;text-transform:none}
.av2-rs-h::after{content:"";flex:1;height:1px;background:var(--line)}
.av2-rs-n:empty{display:none}
.av2-rs-n{font:600 10.5px/1 var(--lt);letter-spacing:0;padding:3px 7px;border-radius:999px;border:1px solid var(--line);color:var(--muted)}
.av2-rs-empty{font-size:12.5px;color:var(--muted)}

.av2-log{list-style:none;margin:0;padding:0;display:grid;position:relative}
.av2-log::before{content:"";position:absolute;inset-inline-start:10.5px;top:11px;bottom:11px;width:1px;background:var(--line)}
.av2-log-i{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:start;gap:10px;padding:5px 0;font-size:13px;line-height:1.55;color:var(--ink-soft);animation:item-in .45s var(--ios) both}
.av2-log-dot{position:relative;z-index:1;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--rail-bg);border:1px solid var(--line);color:var(--muted)}
.av2-log-dot .i{width:11px;height:11px}
.av2-log-line{min-width:0;overflow-wrap:anywhere;padding-top:1px}
.av2-log-time{font:500 10.5px/22px var(--lt);color:var(--muted);direction:ltr}
.av2-log-i.k-reading_article .av2-log-dot,.av2-log-i.k-checking_citation .av2-log-dot,.av2-log-i.k-searching_law .av2-log-dot{color:var(--gold-deep);border-color:var(--gold-rule,var(--gold))}
.av2-log-i.now{color:var(--ink);font-weight:600}
.av2-log-i.now .av2-log-dot{border-color:transparent;background:linear-gradient(180deg,#DCE3EC,#A8B7CC);color:#14171C;box-shadow:0 0 0 4px color-mix(in srgb,#A8B7CC 24%,transparent)}
.av2-log-i.failed .av2-log-dot{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,transparent)}
.av2-log-i.failed .av2-log-line{color:var(--danger)}

.av2-srcs,.av2-rfiles{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.av2-src-b{display:flex;align-items:flex-start;gap:10px;width:100%;padding:9px 11px;border-radius:12px;text-align:start;border:1px solid var(--line);background:var(--surface);color:var(--ink);transition:border-color .25s var(--ease)}
.av2-src-b > .i{width:15px;height:15px;flex:none;margin-top:3px;color:var(--muted)}
.av2-src.k-article .av2-src-b > .i{color:var(--gold-deep)}
.av2-src-t{display:grid;gap:2px;min-width:0}
.av2-src-t b{font-size:13px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.av2-src.k-article .av2-src-t b{font-family:var(--statute);font-size:14px;font-weight:600}
.av2-src-t small{font-size:11.5px;color:var(--muted)}
.av2-src-b.plain{cursor:default}
@media (hover:hover){button.av2-src-b:hover,.av2-rfile:hover{border-color:var(--gold-rule,var(--gold))}}
.av2-rfile{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px;border-radius:8px;text-align:start;border:1px solid var(--line);border-inline-start:2px solid var(--gold);background:var(--surface);color:var(--ink);transition:border-color .25s var(--ease)}
.av2-rfile.unfinished{border-inline-start-color:var(--danger);border-inline-start-style:dashed}
.av2-rfile-ic{width:30px;height:30px;flex:none;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);color:var(--gold-deep)}
.av2-rfile-ic.k-contract_analysis{color:var(--danger)}
.av2-rfile-ic .i{width:14px;height:14px}
.av2-rfile-t{display:grid;gap:1px;min-width:0}
.av2-rfile-t b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.av2-rfile-t small{font-size:11.5px;color:var(--muted)}
.av2-rail-note{flex:none;margin:0;padding-top:10px;border-top:1px solid var(--line);font-size:11px;line-height:1.6;color:var(--muted)}
/* a short window: the steps keep the room; the note goes, the other sections and the operator get smaller */
@media (max-height:820px){
  .av2-rail{gap:14px;padding-block:12px 10px}
  .av2-rail-note{display:none}
  .av2-rs{max-height:24%}
  .av2-op{min-height:112px;padding-block:10px}
  .av2-op-fig{height:88px;width:50px}
}
html.reduce-motion .av2-op-state::before,html.reduce-motion .av2-rail .av2-op::after{animation:none}

/* ─── the home on narrower columns and phones ─── */
@container av2 (max-width:900px){
  .av2-sugg{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@container av2 (max-width:719px){
  .av2-sugg{grid-template-columns:repeat(2,minmax(0,1fr))}
  .av2-chip,html[dir="rtl"] .av2-chip{min-height:0;grid-template-columns:auto 1fr;grid-template-rows:auto;align-items:center;column-gap:10px;padding:13px 12px}
  .av2-chip::before{display:none}
  .av2-legend-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));row-gap:14px}
  .av2-legend-list li{max-width:none}
  .av2-legend-list li::before{display:none}
}
@container av2 (max-width:480px){
  .av2-sugg{grid-template-columns:1fr}
  .av2-legend-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.av2-demo{margin:0;padding:6px 16px;font-size:12px;font-weight:600;text-align:center;color:#14171C;background:var(--g-cta,var(--g-accent))}
