.tool-shell { max-width: 1100px; }
.tool-title { display: flex; align-items: center; gap: 16px; }
.hunt-mark { width: 58px; height: 58px; flex: 0 0 auto; color: var(--accent); }
.tool-title h2 { margin: 0; font-size: clamp(2rem, 5vw, 3rem); }
.tool-intro { margin-top: 20px; max-width: 70ch; }
.model-warning { padding: 18px 20px; background: #493d2d; color: #f3dfbd; margin: 24px 0; }
.model-warning p { margin: 6px 0 0; }
.tool-controls { display: flex; flex-wrap: wrap; gap: 20px; padding-block: 20px; border-block: 1px solid var(--line); }
.tool-controls label, .feedback-section label { display: grid; gap: 6px; font-size: .9rem; }
.tool-controls select, .tool-controls input { min-height: 44px; }
input, textarea, button { font: inherit; color: var(--ink); background: var(--paper); border: 1px solid #84969f; border-radius: 3px; padding: 10px 12px; }
button { cursor: pointer; min-height: 44px; }
button:hover { background: #3a4a56; }
button:disabled { opacity: .6; cursor: wait; }
.data-state { padding: 22px 0; color: var(--accent); }
.board-section { margin-block: 34px; }
.board-section h3 { font: 1.5rem var(--serif); }
.empty-board { background: #22303a; padding: 22px; color: var(--muted); }
.empty-board strong { display: block; color: var(--ink); margin-bottom: 6px; }
.table-wrap { overflow-x: auto; }
.model-table { border-collapse: collapse; width: 100%; font-size: .85rem; }
.model-table th, .model-table td { text-align: left; padding: 12px 10px; border-bottom: 1px solid var(--line); vertical-align: top; }
.model-table th { color: var(--accent); }
.model-table td { font-variant-numeric: tabular-nums; }
.model-table small { display: block; color: var(--muted); }
.category-guide { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px 24px; padding: 20px 0; }
.category-guide dt { font-weight: 600; color: #f3dfbd; }
.category-guide dd { margin: 3px 0 0; color: var(--muted); font-size: .85rem; }
.method-details { padding: 18px 0; border-top: 1px solid var(--line); }
.method-details summary { cursor: pointer; color: var(--accent); }
.method-details p { margin-top: 16px; }
.feedback-section { margin-top: 40px; padding-top: 12px; border-top: 1px solid var(--line); }
.feedback-section form { display: grid; gap: 16px; max-width: 620px; }
.feedback-section textarea, .feedback-section input { width: 100%; }
.feedback-section button { justify-self: start; }
.bot-trap { position: absolute; left: -10000px; }
::selection { background: #b8d2dd; color: #151d27; }
* { scrollbar-color: #84969f #28343e; }
@media(max-width: 760px) { .tool-controls { gap: 16px; } .tool-controls label { flex: 1 1 160px; } .hunt-mark { width: 44px; height: 44px; } }
