:root{--paper:#fbf3e4;--ink:#3a2a1f;--red:#a5281b;--pine:#2f5d3a;--gold:#c9973a;--card:#fffaf0}
*{box-sizing:border-box}body{margin:0;background:var(--paper) radial-gradient(circle at 20% 0,#fff6e0 0,transparent 60%);color:var(--ink);font:17px/1.55 Georgia,"Times New Roman",serif}
a{color:var(--red)}main{max-width:980px;margin:0 auto;padding:0 18px 40px}
.hero{background:linear-gradient(180deg,#7d1d14,#a5281b);color:#fff6e6;padding:34px 0 30px;border-bottom:6px double var(--gold);text-align:center}
.hero h1{font-size:2.3em;margin:.2em 0;letter-spacing:.5px}.hero p{max-width:640px;margin:.4em auto;color:#ffe9c9}
.lights{font-size:22px;letter-spacing:6px}.lights span:nth-child(4n+1){color:#ff6b5a}.lights span:nth-child(4n+2){color:#ffd166}.lights span:nth-child(4n+3){color:#7fd18b}.lights span:nth-child(4n){color:#7fb3ff}
h2{color:var(--pine);font-variant:small-caps;letter-spacing:1px;border-bottom:1px dashed var(--gold);padding-bottom:4px;margin-top:1.6em}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.hunt{background:var(--card);border:1px solid #e4d2b0;border-radius:10px;padding:10px 12px;cursor:pointer;text-align:left;font:inherit;color:inherit;box-shadow:0 1px 0 #e9d9bb}
.hunt:hover,.hunt.on{border-color:var(--red);box-shadow:0 0 0 2px #a5281b33}.hunt b{display:block;color:var(--red)}.hunt small{color:#7a6550}
form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:var(--card);border:1px solid #e4d2b0;border-radius:10px;padding:12px}
input,select,button{font:inherit;font-size:15px;padding:7px 9px;border:1px solid #cdb68f;border-radius:6px;background:#fff}
label.ck{font-size:15px;display:flex;gap:4px;align-items:center}
button{background:var(--red);color:#fff;border:0;cursor:pointer}button.alt{background:var(--pine)}
.res{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:12px}
.item{background:var(--card);border:1px solid #e4d2b0;border-radius:10px;overflow:hidden;display:flex;flex-direction:column}
.item img{width:100%;height:170px;object-fit:cover;background:#efe3cc}.item div{padding:8px 10px;font-size:15px}
.price{font-weight:bold;color:var(--pine);font-size:1.1em}.tag{display:inline-block;font-size:12px;border-radius:9px;padding:1px 7px;margin:2px 3px 0 0;background:#f1e4c9}
.tag.ok{background:#dcebd9;color:#24502e}.tag.warn{background:#f7dcd5;color:#8a2016}.muted{color:#7a6550;font-size:14px}
.card{background:var(--card);border:1px solid #e4d2b0;border-radius:10px;padding:16px 20px;margin-top:30px}
