:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0e1112;color:#e8ece9;font-synthesis:none;text-rendering:geometricPrecision}*{box-sizing:border-box}body{margin:0;min-width:1080px;min-height:100vh;background:linear-gradient(180deg,rgba(39,47,46,.42),transparent 34%),#0d1011;-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{border:0;cursor:pointer;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.48}.app-shell{height:100vh;display:grid;grid-template-rows:68px minmax(0,1fr) 42px;overflow:hidden}.topbar,.statusbar{display:flex;align-items:center;border-color:#ffffff17;background:#0c0f10eb}.topbar{gap:18px;padding:0 max(18px,env(safe-area-inset-right)) 0 max(18px,env(safe-area-inset-left));border-bottom:1px solid rgba(255,255,255,.1)}.brand{min-width:276px;display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(35,208,229,.62);color:#28d4e7;background:#121819;font-weight:800;font-size:12px;letter-spacing:0}h1,h2,p{margin:0}.brand h1{text-transform:uppercase;font-size:22px;letter-spacing:2px;line-height:1}.brand p{margin-top:4px;color:#8e9a99;font-size:11px;text-transform:uppercase;letter-spacing:1px}.primary{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:38px;padding:0 16px;border-radius:3px;color:#061113;background:#22c5d9;font-weight:800;font-size:12px;text-transform:uppercase;box-shadow:inset 0 -1px #00000059,0 0 0 1px #ffffff14}.primary.ghost{color:#28d4e7;background:transparent;border:1px solid rgba(40,212,231,.62)}.primary.secondary{color:#dce9e9;background:#1f2a2c}.primary.wide{width:100%}.metric{min-width:70px;display:grid;gap:3px}.metric span,.top-control span,.field>span,.panel-title span,.statusbar{color:#9aa5a4;font-size:11px;text-transform:uppercase}.metric strong{font-size:16px}.top-control,.zoom-box{display:flex;align-items:center;gap:10px}.toggle{width:43px;height:22px;padding:2px;border-radius:999px;background:#2b3333}.toggle span{display:block;width:18px;height:18px;border-radius:50%;background:#778282;transition:transform .16s ease,background .16s ease}.toggle.on span{transform:translate(21px);background:#26d1e3}.zoom-box{padding:0 8px;height:38px;border:1px solid rgba(255,255,255,.1);background:#131819}.zoom-box button,.canvas-actions button,.canvas-footer button{display:grid;place-items:center;width:28px;height:28px;color:#c4cfcc;background:transparent}.workspace{min-height:0;display:grid;grid-template-columns:348px minmax(580px,1fr) 360px;gap:4px;padding:4px}.panel{min-height:0;border:1px solid rgba(255,255,255,.08);background:#121718e0}.library,.inspector{overflow:hidden auto}.panel-title{height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 12px;border-bottom:1px solid rgba(255,255,255,.08)}.panel-title div{display:flex;align-items:center;gap:8px}.panel-title h2{font-size:12px;text-transform:uppercase;letter-spacing:.6px}.mode-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;padding:12px}.mode{height:34px;display:flex;align-items:center;gap:7px;padding:0 10px;color:#d2dcda;background:#1d2425;border:1px solid rgba(255,255,255,.08);border-radius:3px;font-weight:700;font-size:11px;text-transform:uppercase}.mode.active{color:#23d3e8;border-color:#23d3e8a6;background:#23d3e81f}.drop-zone{margin:0 12px 12px;height:70px;display:grid;place-items:center;gap:4px;color:#bec9c7;border:1px dashed rgba(255,255,255,.2);background:#0000001f;font-size:13px}.compact-drop{height:58px}.thumb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0 12px 12px}.thumb{position:relative;aspect-ratio:1;overflow:hidden;padding:0;background:#111;border:2px solid transparent}.thumb.selected{border-color:#24d2e7}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb span{position:absolute;right:4px;bottom:4px;padding:2px 4px;color:#0a1011;background:#e8e0c7;font-size:10px;font-weight:800}.canvas-panel{display:grid;grid-template-rows:44px 28px minmax(0,1fr) 54px;overflow:hidden}.canvas-head,.canvas-actions,.canvas-footer{display:flex;align-items:center}.canvas-head{justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08)}.canvas-head .panel-title{flex:1;border:0}.canvas-actions{padding-right:12px;gap:4px}.icon-active{color:#24d2e7!important}.ruler{display:grid;grid-template-columns:repeat(6,1fr);align-items:center;padding:0 9%;color:#b4bebc;font-size:12px}.canvas-stage{min-height:0;display:grid;place-items:center;overflow:auto;background:radial-gradient(circle at 50% 45%,rgba(54,77,78,.24),transparent 38%),#111617}.canvas-stage canvas{width:min(var(--canvas-size),calc(100% - 28px),calc(100svh - 190px));height:auto;aspect-ratio:1;display:block;image-rendering:auto;box-shadow:0 22px 60px #0000006b}.canvas-footer{justify-content:center;gap:12px;border-top:1px solid rgba(255,255,255,.08);background:#121718}.canvas-footer input{width:190px;accent-color:#22c5d9}.canvas-footer span{color:#9aa5a4;font-size:12px}.inspector{padding-bottom:14px}.field{display:grid;gap:8px;padding:12px;border-bottom:1px solid rgba(255,255,255,.07)}.select-value{height:34px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;color:#dce5e3;background:#202728;border:1px solid rgba(255,255,255,.1)}.spec-card,.qa-card,.selected-card,.style-card{margin:12px;padding:12px;background:#171d1e;border:1px solid rgba(255,255,255,.08)}.spec-card{display:grid;gap:10px}.spec-card div{display:flex;justify-content:space-between;gap:10px}.spec-card span,.selected-card span{color:#98a4a2;font-size:12px}.spec-card strong,.selected-card strong{font-size:13px}.segmented{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;padding:3px;background:#111617;border:1px solid rgba(255,255,255,.08)}.segmented.three{grid-template-columns:repeat(3,1fr)}.segmented button{height:30px;color:#acb7b5;background:transparent;font-size:12px;font-weight:700}.segmented button.active{color:#081113;background:#25cadf}.check{display:flex;align-items:center;gap:8px;color:#d6dfdd;font-size:13px}.check input{accent-color:#25cadf}.qa-card h2,.selected-card h2,.style-card h2{margin-bottom:10px;font-size:12px;text-transform:uppercase}.style-card{display:grid;gap:10px}.palette-row{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.palette-row span{height:24px;border:1px solid rgba(255,255,255,.18)}.recipe-chips{display:flex;flex-wrap:wrap;gap:6px}.recipe-chips span{padding:5px 7px;color:#d3ddda;background:#222a2b;border:1px solid rgba(255,255,255,.08);font-size:11px}.style-card textarea{width:100%;min-height:78px;resize:vertical;padding:9px;color:#edf4f2;background:#101516;border:1px solid rgba(255,255,255,.12);outline:0;line-height:1.4;font-size:12px}.style-card textarea:focus{border-color:#25cadfbd}.check-row{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;padding:7px 0;border-top:1px solid rgba(255,255,255,.06);font-size:13px}.check-row strong{color:#9aa5a4;font-size:12px}.ok{color:#62c95a}.warn{color:#f0b54e}.selected-card{display:grid;gap:8px}.selected-card img{width:100%;aspect-ratio:1.8;object-fit:cover;border:1px solid rgba(255,255,255,.08)}.export-stack{display:grid;gap:8px;padding:0 12px}.export-stack.compact{padding:0}.extractor-card{display:grid;gap:10px;margin:12px;padding:12px;background:#171d1e;border:1px solid rgba(255,255,255,.08)}.source-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;min-height:48px}.source-thumb{aspect-ratio:1;overflow:hidden;padding:0;background:#0c1112;border:2px solid transparent}.source-thumb.selected{border-color:#24d2e7}.source-thumb img,.isolated-item img{width:100%;height:100%;object-fit:cover;display:block}.empty-source{grid-column:1 / -1;display:grid;place-items:center;min-height:48px;color:#8f9b99;background:#111617;border:1px dashed rgba(255,255,255,.16);font-size:12px}.grid-preview{position:relative;overflow:hidden;aspect-ratio:var(--source-ratio, 1.35);background:#0b0f10;border:1px solid rgba(255,255,255,.1)}.grid-preview img{width:100%;height:100%;object-fit:fill;display:block}.crop-box,.sample-box{position:absolute;left:var(--crop-x);top:var(--crop-y);width:var(--crop-w);height:var(--crop-h);pointer-events:none}.crop-box{border:1px dashed rgba(255,255,255,.82)}.sample-box{left:var(--sample-x);top:var(--sample-y);width:var(--sample-w);height:var(--sample-h);border:2px solid #25cadf;box-shadow:0 0 0 999px #00000038}.extract-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.number-field{display:grid;gap:5px}.number-field span{color:#9aa5a4;font-size:10px;text-transform:uppercase}.number-field input{width:100%;height:32px;padding:0 8px;color:#edf4f2;background:#101516;border:1px solid rgba(255,255,255,.12);outline:0}.number-field input:focus{border-color:#25cadfbd}.isolated-list{display:grid;gap:7px;margin:0 12px 12px}.isolated-item{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:9px;min-height:56px;padding:4px;color:#dce5e3;background:#171d1e;border:1px solid rgba(255,255,255,.08);text-align:left}.isolated-item img{aspect-ratio:1}.isolated-item span{overflow:hidden;text-overflow:ellipsis;color:#cfd8d6;font-size:12px;white-space:nowrap}.statusbar{justify-content:space-between;gap:20px;padding:0 18px;border-top:1px solid rgba(255,255,255,.08)}.hidden-input{display:none}@media(max-width:1366px){body{min-width:0}.app-shell{height:auto;min-height:100svh;overflow:visible;grid-template-rows:auto auto auto}.topbar{min-height:68px;height:auto;flex-wrap:wrap;gap:10px;padding-top:calc(10px + env(safe-area-inset-top));padding-bottom:10px}.brand{min-width:240px;margin-right:auto}.brand h1{font-size:19px}.primary{min-height:42px;padding:0 13px}.workspace{grid-template-columns:minmax(250px,300px) minmax(0,1fr);grid-template-areas:"library canvas" "inspector inspector"}.library{grid-area:library}.canvas-panel{grid-area:canvas;min-height:620px}.inspector{grid-area:inspector;display:block;overflow:visible}.statusbar{min-height:42px;height:auto;flex-wrap:wrap;padding-top:10px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}}@media(max-width:1180px){body{min-width:0}.app-shell{height:auto;min-height:100vh;overflow:visible;grid-template-rows:auto auto auto}.topbar{flex-wrap:wrap;padding:calc(12px + env(safe-area-inset-top)) 12px 12px}.workspace{grid-template-columns:1fr;grid-template-areas:"canvas" "library" "inspector";gap:6px}.library,.inspector{max-height:none}.inspector{display:block}.canvas-panel{min-height:620px}}@media(max-width:820px){.topbar{align-items:stretch}.brand{flex:1 1 100%;min-width:0}.metric{min-width:calc(50% - 5px);padding:8px 10px;background:#141a1b;border:1px solid rgba(255,255,255,.08)}.top-control,.zoom-box,.primary{flex:1 1 calc(50% - 5px)}.primary:last-child{flex-basis:100%}.workspace{padding:6px}.canvas-panel{min-height:560px}.canvas-head{align-items:stretch}.canvas-footer{flex-wrap:wrap;min-height:70px;padding:8px 10px}.canvas-footer input{flex:1 1 220px;width:auto}.canvas-footer span{flex:1 1 100%;text-align:center}.mode-grid,.extract-grid{grid-template-columns:1fr 1fr}.thumb-grid{grid-template-columns:repeat(6,1fr)}.statusbar{align-items:flex-start;gap:6px}.statusbar span{flex:1 1 100%}}@media(pointer:coarse){button,.select-value,.segmented button,.number-field input{min-height:44px}.zoom-box button,.canvas-actions button,.canvas-footer button{width:44px;height:44px}.toggle{width:52px;height:30px}.toggle span{width:26px;height:26px}.toggle.on span{transform:translate(22px)}.thumb,.source-thumb{min-height:48px}}
