.pt-backdrop{position:fixed;inset:0;z-index:400;display:grid;place-items:center;padding:20px;background:#030508c7;backdrop-filter:blur(10px);animation:pt-fade-in .25s ease}@keyframes pt-fade-in{0%{opacity:0}to{opacity:1}}.pt-skip-btn{position:absolute;top:22px;right:24px;z-index:5;display:flex;align-items:center;gap:6px;padding:8px 13px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#14161859;color:#fff;font-size:12.5px;font-weight:650;cursor:pointer;transition:background .15s ease,border-color .15s ease}.pt-skip-btn:hover{background:#1416188c;border-color:#ffffff52}.pt-window{width:min(1080px,100%);height:min(680px,92vh);display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;background:var(--bg);box-shadow:0 40px 120px #0000008c;overflow:hidden;animation:pt-pop-in .32s cubic-bezier(.2,.8,.3,1.1)}@keyframes pt-pop-in{0%{opacity:0;transform:scale(.96) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.pt-header{display:flex;align-items:center;gap:18px;padding:14px 20px;border-bottom:1px solid var(--line);background:var(--panel);flex:0 0 auto}.pt-header-spacer{width:1px}.pt-progress-track{flex:1;display:flex;align-items:center;justify-content:center;gap:6px}.pt-progress-dot{display:flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:var(--panel-2);color:var(--text-dim);font-size:12px;font-weight:650;cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease,transform .15s ease}.pt-progress-dot:hover{color:var(--text);transform:translateY(-1px)}.pt-progress-dot span{display:none}.pt-progress-dot-active{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.pt-progress-dot-active span{display:inline}.pt-progress-dot-done:not(.pt-progress-dot-active){color:var(--text);border-color:var(--accent)}@media (min-width: 640px){.pt-progress-dot span{display:inline}}.pt-scene-bar{height:3px;background:var(--line-soft);flex:0 0 auto}.pt-scene-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-2),var(--accent));transition:width .05s linear}.pt-body{flex:1;min-height:0;display:flex;background:var(--bg);padding:22px}.pt-scene-fade{flex:1;min-height:0;display:flex;animation:pt-scene-in .35s ease}@keyframes pt-scene-in{0%{opacity:0;transform:translateY(6px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}.pt-caption-bar{flex:0 0 auto;min-height:46px;display:flex;align-items:center;justify-content:center;padding:8px 24px;border-top:1px solid var(--line);background:var(--panel);text-align:center}.pt-caption-text{font-size:13px;font-weight:650;color:var(--text);animation:pt-caption-in .25s ease;max-width:640px}@keyframes pt-caption-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.pt-cta{margin:auto;max-width:460px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;animation:pt-scene-in .4s ease}.pt-cta-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--accent-soft);color:var(--accent);margin-bottom:4px}.pt-cta h2{margin:0;font-size:24px;font-weight:750;letter-spacing:-.02em;color:var(--text)}.pt-cta p{margin:0 0 6px;font-size:13.5px;line-height:1.6;color:var(--text-dim)}.pt-cta-btn{display:flex;align-items:center;gap:8px;border:none;border-radius:11px;padding:13px 26px;background:var(--accent);color:var(--accent-ink);font-size:14.5px;font-weight:750;cursor:pointer;transition:transform .15s ease,opacity .15s ease}.pt-cta-btn:hover{transform:translateY(-1px);opacity:.92}.pt-cta-btn:active{transform:translateY(0)}.pt-stage{position:relative;flex:1;min-width:0;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 40px var(--shadow);container-type:size}.pt-app-shell{height:100%;width:100%;display:flex;flex-direction:column;background:var(--bg);color:var(--text);overflow:hidden}.pt-app-shell .fm-body{overflow:hidden}.pt-app-shell.pt-dimmed{filter:brightness(.94) saturate(.9)}[data-browser=chromium] .pt-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#030508f0}[data-browser=chromium] .pt-app-shell.pt-dimmed{filter:none;position:relative}[data-browser=chromium] .pt-app-shell.pt-dimmed:after{content:"";position:absolute;inset:0;background:#06080a14;pointer-events:none;z-index:1}.pt-app-shell button,.pt-app-shell input,.pt-inline-modal-backdrop button,.pt-inline-modal-backdrop input{pointer-events:none}.pt-glyphnav-mini{width:152px;flex:0 0 auto;background:var(--panel);border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;padding:12px;gap:10px}.pt-glyphnav-mini-head{display:flex;align-items:center;justify-content:space-between;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint)}.pt-glyphnav-mini-count{font-family:var(--mono);color:var(--text-dim);background:var(--panel-2);border:1px solid var(--line-soft);border-radius:20px;padding:1px 6px;text-transform:none;letter-spacing:normal}.pt-glyphnav-mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.pt-glyphnav-mini-tile{aspect-ratio:1;display:grid;place-items:center;border-radius:6px;border:1px solid var(--line-soft);background:var(--panel-2);color:var(--text-dim);font-size:12px;font-weight:600}.pt-glyphnav-mini-tile.is-active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}@media (max-width: 860px){.pt-glyphnav-mini{display:none}}.pt-mock-glyph{display:grid;place-items:center;font-weight:700;font-size:20px;color:var(--text)}.pt-taper-readout{display:flex;justify-content:space-between;margin-top:8px;font-size:11px;color:var(--text-dim)}.pt-taper-readout b{font-family:var(--mono);color:var(--text);font-weight:700}.pt-canvas-guides{position:absolute;inset:0;pointer-events:none}.pt-guide-line{position:absolute;left:0;right:0;height:1px;background:var(--line);opacity:.5}.pt-guide-baseline{opacity:.75}.pt-brush-svg{position:absolute;inset:10%;width:80%;height:80%;overflow:visible}.pt-brush-stroke{fill:none;stroke:var(--accent);stroke-width:9;stroke-linecap:round;stroke-linejoin:round;transition:opacity .25s ease;filter:drop-shadow(0 0 6px color-mix(in srgb,var(--accent) 55%,transparent))}.pt-brush-fill{fill:none;stroke:var(--text);stroke-linecap:round;stroke-linejoin:round;transition:opacity .25s ease,stroke-width .4s ease,transform .4s ease}.pt-outline-badge{position:absolute;left:50%;bottom:6%;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11.5px;font-weight:700;transition:opacity .25s ease;white-space:nowrap}.pt-inline-modal-backdrop{position:absolute!important;inset:0!important;z-index:60;padding:18px!important}.pt-inline-modal{animation:pt-scene-in .3s ease}.pt-inline-modal{width:100%!important;height:100%!important}.pt-inline-modal .fm-lab-body{overflow-y:auto!important}.pt-generated-badge{display:inline-flex;align-items:center;gap:3px;color:var(--accent);font-size:10px;font-weight:750;white-space:nowrap}.pt-lab-specimen{color:var(--text);font-family:var(--sans);font-weight:600;letter-spacing:-.01em;text-align:center;padding:18px 0}.pt-lab-specimen-sub{font-size:15px;font-weight:500;color:var(--text-dim)}.pt-lab-kern-pair{position:relative;display:inline-flex}.pt-lab-kern-pair[data-active=true] .pt-lab-kern-glyph{color:var(--accent)}.pt-lab-kern-badge{position:absolute;top:-22px;left:50%;transform:translate(-50%);padding:1px 6px;border-radius:6px;background:var(--accent-soft);color:var(--accent);font-family:var(--mono);font-size:10.5px;font-weight:700}.pt-chip{padding:4px 11px;border-radius:999px;border:1px solid var(--line);background:var(--panel-3);color:var(--text-dim);font-size:11.5px;font-weight:650}.pt-chip-active{background:var(--accent-soft);color:var(--accent);border-color:transparent}.fm-feature-rule-tabs{display:flex;gap:8px;margin-bottom:2px}.pt-feature-merge-thumb{transition:transform .35s ease,opacity .25s ease}.pt-feature-merge-result{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.pt-cursor-wrap{position:absolute;left:0;top:0;transform:translate(calc(var(--cx, 0) * 1cqw),calc(var(--cy, 0) * 1cqh)) translate(-4px,-3px);transition:transform .5s cubic-bezier(.22,.61,.36,1);will-change:transform;z-index:90;pointer-events:none}.pt-cursor-icon{color:var(--accent-ink, #0c0f08);fill:var(--accent);stroke:var(--panel);filter:drop-shadow(0 3px 8px rgba(0,0,0,.35))}.pt-highlight{position:absolute;border:2px solid var(--accent);border-radius:10px;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 20%,transparent),0 0 22px color-mix(in srgb,var(--accent) 40%,transparent);transition:left .55s cubic-bezier(.22,.61,.36,1),top .55s cubic-bezier(.22,.61,.36,1),width .55s cubic-bezier(.22,.61,.36,1),height .55s cubic-bezier(.22,.61,.36,1);pointer-events:none;z-index:80}.pt-click-ripple{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 70%,transparent) 0%,transparent 70%);animation:pt-ripple-pop .55s ease-out forwards;pointer-events:none;z-index:85}@keyframes pt-ripple-pop{0%{opacity:.75;transform:scale(.4)}to{opacity:0;transform:scale(3.2)}}@media (max-width: 900px){.pt-window{height:min(640px,94vh)}.pt-body{padding:14px}}@media (max-width: 680px){.pt-header{gap:10px;padding:12px 14px}.pt-progress-dot span,.pt-glyphnav-mini{display:none}.pt-app-shell .fm-rightpanel{width:220px!important}.fm-feature-modal .fm-feature-thumb{width:40px;height:40px}.pt-caption-text{font-size:12px}.pt-cta h2{font-size:20px}}@media (max-width: 520px){.pt-app-shell .fm-rightpanel{display:none!important}.fm-family-auto-row{grid-template-columns:84px minmax(0,1fr)!important}}:root{--sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,select{-webkit-appearance:none;appearance:none}select{background-image:linear-gradient(45deg,transparent 50%,var(--text-dim) 50%),linear-gradient(135deg,var(--text-dim) 50%,transparent 50%);background-position:right 13px top 55%,right 8px top 55%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:26px}input[type=range]{-webkit-appearance:none;appearance:none;height:4px;border-radius:999px;background:var(--line);outline:none}input[type=range]::-webkit-slider-runnable-track{-webkit-appearance:none;height:4px;border-radius:999px;background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--fm-range-fill, 0%),var(--line) var(--fm-range-fill, 0%),var(--line) 100%)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:13px;height:13px;margin-top:-4.5px;border-radius:50%;background:var(--accent);border:2px solid var(--accent-ink);box-shadow:0 1px 3px var(--shadow);cursor:pointer}input[type=range]::-moz-range-track{height:4px;border-radius:999px;background:var(--line);border:none}input[type=range]::-moz-range-progress{height:4px;border-radius:999px;background:var(--accent)}input[type=range]::-moz-range-thumb{width:13px;height:13px;border-radius:50%;background:var(--accent);border:2px solid var(--accent-ink);box-shadow:0 1px 3px var(--shadow);cursor:pointer}input[type=range]:disabled{opacity:.4;cursor:not-allowed}.fm-root[data-theme=dark]{--bg: #0b0b0b;--panel: #121212;--panel-2: #191919;--panel-3: #202020;--border: #25252500;--line: #282828;--line-soft: #1e1e1e;--text: #f0f0f0;--text-dim: #8e8e8e;--text-faint: #5f5f5f;--ink: #f3f3f3;--accent: #c6f24e;--accent-2: #a6e034;--accent-ink: #0c0f08;--accent-soft: #1f2a10;--node-corner: #9e9e9e;--node-smooth: #6fd3ff;--node-symmetric: #c69bff;--guide: #494949;--guide-2: #6b5a2e;--grid: #262626;--grid-major: #3a3a3a;--handle-line: #4e4e4e;--canvas: #171717;--thumb-ink: #d9d9d9;--danger: #ff6b57;--overlap: #a6e034;--overlap-canvas: #a6e034;--shadow: rgba(0, 0, 0, .5);--sb: #4fd3ff;--sb-soft: #0e2b36;--origin: #ff8a5b;--origin-soft: #3a2013;--auto: #7bd858;--auto-2: #8be06a;--auto-soft: #16321c;--m-ascender: #9b8cff;--m-cap: #5ec8ff;--m-xheight: #6fe0a0;--m-descender: #ff9d5c}.fm-root[data-theme=light]{--bg: #f8f8f8;--panel: #ffffff;--panel-2: #f4f4f4;--panel-3: #ededed;--border: #00000000;--line: #e6e6e6;--line-soft: #f0f0f0;--text: #181818;--text-dim: #686868;--text-faint: #a1a1a1;--ink: #1b1b1b;--accent: #4a5a68;--accent-2: #384754;--accent-ink: #ffffff;--accent-soft: #eaedf0;--node-corner: #747474;--node-smooth: #1f8fce;--node-symmetric: #7b45d6;--guide: #b0b0b0;--guide-2: #b79a4e;--grid: #e2e2e2;--grid-major: #cbcbcb;--handle-line: #aeaeae;--canvas: #fcfcfc;--thumb-ink: #1f1f1f;--danger: #d1402d;--overlap: #6ea11a;--overlap-canvas: #a6e034;--shadow: rgba(20, 22, 24, .08);--sb: #0e86b8;--sb-soft: #e2f4fb;--origin: #c1471f;--origin-soft: #fbe6dc;--auto: #1f9d52;--auto-2: #17853f;--auto-soft: #e2f6e8;--m-ascender: #6a56d6;--m-cap: #1f7fce;--m-xheight: #1f9d6c;--m-descender: #c1691f}.fm-root{height:100vh;height:100dvh;width:100%;display:flex;flex-direction:column;background:var(--bg);color:var(--text);overflow:hidden}button,input{font-family:inherit}::selection{background:var(--accent);color:var(--accent-ink)}html[data-theme=dark]{color-scheme:dark}html[data-theme=light]{color-scheme:light}*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-track-piece{background:transparent}*::-webkit-scrollbar-corner{background:transparent}*::-webkit-scrollbar-button{display:none;width:0;height:0}html[data-theme=dark] ::-webkit-scrollbar-thumb{background:#282828;border-radius:999px}html[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#5f5f5f}html[data-theme=light] ::-webkit-scrollbar-thumb{background:#cacaca;border-radius:999px}html[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.fm-topbar{min-height:48px;flex:0 0 auto;display:flex;align-items:center;gap:6px;padding:8px 12px;background:var(--panel);border-bottom:1px solid var(--line);min-width:0;flex-wrap:nowrap;overflow-x:hidden;overflow-y:hidden}.fm-topbar::-webkit-scrollbar{display:none}.fm-topbar>*{flex:0 0 auto}.fm-topbar .fm-topbtn{white-space:nowrap}.fm-topbar-row2{display:contents}.fm-topbar-row2>*{flex:0 0 auto}.fm-logo{display:flex;align-items:center;gap:10px}.fm-logo-image{display:block;width:auto;height:24px;max-width:130px;object-fit:contain;flex:0 0 auto}.fm-logo .mark{width:28px;height:28px;border-radius:8px;background:var(--accent);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 1px var(--accent-2),0 4px 14px -4px var(--accent)}.fm-logo .mark-dot{width:9px;height:9px;border-radius:50%;background:var(--accent-ink)}.fm-logo-name{font-size:16px;font-weight:800;letter-spacing:-.02em;color:var(--text)}.fm-logo-accent{color:var(--accent)}.fm-divider{width:1px;height:26px;background:var(--line)}.fm-fontname{font-family:var(--mono);font-size:12px;background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:6px 9px;color:var(--text);width:clamp(100px,12vw,170px);min-width:0;outline:none;transition:border-color .15s ease,background .15s ease}.fm-fontname:hover{border-color:var(--text-faint)}.fm-fontname:focus{border-color:var(--accent)}.fm-topbtn-group{display:flex;gap:2px}.fm-topbtn{display:flex;align-items:center;gap:4px;border:none;background:transparent;color:var(--text-dim);padding:6px 7px;border-radius:8px;cursor:pointer;font-size:12px;font-weight:600;transition:background .15s ease,color .15s ease}.fm-topbtn:hover:not(:disabled){background:var(--panel-2);color:var(--text)}.fm-topbtn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fm-topbtn:disabled{opacity:.3;cursor:not-allowed}.fm-topbtn-locked{opacity:.45}.fm-topbtn-locked:hover{opacity:.7}.fm-lock-badge-inline{margin-left:2px;vertical-align:-1px;color:var(--accent)}.fm-align-group{display:flex;align-items:center;gap:1px}.fm-align-btn{display:grid;place-items:center;width:28px;height:28px;border:none;border-radius:7px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .15s ease,color .15s ease}.fm-align-btn:hover:not(:disabled){background:var(--panel);color:var(--text)}.fm-align-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fm-align-btn:disabled{opacity:.3;cursor:not-allowed}.fm-align-btn.danger:hover:not(:disabled){color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,transparent)}.fm-align-divider{width:1px;height:16px;background:var(--line);margin:0 3px;flex:0 0 auto}.fm-spacer{flex:1}.fm-theme-toggle{width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s ease,color .15s ease}.fm-theme-toggle:hover{border-color:var(--accent);color:var(--accent)}.fm-theme-toggle-bare{border-color:transparent;background:transparent;color:var(--text-dim)}.fm-theme-toggle-bare:hover{border-color:transparent;background:var(--panel-2);color:var(--accent)}.fm-overlay-close{width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:var(--panel-2);color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s ease,color .15s ease,background .15s ease}.fm-overlay-close:hover,.fm-overlay-close:focus-visible{border-color:var(--text-faint);color:var(--text);background:var(--panel)}.fm-iconbtn{width:30px;height:30px;border-radius:8px;border:none;background:transparent;color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .14s ease,color .14s ease}.fm-iconbtn:hover,.fm-iconbtn:focus-visible{background:var(--panel-2);color:var(--text)}.fm-auth-placeholder{width:34px;height:34px;flex:0 0 auto}.fm-auth-user{position:relative;flex:0 0 auto}.fm-auth-avatar-btn{display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:20px;padding:4px 9px 4px 4px;cursor:pointer;transition:border-color .15s ease}.fm-auth-avatar-btn:hover{border-color:var(--accent)}.fm-auth-avatar{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-size:10.5px;font-weight:700;letter-spacing:-.02em;flex:0 0 auto}.fm-auth-plan-badge{display:inline-flex;align-items:center;gap:3px;font-size:10.5px;font-weight:650;letter-spacing:.03em;color:var(--text-dim);text-transform:uppercase}.fm-auth-plan-pro{color:var(--accent)}.fm-auth-menu{position:fixed;top:60px;right:14px;z-index:190;width:220px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:0 16px 44px #0000005c;display:grid;gap:8px}.fm-auth-menu-email{font-size:12px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-auth-menu-plan{font-size:11.5px;color:var(--text-dim)}.fm-auth-menu-plan strong{color:var(--text)}.fm-auth-menu-item{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:8px;padding:7px 9px;font-size:12px;font-weight:600;cursor:pointer;transition:border-color .15s ease,color .15s ease}.fm-auth-menu-item:hover{border-color:var(--danger);color:var(--danger)}.fm-auth-backdrop{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:28px;background:#030508b8;backdrop-filter:blur(8px)}.fm-auth-dialog{width:min(400px,calc(100vw - 40px));border:1px solid var(--line);border-radius:16px;background:var(--panel);box-shadow:0 28px 90px #00000075}.fm-auth-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 14px;border-bottom:1px solid var(--line)}.fm-auth-dialog h2{margin:0;font-size:17px;font-weight:650;letter-spacing:-.02em}.fm-auth-form{display:grid;gap:12px;padding:18px 20px 20px}.fm-auth-form form{display:grid;gap:12px}.fm-auth-note{font-size:12.5px;line-height:1.5;color:var(--text-dim);margin:0}.fm-auth-note code{font-family:var(--mono);font-size:11.5px;background:var(--panel-2);border-radius:4px;padding:1px 5px}.fm-auth-note-error{color:var(--danger)}.fm-welcome-backdrop{animation:fm-welcome-fade-in .2s ease}.fm-welcome-dialog{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;padding:30px 26px 26px;text-align:center;animation:fm-welcome-pop-in .28s cubic-bezier(.2,.8,.3,1.1)}.fm-welcome-close{position:absolute;top:10px;right:10px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;border:none;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .14s ease,color .14s ease}.fm-welcome-close:hover{background:var(--panel-2);color:var(--text)}.fm-welcome-icon{color:var(--accent);margin-top:2px}.fm-welcome-greeting{margin:4px 0 0;font-size:16px;font-weight:700;letter-spacing:-.01em}.fm-welcome-sub{margin:0 0 6px;font-size:13px;color:var(--text-dim);line-height:1.5}.fm-welcome-dialog .fm-auth-submit-btn{width:100%}@keyframes fm-welcome-fade-in{0%{opacity:0}to{opacity:1}}@keyframes fm-welcome-pop-in{0%{opacity:0;transform:scale(.94) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.fm-auth-submit-btn{display:flex;align-items:center;justify-content:center;gap:7px;border:none;border-radius:9px;padding:10px 14px;background:var(--accent);color:var(--accent-ink);font-size:13px;font-weight:700;cursor:pointer;transition:opacity .15s ease}.fm-auth-submit-btn:hover:not(:disabled){opacity:.9}.fm-auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.fm-auth-dialog input{width:100%;min-width:0;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:9px;outline:none;background:var(--panel-2);color:var(--text);font:inherit;transition:border-color .15s ease,box-shadow .15s ease}.fm-auth-dialog input::placeholder{color:var(--text-faint)}.fm-auth-dialog input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.fm-auth-password-field{position:relative}.fm-auth-password-field input{padding-right:40px}.fm-auth-password-toggle{position:absolute;top:50%;right:6px;transform:translateY(-50%);display:grid;place-items:center;width:28px;height:28px;border:none;background:transparent;border-radius:7px;color:var(--text-dim);cursor:pointer;transition:color .15s ease,background .15s ease}.fm-auth-password-toggle{transition:color .15s ease,background .15s ease,transform .15s ease}.fm-auth-password-toggle:hover{color:var(--text);background:var(--panel-2);transform:translateY(-50%) scale(1.04)}.fm-auth-password-toggle:active{transform:translateY(-50%) scale(.96)}.fm-auth-password-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fm-auth-gate-backdrop{z-index:300}.fm-auth-gate-dialog{width:min(380px,calc(100vw - 32px))}.fm-auth-gate-header{display:flex;justify-content:space-between;align-items:center;padding:22px 20px 6px;border-bottom:none}.fm-auth-gate-watch-demo{display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--panel-2);color:var(--text-dim);border-radius:999px;padding:6px 11px;font-size:11.5px;font-weight:650;cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.fm-auth-gate-watch-demo:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.fm-auth-gate-form{padding-top:4px}.fm-auth-gate-intro{display:grid;gap:4px;text-align:center;margin-bottom:2px}.fm-auth-gate-intro h2{margin:0;font-size:18px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.fm-auth-gate-intro .fm-auth-note{text-align:center}.fm-auth-gate-email>span{text-align:left}.fm-auth-gate-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.fm-auth-btn-free{background:var(--panel-3);color:var(--text);border:1px solid var(--line)}.fm-auth-btn-free:hover:not(:disabled){border-color:var(--accent);opacity:1;color:var(--text)}.fm-auth-btn-pro{background:var(--accent);color:var(--accent-ink)}.fm-auth-gate-wa{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:4px;padding:8px 10px;border:none;background:transparent;color:var(--text-dim);font-size:12px;font-weight:600;letter-spacing:-.01em;cursor:pointer;border-radius:8px;transition:color .15s ease,background .15s ease}.fm-auth-gate-wa:hover{color:var(--accent);background:var(--panel-2)}.fm-auth-gate-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);margin-bottom:2px}.fm-auth-gate-tab{border:none;background:transparent;color:var(--text-dim);border-radius:7px;padding:7px 10px;font-size:12.5px;font-weight:650;cursor:pointer;transition:background .15s ease,color .15s ease}.fm-auth-gate-tab:hover{color:var(--text)}.fm-auth-gate-tab-active{background:var(--panel);color:var(--text);box-shadow:0 1px 3px var(--shadow)}.fm-auth-link-btn{justify-self:start;border:none;background:transparent;padding:0;color:var(--accent);font-size:12px;font-weight:650;cursor:pointer;text-decoration:none}.fm-auth-link-btn:hover{text-decoration:underline}@media (max-width: 420px){.fm-auth-gate-btns{grid-template-columns:1fr}}.fm-pro-modal-backdrop{z-index:260}.fm-pro-modal-dialog{width:min(400px,calc(100vw - 40px))}.fm-pro-modal-heading{display:flex;align-items:center;gap:9px}.fm-pro-modal-icon{display:grid;place-items:center;width:28px;height:28px;flex:0 0 auto;border-radius:8px;background:var(--accent-soft);color:var(--accent)}.fm-pro-modal-actions{display:flex;justify-content:flex-end}.fm-pro-modal-actions a.fm-auth-submit-btn{text-decoration:none}.fm-body{flex:1;display:flex;min-height:0}.fm-floating-toolbar{position:absolute;left:50%;bottom:14px;transform:translate(-50%);z-index:20;display:flex;flex-direction:row;align-items:center;gap:0;padding:5px;background:color-mix(in srgb,var(--panel) 88%,transparent);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:14px;box-shadow:0 12px 34px var(--shadow),0 0 0 1px color-mix(in srgb,var(--accent) 10%,transparent);max-width:calc(100% - 32px)}.fm-tool-group{display:flex;flex-direction:row;align-items:center;gap:5px}.fm-toolbar-divider{width:1px;height:21px;background:var(--line);margin:0 6px;flex:0 0 auto}.fm-tool{width:35px;height:35px;border-radius:10px;flex:0 0 auto;border:1px solid transparent;background:transparent;color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;transition:background .15s ease,color .15s ease,border-color .15s ease}.fm-tool:hover:not(:disabled){background:var(--panel-2);color:var(--text)}.fm-tool.active{background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.fm-tool:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fm-tool:disabled{opacity:.26;cursor:not-allowed}.fm-tool-muted{color:var(--text-faint);opacity:.55}.fm-tool-locked{position:relative;opacity:.4}.fm-tool-locked:hover{opacity:.65;background:var(--panel-2)}.fm-tool-lock-badge{position:absolute;top:-3px;right:-3px;display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:var(--panel);border:1px solid var(--line);color:var(--accent)}.fm-tool-muted:hover{opacity:.85;background:var(--panel-2);color:var(--text-dim)}.fm-home-tool-icon{width:18px;height:18px;display:block;flex:0 0 auto;background-color:currentColor;-webkit-mask-image:url(/icon-home.svg);mask-image:url(/icon-home.svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.fm-tool-tip{position:absolute;left:50%;bottom:43px;transform:translate(-50%);background:var(--text);color:var(--bg);font-size:11px;font-weight:600;padding:5px 9px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s ease;z-index:30;box-shadow:0 6px 18px var(--shadow)}.fm-tool:hover .fm-tool-tip{opacity:1}.fm-shape-tool-wrap{position:relative;display:inline-flex}.fm-shape-popover{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%);display:flex;flex-direction:row;align-items:center;gap:4px;padding:5px;z-index:31;background:color-mix(in srgb,var(--panel) 92%,transparent);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:12px;box-shadow:0 12px 28px var(--shadow)}.fm-shape-popover-btn{width:32px;height:32px;border-radius:8px;flex:0 0 auto;border:1px solid transparent;background:transparent;color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease,border-color .15s ease}.fm-shape-popover-btn:hover{background:var(--panel-2);color:var(--text)}.fm-shape-popover-btn.active{background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}@media (max-width: 720px){.fm-floating-toolbar{bottom:10px;padding:4px;gap:0}.fm-tool{width:30px;height:30px;border-radius:8px}.fm-toolbar-divider{margin:0 3px}}.fm-sketch-toggle{position:absolute;top:14px;left:14px;z-index:22;display:flex;align-items:center;gap:7px;padding:8px 12px 8px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));background:color-mix(in srgb,var(--panel) 88%,transparent);backdrop-filter:blur(10px);color:var(--text-dim);font-size:12px;font-weight:600;letter-spacing:.01em;cursor:pointer;box-shadow:0 10px 28px var(--shadow);transition:background .15s ease,color .15s ease,border-color .15s ease,transform .1s ease}.fm-sketch-toggle:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}.fm-sketch-toggle:active{transform:scale(.97)}.fm-sketch-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fm-sketch-toggle.active{background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 55%,transparent);box-shadow:0 10px 28px var(--shadow),0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent),0 0 18px color-mix(in srgb,var(--accent) 20%,transparent)}.fm-sketch-toggle-label{white-space:nowrap}@media (max-width: 720px){.fm-sketch-toggle{padding:8px;border-radius:50%}.fm-sketch-toggle-label{display:none}}.fm-sketch-toolbar{position:absolute;top:50%;left:14px;transform:translateY(-50%);z-index:21;display:flex;flex-direction:column;align-items:center;gap:5px;padding:5px;background:color-mix(in srgb,var(--panel) 88%,transparent);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:14px;box-shadow:0 12px 34px var(--shadow),0 0 0 1px color-mix(in srgb,var(--accent) 10%,transparent)}.fm-toolbar-divider-h{width:21px;height:1px;margin:3px 0}.fm-tool-tip-right{inset:50% -9px auto auto;transform:translate(100%,-50%)}.fm-sketch-toolbar .fm-tool:hover .fm-tool-tip-right{opacity:1}.fm-tool-danger:hover:not(:disabled){color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.fm-sketch-toolbar-grip{width:100%;height:14px;display:flex;align-items:center;justify-content:center;color:var(--text-faint);cursor:grab;touch-action:none}.fm-sketch-toolbar-grip:active{cursor:grabbing}.fm-sketch-toolbar.horizontal{flex-direction:row}.fm-sketch-toolbar.horizontal .fm-sketch-toolbar-grip{width:14px;height:100%}@media (max-width: 720px){.fm-sketch-toolbar{left:8px;padding:4px;gap:3px}.fm-sketch-toolbar .fm-tool{width:30px;height:30px;border-radius:8px}}.fm-root[data-sketch-mode=true] .fm-glyphnav{width:0;min-width:0;border-right-width:0;overflow:hidden;pointer-events:none;transition:width .18s ease,border-color .18s ease}.fm-root[data-sketch-mode=true] .fm-body{position:relative}.fm-root[data-sketch-mode=true] .fm-rightpanel{position:absolute;top:0;right:0;bottom:0;width:288px;min-width:288px;overflow-y:auto;pointer-events:auto;transform:translate(100%);transition:transform .22s ease;z-index:24;box-shadow:-14px 0 34px var(--shadow)}.fm-root[data-sketch-mode=true][data-sketch-panel-open=true] .fm-rightpanel{transform:translate(0)}.fm-root[data-sketch-mode=true] .fm-canvas-area{padding:10px}.fm-root[data-sketch-mode=true] .fm-canvas-frame{border-radius:10px}.fm-root[data-sketch-mode=true] .fm-canvas-wrap{touch-action:none}.fm-sketch-panel-toggle{position:absolute;top:50%;right:14px;transform:translateY(-50%);z-index:25;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));background:color-mix(in srgb,var(--panel) 88%,transparent);backdrop-filter:blur(10px);color:var(--text-dim);cursor:pointer;box-shadow:0 10px 26px var(--shadow);transition:right .22s ease,color .15s ease,border-color .15s ease}.fm-sketch-panel-toggle:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 55%,var(--line));transform:translateY(-50%) scale(1.06)}.fm-sketch-panel-toggle:active{transform:translateY(-50%) scale(.94)}.fm-sketch-panel-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fm-root[data-sketch-mode=true][data-sketch-panel-open=true] .fm-sketch-panel-toggle{right:302px}@media (max-width: 720px){.fm-root[data-sketch-mode=true] .fm-rightpanel{width:84vw;min-width:0}.fm-root[data-sketch-mode=true][data-sketch-panel-open=true] .fm-sketch-panel-toggle{right:calc(84vw + 14px)}}.fm-glyph-stepper{position:absolute;left:50%;bottom:67px;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:8px;padding:4px 10px;background:color-mix(in srgb,var(--panel) 88%,transparent);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:999px;box-shadow:0 10px 26px var(--shadow)}.fm-glyph-stepper-btn{width:26px;height:26px;border-radius:50%;border:1px solid transparent;background:transparent;color:var(--text-dim);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,color .15s ease}.fm-glyph-stepper-btn:hover:not(:disabled){background:var(--panel-2);color:var(--text)}.fm-glyph-stepper-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fm-glyph-stepper-btn:disabled{opacity:.3;cursor:not-allowed}.fm-glyph-stepper-char{font-size:13px;font-weight:700;min-width:14px;text-align:center;color:var(--text)}@media (max-width: 720px){.fm-glyph-stepper{bottom:54px;padding:3px 8px;gap:6px}.fm-glyph-stepper-btn{width:32px;height:32px}}@media (pointer: coarse){.fm-glyph-stepper{padding:7px 16px;gap:12px}.fm-glyph-stepper-btn{width:48px;height:48px}.fm-glyph-stepper-btn svg{width:22px;height:22px}.fm-glyph-stepper-char{font-size:16px;min-width:18px}}.fm-glyph-sidenav-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:20;width:38px;height:38px;border-radius:50%;border:1.5px solid var(--accent);background:color-mix(in srgb,var(--panel) 85%,transparent);backdrop-filter:blur(6px);color:var(--accent);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 18px -6px color-mix(in srgb,var(--accent) 45%,transparent),0 2px 8px var(--shadow);transition:background .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease}.fm-glyph-sidenav-btn:hover:not(:disabled){transform:translateY(-50%) scale(1.08);box-shadow:0 8px 22px -6px color-mix(in srgb,var(--accent) 60%,transparent),0 3px 10px var(--shadow)}.fm-glyph-sidenav-btn:active:not(:disabled){background:var(--accent);color:var(--accent-ink);transform:translateY(-50%) scale(.96)}.fm-glyph-sidenav-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fm-glyph-sidenav-btn:disabled{opacity:.3;cursor:not-allowed;box-shadow:none}.fm-glyph-sidenav-btn-left{left:40px}.fm-glyph-sidenav-btn-right{right:40px}@media (max-width: 720px){.fm-glyph-sidenav-btn-left{left:18px}.fm-glyph-sidenav-btn-right{right:18px}}@media (pointer: coarse){.fm-glyph-sidenav-btn{width:44px;height:44px}.fm-glyph-sidenav-btn svg{width:24px;height:24px}}button:not(:disabled):not(.fm-tile):not(.fm-brush-card):not(.fm-glyph-sidenav-btn):not(.fm-auth-password-toggle):not(.fm-sketch-panel-toggle){transition:transform .15s ease}button:hover:not(:disabled):not(.fm-tile):not(.fm-brush-card):not(.fm-glyph-sidenav-btn):not(.fm-auth-password-toggle):not(.fm-sketch-panel-toggle){transform:scale(1.04)}.fm-glyphnav{width:212px;flex:0 0 auto;background:var(--panel);border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;overflow-x:hidden}.fm-glyphnav-head{padding:14px 14px 10px;border-bottom:1px solid var(--line-soft)}.fm-glyphnav-eyebrow-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.fm-glyphnav-eyebrow-row .fm-panel-eyebrow{margin-bottom:0}.fm-glyph-count-badge{font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.02em;color:var(--text-dim);background:var(--panel-2);border:1px solid var(--line-soft);border-radius:20px;padding:2px 8px;white-space:nowrap}.fm-glyphnav-eyebrow-right{display:flex;align-items:center;gap:6px}.fm-glyph-select-toggle{display:flex;align-items:center;gap:4px;font-size:10.5px;font-weight:600;letter-spacing:.02em;color:var(--text-dim);background:var(--panel-2);border:1px solid var(--line-soft);border-radius:20px;padding:3px 9px;cursor:pointer;white-space:nowrap;transition:border-color .14s ease,background .14s ease,color .14s ease}.fm-glyph-select-toggle:hover{border-color:var(--text-faint)}.fm-glyph-select-toggle.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.fm-group-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:16px 2px 8px}.fm-group-label-row .fm-group-label{margin:0}.fm-group-select-all{font-family:var(--sans, inherit);font-size:10.5px;font-weight:600;color:var(--accent);background:none;border:none;cursor:pointer;padding:0}.fm-group-select-all:hover{text-decoration:underline}.fm-tile.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent)}.fm-glyph-select-hint{flex:0 0 auto;padding:8px 12px;border-top:1px solid var(--line-soft);background:var(--panel-2);display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;font-size:11px;color:var(--text-dim);line-height:1.4}.fm-glyph-batch-count{font-family:var(--mono);font-weight:700;color:var(--accent-ink);background:var(--accent);border-radius:20px;padding:1px 8px;font-size:11px}.fm-glyph-select-clear{margin-left:auto;font-size:11px;font-weight:600;color:var(--accent);background:none;border:none;cursor:pointer;padding:0;white-space:nowrap}.fm-glyph-select-clear:hover{text-decoration:underline}.fm-panel-eyebrow{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);margin-bottom:10px}.fm-family-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.fm-family-tabs button{position:relative;min-width:0;flex:1 1 calc(33.33% - 4px);height:31px;padding:0 6px;border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:color-mix(in srgb,var(--text) 72%,var(--text-dim));cursor:pointer;font-size:11px;font-weight:700;letter-spacing:-.01em;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease,transform .1s ease}.fm-family-tab-custom{display:flex;align-items:center;justify-content:center;gap:4px;overflow:hidden}.fm-family-tab-custom-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-family-tab-remove{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:14px;height:14px;border-radius:50%;color:inherit;opacity:.55;cursor:pointer;transition:opacity .14s ease,background .14s ease}.fm-family-tab-remove:hover{opacity:1;background:color-mix(in srgb,currentColor 18%,transparent)}.fm-family-add-form{display:flex;align-items:center;gap:6px;margin-bottom:10px}.fm-family-add-form input{flex:1;min-width:0;height:30px;padding:0 9px;border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-size:11.5px;outline:none;transition:border-color .15s ease}.fm-family-add-form input:focus{border-color:var(--accent)}.fm-family-add-confirm,.fm-family-add-cancel{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--text-dim);cursor:pointer;transition:background .14s ease,color .14s ease,border-color .14s ease}.fm-family-add-confirm{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.fm-family-add-confirm:disabled{opacity:.5;cursor:not-allowed}.fm-family-add-cancel:hover{color:var(--text);border-color:var(--text-faint)}.fm-family-add-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-bottom:10px}.fm-family-tabs button:hover:not(.active){color:var(--text);border-color:var(--text-faint)}.fm-family-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fm-family-tabs button.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 64%,transparent),0 0 14px color-mix(in srgb,var(--accent) 34%,transparent),inset 0 1px color-mix(in srgb,#fff 30%,transparent)}.fm-family-tabs button:active{transform:translateY(1px)}.fm-family-tabs button.fm-family-tab-locked{opacity:.5;cursor:pointer}.fm-family-tabs button.fm-family-tab-locked:hover{opacity:.75}.fm-family-tabs button.fm-family-tab-locked .fm-lock-badge-inline{margin-left:3px}.fm-search{position:relative}.fm-search input{width:100%;padding:9px 10px 9px 32px;border-radius:9px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-size:12.5px;outline:none;transition:border-color .15s ease}.fm-search input:focus{border-color:var(--accent)}.fm-search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-faint)}.fm-glyphlist{flex:1;overflow-y:auto;padding:0 12px 16px;overflow-anchor:none}.fm-glyphlist-inner{position:relative}.fm-glyphlist-header{position:absolute;left:0;right:0;display:flow-root}.fm-grid.fm-grid-row{position:absolute;left:0;right:0;content-visibility:visible;contain-intrinsic-size:none}.fm-glyphlist-probe{position:absolute;left:0;right:0;top:0;visibility:hidden;pointer-events:none}.fm-glyphlist-probe .fm-glyphlist-header,.fm-glyphlist-probe .fm-grid.fm-grid-row{position:static}.fm-glyphnav-foot{flex:0 0 auto;padding:10px 12px 12px;border-top:1px solid var(--line-soft)}.fm-glyphnav-foot .fm-action-btn{display:flex;align-items:center;justify-content:center;gap:6px}.fm-group-label{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);margin:16px 2px 8px}.fm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;content-visibility:auto;contain-intrinsic-size:0 400px}.fm-tile{aspect-ratio:1;border-radius:11px;border:1px solid var(--line);background:var(--panel-2);cursor:pointer;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:border-color .14s ease,background .14s ease,transform .1s ease}.fm-tile:hover{border-color:var(--text-faint);transform:translateY(-1px)}.fm-tile:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fm-tile.active{background:var(--accent-soft);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.fm-tile-thumb{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--thumb-ink)}.fm-tile.active .fm-tile-thumb{color:var(--accent)}.fm-thumb-svg{width:78%;height:78%;display:block}.fm-thumb-char{font-size:20px;font-weight:600;color:var(--text-dim);line-height:1;min-width:0;max-width:100%;box-sizing:border-box;padding:0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.fm-thumb-char.fm-thumb-char-multi{font-size:11px;letter-spacing:-.02em}.fm-tile.active .fm-thumb-char{color:var(--accent)}.fm-tile-dot{position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 6px var(--accent)}.fm-canvas-wrap{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--bg);contain:layout style}.fm-canvas-area{flex:1;min-height:0;padding:20px;display:flex;position:relative;contain:layout paint}.fm-canvas-frame{flex:1;min-width:0;background:radial-gradient(120% 120% at 50% 0%,color-mix(in srgb,var(--panel-2) 55%,var(--canvas)) 0%,var(--canvas) 65%);border:1px solid var(--line);border-radius:16px;box-shadow:inset 0 1px color-mix(in srgb,var(--text) 6%,transparent);overflow:hidden;position:relative;contain:paint;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.fm-canvas-frame svg{display:block;width:100%;height:100%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;touch-action:none;transform:translateZ(0);will-change:transform}.fm-root[data-theme=dark]{--ruler-guide: #ff2ec4;--ruler-bg: #0f0f0f;--ruler-tick: #313131;--ruler-tick-major: #4d4d4d;--ruler-label: #5e5e5e;--ruler-border: #202020}.fm-root[data-theme=light]{--ruler-guide: #d6007a;--ruler-bg: #f2f2f2;--ruler-tick: #d4d4d4;--ruler-tick-major: #a1a1a1;--ruler-label: #a1a1a1;--ruler-border: #e3e3e3}.fm-ruler-corner{background:var(--ruler-bg);border-right:1px solid var(--ruler-border);border-bottom:1px solid var(--ruler-border);box-sizing:border-box}.fm-ruler{overflow:visible;display:block}.fm-ruler-bg{fill:var(--ruler-bg)}.fm-ruler-border{stroke:var(--ruler-border);stroke-width:1}.fm-ruler-tick{stroke:var(--ruler-tick);stroke-width:1}.fm-ruler-tick-major{stroke:var(--ruler-tick-major);stroke-width:1}.fm-ruler-label{fill:var(--ruler-label);font-size:8px;font-family:var(--mono);dominant-baseline:hanging;pointer-events:none;user-select:none;-webkit-user-select:none}.fm-ruler-guide-marker{stroke:var(--ruler-guide);stroke-width:2.5;opacity:1}.fm-bottombar{min-height:44px;flex:0 0 auto;border-top:1px solid var(--line);background:var(--panel);display:flex;align-items:center;gap:10px;padding:6px 14px;font-size:11.5px;color:var(--text-dim);flex-wrap:nowrap;overflow-x:hidden;overflow-y:hidden}.fm-bottombar::-webkit-scrollbar{display:none}.fm-bottombar>*{flex:0 0 auto}.fm-bottombar button{display:flex;align-items:center;gap:6px;background:transparent;border:none;color:var(--text-dim);cursor:pointer;font-size:11.5px;font-weight:600;padding:5px 8px;border-radius:8px;transition:background .14s ease,color .14s ease}.fm-bottombar button:hover{background:var(--panel-2);color:var(--text)}.fm-bottombar button.on{color:var(--accent);background:var(--accent-soft)}.fm-bottom-divider{width:1px;height:20px;background:var(--line)}.fm-icon-btn{display:flex;align-items:center;justify-content:center;padding:5px!important;background:transparent;border:none;color:var(--text-dim);cursor:pointer;border-radius:7px;transition:background .14s ease,color .14s ease}.fm-icon-btn:hover{background:var(--panel-2);color:var(--text)}.fm-zoom-controls{display:flex;align-items:center;gap:8px}.fm-zoom-value{font-family:var(--mono);font-size:11.5px;color:var(--text);min-width:42px;text-align:center}.fm-grid-size-value{font-family:var(--mono);font-size:11px;color:var(--text);min-width:28px;text-align:center}.fm-zoom-controls input[type=range]{width:110px;accent-color:var(--accent)}.fm-upm{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.fm-hint-inline{margin-left:auto;display:flex;align-items:center;gap:10px}.fm-inline-field{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--text-dim)}.fm-inline-field input{width:58px;padding:4px 7px;border-radius:7px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-family:var(--mono);font-size:11.5px;outline:none}.fm-inline-field input:focus{border-color:var(--accent)}.fm-preview-bar{flex:0 0 auto;border-top:1px solid var(--line);background:var(--panel);display:flex;flex-direction:column;padding:0 16px 10px;gap:8px}.fm-preview-resize-handle{flex:0 0 auto;display:flex;align-items:center;justify-content:center;height:16px;margin:0 -16px;cursor:row-resize;touch-action:none}.fm-preview-resize-grip{width:36px;height:3px;border-radius:999px;background:var(--text-faint);opacity:.5;transition:background .12s ease,opacity .12s ease,width .12s ease}.fm-preview-resize-handle:hover .fm-preview-resize-grip{width:48px;opacity:.85;background:color-mix(in srgb,var(--accent) 55%,var(--text-dim))}.fm-preview-resize-handle.active .fm-preview-resize-grip{width:48px;opacity:1;background:var(--accent)}.fm-preview-stage{overflow-x:hidden;overflow-y:auto;min-height:40px;color:var(--text);border-radius:8px;padding:4px 10px;margin:0 -10px;transition:background .12s ease,color .12s ease}.fm-preview-stage.dark{background:#0b0b0b;color:#f3f3f3}.fm-preview-stage.light{background:#fff;color:#181818}.fm-preview-lines{display:flex;flex-direction:column;justify-content:center;min-height:100%;width:100%}.fm-preview-line{display:flex}.fm-preview-glyphrun{flex:0 0 auto}.fm-preview-controls{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--text-dim);flex-wrap:wrap}.fm-preview-controls .fm-inline-field input[type=range]{width:90px;accent-color:var(--accent)}.fm-preview-value{font-family:var(--mono);font-size:11px;color:var(--text);min-width:40px}.fm-preview-category-group{display:flex;align-items:center;gap:2px}.fm-preview-category-group button{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-dim);cursor:pointer;padding:5px;border-radius:7px;transition:background .14s ease,color .14s ease}.fm-preview-category-group button:hover{background:var(--panel-2);color:var(--text)}.fm-preview-category-group button.on{color:var(--accent);background:var(--accent-soft)}.fm-preview-align-group{display:flex;align-items:center;gap:2px;margin-left:auto}.fm-preview-align-group button{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-dim);cursor:pointer;padding:5px;border-radius:7px;transition:background .14s ease,color .14s ease}.fm-preview-align-group button:hover{background:var(--panel-2);color:var(--text)}.fm-preview-align-group button.on{color:var(--accent);background:var(--accent-soft)}.fm-preview-close{color:var(--text-dim);background:transparent;border:none;cursor:pointer;border-radius:7px;transition:background .14s ease,color .14s ease}.fm-preview-close:hover{background:var(--panel-2);color:var(--text)}.fm-preview-custom-text{position:relative;display:flex;align-items:center;flex:1 1 160px;min-width:120px;max-width:280px}.fm-preview-text-input{width:100%;padding:4px 26px 4px 8px;background:var(--panel-2);border:1px solid var(--line);border-radius:7px;color:var(--text);font-size:12px;outline:none;transition:border-color .15s ease}.fm-preview-text-input::placeholder{color:var(--text-faint)}.fm-preview-text-input:focus{border-color:var(--accent)}.fm-preview-text-clear{position:absolute;right:5px;background:none;border:none;cursor:pointer;color:var(--text-faint);font-size:14px;line-height:1;padding:2px 4px;border-radius:4px;transition:color .12s ease}.fm-preview-text-clear:hover{color:var(--text)}.fm-segmented{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden}.fm-segmented button{padding:5px 12px;border-radius:0;font-size:11.5px}.fm-segmented button+button{border-left:1px solid var(--line)}.fm-segmented button.active{background:var(--accent-soft);color:var(--accent)}.fm-ghost-mode{padding:3px;gap:3px;background:var(--panel-2);border:1px solid var(--line);border-radius:9px;overflow:visible}.fm-ghost-mode button{flex:1;justify-content:center;border:1px solid transparent;border-radius:6px;padding:6px 8px}.fm-ghost-mode button+button{border-left:1px solid transparent}.fm-ghost-mode button:hover:not(.active){background:var(--panel-3);color:var(--text);border-color:color-mix(in srgb,var(--text-faint) 35%,transparent)}.fm-ghost-mode button.active{background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 42%,var(--line));box-shadow:inset 0 1px color-mix(in srgb,var(--text) 5%,transparent)}.fm-tab-select{display:flex;gap:16px}.fm-tab-select button{background:none;border:none;padding:2px 0 6px;font-size:11.5px;font-weight:600;font-family:var(--sans);color:var(--text-faint);cursor:pointer;position:relative}.fm-tab-select button:hover{color:var(--text)}.fm-tab-select button.active{color:var(--accent)}.fm-tab-select button.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:var(--accent)}.fm-rightpanel{width:252px;flex:0 0 auto;background:var(--panel);border-left:1px solid var(--line);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.fm-rightpanel>*{min-width:0}.fm-rightpanel .fm-field,.fm-rightpanel .fm-section-body>*{min-width:0;max-width:100%}.fm-panel-header{padding:12px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px}.fm-panel-glyph{width:60px;height:60px;border-radius:13px;background:var(--panel-2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--accent);flex:0 0 auto}.fm-panel-glyph .fm-thumb-svg{width:78%;height:78%}.fm-panel-glyph .fm-thumb-char{font-size:34px;font-weight:700;color:var(--text)}.fm-panel-glyph .fm-thumb-char.fm-thumb-char-multi{font-size:15px}.fm-panel-meta{min-width:0}.fm-panel-char{font-size:22px;font-weight:700;letter-spacing:-.01em;color:var(--text);line-height:1.1;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-panel-code{font-family:var(--mono);font-size:11px;color:var(--text-dim);margin-top:3px}.fm-panel-cat{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-weight:700;margin-top:4px}.fm-section{border-bottom:1px solid var(--line-soft)}.fm-section-head{width:100%;display:flex;align-items:center;justify-content:space-between;padding:11px 14px;background:transparent;border:none;cursor:pointer;color:var(--text)}.fm-section-title{font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);font-weight:700}.fm-section-caret{color:var(--text-faint);transition:transform .18s ease}.fm-section.closed .fm-section-caret{transform:rotate(-90deg)}.fm-section-body{padding:0 14px 14px}.fm-field{margin-bottom:11px}.fm-field:last-child{margin-bottom:0}.fm-field label{display:block;font-size:11.5px;color:var(--text-dim);margin-bottom:5px}.fm-field input[type=number]{width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-family:var(--mono);font-size:12.5px;outline:none;transition:border-color .15s ease}.fm-field input[type=number]:focus{border-color:var(--accent)}input[type=number]{appearance:textfield;-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fm-numeric-control{position:relative;display:inline-flex;align-items:stretch;max-width:100%}.fm-field>.fm-numeric-control,.fm-field .fm-angle-control .fm-numeric-control{width:100%}.fm-numeric-control>input{padding-right:27px!important}.fm-numeric-stepper{position:absolute;right:5px;top:50%;transform:translateY(-50%);display:grid;grid-template-rows:12px 12px;z-index:1}.fm-numeric-stepper button{width:18px;height:12px;display:grid;place-items:center;padding:0;margin:0;border:0;border-radius:0;background:transparent;color:var(--text-dim);cursor:ns-resize;line-height:1;touch-action:none;user-select:none}.fm-numeric-stepper button:hover:not(:disabled){color:var(--text)}.fm-numeric-stepper button:active:not(:disabled){color:var(--accent)}.fm-numeric-stepper button:focus-visible{outline:none;color:var(--accent)}.fm-numeric-stepper button:disabled{opacity:.35;cursor:default}.fm-slider-row-label .fm-numeric-control{width:70px}.fm-inline-field .fm-numeric-control{width:58px}.fm-angle-control{display:flex;align-items:center;gap:7px}.fm-angle-control>span{flex:0 0 auto;color:var(--text-dim);font-family:var(--mono);font-size:12px}.fm-field input[type=range]{width:100%;accent-color:var(--accent)}.fm-slider-row-label{display:flex;justify-content:space-between;align-items:baseline;font-size:11.5px;color:var(--text-dim);margin-bottom:5px}.fm-slider-row-label span{font-family:var(--mono);color:var(--text);font-size:11px}.fm-slider-label-group{display:flex;align-items:center;gap:5px;font-family:inherit}.fm-slider-label-group label{font-family:inherit}.fm-lock-btn{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border-radius:4px;border:1px solid transparent;background:transparent;color:var(--text-faint);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.fm-lock-btn:hover{background:var(--panel-2);color:var(--text-dim)}.fm-lock-btn.active{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.fm-lock-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fm-field input.fm-slider-number{width:70px;padding:4px 7px;border-radius:7px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-family:var(--mono);font-size:11.5px;text-align:right;outline:none}.fm-field input.fm-slider-number:focus{border-color:var(--accent)}.fm-checkbox-row{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--text);cursor:pointer}.fm-checkbox-row input[type=checkbox]{appearance:none;-webkit-appearance:none;width:15px;height:15px;flex:0 0 15px;margin:0;display:inline-grid;place-items:center;border:1.5px solid var(--line-strong, var(--line));border-radius:4px;background:transparent;cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease}.fm-checkbox-row input[type=checkbox]:checked{border-color:var(--accent);background:transparent}.fm-checkbox-row input[type=checkbox]:checked:after{content:"";width:4px;height:7.5px;margin-top:-1.5px;border-right:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);transform:rotate(45deg)}.fm-checkbox-row input[type=checkbox]:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-soft)}.fm-checkbox-row input[type=checkbox]:disabled{opacity:.45;cursor:not-allowed}.fm-hint{font-size:11px;color:var(--text-dim);line-height:1.6}.fm-infotip{position:relative;display:inline-flex;vertical-align:middle;margin:4px 0}.fm-infotip-badge{width:16px;height:16px;min-width:16px;border-radius:50%;border:1px solid var(--text-faint);background:transparent;color:var(--text-dim);font-size:10px;font-weight:700;font-style:italic;font-family:Georgia,Times New Roman,serif;line-height:1;padding:0;display:flex;align-items:center;justify-content:center;cursor:help;transition:border-color .15s ease,color .15s ease,background .15s ease}.fm-infotip-badge:hover,.fm-infotip-badge:focus-visible{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.fm-infotip-badge:focus-visible{outline:none}.fm-infotip-bubble{position:absolute;top:calc(100% + 8px);z-index:80;width:max-content;max-width:260px;padding:10px 12px;border-radius:8px;background:var(--panel-2);border:1px solid var(--line);box-shadow:0 12px 28px var(--shadow);color:var(--text-dim);font-size:11px;line-height:1.6;text-align:left}.fm-infotip-bubble-start{left:0}.fm-infotip-bubble-end{right:0}.fm-status-pill{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;color:var(--text-dim);background:var(--panel-2);border:1px solid var(--line);padding:6px 11px;border-radius:20px}.fm-status-pill.done{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.fm-status-dot{width:6px;height:6px;border-radius:50%;background:var(--text-dim)}.fm-status-pill.done .fm-status-dot{background:var(--accent)}.fm-kind-list{margin:10px 0;display:flex;flex-direction:column;gap:5px}.fm-kind-row{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--text)}.fm-kind-dot{width:8px;height:8px;border-radius:3px}.fm-kind-dot.shape,.fm-kind-dot.expanded{background:var(--ink)}.fm-kind-dot.line{background:var(--node-smooth)}.fm-kind-dot.brush{background:var(--node-symmetric)}.fm-node-type-row{display:flex;gap:6px}.fm-node-type-btn{flex:1;padding:7px 0;border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--text-dim);font-size:11px;font-weight:600;cursor:pointer;transition:border-color .14s ease,color .14s ease,background .14s ease}.fm-node-type-btn:hover{border-color:var(--text-faint);color:var(--text)}.fm-node-type-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.fm-node-xy-row{display:flex;gap:6px}.fm-node-xy-row>*{flex:1;min-width:0}.fm-node-handle-row{display:flex;align-items:center;gap:6px;margin-top:6px}.fm-node-handle-row:first-of-type{margin-top:0}.fm-node-handle-row>*{flex:1;min-width:0}.fm-node-handle-label{flex:0 0 auto;width:22px;font-size:11px;color:var(--text-dim);font-weight:600}.fm-node-handle-unit{flex:0 0 auto;width:auto;font-size:11px;color:var(--text-faint)}.fm-spacing-auto-btn{display:flex;align-items:center;justify-content:center;gap:6px}.fm-spacing-auto-btn.active{border-color:var(--auto-2);color:var(--auto-2);background:var(--auto-soft)}.fm-spacing-auto-dot{width:6px;height:6px;border-radius:50%;background:var(--text-faint);transition:background .14s ease}.fm-spacing-auto-btn.active .fm-spacing-auto-dot{background:var(--auto-2)}.fm-spacing-auto-tag{margin-left:6px;padding:1px 6px;border-radius:999px;font-size:9.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--auto-2);background:var(--auto-soft);vertical-align:middle}.fm-action-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:10px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-size:12.5px;font-weight:600;cursor:pointer;margin-top:10px;transition:border-color .14s ease,background .14s ease,color .14s ease}.fm-action-btn:hover{border-color:var(--text-faint)}.fm-action-btn.accent{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.fm-action-btn.accent:hover{background:var(--accent-2)}.fm-action-btn.done{background:var(--accent-2);border-color:var(--accent-2);color:var(--accent-ink);animation:fm-auto-kern-flash .55s ease}.fm-action-btn:disabled{opacity:.42;cursor:default}.fm-action-btn:disabled:hover{filter:none}.fm-auto-kern-btn.running{background:linear-gradient(to right,var(--accent) var(--fm-auto-kern-fill, 0%),color-mix(in srgb,var(--accent) 22%,var(--panel-2)) var(--fm-auto-kern-fill, 0%));border-color:var(--accent);color:var(--accent-ink);cursor:progress;transition:background .12s linear}.fm-auto-kern-btn.done{background:var(--accent-2);border-color:var(--accent-2);animation:fm-auto-kern-flash .55s ease}.fm-auto-space-btn.running{background:linear-gradient(to right,var(--accent) var(--fm-auto-space-fill, 0%),color-mix(in srgb,var(--accent) 22%,var(--panel-2)) var(--fm-auto-space-fill, 0%));border-color:var(--accent);color:var(--accent-ink);cursor:progress;transition:background .12s linear}.fm-auto-space-btn.done{background:var(--accent-2);border-color:var(--accent-2);animation:fm-auto-kern-flash .55s ease}@keyframes fm-auto-kern-flash{0%{filter:brightness(1.5)}to{filter:brightness(1)}}.fm-auto-kern-spin{animation:fm-spin-rotate .9s linear infinite}.fm-action-btn.danger{color:var(--danger)}.fm-action-btn.danger:hover{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,transparent)}.fm-action-btn-locked{opacity:.5}.fm-action-btn-locked:hover{opacity:.75}.fm-btn-row{display:flex;gap:8px}.fm-btn-row .fm-action-btn{margin-top:10px}.fm-brush-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.fm-brush-card{display:flex;flex-direction:row;align-items:center;gap:6px;min-width:0;padding:7px;border-radius:11px;border:1px solid var(--line);background:var(--panel-2);cursor:pointer;text-align:left;transition:border-color .14s ease,background .14s ease,transform .1s ease}.fm-brush-card:hover{border-color:var(--text-faint);transform:translateY(-1px)}.fm-brush-card.active{border-color:var(--accent);background:var(--accent-soft)}.fm-brush-icon{flex:0 0 auto;width:22px;height:22px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:var(--panel-3);color:var(--text)}.fm-brush-card.active .fm-brush-icon{background:var(--accent);color:var(--accent-ink)}.fm-brush-name{font-size:11px;font-weight:700;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-brush-card.active .fm-brush-name{color:var(--accent)}.fm-width-profile-grid{display:flex;flex-wrap:wrap;gap:6px}.fm-width-profile-btn{display:flex;align-items:center;justify-content:center;padding:6px 8px;border-radius:9px;border:1px solid var(--line);background:var(--panel-2);color:var(--text-dim);cursor:pointer;transition:border-color .14s ease,background .14s ease,color .14s ease}.fm-width-profile-btn:hover{border-color:var(--text-faint);color:var(--text)}.fm-width-profile-btn.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.fm-width-profile-advanced-toggle{display:flex;align-items:center;gap:4px;margin-top:8px;background:none;border:none;padding:0;font-size:11.5px;font-weight:600;color:var(--text-dim);cursor:pointer}.fm-width-profile-advanced-toggle:hover{color:var(--text)}.fm-width-profile-advanced-toggle .fm-section-caret{transition:transform .15s ease}.fm-width-profile-advanced-toggle .fm-section-caret.open{transform:rotate(180deg)}.fm-width-profile-advanced{display:flex;flex-direction:column;gap:10px;margin-top:10px}.fm-topbar-more-btn,.fm-bottombar-more-btn{display:none}@media (max-width: 1180px){.fm-glyphnav{width:200px}.fm-rightpanel{width:250px}.fm-topbar{gap:6px;padding:8px 10px}.fm-topbar .fm-topbtn{font-size:0;gap:0;padding:8px;min-width:40px;min-height:40px;justify-content:center}.fm-topbar .fm-topbtn svg{flex:0 0 auto}.fm-topbtn-group{gap:4px}.fm-theme-toggle{width:40px;height:40px;flex:0 0 auto}.fm-topbar .fm-divider,.fm-topbar .fm-align-divider{display:none}.fm-topbar .fm-spacer{flex:0 0 0;width:0}.fm-topbar-more-hide{display:none!important}.fm-topbar-more-btn{display:inline-flex}.fm-topbar-more-btn>.fm-topbtn{font-size:0;gap:0;padding:8px;min-width:40px;min-height:40px;justify-content:center}.fm-topbar-more-btn>.fm-topbtn svg{flex:0 0 auto}.fm-topbar .fm-fontname{flex:1 1 0;width:auto;min-width:44px;max-width:170px}.fm-zoom-controls input[type=range]{width:90px}.fm-bottombar{gap:6px;padding:6px 10px}.fm-bottombar .fm-bottom-divider{display:none}.fm-bottombar .fm-hint-inline{margin-left:auto;gap:6px}.fm-bottombar button{font-size:0;gap:0;padding:8px;min-width:40px;min-height:36px;justify-content:center}.fm-bottombar button svg{flex:0 0 auto}.fm-bottombar .fm-icon-btn{padding:8px!important;min-width:32px;min-height:32px}.fm-inline-field{gap:4px}.fm-bottombar-more-hide{display:none!important}.fm-bottombar-more-btn{display:inline-flex}.fm-bottombar-more-btn>button{font-size:0;gap:0;padding:8px;min-width:36px;min-height:36px;justify-content:center}.fm-bottombar-more-btn>button svg{flex:0 0 auto}}@media (min-width: 721px){.fm-topbar{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.fm-topbar::-webkit-scrollbar{display:none}.fm-topbar>*,.fm-topbar .fm-topbar-row2>*{flex-shrink:0}.fm-topbar .fm-fontname{flex-shrink:1}.fm-topbar .fm-topbar-more-hide{display:flex!important}.fm-topbar .fm-topbar-more-btn{display:none!important}.fm-topbar .fm-spacer{flex:1 0 8px;width:auto}}@media (min-width: 721px) and (max-width: 1180px){.fm-topbar{gap:3px;padding:6px 8px}.fm-topbar .fm-topbtn{font-size:11px;gap:4px;padding:6px 7px;min-width:0;min-height:0}.fm-topbar .fm-theme-toggle{width:32px;height:32px}.fm-topbar .fm-fontname{width:110px;min-width:70px;flex:0 1 110px}}@media (min-width: 1181px) and (max-width: 1919px){.fm-topbar{gap:3px;padding:8px}.fm-topbar .fm-topbtn{font-size:11.5px;gap:4px;padding:6px}.fm-topbar .fm-topbtn-group,.fm-topbar .fm-align-group{gap:0}.fm-topbar .fm-fontname{width:clamp(80px,8vw,150px)}.fm-topbar .fm-mode-tab{padding:0 9px;gap:5px;font-size:12.5px}}@media (min-width: 1181px) and (max-width: 1599px){.fm-topbar .fm-topbtn{padding:5px;gap:3px;font-size:11px}.fm-topbar .fm-mode-tab{padding:0 7px;gap:4px}.fm-topbar .fm-fontname{width:84px}}@media (min-width: 721px) and (max-width: 1489px){.fm-topbar .fm-testlab-nav,.fm-topbar .fm-export-nav{font-size:0;gap:0;padding:6px 7px;min-width:30px;justify-content:center}.fm-topbar .fm-testlab-nav svg,.fm-topbar .fm-export-nav svg{flex:0 0 auto}}@media (min-width: 721px) and (max-width: 1599px){.fm-topbar .fm-fontname{width:70px;min-width:56px;flex:0 1 70px}.fm-topbar .fm-mode-tab{padding:0 6px}.fm-topbar .fm-align-btn{width:24px;height:28px}.fm-topbar .fm-spacer{flex:0 0 0}.fm-topbar .fm-topbtn{padding:5px}.fm-topbar{gap:2px;padding:8px 6px}}@media (min-width: 721px) and (max-width: 1180px){.fm-topbar .fm-mode-tab{gap:5px;padding:0 8px}.fm-topbar .fm-fontname{width:60px;min-width:50px;flex:0 1 60px}}@media (min-width: 721px){.fm-bottombar .fm-bottombar-more-hide{display:revert!important}.fm-bottombar button.fm-bottombar-more-hide{display:inline-flex!important}.fm-bottombar .fm-bottombar-more-btn{display:none!important}.fm-bottombar .fm-bottom-divider.fm-bottombar-more-hide{display:block!important}.fm-bottombar .fm-inline-field.fm-bottombar-more-hide{display:flex!important;flex-wrap:nowrap}}@media (min-width: 721px) and (max-width: 1919px){.fm-bottombar{gap:3px}.fm-bottombar,.fm-bottombar.fm-bottombar{padding-left:8px;padding-right:8px}.fm-bottombar button{padding:4px 5px;gap:3px;font-size:10.5px;min-width:0;min-height:0}.fm-bottombar .fm-icon-btn{min-width:0;padding:3px!important}.fm-bottombar .fm-zoom-controls input[type=range]{width:28px}.fm-bottombar .fm-bottom-divider{display:none}.fm-bottombar .fm-grid-shape-select{width:86px;font-size:10.5px}}.fm-bottombar{container-type:inline-size;container-name:fmbottom}@container fmbottom (max-width: 1026px){.fm-bottombar button{font-size:0;gap:0;padding:6px 7px;justify-content:center}.fm-bottombar button svg{flex:0 0 auto}.fm-bottombar .fm-zoom-controls input[type=range]{width:56px}.fm-bottombar .fm-bottom-divider{display:none!important}.fm-bottombar .fm-grid-shape-select{width:86px;font-size:11px}}.fm-filemenu.fm-morebar-menu button{font-size:12.5px!important;gap:9px!important;padding:0 9px!important;min-width:0!important;min-height:0!important;height:34px!important;width:100%!important;justify-content:flex-start!important}.fm-filemenu .fm-morebar-grid button{font-size:0!important;gap:0!important;width:auto!important;height:32px!important;justify-content:center!important}@media (min-width: 600px) and (max-width: 1180px) and (pointer: coarse) and (max-aspect-ratio: 5/3){.fm-topbar-more-hide,.fm-bottombar-more-hide{display:inline-flex!important;align-items:center}.fm-topbar-more-btn,.fm-bottombar-more-btn{display:none!important}.fm-topbar{gap:3px;padding:6px 8px;overflow-x:auto;-webkit-overflow-scrolling:touch}.fm-bottombar{gap:3px;padding:5px 8px}.fm-topbar .fm-topbtn,.fm-topbar-more-btn>.fm-topbtn{padding:6px;min-width:34px;min-height:34px}.fm-topbtn-group{gap:2px}.fm-align-group{gap:0}.fm-align-btn{width:24px;height:24px}.fm-align-divider{margin:0 2px}.fm-bottombar button{padding:6px;min-width:32px;min-height:32px}.fm-bottombar .fm-icon-btn{min-width:26px;min-height:26px}.fm-logo-image{max-width:clamp(46px,6vw,90px)}.fm-topbar .fm-fontname{min-width:36px;max-width:120px}.fm-zoom-controls input[type=range]{width:50px}.fm-hint-inline{gap:6px}.fm-auth-avatar-btn{padding:2px;gap:0}.fm-auth-plan-badge{display:none}}@media (min-width: 600px) and (max-width: 900px) and (pointer: coarse) and (max-aspect-ratio: 5/3){.fm-topbar .fm-divider,.fm-topbar .fm-align-divider{display:none}.fm-topbar{overflow-x:auto;-webkit-overflow-scrolling:touch}.fm-topbar .fm-fontname{min-width:0;max-width:110px}}@media (max-width: 1180px) and (pointer: fine){.fm-topbar-more-hide,.fm-bottombar-more-hide{display:inline-flex!important;align-items:center}.fm-topbar-more-btn,.fm-bottombar-more-btn{display:none!important}.fm-topbar{overflow-x:auto}}@media (max-width: 900px){.fm-glyphnav{width:165px}.fm-rightpanel{width:205px}.fm-grid{grid-template-columns:repeat(3,1fr)}.fm-canvas-area{padding:clamp(8px,2vw,20px)}.fm-zoom-controls input[type=range]{width:70px}.fm-floating-toolbar{max-width:calc(100% - 20px)}}.fm-mobile-nav-toggle,.fm-mobile-panel-toggle,.fm-mobile-backdrop{display:none}@media (max-width: 900px){.fm-mobile-nav-toggle,.fm-mobile-panel-toggle{position:absolute;top:60px;z-index:31;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;border:1.5px solid color-mix(in srgb,var(--accent) 30%,var(--line));background:color-mix(in srgb,var(--panel) 88%,transparent);backdrop-filter:blur(10px);color:var(--text-dim);cursor:pointer;box-shadow:0 10px 26px var(--shadow);transition:color .15s ease,border-color .15s ease,transform .15s ease}.fm-mobile-nav-toggle{left:14px}.fm-mobile-panel-toggle{right:14px}.fm-mobile-nav-toggle:hover,.fm-mobile-panel-toggle:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 55%,var(--line));transform:scale(1.06)}.fm-mobile-nav-toggle:active,.fm-mobile-panel-toggle:active{transform:scale(.94)}.fm-mobile-nav-toggle:focus-visible,.fm-mobile-panel-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fm-root:not([data-sketch-mode=true]) .fm-body{position:relative;overflow:hidden}.fm-root:not([data-sketch-mode=true]) .fm-glyphnav{position:absolute;top:0;left:0;bottom:0;width:min(82vw,280px);min-width:0;z-index:30;transform:translate(-100%);transition:transform .22s ease;box-shadow:14px 0 34px var(--shadow)}.fm-root[data-mobile-nav-open=true]:not([data-sketch-mode=true]) .fm-glyphnav{transform:translate(0)}.fm-root:not([data-sketch-mode=true]) .fm-rightpanel{position:absolute;top:0;right:0;bottom:0;width:min(82vw,300px);min-width:0;z-index:30;transform:translate(100%);transition:transform .22s ease;box-shadow:-14px 0 34px var(--shadow)}.fm-root[data-mobile-panel-open=true]:not([data-sketch-mode=true]) .fm-rightpanel{transform:translate(0)}.fm-root[data-mobile-nav-open=true] .fm-mobile-backdrop,.fm-root[data-mobile-panel-open=true] .fm-mobile-backdrop{display:block;position:absolute;inset:0;z-index:29;background:#00000061}.fm-canvas-wrap{min-width:0;width:100%}}@media (max-width: 599px){.fm-topbar{flex-wrap:wrap;row-gap:6px;min-height:0;padding-top:6px;padding-bottom:6px}.fm-topbar-row2{display:flex;flex-basis:100%;width:100%;align-items:center;justify-content:center;flex-wrap:wrap;row-gap:4px;gap:4px}.fm-topbar .fm-spacer{flex:0 0 0;width:0}.fm-topbar-more-hide.fm-topbar-phone-show{display:inline-flex!important}.fm-topbar .fm-topbtn{min-width:34px;min-height:34px;padding:6px}.fm-theme-toggle{width:30px;height:30px}.fm-topbar .fm-fontname{padding:5px 8px}}@media (max-width: 560px){.fm-topbar{padding-left:8px;padding-right:8px;gap:4px}.fm-topbar .fm-fontname{min-width:0;width:auto;max-width:30vw}.fm-fullscreen-toggle{display:none}.fm-logo-image{max-width:clamp(46px,14vw,112px)}.fm-auth-avatar-btn{padding:2px;gap:0}.fm-auth-plan-badge{display:none}.fm-bottombar{padding-left:8px;padding-right:8px;gap:4px}.fm-zoom-controls{gap:4px}.fm-zoom-controls input[type=range]{width:56px}.fm-hint-inline{gap:4px}.fm-grid{grid-template-columns:repeat(5,1fr);gap:5px}.fm-thumb-svg{width:70%;height:70%}.fm-thumb-char{font-size:15px}.fm-thumb-char.fm-thumb-char-multi{font-size:9px}}.fm-topbar{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right));padding-top:env(safe-area-inset-top)}.fm-bottombar{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right));padding-bottom:env(safe-area-inset-bottom)}.fm-glyphnav{padding-left:env(safe-area-inset-left)}.fm-rightpanel{padding-right:env(safe-area-inset-right)}.fm-lab-backdrop{position:fixed;inset:0;background:#0000008c;backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:200;padding:32px}.fm-lab-modal{width:min(1180px,100%);height:min(820px,100%);background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 64px var(--shadow);display:flex;flex-direction:column;overflow:hidden}.fm-lab-head{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line);flex:0 0 auto}.fm-lab-tabs button{display:flex;align-items:center;gap:6px}.fm-lab-body{flex:1;min-height:0;overflow-y:auto;padding:20px 24px}.fm-lab-grid{display:flex;gap:4px;height:100%}.fm-lab-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:14px}.fm-lab-side{width:360px;flex:0 0 auto}.fm-lab-resize-handle{flex:0 0 auto;width:18px;margin:0 -7px;display:flex;align-items:center;justify-content:center;cursor:col-resize;touch-action:none;z-index:2}.fm-lab-resize-grip{width:3px;height:100%;border-radius:999px;background:transparent;transition:background .12s ease}.fm-lab-resize-handle:hover .fm-lab-resize-grip,.fm-lab-resize-handle.active .fm-lab-resize-grip{background:color-mix(in srgb,var(--accent) 55%,transparent)}.fm-lab-resize-handle.active .fm-lab-resize-grip{background:var(--accent)}@media (max-width: 820px){.fm-lab-grid{flex-direction:column;height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch}.fm-lab-main{gap:10px}.fm-lab-resize-handle{display:none}.fm-lab-side{width:100%!important;flex:0 0 auto;border-top:1px solid var(--line);padding-top:12px;margin-top:4px}}@media (max-width: 480px){.fm-lab-head{gap:8px}.fm-lab-head-mode-toggle{gap:4px}.fm-lab-head-mode-toggle button{padding:0 9px}.fm-lab-head-mode-toggle button span{display:none}}.fm-lab-preview-frame{background:var(--canvas);border:1px solid var(--line);border-radius:10px;padding:28px;display:flex;align-items:center;justify-content:center;min-height:220px;color:var(--thumb-ink)}.fm-lab-controls-row{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}.fm-lab-controls-row .fm-field{margin-bottom:0;min-width:90px}.fm-field select{width:100%;padding:7px 9px;border-radius:6px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-family:var(--mono);font-size:12.5px;outline:none}.fm-field select:focus{border-color:var(--accent)}.fm-lab-test-row{display:flex;flex-wrap:wrap;gap:6px}.fm-lab-test-btn{padding:6px 12px;border-radius:20px;border:1px solid var(--line);background:var(--panel-2);color:var(--text-dim);font-size:12px;font-family:var(--sans);font-weight:600;cursor:pointer}.fm-lab-test-btn:hover{border-color:var(--text-faint);color:var(--text)}.fm-lab-test-btn.active{border-color:var(--accent);color:var(--accent-ink);background:var(--accent)}.fm-lab-stage{flex:1;min-height:320px;border-radius:10px;border:1px solid var(--line);padding:28px;overflow:auto}.fm-lab-stage.dark{background:#0b0b0b;color:#f3f3f3}.fm-lab-stage.light{background:#fff;color:#181818}.fm-lab-stage:not(.fm-family-stage){overflow-x:hidden;overflow-y:auto}.fm-lab-lines{display:flex;flex-direction:column;position:relative;z-index:2;pointer-events:none;width:100%;min-width:0}.fm-lab-preview-line{width:100%;min-width:0;display:flex;overflow:visible}.fm-lab-line-inner{position:relative;flex:0 0 auto;min-width:1px;max-width:100%}.fm-lab-editable-wrap{position:relative;display:flex;flex-direction:column;min-height:100%;cursor:text;white-space:pre-wrap;overflow-wrap:break-word;word-break:normal}.fm-lab-stage-input{position:absolute;inset:0;width:100%;height:100%;min-height:100%;resize:none;border:none;outline:none;background:transparent;color:transparent;caret-color:transparent;font-family:var(--sans);padding:0;overflow:hidden;z-index:1}.fm-lab-stage-input::selection{background:transparent;color:transparent}.fm-kern-heatmap{display:flex;flex-direction:column;gap:14px;height:100%}.fm-kern-heatmap-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;height:100%;color:var(--text-dim);font-size:13px;text-align:center}.fm-kern-heatmap-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.fm-kern-heatmap-legend{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-dim)}.fm-kern-legend-swatch{width:12px;height:12px;border-radius:3px;display:inline-block}.fm-kern-legend-swatch.negative{background:#ef44448c}.fm-kern-legend-swatch.positive{background:#14b8a68c}.fm-kern-heatmap-scroll{flex:1;overflow:auto;border:1px solid var(--line);border-radius:8px}.fm-kern-heatmap-table{border-collapse:collapse;font-family:var(--mono);font-size:11px}.fm-kern-heatmap-corner{position:sticky;top:0;left:0;z-index:3;background:var(--panel-2)}.fm-kern-heatmap-colhead{position:sticky;top:0;z-index:2;background:var(--panel-2);color:var(--text-dim);font-weight:600;padding:4px 6px;border-bottom:1px solid var(--line);border-left:1px solid var(--line-soft)}.fm-kern-heatmap-rowhead{position:sticky;left:0;z-index:1;background:var(--panel-2);color:var(--text-dim);font-weight:600;padding:4px 8px;border-right:1px solid var(--line);border-top:1px solid var(--line-soft);text-align:right}.fm-kern-heatmap-cell{min-width:26px;height:22px;text-align:center;border-top:1px solid var(--line-soft);border-left:1px solid var(--line-soft);color:var(--text);cursor:pointer;user-select:none}.fm-kern-heatmap-cell:hover{outline:1px solid var(--accent);outline-offset:-1px}.fm-kern-heatmap-cell.active{outline:2px solid var(--accent);outline-offset:-2px}.fm-lab-caret{position:absolute;width:2px;margin-left:2px;background:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent);pointer-events:none;animation:fm-caret-blink 1s step-end infinite}@keyframes fm-caret-blink{0%,49%{opacity:1}50%,to{opacity:0}}.fm-lab-allglyphs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px;margin-bottom:16px}.fm-lab-allglyph-cell{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border-radius:8px;background:#ffffff08}.fm-lab-allglyph-thumb{width:40px;height:40px}.fm-lab-allglyph-label{font-family:var(--mono);font-size:10px;opacity:.6}.fm-lab-allglyph-cell.done .fm-lab-allglyph-label{opacity:1;color:var(--accent-2, inherit)}.fm-cap-control{display:inline-flex;align-items:center;gap:4px;padding:3px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2)}.fm-cap-btn{width:34px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;color:var(--text-dim);cursor:pointer}.fm-cap-btn:hover{color:var(--text);background:var(--panel-3)}.fm-cap-btn.active{color:var(--accent);background:var(--accent-soft)}.fm-cap-icon{position:relative;width:20px;height:10px;display:block}.fm-cap-icon:before{content:"";position:absolute;left:4px;right:4px;top:4px;height:2px;background:currentColor}.fm-cap-icon.butt:after,.fm-cap-icon.square:after,.fm-cap-icon.round:after{content:"";position:absolute;inset:1px 3px;border:1px solid currentColor}.fm-cap-icon.butt:after{border-top:0;border-bottom:0;border-radius:0}.fm-cap-icon.square:after{border-radius:0}.fm-cap-icon.round:after{border-radius:7px}.fm-lab-tabs{border:0;border-radius:0;overflow:visible;gap:4px}.fm-lab-tabs button{position:relative;border:0!important;background:transparent!important;color:var(--text-dim);padding:7px 9px 8px;border-radius:6px!important}.fm-lab-tabs button:hover{color:var(--text);background:var(--panel-2)!important}.fm-lab-tabs button.active{color:var(--accent);background:transparent!important}.fm-lab-tabs button.active:after{content:"";position:absolute;left:8px;right:8px;bottom:-12px;height:2px;border-radius:2px;background:var(--accent)}.fm-kern-eyebrow{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint)}.fm-kern-pair-head{display:flex;align-items:end;justify-content:space-between;gap:18px}.fm-kern-selected-pair{margin-top:4px;display:flex;align-items:baseline;gap:10px;font-family:var(--mono);font-size:34px;font-weight:800;letter-spacing:-.04em;color:var(--text)}.fm-kern-selected-pair>span{font-size:12px;font-weight:600;letter-spacing:0;color:var(--accent)}.fm-kern-stage{background:var(--canvas);border:1px solid var(--line);border-radius:10px;padding:28px;min-height:200px;overflow:auto;color:var(--thumb-ink)}.fm-kern-active-box{position:absolute;border-radius:4px;background:color-mix(in srgb,var(--accent) 10%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent);pointer-events:none}.fm-lab-selection-box{position:absolute;z-index:4;border:1px solid var(--accent);border-radius:4px;background:var(--accent);box-shadow:0 0 10px var(--accent);opacity:.2;pointer-events:none}.fm-kern-glyph-hit{position:absolute;cursor:ew-resize;touch-action:none;pointer-events:auto;z-index:5;border-radius:4px}.fm-kern-glyph-hit:hover,.fm-kern-glyph-hit.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.fm-kern-ruler{position:absolute;width:0;border-left:1px dashed var(--text-faint);pointer-events:none}.fm-kern-ruler span{position:absolute;top:-4px;left:4px;font-family:var(--mono);font-size:10px;color:var(--text-faint);white-space:nowrap}.fm-kern-ruler-live{border-left-color:var(--accent)}.fm-kern-ruler-edge{border-left-color:color-mix(in srgb,var(--accent) 55%,var(--text-faint))}.fm-kern-ruler-live span{color:var(--accent);font-weight:600}.fm-kern-precision{max-width:190px}.fm-kern-value-row{display:flex;align-items:center;gap:6px}.fm-kern-value-row .fm-numeric-control{flex:1;min-width:0}.fm-kern-history-btns{display:inline-flex;align-items:center;gap:3px;flex:0 0 auto}.fm-kern-history-btns button{width:26px;height:26px;border-radius:7px;border:1px solid var(--line);background:var(--panel-2);color:var(--text-dim);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.fm-kern-history-btns button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.fm-kern-history-btns button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fm-kern-history-btns button:disabled{opacity:.32;cursor:not-allowed}.fm-kern-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fm-kern-actions .fm-action-btn{width:auto;margin-top:0;padding:8px 11px;border-radius:8px;font-size:11.5px}.fm-kern-actions .fm-action-btn.accent{margin-left:auto}.fm-kern-complete{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:8px;background:var(--accent-soft);color:var(--accent);font-size:11.5px}.fm-kern-complete .fm-status-dot{background:var(--accent)}@media (max-width: 900px){.fm-kern-pair-head{align-items:stretch;flex-direction:column}.fm-kern-actions .fm-action-btn.accent{margin-left:0}}.fm-lab-title{display:inline-flex;align-items:center;gap:7px;color:var(--text);font-size:12.5px;font-weight:700}.fm-lab-glyph-row{position:relative;flex:0 0 auto}.fm-lab-side{overflow-y:auto;padding-right:2px}.fm-lab-side-section{padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--line)}.fm-lab-side-section:last-child{border-bottom:0;margin-bottom:0}.fm-lab-side-section .fm-section-title{padding:0 0 10px}.fm-kern-context{min-height:30px;display:flex;align-items:center;margin-bottom:12px;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:var(--panel-2);color:var(--text-dim);font-family:var(--mono);font-size:11.5px}.fm-kern-side-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.fm-kern-side-actions .fm-action-btn{width:100%;margin-top:0;padding:8px 7px;display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:11px}.fm-kern-side-actions .fm-action-btn.accent{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));color:var(--accent)}.fm-kern-glyph-hit.active{background:color-mix(in srgb,var(--accent) 7%,transparent)}.fm-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.fm-lab-backdrop{padding:20px;background:#0000009e;backdrop-filter:blur(4px)}.fm-lab-modal{width:min(1480px,100%);height:min(900px,calc(100vh - 40px));height:min(900px,calc(100dvh - 40px));border-color:color-mix(in srgb,var(--line) 72%,transparent);border-radius:16px;box-shadow:0 30px 90px #0000006b}.fm-lab-head{padding:13px 18px;border-bottom-color:color-mix(in srgb,var(--line) 62%,transparent)}.fm-lab-head-mode-toggle{width:auto;margin:0;gap:6px}.fm-lab-head-mode-toggle button{height:34px;padding:0 12px;white-space:nowrap}.fm-lab-body:not(.fm-feature-body){overflow:hidden;padding:18px 20px 20px}.fm-feature-body{overflow-y:auto;-webkit-overflow-scrolling:touch}.fm-lab-grid{gap:4px}.fm-lab-main{gap:12px}.fm-lab-side{padding:2px 8px 2px 2px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.fm-lab-side::-webkit-scrollbar{width:6px}.fm-lab-side::-webkit-scrollbar-track{background:transparent}.fm-lab-side::-webkit-scrollbar-thumb{background:var(--line);border-radius:999px}.fm-lab-side::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text-dim) 72%,transparent)}.fm-lab-side-section{padding:2px 2px 20px;margin:0 0 18px;border-bottom:0}.fm-lab-side-section+.fm-lab-side-section{padding-top:2px}.fm-lab-stage{min-height:430px;padding:34px 38px;border-color:color-mix(in srgb,var(--line) 58%,transparent);border-radius:12px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.fm-lab-stage::-webkit-scrollbar{width:6px;height:6px}.fm-lab-stage::-webkit-scrollbar-track{background:transparent}.fm-lab-stage::-webkit-scrollbar-thumb{background:var(--line);border-radius:999px}.fm-lab-test-row{gap:2px;padding:0 2px}.fm-lab-test-btn{border:0;background:transparent;border-radius:7px;padding:6px 9px;color:var(--text-faint)}.fm-lab-test-btn:hover{border-color:transparent;background:color-mix(in srgb,var(--panel-2) 72%,transparent);color:var(--text)}.fm-lab-test-btn.active{border-color:transparent;background:var(--accent-soft);color:var(--accent)}.fm-lab-bottom-bar{display:flex;align-items:center;gap:16px;padding:8px 14px;background:color-mix(in srgb,var(--panel-2) 80%,transparent);border:1px solid color-mix(in srgb,var(--line) 50%,transparent);border-radius:10px;flex-shrink:0;flex-wrap:wrap}.fm-lab-bottom-control{display:flex;flex-direction:column;gap:4px;min-width:0}.fm-lab-bottom-slider{flex:1 1 100px;min-width:80px;max-width:180px}.fm-lab-bottom-label{display:flex;justify-content:space-between;align-items:baseline;gap:6px;font-size:10px;color:var(--text-faint);white-space:nowrap}.fm-lab-bottom-value{color:var(--text-dim);font-variant-numeric:tabular-nums}.fm-lab-bottom-bar input[type=range]{width:100%;margin:0}.fm-lab-bottom-divider{width:1px;height:28px;background:color-mix(in srgb,var(--line) 60%,transparent);flex-shrink:0;align-self:center}.fm-tab-select.fm-tab-select-sm{gap:2px}.fm-tab-select.fm-tab-select-sm button{padding:3px 7px;font-size:11px;border-radius:5px;border:1px solid color-mix(in srgb,var(--line) 50%,transparent);background:color-mix(in srgb,var(--panel) 60%,transparent);color:var(--text-dim);line-height:1.4}.fm-tab-select.fm-tab-select-sm button:after{display:none}.fm-tab-select.fm-tab-select-sm button:hover{color:var(--text);background:var(--panel)}.fm-tab-select.fm-tab-select-sm button.active{background:var(--accent-soft);color:var(--accent);border-color:transparent}.fm-tab-select.fm-tab-select-icon button{display:flex;align-items:center;justify-content:center;padding:5px 7px}.fm-lab-bottom-apply-tracking{font-size:11px;padding:4px 9px;white-space:nowrap}.fm-kern-context{border:0;background:color-mix(in srgb,var(--panel-2) 72%,transparent);padding:8px 10px}.fm-kern-side-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.fm-kern-side-actions .fm-action-btn{min-width:0;height:34px;min-height:34px;white-space:nowrap}.fm-kern-side-actions .fm-kern-reset-btn:hover:not(:disabled){color:var(--accent)}.fm-kern-side-actions .fm-kern-reset-btn:hover:not(:disabled) svg{color:currentColor}.fm-kern-side-actions .fm-action-btn.accent{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);font-weight:750;overflow:visible}.fm-kern-side-actions .fm-action-btn.accent:hover{filter:brightness(1.05)}.fm-kern-side-actions .fm-auto-kern-icon{display:block;flex:0 0 auto;stroke:currentColor}.fm-auto-space-row .fm-action-btn{width:100%;height:34px;min-height:34px;padding:8px 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:11px}.fm-auto-space-row .fm-action-btn.accent{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);font-weight:750}.fm-auto-space-row .fm-action-btn.accent:hover{filter:brightness(1.05)}.fm-tooltip-anchor{position:relative}.fm-tooltip-bubble{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:60;padding:9px 11px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--panel) 97%,#000 3%);color:var(--text-dim);font-size:10.5px;line-height:1.5;letter-spacing:.002em;box-shadow:0 10px 24px #00000059;opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .14s ease,transform .14s ease}.fm-tooltip-anchor:hover .fm-tooltip-bubble{opacity:1;transform:translateY(0)}.fm-flag-toggle-group{display:flex;flex-direction:column;gap:6px}.fm-flag-toggle{display:flex;align-items:center;gap:7px;cursor:pointer;user-select:none;font-size:10px;line-height:1.4;letter-spacing:.01em;color:var(--text-faint);transition:color .15s ease}.fm-flag-toggle:hover{color:var(--text-dim)}.fm-flag-toggle.active{color:var(--accent)}.fm-flag-toggle-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.fm-flag-toggle-box{flex:0 0 12px;width:12px;height:12px;display:inline-grid;place-items:center;border:1.3px solid var(--line-strong, var(--line));border-radius:3px;background:transparent;transition:border-color .12s ease}.fm-flag-toggle.active .fm-flag-toggle-box{border-color:var(--accent)}.fm-flag-toggle.active .fm-flag-toggle-box:after{content:"";width:3px;height:6px;margin-top:-1px;border-right:1.3px solid var(--accent);border-bottom:1.3px solid var(--accent);transform:rotate(45deg)}.fm-flag-toggle:has(.fm-flag-toggle-input:focus-visible) .fm-flag-toggle-box{outline:none;box-shadow:0 0 0 2px var(--accent-soft)}.fm-kern-block{display:flex;flex-direction:column;gap:9px}.fm-kern-block+.fm-kern-block{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.fm-testlab-nav{color:var(--text)}.fm-testlab-nav svg{color:var(--accent)}.fm-kern-glyph-hit:hover{box-shadow:none}.fm-kern-glyph-hit.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 52%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.fm-lab-caret{margin-left:4px}@media (max-width: 960px){.fm-lab-backdrop{padding:10px}.fm-lab-modal{height:calc(100vh - 20px);height:calc(100dvh - 20px)}.fm-lab-grid{gap:14px}.fm-lab-side{width:290px}.fm-lab-stage{padding:26px}}@media (max-width: 820px){.fm-lab-backdrop{padding:6px}.fm-lab-modal{height:calc(100vh - 12px);height:calc(100dvh - 12px);border-radius:12px}.fm-lab-body{padding:12px 14px 14px}.fm-lab-side{width:240px}.fm-lab-stage{padding:16px;min-height:260px}.fm-lab-controls-row .fm-field{min-width:76px}}.fm-lab-test-btn[data-testid=lab-test-type]{margin-right:4px;color:var(--text-dim)}.fm-lab-test-btn[data-testid=lab-test-type].active{color:var(--accent)}.fm-lab-stage.light .fm-type-guide>span{background:color-mix(in srgb,#fff 88%,transparent)}.fm-font-metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px 8px}.fm-metric-field{margin:0}.fm-metric-field label{display:block;margin-bottom:4px;color:var(--text-faint);font-size:9.5px;letter-spacing:.01em}.fm-metric-field input{width:100%;min-width:0;font-family:var(--mono);font-variant-numeric:tabular-nums}.fm-metric-field input:focus{border-color:color-mix(in srgb,var(--accent) 68%,var(--border));box-shadow:0 0 0 2px var(--accent-soft);outline:none}.fm-filemenu-wrap{position:relative}.fm-filemenu-wrap>.fm-topbtn{gap:5px}.fm-filemenu-backdrop{position:fixed;inset:0;z-index:79;background:transparent}.fm-filemenu{position:fixed;top:60px;left:14px;z-index:80;width:210px;max-width:calc(100vw - 20px);padding:6px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel) 96%,transparent);box-shadow:0 18px 46px #0000005c;backdrop-filter:blur(18px)}.fm-filemenu button{width:100%;height:34px;display:flex;align-items:center;gap:9px;padding:0 9px;border:0;border-radius:7px;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.fm-filemenu button:hover:not(:disabled){background:var(--panel-2)}.fm-filemenu button:disabled{opacity:.45;cursor:default}.fm-filemenu button kbd{margin-left:auto;color:var(--text-faint);font-size:10px;font-family:inherit;background:transparent;border:0;padding:0}.fm-filemenu-sep{height:1px;margin:5px 4px;background:var(--line)}.fm-morebar-menu{width:240px;max-height:min(70vh,460px);overflow-y:auto}.fm-morebar-menu-up{top:auto}.fm-morebar-section-label{padding:4px 9px 2px;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint)}.fm-morebar-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:2px;padding:2px 6px 4px}.fm-filemenu .fm-morebar-grid button{border-radius:7px;background:transparent;color:var(--text-dim)}.fm-filemenu .fm-morebar-grid button:hover:not(:disabled){background:var(--panel-2);color:var(--text)}.fm-filemenu-danger{color:var(--danger)!important}.fm-filemenu-danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 12%,transparent)!important}.fm-filemenu button.fm-filemenu-locked{color:var(--text-dim)}.fm-filemenu button.fm-filemenu-locked:hover{background:var(--panel-2)}.fm-filemenu button.fm-filemenu-locked .fm-lock-badge-inline{margin-left:auto}.fm-export-nav{color:var(--text)}.fm-export-nav svg{color:var(--accent)}.fm-toast{position:fixed;top:68px;right:18px;z-index:180;width:min(380px,calc(100vw - 36px));display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 10px 10px 12px;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--panel) 96%,transparent);color:var(--text);font-size:12px;line-height:1.4;box-shadow:0 16px 44px #0000005c;backdrop-filter:blur(16px);animation:fm-toast-in .16s ease-out}.fm-toast-success{border-color:color-mix(in srgb,var(--accent) 36%,var(--line))}.fm-toast-success>svg{color:var(--accent)}.fm-toast-error{border-color:color-mix(in srgb,var(--danger) 44%,var(--line))}.fm-toast-error>svg{color:var(--danger)}.fm-toast-info>svg{color:var(--text-dim)}.fm-toast-close{width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:7px;background:transparent;color:var(--text-dim);cursor:pointer}.fm-toast-close:hover{background:var(--panel-2);color:var(--text)}.fm-update-backdrop,.fm-prayer-backdrop{--panel: #121212;--panel-2: #191919;--line: #282828;--text: #f0f0f0;--text-dim: #8e8e8e;--text-faint: #5e5e5e;--accent: #c6f24e;--accent-2: #b4e03c;--accent-ink: #0c0f08}html[data-theme=light] .fm-update-backdrop,html[data-theme=light] .fm-prayer-backdrop{--panel: #ffffff;--panel-2: #f4f4f4;--line: #e6e6e6;--text: #181818;--text-dim: #686868;--text-faint: #9a9a9a;--accent: #4a5a68;--accent-2: #3a4855;--accent-ink: #ffffff}.fm-update-backdrop{font-family:Inter,system-ui,-apple-system,sans-serif;position:fixed;inset:0;z-index:400;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#0305089e;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fm-update-fade .18s ease-out}.fm-update-dialog{width:min(380px,100%);display:flex;flex-direction:column;align-items:center;text-align:center;padding:26px 24px 20px;border:1.5px solid color-mix(in srgb,var(--accent) 55%,var(--line));border-radius:16px;background:var(--panel, #121212);color:var(--text, #f0f0f0);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 10%,transparent),0 24px 64px #00000073;animation:fm-update-pop .22s cubic-bezier(.2,.9,.3,1.2)}.fm-update-icon{width:48px;height:48px;display:grid;place-items:center;margin-bottom:14px;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.fm-update-dialog h2{color:var(--text, #f0f0f0);margin:0 0 6px;font-size:17px;font-weight:650;letter-spacing:-.01em}.fm-update-dialog p{margin:0;font-size:13px;line-height:1.5;color:var(--text-dim, #8e8e8e)}.fm-update-actions{width:100%;display:flex;flex-direction:column;gap:8px;margin-top:18px}.fm-update-actions .fm-action-btn{width:100%;margin-top:0;padding:10px 14px;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.fm-update-later{width:100%;padding:9px 14px;border:0;border-radius:9px;background:transparent;color:var(--text-dim);font:inherit;font-size:12.5px;cursor:pointer}.fm-update-later:hover{background:var(--panel-2);color:var(--text)}.fm-update-spin{animation:fm-update-rot .9s linear infinite}@keyframes fm-update-fade{0%{opacity:0}to{opacity:1}}@keyframes fm-update-pop{0%{opacity:0;transform:scale(.94) translateY(6px)}to{opacity:1;transform:none}}@keyframes fm-update-rot{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.fm-update-backdrop,.fm-update-dialog{animation:none}}.fm-prayer-backdrop{font-family:Inter,system-ui,-apple-system,sans-serif;position:fixed;inset:0;z-index:390;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#000000bd;animation:fm-update-fade .18s ease-out}.fm-prayer-backdrop-soft{background:#0000008c;z-index:389}.fm-prayer-dialog{position:relative;width:min(640px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;padding:30px 32px 28px;border:2px solid color-mix(in srgb,var(--accent) 70%,var(--line));border-radius:20px;background:var(--panel, #121212);color:var(--text, #f0f0f0);box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 14%,transparent),0 28px 80px #0009;animation:fm-update-pop .22s cubic-bezier(.2,.9,.3,1.2)}.fm-prayer-close{position:absolute;top:14px;right:14px;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--text-dim);cursor:pointer}.fm-prayer-close:hover{background:var(--panel-2);color:var(--text)}.fm-prayer-close-inline{position:static}.fm-prayer-head{display:flex;align-items:flex-start;gap:18px;padding-right:30px}.fm-prayer-icon{flex:0 0 auto;width:62px;height:62px;display:grid;place-items:center;border-radius:18px;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.fm-prayer-headtext{min-width:0}.fm-prayer-headtext h2{margin:0;font-size:22px;line-height:1.35;font-weight:700;letter-spacing:-.01em;color:var(--text)}.fm-prayer-time{display:inline-block;margin-top:8px;font-family:var(--mono);font-size:15px;font-weight:600;color:var(--accent)}.fm-prayer-msg{margin:22px 0 0;padding-top:20px;border-top:1px solid var(--line);font-size:16px;line-height:1.65;color:var(--text-dim)}.fm-prayer-settings{width:min(430px,100%);display:flex;flex-direction:column;gap:16px;padding:18px 20px}.fm-prayer-sethead{display:flex;align-items:center;justify-content:space-between}.fm-prayer-sethead h2{margin:0;display:flex;align-items:center;gap:9px;font-size:16px;font-weight:650;letter-spacing:-.01em}.fm-prayer-seticon{display:grid;place-items:center;color:var(--accent)}.fm-prayer-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.fm-prayer-rowtext{display:flex;flex-direction:column;gap:2px;min-width:0}.fm-prayer-rowtext strong{font-size:13px;font-weight:600;color:var(--text)}.fm-prayer-rowtext span{font-size:12px;color:var(--text-dim)}.fm-prayer-switch{position:relative;flex:0 0 auto;width:38px;height:22px;border:0;border-radius:999px;cursor:pointer;background:var(--line);transition:background .15s ease}.fm-prayer-switch span{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000059;transition:transform .15s ease}.fm-prayer-switch.on{background:var(--accent)}.fm-prayer-switch.on span{transform:translate(16px)}.fm-prayer-section{display:flex;flex-direction:column;gap:7px}.fm-prayer-label{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.fm-prayer-place{font-size:13px;color:var(--text)}.fm-prayer-place em{font-style:normal;font-size:12px;color:var(--text-dim)}.fm-prayer-hint{font-size:11.5px;line-height:1.5;color:var(--text-dim)}.fm-prayer-pick{display:flex;gap:8px}.fm-prayer-pick .fm-prayer-select{flex:1 1 0}.fm-prayer-select{min-width:0;flex:0 0 auto;height:32px;padding:0 8px;font:inherit;font-size:12.5px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);color:var(--text);outline:none}.fm-prayer-select:focus{border-color:var(--accent)}.fm-prayer-btn{flex:0 0 auto;height:32px;padding:0 12px;font:inherit;font-size:12px;font-weight:600;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--text);cursor:pointer;transition:background .14s ease,border-color .14s ease}.fm-prayer-btn:hover:not(:disabled){background:var(--panel-2);border-color:var(--text-faint)}.fm-prayer-btn:disabled{opacity:.55;cursor:default}.fm-prayer-times{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.fm-prayer-time-cell{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;font-size:12px}.fm-prayer-time-cell span{color:var(--text-dim)}.fm-prayer-time-cell strong{font-family:var(--mono);font-size:12.5px;font-weight:600;color:var(--text)}.fm-prayer-time-cell.next{border-color:color-mix(in srgb,var(--accent) 60%,var(--line));background:color-mix(in srgb,var(--accent) 10%,transparent)}.fm-prayer-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.fm-prayer-foot span{font-size:11.5px;color:var(--text-faint)}@media (max-width: 520px){.fm-prayer-dialog{padding:20px 18px 18px}.fm-prayer-headtext h2{font-size:18px}.fm-prayer-icon{width:50px;height:50px}.fm-prayer-msg{font-size:14.5px}.fm-prayer-times{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion: reduce){.fm-prayer-backdrop,.fm-prayer-dialog{animation:none}}.fm-export-backdrop{position:fixed;inset:0;z-index:150;display:grid;place-items:center;padding:32px;background:#030508b8;backdrop-filter:blur(8px)}.fm-export-dialog{width:min(1040px,calc(100vw - 48px));max-height:min(720px,calc(100vh - 64px));max-height:min(720px,calc(100dvh - 64px));display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:0 24px 64px var(--shadow, rgba(0,0,0,.46));overflow:hidden}.fm-export-dialog>header{display:flex;align-items:center;justify-content:space-between;flex:none;padding:22px 32px 18px;border-bottom:1px solid var(--line)}.fm-export-dialog h2{margin:3px 0 0;font-size:21px;font-weight:650;letter-spacing:-.02em}.fm-export-body{display:flex;align-items:stretch;flex:1 1 auto;min-height:0}.fm-export-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;overflow-y:auto}.fm-export-sidebar{flex:0 0 288px;min-width:0;display:flex;flex-direction:column;gap:22px;padding:24px 26px;border-left:1px solid var(--line);background:var(--panel-2);overflow-y:auto}.fm-export-sidebar .fm-export-actions{margin-top:4px}.fm-export-tabs{display:flex;gap:4px;flex:none;margin:20px 32px 0;padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2)}.fm-export-tab{flex:1;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;border:0;border-radius:6px;background:transparent;color:var(--text-dim);font:inherit;font-size:12.5px;font-weight:650;cursor:pointer}.fm-export-tab:hover{color:var(--text)}.fm-export-tab.active{background:var(--accent);color:var(--accent-ink)}.fm-export-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;padding:22px 32px 30px}.fm-export-field-full,.fm-export-form .fm-nametable-preview{grid-column:1 / -1}.fm-qa-panel{grid-template-columns:1fr}.fm-export-options{padding:0;border:0}.fm-export-field{display:grid;gap:7px;min-width:0}.fm-export-sidebar .fm-export-form{display:flex;flex-direction:column;gap:20px;padding:0}.fm-export-field>span{color:var(--text-dim);font-size:10.5px;font-weight:650;letter-spacing:.055em;text-transform:uppercase}.fm-export-dialog input,.fm-export-dialog select{width:100%;min-width:0;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:8px;outline:none;background:var(--panel-2);color:var(--text);font:inherit}.fm-export-dialog input:focus,.fm-export-dialog select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.fm-export-dialog select{cursor:pointer}.fm-export-style-list{display:grid;gap:2px;padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2)}.fm-export-style-option{position:relative;min-height:34px;display:flex;align-items:center;gap:9px;padding:0 9px;border-radius:6px;color:var(--text);cursor:pointer;user-select:none}.fm-export-style-option:hover:not(.disabled){background:var(--panel)}.fm-export-style-row{display:flex;flex-direction:column;gap:2px}.fm-export-style-main{display:flex;align-items:baseline;gap:8px;min-width:0;flex:1}.fm-export-style-sub{font-size:11px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-export-rename-toggle{flex:0 0 auto;height:22px;padding:0 9px;border-radius:5px;border:1px solid var(--line);background:transparent;color:var(--text-dim);font-size:10.5px;cursor:pointer;transition:color .12s ease,border-color .12s ease}.fm-export-rename-toggle:hover{color:var(--text);border-color:var(--line-strong, var(--line))}.fm-export-rename-toggle.active{color:var(--accent);border-color:var(--accent)}.fm-export-style-name-overrides{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:4px 9px 8px 36px}.fm-export-override-field{display:flex;flex-direction:column;gap:3px;min-width:0}.fm-export-override-field>span{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}.fm-export-style-name-override{min-width:0;height:28px;padding:0 9px;border-radius:6px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-size:12px}.fm-export-style-name-override::placeholder{color:var(--text-dim)}.fm-export-style-option>input[type=checkbox]{position:absolute;width:1px;height:1px;padding:0;margin:0;opacity:0;pointer-events:none}.fm-export-checkmark{width:15px;height:15px;flex:0 0 15px;display:grid;place-items:center;border:1.5px solid var(--line-strong, var(--line));border-radius:4px;background:transparent;transition:border-color .12s ease,box-shadow .12s ease}.fm-export-style-option>input[type=checkbox]:checked+.fm-export-checkmark{border-color:var(--accent);background:transparent}.fm-export-style-option>input[type=checkbox]:checked+.fm-export-checkmark:after{content:"";width:4px;height:7.5px;margin-top:-1.5px;border-right:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);transform:rotate(45deg)}.fm-export-style-option>input[type=checkbox]:focus-visible+.fm-export-checkmark{box-shadow:0 0 0 2px var(--accent-soft)}.fm-export-style-name{min-width:0;font-size:12px;font-weight:620}.fm-export-style-status{margin-left:auto;color:var(--text-dim);font-size:10px;letter-spacing:.02em}.fm-export-style-option.disabled{opacity:.38;cursor:default}.fm-export-style-option.fm-export-style-locked{opacity:.55;cursor:pointer}.fm-export-style-option.fm-export-style-locked:hover{background:var(--panel)}.fm-export-style-option.fm-export-style-locked .fm-lock-badge-inline{margin-left:auto}.fm-format-segment{display:flex;min-height:38px;padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2)}.fm-format-segment button{flex:1;min-width:0;border:0;border-radius:6px;padding:0 10px;background:transparent;color:var(--text-dim);font:inherit;font-size:11px;font-weight:650;cursor:pointer}.fm-format-segment button:hover{color:var(--text)}.fm-format-segment button.active{background:var(--accent);color:var(--accent-ink)}.fm-export-quota-note{padding:0;margin:0}.fm-export-actions{display:flex;flex-direction:column;gap:9px;padding:14px 0 0;border-top:1px solid var(--line)}.fm-export-actions .fm-primary-btn,.fm-export-actions .fm-secondary-btn{width:100%}.fm-primary-btn,.fm-secondary-btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;border-radius:8px;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer;white-space:normal;text-align:center;line-height:1.25}.fm-primary-btn>svg,.fm-secondary-btn>svg{flex:none}.fm-primary-btn{border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink)}.fm-primary-btn:hover:not(:disabled){background:var(--accent-2);border-color:var(--accent-2)}.fm-secondary-btn{border:1px solid var(--line);background:transparent;color:var(--text-dim)}.fm-secondary-btn:hover:not(:disabled){background:var(--panel-2);color:var(--text)}.fm-primary-btn:disabled,.fm-secondary-btn:disabled{opacity:.5;cursor:default}@keyframes fm-toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.fm-cloud-title{display:flex;align-items:center;gap:8px}.fm-cloud-body{padding:4px 20px 18px}.fm-cloud-status{display:flex;align-items:center;gap:8px;padding:22px 4px;color:var(--text-dim);font-size:12.5px}.fm-cloud-empty{display:grid;justify-items:center;gap:6px;padding:30px 12px 24px;color:var(--text-dim);text-align:center}.fm-cloud-empty svg{color:var(--text-faint);margin-bottom:4px}.fm-cloud-empty p{margin:0;color:var(--text);font-size:13px;font-weight:620}.fm-cloud-empty span{font-size:11.5px;line-height:1.5;max-width:300px}.fm-cloud-list{display:grid;gap:4px;max-height:340px;overflow-y:auto;padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2)}.fm-cloud-item{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.fm-cloud-item-main{flex:1;min-width:0;display:flex;align-items:center;gap:10px;height:46px;padding:0 10px;border:0;border-radius:7px;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.fm-cloud-item-main:hover:not(:disabled){background:var(--panel)}.fm-cloud-item-main:disabled{opacity:.5;cursor:default}.fm-cloud-item-icon{flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:var(--accent-soft);color:var(--accent)}.fm-cloud-item-info{min-width:0;display:grid;gap:1px}.fm-cloud-item-name{font-size:12.5px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-cloud-item-meta{font-size:10.5px;color:var(--text-dim)}.fm-cloud-item-delete{flex:0 0 auto;display:grid;place-items:center;width:32px;height:32px;margin-right:3px;border:0;border-radius:7px;background:transparent;color:var(--text-dim);cursor:pointer}.fm-cloud-item-delete:hover:not(:disabled){background:var(--panel);color:var(--danger)}.fm-cloud-item-delete:disabled{opacity:.5;cursor:default}.fm-cloud-error{margin:0 0 4px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--danger) 40%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger);font-size:12px;line-height:1.5}.fm-cloud-hint{display:flex;align-items:center;gap:6px;margin:-4px 0 0;color:var(--text-dim);font-size:11.5px;line-height:1.4}.fm-cloud-quota{display:grid;gap:6px;margin-top:-2px}.fm-cloud-quota-row{display:flex;justify-content:space-between;gap:8px;color:var(--text-dim);font-size:11px}.fm-cloud-quota-bar{height:6px;border-radius:999px;overflow:hidden;background:var(--panel-2);border:1px solid var(--line)}.fm-cloud-quota-fill{height:100%;border-radius:999px;background:var(--accent);transition:width .2s ease}.fm-cloud-quota-fill-warn{background:var(--danger)}.fm-export-progress{display:grid;gap:6px;margin:4px 0 2px}.fm-export-progress-row{display:flex;justify-content:space-between;gap:8px;color:var(--text-dim);font-size:11.5px}.fm-export-progress-pct{font-variant-numeric:tabular-nums;color:var(--text);font-weight:650}.fm-export-progress-bar{height:7px;border-radius:999px;overflow:hidden;background:var(--panel-2);border:1px solid var(--line)}.fm-export-progress-fill{height:100%;border-radius:999px;background:var(--accent);transition:width .22s ease}.fm-cloud-progress{display:grid;gap:6px;margin-top:-2px}.fm-cloud-progress-row{display:flex;justify-content:space-between;gap:8px;color:var(--text-dim);font-size:11.5px}.fm-cloud-progress-pct{font-variant-numeric:tabular-nums;color:var(--text);font-weight:650}.fm-cloud-progress-bar{height:7px;border-radius:999px;overflow:hidden;background:var(--panel-2);border:1px solid var(--line)}.fm-cloud-progress-fill{height:100%;border-radius:999px;background:var(--accent);transition:width .22s ease}.fm-cloud-progress-inline{flex:0 0 calc(100% - 12px);margin:0 6px 6px}.fm-cloud-success-dialog{display:grid;justify-items:center;gap:10px;padding:30px 26px 26px;text-align:center}.fm-cloud-success-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.fm-cloud-success-dialog h2{margin:0;font-size:16px;font-weight:700}.fm-cloud-success-body{margin:0;max-width:340px;color:var(--text-dim);font-size:12.5px;line-height:1.6}.fm-cloud-success-body strong{color:var(--text);font-weight:650}.fm-cloud-success-actions{justify-content:center;margin-top:6px}.fm-cloud-existing{display:grid;gap:7px;margin-top:-2px}.fm-cloud-existing-label{color:var(--text-dim);font-size:10.5px;font-weight:650;letter-spacing:.055em;text-transform:uppercase}.fm-cloud-existing-list{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}.fm-cloud-existing-list li{padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:var(--panel-2);color:var(--text-dim);font-size:11px}@media (max-width: 1120px){.fm-export-dialog{width:min(860px,calc(100vw - 32px))}}@media (max-width: 860px){.fm-export-backdrop{padding:16px}.fm-export-dialog{width:min(560px,calc(100vw - 24px));max-height:min(90vh,780px);max-height:min(90dvh,780px)}.fm-export-body{flex-direction:column;overflow-y:auto}.fm-export-main{overflow-y:visible}.fm-export-sidebar{flex:none;border-left:0;border-top:1px solid var(--line)}.fm-export-sidebar .fm-export-actions{margin-top:4px}}@media (max-width: 560px){.fm-export-form{grid-template-columns:1fr}.fm-export-tabs{margin:14px 16px 0}.fm-export-dialog>header{padding:16px 16px 12px}.fm-export-form{padding:16px 16px 20px}.fm-export-sidebar{padding:16px}}.fm-glyphnav .fm-family-generate{width:100%;min-height:36px;margin:0 0 10px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 54%,transparent),0 0 16px color-mix(in srgb,var(--accent) 24%,transparent);transition:background .14s ease,filter .14s ease,box-shadow .14s ease,transform .1s ease}.fm-glyphnav .fm-family-generate:hover{filter:brightness(1.04);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 70%,transparent),0 0 20px color-mix(in srgb,var(--accent) 34%,transparent)}.fm-glyphnav .fm-family-generate:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fm-glyphnav .fm-family-generate:active{transform:translateY(1px)}.fm-glyphnav .fm-family-generate svg{flex:0 0 auto}.fm-kern-mode-toggle{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:10px 0 12px}.fm-kern-mode-toggle.fm-toggle-3col{grid-template-columns:1fr 1fr 1fr}.fm-kern-mode-toggle button{min-width:0;height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--text-dim);font:inherit;font-size:11px;font-weight:700;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease}.fm-kern-mode-toggle button:hover{border-color:var(--text-faint);color:var(--text)}.fm-kern-mode-toggle button.active{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.fm-kern-mode-toggle button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fm-kern-mode-toggle.fm-ghost-mode-toggle{grid-template-columns:1fr 1fr 1fr}.fm-ghost-image-field{margin-top:12px}.fm-ghost-image-preview{display:flex;flex-direction:column;gap:8px}.fm-ghost-image-preview img{width:100%;max-height:120px;object-fit:contain;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);padding:6px}.fm-ghost-image-actions{display:flex;gap:8px}.fm-ghost-image-actions .fm-action-btn{margin-top:0;flex:1}.fm-ghost-image-error{color:var(--danger);margin-top:6px}.fm-kern-layer-field{margin:0 0 12px}.fm-kern-layer-field select{height:34px;cursor:pointer}.fm-kern-layer-note{margin-top:6px;color:var(--text-faint);font-size:10px;line-height:1.45}.fm-kern-precision label{display:flex;align-items:center;gap:6px}.fm-kern-layer-hint{display:inline-flex;align-items:center;min-height:17px;padding:1px 5px;border-radius:999px;font-size:8.5px;font-family:var(--mono);font-weight:750;letter-spacing:.02em;text-transform:uppercase}.fm-kern-layer-hint.override{background:var(--accent-soft);color:var(--accent)}.fm-kern-layer-hint.inherited{background:var(--panel-2);color:var(--text-faint)}.fm-kern-origin-badge{display:inline-flex;align-items:center;min-height:17px;padding:1px 5px;border-radius:999px;font-size:8.5px;font-family:var(--mono);font-weight:750;letter-spacing:.02em;text-transform:uppercase;cursor:default}.fm-kern-origin-badge.manual{background:var(--accent-soft);color:var(--accent)}.fm-kern-origin-badge.class{background:color-mix(in srgb,#8b5cf6 18%,transparent);color:#8b5cf6}.fm-kern-origin-badge.auto{background:var(--panel-2);color:var(--text-faint)}.fm-kern-context-style{color:var(--accent);font-family:var(--sans);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.fm-kern-context:has(.fm-kern-context-style){justify-content:space-between;gap:8px}.fm-kern-side-actions .fm-action-btn:disabled{opacity:.42;cursor:default;border-color:var(--line)}.fm-kern-side-actions .fm-action-btn:disabled:hover{filter:none;background:var(--panel-2);color:var(--text-dim)}.fm-family-stage{padding:0!important;overflow-x:hidden!important;overflow-y:auto!important}.fm-family-preview{width:100%;min-width:0;display:flex;flex-direction:column}.fm-family-style-row{display:grid;grid-template-columns:82px minmax(0,1fr);min-width:0;min-height:154px;border-bottom:1px solid color-mix(in srgb,var(--line) 78%,transparent)}.fm-family-style-row:last-child{border-bottom:0}.fm-family-style-row.context-active .fm-family-style-label>span{color:var(--accent)}.fm-family-style-label{padding:22px 10px 18px 18px;color:currentColor;opacity:.84}.fm-family-style-label>span{display:block;font-size:11.5px;font-weight:650}.fm-family-style-label small{display:inline-block;margin-top:7px;color:var(--accent);font-family:var(--mono);font-size:7.5px;font-weight:800;letter-spacing:.09em}.fm-family-style-body{position:relative;min-width:0;min-height:153px;padding:44px 30px 26px 8px;overflow:hidden;cursor:default}.fm-family-style-row.editable .fm-family-style-body{cursor:text}.fm-family-lines{position:relative;z-index:2;width:100%;min-width:0;pointer-events:none}.fm-family-preview-line{width:100%;min-width:0;display:flex;overflow:visible}.fm-family-line-inner{position:relative;flex:0 0 auto;min-width:1px;max-width:100%}.fm-family-line-inner .fm-glyphrun{max-width:100%}.fm-family-stage-input{position:absolute;inset:0;z-index:1;width:100%;height:100%;resize:none;border:0;outline:0;padding:0;background:transparent;color:transparent;caret-color:transparent;overflow:hidden;font-family:var(--sans)}.fm-family-stage-input::selection{background:transparent;color:transparent}.fm-family-caret{margin-left:2px}.fm-family-line-inner .fm-kern-active-box.selected{background:color-mix(in srgb,var(--accent) 6%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 62%,transparent)}.fm-family-line-inner .fm-kern-glyph-hit:hover:not(.active){background:transparent;box-shadow:none}.fm-family-line-inner .fm-kern-ruler{z-index:6}@media (max-width: 960px){.fm-family-style-row{grid-template-columns:68px minmax(0,1fr)}.fm-family-style-label{padding-left:12px}.fm-family-style-body{padding-right:20px}}.fm-family-auto-modal{width:min(1220px,100%);height:min(900px,calc(100vh - 40px));height:min(900px,calc(100dvh - 40px))}.fm-family-auto-body{flex:1;min-height:0;overflow-y:auto;padding:18px 20px 20px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.fm-family-auto-previews{overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:12px;background:var(--canvas)}.fm-family-auto-row{display:grid;grid-template-columns:112px minmax(0,1fr);min-height:132px;border-bottom:1px solid color-mix(in srgb,var(--line) 76%,transparent)}.fm-family-auto-row:last-child{border-bottom:0}.fm-family-auto-row-head{display:flex;align-items:flex-start;padding:18px 12px 14px 16px;background:color-mix(in srgb,var(--panel) 68%,transparent)}.fm-family-auto-row-head>div{display:flex;min-width:0;flex-direction:column;gap:6px}.fm-family-auto-row-head strong{color:var(--text);font-size:11.5px;font-weight:700}.fm-family-auto-row-head span{color:var(--text-faint);font-family:var(--mono);font-size:9px;line-height:1.4}.fm-family-auto-categories{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.fm-family-auto-categories button{width:auto;padding:0;border:0;background:transparent;color:var(--text-faint);font:inherit;font-family:var(--mono);font-size:9px;line-height:1.4;text-align:left;cursor:pointer;transition:color .15s ease}.fm-family-auto-categories button:hover,.fm-family-auto-categories button.is-active{color:var(--accent)}.fm-family-auto-categories button:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.fm-family-auto-strip{display:flex;min-width:0;gap:7px;overflow-x:auto;overflow-y:hidden;padding:13px 14px 12px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.fm-family-auto-strip::-webkit-scrollbar{height:6px}.fm-family-auto-strip::-webkit-scrollbar-track{background:transparent}.fm-family-auto-strip::-webkit-scrollbar-thumb{border-radius:999px;background:var(--line)}.fm-family-auto-glyph{position:relative;flex:0 0 60px;width:60px;height:98px;overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:9px;background:color-mix(in srgb,var(--panel-2) 82%,transparent);content-visibility:auto;contain-intrinsic-size:60px 98px}.fm-family-auto-glyph.has-vector{border-color:color-mix(in srgb,var(--line) 62%,var(--text-faint))}.fm-family-auto-char{position:absolute;top:6px;left:7px;z-index:2;max-width:46px;overflow:hidden;color:var(--text-faint);font-family:var(--mono);font-size:8px;line-height:1;text-overflow:ellipsis;white-space:nowrap}.fm-family-auto-thumb{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--thumb-ink)}.fm-family-auto-thumb .fm-thumb-svg{width:78%;height:72%;margin-top:9px}.fm-family-auto-empty{color:var(--text-faint);font-family:var(--mono);font-size:8px;text-transform:uppercase;opacity:.58}.fm-family-auto-empty-row{padding:38px 12px;color:var(--text-faint);font-size:11px}.fm-family-generate{min-width:0;margin-top:14px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}.fm-family-generate-head{display:flex;align-items:flex-start;gap:9px;margin-bottom:14px;color:var(--text)}.fm-family-generate-head>svg{flex:0 0 auto;margin-top:1px;color:var(--accent)}.fm-family-generate-head>div{display:flex;flex-direction:column;gap:3px}.fm-family-generate-head strong{font-size:12px;font-weight:750}.fm-family-generate-head span{color:var(--text-faint);font-size:10px}.fm-family-generate-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.fm-family-generate-tabs button{min-width:0;flex:1 1 calc(25% - 5px);height:30px;padding:0 8px;border-radius:8px;border:1px solid var(--line);background:var(--panel);color:color-mix(in srgb,var(--text) 72%,var(--text-dim));cursor:pointer;font-size:11px;font-weight:700;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .14s ease,border-color .14s ease,color .14s ease}.fm-family-generate-tabs button:hover:not(.active){color:var(--text);border-color:var(--text-faint)}.fm-family-generate-tabs button.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.fm-family-generate-panel{min-width:0}.fm-family-auto-live-preview{position:relative;height:92px;margin-bottom:13px;overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 74%,transparent);border-radius:9px;background:var(--canvas);color:var(--thumb-ink)}.fm-family-auto-live-preview>span{position:absolute;top:7px;left:8px;z-index:2;color:var(--text-faint);font-family:var(--mono);font-size:8px;font-weight:700;letter-spacing:.04em}.fm-family-auto-live-preview>div{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.fm-family-auto-live-preview .fm-thumb-svg{width:72%;height:72%;margin-top:8px}.fm-family-auto-live-preview em{color:var(--text-faint);font-size:10px;font-style:normal}.fm-family-auto-live-preview--strip>div:not(.fm-family-auto-live-strip){display:block}.fm-family-auto-live-strip{display:flex;width:100%;height:100%;gap:5px;padding:20px 8px 6px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.fm-family-auto-live-strip::-webkit-scrollbar{height:5px}.fm-family-auto-live-strip::-webkit-scrollbar-track{background:transparent}.fm-family-auto-live-strip::-webkit-scrollbar-thumb{border-radius:999px;background:var(--line)}.fm-family-auto-live-glyph{flex:0 0 34px;width:34px;height:100%;display:flex;align-items:center;justify-content:center;color:var(--thumb-ink)}.fm-family-auto-live-glyph .fm-thumb-svg{width:100%;height:82%}.fm-family-auto-live-char{color:var(--text-faint);font-family:var(--mono);font-size:11px;opacity:.6}.fm-family-auto-live-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.fm-family-generate-panel .fm-field{margin-bottom:12px}.fm-family-auto-replace{margin-top:4px}.fm-family-generate-panel .fm-hint{margin-top:6px}.fm-family-generate-panel .fm-action-btn{margin-top:14px}.fm-family-auto-status{display:flex;align-items:center;gap:8px;min-height:36px;margin-top:12px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line));border-radius:8px;background:var(--accent-soft);color:var(--accent);font-size:11.5px}.fm-family-auto-status .fm-status-dot{background:var(--accent)}@media (max-width: 820px){.fm-family-auto-row{grid-template-columns:82px minmax(0,1fr)}.fm-family-auto-row-head{padding-left:12px}.fm-family-generate-tabs button{flex-basis:calc(50% - 3px)}}.fm-trace-modal{width:min(1440px,100%);position:relative}.fm-trace-body{flex:1;min-height:0;display:flex;gap:0;overflow:hidden}.fm-trace-left{flex:0 0 75%;max-width:75%;min-width:0;border-right:1px solid var(--line);display:flex;min-height:0}.fm-trace-controls{width:300px;flex:0 0 auto;border-right:1px solid var(--line-soft);padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.fm-trace-canvas{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0;padding:14px 18px 18px;overflow:hidden}.fm-trace-canvas-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:4px}.fm-trace-canvas-head .fm-panel-eyebrow{display:inline-flex;align-items:center;gap:6px;margin-bottom:0}.fm-trace-canvas-count{font-family:var(--mono);font-size:10.5px;color:var(--text-faint);white-space:nowrap}.fm-trace-canvas-hint{display:flex;align-items:center;gap:6px;margin:6px 0 12px}.fm-trace-canvas-empty{flex:1;min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;color:var(--text-faint);font-size:12.5px;border:1.5px dashed var(--line-soft);border-radius:12px;padding:24px;max-width:420px;margin:auto}.fm-trace-artboard-wrap{flex:1;min-height:0;overflow:auto;padding:2px}.fm-trace-artboard{position:relative;width:100%;background:var(--canvas);border:1px solid var(--line);border-radius:10px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line) 60%,transparent)}.fm-trace-artboard-item{position:absolute;border:none;background:transparent;padding:0;cursor:grab;z-index:1}.fm-trace-artboard-item:hover,.fm-trace-artboard-item.active{z-index:2}.fm-trace-artboard-item:active{cursor:grabbing}.fm-trace-artboard-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.fm-trace-artboard-svg{width:100%;height:100%;display:block;overflow:visible}.fm-trace-artboard-svg path{fill:var(--thumb-ink);transition:fill .12s ease,opacity .12s ease}.fm-trace-artboard-item:hover .fm-trace-artboard-svg path{fill:var(--accent);opacity:.7}.fm-trace-artboard-item.active .fm-trace-artboard-svg path{fill:var(--accent);opacity:1}.fm-trace-apply-bar{flex:0 0 auto;margin-top:12px;padding:10px 12px;border:1px solid var(--line-soft);border-radius:10px;background:var(--panel-2);display:flex;align-items:center;gap:12px}.fm-trace-apply-info{flex:1;min-width:0;display:flex;align-items:center;gap:10px}.fm-trace-apply-thumb{flex:0 0 auto;width:40px;height:40px;border-radius:8px;border:1px solid var(--accent);background:var(--panel);display:flex;align-items:center;justify-content:center;color:var(--thumb-ink);cursor:grab}.fm-trace-apply-thumb:active{cursor:grabbing}.fm-trace-apply-hint{margin:0}.fm-trace-apply-bar .fm-action-btn{width:auto;flex:0 0 auto;margin-top:0}.fm-trace-right{flex:0 0 25%;max-width:25%;min-width:200px;display:flex;flex-direction:column;min-height:0}.fm-trace-right-head{padding:14px 14px 10px;border-bottom:1px solid var(--line-soft);display:flex;flex-direction:column;gap:3px}.fm-trace-right-hint{margin:0}.fm-trace-glyphlist{flex:1;overflow-y:auto;padding:4px 12px 20px}.fm-trace-target-grid{grid-template-columns:repeat(4,1fr);gap:6px}.fm-trace-target-tile{border-radius:8px}.fm-trace-target-tile .fm-thumb-svg{width:72%;height:72%}.fm-trace-target-tile .fm-thumb-char{font-size:14px}.fm-trace-target-tile .fm-thumb-char.fm-thumb-char-multi{font-size:8px}.fm-trace-target-tile .fm-tile-dot{width:5px;height:5px;top:4px;right:4px}.fm-trace-detail-toggle{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:8px 0 10px}.fm-trace-detail-toggle button{min-width:0;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:7px;background:transparent;color:var(--text-dim);font:inherit;font-size:10.5px;font-weight:700;letter-spacing:.01em;cursor:pointer;padding:0 4px;transition:background .14s ease,border-color .14s ease,color .14s ease}.fm-trace-detail-toggle button:hover{border-color:var(--text-faint);color:var(--text)}.fm-trace-detail-toggle button.active{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.fm-trace-detail-toggle button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fm-trace-import-svg-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;padding:9px 10px;border-radius:10px;border:1px solid var(--line);background:var(--panel-2);color:var(--text-dim);font-size:12.5px;font-weight:600;cursor:pointer;transition:border-color .14s ease,color .14s ease,background .14s ease}.fm-trace-import-svg-btn:hover,.fm-trace-import-svg-btn:focus-visible{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);outline:none}.fm-trace-import-svg-btn:active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.fm-trace-import-svg-btn:disabled{opacity:.6;cursor:default}.fm-trace-svg-file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.fm-trace-dropzone{position:relative;border:1.5px dashed var(--line);border-radius:12px;background:var(--panel-2);min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text-faint);font-size:12px;text-align:center;padding:14px;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.fm-trace-dropzone:hover,.fm-trace-dropzone:focus-visible{border-color:var(--accent);color:var(--text-dim);outline:none}.fm-trace-dropzone.dragging{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.fm-trace-dropzone.has-image{height:190px;padding:8px;cursor:pointer}.fm-trace-preview-img{width:100%;height:100%;max-width:100%;max-height:100%;border-radius:8px;display:block;background:#fff;object-fit:contain}.fm-trace-file-input{position:absolute;inset:0;opacity:0;pointer-events:none}.fm-trace-filename{display:flex;align-items:center;justify-content:space-between;gap:8px;font-family:var(--mono);font-size:11px;color:var(--text-dim)}.fm-trace-filename span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-trace-filename-reset{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;border:none;background:none;color:var(--text-faint);font-size:11px;cursor:pointer;padding:2px 4px}.fm-trace-filename-reset:hover{color:var(--accent)}.fm-trace-result-head{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.fm-trace-live-preview{margin-top:4px;padding-top:12px;border-top:1px solid var(--line-soft);display:flex;flex-direction:column;gap:8px}.fm-trace-live-preview-box{position:relative;height:120px;border-radius:10px;border:1px solid var(--line-soft);background:var(--canvas);color:var(--thumb-ink);display:flex;align-items:center;justify-content:center;padding:10px}.fm-trace-live-preview-box .fm-hint{text-align:center;color:var(--text-faint)}.fm-trace-live-preview-spinner{position:absolute;top:8px;right:8px;color:var(--text-faint)}.fm-trace-live-preview-box:has(.fm-trace-preview-lens){cursor:zoom-in}.fm-trace-preview-lens{position:absolute;width:190px;height:190px;border-radius:50%;overflow:hidden;border:2px solid var(--accent);box-shadow:0 8px 22px var(--shadow);background:var(--canvas);transform:translate(-50%,-50%);pointer-events:none;z-index:5}.fm-trace-preview-lens-inner{position:absolute;box-sizing:border-box;padding:10px;transform-origin:0 0;color:var(--thumb-ink);display:flex;align-items:center;justify-content:center}.fm-trace-tile-applied{animation:fm-trace-applied-flash 1.2s ease}@keyframes fm-trace-applied-flash{0%{box-shadow:0 0 0 2px var(--accent)}to{box-shadow:none}}.fm-spin{animation:fm-spin-rotate .9s linear infinite}@keyframes fm-spin-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 980px){.fm-trace-left{flex:0 0 68%;max-width:68%}.fm-trace-right{flex:0 0 32%;max-width:32%}.fm-trace-controls{width:260px}}@media (max-width: 820px){.fm-trace-body{flex-direction:column;overflow-y:auto}.fm-trace-left{flex:0 0 auto;max-width:none;flex-direction:column;border-right:none;border-bottom:1px solid var(--line)}.fm-trace-controls{width:auto;border-right:none;border-bottom:1px solid var(--line-soft)}.fm-trace-canvas{min-height:260px}.fm-trace-right{flex:0 0 auto;max-width:none;min-width:0}}.fm-worksheet-panel{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;padding:16px 18px 18px;gap:12px;overflow:hidden}.fm-worksheet-summary{display:flex;flex-direction:column;gap:4px}.fm-worksheet-summary-line{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.fm-worksheet-summary-line strong{font-size:13px}.fm-worksheet-warnings{margin:4px 0 0;padding-left:16px;color:var(--text-faint);font-size:11.5px;line-height:1.5}.fm-worksheet-detecting{display:flex;align-items:center;gap:6px}.fm-worksheet-note{display:block;margin-top:2px;line-height:1.5}.fm-worksheet-toolbar{display:flex;align-items:center;gap:8px}.fm-worksheet-toolbar .fm-trace-import-svg-btn{width:auto;padding:7px 10px;font-size:11.5px}.fm-worksheet-grid{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:8px;padding:2px}.fm-worksheet-cell{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 6px 6px;border:1px solid var(--line-soft);border-radius:10px;background:var(--panel-2);cursor:pointer;transition:border-color .14s ease,background .14s ease}.fm-worksheet-cell:hover{border-color:var(--text-faint)}.fm-worksheet-cell.checked{border-color:var(--accent);background:var(--accent-soft)}.fm-worksheet-cell.missing{cursor:default;opacity:.55}.fm-worksheet-cell input[type=checkbox]{position:absolute;top:6px;left:6px;margin:0}.fm-worksheet-cell-thumb{width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:var(--thumb-ink)}.fm-worksheet-cell-missing{color:var(--text-faint);font-size:16px}.fm-worksheet-cell-char{font-family:var(--mono);font-size:11px;color:var(--text-dim)}.fm-worksheet-cell-status{font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.fm-worksheet-cell-flag{position:absolute;top:6px;right:6px;font-size:11px;color:var(--accent)}.fm-worksheet-summary-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.fm-worksheet-back-btn{display:inline-flex;align-items:center;flex:0 0 auto;gap:5px;padding:8px 12px;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);font-size:11.5px;font-weight:600;cursor:pointer;transition:background .14s ease,border-color .14s ease}.fm-worksheet-back-btn:hover{background:var(--accent-2);border-color:var(--accent-2)}.fm-feature-modal{width:min(920px,100%);height:min(760px,100%)}.fm-feature-body{display:flex;flex-direction:column;gap:22px}.fm-feature-intro{margin:0;font-size:12px;line-height:1.5;color:var(--text-dim)}.fm-feature-section{border:1px solid var(--line);border-radius:12px;padding:14px 16px 16px;background:var(--panel-2);display:flex;flex-direction:column;gap:12px}.fm-feature-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fm-feature-select,.fm-feature-input{height:32px;padding:0 10px;border-radius:8px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-size:12px;outline:none;transition:border-color .15s ease}.fm-feature-select{min-width:140px}.fm-feature-input{flex:1 1 180px;min-width:140px}.fm-feature-select:focus,.fm-feature-input:focus{border-color:var(--accent)}.fm-feature-input:disabled,.fm-feature-select:disabled{opacity:.5;cursor:not-allowed}.fm-feature-arrow,.fm-feature-plus{color:var(--text-dim);font-size:14px;flex:0 0 auto}.fm-feature-btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:8px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .14s ease,color .14s ease,border-color .14s ease,opacity .14s ease}.fm-feature-btn:hover{border-color:var(--text-faint)}.fm-feature-btn:disabled{opacity:.45;cursor:not-allowed}.fm-feature-btn-ghost{background:transparent;color:var(--text-dim)}.fm-feature-btn-primary{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.fm-feature-btn-primary:disabled{opacity:.45}.fm-feature-preview-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px dashed var(--line);border-radius:10px;background:var(--panel)}.fm-feature-rule-list{display:flex;flex-direction:column;gap:8px}.fm-feature-empty{font-size:11.5px;color:var(--text-faint);padding:4px 2px}.fm-feature-rule-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.fm-feature-rule-row-wrap{flex-wrap:wrap}.fm-feature-rule-label{font-size:11.5px;font-family:var(--mono);color:var(--text-dim)}.fm-feature-thumb{width:34px;height:34px;border-radius:7px;border:1px solid var(--line);background:var(--canvas);display:flex;align-items:center;justify-content:center;overflow:hidden;flex:0 0 auto}.fm-feature-thumb-empty{font-size:10px;color:var(--text-faint);font-family:var(--mono)}.fm-feature-alt-chip{position:relative;display:inline-flex;align-items:center}.fm-feature-alt-chip .fm-feature-remove{position:absolute;top:-5px;right:-5px;width:15px;height:15px;border-radius:50%;background:var(--panel-2);border:1px solid var(--line)}.fm-feature-remove{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;border:1px solid transparent;background:transparent;color:var(--text-dim);cursor:pointer;flex:0 0 auto;transition:background .14s ease,color .14s ease,border-color .14s ease}.fm-feature-remove:hover{color:#ef4444;border-color:#ef4444;background:color-mix(in srgb,#ef4444 12%,transparent)}.fm-lab-feature-stage{display:flex;flex-direction:column;padding:24px}.fm-lab-feature-stage.light{--labf-card-bg: #f4f4f2;--labf-thumb-bg: #ffffff;--labf-border: rgba(20, 22, 15, .14);--labf-border-hover: var(--accent, #2f7d4f);--labf-text: #14160f;--labf-text-dim: rgba(20, 22, 15, .58);--labf-text-faint: rgba(20, 22, 15, .38)}.fm-lab-feature-stage.dark{--labf-card-bg: #14171a;--labf-thumb-bg: #1c2023;--labf-border: rgba(242, 245, 242, .14);--labf-border-hover: var(--accent, #4ade80);--labf-text: #f2f5f2;--labf-text-dim: rgba(242, 245, 242, .62);--labf-text-faint: rgba(242, 245, 242, .42)}.fm-lab-feature-groups{display:flex;flex-direction:column;gap:22px;width:100%}.fm-lab-feature-empty{margin:auto;display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--labf-text-dim);text-align:center;padding:32px}.fm-lab-feature-empty p{margin:0;font-size:13px}.fm-lab-feature-preview{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:12px;border:1px solid var(--labf-border);background:var(--labf-card-bg)}.fm-lab-feature-preview-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.fm-lab-feature-preview-input{flex:1 1 220px;min-width:0;padding:9px 12px;border-radius:8px;border:1px solid var(--labf-border);background:var(--labf-thumb-bg);color:var(--labf-text);font-size:13px;font-family:var(--sans, inherit)}.fm-lab-feature-preview-input::placeholder{color:var(--labf-text-faint)}.fm-lab-feature-preview-input:focus{outline:none;border-color:var(--labf-border-hover)}.fm-lab-feature-preview-toggles{display:flex;flex-wrap:wrap;gap:6px;flex:0 0 auto}.fm-chip{padding:6px 12px;border-radius:999px;border:1px solid var(--labf-border);background:transparent;color:var(--labf-text-dim);font-size:11.5px;font-weight:600;cursor:pointer;transition:border-color .14s ease,color .14s ease,background .14s ease}.fm-chip:hover{border-color:var(--labf-border-hover);color:var(--labf-text)}.fm-chip.active{border-color:var(--labf-border-hover);background:var(--labf-border-hover);color:#08110b}.fm-lab-feature-preview-stage{width:100%;overflow-x:auto;padding:6px 2px 10px}.fm-lab-feature-preview-glyph{color:var(--labf-text);touch-action:none}.fm-lab-feature-preview-glyph.kerning-active{color:var(--accent)}.fm-lab-feature-preview-note,.fm-lab-feature-preview-empty{font-size:12px;color:var(--labf-text-dim)}.fm-lab-feature-preview-empty{line-height:1.5}.fm-lab-feature-warning{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:8px;border:1px solid var(--warn-border, rgba(230, 180, 60, .35));background:var(--warn-bg, rgba(230, 180, 60, .08))}.fm-lab-feature-warning-row{display:flex;flex-wrap:wrap;gap:6px;font-size:12px;line-height:1.4}.fm-lab-feature-warning-label{font-weight:600;color:var(--labf-text);white-space:nowrap}.fm-lab-feature-warning-reason{color:var(--labf-text-dim)}.fm-qa-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:999px;font-size:10px;font-weight:700;line-height:1}.fm-qa-tab-badge-error{background:var(--danger);color:#fff}.fm-qa-tab-badge-warning{background:var(--warn, #d99a2b);color:#fff}.fm-qa-panel{gap:12px}.fm-qa-summary{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:8px;font-size:12.5px;font-weight:600;border:1px solid var(--line)}.fm-qa-summary-ok{color:var(--overlap);border-color:color-mix(in srgb,var(--overlap) 40%,var(--line));background:color-mix(in srgb,var(--overlap) 10%,transparent)}.fm-qa-summary-warning{color:var(--warn, #d99a2b);border-color:color-mix(in srgb,var(--warn, #d99a2b) 40%,var(--line));background:color-mix(in srgb,var(--warn, #d99a2b) 10%,transparent)}.fm-qa-summary-error{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,var(--line));background:color-mix(in srgb,var(--danger) 10%,transparent)}.fm-qa-summary svg{flex:none}.fm-qa-list{display:grid;gap:6px;max-height:320px;overflow-y:auto;padding-right:2px}.fm-qa-item{display:flex;gap:9px;padding:9px 10px;border-radius:8px;border:1px solid var(--line);background:var(--panel-2)}.fm-qa-item-icon{flex:none;margin-top:1px}.fm-qa-item-title{font-size:12px;font-weight:650;color:var(--text)}.fm-qa-item-message{font-size:11.5px;color:var(--text-dim);line-height:1.45;margin-top:2px}.fm-qa-item-error .fm-qa-item-icon{color:var(--danger)}.fm-qa-item-error{border-color:color-mix(in srgb,var(--danger) 30%,var(--line))}.fm-qa-item-warning .fm-qa-item-icon{color:var(--warn, #d99a2b)}.fm-qa-item-warning{border-color:color-mix(in srgb,var(--warn, #d99a2b) 26%,var(--line))}.fm-qa-item-info .fm-qa-item-icon{color:var(--text-dim)}.fm-qa-item-pass .fm-qa-item-icon{color:var(--overlap)}.fm-qa-item-pass{opacity:.75}.fm-nametable-preview{margin-top:-4px;padding-top:14px;border-top:1px solid var(--line)}.fm-nametable-preview-toggle{display:flex;align-items:center;gap:8px;width:100%;background:transparent;border:none;padding:0;color:var(--text-dim);font:inherit;font-size:10.5px;font-weight:650;letter-spacing:.055em;text-transform:uppercase;cursor:pointer}.fm-nametable-preview-toggle:hover{color:var(--text)}.fm-nametable-preview-toggle span:first-of-type{flex:1;text-align:left}.fm-nametable-preview-count{min-width:18px;height:18px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);font-size:10px;color:var(--text-dim)}.fm-nametable-preview-chevron{transition:transform .15s ease}.fm-nametable-preview-chevron.open{transform:rotate(180deg)}.fm-nametable-preview-body{margin-top:10px;display:grid;gap:10px}.fm-nametable-preview-list{display:grid;gap:1px;border:1px solid var(--line);border-radius:8px;overflow:hidden;max-height:260px;overflow-y:auto}.fm-nametable-preview-row{display:grid;grid-template-columns:148px 1fr;gap:10px;padding:7px 10px;background:var(--panel-2);font-size:11.5px}.fm-nametable-preview-label{color:var(--text-dim);font-weight:600}.fm-nametable-preview-label em{font-style:normal;opacity:.6}.fm-nametable-preview-value{color:var(--text);word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}@media (max-width: 420px){.fm-nametable-preview-row{grid-template-columns:1fr;gap:2px}}.fm-nametable-family{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--accent) 6%,var(--panel-2))}.fm-nametable-family-head{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--text-dim)}.fm-nametable-family-head strong{color:var(--text);font-weight:700}.fm-nametable-family-note{font-size:10.5px;color:var(--text-dim);opacity:.8}.fm-export-combine-family{display:flex;align-items:center;gap:8px;cursor:pointer;user-select:none;font-size:12.5px;color:var(--text)}.fm-export-combine-family input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.fm-export-combine-family input:checked+.fm-export-checkmark{border-color:var(--accent);background:transparent}.fm-export-combine-family input:checked+.fm-export-checkmark:after{content:"";width:4px;height:7.5px;margin-top:-1.5px;border-right:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);transform:rotate(45deg)}.fm-export-combine-family input:focus-visible+.fm-export-checkmark{box-shadow:0 0 0 2px var(--accent-soft)}.fm-lab-feature-auto-btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 12px;border-radius:7px;border:1px solid var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .12s ease}.fm-lab-feature-auto-btn:hover{background:color-mix(in srgb,var(--accent) 20%,transparent)}[data-browser=chromium] .fm-lab-backdrop,[data-browser=chromium] .fm-export-backdrop,[data-browser=chromium] .fm-auth-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;isolation:isolate;contain:paint}[data-browser=chromium] .fm-floating-toolbar,[data-browser=chromium] .fm-sketch-toolbar,[data-browser=chromium] .fm-glyph-stepper,[data-browser=chromium] .fm-glyph-sidenav-btn,[data-browser=chromium] .fm-filemenu,[data-browser=chromium] .fm-toast{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--panel)}[data-browser=chromium] .fm-family-auto-row{content-visibility:auto;contain-intrinsic-size:132px}.fm-timelapse-badge{position:absolute;top:14px;right:14px;z-index:40;display:flex;align-items:center;gap:4px;box-shadow:0 6px 18px var(--shadow)}.fm-timelapse-badge-pause{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:999px;cursor:pointer;flex-shrink:0}.fm-timelapse-badge-pause:hover{background:var(--panel-2)}.fm-timelapse-badge-label{display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--panel);color:var(--text);padding:6px 10px;border-radius:999px;font-size:11.5px;font-weight:700;letter-spacing:.02em;cursor:pointer}.fm-timelapse-badge-dot{color:var(--danger);animation:fm-timelapse-pulse 1.4s ease-in-out infinite}.fm-timelapse-badge.is-paused .fm-timelapse-badge-dot{color:var(--text-faint);animation:none}.fm-timelapse-badge-count{color:var(--text-dim);font-weight:600;font-variant-numeric:tabular-nums}@keyframes fm-timelapse-pulse{0%,to{opacity:1}50%{opacity:.35}}.fm-timelapse-modal{width:min(720px,100%);height:min(720px,100%)}.fm-timelapse-body{display:flex;flex-direction:column;gap:14px;height:100%}.fm-timelapse-record-row{display:flex;align-items:center;gap:8px}.fm-timelapse-record-btn{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);padding:8px 14px;border-radius:10px;font-size:12.5px;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.fm-timelapse-record-btn:hover:not(:disabled){border-color:var(--text-faint)}.fm-timelapse-record-btn:disabled{opacity:.4;cursor:not-allowed}.fm-timelapse-record-btn.is-recording{background:var(--danger);border-color:var(--danger);color:#fff}.fm-timelapse-record-btn.is-recording svg{animation:fm-timelapse-pulse 1.4s ease-in-out infinite}.fm-timelapse-icon-btn{display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:transparent;color:var(--text-dim);padding:8px 10px;border-radius:10px;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.fm-timelapse-icon-btn:hover:not(:disabled){background:var(--panel-2);color:var(--text)}.fm-timelapse-icon-btn:disabled{opacity:.35;cursor:not-allowed}.fm-timelapse-stats{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--text-dim);font-variant-numeric:tabular-nums}.fm-timelapse-limit{color:var(--danger);font-weight:700}.fm-timelapse-stage{flex:1;min-height:220px;border:1px solid var(--line);border-radius:12px;background:radial-gradient(120% 120% at 50% 0%,color-mix(in srgb,var(--panel-2) 55%,var(--canvas)) 0%,var(--canvas) 65%);display:flex;align-items:center;justify-content:center;padding:28px;overflow:hidden}.fm-timelapse-video-stage{padding:0;overflow:hidden;background:#000}.fm-timelapse-video{width:100%;height:100%;max-height:420px;display:block;background:#000;border-radius:12px}.fm-timelapse-empty{max-width:360px;text-align:center;font-size:12.5px;line-height:1.6;color:var(--text-dim)}.fm-timelapse-empty strong{color:var(--text)}.fm-timelapse-frame-meta{display:flex;align-items:center;gap:10px;font-size:11.5px;color:var(--text-dim)}.fm-timelapse-action-pill{display:inline-flex;align-items:center;border:1px solid var(--accent-2);color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);padding:3px 9px;border-radius:999px;font-weight:700;font-size:10.5px;letter-spacing:.02em;text-transform:uppercase}.fm-timelapse-scrub-row{display:flex;align-items:center;gap:10px}.fm-timelapse-play-btn{color:var(--text)}.fm-timelapse-scrubber{flex:1}.fm-timelapse-scrubber:disabled{opacity:.35}.fm-timelapse-speed-row,.fm-timelapse-export-row{display:flex;align-items:center;gap:10px}.fm-timelapse-label{font-size:11.5px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;min-width:52px}.fm-timelapse-speed-btn{border:none;background:transparent;color:var(--text-dim);padding:7px 12px;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease}.fm-timelapse-speed-btn:hover{background:var(--panel-2);color:var(--text)}.fm-timelapse-speed-btn.is-active{background:var(--accent);color:var(--accent-ink)}.fm-timelapse-export-btn{margin-left:auto}.fm-timelapse-export-note{font-size:11.5px;color:var(--text-dim);text-align:right}@media (max-width: 640px){.fm-timelapse-modal{height:calc(100vh - 20px);height:calc(100dvh - 20px)}.fm-timelapse-speed-row,.fm-timelapse-export-row{flex-wrap:wrap}}.fm-glyphview-bar{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:21;display:flex;align-items:center;gap:8px;max-width:calc(100% - 210px);padding:6px 10px;background:color-mix(in srgb,var(--panel) 90%,transparent);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:13px;box-shadow:0 10px 28px -16px #000000b3;font-size:11.5px;color:var(--text-dim);overflow-x:auto;scrollbar-width:none}.fm-glyphview-bar::-webkit-scrollbar{display:none}.fm-root[data-browser=chromium] .fm-glyphview-bar{backdrop-filter:none;background:var(--panel)}.fm-glyphview-switch{display:flex;gap:2px;padding:2px;background:var(--panel-2);border-radius:9px}.fm-glyphview-mode{position:absolute;top:14px;right:14px;z-index:22;display:flex;gap:2px;padding:3px;background:color-mix(in srgb,var(--panel) 90%,transparent);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:11px;box-shadow:0 10px 28px -16px #000000b3}.fm-root[data-browser=chromium] .fm-glyphview-mode{backdrop-filter:none;background:var(--panel)}.fm-glyphview-mode button{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border:none;border-radius:8px;background:transparent;color:var(--text-dim);font-size:11.5px;font-weight:600;cursor:pointer;white-space:nowrap}.fm-glyphview-mode button:hover{color:var(--text)}.fm-glyphview-mode button.on{background:var(--accent);color:var(--accent-ink)}.fm-glyphview-mode button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fm-glyphview-switch button{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border:none;border-radius:7px;background:transparent;color:var(--text-dim);font-size:11.5px;font-weight:600;cursor:pointer;white-space:nowrap}.fm-glyphview-switch button:hover{color:var(--text)}.fm-glyphview-switch button.on{background:var(--accent);color:var(--accent-ink)}.fm-glyphview-switch button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fm-glyphview-divider{width:1px;align-self:stretch;margin:2px;background:var(--line);flex:none}.fm-glyphview-field{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.fm-glyphview-field>span{color:var(--text-faint);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em}.fm-glyphview-field select{padding:4px 6px;border-radius:7px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-size:11.5px;font-family:inherit;cursor:pointer}.fm-glyphview-field select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fm-glyphview-slider input[type=range]{width:88px}.fm-glyphview-search{width:110px;padding:5px 8px;border-radius:7px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-size:11.5px;font-family:inherit}.fm-glyphview-search:focus{border-color:var(--accent);outline:none}.fm-glyphview-count{color:var(--text-faint);font-family:var(--mono);font-size:10.5px;white-space:nowrap}.fm-glyphview-selected{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:7px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));background:var(--accent-soft);color:var(--accent);font-size:10.5px;font-weight:600;cursor:pointer;white-space:nowrap}.fm-ov-frame{position:relative}.fm-ov-frame svg{display:block;width:100%;height:100%;touch-action:none}.fm-ov-default{cursor:default}.fm-ov-grab{cursor:grab}.fm-ov-grabbing{cursor:grabbing}.fm-ov-tile-box{fill:color-mix(in srgb,var(--panel) 42%,transparent);stroke:var(--line);stroke-width:1}.fm-ov-tile.drawn .fm-ov-tile-box{fill:color-mix(in srgb,var(--panel) 70%,transparent)}.fm-ov-tile:hover .fm-ov-tile-box{stroke:color-mix(in srgb,var(--accent) 55%,var(--line))}.fm-ov-tile.selected .fm-ov-tile-box{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.6}.fm-ov-tile.active .fm-ov-tile-box{stroke:var(--accent);stroke-width:2;stroke-dasharray:5 3}.fm-ov-tile-baseline{stroke:var(--line);stroke-width:1;opacity:.85}.fm-ov-ink-fill{fill:var(--ink);stroke:none}.fm-ov-ink{stroke:var(--ink);fill:none}.fm-ov-placeholder{fill:var(--text-faint);opacity:.45;font-family:Inter,system-ui,sans-serif;font-weight:600}.fm-ov-tile-label{fill:var(--text-faint);font-family:var(--mono);pointer-events:none}.fm-ov-tile.selected .fm-ov-tile-label,.fm-ov-tile.active .fm-ov-tile-label{fill:var(--accent)}.fm-ov-done-dot{fill:var(--accent);opacity:.9}.fm-ov-marquee{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1;opacity:.55;pointer-events:none}.fm-ov-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--text-faint);font-size:12.5px;pointer-events:none}.fm-ov-scrollbar{position:absolute;top:6px;right:5px;bottom:6px;width:4px;border-radius:3px;background:color-mix(in srgb,var(--text) 6%,transparent);pointer-events:none}.fm-ov-scrollbar-thumb{position:absolute;left:0;width:100%;border-radius:3px;background:color-mix(in srgb,var(--text) 26%,transparent)}@media (max-width: 900px){.fm-glyphview-bar{gap:6px;padding:5px 8px;font-size:11px}.fm-glyphview-bar{top:58px;max-width:calc(100% - 28px)}.fm-glyphview-mode button{padding:5px 9px;font-size:11px}.fm-glyphview-slider input[type=range]{width:62px}.fm-glyphview-search{width:86px}}.fm-mx-frame{position:relative;overflow:hidden}.fm-mx-frame svg{display:block;width:100%;height:100%;touch-action:none}.fm-mx-frame .cursor-hand:active{cursor:grabbing}.fm-topbar-edit{display:flex;align-items:center;gap:2px}.fm-topbar-edit .fm-align-btn:active:not(:disabled){background:var(--panel-2);color:var(--text)}.fm-topbar-edit .fm-align-btn.danger:active:not(:disabled){color:var(--danger);background:color-mix(in srgb,var(--danger) 16%,transparent)}@media (pointer: coarse){.fm-topbar .fm-topbtn-group .fm-align-btn{width:36px;height:36px;border-radius:9px}.fm-topbar .fm-topbar-edit{gap:2px}}@media (max-width: 599px){.fm-topbar .fm-topbtn-group .fm-align-btn{width:34px;height:34px}}@media (max-width: 599px) and (pointer: coarse){.fm-topbar .fm-topbar-more-hide.fm-topbar-phone-show{display:none!important}}.fm-drawbar{gap:10px}.fm-drawbar-thumb{position:relative;width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:9px;background:var(--panel-2);border:1px solid var(--line);color:var(--text-dim);cursor:grab}.fm-drawbar-thumb:not(.empty):hover{border-color:var(--accent)}.fm-drawbar-thumb:not(.empty):active{cursor:grabbing}.fm-drawbar-thumb.empty{cursor:default;opacity:.7}.fm-drawbar-thumb svg{max-width:30px;max-height:30px}.fm-drawbar-grip{position:absolute;bottom:1px;right:1px;opacity:.55}.fm-drawbar-status{min-width:0;white-space:nowrap}.fm-drawbar-status b{color:var(--text)}.fm-drawbar-apply{padding:5px 11px;white-space:nowrap}.fm-drawbar-apply:disabled{opacity:.45;cursor:not-allowed}.fm-drawbar-check{display:inline-flex;align-items:center;gap:6px;cursor:pointer;white-space:nowrap}.fm-drawbar-done{color:var(--accent);font-weight:700;white-space:nowrap;animation:fm-trace-applied-flash 1.2s ease}.fm-drawbar .fm-icon-btn:disabled{opacity:.4;cursor:not-allowed}.fm-grid-controls{gap:4px}.fm-grid-shape-select{height:24px;padding:0 6px;border-radius:7px;background:var(--panel-2);color:var(--text);border:1px solid var(--line);font-size:11.5px;cursor:pointer}.fm-grid-size-input{width:46px;height:24px;padding:0 4px;text-align:center;background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:7px;font-family:var(--mono);font-size:11.5px;-moz-appearance:textfield}.fm-grid-size-input::-webkit-outer-spin-button,.fm-grid-size-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fm-drawbar>*{flex:none}.fm-drawbar .fm-drawbar-check span{text-transform:none;letter-spacing:0}.fm-drawbar{left:14px;transform:none;max-width:calc(100% - 300px)}.fm-drawbar .fm-drawbar-apply{width:auto;flex:none}.fm-drawbar{position:absolute;inset:auto 16px 16px auto;transform:none;z-index:21;display:flex;flex-direction:column;gap:8px;width:268px;max-width:calc(100% - 32px);padding:10px;overflow:visible;background:var(--panel);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:14px;box-shadow:0 12px 30px -14px #000000bf;font-family:var(--sans);font-size:12px;color:var(--text-dim)}.fm-drawbar *,.fm-drawbar button,.fm-drawbar input{font-family:var(--sans)}.fm-drawbar-row{display:flex;align-items:center;gap:10px}.fm-drawbar-info{display:flex;flex-direction:column;min-width:0;flex:1;gap:1px}.fm-drawbar-title{font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fm-drawbar-sub{font-size:11px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fm-drawbar-sub b{color:var(--accent);font-weight:700}.fm-drawbar-done{font-size:12px;font-weight:700;color:var(--accent);white-space:nowrap}.fm-drawbar-apply{display:inline-flex;align-items:center;gap:6px;flex:none;height:30px;padding:0 14px;border:none;border-radius:9px;cursor:pointer;background:var(--accent);color:var(--accent-ink);font-size:12px;font-weight:700}.fm-drawbar-apply:disabled{opacity:.4;cursor:not-allowed}.fm-drawbar-check{display:inline-flex;align-items:center;gap:6px;flex:1;min-width:0;font-size:11.5px;cursor:pointer;white-space:nowrap}.fm-drawbar-check input{accent-color:var(--accent);margin:0}.fm-drawbar-clear{display:inline-grid;place-items:center;flex:none;width:30px;height:30px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2);color:var(--text-dim);cursor:pointer}.fm-drawbar-clear:hover:not(:disabled){color:var(--text);border-color:var(--accent)}.fm-drawbar-clear:disabled{opacity:.4;cursor:not-allowed}.fm-drawbar-thumb{width:44px;height:44px}.fm-design-shell{background:var(--bg)}.fm-design-bar{flex:none;height:44px;display:flex;align-items:center;gap:12px;padding:0 12px;border-bottom:1px solid var(--line);background:var(--panel)}.fm-design-hint{font-size:11.5px;color:var(--text-dim)}.fm-design-frame{flex:1 1 auto;width:100%;min-height:0;border:0;display:block;background:var(--bg)}.fm-design-stage{position:relative;flex:1 1 auto;min-height:0;background:var(--bg)}.fm-design-stage .fm-design-frame{position:absolute;inset:0;height:100%}.fm-design-loading{position:absolute;inset:0;display:grid;place-items:center;background:var(--bg);color:var(--text-dim);font-size:12.5px;pointer-events:none}@media (min-width: 600px) and (max-width: 1180px) and (pointer: coarse) and (max-aspect-ratio: 5/3){.fm-topbar{gap:2px;padding:4px 6px}.fm-topbar .fm-topbtn,.fm-topbar-more-btn>.fm-topbtn{padding:4px;min-width:30px;min-height:30px}.fm-topbar .fm-topbtn svg{width:15px;height:15px}.fm-topbar .fm-topbtn-group .fm-align-btn{width:30px;height:30px;border-radius:8px}.fm-topbar .fm-topbtn-group .fm-align-btn svg{width:14px;height:14px}.fm-theme-toggle{width:30px;height:30px}.fm-topbar .fm-fontname{padding:4px 8px;font-size:12px}.fm-bottombar{gap:2px;padding:3px 6px}.fm-bottombar button{padding:4px;min-width:28px;min-height:28px}.fm-bottombar button svg{width:14px;height:14px}.fm-bottombar .fm-icon-btn{min-width:24px;min-height:24px;padding:4px!important}.fm-grid-shape-select{height:22px;font-size:10.5px}.fm-grid-size-input{height:22px;width:40px;font-size:10.5px}.fm-glyphnav{width:176px}.fm-glyphnav-head{padding:9px 9px 7px}.fm-glyphnav-eyebrow-row{margin-bottom:6px}.fm-panel-eyebrow{font-size:9px;margin-bottom:6px}.fm-glyph-count-badge{font-size:9.5px;padding:1px 6px}.fm-glyph-select-toggle{font-size:9.5px;padding:2px 7px}.fm-family-tabs{gap:4px;margin-bottom:6px}.fm-family-tabs button{height:25px;font-size:10px;padding:0 4px;border-radius:7px}.fm-search input{font-size:11px}.fm-glyphlist{padding:0 8px 10px}.fm-group-label{font-size:9px;margin:10px 2px 5px}.fm-grid{gap:4px}.fm-tile{border-radius:8px}.fm-thumb-char{font-size:15px}.fm-thumb-char.fm-thumb-char-multi{font-size:9px}.fm-tile-dot{top:4px;right:4px;width:5px;height:5px}.fm-glyphnav-foot{padding:7px 8px 8px}.fm-glyphnav-foot .fm-action-btn{padding:7px;font-size:11px;margin-top:6px}.fm-glyph-select-hint{padding:6px 9px;font-size:10px}.fm-rightpanel{width:214px}.fm-panel-header{padding:10px 12px;gap:10px}.fm-panel-glyph{width:42px;height:42px;border-radius:10px}.fm-panel-glyph .fm-thumb-char{font-size:24px}.fm-panel-char{font-size:17px}.fm-panel-code{font-size:10px;margin-top:2px}.fm-panel-cat{font-size:9px;margin-top:3px}.fm-section-head{padding:9px 12px}.fm-section-title{font-size:9.5px}.fm-section-body{padding:0 12px 11px}.fm-field{margin-bottom:8px}.fm-field label{font-size:10.5px;margin-bottom:3px}.fm-field input[type=number]{padding:5px 8px;font-size:11.5px;border-radius:7px}.fm-field select{font-size:11.5px}.fm-slider-row-label{font-size:10.5px;margin-bottom:3px}.fm-slider-row-label span{font-size:10px}.fm-field input.fm-slider-number{width:56px;padding:3px 6px;font-size:10.5px}.fm-slider-row-label .fm-numeric-control{width:58px}.fm-checkbox-row{font-size:11px;gap:7px}.fm-hint{font-size:10px;line-height:1.5}.fm-action-btn{padding:7px;font-size:11px;border-radius:8px;margin-top:7px;gap:6px}.fm-brush-grid{gap:5px}.fm-brush-card{padding:6px 7px;gap:6px;border-radius:9px}.fm-brush-icon{width:22px;height:22px;border-radius:7px}.fm-brush-icon svg{width:13px;height:13px}.fm-brush-name{font-size:10.5px}.fm-width-profile-grid{gap:4px}.fm-width-profile-btn{padding:4px 6px;border-radius:7px}.fm-status-pill{font-size:10px}.fm-root:not([data-sketch-mode=true]) .fm-glyphnav{width:min(62vw,210px)}.fm-root:not([data-sketch-mode=true]) .fm-rightpanel{width:min(66vw,236px)}.fm-mobile-nav-toggle,.fm-mobile-panel-toggle{width:32px;height:32px;border-radius:9px}.fm-mobile-nav-toggle svg,.fm-mobile-panel-toggle svg{width:15px;height:15px}.fm-floating-toolbar{bottom:8px;padding:4px;border-radius:13px}.fm-tool{width:35px;height:35px;border-radius:9px}.fm-tool svg{width:18px;height:18px}.fm-home-tool-icon{width:18px;height:18px}.fm-tool-group{gap:3px}.fm-toolbar-divider{height:19px;margin:0 5px}.fm-tool-tip{bottom:41px;font-size:10.5px;padding:4px 8px}.fm-shape-popover{padding:4px;gap:3px;border-radius:11px;bottom:calc(100% + 8px)}.fm-shape-popover-btn{width:32px;height:32px;border-radius:8px}.fm-shape-popover-btn svg{width:17px;height:17px}.fm-tool-lock-badge{width:12px;height:12px}.fm-glyphview-mode{top:8px;right:8px;padding:2px;border-radius:10px}.fm-glyphview-mode button{padding:4px 8px;font-size:10.5px;gap:4px;border-radius:7px}.fm-glyphview-mode button svg{width:12px;height:12px}.fm-glyphview-bar{padding:4px 8px;gap:6px;font-size:10.5px;border-radius:11px}.fm-canvas-area{padding:clamp(6px,1.4vw,14px)}.fm-drawbar{right:10px;bottom:64px;width:232px;padding:8px;gap:6px;border-radius:12px}.fm-drawbar-row{gap:8px}.fm-drawbar-thumb{width:34px;height:34px;border-radius:8px}.fm-drawbar-title{font-size:11.5px}.fm-drawbar-sub{font-size:10px}.fm-drawbar-apply{height:26px;padding:0 10px;font-size:11px;border-radius:8px}.fm-drawbar-check{font-size:10.5px}.fm-drawbar-clear{width:26px;height:26px;border-radius:8px}}@media (min-width: 600px) and (max-width: 1180px) and (pointer: coarse) and (max-aspect-ratio: 5/3){.fm-topbar{position:relative;z-index:45}}.fm-ctx-menu{position:fixed;z-index:300;min-width:184px;padding:5px;display:flex;flex-direction:column;gap:1px;background:var(--panel);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:12px;box-shadow:0 16px 38px -12px #000000bf;font-family:var(--sans);font-size:12.5px;user-select:none;-webkit-user-select:none;touch-action:none}.fm-ctx-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:none;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.fm-ctx-item:hover:not(:disabled),.fm-ctx-item:focus-visible:not(:disabled){background:var(--panel-2);outline:none}.fm-ctx-item:disabled{opacity:.38;cursor:default}.fm-ctx-item.danger{color:#ff6b6b}.fm-ctx-icon{display:inline-flex;width:18px;justify-content:center;color:var(--text-dim)}.fm-ctx-item.danger .fm-ctx-icon{color:inherit}.fm-ctx-sep{height:1px;margin:3px 4px;background:var(--line)}@media (pointer: coarse){.fm-ctx-item{padding:12px;font-size:13.5px}}.fm-nodepop{position:fixed;z-index:300;padding:7px;background:var(--panel);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:12px;box-shadow:0 14px 34px -12px #000000bf;font-family:var(--sans);user-select:none;-webkit-user-select:none;touch-action:none}.fm-nodepop-title{padding:0 4px 6px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.fm-nodepop-row{display:flex;gap:5px}.fm-nodepop-btn{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:68px;padding:8px 8px 6px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2);color:var(--text-dim);font-size:11px;font-weight:600;cursor:pointer}.fm-nodepop-btn:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}.fm-nodepop-btn.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}@media (pointer: coarse){.fm-nodepop-btn{min-width:76px;padding:11px 8px 9px}}.fm-canvas-area[data-editor-mode=multi] .fm-sketch-toggle,.fm-canvas-area[data-editor-mode=draw] .fm-sketch-toggle{padding:8px;border-radius:50%}.fm-canvas-area[data-editor-mode=multi] .fm-sketch-toggle-label,.fm-canvas-area[data-editor-mode=draw] .fm-sketch-toggle-label{display:none}html[data-tablet=true] .fm-root:not(.fm-design-shell){--tb: 31px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-glyphnav{width:176px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-rightpanel{width:232px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-glyphnav-head{padding:10px 10px 8px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-canvas-area{padding:8px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar{gap:2px;padding:4px 6px;overflow-x:hidden;flex-wrap:nowrap}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar .fm-topbtn,html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar-more-btn>.fm-topbtn{font-size:0;gap:0;padding:0;min-width:var(--tb);width:var(--tb);min-height:var(--tb);height:var(--tb);justify-content:center}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar .fm-topbtn svg{width:16px;height:16px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbtn-group{gap:1px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-align-group{gap:0}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-align-btn{width:26px;height:28px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar .fm-divider,html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar .fm-align-divider{display:none}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-theme-toggle{width:var(--tb);height:var(--tb)}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar .fm-fontname{min-width:40px;max-width:90px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-mode-tab{height:28px;padding:0 10px;gap:6px;font-size:12px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-auth-avatar-btn{padding:2px;gap:0}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-auth-plan-badge{display:none}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-bottombar{gap:2px;padding:3px 6px;overflow-x:hidden}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-bottombar button{font-size:0;gap:0;padding:0;min-width:30px;min-height:30px;justify-content:center}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-bottombar button svg{width:15px;height:15px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-bottombar .fm-icon-btn{min-width:26px;min-height:26px;padding:0!important}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-bottombar .fm-bottom-divider{display:none}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-zoom-controls input[type=range]{width:56px}@media (min-width: 901px){html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar-more-hide,html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-bottombar-more-hide{display:inline-flex!important;align-items:center}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar-more-btn,html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-bottombar-more-btn{display:none!important}}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-glyph-sidenav-btn{width:36px;height:36px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-glyph-sidenav-btn svg{width:20px;height:20px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-glyph-sidenav-btn-left{left:24px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-glyph-sidenav-btn-right{right:24px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-bottombar{overflow-x:auto}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-bottombar button{min-width:28px;min-height:28px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-bottombar .fm-icon-btn{min-width:24px;min-height:24px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-zoom-controls input[type=range]{display:none}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-upm{display:none!important}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-grid-size-input{width:44px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-grid-shape-select{width:58px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-glyphnav{width:188px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-hint-inline{gap:2px}html[data-tablet=true] .fm-root:not(.fm-design-shell){--tb: 29px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-mode-tab{padding:0 8px;gap:5px;font-size:11.5px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-align-btn{width:24px;height:26px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar{gap:1px;padding:4px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-align-btn{width:22px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar .fm-fontname{min-width:30px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-mode-tab{padding:0 7px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-logo-image{max-width:130px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-align-btn{width:20px}.fm-saveas-dialog{width:min(380px,calc(100vw - 32px));padding:22px 22px 18px;gap:14px}.fm-saveas-dialog h2{margin:0;font-size:16px;font-weight:700}.fm-saveas-actions{display:flex;justify-content:flex-end;gap:8px}.fm-saveas-actions button{width:auto;min-width:84px}button,[role=button],[role=tab],a,summary,label,select,input[type=checkbox],input[type=radio],input[type=range]{touch-action:manipulation}html{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html,body{overscroll-behavior:none}.fs-overlay-loading{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;background:#00000059;pointer-events:auto}.fs-overlay-loading i{width:30px;height:30px;border-radius:50%;border:3px solid rgba(255,255,255,.2);border-top-color:#7ee2b0;animation:fs-ovl-spin .8s linear infinite}@keyframes fs-ovl-spin{to{transform:rotate(360deg)}}html[data-tablet=true] *,html[data-tablet=true] *:before,html[data-tablet=true] *:after{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}html[data-tablet=true] .fm-floating-toolbar,html[data-tablet=true] .fm-sketch-toolbar,html[data-tablet=true] .fm-glyph-stepper,html[data-tablet=true] .fm-glyph-sidenav-btn,html[data-tablet=true] .fm-glyphview-bar,html[data-tablet=true] .fm-glyphview-mode,html[data-tablet=true] .fm-filemenu,html[data-tablet=true] .fm-toast{background-color:var(--panel)}html[data-tablet=true] .fm-root:not(.fm-design-shell){position:fixed;inset:0;width:auto;height:auto}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar{padding-top:calc(4px + env(safe-area-inset-top,0px));padding-left:max(6px,env(safe-area-inset-left,0px));padding-right:max(6px,env(safe-area-inset-right,0px));overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar::-webkit-scrollbar{display:none}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-bottombar{padding-bottom:calc(3px + env(safe-area-inset-bottom,0px));padding-left:max(6px,env(safe-area-inset-left,0px));padding-right:max(6px,env(safe-area-inset-right,0px))}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar .fm-theme-toggle{flex:0 0 auto;width:34px;height:34px;min-width:34px;min-height:34px}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar .fm-theme-toggle svg{flex:0 0 auto;width:19px;height:19px}html[data-tablet=true] .fm-root[data-sketch-mode=true]:not(.fm-design-shell) .fm-glyphnav{width:0;min-width:0;padding-left:0;border-right-width:0;overflow:hidden;pointer-events:none;visibility:hidden}.fm-sketch-toolbar .fm-toolbar-divider.fm-toolbar-divider-h{width:21px;height:1px;margin:3px 0;flex:0 0 auto}html[data-tablet=true]{--fs-safe-top: env(safe-area-inset-top, 0px)}@media (display-mode: standalone){html[data-tablet=true]{--fs-safe-top: max(env(safe-area-inset-top, 0px), 22px)}}html[data-tablet=true],html[data-tablet=true] body{width:100%;height:var(--fs-app-h, 100%);min-height:var(--fs-app-h, 100%);overflow:hidden}html[data-tablet=true] #root{height:100%}html[data-tablet=true] .fm-root:not(.fm-design-shell),html[data-tablet=true] .mfs-root{position:fixed;top:var(--fs-app-top, 0px);left:0;right:0;bottom:0;width:var(--fs-app-w, auto);height:var(--fs-app-h, auto)}html[data-tablet=true] .mfs-root{padding-top:var(--fs-safe-top);background:linear-gradient(var(--bg-panel),var(--bg-panel)) top left / 100% var(--fs-safe-top) no-repeat,var(--bg)}html[data-tablet=true] .mfs-transport{height:54px;gap:14px}html[data-tablet=true] .mfs-transport .mfs-icon-btn{width:38px;height:38px}html[data-tablet=true] .mfs-transport .mfs-icon-btn svg{width:19px;height:19px}html[data-tablet=true] .mfs-transport .mfs-play-btn{width:42px;height:42px}html[data-tablet=true] .mfs-transport .mfs-play-btn svg{width:18px;height:18px}html[data-tablet=true] .mfs-add-btn{width:32px;height:32px;border-radius:8px}html[data-tablet=true] .mfs-add-btn svg{width:18px;height:18px}html[data-tablet=true] .mfs-add-track-btn{width:30px;height:30px}html[data-tablet=true] .mfs-add-track-btn svg{width:16px;height:16px}html[data-tablet=true] .mfs-btn.mfs-btn-sm{min-height:32px;padding-left:12px;padding-right:12px}html[data-tablet=true] .mfs-btn.mfs-btn-sm svg{width:15px;height:15px}html[data-tablet=true] .mfs-clip-handle{width:22px}html[data-tablet=true] .mfs-clip-del{width:28px;height:28px}html[data-tablet=true] .mfs-clip-del svg{width:16px;height:16px}html[data-tablet=true] .fm-kern-history-btns{gap:6px}html[data-tablet=true] .fm-kern-history-btns button{width:38px;height:38px;min-width:38px;min-height:38px}html[data-tablet=true] .fm-kern-history-btns button svg{width:20px;height:20px}html[data-tablet=true] .fm-glyph-stepper-btn{width:36px;height:36px}html[data-tablet=true] .fm-glyph-stepper-btn svg{width:22px;height:22px}html[data-tablet=true] .fm-glyph-sidenav-btn svg{width:24px;height:24px}html[data-tablet=true] .fm-glyphview-mode button{min-height:34px;padding:6px 12px}html[data-tablet=true] .fm-glyphview-mode button svg{width:16px;height:16px}html[data-tablet=true] .fm-numeric-stepper{grid-template-rows:16px 16px;right:3px}html[data-tablet=true] .fm-numeric-stepper button{width:28px;height:16px}html[data-tablet=true] .fm-numeric-stepper button svg{width:12px;height:12px}html[data-tablet=true] .fm-lock-btn{width:30px;height:30px}html[data-tablet=true] .fm-lock-btn svg{width:16px;height:16px}html[data-tablet=true] .fm-infotip-badge{width:26px;height:26px;min-width:26px;font-size:14px}html[data-tablet=true] .fm-family-tabs button{height:34px}html[data-tablet=true] .fm-export-rename-toggle{height:32px;padding:0 12px;font-size:11.5px}html[data-tablet=true] .fm-feature-alt-chip .fm-feature-remove{width:24px;height:24px;top:-9px;right:-9px}html[data-tablet=true] .fm-flag-toggle-box{flex:0 0 18px;width:18px;height:18px;border-radius:4px}html[data-tablet=true] .fm-flag-toggle.active .fm-flag-toggle-box:after{width:5px;height:9px}html[data-tablet=true] .fm-preview-resize-handle{height:26px}input,textarea,select,[contenteditable=true]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}@media (pointer: coarse){input:not([type=range]):not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]):not([type=button]):not([type=submit]):focus,textarea:focus,select:focus{font-size:16px!important}}@media (max-width: 1180px){.fm-canvas-area[data-editor-mode=draw] .fm-drawbar{bottom:66px}}@media (pointer: coarse){.fm-family-tab-remove{width:22px;height:22px;opacity:.8}.fm-family-tab-remove svg{width:14px;height:14px}.fm-family-add-confirm,.fm-family-add-cancel{width:34px;height:34px}.fm-family-add-confirm svg,.fm-family-add-cancel svg{width:16px;height:16px}.fm-preview-close{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center}.fm-preview-close svg{width:16px;height:16px}.fm-preview-text-clear{font-size:20px;padding:4px 9px;right:3px}.fm-toast-close{width:32px;height:32px}.fm-toast-close svg{width:16px;height:16px}.fm-glyphview-selected{padding:6px 10px;gap:6px}.fm-glyphview-selected svg{width:14px;height:14px}.fm-iconbtn svg{min-width:16px;min-height:16px}.fm-feature-remove svg{width:15px;height:15px}}@media (hover: none) and (pointer: coarse){.mfs-root .mfs-clip-item .del,.mfs-root .mfs-list-item .del{opacity:.75!important;width:15px;height:15px;padding:4px;margin:-4px 0;box-sizing:content-box;flex-shrink:0}.mfs-root .mfs-layer-grip{width:15px;height:15px;padding:4px 3px;margin:-4px 0;box-sizing:content-box}.mfs-root .mfs-track-label .mfs-track-del{opacity:.85!important;width:28px;height:28px}.mfs-root .mfs-track-label .mfs-track-del svg{width:16px;height:16px}.mfs-root .mfs-transition-slot .mfs-transition-del{opacity:1;padding:6px;margin:-6px -4px -6px 0}.mfs-root .mfs-transition-slot .mfs-transition-del svg{width:16px;height:16px}.mfs-root .mfs-add-btn svg{width:16px;height:16px}.mfs-root .mfs-subhead svg,.mfs-root .mfs-chip svg{width:14px;height:14px}.mfs-root .mfs-popover-item svg{width:16px;height:16px}.mfs-root .mfs-fullscreen-close{width:40px;height:40px}}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html[data-tablet=true] body,html[data-tablet=true] .fm-root:not(.fm-design-shell){overscroll-behavior:none}html[data-tablet=true] .fm-glyphnav,html[data-tablet=true] .fm-rightpanel,html[data-tablet=true] .fm-glyphnav *,html[data-tablet=true] .fm-rightpanel *{overscroll-behavior:contain}html[data-tablet=true] .fm-glyphnav,html[data-tablet=true] .fm-rightpanel{touch-action:pan-y;overflow-x:hidden;-webkit-overflow-scrolling:auto}html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-topbar,html[data-tablet=true] .fm-root:not(.fm-design-shell) .fm-bottombar{touch-action:pan-x;overscroll-behavior:contain}html[data-tablet=true] body .mfs-root{font-size:12.5px;overscroll-behavior:none}html[data-tablet=true] body .mfs-root .mfs-top{overflow:visible;flex-wrap:nowrap;gap:6px}html[data-tablet=true] body .mfs-root .mfs-top-left,html[data-tablet=true] body .mfs-root .mfs-top-right{flex-wrap:nowrap;flex-shrink:0}html[data-tablet=true] body .mfs-root .mfs-top-left>*,html[data-tablet=true] body .mfs-root .mfs-top-right>*{flex-shrink:0}html[data-tablet=true] body .mfs-root .mfs-left,html[data-tablet=true] body .mfs-root .mfs-right,html[data-tablet=true] body .mfs-root .mfs-layers{overscroll-behavior:contain;touch-action:pan-y}@media (min-width: 861px){html[data-tablet=true] body .mfs-root{grid-template-columns:188px minmax(0,1fr) 168px 228px}html[data-tablet=true] body .mfs-root .mfs-right{padding:12px}}@media (min-width: 861px) and (orientation: landscape){html[data-tablet=true] body .mfs-root{grid-template-columns:160px 150px 208px minmax(0,1fr);grid-template-areas:"top top top top" "left layers right center" "timeline timeline timeline center"}}@media (max-width: 860px){html[data-tablet=true] body .mfs-root .mfs-top{height:48px;min-height:0;row-gap:0}html[data-tablet=true] body .mfs-root .mfs-brand-text{display:none}html[data-tablet=true] body .mfs-root .mfs-layers,html[data-tablet=true] body .mfs-root .mfs-left,html[data-tablet=true] body .mfs-root .mfs-right{height:46dvh;max-height:46dvh;left:50%;right:auto;width:min(560px,100%);margin-left:max(-280px,-50%)}}html[data-tablet=true] body .mfs-root .mfs-transport{padding:0 10px;column-gap:8px}html[data-tablet=true] body .mfs-root .mfs-transport-mid{gap:8px}html[data-tablet=true] body .mfs-root .mfs-transport .mfs-tlzoom .mfs-icon-btn,html[data-tablet=true] body .mfs-root .mfs-transport .mfs-transport-mid .mfs-icon-btn:not(:first-child):not(.active){width:30px;min-width:30px;height:30px}html[data-tablet=true] body .mfs-root .mfs-transport .mfs-tlzoom input[type=range]{width:80px;flex-basis:80px}html[data-tablet=true] body .mfs-root .mfs-transport .mfs-zoom-badge{position:static;transform:none;min-width:34px;text-align:center}.fm-lab-kb-btn{position:absolute;top:10px;right:10px;z-index:6;width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));background:var(--panel);color:var(--accent);box-shadow:0 6px 16px -8px #0009;cursor:pointer;touch-action:manipulation}.fm-lab-kb-btn:active{transform:scale(.94)}.fm-lab-kb-btn.fm-lab-kb-btn-inline{position:static;flex:0 0 auto;box-shadow:none}html[data-tablet=true] body .mfs-root .mfs-top .mfs-icon-btn{width:34px;height:34px;min-width:34px}html[data-tablet=true] body .mfs-root .mfs-top .mfs-icon-btn svg{width:18px;height:18px}html[data-tablet=true] body .mfs-root .mfs-top .mfs-align-group .mfs-icon-btn{width:32px;min-width:32px}html[data-tablet=true] body .mfs-root .mfs-top button svg{min-width:16px;min-height:16px}html[data-tablet=true] body .mfs-root .mfs-top .fm-mode-tab{height:32px;padding:0 10px;font-size:12px}html[data-tablet=true] body .mfs-root .mfs-top .fm-mode-tab svg{width:16px;height:16px}html[data-tablet=true] body .mfs-root .mfs-preview-btn,html[data-tablet=true] body .mfs-root .mfs-export-btn{height:34px;padding:0 12px;font-size:12px}@media (min-width: 861px) and (max-width: 1279px){html[data-tablet=true] body .mfs-root .mfs-top{padding:0 8px;gap:4px}html[data-tablet=true] body .mfs-root .mfs-top-left{gap:6px}html[data-tablet=true] body .mfs-root .mfs-top-right{gap:2px}html[data-tablet=true] body .mfs-root .mfs-logo-image{max-width:104px;height:auto}html[data-tablet=true] body .mfs-root .mfs-top .mfs-align-group .mfs-icon-btn{width:28px;min-width:28px}html[data-tablet=true] body .mfs-root .mfs-top .mfs-align-group .mfs-icon-btn svg{width:17px;height:17px}html[data-tablet=true] body .mfs-root .mfs-top .mfs-icon-btn{width:32px;height:32px;min-width:32px}html[data-tablet=true] body .mfs-root .mfs-top-right .mfs-preview-btn{font-size:0;gap:0;width:38px;padding:0;justify-content:center}html[data-tablet=true] body .mfs-root .mfs-top-right .mfs-preview-btn svg{width:18px;height:18px}html[data-tablet=true] body .mfs-root .mfs-export-btn{padding:0 10px}html[data-tablet=true] body .mfs-root .mfs-top .fm-mode-tab{padding:0 8px}}[data-testid=lab-close-btn]{width:36px;height:36px;min-width:36px;display:inline-flex;align-items:center;justify-content:center}[data-testid=lab-close-btn] svg{width:18px!important;height:18px!important}.fm-mode-tabs{--mt-trough: rgba(255, 255, 255, .045);--mt-chip-bg: rgba(255, 255, 255, .09);--mt-chip-border: rgba(255, 255, 255, .1);--mt-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 3px 10px -4px rgba(0, 0, 0, .6);display:inline-flex;align-items:center;gap:3px;padding:3px;border-radius:11px;background:var(--mt-trough);border:1px solid var(--mt-chip-border);flex:0 0 auto;-webkit-user-select:none;user-select:none}.fm-root[data-theme=light] .fm-mode-tabs,.mfs-root[data-theme=light] .fm-mode-tabs{--mt-trough: rgba(0, 0, 0, .05);--mt-chip-bg: #ffffff;--mt-chip-border: rgba(0, 0, 0, .08);--mt-shadow: 0 1px 2px rgba(20, 20, 40, .1), 0 3px 8px -4px rgba(20, 20, 40, .2)}.fm-mode-tab{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 13px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-dim);font-family:inherit;font-size:12.5px;font-weight:600;letter-spacing:-.01em;line-height:1;white-space:nowrap;cursor:pointer;transition:background .16s ease,color .16s ease,box-shadow .16s ease,border-color .16s ease}.fm-mode-tab svg{flex:0 0 auto;opacity:.8;transition:color .16s ease,opacity .16s ease}.fm-mode-tab:hover:not(.active){color:var(--text);background:color-mix(in srgb,var(--text) 7%,transparent)}.fm-mode-tab:hover:not(.active) svg{opacity:1}.fm-mode-tab.active{color:var(--text);background:var(--mt-chip-bg);border-color:var(--mt-chip-border);box-shadow:var(--mt-shadow)}.fm-mode-tab.active svg{color:var(--accent);opacity:1}.fm-mode-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fm-motion-loading{height:100vh;width:100%;display:flex;align-items:center;justify-content:center;background:#0a0a0c;color:#8c8c96;font-family:Inter,-apple-system,sans-serif;font-size:13px}@media (max-width: 720px){.fm-mode-tab{height:28px;padding:0 10px;gap:5px;font-size:12px}}.fm-tpad{position:absolute;left:8px;bottom:8px;z-index:25;display:grid;grid-template-columns:repeat(3,36px);gap:3px;padding:4px;border-radius:13px;background:color-mix(in srgb,var(--panel, #1b1b1f) 88%,transparent);border:1px solid color-mix(in srgb,var(--text, #fff) 12%,transparent);box-shadow:0 6px 18px -6px #0000008c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.fm-tpad-btn{width:36px;height:33px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--text-dim, #aaa);font:600 17px/1 -apple-system,Inter,sans-serif;cursor:pointer;padding:0}.fm-tpad-btn:active{background:color-mix(in srgb,var(--text, #fff) 12%,transparent);color:var(--text, #fff)}.fm-tpad-btn[data-danger=true]:active{color:#ff5d5d}.fm-tpad-mod[data-on=true]{background:var(--accent-soft, rgba(160, 255, 80, .15));color:var(--accent, #b6ff3c);border-color:color-mix(in srgb,var(--accent, #b6ff3c) 45%,transparent)}.fm-mode-tab.fm-mode-prayer{padding:0 8px;gap:0;margin-left:2px;border-left:1px solid var(--mt-chip-border);border-radius:0 8px 8px 0}.fm-mode-tab.fm-mode-prayer:hover{color:var(--accent)}
