:root{
  --cw-surface:#101c24;
  --cw-raised:#172731;
  --cw-border:#40545f;
  --cw-ink:#eff8fb;
  --cw-muted:#bdced5;
  --cw-accent:#9ae6cb;
  --cw-warn:#ffdda0;
  --cw-danger:#ffc0c3;
  --cw-radius:12px;
}
.cw-workspace{max-width:1380px;margin:0 auto;padding:2rem 1.5rem 4rem;color:var(--cw-ink);}
.cw-workspace [hidden]{display:none!important;}
.cw-workspace a{color:var(--cw-accent);text-decoration:underline;text-underline-offset:3px;}
.cw-workspace :is(button,input,select,textarea){font:inherit;}
.cw-workspace :is(button,input,select,textarea,summary,a):focus-visible{outline:2px solid var(--cw-accent);outline-offset:4px;}
.cw-nav{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.85rem;}
.cw-hero{padding:3rem 0 2rem;border-bottom:1px solid var(--cw-border);}
.cw-eyebrow{font:.73rem var(--mono);letter-spacing:.12em;color:var(--cw-accent);margin-bottom:1rem;}
.cw-hero h1{font-size:clamp(2.2rem,4.5vw,4.2rem);line-height:1.1;letter-spacing:-.04em;margin:0 0 1.2rem;}
.cw-lead{max-width:68ch;line-height:1.8;font-size:1.05rem;color:var(--cw-muted);}
.cw-trust{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;list-style:none;padding:0;margin-top:1.5rem;}
.cw-trust li{font:.76rem var(--mono);color:var(--cw-accent);}
.cw-trust li::before{content:'• ';}
.cw-notice{font-size:.86rem;line-height:1.8;color:var(--cw-warn);margin:1.5rem 0;max-width:110ch;}
.cw-controls{border:0;padding:0;margin:0;min-width:0;}
.cw-workspace .cw-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.cw-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;justify-content:space-between;}
.cw-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin:.8rem 0;}
.cw-workspace button{border:1px solid var(--cw-border);border-radius:6px;background:var(--cw-raised);color:var(--cw-ink);padding:.65rem .9rem;min-height:44px;cursor:pointer;font-size:.84rem;}
.cw-workspace button:hover{border-color:var(--cw-accent);}
.cw-workspace button:disabled{opacity:.55;cursor:not-allowed;}
.cw-workspace .cw-primary{background:var(--cw-accent);color:var(--cw-surface);font-weight:700;}
.cw-workspace .cw-danger{color:var(--cw-danger);}
.cw-workspace label{display:block;font-size:.85rem;color:var(--cw-muted);margin:.75rem 0 .4rem;}
.cw-workspace :is(input,select,textarea){width:100%;min-width:0;max-width:100%;padding:.65rem;min-height:44px;background:var(--cw-surface);color:var(--cw-ink);border:1px solid var(--cw-border);border-radius:6px;}
.cw-workspace textarea{resize:vertical;line-height:1.65;}
.cw-workspace select[multiple]{min-height:115px;}
.cw-file{min-width:0;max-width:310px;}
.cw-file input{font-size:.76rem;}
.cw-file small{color:var(--cw-muted);display:block;margin-top:.4rem;font-size:.73rem;}
.cw-status{color:var(--cw-accent);font:.76rem/1.8 var(--mono);padding:.7rem 0;}
.cw-panel{min-width:0;background:var(--cw-surface);border:1px solid var(--cw-border);border-radius:var(--cw-radius);padding:1.4rem;}
.cw-workspace h2{font-size:1.12rem;letter-spacing:-.02em;margin:0 0 1rem;}
.cw-workspace h2>span{font:.8rem var(--mono);color:var(--cw-accent);margin-right:.45rem;}
.cw-meta{margin-bottom:1rem;}
.cw-meta button{margin-top:.8rem;}
.cw-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start;}
.cw-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;}
.cw-help{font-size:.81rem;color:var(--cw-muted);line-height:1.7;margin:.6rem 0 1rem;}
.cw-evidence{margin-top:1rem;}
.cw-record{border:1px solid var(--cw-border);border-radius:8px;margin:.75rem 0;background:var(--cw-raised);overflow:hidden;}
.cw-record>summary{padding:1rem;cursor:pointer;font-size:.9rem;overflow-wrap:anywhere;}
.cw-record-body{padding:0 1rem 1rem;}
.cw-record-body p{font-size:.83rem;line-height:1.7;overflow-wrap:anywhere;}
.cw-workspace pre{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;font:.72rem/1.7 var(--mono);background:var(--cw-surface);padding:.8rem;border-radius:6px;}
.cw-provenance{color:var(--cw-muted);font:.71rem/1.7 var(--mono);overflow-wrap:anywhere;}
.cw-empty{font-size:.86rem;color:var(--cw-muted);padding:1.3rem .2rem;line-height:1.7;}
.cw-timeline{list-style:none;padding:0;margin:0;}
.cw-timeline li{border-left:2px solid var(--cw-border);padding:.4rem 0 1rem 1.1rem;margin-left:.3rem;overflow-wrap:anywhere;}
.cw-timeline h3{font-size:.88rem;margin:.35rem 0;}
.cw-timeline time{color:var(--cw-accent);font:.73rem var(--mono);}
.cw-unknown{color:var(--cw-warn);font:.73rem var(--mono);}
.cw-editor{border-top:1px solid var(--cw-border);padding-top:1rem;margin-top:1rem;}
.cw-editor>summary{cursor:pointer;font-size:.86rem;color:var(--cw-accent);}
.cw-indicator{border-bottom:1px solid var(--cw-border);padding:.8rem 0;overflow-wrap:anywhere;}
.cw-indicator code{font:.78rem/1.7 var(--mono);color:var(--cw-accent);}
.cw-note{border:1px solid var(--cw-border);border-radius:8px;background:var(--cw-raised);padding:1rem;margin-bottom:.8rem;overflow-wrap:anywhere;}
.cw-note-text{white-space:pre-wrap;font-size:.87rem;line-height:1.8;}
.cw-links{margin-top:1rem;}
.cw-limits{padding:1.8rem 0;color:var(--cw-muted);font-size:.84rem;line-height:1.8;}
.cw-limits ul{padding-left:1.2rem;}
.cw-error{border:1px solid var(--cw-danger);color:var(--cw-danger);background:var(--cw-surface);padding:1rem;border-radius:8px;margin:1rem 0;line-height:1.7;}
.cw-dialog{max-width:500px;width:calc(100% - 3rem);margin:auto;padding:1.5rem;background:var(--cw-surface);color:var(--cw-ink);border:1px solid var(--cw-border);border-radius:var(--cw-radius);}
.cw-dialog::backdrop{background:rgb(0 0 0 / .72);}
.cw-dialog p{font-size:.92rem;line-height:1.8;white-space:pre-line;overflow-wrap:anywhere;}
@media(max-width:800px){
  .cw-layout{grid-template-columns:minmax(0,1fr);}
  .cw-workspace{padding:1.4rem 1rem 3rem;}
  .cw-hero{padding-top:2rem;}
}
@media(max-width:480px){
  .cw-pair{grid-template-columns:minmax(0,1fr);}
  .cw-panel{padding:1rem;}
  .cw-toolbar{align-items:stretch;}
  .cw-file{max-width:100%;width:100%;}
}
@media(prefers-reduced-motion:reduce){
  .cw-workspace *{scroll-behavior:auto;transition:none;animation:none;}
}
