.fdqg-demo { --font-family-ui: Manrope, sans-serif;
--font-family-card: Nunito, sans-serif;
--font-size-card-title: clamp(23px, 3.2vw, 30px);
--font-size-card-instruction: clamp(18px, 2.2vw, 22px);
--line-height-card-instruction: 1.45;
--font-size-card-answer: clamp(31px, 5vw, 50px);
--line-height-card-answer: 1;
--font-weight-card-answer: 800;
--font-size-card-number: clamp(16px, 2vw, 21px);
--font-weight-card-number: 800;
--print-brand-text: "fundelivery.ee";
--print-brand-size: 11px;
--print-brand-color: #9aa8a2;
--print-brand-inset: 16px;
--generator-workspace-max: 1160px;
font-family: var(--font-family-ui); color: #18342d; background: #f4f0e7; font-synthesis: none; }
.fdqg-demo .symbol-icon-file { display:block }
.fdqg-demo .symbol-icon-file img { display:block;width:100%;height:100%;object-fit:contain }
.fdqg-demo .symbol-icon-file .symbol-icon-monochrome { display:none }
.fdqg-demo .bw .symbol-icon-file .symbol-icon-color { display:none }
.fdqg-demo .bw .symbol-icon-file .symbol-icon-monochrome { display:block }
.fdqg-demo .segmented button.active { color: #153c31; background: white; box-shadow: 0 2px 8px rgba(25,55,46,.12); }
.fdqg-demo .letter-set-options button.active { color: #153c31; background: #fff; box-shadow: 0 2px 8px rgba(25,55,46,.12); }
.fdqg-demo .morse-code { display:flex;max-width:100%;flex-wrap:wrap;justify-content:center;gap:clamp(18px,4cqw,38px);font-family:Nunito,sans-serif;font-size:clamp(20px,4.2cqw,38px);font-weight:800;line-height:1.35 }
.fdqg-demo .morse-word { display:flex;max-width:100%;flex-wrap:wrap;justify-content:center;gap:clamp(9px,1.8cqw,17px) }
.fdqg-demo .morse-character { white-space:nowrap }
.fdqg-demo .morse-key-note { max-width:640px;margin:0 auto 18px;color:#68746f;font-size:clamp(11px,1.45cqw,13px);line-height:1.45;text-align:center }
.fdqg-demo .morse-key { display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:9px 14px;text-align:left }
.fdqg-demo .morse-key-entry { display:grid;grid-template-columns:24px 1fr;gap:8px;align-items:center;min-width:0;padding:6px 8px;border-radius:7px;background:rgba(255,255,255,.55);font-family:Nunito,sans-serif;font-size:clamp(13px,1.8cqw,17px) }
.fdqg-demo .morse-key-entry .morse-sequence { white-space:nowrap }
.fdqg-demo .morse-card.compact .morse-code { font-size:17px;gap:12px }
.fdqg-demo .morse-card.compact .morse-word { gap:7px }
.fdqg-demo .morse-card.compact .morse-key-note { margin-bottom:10px;font-size:9px }
.fdqg-demo .morse-card.compact .morse-key { grid-template-columns:repeat(auto-fit,minmax(82px,1fr));gap:5px }
.fdqg-demo .morse-card.compact .morse-key-entry { font-size:11px;padding:3px }
.fdqg-demo .morse-code { --letter-gap:.72em;--signal-gap:.18em;align-items:center;width:100%;min-width:0;line-height:1 }
.fdqg-demo .morse-word { flex-wrap:nowrap;flex:none;gap:var(--letter-gap) }
.fdqg-demo .morse-character { display:inline-flex;flex:none;align-items:center;gap:var(--signal-gap);height:1em }
.fdqg-demo .morse-signal { display:inline-block;flex:none;color:currentColor;background:currentColor }
.fdqg-demo .morse-signal.dot { width:.24em;height:.24em;border-radius:50% }
.fdqg-demo .morse-signal.dash { width:.72em;height:.17em;border-radius:999px }
.fdqg-demo .morse-signal.invalid { width:auto;height:auto;background:transparent;font-style:normal }
.fdqg-demo .morse-sequence { display:inline-flex;flex:none;align-items:center;gap:var(--signal-gap,.14em);height:1em;vertical-align:middle }
.fdqg-demo .morse-key-entry .morse-sequence { --signal-gap:.22em;font-size:1.2em }
.fdqg-demo .morse-single-word { flex-wrap:nowrap;gap:0 }
.fdqg-demo .morse-density-normal { font-size:clamp(10px,1.8vw,26px) }
.fdqg-demo .morse-card.compact .morse-code { --letter-gap:.5em;font-size:clamp(4.5px,.85vw,9px) }
.fdqg-demo .morse-code.morse-density-normal { font-size:clamp(10px,1.8vw,26px)!important }
.fdqg-demo .morse-code.morse-density-compact { font-size:clamp(6px,1.05vw,15px)!important }
.fdqg-demo .morse-code.morse-density-dense { font-size:clamp(3.5px,.65vw,9px)!important }
.fdqg-demo .morse-card.compact .morse-code { font-size:clamp(4.5px,.85vw,9px)!important }
.fdqg-demo .symbol-message { display:flex;max-width:100%;flex-wrap:wrap;justify-content:center;gap:clamp(18px,4cqw,36px) }
.fdqg-demo .symbol-word { display:flex;max-width:100%;flex:none;flex-wrap:nowrap;justify-content:center;gap:clamp(4px,1cqw,10px) }
.fdqg-demo .symbol-message .symbol-icon { flex:none;width:clamp(34px,7.3cqw,64px);height:clamp(34px,7.3cqw,64px) }
.fdqg-demo .symbol-message.symbol-compact .symbol-icon { width:clamp(25px,5cqw,48px);height:clamp(25px,5cqw,48px) }
.fdqg-demo .symbol-message.symbol-dense .symbol-icon { width:clamp(19px,3.7cqw,36px);height:clamp(19px,3.7cqw,36px) }
.fdqg-demo .symbol-key { display:grid;grid-template-columns:repeat(auto-fit,minmax(66px,1fr));gap:10px 12px }
.fdqg-demo .symbol-key-entry { display:grid;justify-items:center;gap:3px;min-width:0;padding:5px;border-radius:8px;background:rgba(255,255,255,.48);font-family:Nunito,sans-serif }
.fdqg-demo .symbol-key-entry .symbol-icon { width:clamp(29px,4.2cqw,42px);height:clamp(29px,4.2cqw,42px) }
.fdqg-demo .symbol-key-entry strong { font-size:clamp(12px,1.8cqw,16px) }
.fdqg-demo .symbol-card.compact .symbol-message .symbol-icon { width:24px;height:24px }
.fdqg-demo .symbol-card.compact .symbol-key { grid-template-columns:repeat(auto-fit,minmax(43px,1fr));gap:4px }
.fdqg-demo .symbol-card.compact .symbol-key-entry { padding:2px }
.fdqg-demo .symbol-card.compact .symbol-key-entry .symbol-icon { width:21px;height:21px }
.fdqg-demo .symbol-card.compact .symbol-key-entry strong { font-size:9px }
.fdqg-demo .braille-sequence { display:flex;max-width:100%;flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(22px,5cqw,42px);--cell-dot:clamp(8px,1.9cqw,16px);--cell-row-gap:clamp(4px,.8cqw,7px);--cell-column-gap:clamp(6px,1.25cqw,11px);--letter-gap:clamp(7px,1.4cqw,13px) }
.fdqg-demo .braille-word { display:flex;flex:none;max-width:100%;align-items:center;justify-content:center;gap:var(--letter-gap) }
.fdqg-demo .braille-cell { display:grid;flex:none;grid-template-columns:repeat(2,var(--cell-dot));grid-template-rows:repeat(3,var(--cell-dot));gap:var(--cell-row-gap) var(--cell-column-gap) }
.fdqg-demo .braille-cell i { display:block;width:var(--cell-dot);height:var(--cell-dot);border:clamp(1.2px,.18cqw,2px) solid #68756f;border-radius:50%;background:#fff }
.fdqg-demo .braille-cell i.active { border-color:#28765e;background:#28765e;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08) }
.fdqg-demo .braille-card.bw .braille-cell i.active { border-color:#000;background:#000 }
.fdqg-demo .braille-key { display:grid;grid-template-columns:repeat(auto-fit,minmax(66px,1fr));gap:10px 12px }
.fdqg-demo .braille-key-entry { display:flex;min-width:0;align-items:center;justify-content:center;gap:clamp(6px,1cqw,10px);padding:6px 4px;border-radius:8px;background:rgba(255,255,255,.52);font-family:Nunito,sans-serif }
.fdqg-demo .braille-key-entry .braille-cell { --cell-dot:clamp(4px,.75cqw,7px);--cell-row-gap:clamp(2px,.35cqw,3px);--cell-column-gap:clamp(3px,.55cqw,5px) }
.fdqg-demo .braille-key-entry strong { font-size:clamp(12px,1.7cqw,16px) }
.fdqg-demo .braille-card.compact .braille-sequence { --cell-dot:5px;--cell-row-gap:2px;--cell-column-gap:3px;--letter-gap:4px;gap:12px }
.fdqg-demo .braille-card.compact .braille-key { grid-template-columns:repeat(auto-fit,minmax(46px,1fr));gap:4px }
.fdqg-demo .braille-card.compact .braille-key-entry { gap:4px;padding:3px }
.fdqg-demo .braille-card.compact .braille-key-entry .braille-cell { --cell-dot:3px;--cell-row-gap:1.5px;--cell-column-gap:2px }
.fdqg-demo .braille-card.compact .braille-key-entry strong { font-size:9px }
.fdqg-demo .solution-encoded .braille-cell { --cell-dot:7px;--cell-row-gap:3px;--cell-column-gap:4px }
.fdqg-demo .solution-encoded .braille-cell i { border-width:1px }
.fdqg-demo .solution-steps li:has(.braille-cell), .fdqg-demo .solution-steps li:has(.sp-combined-symbol) { min-height:62px }
.fdqg-demo .symbol-message .symbol-icon-file { flex:none;width:clamp(34px,7.3cqw,64px);height:clamp(34px,7.3cqw,64px) }
.fdqg-demo .symbol-message.symbol-compact .symbol-icon-file { width:clamp(25px,5cqw,48px);height:clamp(25px,5cqw,48px) }
.fdqg-demo .symbol-message.symbol-dense .symbol-icon-file { width:clamp(19px,3.7cqw,36px);height:clamp(19px,3.7cqw,36px) }
.fdqg-demo .symbol-key-entry .symbol-icon-file { width:clamp(29px,4.2cqw,42px);height:clamp(29px,4.2cqw,42px) }
.fdqg-demo .symbol-card.compact .symbol-icon-file { width:21px;height:21px }
.fdqg-demo .symbol-card .symbol-message { width:100%;padding-inline:clamp(14px,3cqw,28px) }
.fdqg-demo .symbol-card.compact .symbol-message { padding-inline:8px }
@media (max-width: 760px) {
.fdqg-demo .morse-key { grid-template-columns:repeat(2,minmax(0,1fr)) }
.fdqg-demo .morse-code { font-size:clamp(18px,6.5cqw,27px) }
.fdqg-demo .symbol-key { grid-template-columns:repeat(5,minmax(0,1fr));gap:7px 5px }
.fdqg-demo .symbol-message { gap:18px 22px }
.fdqg-demo .symbol-word { gap:4px }
.fdqg-demo .symbol-message.symbol-dense .symbol-word { flex-wrap:wrap }
}
.fdqg-demo .braille-sequence { --letter-gap:clamp(10px,1.8cqw,17px);--word-gap:clamp(23px,4.2cqw,39px);gap:clamp(22px,5cqw,42px) var(--word-gap) }
.fdqg-demo .braille-card.compact .braille-sequence { --letter-gap:4px;--word-gap:10px;gap:12px var(--word-gap) }
.fdqg-demo .coordinate-methods button.active { border-color:#28765e;box-shadow:0 0 0 2px rgba(40,118,94,.12);background:#fff }
@media (max-width:760px) {
.fdqg-demo .braille-key { grid-template-columns:repeat(4,minmax(0,1fr));gap:7px 5px }
.fdqg-demo .braille-word { flex-wrap:wrap }
.fdqg-demo .braille-regular .braille-word, .fdqg-demo .braille-single.braille-compact .braille-word { flex-wrap:nowrap }
}
.fdqg-demo .clock-sequence { display:flex;max-width:100%;flex-wrap:wrap;justify-content:center;gap:clamp(10px,1.8cqw,16px) clamp(15px,2.8cqw,25px) }
.fdqg-demo .clock-word { display:flex;max-width:100%;flex-wrap:wrap;justify-content:center;gap:clamp(6px,1.1cqw,10px) }
.fdqg-demo .clock-word>i { align-self:center;font-size:26px }
.fdqg-demo .analog-clock { display:block;flex:none;width:clamp(46px,8.5cqw,76px);height:clamp(46px,8.5cqw,76px);overflow:visible }
.fdqg-demo .clock-face { fill:rgba(255,255,255,.9);stroke:#50665e;stroke-width:2 }
.fdqg-demo .clock-tick { stroke:#71807a;stroke-width:1.8;stroke-linecap:round }
.fdqg-demo .analog-clock text { fill:#53645f;font:700 7px Arial;text-anchor:middle;dominant-baseline:middle }
.fdqg-demo .clock-hand { stroke:#18342d;stroke-linecap:round }
.fdqg-demo .clock-hand.hour { stroke-width:5 }
.fdqg-demo .clock-hand.minute { stroke-width:3 }
.fdqg-demo .clock-pin { fill:#c75f40 }
.fdqg-demo .clock-card.bw .clock-face { fill:#fff;stroke:#111 }
.fdqg-demo .clock-card.bw .clock-hand, .fdqg-demo .clock-card.bw .clock-tick { stroke:#111 }
.fdqg-demo .clock-sequence.compact { gap:4px 6px }
.fdqg-demo .clock-sequence.compact .analog-clock { width:27px;height:27px }
.fdqg-demo .solution-encoded .analog-clock { width:42px;height:42px }
.fdqg-demo .organizer-thumbnail-content .clock-sequence { gap:3px 5px }
@media(max-width:760px) {
.fdqg-demo .analog-clock { width:clamp(43px,13cqw,64px);height:clamp(43px,13cqw,64px) }
}
.fdqg-demo .clock-display { position:relative;display:inline-grid;place-items:center;flex:none }
.fdqg-demo .clock-display.compact .clock-period { right:-3px;bottom:-3px;font-size:9px }
.fdqg-demo .cipher-number-sequence { display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.1rem 2.2rem;width:100%;min-width:0;margin:2rem auto;font-size:clamp(1.5rem,4cqw,2.5rem);font-weight:900;line-height:1.35;color:#176b55 }
.fdqg-demo .cipher-number-word { display:inline-flex;max-width:100%;flex-wrap:wrap;justify-content:center }
.fdqg-demo .cipher-number-word>span { white-space:nowrap }
.fdqg-demo .letter-numbers-card.bw .cipher-number-sequence { color:#111 }
@media(max-width:520px) {
.fdqg-demo .cipher-number-sequence { gap:.8rem 1.45rem;font-size:clamp(1.45rem,7vw,2rem) }
}
.fdqg-demo .symbol-pack-options button.active { border-color:#176b55;background:#e8f1ed;box-shadow:inset 0 0 0 1px #176b55 }
.fdqg-demo .distortion-size-sm { font-size: clamp(24px, 7.4cqw, 54px); }
.fdqg-demo .distortion-glyphs { display: flex; max-width: 100%; flex-wrap: wrap; align-items: flex-end; justify-content: center; gap: .3em .9em; margin: clamp(20px, 4cqw, 42px) auto; }
.fdqg-demo .distortion-glyph-word { display: flex; max-width: 100%; flex-wrap: wrap; align-items: flex-end; justify-content: center; gap: .2em; }
.fdqg-demo .distortion-negative-glyph { display: block; overflow: visible; width: 1.02em; height: 1.61em; }
.fdqg-demo .distortion-segment { fill: none; stroke: currentColor; stroke-linecap: round; }
.fdqg-demo .distortion-dot { fill: currentColor; }
.fdqg-demo .distortion-key { display: flex; justify-content: center; padding-block: 6px; }
.fdqg-demo .distortion-key .distortion-negative-glyph { width: clamp(52px, 8.4cqw, 80px); height: clamp(82px, 13.2cqw, 126px); }
.fdqg-demo .distortion-solution-restore .distortion-negative-glyph { width: 20px; height: 32px; }
.fdqg-demo .distortion-segment.is-restored { stroke: var(--distortion-restore); stroke-dasharray: .5 .45; }
.fdqg-demo .distortion-dot.is-restored { fill: #fff; stroke: var(--distortion-restore); stroke-width: .17; }
.fdqg-demo .distortion-style-options button.active { color: #153c31; background: white; box-shadow: 0 2px 8px rgba(25,55,46,.12); }
.fdqg-demo .extras-content-options button.active { color: #153c31; background: white; box-shadow: 0 2px 8px rgba(25,55,46,.12); }
.fdqg-demo .guide-mode-options button.active, .fdqg-demo .guide-view-options button.active { color: #153c31; background: white; box-shadow: 0 2px 8px rgba(25,55,46,.12); }
.fdqg-demo .lines-card { display: flex; width: 100%; justify-content: center; margin: clamp(14px, 2.6cqw, 28px) auto 0; }
.fdqg-demo .lines-canvas { display: block; width: 100%; max-width: 700px; height: auto; overflow: visible; }
.fdqg-demo .lines-node-shape, .fdqg-demo .lines-box rect { fill: #fff; stroke: currentColor; stroke-width: .5; }
.fdqg-demo .lines-node-letter, .fdqg-demo .lines-box-letter { fill: currentColor; font-family: var(--font-family-card); font-weight: 800; text-anchor: middle; dominant-baseline: central; }
.fdqg-demo .lines-node.is-first .lines-node-shape { stroke-width: 1.15; }
.fdqg-demo .lines-node-ring { fill: none; stroke: currentColor; stroke-width: .4; }
.fdqg-demo .lines-thread { fill: none; stroke: currentColor; stroke-width: .5; stroke-linecap: round; stroke-linejoin: round; }
.fdqg-demo .lines-start circle { fill: none; stroke: currentColor; stroke-width: .75; }
.fdqg-demo .lines-finish rect { fill: #fff; stroke: currentColor; stroke-width: .55; }
.fdqg-demo .lines-start text, .fdqg-demo .lines-finish text { fill: currentColor; stroke: #fff; stroke-width: .55; paint-order: stroke; font-family: var(--font-family-ui); font-weight: 700; text-anchor: middle; }
.fdqg-demo .lines-card.is-solved { --lines-route-ink: #d16443; }
.fdqg-demo .lines-card.is-solved .lines-link, .fdqg-demo .lines-card.is-solved .lines-thread.is-route { stroke: var(--lines-route-ink); stroke-width: .78; }
.fdqg-demo .lines-card.is-solved .lines-arrowhead { fill: var(--lines-route-ink); }
.fdqg-demo .maze-card { display: flex; width: 100%; justify-content: center; margin: clamp(14px, 2.6cqw, 28px) auto 0; }
.fdqg-demo .maze-canvas { display: block; width: 100%; max-width: 700px; height: auto; overflow: visible; }
.fdqg-demo .maze-walls { fill: none; stroke: currentColor; stroke-width: .9; stroke-linecap: square; }
.fdqg-demo .maze-letter { fill: currentColor; stroke: #fff; stroke-width: 1.1; paint-order: stroke; font-family: var(--font-family-card); font-weight: 800; text-anchor: middle; dominant-baseline: central; }
.fdqg-demo .maze-gate polygon { fill: currentColor; }
.fdqg-demo .maze-gate text { fill: currentColor; stroke: #fff; stroke-width: .6; paint-order: stroke; font-family: var(--font-family-ui); font-weight: 700; dominant-baseline: central; }
.fdqg-demo .maze-card.is-solved { --maze-route-ink: #d16443; }
.fdqg-demo .crossword-grid { display: block; width: 100%; max-width: min(100%, calc(var(--crossword-columns, 10) * 52px)); height: auto; overflow: visible; }
.fdqg-demo .crossword-cell { fill: #fff; stroke: currentColor; stroke-width: .8; }
.fdqg-demo .crossword-cell.is-secret { fill: var(--crossword-secret-tint, rgba(31,107,85,.12)); }
.fdqg-demo .crossword-secret-frame { fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linejoin: round; }
.fdqg-demo .crossword-number { fill: currentColor; font-family: var(--font-family-ui); font-weight: 700; dominant-baseline: hanging; }
.fdqg-demo .product-nav-primary.active { box-shadow: 0 0 0 3px rgba(31,107,85,.18); }
.fdqg-demo .product-nav-link.active { background: rgba(31,107,85,.1); box-shadow: inset 0 0 0 1px rgba(31,107,85,.35); }
.fdqg-demo .quest-category-tabs button.active { border-color: #1f6b55; background: #eef6f2; color: #16503f; box-shadow: inset 0 0 0 1px #1f6b55; }
.fdqg-demo .quest-preview-root .quest-preview-step-visual .braille-cell { --cell-dot: 5px; --cell-row-gap: 2px; --cell-column-gap: 3px; }