.suneng-search-trigger { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; flex:0 0 44px; border:1px solid #c5dce9; border-radius:50%; color:#082f5c; background:transparent; text-decoration:none; transition:background .18s ease,border-color .18s ease; }
.suneng-search-trigger:hover { background:#edf8fe; border-color:#087fc2; }
.suneng-search-trigger svg { stroke-width:2.6; stroke-linecap:round; stroke-linejoin:round; }
body.home .site-header:not(.is-scrolled) .suneng-search-trigger { color:#fff; border-color:rgba(255,255,255,.65); background:rgba(8,47,92,.16); }
body.home .site-header:not(.is-scrolled) .suneng-search-trigger:hover { color:#fff; border-color:#fff; background:rgba(255,255,255,.16); }
body.home .site-header:not(.is-scrolled) .suneng-search-trigger:focus-visible { outline-color:#fff; }
.suneng-search-trigger:focus-visible,.suneng-search-dialog :focus-visible,.suneng-search-page :focus-visible { outline:3px solid #087fc2; outline-offset:4px; }
.suneng-search-dialog { box-sizing:border-box; width:min(680px,calc(100% - 40px)); max-height:calc(100dvh - 40px); margin:auto; padding:46px 44px 44px; overflow:auto; border:0; border-radius:8px; background:#fff; color:#082f5c; box-shadow:0 24px 80px rgba(3,22,42,.2); }
.suneng-search-dialog:not([open]) { display:none; }
.suneng-search-dialog[open] { animation:suneng-search-appear .18s ease-out; }
.suneng-search-dialog::backdrop { background:rgba(4,22,39,.56); }
.suneng-search-close { display:flex; align-items:center; justify-content:center; position:absolute; top:12px; right:12px; width:44px; height:44px; padding:0; border:0; background:none; color:#082f5c; cursor:pointer; }
.suneng-search-dialog h2 { margin:0 36px 16px 0; font-size:32px; line-height:1.2; font-weight:600; }
.suneng-search-dialog > p { margin:0 0 28px; color:#536879; font-size:16px; line-height:1.6; }
.suneng-search-form { width:100%; }
.suneng-search-form label { display:block; margin-bottom:10px; color:#082f5c; font-size:14px; font-weight:500; }
.suneng-search-field { display:flex; align-items:center; gap:8px; padding:6px; border:1px solid #a8c5d8; border-radius:4px; background:#fff; }
.suneng-search-field:focus-within { border-color:#087fc2; box-shadow:0 0 0 2px rgba(8,127,194,.12); }
.suneng-search-field input[type="search"] { box-sizing:border-box; flex:1; min-width:0; width:100%; min-height:46px; padding:8px 12px; border:0; border-radius:0; background:#fff; color:#082f5c; font-family:inherit; font-size:17px; font-weight:400; line-height:1.5; outline:0; box-shadow:none; }
.suneng-search-field input::placeholder { color:#677d8d; opacity:1; }
.suneng-search-field button { display:flex; flex:0 0 46px; align-items:center; justify-content:center; width:46px; height:46px; border:0; border-radius:3px; background:#087fc2; color:#fff; cursor:pointer; }
.suneng-search-field button:hover { background:#005e9e; }
.suneng-search-page { color:#082f5c; background:#fff; }
.suneng-search-intro { padding:64px 0 40px; }
.suneng-search-intro-layout { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(320px,.9fr); align-items:center; gap:64px; }
.suneng-search-intro h1 { margin:0; font-size:clamp(32px,2.8vw,44px); line-height:1.25; font-weight:600; overflow-wrap:anywhere; }
.suneng-search-intro h1 span { color:#087fc2; }
.suneng-search-count { margin:16px 0 0; color:#536879; font-size:17px; }
.suneng-search-results { padding-top:16px; padding-bottom:88px; }
.suneng-search-group { scroll-margin-top:144px; }
.suneng-search-group + .suneng-search-group { margin-top:80px; }
.suneng-search-group > h2 { margin:0; padding-bottom:24px; border-bottom:1px solid #c5dce9; font-size:32px; line-height:1.3; font-weight:600; }
.suneng-search-group > h2 span { color:#536879; font-weight:400; }
.suneng-search-card { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr); align-items:center; gap:48px; padding:36px 0; border-bottom:1px solid #dce8ef; }
.suneng-search-result-image { display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:16/10; overflow:hidden; border-radius:4px; background:#f4f8fb; }
.suneng-search-result-image img { display:block; width:100%; height:100%; object-fit:cover; }
.suneng-search-result-image.is-product { box-sizing:border-box; padding:16px; background:#fff; }
.suneng-search-result-image.is-product img { object-fit:contain; }
.suneng-search-result-copy { min-width:0; }
.suneng-search-card.has-no-image { grid-template-columns:1fr; }
.suneng-search-card.has-no-image .suneng-search-result-copy { max-width:880px; }
.suneng-search-card h3 { margin:0 0 14px; font-size:clamp(23px,1.65vw,28px); line-height:1.35; font-weight:600; overflow-wrap:anywhere; }
.suneng-search-card h3 a { color:#082f5c; text-decoration:none; }
.suneng-search-card h3 a:hover { color:#087fc2; }
.suneng-search-card time,.suneng-search-result-type { display:block; margin-bottom:12px; color:#536879; font-size:14px; }
.suneng-search-card p { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; margin:0 0 24px; color:#4e6e89; font-size:17px; line-height:1.65; }
.suneng-search-result-action { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:44px; padding:10px 20px; border-radius:4px; background:#005e9e; color:#fff; font-size:14px; font-weight:600; text-decoration:none; }
.suneng-search-result-action:hover { background:#082f5c; color:#fff; }
.suneng-search-pagination { margin-top:28px; }
.suneng-search-pagination ul { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin:0; padding:0; list-style:none; }
.suneng-search-pagination li { margin:0; }
.suneng-search-pagination a,.suneng-search-pagination span { display:inline-flex; box-sizing:border-box; min-width:44px; min-height:44px; align-items:center; justify-content:center; padding:8px 14px; border:1px solid #c5dce9; border-radius:3px; color:#082f5c; text-decoration:none; }
.suneng-search-pagination .current { background:#082f5c; color:#fff; border-color:#082f5c; }
.suneng-search-pagination a:hover { background:#edf8fe; }
.suneng-search-pagination .dots { border-color:transparent; }
.suneng-search-empty { max-width:720px; padding:8px 0 30px; }
.suneng-search-empty h2 { margin:0 0 16px; font-size:26px; line-height:1.3; }
.suneng-search-empty p { color:#536879; font-size:17px; line-height:1.7; }
.suneng-search-empty > div { display:flex; flex-wrap:wrap; gap:18px 32px; margin-top:24px; }
.suneng-search-empty a { color:#005e9e; font-weight:600; }
@keyframes suneng-search-appear { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@media(min-width:1041px) and (max-width:1439px) {
  body.home .site-header.site-header-overlay,body:not(.home) .jk-header { gap:12px; }
  body.home .site-header.site-header-overlay nav,body:not(.home) .jk-nav ul { gap:12px; }
}
@media(max-width:1040px) {
  .suneng-search-intro-layout { grid-template-columns:1fr; gap:28px; }
  .suneng-search-intro .suneng-search-form { max-width:720px; }
  .suneng-search-card { gap:32px; }
}
@media(max-width:720px) {
  body.home .site-header.site-header-overlay,body:not(.home) .jk-header { gap:10px; }
  .suneng-search-trigger { width:40px; height:40px; flex-basis:40px; }
  .suneng-search-dialog { width:calc(100% - 28px); padding:48px 22px 28px; }
  .suneng-search-dialog h2 { font-size:27px; }
  .suneng-search-dialog > p { margin-bottom:22px; }
  .suneng-search-field input[type="search"] { padding-left:6px; font-size:16px; }
  .suneng-search-intro { padding:36px 0 32px; }
  .suneng-search-results { padding-top:8px; padding-bottom:48px; }
  .suneng-search-group + .suneng-search-group { margin-top:56px; }
  .suneng-search-group > h2 { font-size:27px; padding-bottom:20px; }
  .suneng-search-card { grid-template-columns:1fr; gap:24px; padding:28px 0; }
  .suneng-search-card h3 { font-size:23px; }
  .suneng-search-card p { font-size:16px; }
  .suneng-search-result-image { max-height:300px; }
  .suneng-search-pagination ul { gap:6px; }
  .suneng-search-pagination a,.suneng-search-pagination span { padding:8px 10px; }
}
@media(prefers-reduced-motion:reduce) { .suneng-search-dialog[open] { animation:none; } .suneng-search-trigger { transition:none; } }
