:root{color-scheme:light;--ink:#152924;--muted:#506660;--green:#174d3c;--line:#d8e4df;--wash:#f1f6f3;--white:#fff;font-family:"DM Sans",system-ui,sans-serif;color:var(--ink);background:var(--wash)}
*{box-sizing:border-box}body{margin:0}header{background:var(--white);border-bottom:1px solid var(--line)}.top,main,footer{max-width:1180px;margin:auto;padding:0 24px}.top{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-weight:800;color:var(--ink)}small{display:block;color:var(--muted);font-weight:500}.mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--green);color:white;font-size:14px;flex-shrink:0}nav,.actions,.chips{display:flex;gap:12px;align-items:center;flex-wrap:wrap}nav a{font-size:.9rem}nav button{background:var(--wash);color:var(--green)}main{padding-top:28px;min-height:76vh}.hero{background:#153e33;color:white;border-radius:20px;padding:clamp(24px,5vw,56px);margin-bottom:22px}.hero h1{font-size:clamp(2rem,5vw,3.7rem);line-height:1.04;letter-spacing:-.045em;margin:10px 0 15px}.hero p{margin:0;color:#e1f2e9}.hero .eyebrow{font-size:.76rem;letter-spacing:.17em;font-weight:800;color:#b5e2ca}a{color:var(--green);font-weight:700;text-underline-offset:3px}.chips{margin:0 0 18px;gap:8px}.chips a{background:white;text-decoration:none;border:1px solid var(--line);border-radius:30px;padding:8px 12px;font-size:.84rem}.chips .active{background:var(--green);color:white}.panel,.card{background:white;border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:18px}.panel h2,.card h3{margin-top:0}.grid,.cards{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}.grid .actions{align-self:end}.card{display:flex;flex-direction:column;gap:9px;margin:0}.card h3,.card p{margin:0}.card a{margin-top:auto;padding-top:12px}.meta,.card p,footer,.empty{color:var(--muted)}.meta{font-size:.83rem;font-weight:700}.badge,.count,.rank{display:inline-block;background:#e6f3ea;color:#234e3b;border-radius:20px;padding:4px 9px;font-weight:700;font-size:.83rem}.badge{background:#fff0cb;color:#664b0e}.notice{background:#dcefe3;padding:13px;border-radius:8px}label{display:grid;gap:6px;font-size:.87rem;font-weight:700}.check{display:flex;align-items:center;margin:14px 0}.login{max-width:480px}.login label,[data-import] label{margin-bottom:14px}input,select,button{font:inherit}input:not([type=checkbox]),select{width:100%;min-width:0;border:1px solid #a9bdb4;border-radius:8px;padding:10px;background:white;color:var(--ink);min-height:44px}button{border:0;border-radius:8px;background:var(--green);color:white;padding:11px 16px;min-height:44px;font-weight:750;cursor:pointer}button:hover{filter:brightness(1.15)}:focus-visible{outline:3px solid #408866;outline-offset:3px}.panel form>button{margin-top:10px}.scroll{overflow:auto}table{border-collapse:collapse;width:100%;margin-top:14px;text-align:left}th,td{padding:11px 10px;border-bottom:1px solid var(--line)}th{font-size:.83rem;background:#f0f5f2}.score{font-weight:800;white-space:nowrap}footer{padding:30px 24px;font-size:.85rem}@media(max-width:620px){.top,main{padding-left:14px;padding-right:14px}.top{flex-wrap:wrap;padding-block:12px}.panel,.card{padding:15px}.hero{border-radius:14px}.cards{grid-template-columns:1fr}}@media print{header,footer,.chips,form,.actions,main>p,.panel:has(>form),.edit,td:has(a){display:none}.hero{padding:0;color:black;background:white}.hero p,.hero .eyebrow{color:black}body,.panel{background:white;border:none}main{padding:0}.panel{padding:0}table{font-size:11pt}}

