@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/tajawal-arabic-400-normal-CyCXRvzh.woff2)format("woff2"),url(/assets/tajawal-arabic-400-normal-DCQxawbB.woff)format("woff");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/tajawal-latin-400-normal-BVNSOH3d.woff2)format("woff2"),url(/assets/tajawal-latin-400-normal-BdYcZznU.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/tajawal-arabic-500-normal-BZ8ojJNu.woff2)format("woff2"),url(/assets/tajawal-arabic-500-normal-CbVEaYEW.woff)format("woff");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/tajawal-latin-500-normal-CoYeBiSI.woff2)format("woff2"),url(/assets/tajawal-latin-500-normal-DU9v6xgj.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/tajawal-arabic-700-normal-D2-eand5.woff2)format("woff2"),url(/assets/tajawal-arabic-700-normal-9L7Zusdl.woff)format("woff");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/tajawal-latin-700-normal-BypgxfGb.woff2)format("woff2"),url(/assets/tajawal-latin-700-normal-CV3bxpHe.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lapis:#1f3a73;--lapis-deep:#152a57;--lapis-ink:#142650;--lapis-soft:#e7ecf6;--gold:#c9a23a;--gold-soft:#f6eed6;--vermilion:#b4402f;--ink:#1b1e27;--muted:#5b6375;--line:#d4d9e4;--panel:#f5f6fa;--surface:#fff;--pasteboard:#dce0e9;--font-ui:"Tajawal", system-ui, "Segoe UI", Tahoma, sans-serif;--r-sm:4px;--r-md:6px;--topbar-h:46px;--statusbar-h:32px;--rail-w:50px;--panel-w:330px}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-ui);color:var(--ink);background:var(--panel);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.app{grid-template-columns:minmax(0,1fr);grid-template-rows:var(--topbar-h) minmax(0, 1fr) var(--statusbar-h);height:100vh;display:grid}.topbar{background:var(--lapis);color:#fff;z-index:30;align-items:center;gap:10px;padding-inline:12px 10px;display:flex;position:relative}.brand{align-items:center;gap:9px;padding-inline-end:6px;display:flex}.brand-mark{background:var(--gold);width:11px;height:11px;transform:rotate(45deg)}.brand-name{padding-bottom:4px;font-size:27px;line-height:1}.menubar{gap:2px;display:flex}.menu{position:relative}.menu-trigger{color:#dfe6f5;border-radius:var(--r-sm);cursor:pointer;background:0 0;border:0;padding:6px 11px}.menu-trigger:hover,.menu-trigger.on{color:#fff;background:#ffffff21}.menu-list{background:var(--surface);min-width:250px;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-md);z-index:50;top:calc(100% + 5px);padding:4px;position:absolute;inset-inline-start:0;box-shadow:0 12px 32px #14265033}.menu-list button{text-align:start;border-radius:var(--r-sm);cursor:pointer;background:0 0;border:0;grid-template-columns:14px 1fr auto;align-items:center;gap:8px;width:100%;padding:7px 10px;display:grid}.menu-list button:hover:not(:disabled){background:var(--lapis-soft);color:var(--lapis-ink)}.menu-list button:disabled{color:#a7adba;cursor:default}.menu-check{color:var(--gold);font-weight:700}.menu-kbd{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.menu-sep{background:var(--line);height:1px;margin:4px 6px}.doc-title{text-align:center;color:#c9d3ea;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:13px;overflow:hidden}.top-actions{align-items:center;gap:6px;display:flex}.icon-btn{border-radius:var(--r-sm);width:32px;height:32px;color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.topbar .icon-btn:hover:not(:disabled){background:#ffffff21}.icon-btn:disabled{opacity:.38;cursor:default}.btn-primary{background:var(--gold);color:#241a05;border-radius:var(--r-sm);cursor:pointer;border:0;align-items:center;gap:6px;padding:7px 15px;font-weight:700;display:inline-flex}.btn-primary:hover:not(:disabled){background:#d8b34c}.btn-primary:disabled{opacity:.6;cursor:progress}.btn-secondary{color:#fff;border-radius:var(--r-sm);cursor:pointer;background:0 0;border:1px solid #ffffff59;padding:6px 12px}.btn-secondary:hover{background:#ffffff1a}.workspace{grid-template-columns:var(--rail-w) minmax(0, 1fr) var(--panel-w);min-height:0;display:grid}.toolrail{background:var(--surface);border-inline-end:1px solid var(--line);z-index:20;flex-direction:column;align-items:center;gap:4px;padding:10px 0;display:flex}.tool{border-radius:var(--r-md);width:38px;height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:relative}.tool:hover{background:var(--lapis-soft);color:var(--lapis)}.tool.on{background:var(--lapis);color:#fff}.tool.on:after{content:"";background:var(--gold);width:6px;height:6px;position:absolute;inset-inline-start:-7px;transform:rotate(45deg)}.rail-sep{background:var(--line);width:26px;height:1px;margin:6px 0}.canvas-area{background:var(--pasteboard);min-width:0;min-height:0;position:relative}.drop-hint{border:2px dashed var(--lapis);color:var(--lapis-ink);pointer-events:none;background:#e7ecf6d9;border-radius:12px;place-items:center;font-size:18px;display:grid;position:absolute;inset:18px}.stage{touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.stage-svg{display:block}.stage.tool-hand{cursor:grab}.stage.tool-text{cursor:text}.stage.tool-glyph [data-gkey]{cursor:move}.page-shadow{fill:#fff;filter:drop-shadow(0 2px 12px #152a573d)}.font-loading{fill:#1f3a730f;stroke:#1f3a7366;stroke-dasharray:2 2;stroke-width:.3px}.sel-outline{fill:none;stroke:var(--lapis);stroke-width:1.2px;pointer-events:none}.sel-outline.dashed{stroke-dasharray:6 4}.sel-outline.faint{stroke-opacity:.45}.sel-outline.locked{stroke:var(--vermilion);stroke-dasharray:3 3}.baseline{stroke:var(--gold);stroke-width:1.3px;stroke-dasharray:7 4;pointer-events:none}.handle{fill:var(--gold);stroke:var(--lapis-ink);stroke-width:1.2px;cursor:pointer}.handle:hover{fill:#ecca62}.rot-stem{stroke:var(--lapis);stroke-width:1px;pointer-events:none}.rot-handle{fill:#fff;stroke:var(--lapis);stroke-width:1.6px;cursor:grab}.glyph-sel{fill:#c9a23a33;stroke:var(--gold);stroke-width:1.2px;pointer-events:none}.snap-guide{stroke:var(--vermilion);stroke-width:1px;stroke-dasharray:4 3;pointer-events:none}.marquee{fill:#1f3a7314;stroke:var(--lapis);stroke-dasharray:4 3;pointer-events:none}.grid line{stroke:#1f3a7324;stroke-width:.15px}.ruler{z-index:5;position:absolute}.ruler rect{fill:var(--surface)}.ruler line{stroke:#8d95a8;stroke-width:1px}.ruler text{fill:var(--muted);font-size:9px;font-family:var(--font-ui)}.ruler .ruler-cursor{stroke:var(--vermilion)}.ruler-x{border-bottom:1px solid var(--line);top:0;left:0}.ruler-y{border-left:1px solid var(--line);top:0;right:0}.sidepanel{background:var(--panel);border-inline-start:1px solid var(--line);z-index:20;flex-direction:column;min-height:0;display:flex}.tabs{background:var(--surface);border-bottom:1px solid var(--line);display:flex}.tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:11px}.tabs button.on{color:var(--lapis-ink);border-bottom-color:var(--gold);font-weight:700}.panel-scroll{flex:1;padding-bottom:28px;overflow-y:auto}.section{border-bottom:1px solid var(--line)}.section>summary{cursor:pointer;color:var(--lapis-ink);justify-content:space-between;align-items:center;padding:12px 16px;font-weight:700;list-style:none;display:flex}.section>summary::-webkit-details-marker{display:none}.section>summary:after{content:"";border-inline-start:1.6px solid;opacity:.7;border-bottom:1.6px solid;width:7px;height:7px;transition:transform .15s;transform:rotate(-45deg)}.section[open]>summary:after{transform:rotate(135deg)}.section-body{flex-direction:column;gap:11px;padding:2px 16px 16px;display:flex}.row{grid-template-columns:96px minmax(0,1fr);align-items:center;gap:8px;display:grid}.row-label{color:var(--muted);font-size:13px}.row-control{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.row-hint{color:var(--muted);grid-column:1/-1;margin:0;font-size:12px}.grid2{grid-template-columns:1fr 1fr;gap:8px;display:grid}.grid2 .row{grid-template-columns:1fr;gap:4px}.num{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);align-items:stretch;display:inline-flex;overflow:hidden}.num:focus-within{border-color:var(--lapis);box-shadow:0 0 0 2px #1f3a7324}.num input{font-variant-numeric:tabular-nums;background:0 0;border:0;outline:none;width:66px;padding:5px 7px}.num .unit{color:var(--muted);background:#f0f2f7;place-items:center;padding-inline:7px;font-size:12px;display:grid}.slider-number{align-items:center;gap:8px;width:100%;display:flex}.slider{min-width:60px;accent-color:var(--lapis);flex:1}select,.text-field{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:100%;padding:6px 8px}.text-input{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);width:100%;color:var(--ink);resize:vertical;padding:8px 12px;font-size:23px;line-height:1.9}.text-input:focus{border-color:var(--lapis);outline:none;box-shadow:0 0 0 2px #1f3a7324}.text-input.tall{min-height:240px;font-size:19px}.color-input{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.color-input input{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);cursor:pointer;width:36px;height:28px;padding:1px}.color-input span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.segmented{border-radius:var(--r-md);background:#e8ebf2;flex-wrap:wrap;gap:2px;padding:2px;display:inline-flex}.segmented button{border-radius:var(--r-sm);color:var(--muted);cursor:pointer;background:0 0;border:0;padding:5px 11px;font-size:13px}.segmented button.on{background:var(--surface);color:var(--lapis-ink);font-weight:700;box-shadow:0 1px 2px #14265029}.toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:flex;position:relative}.toggle input{opacity:0;width:1px;height:1px;position:absolute}.toggle-track{background:#c3c9d6;border-radius:10px;flex:none;width:34px;height:19px;transition:background .15s;position:relative}.toggle-track:after{content:"";top:2px;background:#fff;border-radius:50%;width:15px;height:15px;transition:inset-inline-start .15s;position:absolute;inset-inline-start:2px}.toggle input:checked+.toggle-track{background:var(--lapis)}.toggle input:checked+.toggle-track:after{inset-inline-start:17px}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--gold);outline-offset:2px}.inspector button:not(.chip,.font-current,.font-item,.font-add,.mark-btn,.element-btn,.mini,.link,.segmented button){border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:6px 11px;font-size:13px;display:inline-flex}.inspector button:not(.chip,.font-current,.font-item,.font-add,.mark-btn,.element-btn,.mini,.link,.segmented button):hover{border-color:var(--lapis);color:var(--lapis)}.inspector button svg{width:16px;height:16px}.inspector button.danger{color:var(--vermilion)}.inspector button.danger:hover{border-color:var(--vermilion);color:var(--vermilion)}.link{color:var(--lapis);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-size:13px;text-decoration:underline}.note{color:var(--muted);margin:0;font-size:12.5px;line-height:1.65}.hint-card{background:var(--gold-soft);border-inline-start:3px solid var(--gold);border-radius:var(--r-sm);color:#4b3a10;margin:14px 16px 2px;padding:10px 12px;font-size:13px;line-height:1.75}.btn-row{flex-wrap:wrap;gap:6px;display:flex}.btn-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.object-actions{flex-wrap:wrap;gap:6px;padding:14px 16px;display:flex}.chips{flex-wrap:wrap;gap:6px;width:100%;display:flex}.chip{border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;border-radius:999px;padding:4px 10px;font-size:12px}.chip.on{background:var(--lapis);border-color:var(--lapis);color:#fff}.sub-title{color:var(--lapis-ink);margin:6px 0 0;font-size:13px;font-weight:700}details.sub>summary{cursor:pointer;color:var(--lapis);padding:2px 0;font-size:13px}.marks{flex-direction:column;gap:10px;padding-top:8px;display:flex}.marks-group{flex-direction:column;gap:5px;display:flex}.marks-title{color:var(--muted);font-size:12px}.marks-grid{grid-template-columns:repeat(6,1fr);gap:4px;display:grid}.mark-btn{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);cursor:pointer;height:42px;font-size:22px;line-height:1}.mark-btn:hover{border-color:var(--gold);background:var(--gold-soft)}.stepper{font-variant-numeric:tabular-nums;align-items:center;gap:10px;display:inline-flex}.fill-editor{flex-direction:column;gap:9px;display:flex}.fill-head{align-items:center;gap:8px;display:flex}.swatch{border:1px solid var(--line);border-radius:var(--r-sm);flex:none;width:28px;height:28px}.font-picker{position:relative}.font-current{text-align:start;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);cursor:pointer;grid-template-columns:1fr auto;gap:2px 8px;width:100%;padding:8px 12px;display:grid}.font-current:hover{border-color:var(--lapis)}.font-current .font-sample{white-space:nowrap;grid-column:1/-1;font-size:22px;line-height:1.8;overflow:hidden}svg.font-sample,.inspector button svg.font-sample{fill:currentColor;width:100%;height:34px;display:block}.font-sample.pending{color:var(--muted)}.font-name{font-weight:700}.font-cat{color:var(--muted);font-size:12px}.font-list{top:calc(100% + 4px);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);z-index:40;max-height:440px;padding:4px;position:absolute;inset-inline:0;overflow-y:auto;box-shadow:0 14px 34px #14265038}.font-group-title{color:var(--muted);padding:9px 8px 3px;font-size:12px}.font-item{text-align:start;border-radius:var(--r-sm);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:stretch;width:100%;padding:6px 10px;display:flex}.font-item:hover{background:var(--lapis-soft)}.font-item.on{background:var(--gold-soft)}.font-item .font-sample{white-space:nowrap;font-size:21px;line-height:1.85;overflow:hidden}.font-add{border:0;border-top:1px solid var(--line);width:100%;color:var(--lapis);cursor:pointer;background:0 0;padding:10px}.layers{margin:0;padding:6px;list-style:none}.layers li{border-radius:var(--r-sm);align-items:center;display:flex}.layers li.on{background:var(--gold-soft)}.layer-main{text-align:start;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:8px;min-width:0;padding:8px;display:flex}.layer-type{color:#fff;background:var(--lapis);border-radius:3px;flex:none;padding:1px 7px;font-size:11px}.layer-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.layer-name.muted{color:#9aa1af;text-decoration:line-through}.layer-tools{opacity:.5;gap:1px;display:flex}.layers li:hover .layer-tools,.layers li.on .layer-tools,.layer-tools:focus-within{opacity:1}.mini{border-radius:var(--r-sm);width:27px;height:27px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.mini svg{width:16px;height:16px}.mini:hover{background:var(--lapis-soft);color:var(--lapis)}.mini.danger:hover{color:var(--vermilion)}.empty{color:var(--muted);margin:0;padding:20px;line-height:1.75}.statusbar{background:var(--surface);border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:14px;padding-inline:10px;font-size:12.5px;display:flex}.pages{align-items:center;gap:2px;display:flex}.pages button{border-radius:var(--r-sm);color:var(--muted);cursor:pointer;background:0 0;border:0;padding:3px 10px}.pages button.on{background:var(--lapis-soft);color:var(--lapis-ink);font-weight:700}.pages .add-page{place-items:center;width:26px;height:26px;padding:0;display:grid}.add-page svg,.zoom .icon-btn svg{width:16px;height:16px}.hint{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.coords{font-variant-numeric:tabular-nums;min-width:140px}.zoom{align-items:center;gap:2px;display:flex}.zoom .icon-btn{width:26px;height:26px;color:var(--muted)}.zoom .icon-btn:hover{background:var(--lapis-soft);color:var(--lapis)}.zoom-value{text-align:center;font-variant-numeric:tabular-nums;min-width:46px}.keyboard{bottom:calc(var(--statusbar-h) + 12px);background:var(--surface);border:1px solid var(--line);z-index:60;border-radius:10px;flex-direction:column;gap:5px;padding:10px 12px 12px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 18px 42px #14265042}.keyboard-head{color:var(--lapis-ink);justify-content:space-between;align-items:center;font-weight:700;display:flex}.kb-row{justify-content:center;gap:5px;display:flex}.kb-key{border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;background:#fbfcfe;border-bottom-width:2px;min-width:40px;height:42px;padding:0 6px;font-size:20px}.kb-key:hover{border-color:var(--lapis)}.kb-key:active{transform:translateY(1px)}.kb-key.wide{min-width:100px;font-size:13px}.kb-key.space{min-width:230px;font-size:13px}.modal-backdrop{z-index:80;background:#0e1a3675;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:10px;flex-direction:column;width:min(540px,100%);max-height:88vh;display:flex;box-shadow:0 26px 64px #0e1a365c}.modal.wide{width:min(1000px,100%)}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.modal-head h2{color:var(--lapis-ink);margin:0;font-size:18px}.modal-head .icon-btn{color:var(--muted)}.modal-head .icon-btn:hover{background:var(--lapis-soft)}.modal-body{flex-direction:column;gap:12px;padding:16px 18px 20px;display:flex;overflow-y:auto}.modal-body>.row{grid-template-columns:110px minmax(0,1fr)}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.lead{color:var(--muted);margin:0;line-height:1.75}.muted{color:var(--muted)}.template-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;display:grid}.template-card{text-align:start;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);cursor:pointer;flex-direction:column;gap:6px;padding:10px;display:flex;position:relative}.template-card:hover,.template-card:focus-within{border-color:var(--gold);box-shadow:0 6px 18px #1426501f}.template-preview{aspect-ratio:4/3;object-fit:contain;border-radius:var(--r-sm);background:#edf0f5;width:100%}.template-name{font-weight:700}.template-desc{color:var(--muted);font-size:12.5px;line-height:1.6}.template-card.work{cursor:default;padding:0}.work-open{text-align:start;cursor:pointer;background:0 0;border:0;flex-direction:column;gap:6px;padding:10px;display:flex}.template-card.work .mini{top:16px;background:#ffffffeb;position:absolute;inset-inline-end:16px}.report{margin:0;padding-inline-start:20px;line-height:1.85}.report.warn li{color:#6b4a12}.shortcuts{border-collapse:collapse;width:100%}.shortcuts td{border-bottom:1px solid var(--line);padding:7px 8px}kbd{font-family:var(--font-ui);border:1px solid var(--line);background:#eef1f6;border-bottom-width:2px;border-radius:4px;padding:1px 6px;font-size:12px}.font-files{margin:0;padding:0;list-style:none}.font-files li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:6px 0;display:flex}.toasts{bottom:calc(var(--statusbar-h) + 14px);z-index:90;flex-direction:column;gap:8px;display:flex;position:fixed;inset-inline-end:16px}.toast{color:#fff;background:var(--lapis-ink);border-inline-start:4px solid var(--gold);border-radius:var(--r-md);cursor:pointer;max-width:380px;padding:10px 14px;line-height:1.6;box-shadow:0 10px 26px #0e1a364d}.toast.success{border-inline-start-color:#79c99a}.toast.error{background:#5a1d14;border-inline-start-color:#ff8f78}.print-root{display:none}@media print{html,body{background:#fff;height:auto;overflow:visible}body.printing>:not(.print-root){display:none!important}body.printing .print-root{display:block}.print-page{break-after:page;display:block}}@media (max-width:860px){:root{--panel-w:280px}.doc-title,.btn-secondary{display:none}}@media (max-width:680px){.app{width:100vw;overflow:hidden}.topbar{gap:6px;padding-inline:8px 4px}.menubar{scrollbar-width:none;flex:auto;min-width:0}.menu-trigger{white-space:nowrap;padding:6px 8px}.top-actions .btn-primary{padding:7px 9px}.workspace{grid-template-columns:var(--rail-w) minmax(0, 1fr);grid-template-rows:minmax(0,1fr) 44vh}.sidepanel{border-inline-start:0;border-top:1px solid var(--line);grid-column:1/-1}.menubar{overflow-x:auto}.hint,.coords{display:none}.keyboard{left:8px;right:8px;overflow-x:auto;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.elements{flex-direction:column;gap:12px;display:flex}.elements-group{flex-direction:column;gap:5px;display:flex}.elements-grid{grid-template-columns:repeat(6,1fr);gap:4px;display:grid}.element-btn{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);height:44px;color:var(--ink);cursor:pointer;place-items:center;padding:0;display:grid}.element-btn:hover{border-color:var(--gold);background:var(--gold-soft)}.element-btn.on{border-color:var(--lapis);background:var(--lapis);color:#fff}.element-glyph{font-size:24px;line-height:1}.glyph-sel.segment{fill:#1f3a7314;stroke:var(--lapis);stroke-dasharray:4 3}.glyph-sel.letter{fill:#c9a23a38;stroke:var(--gold)}.stretchable{fill:#1f3a730f;stroke:#1f3a7359;stroke-width:1px;stroke-dasharray:2 3;pointer-events:none}.stretchable.active{fill:#c9a23a38;stroke:var(--gold);stroke-dasharray:none}.stage.tool-stretch{cursor:ew-resize}.variant-list{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px;display:grid}.variant-list.compact{gap:4px;max-width:100%;padding-bottom:2px;display:flex;overflow-x:auto}.variant{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);min-width:56px;height:52px;color:var(--ink);cursor:pointer;justify-content:center;align-items:center;padding:4px 6px;display:flex}.variant-list.compact .variant{flex:none;min-width:48px;height:44px}.variant svg,.inspector .variant svg{fill:currentColor;width:auto;max-width:100%;height:100%}.variant:hover{border-color:var(--lapis);background:var(--lapis-soft)}.variant.current{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold);background:var(--gold-soft)}.variant:focus-visible{outline:2px solid var(--lapis);outline-offset:1px}.variant-pop{z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);max-width:min(580px,100% - 16px);padding:6px 8px 8px;position:absolute;transform:translate(-50%);box-shadow:0 6px 20px #14265029}.variant-pop-title{color:var(--muted);align-items:center;gap:4px;margin-bottom:4px;font-size:12px;display:flex}.variant-pop-title kbd{font:inherit;border:1px solid var(--line);background:var(--panel);border-radius:3px;padding:0 4px;font-size:11px}.pen-skeleton polyline{fill:none;stroke:#d0452f;stroke-width:.25px;vector-effect:non-scaling-stroke}.pen-skeleton circle{fill:#fff;stroke:#d0452f;stroke-width:1px;vector-effect:non-scaling-stroke}.note.warn{color:var(--vermilion)}
