.tf-tool{flex-direction:column;gap:1rem;display:flex}.tf-phase-control{flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.8rem;display:flex}.tf-phase-control input{accent-color:var(--accent);flex:1}.tf-group-label{letter-spacing:.05em;color:var(--text-dim);font-size:.78rem}.tf-mode-row{flex-wrap:wrap;align-items:center;gap:.4rem .8rem;display:flex}.tf-tool .tf-sub .seg-btn,.tf-tool .tf-film .seg-btn{padding:0 .9rem}.tf-controls{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));align-items:end;gap:.7rem .9rem;max-width:34rem;display:grid}.tf-field{flex-direction:column;gap:.25rem;min-width:0;display:flex}.tf-tool .tf-field input:is([type=number],[data-num]){width:100%;min-width:0;color:var(--text);background:var(--bg-surface);border:1px solid var(--border);border-radius:0;padding:.45rem .55rem;font-size:.95rem}.tf-hint{color:var(--text-dim);margin:-.4rem 0 0;font-size:.82rem}.tf-verdict-box{border-left:3px solid var(--accent);background:var(--bg-hover);padding:.6rem .85rem}.tf-verdict{color:var(--text);margin:0;font-size:.93rem;line-height:1.5}.tf-tool .tf-player{flex-wrap:wrap;align-items:center;gap:.45rem .8rem;margin-bottom:-.5rem;display:flex}.tf-tool .tf-player .tf-player-btn{min-width:2.2rem;color:var(--text);background:var(--bg-surface);border:1px solid var(--border);cursor:pointer;border-radius:0;padding:.35rem .6rem;font-size:.9rem;line-height:1}.tf-tool .tf-player .tf-player-btn:hover{border-color:var(--accent)}.tf-tool .tf-inline{color:var(--text);align-items:center;gap:.4rem;font-size:.86rem;display:inline-flex}.tf-tool .tf-inline select{width:auto;color:var(--text);background:var(--bg-surface);border:1px solid var(--border);cursor:pointer;border-radius:0;padding:.3rem .45rem;font-size:.86rem}.tf-tool .tf-drag input[type=range]{width:min(11rem,40vw);accent-color:var(--accent)}.tf-visual{margin:0}.tf-heading{margin:.2rem 0 0;font-size:1.05rem}.tf-table-note{color:var(--text-dim);margin:0;font-size:.86rem}.tf-table-wrap{overflow-x:auto}.tf-tool .tf-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.88rem}.tf-tool .tf-table th,.tf-tool .tf-table td{text-align:right;white-space:nowrap;border-bottom:1px solid var(--border);padding:.35rem .6rem}.tf-tool .tf-table thead th{letter-spacing:.04em;color:var(--text-dim);font-size:.76rem;font-weight:600}.tf-tool .tf-table tbody th{text-align:left;font-weight:600}.tf-tool .tf-table .tf-swatch{vertical-align:middle;border:1px solid var(--border);width:2.2rem;height:.95rem;display:inline-block}
