/* MIRROR-SCALE console. Identity carried over from the owner's TradeMirror console: celadon paper, hairline rules
   instead of cards, Bricolage Grotesque for status sentences and numbers, Figtree for reading text.
   Gold (--aurum) = mirror axis, current nav item, focus ring. Indigo (--agent) = an interpreter run is RUNNING. Nothing else. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 1rem/1.5 var(--body);min-height:100vh;
  display:grid;grid-template:"strip strip" auto "nav main" 1fr / var(--rail) minmax(0,1fr)}
h1,h2,h3,p,dl,dd,ul,ol{margin:0;padding:0}ul,ol{list-style:none}
a{color:inherit;text-decoration-color:var(--aurum);text-underline-offset:.2em}
:focus-visible{outline:2px solid var(--aurum);outline-offset:2px;border-radius:2px}
[hidden]{display:none!important}
.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip:focus{position:fixed;z-index:50;top:.5rem;left:.5rem;background:var(--surface);padding:.5rem .75rem}
.fine{font-size:.8125rem;color:var(--muted)}
.count{font:500 .8125rem var(--body);color:var(--muted);margin-left:.25rem}

/* strip: line 1 says what the platform can do; line 2 says what you are looking at */
.strip{grid-area:strip;position:sticky;top:0;z-index:20;background:var(--surface);border-bottom:1px solid var(--line)}
.strip-top,.strip-scope{display:flex;align-items:center;gap:1rem;padding:.625rem 1.5rem}
.strip-scope{border-top:1px solid var(--line);padding-block:.5rem;flex-wrap:wrap}
.brand{font:700 1.0625rem/1 var(--display);letter-spacing:.01em;text-decoration:none}
.phase{font:500 .9375rem/1.3 var(--display);margin-right:auto}
.strip-fresh{white-space:nowrap}
.scope-label{font-size:.8125rem;color:var(--muted)}
.scope-picker{position:relative;flex:0 1 22rem;min-width:12rem}
.scope-input,.scope-select,.ledger-find{width:100%;font:inherit;color:inherit;background:var(--bg);border:1px solid var(--line-strong);
  border-radius:var(--radius);padding:.4375rem .625rem;min-height:2.25rem}
.scope-select{width:auto}
.scope-input::placeholder{color:var(--text);opacity:1}
.scope-list{position:absolute;inset:calc(100% + .25rem) 0 auto 0;z-index:30;max-height:20rem;overflow:auto;background:var(--surface);
  border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow)}
.scope-option{display:flex;justify-content:space-between;gap:1rem;padding:.5rem .625rem;cursor:pointer;border-bottom:1px solid var(--line)}
.scope-option:last-child{border-bottom:0}.scope-option[aria-selected="true"],.scope-option:hover{background:var(--raised)}
.scope-option.is-focused{background:var(--raised);box-shadow:inset 3px 0 var(--aurum)}
.scope-option small{color:var(--muted)}

.agent-banner{display:flex;align-items:center;gap:.5rem;color:var(--agent);background:var(--agent-soft);padding:.25rem .625rem;border-radius:999px;font-size:.875rem}
.pulse{width:.5rem;height:.5rem;border-radius:50%;background:var(--agent);animation:pulse 1.4s ease-in-out infinite}
@keyframes pulse{50%{opacity:.25;transform:scale(.7)}}
@media (prefers-reduced-motion:reduce){.pulse{animation:none}}

.nav{grid-area:nav;position:sticky;top:6.5rem;align-self:start;display:flex;flex-direction:column;padding:1.25rem .75rem;gap:.125rem}
.nav-item{display:block;padding:.5rem .75rem;border-left:2px solid transparent;text-decoration:none;color:var(--muted);
  font:500 .9375rem var(--body);background:none;border-top:0;border-right:0;border-bottom:0;text-align:left;cursor:pointer}
.nav-item:hover{color:var(--text)}
.nav-item[aria-current="page"]{color:var(--text);border-left-color:var(--aurum)}
.nav-more-toggle{display:none}

main{grid-area:main;padding:2rem clamp(1rem,4vw,3.5rem) 4rem;max-width:78rem;min-width:0}
.hero{padding-bottom:1.75rem;border-bottom:1px solid var(--line);margin-bottom:1.75rem}
.hero-line{font:600 clamp(1.625rem,1.1rem + 1.9vw,2.5rem)/1.12 var(--display);letter-spacing:-.015em;max-width:26ch}
.hero-sub{margin-top:.625rem;color:var(--muted);max-width:68ch}
.page-head{padding-bottom:1.25rem;border-bottom:1px solid var(--line);margin-bottom:1.25rem}
.page-head h1{font:600 1.75rem/1.15 var(--display);letter-spacing:-.01em}
.page-sub,.section-sub{color:var(--muted);max-width:72ch;margin-top:.375rem}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-top:2.25rem}
.section-title{font:600 1.125rem/1.2 var(--display);margin-top:2.25rem}.section-head .section-title{margin-top:0}
.ledger-find{width:16rem}
.notice{padding:.625rem .875rem;margin-bottom:1.25rem;background:var(--warn-soft);color:var(--warn);border-radius:var(--radius)}
.empty-line{color:var(--muted);padding:1rem 0;border-top:1px solid var(--line);margin-top:.75rem;max-width:72ch}

/* attention + ledger: hairline rows, never cards */
.attention-list{margin-top:.5rem;border-top:1px solid var(--line)}
.attention-item{display:flex;justify-content:space-between;align-items:start;gap:1rem;padding:.625rem 0;border-bottom:1px solid var(--line)}
.ledger{margin-top:.75rem;border-top:1px solid var(--line-strong)}
.ledger-row{display:grid;grid-template-columns:minmax(12rem,1.1fr) minmax(0,2fr) minmax(10rem,1fr) auto;gap:.25rem 1.5rem;
  align-items:start;padding:1rem 0;border-bottom:1px solid var(--line)}
.ledger-name{font:600 1.0625rem/1.25 var(--display)}
.tag{display:inline-block;font:500 .75rem/1 var(--body);color:var(--muted);border:1px solid var(--line-strong);border-radius:999px;padding:.1875rem .5rem;margin-left:.375rem;vertical-align:.1em}
.tag--sim{border-style:dashed;color:var(--text)}
.ledger-state{max-width:60ch}.ledger-state .fine{display:block;margin-top:.125rem}
.ledger-acct{font-variant-numeric:tabular-nums}
.btn{font:500 .875rem var(--body);color:var(--text);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);
  padding:.4375rem .75rem;min-height:2.25rem;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;white-space:nowrap;flex:none}
.btn:hover{border-color:var(--text)}.btn--quiet{background:none;border-color:transparent;color:var(--muted)}
.btn--primary{background:var(--text);color:var(--bg);border-color:var(--text)}

/* capital: accounts side by side, no total */
.capital-block{display:grid;grid-template-columns:repeat(auto-fit,minmax(19rem,1fr));margin-top:.75rem;border-top:1px solid var(--line-strong)}
.acct{padding:1rem 1.5rem 1rem 0;border-bottom:1px solid var(--line)}
.acct + .acct{padding-left:1.5rem;border-left:1px solid var(--line)}
.acct-title{font:600 1rem/1.25 var(--display)}
.acct-kind{display:block;font:500 .8125rem var(--body);color:var(--muted)}
.acct-kind--sim{color:var(--text);text-decoration:underline dashed var(--line-strong);text-underline-offset:.25em}
.kv-grid{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.375rem 1.25rem;margin-top:.75rem}
.kv-grid dt{color:var(--muted)}.kv-grid dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.num{font:500 1rem var(--display)}

/* the mirror row: the message as written | gold axis | what became of it */
.feed-list{border-top:1px solid var(--line-strong)}
.mirror{padding:1.25rem 0;border-bottom:1px solid var(--line);min-width:0;max-width:100%}
.mirror-scope{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;margin-bottom:.625rem;font-size:.8125rem;color:var(--muted)}
.mirror-scope > *{min-width:0;overflow-wrap:anywhere}
.mirror-scope strong{color:var(--text);font-weight:600}
.mirror-body{display:grid;grid-template-columns:minmax(0,1fr) 1px minmax(0,1.15fr);gap:0 1.5rem}
.mirror-msg,.mirror-result{min-width:0}
.mirror-axis{background:var(--aurum)}
.msg-text{white-space:pre-wrap;overflow-wrap:anywhere;max-width:62ch}
.outcome{font:600 1.0625rem/1.3 var(--display);max-width:48ch;overflow-wrap:anywhere}
.chain{margin-top:.625rem;display:grid;grid-template-columns:minmax(0,max-content) minmax(0,1fr);gap:.25rem 1rem;font-size:.9375rem}
.chain dt{color:var(--muted)}
.chain dt,.chain dd{min-width:0;overflow-wrap:anywhere}
.outcome.is-running{color:var(--agent)}
details.tech{margin-top:.625rem}details.tech summary{cursor:pointer;color:var(--muted);font-size:.875rem}
.mono{font:400 .8125rem/1.5 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--inset);padding:.625rem;border-radius:var(--radius);margin-top:.375rem}
.feed-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem}

/* set-up */
.add-copier{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem 1rem;align-items:center;margin:1rem 0 1.5rem}
.add-copier label{grid-column:1/-1;font:600 1rem var(--display)}.add-copier input{font:inherit;padding:.5rem .625rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:inherit;min-height:2.25rem}
.add-copier .fine{grid-column:1/-1}
/* set-up steps: a real sequence, so it is numbered */
.steps{counter-reset:step;border-top:1px solid var(--line-strong);margin-bottom:1rem}
.step{counter-increment:step;display:grid;grid-template-columns:2.5rem minmax(0,1fr);padding:1rem 0;border-bottom:1px solid var(--line)}
.step::before{content:counter(step);font:600 1.25rem/1.2 var(--display);color:var(--muted)}
.step-title{font:600 1rem/1.3 var(--display)}.step-body{color:var(--muted);max-width:68ch;margin-top:.125rem}
.step-state{display:block;margin-top:.375rem;color:var(--text)}

.page-footer{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.8125rem;color:var(--muted)}

/* sign-in */
.gate{display:grid;place-items:center;grid-template:none}
.gate-box{width:min(26rem,100% - 2rem);padding:2rem 0}
.gate-title{font:600 1.75rem/1.15 var(--display);margin-bottom:1rem}.gate-box p{margin-top:.75rem;color:var(--muted)}
.gate-form{display:grid;gap:.5rem;margin-top:1rem}.gate-form input,.gate-form select,.gate-form textarea{min-height:44px;font:inherit;padding:.625rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:inherit}
.gate-error{color:var(--bad)}

@media (max-width:1280px){:root{--rail:168px}.ledger-row{grid-template-columns:minmax(10rem,1fr) minmax(0,2fr) auto}.ledger-acct{grid-column:2}}
@media (max-width:1000px){
  body{grid-template:"strip" auto "main" 1fr / minmax(0,1fr);padding-bottom:calc(3.75rem + env(safe-area-inset-bottom))}
  .nav{position:fixed;inset:auto 0 0 0;top:auto;z-index:25;flex-direction:row;justify-content:space-around;padding:.25rem .5rem calc(.25rem + env(safe-area-inset-bottom));
    background:var(--surface);border-top:1px solid var(--line)}
  .nav-item{border-left:0;border-top:2px solid transparent;text-align:center;flex:1;padding:.75rem .25rem}
  .nav-item[aria-current="page"]{border-top-color:var(--aurum)}
  .nav-item--more{display:none}.nav-more-toggle{display:block}
  .nav.is-open{flex-wrap:wrap}.nav.is-open .nav-item--more{display:block;flex-basis:33%}
  .strip-top{flex-wrap:wrap;gap:.375rem 1rem;padding-inline:1rem}.strip-scope{padding-inline:1rem}
  .btn,.nav-item,.scope-input,.scope-select,.scope-option,.ledger-find,.add-copier input,details.tech summary{min-height:2.75rem}
  .phase{flex-basis:100%;order:3;margin:0}.acct + .acct{border-left:0;padding-left:0}
}
@media (max-width:820px){
  .mirror-body{grid-template-columns:minmax(0,1fr);gap:.75rem}
  .mirror-axis{display:none}.mirror-result{border-left:2px solid var(--aurum);padding-left:.875rem} /* gold stays the mirror, even stacked */
  .ledger-row{grid-template-columns:minmax(0,1fr)}.ledger-acct{grid-column:auto}
}
@media (max-width:700px){.attention-item{flex-direction:column}main{padding-top:1.25rem}.scope-picker{flex-basis:100%}.ledger-find{width:100%}.section-head{flex-direction:column;align-items:stretch}}
@media (pointer:coarse){.btn,.nav-item,.scope-input,.scope-select,.scope-option,details.tech summary{min-height:2.75rem}.scope-option{align-items:center}}

/* Functional onboarding and agent cards; retain existing typography and colors. */
.wizard { max-width: 52rem; margin-block: 1rem 2rem; }
.wizard .gate-form { margin-block: 1.5rem; padding-block: 1rem; }
.wizard textarea { min-height: 6rem; width: 100%; font: inherit; padding: .7rem; }
.wizard input,.wizard select { min-height: 44px; max-width: 100%; width: 100%; }
.wizard button,.wizard-item { min-height: 44px; white-space: normal; text-align: left; }
.wizard-item { display: block; margin-block: .5rem; width: 100%; }
.wizard-card { padding: 1rem; margin-block: 1rem; border: 1px solid var(--line, #7775); border-radius: .6rem; overflow-wrap: anywhere; }
.wizard details { margin-block: 1rem; }
.wizard summary { min-height: 44px; cursor: pointer; }
[hidden] { display: none !important; }

/* Position workspaces preserve existing visual language and wrap on narrow screens. */
.workspace-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin-block:1rem}.workspace-nav .btn{min-height:44px;white-space:normal}.workspace-nav [aria-current="page"]{border-color:var(--aurum);font-weight:600}.wizard-card .kv-grid dd{overflow-wrap:anywhere;min-width:0}.wizard-card summary{min-height:44px;cursor:pointer}#agents-content,#models-content,#knowledge-content,#tools-content{min-width:0}
/* Typed controls must shrink inside phone workspaces, including long recipe labels. */
.gate-form{min-width:0}.gate-form input,.gate-form select,.gate-form textarea{min-width:0;max-width:100%;width:100%;box-sizing:border-box}.gate-form input[type=checkbox]{width:auto}.gate-form fieldset{min-inline-size:0;min-width:0}.gate-form .btn{white-space:normal;overflow-wrap:anywhere}
/* Financial cockpit clarity: accents identify sections, never imply verified health. */
.view>h1{letter-spacing:-.025em;margin-bottom:1rem}.view h2{letter-spacing:-.015em}.wizard-card{background:var(--surface);box-shadow:0 2px 8px #14282806}.wizard-card>h3,.wizard-card>h4{margin-top:0;margin-bottom:.65rem}.wizard-card>p+dl,.wizard-card>dl+p{margin-top:.8rem}.wizard-card>p+p{margin-top:.5rem}.workspace-nav{padding-block:.35rem;border-bottom:1px solid var(--line)}.workspace-nav [aria-current=page]{background:var(--raised);box-shadow:inset 0 -2px var(--aurum)}
#home-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}#home-content>*{grid-column:1/-1}#home-content>.wizard-card{grid-column:auto;margin:0;border-top:3px solid var(--aurum)}#home-content>.wizard-card:nth-of-type(3n){border-top-color:#67798d}#home-content>.wizard-card:nth-of-type(3n + 2){border-top-color:#768a86}#home-content>.wizard-card h3{font-size:1.05rem}#home-content .kv-grid{grid-template-columns:minmax(7rem,.8fr) minmax(0,1.2fr)}
#agents-content>.wizard-card,#models-content>.wizard-card{border-left:3px solid #74809b}#accounts-content>.wizard-card,#capacity-content>.wizard-card{border-left:3px solid #688985}#news-content>.kv-grid,.status-warning{border-left:3px solid var(--aurum);padding:.8rem 1rem;background:var(--raised);margin-block:1rem}.kv-grid dd[data-state=attention]{font-weight:650;color:#80570b}.kv-grid dd[data-state=failure]{font-weight:650;color:var(--bad)}.kv-grid dd[data-state=working]{font-weight:650;color:var(--agent)}
.view details>summary{cursor:pointer;min-height:44px;padding-block:.65rem}.view .btn{min-height:44px}.view section>h3{margin-top:1.2rem}.gate-form label{font-size:.925rem;font-weight:550}.gate-form>h3{margin-bottom:.4rem}.gate-form>p{max-width:74ch}.gate-form fieldset{border:1px solid var(--line);border-radius:.4rem;padding:.75rem;margin:0}.gate-form details{border-bottom:1px solid var(--line);padding-block:.25rem}.view a.btn:hover,.view button.btn:hover{border-color:var(--aurum)}
@media(max-width:700px){#home-content{grid-template-columns:minmax(0,1fr)}#home-content>.wizard-card{grid-column:1/-1}.wizard-card{padding:.85rem}.kv-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:.5rem .7rem}.workspace-nav{gap:.4rem}.workspace-nav .btn{flex:1 1 auto}.view>h1{font-size:1.65rem}}
/* Long professional workspace names remain tappable without widening phone pages. */
.view a.btn{max-width:100%;white-space:normal;overflow-wrap:anywhere;min-width:0}
.maintenance-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0}.maintenance-actions .btn{white-space:normal}
.incident-card[data-status="ACTIVE"],.incident-card[data-status="NEEDS_ENGINEERING"]{border-left:3px solid var(--bad)}.incident-card[data-status="RECOVERED"],.incident-card[data-status="FALSE/STALE"]{border-left:3px solid #688985}
.calendar-row{border-bottom:1px solid var(--line);padding-block:.25rem}.calendar-row>summary{overflow-wrap:anywhere}
#news-content>section{margin-block:1.5rem}.news-event .kv-grid{grid-template-columns:minmax(9rem,.8fr) minmax(0,1.2fr)}
.status-critical{border-left:4px solid var(--bad);padding:.8rem 1rem;background:color-mix(in srgb,var(--bad) 9%,var(--surface));margin-block:1rem}.status-critical h5{color:var(--bad)}
@media(max-width:700px){.news-event .kv-grid{grid-template-columns:minmax(0,1fr)}.news-event .kv-grid dd{margin-bottom:.4rem}.nav.is-open{max-height:calc(100dvh - 1rem);overflow-y:auto}}

/* Account onboarding progress uses the existing dashboard surfaces. */
.ftmo-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;padding:0;list-style:none}.ftmo-progress li{border:1px solid var(--line);border-radius:.4rem;padding:.7rem;min-width:0}.ftmo-progress [aria-current=step]{border-color:var(--aurum)}.ftmo-progress [data-complete=true]{background:var(--raised)}.ftmo-progress p{margin-bottom:0}.other-account-drafts>summary{min-height:44px;cursor:pointer}
@media(max-width:900px){.ftmo-progress{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.ftmo-progress{grid-template-columns:minmax(0,1fr)}}
/* Proposal policies and provenance contain long identifiers; keep them readable on phones. */
#registration-wizard { overflow-wrap: anywhere; }

/* Owner cockpit: explicit states and compact diagnostic disclosure. */
.workspace-details { position: relative; padding: .55rem; }
.workspace-details summary { cursor: pointer; }
.workspace-links { display: flex; flex-wrap: wrap; gap: .35rem; }
.owner-state-note { border-inline-start: .25rem solid currentColor; padding: .75rem; }
.policy-separation { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; margin-block: 1rem; }
.policy-separation section { border: 1px solid currentColor; padding: .75rem; border-radius: .4rem; }
.proposed-policy { border-style: dashed !important; }
.owner-summary, .owner-summary dd { overflow-wrap: anywhere; min-width: 0; }
:where(a,button,summary,input,select,textarea):focus-visible { outline: 3px solid currentColor; outline-offset: 3px; }
@media(max-width: 600px) { .policy-separation { grid-template-columns: 1fr; } .workspace-links { flex-direction: column; } }

/* Consistent owner guidance; technical evidence remains native expandable content. */
.owner-guidance{color:var(--muted);max-width:65ch;margin-block:.5rem 1rem}
.nav-group-label{display:block;font-size:.8rem;color:var(--muted);padding:.75rem .75rem .2rem;font-weight:600}
.owner-evidence{margin-block:.75rem;border-top:1px solid var(--line);padding-top:.5rem}.owner-evidence summary{min-height:44px;cursor:pointer}.owner-evidence pre{max-height:30rem;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:700px){.nav .workspace-details{max-height:60vh;overflow:auto}.nav.is-open .workspace-details{flex-basis:100%}.nav-group-label{text-align:left}}
