:root{--paper:#f7f5f0;--ink:#1e2926;--muted:#7b817a;--line:#e5e1d8;--green:#235849;--green-soft:#eaf0e9;--gold:#c39045;--white:#fffefa;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--mono:'DM Mono',monospace}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}.topbar{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(calc((100vw - 1120px)/2),28px);background:rgba(255,254,250,.7)}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:var(--ink);font-weight:700;font-size:14px;letter-spacing:-.02em}.brand-mark{background:var(--green);color:#fff;border-radius:8px;width:29px;height:29px;display:grid;place-items:center;font-family:var(--serif);font-size:17px}.top-note{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px}.local-dot{width:7px;height:7px;background:#5f9e70;border-radius:50%;box-shadow:0 0 0 3px #5f9e7020}main{max-width:900px;margin:0 auto;padding:68px 28px 45px}.intro{margin-bottom:36px}.eyebrow{font:500 10px var(--mono);letter-spacing:.16em;color:var(--green);margin-bottom:19px}.intro h1{font:500 clamp(42px,7vw,62px)/1.05 var(--serif);letter-spacing:-.045em;margin:0 0 16px}.intro h1 em{color:var(--green);font-weight:500}.intro p{font-size:15px;color:#6e756f;margin:0;line-height:1.7}.search-panel{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:17px 18px 15px;box-shadow:0 5px 18px #2b3d3010}.searchbox{height:49px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:0 3px 13px}.search-icon{font-size:27px;color:#718077;transform:rotate(-20deg);line-height:1}.searchbox input{font:400 14px var(--sans);border:0;outline:0;flex:1;min-width:0;color:var(--ink);background:transparent}.searchbox input::placeholder{color:#a0a49d}.searchbox kbd{font:10px var(--mono);padding:5px 7px;border:1px solid var(--line);border-radius:5px;color:#888e86;background:#faf9f6}.filters{display:flex;align-items:end;gap:12px;padding-top:15px}.filters label{display:flex;flex-direction:column;gap:7px;flex:1;min-width:0}.filters label span,.sort-label{font:500 9px var(--mono);letter-spacing:.1em;color:#94988f}.filters select,.sort-label select{font:500 12px var(--sans);color:#424c46;border:1px solid var(--line);border-radius:6px;padding:9px 28px 9px 10px;background:#fbfaf7;outline-color:#a3b7ab;min-width:0}.clear-button{border:0;background:none;color:#778179;font:500 11px var(--sans);padding:10px 4px;white-space:nowrap;cursor:pointer}.clear-button:hover,.footer-note a:hover{color:var(--green)}.results-head{display:flex;align-items:end;justify-content:space-between;margin:39px 0 16px}.results-head h2{font:500 23px var(--serif);margin:0 0 5px;letter-spacing:-.02em}.results-head p{font-size:12px;color:var(--muted);margin:0}.sort-label{display:flex;align-items:center;gap:8px}.sort-label select{padding:7px 26px 7px 9px}.active-filters{display:flex;gap:7px;flex-wrap:wrap;margin:-2px 0 12px}.filter-chip{font:11px var(--sans);background:var(--green-soft);color:var(--green);border-radius:100px;padding:6px 10px}.results{display:grid;gap:10px}.question-card{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:17px 19px 17px;transition:border-color .16s,transform .16s;animation:rise .25s both}.question-card:hover{border-color:#b7c8bd;transform:translateY(-1px)}@keyframes rise{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.card-meta{display:flex;align-items:center;gap:7px;margin-bottom:12px;flex-wrap:wrap}.year-pill{font:500 10px var(--mono);color:var(--gold);background:#fbf3e4;border-radius:4px;padding:4px 6px}.paper-pill,.topic-pill{font:500 10px var(--mono);color:#65736a;background:#f1f2ed;border-radius:4px;padding:4px 6px}.topic-pill{color:var(--green);background:var(--green-soft)}.qnum{margin-left:auto;font:10px var(--mono);color:#a0a49d}.question-text{font:400 14px/1.65 var(--sans);margin:0;color:#313b36}.card-bottom{display:flex;justify-content:flex-end;margin-top:11px}.source-link{font:500 10px var(--mono);color:#7d897f;text-decoration:none;border-bottom:1px solid #d6ddd5;padding-bottom:2px}.source-link:hover{color:var(--green);border-color:var(--green)}.empty-state{text-align:center;background:var(--white);border:1px dashed #d9d6cd;border-radius:12px;padding:45px 18px}.empty-state[hidden]{display:none}.empty-icon{font-size:34px;color:#9aa49b}.empty-state h3{font:500 22px var(--serif);margin:10px 0}.empty-state p{font-size:13px;color:var(--muted)}.empty-state button{border:0;background:var(--green);border-radius:6px;padding:9px 14px;color:white;font:500 12px var(--sans);cursor:pointer;margin-top:8px}.footer-note{border-top:1px solid var(--line);margin-top:40px;padding-top:16px;display:flex;justify-content:space-between;color:#9a9d95;font-size:10px}.footer-note a{color:#7b847b;text-decoration:none}.load-error{border:1px solid #ecd1c5;background:#fff8f4;color:#8b4b3a;padding:15px;border-radius:8px;font-size:13px}
@media(max-width:640px){.topbar{padding:0 18px;height:62px}.top-note{font-size:10px}main{padding:48px 17px 35px}.intro h1{font-size:48px}.filters{display:grid;grid-template-columns:1fr 1fr}.filters label{min-width:0}.clear-button{justify-self:start}.searchbox kbd{display:none}.results-head{align-items:start;gap:12px}.sort-label{font-size:8px;flex-direction:column;align-items:start;gap:4px}.question-card{padding:15px}.question-text{font-size:13px}.footer-note{gap:10px;line-height:1.5}}
