.keyword-shell{padding:88px 0;background:#eef2ef;color:#101511}
.keyword-tool{position:relative;border:1px solid #cfd7d1;border-radius:25px;background:#fff;box-shadow:0 25px 70px rgba(7,18,11,.1);overflow:hidden}
.keyword-tool:before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,#1166da,#c7ff34,#75f0bd,#1166da);background-size:200% 100%;animation:scanBar 4s linear infinite}
.tool-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px 34px;border-bottom:1px solid #e1e7e2}
.tool-head h2{font-size:26px;margin:0}.api-live{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #dbe2dd;border-radius:100px;color:#526058;font:700 10px Manrope;letter-spacing:.08em}.api-live i{width:8px;height:8px;border-radius:50%;background:#04c45b;box-shadow:0 0 0 5px rgba(4,196,91,.12);animation:techPulse 1.8s infinite}
.keyword-form{padding:34px}.keyword-form label{display:block;margin-bottom:11px;font-size:15px;font-weight:800}.keyword-input{width:100%;min-height:138px;padding:18px;border:1px solid #cdd6cf;border-radius:14px;background:#f7f9f7;color:#111;font:500 16px/1.7 "Noto Sans KR";resize:vertical;outline:none}.keyword-input:focus{border-color:#6ea510;background:#fff;box-shadow:0 0 0 4px rgba(199,255,52,.28)}
.keyword-presets{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:13px}.keyword-presets span{margin-right:3px;color:#69746c;font-size:11px;font-weight:800}.keyword-presets button{padding:8px 11px;border:1px solid #d4dcd6;border-radius:100px;background:#fff;color:#38433b;font-size:12px;cursor:pointer;transition:.2s}.keyword-presets button:hover{border-color:#6d9900;background:#efffc7;color:#263600;transform:translateY(-2px)}
.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px}.form-note{color:#78827b;font-size:12px;line-height:1.6}.form-actions{display:flex;align-items:center;gap:11px}.related{display:flex;align-items:center;gap:7px;padding:13px 14px;border:1px solid #d7ded8;border-radius:12px;font-size:13px;font-weight:700}.related input{accent-color:#0e994d}.search-button{display:flex;align-items:center;gap:12px;padding:14px 20px;border:0;border-radius:12px;background:#0b0d0c;color:#fff;font-weight:800;cursor:pointer;box-shadow:0 10px 22px rgba(0,0,0,.14)}.search-button b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#c7ff34;color:#111}.search-button:hover{transform:translateY(-2px)}
.tool-error{margin:0 34px 30px;padding:14px 16px;border:1px solid #ffc9cf;border-radius:12px;background:#fff3f4;color:#b52032;font-weight:700;line-height:1.6}.result{margin:0 34px 34px;border:1px solid #dce2dd;border-radius:16px;overflow:hidden}.result-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 20px;background:#f6f8f6}.result-head strong span{color:#548000}.result-actions{display:flex;gap:8px}.result-actions button{padding:9px 12px;border:1px solid #ccd4ce;border-radius:9px;background:#fff;cursor:pointer}.table-wrap{overflow:auto;max-height:65vh}.result table{width:100%;min-width:950px;border-collapse:collapse}.result th,.result td{padding:13px 14px;border-bottom:1px solid #e8ece9;text-align:right;white-space:nowrap;font-size:13px}.result th{position:sticky;top:0;background:#121713;color:#dbe2dd;font-size:11px}.result th:nth-child(2),.result td:nth-child(2){text-align:left}.result td:nth-child(2){font-weight:800}.result tbody tr:hover{background:#f4fbed}
.data-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:34px;background:#dce2dd;border:1px solid #dce2dd}.data-flow div{position:relative;padding:22px;background:#fff}.data-flow b{display:block;color:#548000;font:800 10px Manrope;margin-bottom:8px}.data-flow span{font-size:14px;font-weight:700}.data-flow div:not(:last-child):after{content:"→";position:absolute;right:-8px;top:50%;z-index:2;color:#548000}
@keyframes scanBar{to{background-position:-200% 0}}
@media(max-width:760px){.keyword-shell{padding:60px 0}.tool-head,.form-bottom{align-items:stretch;flex-direction:column}.keyword-form{padding:24px 18px}.tool-error,.result{margin-left:18px;margin-right:18px}.form-actions{align-items:stretch;flex-direction:column}.search-button{justify-content:center}.data-flow{grid-template-columns:1fr 1fr}.data-flow div:nth-child(2):after{display:none}}
@media(prefers-reduced-motion:reduce){.keyword-tool:before,.api-live i{animation:none}}

/* Responsive tool refinement */
.keyword-shell{padding:112px 0;background:radial-gradient(circle at 8% 8%,rgba(17,102,218,.08),transparent 26%),radial-gradient(circle at 92% 90%,rgba(0,148,96,.09),transparent 28%),#eef2ef}
.keyword-tool{border-color:#cbd5cd;border-radius:28px;box-shadow:0 32px 90px rgba(7,18,11,.13)}
.tool-head{padding:32px 38px;background:linear-gradient(180deg,#fff,#fbfdfb)}.tool-head h2{letter-spacing:-.04em}
.api-live{background:#f8fbf8}
.keyword-form{padding:38px}.keyword-input{border-radius:16px;background:#f5f8f5;transition:border-color .2s,background .2s,box-shadow .2s}
.keyword-presets button{min-height:36px}.keyword-presets button:focus-visible{outline:3px solid #c7ff34;outline-offset:2px}
.related,.search-button{min-height:48px}.search-button{transition:transform .25s,box-shadow .25s}.search-button:hover{box-shadow:0 15px 30px rgba(0,0,0,.18)}
.result{border-radius:18px;box-shadow:0 12px 30px rgba(8,18,11,.06)}.result-head{min-height:68px}
.result-actions button{min-height:40px;font-weight:700}
.table-wrap{scrollbar-color:#7b867e #edf1ee;scrollbar-width:thin}.result tbody tr{transition:background .18s}
.data-flow{border-radius:18px;overflow:hidden}.data-flow div{min-height:100px}.data-flow b{letter-spacing:.08em}
@media(max-width:760px){
  .keyword-shell{padding:76px 0}.keyword-tool{border-radius:20px}
  .tool-head{gap:15px;padding:24px 20px}.tool-head h2{font-size:23px}.api-live{width:max-content;padding:9px 12px}
  .keyword-form{padding:25px 18px}.keyword-input{min-height:124px;padding:16px;font-size:15px}
  .keyword-presets{gap:7px}.keyword-presets span{width:100%;margin-bottom:2px}.keyword-presets button{flex:1 1 calc(50% - 7px)}
  .form-bottom{gap:16px}.form-actions{gap:9px}.related,.search-button{width:100%}
  .tool-error,.result{margin-right:12px;margin-left:12px}.tool-error{margin-bottom:22px}
  .result{margin-bottom:24px;border-radius:15px}.result-head{align-items:stretch;flex-direction:column;padding:16px}.result-actions{width:100%}.result-actions button{flex:1}
  .result th,.result td{padding:12px 11px}
  .data-flow{margin-top:24px;border-radius:15px}.data-flow div{min-height:88px;padding:18px 15px}
}
@media(max-width:390px){
  .keyword-presets button{flex-basis:100%}.data-flow{grid-template-columns:1fr}.data-flow div:not(:last-child):after{display:none}
}
