.dz-app{grid-template:"top top top"58px"tools stage rack"minmax(0,1fr)/56px minmax(0,1fr) 300px}.dz-app [hidden]{display:none!important}.dz-docbar{align-items:center;gap:6px;min-width:0;margin-left:auto;display:flex}.dz-docname{text-align:center;text-overflow:ellipsis;background:0 0;border:1px solid #0000;border-radius:8px;width:260px;max-width:30vw;padding:6px 10px;font-size:14px;font-weight:600}.dz-docname:hover{border-color:var(--line)}.dz-docname:focus{border-color:var(--text);background:var(--panel-2);outline:none}.dz-saved{font:11px var(--mono);color:var(--faint);min-width:56px}.tb-icon:disabled{opacity:.3;cursor:default}.dz-home{background:var(--bg);grid-area:2/1/auto/-1;overflow-y:auto}.dz-home-inner{max-width:1160px;margin:0 auto;padding:40px 24px 80px}.dz-home .kicker{font:12px var(--mono);color:var(--accent);margin:0 0 10px}.dz-home h1{letter-spacing:-.03em;margin:0 0 20px;font-size:32px;font-weight:500}.dz-presets{grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:10px;display:grid}.dz-preset{all:unset;box-sizing:border-box;background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:12px;flex-direction:column;gap:2px;padding:12px;display:flex}.dz-preset:hover{border-color:var(--line-2);transform:translateY(-1px)}.dz-preset:focus-visible{outline:2px solid var(--accent)}.dz-preset-shape{justify-content:center;align-items:center;height:74px;margin-bottom:8px;display:flex}.dz-preset-box{background:var(--panel-2);border:1.5px solid var(--line-2);border-radius:4px;max-width:100%;max-height:100%;display:block}.dz-preset:hover .dz-preset-box{border-color:var(--accent)}.dz-preset b{font-size:13px;font-weight:600}.dz-preset small{font:11px var(--mono);color:var(--faint)}.dz-home-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:14px 0 44px;display:flex}.dz-custom{color:var(--muted);align-items:center;gap:8px;font-size:12.5px;display:flex}.dz-custom .dz-num{width:86px}.dz-home-head{flex-wrap:wrap;align-items:baseline;gap:14px;margin-bottom:14px;display:flex}.dz-home-head h2{margin:0;font-size:18px;font-weight:600}.dz-home-head small{color:var(--faint)}.dz-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.dz-empty{color:var(--muted);padding:30px 0}.dz-card{flex-direction:column;gap:8px;display:flex}.dz-thumb{all:unset;box-sizing:border-box;aspect-ratio:4/3;background-color:var(--stage);border:1px solid var(--line);cursor:pointer;background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:12px;transition:transform .15s,border-color .15s}.dz-thumb:hover{border-color:var(--line-2);transform:translateY(-2px)}.dz-thumb:focus-visible{outline:2px solid var(--accent)}.dz-card-meta{flex-direction:column;display:flex}.dz-card-meta b{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.dz-card-meta small{color:var(--faint);font-size:11.5px}.dz-card-actions{gap:12px;display:flex}.dz-tools{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;grid-area:tools;align-items:center;gap:4px;padding:10px 0;display:flex;overflow-y:auto}.dz-tool{all:unset;width:38px;height:38px;color:var(--muted);cursor:pointer;border-radius:10px;place-items:center;display:grid}.dz-tool svg{width:19px;height:19px}.dz-tool:hover{color:var(--text);background:var(--panel-2)}.dz-tool.on{color:var(--accent-ink);background:var(--accent)}.dz-tool:focus-visible{outline:2px solid var(--accent)}.dz-tool[data-tool=image]{margin-top:auto}.dz-stage{background-color:var(--stage);background-image:linear-gradient(var(--stage-line) 1px, transparent 1px), linear-gradient(90deg, var(--stage-line) 1px, transparent 1px);touch-action:none;background-size:24px 24px;grid-area:stage;position:relative;overflow:hidden}.dz-stage canvas{display:block;position:absolute;inset:0}.dz-app .rack{grid-area:rack}.text-editor{outline:1.5px solid var(--accent);outline-offset:2px;resize:none;white-space:pre-wrap;overflow-wrap:break-word;z-index:3;caret-color:var(--accent);background:0 0;border:none;margin:0;padding:0;position:absolute;overflow:hidden}.dz-grid2{grid-template-columns:1fr 1fr;gap:6px;display:grid}.dz-field{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:8px;height:34px;padding:0 8px;display:flex}.dz-field:focus-within{border-color:var(--text)}.dz-field span{color:var(--faint);min-width:14px;font-size:11.5px}.dz-num{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius);width:100%;min-width:0;font:12.5px var(--mono);padding:6px 8px}.dz-field .dz-num{background:0 0;border:none;padding:0}.dz-num:focus{outline:none}.dz-row{flex-wrap:wrap;gap:4px;display:flex}.dz-icon{all:unset;width:34px;height:32px;color:var(--muted);cursor:pointer;background:var(--panel-2);border:1px solid var(--line);border-radius:8px;place-items:center;display:grid}.dz-icon svg{width:17px;height:17px}.dz-icon:hover{color:var(--text);border-color:var(--line-2)}.dz-icon:focus-visible{outline:2px solid var(--accent)}.dz-layers .dz-icon{background:0 0;border:none;width:26px;height:26px}.dz-layers{flex-direction:column;gap:2px;margin:4px 0 0;padding:0;list-style:none;display:flex}.dz-layers li{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:4px 6px 4px 10px;display:flex}.dz-layers li:hover{background:var(--panel-2)}.dz-layers li.on{background:var(--accent-soft);border-color:var(--accent)}.dz-layers li.hidden-layer .dz-layer-name{opacity:.45}.dz-layers li.dragging{opacity:.4}.dz-layers li.drop-target{box-shadow:inset 0 2px 0 var(--accent)}.dz-layer-icon{width:16px;height:16px;color:var(--muted);flex:none}.dz-layer-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:12.5px;overflow:hidden}.dz-layer-actions{opacity:.4;display:flex}.dz-layers li:hover .dz-layer-actions,.dz-layers li.on .dz-layer-actions{opacity:1}.dz-rename{background:var(--panel-2);border:1px solid var(--text);border-radius:6px;flex:1;min-width:0;padding:3px 6px;font-size:12.5px}@media (width<=900px){.dz-app{grid-template:"top top"54px"tools stage"minmax(0,1fr)"rack rack"/52px minmax(0,1fr)}body.tool-designer{height:100dvh;overflow:hidden}.dz-app .rack{border-left:none;border-top:1px solid var(--line);max-height:38dvh}.dz-docbar .tb-btn span,.dz-saved{display:none}.dz-docname{width:140px}}@media (width<=800px){body.tool-designer .app{height:100dvh;display:grid}body.tool-designer .topbar{position:static}}
