*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:#0b1220;color:#e6ebf5;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,'Helvetica Neue',Arial}
.wrap{max-width:980px;margin:0 auto;padding:20px}
.header h1{margin:12px 0 6px;font-size:22px}
.sub{color:#9fb0c9;margin:0 0 10px}
.box{background:#0f1830;border:1px solid #2a3550;border-radius:16px;padding:14px;margin:14px 0}
.mode-toggle{font-size:13px;margin-bottom:10px;color:#c2cee3}
.row{display:flex;gap:8px}
.input{flex:1;padding:12px;border-radius:12px;border:1px solid #2a3550;background:#0b1220;color:#e6ebf5}
.btn{padding:12px 16px;border-radius:12px;border:1px solid #2a3550;background:#1b2a4a;color:#fff;cursor:pointer}
.btn:hover{background:#22365f}
.hint{color:#8fa3c6;font-size:12px;margin-top:8px}
.ai{background:#0f1830;border:1px solid #2a3550;border-radius:16px;padding:12px;margin:14px 0}
.ai h2{margin:0 0 6px;font-size:16px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.card{position:relative;background:#0f1830;border:1px solid #2a3550;border-radius:16px;padding:12px}
.badge{position:absolute;right:10px;top:8px;font-size:12px;color:#9fb0c9}
.title{display:block;font-size:16px;color:#e6ebf5;text-decoration:none;margin-bottom:6px}
.title:hover{text-decoration:underline}
.snippet{color:#cdd8ea;font-size:13px}
.meta{margin-top:8px;color:#9fb0c9;font-size:12px;display:flex;gap:12px}
.loading,.empty,.error{background:#0f1830;border:1px solid #2a3550;border-radius:12px;padding:12px}
.footer{margin-top:18px;color:#90a3c4;font-size:12px}
@media (max-width:720px){.grid{grid-template-columns:1fr}}
