@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,600&display=swap";:root{color:#213332;font-synthesis:none;text-rendering:optimizelegibility;background:#f7f8f4;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{background:#f7f8f4;min-width:320px;margin:0}button{font:inherit;color:inherit;cursor:pointer}.app-shell{--canvas:#f7f8f4;--paper:#fff;--paper-soft:#ecece5;--ink:#203936;--muted:#71807c;--line:#dde5df;--deep:#1e5f59;background:var(--canvas);width:min(100%,760px);min-height:100vh;color:var(--ink);margin:0 auto;padding:0 20px 108px}.app-shell.dark{--canvas:#182321;--paper:#22302d;--paper-soft:#2b3935;--ink:#eef5ee;--muted:#a2b2aa;--line:#3b4b46;--deep:#75c6b6}.app-shell.dark .readiness-card{background:#0f4945}.app-shell.dark .readiness-card h2{color:#fff}.app-shell.dark .readiness-score{color:#d8fff0}.app-shell.dark .progress-track{background:#00000042}.app-shell.dark .progress-track span{background:#f2c77e}.app-shell.dark .icon-button,.app-shell.dark .department-card,.app-shell.dark .quick-action,.app-shell.dark .plan-row,.app-shell.dark .date-button{background:var(--paper);color:var(--ink)}.app-shell.dark .service-plan-preview{background:var(--paper-soft)}.app-shell.dark .notice-card{background:#203c36;border-color:#33574f}.app-shell.dark .notice-card strong{color:#d8eee6}.app-shell.dark .notice-card span{color:#a9c4b9}.app-shell.dark .bottom-nav{border-color:var(--line);background:#182321f7}.app-shell.dark .department-summary,.app-shell.dark .team-row,.app-shell.dark .shift-card{color:var(--ink)}.app-shell.dark .modal-backdrop{background:#000000a3}.app-shell.dark .run-sheet-modal{background:var(--canvas)}.app-shell.dark .timing-banner{background:#214138}.app-shell.dark .timing-banner strong{color:#d8eee6}.app-shell.dark .modal-plan-list{border-color:var(--line)}.topbar{justify-content:space-between;align-items:center;padding:24px 0 22px;display:flex}.brand-lockup{align-items:center;gap:11px;display:flex}.brand-mark{color:#fff;background:#1e5f59;border-radius:13px;place-items:center;width:39px;height:39px;font-family:Fraunces,serif;font-size:25px;display:grid}.church-logo{object-fit:contain;background:var(--paper-soft);border-radius:10px;width:42px;height:42px}.topbar-actions{gap:7px;display:flex}.eyebrow{color:#71807c;letter-spacing:.11em;text-transform:uppercase;margin:0 0 5px;font-size:11px;font-weight:700}.eyebrow.accent{color:#b35f4e}h1,h2,p{margin-top:0}h1{letter-spacing:-.02em;margin-bottom:0;font-size:18px}h2{color:var(--ink);letter-spacing:-.045em;margin-bottom:0;font-family:Fraunces,serif;font-size:clamp(27px,6vw,36px);line-height:.98}.icon-button,.date-button,.close-button{background:0 0;border:0;place-items:center;display:grid}.icon-button{background:#edf1ec;border-radius:15px;width:48px;height:48px}.service-heading{justify-content:space-between;align-items:end;margin:12px 0 22px;display:flex}.service-meta{color:#647570;align-items:center;gap:6px;margin:10px 0 0;font-size:15px;display:flex}.date-button{background:#fff;border:1px solid #dce4dd;border-radius:15px;width:48px;height:48px}.readiness-card{color:#fff;background:#1e5f59;border-radius:23px;padding:22px;box-shadow:0 12px 32px #1c575124}.readiness-header{justify-content:space-between;align-items:start;display:flex}.readiness-card .eyebrow{color:#b8d4cb}.readiness-card h2{color:#fff}.readiness-score{color:#dcefe8;font-size:30px;font-weight:700}.progress-track{background:#fff3;border-radius:99px;height:9px;margin:21px 0 14px;overflow:hidden}.progress-track span{border-radius:inherit;background:#f2c77e;height:100%;display:block}.readiness-stats{color:#dcefe8;flex-wrap:wrap;gap:15px;margin-bottom:19px;font-size:14px;display:flex}.readiness-stats span,.timing-summary span{align-items:center;gap:6px;display:inline-flex}.warning-text{color:#b66350!important}.readiness-stats .warning-text{color:#ffd9a0!important}.primary-button{color:#263a37;background:#f2c77e;border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:52px;padding:0 18px;font-weight:700;display:inline-flex}.full-width{width:100%}.quick-actions{grid-template-columns:repeat(3,1fr);gap:9px;margin:17px 0 31px;display:grid}.quick-action{text-align:left;background:#fff;border:1px solid #dde5df;border-radius:17px;flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:92px;padding:14px;font-size:13px;font-weight:700;display:flex;position:relative}.quick-action svg{color:#1e5f59}.quick-action b{color:#884431;background:#f0d0bd;border-radius:50%;place-items:center;width:21px;height:21px;font-size:11px;display:grid;position:absolute;top:10px;right:10px}.section-block{margin:0 0 30px}.section-heading{justify-content:space-between;align-items:end;margin-bottom:14px;display:flex}.text-button{color:#1e5f59;background:0 0;border:0;align-items:center;gap:5px;padding:9px 0;font-size:14px;font-weight:700;display:inline-flex}.department-list{gap:9px;display:grid}.department-card{border:1px solid var(--line);background:var(--paper);border-radius:17px;overflow:hidden}.department-summary{text-align:left;background:0 0;border:0;grid-template-columns:11px 1fr auto auto 22px;align-items:center;gap:9px;width:100%;min-height:67px;padding:0 15px;display:grid}.department-dot{border-radius:50%;width:9px;height:9px}.department-dot.teal{background:#42988e}.department-dot.coral{background:#d87862}.department-dot.gold{background:#d8a846}.department-dot.blue{background:#6799b6}.department-dot.plum{background:#92759a}.department-card.teal,.master-department.teal,.rota-overview-card.teal{border-top:4px solid #42988e}.department-card.coral,.master-department.coral,.rota-overview-card.coral{border-top:4px solid #d87862}.department-card.gold,.master-department.gold,.rota-overview-card.gold{border-top:4px solid #d8a846}.department-card.blue,.master-department.blue,.rota-overview-card.blue{border-top:4px solid #6799b6}.department-card.plum,.master-department.plum,.rota-overview-card.plum{border-top:4px solid #92759a}.department-tab.teal.selected{background:#edf8f5;border-color:#42988e;box-shadow:3px 3px #42988e}.department-tab.coral.selected{background:#fff3ef;border-color:#d87862;box-shadow:3px 3px #d87862}.department-tab.gold.selected{background:#fff9e9;border-color:#d8a846;box-shadow:3px 3px #d8a846}.department-tab.blue.selected{background:#eff6fa;border-color:#6799b6;box-shadow:3px 3px #6799b6}.department-tab.plum.selected{background:#f7f1f8;border-color:#92759a;box-shadow:3px 3px #92759a}.app-shell.dark .department-tab.selected{color:#203936}.department-name{letter-spacing:-.02em;font-size:16px;font-weight:800}.department-status{font-size:13px;font-weight:700}.department-status.ready{color:#36806b}.department-status.needs-attention{color:#b35f4e}.department-count{color:#73827d;font-size:13px}.chevron{color:#78908a;transition:transform .2s}.chevron.rotated{transform:rotate(180deg)}.team-list{border-top:1px solid #edf1ed;padding:0 15px 12px 35px}.team-row{text-align:left;background:0 0;border:0;border-bottom:1px solid #edf1ed;grid-template-columns:1fr auto 16px;align-items:center;gap:8px;width:100%;min-height:48px;font-size:14px;display:grid}.team-row span:nth-child(2){font-size:12px;font-weight:700}.muted{color:#80908b}.add-team-button{color:#1e5f59;background:0 0;border:0;align-items:center;gap:5px;margin-top:10px;font-size:13px;font-weight:700;display:inline-flex}.service-plan-preview{background:var(--paper-soft);border-radius:21px;padding:20px}.timing-summary{color:var(--muted);justify-content:space-between;gap:10px;margin:16px 0 12px;font-size:13px;display:flex}.timing-summary .success-text{color:#36806b;font-weight:700}.plan-list{background:var(--line);border-radius:13px;gap:1px;display:grid;overflow:hidden}.plan-row{background:var(--paper);grid-template-columns:46px 1fr 24px;align-items:center;gap:10px;min-height:60px;padding:9px 12px;display:grid}.plan-row time{color:var(--deep);font-size:13px;font-weight:800}.plan-row div{gap:3px;display:grid}.plan-row strong{font-size:14px}.plan-row span{color:var(--muted);font-size:12px}.plan-status{border-radius:50%;place-items:center;width:23px;height:23px;display:grid}.plan-status.ready{color:#328269;background:#e1f1e9}.plan-status.attention{color:#b35f4e;background:#f9e3d9}.notice-card{color:#41736c;background:#eff5f1;border:1px solid #dce6e1;border-radius:16px;align-items:center;gap:12px;margin:0 0 20px;padding:15px;display:flex}.notice-card div{flex:1;gap:3px;display:grid}.notice-card strong{color:#315d57;font-size:14px}.notice-card span{color:#628078;font-size:12px}.bottom-nav{z-index:5;width:min(100%,760px);padding:9px 12px max(9px, env(safe-area-inset-bottom));background:#fffffff5;border-top:1px solid #dfe7e1;grid-template-columns:repeat(5,1fr);margin:auto;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #273b360f}.nav-item{color:#7b8b85;background:0 0;border:0;justify-items:center;gap:4px;min-height:54px;padding:6px 2px;font-size:11px;font-weight:600;display:grid}.nav-item.active{color:#1e5f59}.nav-item.active svg{stroke-width:2.6px}.modal-backdrop{z-index:10;background:#1f312e6b;justify-content:center;align-items:end;padding:12px;display:flex;position:fixed;inset:0}.run-sheet-modal{width:min(100%,650px);max-height:min(88vh,760px);padding:23px 18px max(24px, env(safe-area-inset-bottom));background:#f7f8f4;border-radius:24px 24px 16px 16px;overflow:auto;box-shadow:0 -12px 40px #1f312e2e}.modal-header{justify-content:space-between;align-items:start;margin-bottom:18px;display:flex}.close-button{color:#1e5f59;border-radius:10px;min-height:44px;padding:0 10px;font-size:14px;font-weight:700}.timing-banner{color:#317b67;background:#e1f1e9;border-radius:15px;align-items:center;gap:12px;margin-bottom:16px;padding:15px;display:flex}.timing-banner.over{color:#a65340;background:#f9e3d9}.timing-banner div{gap:3px;display:grid}.timing-banner strong{color:#315d57;font-size:14px}.timing-banner.over strong{color:#924834}.timing-banner span{color:#69807a;font-size:12px}.modal-plan-list{background:#e0e7e1;border:1px solid #e0e7e1;border-radius:15px;gap:1px;margin-bottom:20px;display:grid;overflow:hidden}.plan-page-heading{justify-content:space-between;align-items:end;gap:16px;margin:12px 0 22px;display:flex}.page-intro{max-width:390px;color:var(--muted);margin:10px 0 0;font-size:15px;line-height:1.45}.compact-button{white-space:nowrap;min-height:45px;padding:0 13px;font-size:13px}.month-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:58px;margin-bottom:17px;padding:0 5px;display:flex}.month-toolbar strong{letter-spacing:-.03em;font-family:Fraunces,serif;font-size:21px}.month-arrow{background:var(--paper);width:42px;height:42px;color:var(--deep);border:0;border-radius:12px;place-items:center;display:grid}.department-picker{margin-bottom:17px}.department-tabs{scrollbar-width:none;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.department-tabs::-webkit-scrollbar{display:none}.department-tab{border:1px solid var(--line);background:var(--paper);min-height:43px;color:var(--muted);border-radius:99px;flex:none;align-items:center;gap:7px;padding:0 13px;font-size:13px;font-weight:700;display:inline-flex}.department-tab.selected{border-color:var(--ink);color:var(--ink);box-shadow:3px 3px 0 var(--ink)}.department-tab .department-dot{width:8px;height:8px}.rota-overview-card{border:1px solid var(--line);background:var(--paper);border-radius:19px;margin-bottom:21px;padding:18px}.rota-overview-header{justify-content:space-between;align-items:start;display:flex}.rota-overview-header h3{letter-spacing:-.04em;margin:0;font-family:Fraunces,serif;font-size:27px}.overview-count{color:#328269;background:#e1f1e9;border-radius:9px;padding:7px 9px;font-size:12px;font-weight:800}.team-chip-list{flex-wrap:wrap;gap:7px;margin-top:15px;display:flex}.team-chip{background:var(--paper-soft);color:var(--muted);border-radius:8px;padding:7px 9px;font-size:12px;font-weight:700}.sunday-list{gap:11px;display:grid}.sunday-card{border:1px solid var(--line);background:var(--paper);border-radius:18px;grid-template-columns:56px 1fr;gap:12px;padding:12px;display:grid}.sunday-card.current{border:2px solid var(--deep);padding:11px}.sunday-date{background:var(--paper-soft);border-radius:13px;align-content:start;justify-items:center;height:64px;padding-top:7px;display:grid}.sunday-card.current .sunday-date{background:var(--deep);color:#fff}.sunday-date span,.sunday-date small{letter-spacing:.09em;font-size:10px;font-weight:800}.sunday-date strong{font-family:Fraunces,serif;font-size:25px;line-height:1.05}.sunday-shifts{min-width:0}.sunday-card-heading{justify-content:space-between;align-items:center;gap:8px;min-height:56px;display:flex}.sunday-card-heading div{gap:3px;display:grid}.sunday-card-heading strong{font-size:15px}.sunday-card-heading span{color:var(--muted);font-size:12px}.shift-stack{gap:6px;display:grid}.shift-card{background:var(--paper-soft);border-radius:9px;grid-template-columns:4px 1fr auto;align-items:center;gap:9px;min-height:53px;padding:6px 8px 6px 0;display:grid}.shift-accent{border-radius:4px;align-self:stretch}.shift-accent.sage{background:#42988e}.shift-accent.clay{background:#d87862}.shift-accent.sand{background:#d8a846}.shift-card div:nth-child(2){gap:2px;display:grid}.shift-card strong{font-size:13px}.shift-card span{color:var(--muted);font-size:11px}.shift-person{color:var(--ink);text-align:right;align-items:center;gap:4px;font-size:11px;font-weight:800;display:inline-flex}.shift-card.unassigned{background:#fff4e9}.app-shell.dark .shift-card.unassigned{background:#47352d}.shift-card.unassigned .shift-person{color:#b35f4e}.page-heading{justify-content:space-between;align-items:end;gap:15px;margin:12px 0 24px;display:flex}.compact-heading{margin-bottom:19px}.queue-count{color:#944d3b;white-space:nowrap;background:#f5dfd2;border-radius:10px;padding:8px 10px;font-size:13px;font-weight:800}.rota-action-card{margin-bottom:25px}.rota-action-row{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:18px;font-size:14px;display:flex}.rota-action-row strong{color:var(--ink);font-size:18px}.suggestion-panel{border-top:1px solid var(--line);margin-top:17px;padding-top:16px}.suggestion-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:34px 1fr 18px;align-items:center;gap:9px;width:100%;min-height:55px;display:grid}.suggestion-row>span:nth-child(2){gap:3px;display:grid}.suggestion-row small{color:var(--muted);font-size:11px}.avatar{color:#267263;background:#d7ece3;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.sand-avatar{color:#8f6b25;background:#f5e2bb}.role-list{gap:8px;display:grid}.role-row{border:1px solid var(--line);background:var(--paper);border-radius:15px;grid-template-columns:38px 1fr auto 18px;align-items:center;gap:10px;min-height:70px;padding:9px 12px;display:grid}.role-marker{background:var(--paper-soft);width:36px;height:36px;color:var(--deep);border-radius:11px;place-items:center;display:grid}.role-row>div:nth-child(2){gap:4px;display:grid}.role-row>div:nth-child(2) span{color:var(--muted);font-size:12px}.role-status{color:#36806b;text-align:right;font-size:11px;font-weight:800}.role-warning{background:#fff9f1;border-color:#e2b08b}.app-shell.dark .role-warning{background:#47352d}.role-warning .role-marker{color:#b35f4e;background:#f9e3d9}.publish-button{background:var(--deep);color:#fff;border:0;border-radius:15px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:55px;margin-top:20px;font-weight:800;display:flex}.app-shell.dark .publish-button{color:#13211f;background:#8bd7c5}.plan-mode-switch{background:var(--paper-soft);border-radius:13px;gap:4px;margin-bottom:13px;padding:4px;display:flex}.plan-mode-switch button{min-height:39px;color:var(--muted);background:0 0;border:0;border-radius:10px;flex:1;font-size:13px;font-weight:800}.plan-mode-switch button.active{background:var(--paper);color:var(--ink);box-shadow:0 2px 8px #1f312e14}.attendance-heading{align-items:start}.offline-pill{color:#328269;white-space:nowrap;background:#e1f1e9;border-radius:9px;align-items:center;gap:5px;padding:8px 9px;font-size:11px;font-weight:800;display:inline-flex}.checkin-summary{background:var(--deep);color:#fff;border-radius:17px;margin-bottom:13px;padding:17px}.checkin-summary strong{font-family:Fraunces,serif;font-size:26px}.checkin-summary strong span{font-family:DM Sans,sans-serif;font-size:14px;font-weight:500}.checkin-track{background:#ffffff38;border-radius:99px;height:8px;margin-top:12px;overflow:hidden}.checkin-track span{border-radius:inherit;background:#f2c77e;height:100%;display:block}.checkin-list{gap:7px;display:grid}.member-checkin{border:1px solid var(--line);background:var(--paper);text-align:left;border-radius:15px;grid-template-columns:43px 1fr auto;align-items:center;gap:11px;width:100%;min-height:72px;padding:8px 12px;display:grid}.member-checkin.present{background:#f0f8f3;border-color:#a9d8c7}.app-shell.dark .member-checkin.present{background:#203e36}.member-initial{background:var(--paper-soft);width:43px;height:43px;color:var(--deep);border-radius:13px;place-items:center;font-family:Fraunces,serif;font-size:22px;display:grid}.member-checkin.present .member-initial{color:#267263;background:#bfe4d4}.member-name{gap:2px;display:grid}.member-name strong{font-size:18px}.member-name small{color:var(--muted);font-size:12px}.check-state{color:var(--muted);text-align:right;align-items:center;gap:4px;font-size:11px;font-weight:700;display:inline-flex}.member-checkin.present .check-state{color:#328269}.member-checkin.present .check-state span{font-size:12px}.care-intro{color:#4f6d59;background:#e9ece1;border-radius:16px;align-items:center;gap:12px;margin-bottom:16px;padding:16px;display:flex}.care-intro div{gap:3px;display:grid}.care-intro strong{color:#315d57;font-size:14px}.care-intro span{color:#6b8171;font-size:12px}.care-list{gap:10px;margin-bottom:18px;display:grid}.care-card{border:1px solid var(--line);background:var(--paper);border-left:5px solid #d8a846;border-radius:14px;padding:17px}.care-card.urgent{border-left-color:#c46856}.care-card.warm{border-left-color:#d8a846}.care-card.soft{border-left-color:#7caea1}.care-card-top,.care-card-footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.care-person{font-size:16px;font-weight:800}.care-due{color:var(--muted);font-size:11px;font-weight:700}.care-reason{letter-spacing:-.02em;margin:12px 0 18px;font-family:Fraunces,serif;font-size:20px;display:block}.care-card-footer{border-top:1px solid var(--line);color:var(--muted);padding-top:12px;font-size:12px}.care-card-footer button{color:var(--deep);background:0 0;border:0;align-items:center;gap:4px;font-size:12px;font-weight:800;display:inline-flex}.secondary-button{border:1px solid var(--line);background:var(--paper);min-height:53px;color:var(--deep);border-radius:14px;justify-content:center;align-items:center;gap:8px;font-weight:800;display:inline-flex}.editable-plan-row{background:var(--paper);grid-template-columns:28px 1fr 66px;align-items:center;gap:10px;min-height:64px;padding:9px 12px;display:grid}.editable-plan-number{background:var(--paper-soft);width:25px;height:25px;color:var(--muted);border-radius:8px;place-items:center;font-size:12px;font-weight:800;display:grid}.editable-plan-row>div:nth-child(2){gap:3px;display:grid}.editable-plan-row>div:nth-child(2) span{color:var(--muted);font-size:11px}.editable-plan-row label{grid-template-columns:1fr;gap:2px;display:grid}.editable-plan-row label span{color:var(--muted);text-align:right;font-size:10px}.editable-plan-row input{border:1px solid var(--line);background:var(--paper-soft);width:58px;height:34px;color:var(--ink);text-align:center;border-radius:8px;font-weight:800}.add-plan-item{margin-bottom:9px}.editable-plan-row{grid-template-columns:28px 76px 1fr 66px}.editable-plan-row time{color:var(--deep);letter-spacing:-.04em;font-family:Fraunces,serif;font-size:25px;font-weight:600}.modal-plan-list .plan-row time{color:var(--deep);letter-spacing:-.04em;font-family:Fraunces,serif;font-size:28px;font-weight:600}.modal-plan-list .plan-row{min-height:78px}.role-switch{gap:2px;display:grid}.role-switch span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:800}.role-switch select{border:1px solid var(--line);background:var(--paper);max-width:138px;height:31px;color:var(--ink);border-radius:8px;font-size:11px;font-weight:700}.master-summary{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:17px;display:grid}.master-summary>div{background:var(--paper-soft);border-radius:13px;gap:3px;padding:14px 11px;display:grid}.master-summary strong{font-family:Fraunces,serif;font-size:24px}.master-summary span{color:var(--muted);font-size:11px;font-weight:700}.master-summary .master-warning strong{color:#b35f4e}.master-rota-list{gap:9px;display:grid}.master-department{border:1px solid var(--line);background:var(--paper);border-radius:15px;padding:16px}.master-department-heading{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.master-department-heading>div{align-items:center;gap:8px;display:flex}.master-department-heading strong{font-size:16px}.master-department-heading>span{font-size:12px;font-weight:800}.master-team-lines{border-top:1px solid var(--line);gap:7px;padding-top:11px;display:grid}.master-team-lines div{color:var(--muted);justify-content:space-between;font-size:12px;display:flex}.master-team-lines div span:last-child{color:var(--ink);font-weight:800}.run-sheet-subtitle{color:var(--muted);margin:7px 0 0;font-size:12px}.schedule-table-wrap{border:1px solid var(--line);border-radius:14px;margin-bottom:18px;overflow:hidden}.schedule-table-head,.schedule-row{grid-template-columns:52px 55px 52px minmax(145px,1fr) minmax(88px,.65fr);align-items:start;gap:8px;display:grid}.schedule-table-head{background:var(--paper-soft);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding:10px 9px;font-size:9px;font-weight:800}.schedule-row{border-top:1px solid var(--line);background:var(--paper);min-height:61px;padding:11px 9px;font-size:11px}.schedule-row time{color:var(--deep);font-weight:800}.schedule-row>span{color:var(--muted)}.schedule-row>div{gap:5px;display:grid}.schedule-row strong{font-size:11px;line-height:1.25}.schedule-row details{color:var(--muted);font-size:10px;line-height:1.35}.schedule-row summary{cursor:pointer;color:var(--deep);font-weight:800}.schedule-row details p{margin:5px 0 0}.run-sheet-notices{background:var(--paper-soft);border-radius:15px;margin-bottom:18px;padding:15px}.run-sheet-notices h3{margin:0;font-family:Fraunces,serif;font-size:21px}.run-sheet-notices ul{gap:8px;margin:13px 0 0;padding-left:18px;display:grid}.run-sheet-notices li{color:var(--muted);font-size:11px;line-height:1.4}.children-team-card{background:#e5f0e7;border-radius:18px;margin-bottom:14px;padding:18px}.app-shell.dark .children-team-card{background:#224138}.children-card-heading,.children-section-heading{align-items:center;gap:11px;display:flex}.children-card-heading>div,.children-section-heading>div{flex:1}.children-card-heading h3,.children-section-heading h3{letter-spacing:-.035em;margin:0;font-family:Fraunces,serif;font-size:23px}.team-ready,.duration-pill{color:#32705b;background:#c9e5d3;border-radius:9px;padding:7px 9px;font-size:11px;font-weight:800}.worker-list{grid-template-columns:repeat(2,1fr);gap:9px;margin-top:18px;display:grid}.worker-list span{background:#ffffffa3;border-radius:11px;gap:3px;padding:10px;display:grid}.app-shell.dark .worker-list span{background:#00000026}.worker-list b{font-size:13px}.worker-list small{color:var(--muted);font-size:11px}.children-section{border:1px solid var(--line);background:var(--paper);border-radius:18px;margin-bottom:14px;padding:18px}.children-section-heading{margin-bottom:15px}.children-section-heading svg{color:var(--deep)}.curriculum-notes{border-top:1px solid var(--line);gap:6px;padding-top:14px;display:grid}.curriculum-notes strong{color:var(--deep);margin-top:5px;font-size:12px}.curriculum-notes span{color:var(--muted);font-size:14px;line-height:1.45}.equipment-list{gap:7px;display:grid}.equipment-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:27px 1fr auto;align-items:center;gap:10px;width:100%;min-height:52px;padding:7px 0;display:grid}.equipment-check{border:2px solid var(--line);color:#fff;border-radius:8px;place-items:center;width:26px;height:26px;display:grid}.equipment-row.checked .equipment-check{background:#328269;border-color:#328269}.equipment-row>span:nth-child(2){font-size:14px;font-weight:700}.equipment-row small{color:var(--muted);font-size:11px}.equipment-row.checked small{color:#328269;font-weight:800}.media-assignment-card{background:#e4e8f2;border-radius:18px;margin-bottom:14px;padding:20px}.app-shell.dark .media-assignment-card{background:#293449}.media-card-label{color:#5d6e9a;letter-spacing:.08em;align-items:center;gap:7px;font-size:11px;font-weight:800;display:flex}.media-assignment-card h3{letter-spacing:-.045em;margin:12px 0 3px;font-family:Fraunces,serif;font-size:29px}.media-assignment-card p{color:var(--muted);margin:0;font-size:13px}.media-team-line{color:var(--muted);border-top:1px solid #5d6e9a38;gap:4px;margin-top:19px;padding-top:13px;font-size:12px;display:grid}.media-team-line strong{color:var(--ink);font-size:14px}.media-section{border:1px solid var(--line);background:var(--paper);border-radius:18px;margin-bottom:14px;padding:18px}.media-requirements{border-top:1px solid var(--line);gap:2px;padding-top:8px;display:grid}.media-requirement{border-bottom:1px solid var(--line);grid-template-columns:27px 1fr auto;align-items:center;gap:10px;min-height:49px;display:grid}.media-requirement .equipment-check{background:#8da2c7;border-color:#8da2c7;width:25px;height:25px}.media-requirement span:nth-child(2){font-size:13px;font-weight:700}.media-requirement small{color:#b35f4e;font-size:10px;font-weight:800}.media-requirement.urgent .equipment-check{background:#d87862;border-color:#d87862}.song-list{border-top:1px solid var(--line);gap:3px;padding-top:8px;display:grid}.song-list div{border-bottom:1px solid var(--line);grid-template-columns:28px 1fr;gap:9px;padding:10px 0;display:grid}.song-list strong{color:var(--deep);font-family:Fraunces,serif;font-size:20px}.song-list span,.song-list small{grid-column:2}.song-list span{font-size:14px;font-weight:800}.song-list small{color:var(--muted);font-size:11px}.media-service-facts{grid-template-columns:1fr 1fr;gap:9px;display:grid}.media-service-facts>div{background:var(--paper-soft);border-radius:15px;gap:6px;padding:15px;display:grid}.media-service-facts span{color:var(--deep);letter-spacing:.07em;align-items:center;gap:5px;font-size:10px;font-weight:800;display:flex}.media-service-facts strong{font-family:Fraunces,serif;font-size:19px;line-height:1.05}.media-service-facts small{color:var(--muted);font-size:11px}.operator-list{border-top:1px solid var(--line);gap:8px;padding-top:9px;display:grid}.operator-list div{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:4px 10px;padding:10px 0;display:grid}.operator-list span{font-size:14px;font-weight:800}.operator-list strong{color:var(--deep);text-align:right;font-size:13px}.operator-list small{color:var(--muted);grid-column:1/-1;font-size:11px}.child-list{border-top:1px solid var(--line);gap:8px;padding-top:9px;display:grid}.child-row{border-bottom:1px solid var(--line);grid-template-columns:64px 1fr auto;align-items:center;gap:10px;min-height:78px;padding:8px 0;display:grid}.child-row.checked-out{opacity:.55}.pickup-number{color:#85651f;background:#f4e2b9;border-radius:11px;justify-items:center;gap:2px;padding:8px 3px;display:grid}.pickup-number span{text-transform:uppercase;font-size:9px;font-weight:800}.pickup-number strong{letter-spacing:.05em;font-family:Fraunces,serif;font-size:22px}.child-details{gap:4px;min-width:0;display:grid}.child-details>strong{font-size:15px}.child-details>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.support-badge{color:#944d3b;background:#f5dfd2;border-radius:5px;width:max-content;padding:3px 6px;font-size:9px;font-weight:800}.checkout-button{border:1px solid var(--line);background:var(--paper-soft);min-height:38px;color:var(--deep);border-radius:9px;padding:0 8px;font-size:11px;font-weight:800}.child-row:not(.checked-out) .checkout-button{color:#a65340;background:#fff4e9;border-color:#d87862}.app-shell.dark .child-row:not(.checked-out) .checkout-button{background:#47352d}.auth-screen{color:#203936;background:#f7f8f4;align-content:center;width:min(100%,430px);min-height:100vh;margin:0 auto;padding:32px 24px;display:grid}.auth-mark{color:#fff;background:#1e5f59;border-radius:17px;place-items:center;width:57px;height:57px;margin-bottom:24px;font-family:Fraunces,serif;font-size:35px;display:grid}.auth-screen h1{letter-spacing:-.06em;max-width:320px;margin:8px 0 12px;font-family:Fraunces,serif;font-size:42px;line-height:.96}.auth-intro{color:#71807c;max-width:320px;margin-bottom:28px;font-size:16px;line-height:1.45}.auth-form{gap:15px;display:grid}.auth-form label{color:#4c625c;gap:7px;font-size:13px;font-weight:800;display:grid}.auth-form input{color:#203936;min-height:50px;font:inherit;background:#fff;border:1px solid #d5e0d9;border-radius:11px;outline:none;padding:0 13px;font-size:16px}.auth-form input:focus{border-color:#1e5f59;box-shadow:0 0 0 3px #1e5f5924}.auth-form button:disabled{cursor:wait;opacity:.65}.auth-error{color:#a65340;margin:0;font-size:13px}.auth-footnote{color:#80908b;margin-top:23px;font-size:12px}.auth-switch{color:#1e5f59;text-align:left;background:0 0;border:0;margin-top:17px;font-size:13px;font-weight:800}.auth-resend{color:#1e5f59;font:inherit;text-align:left;background:0 0;border:0;margin-top:14px;font-size:13px;font-weight:800}.agreement-screen{color:#203936;background:#f7f8f4;align-content:center;width:min(100%,620px);min-height:100vh;margin:0 auto;padding:28px 24px;display:grid}.agreement-top{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.agreement-top .auth-mark{border-radius:13px;width:43px;height:43px;margin:0;font-size:27px}.agreement-top>span{color:#71807c;font-size:12px;font-weight:800}.agreement-screen h1{letter-spacing:-.065em;max-width:550px;margin:8px 0 12px;font-family:Fraunces,serif;font-size:clamp(38px,8vw,64px);line-height:.94}.agreement-intro{color:#71807c;max-width:510px;margin:0 0 21px;font-size:16px;line-height:1.45}.agreement-progress{background:#dce7df;border-radius:99px;height:7px;margin-bottom:18px;overflow:hidden}.agreement-progress span{border-radius:inherit;background:#1e5f59;height:100%;transition:width .2s;display:block}.agreement-card{background:#fff;border:1px solid #d7e2db;border-radius:20px;min-height:275px;margin-bottom:14px;padding:25px;box-shadow:0 14px 30px #1f3d360f}.agreement-number{color:#b35f4e;font-family:Fraunces,serif;font-size:31px}.agreement-card h2{margin:24px 0 12px;font-size:clamp(27px,6vw,42px)}.agreement-card p{color:#526a62;max-width:520px;font-size:17px;line-height:1.55}.agreement-check{color:#203936;align-items:center;gap:10px;margin-top:25px;font-size:14px;font-weight:800;display:flex}.agreement-check input{accent-color:#1e5f59;width:22px;height:22px}.agreement-footnote{color:#80908b;margin:17px 0 0;font-size:12px}.role-context{border-left:5px solid var(--deep);background:var(--paper-soft);border-radius:0 13px 13px 0;gap:2px;margin:3px 0 19px;padding:13px 15px 14px;display:grid}.role-context span{color:var(--deep);letter-spacing:.12em;font-size:10px;font-weight:900}.role-context strong{color:var(--ink);letter-spacing:-.04em;font-family:Fraunces,serif;font-size:27px;line-height:1}.role-context small{color:var(--muted);font-size:11px;font-weight:600}.team-roster-list{gap:10px;margin-top:15px;display:grid}.team-roster{border-top:1px solid var(--line);padding-top:12px}.team-roster-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.team-roster-heading strong{font-size:14px}.team-roster-heading span{font-size:11px;font-weight:800}.roster-names{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.roster-names span{background:var(--paper-soft);color:var(--ink);border-radius:7px;padding:6px 8px;font-size:11px;font-weight:700}.roster-names .open-roster-slot{color:#a65340;background:#fff4e9;border:1px dashed #d87862;align-items:center;gap:3px;display:inline-flex}.department-card.expanded .department-summary{grid-template-columns:11px 1fr auto auto;min-height:61px}.glance-team-list{padding:0 15px 9px 35px}.glance-team-list .team-row{grid-template-columns:1fr auto;min-height:59px}.glance-team-list .team-row>span:first-child{gap:4px;display:grid}.glance-team-list .team-row strong{font-size:13px}.glance-team-list .team-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.glance-team-list .team-row>span:last-child{font-size:11px;font-weight:800}.small-icon{border-radius:10px;width:38px;height:38px;min-height:38px}.add-child-form{background:var(--paper-soft);border-radius:13px;gap:11px;margin:4px 0 14px;padding:14px;display:grid}.add-child-form label{color:var(--muted);gap:5px;font-size:11px;font-weight:800;display:grid}.add-child-form input{border:1px solid var(--line);background:var(--paper);min-height:42px;color:var(--ink);font:inherit;border-radius:8px;padding:0 10px;font-size:14px}.department-create-card{border:1px solid var(--line);background:var(--paper);border-radius:18px;gap:14px;margin-bottom:25px;padding:18px;display:grid}.department-create-card .children-section-heading{margin-bottom:2px}.department-create-card label{color:var(--muted);gap:6px;font-size:12px;font-weight:800;display:grid}.department-create-card input{border:1px solid var(--line);background:var(--paper-soft);width:100%;min-height:46px;color:var(--ink);font:inherit;border-radius:10px;outline:none;padding:0 12px;font-size:14px}.department-create-card input:focus{border-color:var(--deep);box-shadow:0 0 0 3px #32826921}.manager-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.managed-department-list{gap:10px;display:grid}.managed-department{border:1px solid var(--line);background:var(--paper);border-radius:16px;padding:16px}.managed-department-name{align-items:center;gap:8px;margin-bottom:13px;font-size:16px;display:flex}.manager-row{border-top:1px solid var(--line);min-height:38px;color:var(--muted);grid-template-columns:18px 55px 1fr;align-items:center;gap:8px;font-size:12px;display:grid}.manager-row svg{color:var(--deep)}.manager-row b{color:var(--ink);font-size:13px}.managed-department .text-button{margin-top:7px}.branding-card{border:1px solid var(--line);background:var(--paper);border-radius:18px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;padding:18px;display:flex}.branding-card h3{margin:3px 0 4px;font-family:Fraunces,serif;font-size:20px}.branding-card p:not(.eyebrow){color:var(--muted);margin:0;font-size:12px}.branding-controls{align-items:center;gap:12px;display:flex}.branding-preview,.branding-placeholder{object-fit:contain;background:var(--paper-soft);width:58px;height:58px;color:var(--muted);border-radius:12px;place-items:center;font-size:10px;font-weight:800;display:grid}.upload-logo-button{cursor:pointer;white-space:nowrap;position:relative;overflow:hidden}.upload-logo-button input{cursor:pointer;opacity:0;position:absolute;inset:0}.live-service-panel{background:#e4f2eb;border:1px solid #bddbd0;border-radius:18px;margin-bottom:14px;padding:16px}.app-shell.dark .live-service-panel{background:#203f37;border-color:#3e7665}.live-service-panel.running{border-color:#72bba6;box-shadow:0 0 0 3px #72bba621}.live-service-panel.paused{background:#fff4df;border-color:#e1b774}.app-shell.dark .live-service-panel.paused{background:#473b2c}.live-panel-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.live-panel-heading>div{gap:4px;display:grid}.live-kicker{color:#328269;letter-spacing:.09em;align-items:center;gap:5px;font-size:10px;font-weight:800;display:inline-flex}.live-service-panel.running .live-kicker{color:#bc5847}.live-panel-heading strong{font-size:15px}.stage-link{color:var(--deep);background:0 0;border:0;align-items:center;gap:4px;padding:7px 0;font-size:11px;font-weight:800;display:inline-flex}.live-panel-main{grid-template-columns:104px 1fr auto;align-items:center;gap:13px;margin:16px 0 14px;display:grid}.live-clock{color:var(--ink);letter-spacing:-.06em;font-family:Fraunces,serif;font-size:43px;line-height:.9}.live-position{gap:3px;min-width:0;display:grid}.live-position span,.live-position small{color:var(--muted);font-size:10px}.live-position strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.live-delta{color:#317b67;text-align:center;background:#c8e6d8;border-radius:7px;padding:6px 7px;font-size:10px;font-weight:800}.live-delta.late{color:#a65340;background:#f4d6c9}.live-controls{border-top:1px solid #32826933;gap:7px;padding-top:12px;display:flex}.live-controls button{background:var(--deep);color:#fff;border:0;border-radius:9px;align-items:center;gap:5px;min-height:38px;padding:0 10px;font-size:11px;font-weight:800;display:inline-flex}.live-controls .end-control{color:#a65340;background:0 0;margin-left:auto}.pause-bars{border-left:3px solid;border-right:3px solid;width:10px;height:13px}.live-readonly{color:var(--muted);border-top:1px solid #32826933;margin:0;padding-top:12px;font-size:11px;font-weight:700}.stage-view{color:#eff8f1;background:#111a19;min-height:100vh;padding:28px clamp(22px,6vw,80px);display:grid}.stage-brand{color:#9bb5aa;align-items:center;gap:10px;font-size:13px;font-weight:700;display:flex}.stage-brand .brand-mark{width:32px;height:32px;font-size:20px}.stage-status{color:#9de0c7;letter-spacing:.08em;border:1px solid #315d54;border-radius:99px;justify-self:end;align-items:center;gap:7px;width:max-content;margin-top:-30px;padding:8px 11px;font-size:12px;font-weight:800;display:inline-flex}.stage-content{text-align:center;align-self:center;width:100%;max-width:1000px;margin:-4vh auto 8vh}.stage-content .eyebrow{color:#8fb3a6;font-size:13px}.stage-clock{color:#f8d98e;letter-spacing:-.08em;margin:24px 0 3px;font-family:Fraunces,serif;font-size:clamp(110px,25vw,280px);line-height:.78}.stage-label{color:#8fb3a6;letter-spacing:.15em;font-size:13px;font-weight:800}.stage-rule{background:#4ea993;width:80px;height:3px;margin:30px auto}.stage-next-label{color:#8fb3a6;letter-spacing:.13em;margin:0 0 8px;font-size:12px;font-weight:800}.stage-content h1{color:#fff;letter-spacing:-.05em;margin:0;font-family:Fraunces,serif;font-size:clamp(35px,7vw,80px)}.stage-detail{color:#b7cdc2;margin:10px 0 0;font-size:clamp(15px,2vw,22px)}.stage-delta{color:#9de0c7;margin:28px 0 0;font-size:15px;font-weight:800}.stage-delta.late{color:#f09b7c}@media (width>=600px){.app-shell{padding-left:32px;padding-right:32px}.quick-actions{gap:14px}.department-list{grid-template-columns:repeat(2,1fr)}.department-card.expanded{grid-column:span 2}}.stage-clock{font-variant-numeric:tabular-nums;text-shadow:0 4px 24px #f8d98e1f;padding-left:.12em;letter-spacing:.12em!important}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
