:root{color-scheme:light;--ink:#153b35;--green:#17654e;--paper:#f7f8f2;--line:#dce5dc}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,sans-serif}header,main,footer{max-width:1140px;margin:auto;padding:22px}header{display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line)}a{color:var(--green)}.brand{font-size:26px;text-decoration:none;font-weight:800;white-space:nowrap}.brand span{color:#689a70}.topnav,.footer-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.topnav{flex:1}.topnav #language{margin-left:auto}.hero{padding:40px 0 24px}.eyebrow{font-size:15px;font-weight:700;color:var(--green)}h1{font-size:clamp(30px,5vw,52px);line-height:1.3;margin:12px 0}p{margin:8px 0}.muted{color:#586d66}.notice{background:#eaf0e4;border:1px solid var(--line);border-radius:12px;padding:14px 18px}.category{margin-top:24px;font-weight:650}.filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:14px;margin:20px 0}label{font-size:13px;font-weight:600}input,select{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid #b8cbbd;border-radius:9px;background:white;color:var(--ink);font:inherit}:focus-visible{outline:3px solid #8bbda2;outline-offset:3px}.classes{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}button,.classes a,summary{padding:8px 14px;border:1px solid #c5d6c8;background:white;border-radius:9px;color:var(--ink);font:inherit;cursor:pointer;text-decoration:none}.classes a[aria-current=page]{background:var(--green);color:white}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:20px 0}.card{background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}.cover{height:220px;background:#dfebde;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;font-size:24px;font-weight:700;color:#285941}.cover img{height:100%;max-width:100%;object-fit:contain}.body{padding:20px;display:flex;flex-direction:column;flex:1}.meta{font-size:13px;color:#596f65}.card h2{font-size:21px;margin:8px 0}.actions{margin-top:auto;padding-top:16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.primary{background:var(--green);color:white;padding:9px 14px;border-radius:8px;text-decoration:none}#status{padding:16px 0}.error{color:#8a2626}footer{border-top:1px solid var(--line);font-size:13px;margin-top:40px}.footer-links button{font-size:13px}.project-list{position:absolute;z-index:5;background:white;box-shadow:0 12px 30px #153b3520;padding:14px;border:1px solid var(--line);border-radius:10px;min-width:210px;max-width:85vw}.project-list a{display:block;padding:8px}.project-list p{margin:0}dialog{border:1px solid var(--line);border-radius:16px;max-width:700px;width:94%;max-height:90dvh;padding:24px;color:var(--ink)}dialog::backdrop{background:#102c2490}.modal-head{display:flex;justify-content:space-between;align-items:start;gap:14px}.modal-head h2{margin:0 0 18px;font-size:22px}.modal-head button{white-space:nowrap}.document-text{white-space:pre-wrap;overflow-wrap:anywhere}.source-url{display:block;overflow-wrap:anywhere;margin-bottom:14px}.reader{max-width:1200px;width:96%;height:94dvh;max-height:94dvh}.reader #modalBody{height:calc(100% - 70px);display:flex;flex-direction:column;gap:8px}.reader iframe{width:100%;flex:1;min-height:200px;border:1px solid var(--line);background:white}.reader-hint{font-size:13px}.reader .modal-head h2{font-size:18px}.footer-links{margin-bottom:18px}[hidden]{display:none!important}@media(max-width:780px){header{align-items:start;flex-direction:column;gap:12px}.filters{grid-template-columns:1fr 1fr}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topnav{width:100%}.project-list{right:16px}}@media(max-width:480px){.grid,.filters{grid-template-columns:1fr}header,main,footer{padding:16px}.hero{padding-top:25px}.topnav{gap:6px}.topnav button,summary{font-size:13px;padding:8px}.reader{padding:12px}.modal-head{gap:8px}}
