:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#17212b;background:#f2f5f7;line-height:1.5}*{box-sizing:border-box}body{margin:0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 2rem;background:#102b3f;color:white}.brand{font-size:1.35rem;font-weight:780}.subtitle{opacity:.76}.session{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap}.session a{color:#dff4ff;font-weight:700}main{max-width:1500px;margin:0 auto;padding:1.35rem}.panel{background:white;border:1px solid #d6e0e6;border-radius:12px;padding:1.2rem;box-shadow:0 5px 18px rgba(16,43,63,.06)}.narrow{max-width:480px;margin:3rem auto}label{display:block;font-weight:650;margin-bottom:.85rem}input{display:block;width:100%;margin-top:.35rem;padding:.72rem;border:1px solid #b9c7d0;border-radius:7px;font:inherit}button{border:0;border-radius:7px;padding:.72rem 1rem;background:#156b9b;color:white;font-weight:700;cursor:pointer}button.secondary{background:#e4edf2;color:#173247}.hidden{display:none!important}.searchbar{display:grid;grid-template-columns:1fr auto;gap:.65rem;margin:1rem 0}.layout{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.4fr);gap:1rem}.results{display:grid;gap:.65rem;max-height:760px;overflow:auto;align-content:start}.card{border:1px solid #dbe4ea;border-left:5px solid #6951a3;border-radius:8px;padding:.9rem;cursor:pointer;background:#fbfcfd}.card:hover{border-color:#86a7ba}.card strong{display:block}.card p{margin:.45rem 0 0}.meta,.hint{color:#637785;font-size:.88rem}.details{border:1px solid #dbe4ea;border-radius:10px;padding:1rem;background:white}.panel-heading{display:flex;justify-content:space-between;gap:1rem}.section{margin:1rem 0;padding:.9rem;border-radius:8px;background:#f6f8fa;border:1px solid #dce5eb}.source{border-left:4px solid #6951a3}.interpretation{border-left:4px solid #277c4e}.message{min-height:1.4rem;margin-top:.6rem;white-space:pre-wrap}.message.error{color:#a12626}.message.success{color:#247a43}@media(max-width:900px){.layout,.searchbar{grid-template-columns:1fr}.topbar{padding:1rem}main{padding:1rem}}
