/* 키워드 분석 — 고유 레이아웃만 (박스/배경은 style_tools_base.css 통일) */
.wrap{ max-width:100%; padding:0 0 70px; }

.kw-head{ margin-bottom:20px; }
.kw-title{ font-size:38px; font-weight:800; margin:0; letter-spacing:-.02em; }
.kw-sub{ margin:8px 0 0; color:#6b7280; font-size:13px; }

.kw-form{ display:flex; gap:8px; max-width:640px; margin-bottom:10px; }
.kw-input{ flex:1; padding:12px 15px; border:1.5px solid #e5e7eb; border-radius:10px; font-size:14px; }
.kw-go{ background:#111827; color:#fff; border:none; padding:12px 24px; font-weight:700; font-size:14px; cursor:pointer; border-radius:10px; }
.kw-go:hover:not(:disabled){ background:#374151; }
.kw-go:disabled{ background:#cbd5e1; cursor:not-allowed; }
.kw-msg{ min-height:20px; font-size:14px; font-weight:700; color:#6b7280; margin-bottom:14px; }
.kw-msg.err{ color:#dc2626; }

.kw-result{ max-width:880px; }
.kw-summary{ display:flex; gap:26px; border:1.5px solid #e2e8f0; border-radius:14px; padding:16px 22px; margin-bottom:24px; }
.kw-s span{ display:block; font-size:11px; color:#9ca3af; font-weight:700; }
.kw-s b{ font-size:20px; font-weight:800; }

.kw-cols{ display:grid; grid-template-columns:1.4fr 1fr; gap:30px; }
.kw-h3{ font-size:15px; font-weight:800; margin:0 0 14px; }

.kw-bars{ display:grid; gap:11px; }
.kw-bar-label{ display:flex; justify-content:space-between; align-items:baseline; margin-bottom:4px; }
.kw-bar-label span{ font-size:14px; font-weight:700; color:#111827; }
.kw-bar-label em{ font-size:11px; color:#9ca3af; font-style:normal; }
.kw-bar-track{ height:7px; background:#f1f5f9; border-radius:4px; overflow:hidden; }
.kw-bar-fill{ height:100%; background:linear-gradient(90deg,#2563eb,#60a5fa); border-radius:4px; }

.kw-phrases{ display:grid; gap:8px; }
.kw-ph{ display:flex; justify-content:space-between; align-items:center; border:1.5px solid #e2e8f0; border-radius:10px; padding:9px 14px; }
.kw-ph span{ font-size:13px; font-weight:600; color:#111827; }
.kw-ph em{ font-size:11px; color:#9ca3af; font-style:normal; font-weight:700; }
.kw-empty{ color:#9ca3af; font-size:13px; }

@media (max-width:720px){ .kw-cols{ grid-template-columns:1fr; gap:24px; } }
@media (max-width:480px){ .kw-title{ font-size:30px; } .kw-form{ flex-direction:column; } }
