:root{color-scheme:light;--bg: #f5f5f1;--ink: #171715;--muted: #6d6a61;--line: #dad7cf;--panel: #fbfaf6;--panel-2: #eeece5;--control: #fffefb;--control-hover: #f0eee7;--control-border-hover: #bbb6aa;--drag-overlay: rgba(245, 245, 241, .86);--stage-bg: #f7f6f1;--stage-check: #e7e5dd;--preview-shadow: rgba(35, 33, 28, .16);--drop-border: #aaa499;--drop-bg: rgba(251, 250, 246, .78);--accent: oklch(.525 .223 3.958);--accent-hover: oklch(.455 .223 3.958);--accent-soft: oklch(.95 .035 3.958);--accent-ink: #ffffff;--danger: #a64035;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{color-scheme:dark;--bg: #12110f;--ink: #f4f0e8;--muted: #aaa39a;--line: #34302b;--panel: #191714;--panel-2: #26221e;--control: #211e1a;--control-hover: #2d2924;--control-border-hover: #514a42;--drag-overlay: rgba(18, 17, 15, .88);--stage-bg: #100f0d;--stage-check: #25221e;--preview-shadow: rgba(0, 0, 0, .45);--drop-border: #5e564c;--drop-bg: rgba(25, 23, 20, .84);--accent: oklch(.525 .223 3.958);--accent-hover: oklch(.455 .223 3.958);--accent-soft: oklch(.25 .06 8);--accent-ink: #ffffff;--danger: #ef8b7f}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,select{font:inherit;accent-color:var(--accent);border-radius:10px}button{min-height:38px;border:1px solid var(--line);background:var(--control);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;cursor:pointer;transition:background .14s ease,border-color .14s ease,transform .14s ease}button:hover:not(:disabled){background:var(--control-hover);border-color:var(--control-border-hover)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.42}button:focus-visible,input:focus-visible,select:focus-visible{border-color:var(--accent);outline:2px solid color-mix(in oklch,var(--accent) 32%,transparent);outline-offset:0}button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}select,input[type=number]{width:100%;min-height:38px;border:1px solid var(--line);background:var(--control);color:var(--ink);padding:0 10px}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:34px;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.app{height:100svh;display:grid;grid-template-rows:auto 1fr;overflow:hidden}.app.is-dragging:after{content:"Drop to load image";position:fixed;top:14px;right:14px;bottom:14px;left:14px;z-index:10;display:grid;place-items:center;border:2px dashed var(--accent);border-radius:10px;background:var(--drag-overlay);color:var(--accent);font-size:24px;font-weight:760}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 18px;border-bottom:1px solid var(--line)}h1{margin:0;font-size:20px;font-weight:500;line-height:1;letter-spacing:0}.top-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.top-actions>button:not(.primary,.upload-new){width:38px;padding:0}.upload-new{white-space:nowrap}.theme-toggle{color:var(--accent)}.format-select{width:auto;min-width:88px}.top-quality{min-height:38px;display:grid;grid-template-columns:auto minmax(90px,140px) auto;align-items:center;gap:8px;color:var(--muted);font-size:12px}.top-quality b{min-width:34px;color:var(--ink);font-weight:650;text-align:right}.hidden-input{display:none}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:18px;background:color-mix(in srgb,var(--bg) 72%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.svg-dialog{width:min(420px,100%);display:grid;gap:14px;padding:18px;border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:0 24px 60px var(--preview-shadow)}.svg-dialog h2{margin:0;font-size:18px;line-height:1.2;letter-spacing:0}.svg-dialog p{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.svg-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.workspace{min-height:0;height:100%;display:grid;grid-template-columns:290px minmax(0,1fr)}.panel{min-height:0;overflow:auto;padding:16px;background:var(--panel)}.tools{height:100%;border-right:1px solid var(--line);overscroll-behavior:contain}button.active-tool{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.tool{padding:14px 0;display:grid;gap:10px}.tool+.tool{border-top:1px solid var(--line)}.tool:first-child{padding-top:0}.tool h2{margin:0;font-size:13px;line-height:1.2}.tool-toggle{width:100%;min-height:26px;border:0;background:transparent;display:flex;justify-content:space-between;padding:0;color:var(--ink);font-size:13px;font-weight:700}.tool-toggle:hover:not(:disabled){background:transparent;border-color:transparent}.tool-toggle span{display:flex;align-items:center;gap:8px}.tool-chevron{color:var(--muted);transition:transform .14s ease}.tool.is-collapsed .tool-chevron{transform:rotate(-90deg)}.tool-body{display:grid;gap:10px}.row{display:grid;gap:8px}.row.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:grid;gap:5px;color:var(--muted);font-size:12px}.field span,.range span{font-weight:680}.color-field input{width:100%;min-height:38px;padding:3px;border:1px solid var(--line);background:var(--control)}.check{display:flex;align-items:center;gap:2px;color:var(--muted);font-size:13px}.range{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;color:var(--muted);font-size:12px}.range b{color:var(--ink);font-weight:650;min-width:42px;text-align:right}.icon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.stage-wrap{min-width:0;min-height:0;display:grid}.stage{min-height:0;position:relative;display:grid;place-items:center;overflow:auto;padding:10px;background-color:var(--stage-bg);background-image:linear-gradient(45deg,var(--stage-check) 25%,transparent 25%),linear-gradient(-45deg,var(--stage-check) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--stage-check) 75%),linear-gradient(-45deg,transparent 75%,var(--stage-check) 75%);background-position:0 0,0 12px,12px -12px,-12px 0;background-size:24px 24px}.preview-shell{position:relative;z-index:1;align-self:start;justify-self:start;display:inline-block;line-height:0}.preview-shell.cropping{cursor:crosshair}.preview{display:block;box-shadow:0 20px 50px var(--preview-shadow);background:transparent;animation:appear .22s ease both;touch-action:none;-webkit-user-select:none;user-select:none}.preview.drawing,.preview.erasing{cursor:crosshair}.preview.picking{cursor:cell}.preview.cropping{cursor:crosshair}.crop-marquee{position:absolute;z-index:2;min-width:8px;min-height:8px;border:2px solid #ffffff;outline:1px solid var(--accent);background:repeating-linear-gradient(90deg,rgba(255,255,255,.34) 0 1px,transparent 1px 33.333%),repeating-linear-gradient(0deg,rgba(255,255,255,.34) 0 1px,transparent 1px 33.333%);box-shadow:0 0 0 9999px #0f0e0c47;cursor:move;pointer-events:auto}.crop-handle{position:absolute;width:9px;height:9px;border-radius:50%;background:#fff;border:1px solid var(--accent);pointer-events:auto}.crop-handle.nw{left:-6px;top:-6px;cursor:nwse-resize}.crop-handle.ne{right:-6px;top:-6px;cursor:nesw-resize}.crop-handle.sw{left:-6px;bottom:-6px;cursor:nesw-resize}.crop-handle.se{right:-6px;bottom:-6px;cursor:nwse-resize}.drop-target{position:relative;z-index:1;align-self:start;width:min(520px,80%);margin-top:clamp(32px,8svh,72px);aspect-ratio:1.7;display:grid;place-items:center;align-content:center;gap:12px;border:1px dashed var(--drop-border);color:var(--muted);background:var(--drop-bg)}@keyframes appear{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 1100px){.workspace{grid-template-columns:290px minmax(0,1fr)}}@media (max-width: 760px){.app{height:auto;min-height:100svh;overflow:visible}.topbar{align-items:flex-start;flex-direction:column}.top-actions{width:100%;justify-content:flex-start}.top-actions .primary{flex:1}.top-quality{width:100%;grid-template-columns:auto 1fr auto}.svg-dialog-actions{display:grid;grid-template-columns:1fr}.workspace{grid-template-columns:1fr}.tools{height:auto;border:0;border-bottom:1px solid var(--line);max-height:none}.stage-wrap{min-height:60svh}}
