@font-face{font-family:Montserrat;src:url(/assets/fonts/Montserrat.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Lato;src:url(/assets/fonts/Lato-Regular.ttf) format("truetype");font-weight:400;font-display:swap}
/* Shared workspace and editor styling. */
:root{--workspace-accent:#326ea0;--workspace-ink:#122739;--workspace-muted:#657184;--workspace-border:#e4e8ef;background:#f1eff0;color:var(--workspace-ink)}
.sidebar{overflow-y:auto;padding:24px 14px}.brand{margin-bottom:22px}.brand .mark{background:var(--workspace-accent);border-radius:11px}.brand small{font-size:11px}.nav-title{color:#7b8492;font-size:10px;font-weight:750;margin-top:24px}.nav button{font-size:13px;padding:9px 12px;margin:1px 0;color:#526071}.nav button.active{background:#dfebf5;color:#204666;font-weight:700}.nav button:hover{background:#f1eff0}.main{padding-top:36px}.topbar h2{letter-spacing:-.035em;font-size:32px}.topbar p{line-height:1.6;max-width:760px}.eyebrow{font-size:10px;font-weight:750}.card{border-color:var(--workspace-border);box-shadow:0 3px 12px #18263a04;padding:24px}.card h3{font-size:17px;letter-spacing:-.02em}.card p{line-height:1.6}.field{margin-top:10px;margin-bottom:10px}.field>span,.field>label{font-size:12px;color:#526071;font-weight:650}.field input,.field select,.field textarea{border-color:#dce1e8;padding:12px;border-radius:9px}.field textarea{line-height:1.55;min-height:130px}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #326ea055;outline-offset:3px}.primary{background:#122739;border-color:#122739;padding:11px 16px}.secondary{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;color:#28374a;font-size:13px}.home-hero{background:#204666;color:white;border-radius:18px;padding:28px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.home-hero .eyebrow{color:#f6d8ae}.home-hero h3{font-size:25px;letter-spacing:-.04em;margin:10px 0}.home-hero p{color:#d0e1f0;margin:0;font-size:14px;line-height:1.6}.home-hero button{background:#ffffff14;border-color:#ffffff32;color:white;white-space:nowrap}.home-section{margin-top:32px}.home-section .section-head{margin:0 0 16px}.section-head p{margin:6px 0 0}.home-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.home-tile{font:inherit;display:flex;align-items:center;gap:16px;text-align:left;background:white;border:1px solid var(--workspace-border);border-radius:14px;padding:22px;cursor:pointer;color:var(--workspace-ink);transition:box-shadow .15s,border-color .15s}.home-tile:hover{border-color:#326ea070;box-shadow:0 5px 20px #17202d08}.tile-icon{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border-radius:12px;background:#eef4fa;color:#204666;font-size:19px;font-weight:750}.tile-copy{display:grid;gap:7px}.tile-copy strong{font-size:15px}.tile-copy>span{font-size:12px;line-height:1.5;color:var(--workspace-muted)}.tile-arrow{margin-left:auto;color:#929bad}.home-footer{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px;padding-top:24px;border-top:1px solid var(--workspace-border)}.slack-intro{margin-bottom:18px}.slack-channel-card{display:flex;flex-direction:column;gap:6px}.slack-preferences{display:grid;gap:12px;margin:8px 0 16px}.slack-check{display:flex;align-items:center;gap:9px;font-size:13px;color:#526071}.slack-channel-card .toolbar{margin-top:auto}.slack-channel-card [role=status]{min-height:20px;margin:8px 0 0}.slack-channel-card button:disabled{opacity:.5;cursor:not-allowed}.slack-grid{align-items:stretch}
/* Keep the existing editor controls and previews, with consistent spacing. */
#kidsAdmin .card,#studentsAdmin .card,#christmasAdmin .card,.bab .card{box-shadow:none}#kidsAdmin .kids-tabs{gap:8px;margin-bottom:22px}#kidsAdmin .kids-tabs button,.bab-tabs button{border-radius:9px;padding:10px 14px}.cx-admin-toolbar,.st-toolbar{border-radius:12px;padding:16px;gap:10px}.cx-admin-fields,.st-fields{padding:24px}.cx-admin-fields input:not([type=checkbox]),.cx-admin-fields select,.cx-admin-fields textarea,.st-fields input:not([type=checkbox]),.st-fields select,.st-fields textarea{font:inherit;border-radius:8px;padding:11px;border:1px solid #dce1e8}.cx-admin-fields label,.st-fields label{line-height:1.6}.cx-admin-sections,.st-sections{border-radius:12px}.cx-admin-item-fields,.st-item-fields{gap:14px}.cx-admin-fields fieldset,.st-fields fieldset{border-radius:12px;border-color:#e4e8ef;padding:18px}
@media(min-width:1600px){.home-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1000px){.main{padding:24px}.home-hero{padding:24px}.sidebar{overflow-y:auto}.nav{display:block}}@media(max-width:620px){.home-tiles{grid-template-columns:1fr}.home-hero{align-items:flex-start;flex-direction:column}.home-tile{padding:18px}.card{padding:18px}.topbar h2{font-size:27px}.home-hero h3{font-size:23px}.home-section{margin-top:26px}}

:root{font-family:Lato,system-ui,sans-serif}button,input,select,textarea{font-family:inherit}.brand h1,.topbar h2,.card h3,.section-head h3,.home-hero h3,.tile-copy strong,h1,h2,h3{font-family:Montserrat,system-ui,sans-serif}.topbar h2{font-weight:750}.home-hero{background:#204666}.home-hero h3{font-weight:700}.nav button{font-family:Lato,system-ui,sans-serif}.brand-logo{display:block;width:144px;height:auto}.brand{align-items:center;gap:10px}.brand>div{display:grid;gap:4px}.brand h1{font-size:12px;color:#204666;letter-spacing:.12em;text-transform:uppercase}.brand small{font-size:10px}.home-tile:hover{box-shadow:0 5px 20px #12273908}.avatar{background:#dfebf5;color:#204666}.home-hero .eyebrow{color:#f6d8ae}.primary:hover{background:#204666;border-color:#204666}

#studentsAdmin button.primary,#christmasAdmin button.primary,#kidsAdmin button.primary{background:#326ea0;border-color:#326ea0;color:#fff}#studentsAdmin button.primary:hover,#christmasAdmin button.primary:hover,#kidsAdmin button.primary:hover{background:#204666;border-color:#204666}#studentsAdmin button:focus-visible,#christmasAdmin button:focus-visible,#kidsAdmin button:focus-visible{outline-color:#94bcdd}#studentsAdmin .st-editor,#christmasAdmin .cx-admin-editor{background:#fff;border-color:#d0e1f0;border-radius:14px}#studentsAdmin .st-fields h2,#christmasAdmin .cx-admin-fields h2{font-size:22px;color:#204666}#studentsAdmin label,#christmasAdmin label{color:#204666}#studentsAdmin .st-item,#christmasAdmin .cx-admin-item{border-color:#d0e1f0}#studentsAdmin .st-item summary,#christmasAdmin .cx-admin-item summary{background:#eef4fa;color:#204666;border-radius:10px}#studentsAdmin .st-sections button,#christmasAdmin .cx-admin-sections button{font-family:Lato,system-ui,sans-serif}#studentsAdmin .st-sections h3,#christmasAdmin .cx-admin-sections h3{color:#204666}

/* Theme applies only to the Admin document; public website files stay untouched. */
.admin-top-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}.admin-theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:1px solid #d0e1f0;background:#fff;color:#204666;padding:7px 11px;border-radius:10px;font:600 12px Lato,system-ui,sans-serif;cursor:pointer;white-space:nowrap}.admin-theme-toggle:hover{background:#eef4fa}.admin-theme-toggle [data-admin-theme-icon]{font-size:18px;line-height:1}.admin-theme-fallback{display:flex;justify-content:flex-end;margin-bottom:18px}
:root[data-admin-theme="dark"]{color-scheme:dark;background:#122739;color:#dfebf5;--workspace-ink:#dfebf5;--workspace-muted:#a3c5e2;--workspace-border:#295a84}
:root[data-admin-theme="dark"] .app{background:#122739;color:#dfebf5}
:root[data-admin-theme="dark"] .sidebar{background:#173248;border-color:#295a84}
:root[data-admin-theme="dark"] .brand-logo{filter:invert(1)}
:root[data-admin-theme="dark"] :is(.brand h1,.brand small,.nav-title,.eyebrow,.muted,.topbar p,.section-head p){color:#a3c5e2}
:root[data-admin-theme="dark"] .nav button{color:#d0e1f0}
:root[data-admin-theme="dark"] :is(.nav button:hover,.nav button.active){background:#204666;color:#fff}
:root[data-admin-theme="dark"] :is(.card,.home-tile,.st-toolbar,.st-sections,.st-editor,.st-preview,.cx-admin-toolbar,.cx-admin-sections,.cx-admin-editor,.cx-admin-preview,.kids-editor,.kids-preview,.bab-editor,.bab-total,.pm-editor,.pm-settings,.pm-toolbar,.pm-campaigns){background:#173248;border-color:#295a84;color:#dfebf5}
:root[data-admin-theme="dark"] :is(.card h3,.tile-copy strong,.st-fields h2,.cx-admin-fields h2,.st-sections h3,.cx-admin-sections h3){color:#dfebf5}
:root[data-admin-theme="dark"] :is(.tile-copy>span,.small,.field>span,.field>label){color:#a3c5e2}
:root[data-admin-theme="dark"] :is(.tile-icon,.avatar){background:#204666;color:#dfebf5}
:root[data-admin-theme="dark"] .home-tile:hover{border-color:#94bcdd}
:root[data-admin-theme="dark"] .home-footer{border-color:#295a84}
:root[data-admin-theme="dark"] .main :is(input:not([type=checkbox]):not([type=range]),textarea,select):not(.pm-preview-frame *){background:#122739;color:#dfebf5;border-color:#326ea0}
:root[data-admin-theme="dark"] .main :is(input,textarea)::placeholder{color:#94bcdd}
:root[data-admin-theme="dark"] .main :is(label,legend):not(.pm-preview-frame *){color:#d0e1f0}
:root[data-admin-theme="dark"] .main :is(button:not(.primary):not(.home-tile):not(.media-quickfill),a.secondary):not(.pm-preview-frame *){background:#dfebf5;color:#122739;border-color:#b2cfe7}
:root[data-admin-theme="dark"] .main :is(button.primary,a.primary){background:#326ea0;color:white;border-color:#326ea0}
:root[data-admin-theme="dark"] :is(.row,.cost-list-row,.song-row,.bab-table td,.st-section-row,.cx-admin-section-row){border-color:#295a84}
:root[data-admin-theme="dark"] :is(.preview,.embed-wrap,.bab-table th,.bab-table tbody tr:nth-child(even),.st-item summary,.cx-admin-item summary,.media-title-preview){background:#204666;color:#dfebf5}
:root[data-admin-theme="dark"] :is(fieldset,.st-item,.cx-admin-item,.kids-tabs,.bab-tabs){border-color:#295a84}
:root[data-admin-theme="dark"] :is(.bab,.bab a,.bab-budget,.bab-total){color:#dfebf5}
:root[data-admin-theme="dark"] :is(.admin-theme-toggle,.admin-signout){background:#dfebf5;color:#122739;border-color:#b2cfe7}
/* Explicitly preserve preview documents and the popup's independent preview canvas. */
.main iframe,.pm-preview-frame,#pm-live{color-scheme:light}
@media(max-width:620px){.topbar{gap:14px;flex-wrap:wrap}.admin-top-actions{margin-left:auto}.admin-theme-fallback{margin-bottom:14px}}
:root[data-admin-theme="dark"] :is(#studentsAdmin .st-toolbar,#studentsAdmin .st-sections,#studentsAdmin .st-editor,#studentsAdmin .st-preview,#christmasAdmin .cx-admin-toolbar,#christmasAdmin .cx-admin-sections,#christmasAdmin .cx-admin-editor,#christmasAdmin .cx-admin-preview,#kidsAdmin .card){background:#173248;border-color:#295a84;color:#dfebf5}
:root[data-admin-theme="dark"] :is(#studentsAdmin,#christmasAdmin,#kidsAdmin) :is(input:not([type=checkbox]):not([type=range]),textarea,select){background:#122739;color:#dfebf5;border-color:#326ea0}
:root[data-admin-theme="dark"] :is(#studentsAdmin,#christmasAdmin,#kidsAdmin) :is(label,legend,.small,h2,h3){color:#d0e1f0}
:root[data-admin-theme="dark"] :is(#studentsAdmin,#christmasAdmin,#kidsAdmin) button:not(.primary){background:#dfebf5;color:#122739;border-color:#b2cfe7}
:root[data-admin-theme="dark"] :is(#studentsAdmin .st-item summary,#christmasAdmin .cx-admin-item summary){background:#204666;color:#dfebf5}
:root[data-admin-theme="dark"] :is(.admin-loading,.admin-login){background:#122739;color:#dfebf5}
:root[data-admin-theme="dark"] :is(.admin-login h1,.admin-loading h2){color:#dfebf5}

/* Neutral controls remain legible in dark mode. */
:root[data-admin-theme="dark"] .main :is(.badge:not(.green):not(.amber):not(.purple),.pill,.chip,.check-chip):not(.pm-preview-frame *){background:#dfebf5;color:#122739;border-color:#b2cfe7}
:root[data-admin-theme="dark"] .main :is(.bab-tabs button.active,.kids-tabs button[aria-current="page"]){background:#326ea0;color:#fff;border-color:#94bcdd}
:root[data-admin-theme="dark"] .main small:not(.pm-preview-frame *){color:#a3c5e2}
:root[data-admin-theme="dark"] .bab-mobile-row{background:#173248;border-color:#295a84}
/* Costs and activity fit the available width without horizontal scrolling. */
.cost-chart{width:100%;max-width:100%;gap:var(--cost-gap,3px);overflow:visible}.cost-bar-col{min-width:0;flex:1 1 0}.cost-bar-stack{width:min(28px,90%)}.cost-bar-label{font-size:9px;transform:none;max-width:100%;overflow:hidden;visibility:hidden}.cost-bar-col:nth-child(7n+1) .cost-bar-label,.cost-bar-col:last-child .cost-bar-label{visibility:visible}.cost-bar-label{white-space:nowrap}.cost-list-row>div{min-width:0;overflow-wrap:anywhere}.cost-list-row>strong{flex-shrink:0}.activity-list .row{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr)}.activity-list .row>*{min-width:0;overflow-wrap:anywhere}.activity-list .badge{width:fit-content;max-width:100%}.cost-budget-controls{align-items:end;margin:12px 0}.cost-budget-controls .field{flex:1 1 200px;max-width:320px}.cost-budget-feedback{min-height:20px;margin:0}.cost-budget-controls label{font-size:13px}
/* Recording library controls, table and downloads. */
.main:has(#recording-template) .toolbar{gap:12px;margin-bottom:18px;align-items:end}.main:has(#recording-template) .toolbar>label{display:grid;gap:7px;font-size:13px;font-weight:650;color:#204666}.main:has(#recording-template) :is(select,button){font:600 13px Lato,system-ui,sans-serif;border:1px solid #b2cfe7;border-radius:10px;min-height:42px;padding:10px 14px;background:#eef4fa;color:#122739;cursor:pointer}.main:has(#recording-template) #recording-template{min-width:190px}.main:has(#recording-template) button:hover{background:#dfebf5;border-color:#326ea0}.main:has(#recording-template) button:disabled{opacity:.55;cursor:wait}.main:has(#recording-template) [data-approve-recording]{background:#326ea0;color:#fff;border-color:#326ea0}.main:has(#recording-template) [data-delete-recording]{background:#fff1ed;color:#9c3027;border-color:#edccc6}.main:has(#recording-template) [data-delete-recording]:hover{background:#ffe4dc}.main:has(#recording-template) [data-open-recording]{background:transparent!important;border:0;padding:0;min-width:0;width:100%;color:#122739}.main:has(#recording-template) [data-open-recording]>span:first-child{flex:0 0 70px;color:#526174}.main:has(#recording-template) table{font-size:13px;width:100%;table-layout:auto}.main:has(#recording-template) th{padding:14px 12px;text-align:left;background:#eef4fa;color:#204666;font-weight:750}.main:has(#recording-template) td{padding:16px 12px;border-bottom:1px solid #dfebf5;overflow-wrap:anywhere}.main:has(#recording-template) tbody tr:last-child td{border-bottom:0}.main:has(#recording-template) [data-recording-row]:hover{background:#f5f9fc}.main:has(#recording-template) #recording-detail{margin-top:20px}.main:has(#recording-template) #recording-detail a{display:inline-flex;align-items:center;border:1px solid #b2cfe7;background:#eef4fa;color:#204666;border-radius:9px;padding:10px 14px;font-size:13px;font-weight:650;text-decoration:none}.main:has(#recording-template) #recording-detail video{border-radius:12px}.main:has(#recording-template) #recording-message:not(:empty){padding:8px 12px;color:#9c3027;background:#fff1ed;border-radius:8px}
:root[data-admin-theme="dark"] .main:has(#recording-template) .toolbar>label{color:#d0e1f0}:root[data-admin-theme="dark"] .main:has(#recording-template) #recording-template{background:#173248;color:#dfebf5;border-color:#326ea0}:root[data-admin-theme="dark"] .main:has(#recording-template) button:not([data-open-recording]):not([data-approve-recording]):not([data-delete-recording]){background:#dfebf5;color:#122739;border-color:#b2cfe7}:root[data-admin-theme="dark"] .main:has(#recording-template) [data-open-recording]{color:#dfebf5}:root[data-admin-theme="dark"] .main:has(#recording-template) [data-open-recording] small{color:#a3c5e2}:root[data-admin-theme="dark"] .main:has(#recording-template) th{background:#204666;color:#dfebf5}:root[data-admin-theme="dark"] .main:has(#recording-template) td{border-color:#295a84}:root[data-admin-theme="dark"] .main:has(#recording-template) [data-recording-row]:hover{background:#204666}
@media(max-width:700px){.activity-list .row{grid-template-columns:minmax(0,1fr);gap:8px}.cost-legend{gap:8px;flex-wrap:wrap}.main:has(#recording-template) table thead{display:none}.main:has(#recording-template) table tbody{display:grid;gap:12px}.main:has(#recording-template) table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid #d0e1f0;border-radius:12px;overflow:hidden}.main:has(#recording-template) table td:first-child{grid-column:1/-1}.main:has(#recording-template) table td:last-child{grid-column:1/-1;text-align:right}.main:has(#recording-template) table td{border:0;padding:12px!important}:root[data-admin-theme="dark"] .main:has(#recording-template) table tr{border-color:#295a84}}

:root[data-admin-theme="dark"] :is(.mobile-nav-toggle,.mobile-nav-close){background:#dfebf5;color:#122739;border-color:#b2cfe7}:root[data-admin-theme="dark"] .mobile-nav-toggle .small{color:#526174}
