:root{--ink:#182331;--muted:#6b7784;--line:#e5e9ed;--paper:#f5f7f8;--navy:#1f3854;--teal:#2c7375;--gold:#f0cb72;--white:#fff}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Noto Sans SC",sans-serif}a{color:inherit;text-decoration:none}.wrap{max-width:1240px;margin:auto;padding:24px 24px 70px}.bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px}.logo{width:36px;height:36px;border-radius:12px;background:linear-gradient(140deg,var(--navy),var(--teal));display:grid;place-items:center;color:#fff}.logo:after{content:"Q";font-weight:800}.bar-note{color:var(--muted);font-size:12px}.hero{background:linear-gradient(118deg,#1a3049,#244c65 58%,#38817c);color:#fff;border-radius:26px;padding:38px 42px;position:relative;overflow:hidden;box-shadow:0 18px 45px #1c36411c}.hero:after{content:"";position:absolute;right:-80px;top:-230px;width:430px;height:430px;background:#c3df8830;border-radius:50%}.hero-inner{position:relative;z-index:1;max-width:800px}.eyebrow{font-size:11px;letter-spacing:.17em;font-weight:700;color:#d3e8d8}.hero h1{font-size:clamp(30px,4vw,45px);line-height:1.18;margin:12px 0}.hero p{max-width:710px;color:#e0ebeb;font-size:14px;line-height:1.8;margin:0}.statrow{display:flex;gap:10px;margin-top:21px;flex-wrap:wrap}.stat{border:1px solid #ffffff26;background:#ffffff12;border-radius:12px;padding:10px 14px;min-width:105px}.stat b{display:block;font-size:18px}.stat span{font-size:11px;color:#d2e1e1}.section{margin-top:30px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:13px}.section-head h2{font-size:21px;margin:0}.section-head span{font-size:12px;color:var(--muted)}.controls{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 14px}.search{flex:1 1 320px;position:relative}.search input{width:100%;height:46px;border:1px solid var(--line);background:#fff;border-radius:13px;padding:0 16px 0 42px;font-size:14px;outline:none}.search input:focus{border-color:#7896a7;box-shadow:0 0 0 4px #718ea619}.search:before{content:"⌕";position:absolute;left:15px;top:8px;color:#86939e;font-size:24px}.sort{height:46px;border:1px solid var(--line);border-radius:13px;background:#fff;padding:0 13px;color:var(--ink)}.categories{display:flex;gap:8px;overflow:auto;padding:2px 0 12px;scrollbar-width:thin}.cat{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 13px;font-size:12px;color:#526270;cursor:pointer}.cat.active{background:var(--navy);color:#fff;border-color:var(--navy)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.card{background:#fff;border:1px solid #e5eaee;border-radius:18px;overflow:hidden;box-shadow:0 7px 22px #20324708;transition:transform .18s,box-shadow .18s}.card:hover{transform:translateY(-2px);box-shadow:0 13px 28px #20324714}.cover-link{display:block;background:#e2e8eb;aspect-ratio:16/9;overflow:hidden}.cover{width:100%;height:100%;object-fit:cover;display:block}.body{padding:14px 15px 16px}.row{display:flex;justify-content:space-between;align-items:center;gap:8px}.category{font-size:11px;font-weight:700;color:#4d737b}.rid{font:10px ui-monospace,Menlo,monospace;color:#9ba5ae}.title{font-size:16px;line-height:1.42;margin:8px 0 7px;font-weight:760;min-height:45px}.summary{font-size:12px;line-height:1.65;color:#6b7784;margin:0 0 11px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:59px}.stats{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 11px;font-size:11px;color:#75818c}.taglist{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:13px}.tag{border-radius:6px;background:#f0f4f4;color:#526a6c;font-size:10px;padding:4px 7px}.actions{display:flex;align-items:center;gap:7px}.action{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:35px;padding:0 10px;border-radius:9px;border:1px solid #dce4e8;background:#f9fafb;color:#40515e;font-size:11px;font-weight:650;cursor:pointer}.action.primary{background:var(--navy);color:#fff;border-color:var(--navy)}.action:disabled{cursor:not-allowed;background:#edf0f2;color:#a0a8ae;border-color:#e4e8eb}.qr-action{padding:4px;background:#fff}.qr-action img{width:26px;height:26px;image-rendering:pixelated;display:block}.qr-empty{width:33px;height:33px;border:1px dashed #c3cbd0;border-radius:6px;display:grid;place-items:center;font:700 9px ui-monospace,monospace;color:#a4adb3}.link-disabled{color:#87929c;cursor:not-allowed}.details-link{margin-left:auto;font-size:11px;color:#4b6977;font-weight:700;white-space:nowrap}.notice{margin-top:16px;background:#fff8e8;border:1px solid #efe3c3;border-radius:12px;padding:11px 14px;color:#6e5b33;font-size:12px;line-height:1.6}.empty{padding:46px 16px;text-align:center;background:#fff;border:1px dashed var(--line);border-radius:16px;color:#74818c}.footer{margin-top:35px;border-top:1px solid var(--line);padding:17px 2px;color:#7d8790;font-size:11px;line-height:1.6}.detail-hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);gap:25px;align-items:center}.detail-cover{width:100%;border-radius:17px;display:block;box-shadow:0 10px 30px #1b30401a}.crumb{font-size:12px;color:var(--muted);margin-bottom:18px}.crumb a{color:#50717a}.detail-title{font-size:clamp(27px,4vw,40px);line-height:1.25;margin:0 0 13px}.detail-summary{font-size:15px;line-height:1.9;color:#596775}.detail-meta{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.pill{background:#fff;border:1px solid var(--line);padding:8px 11px;border-radius:999px;font-size:12px;color:#596875}.share-box{margin-top:19px;background:#fff;border:1px solid var(--line);padding:15px;border-radius:15px}.share-head{font-weight:750;margin-bottom:8px}.share-note{font-size:12px;color:var(--muted);line-height:1.65;margin-bottom:11px}.share-actions{display:flex;gap:8px;flex-wrap:wrap}.share-code{margin-top:10px;font-size:12px;color:#536371}.related{margin-top:28px}.qr-dialog{border:0;border-radius:18px;padding:18px;max-width:min(92vw,430px);box-shadow:0 24px 70px #15263755}.qr-dialog::backdrop{background:#122232a8}.qr-dialog img{width:min(70vw,360px);height:auto;image-rendering:pixelated;display:block;margin:8px auto 12px}.qr-dialog .close{display:block;margin:0 auto}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#1e3347;color:#fff;padding:10px 14px;border-radius:999px;font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:20}.toast.show{opacity:1}.search-note{font-size:11px;color:#83909a}.site-footer{margin-top:35px;color:#83909a;font-size:11px;line-height:1.7;border-top:1px solid var(--line);padding-top:16px}@media(max-width:950px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.wrap{padding:16px 13px 48px}.bar-note{display:none}.hero{padding:27px 21px;border-radius:21px}.hero h1{font-size:30px}.hero p{font-size:13px}.stat{min-width:90px}.grid{grid-template-columns:1fr;gap:12px}.title{min-height:0}.summary{min-height:0}.detail-hero{grid-template-columns:1fr}.detail-cover{order:-1}.actions{gap:6px}.action{padding:0 8px}.details-link{font-size:10px}.section-head{align-items:center}.section-head h2{font-size:19px}}
.active-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:-4px 0 16px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--white);color:var(--muted);font-size:13px}.active-filters[hidden]{display:none}.filter-label{font-weight:600;color:var(--ink)}.filter-reset,.empty-clear{cursor:pointer}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:180px;padding:28px;text-align:center;color:var(--muted)}
