:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f4f6f2;color:#17201c;font-synthesis:none;letter-spacing:0}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(180deg,#f4f6f2f5,#ebf0edf5),#f4f6f2}button,input,textarea,select{font:inherit}.workspace{width:min(1440px,100%);margin:0 auto;padding:24px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:78px;border-bottom:1px solid #cad4ce;margin-bottom:18px}.eyebrow{margin:0 0 6px;color:#537060;font-size:12px;font-weight:700;text-transform:uppercase}h1,h2,p{margin:0}h1{font-size:clamp(28px,4vw,54px);line-height:1;font-weight:760}h2{font-size:16px;line-height:1.2}.toolbar{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.primary-button,.secondary-button{border:0;border-radius:6px;padding:11px 16px;font-weight:720;cursor:pointer}.primary-button{min-width:132px;background:#173f36;color:#fff;box-shadow:0 10px 22px #173f362e}.secondary-button{min-width:96px;background:#e4ece7;color:#173f36;border:1px solid #bdcbc4}.primary-button:disabled,.secondary-button:disabled{cursor:default;background:#6f8379;color:#fff;box-shadow:none}.main-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:18px;align-items:stretch}.bottom-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:18px;margin-top:18px}.viewer-panel,.panel{border:1px solid #cbd6cf;background:#fbfcfa;border-radius:8px}.viewer-panel{min-height:650px;display:flex;flex-direction:column}.panel{min-height:180px}.panel-header{min-height:62px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #dde5df}.panel-header p{color:#5a6a62;font-size:13px;margin-top:4px}.state-pill{min-width:62px;text-align:center;border-radius:999px;background:#dfeae3;color:#173f36;font-size:12px;font-weight:760;padding:6px 9px}.page-shell{flex:1;display:grid;place-items:center;padding:24px;background:linear-gradient(90deg,rgba(23,63,54,.04) 1px,transparent 1px),linear-gradient(180deg,rgba(23,63,54,.04) 1px,transparent 1px);background-size:24px 24px}.pdf-page{position:relative;width:min(560px,100%);aspect-ratio:.773;background:#fff;border:1px solid #c8d1cc;box-shadow:0 24px 70px #14221c29;overflow:hidden;cursor:crosshair}.doc-title{position:absolute;top:8.5%;left:10.5%;right:10.5%;color:#19342c;font-size:22px;font-weight:760}.doc-rule{position:absolute;top:13.2%;left:10.5%;right:10.5%;height:2px;background:#173f36}.doc-line{position:absolute;left:10.5%;height:9px;border-radius:2px;background:#d9e1dc}.doc-line.wide{top:20.5%;width:68%}.doc-line.medium{top:24%;width:49%}.highlight{position:absolute;left:10.5%;top:15%;width:35%;height:3.8%;display:flex;align-items:center;border:0;padding:3px 6px;border-radius:3px;font-size:clamp(8px,1.6vw,13px);font-weight:730;color:#13251f;overflow:hidden;white-space:nowrap;transition:all .26s ease;cursor:pointer;text-align:left}.hidden{display:none!important}.highlight.draft{background:#d5b24c3b;outline:2px dashed rgba(151,109,30,.7)}.highlight.reconciled{background:#34825f2e;outline:2px solid rgba(42,112,80,.9)}.highlight.native-winner{background:#2a6db229;outline:2px solid rgba(42,85,152,.88)}.click-marker{position:absolute;width:16px;height:16px;border-radius:999px;transform:translate(-50%,-50%);background:#14221ddb;border:3px solid #ffffff;box-shadow:0 4px 14px #14221d42;pointer-events:none;z-index:4}.doc-table{position:absolute;left:10.5%;right:10.5%;bottom:13%;height:24%;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #aebbb4}.doc-table span{border-right:1px solid #aebbb4;border-bottom:1px solid #aebbb4;background:linear-gradient(180deg,#f8faf8,#edf2ef)}.doc-table span:nth-child(3n){border-right:0}.doc-table span:nth-last-child(-n+3){border-bottom:0}.side-stack{display:grid;gap:18px;align-content:start}.kv{margin:0;padding:14px 16px 18px;display:grid;gap:10px}.kv div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px}.kv dt{color:#607168;font-size:13px}.kv dd{margin:0;color:#17201c;font-size:13px;font-weight:700;min-width:0;overflow-wrap:anywhere}.control-grid{padding:14px 16px 18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.control-grid label{display:grid;grid-template-columns:minmax(0,1fr) 54px;gap:8px 10px;align-items:center}.control-grid label span,.control-grid output{font-size:12px;color:#607168}.control-grid label span{font-weight:700}.control-grid input[type=range]{grid-column:1 / -1;accent-color:#173f36}.control-grid input[type=text]{grid-column:1 / -1;width:100%;min-width:0;border:1px solid #cbd6cf;border-radius:6px;padding:10px 11px;color:#17201c;background:#fff}.wide-control{grid-column:1 / -1}.assertion-list,.event-list{padding:12px;display:grid;gap:8px;max-height:360px;overflow:auto}.assertion{display:grid;grid-template-columns:12px minmax(0,1fr);gap:10px;padding:10px;border-radius:6px;background:#f3f7f4;border:1px solid #dce6e0}.assertion-dot{width:10px;height:10px;border-radius:50%;margin-top:4px;background:#b73434}.assertion.pass .assertion-dot{background:#25885c}.assertion strong{display:block;font-size:13px;line-height:1.25}.assertion p{margin-top:4px;color:#607168;font-size:12px;line-height:1.3;overflow-wrap:anywhere}.event-row{display:grid;grid-template-columns:145px minmax(0,1fr) 52px;align-items:center;gap:8px;padding:9px 10px;border-radius:6px;background:#f3f7f4;border:1px solid #dce6e0;font-size:13px;text-align:left;cursor:pointer}.event-row:hover{border-color:#93aa9e;background:#edf4ef}.event-type{font-weight:760;color:#173f36}.event-target,.event-seq{color:#607168;overflow-wrap:anywhere}.code{margin:0;padding:16px;overflow:auto;min-height:360px;background:#14221d;color:#dfeee7;border-radius:0 0 8px 8px;font-size:13px;line-height:1.55}@media(max-width:980px){.workspace{padding:16px}.topbar,.main-grid,.bottom-grid{grid-template-columns:1fr}.topbar{display:grid;align-items:start}.viewer-panel{min-height:560px}}@media(max-width:560px){.workspace{padding:12px}.page-shell{padding:14px}.panel-header,.kv{padding-left:12px;padding-right:12px}.kv div,.event-row{grid-template-columns:1fr}.primary-button,.secondary-button{width:100%}.toolbar,.control-grid{grid-template-columns:1fr}}
