.fgm-app{--fgm-ink:#3a2c45;--fgm-rose:#e9659b;--fgm-pearl:#f6f3f7;--fgm-glass:rgba(58,44,69,0.55);--play-accent:#c9467f;--play-ink:#3a2c45;--play-paper:#fffafc;--play-soft:#fbe6ef;--play-shadow:#d9a9c0;height:100dvh;overflow:hidden;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;background:radial-gradient(60% 40% at 20% 25%,#fff 0,transparent 70%),radial-gradient(50% 45% at 80% 70%,#f6dce9 0,transparent 70%),linear-gradient(160deg,#e9e6f1,#d9d3e6 55%,#efd9e4);color:var(--fgm-ink)}.fgm-app [hidden]{display:none!important}.fgm-scene{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0;touch-action:none}.fgm-app[data-phase=loading] .fgm-scene,.fgm-app[data-phase=menu] .fgm-scene,.fgm-scene:not(.fgm-live){visibility:hidden}.fgm-app:not([data-phase=play]) :is(.fgm-top,.fgm-hint,.fgm-note,.fgm-bar,.fgm-cursors,.fgm-caption,.fgm-watermark){display:none}.fgm-app[data-phase=loading] .fgm-loading,.fgm-app[data-phase=menu] .fgm-menu,.fgm-app[data-phase=result] .fgm-result,.fgm-app[data-phase=saving] .fgm-saving{display:flex}.fgm-app .fgm-menu{background:transparent}.fgm-app .fgm-result,.fgm-app .fgm-saving{background:rgba(236,228,240,.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.fgm-app .fgm-loading{background:rgba(236,228,240,.9)}.fgm-app .fgm-title{font-family:Georgia,Times New Roman,serif;font-style:italic;letter-spacing:0;color:#fff;-webkit-text-stroke:2px var(--fgm-rose);text-shadow:0 6px 0 var(--fgm-rose)}.fgm-check{display:flex;gap:12px;align-items:flex-start;margin:0 0 14px;cursor:pointer;text-align:left}.fgm-check input{width:22px;height:22px;margin-top:3px;accent-color:var(--fgm-rose);flex:none}.fgm-check strong{display:block;font-size:18px}.fgm-check small{display:block;font-size:13px;line-height:1.35;color:#6c5a74}.fgm-check:has(input:disabled){opacity:.55;cursor:default}.fgm-app .play-panel .big{margin-top:8px}.fgm-cursors{position:absolute;inset:0;z-index:3;pointer-events:none}.fgm-cursor{position:absolute;left:0;top:0;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:rgba(40,28,46,.8);box-shadow:0 0 0 2px rgba(255,255,255,.6);transition:width .15s,height .15s,margin .15s,background .15s}.fgm-cursor[data-mode=hover],.fgm-cursor[data-mode=none]{background:rgba(255,255,255,.55);box-shadow:0 0 0 2px rgba(40,28,46,.4)}.fgm-cursor[data-mode=palm]{--d:var(--palm,70px);width:var(--d);height:var(--d);margin:calc(var(--d) / -2) 0 0 calc(var(--d) / -2);background:rgba(255,255,255,.18);box-shadow:0 0 0 2px rgba(255,255,255,.7)}.fgm-top{position:absolute;z-index:4;top:calc(env(safe-area-inset-top, 0px) + 10px);left:0;right:0;display:grid;grid-template-columns:96px 1fr 96px;grid-gap:10px;gap:10px;align-items:center;width:min(560px,100%);margin:0 auto;padding:0 14px}.fgm-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;cursor:pointer;font-size:18px;background:var(--fgm-glass);color:#fff;border:2px solid rgba(255,255,255,.85)}.fgm-top-right{display:flex;gap:8px;justify-content:flex-end}.fgm-icon .off,.fgm-icon[aria-pressed=true] .on{display:none}.fgm-icon[aria-pressed=true] .off{display:inline}.fgm-rec-pill{justify-self:center;display:flex;align-items:center;gap:10px;padding:6px 14px;border-radius:22px;background:var(--fgm-glass);color:#fff;font-weight:800;font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fgm-rec{display:inline-flex;align-items:center;gap:6px;color:#ffd3e3}.fgm-rec i{width:10px;height:10px;border-radius:50%;background:#ff4d7d;animation:fgm-blink 1.2s infinite}@keyframes fgm-blink{50%{opacity:.25}}.fgm-rec-track{width:70px;height:5px;border-radius:3px;background:rgba(255,255,255,.3);overflow:hidden}.fgm-rec-track span{display:block;height:100%;width:0;background:#fff}.fgm-hint{left:50%;transform:translateX(-50%);bottom:calc(env(safe-area-inset-bottom, 0px) + 96px);padding:7px 16px;border-radius:18px;background:rgba(255,250,252,.82);color:var(--fgm-ink);font-weight:800;font-size:15px;white-space:nowrap}.fgm-caption,.fgm-hint{position:absolute;z-index:4;pointer-events:none}.fgm-caption{left:16px;right:16px;top:calc(env(safe-area-inset-top, 0px) + 64px);display:grid;justify-items:center;text-align:center;color:#fff;text-shadow:0 1px 8px rgba(60,30,60,.35)}.fgm-caption span{font-weight:600;font-size:clamp(16px,4.6vw,24px);line-height:1.15}.fgm-caption span:empty{display:none}.fgm-caption b{font:italic 700 clamp(24px,7.1vw,38px)/1.1 Georgia,Times New Roman,serif;color:#f7a6c9}.fgm-watermark{position:absolute;z-index:4;right:14px;bottom:calc(env(safe-area-inset-bottom, 0px) + 136px);font-weight:800;font-size:12px;color:rgba(255,255,255,.92);text-shadow:0 1px 5px rgba(40,20,40,.5);pointer-events:none}.fgm-title-field{display:grid;grid-gap:4px;gap:4px;margin:0 0 16px;text-align:left}.fgm-title-field span{font-size:18px;font-weight:800}.fgm-title-field input{width:100%;min-height:46px;padding:8px 14px;border-radius:14px;border:2px solid #ead5e0;background:#fff;color:var(--fgm-ink);font:italic 600 19px Georgia,Times New Roman,serif;-moz-user-select:text;user-select:text;-webkit-user-select:text}.fgm-title-field input:focus{outline:none;border-color:var(--fgm-rose)}.fgm-title-field small{font-size:13px;color:#6c5a74}.fgm-note:empty{display:none}.fgm-note{left:16px;right:16px;top:calc(env(safe-area-inset-top, 0px) + 150px);max-width:420px;padding:8px 14px;border-radius:14px;background:rgba(255,250,252,.9);font-size:13px;text-align:center}.fgm-bar,.fgm-note{position:absolute;z-index:4;margin:0 auto}.fgm-bar{left:0;right:0;bottom:calc(env(safe-area-inset-bottom, 0px) + 14px);width:min(560px,calc(100% - 24px));padding:8px;border-radius:26px;display:grid;grid-template-columns:auto auto 1fr auto;grid-gap:8px;gap:8px;align-items:center;background:rgba(255,250,252,.78);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:2px solid rgba(255,255,255,.9)}.fgm-tool{min-width:54px;height:54px;border-radius:18px;border:2px solid #ead5e0;background:#fff;color:var(--fgm-ink);display:grid;place-items:center;padding:2px 6px;cursor:pointer;line-height:1}.fgm-tool b{font-size:20px;font-weight:400}.fgm-tool span{font-size:11px;font-weight:800}.fgm-tool .off,.fgm-tool[aria-pressed=true] .on{display:none}.fgm-tool[aria-pressed=true] .off{display:inline}.fgm-tool[aria-pressed=true]{border-color:var(--fgm-rose);background:var(--play-soft)}.fgm-hold{display:grid;grid-gap:0;gap:0;font-size:11px;font-weight:800;color:#6c5a74;min-width:0;padding:0 4px}.fgm-hold input{width:100%;accent-color:var(--fgm-rose);margin:2px 0}.fgm-hold small{display:flex;justify-content:space-between;font-weight:600}.fgm-hold i{font-style:normal}.fgm-done{height:54px;padding:0 18px;border-radius:18px;cursor:pointer;font-size:19px;font-weight:800;background:var(--fgm-rose);color:#fff;border:2px solid #c9467f;box-shadow:inset 0 2px 0 rgba(255,255,255,.35),0 4px 0 #a8356a}.fgm-done:active{transform:translateY(2px);box-shadow:0 2px 0 #a8356a}.fgm-card{width:min(440px,100%);padding:22px;border-radius:28px;background:var(--play-paper);border:3px solid #fff;box-shadow:0 8px 0 var(--play-shadow);text-align:center}.fgm-card h2{margin:4px 0 10px;font-size:26px;color:var(--play-accent)}.fgm-card p{margin:10px 0;font-size:15px;line-height:1.4}.fgm-kicker{font-size:12px;font-weight:800;letter-spacing:2px;color:#8a7792}.fgm-media{border-radius:18px;overflow:hidden;background:#2b2230;display:grid;place-items:center}.fgm-media :is(video,img){display:block;width:100%;max-height:min(52dvh,520px);object-fit:contain}.fgm-actions{display:grid;grid-gap:8px;gap:8px;margin-top:12px}.fgm-actions .big{width:100%}.fgm-actions .a-secondary{margin-top:0;width:100%}.fgm-actions-row{grid-template-columns:1fr 1fr}.fgm-feedback:empty{display:none}.fgm-fatal{margin:12px 0 0;padding:10px 12px;border-radius:12px;background:#fde7ec;color:#8a2443;font-size:14px;line-height:1.4}.fgm-load-error{display:grid;grid-gap:8px;gap:8px;margin-top:16px;width:min(420px,100%)}.fgm-load-error p{margin:0}@media (max-width:420px){.fgm-bar{grid-template-columns:auto auto 1fr auto;gap:6px;padding:6px}.fgm-tool{min-width:48px;height:50px}.fgm-done{height:50px;padding:0 14px;font-size:17px}.fgm-rec-track{width:44px}.fgm-hint{font-size:14px}}@media (max-height:560px){.fgm-media :is(video,img){max-height:40dvh}.fgm-card{padding:14px}}