:root{
  --bg:#071b14; --card:#103727; --card2:#154833; --text:#f6fff9; --muted:#b7d2c4;
  --gold:#f5c65b; --line:rgba(255,255,255,.12); --soft:rgba(0,0,0,.18);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at top,#18563d,var(--bg));color:var(--text);min-height:100vh}
.topbar{position:sticky;top:0;z-index:10;display:flex;gap:12px;align-items:center;padding:16px;background:rgba(7,27,20,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
h1,h2,h3,p{margin:0} h1{font-size:24px} h2{font-size:30px;line-height:1.15}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);font-weight:900}.muted{color:var(--muted);margin-top:8px;line-height:1.45}
main{width:min(980px,100%);margin:auto;padding:16px 14px 84px}.page{display:none}.page.active{display:block}
.card{background:linear-gradient(180deg,var(--card2),var(--card));border:1px solid var(--line);border-radius:24px;padding:18px;box-shadow:0 14px 40px rgba(0,0,0,.22)}
.hero{display:grid;gap:18px}.summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.summary-grid div,.quick-grid div{background:var(--soft);border:1px solid var(--line);border-radius:18px;padding:14px}.summary-grid b,.quick-grid b{display:block;font-size:25px;color:var(--gold)}.summary-grid span,.quick-grid span{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.menu-grid{display:grid;gap:14px;margin-top:16px}.menu-card{min-height:116px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,#1d6848,#12402e);color:var(--text);font-size:40px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:16px;cursor:pointer}.menu-card span{font-size:22px}
.toolbar{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:16px}input,select,button{font:inherit}input,select{width:100%;padding:15px 16px;border-radius:16px;border:1px solid var(--line);background:rgba(0,0,0,.22);color:var(--text);outline:none}select option{background:#103727;color:white}.list{display:grid;gap:12px}.result-count{color:var(--muted);font-size:13px;padding:0 4px}
.group-title{font-weight:900;color:var(--gold);letter-spacing:.03em;margin:18px 4px 8px;font-size:18px}.group-title span{font-size:12px;color:var(--muted);font-weight:700;margin-left:8px}
.animal-card{width:100%;text-align:left;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,rgba(29,104,72,.95),rgba(16,55,39,.95));color:var(--text);padding:16px;cursor:pointer}.animal-top{display:flex;gap:12px;align-items:flex-start}.animal-no{min-width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:rgba(245,198,91,.16);border:1px solid rgba(245,198,91,.35);color:var(--gold);font-weight:1000;font-size:18px}.animal-main{min-width:0}.animal-main h3{font-size:20px;margin:0 0 4px}.animal-main p{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 8px}.badge{background:rgba(245,198,91,.13);color:#ffe29a;border:1px solid rgba(245,198,91,.3);padding:5px 9px;border-radius:999px;font-size:13px}.small{font-size:13px;color:var(--muted);line-height:1.45}.small b{color:#fff}.meta-line{margin-top:8px;font-size:12px;color:#d4eadf;opacity:.9}
.detail-card{display:grid;gap:14px}.detail-title{display:flex;justify-content:space-between;gap:10px;align-items:start}.detail-title h2{font-size:26px}.detail-no{font-size:42px}.highlight-box{display:grid;gap:6px;background:rgba(245,198,91,.13);border:1px solid rgba(245,198,91,.35);border-radius:20px;padding:15px}.highlight-box b{color:var(--gold)}.highlight-box span{line-height:1.45}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.quick-grid b{font-size:18px}.info-grid{display:grid;gap:10px}.info{padding:12px;border-radius:16px;background:var(--soft);border:1px solid var(--line)}.info label{display:block;font-size:11px;color:var(--gold);text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px;font-weight:900}.info div{font-size:15px;word-break:break-word;line-height:1.35}.wa-btn{display:block;text-align:center;text-decoration:none;color:#061b13;background:var(--gold);font-weight:900;border-radius:18px;padding:15px}.back-btn{width:48px;height:48px;border-radius:16px;border:1px solid var(--line);background:#1d6848;color:white;font-size:24px;cursor:pointer}.empty-state{min-height:280px;display:flex;flex-direction:column;justify-content:center}.qr-box{display:flex;gap:14px;align-items:center;background:rgba(0,0,0,.16);border:1px solid var(--line);border-radius:20px;padding:14px}.qr-box img{width:108px;height:108px;border-radius:14px;background:#fff;padding:6px}.qr-box b{color:var(--gold)}
footer{position:fixed;bottom:0;left:0;right:0;padding:10px 14px;text-align:center;color:var(--muted);background:rgba(7,27,20,.92);font-size:12px}.focusable:focus,.focused{outline:4px solid var(--gold);outline-offset:3px;transform:scale(1.015)}
@media(min-width:720px){main{padding-top:24px}.hero{grid-template-columns:1.2fr .8fr;align-items:center}.menu-grid{grid-template-columns:repeat(3,1fr)}.toolbar{grid-template-columns:1fr 220px}.info-grid{grid-template-columns:repeat(2,1fr)}.quick-grid{grid-template-columns:repeat(4,1fr)}h1{font-size:30px}}
@media(max-width:420px){h2{font-size:28px}.menu-card{min-height:96px;font-size:32px}.menu-card span{font-size:19px}.animal-main h3{font-size:18px}.qr-box{align-items:flex-start}.qr-box img{width:96px;height:96px}}
