@font-face{font-family:Instrument;src:url(../assets/instrument-sans.eeb5e08b1f38.woff2) format('woff2');font-weight:400 700;font-style:normal;font-display:swap}

:root{color-scheme:light;--paper:#f5f5f1;--surface:#fff;--ink:#172b28;--select-arrow:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2012%2012%22%3E%3Cpath%20d%3D%22M2%204L6%208L10%204%22%20fill%3D%22none%22%20stroke%3D%22%23172b28%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");--muted:#52635b;--line:#cbd2c8;--control-border:#758179;--rail:#17352b;--rail-ink:#eaf0e8;--rail-muted:#bdcbbc;--rail-hover:#294c3d;--rail-active:#cde6de;--rail-active-hover:#e0efe4;--rail-active-ink:#172b28;--accent:#365d37;--accent-ink:#fff;--accent-hover:#294b2a;--subtle:#e5e9e0;--output:#eef2eb;--a:#e2d8f5;--both:#cde6de;--b:#f2dfbf;--notice:#e9e2d4;--notice-ink:#5a4930;--error-surface:#f4d7ca;--error-ink:#692b1d;--focus:#365d37;--selection:#d5f58b;--selection-ink:#172b28;--diagram:#52705a;--chart:#777294;--ease:cubic-bezier(.16,1,.3,1);font-family:Instrument,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
[data-theme="dark"]{color-scheme:dark;--paper:#15221f;--surface:#1c2d27;--ink:#f0f3e8;--select-arrow:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2012%2012%22%3E%3Cpath%20d%3D%22M2%204L6%208L10%204%22%20fill%3D%22none%22%20stroke%3D%22%23f0f3e8%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");--muted:#b3c4b3;--line:#3f5646;--control-border:#819581;--rail:#132b21;--rail-hover:#294c3d;--rail-active:#cde6de;--rail-active-hover:#e0efe4;--accent:#d5f58b;--accent-ink:#172b28;--accent-hover:#e3ffa8;--subtle:#23382e;--output:#23382e;--a:#41384f;--both:#284a3a;--b:#4a412c;--notice:#403b2b;--notice-ink:#eee0bd;--error-surface:#4c2c29;--error-ink:#ffd5c9;--focus:#d5f58b;--diagram:#b3c4b3;--chart:#b5a4d0}

*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button,a,select,input{transition:none}button{color:inherit}a{color:inherit;text-underline-offset:4px}button{border:1px solid var(--line);background:var(--surface);border-radius:4px;padding:10px 16px;min-height:44px;font-weight:600}button:hover:not(:disabled){background:var(--subtle)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.48;cursor:default}button.primary{background:var(--accent);color:var(--accent-ink);border-color:transparent}button.primary:hover:not(:disabled){background:var(--accent-hover)}button.subtle{background:transparent;border-color:transparent}button.subtle:hover{background:var(--subtle)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,pre:focus-visible{outline:3px solid var(--focus);outline-offset:4px}::selection{background:var(--selection);color:var(--selection-ink)}textarea{caret-color:var(--accent)}[hidden]{display:none!important}.skip{position:fixed;left:16px;top:-80px;padding:15px;background:var(--surface);z-index:10}.skip:focus{top:12px}svg{display:block;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}p{line-height:1.55}h1,h2,h3,p{margin:0}h1{font-size:clamp(30px,3.5vw,48px);letter-spacing:-.035em;line-height:1.08;font-weight:600;text-wrap:balance}h2{font-size:23px;letter-spacing:-.025em;font-weight:600}h3{font-size:16px;font-weight:600}.topbar{height:92px;display:flex;justify-content:space-between;align-items:center;padding:0 38px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:13px;align-items:center;text-decoration:none}.brand svg{width:42px;height:42px;fill:var(--ink);stroke:none}.brand b{font-size:22px;letter-spacing:-.03em;line-height:1.2}.brand small{display:block;color:var(--muted);font-size:14px;margin-top:3px}.top-actions{display:flex;align-items:center;gap:25px;font-size:14px}.top-actions a{text-decoration:none}.top-actions a:hover{text-decoration:underline}.top-actions button{background:transparent}.app-shell{display:grid;grid-template-columns:220px minmax(0,1fr);max-width:1600px;margin:auto}.rail{background:var(--rail);color:var(--rail-ink);padding:35px 16px;display:flex;flex-direction:column;min-height:calc(100vh - 92px)}.rail nav{display:grid;gap:10px}.rail button{background:transparent;border:0;display:flex;align-items:center;gap:12px;text-align:left;min-height:58px;padding:14px;color:var(--rail-ink);font-size:16px;white-space:nowrap}.rail svg{width:23px;height:23px;flex-shrink:0}.rail button:hover{background:var(--rail-hover)!important}.rail button[aria-current]{background:var(--rail-active);color:var(--rail-active-ink)}.rail button[aria-current]:hover{background:var(--rail-active-hover)!important}.rail button:focus-visible{outline-color:var(--selection)}.rail-note{padding:65px 14px 20px;max-width:190px;color:var(--rail-muted)}.rail-note svg{width:20px;margin-bottom:12px}.rail-note p{font-size:14px;line-height:1.6}main{padding:44px clamp(20px,4vw,68px) 22px;min-width:0;outline:none}.workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:32px}.workspace-heading p{color:var(--muted);margin-top:12px;font-size:17px}.workspace-heading .sample{flex-shrink:0;font-size:14px}.editor-pair{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow:hidden}.editor{min-width:0}.editor+.editor{border-left:1px solid var(--line)}.editor label{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;font-weight:600;font-size:14px;min-height:60px;border-bottom:1px solid var(--line)}.label-mark{display:grid;place-items:center;font-size:14px;font-weight:600;width:26px;height:26px;border-radius:6px}.mark-a{background:var(--a)}.mark-b{background:var(--b)}textarea{width:100%;display:block;height:205px;padding:19px 22px;border:0;resize:vertical;line-height:1.8;font-size:16px;background:transparent;color:var(--ink);border-radius:0}textarea:focus-visible{outline-offset:-3px}textarea::placeholder{color:var(--muted)}.output-editor{background:var(--output)}input[type=checkbox]{accent-color:var(--accent);width:17px;height:17px;margin:0;flex-shrink:0}.action-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px;flex-wrap:wrap}.options{display:flex;gap:18px;flex-wrap:wrap}.options label{display:flex;align-items:center;gap:8px;font-size:14px;min-height:32px}.actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.hint{font-size:14px;color:var(--muted);margin-top:10px;max-width:75ch}.results-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:34px 0 17px}.results-heading p{font-size:14px;color:var(--muted);text-align:right}.set-visual{height:74px;display:flex;gap:5px;margin-bottom:25px}.set-visual>div{flex:1;min-width:64px;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-radius:4px;transition:flex-grow .7s var(--ease)}.set-visual span{font-size:14px;color:var(--ink)}.set-visual b{font-size:32px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.025em}.set-a{background:var(--a)}.set-both{background:var(--both)}.set-b{background:var(--b)}.result-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.result-group>div:first-child{display:flex;justify-content:space-between;gap:10px;align-items:center}.count{font-variant-numeric:tabular-nums;font-size:14px;background:var(--subtle);min-width:25px;padding:3px 6px;text-align:center;border-radius:5px}.result-group pre{font:14px/1.85 Instrument,Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0;padding:0;min-height:85px;max-height:260px;overflow:auto;color:var(--ink)}.result-actions{display:flex;gap:7px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:10px}.result-actions button{min-height:40px;font-size:14px;padding:7px 12px}.workspace-footer{border-top:1px solid var(--line);margin-top:35px;padding-top:15px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--muted);font-size:14px}.workspace-footer button{font-size:14px}.select-label,.range-label{display:grid;gap:10px;font-size:14px;font-weight:600}select,input[type=number],input:not([type]),input[type=text],input[type=search]{border:1px solid var(--control-border);border-radius:4px;background-color:var(--surface);color:var(--ink);padding:10px 12px;min-height:44px;max-width:100%;min-width:0}select{appearance:none;padding-inline-end:40px;background-image:var(--select-arrow);background-repeat:no-repeat;background-position:right 14px center;background-size:12px 12px}select:disabled{opacity:.48;cursor:default}.text-bottom{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-top:30px;flex-wrap:wrap}.text-bottom>p{font-size:14px;color:var(--muted)}.explanation{margin-top:40px;background:var(--subtle);border-radius:8px;padding:27px 32px;display:flex;align-items:center;gap:45px}.explanation svg{width:42%;flex-shrink:0;stroke:var(--diagram);stroke-width:3}.explanation p{font-size:14px;max-width:50ch;color:var(--ink)}.code-pair textarea{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:14px;line-height:1.7;height:335px;tab-size:2}.json-feedback{background:var(--both);padding:20px 24px;margin-top:30px;border-radius:8px;line-height:1.6;font-size:15px}.json-feedback.error{background:var(--error-surface);color:var(--error-ink)}.image-workspace{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:34px}.dropzone{min-height:335px;background:var(--subtle);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;border:1px dashed var(--control-border);border-radius:8px;position:relative;cursor:pointer;padding:25px;text-align:center}.dropzone svg{width:64px;margin-bottom:7px;color:var(--diagram)}.dropzone strong{font-size:20px;font-weight:500}.dropzone span{font-size:14px;max-width:32ch;color:var(--muted);line-height:1.6}.dropzone input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.dropzone:focus-within{outline:3px solid var(--focus);outline-offset:4px}.dropzone.dragging{background:var(--both)}.image-controls{display:grid;gap:23px;align-content:start}.image-controls .hint{margin:0}.image-controls input[type=range]{width:100%}.range-label>span{display:flex;justify-content:space-between;gap:10px}input[type=range]{accent-color:var(--accent);min-height:28px;margin:0;cursor:pointer}.image-stage{position:relative;height:335px;border-radius:8px;overflow:hidden;background:var(--subtle)}.image-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.image-stage>div{position:absolute;inset:0;clip-path:inset(0 50% 0 0);background:var(--subtle)}.image-preview{margin-top:20px}.image-preview .range-label{margin-top:10px}.preview-labels{display:flex;justify-content:space-between;margin-top:9px;font-size:14px;color:var(--muted)}.image-controls p[role=status]{font-size:14px;overflow-wrap:anywhere}.download-image{padding:13px 16px;background:var(--both);border-radius:4px;text-align:center;font-weight:600;text-decoration:none}.download-image:hover{background:var(--subtle)}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);padding:12px 20px;border-radius:10px;background:var(--rail);color:var(--rail-ink);box-shadow:0 5px 24px #0002;max-width:calc(100vw - 30px);font-size:14px;z-index:5;pointer-events:none}.toast:empty{display:none}*{scrollbar-color:var(--control-border) transparent;scrollbar-width:thin}
@media(min-width:1600px){.app-shell{border-right:1px solid var(--line);border-left:1px solid var(--line)}}
@media(max-width:1100px){.app-shell{grid-template-columns:185px minmax(0,1fr)}.rail{padding:30px 10px}.rail button{padding:12px;font-size:14px;gap:9px}main{padding:35px 28px 20px}.workspace-heading{align-items:start}.image-workspace{grid-template-columns:minmax(0,1fr) 205px;gap:22px}.options{gap:12px}.result-columns{gap:18px}}
@media(max-width:800px){.topbar{height:80px;padding:0 24px}.app-shell{display:block}.rail{min-height:0;padding:12px 18px}.rail nav{grid-template-columns:repeat(4,1fr);gap:5px}.rail button{justify-content:center;flex-direction:column;gap:8px;padding:12px 5px;font-size:14px;min-height:72px}.rail-note{display:none}main{padding:32px 24px 18px}.image-workspace{grid-template-columns:minmax(0,1fr) 220px}.top-actions{gap:16px}.workspace-heading p{font-size:15px}.set-visual>div{padding:12px 16px}}
@media(max-width:560px){.topbar{padding:0 18px}.brand b{font-size:20px}.brand svg{width:33px}.brand{gap:9px}.top-actions a{font-size:14px}.top-actions{gap:10px}.top-actions button{padding:8px 10px}.rail{padding:10px 12px}.rail nav{grid-template-columns:repeat(2,1fr);gap:6px}.rail button{flex-direction:row;justify-content:start;padding:11px 14px;min-height:48px;font-size:14px}.rail button svg{width:20px;height:20px}main{padding:28px 18px 18px}.workspace-heading{gap:12px;align-items:start;flex-wrap:wrap;margin-bottom:22px}.workspace-heading .sample{padding:5px 0;min-height:32px}.workspace-heading p{margin-top:9px}.editor-pair{grid-template-columns:1fr}.editor+.editor{border-left:0;border-top:1px solid var(--line)}.editor label{padding:12px 16px;min-height:50px}textarea{padding:14px 16px;height:150px;font-size:15px}.action-row{gap:14px}.action-row .actions{width:100%;justify-content:space-between}.action-row>.primary{width:100%}.options{gap:10px 16px}.set-visual{height:70px;gap:4px;margin-bottom:24px}.set-visual>div{padding:11px 13px;min-width:64px;gap:2px;flex-direction:column;align-items:start}.set-visual b{font-size:25px}.set-visual span{font-size:14px}.results-heading{display:block;margin-top:28px}.results-heading p{text-align:left;margin-top:8px}.result-columns{grid-template-columns:1fr;gap:25px}.result-group pre{min-height:0;max-height:180px;margin:10px 0}.result-actions{padding-top:8px}.text-bottom{align-items:start;gap:20px}.explanation{padding:22px;display:block;margin-top:30px}.explanation svg{width:100%;max-width:260px;margin-bottom:20px}.code-pair textarea{height:230px}.image-workspace{grid-template-columns:1fr;gap:28px}.dropzone{min-height:255px}.image-stage{height:280px}.image-controls{gap:20px}.workspace-footer{gap:15px;align-items:start}.workspace-footer p{max-width:18ch}.workspace-footer button{padding:5px 0;text-align:right}.json-feedback{padding:18px}.rail-note{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.compact-file{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:23px;background:var(--subtle);border-radius:8px;font-weight:600}.compact-file input{font-size:14px;max-width:100%;min-width:0}.compact-file input::file-selector-button{font:inherit;padding:12px 16px;border:1px solid var(--control-border);background:var(--surface);border-radius:4px;margin-right:14px;cursor:pointer}.fact-table{margin:25px 0;border-top:1px solid var(--line)}.fact-table>div{display:grid;grid-template-columns:minmax(100px,180px) minmax(0,1fr);gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.fact-table dt{color:var(--muted)}.fact-table dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap;font-variant-numeric:tabular-nums}.tool-message{margin-top:22px;font-size:14px;color:var(--muted);line-height:1.6}.scope-note{margin-top:28px;padding:22px 25px;background:var(--notice);border-radius:8px;font-size:14px;line-height:1.7;color:var(--notice-ink);max-width:85ch}.entropy-display{display:flex;align-items:center;gap:22px}.entropy-track{height:18px;border-radius:5px;background:var(--subtle);overflow:hidden;flex:1}.entropy-track i{display:block;height:100%;width:0;background:var(--chart);transition:width .7s var(--ease)}.entropy-display p{font-size:14px;min-width:115px}.report-tabs{display:flex;gap:7px;margin:28px 0 15px}.report-tabs button[aria-pressed=true]{background:var(--both)}.code-output{background:var(--output);padding:22px;border-radius:8px;overflow:auto;max-height:330px;font:14px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre;tab-size:2}.file-report>button{margin-top:18px}.metadata-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:22px 0}.metadata-fields label{display:grid;gap:9px;font-size:14px;font-weight:600;align-content:start}.metadata-fields input{min-height:44px;border:1px solid var(--control-border);background:var(--surface);border-radius:4px;padding:12px;min-width:0;width:100%}.metadata-fields textarea{border:1px solid var(--control-border);background:var(--surface);border-radius:4px;font-size:14px;height:100px}.check-line{display:flex;align-items:center;gap:10px;font-size:14px;min-height:44px}#metadata-form>.primary{margin-top:24px}.wide-input{display:block;font-size:14px;font-weight:600}.wide-input textarea{margin-top:14px;background:var(--surface);border:1px solid var(--control-border);border-radius:8px;height:120px;font-size:15px}.transform-select{max-width:360px;margin-bottom:24px}.rail-note{padding-top:35px}.rail button{font-size:14px}.rail nav{gap:5px}
@media(max-width:1100px){.rail button{font-size:14px;gap:9px;padding:12px 8px}.rail svg{width:21px;height:21px}}
@media(max-width:800px){.rail nav{grid-template-columns:repeat(4,minmax(0,1fr))}.rail button{font-size:14px;white-space:normal;min-height:64px}.rail-note{display:none}}
@media(max-width:560px){.rail nav{grid-template-columns:repeat(2,minmax(0,1fr))}.rail button{padding:8px 9px;min-height:44px;font-size:14px}.rail svg{width:18px;height:18px}.fact-table>div{grid-template-columns:1fr;gap:6px;padding:13px 0}.metadata-fields{grid-template-columns:1fr;gap:18px}.compact-file{padding:20px;gap:15px}.compact-file input{width:100%}.entropy-display{gap:12px}.entropy-display p{font-size:14px;min-width:95px}.scope-note{padding:18px 20px}.report-tabs button{font-size:14px}}

.dropzone.loaded{min-height:100px;flex-direction:column;flex-wrap:nowrap;gap:6px;padding:18px}.dropzone.loaded svg{display:none}.dropzone.loaded strong{font-size:15px}.dropzone.loaded span{font-size:14px;max-width:48ch}.mobile-privacy{display:none}
@media(max-width:800px){.mobile-privacy{display:block;margin-top:10px;font-size:14px;max-width:35ch!important}}
@media(hover:none){button:hover:not(:disabled){background:var(--surface)}button.primary:hover:not(:disabled){background:var(--accent)}button.subtle:hover{background:transparent}.rail button:hover:not([aria-current]){background:transparent!important}}

.metadata-fields :disabled{background:var(--subtle);color:var(--muted);opacity:1}.metadata-fields :disabled::placeholder{color:var(--muted);opacity:1}

.list-source-count{display:block;margin-top:3px;font-size:14px;font-weight:400;color:var(--muted)}
@media(max-width:800px){#workspace>.mobile-privacy{font-size:14px;margin:0 0 24px;max-width:65ch!important}}

.image-preview[data-state=original] .preview-labels{justify-content:flex-start}#image-source-summary{overflow-wrap:anywhere;max-width:none;margin-top:12px}

.editor-pair,.editor+.editor{border-color:var(--control-border)}button{border-color:var(--control-border)}.compact-file input::file-selector-button{border-color:var(--control-border)}

/* Shared identity and readable workbench geometry. */
body{font-size:16px;-webkit-font-smoothing:antialiased}
.topbar{height:80px;max-width:1600px;margin:auto;gap:20px}
.brand{gap:12px;min-width:0}.brand svg{width:36px;height:36px;flex-shrink:0}
.brand b{font-size:15px;letter-spacing:0;line-height:1.35}.brand small{font-size:14px;margin-top:1px}
.top-actions{gap:3px;flex-shrink:0}.top-actions a{display:inline-flex;align-items:center;min-height:44px;margin-right:22px}
.top-actions button{border:0;border-radius:0;min-width:44px;padding:8px;font-size:14px;font-weight:500}
#language{border-left:1px solid var(--line);padding-left:14px}#theme svg{width:20px;height:20px}
.rail{min-height:calc(100vh - 80px)}.rail button{white-space:normal;font-size:14px}.rail-note p{font-size:14px}
.rail #tools-menu{display:none}
.workspace-heading p{font-size:17px;line-height:1.6}.workspace-heading .sample{min-height:44px;padding:10px 12px;font-size:14px}
textarea,.wide-input textarea,.metadata-fields textarea,.metadata-fields input,select,input[type=number],input:not([type]),input[type=text],input[type=search]{font-size:16px}
.code-pair textarea{font-size:16px}.result-group pre{font-size:16px}
.options label{min-height:44px;font-size:14px}.result-actions button{min-height:44px;font-size:14px}
.hint,.scope-note,.tool-message{font-size:14px;line-height:1.7}
.explanation p{font-size:16px;line-height:1.7}.explanation{align-items:start}
.json-feedback{font-size:16px}.code-output{font-size:14px}
.workspace-footer{font-size:14px;flex-wrap:wrap}.workspace-footer nav{display:flex;gap:20px;margin-top:4px;flex-wrap:wrap}.workspace-footer a{display:inline-flex;align-items:center;min-height:44px}.workspace-footer p{max-width:none}.workspace-footer button{font-size:14px;min-height:44px;padding:10px 12px}
.set-visual span{font-size:14px}.set-visual>div{flex-wrap:wrap;gap:8px;min-height:74px}
.dropzone.loaded span{font-size:14px}.compact-file input{font-size:14px}
@media(max-width:1100px){.rail button{font-size:14px;gap:9px;padding:12px 8px}}
@media(max-width:800px){
 .topbar{height:80px;padding:0 24px}.rail{padding:12px 24px;border-bottom:1px solid var(--line)}
 .rail #tools-menu{display:flex;align-items:center;justify-content:space-between;flex-direction:row;width:100%;min-height:48px;gap:12px;background:var(--rail);color:var(--rail-ink);padding:8px 0;font-size:14px;border-radius:0}
 #tools-menu>span{color:var(--rail-muted)}#tools-menu strong{margin-left:auto;font-weight:500;text-align:right}#tools-menu svg{width:20px;height:20px}
 #tools-menu[aria-expanded="false"]+nav{display:none}.rail nav{grid-template-columns:repeat(2,minmax(0,1fr));margin:8px 0 4px;gap:6px}.rail nav button{flex-direction:row;justify-content:start;font-size:14px;min-height:48px;padding:12px;gap:10px}
 #workspace>.mobile-privacy{font-size:14px;margin-bottom:20px}
 .workspace-heading p{font-size:17px}
}
@media(max-width:560px){
 .topbar{padding:0 16px;gap:10px}.brand svg{width:30px;height:30px}.brand b{font-size:14px}.brand small{font-size:14px}.brand{gap:9px}.top-actions .portfolio-return{display:none}
 .rail{padding:8px 18px}.rail nav button{padding:10px 8px;white-space:normal}.rail nav svg{width:20px;height:20px}
 .workspace-heading .sample{min-height:44px;padding:10px 0}textarea{font-size:16px}.set-visual{height:auto;min-height:82px}.set-visual>div{min-width:0;flex:1;padding:12px 10px;gap:8px}.set-visual span{font-size:14px;line-height:1.3;overflow-wrap:anywhere}.set-visual b{font-size:25px}.results-heading p{font-size:14px}
 .entropy-display p{font-size:14px;min-width:0}.entropy-display{flex-wrap:wrap}.entropy-track{min-width:120px}
 .scope-note{padding:18px}.workspace-footer{gap:12px}.workspace-footer button{text-align:left}
}

/* A single category heading/count carries each result; the thin strip shows proportions. */
.set-visual{height:8px;min-height:8px;gap:4px;margin:0 0 22px}
.set-visual>div{min-height:8px;min-width:0;flex-basis:0;padding:0;border-radius:2px}
.set-visual span,.set-visual b{display:none}
.result-group[data-result=onlyA] .count{background:var(--a)}
.result-group[data-result=both] .count{background:var(--both)}
.result-group[data-result=onlyB] .count{background:var(--b)}
.scope-note,.tool-message{font-size:16px}
.file-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;margin-top:30px}
.file-summary>div{min-width:0}.file-summary .fact-table{margin:18px 0 0}
.file-digest{margin-top:18px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.file-digest-value{font:14px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;white-space:pre-wrap;margin:10px 0 0}
.file-entropy{margin-top:22px}.file-diagnostics .hint{max-width:65ch}
.metadata-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;margin-top:30px}
.metadata-layout[data-editable=false]{grid-template-columns:minmax(0,1fr)}
.metadata-inspection,.metadata-editor{min-width:0}.metadata-inspection .fact-table{margin-top:18px}
.metadata-inspection h3{font-size:18px;margin-top:28px}.metadata-editor .metadata-fields{grid-template-columns:1fr;gap:20px;margin-top:18px}
.metadata-editor .scope-note{margin-top:18px;padding:16px}
@media(max-width:1000px){.file-summary,.metadata-layout{grid-template-columns:minmax(0,1fr);gap:30px}.metadata-editor{border-top:1px solid var(--line);padding-top:28px}}
/* A collapsed chooser takes only its own row, never the desktop rail height. */
@media(max-width:800px){.rail{min-height:0}}
.compact-file input::file-selector-button,.wt-picker input::file-selector-button{min-height:44px}
/* Tool depth integration */
/* Add after the shared tool styles. Uses the existing brand tokens and type. */
.data-source-summary{font-size:14px;line-height:1.6;color:var(--muted);padding:0 22px 16px;overflow-wrap:anywhere}
.data-details{margin-top:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px 0}
.data-details>summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:16px;font-weight:600;line-height:1.4}
.data-details>summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.data-detail-body{padding:10px 0 22px;min-width:0}
.data-two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
.data-inspection{font:14px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto;margin:14px 0 20px;color:var(--ink);tab-size:2;unicode-bidi:plaintext}
.data-inspection:empty{display:none}
.data-subheading{margin-top:26px;font-size:17px;letter-spacing:normal}
.compact-subheading{font-size:16px;font-weight:600;letter-spacing:normal}
.data-join{margin-top:18px;max-width:40ch}
.data-selected-summary{font-size:14px;line-height:1.6;overflow-wrap:anywhere;margin:18px 0}
.data-inspector-actions{margin-top:18px}
.json-pointer-row{display:flex;gap:12px;align-items:end;flex-wrap:wrap}
.json-pointer-row label{flex:1;min-width:min(100%,220px)}
.json-pointer-row input{font:16px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;min-height:44px;padding:10px 12px;border:1px solid var(--control-border);border-radius:4px;background:var(--surface);color:var(--ink);width:100%;min-width:0}
.json-children{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.json-children button{text-align:left;overflow-wrap:anywhere;min-width:0;font-size:14px;line-height:1.6;unicode-bidi:plaintext}
.data-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0}
.data-pagination p{font-size:14px;text-align:center}
@media(max-width:560px){.data-source-summary{padding:0 16px 14px}.data-two-columns,.json-children{grid-template-columns:1fr}.data-pagination{flex-wrap:wrap}.data-pagination p{flex:1}.json-pointer-row>button{width:100%}.data-details{margin-top:20px}}

/* Additive depth controls use the established tool palette and type scale. */
.security-inline { display:flex; flex-wrap:wrap; align-items:end; gap:12px; margin-block:16px; }
.security-inline label { display:grid; gap:8px; min-width:0; flex:1 1 190px; }
.security-inline input,.security-inline select { width:100%; min-width:0; }
.security-details { margin-block:24px; padding-block:16px; border-block:1px solid var(--line); }
.security-details > summary { font:inherit; font-weight:600; cursor:pointer; min-height:44px; display:list-item; align-content:center; }
.security-details > :not(summary) { margin-top:16px; }
.query-occurrence { padding-block:24px; border-bottom:1px solid var(--line); }
.query-occurrence h3 { margin:0 0 16px; }
.query-occurrence .check-line { margin-top:16px; }
.query-occurrence .fact-table dd { overflow-wrap:anywhere; white-space:pre-wrap; }
.metadata-change-plan,.prepared-output { margin-top:28px; padding-top:20px; border-top:1px solid var(--line); }
.protected-reason,.field-error { display:block; }
.field-error:not(:empty) { color:var(--ink); font-weight:600; }
#file-string-select { max-width:100%; }
#file-counts,#file-window { font-variant-numeric:tabular-nums; }
#url-source,#url-normalized,#url-query,#url-edited,#encode-jwt-header,#encode-jwt-payload { white-space:pre-wrap; overflow-wrap:anywhere; }
#encode-jwt-duplicates { white-space:pre-wrap; overflow-wrap:anywhere; }
@media(max-width:520px) { .security-inline { align-items:stretch; } .security-inline label { flex-basis:100%; } }

/* Image details follow the shared tool typography and compact disclosures. */
.image-controls .image-dimension-option{display:flex;gap:10px;align-items:center;min-height:44px;font-size:16px}
.image-controls details{margin-top:18px;border-top:1px solid var(--line);padding-top:14px;min-width:0}
.image-controls summary{cursor:pointer;min-height:44px;font-size:16px}
.image-controls summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.image-controls .fact-table{margin-top:8px}
.image-controls .fact-table>div{grid-template-columns:minmax(0,1fr);gap:6px}
.image-controls #image-forecast{font-variant-numeric:tabular-nums}
.image-controls #quality-value{font-size:14px;font-weight:400}

.input-limit-message{margin-bottom:24px;padding:16px 0;border-bottom:1px solid var(--line);font-size:16px}
/* End tool depth integration */

/* Placeholder and selected-state contrast must survive both workbench themes. */
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
.report-tabs button[aria-pressed=true],.wt-timeline-heading button[aria-pressed=true],.wt-bin[aria-pressed=true]{box-shadow:inset 0 -3px var(--accent)}
.wt-event[aria-pressed=true]{box-shadow:inset 3px 0 var(--accent)}
/* Forced colors suppress shadows; retain a shape cue without replacing focus. */
@media(forced-colors:active){
 .rail button[aria-current]>span,.report-tabs button[aria-pressed=true],.wt-timeline-heading button[aria-pressed=true],.wt-bin[aria-pressed=true]>span,.wt-event[aria-pressed=true]>span{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
 .wt-bin i,.entropy-track,.entropy-track i{border:1px solid CanvasText}
}

/* Keep platform select indicators in forced colors. */
@media(forced-colors:active){select{appearance:auto;background-image:none;padding-inline-end:12px}select:disabled{opacity:1}}

/* Keep navigation available without giving the workspace a second scroll pane. */
:root{--tools-header-height:80px;--tools-scroll-offset:88px;scroll-padding-block-start:var(--tools-scroll-offset)}
.topbar{position:sticky;top:0;z-index:6;height:auto;min-height:80px;padding-block:12px;background:var(--paper)}
.rail{position:sticky;top:var(--tools-header-height);z-index:5;align-self:start;min-height:0;height:calc(100vh - var(--tools-header-height));height:calc(100dvh - var(--tools-header-height));overflow-y:auto;overscroll-behavior-y:contain;scroll-padding-block:8px}
.rail nav,.rail-note{flex-shrink:0}
#workspace :where(button,input,select,textarea,summary,a,[tabindex]){scroll-margin-block:8px}
.toast{z-index:8}
@media(max-width:800px){
 :root{--tools-header-height:64px;--tools-scroll-offset:129px}
 .topbar{min-height:64px;padding-block:9px}
 .rail{height:auto;max-height:calc(100vh - var(--tools-header-height) - 8px);max-height:calc(100dvh - var(--tools-header-height) - 8px);padding-block:4px;overflow:hidden}
 .rail #tools-menu{flex-shrink:0}
 .rail nav{min-height:0;flex-shrink:1;overflow-y:auto;overscroll-behavior-y:contain;scroll-padding-block:8px;padding:8px;margin:0 -8px}
}

/* The language link also works before JavaScript loads. */
.top-actions #language{margin-right:0;min-width:44px;padding:8px 8px 8px 14px;font-size:14px;font-weight:500;line-height:normal;justify-content:center;text-decoration:none}.top-actions #language:hover{background:var(--subtle)}
