/* A quiet, image-first workbench. Only the active task's controls are shown. */
.extraction-editor {width:min(1240px,calc(100vw - 32px));max-width:1240px;height:min(860px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);padding:0;overflow:hidden;box-sizing:border-box;background:#1b2320;color:#f1eee3;}
.extraction-editor[open]{display:flex;flex-direction:column;}
.extraction-editor [hidden]{display:none!important;}
.extraction-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 26px;border-bottom:1px solid #3a443e;flex:none;}
.extraction-heading .modal-kicker{font-size:10px;letter-spacing:2px;margin:0 0 6px;}
.extraction-heading h2{font-size:clamp(21px,2.5vw,29px);margin:0;line-height:1.15;}
.extraction-editor button{cursor:pointer;font:600 13px/1.35 Arial,sans-serif;min-height:38px;}
.extraction-editor button:disabled{opacity:.45;cursor:not-allowed;}
.extraction-editor button:focus-visible,.extraction-editor summary:focus-visible,.extraction-editor input:focus-visible,.extraction-editor select:focus-visible{outline:2px solid #cef17e;outline-offset:3px;}
.extraction-heading>button{padding:9px 16px;}
.extraction-layout{display:grid;grid-template-columns:250px minmax(0,1fr);flex:1;min-height:0;}
.extraction-controls{padding:20px;overflow:auto;border-right:1px solid #3a443e;overscroll-behavior:contain;}
.extraction-stage-tabs{display:flex;border-bottom:1px solid #465049;gap:14px;margin-bottom:22px;}
.extraction-stage-tabs button{border:0;background:none;color:#abb6ad;padding:0 0 11px;min-height:32px;}
.extraction-stage-tabs button[aria-pressed=true]{color:#d3f58c;border-bottom:2px solid #d3f58c;}
.extraction-field{display:grid;gap:8px;font:13px/1.4 Arial,sans-serif;margin:15px 0;color:#d2d7cf;}
.extraction-field select,.extraction-field input[type=text],.extraction-field input:not([type]),.extraction-field input[type=number]{box-sizing:border-box;width:100%;min-width:0;min-height:38px;border:1px solid #526057;background:#141c18;color:#f1eee3;padding:8px;font:14px Arial,sans-serif;border-radius:4px;}
.extraction-field input[type=range]{width:100%;min-width:0;accent-color:#cef17e;}
.extraction-hint,.extraction-editor small{font:12px/1.55 Arial,sans-serif;color:#b5c0b6;margin:10px 0;}
.extraction-paint-tools{display:flex;gap:5px;margin-top:20px;}
.extraction-paint-tools button{flex:1;min-width:0;padding:7px 4px;border:1px solid #526057;border-radius:4px;background:#1b2320;color:#f1eee3;}
.extraction-paint-tools button[aria-pressed=true]{border-color:#d3f58c;background:#34402a;}
.extraction-paint-tools button[data-guide=negative][aria-pressed=true]{background:#502c27;border-color:#ff826e;}
.extraction-link{border:0;background:none;color:#cbd6ca;padding:4px;text-decoration:underline;text-underline-offset:3px;}
.extraction-editor details{margin:14px 0;}
.extraction-editor summary{font:13px/1.5 Arial,sans-serif;cursor:pointer;color:#becbbd;padding:6px 0;}
.extraction-details-content{padding:2px 0 8px;}
.extraction-check{display:flex;gap:8px;align-items:flex-start;font:13px/1.5 Arial,sans-serif;margin:10px 0;}
.extraction-check input{accent-color:#cef17e;margin-top:3px;flex:none;}
.extraction-controls .primary-button,.extraction-controls .secondary-button{border-radius:4px;padding:10px 12px;}
.extraction-controls .full{width:100%;margin-top:12px;}
.extraction-size-row{display:flex;align-items:center;gap:8px;}.extraction-size-row input[type=number]{width:63px;flex:none;}
.extraction-refine-actions{display:grid;gap:8px;margin:20px 0;}
.extraction-history{display:flex;align-items:center;gap:7px;margin-top:24px;padding-top:16px;border-top:1px solid #3a443e;}
.extraction-history button{padding:7px 10px;}
.extraction-image-area{display:flex;flex-direction:column;min-width:0;min-height:0;background:#222b26;}
.extraction-view-tools{display:flex;align-items:center;gap:16px;flex-wrap:wrap;flex:none;padding:14px 18px;border-bottom:1px solid #3a443e;font:12px Arial,sans-serif;}
.extraction-view-tools label{display:flex;align-items:center;gap:6px;}.extraction-view-tools input{accent-color:#cef17e;}
.extraction-zoom{display:flex;align-items:center;gap:6px;margin-right:auto;}.extraction-zoom button{background:transparent;color:#e2e8de;border:1px solid #48564b;border-radius:4px;padding:4px 9px;min-height:30px;}.extraction-zoom output{min-width:40px;text-align:center;}
.extraction-view-tools select{padding:5px;border:1px solid #48564b;border-radius:4px;background:#1b2320;color:#e2e8de;max-width:130px;font:12px Arial,sans-serif;}
.extraction-comparison{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;flex:1;min-height:0;padding:16px;}
.extraction-comparison.single-view{grid-template-columns:minmax(0,1fr);}.extraction-comparison.single-view .extraction-source-pane{display:none;}
.extraction-comparison>section{display:flex;flex-direction:column;min-width:0;min-height:0;}
.extraction-comparison strong{font:12px/1.4 Arial,sans-serif;color:#bbc8bc;display:block;padding:0 0 10px;}
.extraction-viewport{position:relative;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;border:1px solid #425044;padding:14px;background:#18211c;box-sizing:border-box;}
.extraction-canvas-stack{position:relative;width:max-content;margin:auto;line-height:0;background:#fff conic-gradient(#d4d8d1 25%,#fff 0 50%,#d4d8d1 0 75%,#fff 0) 0 0/16px 16px;}
.extraction-canvas-stack>canvas{display:block;max-width:none;}
#extractionGuide,#extractionSourceGuide{position:absolute;inset:0;touch-action:none;cursor:crosshair;}
.extraction-comparison[data-background=white] .extraction-canvas-stack{background:#fff;}.extraction-comparison[data-background=dark] .extraction-canvas-stack{background:#111a15;}
#extractionBrushCursor{position:absolute;pointer-events:none;border:1px solid white;box-shadow:0 0 0 1px #111;border-radius:50%;transform:translate(-50%,-50%);z-index:3;}
.extraction-candidates{display:flex;gap:8px;overflow:auto;flex:none;padding:0 16px;max-height:110px;}.extraction-candidates:empty{display:none;}.extraction-candidates p{font-size:12px;}.extraction-candidate{display:grid;gap:4px;padding:6px;}.extraction-candidate canvas{width:70px;height:48px;object-fit:contain;}
.extraction-proposal{padding:12px;border:1px solid #899c6d;border-radius:4px;background:#293322;}.extraction-proposal strong{font:600 13px/1.4 Arial,sans-serif;}.extraction-proposal small{display:block;margin-bottom:0;}.extraction-proposal button{margin:4px 0;}
.extraction-footer{display:flex;align-items:center;gap:16px;justify-content:space-between;padding:14px 24px;border-top:1px solid #3a443e;flex:none;}.extraction-footer>div{min-width:0;}.extraction-footer p{font:13px/1.45 Arial,sans-serif;margin:0 0 3px;}.extraction-footer small{font-size:11px;margin:0;}.extraction-footer>button{padding:11px 20px;flex:none;border-radius:4px;}
#extractionServerPreview{display:block;max-width:100%;max-height:300px;margin:auto;}#extractionServerMeta{font-size:13px;}
@media(max-width:760px){.extraction-editor{width:calc(100vw - 12px);height:calc(100dvh - 12px);max-height:calc(100dvh - 12px);}.extraction-heading{padding:14px 16px;}.extraction-layout{grid-template-columns:190px minmax(0,1fr);}.extraction-controls{padding:12px;}.extraction-view-tools{gap:8px;padding:10px;}.extraction-backdrop-label>span{display:none;}.extraction-comparison{padding:10px;gap:8px;}.extraction-footer{padding:12px;gap:10px;}.extraction-footer>button{padding:10px 12px;}}
/* Unified workspace. Tools are always in the fixed ribbon, never below a canvas. */
.extraction-editor{width:min(1440px,calc(100vw - 24px));max-width:1440px;height:calc(100dvh - 24px);max-height:1000px;position:fixed;}
.extraction-heading{padding:12px 18px;gap:10px;}.extraction-heading h2{font-size:20px;}.extraction-heading .modal-kicker{font-size:9px;margin-bottom:3px;}
#workspaceHistory{display:flex;gap:5px;margin-left:auto;}#workspaceHistory button{width:34px;min-height:34px;padding:3px;font-size:22px;background:transparent;color:#eee;border:1px solid #48554c;border-radius:4px;text-decoration:none;}
.workspace-tools{display:flex;align-items:center;gap:5px;padding:9px 16px;border-bottom:1px solid #3a443e;flex:none;flex-wrap:wrap;}
.workspace-tools button,.workspace-popover button,#workspaceSelectedActions button{border:1px solid #4a574d;border-radius:4px;background:#202a24;color:#eee;padding:6px 10px;min-height:33px;}
.workspace-tools button[aria-pressed=true]{border-color:#c9f27b;background:#303d28;color:#d5f799;}
#workspaceActiveTool{margin-left:auto;font:12px Arial,sans-serif;color:#c4cfc1;}
.extraction-layout{grid-template-columns:230px minmax(0,1fr);overflow:hidden;}.extraction-controls{padding:14px;overflow:hidden;}
.extraction-stage-tabs,.extraction-controls>.extraction-history,#extractionExtractControls,#extractionRefineControls{display:none!important;}
.workspace-methods{display:grid;gap:7px;}.workspace-methods button{padding:10px;text-align:left;border:1px solid #47544b;background:transparent;color:#eee;border-radius:5px;line-height:1.35;min-height:56px;}
.workspace-methods button small{display:block;font:11px/1.4 Arial,sans-serif;margin:3px 0 0;color:#aebbaf;}.workspace-methods button[aria-pressed=true]{background:#eceddf;color:#182119;border-color:#eceddf;}.workspace-methods button[aria-pressed=true] small{color:#4a5b4b;}
#workspaceMethodBody .extraction-field{margin:12px 0;}#workspaceMethodBody .extraction-hint{font-size:11px;line-height:1.4;}#workspaceMethodBody .full{margin-top:10px;}#workspaceMethodBody input{font-size:13px;}
.extraction-view-tools{padding:9px 12px;gap:8px;}.extraction-view-tools label:has(#extractionOriginal){display:none;}.extraction-comparison{padding:12px;gap:12px;}
.extraction-image-area{min-height:0;}.extraction-viewport{padding:10px;}.extraction-comparison strong{font-weight:600;padding-bottom:7px;}
.extraction-footer{padding:10px 16px;min-height:54px;box-sizing:border-box;}.extraction-footer p{font-size:12px;}.extraction-footer>div{flex:1;}.extraction-footer>button{white-space:nowrap;}
.workspace-popover{position:absolute;z-index:20;top:120px;left:248px;width:300px;max-width:calc(100% - 28px);box-sizing:border-box;background:#1b241e;border:1px solid #63715e;border-radius:8px;box-shadow:0 12px 40px #0009;padding:13px;}
.workspace-popover header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;font:600 14px Arial,sans-serif;}.workspace-popover header button{min-height:28px;padding:2px 8px;}
.workspace-popover p,.workspace-popover small{font:12px/1.45 Arial,sans-serif;color:#bac6b9;margin:6px 0;}.workspace-popover label{font-size:12px;}.workspace-popover .extraction-field{margin:8px 0;gap:4px;}
.workspace-popover .extraction-field select,.workspace-popover .extraction-field input[type=number]{min-height:32px;padding:5px;}.workspace-popover .extraction-paint-tools{margin:8px 0;display:grid;grid-template-columns:1fr 1fr;}.workspace-popover .extraction-refine-actions{margin:9px 0;gap:5px;}.workspace-popover .extraction-refine-actions button{padding:6px;min-height:32px;}
.workspace-field{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0;font:12px Arial,sans-serif;}.workspace-field textarea{width:100%;resize:none;box-sizing:border-box;background:#111c15;color:#eee;border:1px solid #596953;padding:7px;font:14px Arial,sans-serif;}.workspace-field select,.workspace-field input[type=number]{background:#111c15;color:#eee;border:1px solid #596953;padding:7px;min-width:0;width:150px;}.workspace-field input[type=color]{width:42px;height:32px;padding:2px;background:#111c15;border:1px solid #596953;}
#workspaceRepair:has(#extractionProposal:not([hidden])) #workspaceRepairFields>*:not(#extractionProposal){display:none;}
#workspaceSelectedActions{position:absolute;right:22px;bottom:86px;display:flex;gap:6px;z-index:5;}#workspaceSelectedActions[hidden]{display:none;}
#workspaceMobileView{display:none;}
@media(max-height:720px) and (min-width:641px){.workspace-methods button{min-height:45px;padding:7px;}.extraction-heading{padding:8px 14px;}#workspaceMethodBody .extraction-field{margin:8px 0;}#workspaceMethodBody .extraction-hint{font-size:10px;}.workspace-popover{top:105px;}.extraction-footer p{max-width:90ch;}}
@media(max-width:640px){
 .extraction-editor{width:calc(100vw - 8px);height:calc(100dvh - 8px);max-height:calc(100dvh - 8px);}.extraction-heading{padding:8px;gap:5px;}.extraction-heading h2{font-size:16px;max-width:150px;}.extraction-heading .modal-kicker{display:none;}.extraction-heading>button{padding:4px 8px;}#workspaceHistory{gap:3px;}#workspaceHistory button{width:29px;min-height:31px;font-size:20px;}
 .workspace-tools{display:grid;grid-template-columns:repeat(4,1fr);padding:6px;gap:4px;}.workspace-tools button{padding:5px 3px;font-size:12px;min-height:31px;}#workspaceActiveTool{display:none;}
 .extraction-layout{display:flex;flex-direction:column;overflow:hidden;}.extraction-controls{padding:7px;flex:none;border-right:0;border-bottom:1px solid #3a443e;}.workspace-methods{grid-template-columns:repeat(3,1fr);gap:5px;}.workspace-methods button{font-size:11px;padding:6px;min-height:48px;}.workspace-methods button small{font-size:9px;}
 #workspaceMethodBody{display:flex;flex-wrap:wrap;align-items:center;gap:5px 8px;}#workspaceMethodBody>.extraction-field{flex:1;margin:5px 0;display:block;font-size:10px;}#workspaceMethodBody>.extraction-field select{font-size:12px;min-height:30px;padding:4px;margin-top:3px;}#workspaceMethodBody>.extraction-hint{display:none;}#workspaceMethodBody>.full{width:auto;flex:1;margin:3px 0 0;min-height:32px;font-size:12px;padding:6px;}#extractionAiOptions{flex-basis:100%;}#extractionAiOptions label{display:flex;margin:3px 0;font-size:11px;}#extractionAiOptions input{flex:1;min-height:29px;}#extractionTextCost{font-size:10px;margin:0;}
 .extraction-image-area{flex:1;min-height:0;}.extraction-comparison{min-height:0;grid-template-columns:1fr;padding:6px;}.extraction-comparison[data-mobile=result]>.extraction-source-pane{display:none;}.extraction-comparison[data-mobile=original]>section:not(.extraction-source-pane){display:none;}.extraction-view-tools{padding:5px 7px;gap:5px;}.extraction-view-tools select{max-width:95px;font-size:11px;}#workspaceMobileView{display:block;padding:4px 6px;min-height:28px;font-size:11px;background:transparent;border:1px solid #5c6959;color:#eee;}.extraction-zoom{gap:2px;}.extraction-zoom button{padding:3px 6px;}.extraction-zoom output{min-width:32px;}
 .extraction-footer{padding:7px;gap:7px;min-height:60px;}.extraction-footer p{font-size:10px;line-height:1.3;max-height:39px;overflow:hidden;}.extraction-footer small{font-size:9px;}.extraction-footer>button{padding:8px;font-size:12px;}
 .workspace-popover{top:133px;left:12px;width:calc(100% - 24px);max-width:360px;padding:10px;}#workspaceSelectedActions{bottom:74px;right:12px;}.extraction-viewport{padding:6px;}
}
