#search{--search-accent:#006c47;z-index:1100;top:0;left:0;height:100vh;height:100dvh;visibility:hidden;opacity:0;transform:translateY(-16px);transition:opacity .2s,transform .2s,visibility .2s;background:var(--search-accent);color:white;overflow:hidden}
body.color-1 #search{--search-accent:#0070ad}
#search.open{visibility:visible;opacity:1;transform:translateY(0)}
#search *{box-sizing:border-box}
#search .search-shell{width:100%;max-width:1040px;height:100%;margin:auto;padding:32px 32px 0;display:flex;flex-direction:column}
#search .search-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
#search .search-brand{font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
#search button{font:inherit;cursor:pointer}
#search .search-close{display:flex;gap:10px;align-items:center;background:transparent;color:white;border:1px solid #ffffff70;border-radius:40px;padding:9px 15px;font-size:14px}
#search .search-close span:last-child{font-size:24px;line-height:1;font-weight:300}
#search .search-title{font-size:clamp(28px,4vw,42px);font-weight:500;line-height:1.2;letter-spacing:-.025em;margin:0 0 10px}
#search .search-intro{font-size:15px;line-height:1.5;margin:0 0 22px;color:#ffffffe0}
#search .search-input-wrap{display:flex;align-items:center;gap:14px;background:white;border:2px solid transparent;border-radius:12px;padding:0 18px;box-shadow:0 8px 24px #00342118}
#search .search-input-wrap:focus-within{outline:3px solid #ffffff60;outline-offset:4px}
#search .search-input-icon{width:21px;height:21px;color:var(--search-accent);flex-shrink:0}
#search #search-query{width:100%;min-width:0;height:64px;padding:0;border:0!important;background:transparent!important;color:#173e30;font:inherit;font-size:20px;font-weight:500;outline:none;box-shadow:none}
#search #search-query::placeholder{color:#73867b;font-weight:400;font-size:17px}
#search .search-clear{display:none;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border:0;border-radius:50%;background:#edf2ef;color:#294d3c;font-size:22px}
#search .search-clear.visible{display:flex}
#search .search-meta{font-size:13px;line-height:1.5;color:#ffffffe0;min-height:42px;margin:0;padding:14px 2px 10px}
#search .search-result{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff70 transparent;display:flex;flex-direction:column;gap:12px;padding:4px 6px 32px 2px}
#search .search-card{display:flex;align-items:center;gap:22px;padding:16px;border:1px solid #ffffff30;border-radius:12px;background:#f9fbfa;color:#173e30;text-decoration:none;transition:background .16s,transform .16s;flex-shrink:0}
#search .search-card:hover{background:white;transform:translateY(-2px)}
#search .search-card:focus-visible,#search button:focus-visible,#search .search-suggestion:focus-visible{outline:3px solid #c9e69e;outline-offset:3px}
#search .search-card-media{width:144px;height:108px;flex-shrink:0;border-radius:7px;overflow:hidden;background:#e7eeea}
#search .search-thumb{display:block;width:100%;height:100%;object-fit:cover}
#search .search-card-body{flex:1;min-width:0}
#search .search-card-category{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;line-height:1.4;color:var(--search-accent);margin-bottom:5px}
#search .search-card-title{font-size:23px;font-weight:500;line-height:1.25;margin:0 0 7px;letter-spacing:-.015em;color:#173e30;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#search .search-card-description{font-size:14px;font-weight:400;line-height:1.55;margin:0;color:#52665b;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#search .search-card-arrow{font-size:25px;color:var(--search-accent);padding:0 8px;flex-shrink:0}
#search .highlight{background:#e1edd0;color:inherit;font-weight:600;border-radius:2px;padding:0 1px}
#search .search-empty{padding:32px 0;text-align:center;font-size:17px;line-height:1.6;color:white}
#search .search-empty p{margin:0 0 8px}
#search .search-empty small{font-size:14px;color:#ffffffe0}
#search .search-suggestions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:18px}
#search .search-suggestion,#search .search-retry{border:1px solid #ffffff80;background:transparent;color:white;border-radius:30px;padding:9px 17px;font-size:14px}
#search .search-spinner{width:26px;height:26px;border:2px solid #ffffff50;border-top-color:white;border-radius:50%;animation:search-spin .7s linear infinite;margin:24px auto 14px}
@keyframes search-spin{to{transform:rotate(360deg)}}
@media(max-width:600px){#search .search-shell{padding:18px 16px 0}#search .search-topbar{margin-bottom:22px}#search .search-brand{font-size:10px}#search .search-intro{font-size:14px;margin-bottom:18px}#search #search-query{height:56px;font-size:18px}#search #search-query::placeholder{font-size:14px}#search .search-input-wrap{padding:0 12px;gap:10px}#search .search-card{gap:12px;padding:12px}#search .search-card-media{width:88px;height:90px}#search .search-card-title{font-size:18px;margin-bottom:5px}#search .search-card-description{font-size:12px;line-height:1.5}#search .search-card-category{font-size:9px}#search .search-card-arrow{display:none}#search .search-result{gap:10px;padding-right:2px}#search .search-close{font-size:12px;padding:8px 11px}}
@media(prefers-reduced-motion:reduce){#search,#search .search-card{transition:none}#search .search-spinner{animation:none}}
