.ffs-hero{padding-top:clamp(18px,4vw,34px)}
.ffs-h1{font-size:clamp(32px,6vw,54px);line-height:1.08;font-weight:800;letter-spacing:-.03em;color:var(--ink)}
.ffs-aio{margin-top:12px;max-width:760px;color:var(--text2);font-size:17px}
.ffs-sec{padding-top:22px}
.ffs-comb{display:flex;flex-direction:column;gap:12px}
.ffs-comb__row{display:flex;flex-direction:column;gap:6px}
.ffs-lab{font-size:14px;font-weight:700;color:var(--muted)}
.ffs-input{width:100%;min-width:0;height:48px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);font-size:18px}
.ffs-comb__frames{display:flex;flex-wrap:wrap;gap:8px}
.ffs-frame{font-weight:400;font-size:16px;padding:6px 12px}
.ffs-comb__out{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px;border-radius:12px;background:var(--soft);min-width:0}
.ffs-out{flex:1 1 200px;min-width:0;font-size:clamp(22px,5vw,30px);overflow-wrap:anywhere;color:var(--ink)}
.ffs-meter{font-size:15px;font-weight:700;padding:4px 10px;border-radius:999px;background:#dcfce7;color:#166534;white-space:nowrap}
.ffs-meter.is-over{background:#fee2e2;color:#b91c1c}
.ffs-comb__act{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ffs-check{font-size:14px;color:var(--muted);display:inline-flex;gap:6px;align-items:center}
.ffs-note{font-size:14px;color:var(--muted);margin-top:4px}
.ffs-jump{margin-top:12px;display:flex;gap:8px}
.ffs-group{margin-top:22px;scroll-margin-top:80px}
.ffs-gt{margin-top:18px;font-size:19px;font-weight:700;color:var(--ink)}
.ffs-gt small{font-size:13px;color:var(--muted);font-weight:600}
.ffs-gb{font-size:15px;color:var(--muted);margin-top:2px}
.ffs-grid{margin-top:10px;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(46%,150px),1fr));gap:8px}
.ffs-grid:not(.is-all) .is-more{display:none}
.ffs-sym{position:relative;min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.ffs-sym__main{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;padding:12px 8px 10px;background:none;border:0;color:var(--ink);cursor:pointer;min-width:0}
.ffs-sym__main:hover{background:var(--soft);border-radius:14px}
.ffs-sym__main.is-copied{background:var(--blue);color:#fff;border-radius:14px}
.ffs-sym__g{font-size:28px;font-weight:400;line-height:1.3;max-width:100%;overflow-wrap:anywhere}
.ffs-sym__n{font-size:11.5px;color:var(--muted);text-align:center;line-height:1.25;max-width:100%;overflow-wrap:anywhere}
.ffs-sym__u{font-size:11px;color:var(--faint);font-family:ui-monospace,monospace}
.ffs-add{position:absolute;top:4px;right:4px;width:26px;height:26px;border-radius:8px;border:1px solid var(--line);background:var(--card);color:var(--blue);font-weight:700;font-size:16px;line-height:1}
.ffs-more{margin-top:10px}
.ffs-names{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:8px}
.ffs-nm{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);text-align:left}
.ffs-nm__t{flex:1 1 auto;min-width:0;font-size:18px;font-weight:400;overflow-wrap:anywhere;background:none;border:0;color:inherit;text-align:left;padding:0}
.ffs-cnt{flex:none;font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;background:#dcfce7;color:#166534}
.ffs-cnt.is-over{background:#fee2e2;color:#b91c1c}
.ffs-tag{font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;border:0}
.ffs-tag--warn{background:#ffedd5;color:#9a3412}
.ffs-cloud{margin-top:10px}
.ffs-cloud .chip,.ffs-nm .ffs-nm__t,.ffs-frame{font-weight:400}
.ffs-sub{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.ffs-sub .ffs-input{flex:1 1 220px}
.ffs-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.ffs-home .table-wrap{max-width:100%}
.ffs-fig{margin-top:14px;max-width:520px}
.ffs-fig img{display:block;width:100%;height:auto;border-radius:16px}
.ffs-fig figcaption{font-size:13px;color:var(--muted);margin-top:6px}
html.dark .ffs-meter,html.dark .ffs-cnt{background:#14532d;color:#dcfce7}
html.dark .ffs-meter.is-over,html.dark .ffs-cnt.is-over{background:#7f1d1d;color:#fee2e2}
@media (max-width:700px){.ffs-comb__frames{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.ffs-comb__frames .chip{flex:none}.ffs-aio{font-size:16px}}
.ffs-entry>.ffs-aio{margin-top:0;font-size:17px}
.ffs-entry .ffs-comb{margin:16px 0 8px}
.ffs-entry .ffs-group h3{margin-top:18px}
.ffs-byline{margin-top:24px;font-size:14px;color:var(--muted)}
.ffs-subbox{margin:22px 0;padding:18px}
.ffs-subbox__t{font-size:18px;margin:0}
.ffs-toc{margin:18px 0;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.ffs-toc ol{margin:8px 0 0 18px}
.ffs-entry figure{margin:18px 0;max-width:560px}
.ffs-entry figure img{width:100%;height:auto;border-radius:16px}
