:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#172f36;background:#f2f5f4;line-height:1.55}*{box-sizing:border-box}body{margin:0}header{padding:22px max(5vw,20px);background:#102f36;display:flex;align-items:center;justify-content:space-between;gap:20px;color:white}a{color:#08695e;text-decoration:none}header a{color:#fff}.brand{font-size:24px;font-weight:800;letter-spacing:2px}.brand small{display:block;font-size:10px;font-weight:500;letter-spacing:3px;opacity:.65}nav{display:flex;gap:24px;align-items:center}nav form{margin:0}main{max-width:1180px;margin:48px auto;padding:0 24px}h1{font-size:clamp(28px,4vw,42px);line-height:1.15;letter-spacing:-1.5px;margin:12px 0 32px}h2{font-size:21px;margin:0 0 12px}p{color:#53656b}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:#247568}.card{background:#fff;border:1px solid #dce5e1;border-radius:16px;padding:28px;margin-bottom:24px}.stats,.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats strong{display:block;font-size:44px;line-height:1.3}.stats span{color:#667c7b}.project{display:block;transition:border-color .2s}.project:hover{border-color:#168771}.badge{display:inline-block;padding:4px 10px;background:#e4f2eb;border-radius:30px;color:#287354;font-size:12px;margin-bottom:14px}.project p{overflow-wrap:anywhere}.login{max-width:540px;margin:80px auto}.login h1{font-size:36px}label{display:block;margin-bottom:18px;font-size:14px;font-weight:600}input,select,textarea{display:block;width:100%;border:1px solid #bacbc7;border-radius:8px;padding:12px;margin-top:7px;background:#fcfdfc;color:#173a3c;font:inherit}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #69b6a2;outline-offset:2px}.check{display:flex;align-items:center;gap:10px;font-weight:500}.check input{width:18px;margin:0}button{border:0;background:#087c68;color:#fff;padding:13px 20px;border-radius:8px;font:600 14px system-ui;cursor:pointer}.quiet{background:#e7eeeb;color:#28514a}.muted{font-size:13px;color:#6c7c7e}.error{background:#f9e5e0;border:1px solid #e4b9ae;padding:16px;border-radius:8px;color:#973e28}.table{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:12px;border-bottom:1px solid #e4ebe8;vertical-align:top}th{color:#647b76;font-weight:600}footer{max-width:1180px;margin:40px auto;padding:0 24px;color:#7c8a88;font-size:12px}@media(max-width:700px){.grid,.stats{grid-template-columns:1fr}header{align-items:flex-start}nav{gap:12px;flex-wrap:wrap;font-size:12px}main{margin-top:30px}.card{padding:20px}.login{margin:30px auto}h1{letter-spacing:-.8px}}

.filter-box{border:1px solid #dce5e1;border-radius:12px;padding:20px;margin:18px 0}.filter-toggle{background:#e7f3ee;padding:14px;border-radius:9px;font-weight:650}.filter-toggle input{accent-color:#087c68}.stats{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}

.optional-filter:not(:has(> .filter-toggle input:checked)) .selection-options{display:none}.catalog-options{max-height:310px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:6px;padding:14px;border:1px solid #dce5e1;border-radius:8px}.catalog-options .check{margin:0;padding:7px}.catalog-options input{flex-shrink:0}.catalog-options label:has(input:checked){background:#e7f3ee;border-radius:5px}

.catalog-options label[hidden]{display:none}
