/* Terminfinder */
.muted { color: var(--muted); }
.small { font-size: .85rem; }
.tf-field { display: grid; gap: 6px; margin: 12px 0; }
.tf-field > span { font-weight: 700; }
.tf-field input[type="text"] { width: 100%; }
.tf-two { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.tf-two textarea { min-height: 42px; }
@media (max-width: 600px) { .tf-two { grid-template-columns: 1fr; } }
.tf-add { display: flex; flex-wrap: wrap; gap: 6px; }
.tf-opts { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.tf-chip { display: inline-flex; align-items: center; gap: 6px; background: var(--accent-soft); border-radius: 999px; padding: 4px 6px 4px 12px; font-weight: 600; font-size: .9rem; }
.tf-chip button { border: 0; background: none; padding: 2px 6px; }
.tf-go { width: 100%; padding: 14px; font-size: 1.1rem; margin-top: 8px; }
.tf-title { margin: 0 0 4px; }
.tf-scroll { overflow-x: auto; margin: 12px 0; }
.tf-table { border-collapse: collapse; min-width: 100%; }
.tf-table th, .tf-table td { border: 1px solid var(--border); padding: 6px 8px; text-align: center; white-space: nowrap; }
.tf-table th { display: table-cell; font-weight: 500; font-size: .85rem; background: var(--bg); }
.tf-table th b, .tf-table th small, .tf-table th .tf-score { display: block; }
.tf-table th.best { background: #dcfce7; }
.tf-table th.final { background: #4ade80; }
@media (prefers-color-scheme: dark) { .tf-table th.best { background: #14532d; } .tf-table th.final { background: #166534; } }
.tf-score { font-size: .78rem; color: var(--muted); margin-top: 2px; }
.tf-name { text-align: left !important; font-weight: 600; }
.tf-name input { width: 130px; }
.tf-table td.a2 { background: #dcfce7; } .tf-table td.a1 { background: #fef9c3; } .tf-table td.a0 { background: #fee2e2; }
@media (prefers-color-scheme: dark) { .tf-table td.a2 { background: #14532d; } .tf-table td.a1 { background: #422006; } .tf-table td.a0 { background: #450a0a; } }
.tf-ans { width: 44px; height: 38px; padding: 0; font-size: 1.1rem; }
.tf-me td { background: var(--accent-soft); }
.tf-x { border: 0; background: none; padding: 0 4px; color: var(--muted); }
.tf-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 8px; }
.tf-share { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.tf-share input { flex: 1 1 240px; }
.tf-final { background: #dcfce7; color: #14532d; font-weight: 700; padding: 10px 12px; border-radius: 10px; margin: 10px 0; }
.tf-admin summary { cursor: pointer; font-weight: 700; }
.tf-mine { margin: 6px 0 0; padding-left: 1.1rem; }
.tf-toast { position: fixed; left: 50%; bottom: 24px; transform: translate(-50%, 20px); background: #111827; color: #fff; padding: 10px 16px; border-radius: 12px; opacity: 0; pointer-events: none; transition: .2s; z-index: 60; }
.tf-toast.on { opacity: 1; transform: translate(-50%, 0); }
