/* Shared Jumping Jacks palette: family, staff and admin. Presentation only. */
html[data-admin-palette] { --ink:#454b49; --muted:#646a66; --misty:#566d7d; --jj-sage:#dce4d7; --jj-sage-line:#cfd9c8; --jj-sky:#dbe6ed; --jj-sky-line:#cedee8; --jj-rose:#efdcd9; --jj-rose-line:#e5cfcb; --jj-lilac:#e4dcef; --jj-lilac-line:#dbd1e6; }
html[data-admin-palette] body { color:#454b49; background:#f8f4ed; }
html[data-admin-palette] h1 { color:#454b49; }
html[data-admin-palette] .panel { border-color:#d8d8cf; }
html[data-admin-palette] #admin-home-menu > :nth-child(4n+1) { background:var(--jj-sage); border-color:var(--jj-sage-line); }
html[data-admin-palette] #admin-home-menu > :nth-child(4n+2) { background:var(--jj-sky); border-color:var(--jj-sky-line); }
html[data-admin-palette] #admin-home-menu > :nth-child(4n+3) { background:var(--jj-rose); border-color:var(--jj-rose-line); }
html[data-admin-palette] #admin-home-menu > :nth-child(4n+4) { background:var(--jj-lilac); border-color:var(--jj-lilac-line); }
html[data-admin-palette] .admin-category > summary > span,
html[data-admin-palette] .admin-direct > span,
html[data-admin-palette] .admin-card strong { color:#454b49; }
html[data-admin-palette] .admin-category > summary > small,
html[data-admin-palette] .admin-direct > small,
html[data-admin-palette] .admin-card small { color:#59615e; }
html[data-admin-palette] .admin-category[open] > summary { background:transparent; border-bottom-color:#454b4920; }
html[data-admin-palette] .admin-card-grid { background:#fffdfa; }
/* Two matching tiles per row, then the next approved colour. */
html[data-admin-palette] .admin-card-grid > :is(:nth-child(8n+1),:nth-child(8n+2)){background:var(--jj-sage);border-color:var(--jj-sage-line)}
html[data-admin-palette] .admin-card-grid > :is(:nth-child(8n+3),:nth-child(8n+4)){background:var(--jj-rose);border-color:var(--jj-rose-line)}
html[data-admin-palette] .admin-card-grid > :is(:nth-child(8n+5),:nth-child(8n+6)){background:var(--jj-lilac);border-color:var(--jj-lilac-line)}
html[data-admin-palette] .admin-card-grid > :is(:nth-child(8n+7),:nth-child(8n+8)){background:var(--jj-sky);border-color:var(--jj-sky-line)}
html[data-admin-palette] .admin-card:hover { box-shadow:0 4px 14px #454b4912; }
html[data-admin-palette] .admin-card > span,
html[data-admin-palette] .admin-direct > b,
html[data-admin-palette] .admin-category > summary::after { color:#566d7d; }
html[data-admin-palette] .primary,
html[data-admin-palette] #submit { background:#566d7d; color:white; }
html[data-admin-palette] .secondary,
html[data-admin-palette] .back { color:#566d7d; }
html[data-admin-palette] :is(button,a,input,select,summary):focus-visible { outline-color:#6c5c87; }

/* The same soft palette across admin forms, records, reports and messages. */
html[data-admin-palette] :is(h2,h3) { color:#454b49; }
html[data-admin-palette] :is(button,.button):not(.secondary):not(.danger):not(.delete):not(.remove):not([aria-pressed]):not([data-admin-tone]):not(.thread-button):not(.report-choices button) { background:#566d7d; color:#fff; }
html[data-admin-palette] :is(button,.button).secondary { color:#566d7d; background:#dbe6ed; border-color:#cedee8; }
html[data-admin-palette] :is(.tabs,.session-tabs) { background:#dbe6ed; }
html[data-admin-palette] :is(.tabs,.session-tabs) button { color:#566d7d; background:transparent; }
html[data-admin-palette] :is(.tabs,.session-tabs) button[aria-pressed=true] { background:#e4dcef; color:#544360; }
html[data-admin-palette] :is(.fields,.field-grid,.filter-grid,.filters,.toolbar) { border-color:#d8d8cf; }
html[data-admin-palette] :is(input,select,textarea) { accent-color:#566d7d; }
html[data-admin-palette] :is(.note,.instructions,.intro):not(.error):not(.urgent):not(.pending) { background:#dbe6ed; border-color:#cedee8; color:#435969; }
html[data-admin-palette] :is(.form-sheet,.sheet-heading,.policy-text,.record-text) { border-color:#dbd1e6; }
html[data-admin-palette] .sheet-heading { background:#e4dcef; }
html[data-admin-palette] table thead th { background:#dbe6ed; color:#454b49; }
html[data-admin-palette] :is(.invoice-header,.booking-total) { background:#e4dcef; color:#454b49; }
html[data-admin-palette] :is(.invoice-total,.totals) { background:#dce4d7; color:#454b49; }
html[data-admin-palette] [data-admin-tone=sage][data-admin-tone] { background:#dce4d7; border-color:#cfd9c8; color:#454b49; }
html[data-admin-palette] [data-admin-tone=sky][data-admin-tone] { background:#dbe6ed; border-color:#cedee8; color:#454b49; }
html[data-admin-palette] [data-admin-tone=rose][data-admin-tone] { background:#efdcd9; border-color:#e5cfcb; color:#454b49; }
html[data-admin-palette] [data-admin-tone=lilac][data-admin-tone] { background:#e4dcef; border-color:#dbd1e6; color:#454b49; }
html[data-admin-palette] :is(.thread-button,[data-admin-tone])[aria-pressed=true] { outline:2px solid #566d7d; outline-offset:-2px; }

html[data-admin-palette] .family-group[data-admin-tone] :is(.child-card,.missing-child)[data-admin-tone] { border-radius:14px; border-width:1px; border-style:solid; padding:16px; color:#454b49; }

html[data-admin-palette] .notice { background:#e4dcef; border-color:#dbd1e6; color:#544360; }
html[data-admin-palette] #correction-form .admin-correction-choices > label,
html[data-admin-palette] #correction-fields > .fields > label,
html[data-admin-palette] #correction-form .admin-correction-reason { display:block; padding:17px; border:1px solid #cfd9c8; border-radius:14px; margin:15px 0; min-width:0; }
html[data-admin-palette] #correction-form .admin-correction-choices > label { background:#dce4d7; border-color:#cfd9c8; }
html[data-admin-palette] #correction-fields > .fields > label { background:#dbe6ed; border-color:#cedee8; }
html[data-admin-palette] #correction-form .admin-correction-reason { background:#efdcd9; border-color:#e5cfcb; }
html[data-admin-palette] #correction-form :is(select,textarea) { display:block; width:100%; margin-top:9px; background:#fffdfa; }

html[data-admin-palette] [data-admin-tone] > .section-heading { background:transparent; border-bottom-color:#454b4920; }

html[data-admin-palette] .stats > .stat:nth-child(4n+1) { background:#dce4d7; border:1px solid #cfd9c8; color:#454b49; }
html[data-admin-palette] .preschool-table thead th:nth-child(4n+1) { background:#dce4d7; color:#454b49; }
html[data-admin-palette] .shuttle-counts > :nth-child(1) { display:inline-block; padding:10px 14px; border-radius:12px; background:#dce4d7; border:1px solid #cfd9c8; color:#454b49; }

html[data-admin-palette] .stats > .stat:nth-child(4n+2) { background:#dbe6ed; border:1px solid #cedee8; color:#454b49; }
html[data-admin-palette] .preschool-table thead th:nth-child(4n+2) { background:#dbe6ed; color:#454b49; }
html[data-admin-palette] .shuttle-counts > :nth-child(2) { display:inline-block; padding:10px 14px; border-radius:12px; background:#dbe6ed; border:1px solid #cedee8; color:#454b49; }

html[data-admin-palette] .stats > .stat:nth-child(4n+3) { background:#efdcd9; border:1px solid #e5cfcb; color:#454b49; }
html[data-admin-palette] .preschool-table thead th:nth-child(4n+3) { background:#efdcd9; color:#454b49; }
html[data-admin-palette] .shuttle-counts > :nth-child(3) { display:inline-block; padding:10px 14px; border-radius:12px; background:#efdcd9; border:1px solid #e5cfcb; color:#454b49; }

html[data-admin-palette] .stats > .stat:nth-child(4n+4) { background:#e4dcef; border:1px solid #dbd1e6; color:#454b49; }
html[data-admin-palette] .preschool-table thead th:nth-child(4n+4) { background:#e4dcef; color:#454b49; }

html[data-admin-palette] .shuttle-school-heading { background:#e4dcef; border-color:#dbd1e6; }

/* Staff home, forms and registers use the approved palette as well. */
html[data-admin-palette] .staff-home-card { color:#454b49; }
html[data-admin-palette] .staff-home-card strong { color:#454b49; }
html[data-admin-palette] .staff-home-card small { color:#59615e; }
html[data-admin-palette] .staff-home-arrow { color:#566d7d; }
html[data-admin-palette] .staff-home-card:hover { box-shadow:0 4px 14px #454b4912; }
html[data-admin-palette] .totals > span { padding:8px 12px; border-radius:11px; }
html[data-admin-palette] .totals > span:nth-child(4n+1) { background:#dce4d7; color:#454b49; }
html[data-admin-palette] .totals > span:nth-child(4n+2) { background:#dbe6ed; color:#454b49; }
html[data-admin-palette] .totals > span:nth-child(4n+3) { background:#efdcd9; color:#454b49; }
html[data-admin-palette] .totals > span:nth-child(4n+4) { background:#e4dcef; color:#454b49; }
html[data-admin-palette][data-palette-audience=staff] .section-heading { color:#454b49; }

/* Shared controls and family cards. Warning and availability states keep their semantic colours. */
html[data-admin-palette]{--egg:#dce4d7;--powder:#dbe6ed;--duck:#dce4d7;--sage:#dce4d7;--oat:#efdcd9;--oatmeal:#efdcd9;--ink:#454b49;--muted:#646a66}
html[data-admin-palette] :is(.home-option,.task-card,.form-section,.policy,.photo-choice,.choice,.check-panel){border-color:#d8d8cf;color:#454b49}
html[data-admin-palette] :is(.home-option,.task-card,.form-section,.policy,.staff-home-card) :is(strong,h2,h3,legend){color:#454b49}
html[data-admin-palette] :is(.home-option,.staff-home-card) small{color:#59615e}
html[data-admin-palette] :is(.home-arrow,.help,.ghost){color:#435969}
html[data-admin-palette] :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:#fffdfa;border-color:#bfcac8;color:#454b49}
html[data-admin-palette] :is(dialog,.dialog-content){background:#fffdfa;color:#454b49;border-color:#d8d8cf}
html[data-admin-palette] :is(.progress-track,.progress){background:#dbe6ed}
html[data-admin-palette] .progress{background:#788fa5}
html[data-admin-palette] .welcome-copy{border-radius:18px}
html[data-admin-palette] .brand-art{background:#dbe6ed;color:#454b49}
html[data-admin-palette] .brand-art :is(h2,p){color:#454b49}
html[data-admin-palette] [data-admin-tone=sage][data-admin-tone]:not(.error):not(.urgent):not(.pending):not(.disabled):not(.unavailable){background:#dce4d7!important;border-color:#cfd9c8;color:#454b49}
html[data-admin-palette] [data-admin-tone=sky][data-admin-tone]:not(.error):not(.urgent):not(.pending):not(.disabled):not(.unavailable){background:#dbe6ed!important;border-color:#cedee8;color:#454b49}
html[data-admin-palette] [data-admin-tone=rose][data-admin-tone]:not(.error):not(.urgent):not(.pending):not(.disabled):not(.unavailable){background:#efdcd9!important;border-color:#e5cfcb;color:#454b49}
html[data-admin-palette] [data-admin-tone=lilac][data-admin-tone]:not(.error):not(.urgent):not(.pending):not(.disabled):not(.unavailable){background:#e4dcef!important;border-color:#dbd1e6;color:#454b49}
html[data-admin-palette] :is(.choice,.photo-choice):has(input:checked){outline:2px solid #566d7d;outline-offset:-2px}
html[data-admin-palette] :is(button,[role=button],a,summary,input,select,textarea):focus-visible{outline:3px solid #6c5c87;outline-offset:3px}

/* Quiet, compact unfinished-task action on the family home screen. */
html[data-admin-palette] #account-task-reminder-open{display:inline-flex;align-items:center;justify-content:center;width:auto;max-width:100%;min-height:40px;padding:8px 12px;margin:0 0 14px;font-size:13px;font-weight:800;line-height:1.4;background:#e4dcef;color:#544360;border:1px solid #dbd1e6;border-radius:11px;box-shadow:none}
html[data-admin-palette] #account-task-reminder-open:hover{background:#e4dcef;color:#544360;box-shadow:none}

/* Family tasks continue the four-colour rhythm across categories. */
html[data-admin-palette] #account-tasks .task-group h3{color:#454b49}
html[data-admin-palette] #account-tasks .task-card .task-open{background:#fffdfa;color:#454b49;border:1px solid #c4cecc;min-height:40px;padding:8px 12px;font-size:13px;box-shadow:none}
html[data-admin-palette] #account-tasks .task-card .task-open:hover{background:#fff;color:#454b49;border-color:#788fa5;box-shadow:none}
html[data-admin-palette] #account-tasks .task-status{color:#566d7d}

/* Interior family screens: keep forms, permissions, contracts and reading panels
   on the same palette as their launch tiles, including dynamically inserted UI. */
html[data-admin-palette] dialog :is(h2,h3,h4,legend){color:#454b49}
html[data-admin-palette] :is(.policy-row,.profile-section,.profile-contact,.profile-child,.terms,.summary,.check-line,#contract-terms,#contract-inputs,#medicine-details,#medicine-conditions,#medicine-permission,.dialog-content>.field)[data-admin-tone]{padding:16px;border-width:1px;border-style:solid;border-radius:15px;margin:14px 0;min-width:0}
html[data-admin-palette] .policy-document{background:#fffdfa;border-color:#c4cecc}
html[data-admin-palette] .policy-document>summary{background:transparent;color:#435969}
html[data-admin-palette] .policy-body{background:#fffdfa;color:#454b49}
html[data-admin-palette] #contract-terms ul,html[data-admin-palette] #medicine-conditions ul{padding-left:22px;margin:0;line-height:1.65}
html[data-admin-palette] #contract-terms li+li,html[data-admin-palette] #medicine-conditions li+li{margin-top:10px}

html[data-admin-palette] :is(.profile-section,.profile-child,.profile-contact) :is(h3,h4,legend){color:#454b49}
html[data-admin-palette] dialog .field{min-width:0}
html[data-admin-palette] dialog .dialog-actions{flex-wrap:wrap}
html[data-admin-palette] dialog .dialog-actions :is(button,a){max-width:100%;white-space:normal}
html[data-admin-palette] .terms:nth-of-type(even){background:#dbe6ed;border-color:#cedee8}

html[data-admin-palette] #medicine-details[data-admin-tone]{background:#dce4d7!important;border-color:#cfd9c8}
html[data-admin-palette] #medicine-list .form-section[data-admin-tone]{background:#dbe6ed!important;border-color:#cedee8}
html[data-admin-palette] #medicine-conditions[data-admin-tone]{background:#efdcd9!important;border-color:#e5cfcb}
html[data-admin-palette] #medicine-permission[data-admin-tone]{background:#e4dcef!important;border-color:#dbd1e6}

/* Holiday days stay balanced across desktop; controls retain their booking behaviour. */
html[data-admin-palette] .dates{align-items:stretch}
html[data-admin-palette] .dates>.date-card{min-width:0;height:100%;overflow-wrap:break-word}
html[data-admin-palette] .terms:has(#selected-summary){background:#efdcd9!important;border-color:#e5cfcb}
html[data-admin-palette] .terms:has(#terms){background:#e4dcef!important;border-color:#dbd1e6}
@media(min-width:760px){html[data-admin-palette] .dates{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:500px) and (max-width:759px){html[data-admin-palette] .dates{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:499px){html[data-admin-palette] .dates{grid-template-columns:1fr}}

/* Common panel and type defaults, including pages whose original stylesheet
   did not define the reusable form-section component. */
html[data-admin-palette] body{font-family:Nunito,'Avenir Next',sans-serif}
html[data-admin-palette] :is(h1,h2,h3,h4){font-family:Fredoka,Nunito,sans-serif;color:#454b49}
html[data-admin-palette] :is(input,select,textarea,button){font-family:Nunito,'Avenir Next',sans-serif}
html[data-admin-palette] :is(.form-section,.saved-log){border-radius:16px;border-width:1px;border-style:solid;padding:16px;margin:16px 0;min-width:0}
html[data-admin-palette] :is(.child-card,.entry,.update-card,.booking-box,.payment-card){border-radius:18px}
html[data-admin-palette] .message{background:#dbe6ed;border:1px solid #cedee8;border-radius:17px;color:#454b49}
html[data-admin-palette] .message.mine{background:#efdcd9;border-color:#e5cfcb}
html[data-admin-palette] .estimate-total{background:#e4dcef;border:1px solid #dbd1e6;border-radius:17px}
html[data-admin-palette] .dates>.date-card{display:flex;flex-direction:column}
html[data-admin-palette] .dates>.date-card .check{display:flex;align-items:center;gap:9px;font:600 14px/1.4 Nunito,sans-serif;margin:12px 0 0;min-height:44px;text-align:left}
html[data-admin-palette] .dates>.date-card .check input{display:block;flex:0 0 20px;width:20px;height:20px;margin:0;min-height:20px;padding:0}
html[data-admin-palette] .dates>.date-card .check:last-child{margin-top:auto;padding-top:12px}
/* One soft, readable action-button treatment across all audiences.
   Navigation tiles and warning/destructive actions retain their own meaning. */
html[data-admin-palette] :is(button:not(.home-option):not([data-admin-tone]),.button,.primary,.secondary,.task-open):not(.danger):not(.error):not(.urgent){background:#dbe6ed!important;color:#435969!important;border:1px solid #bfd0dc;box-shadow:none}
html[data-admin-palette] :is(button:not(.home-option):not([data-admin-tone]),.button,.primary,.secondary,.task-open):not(.danger):not(.error):not(.urgent):hover:not(:disabled){background:#cedfe9!important;color:#354f61!important;box-shadow:none}
html[data-admin-palette] :is(.tabs,.session-tabs) button[aria-pressed=true]{outline:2px solid #566d7d;outline-offset:-2px}

/* Matching container/choice pairs for the parent shuttle booking form. */
html[data-admin-palette] #regular.booking-box[data-admin-tone]{background:#dce4d7!important;border-color:#cfd9c8}
html[data-admin-palette] #regular .weekday-options label{background:#e4dcef!important;border-color:#dbd1e6;font-weight:600}
html[data-admin-palette] #booking-form .individual-box.booking-box[data-admin-tone]{background:#efdcd9!important;border-color:#e5cfcb}
html[data-admin-palette] .individual-box .day-card{background:#dbe6ed!important;border-color:#cedee8;font-weight:600}
html[data-admin-palette] :is(.weekday-options label,.individual-box .day-card):has(input:checked){outline:2px solid #566d7d;outline-offset:-2px}

/* Keep contact headings inside their panels rather than sitting across a border. */
html[data-admin-palette] #family-settings-dialog fieldset.profile-contact{min-inline-size:0;display:flow-root;padding:18px}
html[data-admin-palette] #family-settings-dialog fieldset.profile-contact>legend{float:left;width:100%;max-width:100%;padding:0;margin:0 0 14px;font:700 16px/1.45 Nunito,sans-serif;color:#454b49;white-space:normal}
html[data-admin-palette] #family-settings-dialog fieldset.profile-contact>legend+.field{clear:both}

/* Emergency-contact fields sit directly on the pink contact section. */
html[data-admin-palette] #family-settings-dialog .profile-section fieldset.profile-contact[data-admin-tone]{background:transparent!important;border:0;padding:0;margin:14px 0 0;border-radius:0}

html[data-admin-palette] .notice{border-radius:14px;padding:14px 16px;line-height:1.5}

html[data-admin-palette] #child-directory>.session-tabs{gap:8px;background:#f8f4ed;flex-wrap:wrap}
html[data-admin-palette] #child-directory>.session-tabs button{border-width:1px;border-style:solid;min-width:0}
html[data-admin-palette] #child-directory>.session-tabs button[aria-pressed=true]{outline:2px solid #566d7d;outline-offset:-2px}

html[data-admin-palette] .collection-receipt{background:#dce4d7;border-color:#cfd9c8}
html[data-admin-palette] a.back[href="/shuttle-admin.html"]{background:#dbe6ed!important;color:#435969!important}

html[data-admin-palette] .form-entry fieldset[data-admin-tone]{padding:18px;border-width:1px;border-style:solid;border-radius:16px;min-width:0}
html[data-admin-palette] .form-entry fieldset[data-admin-tone]>legend{float:left;width:100%;margin:0 0 14px;padding:0;color:#454b49}
html[data-admin-palette] .form-entry fieldset[data-admin-tone]>legend+label{clear:both}

/* Family account rows retain their approved pair, including after dynamic refreshes. */
html[data-admin-palette] :is(#child-list,#outstanding-list,#photo-list,#accident-list) > .family-group:is(:nth-child(8n+1),:nth-child(8n+2)){background:var(--jj-sage)!important;border-color:var(--jj-sage-line)!important}
html[data-admin-palette] :is(#child-list,#outstanding-list,#photo-list,#accident-list) > .family-group:is(:nth-child(8n+1),:nth-child(8n+2)) :is(.child-card,.missing-child,button){background:var(--jj-lilac)!important;border-color:var(--jj-lilac-line)!important;color:var(--ink)!important}
html[data-admin-palette] :is(#child-list,#outstanding-list,#photo-list,#accident-list) > .family-group:is(:nth-child(8n+3),:nth-child(8n+4)){background:var(--jj-rose)!important;border-color:var(--jj-rose-line)!important}
html[data-admin-palette] :is(#child-list,#outstanding-list,#photo-list,#accident-list) > .family-group:is(:nth-child(8n+3),:nth-child(8n+4)) :is(.child-card,.missing-child,button){background:var(--jj-sky)!important;border-color:var(--jj-sky-line)!important;color:var(--ink)!important}
html[data-admin-palette] :is(#child-list,#outstanding-list,#photo-list,#accident-list) > .family-group:is(:nth-child(8n+5),:nth-child(8n+6)){background:var(--jj-lilac)!important;border-color:var(--jj-lilac-line)!important}
html[data-admin-palette] :is(#child-list,#outstanding-list,#photo-list,#accident-list) > .family-group:is(:nth-child(8n+5),:nth-child(8n+6)) :is(.child-card,.missing-child,button){background:var(--jj-sage)!important;border-color:var(--jj-sage-line)!important;color:var(--ink)!important}
html[data-admin-palette] :is(#child-list,#outstanding-list,#photo-list,#accident-list) > .family-group:is(:nth-child(8n+7),:nth-child(8n+8)){background:var(--jj-sky)!important;border-color:var(--jj-sky-line)!important}
html[data-admin-palette] :is(#child-list,#outstanding-list,#photo-list,#accident-list) > .family-group:is(:nth-child(8n+7),:nth-child(8n+8)) :is(.child-card,.missing-child,button){background:var(--jj-rose)!important;border-color:var(--jj-rose-line)!important;color:var(--ink)!important}
html[data-admin-palette][data-admin-screen="record-log"] #choices :is(.saved-log,a.button)[data-admin-tone="sage"]{background:var(--jj-sage)!important;border-color:var(--jj-sage-line)!important;color:var(--ink)!important}
html[data-admin-palette][data-admin-screen="record-log"] #choices :is(.saved-log,a.button)[data-admin-tone="lilac"]{background:var(--jj-lilac)!important;border-color:var(--jj-lilac-line)!important;color:var(--ink)!important}
html[data-admin-palette][data-admin-screen="record-log"] #choices :is(.saved-log,a.button)[data-admin-tone="rose"]{background:var(--jj-rose)!important;border-color:var(--jj-rose-line)!important;color:var(--ink)!important}
html[data-admin-palette][data-admin-screen="record-log"] #choices :is(.saved-log,a.button)[data-admin-tone="sky"]{background:var(--jj-sky)!important;border-color:var(--jj-sky-line)!important;color:var(--ink)!important}
html[data-admin-palette] #families > .entry:nth-child(4n+1){background:var(--jj-sage)!important;border-color:var(--jj-sage-line)!important}
html[data-admin-palette] #families > .entry:nth-child(4n+1) :is(.child-row,.badge,button){background:var(--jj-lilac)!important;border-color:var(--jj-lilac-line)!important;color:var(--ink)!important}
html[data-admin-palette] #families > .entry:nth-child(4n+2){background:var(--jj-rose)!important;border-color:var(--jj-rose-line)!important}
html[data-admin-palette] #families > .entry:nth-child(4n+2) :is(.child-row,.badge,button){background:var(--jj-sky)!important;border-color:var(--jj-sky-line)!important;color:var(--ink)!important}
html[data-admin-palette] #families > .entry:nth-child(4n+3){background:var(--jj-lilac)!important;border-color:var(--jj-lilac-line)!important}
html[data-admin-palette] #families > .entry:nth-child(4n+3) :is(.child-row,.badge,button){background:var(--jj-sage)!important;border-color:var(--jj-sage-line)!important;color:var(--ink)!important}
html[data-admin-palette] #families > .entry:nth-child(4n+4){background:var(--jj-sky)!important;border-color:var(--jj-sky-line)!important}
html[data-admin-palette] #families > .entry:nth-child(4n+4) :is(.child-row,.badge,button){background:var(--jj-rose)!important;border-color:var(--jj-rose-line)!important;color:var(--ink)!important}
html[data-admin-palette] #families .child-row{padding:14px;margin:12px 0;border-radius:14px}

/* Rounded interiors for opened family, staff and admin panels. */
html[data-admin-palette] dialog{border-radius:22px}
html[data-admin-palette] dialog :is([data-admin-tone],.sheet-heading,.section-heading,.heading,.dialog-heading,.modal-heading,.dialog-header,.modal-header){border-radius:16px}
html[data-admin-palette] dialog .sheet-heading{padding:16px 18px;margin-bottom:16px;min-width:0}
html[data-admin-palette] dialog .sheet-heading h2{margin:0 0 8px}
html[data-admin-palette] dialog .sheet-heading p:last-child{margin-bottom:0}
html[data-admin-palette] dialog .sheet-heading>div{min-width:0}
html[data-admin-palette] dialog .sheet-heading h2{overflow-wrap:anywhere}
html[data-admin-palette] dialog .policy-record{padding:16px;margin:12px 0;border-width:1px;border-style:solid;min-width:0}
/* Emergency contact fields remain directly on their existing pink panel. */
html[data-admin-palette] #family-settings-dialog .profile-section fieldset.profile-contact[data-admin-tone]{border-radius:0}

html[data-admin-palette] dialog :is(.policy-text,.record-text,.summary-strip,.notice,.feedback){border-radius:16px}
