:root{color:#24332f;font-synthesis:none;text-rendering:optimizelegibility;--ink:#24332f;--muted:#66746f;--faint:#6b7772;--line:#dfe5e1;--surface:#fff;--surface-soft:#f1f5f2;--primary:#2f6758;--primary-dark:#255347;--primary-soft:#e2eee9;--success:#477860;--warning:#a36a24;--warning-soft:#fff5e6;--danger:#a34646;--danger-soft:#fff0f0;--shadow:0 14px 40px #22352f14;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f6f7f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#f6f7f4;min-width:320px}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-dark)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #2f675838}h1,h2,h3,p{margin-top:0}h1{color:#1d2d28;letter-spacing:-.045em;margin-bottom:.45rem;font-size:clamp(2rem,4vw,2.8rem);line-height:1.08}h2{color:#253a33;letter-spacing:-.02em;margin-bottom:.65rem;font-size:1.16rem;line-height:1.25}h3{margin-bottom:.3rem;font-size:1rem}p{color:var(--muted);line-height:1.55}.app-loading{min-height:100vh;color:var(--muted);justify-content:center;align-items:center;gap:.8rem;display:flex}.spinner{border:2px solid var(--line);border-top-color:var(--primary);border-radius:50%;width:20px;height:20px;animation:.75s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.sidebar{z-index:20;background:#edf2ee;border-right:1px solid #dbe3de;flex-direction:column;width:238px;padding:26px 20px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{appearance:none;text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:0;align-items:center;gap:.7rem;padding:0;display:flex}.brand:hover{color:var(--ink)}.brand-mark{background:var(--primary);color:#fff;letter-spacing:-.03em;border-radius:13px 13px 13px 5px;flex:none;place-items:center;width:38px;height:38px;font-size:.72rem;font-weight:800;display:inline-grid;box-shadow:0 5px 14px #2f675833}.brand-mark.large{border-radius:17px 17px 17px 7px;width:52px;height:52px;font-size:.9rem}.brand>span:last-child{flex-direction:column;line-height:1.12;display:flex}.brand strong{font-size:1rem}.brand small{color:var(--muted);font-size:.82rem}.main-nav{flex-direction:column;gap:5px;margin-top:44px;display:flex}.main-nav a{color:#596963;border-radius:11px;align-items:center;gap:.8rem;padding:11px 13px;font-size:.94rem;font-weight:620;display:flex}.main-nav a:hover{color:var(--ink);background:#ffffffa6}.main-nav a.active{background:var(--surface);color:var(--primary);box-shadow:0 3px 12px #2842390f}.sidebar-action{justify-content:center;margin-top:26px}.account-link{color:var(--ink);border-radius:12px;align-items:center;gap:.65rem;margin-top:auto;padding:10px;display:flex}.account-link:hover{background:#ffffffb3}.account-link>span:nth-child(2){flex-direction:column;flex:1;min-width:0;display:flex}.account-link b{color:var(--primary);letter-spacing:.04em;text-transform:uppercase;margin-bottom:2px;font-size:.61rem}.account-link strong{white-space:nowrap;text-overflow:ellipsis;font-size:.86rem;overflow:hidden}.account-link small{color:var(--muted)}.account-link>.icon{color:var(--primary);flex:none}.avatar{width:35px;height:35px;color:var(--primary-dark);background:#d9e5df;border-radius:50%;flex:none;place-items:center;font-size:.72rem;font-weight:750;display:inline-grid}.mobile-header,.bottom-nav,.mobile-fab{display:none}.app-main{min-height:100vh;margin-left:238px}.page{width:min(1280px,100%);margin:0 auto;padding:42px 42px 80px}.narrow-page{width:min(760px,100%)}.page-header{justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:28px;display:flex}.page-header p{margin-bottom:0}.agenda-page{padding-top:30px}.agenda-header{align-items:center;margin-bottom:16px}.agenda-header .eyebrow{margin-bottom:2px}.agenda-header h1{margin-bottom:0;font-size:2.45rem}.today-heading{align-items:center}.eyebrow{color:var(--primary);text-transform:uppercase;letter-spacing:.095em;margin-bottom:.5rem;font-size:.68rem;font-weight:780;line-height:1.4;display:block}.header-actions{align-items:center;gap:.6rem;display:flex}.button{appearance:none;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.45rem;padding:.72rem 1rem;font-size:.88rem;font-weight:690;line-height:1.2;transition:transform .12s,background .12s,border-color .12s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:not-allowed}.button.primary{color:#fff;background:var(--primary);box-shadow:0 5px 14px #2f675829}.button.primary:hover:not(:disabled){background:var(--primary-dark)}.button.secondary{color:var(--primary-dark);background:var(--primary-soft);border-color:#d3e3dc}.button.quiet{color:var(--muted);background:0 0}.button.success{color:#fff;background:var(--success)}.button.destructive{color:#fff;background:var(--danger);box-shadow:0 5px 14px #a3464629}.button.destructive:hover:not(:disabled){background:#8f3838}.button.warning-action{color:#fff;background:#9a6d27;box-shadow:0 5px 14px #9a6d2729}.button.warning-action:hover:not(:disabled){background:#81591e}.button.small{border-radius:8px;padding:.48rem .68rem;font-size:.78rem}.button.large{min-height:48px}.button.full{width:100%}.icon-button{appearance:none;border:1px solid var(--line);background:var(--surface);cursor:pointer;min-width:38px;height:38px;color:var(--muted);border-radius:9px;place-items:center;padding:0;display:inline-grid}.icon-button:hover{color:var(--ink);border-color:#c7d1cc}.text-button{appearance:none;cursor:pointer;color:var(--primary);text-align:center;background:0 0;border:0;padding:.25rem 0;font-size:.84rem;font-weight:680}.text-button:hover{color:var(--primary-dark);text-decoration:underline}.text-button.align-left{text-align:left;align-self:flex-start}.danger{color:var(--danger)!important}.panel,.calendar-panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 2px 4px #1c312905}.panel+.panel{margin-top:18px}.section-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:18px;display:flex}.section-heading h2,.section-heading .eyebrow{margin-bottom:0}.section-heading .eyebrow{margin-bottom:.35rem}.count-badge{background:var(--warning);color:#fff;border-radius:999px;place-items:center;min-width:28px;height:28px;padding:0 8px;font-size:.76rem;font-weight:750;display:inline-grid}.count-badge.soft{background:var(--primary-soft);color:var(--primary)}.quiet-copy{color:var(--faint);margin-bottom:0;font-size:.9rem}.sub-label{color:var(--muted);margin:16px 0 8px;font-size:.75rem;font-weight:720;display:block}.today-grid{grid-template-columns:minmax(0,1.65fr) minmax(290px,.85fr);align-items:start;gap:20px;display:grid}.today-side{flex-direction:column;display:flex}.attention-panel{background:var(--warning-soft);border:1px solid #edd8ba;border-radius:16px;margin-bottom:20px;padding:20px}.attention-heading,.attention-heading>div{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.attention-heading{margin-bottom:14px}.attention-heading h2{margin:0 0 .15rem}.attention-heading p{margin:0;font-size:.87rem}.attention-icon{width:37px;height:37px;color:var(--warning);background:#f5dfbd;border-radius:10px;place-items:center;display:grid}.pending-all{color:#8c5b20;margin:12px auto 0;display:block}.card-list{flex-direction:column;gap:9px;display:flex}.appointment-card{border:1px solid var(--line);text-align:left;width:100%;color:var(--ink);background:#fff;border-radius:12px;align-items:center;gap:13px;padding:13px 14px;display:flex}.appointment-card.clickable{cursor:pointer}.appointment-card.clickable:hover{background:#fbfdfb;border-color:#bccdc5}.appointment-card.clickable:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #2f67581a}.appointment-open{text-align:left;cursor:pointer;flex:1;align-items:center;gap:13px;min-width:0;display:flex}.appointment-open:focus{outline:0}.appointment-time{border-right:1px solid var(--line);flex-direction:column;flex:none;width:66px;padding-right:11px;display:flex}.appointment-time strong{text-transform:capitalize;font-size:.79rem;line-height:1.4}.appointment-time span{color:var(--faint);font-size:.69rem}.appointment-main{flex:1;min-width:0}.appointment-main h3{text-overflow:ellipsis;white-space:nowrap;margin:.2rem 0 .08rem;overflow:hidden}.appointment-main p{white-space:nowrap;text-overflow:ellipsis;margin:.05rem 0 0;font-size:.76rem;overflow:hidden}.appointment-main .appointment-observation{color:#52665e;align-items:center;gap:5px;margin-top:5px;display:flex}.appointment-observation .icon{color:var(--primary);flex:none}.appointment-observation span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.appointment-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.65rem;font-weight:650;display:flex}.recurrence-badge{color:#557568;align-items:center;gap:3px;display:inline-flex}.service-type-badge{color:#315f67;background:#e7f2f3;border:1px solid #c1dadd;border-radius:5px;align-items:center;gap:4px;padding:2px 6px;font-weight:740;display:inline-flex}.type-dot{background:#86938e;border-radius:50%;width:7px;height:7px}.type-dot.visit,.timeline-dot.visit{background:#4e8b71}.type-dot.meeting,.timeline-dot.meeting{background:#547ea1}.type-dot.service,.timeline-dot.service{background:#3f7882}.type-dot.personal,.timeline-dot.personal{background:#bf8448}.status{color:#6f7c77;background:#edf1ef;border-radius:999px;align-items:center;gap:3px;margin-left:.25rem;padding:2px 6px;font-size:.62rem;font-weight:720;display:inline-flex}.status .icon{flex:none}.status.scheduled{color:#476d5f;background:#eaf2ef}.status.completed{color:#3c7459;background:#e3f1e9}.status.cancelled{color:#817878;background:#f0eeee}.status.late{color:#99631f;background:#fff0d8}.appointment-card.visit-card{border-left-width:4px}.appointment-card.visit-scheduled{background:#fbfdfc;border-left-color:#6e9b89}.appointment-card.visit-completed{background:#f0f8f3;border-color:#b9d9c8 #b9d9c8 #b9d9c8 #3e8963}.appointment-card.visit-completed .appointment-main h3{color:#2f684d}.appointment-card.visit-late{background:#fffaf2;border-color:#ead2ad #ead2ad #ead2ad #cf9138}.appointment-card.visit-cancelled{opacity:.78;background:#f7f6f6;border-left-color:#aaa3a3}.appointment-card.visit-completed.clickable:hover{background:#eaf6ef;border-color:#91c3aa}.appointment-card.visit-late.clickable:hover{background:#fff6e8;border-color:#dcb878}.appointment-card.appointment-service{background:#f5fafb;border-color:#4f8993 #cddfe2 #cddfe2;border-top-style:solid;border-top-width:4px}.appointment-card.appointment-service .appointment-main h3{color:#31565d}.appointment-card.appointment-service.clickable:hover{background:#eef7f8;border-color:#a9c9ce}.appointment-card.appointment-service.clickable:focus-within{border-color:#3f7882;box-shadow:0 0 0 3px #3f78821f}.appointment-card.compact{grid-template-columns:auto 1fr auto;gap:8px;padding:10px;display:grid}.appointment-card.compact.openable{display:flex}.appointment-card.compact .appointment-open{grid-template-columns:auto 1fr;gap:8px;display:grid}.appointment-card.compact .appointment-time{width:auto;min-width:42px;padding-right:7px}.appointment-card.compact .appointment-main h3{font-size:.82rem}.appointment-card.compact .appointment-meta{font-size:.59rem}.appointment-card.compact .appointment-meta .status{margin-left:0;display:inline-flex}.appointment-card.compact .button{display:none}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:270px;padding:25px;display:flex}.empty-state p{max-width:380px;font-size:.88rem}.empty-icon{background:var(--surface-soft);width:52px;height:52px;color:var(--primary);border-radius:15px;place-items:center;margin-bottom:13px;display:grid}.compact-empty{min-height:180px}.step-list,.profile-steps{flex-direction:column;gap:8px;display:flex}.step-row{align-items:flex-start;gap:10px;padding:8px 0;display:flex}.step-row+.step-row{border-top:1px solid #edf0ee}.step-check{appearance:none;color:#0000;cursor:pointer;background:#fff;border:1.5px solid #adc1b8;border-radius:8px;flex:none;place-items:center;width:25px;height:25px;display:grid}.step-check:hover{color:#fff;background:var(--success);border-color:var(--success)}.step-row>div{flex-direction:column;display:flex}.step-row strong{font-size:.84rem;line-height:1.35}.step-row span{color:var(--faint);margin-top:.15rem;font-size:.7rem}.tomorrow-panel{background:#fafbf9}.mini-list{flex-direction:column;gap:7px;display:flex}.calendar-panel{padding:0;overflow:hidden}.agenda-page .calendar-panel{overflow:visible}.calendar-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;min-height:70px;padding:14px 18px;display:flex}.agenda-page .calendar-toolbar{min-height:56px;padding:9px 14px}.agenda-status-summary{border-bottom:1px solid var(--line);background:#fbfcfb;align-items:center;gap:9px;min-height:48px;padding:9px 18px;display:flex}.agenda-summary-title{color:var(--muted);margin-right:3px;font-size:.7rem;font-weight:690}.agenda-summary-item{border-radius:999px;align-items:center;gap:4px;padding:5px 8px 5px 5px;font-size:.68rem;font-weight:650;display:inline-flex}.agenda-summary-item strong{font-size:.73rem}.agenda-summary-icon{border-radius:50%;place-items:center;width:21px;height:21px;display:inline-grid}.agenda-summary-item.scheduled{color:#476d5f;background:#eaf2ef}.agenda-summary-item.scheduled .agenda-summary-icon{background:#d8e8e1}.agenda-summary-item.completed{color:#2f6b4d;background:#e3f1e9}.agenda-summary-item.completed .agenda-summary-icon{background:#cae5d6}.agenda-summary-item.people{color:#47687a;background:#e8f0f4}.agenda-summary-item.people .agenda-summary-icon{background:#d7e5ec}.agenda-attention-popover{flex:none;position:relative}.agenda-attention-popover summary{color:var(--primary);cursor:pointer;background:#fff;border:1px solid #d8e3de;border-radius:999px;align-items:center;gap:5px;padding:6px 8px;font-size:.66rem;font-weight:700;list-style:none;display:inline-flex}.agenda-attention-popover summary::-webkit-details-marker{display:none}.agenda-attention-menu{z-index:35;border:1px solid var(--line);width:min(340px,82vw);max-height:410px;box-shadow:var(--shadow);background:#fff;border-radius:12px;padding:10px;display:none;position:absolute;top:calc(100% + 7px);right:0;overflow-y:auto}.agenda-attention-popover[open] .agenda-attention-menu{flex-direction:column;display:flex}.agenda-attention-menu>strong{color:var(--ink);padding:3px 6px 8px;font-size:.74rem}.agenda-attention-menu a{color:var(--ink);border-top:1px solid #edf0ee;flex-direction:column;gap:2px;padding:7px 6px;display:flex}.agenda-attention-menu a:hover{background:var(--surface-soft);border-radius:7px}.agenda-attention-menu a span{font-size:.72rem;font-weight:680}.agenda-attention-menu a small{color:var(--muted);font-size:.62rem}.agenda-summary-item.cancelled{color:#756e6e;background:#efeded}.agenda-summary-compact{border-bottom:1px solid var(--line);background:#fbfcfb;display:none}.agenda-summary-compact>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:11px 16px;list-style:none;display:flex}.agenda-summary-compact>summary::-webkit-details-marker{display:none}.agenda-summary-compact>summary>span{flex-direction:column;gap:2px;min-width:0;display:flex}.agenda-summary-compact>summary small{color:var(--faint);letter-spacing:.035em;text-transform:uppercase;font-size:.61rem;font-weight:720}.agenda-summary-compact>summary strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.agenda-summary-compact>summary>.icon{color:var(--primary);flex:none;transition:transform .15s}.agenda-summary-compact[open]>summary>.icon{transform:rotate(90deg)}.agenda-summary-compact-body{flex-wrap:wrap;align-items:center;gap:7px;padding:0 16px 12px;display:flex}.agenda-summary-compact-body .family-count-note{width:100%;margin-left:0}.agenda-drag-help{border-bottom:1px solid var(--line);min-height:34px;color:var(--muted);text-align:center;background:#f7faf8;justify-content:center;align-items:center;gap:7px;padding:7px 16px;font-size:.66rem;font-weight:620;display:flex}.agenda-drag-help>span{color:var(--primary);font-size:.9rem}.move-confirmation{background:var(--surface-soft);border-radius:10px;grid-template-columns:auto 1fr;align-items:baseline;gap:8px 12px;padding:13px;display:grid}.move-confirmation span{color:var(--faint);font-size:.68rem;font-weight:650}.move-confirmation strong{text-transform:capitalize;font-size:.8rem}.agenda-summary-item.cancelled .agenda-summary-icon{background:#dfdada}.week-controls{align-items:center;gap:7px;display:flex}.week-controls .today-button{white-space:nowrap}.week-controls strong{text-transform:capitalize;margin-left:8px;font-size:.94rem}.segmented{background:var(--surface-soft);border-radius:9px;padding:3px;display:flex}.segmented button{appearance:none;cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:7px;padding:7px 11px;font-size:.76rem;font-weight:680}.segmented button.active{color:var(--primary);background:#fff;box-shadow:0 1px 4px #2138301a}.week-grid-scroll{min-width:0}.week-grid-scroll:focus-visible{outline-offset:-2px;outline:2px solid #78a790}.week-grid{grid-template-columns:14px repeat(7,minmax(100px,1fr));min-height:62px;display:grid}.period-gutter{z-index:9;grid-row:1/-1;grid-template-rows:subgrid;background:0 0;display:grid;position:sticky;left:0}.period-gutter-spacer{border-bottom:1px solid var(--line);background:#fffffff5;grid-row:1}.period-gutter-segment{border-bottom:1px solid #dde5e1;place-items:center;min-height:38px;display:grid}.period-gutter-segment span{letter-spacing:.01em;text-transform:uppercase;writing-mode:vertical-rl;font-size:.52rem;font-weight:820;transform:rotate(180deg)}.period-gutter-segment.period-morning{color:#78571b;background:#f6edd8}.period-gutter-segment.period-afternoon{color:#2f6853;background:#e5f1ec;border-top:1px solid #4a876c4d}.period-gutter-segment.period-night{color:#455f7e;background:#e9eef4;border-top:1px solid #5470924d}.day-column{grid-row:1/-1;grid-template-rows:subgrid;border-right:1px solid var(--line);min-width:0;transition:background .15s,box-shadow .15s;display:grid;position:relative}.day-column:last-child{border-right:0}.agenda-day-header{box-sizing:border-box;border-bottom:1px solid var(--line);background:#fffffff7;flex-direction:column;align-items:center;height:62px;min-height:62px;padding:6px 10px;display:flex;position:relative}.agenda-day-header>span{color:var(--muted);text-transform:uppercase;font-size:.64rem;font-weight:720;line-height:1}.agenda-day-header>strong{margin-top:2px;font-size:1.08rem;line-height:1}.agenda-day-header>small{color:var(--primary);font-size:.54rem;line-height:1;position:absolute;bottom:2px}.day-header-add{opacity:0;width:23px;height:23px;color:var(--primary);cursor:pointer;background:#fffffff0;border:1px solid #cbd9d2;border-radius:7px;place-items:center;transition:opacity .12s,border-color .12s,background .12s;display:grid;position:absolute;top:7px;right:6px}.agenda-day-header:hover .day-header-add,.day-header-add:focus-visible{opacity:1}.day-header-add:hover,.day-header-add:focus-visible{background:var(--primary-soft);border-color:#78a790;outline:0}.day-column.today{background:#f8fbf9}.day-column.today>.agenda-day-header{background:#f8fbf9f7}.week-sticky-header{z-index:39;background:#ffffffad;border-bottom:1px solid #9db9ac;grid-template-columns:14px minmax(0,1fr);height:62px;display:grid;position:fixed;overflow:hidden;box-shadow:0 3px #2f67581a}.week-sticky-gutter{z-index:2;background:#f8faf9c7;position:relative}.week-sticky-days{min-width:0;overflow:hidden}.week-sticky-track{will-change:transform;height:62px;display:flex}.week-sticky-day{border-right:1px solid var(--line);flex:none}.week-sticky-day .agenda-day-header{background:0 0;border-bottom:0}.week-sticky-day.today .agenda-day-header{background:#ebf6f12e}.day-column.drag-over{background:#e8f3ed;box-shadow:inset 0 0 0 2px #75a58f}.day-column.drag-over:after{content:"Soltar aqui";z-index:5;color:var(--primary);text-align:center;pointer-events:none;background:#f5fbf8f0;border:1px dashed #75a58f;border-radius:8px;padding:7px 4px;font-size:.64rem;font-weight:750;position:absolute;top:82px;left:8px;right:8px}.day-column.today>.agenda-day-header>strong,.week-sticky-day.today .agenda-day-header>strong{background:var(--primary);color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.day-time-slot{border-bottom:1px solid #edf1ef;flex-direction:column;gap:7px;min-width:0;padding:4px 7px;display:flex;position:relative}.day-time-slot.period-morning{background:#faf5e229}.day-time-slot.period-afternoon{background:#e6f2eb24}.day-time-slot.period-night{background:#e7edf52b}.day-time-slot.period-boundary.period-afternoon{box-shadow:inset 0 1px #4a876c4d}.day-time-slot.period-boundary.period-night{box-shadow:inset 0 1px #5470924d}.day-time-slot .appointment-card.compact{flex-direction:column;align-items:stretch;gap:4px;display:flex}.day-time-slot .appointment-card.compact .appointment-open{flex-direction:column;align-items:stretch;gap:4px;width:100%;display:flex}.day-time-slot .appointment-card.compact .appointment-time{border:0;flex-direction:row;justify-content:space-between;width:100%;padding:0}.day-time-slot .appointment-card.compact .appointment-meta .status{padding:2px 5px;font-size:.56rem}.day-time-slot .appointment-card.compact>.icon{display:none}.day-time-slot .appointment-card.compact{border-radius:10px;min-height:62px;padding:7px 8px}.day-time-slot .appointment-card.compact .appointment-open{gap:2px}.day-time-slot .appointment-card.compact .appointment-time strong{font-size:.74rem;line-height:1.15}.day-time-slot .appointment-card.compact .appointment-time span{font-size:.58rem}.appointment-time-details{justify-content:flex-end;align-items:center;gap:4px;display:inline-flex}.appointment-state-indicator{color:#527568;background:#e7efeb;border-radius:50%;flex:0 0 17px;place-items:center;width:17px;height:17px;display:inline-grid}.appointment-state-indicator.scheduled{color:#507a69;background:#e7f1ed}.appointment-state-indicator.completed{color:#377458;background:#dff0e7}.appointment-state-indicator.late{color:#99631f;background:#fff0d8}.appointment-state-indicator.cancelled{color:#817878;background:#efeded}.day-time-slot .appointment-card.compact .appointment-meta{white-space:nowrap;flex-wrap:nowrap;gap:3px;font-size:.53rem;overflow:hidden}.day-time-slot .appointment-card.compact .appointment-meta .status{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;padding:1px 4px;font-size:.51rem;overflow:hidden}.day-time-slot .appointment-card.compact .service-type-badge{padding:1px 4px}.day-time-slot .appointment-card.compact .appointment-main h3{margin:1px 0 0;font-size:.72rem;line-height:1.2}.compact-service-heading{color:#3f7882;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px;min-width:0;display:grid}.compact-service-heading h3{margin:0!important}.compact-service-heading .recurrence-badge{color:#557568}.add-at-time{z-index:3;opacity:0;appearance:none;max-width:calc(100% - 14px);color:var(--primary);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;background:#fffffff5;border:1px solid #a9c4b7;border-radius:8px;padding:5px 7px;font-size:.61rem;font-weight:720;transition:opacity .12s,transform .12s;position:absolute;bottom:6px;right:50%;overflow:hidden;transform:translate(50%,2px);box-shadow:0 2px 7px #2342361f}.day-time-slot:hover .add-at-time,.add-at-time:focus-visible{opacity:1;pointer-events:auto;transform:translate(50%)}.add-at-time.outside-cell.before-cell{top:-27px;bottom:auto}.add-at-time.outside-cell.after-cell{bottom:-27px}.add-at-time.outside-cell:hover{opacity:1;pointer-events:auto;transform:translate(50%)}.add-at-time:focus-visible{outline-offset:1px;outline:2px solid #78a790}.calendar-loading{min-height:320px;color:var(--muted);justify-content:center;align-items:center;gap:.7rem;display:flex}.agenda-create-options{flex-direction:column;gap:7px;display:flex}.agenda-create-options>button{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 11px;transition:border-color .12s,background .12s,transform .12s;display:grid}.agenda-create-options>button:hover,.agenda-create-options>button:focus-visible{background:#f7faf8;border-color:#aac2b7;outline:0;transform:translateY(-1px)}.agenda-create-options>button>span:nth-child(2){flex-direction:column;gap:2px;min-width:0;display:flex}.agenda-create-options strong{font-size:.8rem}.agenda-create-options small{color:var(--muted);font-size:.65rem}.agenda-create-options>button>.icon{color:var(--faint)}.agenda-create-icon{width:34px;height:34px;color:var(--primary);background:var(--primary-soft);border-radius:10px;place-items:center;display:grid}.agenda-create-icon.service{color:#315f67;background:#e7f2f3}.agenda-create-icon.meeting{color:#456b8b;background:#e8f0f6}.agenda-create-icon.personal{color:#916332;background:#f7ede2}.agenda-create-icon.other{color:#68756f;background:#eef1ef}.search-bar{border:1px solid var(--line);background:var(--surface);border-radius:13px;align-items:center;gap:10px;margin-bottom:18px;padding:9px 10px 9px 15px;display:flex}.search-bar>.icon{color:var(--faint)}.search-bar input{border:0;outline:0;flex:1;min-width:0;padding:7px 0}.people-report-context{background:var(--surface-soft);justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:18px 20px;display:flex}.people-report-context .eyebrow{margin-bottom:3px}.people-report-context h2{margin-bottom:3px;font-size:1.12rem}.people-report-context p{margin:0;font-size:.78rem}.people-report-context>div:last-child{flex:none;align-items:center;gap:14px;display:flex}.people-list-controls{justify-content:space-between;align-items:flex-end;gap:16px;margin:-3px 0 14px;display:flex}.people-filter-group{align-items:flex-end;gap:12px;display:flex}.people-filter-group>label{min-width:190px;color:var(--muted);flex-direction:column;gap:4px;font-size:.68rem;font-weight:700;display:flex}.people-list-controls select{padding-block:.58rem}.people-total{min-height:46px;color:var(--muted);white-space:nowrap;align-items:center;font-size:.76rem;font-weight:650;display:inline-flex}.people-list-actions{align-items:center;gap:20px;padding-bottom:6px;display:flex}.families-directory-link{align-items:center;gap:5px;display:inline-flex}.people-panel{padding:0;overflow:hidden}.people-list{flex-direction:column;display:flex}.people-load-more{min-height:52px;color:var(--faint);border-top:1px solid #edf0ee;justify-content:center;align-items:center;gap:8px;font-size:.7rem;display:flex}.people-load-more .spinner{width:18px;height:18px}.person-row{min-height:73px;color:var(--ink);border-bottom:1px solid #edf0ee;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:12px 18px;display:grid}.person-row:last-child{border-bottom:0}.person-row:hover{background:#fafcfb}.person-row>div{flex-direction:column;min-width:0;display:flex}.person-row strong{font-size:.92rem}.person-row small{color:var(--faint);font-size:.68rem}.person-row span:not(.person-avatar){color:var(--muted);margin-top:2px;font-size:.75rem}.person-row>.icon{color:#9da9a4}.person-row.archived{opacity:.68}.person-row strong .status{vertical-align:middle;margin-left:.45rem;font-style:normal}.status.report-excluded{color:#527166;background:#e8f0ed}.archived-toggle{margin:-8px 0 12px auto;display:block}.person-avatar{width:40px;height:40px;color:var(--primary);background:#e3ede8;border-radius:13px;flex:none;place-items:center;font-size:.7rem;font-weight:800;display:grid}.family-directory{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.family-directory .panel+.panel{margin-top:0}.family-directory-card{padding:0;overflow:hidden}.family-directory-card>header{border-bottom:1px solid var(--line);background:#f8fbf9;align-items:center;gap:12px;min-height:82px;padding:17px 18px;display:flex}.family-directory-card>header h2{margin:0 0 2px;font-size:1rem}.family-directory-card>header p{margin:0;font-size:.72rem}.family-directory-icon{width:42px;height:42px;color:var(--primary);background:var(--primary-soft);border-radius:13px;flex:none;place-items:center;display:grid}.family-directory-members{flex-direction:column;display:flex}.family-directory-members>a{min-height:62px;color:var(--ink);border-bottom:1px solid #edf0ee;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:10px 18px;display:grid}.family-directory-members>a:last-child{border-bottom:0}.family-directory-members>a:hover{background:#fafcfb}.family-directory-members .person-avatar{border-radius:11px;width:35px;height:35px}.family-directory-members>a>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.family-directory-members strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.family-directory-members small{color:var(--faint);font-size:.66rem}.family-directory-members>a>.icon{color:#9da9a4}.back-link{color:var(--muted);margin-bottom:20px;font-size:.82rem;font-weight:640;display:inline-block}.person-hero{justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:26px;display:flex}.person-hero .header-actions .button.quiet{color:var(--primary-dark);background:var(--primary-soft);border-color:#d3e3dc}.person-identity{align-items:center;gap:17px;display:flex}.large-avatar{border-radius:21px;width:68px;height:68px;font-size:1rem}.person-identity h1{margin-bottom:.18rem}.person-identity p{margin-bottom:.4rem;font-size:.82rem}.person-identity .eyebrow{margin-bottom:.3rem}.contact-chips{flex-wrap:wrap;gap:7px;display:flex}.contact-chips a{align-items:center;gap:4px;font-size:.73rem;font-weight:660;display:inline-flex}.profile-grid{grid-template-columns:minmax(0,1.7fr) minmax(260px,.72fr);align-items:start;gap:20px;display:grid}.profile-side{flex-direction:column;gap:12px;display:flex}.calm-box{background:var(--surface-soft);color:var(--muted);border-radius:10px;padding:13px;font-size:.85rem}.row-calm{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.details-list{margin:0}.details-list dt{color:var(--faint);text-transform:uppercase;letter-spacing:.07em;margin-top:14px;font-size:.61rem;font-weight:750}.details-list dt:first-child{margin-top:0}.details-list dd{color:var(--ink);overflow-wrap:anywhere;margin:3px 0 0;font-size:.84rem;line-height:1.45}.details-list dd small{color:var(--muted);display:block}.notice{border-left:3px solid var(--warning);background:var(--warning-soft);border-radius:6px 10px 10px 6px;margin-top:17px;padding:12px}.notice strong{font-size:.77rem}.notice p{margin:2px 0 0;font-size:.76rem}.timeline{padding-left:12px;position:relative}.timeline:before{content:"";background:var(--line);width:1px;position:absolute;top:8px;bottom:8px;left:17px}.timeline-item{grid-template-columns:12px 165px 1fr;gap:11px;padding:10px 0 18px;display:grid;position:relative}.timeline-appointment{cursor:pointer;border-radius:10px;transition:background .16s,box-shadow .16s}.timeline-appointment:hover{background:var(--surface-soft);box-shadow:8px 0 0 var(--surface-soft), -8px 0 0 var(--surface-soft)}.timeline-appointment:focus-visible{outline-offset:3px;outline:3px solid #2f675838}.timeline-dot{z-index:1;background:#87958f;border-radius:50%;width:11px;height:11px;margin-top:4px;box-shadow:0 0 0 4px #fff}.timeline-dot.contact{background:#7790a1}.timeline-dot.step{background:#b18142}.timeline-date{color:var(--faint);text-transform:capitalize;padding-top:2px;font-size:.67rem}.timeline-content{min-width:0}.timeline-content>div{align-items:center;gap:.3rem;display:flex}.timeline-content strong{font-size:.84rem}.timeline-content p{color:var(--muted);white-space:pre-wrap;margin:5px 0 0;font-size:.8rem}.timeline-open-hint{color:var(--primary);margin-top:6px;font-size:.68rem;font-weight:700;display:inline-block}.family-profile-card{background:linear-gradient(145deg,#fbfdfc,#f3f8f5)}.family-profile-card .section-heading{align-items:flex-start}.family-members{flex-direction:column;gap:7px;display:flex}.family-members p{margin:0 0 3px;font-size:.73rem}.family-members a{color:var(--ink);background:#fff;border-radius:8px;align-items:center;gap:6px;padding:7px 9px;font-size:.77rem;font-weight:650;display:flex}.family-choice-list{flex-direction:column;gap:8px;max-height:330px;padding:2px;display:flex;overflow-y:auto}.family-choice,.family-choice-row{border:1px solid var(--line);background:#fff;border-radius:11px}.family-choice{cursor:pointer;align-items:flex-start;padding:11px 12px;flex-direction:row!important;gap:10px!important;display:flex!important}.family-choice input{width:17px;height:17px;accent-color:var(--primary);flex:none;margin:2px 0 0}.family-choice>span{flex-direction:column;min-width:0;display:flex}.family-choice strong{font-size:.82rem}.family-choice small{color:var(--faint);margin-top:2px;font-size:.68rem;line-height:1.35}.family-choice.selected,.family-choice-row.selected{background:#f3f8f5;border-color:#7aa494}.family-choice-row{align-items:center;padding-right:7px;display:flex}.family-choice-row>.family-choice{background:0 0;border:0;flex:1}.family-choice-row>div{gap:3px;display:flex}.family-choice-row .icon-button{width:29px;height:29px;font-size:.85rem}.automatic-family-name{background:#f1f7f4;border:1px solid #cfe0d7;border-radius:11px;align-items:center;gap:10px;padding:12px;display:flex}.automatic-family-name>div{flex-direction:column;display:flex}.automatic-family-name small{color:var(--faint);font-size:.62rem}.automatic-family-name strong{margin-top:1px;font-size:.9rem}.selected-family-members{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.selected-family-members>span{color:#315d4d;background:#e8f1ed;border-radius:999px;align-items:center;gap:5px;padding:6px 7px 6px 9px;font-size:.7rem;font-weight:650;display:inline-flex}.selected-family-members button{appearance:none;width:19px;height:19px;color:inherit;cursor:pointer;background:#2f67581f;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.family-candidate-list{flex-direction:column;gap:5px;max-height:285px;padding:2px;display:flex;overflow-y:auto}.family-candidate{border:1px solid var(--line);cursor:pointer;border-radius:9px;align-items:flex-start;padding:9px 10px;flex-direction:row!important;gap:9px!important;display:flex!important}.family-candidate.selected{background:#f0f7f3;border-color:#8aaf9f}.family-candidate.unavailable{cursor:not-allowed;opacity:.62;background:#f6f6f5}.family-join-candidate{text-align:left;width:100%;color:var(--ink);background:#f4f8f6;justify-content:space-between;align-items:center}.family-join-candidate:hover:not(:disabled){background:#edf6f1;border-color:#8aaf9f}.family-join-action{max-width:220px;color:var(--primary);text-align:right;font-size:.68rem;font-weight:720}.family-candidate input{width:17px;height:17px;accent-color:var(--primary);flex:none;margin:2px 0 0}.family-candidate>span{flex-direction:column;min-width:0;display:flex}.family-candidate strong{font-size:.77rem}.family-candidate small{color:var(--faint);margin-top:2px;font-size:.64rem}.family-removal-actions{justify-content:space-between;align-items:center;gap:14px;padding-top:3px;display:flex}.existing-family-list{flex-direction:column;padding:4px 10px 10px;display:flex}.existing-family-list button{appearance:none;border:0;border-bottom:1px solid var(--line);color:var(--ink);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:10px;padding:10px 5px;display:flex}.existing-family-list button>span{flex-direction:column;display:flex}.existing-family-list strong{font-size:.75rem}.existing-family-list small{color:var(--faint);margin-top:2px;font-size:.62rem}.form-divider{color:var(--faint);text-transform:uppercase;align-items:center;gap:10px;margin:14px 0;font-size:.67rem;display:flex}.form-divider:before,.form-divider:after{content:"";background:var(--line);flex:1;height:1px}.inline-create>strong{align-items:center;gap:6px;display:flex}.person-combobox{z-index:5;position:relative}.person-combobox-results{z-index:20;background:#fff;border:1px solid #bdcbc4;border-radius:11px;max-height:250px;position:absolute;inset:calc(100% + 5px) 0 auto;overflow-y:auto;box-shadow:0 14px 35px #1c322a2e}.person-combobox-results>button{appearance:none;width:100%;min-height:58px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf0ee;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 11px;display:grid}.person-combobox-results>button:last-child{border-bottom:0}.person-combobox-results>button:hover,.person-combobox-results>button:focus{background:#f1f7f4;outline:0}.person-combobox-results .person-avatar{border-radius:11px;width:36px;height:36px}.person-combobox-results>button>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.person-combobox-results strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.person-combobox-results small{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.66rem;overflow:hidden}.person-combobox-results>button>.icon{color:var(--primary)}.combobox-empty{color:var(--faint);text-align:center;padding:15px;font-size:.75rem;display:block}.visit-selected-people{flex-direction:column;gap:6px;display:flex}.visit-person-chip{background:#f6f9f7;border:1px solid #d7e2dc;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 9px;display:grid}.visit-person-chip .person-avatar{border-radius:10px;width:34px;height:34px}.visit-person-chip>div{flex-direction:column;min-width:0;display:flex}.visit-person-chip strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.visit-person-chip small{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:.64rem;overflow:hidden}.visit-person-chip .icon-button{width:30px;height:30px}.field-help{color:var(--faint);font-size:.64rem;font-weight:500}.multi-visit-note,.family-builder-help{align-items:flex-start;gap:7px;display:flex}.multi-visit-note .icon,.family-builder-help .icon{color:var(--primary);flex:none;margin-top:1px}.family-appointment-group{border:1px solid #bdd4c9;border-left:4px solid var(--primary);background:#edf5f1;border-radius:12px;overflow:hidden}.family-appointment-group>header{border-bottom:1px solid #d4e4dc;align-items:center;gap:8px;padding:10px 12px;display:flex}.family-appointment-group>header[role=button]{cursor:pointer}.family-appointment-group>header[role=button]:hover,.family-appointment-group>header[role=button]:focus-visible{background:#e2efe9;outline:0}.family-appointment-group>header[draggable=true]{cursor:grab}.family-appointment-group>header[draggable=true]:active{cursor:grabbing}.family-group-icon{width:29px;height:29px;color:var(--primary);background:#d7e9e0;border-radius:9px;flex:none;place-items:center;display:grid}.family-appointment-group>header>div{flex-direction:column;flex:1;min-width:0;display:flex}.family-appointment-group>header strong{font-size:.82rem}.family-appointment-group>header small{color:var(--muted);font-size:.66rem}.family-group-heading{gap:2px}.family-group-time{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.family-group-time time{color:var(--ink);font-variant-numeric:tabular-nums;font-size:.86rem;font-weight:800}.family-group-time small{color:var(--faint);white-space:nowrap;font-size:.64rem;font-weight:500}.family-time-details{justify-content:flex-end;align-items:center;gap:5px;display:inline-flex}.family-drag-handle,.family-open-indicator{color:var(--primary);margin-left:auto;font-size:1rem;line-height:1}.family-summary-actions{flex-direction:column;justify-content:space-between;align-self:stretch;align-items:center;gap:4px;margin-left:auto;display:flex}.family-summary-actions .family-drag-handle{margin-left:0}.family-expand-toggle{appearance:none;color:#527568;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;gap:1px;min-width:43px;height:20px;padding:0 4px;font-size:.54rem;font-weight:720;display:inline-flex}.family-expand-toggle:hover,.family-expand-toggle:focus-visible{color:var(--primary);background:#ffffff80;outline:0}.family-expand-toggle .icon{transition:transform .15s}.family-expand-toggle[aria-expanded=true] .icon{transform:rotate(90deg)}.family-group-members{flex-direction:column;gap:5px;padding:6px;display:flex}.appointment-drag-item{cursor:grab;position:relative}.appointment-drag-item:active{cursor:grabbing}.appointment-drag-item .appointment-card{cursor:inherit}.appointment-drag-item[draggable=true]:hover .appointment-card{border-color:#8fbaa7;box-shadow:0 0 0 2px #2f675814}.appointment-drag-item[draggable=true]:active{opacity:.65}.family-group-members .appointment-card{box-shadow:none;border-color:#d8e4de}.family-appointment-group.compact>header{flex-wrap:wrap;gap:4px 5px;padding:7px}.family-appointment-group.compact .family-group-icon{display:none}.family-appointment-group.compact .family-summary-actions{flex-direction:row;justify-content:flex-end;align-self:auto;gap:5px;width:100%;margin-left:0}.family-appointment-group.compact .family-expand-toggle{flex:1;min-width:0}.family-appointment-group.compact>header strong{font-size:.7rem}.family-appointment-group.compact>header small{font-size:.56rem}.family-appointment-group.compact .family-group-time time{font-size:.78rem}.family-appointment-group.compact .family-group-time small{font-size:.56rem}.family-appointment-group.compact .family-group-members{gap:4px;padding:4px}.family-appointment-group.compact .family-member-card{border-left-width:3px;min-height:36px;padding:6px 8px}.family-appointment-group.compact .family-member-card .appointment-open{align-items:center;gap:6px;width:auto;min-width:0;display:flex;overflow:hidden}.family-appointment-group.compact .family-member-main{align-items:center;gap:6px;width:100%;min-width:0;display:flex;overflow:hidden}.family-appointment-group.compact .family-member-main h3{flex:1;min-width:0;margin:0;font-size:.7rem}.family-appointment-group.compact .family-member-main .appointment-state-indicator{flex:0 0 19px;width:19px;height:19px}.family-appointment-group.compact .family-member-card>.icon{display:none}.family-appointment-group.compact.summary-only>header{border-bottom:0;min-height:62px;padding:7px 8px}.family-appointment-group.compact.summary-only .family-group-heading{gap:1px}.family-appointment-group.compact.summary-only .family-group-time time{font-size:.74rem;line-height:1.15}.family-appointment-group.compact.summary-only .family-group-time small{font-size:.56rem}.family-appointment-group.compact.summary-only>header>div>small{text-overflow:ellipsis;white-space:nowrap;font-size:.53rem;overflow:hidden}.family-appointment-group.compact.summary-only>header strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;line-height:1.2;overflow:hidden}.manage-family-members{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.manage-family-members>span{border:1px solid var(--line);background:var(--surface-soft);border-radius:9px;flex-direction:column;gap:1px;min-width:0;padding:8px 9px;display:flex}.manage-family-members strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.manage-family-members small{color:var(--muted);font-size:.59rem}.family-count-note{color:var(--faint);margin-left:auto;font-size:.62rem}.observation-editor{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:5px;display:flex}.observation-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.observation-heading .eyebrow{margin:0}.observation-readonly{border:1px solid var(--line);background:var(--surface-soft);min-height:52px;color:var(--ink);white-space:pre-wrap;border-radius:9px;padding:11px 12px;font-size:.8rem;line-height:1.45}.observation-readonly.empty{color:var(--faint);font-style:italic}.observation-actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.observation-saved{color:var(--success);font-size:.68rem;font-weight:650}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.report-filters,.activity-filters{align-items:flex-end;gap:13px;margin-bottom:18px;padding:14px 16px;display:flex}.report-filters label,.activity-filters label{min-width:190px;color:var(--muted);flex-direction:column;gap:4px;font-size:.68rem;font-weight:700;display:flex}.report-filters select,.activity-filters select{padding-block:.6rem}.report-filters p{align-items:center;gap:5px;margin:0 0 9px auto;font-size:.7rem;display:flex}.metric-grid{grid-template-columns:repeat(6,minmax(130px,1fr));gap:11px;margin-bottom:18px;display:grid}.metric-grid.five{grid-template-columns:repeat(5,minmax(140px,1fr))}.metric-card{border:1px solid var(--line);background:var(--surface);border-radius:13px;flex-direction:column;min-height:126px;padding:15px;display:flex}.metric-card span{color:var(--muted);font-size:.7rem;font-weight:680}.metric-card strong{color:var(--ink);margin:auto 0 1px;font-size:2rem;line-height:1}.metric-card small{color:var(--faint);font-size:.62rem}.metric-card.featured{color:#fff;border-color:var(--primary);background:var(--primary)}.metric-card.featured span,.metric-card.featured strong,.metric-card.featured small{color:#fff}.metric-card.attention{background:#fffaf2;border-color:#ead9bb}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.report-wide{grid-column:1/-1}.report-skeleton{grid-template-columns:1fr 1fr;gap:16px;display:grid}.report-skeleton .skeleton{height:300px}.column-chart{align-items:stretch;gap:8px;height:220px;padding-top:12px;display:flex;overflow-x:auto}.chart-column{text-align:center;flex:1;grid-template-rows:19px 1fr 24px;align-items:end;min-width:34px;display:grid}.chart-column strong{color:var(--muted);font-size:.65rem}.chart-column>div{border-bottom:1px solid var(--line);height:100%;min-height:120px;position:relative}.chart-column i{background:linear-gradient(#6eaa94, var(--primary));border-radius:5px 5px 0 0;min-height:0;position:absolute;inset:auto 16% 0}.chart-column span{color:var(--faint);white-space:nowrap;align-self:start;padding-top:5px;font-size:.58rem}.horizontal-bars{flex-direction:column;gap:12px;margin-top:8px;display:flex}.horizontal-bar{grid-template-columns:74px 1fr 25px;align-items:center;gap:9px;display:grid}.horizontal-bar span{color:var(--muted);font-size:.68rem}.horizontal-bar>div{background:var(--surface-soft);border-radius:9px;height:9px;overflow:hidden}.horizontal-bar i{border-radius:inherit;background:var(--primary);height:100%;display:block}.horizontal-bar strong{text-align:right;font-size:.72rem}.rank-list,.attention-list{flex-direction:column;display:flex}.rank-list a{color:var(--ink);border-bottom:1px solid #edf0ee;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;padding:9px 0;display:grid}.rank-list a>span{background:var(--surface-soft);width:22px;height:22px;color:var(--muted);border-radius:7px;place-items:center;font-size:.62rem;display:grid}.rank-list a strong,.attention-list strong{font-size:.78rem}.rank-list a b{color:var(--primary);font-size:.8rem}.attention-row{border-bottom:1px solid #edf0ee;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 0;display:grid}.attention-list a{min-width:0;color:var(--ink);justify-content:space-between;align-items:center;gap:12px;display:flex}.attention-list a>div{flex-direction:column;display:flex}.attention-list small{color:var(--faint);margin-top:2px;font-size:.64rem}.attention-list a>span{color:var(--primary);font-size:.67rem;font-weight:680}.attention-hide{color:var(--muted);white-space:nowrap;align-self:center;padding:5px 7px;font-size:.64rem}.report-updating{color:var(--muted);align-items:center;gap:7px;font-size:.7rem;display:inline-flex}.report-updating .spinner{width:18px;height:18px}.report-list-heading{align-items:flex-end;gap:12px}.report-list-heading label{min-width:135px;color:var(--faint);flex-direction:column;gap:3px;font-size:.6rem;font-weight:700;display:flex}.report-list-heading select{padding:.48rem .55rem;font-size:.7rem}.report-list-pagination{border-top:1px solid var(--line);justify-content:center;align-items:center;gap:10px;margin-top:6px;padding-top:13px;display:flex}.report-list-pagination button{appearance:none;color:var(--primary);cursor:pointer;background:0 0;border:0;padding:5px 7px;font-size:.68rem;font-weight:680}.report-list-pagination button:disabled{color:#aab4af;cursor:default}.report-list-pagination span{color:var(--faint);font-size:.65rem}.attention-list .absence-time{color:#3b6f5c;font-weight:680}.report-exclusion-note{background:var(--surface-soft);color:var(--muted);border-radius:8px;align-items:flex-start;gap:6px;margin:12px 0 0;padding:9px;font-size:.66rem;display:flex}.report-exclusion-note>span{flex:1}.report-exclusion-note a{color:var(--primary);text-underline-offset:2px;font-weight:720;text-decoration:underline}.report-exclusion-status{background:var(--surface-soft);color:var(--muted);border-radius:9px;align-items:flex-start;gap:7px;margin-top:15px;padding:9px 10px;display:flex}.report-exclusion-status>span{flex-direction:column;display:flex}.report-exclusion-status strong{color:var(--ink);font-size:.7rem}.report-exclusion-status small{margin-top:1px;font-size:.62rem}.activity-page{max-width:920px}.activity-panel{padding:0;overflow:hidden}.activity-list{flex-direction:column;display:flex}.activity-row{border-bottom:1px solid #edf0ee;align-items:flex-start;gap:12px;padding:14px 18px;display:flex}.activity-row:last-child{border-bottom:0}.activity-icon{width:36px;height:36px;color:var(--primary);background:#e5f0eb;border-radius:11px;flex:none;place-items:center;display:grid}.activity-icon.visits{color:#326b58;background:#dcece4}.activity-icon.people,.activity-icon.families{color:#506f84;background:#e5edf2}.activity-icon.attendance{color:#356b55;background:#e1efe7}.activity-icon.planning{color:#6f557f;background:#eee8f2}.activity-icon.reminders{color:#8a672f;background:#f4ead9}.activity-icon.access{color:#6e637d;background:#eeeaf2}.activity-row>div{flex-direction:column;min-width:0;display:flex}.activity-row strong{font-size:.82rem}.activity-row span:not(.activity-icon){color:var(--muted);margin-top:2px;font-size:.74rem}.activity-row time{color:var(--faint);text-transform:capitalize;margin-top:3px;font-size:.64rem}.pagination{border-top:1px solid var(--line);justify-content:center;align-items:center;gap:13px;padding:13px;display:flex}.pagination span{color:var(--muted);font-size:.7rem}.admin-page{max-width:1380px}.admin-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.admin-metric-card{flex-direction:column;min-width:0;padding:18px;display:flex}.admin-metric-card>span{color:var(--muted);font-size:.69rem;font-weight:720}.admin-metric-card>strong{color:var(--primary-dark);margin-top:7px;font-size:1.9rem;line-height:1}.admin-metric-card>small{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;margin-top:7px;font-size:.65rem;overflow:hidden}.admin-filters{grid-template-columns:minmax(220px,1fr) 190px 190px;gap:13px;margin-bottom:18px;padding:15px;display:grid}.admin-filters label{color:var(--muted);flex-direction:column;gap:5px;font-size:.67rem;font-weight:720;display:flex}.admin-users-panel{padding:0;overflow:hidden}.admin-users-heading{align-items:center;margin:0;padding:18px 20px 13px}.admin-users-heading h2{margin:0}.admin-users-heading>span{color:var(--faint);font-size:.7rem}.admin-table-wrap{overflow-x:auto}.admin-users-table{border-collapse:collapse;width:100%;min-width:1020px}.admin-users-table th{border-block:1px solid var(--line);color:var(--faint);letter-spacing:.04em;text-align:left;text-transform:uppercase;background:#f8faf8;padding:10px 14px;font-size:.61rem}.admin-users-table td{vertical-align:middle;border-bottom:1px solid #edf0ee;padding:13px 14px}.admin-users-table tr:last-child td{border-bottom:0}.admin-users-table tr.inactive{opacity:.72;background:#fafafa}.admin-user-identity{align-items:center;gap:10px;min-width:0;display:flex}.admin-user-identity>span:last-child{flex-direction:column;min-width:0;display:flex}.admin-user-identity strong,.admin-user-identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-user-identity strong{font-size:.78rem}.admin-user-identity small{color:var(--faint);margin-top:2px;font-size:.62rem}.admin-role-badge{color:#596862;background:#edf1ef;border-radius:999px;width:max-content;padding:4px 7px;font-size:.61rem;font-weight:740;display:inline-flex}.admin-role-badge.admin{color:#5f4b6d;background:#eee8f2}.admin-account-status{margin-top:5px;font-size:.6rem;display:block}.admin-account-status.active{color:#477860}.admin-account-status.inactive{color:var(--danger)}.admin-data-counts,.admin-date-cell{color:var(--muted);flex-direction:column;font-size:.68rem;display:flex}.admin-data-counts b{color:var(--ink)}.admin-data-counts small,.admin-date-cell small{color:var(--faint);margin-top:3px;font-size:.59rem}.admin-user-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:5px;display:flex}.admin-protected-note{color:var(--faint);white-space:nowrap;align-items:center;gap:5px;font-size:.61rem;font-weight:680;display:inline-flex}.admin-protected-note .icon{color:#725787}.admin-user-cards{display:none}.admin-account-dot{background:#a9b1ad;border-radius:50%;flex:none;width:9px;height:9px}.admin-account-dot.active{background:#4b8b6c;box-shadow:0 0 0 4px #e7f1ec}.admin-account-dot.inactive{background:#ad6868;box-shadow:0 0 0 4px #f6eaea}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1927227a;justify-content:center;align-items:center;padding:20px;animation:.14s ease-out fade;display:flex;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.modal{background:#fff;border-radius:18px;flex-direction:column;width:min(600px,100%);max-height:min(760px,100vh - 40px);animation:.18s ease-out rise;display:flex;overflow:hidden;box-shadow:0 24px 80px #0d211a40}@keyframes rise{0%{opacity:0;transform:translateY(10px)scale(.99)}}.modal-small{width:min(480px,100%)}.modal-large{width:min(820px,100%)}.modal-header{justify-content:space-between;align-items:flex-start;gap:1rem;padding:22px 24px 15px;display:flex}.modal-header h2{margin-bottom:.2rem;font-size:1.3rem}.modal-header p{margin:0;font-size:.82rem}.modal-body{padding:7px 24px 24px;overflow-y:auto}.modal-footer{border-top:1px solid var(--line);background:#fff;flex:none;padding:13px 24px 20px;box-shadow:0 -8px 22px #22352f0a}.modal-footer .form-actions{width:100%}.confirmation-card{background:#fff8f8;border:1px solid #edd4d4;border-radius:12px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;padding:13px;display:grid}.confirmation-card>span{width:42px;height:42px;color:var(--danger);background:var(--danger-soft);border-radius:11px;place-items:center;display:grid}.confirmation-card>div{flex-direction:column;min-width:0;display:flex}.confirmation-card small{color:var(--faint);letter-spacing:.065em;text-transform:uppercase;font-size:.59rem;font-weight:740}.confirmation-card strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:.82rem;overflow:hidden}.confirmation-card p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:.66rem;overflow:hidden}.confirmation-card.warning{background:#fffbf4;border-color:#ead9bc}.confirmation-card.warning>span{color:#8b641f;background:var(--warning-soft)}.confirmation-warning{color:var(--muted);margin:13px 1px 0;font-size:.7rem;line-height:1.45}.confirmation-error{margin-top:12px}.form-stack{flex-direction:column;gap:15px;display:flex}.recurrence-fields{background:#f8fbf9;border:1px solid #d8e4de;border-radius:11px;flex-direction:column;gap:12px;padding:13px;display:flex}.recurrence-ending{align-items:end}.recurrence-ending.single{grid-template-columns:1fr}.recurrence-summary{color:var(--muted);flex-direction:column;gap:2px;margin:0;font-size:.72rem;line-height:1.4;display:flex}.recurrence-summary strong{color:var(--primary);font-size:.76rem}.recurrence-context{color:var(--primary);background:#edf5f1;border-radius:10px;align-items:center;gap:9px;padding:10px 12px;display:flex}.recurrence-context>span{flex-direction:column;gap:1px;display:flex}.recurrence-context strong{font-size:.78rem}.recurrence-context small{color:var(--muted);font-size:.66rem}.recurrence-scope{color:#344740;flex-direction:column;gap:6px;margin-top:12px;font-size:.79rem;font-weight:680;display:flex}.series-action-scope{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;display:grid}.series-action-scope legend{color:#344740;grid-column:1/-1;margin-bottom:6px;font-size:.79rem;font-weight:680}.series-action-scope label{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;align-items:flex-start;min-width:0;padding:10px;flex-direction:row!important;gap:8px!important}.series-action-scope label.active{background:#f1f7f4;border-color:#75a58f;box-shadow:0 0 0 2px #2f675814}.series-action-scope input{width:16px;height:16px;accent-color:var(--primary);flex:none;margin:2px 0 0}.series-action-scope span{flex-direction:column;gap:2px;min-width:0;display:flex}.series-action-scope strong{color:var(--ink);font-size:.72rem}.series-action-scope small{color:var(--faint);font-size:.61rem;font-weight:520;line-height:1.35}.series-action-scope.danger-scope label.active{background:#fff7f7;border-color:#d39b9b;box-shadow:0 0 0 2px #973b3b12}.series-action-scope.danger-scope input{accent-color:var(--danger)}.form-hint{color:var(--muted);margin:-.2rem 0 1rem;font-size:.82rem}.selected-context{background:var(--surface-soft);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.selected-context span{color:var(--muted);font-size:.75rem}.selected-context strong{font-size:.9rem}.form-stack label:not(.check-row):not(.simple-check){color:#344740;flex-direction:column;gap:6px;font-size:.79rem;font-weight:680;display:flex}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #ccd6d1;border-radius:9px;padding:.72rem .78rem;transition:border .12s,box-shadow .12s}input:hover,select:hover,textarea:hover{border-color:#aebeb6}input:focus,select:focus,textarea:focus{border-color:var(--primary);outline:0;box-shadow:0 0 0 3px #2f67581a}textarea{resize:vertical;line-height:1.45}.optional{color:var(--faint);margin-left:.2rem;font-size:.66rem;font-weight:520}.field-grid{gap:13px;display:grid}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-actions{justify-content:flex-end;align-items:center;gap:8px;padding-top:4px;display:flex}.form-between{justify-content:space-between;align-items:center;gap:1rem;font-size:.76rem;display:flex}.simple-check{color:var(--muted);align-items:center;gap:.5rem;display:flex}.simple-check input,.check-row input{width:17px;height:17px;accent-color:var(--primary)}.check-row{border:1px solid var(--line);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:12px;display:flex}.check-row input{flex:none;margin-top:2px}.check-row span{flex-direction:column;display:flex}.check-row strong{font-size:.8rem}.check-row small{color:var(--faint);margin-top:2px}.inline-create{background:var(--surface-soft);border-radius:10px;flex-direction:column;gap:10px;padding:13px;display:flex}.inline-create>strong{font-size:.78rem}.inline-actions{justify-content:flex-end;gap:7px;display:flex}.form-details{border:1px solid var(--line);border-radius:11px}.form-details summary{cursor:pointer;color:var(--primary);padding:12px 14px;font-size:.8rem;font-weight:680}.form-details summary span{color:var(--faint);font-weight:500}.details-content{padding:5px 14px 14px}.duplicate-box{background:var(--warning-soft);border:1px solid #efd9bb;border-radius:10px;flex-direction:column;gap:6px;padding:12px;display:flex}.duplicate-box strong{color:#7d541f;font-size:.78rem}.duplicate-box a{font-size:.78rem;font-weight:650}.alert{border-radius:10px;padding:12px 14px;font-size:.82rem;line-height:1.45}.alert.error{color:#863d3d;background:var(--danger-soft);border:1px solid #f0cece}.alert.success-alert{color:#35674f;background:#e8f4ed;border:1px solid #cfe6d9}.alert.archived-alert{color:#625d55;background:#f0efec;border:1px solid #dedbd5;margin-bottom:18px}.alert button{appearance:none;color:inherit;cursor:pointer;background:0 0;border:0;margin-left:.5rem;font-weight:720;text-decoration:underline}.auth-page{background:radial-gradient(circle at 20% 10%,#e0ebe5 0,#0000 34%),radial-gradient(circle at 90% 90%,#e8ede4 0,#0000 30%),#f5f7f3;place-items:center;min-height:100vh;padding:30px 18px;display:grid}.auth-card{width:min(430px,100%);box-shadow:var(--shadow);background:#fffffff5;border:1px solid #dfe6e1;border-radius:20px;padding:34px}.auth-card.auth-card-wide{width:min(500px,100%)}.auth-brand{align-items:center;gap:13px;margin-bottom:38px;display:flex}.auth-brand>div{flex-direction:column;display:flex}.auth-brand strong{font-size:1rem}.auth-brand span:not(.brand-mark){color:var(--muted);margin-top:.15rem;font-size:.72rem}.auth-heading{margin-bottom:23px}.auth-heading h1{font-size:2rem}.auth-heading p{margin-bottom:0;font-size:.87rem}.auth-field-hint{color:var(--faint);margin:-9px 0 0;font-size:.72rem}.auth-switch{border-top:1px solid var(--line);text-align:center;margin:22px 0 0;padding-top:18px;font-size:.82rem}.auth-switch a{font-weight:720}.skeleton{background:#e9eeeb;border-radius:14px;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffffa6,#0000);animation:1.3s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}.hero-skeleton{height:120px;margin-bottom:22px}.list-skeleton{height:390px}.module-switcher{background:#ffffff6b;border:1px solid #d9e3de;border-radius:12px;gap:3px;margin-top:27px;padding:4px;display:grid}.module-switcher a{min-width:0;color:var(--muted);border-radius:8px;align-items:center;gap:7px;padding:8px 9px;font-size:.72rem;font-weight:690;display:flex}.module-switcher a:hover{color:var(--ink);background:#ffffffa6}.module-switcher a.active{color:var(--primary-dark);background:#fff;box-shadow:0 1px 5px #21383014}.module-switcher a .icon{flex:none}.module-switcher+.main-nav{margin-top:12px}.mobile-module-switcher{display:none}.attendance-count-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.attendance-count-grid label{min-width:0}.attendance-count-grid input{text-align:center;font-size:1rem;font-weight:720}.attendance-count-grid small{color:var(--faint);text-align:center;font-size:.56rem;font-weight:500;line-height:1.35}.attendance-total-preview{background:#f0f7f3;border:1px solid #cfe0d8;border-radius:11px;grid-template-columns:1fr auto;align-items:end;gap:1px 12px;padding:11px 13px;display:grid}.attendance-total-preview>span{color:var(--muted);font-size:.7rem;font-weight:700}.attendance-total-preview strong{color:var(--primary-dark);grid-area:1/2/span 2;font-size:1.75rem;line-height:1}.attendance-total-preview small{color:var(--faint);font-size:.62rem}.attendance-total-preview.incomplete{border-color:var(--line);background:var(--surface-soft)}.attendance-total-preview.incomplete strong{color:var(--faint)}.attendance-manage-types-link{width:max-content;margin-top:-7px;font-size:.72rem;font-weight:680}.attendance-type-filter{width:min(260px,100%)!important}.attendance-type.attendance-color-green,.attendance-color-green{color:#356b55;background:#e1efe7}.attendance-type.attendance-color-blue,.attendance-color-blue{color:#496c86;background:#e5edf3}.attendance-type.attendance-color-amber,.attendance-color-amber{color:#895f29;background:#f6ead8}.attendance-type.attendance-color-purple,.attendance-color-purple{color:#725787;background:#eee6f3}.attendance-type.attendance-color-rose,.attendance-color-rose{color:#915366;background:#f5e5ea}.attendance-type.attendance-color-teal,.attendance-color-teal{color:#2e706c;background:#dff0ed}.attendance-page{max-width:1440px}.attendance-filters{align-items:flex-end;gap:16px;margin-bottom:18px;padding:14px 16px;display:flex}.attendance-filters>label,.attendance-filters>div{color:var(--muted);flex-direction:column;gap:5px;font-size:.68rem;font-weight:700;display:flex}.attendance-filters>label{flex:none;width:125px}.attendance-filters select{padding-block:.58rem}.attendance-filter-tabs{background:var(--surface-soft);border-radius:10px;gap:3px;padding:3px;display:flex}.attendance-filter-tabs button{appearance:none;min-height:36px;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:6px 12px;font-size:.72rem;font-weight:680}.attendance-filter-tabs button.active{color:var(--primary-dark);background:#fff;box-shadow:0 1px 5px #2138301a}.attendance-filters>p{white-space:nowrap;margin:0 0 9px auto;font-size:.7rem}.attendance-filters>p strong{color:var(--ink)}.attendance-list-panel{padding:0;overflow:hidden}.attendance-table-wrap{overflow-x:auto}.attendance-table{border-collapse:collapse;width:100%;min-width:1040px}.attendance-table th{border-bottom:1px solid var(--line);color:var(--faint);letter-spacing:.045em;text-align:left;text-transform:uppercase;background:#f8faf8;padding:11px 13px;font-size:.6rem;font-weight:760}.attendance-table td{color:var(--ink);vertical-align:middle;border-bottom:1px solid #edf0ee;padding:13px;font-size:.76rem}.attendance-table tbody tr:last-child td{border-bottom:0}.attendance-table tbody tr:hover{background:#fafcfb}.attendance-table .number-cell{text-align:right;font-variant-numeric:tabular-nums}.attendance-date-cell{align-items:center;gap:10px;display:flex}.attendance-date-cell time,.attendance-card-date time{flex-direction:column;min-width:86px;display:flex}.attendance-date-cell time strong,.attendance-card-date time strong{color:var(--ink);white-space:nowrap;font-size:.76rem}.attendance-date-cell time small,.attendance-card-date time small{color:var(--faint);margin-top:2px;font-size:.61rem}.attendance-type,.attendance-status{white-space:nowrap;border-radius:999px;align-items:center;width:max-content;padding:4px 7px;font-size:.6rem;font-weight:730;display:inline-flex}.attendance-type.sunday{color:#356b55;background:#e1efe7}.attendance-type.prayer{color:#496c86;background:#e5edf3}.attendance-type.special{color:#895f29;background:#f6ead8}.attendance-status.complete{color:#3b7059;background:#e7f2eb}.attendance-status.incomplete{color:#94621f;background:#fff1dc}.attendance-status.not-held{color:#786f6f;background:#eeecec}.attendance-total-cell{font-weight:780;color:var(--primary-dark)!important;font-size:.9rem!important}.attendance-context{flex-direction:column;max-width:245px;display:flex}.attendance-context strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.attendance-context small{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:.64rem;line-height:1.35;display:-webkit-box;overflow:hidden}.attendance-empty-cell{color:var(--faint);font-size:.65rem}.attendance-row-actions{justify-content:flex-end;gap:5px;display:flex}.attendance-row-actions .icon-button{width:32px;min-width:32px;height:32px}.attendance-card-list{display:none}.attendance-list-skeleton{height:390px}.attendance-empty-state{min-height:370px}.attendance-service-types-page{max-width:1120px}.attendance-service-types-skeleton{border-radius:16px;height:380px}.attendance-service-types-panel .section-heading p{margin:4px 0 0;font-size:.75rem}.attendance-service-type-list{flex-direction:column;display:flex}.attendance-service-type-card{border-top:1px solid #e8edea;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;padding:16px 2px;display:grid}.attendance-service-type-card:first-child{border-top:0;padding-top:2px}.attendance-service-type-card:last-child{padding-bottom:2px}.attendance-service-type-card.inactive{opacity:.72}.attendance-service-type-mark{border-radius:13px;flex:none;place-items:center;width:46px;height:46px;display:grid}.attendance-service-type-main{min-width:0}.attendance-service-type-main>div{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.attendance-service-type-main h3{overflow-wrap:anywhere;margin:0}.attendance-service-type-main p{color:var(--faint);margin:3px 0 0;font-size:.7rem}.attendance-inactive-badge{color:#746d6d;background:#efeded;border-radius:999px;padding:3px 6px;font-size:.58rem;font-weight:730}.attendance-service-type-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:3px;display:flex}.attendance-system-type-panel{justify-content:space-between;align-items:center;gap:18px;display:flex}.attendance-system-type-panel.inactive{opacity:.72}.attendance-system-type-copy{align-items:center;gap:14px;min-width:0;display:flex}.attendance-system-type-copy .eyebrow{margin-bottom:2px}.attendance-system-type-copy h2{margin-bottom:3px}.attendance-system-type-copy p{max-width:680px;margin:0;font-size:.75rem}.attendance-color-field{border:0;min-width:0;margin:0;padding:0}.attendance-color-field legend{color:#344740;margin-bottom:8px;font-size:.79rem;font-weight:680}.attendance-color-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.attendance-color-options label{border:1px solid var(--line);cursor:pointer;min-width:0;min-height:42px;color:var(--muted);border-radius:9px;align-items:center;gap:7px;padding:8px;font-size:.68rem;font-weight:650;display:flex;position:relative}.attendance-color-options label.selected{color:var(--ink);background:#f5faf7;border-color:#7da493;box-shadow:inset 0 0 0 1px #b2ccbf}.attendance-color-options input{opacity:0;width:1px;height:1px;position:absolute}.attendance-color-options input:focus-visible~span:last-child{text-decoration:underline;text-decoration-thickness:2px}.attendance-color-swatch{border-radius:50%;flex:none;width:18px;height:18px;box-shadow:inset 0 0 0 1px #22332d17}.account-attendance-settings{justify-content:space-between;align-items:center;gap:18px;display:flex}.account-attendance-settings h2{margin-bottom:.45rem}.account-attendance-settings .form-hint{margin:0}.account-attendance-settings .button{flex:none}.integration-keys-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.integration-keys-heading h2{margin-bottom:.45rem}.integration-keys-heading .form-hint{margin-bottom:0}.integration-keys-heading>code{background:var(--surface-soft);color:var(--primary-dark);border-radius:7px;flex:none;padding:7px 9px;font-size:.7rem}.integration-key-form{grid-template-columns:minmax(0,1fr) 150px auto;align-items:end;gap:10px;margin-top:20px;display:grid}.integration-key-form label{color:#344740;flex-direction:column;gap:6px;font-size:.75rem;font-weight:680;display:flex}.integration-key-form input,.integration-key-form select{width:100%;min-height:42px;color:var(--ink);background:#fff;border:1px solid #ccd6d1;border-radius:9px;padding:.66rem .75rem}.integration-token-reveal{background:#fff9e9;border:1px solid #d8c58f;border-radius:12px;margin-top:18px;padding:15px}.integration-token-reveal strong{color:#71511e;display:block}.integration-token-reveal p{margin:3px 0 10px;font-size:.8rem}.integration-token-reveal textarea{resize:vertical;color:#29332f;overflow-wrap:anywhere;background:#fff;border:1px solid #d5c38e;border-radius:8px;width:100%;padding:10px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.76rem}.integration-token-reveal .button{margin-top:8px}.integration-key-list{flex-direction:column;gap:8px;margin-top:18px;display:flex}.integration-key{border-top:1px solid #edf0ee;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.integration-key>div{flex-direction:column;gap:3px;min-width:0;display:flex}.integration-key strong{font-size:.84rem}.integration-key code{color:var(--primary);font-size:.7rem}.integration-key small{color:var(--faint);font-size:.67rem}.integration-key.is-inactive{opacity:.68}.attendance-reports-page{max-width:1400px}.attendance-report-filter-notes{flex-direction:column;flex:1;gap:5px;max-width:720px;margin-left:auto;display:flex}.report-filters .attendance-report-filter-notes p{align-items:flex-start;gap:6px;margin:0;font-size:.67rem;line-height:1.4;display:flex}.attendance-report-filter-notes p>span{flex:1}.attendance-report-filter-notes .icon{color:var(--primary);flex:none;margin-top:1px}.attendance-report-filter-notes .attendance-special-scope-note{color:#745326;background:#fff5e6;border-radius:8px;padding:6px 8px}.attendance-metric-grid{grid-template-columns:repeat(3,minmax(160px,1fr));gap:11px;margin-bottom:12px;display:grid}.attendance-data-quality{border:1px solid var(--line);background:#fbfcfb;border-radius:12px;grid-template-columns:minmax(190px,auto) auto minmax(280px,1fr);align-items:center;gap:18px;margin-bottom:28px;padding:12px 15px;display:grid}.attendance-data-quality-heading{align-items:center;gap:9px;display:flex}.attendance-data-quality-heading>.icon{color:var(--primary);flex:none}.attendance-data-quality-heading>div{flex-direction:column;gap:1px;display:flex}.attendance-data-quality-heading strong{font-size:.72rem}.attendance-data-quality-heading small{color:var(--faint);font-size:.59rem}.attendance-data-quality dl{align-items:center;gap:6px;margin:0;display:flex}.attendance-data-quality dl>div{background:var(--surface-soft);border-radius:8px;align-items:baseline;gap:5px;padding:6px 9px;display:flex}.attendance-data-quality dl>div.attention{color:#8b5821;background:#fff1dd}.attendance-data-quality dt{color:var(--muted);font-size:.6rem}.attendance-data-quality dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-size:.73rem;font-weight:760}.attendance-latest-note{color:var(--muted);justify-self:end;align-items:center;gap:7px;margin:0;font-size:.64rem;display:flex}.attendance-latest-note .icon{color:var(--primary)}.attendance-latest-note strong{color:var(--ink)}.attendance-report-area{margin-bottom:28px}.attendance-report-area-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin:0 2px 11px;display:flex}.attendance-report-area-heading .eyebrow{margin-bottom:3px}.attendance-report-area-heading h2{margin:0;font-size:1.18rem}.attendance-report-area-heading>p{color:var(--muted);margin:0;font-size:.67rem;font-weight:680}.attendance-report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.attendance-report-grid>.panel{min-width:0}.attendance-report-grid .panel+.panel{margin-top:0}.attendance-report-wide{grid-column:1/-1}.attendance-report-grid .section-heading p{margin:4px 0 0;font-size:.72rem}.attendance-series-section-heading{align-items:flex-end}.attendance-series-metric{border:0;flex:none;margin:0;padding:0}.attendance-series-metric legend{color:var(--muted);margin-bottom:5px;font-size:.62rem;font-weight:700}.attendance-series-metric .segmented{align-items:stretch;min-height:40px}.attendance-series-metric .segmented button{white-space:nowrap;min-width:68px}.attendance-series-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.attendance-series-card{border:1px solid var(--line);background:#fbfcfb;border-radius:12px;min-width:0;padding:14px}.attendance-series-heading{justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.attendance-series-heading .eyebrow{margin-bottom:2px;font-size:.59rem}.attendance-series-heading h3{margin:0}.attendance-series-heading>span{color:var(--faint);font-size:.61rem}.attendance-series-chart{scrollbar-width:thin;height:230px;padding-top:5px;overflow:auto hidden}.attendance-series-svg{max-width:none;display:block}.attendance-series-grid-line{stroke:#e1e7e3;stroke-width:1px}.attendance-series-line{fill:none;stroke:var(--primary);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.attendance-series-chart.prayer .attendance-series-line{stroke:#5f8ba8}.attendance-series-dot{fill:#fff;stroke:var(--primary);stroke-width:2.5px}.attendance-series-chart.prayer .attendance-series-dot{stroke:#5f8ba8}.attendance-series-value{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:10px;font-weight:720}.attendance-series-date{fill:var(--faint);font-size:9px}.attendance-series-missing-mark{stroke:#a3ada8;stroke-width:2px;stroke-linecap:round}.attendance-series-svg .not-held .attendance-series-missing-mark{stroke:#9b7770}.attendance-chart-scroll-hint{color:var(--faint);text-align:right;margin-top:7px;font-size:.72rem;display:none}.attendance-history-heading{align-items:center}.attendance-history-section{margin-top:0}.attendance-history-section .attendance-history-heading{margin-bottom:13px}.attendance-comparison-toolbar{border:1px solid var(--line);background:var(--surface-soft);border-radius:12px;grid-template-columns:minmax(380px,1fr) auto auto;align-items:end;gap:12px;margin-bottom:14px;padding:12px;display:grid}.attendance-comparison-controls{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:10px;display:flex}.attendance-comparison-toolbar .attendance-comparison-controls{flex-wrap:nowrap;justify-content:flex-start}.attendance-comparison-controls>label{min-width:220px;color:var(--muted);flex-direction:column;gap:5px;font-size:.62rem;font-weight:700;display:flex}.attendance-comparison-controls select{min-height:48px;padding-block:.55rem}.attendance-comparison-choice{border:0;min-width:0;margin:0;padding:0}.attendance-comparison-choice legend{color:var(--muted);margin-bottom:5px;font-size:.62rem;font-weight:700}.attendance-comparison-choice .segmented{align-items:stretch;min-height:48px}.attendance-comparison-choice .segmented button{white-space:nowrap;min-width:82px}.attendance-comparison-special-note{color:#745326;background:#fff5e6;border-radius:8px;width:fit-content;padding:6px 8px;font-size:.66rem!important}.attendance-year-selector{z-index:8;flex:none;min-width:184px;position:relative}.attendance-year-selector summary{border:1px solid var(--line);min-height:48px;color:var(--ink);cursor:pointer;background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:13px;padding:7px 10px 7px 12px;list-style:none;display:flex}.attendance-year-selector summary::-webkit-details-marker{display:none}.attendance-year-selector summary>span{flex-direction:column;gap:1px;display:flex}.attendance-year-selector summary small{color:var(--faint);font-size:.57rem;font-weight:670}.attendance-year-selector summary strong{font-size:.7rem}.attendance-year-selector summary .icon{color:var(--muted);transition:transform .15s;transform:rotate(90deg)}.attendance-year-selector[open] summary{border-color:#8aaf9f;box-shadow:0 0 0 3px #2f675817}.attendance-year-selector[open] summary .icon{transform:rotate(-90deg)}.attendance-year-selector-menu{z-index:50;border:1px solid var(--line);width:230px;max-height:min(420px,100vh - 130px);box-shadow:var(--shadow);background:#fff;border-radius:12px;flex-direction:column;padding:9px;display:flex;position:absolute;top:calc(100% + 7px);right:0;overflow:hidden}.attendance-year-selector-menu header{border-bottom:1px solid #edf0ee;justify-content:space-between;align-items:center;gap:8px;padding:2px 4px 8px;display:flex}.attendance-year-selector-menu header strong{font-size:.7rem}.attendance-year-selector-menu header button{appearance:none;color:var(--primary);cursor:pointer;background:0 0;border:0;padding:4px;font-size:.62rem;font-weight:720}.attendance-year-selector-menu fieldset{overscroll-behavior:contain;scrollbar-width:thin;border:0;flex-direction:column;min-height:0;margin:5px 0 0;padding:0;display:flex;overflow-y:auto}.attendance-year-selector-menu .simple-check{min-height:40px;color:var(--ink);cursor:pointer;border-radius:7px;padding:7px 5px;font-size:.72rem;font-weight:680}.attendance-year-selector-menu .simple-check:hover{background:var(--surface-soft)}.attendance-year-line-grid{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.attendance-year-line-card{border:1px solid var(--line);background:#fbfcfb;border-radius:12px;min-width:0;padding:18px}.attendance-year-line-card header .eyebrow{margin-bottom:2px;font-size:.59rem}.attendance-year-line-card header h3{margin:0}.attendance-year-line-card header p{margin:4px 0 0;font-size:.68rem}.attendance-history-tools{justify-content:space-between;align-items:center;gap:14px;min-height:34px;margin-top:11px;display:flex}.attendance-history-point-detail{color:var(--faint);text-align:right;flex:0 470px;font-size:.61rem;line-height:1.35}.attendance-history-point-detail.active{color:var(--primary-dark);font-weight:680}.attendance-history-legend{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.attendance-history-legend button{appearance:none;border:1px solid var(--line);min-height:34px;color:var(--muted);font:inherit;cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:5px 9px;font-size:.64rem;font-weight:700;transition:opacity .15s,border-color .15s,background .15s,color .15s,box-shadow .15s;display:inline-flex}.attendance-history-legend button>span{align-items:baseline;gap:4px;display:inline-flex}.attendance-history-legend button strong{font:inherit;color:inherit}.attendance-history-legend button small{color:var(--faint);font-size:.55rem;font-weight:650}.attendance-history-legend button:hover,.attendance-history-legend button:focus-visible{color:var(--ink);background:#f3f8f5;border-color:#92b3a5;outline:none;box-shadow:0 0 0 2px #2f675812}.attendance-history-legend button[aria-pressed=true],.attendance-history-legend button.is-selected{border-color:var(--primary);color:var(--primary-dark);background:#eaf3ef;box-shadow:0 0 0 2px #2f67581a}.attendance-history-legend button.is-muted{opacity:.42}.attendance-history-legend svg{width:24px;height:8px;overflow:visible}.attendance-history-legend line{fill:none;stroke-width:2.5px;stroke-linecap:round}.attendance-year-line-chart{scrollbar-width:thin;width:100%;max-width:100%;overflow:auto hidden}.attendance-year-line-svg{aspect-ratio:1120/340;width:100%;min-width:760px;height:auto;display:block}.attendance-year-grid-line{stroke:#e1e7e3;stroke-width:1px}.attendance-history-series{cursor:default;transition:opacity .16s}.attendance-year-line{fill:none;stroke:var(--primary);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;transition:stroke-width .16s}.attendance-year-dot{fill:#fff;stroke:var(--primary);stroke-width:2.5px;transition:opacity .16s,r .14s,fill .14s,stroke-width .14s,filter .14s}.attendance-year-dot.is-active{stroke-width:3.5px;filter:drop-shadow(0 1px 2px #1b483973)}.attendance-history-series.is-highlighted .attendance-year-line{stroke-width:4.5px}.attendance-history-series.is-muted,.attendance-year-end-label.is-muted{opacity:.16}.attendance-year-label{fill:var(--faint);font-size:11px;font-weight:650}.attendance-history-axis-title{fill:var(--muted);font-size:10px;font-weight:720}.attendance-history-axis-value{fill:var(--faint);font-variant-numeric:tabular-nums;font-size:10px}.attendance-year-end-label{pointer-events:none;transition:opacity .16s}.attendance-year-end-label line{fill:none;stroke-width:1.5px}.attendance-year-end-label rect{fill:#fbfcfb;stroke:#e8ece9;stroke-width:1px}.attendance-year-end-label text{font-size:10px;font-weight:780}.attendance-sunday-line-card{margin-top:0}.attendance-sunday-line-svg{aspect-ratio:1400/380;min-width:1120px}.attendance-sunday-label,.attendance-sunday-axis-title{font-size:9px}.attendance-chart-empty{text-align:center;place-items:center;min-height:145px;display:grid}.attendance-composition-bar{background:var(--surface-soft);border-radius:8px;height:24px;display:flex;overflow:hidden}.attendance-composition-bar>span{min-width:2px}.composition-0{background:var(--primary)}.composition-1{background:#6d92aa}.composition-2{background:#d19a55}.attendance-composition-list{flex-direction:column;gap:2px;margin-top:15px;display:flex}.attendance-composition-list>div{border-bottom:1px solid #edf0ee;grid-template-columns:10px 1fr auto 44px;align-items:center;gap:8px;padding:9px 3px;display:grid}.attendance-composition-list>div>i{border-radius:3px;width:9px;height:9px}.attendance-composition-list span{color:var(--muted);font-size:.7rem}.attendance-composition-list strong{font-variant-numeric:tabular-nums;font-size:.78rem}.attendance-composition-list small{color:var(--faint);text-align:right;font-size:.64rem}.attendance-chart-legend{flex-wrap:wrap;gap:12px;margin-bottom:13px;display:flex}.attendance-chart-legend span{color:var(--muted);align-items:center;gap:5px;font-size:.61rem;display:inline-flex}.attendance-chart-legend i{border-radius:3px;width:8px;height:8px}.attendance-chart-legend i.sunday,.year-bar-row b.sunday{background:var(--primary)}.attendance-chart-legend i.prayer,.year-bar-row b.prayer{background:#5b82a0}.attendance-chart-legend i.special,.year-bar-row b.special{background:#c98a3f}.year-comparison-list{flex-direction:column;gap:11px;display:flex}.year-comparison-row{grid-template-columns:42px 1fr;align-items:center;gap:8px;display:grid}.year-comparison-row>strong{font-size:.7rem}.year-comparison-row>div{flex-direction:column;gap:3px;display:flex}.year-bar-row{grid-template-columns:1fr 34px;align-items:center;gap:7px;display:grid}.year-bar-row>i{background:var(--surface-soft);border-radius:7px;height:7px;overflow:hidden}.year-bar-row b{border-radius:inherit;height:100%;display:block}.year-bar-row small{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;font-size:.58rem}.special-event-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.special-event-list article{border:1px solid var(--line);background:#fbfcfb;border-radius:11px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;padding:11px;display:grid}.special-event-list time{color:#835c2d;background:#f7ead8;border-radius:8px;flex-direction:column;align-items:center;padding:6px;display:flex}.special-event-list time strong{font-size:1rem;line-height:1}.special-event-list time span{text-align:center;margin-top:3px;font-size:.52rem}.special-event-list article>div{min-width:0}.special-event-title{flex-wrap:wrap;align-items:center;gap:5px;min-width:0;display:flex}.special-event-title>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.76rem;display:block;overflow:hidden}.special-event-title .attendance-status{flex:none;padding:3px 6px}.special-event-list p{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:3px 0 0;font-size:.63rem;line-height:1.35;display:-webkit-box;overflow:hidden}.special-event-list article>span{flex-direction:column;align-items:flex-end;display:flex}.special-event-list article>span small{color:var(--faint);font-size:.55rem}.special-event-list article>span strong{color:var(--primary-dark);font-size:1.15rem}.attendance-special-panel .special-event-list{grid-template-columns:1fr}.attendance-annual-details{margin-top:16px;padding:0;overflow:visible}.attendance-annual-details>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:18px;min-height:82px;padding:17px 20px;list-style:none;display:flex}.attendance-annual-details>summary::-webkit-details-marker{display:none}.attendance-annual-details>summary>span{flex-direction:column;gap:2px;display:flex}.attendance-annual-details>summary .eyebrow{margin:0;font-size:.58rem}.attendance-annual-details>summary strong{font-size:.86rem}.attendance-annual-details>summary small{color:var(--muted);font-size:.66rem;font-weight:450}.attendance-annual-details>summary>.icon{color:var(--primary);flex:none;transition:transform .15s;transform:rotate(90deg)}.attendance-annual-details[open]>summary{border-bottom:1px solid var(--line)}.attendance-annual-details[open]>summary>.icon{transform:rotate(-90deg)}.attendance-annual-details-content{padding:18px 20px 20px}.attendance-annual-overlap-note{color:#745326;background:#fff5e6;border-radius:9px;align-items:flex-start;gap:7px;margin:0 0 16px;padding:9px 11px;font-size:.65rem;line-height:1.4;display:flex}.attendance-annual-overlap-note .icon{flex:none;margin-top:1px}.attendance-report-skeleton{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.attendance-report-skeleton .skeleton{height:280px}.sermon-page{max-width:1060px}.sermon-filters{align-items:flex-end;gap:13px;margin-bottom:18px;padding:14px 16px;display:flex}.sermon-filters label{min-width:145px;color:var(--muted);flex-direction:column;gap:5px;font-size:.68rem;font-weight:700;display:flex}.sermon-filters .sermon-search-field{flex:1;min-width:280px}.sermon-filters input,.sermon-filters select{padding-block:.6rem}.sermon-filters>p{color:var(--muted);white-space:nowrap;margin:0 0 9px auto;font-size:.7rem}.sermon-filters>p strong{color:var(--ink)}.sermon-list{gap:14px;display:grid}.sermon-list .panel+.panel{margin-top:0}.sermon-list-skeleton{border-radius:16px;height:520px}.sermon-card{padding:0;overflow:hidden}.sermon-card>header{background:#f8faf9;border-bottom:1px solid #e7ece9;justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:11px 16px;display:flex}.sermon-card-date{flex-direction:column;display:flex}.sermon-card-date time{color:var(--ink);font-size:.76rem;font-weight:740}.sermon-card-date small{color:var(--faint);text-transform:capitalize;margin-top:1px;font-size:.6rem}.sermon-card-context{align-items:center;gap:12px;display:flex}.sermon-card-context>span{color:var(--primary-dark);background:var(--primary-soft);border-radius:999px;padding:5px 9px;font-size:.66rem;font-weight:700}.sermon-card-context>div{gap:5px;display:flex}.sermon-card-context .icon-button{min-width:34px;height:34px}.sermon-card-body{grid-template-columns:minmax(270px,.82fr) minmax(0,1.18fr);align-items:start;gap:24px;padding:22px;display:grid}.sermon-card-summary{min-width:0}.sermon-card-title{align-items:flex-start;gap:12px;display:flex}.sermon-book-icon{width:40px;height:40px;color:var(--primary);background:var(--primary-soft);border-radius:12px;flex:none;place-items:center;display:grid}.sermon-card-title>div{min-width:0;padding-top:1px}.sermon-card-title h2{margin:0 0 4px;font-size:1.16rem;line-height:1.25}.sermon-card-title strong{color:var(--primary);font-size:.76rem;display:block}.sermon-card-details{gap:9px;margin:18px 0 0;display:grid}.sermon-card-details>div{border-left:3px solid #a9c7ba;padding:3px 0 3px 14px}.sermon-card-details dt,.sermon-outline-heading>span{color:var(--faint);letter-spacing:.075em;text-transform:uppercase;font-size:.59rem;font-weight:780}.sermon-card-details dd{color:var(--ink);white-space:pre-wrap;margin:4px 0 0;font-size:.75rem;line-height:1.48}.sermon-card-links{flex-wrap:wrap;align-items:center;gap:7px;margin-top:15px;display:flex}.sermon-card-links a{min-height:34px;color:var(--primary-dark);background:#f8fbf9;border:1px solid #dbe6e1;border-radius:9px;align-items:center;gap:6px;padding:7px 10px;font-size:.66rem;font-weight:720;display:inline-flex}.sermon-card-links a:hover{background:var(--primary-soft);border-color:#a9c7ba}.sermon-card-links .icon{flex:none}.sermon-outline{background:#fbfcfb;border:1px solid #e2e9e5;border-radius:13px;min-width:0;padding:14px 16px 8px}.sermon-outline-heading{justify-content:space-between;align-items:center;gap:12px;padding-bottom:9px;display:flex}.sermon-outline-heading>small{color:var(--faint);font-size:.6rem}.sermon-outline ol{counter-reset:sermon-point;margin:0;padding:0;list-style:none}.sermon-outline li{min-width:0;color:var(--ink);counter-increment:sermon-point;border-top:1px solid #e8edea;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:9px;padding:10px 2px;font-size:.77rem;line-height:1.45;display:grid}.sermon-outline li:before{content:counter(sermon-point);width:25px;height:25px;color:var(--primary-dark);background:var(--primary-soft);border-radius:8px;place-items:center;margin-top:-2px;font-size:.65rem;font-weight:780;display:grid}.sermon-pagination{border:1px solid var(--line);background:#fff;border-radius:13px}.sermon-empty-state{margin-top:0}.sermon-points-fieldset{border:1px solid var(--line);border-radius:12px;min-width:0;margin:0;padding:14px}.sermon-points-fieldset legend{color:#344740;padding:0 5px;font-size:.79rem;font-weight:700}.sermon-points-fieldset>p{margin:-2px 0 11px;font-size:.68rem}.sermon-point-inputs{gap:8px;display:grid}.sermon-point-input{grid-template-columns:27px minmax(0,1fr) 38px;align-items:center;gap:8px;display:grid}.sermon-point-input>span{width:27px;height:27px;color:var(--primary);background:var(--primary-soft);border-radius:8px;place-items:center;font-size:.7rem;font-weight:780;display:grid}.sermon-point-input textarea{min-height:48px}.sermon-add-point{margin-top:10px}.sermon-report-page{max-width:1180px}.sermon-report-grid>.panel{min-width:0}.sermon-column-chart{contain:inline-size;width:100%;min-width:0;max-width:100%;overflow:auto hidden}.sermon-column-chart .chart-column{min-width:38px}.sermon-horizontal-bars .horizontal-bar{grid-template-columns:minmax(95px,145px) 1fr 32px}.sermon-horizontal-bars .horizontal-bar>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sermon-rank-list,.sermon-recent-list{flex-direction:column;display:flex}.sermon-rank-list>article{border-bottom:1px solid #edf0ee;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 0;display:grid}.sermon-rank-list>article:last-child,.sermon-recent-list>article:last-child{border-bottom:0}.sermon-rank-list>article>span{width:24px;height:24px;color:var(--primary);background:var(--primary-soft);border-radius:7px;place-items:center;font-size:.64rem;font-weight:750;display:grid}.sermon-rank-list article>div,.sermon-recent-list article>div{flex-direction:column;min-width:0;display:flex}.sermon-rank-list strong,.sermon-recent-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.sermon-rank-list small,.sermon-recent-list small{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.62rem;overflow:hidden}.sermon-rank-list b{color:var(--primary);font-size:.76rem}.sermon-recent-list>article{border-bottom:1px solid #edf0ee;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:10px;padding:10px 0;display:grid}.sermon-recent-list time{color:var(--muted);font-size:.66rem;font-weight:680}.activity-icon.sermons{color:#6d5a38;background:#f3eadb}@media (width<=1080px){.page{padding-inline:28px}.today-grid{grid-template-columns:1fr}.today-side{grid-template-columns:1fr 1fr;gap:18px;display:grid}.today-side .panel+.panel{margin-top:0}.agenda-page .agenda-status-summary,.agenda-page .agenda-drag-help{display:none}.agenda-page .agenda-summary-compact{display:block}.agenda-page .week-grid-scroll{overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-color:#9fb9ad #eef3f0;scrollbar-width:thin;-webkit-overflow-scrolling:touch;overflow:auto hidden}.agenda-page .week-grid{align-items:stretch;width:max-content;display:flex}.agenda-page .period-gutter{display:none}.agenda-page .day-column{scroll-snap-align:start;flex-direction:column;flex:0 0 190px;width:190px;display:flex}.agenda-page .day-time-slot.empty-slot{display:none}.agenda-page .day-time-slot{border-left:3px solid #0000;flex:none}.agenda-page .day-time-slot.period-morning{border-left-color:#d3a34f}.agenda-page .day-time-slot.period-afternoon{border-left-color:#4d9278}.agenda-page .day-time-slot.period-night{border-left-color:#607b9e}.agenda-page .add-at-time{display:none}.agenda-page .day-header-add{opacity:1}.attendance-metric-grid{grid-template-columns:repeat(3,1fr)}.attendance-data-quality{grid-template-columns:minmax(190px,auto) 1fr}.attendance-latest-note{grid-column:1/-1;justify-self:start}.attendance-comparison-toolbar{grid-template-columns:1fr 1fr}.attendance-comparison-toolbar .attendance-comparison-controls{grid-column:1/-1}.admin-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=800px){html,body,#root{width:100%;max-width:100%;overflow-x:clip}body{padding-bottom:68px}.app-shell,.app-main{width:100%;min-width:0;max-width:100%}.sidebar{display:none}.app-main{margin-left:0}.mobile-header{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f6f7f4f0;border-bottom:1px solid #dbe3ded9;justify-content:space-between;align-items:center;height:61px;padding:9px 16px;display:flex;position:sticky;top:0}.brand.compact{gap:.55rem}.brand.compact .brand-mark{border-radius:11px 11px 11px 4px;width:33px;height:33px;font-size:.62rem}.brand.compact strong{font-size:.87rem}.bottom-nav{z-index:50;min-height:64px;padding:6px max(8px, env(safe-area-inset-right)) max(6px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff7;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;inset:auto 0 0}.bottom-nav a{color:#798680;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.65rem;font-weight:650;display:flex}.bottom-nav a.active{color:var(--primary)}.mobile-fab{z-index:55;background:var(--primary);color:#fff;border:0;border-radius:17px 17px 17px 7px;place-items:center;width:52px;height:52px;display:grid;position:fixed;bottom:78px;right:18px;box-shadow:0 8px 24px #224b3f4d}.page{width:100%;min-width:0;max-width:100%;margin-inline:0;padding:25px 16px 45px}.page-header{align-items:flex-start;margin-bottom:22px}.page-header h1{font-size:2.2rem}.today-heading{align-items:flex-start}.desktop-only{display:none!important}.today-grid{gap:14px}.today-side{gap:0;display:flex}.today-side .panel+.panel{margin-top:14px}.panel{border-radius:14px;padding:17px}.attention-panel{padding:15px}.attention-heading>div{gap:.55rem}.attention-icon{display:none}.appointment-card{gap:10px;padding:12px}.appointment-card .button.small{gap:0;width:34px;height:34px;padding:.5rem;font-size:0}.appointment-card .button.small .icon{width:17px}.appointment-time{width:56px}.series-action-scope{grid-template-columns:1fr}.agenda-header .header-actions .button{white-space:nowrap}.app-shell:has(.agenda-page) .mobile-header{gap:3px;min-height:84px;padding-block:6px 5px}.app-shell:has(.agenda-page) .mobile-header .brand-mark{width:30px;height:30px}.app-shell:has(.agenda-page) .mobile-module-switcher a{padding-block:4px}.app-shell:has(.agenda-page) .app-main{min-height:calc(100vh - 152px)}.agenda-page{padding-top:12px;padding-bottom:20px}.agenda-header{align-items:center;min-height:42px;margin-bottom:10px}.agenda-header .eyebrow{display:none}.agenda-header h1{font-size:1.75rem}.agenda-header .header-actions .button{padding:.62rem .78rem;font-size:.8rem}.calendar-panel{border-left:0;border-right:0;border-radius:0;margin-inline:-16px}.agenda-page .calendar-toolbar{flex-wrap:nowrap;gap:6px;min-height:52px;padding:8px 12px}.calendar-toolbar .icon-button{min-width:34px;height:34px}.calendar-toolbar .segmented button{padding:6px 8px}.agenda-summary-compact>summary{padding:8px 12px}.agenda-summary-compact-body{padding-inline:12px}.week-controls{flex:1;gap:5px}.week-controls strong{margin-left:4px;font-size:.76rem}.profile-grid,.family-directory{grid-template-columns:1fr}.person-hero{flex-direction:column;align-items:flex-start}.person-hero .header-actions{width:100%}.person-hero .header-actions .button{flex:1}.profile-side{grid-row:1}.timeline-item{grid-template-columns:12px 1fr}.timeline-date,.timeline-content{grid-column:2}.timeline-dot{grid-row:1/span 2}.metric-grid,.metric-grid.five{grid-template-columns:repeat(3,1fr)}.report-grid{grid-template-columns:1fr}.report-wide{grid-column:auto}.report-filters,.activity-filters{flex-direction:column;align-items:stretch}.report-filters label,.activity-filters label{min-width:0}.report-filters p{margin:2px 0 0}.report-list-heading{flex-direction:column;align-items:stretch}.report-list-heading label{min-width:0}.attention-row{grid-template-columns:1fr;gap:4px}.attention-hide{justify-self:start}.mobile-header{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:7px;height:auto;min-height:99px;padding:8px 16px 7px}.mobile-header-top{justify-content:space-between;align-items:center;display:flex}.mobile-module-switcher{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;margin:0;padding:3px;display:grid}.mobile-module-switcher.without-planning{grid-template-columns:repeat(3,minmax(0,1fr))}.mobile-module-switcher.with-admin{grid-template-columns:repeat(5,minmax(0,1fr))}.mobile-module-switcher.without-planning.with-admin{grid-template-columns:repeat(4,minmax(0,1fr))}.mobile-module-switcher a{justify-content:center;gap:4px;padding:6px 4px;font-size:.59rem}.mobile-module-switcher.with-admin a{flex-direction:column;gap:1px;padding:4px 2px}.bottom-nav.attendance-bottom-nav{grid-template-columns:repeat(3,minmax(82px,150px));justify-content:center}.bottom-nav.sermon-bottom-nav{grid-template-columns:repeat(2,minmax(100px,170px));justify-content:center}.bottom-nav.planning-bottom-nav{grid-template-columns:minmax(100px,170px);justify-content:center}.admin-page{padding-bottom:90px}.admin-filters{grid-template-columns:1fr;gap:10px}.admin-table-wrap{display:none}.admin-user-cards{flex-direction:column;gap:10px;padding:0 12px 13px;display:flex}.admin-user-cards>article{border:1px solid var(--line);background:#fff;border-radius:13px;overflow:hidden}.admin-user-cards>article.inactive{opacity:.78;background:#fafafa}.admin-user-cards>article>header{border-bottom:1px solid #edf0ee;justify-content:space-between;align-items:flex-start;gap:10px;padding:13px;display:flex}.admin-user-card-meta{color:var(--muted);flex-direction:column;align-items:flex-start;gap:6px;padding:12px 13px;font-size:.68rem;display:flex}.admin-user-cards>article>footer{background:#fafbfa;border-top:1px solid #edf0ee;padding:9px 12px}.admin-user-cards .admin-user-actions{flex-wrap:wrap;justify-content:flex-start}.attendance-filters{flex-direction:column;align-items:stretch;gap:11px}.attendance-filters>label{width:100%}.attendance-filter-tabs{overflow-x:auto}.attendance-filter-tabs button{flex:1}.attendance-filters>p{margin:0}.attendance-table-wrap{display:none}.attendance-page .attendance-list-panel{box-shadow:none;background:0 0;border:0;padding:0;overflow:visible}.attendance-page{padding-bottom:110px}.attendance-card-list{flex-direction:column;gap:10px;display:flex}.attendance-record-card{border:1px solid var(--line);background:#fff;border-radius:14px;overflow:hidden}.attendance-record-card>header{border-bottom:1px solid #edf0ee;justify-content:space-between;align-items:flex-start;gap:9px;padding:13px 14px 11px;display:flex}.attendance-card-badges{flex-direction:column;align-items:flex-end;gap:5px;display:flex}.attendance-card-counts{grid-template-columns:repeat(4,1fr);padding:13px 8px;display:grid}.attendance-card-counts>span{border-right:1px solid #edf0ee;flex-direction:column;align-items:center;padding:2px 5px;display:flex}.attendance-card-counts>span:last-child{border-right:0}.attendance-card-counts small{color:var(--faint);font-size:.55rem}.attendance-card-counts strong{font-variant-numeric:tabular-nums;margin-top:3px;font-size:.92rem}.attendance-card-counts .total strong{color:var(--primary-dark);font-size:1.08rem}.attendance-card-context{padding:0 14px 12px}.attendance-card-context strong{font-size:.72rem}.attendance-card-context p{white-space:pre-wrap;margin:3px 0 0;font-size:.68rem}.attendance-record-card>footer{background:#fafbfa;border-top:1px solid #edf0ee;justify-content:flex-end;gap:5px;padding:8px 10px;display:flex}.attendance-record-card>footer .button{width:auto;min-height:44px;font-size:.7rem}.attendance-list-panel>.pagination{border:1px solid var(--line);background:#fff;border-radius:12px;margin-top:11px}.attendance-service-type-card{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;padding-block:14px}.attendance-service-type-mark{border-radius:12px;width:42px;height:42px}.attendance-service-type-actions{grid-column:1/-1;justify-content:flex-start;padding-left:53px}.attendance-service-type-actions .button{min-height:40px}.attendance-system-type-panel{flex-direction:column;align-items:stretch}.attendance-system-type-panel>.attendance-service-type-actions{justify-content:flex-start;padding-left:56px}.attendance-system-type-panel>.attendance-service-type-actions .button{min-height:42px}.account-attendance-settings{flex-direction:column;align-items:stretch}.account-attendance-settings .button{align-self:flex-start}.integration-keys-heading{flex-direction:column}.integration-keys-heading>code{overflow-wrap:anywhere;max-width:100%}.integration-key-form{grid-template-columns:1fr}.integration-key-form .button{width:100%;min-height:44px}.attendance-report-grid{grid-template-columns:1fr}.attendance-report-wide{grid-column:auto}.attendance-series-section-heading{flex-direction:column;align-items:stretch}.attendance-series-metric{width:100%}.attendance-series-metric .segmented button{flex:1;min-width:0;padding-inline:6px;font-size:.69rem}.attendance-series-grid{grid-template-columns:1fr}.attendance-history-heading{flex-direction:column;align-items:stretch}.attendance-data-quality{grid-template-columns:1fr;gap:10px}.attendance-data-quality dl{flex-wrap:wrap}.attendance-latest-note{grid-column:auto}.attendance-report-area-heading{flex-direction:column;align-items:flex-start;gap:4px}.attendance-comparison-toolbar{grid-template-columns:1fr}.attendance-comparison-toolbar .attendance-comparison-controls{grid-column:auto}.attendance-comparison-controls{flex-direction:column;justify-content:flex-start;align-items:stretch}.attendance-comparison-toolbar .attendance-comparison-controls{flex-direction:column}.attendance-comparison-controls>label{width:100%;min-width:0}.attendance-comparison-choice .segmented button{flex:1}.attendance-report-filter-notes{width:100%;max-width:none;margin-left:0}.attendance-year-selector{width:100%}.attendance-year-selector-menu{width:min(100%,280px);max-height:min(360px,100vh - 145px);left:0;right:auto}.attendance-year-selector-menu .simple-check{min-height:44px}.attendance-year-line-grid{grid-template-columns:1fr}.attendance-year-line-card{padding:14px}.attendance-history-tools{flex-direction:column;align-items:flex-start;gap:3px}.attendance-history-point-detail{text-align:left;flex:none;min-height:30px}.attendance-history-legend button{min-height:40px}.attendance-year-line-svg{min-width:700px}.attendance-sunday-line-svg{min-width:1120px}.attendance-series-chart,.attendance-year-line-chart{scroll-behavior:smooth}.attendance-series-value{font-size:12px}.attendance-series-date{font-size:11px}.attendance-chart-scroll-hint{display:block}.attendance-report-filters p{align-items:flex-start}.sermon-page{padding-bottom:110px}.sermon-filters{flex-direction:column;align-items:stretch;gap:10px}.sermon-filters label,.sermon-filters .sermon-search-field{min-width:0}.sermon-filters>p{margin:2px 0 0}.sermon-card>header{align-items:flex-start}.sermon-card-context{flex-direction:column;align-items:flex-end;gap:7px}.sermon-card-body{grid-template-columns:1fr;gap:17px;padding:18px}.sermon-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.sermon-metrics .metric-card:last-child{grid-column:1/-1}.sermon-column-chart{gap:4px}.sermon-column-chart .chart-column{min-width:0}.sermon-horizontal-bars .horizontal-bar{grid-template-columns:90px 1fr 28px}.attendance-report-skeleton{grid-template-columns:1fr}.attendance-report-skeleton .skeleton{height:190px}}@media (width<=520px){.page-header{gap:.7rem}.page-header>.button{padding-inline:.75rem}.field-grid.two{grid-template-columns:1fr}.modal-backdrop{align-items:flex-end;padding:0}.modal{border-radius:20px 20px 0 0;width:100%;max-height:calc(100dvh - 35px)}.modal-header{padding:20px 18px 13px}.modal-body{padding:6px 18px max(22px, env(safe-area-inset-bottom))}.modal-footer{padding:12px 18px max(12px, env(safe-area-inset-bottom))}.modal-footer .form-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.modal-footer .button{min-height:44px}.auth-card{padding:26px 21px}.form-between{flex-direction:column;align-items:flex-start;gap:.65rem}.search-bar .button{padding-inline:.7rem}.people-report-context{flex-direction:column;align-items:stretch;gap:13px}.people-report-context>div:last-child{justify-content:space-between;align-items:stretch}.people-list-controls{flex-direction:column;align-items:stretch;gap:10px}.people-filter-group{align-items:flex-end}.people-filter-group>label{flex:1;min-width:0}.people-list-actions{justify-content:space-between;padding-bottom:0}.person-identity{align-items:flex-start}.large-avatar{border-radius:17px;width:54px;height:54px}.person-hero .header-actions{flex-direction:column-reverse}.person-hero .header-actions .button{width:100%}.metric-grid,.metric-grid.five{grid-template-columns:repeat(2,1fr)}.metric-card{min-height:112px}.family-count-note{width:100%;margin-left:0}.attendance-count-grid{gap:6px}.attendance-count-grid input{padding-inline:.45rem}.attendance-service-types-page .page-header{flex-direction:column;align-items:stretch}.attendance-service-types-page .page-header>.button{width:100%}.attendance-service-type-actions{padding-left:0}.attendance-service-type-actions .button{flex:1}.attendance-system-type-panel>.attendance-service-type-actions{padding-left:0}.attendance-color-options{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-metric-grid{grid-template-columns:repeat(2,1fr)}.attendance-metric-grid .metric-card:first-child{grid-column:1/-1}.attendance-data-quality dl{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.attendance-data-quality dl>div{flex-direction:column;align-items:flex-start;gap:1px;padding-inline:7px}.attendance-latest-note{align-items:flex-start}.attendance-annual-details>summary{min-height:90px;padding:15px}.attendance-annual-details-content{padding:15px}.special-event-list{grid-template-columns:1fr}.attendance-series-card{padding-inline:10px}.attendance-chart-legend{gap:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.strategic-planning-page{width:min(1500px,100%)}.strategic-planning-header p{max-width:690px}.strategic-identity{background:#fff;border:1px solid #d4e2db;border-radius:17px;margin-bottom:18px;overflow:hidden;box-shadow:0 14px 34px #22352f12}.strategic-identity-header{background:linear-gradient(90deg,#4b7866 0%,#648f7d 100%);border-bottom:0;justify-content:space-between;align-items:center;gap:20px;min-height:46px;padding:8px 24px;display:flex;position:relative;overflow:hidden}.strategic-identity-header .eyebrow{display:none}.strategic-identity-header h2{color:#fff;letter-spacing:-.035em;margin:0;font-size:clamp(1.05rem,1.45vw,1.2rem)}.strategic-identity-header p{display:none}.strategic-identity-source{min-height:38px;color:var(--primary);background:#fff;border:1px solid #d8e5df;border-radius:11px;flex:none;align-items:center;gap:8px;padding:8px 11px;display:none}.strategic-identity-source span{color:var(--muted);flex-direction:column;font-size:.58rem;display:flex}.strategic-identity-source strong{color:var(--primary-dark);font-size:.75rem}.strategic-identity-grid{background:#e1eae5;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.strategic-identity-statement{background:#fff;min-height:174px;padding:23px 24px}.strategic-identity-statement.mission{background:#f1f7f4}.strategic-identity-statement.vision{background:#f8fbf9}.strategic-identity-statement>div,.strategic-identity-values-heading{align-items:flex-start;gap:10px;display:flex}.strategic-identity-statement>div>span,.strategic-identity-values-heading>span{color:#78a18e;letter-spacing:.08em;min-width:28px;padding-top:2px;font-size:.62rem;font-weight:810;display:none}.strategic-identity h3{color:var(--primary-dark);margin:0;font-size:1.05rem}.strategic-identity-statement>p{color:#344740;max-width:560px;margin:17px 0 0;font-size:.95rem;font-weight:590;line-height:1.68}.strategic-identity-values{background:#fff;grid-column:1/-1;padding:22px 24px 24px}.strategic-identity-values-heading>div>p{color:var(--muted);margin:3px 0 0;font-size:.85rem}.strategic-values-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:17px;display:grid}.strategic-values-grid>div{background:#fbfdfc;border:1px solid #e0e8e4;border-radius:11px;grid-template-columns:7px minmax(0,1fr);gap:9px;min-height:108px;padding:13px 14px;display:grid}.strategic-values-grid i{background:#70a189;border-radius:50%;width:7px;height:7px;margin-top:3px;box-shadow:0 0 0 4px #e7f1ec}.strategic-values-grid span{flex-direction:column;min-width:0;display:flex}.strategic-values-grid strong{color:#30463e;font-size:.9rem;line-height:1.3}.strategic-values-grid small{color:#63736c;margin-top:5px;font-size:.82rem;line-height:1.48}.strategic-summary{scrollbar-width:thin;align-items:center;gap:8px;min-height:48px;margin-bottom:16px;display:flex;overflow-x:auto}.strategic-summary>span{min-height:36px;color:var(--muted);background:#ffffffdb;border:1px solid #dbe5e0;border-radius:999px;flex:none;align-items:center;gap:5px;padding:7px 11px;font-size:.68rem;display:inline-flex;box-shadow:0 2px 8px #22352f09}.strategic-summary>span strong{color:var(--primary-dark);font-size:.82rem}.strategic-summary>span:last-child{background:0 0;border-color:#0000;margin-left:auto}.strategic-summary .icon{color:var(--primary)}.strategic-workspace{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:16px;width:100%;min-width:0;display:grid}.strategic-workspace-map-only{grid-template-columns:minmax(0,1fr)}.strategic-radial-panel{border-color:#d5e1db;min-width:0;padding:0;overflow:hidden;box-shadow:0 14px 38px #22352f12}.strategic-radial-header{background:linear-gradient(90deg,#4b7866 0%,#648f7d 100%);align-items:center;min-height:46px;padding:8px 24px;display:flex}.strategic-radial-header h2{color:#fff;letter-spacing:-.035em;margin:0;font-size:clamp(1.05rem,1.45vw,1.2rem)}.strategic-radial-toolbar{background:#e4f2eb;border-top:1px solid #cfe2d8;border-bottom:1px solid #c8ded3;justify-content:space-between;align-items:center;gap:13px;min-width:0;min-height:46px;padding:7px 14px;display:flex}.strategic-radial-breadcrumbs{scrollbar-width:thin;align-items:center;gap:4px;min-width:0;display:flex;overflow-x:auto}.strategic-radial-breadcrumbs>span{flex:none;align-items:center;gap:3px;display:inline-flex}.strategic-radial-breadcrumbs>span>.icon{color:#a2b0a9;transform:rotate(-90deg)}.strategic-radial-breadcrumbs button{appearance:none;min-height:29px;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;flex:none;align-items:center;gap:5px;padding:5px 8px;font-size:.62rem;font-weight:690;display:inline-flex}.strategic-radial-breadcrumbs button:hover{color:var(--primary-dark);background:#f1f6f3}.strategic-radial-breadcrumbs button.active{background:var(--primary-soft);color:var(--primary-dark);border-color:#c7d9d0}.strategic-radial-actions{flex:none;gap:6px;display:flex}.strategic-radial-actions .button{white-space:nowrap}.strategic-radial-actions .button .icon{transform:rotate(180deg)}.strategic-radial-actions .button:last-child .icon{transform:none}.strategic-zoom-controls{background:#fff;border:1px solid #ccd9d3;border-radius:9px;grid-template-columns:30px 48px 30px;align-items:center;height:32px;display:inline-grid;overflow:hidden}.strategic-zoom-controls button{appearance:none;height:100%;color:var(--primary-dark);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-size:1rem;font-weight:700;display:grid}.strategic-zoom-controls button:hover:not(:disabled){background:var(--primary-soft)}.strategic-zoom-controls button:disabled{color:#b7c1bc;cursor:default}.strategic-zoom-controls span{height:100%;color:var(--muted);border-left:1px solid #e0e7e3;border-right:1px solid #e0e7e3;place-items:center;font-size:.58rem;font-weight:750;display:grid}.strategic-orbit-scroll{overscroll-behavior-x:contain;overscroll-behavior-y:auto;touch-action:pan-x pan-y;scrollbar-color:#b7c8c0 transparent;background-color:#f8fbf9;background-image:radial-gradient(#d8e5df 1.1px,#0000 1.1px),radial-gradient(circle,#e0efe8db,#0000 32%);background-position:0 0,0 0;background-size:21px 21px,100% 100%;overflow:auto}.strategic-orbit-canvas{aspect-ratio:1000/650;width:100%;min-width:800px;height:auto;margin-inline:auto;display:block}.strategic-full-canvas{aspect-ratio:1400/1090;width:100%;min-width:900px;height:auto;margin-inline:auto;display:block}.strategic-map-zone{fill:#f5faf7b8;stroke:#dce9e2;stroke-dasharray:5 8;stroke-width:1px;vector-effect:non-scaling-stroke}.strategic-map-zone-ministries{fill:#f9fcfa9e}.strategic-full-canvas .strategic-orbit-line{stroke-width:2px}.strategic-full-canvas .strategic-primary-line{stroke:#65977f;stroke-width:2.4px}.strategic-full-canvas .strategic-secondary-line{stroke:#9fc2b1;stroke-width:1.8px}.strategic-orbit-line{--node-color:var(--primary);fill:none;stroke:color-mix(in srgb, var(--node-color) 57%, #b4c8be);stroke-linecap:round;stroke-width:3px;vector-effect:non-scaling-stroke}.strategic-orbit-related-line{fill:none;stroke:#b68143;stroke-dasharray:7 7;stroke-linecap:round;stroke-width:2px;vector-effect:non-scaling-stroke}.strategic-orbit-center-wrap{place-items:center;width:100%;height:100%;display:grid}.strategic-orbit-center{--node-color:var(--primary);--node-soft:var(--primary-soft);appearance:none;border:2px solid var(--node-color);background:linear-gradient(145deg, white 23%, var(--node-soft));width:240px;height:122px;color:var(--ink);text-align:center;cursor:pointer;border-radius:61px;flex-direction:column;justify-content:center;align-items:center;padding:13px 18px;display:flex;overflow:hidden;box-shadow:0 14px 24px #22352f2b}.strategic-orbit-center>span{background:var(--node-color);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.strategic-orbit-center small{color:var(--node-color);letter-spacing:.09em;text-transform:uppercase;margin-top:5px;font-size:9px;font-style:normal;font-weight:800}.strategic-orbit-center strong{text-overflow:ellipsis;white-space:nowrap;max-width:205px;margin-top:2px;font-size:16px;line-height:1.18;overflow:hidden}.strategic-orbit-center em{color:var(--muted);margin-top:3px;font-size:10px;font-style:normal}.strategic-orbit-center[aria-pressed=true]{box-shadow:0 0 0 5px color-mix(in srgb, var(--node-color) 16%, transparent), 0 16px 36px #22352f2b}.strategic-orbit-church{color:#fff;cursor:default;background:linear-gradient(145deg,#193e34,#326c5c);border-color:#245548}.strategic-orbit-church>span{background:#ffffff24;border:1px solid #ffffff3b}.strategic-orbit-church small,.strategic-orbit-church em{color:#cce2d9}.strategic-orbit-node-wrap{isolation:isolate;place-items:center;width:100%;height:100%;display:grid}.strategic-orbit-node{--node-color:var(--primary);--node-soft:var(--primary-soft);appearance:none;border:1.5px solid color-mix(in srgb, var(--node-color) 55%, #cddbd4);width:192px;height:96px;color:var(--ink);text-align:left;cursor:pointer;backface-visibility:hidden;background:#fff;border-radius:48px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;padding:10px 12px;transition:transform .14s,box-shadow .14s;display:grid;position:relative;overflow:hidden;box-shadow:0 7px 18px #22352f1a}.strategic-orbit-node:hover{background:linear-gradient(145deg, white, var(--node-soft));transform:scale(1.035);box-shadow:0 11px 25px #22352f26}.strategic-orbit-node.selected{border-width:2.5px;border-color:var(--node-color);background:linear-gradient(145deg, white 35%, var(--node-soft));box-shadow:0 0 0 5px color-mix(in srgb, var(--node-color) 13%, transparent), 0 10px 25px #22352f24}.strategic-orbit-node-icon{background:var(--node-soft);width:31px;height:31px;color:var(--node-color);border-radius:50%;flex:none;place-items:center;display:grid}.strategic-orbit-node.selected .strategic-orbit-node-icon{background:var(--node-color);color:#fff}.strategic-orbit-node-copy{flex-direction:column;min-width:0;display:flex}.strategic-orbit-node-copy small{color:var(--node-color);letter-spacing:.07em;text-transform:uppercase;font-size:8px;font-weight:800}.strategic-orbit-node-copy strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:1px;font-size:12px;line-height:1.12;display:-webkit-box;overflow:hidden}.strategic-orbit-node-copy em{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8.5px;font-style:normal;overflow:hidden}.strategic-orbit-node-branch{border:1px solid color-mix(in srgb, var(--node-color) 18%, transparent);background:var(--node-soft);height:18px;color:var(--node-color);border-radius:999px;align-items:center;gap:1px;padding:2px 5px;font-size:8px;font-weight:800;display:inline-flex;position:absolute;bottom:5px;right:6px}.strategic-orbit-node-branch .icon{transform:rotate(-90deg)}.strategic-full-node-wrap{isolation:isolate;place-items:center;width:100%;height:100%;display:grid}.strategic-full-node{--node-color:var(--primary);--node-soft:var(--primary-soft);appearance:none;border:1.5px solid color-mix(in srgb, var(--node-color) 58%, #cddbd4);color:var(--ink);text-align:left;cursor:grab;backface-visibility:hidden;touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;border-radius:999px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;padding:7px 10px;transition:transform .14s,box-shadow .14s;display:grid;position:relative;overflow:hidden;box-shadow:0 6px 15px #22352f1a}.strategic-full-node:hover{background:linear-gradient(145deg, white, var(--node-soft));transform:scale(1.045);box-shadow:0 9px 20px #22352f26}.strategic-full-node.dragging,.strategic-full-node.dragging:hover{cursor:grabbing;background:#fff;transition:none;transform:scale(1.02);box-shadow:0 12px 28px #22352f33}.strategic-full-node.selected{border-width:2.5px;border-color:var(--node-color);background:linear-gradient(145deg, white 35%, var(--node-soft));box-shadow:0 0 0 4px color-mix(in srgb, var(--node-color) 13%, transparent), 0 8px 20px #22352f24}.strategic-full-root{width:190px;height:76px;padding-inline:13px}.strategic-full-root-stacked{text-align:center;grid-template-columns:1fr;align-content:center;justify-items:center;gap:2px;padding:7px 25px}.strategic-full-root-stacked .strategic-full-node-icon{width:25px;height:25px}.strategic-full-root-stacked .strategic-full-node-copy{align-items:center}.strategic-full-direct{width:156px;height:72px}.strategic-full-deep{width:150px;height:58px}.strategic-full-node-icon{background:var(--node-soft);width:26px;height:26px;color:var(--node-color);border-radius:50%;flex:none;place-items:center;display:grid}.strategic-full-deep .strategic-full-node-icon{width:23px;height:23px}.strategic-full-node.selected .strategic-full-node-icon{background:var(--node-color);color:#fff}.strategic-full-node-copy{flex-direction:column;min-width:0;display:flex}.strategic-full-node-copy small{color:var(--node-color);letter-spacing:.06em;text-transform:uppercase;font-size:7px;font-weight:800}.strategic-full-node-copy strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:1px;font-size:10.5px;line-height:1.08;display:-webkit-box;overflow:hidden}.strategic-full-root .strategic-full-node-copy strong{font-size:12px}.strategic-full-direct .strategic-full-node-copy strong{-webkit-line-clamp:3;font-size:11px}.strategic-full-deep .strategic-full-node-copy small{font-size:6.5px}.strategic-full-deep .strategic-full-node-copy strong{font-size:10.5px}.strategic-full-node-count{background:var(--node-soft);min-width:16px;height:16px;color:var(--node-color);border-radius:50%;place-items:center;font-size:7px;font-weight:800;display:grid;position:absolute;bottom:4px;right:5px}.strategic-full-node.strategic-full-root{--node-color:#4f8a71;--node-soft:#e8f3ed;border-width:1.5px;border-color:color-mix(in srgb, var(--node-color) 64%, #cddbd4);background:color-mix(in srgb, var(--node-soft) 88%, var(--node-color));box-shadow:0 8px 18px #22352f21}.strategic-full-root:hover,.strategic-full-root.dragging,.strategic-full-root.dragging:hover{background:color-mix(in srgb, var(--node-soft) 80%, var(--node-color));box-shadow:0 11px 23px #22352f2b}.strategic-full-root.selected{border-width:1.5px;border-color:color-mix(in srgb, var(--node-color) 64%, #cddbd4);background:color-mix(in srgb, var(--node-soft) 88%, var(--node-color));box-shadow:0 8px 18px #22352f21}.strategic-full-root .strategic-full-node-icon,.strategic-full-root.selected .strategic-full-node-icon{background:color-mix(in srgb, var(--node-soft) 72%, var(--node-color));color:var(--node-color)}.strategic-full-root .strategic-full-node-copy small{color:var(--node-color)}.strategic-full-root .strategic-full-node-count{border:1px solid color-mix(in srgb, var(--node-color) 18%, transparent);color:var(--node-color);background:#ffffff94}.strategic-full-node.strategic-full-direct{--node-color:#4f8a71;--node-soft:#e8f3ed;border-color:color-mix(in srgb, var(--node-color) 32%, #e2ebe6);background:color-mix(in srgb, var(--node-soft) 58%, white);box-shadow:0 5px 13px #22352f14}.strategic-full-direct:hover,.strategic-full-direct.dragging,.strategic-full-direct.dragging:hover{background:color-mix(in srgb, var(--node-soft) 70%, white)}.strategic-full-direct.selected{background:color-mix(in srgb, var(--node-soft) 66%, white)}.strategic-full-node.strategic-full-leaf,.strategic-full-node.strategic-full-leaf:hover,.strategic-full-node.strategic-full-leaf.selected,.strategic-full-node.strategic-full-leaf.dragging{background:#fff}.strategic-save-layout{position:relative}.strategic-save-layout>span{background:#bf7a27;border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:4px;box-shadow:0 0 0 2px #fff}.strategic-radial-legend{min-height:46px;color:var(--faint);background:#fff;border-top:1px solid #e0e8e4;flex-wrap:wrap;align-items:center;gap:14px;padding:9px 14px;font-size:.57rem;display:flex}.strategic-radial-legend span{align-items:center;gap:5px;display:inline-flex}.strategic-radial-legend i{border-top:2px solid #7da391;width:25px;height:0}.strategic-radial-legend i.dashed{border-top-style:dashed;border-top-color:#b68143}.strategic-radial-legend .icon{color:var(--primary)}.strategic-cycle{border-color:#d5e1db;min-width:0;max-width:100%;margin-top:18px;padding:0;overflow:hidden;box-shadow:0 14px 38px #22352f12}.strategic-cycle-header{background:linear-gradient(90deg,#4b7866 0%,#648f7d 100%);border-bottom:0;justify-content:space-between;align-items:center;gap:20px;min-height:46px;padding:8px 24px;display:flex}.strategic-cycle-header .eyebrow,.strategic-cycle-header p{display:none}.strategic-cycle-header h2{color:#fff;letter-spacing:-.035em;margin:0;font-size:clamp(1.05rem,1.45vw,1.2rem)}.strategic-cycle-count{min-width:78px;color:var(--muted);background:#fff;border:1px solid #d8e5df;border-radius:11px;justify-content:center;align-items:baseline;gap:5px;padding:9px 12px;font-size:.62rem;display:none}.strategic-cycle-count strong{color:var(--primary-dark);font-size:.9rem}.strategic-cycle-hint{color:#3f5f51;background:#e4f2eb;border-top:1px solid #cfe2d8;border-bottom:1px solid #c8ded3;justify-content:flex-start;align-items:center;gap:8px;min-height:46px;margin:0;padding:9px 24px;font-size:.74rem;font-weight:560;display:flex}.strategic-cycle-hint .icon{color:#34755b;flex:none;width:17px;height:17px}.strategic-cycle-hint strong{color:#174b3b;font-weight:800}.strategic-cycle-scroll{touch-action:pan-x pan-y;scrollbar-color:#b7c8c0 transparent;background-color:#f8fbf9;background-image:radial-gradient(#d8e5df 1.1px,#0000 1.1px);background-size:21px 21px;overflow-x:auto}.strategic-cycle-map-surface{min-width:760px;margin-inline:auto;position:relative}.strategic-cycle-canvas{aspect-ratio:800/300;width:100%;height:auto;display:block}.strategic-cycle-shared-lines{fill:none;stroke:#92b5a4;stroke-dasharray:4 5;stroke-linecap:round;stroke-width:1.35px}.strategic-cycle-shared-lines path{vector-effect:non-scaling-stroke}.strategic-cycle-lines{fill:none;stroke:#79a790;stroke-linecap:round;stroke-width:2.2px}.strategic-cycle-lines marker path,#strategic-cycle-arrow path{fill:#79a790;stroke:none}.strategic-cycle-lines path{marker-end:url(#strategic-cycle-arrow);vector-effect:non-scaling-stroke}.strategic-cycle-node-wrap{place-items:center;width:100%;height:100%;display:grid}.strategic-cycle-node{appearance:none;width:160px;height:64px;color:var(--ink);text-align:left;cursor:default;background:#fff;border:1.5px solid #a8c7b8;border-radius:999px;grid-template-columns:29px minmax(0,1fr);align-items:center;gap:8px;padding:8px 14px;transition:border-color .14s,box-shadow .14s,transform .14s;display:grid;position:relative;box-shadow:0 7px 16px #22352f1a}.strategic-cycle-node:hover,.strategic-cycle-node:focus-visible{border-color:#4f8a71;outline:none;transform:scale(1.025);box-shadow:0 0 0 4px #4f8a711f,0 10px 22px #22352f26}.strategic-cycle-node-icon{color:#4f8a71;background:#e8f3ed;border-radius:50%;place-items:center;width:29px;height:29px;display:grid}.strategic-cycle-node strong{color:#30463e;min-width:0;font-size:.75rem;line-height:1.12}.strategic-cycle-node-number{color:#fff;letter-spacing:.03em;background:#4f8a71;border:2px solid #fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:.55rem;font-weight:850;display:grid;position:absolute;top:-6px;right:10px;box-shadow:0 3px 8px #22533f33}.strategic-cycle-shared-node-wrap{place-items:center;width:100%;height:100%;display:grid}.strategic-cycle-shared-node{appearance:none;color:#365b4b;text-align:left;cursor:default;background:#f0f7f3;border:1.3px dashed #70a189;border-radius:999px;justify-content:center;align-items:center;gap:7px;width:112px;height:46px;padding:6px 10px;transition:border-color .14s,box-shadow .14s,transform .14s;display:flex;box-shadow:0 5px 12px #22352f14}.strategic-cycle-shared-node:hover,.strategic-cycle-shared-node:focus-visible{border-color:#34755b;outline:none;transform:scale(1.03);box-shadow:0 0 0 4px #4f8a711f,0 8px 18px #22352f21}.strategic-cycle-shared-node-icon{color:#4f8a71;background:#dfeee7;border-radius:50%;flex:none;place-items:center;width:25px;height:25px;display:grid}.strategic-cycle-shared-node span:last-child{min-width:0;display:grid}.strategic-cycle-shared-node strong{color:#315647;font-size:.68rem;line-height:1.15}.strategic-cycle-stage-details{z-index:4;width:min(300px,38%);min-height:112px;color:var(--ink);pointer-events:none;background:#fffffffa;border:1px solid #b9d0c4;border-radius:15px;padding:12px 14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 16px 34px #22352f2e}.strategic-cycle-stage-details>small{color:#668276;font-size:.58rem;font-weight:750;display:block}.strategic-cycle-stage-details>strong{color:var(--primary-dark);margin-top:2px;font-size:.78rem;display:block}.strategic-cycle-stage-details ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;margin:10px 0 0;padding:0;list-style:none;display:grid}.strategic-cycle-stage-details li{color:#43584f;padding-left:9px;font-size:.62rem;line-height:1.25;position:relative}.strategic-cycle-stage-details li:before{content:"";background:#70a189;border-radius:50%;width:4px;height:4px;position:absolute;top:.42em;left:0}.strategic-color-green{--node-color:#4f8a71;--node-soft:#e8f3ed}.strategic-color-blue{--node-color:#547fa1;--node-soft:#e8f0f6}.strategic-color-amber{--node-color:#b47a32;--node-soft:#f8eedf}.strategic-color-purple{--node-color:#806491;--node-soft:#f0eaf4}.strategic-color-rose{--node-color:#a86377;--node-soft:#f6e9ed}.strategic-color-teal{--node-color:#3d8583;--node-soft:#e4f2f1}.strategic-detail-type{--node-color:var(--primary);--node-soft:var(--primary-soft);background:var(--node-soft);color:var(--node-color);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:4px 7px;font-size:.55rem;font-weight:790;display:inline-flex}.strategic-detail-highlight{border:1px solid color-mix(in srgb, var(--node-color) 14%, transparent);background:var(--node-soft);color:var(--node-color);border-radius:11px;align-items:center;gap:10px;margin:16px 20px 0;padding:11px 12px;display:flex}.strategic-detail-highlight>div{flex-direction:column;display:flex}.strategic-detail-highlight small{color:var(--faint);text-transform:uppercase;font-size:.55rem;font-weight:750}.strategic-detail-highlight strong{color:var(--ink);margin-top:2px;font-size:.72rem}.strategic-description{color:#53635d;white-space:pre-line;margin:0;font-size:.72rem;line-height:1.62}.strategic-facts{border:1px solid var(--line);border-radius:11px;flex-direction:column;gap:10px;margin:17px 20px 0;padding:13px;display:flex}.strategic-facts>div{flex-direction:column;gap:2px;display:flex}.strategic-facts dt{color:var(--faint);letter-spacing:.06em;text-transform:uppercase;font-size:.55rem;font-weight:760}.strategic-facts dd{color:var(--ink);margin:0;font-size:.69rem;line-height:1.42}.strategic-connections>div{flex-direction:column;gap:6px;display:flex}.strategic-connections button{appearance:none;border:1px solid var(--line);width:100%;color:var(--primary);text-align:left;cursor:pointer;background:#fafcfb;border-radius:9px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:9px 10px;display:grid}.strategic-connections button:hover{background:#f2f8f5;border-color:#b9ccc3}.strategic-connections button.secondary-connection{border-style:dashed}.strategic-connections button>span{flex-direction:column;min-width:0;display:flex}.strategic-connections button small{color:var(--faint);font-size:.52rem}.strategic-connections button strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.67rem;overflow:hidden}.strategic-detail-dialog{--node-color:var(--primary);--node-soft:var(--primary-soft);padding-top:4px}.strategic-detail-dialog>.strategic-detail-type{margin-bottom:2px}.strategic-detail-dialog>.strategic-detail-highlight{margin:13px 0 0}.strategic-detail-dialog>section{padding-top:17px}.strategic-detail-dialog>section .eyebrow{margin-bottom:7px}.strategic-detail-dialog>.strategic-facts{margin:16px 0 0}.strategic-detail-dialog-actions{flex-wrap:wrap;width:100%}.strategic-detail-dialog-actions .button:first-child{margin-right:auto}.strategic-map-skeleton{border-radius:16px;height:620px}.strategic-schedule-field,.strategic-related-field{border:1px solid var(--line);border-radius:11px;flex-direction:column;gap:11px;margin:0;padding:13px;display:flex}.strategic-schedule-field legend,.strategic-related-field legend{color:#344740;padding:0 5px;font-size:.79rem;font-weight:680}.strategic-schedule-field label{color:#344740;flex-direction:column;gap:6px;font-size:.72rem;font-weight:680;display:flex}.strategic-schedule-grid{grid-template-columns:1.2fr .8fr 1fr;gap:10px;display:grid}.strategic-related-field>p{margin:-4px 0 0;font-size:.68rem}.strategic-related-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;max-height:220px;padding:3px;display:grid;overflow-y:auto}.strategic-related-options .simple-check{cursor:pointer;border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:6px 8px;display:flex}.strategic-related-options .simple-check:hover{background:var(--surface-soft)}.strategic-related-options .simple-check input{flex:none;width:16px;height:16px}.strategic-related-options .simple-check>span{flex-direction:column;min-width:0;font-size:.68rem;font-weight:680;display:flex}.strategic-related-options .simple-check small{color:var(--faint);font-size:.55rem;font-weight:540}@media (width<=1180px){.strategic-workspace{grid-template-columns:1fr}}@media (width<=800px){.strategic-planning-page{min-width:0;max-width:100%;padding-bottom:110px}.strategic-identity-header{flex-direction:row;align-items:center;min-height:0;padding:14px 22px}.strategic-identity-source{width:100%}.strategic-identity-grid{grid-template-columns:1fr}.strategic-identity-values{grid-column:auto}.strategic-values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.strategic-summary{scrollbar-width:none;width:100%;max-width:100%;margin-right:0}.strategic-summary::-webkit-scrollbar{display:none}.strategic-summary>span:last-child{margin-left:0}.strategic-radial-toolbar{flex-direction:column;align-items:stretch}.strategic-radial-actions{flex-wrap:wrap;width:100%;min-width:0;max-width:100%}.strategic-radial-actions>.button{flex:1}.strategic-cycle-header{flex-direction:row;align-items:center;min-height:0;padding:14px 22px}.strategic-cycle-count{min-width:0}.strategic-cycle-hint{justify-content:flex-start}.strategic-cycle-hint>span{font-size:0}.strategic-cycle-hint>span:after{content:"Toque sobre uma etapa. Arraste o mapa para visualizar completo.";font-size:.74rem;font-weight:700}.strategic-cycle-node{width:144px}.strategic-cycle-shared-node{gap:4px;width:78px;height:42px;padding:4px 6px}.strategic-cycle-shared-node-icon{width:20px;height:20px}.strategic-cycle-shared-node strong{font-size:.62rem}.strategic-cycle-stage-details{width:min(300px,100% - 24px)}.strategic-orbit-canvas{min-width:780px}.strategic-full-canvas{min-width:850px}.strategic-radial-legend{flex-direction:column;align-items:flex-start;gap:5px}}@media (width<=520px){.strategic-planning-header{flex-direction:column;align-items:stretch}.strategic-planning-header>.button{width:100%}.strategic-cycle-header,.strategic-identity-header,.strategic-radial-header{padding:14px 18px}.strategic-identity-statement,.strategic-identity-values{padding:19px 17px}.strategic-identity-statement>p{margin-left:0}.strategic-values-grid,.strategic-schedule-grid,.strategic-related-options{grid-template-columns:1fr}.strategic-detail-dialog-actions .button:first-child{width:100%;margin-right:0}}
