:root {
  --background: #f5f6f3;
  --foreground: #233c34;
  --card: #ffffff;
  --card-foreground: #171717;
  --popover: #ffffff;
  --popover-foreground: #171717;
  --primary: #173c32;
  --primary-foreground: #fafafa;
  --secondary: #e9eee9;
  --secondary-foreground: #171717;
  --muted: #f5f5f5;
  --muted-foreground: #65716b;
  --accent: #e8eeea;
  --accent-foreground: #171717;
  --destructive: #e7000b;
  --border: #dce3dc;
  --input: #cbd6ce;
  --ring: #7c926b;
  --chart-1: #f54900;
  --chart-2: #009689;
  --chart-3: #104e64;
  --chart-4: #ffb900;
  --chart-5: #fe9a00;
  --radius: 0.625rem;
  --sidebar: #fafafa;
  --sidebar-foreground: #171717;
  --sidebar-primary: #171717;
  --sidebar-primary-foreground: #fafafa;
  --sidebar-accent: #f5f5f5;
  --sidebar-accent-foreground: #171717;
  --sidebar-border: #e5e5e5;
  --sidebar-ring: #a1a1a1;
}

*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--foreground);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}button,a,input,textarea{font:inherit}button,a{transition:background .18s,color .18s,box-shadow .18s}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #ae9146;outline-offset:3px}a{color:inherit;text-decoration:none}.masthead{height:104px;background:#fff;border-bottom:1px solid #e4e8e1;padding:0 4.5%;display:flex;align-items:center;gap:40px}.brand{display:flex;align-items:center;gap:15px;flex-shrink:0}.brand-mark{font-family:Georgia,serif;font-size:39px;font-weight:bold;letter-spacing:-2px;position:relative;line-height:1}.brand-mark span{color:#ad873b;font-family:Arial;font-size:10px;position:absolute;right:-6px;top:-9px}.brand-caption{border-left:1px solid #c7d2cb;padding-left:14px;font-size:10px;line-height:1.8;font-weight:bold;letter-spacing:1.5px}.masthead nav{display:flex;gap:24px;align-items:stretch;height:100%;flex:1;justify-content:center}.masthead nav button{position:relative;background:transparent;border:0;display:flex;align-items:center;gap:8px;font-size:14px;color:#6a776e;white-space:nowrap}.masthead nav button.active{color:#214837;font-weight:600}.masthead nav button.active:after{content:'';position:absolute;bottom:0;height:3px;background:#a9914b;left:0;right:0}.account{display:flex;align-items:center;gap:10px;font-size:13px;max-width:190px}.account>span:last-child{overflow-wrap:anywhere}.account small{display:block;font-size:12px;color:#778378}.avatar{display:grid;place-items:center;width:37px;height:37px;background:#edf1ec;border:1px solid #dce4db;border-radius:50%;flex-shrink:0}.topline{display:flex;justify-content:space-between;padding:10px 4.5%;background:#163d30;color:#d9e3d9;font-size:11px;letter-spacing:1px}.topline span:first-child{display:flex;align-items:center;gap:8px;color:#e0c48a}.app{min-height:100vh;display:flex;flex-direction:column}main{width:min(1320px,91%);margin:0 auto;flex:1;padding:44px 0 60px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:35px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:#90712d;margin:0 0 10px}.page-heading h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(30px,3.2vw,43px);letter-spacing:-1.4px;margin:0 0 11px;line-height:1.2}.page-heading p:not(.eyebrow){color:#6b766e;margin:0;font-size:15px}.heading-icon{background:#e8ede5;color:#526548;width:76px;height:76px;border-radius:50%;display:grid;place-items:center;margin-right:10px}.panel{background:#fff;border:1px solid #dfe5dd;border-radius:10px}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;margin:0 0 19px;gap:15px}.month-switch{display:flex;align-items:center;gap:15px}.month-switch h2{font-size:20px;min-width:185px;text-align:center;font-weight:600;margin:0;text-transform:capitalize}.month-switch button{border:1px solid #dbe1d7;background:#fff;border-radius:6px;padding:8px;display:grid;place-items:center}.toolbar-actions{display:flex;gap:12px;align-items:center}.subtle{border:1px solid #dce3d9;border-radius:6px;background:transparent;padding:9px 14px;color:#536255;font-size:14px}.choice{width:100%;min-width:170px;background:white;height:42px;font-size:14px;box-shadow:none}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:24px;align-items:start}.calendar-panel{overflow:hidden}.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.weekdays{background:#f9faf7;border-bottom:1px solid #e2e7df}.weekdays span{font-size:11px;letter-spacing:1px;font-weight:600;color:#737f73;padding:14px;text-align:center}.day{min-height:98px;border-bottom:1px solid #e7ebe3;border-right:1px solid #e7ebe3;padding:8px 7px}.day:nth-child(7n){border-right:0;background:#fcfcfa}.day:nth-child(7n-1){background:#fcfcfa}.day.outside{background:#fafbf8}.day.chosen{background:#e8eee2}.day-number{border:0;background:transparent;width:27px;height:27px;border-radius:50%;padding:0;color:#526451;font-size:13px;text-align:center}.day.today .day-number{background:#234d39;color:#fff}.calendar-event{display:block;width:100%;border:0;background:#e8eee2;border-left:2px solid #758950;color:#405c38;border-radius:3px;text-align:left;padding:4px 6px;margin-top:5px;font-size:11px;line-height:1.3;overflow:hidden}.calendar-event b,.calendar-event span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event b{font-weight:600}.calendar-event.muted-event{background:#f0efeb;border-color:#a2a79b;color:#777e72}.more{font-size:11px;color:#5e7055;background:none;border:0}.calendar-key{display:flex;gap:20px;padding:15px;font-size:11px;color:#778170;align-items:center}.calendar-key span{display:flex;align-items:center;gap:7px}.calendar-key span:last-child{margin-left:auto}.calendar-key i{width:7px;height:7px;background:#79945a;border-radius:2px}.calendar-key .legend-muted i{background:#b5b8ab}.member-card{padding:25px;background:#1b4033;border-radius:10px;color:white;position:relative;overflow:hidden}.member-card .mini-icon{display:grid;place-items:center;color:#d8bc7c;border:1px solid #647354;width:46px;height:46px;border-radius:50%;margin-bottom:28px}.member-card .eyebrow{color:#d0b276;font-size:10px}.member-card h2{font-family:Georgia,serif;font-weight:400;font-size:28px;letter-spacing:-.5px;line-height:1.25;white-space:pre-line;margin:9px 0 17px}.member-card p:not(.eyebrow){color:#c8d4c9;font-size:14px;line-height:1.7;margin:0 0 23px}.member-card button{padding:11px;background:#ddc58c;color:#294130;border:0;border-radius:5px;width:100%;font-size:13px;font-weight:600}.small-panel{display:flex;gap:12px;padding:23px 4px 6px;color:#697b60}.small-panel svg{flex-shrink:0;margin-top:2px}.small-panel h3{margin:0 0 6px;font-weight:600;font-size:14px;color:#3c523d}.small-panel p{font-size:13px;line-height:1.6;margin:0;color:#7a8275}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:33px 0 18px}.section-heading h2{font-size:20px;font-weight:500;margin:0;display:flex;align-items:center;gap:10px}.count{font-family:Arial;background:#e6ece0;font-size:12px;border-radius:5px;padding:3px 8px;color:#5b6e4a}.empty{padding:35px;color:#52644c;min-height:190px}.empty [data-slot=empty-description]{font-size:14px}.event-list{display:grid;gap:12px}.event-card{display:flex;gap:23px;align-items:center;text-align:left;border:1px solid #dce3d7;border-radius:9px;background:#fff;padding:23px;width:100%}.event-card:hover{box-shadow:0 5px 18px #193b3010;border-color:#8f9f80}.date-stamp{display:flex;flex-direction:column;justify-content:center;align-items:center;background:#f1f3eb;width:66px;height:73px;border-radius:7px;flex-shrink:0}.date-stamp b{font-family:Georgia;font-size:30px;line-height:1.1}.date-stamp span{text-transform:uppercase;font-size:11px;letter-spacing:1px;color:#7b856d;margin-top:3px}.event-main{flex:1}.tags{display:flex;align-items:center;gap:10px;margin-bottom:6px}.type-tag{font-size:11px;font-weight:700;letter-spacing:.4px;color:#7c6636;background:#f2eedf;padding:3px 8px;border-radius:4px}.status{font-size:12px;background:#f0f1ec;color:#69745f;padding:4px 8px;border-radius:4px;display:inline-block}.status.open{color:#4a733f;background:#edf2e6}.event-card h3{font-size:19px;font-weight:600;margin:0 0 8px}.event-card p{font-size:13px;display:flex;gap:6px;align-items:center;margin:0;color:#798170}.divider{margin:0 5px}.event-meta{display:flex;flex-direction:column;gap:7px;text-align:right}.event-meta strong{font-size:19px;font-weight:500}.event-meta span{font-size:12px;color:#7b836f}.card-action{font-size:13px;color:#405c38;margin-left:20px;padding:10px;border:1px solid #d5dfca;border-radius:5px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:#204b36;color:#fff;border:1px solid #204b36;border-radius:6px;padding:11px 18px;font-size:14px;font-weight:600;line-height:1.5;white-space:normal}.button:hover{background:#2e5e43}.button.secondary{background:#fff;color:#244a34;border-color:#cbd8bf}.text-button{display:inline-flex;align-items:center;gap:6px;color:#456636;background:transparent;border:0;font-size:14px;padding:5px 0;text-decoration:underline;text-underline-offset:4px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px;color:#445941;font-size:14px}.field span{font-weight:500}.field input,.field textarea{border:1px solid #cdd8c5;background:white;border-radius:5px;padding:11px 12px;color:#223e29;min-width:0;font-size:16px;width:100%}.field input:disabled{background:#f1f3ee;color:#6a7763}.form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:23px}.form-section{padding:28px;margin-bottom:23px}.form-section>h2{font-size:20px;margin-top:0;margin-bottom:22px}.section-title{display:flex;align-items:center;gap:12px;margin-bottom:25px}.section-title h2{font-size:21px;font-weight:500;margin:0}.step{color:#a58c4c;border:1px solid #e6dcc0;border-radius:50%;font-size:12px;width:28px;height:28px;display:grid;place-items:center}.profile-layout{display:grid;grid-template-columns:minmax(0,850px) 240px;gap:40px}.profile-aside{padding:20px 0;color:#758368}.profile-aside h2{font-family:Georgia;font-size:24px;font-weight:400;color:#314f36}.profile-aside p{font-size:14px;line-height:1.8}.dog-form{padding:0 0 20px;border-bottom:1px solid #e5eade;margin-bottom:20px}.dog-form h3{font-size:16px;display:flex;gap:9px;align-items:center;margin:0 0 20px}.registration-list{display:grid;gap:15px}.registration{padding:25px;display:flex;gap:20px;align-items:center}.registration h2{font-size:22px;font-weight:500;margin:7px 0}.registration p{margin:0;color:#78846f;font-size:14px}.registration>div:first-child{flex:1}.registration>div:nth-child(2){display:flex;flex-direction:column;gap:10px;align-items:flex-end}.registration-actions{display:flex;flex-direction:column;gap:8px}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.admin-stats>div{padding:22px;display:grid;grid-template-columns:1fr 40px;gap:5px}.admin-stats svg{grid-column:2;grid-row:1/3;color:#8e9c7b}.admin-stats strong{font-family:Georgia;font-size:29px;font-weight:400;grid-row:1}.admin-stats span{font-size:13px;color:#7b8770;grid-column:1}.notice{padding:15px 18px;background:#f6f1e1;color:#7c652f;border:1px solid #e4d6ae;border-radius:6px;margin-bottom:23px;font-size:14px}.form-section .section-heading{margin-top:0}.table-actions{display:flex;gap:15px}td small{display:block;color:#7a8570;font-size:12px;margin-top:4px}.entries{margin-top:20px}.portal-dialog{background:#fff;color:#2d4833;padding:30px;max-height:90dvh;overflow-y:auto;border-radius:10px;gap:18px}.portal-dialog [data-slot=dialog-title]{font-family:Georgia;font-size:29px;font-weight:400;line-height:1.2}.portal-dialog [data-slot=dialog-description]{font-size:14px;color:#7a866e}.wide-dialog{max-width:700px!important}.detail-tags{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#7d896f}.description{white-space:pre-wrap;font-size:15px;line-height:1.7;margin:0}.detail-price{display:flex;justify-content:space-between;padding:17px 0;border-top:1px solid #dfe6d7;border-bottom:1px solid #dfe6d7;font-size:15px}.detail-price strong{font-size:20px}.muted{color:#7a866f;font-size:14px}.prefill{display:flex;gap:10px;background:#f0f4ec;padding:14px;border-radius:5px;font-size:14px}.prefill span{display:block;color:#74836a;font-size:12px;margin-top:3px}.fine{font-size:12px;color:#7d8972;margin:0}.signin{max-width:600px;padding:45px;margin:40px auto;text-align:center}.signin svg{margin:0 auto;color:#6c8655}.signin h1{font-family:Georgia;font-size:36px;font-weight:400}.signin p{color:#78856e;margin:20px 0 30px}.loading{display:grid;gap:30px}.footer-brand{font-family:Georgia;font-size:24px;font-weight:bold}.footer-brand span{font-family:Arial;font-size:12px;color:#849077;font-weight:400;margin-left:15px}footer{display:flex;justify-content:space-between;align-items:center;width:91%;margin:0 auto;padding:23px 0;border-top:1px solid #dce4d3;gap:25px}footer>div:last-child{display:flex;gap:20px}footer a,footer button{display:flex;align-items:center;gap:6px;font-size:12px;color:#77866c;background:transparent;border:0}
@media(min-width:1500px){.day{min-height:112px}}@media(max-width:1100px){.masthead{gap:20px;padding:0 4%}.brand-caption{display:none}.masthead nav{gap:18px}.account{max-width:130px}.calendar-layout{grid-template-columns:minmax(0,1fr) 230px;gap:18px}.member-card{padding:20px}.card-action{display:none}.profile-layout{grid-template-columns:1fr 200px;gap:25px}}
@media(max-width:800px){.masthead{height:auto;flex-wrap:wrap;justify-content:space-between;padding:21px 5% 0;gap:20px}.masthead nav{order:3;width:100%;flex:auto;justify-content:flex-start;gap:23px;overflow-x:auto;height:49px}.masthead nav button{font-size:13px;padding-bottom:10px;gap:6px}.account{max-width:220px}.brand-mark{font-size:33px}.brand-caption{display:block;font-size:8px}.topline{padding:9px 5%}.topline span:last-child{display:none}main{width:90%;padding-top:30px}.page-heading{margin-bottom:27px}.page-heading h1{font-size:33px}.heading-icon{display:none}.calendar-layout{grid-template-columns:1fr}.calendar-layout aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.member-card{grid-column:1/-1;display:none}.small-panel{padding-top:5px}.calendar-toolbar{flex-wrap:wrap}.toolbar-actions{width:100%;justify-content:space-between}.calendar-key{gap:10px;font-size:10px}.day{min-height:84px;padding:6px 3px}.weekdays span{padding:10px 2px}.calendar-event{font-size:10px;padding:3px}.calendar-event span{display:none}.event-card{padding:17px;gap:14px}.event-card h3{font-size:17px}.event-card p{flex-wrap:wrap}.event-meta strong{font-size:16px}.event-meta span{font-size:11px}.date-stamp{width:51px;height:65px}.profile-layout{grid-template-columns:1fr}.profile-aside{display:none}.form-section{padding:23px}.page-heading>.button{font-size:12px;padding:9px 12px}.registration{flex-wrap:wrap}.registration-actions{width:100%}.admin-stats{gap:10px}.admin-stats>div{padding:14px;display:block}.admin-stats svg{display:none}.admin-stats strong{display:block;font-size:22px}.admin-stats span{font-size:12px}footer{width:90%;align-items:flex-start}.footer-brand span{display:block;margin:5px 0 0;max-width:160px}.section-heading h2{font-size:18px}.calendar-key span:last-child{display:none}}
@media(max-width:480px){.form-grid{grid-template-columns:1fr}.page-heading{align-items:flex-start}.page-heading h1{font-size:29px}.page-heading>svg{display:none}.page-heading:has(>.button){flex-direction:column}.calendar-layout aside{grid-template-columns:1fr}.small-panel{padding-top:8px}.small-panel:last-child{display:none}.day{min-height:66px}.calendar-event b{font-size:9px}.month-switch h2{min-width:180px}.event-card{flex-wrap:wrap}.event-meta{margin-left:65px;flex-direction:row;align-items:center}.event-card p{font-size:12px}.masthead nav{gap:20px}.masthead nav svg{display:none}.account>span:last-child{display:none}.wide-dialog,.portal-dialog{padding:23px}.section-heading{flex-wrap:wrap}.calendar-key{padding:10px}.day-number{font-size:12px;width:23px;height:23px}.brand-caption{font-size:8px}.choice{min-width:0}}
.program-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 0 18px;color:#65735e;font-size:14px}.program-toolbar .choice{width:210px}.program-panel{overflow:hidden}.program-table{min-width:940px;font-size:14px}.program-table th{background:#edf1e9;color:#586b4d;font-size:13px;font-weight:600;padding:15px 18px;border-bottom:1px solid #dce4d5}.program-table td{padding:20px 18px;white-space:normal;vertical-align:middle}.program-row{cursor:pointer}.program-row:hover{background:#f5f8f0}.program-table time{white-space:nowrap;font-weight:600}.program-title{background:none;border:0;padding:0;text-align:left;color:#214934;font-weight:600;font-size:16px;min-width:150px;max-width:300px}.program-title:hover{text-decoration:underline;text-underline-offset:4px}.program-detail{display:block;color:#738269;font-size:13px;margin-top:5px}.program-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:125px}.program-actions .button{font-size:13px;padding:8px 12px}.program-actions .text-button{font-size:13px}.program-table td:nth-child(3){min-width:140px}.program-table td:nth-child(4){min-width:85px}.program-table td:nth-child(5){white-space:nowrap}@media(max-width:800px){.program-table th,.program-table td{padding:14px}.program-toolbar .choice{width:190px}}
.account-controls{display:flex;align-items:center;gap:15px}.signout-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 12px;border:1px solid #cdd8c5;border-radius:6px;font-size:14px;white-space:nowrap;background:#fff;color:#244a34}.signout-button:hover{background:#edf2e8}.account-controls .account small{overflow-wrap:anywhere}.account-login .eyebrow{margin-top:25px}.login-email{overflow-wrap:anywhere}.login-actions{display:flex;flex-direction:column;gap:12px}.account-help{text-align:left;border-top:1px solid #dce4d3;margin-top:30px;padding-top:24px}.account-help h2{font-size:17px;font-weight:600;margin:0}.account-help p{font-size:14px;margin:12px 0;line-height:1.7}.account-login .button svg{margin:0;color:inherit}@media(max-width:1100px){.account-controls .account{display:none}.account-controls{gap:8px}}@media(max-width:480px){.signout-button{padding:8px 10px}.account-login{padding:27px 21px}.account-login h1{font-size:30px}}
.role-badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:5px;padding:6px 9px;font-size:13px;font-weight:600;white-space:nowrap}.role-admin{background:#f2e5be;color:#6b531d;border:1px solid #dfca8b}.role-member{background:#eaf1e8;color:#3d633f;border:1px solid #ccdcca}.login-role{margin:0 0 22px}.account-controls .account{max-width:145px}@media(max-width:1350px){.account-controls .account{display:none}}@media(max-width:480px){.account-controls{flex-wrap:wrap;justify-content:flex-end;gap:5px}.account-controls .role-badge{font-size:12px;padding:4px 6px}.masthead:has(.account-controls){gap:12px}.account-controls .signout-button{font-size:13px;padding:7px 9px}}
.event-status-requested{--event-ink:#1558a6;--event-fill:#edf5ff;--event-hover:#dfedff;--event-badge:#dcecff;--event-border:#8ebcf0}.event-status-open{--event-ink:#236434;--event-fill:#eff8f0;--event-hover:#e1f1e3;--event-badge:#daf0de;--event-border:#90c99b}.event-status-closed{--event-ink:#a02828;--event-fill:#fff0f0;--event-hover:#ffe1e1;--event-badge:#ffdddd;--event-border:#e9a0a0}.event-status-draft{--event-ink:#5b6257;--event-fill:#f5f6f3;--event-hover:#ecefe7;--event-badge:#e9ece4;--event-border:#c5ccbc}tr[class*="event-status-"]{background:var(--event-fill)}tr[class*="event-status-"]:hover{background:var(--event-hover)}tr[class*="event-status-"] td:first-child{border-left:4px solid var(--event-ink)}tr[class*="event-status-"] .program-title,tr[class*="event-status-"] td:first-child b{color:var(--event-ink)}.event-badge{display:inline-flex;align-items:center;background:var(--event-badge);color:var(--event-ink);border:1px solid var(--event-border);border-radius:5px;padding:4px 9px;font-size:14px;font-weight:600;white-space:nowrap}.event-legend{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.detail-tags{flex-wrap:wrap;gap:10px}
.request-list{display:grid;gap:18px}.request-card{background:#fff;border:1px solid #dae2d5;border-radius:8px;padding:24px}.request-card-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.request-card h3{font-size:21px;margin:12px 0 8px;font-weight:600}.request-card-head p{font-size:15px;color:#67765d;margin:0}.request-actions{display:flex;gap:9px;flex-wrap:wrap}.reject-button{background:#fff;color:#a02828;border-color:#d49c9c}.reject-button:hover{background:#fff0f0}.request-facts{display:flex;flex-wrap:wrap;gap:9px 22px;margin:20px 0 12px;font-size:14px;color:#586c4c}.request-description{white-space:pre-wrap;line-height:1.7;margin:12px 0;font-size:15px}.request-contact{display:flex;flex-wrap:wrap;gap:12px 20px;border-top:1px solid #e2e9dd;padding-top:15px;font-size:14px;margin-top:18px}.request-contact span{display:flex;align-items:center;gap:6px}.request-reason{background:#f3f5f0;border-radius:6px;padding:15px;margin-top:15px;font-size:14px}.request-reason p{white-space:pre-wrap;margin:7px 0 0}.request-submit{margin-top:18px}.request-management .section-heading h2{flex-wrap:wrap}.masthead nav{gap:18px}@media(max-width:1100px){.masthead nav{gap:14px}.masthead nav button{font-size:13px}.masthead nav button svg{display:none}}@media(max-width:800px){.request-card-head{flex-direction:column}.request-card{padding:18px}.request-facts{gap:8px 15px}.masthead nav{gap:22px;justify-content:flex-start}.request-actions .button{font-size:13px}.request-contact span{overflow-wrap:anywhere}}

.administrators-list{list-style:none;padding:0;margin:20px 0}.administrators-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid #e2e7df}.administrators-list li>div{min-width:0}.administrators-list strong,.administrators-list li>div>span{display:block;overflow-wrap:anywhere}.administrators-list li>div>span{font-size:14px;color:#647264}.administrator-form{display:flex;align-items:flex-end;gap:16px;margin-top:24px}.administrator-form .field{flex:1;margin:0}.administrator-form select{width:100%;min-height:44px;padding:10px;border:1px solid #cbd5c9;border-radius:6px;background:#fff;font:inherit}.administrator-form button{min-height:44px}@media(max-width:640px){.administrators-list li,.administrator-form{align-items:stretch;flex-direction:column}.administrators-list .role-badge{align-self:flex-start}}

[hidden]{display:none!important}select{font:inherit;border:1px solid #cdd8c5;border-radius:5px;background:#fff;color:#223e29;padding:10px;width:100%}.field select{min-height:44px}.masthead nav a{display:flex;align-items:center;font-size:14px;white-space:nowrap;color:#6a776e}.masthead nav a.active{color:#214837;border-bottom:3px solid #a9914b}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:12px;color:#6b766e;font-weight:600;background:#f9faf7}th,td{padding:16px;border-bottom:1px solid #e7ebe3}td{font-size:14px}.program-detail{display:block;font-size:12px;color:#778170;margin-top:5px}.event-legend{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.event-badge{padding:4px 9px;border-radius:5px;display:inline-block;font-size:12px;white-space:nowrap;background:#f0f1ec;color:#69745f}.event-status-requested,.event-status-pending{background:#e8f1ff;color:#245c97}.event-status-open,.event-status-approved,.event-status-paid,.event-status-confirmed{background:#eaf4e7;color:#39753b}.event-status-closed,.event-status-rejected,.event-status-failed{background:#fbecec;color:#a53c3c}tr.event-status-open{background:#f8fcf6}tr.event-status-requested{background:#f5f9ff}tr.event-status-closed{background:#fff8f8}.program-toolbar{display:flex;align-items:center;gap:14px;margin:20px 0}.program-toolbar label{display:flex;align-items:center;gap:15px}.program-toolbar select{width:auto}.account-controls{display:flex;align-items:center;gap:12px}.role-badge{border-radius:5px;font-size:12px;padding:4px 8px;background:#eaf4e7;color:#39753b}.signout-button{background:transparent;border:1px solid #cdd8c5;border-radius:5px;padding:8px;color:#244a34;font-size:13px}.error{background:#fbecec;border-color:#edbbbb;color:#a53c3c}.account-login{max-width:600px;margin:35px auto}.account-login form{text-align:left}.login-actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:22px;font-size:14px;text-decoration:underline}.account-login h1{font-family:Georgia,serif;font-size:34px;font-weight:400}details{margin:22px 0}summary{cursor:pointer;font-weight:600;padding:8px 0}details[open]>summary{margin-bottom:20px}dialog{border:1px solid #dfe5dd;width:min(600px,92vw);max-height:90vh}dialog::backdrop{background:#10261988}dialog h2{font-family:Georgia,serif;font-size:29px;font-weight:400}.close-dialog{float:right}.dialog-feedback{clear:both}#feedback{position:relative;z-index:2}.description{margin:20px 0}input,textarea,select{max-width:100%}.profile-layout>div{min-width:0}.button{text-align:center}@media(max-width:800px){.masthead nav a{font-size:13px}.account-controls{flex-wrap:wrap}.program-table{min-width:780px}}@media(max-width:480px){.account{display:none}.program-toolbar,.program-toolbar label{flex-wrap:wrap}.signin{padding:24px}.masthead{gap:12px}.account-controls{gap:6px}.role-badge{font-size:11px}}
.admin-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px;align-items:start}.admin-sidebar{padding:22px;position:sticky;top:20px}.admin-sidebar h2{font-size:22px;margin-bottom:16px}.admin-sidebar nav{display:flex;flex-direction:column;gap:6px}.admin-sidebar nav a{padding:12px;border-radius:8px;text-decoration:none;color:inherit}.admin-sidebar nav a[aria-current],.admin-sidebar nav a:hover{background:#184d3a;color:white}.admin-content{min-width:0}.admin-content .admin-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-stats a{text-decoration:none;color:inherit}.member-search{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:24px}.member-search .field:first-child{flex:1;min-width:220px}.member-search .field{margin:0}.member-actions{display:flex;flex-direction:column;align-items:start;gap:8px}.danger{color:#a12626}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:22px}.admin-content td small{display:block;margin-top:5px;overflow-wrap:anywhere}.admin-content table{min-width:740px}@media(max-width:900px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{position:static}.admin-sidebar nav{flex-direction:row;flex-wrap:wrap}.admin-sidebar nav a{padding:9px}.admin-content .admin-stats{grid-template-columns:1fr}.member-search{align-items:stretch}}
.member-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px}.member-detail-grid p{margin:5px 0 12px;overflow-wrap:anywhere}.member-dog+.member-dog{border-top:1px solid #dde5de;margin-top:20px;padding-top:16px}@media(max-width:600px){.member-detail-grid{grid-template-columns:1fr}}

.captcha-container{margin:16px 0;max-width:100%;overflow-x:auto}
.public-nav{margin-left:auto;display:flex;gap:28px;align-items:center}
/* Public homepage: photographic banner and compact competition schedule. */
.public-home{background:#fff}.public-home main{width:100%;padding:0;max-width:none}.public-home .topline{display:none}.public-home .masthead{height:90px;padding:0 max(5%,calc((100% - 1240px)/2));gap:24px}.public-home .public-nav{margin-left:auto;height:auto;align-items:center}.public-home .public-nav a{height:auto;line-height:1.4;padding:12px 0}.public-home .public-nav .button{background:#214837;color:white;padding:12px 20px;border-radius:5px;min-height:0}.public-home .masthead nav{align-self:center;height:auto;align-items:center}.public-home .masthead nav a{color:#214837}.public-home .masthead nav a.button:hover{background:#315d44;color:white}.jpw-banner{width:100%;min-height:420px;background:linear-gradient(90deg,rgba(14,30,22,.83) 0%,rgba(14,30,22,.65) 31%,rgba(14,30,22,.13) 67%,rgba(14,30,22,.08) 100%),url('/assets/jpw-banner.jpg') center 54%/cover no-repeat;color:#fff;display:flex;align-items:center}.jpw-banner-inner{width:min(1240px,90%);margin:0 auto;padding:54px 0}.jpw-banner .eyebrow{color:#e3c88d;font-size:11px;letter-spacing:2px}.jpw-banner h1{font-family:Georgia,serif;font-size:clamp(38px,4vw,58px);font-weight:700;line-height:1.1;letter-spacing:-1px;margin:18px 0}.jpw-banner-inner>p:not(.eyebrow){color:#f0f1e9;font-size:16px;line-height:1.65;margin:0 0 28px}.jpw-banner .button{background:#d9bb78;border-color:#d9bb78;color:#172f24;padding:12px 22px;border-radius:5px;gap:24px;font-size:13px}.jpw-home-content{width:min(1240px,90%);margin:0 auto}.jpw-next-strip{display:flex;align-items:center;gap:25px;padding:25px 0;border-bottom:1px solid #e2e8df;font-size:13px;flex-wrap:wrap}.jpw-next-label{font-size:10px;text-transform:uppercase;letter-spacing:1.3px;color:#827344}.jpw-next-strip strong{font-size:15px}.jpw-next-strip>span:not(.jpw-next-label):not(.jpw-next-link){color:#65716b}.jpw-next-link{margin-left:auto;color:#214837;font-size:12px;font-weight:600}.jpw-agenda{padding:44px 0 52px;scroll-margin-top:22px}.jpw-agenda-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.jpw-agenda-heading .eyebrow{font-size:10px;color:#897746;letter-spacing:1.8px}.jpw-agenda-heading h2{font-family:Georgia,serif;font-size:36px;line-height:1.1;margin:10px 0 12px;font-weight:600}.jpw-agenda-heading p:not(.eyebrow){font-size:14px;color:#65716b;margin:0}.jpw-agenda-count{font-size:12px;color:#65716b;border:1px solid #e1e6dd;border-radius:4px;padding:6px 11px;white-space:nowrap}.jpw-filter{display:flex;flex-wrap:wrap;gap:24px;border-bottom:1px solid #dce3d7;margin:26px 0 22px}.jpw-filter a{padding:12px 2px;color:#65716b;font-size:13px;border-bottom:3px solid transparent;margin-bottom:-1px}.jpw-filter a[aria-current],.jpw-filter a:hover{color:#214837;border-bottom-color:#214837;font-weight:600}.jpw-program-labels,.jpw-row-main{display:grid;grid-template-columns:95px minmax(200px,1fr) 100px 95px 160px 145px;gap:18px;align-items:center}.jpw-program-labels{padding:12px 24px;background:#f2f4ee;border-radius:5px;font-size:10px;letter-spacing:.9px;text-transform:uppercase;color:#687663}.jpw-program-row{border:1px solid #e1e7dc;border-radius:6px;margin-top:12px;scroll-margin-top:24px;background:#fff;overflow:hidden}.jpw-program-row:target{border-color:#ad9657;box-shadow:0 0 0 2px #eadfc4}.jpw-row-main{padding:22px 24px}.jpw-date{border-right:1px solid #e2e8df;display:flex;flex-direction:column;gap:2px}.jpw-date strong{font-family:Georgia,serif;font-size:32px;line-height:1.1}.jpw-date span{font-size:11px;color:#65716b}.jpw-type{font-size:9px;letter-spacing:1px;color:#8b7743}.jpw-match h3{font-size:18px;line-height:1.25;margin:5px 0 6px;font-weight:600;overflow-wrap:anywhere}.jpw-match p{font-size:12px;color:#65716b;margin:0}.jpw-row-class,.jpw-row-price{font-size:13px}.jpw-row-price{font-weight:600}.jpw-status{font-size:11px;display:inline-flex;align-items:center;gap:6px;background:#f0eee7;color:#7e704c;padding:5px 9px;border-radius:4px}.jpw-status:before{content:'●';font-size:7px}.jpw-status.is-open{color:#29633d;background:#edf5ec}.jpw-row-status small{display:block;font-size:10px;color:#65716b;margin-top:7px}.jpw-row-main .button{font-size:12px;padding:10px 12px;border-radius:4px;display:flex;justify-content:space-between;gap:14px}.jpw-match-details{border-top:1px solid #eef1ea;background:#fbfcf8;font-size:12px;color:#65716b}.jpw-match-details summary{padding:10px 24px;cursor:pointer;color:#4d6352;font-size:11px}.jpw-match-details>div{padding:0 24px 14px;max-width:800px}.jpw-mobile-label{display:none}.jpw-empty{padding:40px 24px;text-align:center;background:#f5f7f1;border-radius:6px;margin-top:12px}.jpw-get-started{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid #e1e7dc;padding:36px 0 52px}.jpw-get-started>div+div{border-left:1px solid #e1e7dc;padding-left:40px}.jpw-get-started span{font-size:9px;letter-spacing:1px;color:#8b7743}.jpw-get-started h3{font-family:Georgia,serif;font-size:22px;margin:9px 0 10px;font-weight:600}.jpw-get-started p{font-size:13px;color:#65716b;margin:0 0 16px}.jpw-get-started a{font-size:12px;font-weight:600;color:#214837}.public-home footer{margin-top:0}@media(max-width:1050px){.jpw-program-labels,.jpw-row-main{grid-template-columns:75px minmax(160px,1fr) 75px 75px 135px 120px;gap:12px}.jpw-row-main{padding:20px}.jpw-program-labels{padding:12px 20px}.public-home .masthead{height:auto;min-height:85px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.jpw-banner{min-height:390px}}@media(max-width:800px){.jpw-program-labels{display:none}.jpw-row-main{grid-template-columns:60px minmax(0,1fr) auto;gap:18px 16px}.jpw-date{grid-column:1;grid-row:1}.jpw-match{grid-column:2/4;grid-row:1}.jpw-row-class{grid-column:1/3;grid-row:2}.jpw-row-price{grid-column:3;grid-row:2;text-align:right}.jpw-row-status{grid-column:1/3;grid-row:3}.jpw-row-main .button{grid-column:3;grid-row:3}.jpw-mobile-label{display:inline;font-size:11px;color:#65716b;margin-right:8px}.jpw-get-started{gap:22px}.jpw-get-started>div+div{padding-left:22px}.jpw-next-strip{gap:10px 20px}.jpw-next-label{flex-basis:100%}.jpw-banner{background-position:62% center;min-height:360px}.jpw-banner h1{font-size:40px}.public-home .public-nav{gap:18px}.jpw-agenda-heading h2{font-size:32px}}@media(max-width:550px){.public-home .masthead{gap:12px}.public-home .brand-caption{font-size:8px}.public-home .public-nav{width:100%;justify-content:space-between;margin:0}.public-home .public-nav a{font-size:12px}.public-home .public-nav .button{padding:9px 13px}.jpw-banner{min-height:350px;background-position:68% center}.jpw-banner-inner{padding:38px 0}.jpw-banner h1{font-size:35px;max-width:250px}.jpw-banner-inner>p:not(.eyebrow){font-size:14px;max-width:230px}.jpw-banner .button{font-size:12px;padding:11px 16px}.jpw-next-link{margin-left:0;flex-basis:100%;margin-top:3px}.jpw-agenda{padding-top:32px}.jpw-agenda-heading{align-items:start}.jpw-agenda-heading h2{font-size:28px}.jpw-agenda-heading p:not(.eyebrow){font-size:12px}.jpw-agenda-count{font-size:10px;padding:5px 7px}.jpw-filter{gap:16px}.jpw-filter a{font-size:12px}.jpw-row-main{padding:18px;gap:15px 12px}.jpw-match h3{font-size:17px}.jpw-match-details summary{padding:10px 18px}.jpw-get-started{grid-template-columns:1fr;gap:24px;padding-bottom:36px}.jpw-get-started>div+div{border-left:0;border-top:1px solid #e1e7dc;padding:22px 0 0}}
/* Readable type, complete registration and a site-wide color preference. */
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.65}h1,h2,h3,h4,.page-heading h1,.signin h1,.jpw-banner h1,.jpw-agenda-heading h2,.jpw-date strong,.jpw-get-started h3{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:-.025em}h1,h2,h3{font-weight:650}.field>span,.field input,.field select,.field textarea{font-size:15px}.muted,.jpw-match p,.jpw-agenda-heading p:not(.eyebrow){color:#526455}.jpw-program-labels{font-size:11px}.jpw-row-class,.jpw-row-price,.jpw-row-main .button,.jpw-filter a{font-size:14px}.jpw-match h3{font-size:19px}.jpw-status,.jpw-row-status small,.jpw-match-details summary{font-size:12px}.masthead nav a,.public-home .masthead nav a{font-size:14px}.masthead nav{align-items:center;height:auto}.masthead nav a.button{color:#fff;align-self:center;min-height:0;padding:11px 18px}.theme-toggle{display:inline-flex;align-items:center;gap:7px;border:1px solid #ccd7cc;background:#f5f7f1;color:#214837;padding:8px 10px;border-radius:6px;font-size:12px;line-height:1.2;flex-shrink:0}.theme-symbol{font-size:19px}.signup-page.signin{max-width:860px;width:100%;text-align:left;padding:38px}.signup-page h1{font-size:32px}.signup-page h2{font-size:20px;margin:28px 0 16px}.signup-intro{color:#526455;font-size:15px}.signup-page .dog-form h3{font-size:17px}.signup-page .login-actions{display:flex;flex-wrap:wrap;gap:12px 22px;justify-content:flex-start;margin-top:26px}.captcha-container{overflow-x:visible;min-height:78px}.g-recaptcha{min-height:78px}
html[data-theme="dark"]{--background:#101914;--foreground:#e5ece4;--card:#19251d;--card-foreground:#e5ece4;--popover:#19251d;--popover-foreground:#e5ece4;--primary:#a8d2b1;--primary-foreground:#102116;--secondary:#25362a;--secondary-foreground:#e5ece4;--muted:#1c2b21;--muted-foreground:#b5c5b7;--accent:#26382b;--accent-foreground:#e5ece4;--border:#3a4c3c;--input:#3a4c3c;color-scheme:dark}
html[data-theme="dark"] body,html[data-theme="dark"] .public-home{background:#101914;color:#e5ece4}
html[data-theme="dark"] :is(.masthead,footer,.panel,.portal-dialog,.request-card,.small-panel,.dog-form,.registration,.jpw-program-row,.signin,.admin-sidebar){background:#19251d;color:#e5ece4;border-color:#3a4c3c}
html[data-theme="dark"] :is(h1,h2,h3,h4,.brand,.brand-mark,.account,.jpw-match h3,.jpw-date strong,.jpw-row-class,.jpw-row-price){color:#eef4ec}
html[data-theme="dark"] :is(.field input,.field textarea,.field select,input,textarea,select){background:#112016;color:#eef4ec;border-color:#48614c}
html[data-theme="dark"] :is(.muted,.field>span,.signup-intro,.jpw-match p,.jpw-date span,.jpw-row-status small,.jpw-agenda-heading p:not(.eyebrow),.jpw-next-strip>span,.jpw-get-started p,.jpw-mobile-label,.account small){color:#bac9bb}
html[data-theme="dark"] :is(.masthead nav a,.public-home .masthead nav a,.login-actions a,.text-button,.jpw-get-started a,.jpw-next-link,.jpw-filter a,.jpw-match-details summary){color:#c3ddc5}
html[data-theme="dark"] :is(.notice,.secondary,.button.secondary,.jpw-program-labels,.jpw-match-details,.jpw-empty,.profile-aside,.role-member,.role-badge,.theme-toggle){background:#25362a;color:#deeadc;border-color:#48614c}
html[data-theme="dark"] .notice.error{background:#49272a;color:#ffd0d0;border-color:#8b5158}
html[data-theme="dark"] :is(.jpw-agenda-count,.jpw-next-strip,.jpw-filter,.jpw-get-started,.jpw-get-started>div+div,.jpw-date,.member-dog+.member-dog,td,th,details){border-color:#3a4c3c}
html[data-theme="dark"] :is(th,thead){background:#25362a;color:#deeadc}
html[data-theme="dark"] .jpw-status{background:#3a3424;color:#ecdaa6}html[data-theme="dark"] .jpw-status.is-open{background:#29432d;color:#c1e8c1}
html[data-theme="dark"] .jpw-filter a[aria-current]{color:#c5e1bb;border-bottom-color:#c5e1bb}html[data-theme="dark"] .danger{color:#ffb4b4}
html[data-theme="dark"] :is(.button,.masthead nav a.button,.public-home .masthead nav a.button){background:#a7cba6;color:#142619;border-color:#a7cba6}html[data-theme="dark"] .jpw-banner .button{background:#dfc486;color:#182a1b;border-color:#dfc486}html[data-theme="dark"] .jpw-banner h1{color:#fff}
@media(max-width:1050px){.theme-label{display:none}.theme-toggle{padding:7px 9px}.masthead{flex-wrap:wrap;gap:14px;height:auto;min-height:90px;padding-top:12px;padding-bottom:12px}}@media(max-width:600px){.signup-page.signin{padding:24px 18px}.signup-page h1{font-size:27px}.theme-toggle{margin-left:auto}.signup-page .form-grid{grid-template-columns:1fr}.jpw-row-main .button{font-size:12px}.jpw-filter{gap:15px}.jpw-filter a{font-size:12px}}
html[data-theme="dark"] :is(.event-badge,.status,.type-tag,.tags span,.section-title,.program-toolbar,.program-panel){background:#25362a;color:#deeadc;border-color:#48614c}html[data-theme="dark"] :is(.description,.registration p,.profile-aside p,.request-description,.request-facts,.request-contact,.program-detail,.fine,.field input:disabled){color:#bac9bb}html[data-theme="dark"] input::placeholder,html[data-theme="dark"] textarea::placeholder{color:#92a795}
.jpw-featured{display:flex;align-items:center;gap:28px;margin:28px 0 0;padding:28px 32px;background:#f5f3e9;border:1px solid #e2d8b9;border-left:5px solid #ad9250;border-radius:8px}.jpw-featured-date{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#214837;color:#fff;border-radius:7px;min-width:95px;padding:17px 15px;gap:4px}.jpw-featured-date strong{font-size:40px;line-height:1;font-weight:700}.jpw-featured-date span{font-size:13px}.jpw-featured-info{flex:1;min-width:0}.jpw-featured-info .eyebrow{font-size:11px;color:#806a30;letter-spacing:1.2px;margin:0 0 8px}.jpw-featured-info h2{font-size:27px;line-height:1.2;margin:0 0 10px}.jpw-featured-info>p:not(.eyebrow){font-size:15px;margin:0 0 4px}.jpw-featured-info>span{font-size:13px;color:#526455}.jpw-featured-actions{display:flex;flex-direction:column;align-items:center;gap:12px}.jpw-featured-actions .button{padding:13px 22px;font-size:14px;gap:22px}.jpw-featured-actions .text-button{font-size:12px}html[data-theme="dark"] .jpw-featured{background:#283125;border-color:#756a43}html[data-theme="dark"] .jpw-featured-info .eyebrow{color:#e3c88d}html[data-theme="dark"] .jpw-featured-info>span{color:#bac9bb}@media(max-width:700px){.jpw-featured{flex-wrap:wrap;padding:22px 18px;gap:18px}.jpw-featured-date{min-width:76px;padding:15px 10px}.jpw-featured-date strong{font-size:34px}.jpw-featured-info h2{font-size:22px}.jpw-featured-info>p:not(.eyebrow){font-size:13px}.jpw-featured-actions{width:100%;align-items:stretch}.jpw-featured-actions .text-button{text-align:center}}

/* Fotobanner in ledenportaal en beheer */
.jpw-portal-banner{min-height:270px}.jpw-portal-banner .jpw-banner-inner{padding:36px 0}.jpw-portal-banner h1{font-size:clamp(30px,3.5vw,46px)}.jpw-portal-banner .jpw-banner-inner>p:last-child{margin-bottom:0}@media(max-width:550px){.jpw-portal-banner{min-height:220px}.jpw-portal-banner .jpw-banner-inner{padding:28px 0}}

.jpw-countdown{margin-top:18px;display:flex;flex-direction:column;gap:4px}.jpw-countdown>span{font-size:13px}.jpw-countdown strong{font-size:clamp(22px,3vw,30px);font-variant-numeric:tabular-nums;line-height:1.3;color:#214837}.jpw-countdown small{font-size:12px;color:#526455}html[data-theme="dark"] .jpw-countdown strong{color:#dfc486}html[data-theme="dark"] .jpw-countdown small{color:#b0c2b1}

/* Footerachtergrond over de volledige paginabreedte */
footer{width:100%;max-width:none;margin:0;padding:23px max(5%,calc((100% - 1240px)/2));box-sizing:border-box}@media(max-width:550px){footer{width:100%;padding:23px 5%}}
