
.module-nav{display:grid;gap:5px;margin:22px 0}.module-nav button{background:transparent;color:#fdf8ee;border:0;text-align:left;padding:12px 16px;border-radius:12px;font-weight:700}.module-nav button[aria-current=true],.module-nav button:hover{background:#ffad91;color:#073f32}.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin:24px 0}.module-editor{max-width:920px;display:grid;gap:14px;margin:24px 0}.module-editor label{display:grid;gap:7px}.module-editor input[type=checkbox]{width:22px;height:22px}.module-editor fieldset{border:1px solid #bed4c3;border-radius:16px;padding:18px;margin:16px 0;display:grid;gap:12px}.module-editor button{margin:4px}.contact-row{display:block;width:100%;text-align:left;margin:12px 0;padding:20px;background:#e5efe6;border:1px solid #c4d8c9;border-radius:14px}#modulepanel h1{font-size:clamp(30px,4vw,52px)}@media(max-width:850px){.module-nav{grid-template-columns:repeat(2,1fr)}aside{overflow:auto}.module-editor{padding:18px}}
.classroom main{margin:0 auto;max-width:1100px;padding:32px}.classroom .intro h1{font-size:clamp(36px,6vw,70px)}.lesson{margin:18px 0;padding:18px;border:1px solid #c4d8c9;border-radius:14px}.lesson summary{cursor:pointer;font-weight:700}.lesson-copy,.classroom details p{white-space:pre-wrap}.lesson video,.lesson iframe{width:100%;max-height:600px;aspect-ratio:16/9;border:0;border-radius:12px}.classroom img{max-width:100%;border-radius:20px}.upload-control{padding:12px;border:1px dashed #9cbbab;border-radius:12px}
aside{overflow-y:auto}.module-nav{flex-shrink:0}a.primary{display:inline-block;background:var(--coral);padding:14px 22px;border-radius:14px;color:var(--deep);font-weight:700;text-decoration:none}.module-editor input[type=file]{font-size:13px}

/* Consistent, comfortably sized CRM fields. */
body input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
body select,body textarea,#detail input:not([type=checkbox]):not([type=radio]):not([type=hidden]),#detail select,#detail textarea{
 border-radius:10px!important;border:1px solid #b9cdbf!important;padding:11px 12px!important;
 min-height:46px;box-sizing:border-box;font:inherit;font-size:14px;color:#053f33;background:#fffefa;max-width:100%;
}
body input:not([type=checkbox]):not([type=radio]):not([type=hidden]),body select{height:auto}
body textarea{min-height:116px;resize:vertical}
body input:focus-visible,body select:focus-visible,body textarea:focus-visible{outline:3px solid #89b99c;outline-offset:2px}
.module-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px}
.module-editor>*{grid-column:1/-1;min-width:0}
.module-editor>label:has(>input:is([name=first],[name=last],[name=firstName],[name=lastName],[name=email],[name=company],[name=jobTitle],[name=title],[name=eventName],[name=studentName],[name=studentEmail],[name=partnerName],[name=partnerEmail],[name=amount],[name=rate],[name=monthlyFee],[name=oneTimeFee],[type=date],[type=number])),
.module-editor>label:has(>select:is([name=contactType],[name=rewardType],[name=accessStatus],[name=software])){grid-column:auto}
.module-editor>label:has(>input[type=checkbox]){display:flex;align-items:center;gap:10px}
.module-editor>label input,.module-editor>label select,.module-editor>label textarea{width:100%;min-width:0}
.module-editor>label input[type=checkbox]{width:22px;min-width:22px}
.approved-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.approved-field-grid>label:has(textarea),.approved-field-grid>label:has(input[type=url]){grid-column:1/-1}
.secondary-contact .approved-person-edit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}
.secondary-contact .approved-person-edit>summary,.secondary-contact .approved-person-edit>button,.secondary-contact .approved-person-edit>label:has(input[name=responsibility]){grid-column:1/-1}
.secondary-contact .approved-person-edit>label{grid-column:auto;margin:14px 0 0}
.secondary-contact .approved-person-edit:not([open])>*:not(summary){display:none}
#search{width:100%;max-width:360px}
@media(max-width:720px){
 .module-editor,.approved-field-grid,.secondary-contact .approved-person-edit{grid-template-columns:minmax(0,1fr)}
 .module-editor>*,.module-editor>label,.approved-field-grid>*,.secondary-contact .approved-person-edit>*{grid-column:1/-1!important}
}

.double-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:1.25rem 0 .8rem}
.double-calendar-period{display:flex;align-items:center;gap:.65rem;min-width:0}
.double-calendar-period h2{margin:0;min-width:12rem;text-align:center;font-size:1.35rem;line-height:1.25}
.double-calendar-period .double-calendar-arrow{display:inline-flex;align-items:center;justify-content:center;min-width:2.6rem;min-height:2.6rem;padding:.25rem;font-size:1.6rem;line-height:1}
.double-calendar-views{display:flex;align-items:center;gap:.2rem;padding:.25rem;background:#e2f0e2;border:1px solid #c8ddcb;border-radius:.8rem}
.double-calendar-views .double-calendar-view{border:0;background:transparent;box-shadow:none;min-height:2.25rem;padding:.45rem .85rem}
.double-calendar-views .double-calendar-view[aria-pressed=true]{background:#ffad96;color:#073e30;box-shadow:0 2px 0 #dc775e}
.double-calendar-status{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem}
.double-calendar-status h2{font-size:1.05rem;margin:0 0 .35rem}
.double-calendar-status p{margin:.2rem 0}
.double-calendar-status button{flex-shrink:0}
.double-calendar-task{display:block;width:100%;text-align:left;cursor:pointer}
.double-calendar-day .double-calendar-task{width:33.333%;min-width:0}
.double-task-dialog{width:min(36rem,calc(100% - 2rem));max-height:80vh;overflow:auto;border:1px solid #c8ddcb;border-radius:1rem;background:#fcf8ef;color:#073e30;padding:1.5rem;box-shadow:0 18px 45px #073e3033}
.double-task-dialog::backdrop{background:#002c2180}
.double-task-dialog h2{margin:0;max-width:80%}
.double-task-description{white-space:pre-wrap;overflow-wrap:anywhere}
.double-task-link{display:inline-block;padding:.7rem 1rem;border-radius:.65rem;text-decoration:none;background:#ffad96;color:#073e30;font-weight:700}
@media(max-width:700px){.double-calendar-toolbar{align-items:stretch}.double-calendar-period{justify-content:center;width:100%}.double-calendar-period h2{min-width:0;flex:1}.double-calendar-views{margin-left:auto;margin-right:auto}.double-calendar-status{align-items:flex-start;flex-direction:column}.double-calendar-day .double-calendar-task{width:100%}}
