.search-body{background:#061018;color:#dcecf4;min-height:100vh}.search-app{max-width:1500px;margin:0 auto;padding:12px 16px 30px}.search-topbar{margin-bottom:12px}.topnav{display:flex;align-items:center;gap:8px}.nav-link{color:#82a5b4;text-decoration:none;border:1px solid #1c4052;border-radius:8px;padding:8px 12px;font-size:11px;background:#091720}.nav-link:hover,.nav-link.active{color:#8ce8ff;border-color:#28677d;background:#0b2634}.search-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:34px 8px 26px}.hero-copy{max-width:850px}.eyebrow{display:block;font-size:9px;letter-spacing:.16em;color:#4fb9d3;margin-bottom:9px}.hero-copy h2{font-size:32px;font-weight:600;letter-spacing:-.02em;margin:0 0 10px}.hero-copy p{max-width:800px;color:#7896a4;font-size:12px;line-height:1.8}.hero-stats{display:flex;border:1px solid #173747;border-radius:12px;background:rgba(8,24,34,.75);overflow:hidden;min-width:390px}.hero-stats>div{padding:15px 20px;min-width:125px;border-left:1px solid #173747}.hero-stats>div:first-child{border-left:0}.hero-stats strong{display:block;font-size:21px}.hero-stats span{display:block;color:#718f9c;font-size:9px;margin-top:4px}.search-command{padding:14px;margin-bottom:12px}.main-query{height:48px;display:flex;align-items:center;gap:8px}.query-icon{font-size:25px;color:#49c9e6;padding:0 4px}.main-query input{height:100%;flex:1;font-size:13px;background:#07141d;border-color:#25556b}.primary-search{height:100%;padding:0 22px;background:#0b4b61;border-color:#2a8199;color:#9eeeff;font-weight:600}.quick-topics{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:9px 2px 0 40px}.quick-topics>span{font-size:9px;color:#627f8d;margin-right:3px}.quick-topics button{padding:4px 8px;font-size:9px;background:#091922;color:#759aaa;border-color:#1a3b4b}.search-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:12px}.search-filters{padding:14px;align-self:start;position:sticky;top:12px}.filter-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid #173243}.filter-head strong{display:block;font-size:13px}.filter-head span{display:block;font-size:9px;color:#6f8d9a;margin-top:3px}.ghost-btn{font-size:9px;padding:5px 8px;background:transparent}.filter-field{display:block;padding:12px 0;border-bottom:1px solid rgba(23,50,67,.78)}.filter-field>span{display:block;color:#a8bfca;font-size:10px;margin-bottom:7px}.filter-field input,.filter-field select{width:100%;font-size:10px;background:#081720}.filter-field small{display:block;color:#5f7b88;font-size:8px;line-height:1.55;margin-top:6px}.year-range{display:grid;grid-template-columns:1fr 14px 1fr;align-items:center;gap:4px}.year-range span{text-align:center;color:#476775}.filter-note{font-size:8px;color:#607e8c;line-height:1.7;padding:12px 2px 2px}.results-panel{min-height:690px}.results-toolbar{min-height:67px;border-bottom:1px solid #173243;padding:13px 15px;display:flex;justify-content:space-between;align-items:center;gap:16px}.results-toolbar strong{display:block;font-size:14px}.results-toolbar span{display:block;font-size:9px;color:#6f8d9b;margin-top:4px}.result-actions{display:flex;gap:7px}.result-actions select{font-size:10px}.active-filters{display:flex;gap:6px;flex-wrap:wrap;padding:10px 15px 0}.filter-chip{font-size:9px;color:#8fc3d5;border:1px solid #205269;background:#0a2330;padding:4px 7px;border-radius:999px}.policy-results{padding:4px 15px 8px}.policy-card{padding:17px 2px;border-bottom:1px solid #173243}.policy-card-head{display:flex;align-items:flex-start;gap:9px}.policy-card h3{font-size:14px;line-height:1.55;font-weight:600;margin:0;flex:1}.grade-badge{font-size:9px;padding:3px 6px;border-radius:5px;border:1px solid #2a7187;color:#72dcff;margin-top:2px;white-space:nowrap}.grade-badge.a{border-color:#247c5a;color:#63f0bb}.grade-badge.c{border-color:#665c2f;color:#ddc96e}.grade-badge.r{border-color:#653a42;color:#d58994}.policy-meta{display:flex;gap:7px;flex-wrap:wrap;color:#698896;font-size:9px;margin:7px 0}.policy-meta span:after{content:'·';margin-left:7px;color:#31505e}.policy-meta span:last-child:after{display:none}.policy-summary{font-size:10px;color:#87a1ad;line-height:1.72;max-width:1050px;margin:8px 0}.policy-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.policy-tags span{font-size:8px;color:#78adbf;border:1px solid #1b4253;border-radius:999px;padding:3px 6px}.policy-actions{display:flex;gap:8px;margin-top:11px}.policy-actions button,.policy-actions a{font-size:9px;text-decoration:none;border:1px solid #24576b;color:#8edcf4;background:#0a2634;border-radius:6px;padding:6px 8px;cursor:pointer}.policy-actions a{color:#7e9fab;background:#09161f;border-color:#1c3947}.search-empty{padding:90px 20px;text-align:center;color:#668694;font-size:11px}.pager{padding:14px 15px 18px;display:flex;justify-content:center;align-items:center;gap:5px}.pager button{font-size:9px;min-width:31px;height:29px;padding:0 8px;background:#081821}.pager button.active{border-color:#37a3c0;color:#8eebff;background:#0b3140}.pager button:disabled{opacity:.35;cursor:not-allowed}.detail-backdrop{position:fixed;inset:0;background:rgba(0,7,11,.67);z-index:100}.detail-drawer{position:fixed;right:0;top:0;bottom:0;width:min(680px,92vw);background:#07141d;border-left:1px solid #28546a;z-index:101;transform:translateX(102%);transition:.2s ease;box-shadow:-25px 0 70px rgba(0,0,0,.45);display:flex;flex-direction:column}.detail-drawer.open{transform:none}.drawer-head{min-height:72px;border-bottom:1px solid #173243;padding:15px 18px;display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.drawer-head strong{display:block;font-size:14px;line-height:1.45;max-width:560px}.drawer-head button{font-size:22px;width:34px;height:34px;padding:0;background:#091a24}.drawer-body{padding:18px;overflow:auto}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:15px}.detail-kv{padding:9px 10px;border:1px solid #173849;border-radius:8px;background:#081923}.detail-kv span{display:block;font-size:8px;color:#658391}.detail-kv strong{display:block;font-size:10px;margin-top:4px;word-break:break-word}.detail-section{margin-top:16px}.detail-section h4{font-size:10px;color:#8fbdcc;margin-bottom:7px}.detail-section p,.detail-text{font-size:10px;line-height:1.82;color:#8aa3af;white-space:pre-wrap;word-break:break-word}.detail-link{display:inline-block;margin-top:15px;color:#8ceaff;text-decoration:none;border:1px solid #276178;background:#0a2937;padding:8px 10px;border-radius:7px;font-size:9px}.raw-warning{padding:8px 10px;background:#241c0a;border:1px solid #5d4d1f;color:#cdb869;border-radius:7px;font-size:9px;line-height:1.6;margin-bottom:12px}
@media(max-width:1000px){.search-layout{grid-template-columns:1fr}.search-filters{position:static}.hero-stats{min-width:0}.search-hero{align-items:flex-start;flex-direction:column}.search-filters{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.filter-head,.filter-note{grid-column:1/-1}}
@media(max-width:650px){.search-app{padding:8px}.search-topbar{align-items:flex-start}.topnav{width:100%;margin-top:8px}.search-hero{padding:22px 2px}.hero-copy h2{font-size:24px}.hero-stats{width:100%}.hero-stats>div{min-width:0;flex:1;padding:12px}.main-query{height:auto;flex-wrap:wrap}.query-icon{display:none}.main-query input{height:44px;flex-basis:100%}.primary-search{height:40px;width:100%}.quick-topics{padding-left:0}.search-filters{display:block}.results-toolbar{align-items:flex-start;flex-direction:column}.result-actions{width:100%}.result-actions select{flex:1}.detail-grid{grid-template-columns:1fr}}
/* v0.5.2 continent -> country two-level geography selector */
.geo-filter{padding-bottom:13px}.geo-step{display:grid;grid-template-columns:24px 1fr;gap:8px;align-items:center;margin-top:8px}.geo-step>b{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;border:1px solid #286178;background:#0a2532;color:#7de6ff;font-size:9px}.geo-step>div{min-width:0}.geo-step small{display:block;margin:0 0 5px;color:#7895a2;font-size:8px}.geo-step select{width:100%}.geo-step select:disabled{opacity:.48;cursor:not-allowed}.geo-hint{margin-top:8px!important;padding:7px 8px;border:1px solid rgba(56,217,255,.1);border-radius:7px;background:rgba(7,20,29,.55)}
