:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Sans,Yu Gothic,sans-serif;color-scheme:light;color:#1f2937;background:#f8fafc}*{box-sizing:border-box}body{margin:0}a{color:#2563eb;text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1200px;margin:0 auto;padding:24px}header.top{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:#fff;border-bottom:1px solid #e5e7eb}header.top h1{font-size:18px;margin:0}header.top .user{font-size:13px;color:#6b7280;display:flex;gap:12px;align-items:center}button.primary,.btn-primary{background:#2563eb;color:#fff;border:0;border-radius:6px;padding:8px 14px;font-size:14px;cursor:pointer}button.primary:hover,.btn-primary:hover{background:#1d4ed8}button.primary:disabled{opacity:.5;cursor:not-allowed}button.secondary,.btn-secondary{background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;padding:7px 13px;font-size:14px;cursor:pointer}button.danger{background:#fff;color:#b91c1c;border:1px solid #fecaca;border-radius:6px;padding:7px 13px;cursor:pointer}button.danger:hover{background:#fef2f2}table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}th,td{padding:10px 12px;text-align:left;font-size:13px;border-bottom:1px solid #f1f5f9}th{background:#f9fafb;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none}th:hover{background:#f3f4f6}tr:last-child td{border-bottom:0}.card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin-bottom:16px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.muted{color:#6b7280;font-size:13px}.tag{display:inline-block;padding:2px 8px;background:#eef2ff;color:#4338ca;border-radius:999px;font-size:12px;margin-right:4px}.score{font-weight:600}.rank{font-variant-numeric:tabular-nums}.empty{color:#9ca3af;font-style:italic}.form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.form-row label{font-size:13px;font-weight:600}.form-row input[type=text],.form-row input[type=number],.form-row select{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.checkbox-group{display:flex;flex-wrap:wrap;gap:12px}.checkbox-group label{font-weight:400;display:flex;align-items:center;gap:6px}.tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid #e5e7eb}.tab{padding:8px 14px;cursor:pointer;border-bottom:2px solid transparent;font-size:14px}.tab.active{border-color:#2563eb;color:#2563eb;font-weight:600}.kw-details>summary{list-style:none;cursor:pointer;outline:none}.kw-details>summary::-webkit-details-marker{display:none}.kw-details>summary .kw-label{font-weight:500;color:#111827}.kw-details>summary .kw-chevron{color:#9ca3af;font-size:11px;margin-left:6px;transition:transform .15s ease;display:inline-block}.kw-details[open]>summary .kw-chevron{transform:rotate(90deg)}.kw-details>summary:hover .kw-label{color:#2563eb}.kw-detail-body{margin-top:8px;padding-left:4px;font-size:12px;color:#6b7280}.kw-detail-body .kw-source{margin:4px 0}.kw-detail-body .kw-source-keyword{color:#374151}.signin-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f8fafc}.signin-card{padding:40px;background:#fff;border-radius:12px;box-shadow:0 4px 16px #0000000d;text-align:center}.signin-card h1{margin:0 0 24px}
