.tool-shell{padding-block:2rem 5rem}.tool-workspace{border:2px solid var(--ink);background:var(--ink);grid-template-columns:minmax(18rem,.8fr) minmax(22rem,1.2fr);gap:2px;display:grid}.tool-panel{background:var(--surface);min-width:0;padding:clamp(1.25rem,3vw,2rem)}.tool-panel h2{margin:0 0 1rem;font-size:1.25rem}.dropzone{border:2px dashed var(--line);border-radius:var(--radius-md);background:var(--paper);text-align:center;cursor:pointer;place-items:center;min-height:13rem;padding:1.5rem;display:grid;position:relative}.dropzone:hover,.dropzone.is-dragging{border-color:var(--accent);background:var(--accent-soft)}.dropzone input{opacity:0;width:1px;height:1px;position:absolute}.drop-icon{border:2px solid var(--ink);background:var(--signal);border-radius:50%;place-items:center;width:3.25rem;height:3.25rem;margin:0 auto .75rem;font-size:1.5rem;font-weight:900;display:grid}.dropzone strong{font-size:1.1rem;display:block}.dropzone small{color:var(--ink-soft);margin-top:.4rem;display:block}.file-list{gap:.5rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.file-row{border-block-end:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem;display:grid}.file-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.file-meta{font-family:var(--font-mono);color:var(--ink-soft);font-size:.76rem}.row-actions{gap:.25rem;display:flex}.icon-button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:50%;min-width:2.75rem;min-height:2.75rem}.icon-button:hover{border-color:var(--ink)}.settings{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.field{gap:.4rem;display:grid}.field-wide{grid-column:1/-1}.field label,.field legend{font-size:.9rem;font-weight:800}.field input,.field select{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;width:100%;min-height:3rem;padding:.6rem .75rem}.field input:focus,.field select:focus{border-color:var(--focus)}.field-note{color:var(--ink-soft);margin:0;font-size:.8rem}.segmented{border:1px solid var(--line);border-radius:var(--radius-sm);grid-template-columns:repeat(3,1fr);padding:.2rem;display:grid}.segmented label{cursor:pointer;border-radius:.35rem;place-items:center;min-height:2.6rem;padding:.4rem;display:grid;position:relative}.segmented input{opacity:0;position:absolute}.segmented label:has(input:checked){background:var(--ink);color:#fff}.action-row{gap:.75rem;margin-top:1.5rem;display:flex}.action-row .button-primary{flex:1}.notice{border-inline-start:4px solid var(--signal-dark);background:color-mix(in oklch, var(--signal) 30%, white);margin-block:1rem;padding:.8rem 1rem;font-size:.88rem}.error-box{border:2px solid var(--danger);background:var(--danger-soft);margin-block:1rem;padding:1rem}.error-box strong{display:block}.error-box ul{margin:.5rem 0 0;padding-inline-start:1.25rem}.progress-box{background:var(--paper);border:1px solid var(--line);margin-top:1.5rem;padding:1rem}.progress-track{background:var(--paper-deep);border-radius:99px;height:.55rem;margin-top:.75rem;overflow:hidden}.progress-fill{background:var(--accent);transform-origin:0;height:100%}.result{border-block-start:2px solid var(--ink);margin-top:1.5rem;padding-top:1.5rem}.result-preview{background-color:var(--paper);background-image:linear-gradient(45deg, var(--paper-deep) 25%, transparent 25%), linear-gradient(-45deg, var(--paper-deep) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--paper-deep) 75%), linear-gradient(-45deg, transparent 75%, var(--paper-deep) 75%);border:1px solid var(--line);background-position:0 0,0 .75rem,.75rem -.75rem,-.75rem 0;background-size:1.5rem 1.5rem;place-items:center;min-height:16rem;padding:1rem;display:grid}.result-preview img{object-fit:contain;max-height:28rem}.result-stats{border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-block:1rem;display:grid}.result-stats div{padding:.75rem}.result-stats div+div{border-inline-start:1px solid var(--line)}.result-stats dt{color:var(--ink-soft);font-size:.78rem}.result-stats dd{margin:.2rem 0 0;font-weight:900}.empty-preview{min-height:24rem;color:var(--ink-soft);text-align:center;place-items:center;display:grid}.empty-preview span{font-family:var(--font-mono);color:var(--line);font-size:3rem;display:block}@media (width<=50rem){.tool-workspace{grid-template-columns:1fr}.empty-preview{min-height:12rem}}@media (width<=34rem){.settings{grid-template-columns:1fr}.field-wide{grid-column:auto}.result-stats{grid-template-columns:1fr}.result-stats div+div{border-inline-start:0;border-block-start:1px solid var(--line)}.action-row{z-index:5;padding:.75rem 0 calc(.75rem + env(safe-area-inset-bottom));background:var(--surface);position:sticky;bottom:0}}
