.jf-tool{display:grid;gap:var(--s2)}
.jf-field label{display:block;font-size:14px;margin-bottom:var(--s1)}
.jf-field textarea{width:100%;box-sizing:border-box;min-height:64px;font-size:17px;line-height:1.5;resize:vertical}
.jf-group{border:0;margin:0;padding:0}
.jf-group legend{font-size:14px;margin-bottom:var(--s1);padding:0}
.jf-chips{display:flex;flex-wrap:wrap;gap:var(--s2)}
.jf-chip{position:relative;display:inline-flex}
.jf-chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.jf-chip span{display:inline-flex;align-items:center;min-height:var(--touch);padding:0 14px;border:1px solid var(--line);border-radius:var(--r2);background:var(--card);font-size:14px}
.jf-chip input:checked+span{border-color:var(--b);box-shadow:inset 0 0 0 1px var(--b);font-weight:700}
.jf-chip input:checked+span::before{content:"✓ ";content:"✓ " / ""}
.jf-chip input:focus-visible+span{outline:3px solid var(--focus-ring);outline-offset:2px}
.jf-chip input:disabled+span{opacity:.55}
.jf-stage{aspect-ratio:2/1;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
.jf-stage img{width:100%;height:100%;object-fit:contain}
.jf-stage-msg{margin:0;padding:0 var(--s4);font-size:14px;color:var(--mut);text-align:center}
.jf-stage.gone{display:none}
@media (scripting: none){#jf-init{display:none}}
.jf-stage img.clear{background:repeating-conic-gradient(#e8e8e8 0 25%,#fff 0 50%) 0 0/16px 16px}
.jf-diag ul{margin:6px 0;padding-left:18px;font-size:var(--t2);overflow-wrap:anywhere}
.jf-diag .btn,.jf-fail .btn,.jf-diag .text-btn{min-height:var(--touch)}
.jf-save{width:100%;min-height:48px}
.jf-mincho{margin:0;font-size:14px}
.jf-mincho a{display:inline-flex;align-items:center;min-height:var(--touch)}
.jf-sources{margin:6px 0 0;padding-left:18px;font-size:var(--t2)}
.jf-field,.jf-group,#jf-status{scroll-margin-top:72px}
@media(min-width:720px){.jf-field,.jf-group,#jf-status{scroll-margin-top:130px}}
