:root{--forest:#143f35;--green:#26634f;--ink:#193c33;--muted:#6d7d76;--border:#e1e9e4;--mint:#f7faf7;--radius:18px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--mint);font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:#25644e;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #c18a23;outline-offset:4px}[hidden]{display:none!important}.sidebar{position:fixed;inset:0 auto 0 0;width:232px;background:var(--forest);color:#e9f3ed;padding:34px 22px;display:flex;flex-direction:column;overflow-y:auto}.brand{display:flex;align-items:center;gap:12px;color:white;font-size:23px;font-weight:650;letter-spacing:-.6px}.brand:hover{text-decoration:none}.brand small{display:block;font-size:9px;letter-spacing:.5px;margin-top:5px;color:#aac5b8;font-weight:400}.brand-mark{display:inline-grid;place-items:center;width:46px;height:46px;border:1px solid #8cab9d;border-radius:50%;font-size:24px;font-weight:500}.nav-label{font-size:9px;letter-spacing:2px;color:#9ebcaf;margin:55px 12px 17px}.sidebar nav a,.sidebar-bottom>a{display:block;padding:12px 14px;color:#d7e8de;font-size:13px;border-radius:9px}.sidebar nav a:hover,.sidebar-bottom>a:hover{background:#285448;text-decoration:none}.sidebar-bottom{margin-top:auto;padding-top:45px}.sidebar-bottom>a{font-size:11px;padding:8px 14px}.admin-label{display:block;color:#a7c4b5;font-size:10px;padding:20px 14px 5px}.sidebar-signout{border:0;background:transparent;color:#e4efe8;padding:8px 14px;font-size:12px}.workspace{margin-left:232px;padding:50px clamp(24px,4vw,72px);min-height:100vh}.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.eyebrow{font-size:9px;letter-spacing:2px;color:#738a7a;margin:0 0 18px}h1{font-size:clamp(26px,2.8vw,36px);font-weight:550;letter-spacing:-1px;margin:0 0 12px}h2{font-size:20px;font-weight:550;margin:4px 0 16px}h3{font-size:15px;font-weight:600}p{line-height:1.65}.subtitle{font-size:13px;color:var(--muted);margin:0}.muted{color:var(--muted)}.small,small{font-size:11px}.status-pill{border:1px solid var(--border);border-radius:30px;padding:9px 12px;background:white;white-space:nowrap;font-size:10px;color:var(--muted)}.status-pill>span{display:inline-block;width:6px;height:6px;background:#6b9d7e;border-radius:50%;margin-right:5px}.overview-hint{font-size:11px;color:#7d8f82;margin:36px 0 18px}.primary-circles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 28px;max-width:1050px;margin:0 auto}.primary-circle{width:min(100%,272px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(45,78,54,.08);box-shadow:0 7px 16px #264a3510;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:var(--ink);padding:22px;position:relative;justify-self:center;transition:transform .2s,box-shadow .2s}.primary-circle:hover{transform:translateY(-4px);box-shadow:0 12px 24px #264a351b}.primary-circle[aria-expanded=true]{outline:2px solid #588872;outline-offset:5px}.circle-0{background:#e6efdf}.circle-1{background:#deeee8}.circle-2{background:#f6edd9}.circle-3{background:#f3e3d8}.circle-4{background:#e8e4f1}.circle-5{background:#e0ebf2}.circle-icon{margin-bottom:11px;color:#4c705a}.circle-title{font-size:15px;font-weight:550;max-width:180px;line-height:1.4}.circle-stat{font-size:30px;font-weight:500;margin-top:8px}.circle-description{font-size:10px;color:#6e7f71;margin-top:5px}.expand-indicator{font-size:20px;color:#778f7d;margin-top:7px}.overview-footer{margin:43px 0 0;padding-top:20px;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:16px;color:#839087;font-size:10px}.expansion-panel{border:1px solid var(--border);background:white;border-radius:24px;margin-top:36px;padding:28px}.back-link{display:inline-block;color:#526f5f;font-size:12px;background:transparent;border:0;padding:0;margin-bottom:24px}.community-circles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:32px 0}.community-circle{position:relative;aspect-ratio:1;max-width:180px;width:100%;justify-self:center;border-radius:50%;color:var(--ink);transition:transform .2s}.community-circle:hover{transform:translateY(-3px);text-decoration:none}.community-disc{position:absolute;inset:0;width:100%;height:100%;opacity:.85}.community-content{position:absolute;inset:12%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:9px}.community-content strong{font-size:12px;font-weight:550;line-height:1.3}.community-content small{font-size:10px;color:#637c6a}.card{padding:26px;background:white;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:22px;min-width:0}.detail-grid,.record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.detail-grid .card{margin:0}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.metric-grid .card{display:flex;flex-direction:column;gap:10px;font-size:12px}.metric-number{font-size:32px;font-weight:500}.button,input[type=submit]{display:inline-block;background:var(--forest);color:white;padding:11px 17px;border:1px solid var(--forest);border-radius:9px;font-size:12px;cursor:pointer;text-align:center}.button:hover{text-decoration:none;background:#285448}.secondary{background:white;color:var(--forest);border-color:#ccdcd1}.badge{display:inline-block;border:1px solid var(--border);background:#f3f7f3;color:#58715f;border-radius:30px;padding:3px 9px;font-size:10px;margin:2px 4px 2px 0;white-space:nowrap}.notice,.flash{padding:16px 20px;border:1px solid #d8e6d7;border-radius:12px;background:#edf4e9;font-size:12px;margin-bottom:22px}.flash.alert{background:#fff0e8;border-color:#f0d2c0}.filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:22px 0}.filter-bar input,.filter-bar select{width:auto;max-width:220px;margin:0}label{display:block;font-size:12px;margin:15px 0 7px}input,select,textarea{display:block;width:100%;padding:11px 12px;border:1px solid #cbd8cf;border-radius:8px;background:white;color:var(--ink);font-size:13px}input[type=color]{height:45px;width:100px}textarea{min-height:85px;resize:vertical}form input[type=submit]{width:auto;margin-top:16px}.filter-bar input[type=submit]{margin:0}.form-card{max-width:650px}.auth-workspace{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{background:white;border:1px solid var(--border);border-radius:24px;max-width:440px;width:100%;padding:40px;box-shadow:0 14px 60px #143f3509}.auth-card h1{font-size:26px;margin-top:24px}.auth-card a{display:inline-block;font-size:12px;margin-top:20px}.auth-card input[type=submit]{width:100%;margin:24px 0 0}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}th{font-weight:550;color:#738477;font-size:10px;text-transform:uppercase;letter-spacing:.5px}td,th{padding:14px 12px;border-bottom:1px solid var(--border);vertical-align:top}td form{min-width:190px}td small{display:block}.announcement,pre{white-space:pre-wrap;word-break:break-word;line-height:1.7;font-size:12px}.milestone{padding:16px 0;border-bottom:1px solid var(--border)}progress{width:100%;height:10px;accent-color:#497c5f}.calendar-navigation{display:flex;justify-content:space-between;margin:26px 0;font-size:13px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:white;border-top:1px solid var(--border);border-left:1px solid var(--border);border-radius:12px;overflow:hidden}.calendar-day{min-height:130px;padding:9px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.calendar-day h2{font-size:11px;color:var(--muted)}.calendar-day.today{background:#eef5ec}.calendar-item{display:block;background:#e1eee3;padding:6px;border-radius:5px;margin-top:5px;overflow-wrap:anywhere}.calendar-item small{font-size:8px;display:block}.calendar-item strong{font-size:10px}.message{padding:14px;background:#f0f6ed;border-radius:10px;margin:12px 0}.message p{white-space:pre-wrap;font-size:12px}.message pre{font-size:10px}@media(min-width:1500px){.primary-circles{gap:40px 60px}.primary-circle{max-width:285px}}@media(max-width:1100px){.workspace{padding:36px 24px}.sidebar{width:200px;padding:28px 16px}.workspace{margin-left:200px}.primary-circles{gap:24px 16px}.primary-circle{padding:15px}.circle-icon svg{width:30px;height:30px}.circle-title{font-size:13px}.circle-stat{font-size:25px}.circle-description{font-size:9px}.status-pill{display:none}.community-circles{grid-template-columns:repeat(3,1fr)}.metric-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.sidebar{position:relative;width:100%;padding:18px 20px}.brand{font-size:20px}.brand-mark{height:35px;width:35px;font-size:19px}.nav-label,.sidebar-bottom,.brand small{display:none}.sidebar nav{display:flex;gap:5px;overflow-x:auto;padding-top:15px}.sidebar nav a{font-size:11px;padding:7px 10px;white-space:nowrap}.workspace{margin:0;padding:28px 20px}.primary-circles{gap:22px;grid-template-columns:repeat(2,minmax(0,1fr));max-width:540px}.primary-circle{max-width:235px}.circle-title{font-size:13px}.circle-stat{font-size:25px}.overview-hint{margin-top:26px}.detail-grid,.record-grid{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,1fr)}.community-circles{gap:14px;grid-template-columns:repeat(3,1fr)}.community-content{gap:5px;inset:12%}.community-content strong{font-size:10px}.community-content small{font-size:8px}.community-content svg{width:23px;height:23px}.expansion-panel{padding:20px}.overview-footer{flex-direction:column}.calendar-grid{grid-template-columns:1fr}.calendar-day{min-height:65px}.calendar-item strong{font-size:12px}.page-header{align-items:flex-start;flex-wrap:wrap}.card{padding:20px}.filter-bar>*{flex:1;min-width:135px}.auth-card{padding:28px}}@media(max-width:380px){.primary-circles{gap:16px 12px}.circle-description{max-width:100px;font-size:8px}.circle-title{font-size:11px}.circle-icon{margin-bottom:5px}.circle-icon svg{width:25px;height:25px}.circle-stat{font-size:22px}.expand-indicator{margin-top:3px;font-size:16px}.community-circles{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.mobile-signout{display:none}@media(max-width:760px){.mobile-signout{display:block;white-space:nowrap;border:0;background:transparent;color:#d7e8de;font-size:11px;padding:7px 10px}}
