@font-face{font-family:Quicksand;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d426c6df177f02c4-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Quicksand;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/9b4fbfc777bb173a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Quicksand;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/a74fb1607b845cb0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Quicksand;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d426c6df177f02c4-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Quicksand;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/9b4fbfc777bb173a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Quicksand;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/a74fb1607b845cb0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Quicksand;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d426c6df177f02c4-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Quicksand;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/9b4fbfc777bb173a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Quicksand;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/a74fb1607b845cb0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Quicksand;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/d426c6df177f02c4-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Quicksand;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9b4fbfc777bb173a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Quicksand;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/a74fb1607b845cb0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Quicksand Fallback;src:local("Arial");ascent-override:95.87%;descent-override:23.97%;line-gap-override:0.00%;size-adjust:104.31%}.__className_8f5f65{font-family:Quicksand,Quicksand Fallback;font-style:normal}.__variable_8f5f65{--font-body:"Quicksand","Quicksand Fallback"}:root{--green-deep:#0f5a34;--green:#2f7a4c;--green-soft:#8fb36f;--green-pale:#cfe3d5;--mint:#e6f1e9;--mint-soft:#f1f7f2;--slate:#4a6478;--ink:#33403a;--ink-soft:#6a7873;--line:#dfe6e0;--card:rgba(255,255,255,.88);--card-solid:#ffffff;--ok:#2f7a4c;--warn:#b8791a;--err:#b3261e;--radius:12px;--shadow:0 1px 2px rgba(20,40,30,.06),0 6px 20px rgba(20,40,30,.07);--bg-image-opacity:.34;--bg-image-drift:-7%}*{box-sizing:border-box}body,html{margin:0;padding:0}body{color:var(--ink);font-family:var(--font-body),"Quicksand",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;font-weight:500;background:#eef3f7;background-image:linear-gradient(180deg,#dbe7f2,#eef2f3 22%,#fbf7e3 48%,#f2f2c9 66%,#cfe38f 88%,#b6d86e);background-attachment:fixed;min-height:100vh}body:after{content:"";position:fixed;inset:-8% -3%;pointer-events:none;z-index:0;background:url(/bg.webp) 58%/cover no-repeat;opacity:var(--bg-image-opacity)}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:scroll()){body:after{will-change:transform;animation:bg-drift linear both;animation-timeline:scroll(root block)}@keyframes bg-drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(0,var(--bg-image-drift),0) scale(1.08)}}}}a{color:var(--green)}h1,h2,h3{color:var(--green-deep);margin:0 0 .4em;line-height:1.2;font-weight:400;letter-spacing:.005em}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.35rem}p{margin:0 0 .8em}strong{font-weight:700}code{font-family:ui-monospace,Menlo,monospace;font-size:.9em;background:var(--mint-soft);padding:1px 4px;border-radius:4px}.shell{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 28px 6px;max-width:1440px;width:100%;margin:0 auto}.logo{display:inline-flex;align-items:baseline;gap:8px;text-decoration:none}.logo .wm{font-size:1.7rem;font-weight:400;color:var(--green-deep);letter-spacing:.01em}.logo .wm-s{font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:#fff;background:var(--green-deep);padding:2px 9px;border-radius:999px;position:relative;top:-4px}.tagline{font-size:.9rem;color:var(--ink-soft);font-style:italic;margin-left:12px}.chip{position:relative;background:var(--green-pale);border-radius:8px;padding-right:90px;overflow:hidden}.chip,.chip .name{display:inline-block}.chip .name{background:#6f8f4a;color:#fff;padding:9px 22px 9px 18px;font-size:1.05rem;-webkit-clip-path:polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%)}.chip a{color:var(--green-deep);text-decoration:none;position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:.85rem;font-weight:700}.navbar{display:flex;flex-wrap:wrap;gap:4px;padding:8px 28px 4px;max-width:1440px;width:100%;margin:0 auto}.navbar a.nav{color:var(--green-deep);text-decoration:none;padding:7px 14px;border-radius:999px;font-size:.95rem;font-weight:600}.navbar a.nav:hover{background:rgba(255,255,255,.55)}.navbar a.nav.active{background:var(--green-deep);color:#fff}.navbar .kicker{display:none}.main{flex:1 1;width:100%;max-width:1440px;margin:0 auto;padding:14px 28px 60px}.page-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:6px 0 18px}.page-head .sub{color:var(--ink-soft);font-size:.95rem}.grid{display:grid;grid-gap:18px;gap:18px}.grid.stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.grid.two{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.card{display:flex;flex-direction:column;background:var(--card);border:1px solid rgba(255,255,255,.7);border-radius:var(--radius);padding:20px 22px;box-shadow:var(--shadow);overflow:hidden}.card,.card>*{position:relative}.card>*{z-index:1}.card h2,.card h3{margin-top:0}.card .card-sub{color:var(--ink-soft);font-size:.9rem;margin-top:-6px;margin-bottom:12px}.card-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.card-head .ico{width:34px;height:34px;color:var(--green-deep);flex:none}.card-head h2,.card-head h3{margin:0}.card-head .spacer{flex:1 1}.watermark{position:absolute;right:8px;top:8px;width:150px;height:150px;color:#7a8f9a;opacity:.13;z-index:0;pointer-events:none}.card.flush{padding:0}.card.flush .pad{padding:20px 22px}.card>:has(+.card-foot){margin-bottom:14px}.card-foot{display:flex;justify-content:space-around;gap:12px;background:var(--green-pale);padding:10px 16px;margin:auto -22px -20px;font-weight:700;color:var(--green-deep);font-size:.95rem}.card-foot a{color:var(--green-deep);text-decoration:none}.card-foot a:hover{text-decoration:underline}.stat .label{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}.stat .value{font-size:2.3rem;font-weight:400;color:var(--green-deep);line-height:1.1;margin:4px 0 2px}.stat .hint{font-size:.82rem;color:var(--ink-soft)}a.stat.link{text-decoration:none;color:inherit;display:block}a.stat.link:hover{border-color:var(--green-soft)}.stat.flag{border-left:5px solid var(--warn)}.stat.alert{border-left:5px solid var(--err)}.kv{display:flex;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fafbfa,#eef1ee);margin-bottom:8px;overflow:hidden}.kv .k{flex:none;display:inline-flex;align-items:center;gap:8px;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;border-right:1px solid var(--line);background:#fff}.kv .k,.kv .v{padding:9px 14px}.kv .v{font-size:1rem}.rows{list-style:none;padding:0;margin:0;display:grid;grid-gap:10px;gap:10px}.rows li{display:grid;grid-template-columns:130px 1fr auto;grid-gap:6px 14px;gap:6px 14px;align-items:start;background:var(--card-solid);border:1px solid var(--line);border-left:6px solid var(--green-deep);border-radius:6px;padding:10px 14px}.rows li.warn{border-left-color:var(--warn)}.rows li.err{border-left-color:var(--err)}.rows li.slate{border-left-color:var(--slate)}.rows li.grey{border-left-color:#b9c3bd}.rows .when{color:var(--green);font-size:.9rem}.rows .when .d,.rows .when .small{display:block}.rows .what a{color:var(--green);text-decoration:none;font-weight:600;font-size:1.02rem}.rows .what a:hover{text-decoration:underline}.rows .what .m{color:var(--ink-soft);font-size:.86rem}.rows .side{text-align:right;white-space:nowrap}.rows.tight li{grid-template-columns:1fr auto}.pill{display:inline-block;font-size:.74rem;padding:2px 9px;border-radius:999px;background:var(--mint-soft);color:var(--green-deep);border:1px solid var(--green-pale);margin:0 4px 4px 0;white-space:nowrap;font-weight:700}.pill.navy{background:var(--slate);color:#fff;border-color:var(--slate)}.pill.gold{background:#f4e7c3;color:#7a5a12;border-color:#ead9a8}.pill.ok{background:#e2f0e5;color:var(--ok);border-color:#c8e0cf}.pill.warn{background:#fdf0dc;color:var(--warn);border-color:#f1dcb8}.pill.grey{background:#f1f1ee;color:var(--ink-soft);border-color:#e2e2de}table.tbl{width:100%;border-collapse:collapse;font-size:.95rem}table.tbl th{text-align:left;font-size:.95rem;color:var(--green-deep);font-weight:700;padding:8px 10px;border-bottom:2px solid var(--green-deep)}table.tbl td{padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:top}table.tbl tbody tr:nth-child(2n) td{background:rgba(230,241,233,.45)}table.tbl tr:hover td{background:var(--mint)}table.tbl a.row{color:var(--green-deep);font-weight:600;text-decoration:none}table.tbl a.row:hover{text-decoration:underline}.tbl-wrap{overflow-x:auto}.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.muted{color:var(--ink-soft)}.small{font-size:.86rem}.big-empty{text-align:center;color:var(--green-deep);font-size:1.6rem;padding:18px 0 8px}.kanban{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:12px;gap:12px}.kanban .col{background:rgba(255,255,255,.55);border-radius:var(--radius);padding:10px}.kanban .col h3{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--green);margin-bottom:8px;font-weight:700}.kcard{background:#fff;border:1px solid var(--line);border-left:5px solid var(--green-deep);border-radius:8px;padding:10px 12px;margin-bottom:8px;font-size:.92rem}.kcard a{font-weight:600;text-decoration:none}.kcard .m{color:var(--ink-soft);font-size:.82rem}form.edit{display:grid;grid-gap:12px;gap:12px}form.edit .row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:12px;gap:12px}form.edit label{display:grid;grid-gap:4px;gap:4px;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);font-weight:600}form.edit input[type=date],form.edit input[type=email],form.edit input[type=tel],form.edit input[type=text],form.edit input[type=url],form.edit select,form.edit textarea{font:inherit;font-size:.95rem;text-transform:none;letter-spacing:0;color:var(--ink);padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;width:100%}form.edit textarea{min-height:96px;resize:vertical}form.edit .check{align-items:center;gap:8px;font-size:.95rem}form.edit .check,form.edit .multi{display:flex;text-transform:none;letter-spacing:0;color:var(--ink)}form.edit .multi{flex-wrap:wrap;gap:6px 14px;font-size:.92rem}form.edit .multi label{display:inline-flex;gap:6px;align-items:center;text-transform:none;letter-spacing:0;font-size:.92rem;color:var(--ink)}.btn{font:inherit;font-weight:700;letter-spacing:.12em;background:var(--green-deep);color:#fff;border:0;border-radius:8px;padding:11px 20px;cursor:pointer;font-size:.95rem}.btn:hover{background:#0b4527}a.btn{text-decoration:none;display:inline-block}.btn.ghost{background:transparent;color:var(--green-deep);border:1px solid var(--green-deep)}.btn.small{padding:6px 12px;font-size:.85rem;letter-spacing:.06em}.btn.wide{width:100%}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.notice{background:var(--card-solid);border:1px solid var(--line);border-left:5px solid var(--green-soft);padding:10px 14px;border-radius:8px;font-size:.92rem}.notice.err{border-left-color:var(--err)}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.filters a{font-size:.88rem;text-decoration:none;padding:4px 12px;border-radius:999px;border:1px solid var(--green-pale);color:var(--green-deep);background:rgba(255,255,255,.8);font-weight:600}.filters a.on{background:var(--green-deep);color:#fff;border-color:var(--green-deep)}.login{position:relative;z-index:1;min-height:100vh;display:grid;place-items:center;padding:20px}.login .box{background:var(--card);border:1px solid rgba(255,255,255,.7);border-radius:14px;padding:30px;width:100%;max-width:400px;box-shadow:var(--shadow)}.login .pw{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px}.login-logo{display:flex;justify-content:center;margin-bottom:18px}.linkcard{display:block;text-decoration:none;color:inherit}.linkcard:hover{border-color:var(--green-soft)}.linkcard .t{font-weight:400;color:var(--green-deep);font-size:1.35rem}.linkcard.off{opacity:.65}.inline{display:inline;margin:0}.list-plain{list-style:none;padding:0;margin:0}.list-plain li{padding:9px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;align-items:baseline}.list-plain li:last-child{border-bottom:0}.list-plain li.stack{display:block}.list-plain a{text-decoration:none;font-weight:600}.list-plain a:hover{text-decoration:underline}.overdue{color:var(--err);font-weight:700}.meta{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.k,.meta .k{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:2px;font-weight:600}.meta .v{font-size:.95rem}.prose{white-space:pre-wrap;max-width:68ch}.rowhead{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.contact{padding:12px 0;border-bottom:1px solid var(--line)}.contact:last-child{border-bottom:0}.contact .n{font-weight:700;color:var(--green-deep);font-size:1.02rem}.contact .lines{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:3px;font-size:.92rem}.contact .lines a{text-decoration:none}.groupline{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green-deep);font-weight:700;margin:22px 0 8px;padding-bottom:4px;border-bottom:2px solid var(--green-deep)}.groupline:first-child{margin-top:0}@media (max-width:800px){.topbar{padding:14px 16px 4px;flex-wrap:wrap}.tagline{display:none}.navbar{padding:6px 12px 2px}.navbar a.nav{padding:6px 11px;font-size:.88rem}.main{padding:10px 16px 50px}.grid.two,.rows li{grid-template-columns:1fr}.rows .side{text-align:left}.watermark{width:100px;height:100px}.chip{padding-right:70px}}.share{position:relative;z-index:1;max-width:820px;margin:0 auto;padding:22px 20px 40px}.share-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}