:root{--text:#1a1a1e;--bg:#fff;--border:#dcdce0;--panel-bg:#f6f6f8;--accent:#5b2fd4;--accent-soft:#5b2fd440;--radius:5px;--radius-sm:calc(var(--radius) * .6 + 2px);--shadow-dialog:0 4px 20px #14141e1a;--shadow-row:0 1px 2px #14141e0d;--shadow-focus:0 0 0 2px var(--accent-soft);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font:16px/1.4 -apple-system,Segoe UI,system-ui,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#f0f0f3;--bg:#121214;--border:#38383f;--panel-bg:#1c1c20;--accent:#a67bff;--accent-soft:#a67bff4d;--shadow-dialog:0 4px 20px #00000080;--shadow-row:0 1px 2px #0000004d}}*{box-sizing:border-box}body{color:var(--text);background:var(--bg);letter-spacing:-.005em;margin:0}#root{flex-direction:column;min-height:100svh;display:flex}.landing{text-align:center;background:var(--bg);min-height:100svh;color:var(--text);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.editor{background:var(--bg);color:var(--text);flex:1;padding:1.25rem 1.5rem 3rem}.editor-header{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;margin-bottom:.5rem;padding-bottom:.75rem;display:flex}.editor-header h1{margin:0 auto 0 0;font-size:1.15rem}button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--panel-bg);color:var(--text);border-radius:var(--radius);padding:.45rem .8rem;transition:border-color .12s}button:hover:not(:disabled){border-color:var(--accent)}.dialog-backdrop{z-index:100;background:#00000073;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.dialog{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-dialog);flex-direction:column;gap:.65rem;width:min(420px,100%);padding:1.25rem 1.5rem 1.5rem;display:flex}.export-dialog{width:min(600px,100%)}.dialog h2{margin:0 0 .25rem}.dialog label{flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.dialog input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit;padding:.4rem .55rem}.dialog-actions{justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.editor-body{flex-wrap:wrap;align-items:flex-start;gap:1.5rem;display:flex}.pattern-grid{touch-action:none;-webkit-user-select:none;user-select:none}@media screen{[data-role=column-number],[data-role=row-number],[data-role=page-header-title],[data-role=page-header-range],[data-role=legend-symbol],[data-role=legend-label]{fill:var(--text)}}.toolbar{flex-wrap:wrap;gap:.3rem;margin:.75rem 0;display:flex}.toolbar-option{border:2px solid var(--border);border-radius:var(--radius);width:2rem;height:2rem;padding:0}.toolbar-option.selected{border-color:var(--accent);box-shadow:var(--shadow-focus)}.toolbar-eraser{background:var(--bg);font-size:.6rem}.palette-editor{flex:320px;min-width:280px}.palette-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.palette-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-bg);box-shadow:var(--shadow-row);padding:.5rem}.palette-row-fields{align-items:center;gap:.5rem;display:flex}.palette-row-fields input[type=text]{flex:auto;min-width:0}.palette-symbol{text-align:center;width:1.5em;font-size:1.2rem}.reorder-buttons{gap:.15rem;display:flex}.symbol-picker{flex-wrap:wrap;gap:.25rem;margin-top:.4rem;display:flex}.symbol-option{border:1px solid var(--border);background:var(--bg);border-radius:var(--radius-sm);width:1.8em;height:1.8em;padding:0}.symbol-option.selected{border-color:var(--accent);background:var(--accent);color:var(--bg);box-shadow:var(--shadow-focus)}.palette-delete-blocked{color:var(--text);margin:.4rem 0 0}.palette-add-form{align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.export-presets{flex-wrap:wrap;gap:.4rem;margin:.5rem 0;display:flex}.export-preset.selected{border-color:var(--accent);box-shadow:var(--shadow-focus)}.export-preview{border:1px solid var(--border);max-height:480px;margin:.5rem 0;overflow:auto}.export-page-sheet{margin-bottom:1rem}.export-page-sheet svg{max-width:100%;height:auto;display:block}@media print{body *{visibility:hidden}.export-preview,.export-preview *{visibility:visible}.export-preview{border:none;max-height:none;margin:0;position:absolute;top:0;left:0;overflow:visible}.export-page-sheet{page-break-after:always}}
