.ruc-tool { max-width: 1100px; margin: 0 auto; padding: 24px; }
.ruc-tool h1 { margin: 0 0 10px; }
.ruc-tool form { display: flex; flex-wrap: wrap; align-items: end; gap: 12px; margin: 24px 0 16px; }
.ruc-tool form label { flex: 1 1 260px; display: grid; gap: 8px; }
.ruc-tool input[type="search"] { padding: 12px; width: 100%; box-sizing: border-box; }
.ruc-results { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 16px; margin: 20px 0; }
.ruc-result { border: 1px solid var(--color-border-subtle); border-radius: 12px; padding: 18px; background: var(--color-bg-surface, white); overflow-wrap: anywhere; }
.ruc-result p, .ruc-suggestion p { margin: 6px 0; font-size: 13px; }
.ruc-note { color: var(--color-text-secondary); font-size: 12px; }
.ruc-suggestion { margin-top: 8px; font-size: 12px; overflow-wrap: anywhere; }
.ruc-confirm { display: flex; align-items: start; gap: 8px; margin-top: 10px; font-size: 12px; line-height: 1.4; }
.ruc-confirm input { flex: 0 0 auto; }
.ruc-pagination { display: flex; justify-content: space-between; gap: 12px; }
.ruc-pagination button:disabled { opacity: .45; cursor: default; }
@media (max-width: 600px) { .ruc-tool { padding: 16px; } }
