:root{--cloth:#f5f1e8;--panel:#fffdf8;--ink:#1f2a37;--muted:#5d6673;--line:#ddd5c5;--thread:#a8481f;--thread-dark:#8a3a17;--wood:#c49a6c;--ok:#1f6b45;--warn:#8a5a00;--bad:#a4261d;--radius:12px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);font-family:Segoe UI,system-ui,-apple-system,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--cloth);background-image:linear-gradient(#78644609 1px,#0000 1px),linear-gradient(90deg,#78644609 1px,#0000 1px);background-size:4px 4px;margin:0}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3{font-family:Georgia,Times New Roman,serif;font-weight:600}h1{margin:0 0 .5rem;font-size:clamp(1.7rem,4vw,2.6rem);line-height:1.15}h2{margin:1.4rem 0 .6rem;font-size:1.1rem}h2:first-child{margin-top:0}h2 small{color:var(--muted);margin-inline-start:.4rem;font:400 .8rem Segoe UI,system-ui,sans-serif}h3{margin:1.3rem 0 .5rem;font-size:1rem}a{color:var(--thread-dark)}code{font-family:Consolas,Menlo,monospace;font-weight:600}.topbar{z-index:20;background:var(--panel);border-bottom:2px dashed var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;padding:.8rem clamp(16px,4vw,40px);display:flex;position:sticky;top:0}.logo{color:var(--ink);align-items:center;gap:.55rem;font:600 1.1rem Georgia,serif;text-decoration:none;display:flex}.logo-hoop{border:4px solid var(--thread);border-radius:50%;width:22px;height:22px}.topbar nav{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.topbar nav a{color:var(--muted);border-bottom:2px solid #0000;padding:.3rem 0;text-decoration:none}.topbar nav a.active{color:var(--ink);border-bottom-color:var(--thread)}.language{border:1px solid var(--line);font:inherit;cursor:pointer;color:var(--ink);background:0 0;border-radius:6px;padding:.25rem .55rem;font-size:.85rem}main{flex:1;width:100%;max-width:1240px;margin:0 auto;padding:clamp(16px,3vw,32px)}.footer{text-align:center;color:var(--muted);padding:1rem;font-size:.8rem}.lead{color:var(--muted);max-width:760px;margin:0 0 1rem;font-size:1.05rem}.workspace{grid-template-columns:minmax(0,1fr);gap:1rem;padding:1rem clamp(16px,2vw,24px);display:grid}.workspace-right{display:contents}.preview-window{order:-1}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(14px,2.5vw,22px)}.narrow{max-width:560px;margin:0 auto}.dropzone{width:100%;min-height:130px;color:var(--ink);font:inherit;cursor:pointer;text-align:center;border:2px dashed var(--wood);border-radius:var(--radius);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:1rem;display:flex}.dropzone:hover,.dropzone.dragging{border-color:var(--thread);background:#f8efe0}.dropzone span{color:var(--muted);font-size:.85rem}.dropzone img{object-fit:contain;border-radius:6px;max-width:100%;max-height:150px}.field{border:0;min-width:0;margin:0 0 .85rem;padding:0;display:block}.field>span,.field>legend{color:var(--muted);margin-bottom:.3rem;padding:0;font-size:.85rem;display:block}.field input[type=number],.field input[type=password],.field input[inputmode],.field select{width:100%;font:inherit;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:8px;padding:.5rem .6rem}.field input[type=range]{width:100%;accent-color:var(--thread)}.row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.segmented{flex-wrap:wrap;display:flex}.segmented legend{width:100%}.segmented label{text-align:center;border:1px solid var(--line);cursor:pointer;background:#fff;flex:1;margin-inline-start:-1px;padding:.4rem .3rem;font-size:.9rem}.segmented label:first-of-type{border-start-start-radius:8px;border-end-start-radius:8px;margin-inline-start:0}.segmented label:last-of-type{border-start-end-radius:8px;border-end-end-radius:8px}.segmented label.active{background:var(--ink);color:#fff;border-color:var(--ink)}.segmented input{opacity:0;pointer-events:none;position:absolute}.segmented label:focus-within{outline:2px solid var(--thread);outline-offset:1px}.check{cursor:pointer;align-items:flex-start;gap:.5rem;margin:.6rem 0 1rem;font-size:.92rem;display:flex}.check input{accent-color:var(--thread);margin-top:.2rem}.primary{color:#fff;text-align:center;background:var(--thread);cursor:pointer;border:0;border-radius:8px;width:auto;padding:.7rem 1.2rem;font:600 1rem Segoe UI,system-ui,sans-serif;text-decoration:none;display:inline-block}.controls>.primary,.admin>.primary{width:100%}.primary:hover:not(:disabled){background:var(--thread-dark)}.primary:disabled{cursor:not-allowed;background:#c9c1b2}.hint{color:var(--muted);margin:.5rem 0 .85rem;font-size:.85rem}.notice{background:#efe9dc;border-radius:8px;margin:.7rem 0;padding:.55rem .75rem;font-size:.92rem}.notice.warning{color:var(--warn);background:#fbf0d5}.notice.error{color:var(--bad);background:#fbe4e1}.notice.success{color:var(--ok);background:#e0f2e7}.hoop{aspect-ratio:4/3;width:100%;max-height:560px;color:var(--muted);text-align:center;border:10px solid var(--wood);background:#f4f1ea;border-radius:22px;justify-content:center;align-items:center;padding:1rem;display:flex;overflow:hidden;box-shadow:inset 0 0 0 2px #0000001a}.hoop img{object-fit:contain;max-width:100%;max-height:100%;display:block}.hoop.working{opacity:.55}.hoop{position:relative}.shape-box{border:2px dashed var(--thread);pointer-events:none;border-radius:4px;position:absolute}.stats{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.6rem;margin:1rem 0 0;display:grid}.stats div{background:#f8f4eb;border-radius:8px;padding:.5rem .65rem}.stats dt{color:var(--muted);font-size:.75rem}.stats dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.threads{flex-wrap:wrap;gap:.4rem .9rem;margin:0;padding:0;font-size:.92rem;list-style:inside decimal;display:flex}.threads li{align-items:center;gap:.4rem;display:flex}.threads.editable{list-style:none}.threads.editable button{border:1px solid var(--line);font:inherit;color:var(--ink);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:.4rem;padding:.3rem .55rem;display:flex}.threads.editable button.active{border-color:var(--thread);box-shadow:inset 0 0 0 1px var(--thread)}.hoop img.pickable{cursor:crosshair}.thread-editor{gap:.75rem;margin-bottom:1rem;display:grid}.thread-panel{border:1px solid var(--line);border-radius:8px;gap:.55rem;padding:.75rem;display:grid}.thread-label{font-size:.92rem;font-weight:600}.swatches{grid-template-columns:repeat(auto-fill,minmax(26px,1fr));gap:4px;display:grid}.swatch{aspect-ratio:1;cursor:pointer;border:1px solid #00000040;border-radius:4px;min-height:26px;padding:0}.swatch.active{outline:2px solid var(--thread);outline-offset:1px}.style-options{border:0;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;display:flex}.style-options legend{margin-bottom:.4rem;padding:0}.style-options label{text-align:center;border:1px solid var(--line);cursor:pointer;border-radius:6px;flex:auto;padding:.35rem .6rem}.style-options label.active{background:var(--ink);border-color:var(--ink);color:#fff}.style-options input{opacity:0;pointer-events:none;position:absolute}.style-options label:focus-within{outline:2px solid var(--thread);outline-offset:1px}.shape-scope{border:1px dashed var(--thread);border-radius:6px;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem .6rem;font-size:.92rem;display:flex}.shape-scope span{flex:14rem}.shape-scope button{padding:.3rem .6rem}.simulation{gap:.6rem;display:grid}.sim-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.sim-line,.field .sim-line{flex-wrap:wrap;justify-content:space-between;gap:.75rem;display:flex}.sim-toggle{margin:.75rem 0}.monogram{gap:.6rem;display:grid}.monogram-line{border:1px solid var(--line);border-radius:8px;gap:.35rem;padding:.55rem;display:grid}.monogram-line select{width:100%;min-width:0;font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:6px;padding:.35rem}.toolbar{top:var(--topbar-height,0);z-index:15;background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:nowrap;flex:none;align-items:flex-end;gap:.75rem;padding:.55rem clamp(16px,2vw,24px);display:flex;position:sticky;overflow-x:auto}.toolbar .field,.toolbar .check{flex:none;margin:0}.toolbar .field>span,.toolbar .field>legend{white-space:nowrap;margin-bottom:.15rem;font-size:.75rem}.toolbar-machine{min-width:180px;flex:220px!important}.toolbar-size{width:6.5rem}.toolbar-colors{width:8rem}.toolbar-fabric{width:11rem}.toolbar-mode{flex-wrap:wrap;display:flex}.toolbar-mode>legend{width:100%}.toolbar-mode label{white-space:nowrap;padding-inline:.6rem}.toolbar-fabric select{width:100%}.toolbar-density{flex-wrap:wrap;display:flex}.toolbar-density>legend{width:100%}.toolbar-density label{white-space:nowrap;padding-inline:.6rem}.toolbar-check{white-space:nowrap;align-self:center}.toolbar-action{white-space:nowrap;flex:none;width:auto}.chosen-symbol{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.chosen-symbol img{object-fit:contain;width:40px;height:40px}.chosen-symbol span{flex:1;min-width:6rem}.picture-text{gap:.5rem;margin-bottom:.75rem;display:grid}.letter-overlap{gap:.15rem;font-size:.85rem;display:grid}.letter-overlap input{width:100%}.letter-colours summary{cursor:pointer;font-size:.85rem}.letter-colour-list{flex-wrap:wrap;gap:.35rem;margin-top:.35rem;display:flex}.letter-colour-list label{align-items:center;gap:.2rem;display:flex}.background-options{gap:.35rem;display:grid}.background-options select{font:inherit;margin-inline-start:.4rem}.monogram-verse,.monogram-ai{gap:.5rem;display:grid}.monogram-ai{border-bottom:1px solid var(--line);padding-bottom:.75rem}.monogram-ai textarea,.monogram-verse textarea{width:100%;font:inherit;box-sizing:border-box;padding:.5rem}.verse-presets{flex-wrap:wrap;gap:.35rem;display:flex}.symbol-search{width:100%;font:inherit;box-sizing:border-box;margin:.4rem 0;padding:.4rem .5rem}.symbol-group summary{cursor:pointer}.letter-colour-list input[type=text]{width:7rem;font:inherit}.monogram-line-text input[type=color]{flex:none;width:2.2rem;padding:0}.monogram-line-text{gap:.35rem;display:flex}.monogram-line-text input{flex:1;min-width:0}.monogram-line-text button{padding:.2rem .6rem}.monogram input[type=text]{width:100%;font:inherit;border:1px solid var(--line);color:var(--ink);box-sizing:border-box;background:#fff;border-radius:6px;padding:.45rem .6rem}.monogram-preview{border:1px solid var(--line);text-align:center;background:#fff;border-radius:8px;padding:.5rem}.monogram-preview img{object-fit:contain;max-width:100%;max-height:100%}.church-letters{flex-wrap:wrap;gap:.3rem;display:flex}.church-letters button{border:1px solid var(--line);min-width:2rem;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border-radius:5px;padding:.25rem .4rem}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.symbol-group{gap:.2rem;margin-top:.35rem;display:grid}.symbol-group .hint{margin:0}.symbol-none{border:1px solid var(--line);font:inherit;color:var(--ink);cursor:pointer;background:#fff;border-radius:6px;justify-self:start;margin-top:.25rem;padding:.3rem .6rem;font-size:.85rem}.symbol-none.active{border-color:var(--thread);box-shadow:inset 0 0 0 1px var(--thread)}.monogram-symbols{flex-wrap:wrap;gap:.35rem;display:flex}.monogram-symbols button{border:1px solid var(--line);min-width:44px;min-height:44px;font:inherit;color:var(--ink);cursor:pointer;background:#fff;border-radius:6px;padding:2px;font-size:.8rem}.monogram-symbols button.active{border-color:var(--thread);box-shadow:inset 0 0 0 1px var(--thread)}.monogram-symbols img{width:38px;height:38px;display:block}.direction{align-items:center;gap:.6rem;display:flex}.direction input[type=range]{flex:1;min-width:0}.direction output{text-align:end;font-variant-numeric:tabular-nums;min-width:2.6rem}.direction-dial{border:1px solid var(--line);border-radius:50%;flex:none;width:30px;height:30px;position:relative}.direction-dial span{background:var(--thread);height:2px;margin-top:-1px;position:absolute;top:50%;left:3px;right:3px}button.secondary{border:1px solid var(--line);font:inherit;color:var(--ink);cursor:pointer;background:0 0;border-radius:6px;padding:.55rem .9rem}button.secondary:disabled{opacity:.5;cursor:default}.spool{border:1px solid #00000040;border-radius:50%;width:18px;height:18px}.formats{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.5rem;display:grid}.formats label{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:auto 1fr;column-gap:.4rem;padding:.5rem .6rem;display:grid}.formats label.active{border-color:var(--thread);box-shadow:inset 0 0 0 1px var(--thread)}.formats input{accent-color:var(--thread)}.formats small{color:var(--muted);grid-column:1/-1;margin-top:.15rem;font-size:.72rem;line-height:1.2}.checkout{border-top:2px dashed var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;display:flex}.checkout span{color:var(--muted);font-size:.8rem;display:block}.checkout strong{font:600 1.6rem Georgia,serif}.machines section{margin-bottom:1rem}.table-scroll{overflow-x:auto}.admin-orders{margin-top:1.5rem}.admin-orders .table-scroll{margin-bottom:1rem}.orders-filter{flex-wrap:wrap;align-items:end}.admin-orders code{font-size:.78rem}table{border-collapse:collapse;width:100%;font-size:.92rem}th{text-align:start;color:var(--muted);font-size:.8rem;font-weight:600}th,td{border-bottom:1px solid var(--line);vertical-align:top;padding:.45rem .6rem .45rem 0}tbody tr:last-child td{border-bottom:0}.muted{color:var(--muted)}.order-preview{border:1px solid var(--line);border-radius:10px;width:100%;max-width:320px;margin:1rem auto;display:block}.downloads{margin:1rem 0;padding:0;list-style:none}.downloads li{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0;display:flex}.downloads b{overflow-wrap:anywhere}.fabric-advice{border:1px solid var(--line);border-radius:8px;margin:.6rem 0;padding:.55rem .7rem;font-size:.9rem}.view-bar{flex-wrap:wrap;align-items:center;gap:.5rem .9rem;margin-top:.6rem;display:flex}.view-bar .segmented,.view-bar .check,.view-bar .hint{margin:0}.view-bar .hint{flex-basis:100%}.cloths{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.threads.editable{flex-flow:column;align-items:stretch}.threads.editable li>button{text-align:start;flex:1;min-width:0}.order-arrows{flex:none;gap:.2rem;display:flex}.threads.editable .order-arrows button{padding:.3rem .5rem;line-height:1}.threads.editable .order-arrows button:disabled{opacity:.35;cursor:default}.templates{margin-bottom:.75rem}.templates>summary{cursor:pointer;font-weight:600}.template-grid{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:.5rem;display:grid}.template-card{font:inherit;color:var(--ink);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;justify-items:center;gap:.15rem;padding:.4rem;display:grid}.template-card.active{border-color:var(--thread);box-shadow:inset 0 0 0 1px var(--thread)}.template-card img{aspect-ratio:1;object-fit:contain;width:100%}.template-card b{text-align:center;font-size:.85rem}.template-card small{opacity:.75;font-size:.72rem}.threads.editable li.dragging{opacity:.45}.threads.editable li[draggable=true]{cursor:grab}.swatches{max-height:16rem;overflow-y:auto}.letter-settings{gap:.35rem;font-size:.9rem;display:grid}.letter-settings>summary{cursor:pointer}.letter-settings select{width:100%}.font-upload{border:1px dashed var(--line);border-radius:8px;gap:.4rem;padding:.55rem;display:grid}.button-like{text-align:center;border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:.4rem .7rem;display:inline-block}.button-like.disabled{opacity:.5;cursor:default}.design-canvas{gap:.4rem;display:grid}.canvas-tools{flex-wrap:wrap;align-items:center;gap:.3rem .8rem;display:flex}.canvas-tools .check{margin:0}.canvas-area{border:1px solid var(--line);touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;border-radius:8px;width:100%;position:relative;overflow:hidden}.canvas-area>img{width:100%;height:auto;display:block}.canvas-marks{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.canvas-marks line{stroke:#1e3c7838;stroke-width:1px;vector-effect:non-scaling-stroke}.ruler{color:#1b2b4b;pointer-events:none;font-size:.62rem;line-height:1;position:absolute}.ruler span{background:#ffffffd9;padding:0 .1rem;position:absolute}.ruler-top{height:.8rem;inset:0 0 auto}.ruler-top span{top:0;transform:translate(-50%)}.ruler-side{width:1.6rem;inset:0 auto 0 0}.ruler-side span{left:0;transform:translateY(-50%)}.canvas-element{cursor:move;outline-offset:1px;outline:1px dashed #0000;position:absolute}.canvas-element:hover{outline-color:#b0102080}.canvas-element.active,.canvas-element:focus-visible{outline:2px solid var(--thread)}.canvas-grip{border:2px solid var(--thread);touch-action:none;background:#fff;width:14px;height:14px;position:absolute}.canvas-grip.turn{cursor:grab;border-radius:50%;margin-left:-7px;top:-22px;left:50%}.canvas-grip.size{cursor:nwse-resize;bottom:-7px;right:-7px}.canvas-grip.ring{cursor:grab;border-radius:50%;margin:-7px 0 0 -7px}.canvas-ring{border:1px dashed var(--thread);pointer-events:none;border-radius:50%;position:absolute}.busy:before{content:"";vertical-align:-.15em;border:2px solid;border-inline-end-color:#0000;border-radius:50%;width:1em;height:1em;margin-inline-end:.5em;animation:.8s linear infinite busy-spin;display:inline-block}@keyframes busy-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.busy:before{animation-duration:2.4s}}.canvas-remove{color:#fff;background:var(--thread);cursor:pointer;border:2px solid #fff;border-radius:50%;width:22px;height:22px;padding:0;font-size:16px;line-height:18px;position:absolute;top:-11px;right:-11px}.threads.editable .thread-remove{flex:none;padding:.3rem .55rem;line-height:1}.threads.editable .thread-remove:disabled{opacity:.35;cursor:default}.dropzone.symbol-file{text-align:center;cursor:pointer;justify-items:center;gap:.2rem;min-height:0;margin-bottom:.4rem;padding:.7rem;font-size:.85rem;display:grid}main:has(.converter){flex-direction:column;max-width:none;min-height:0;padding:0;display:flex}.converter{flex-direction:column;flex:1;min-height:0;display:flex}.topbar-brand{flex:18rem;min-width:0}.topbar-hero{margin-top:.15rem}.logo-title{font:inherit;margin:0}.topbar-hero p{color:var(--muted);margin:.05rem 0 0;font-size:.8rem;line-height:1.3}.preview-window{flex-direction:column;gap:.4rem;min-height:0;padding:.5rem .75rem;display:flex}.preview-toggle{color:var(--ink);cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:.1rem .2rem;font:600 .95rem Georgia,Times New Roman,serif}.preview-body{flex-direction:column;height:30vh;min-height:180px;display:flex;overflow:hidden}.preview-body.collapsed,.view-tabs,.workspace.phone-design .result,.workspace.phone-embroidery .preview-window{display:none}.preview-empty{text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;margin:auto;display:flex}.preview-empty small{font-size:.82rem}.preview-drop{flex-direction:column;flex:1;gap:.4rem;min-height:0;display:flex;position:relative}.preview-drop.busy{opacity:.55}.preview-drop.dragging:after{content:attr(data-release);z-index:5;pointer-events:none;text-align:center;color:var(--ink);border:3px dashed var(--thread);background:#f8efe0e0;border-radius:22px;justify-content:center;align-items:center;padding:1rem;font-weight:600;display:flex;position:absolute;inset:0}.preview-drop-error{flex:none;margin:0}.preview-file{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:6px;flex:none;align-self:center;padding:.4rem .9rem;font-size:.9rem;display:inline-block}.preview-file:hover{border-color:var(--thread)}.preview-file.busy{opacity:.5;cursor:progress}.preview-body .monogram-preview{flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.preview-body .design-canvas{flex-direction:column;flex:1;min-height:0;display:flex}.canvas-frame{flex:1;justify-content:center;min-height:0;display:flex}.preview-body .canvas-area{aspect-ratio:1;flex:none;width:auto;max-width:100%;height:100%}.preview-body .canvas-area>img{width:100%;height:100%}.canvas-tools{flex:none}@media (width>=641px) and (height>=501px){#root:has(.converter){height:100dvh;min-height:0;overflow:hidden}.topbar{flex:none;padding-block:.45rem;position:static}.toolbar{position:static}:is(html:has(.converter),body:has(.converter)){height:100%;overflow:hidden}#root:has(.converter) .footer{padding:.2rem;font-size:.72rem}.workspace{flex:1;grid-template-columns:minmax(240px,1fr) minmax(0,3.5fr);align-items:stretch;min-height:0}.workspace-right{flex-direction:column;gap:0;min-width:0;min-height:0;display:flex}.controls,.result,.preview-window{min-height:0;position:relative;overflow-y:auto}.result,.preview-window{scrollbar-gutter:stable;border-start-start-radius:0;flex:1}.view-tabs{z-index:1;flex:none;gap:.25rem;margin-bottom:-1px;display:flex;position:relative}.view-tabs button{color:var(--muted);border:1px solid #0000;cursor:pointer;background:0 0;border-bottom:0;border-radius:10px 10px 0 0;align-items:center;gap:.45rem;padding:.55rem 1.1rem;font:600 1.05rem Georgia,Times New Roman,serif;display:inline-flex}.view-tabs button:hover{color:var(--ink)}.view-tabs button.active{color:var(--ink);background:var(--panel);border-color:var(--line)}.tab-busy{border:2px solid var(--line);border-top-color:var(--thread);border-radius:50%;width:.8em;height:.8em;animation:.8s linear infinite tab-spin}@keyframes tab-spin{to{transform:rotate(360deg)}}.preview-toggle,.result>h2{display:none}.preview-window{order:0;padding:clamp(14px,2.5vw,22px);display:block}.preview-body,.preview-body.collapsed{gap:.4rem;height:auto;min-height:0;display:flex;overflow:visible}.preview-body .design-canvas{flex:none}.preview-body .monogram-preview,.preview-body .canvas-frame,.preview-body .preview-empty{box-sizing:border-box;aspect-ratio:4/3;width:100%;max-height:560px;color:var(--muted);text-align:center;border:10px solid var(--wood);background:#f4f1ea;border-radius:22px;flex:none;justify-content:center;align-items:center;margin:0;padding:1rem;font-size:1rem;display:flex;overflow:hidden;box-shadow:inset 0 0 0 2px #0000001a}}.footer a{color:inherit}.privacy{max-width:760px;margin:0 auto}.privacy p{line-height:1.55}.symbol-list{margin-top:.4rem}.symbol-list>summary{cursor:pointer}.symbol-list[open]>summary{margin-bottom:.4rem}.confirm-dialog{width:min(26rem,100vw - 32px);color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:0;box-shadow:0 18px 50px #1f2a3747}.confirm-dialog::backdrop{background:#1f2a3773}.confirm-body{padding:1.25rem 1.4rem}.confirm-body p{margin:0 0 1.1rem;font:600 1.05rem/1.35 Georgia,Times New Roman,serif}.confirm-buttons{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.confirm-buttons .primary{width:auto}.settings-toggle,.phone-tabs,.phone-error{display:none}.phone-bar,.phone-bar-row{display:contents}@media (width<=1180px),(pointer:coarse){input,select,textarea{font-size:16px!important}.topbar nav a{padding-block:.55rem}.language{min-height:40px}button.secondary,.symbol-none,.phone-bar .toolbar-action{min-height:44px}.church-letters button{min-width:2.6rem;min-height:2.6rem}.monogram-line-text button{min-width:44px;min-height:44px}.monogram-line-text input[type=color]{width:44px;min-height:44px}.threads.editable button{min-height:44px}summary{padding-block:.4rem}}@media (width<=1180px) and (width>=641px) and (height>=501px){.toolbar{flex-wrap:wrap;overflow:visible}.toolbar .toolbar-action{flex:auto}.workspace{grid-template-columns:minmax(280px,2fr) minmax(0,3fr);gap:.75rem;padding:.75rem 16px}}@media (width<=640px),(height<=500px){.topbar{gap:.25rem 1rem;padding-block:.5rem;position:static}.logo{font-size:1rem}.topbar-brand{flex-basis:100%}.topbar nav{flex-wrap:nowrap;gap:.75rem;width:100%;font-size:.9rem}.language{flex:0 6.5rem;min-width:0;margin-inline-start:auto}#root:has(.converter){padding-bottom:calc(4.25rem + env(safe-area-inset-bottom))}.toolbar{flex-wrap:wrap;align-items:stretch;gap:.6rem;position:static;overflow:visible}.settings-toggle{text-align:start;width:100%;min-height:40px;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;font:600 .95rem Segoe UI,system-ui,sans-serif;display:block}.settings-toggle small{color:var(--muted);margin-inline-start:.35rem;font-weight:400}.toolbar:not(.settings-open)>:not(.settings-toggle,.phone-bar){display:none}.toolbar .toolbar-machine,.toolbar .toolbar-mode,.toolbar .toolbar-fabric,.toolbar .toolbar-colors,.toolbar .toolbar-density{width:100%;flex:100%!important}.toolbar .toolbar-size{flex:1 1 0;width:auto}.toolbar>.secondary.toolbar-action{width:100%}.phone-bar{z-index:30;padding:.5rem 16px calc(.5rem + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--line);display:block;position:fixed;inset:auto 0 0;box-shadow:0 -4px 14px #1f2a3714}.phone-bar-row{align-items:stretch;gap:.5rem;display:flex}.phone-error{margin:0 0 .5rem;display:block}.phone-tabs{flex:50%;min-width:0;display:flex}.phone-tabs button{min-width:0;min-height:44px;font:inherit;color:var(--ink);border:1px solid var(--line);cursor:pointer;overflow-wrap:anywhere;background:#fff;flex:1;padding:.25rem;font-size:.85rem;line-height:1.15}.phone-tabs button:first-child{border-start-start-radius:8px;border-end-start-radius:8px}.phone-tabs button:last-child{border-start-end-radius:8px;border-end-end-radius:8px;margin-inline-start:-1px}.phone-tabs button.active{color:#fff;background:var(--ink);border-color:var(--ink)}.phone-bar .toolbar-action{white-space:normal;flex:50%;min-width:0;margin:0;padding:.25rem .5rem;font-size:.9rem;line-height:1.15}.workspace{flex-direction:column;gap:.75rem;padding:.75rem 16px;display:flex}.workspace.phone-embroidery .controls,.controls>.notice.error{display:none}.preview-window{z-index:10;position:sticky;top:0;box-shadow:0 6px 14px #1f2a371a}.preview-body{height:28dvh;min-height:110px}.preview-body:has(.preview-empty){height:auto;min-height:0}.preview-toggle{min-height:32px}.preview-body .canvas-tools{gap:0 .5rem;font-size:.78rem}.template-grid{grid-template-columns:none;grid-auto-columns:6.75rem;grid-auto-flow:column;padding-bottom:.35rem;overflow-x:auto}}@media (pointer:coarse){.canvas-grip{width:24px;height:24px}.canvas-grip.turn{margin-left:-12px;top:-32px}.canvas-grip.size{bottom:-12px;right:-12px}.canvas-grip.ring{margin:-12px 0 0 -12px}.canvas-remove{width:32px;height:32px;font-size:20px;line-height:28px;top:-16px;right:-16px}}[dir=rtl] .settings-toggle>span[aria-hidden],[dir=rtl] .preview-toggle>span[aria-hidden]{display:inline-block;transform:scaleX(-1)}
