:root{
  --ink:#0d171d;--ink2:#16252d;--paper:#f5efdf;--paper2:#fffaf0;--gold:#e4a313;--gold2:#ffbe20;
  --red:#d82b21;--green:#579c16;--green2:#76b82a;--blue:#2d78c4;--violet:#7148b8;--muted:#69757c;
  --line:#d8ccb0;--shadow:0 15px 40px rgba(9,19,24,.15);--radius:16px;--condensed:Impact,"Arial Narrow",Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#ece4d2;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(1240px,calc(100% - 32px));margin:auto}.muted{color:var(--muted)}
.header{position:sticky;top:0;z-index:20;background:rgba(13,23,29,.96);color:#fff;border-bottom:2px solid var(--gold);box-shadow:0 8px 25px rgba(0,0,0,.18)}.nav{min-height:76px;display:flex;align-items:center;gap:24px}.brand{margin-right:auto;display:flex;align-items:center;gap:9px}.brandmark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--ink);font-size:1.4rem;box-shadow:inset 0 0 0 2px rgba(255,255,255,.35)}.brandtext{font:italic 900 1.55rem/1 var(--condensed);text-transform:uppercase;letter-spacing:.5px}.brandtext b{color:var(--gold)}.brandtext em{color:var(--red);font-style:normal}.navlinks{display:flex;gap:8px;align-items:center}.navlinks a{padding:10px 12px;border-radius:8px;font-weight:800;font-size:.92rem}.navlinks a:hover,.navlinks a.active{background:#233039;color:var(--gold)}.nav-actions{display:flex;gap:8px;align-items:center}.user-pill{font-size:.84rem;color:#dce3e6;border:1px solid #43515a;border-radius:999px;padding:8px 10px}.menu-btn{display:none}
.btn{border:0;border-radius:9px;padding:11px 15px;cursor:pointer;font-weight:850;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn-primary{background:linear-gradient(#69af16,#417f08);color:#fff}.btn-gold{background:linear-gradient(#f3bd2e,#c48705);color:#1b1a14}.btn-dark{background:var(--ink);color:white}.btn-soft{background:#f2ead6;border:1px solid var(--line);color:var(--ink)}.btn-red{background:var(--red);color:white}.btn-small{padding:8px 10px;font-size:.86rem}
.page-hero{background:linear-gradient(135deg,rgba(11,24,27,.98),rgba(27,47,34,.96)),url('assets/hero-animals.webp') center/cover;color:#fff;padding:48px 0;border-bottom:4px solid var(--gold)}.page-hero h1{font:italic 900 clamp(2.6rem,5vw,5rem)/.95 var(--condensed);text-transform:uppercase;margin:5px 0 10px;text-shadow:2px 2px 0 #000}.page-hero h1 em{color:var(--gold);font-style:normal}.page-hero p{max-width:760px;color:#e2e7e4;font-size:1.05rem;line-height:1.5}.kicker{display:inline-flex;padding:7px 10px;background:rgba(227,163,19,.16);border:1px solid rgba(227,163,19,.45);color:var(--gold2);border-radius:999px;font-weight:900;text-transform:uppercase;font-size:.76rem;letter-spacing:.6px}
.section{padding:34px 0}.grid{display:grid;gap:18px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.panel{background:var(--paper2);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.panel.dark{background:var(--ink);color:white;border-color:#26353d}.panel h2,.panel h3{margin-top:0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:17px}.section-head h2{font:900 2rem/1 var(--condensed);text-transform:uppercase;margin:0}.section-head p{margin:6px 0 0;color:var(--muted)}
.action-card{background:var(--paper2);border:1px solid var(--line);border-bottom:4px solid var(--gold);border-radius:14px;padding:17px;box-shadow:var(--shadow);transition:.18s}.action-card:hover{transform:translateY(-3px)}.action-card.red{border-bottom-color:var(--red)}.action-card.green{border-bottom-color:var(--green)}.action-card.blue{border-bottom-color:var(--blue)}.action-card .ico{font-size:2rem}.action-card h3{font:800 1.15rem/1 var(--condensed);text-transform:uppercase;margin:10px 0 5px}.action-card p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.4}
.stat{background:var(--ink);color:white;border-radius:12px;padding:16px;border-left:4px solid var(--gold)}.stat strong{display:block;font:900 2rem/1 var(--condensed);color:var(--gold2)}.stat span{font-size:.84rem;color:#d7dfe2}.case-list{display:grid;gap:12px}.case-card{background:var(--paper2);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:grid;grid-template-columns:150px 1fr auto;align-items:stretch;box-shadow:0 8px 24px rgba(0,0,0,.08)}.case-img{width:150px;height:136px;object-fit:cover}.case-content{padding:14px 16px}.case-content h3{margin:0 0 5px;font-size:1.2rem}.case-meta{display:flex;flex-wrap:wrap;gap:6px;color:var(--muted);font-size:.84rem}.case-actions{padding:14px;display:flex;flex-direction:column;justify-content:center;gap:7px;border-left:1px solid var(--line)}.status{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 8px;font-weight:900;font-size:.74rem;text-transform:uppercase}.status.vermist{background:#fde8e5;color:#a71c13}.status.gevonden{background:#e8f4dd;color:#397809}.status.gezien{background:#e7f0fb;color:#245f9c}.status.thuis{background:#edf4df;color:#4d770d}
.map{height:390px;border-radius:16px;position:relative;overflow:hidden;background:#e1e1d7;background-image:linear-gradient(27deg,transparent 47%,rgba(255,255,255,.9) 48% 51%,transparent 52%),linear-gradient(115deg,transparent 47%,rgba(255,255,255,.95) 48% 51%,transparent 52%);background-size:130px 110px,160px 150px;border:1px solid var(--line)}.map:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(95,155,42,.14),transparent 22%),radial-gradient(circle at 70% 70%,rgba(45,120,196,.10),transparent 18%)}.marker{position:absolute;z-index:2;width:42px;height:42px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);display:grid;place-items:center;color:white;box-shadow:0 6px 14px rgba(0,0,0,.25);border:2px solid white}.marker span{transform:rotate(45deg)}.marker.red{background:var(--red)}.marker.green{background:var(--green)}.marker.blue{background:var(--blue)}.marker.gold{background:var(--gold)}.radius-ring{position:absolute;z-index:1;border:2px dashed rgba(228,163,19,.9);border-radius:50%;width:220px;height:220px;left:50%;top:50%;transform:translate(-50%,-50%);background:rgba(228,163,19,.07)}.map-top{position:absolute;top:12px;left:12px;right:12px;z-index:4;display:flex;gap:8px}.map-top input{flex:1}.legend{position:absolute;bottom:10px;left:10px;z-index:4;background:rgba(255,250,240,.94);padding:8px 10px;border-radius:9px;font-size:.78rem;display:flex;gap:10px;border:1px solid var(--line)}
.filters{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:9px;margin-bottom:14px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-weight:850;font-size:.82rem}.field input,.field select,.field textarea,.search{width:100%;padding:11px 12px;border:1px solid #cdbf9e;background:#fffdf7;border-radius:9px;outline:none;color:var(--ink)}.field textarea{min-height:115px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(228,163,19,.13)}
.notice{padding:12px 14px;background:#fff7d9;border:1px solid #e6c66e;border-radius:10px;font-size:.87rem}.notice.safe{background:#edf7e5;border-color:#acd48a}.notice.danger{background:#fdebe8;border-color:#e0a097}.tabs{display:flex;gap:7px;flex-wrap:wrap}.tab{padding:8px 11px;border:1px solid var(--line);background:#f5ecd9;border-radius:999px;font-weight:850;cursor:pointer}.tab.active{background:var(--ink);color:white;border-color:var(--ink)}
.wizard{display:grid;grid-template-columns:260px 1fr;gap:18px}.steps{background:var(--ink);color:white;border-radius:16px;padding:10px;height:max-content;position:sticky;top:94px}.step{display:flex;gap:10px;align-items:center;padding:12px;border-radius:9px;color:#c8d2d5}.step b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#26343c;color:#fff}.step.active{background:#28352a;color:white}.step.active b{background:var(--gold);color:#151515}.form-card{background:var(--paper2);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.field.full{grid-column:1/-1}.form-actions{display:flex;justify-content:space-between;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.upload{border:2px dashed #c9b987;border-radius:12px;padding:18px;text-align:center;background:#faf5e7}.upload-preview{margin-top:10px;display:none;max-width:220px;border-radius:10px}.upload-preview.show{display:inline-block}
.dashboard{display:grid;grid-template-columns:230px 1fr;gap:18px}.side-nav{background:var(--ink);color:white;border-radius:16px;padding:12px;height:max-content;position:sticky;top:94px}.side-nav a{display:block;padding:11px 12px;border-radius:8px;font-weight:800;color:#d4dcdf}.side-nav a.active,.side-nav a:hover{background:#26343c;color:var(--gold)}.progress{height:12px;background:#e7dec8;border-radius:999px;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--green));width:58%}.badge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.badge{background:#f5ecd8;border:1px solid var(--line);border-radius:10px;text-align:center;padding:11px}.badge.locked{filter:grayscale(1);opacity:.48}.badge .icon{font-size:1.7rem}.points-big{font:900 3.3rem/1 var(--condensed);color:var(--gold)}
.detail{display:grid;grid-template-columns:1.4fr .8fr;gap:18px}.detail-main{overflow:hidden;padding:0}.detail-cover{height:340px;width:100%;object-fit:cover}.detail-body{padding:20px}.specs{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.spec{background:#f5eddc;border:1px solid var(--line);padding:10px;border-radius:9px}.spec small{display:block;color:var(--muted)}.timeline{display:grid;gap:12px}.timeline-item{display:grid;grid-template-columns:18px 1fr;gap:8px}.timeline-dot{width:12px;height:12px;border-radius:50%;background:var(--gold);margin-top:4px;box-shadow:0 0 0 4px #f3e6c7}.leaderboard{width:100%;border-collapse:collapse}.leaderboard td,.leaderboard th{padding:10px;border-bottom:1px solid var(--line);text-align:left}.leaderboard th{font-family:var(--condensed);text-transform:uppercase}.rank{font-weight:900;color:#aa7100}.mission{border-left:5px solid var(--gold)}.mission.urgent{border-left-color:var(--red)}.mission .distance{font:900 1.7rem/1 var(--condensed)}.toggle{display:inline-flex;width:48px;height:26px;background:#b9b8ac;border-radius:999px;position:relative;cursor:pointer;vertical-align:middle}.toggle:after{content:"";width:20px;height:20px;background:white;border-radius:50%;position:absolute;left:3px;top:3px;transition:.2s;box-shadow:0 1px 4px rgba(0,0,0,.25)}.toggle.on{background:var(--green)}.toggle.on:after{left:25px}.footer{background:var(--ink);color:#ced7da;margin-top:40px;border-top:3px solid var(--gold)}.footer .container{padding:26px 0;display:flex;justify-content:space-between;gap:20px}.footer a{color:var(--gold)}.toast{position:fixed;right:18px;bottom:18px;z-index:50;background:#0b151b;color:white;border-left:4px solid var(--green);padding:13px 16px;border-radius:10px;box-shadow:var(--shadow);opacity:0;transform:translateY(20px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.empty{padding:30px;text-align:center;background:#f8f0df;border:1px dashed #bdad86;border-radius:13px;color:var(--muted)}
.mobile-bar{display:none}
@media(max-width:950px){.navlinks{display:none}.menu-btn{display:inline-flex}.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr 1fr}.wizard,.dashboard,.detail{grid-template-columns:1fr}.steps,.side-nav{position:static}.steps{display:flex;overflow:auto}.step{min-width:max-content}.side-nav{display:flex;overflow:auto;gap:2px}.side-nav a{min-width:max-content}.case-card{grid-template-columns:120px 1fr}.case-img{width:120px}.case-actions{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);flex-direction:row}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer{padding-bottom:62px}.mobile-bar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;z-index:30;background:#0d171d;color:#e2e8ea;border-top:2px solid var(--gold)}.mobile-bar a{padding:9px 4px;text-align:center;font-size:.69rem;font-weight:800}.mobile-bar a span{display:block;font-size:1.2rem}.specs{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.container{width:min(100% - 20px,1240px)}.nav{min-height:64px}.brandtext{font-size:1.25rem}.user-pill,.nav-actions .btn-gold{display:none}.page-hero{padding:30px 0}.page-hero h1{font-size:2.8rem}.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.section{padding:24px 0}.case-card{grid-template-columns:92px 1fr}.case-img{width:92px;height:100%}.case-content{padding:11px}.map{height:330px}.legend{display:none}.badge-grid{grid-template-columns:repeat(2,1fr)}.specs{grid-template-columns:1fr}.footer .container{display:block}.footer .container div+div{margin-top:8px}}
