.public-calendar-filters{display:flex;flex-wrap:wrap;gap:16px;align-items:end;margin:20px 0}.public-calendar-filters label{margin:0}.public-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.public-calendar-grid>strong{font-size:12px;text-align:center;padding:8px}.public-calendar-day{min-height:110px;border:1px solid #dce2d5;border-radius:10px;background:#f5f8ee;padding:12px;min-width:0}.public-calendar-day>span{display:block;font-size:11px;color:#596351;margin-top:12px}.public-calendar-day details{margin-top:12px}.public-calendar-day summary{font-weight:bold;color:#506900}.public-calendar-day a{display:block;padding:9px 3px;font-size:12px;text-decoration:underline;overflow-wrap:anywhere}@media(max-width:650px){.public-calendar-grid{gap:4px}.public-calendar-day{padding:6px;min-height:85px}.public-calendar-day summary,.public-calendar-day>span,.public-calendar-day a{font-size:10px}.public-calendar-filters{align-items:stretch}.public-calendar-filters label{width:100%}}

.public-profile-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0;padding:8px;background:#f1f5e9;border:1px solid #dce2d5;border-radius:12px}.public-profile-tabs a{display:inline-flex;align-items:center;min-height:44px;padding:12px 20px;border-radius:8px;color:#35402e;font-weight:700}.public-profile-tabs a[aria-current=page]{background:#cefb47;color:#192016}.public-profile-tabs a:hover{background:#e7efda}.public-profile-tabs a:focus-visible{outline:2px solid #506900;outline-offset:2px}@media(max-width:600px){.public-profile-tabs a{flex:1;justify-content:center;font-size:13px;padding:12px}}

.public-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:28px 0}.public-calendar-heading h3{margin:0;font-size:24px}.public-calendar-scroll{overflow-x:auto;padding-bottom:12px}.public-calendar-grid{gap:12px;min-width:660px}.public-calendar-grid>strong{padding:16px 0;font-size:14px;font-weight:400}.public-calendar-day{min-height:155px;padding:16px;border-radius:16px;background:#fff}.public-calendar-day>strong{font-size:20px}.public-calendar-day.today{border:2px solid #506900;background:#f0f6dc}.public-calendar-day.has-open{background:#f8fbf0;border-color:#cbd9ad}.public-calendar-day summary{font-size:14px;color:#405500}.public-calendar-day>span{font-size:13px;color:#737b6b}.public-calendar-day a{font-size:13px;min-height:40px}.public-calendar-day details[open]{padding-bottom:6px}@media(max-width:650px){.public-calendar-heading h3{font-size:20px}.public-calendar-grid{min-width:630px;gap:8px}.public-calendar-day{padding:10px;min-height:125px}}
