:root{--bg:#e9ebef;--panel:#fff;--line:#d9dce3;--text:#1c2230;--muted:#6b7385;--accent:#2563eb;--accent-soft:#2563eb1a;--danger:#c53030;--radius:7px;color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);flex-direction:column;display:flex;overflow:hidden}svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.toolbar{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;display:flex}.brand{letter-spacing:-.01em;margin-right:6px;font-weight:650}.group{align-items:center;gap:2px;display:flex}.sep{background:var(--line);width:1px;height:22px;margin:0 6px}.spacer{flex:1}.btn{border-radius:var(--radius);height:32px;color:inherit;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.btn:hover:not(:disabled){background:#f0f2f6}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.btn:disabled{opacity:.4;cursor:default}.btn.icon{justify-content:center;width:32px;padding:0}.btn.primary{background:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){background:#1d4fd0}.btn.big{height:42px;padding:0 22px;font-size:15px}.btn.danger{color:var(--danger)}.btn.tool[aria-pressed=true],.btn.toggle[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border-color:#2563eb40}.zoom-label{text-align:center;font-variant-numeric:tabular-nums;min-width:46px;color:var(--muted)}.doc-name{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}body.no-doc .toolbar .group,body.no-doc .toolbar .sep,body.no-doc #close-btn,body.no-doc #download-btn,body.no-doc .props{visibility:hidden}.props{border-bottom:1px solid var(--line);background:#f8f9fb;flex-wrap:wrap;align-items:center;gap:10px;min-height:44px;padding:6px 14px;display:flex}.props>*{display:none}.props[data-kind=none] .when-none,.props[data-kind=text] .when-text,.props[data-kind=text] .when-any,.props[data-kind=rect] .when-rect,.props[data-kind=rect] .when-any,.props[data-kind=image] .when-any,.props[data-cover=true] .when-cover{display:inline-flex}.props[data-kind=none] .hint.when-none{display:inline}body[data-tool=text] .props .when-none,body[data-tool=rect] .props .when-none{display:none}body[data-tool=text] .props .when-tool-text,body[data-tool=rect] .props .when-tool-rect{display:inline}.hint{color:var(--muted)}.field{color:var(--muted);align-items:center;gap:6px}.field select,.field input[type=number]{border:1px solid var(--line);height:30px;font:inherit;color:var(--text);background:#fff;border-radius:6px;padding:0 6px}.field input[type=number]{width:66px}.field input[type=color]{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:6px;width:32px;height:28px;padding:2px}#viewer{flex:1;position:relative;overflow:auto}#pages{flex-direction:column;align-items:center;gap:28px;width:max-content;min-width:100%;padding:28px 24px 60px;display:flex}.page{-webkit-user-select:none;user-select:none;background:#fff;position:relative;box-shadow:0 1px 3px #1018281f,0 6px 20px #10182814}.page:after{content:attr(data-label);text-align:center;color:var(--muted);font-size:12px;position:absolute;bottom:-22px;left:0;right:0}.page canvas{width:100%;height:100%;position:absolute;inset:0}.hits,.objs{position:absolute;inset:0}.hits{pointer-events:none}.hit{border-radius:2px;position:absolute}body[data-tool=select] .hit{pointer-events:auto;cursor:text}body[data-tool=select] .hit:hover{background:var(--accent-soft);outline:1px dashed #2563ebb3}body[data-tool=text] .page{cursor:text}body[data-tool=rect] .page{cursor:crosshair}.objs{pointer-events:none}.obj{pointer-events:auto;cursor:move;position:absolute}body:not([data-tool=select]) .obj{pointer-events:none}.obj.selected{outline:1.5px solid var(--accent);outline-offset:1px}.obj-text{white-space:pre;min-width:4px;margin:0;padding:0}.obj-text[contenteditable=true],.obj-text[contenteditable=plaintext-only]{cursor:text;outline:1.5px solid var(--accent);box-shadow:0 0 0 4px var(--accent-soft);-webkit-user-select:text;user-select:text}.obj-cover{pointer-events:none;position:absolute}.obj-image img{pointer-events:none;width:100%;height:100%;display:block}.handle{border:1.5px solid var(--accent);cursor:nwse-resize;background:#fff;border-radius:2px;width:11px;height:11px;display:none;position:absolute;bottom:-6px;right:-6px}.obj.selected .handle{display:block}.draft-rect{border:1.5px dashed var(--accent);pointer-events:none;background:#ffffffb3;position:absolute}.empty{justify-content:center;align-items:center;padding:24px;display:none;position:absolute;inset:0}body.no-doc .empty{display:flex}.empty-card{text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:14px;max-width:420px;padding:36px 32px 28px;box-shadow:0 10px 30px #10182814}.empty-card h1{letter-spacing:-.015em;margin:10px 0 8px;font-size:22px}.empty-card p{color:#3d4556;margin:0 0 18px;line-height:1.5}.empty-card .muted{color:var(--muted);margin:12px 0 0}.empty-card .small{margin-top:18px;font-size:12px}.empty-icon{width:40px;height:40px;color:var(--accent);stroke-width:1.5px}.drop-overlay{border:3px dashed var(--accent);color:var(--accent);z-index:20;pointer-events:none;background:#2563eb1f;justify-content:center;align-items:center;font-size:20px;font-weight:600;display:none;position:fixed;inset:0}body.dragging .drop-overlay{display:flex}.toast{color:#fff;opacity:0;pointer-events:none;z-index:30;background:#1c2230;border-radius:8px;max-width:min(560px,100vw - 32px);padding:10px 16px;transition:opacity .2s,transform .2s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);box-shadow:0 8px 24px #0003}.toast:empty{display:none}.toast.show{opacity:1;transform:translate(-50%)}@media (width<=760px){.btn span{display:none}.btn{padding:0 8px}.brand,.doc-name{display:none}}
