.metric-button { text-align:left; cursor:pointer; font:inherit; color:inherit; }
.metric-button:hover { border-color:var(--gold); transform:translateY(-1px); box-shadow:0 8px 24px rgba(27,49,42,.08); }
.section-special { margin-bottom:14px; }
.previous-items { display:grid; gap:8px; margin-top:14px; }
.previous-item { padding:12px; border:1px solid var(--line); border-radius:9px; background:#f8f5ed; }
.previous-item header { display:flex; justify-content:space-between; gap:12px; }
.previous-item p { margin:6px 0 0; }
.item-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.task-form { grid-template-columns:1.4fr 1fr 135px 1.4fr auto; }
.task-form textarea { margin:0; min-height:44px; }
.task-note { display:block; margin-top:4px; color:var(--muted); }
.metric-input-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.metric-input-grid label,.role-grid label,.segment-form label { margin:0; }
.role-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; align-items:start; }
.service-role-field { display:grid; gap:6px; }
.service-role-field>span { font-weight:700; }
.service-role-control { min-width:0; }
.service-role-control select { margin:0; }
.guest-control { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:center; }
.service-role-field .guest-name { min-width:0; margin:0; border-color:var(--gold); background:#fffaf2; }
.guest-control .text-btn { white-space:nowrap; }
.segment-form { display:grid; grid-template-columns:1fr 1fr 2fr auto; gap:8px; align-items:end; }
.segment-form>input[type="hidden"] { display:none; }
.segment-form-actions,.segment-row-actions { display:flex; align-items:center; gap:10px; }
.segment-list { display:grid; gap:8px; margin-top:14px; }
.segment-row { display:grid; grid-template-columns:1fr 1fr 2fr auto; gap:10px; align-items:center; padding:10px; background:#f5f2eb; border-radius:8px; }
.segment-row-actions { justify-content:flex-end; }
.compact-select { width:auto; min-width:120px; }
.history-tools { display:grid; grid-template-columns:2fr repeat(4,1fr) repeat(2,140px); gap:8px; margin-bottom:14px; }
.staff-form { display:grid; grid-template-columns:1fr 1fr 1.2fr auto; gap:8px; }
.staff-form input { margin:0; }
.staff-editor { display:grid; grid-template-columns:1fr 1fr 1.3fr auto; gap:8px; align-items:center; }
.staff-teams { display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.team-chip { font-size:.72rem; padding:3px 7px; border-radius:15px; background:#e8ede8; color:var(--ink); }
.team-block { padding:12px 0; border-bottom:1px solid var(--line); }
.team-members { display:flex; gap:10px; flex-wrap:wrap; margin-top:8px; }
.team-members label { display:flex; align-items:center; gap:5px; margin:0; font-weight:500; }
.team-members input { width:auto; }
.narrow-modal { width:min(580px,100%); }
.detail-quote { padding:12px; background:#f5f2eb; border-left:3px solid var(--gold); border-radius:6px; }
.history-result-match { color:var(--gold); font-size:.78rem; }
.health-metrics { margin-top:14px; }
.health-filter-panel { margin-bottom:14px; padding:16px 18px; }
.health-filter-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.health-filter-head h3 { margin-bottom:2px; }
.health-filter-head p { margin:0; font-size:.82rem; }
.health-quick-ranges { display:flex; gap:6px; flex-wrap:wrap; }
.health-quick-ranges button { border:1px solid #ded8ca; border-radius:999px; background:#fff; color:#173a33; padding:7px 11px; font:inherit; font-size:.78rem; font-weight:800; }
.health-quick-ranges button:hover,.health-quick-ranges button:focus-visible { border-color:#c8873a; background:#fff8ee; outline:none; }
.health-filters { display:grid; grid-template-columns:minmax(170px,1fr) minmax(150px,220px) minmax(150px,220px); gap:10px; margin-top:12px; }
.health-filters label { margin:0; font-size:.75rem; }
.health-viz-options { display:flex; align-items:center; gap:7px; flex-wrap:wrap; margin:14px 0 0; padding:0; border:0; }
.health-viz-options legend { width:100%; margin-bottom:5px; color:#60706a; font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.health-viz-options label { display:flex; align-items:center; gap:6px; margin:0; padding:6px 10px; border:1px solid #ded8ca; border-radius:999px; background:#fff; font-size:.78rem; }
.health-viz-options input { width:auto; margin:0; accent-color:#173a33; }
.health-bar-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-bottom:14px; }
.health-bar-card { padding:16px 18px; min-height:0; }
.health-bar-title { display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:12px; }
.health-bar-title h3 { margin:0; font-size:1rem; }
.health-bar-title small { color:#6d746f; }
.health-bars { display:grid; gap:7px; max-height:260px; overflow:auto; padding-right:3px; }
.health-bar-row { display:grid; grid-template-columns:minmax(72px,105px) minmax(80px,1fr) 34px; gap:8px; align-items:center; min-height:22px; }
.health-bar-row>span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#60706a; font-size:.72rem; }
.health-bar-row>strong { color:#173a33; font-size:.78rem; text-align:right; }
.health-bar-track { height:8px; overflow:hidden; border-radius:999px; background:#eee9df; }
.health-bar-track i { display:block; height:100%; border-radius:inherit; }
.health-column-card { margin-bottom:14px; padding:18px 20px; }
.health-column-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:14px; }
.health-column-heading h3 { margin:0; font-size:1.05rem; }
.health-column-heading small { color:#6d746f; }
.health-column-legend { display:flex; justify-content:flex-end; gap:12px; flex-wrap:wrap; color:#53635e; font-size:.72rem; font-weight:700; }
.health-column-legend span { display:flex; align-items:center; gap:5px; }
.health-column-legend i { width:9px; height:9px; border-radius:2px; }
.health-column-scroll { overflow-x:auto; padding:4px 0 2px; }
.health-column-chart { display:grid; grid-template-columns:42px minmax(calc(var(--chart-columns) * 92px),1fr); min-width:500px; height:315px; }
.health-y-axis { display:flex; flex-direction:column; justify-content:space-between; height:260px; padding:0 8px 0 0; color:#606964; font-size:.68rem; text-align:right; }
.health-column-stage { display:grid; grid-template-columns:repeat(var(--chart-columns),minmax(78px,1fr)); align-items:stretch; height:260px; border-left:1px solid #aeb4af; border-bottom:1px solid #aeb4af; background:repeating-linear-gradient(to bottom,#c9cec9 0 1px,transparent 1px 25%); }
.health-column-group { display:grid; grid-template-rows:1fr auto; min-width:0; }
.health-column-bars { display:flex; align-items:flex-end; justify-content:center; gap:3px; min-height:0; padding:16px 6px 0; }
.health-column-bars i { position:relative; width:min(22px,28%); min-height:0; border-radius:3px 3px 0 0; box-shadow:inset 0 0 0 1px rgba(23,58,51,.08); }
.health-column-bars i b { position:absolute; left:50%; bottom:calc(100% + 3px); transform:translateX(-50%); color:#42504b; font-size:.62rem; font-style:normal; }
.health-column-group>span { overflow:hidden; padding:8px 3px 0; color:#39433f; font-size:.7rem; line-height:1.15; text-align:center; text-overflow:ellipsis; white-space:nowrap; }
.health-table-panel { padding-top:18px; }
.stats-table-wrap { overflow-x:auto; }
.health-line-card,.health-pie-card,.health-comparison-card { margin-bottom:14px; }
.health-line-card svg { display:block; width:100%; height:190px; overflow:visible; }
.health-axis { stroke:#ded8ca; stroke-width:1; }
.health-line { fill:none; stroke:#c8873a; stroke-width:4; stroke-linecap:round; stroke-linejoin:round; }
.health-line-card circle { fill:#fffdf8; stroke:#c8873a; stroke-width:3; }
.health-line-labels { display:flex; justify-content:space-between; color:#6d746f; font-size:.72rem; }
.health-pie-layout { display:flex; align-items:center; gap:24px; margin-top:12px; }
.health-pie { width:150px; height:150px; flex:0 0 auto; border-radius:50%; box-shadow:inset 0 0 0 18px #fffdf8; }
.health-pie-legend { display:grid; gap:10px; min-width:220px; }
.health-pie-legend div { display:grid; grid-template-columns:12px 1fr auto; gap:8px; align-items:center; }
.health-pie-legend i { width:10px; height:10px; border-radius:50%; }
.comparison-table { display:grid; }
.comparison-head,.comparison-row { display:grid; grid-template-columns:minmax(150px,1.5fr) repeat(3,minmax(70px,1fr)); gap:10px; align-items:center; padding:9px 4px; border-bottom:1px solid #eee9df; text-align:right; }
.comparison-head { color:#6d746f; font-size:.7rem; font-weight:800; text-transform:uppercase; }
.comparison-head span:first-child,.comparison-row strong { text-align:left; }
.comparison-row { font-size:.86rem; }
.comparison-row .positive { color:#34704c; font-weight:800; }
.comparison-row .negative { color:#a33d36; font-weight:800; }

/* Friendly, collapsible Staff & Settings workspace */
.settings-intro { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:18px; background:linear-gradient(135deg,#fff 0%,#f6f1e7 100%); }
.settings-intro h2 { margin:.2rem 0 .35rem; }
.settings-jumps { display:flex; gap:8px; flex-wrap:wrap; }
.settings-jumps button { border:1px solid #d9d1c1; background:#fff; color:#173a33; border-radius:999px; padding:9px 14px; font:inherit; font-weight:700; cursor:pointer; }
.settings-jumps button:hover,.settings-jumps button:focus-visible { border-color:#c8873a; background:#fff8ee; outline:none; }
.settings-accordion { display:grid; gap:14px; }
.settings-disclosure { padding:0; overflow:hidden; scroll-margin-top:24px; }
.settings-disclosure>summary { display:grid; grid-template-columns:44px minmax(0,1fr) auto 24px; align-items:center; gap:14px; padding:20px 22px; cursor:pointer; list-style:none; user-select:none; }
.settings-disclosure>summary::-webkit-details-marker { display:none; }
.settings-disclosure>summary:hover { background:#faf7f1; }
.settings-disclosure>summary:focus-visible { outline:3px solid rgba(200,135,58,.35); outline-offset:-3px; }
.settings-disclosure[open]>summary { background:#faf7f1; border-bottom:1px solid #ebe5d9; }
.settings-summary-icon { display:grid; place-items:center; width:40px; height:40px; border-radius:12px; background:#edf2ed; color:#173a33; font-size:19px; font-weight:800; }
.settings-disclosure summary strong { display:block; color:#173a33; font-size:1.05rem; }
.settings-disclosure summary small { display:block; margin-top:3px; color:#6f746e; font-weight:400; }
.summary-count { white-space:nowrap; background:#edf2ed; color:#39584f; border-radius:999px; padding:6px 10px; font-size:.78rem; font-weight:800; }
.summary-chevron { font-size:1.35rem; transition:transform .18s ease; color:#6f746e; }
.settings-disclosure[open] .summary-chevron { transform:rotate(180deg); }
.settings-content { padding:22px; }
.branding-settings { display:grid; gap:20px; }
.branding-preview { display:flex; align-items:center; gap:12px; width:min(100%,360px); padding:20px; border-radius:14px; background:#173a33; color:#fff; box-shadow:0 8px 22px rgba(23,58,51,.14); }
.branding-preview strong,.branding-preview span { display:block; }
.branding-preview strong { font-size:1.05rem; }
.branding-preview span { margin-top:2px; color:#c2d0cc; font-size:.85rem; }
.branding-form { display:grid; grid-template-columns:minmax(170px,1.15fr) minmax(150px,1fr) minmax(190px,1.1fr) minmax(130px,.7fr) 100px; gap:12px; align-items:end; }
.branding-form label { display:grid; gap:6px; min-width:0; color:#53635e; font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.branding-form input { min-width:0; font-size:.95rem; font-weight:400; letter-spacing:normal; text-transform:none; }
.branding-form label small { color:#7a817d; font-size:.68rem; font-weight:500; letter-spacing:normal; text-transform:none; }
.branding-form input[type="file"] { padding:8px; background:#fff; font-size:.78rem; }
.branding-form input[type="color"] { width:100%; min-height:43px; padding:4px; cursor:pointer; }
.branding-actions { display:flex; align-items:center; gap:12px; grid-column:1/-1; }
.brand-mark.has-image { background-position:center; background-repeat:no-repeat; background-size:cover; color:transparent; }
.settings-help { display:flex; gap:12px; align-items:flex-start; background:#f5f8f5; border-left:3px solid #9bad88; border-radius:8px; padding:12px 14px; margin-bottom:18px; color:#52605b; font-size:.9rem; }
.settings-help strong { color:#173a33; white-space:nowrap; }
.staff-form { align-items:end; }
.staff-form label { display:grid; gap:6px; min-width:0; color:#53635e; font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.staff-form label input { font-size:.95rem; text-transform:none; letter-spacing:normal; font-weight:400; }
.form-message { margin:10px 0 4px; padding:10px 12px; border-radius:8px; font-size:.9rem; font-weight:700; }
.form-message.error { color:#8b2f2f; background:#fff0ee; border:1px solid #f1c7c1; }
.form-message.success { color:#28583f; background:#edf7f0; border:1px solid #c6dfcd; }
.staff-save-note { margin:12px 0 8px; color:#6f746e; font-size:.82rem; }
.staff-edit-row { display:grid; grid-template-columns:minmax(150px,1fr) minmax(130px,1fr) minmax(130px,1fr) minmax(190px,1.25fr) auto; gap:10px; align-items:end; background:#fcfbf8; border:1px solid #ebe5d9; border-radius:12px; padding:12px; }
.staff-edit-row input { margin:0; min-width:0; }
.staff-edit-row label { display:grid; gap:5px; margin:0; color:#6f746e; font-size:.7rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.staff-person { display:flex; align-items:center; gap:10px; min-height:44px; }
.staff-avatar { display:grid; place-items:center; width:38px; height:38px; flex:0 0 auto; border-radius:50%; background:#e6eee8; color:#173a33; font-size:.78rem; font-weight:900; }
.staff-row-actions { display:flex; align-items:center; gap:8px; min-height:44px; }
.row-save-state { min-width:55px; color:#60706a; font-size:.75rem; font-weight:800; text-align:right; }
.row-save-state.saving { color:#9a6a28; }
.row-save-state.saved { color:#34704c; }
.row-save-state.error { color:#a33d36; }
.meeting-clocks { display:grid; justify-items:end; gap:8px; }
.timer-readout { display:grid; gap:1px; text-align:center; }
.timer-readout small { color:#6d746f; font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.timer { transition:background .2s,color .2s,box-shadow .2s; }
.timer.overtime { color:#9f302b; background:#fde9e6; box-shadow:0 0 0 2px rgba(185,93,85,.18); }
.timer.overtime .timer-readout small { color:#9f302b; }
.timer.overtime .icon-btn { color:#9f302b; border-color:#e7b3ad; }
.meeting-elapsed { display:flex; align-items:baseline; gap:7px; padding-right:8px; color:#6d746f; font-size:.72rem; }
.meeting-elapsed strong { color:#173a33; font:700 .92rem "Libre Franklin",sans-serif; }
.agenda-copy { min-width:0; }
.agenda-copy>span { display:block; }
.agenda-copy small { display:block; margin-top:2px; font-size:.66rem; font-weight:700; line-height:1.25; }
.agenda-copy small.planned { color:#89908c; }
.agenda-copy small.active { color:#4c7590; }
.agenda-copy small.saved { color:#3e7756; }
.agenda-copy small.over { color:#a33d36; }
.present-clocks { display:flex; align-items:flex-end; gap:28px; text-align:right; }
.present-clocks small { display:block; color:#adc0ba; font-size:.7rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.presentation #presentTimer.overtime { color:#ff7770; }
.present-clocks strong { font:700 1.25rem "Libre Franklin",sans-serif; color:#fff; }
.presentation { padding:clamp(18px,3vw,46px); overflow:hidden; }
.presentation header,.presentation footer { flex:0 0 auto; }
.presentation header { padding-bottom:18px; }
.presentation main { flex:1; min-height:0; display:block; overflow-y:auto; overscroll-behavior:contain; padding:32px 8px 40px 0; scrollbar-color:#789088 transparent; }
.presentation main h2 { font-size:clamp(2.4rem,5vw,5rem); margin-bottom:10px; }
.presentation main>p:not(.eyebrow) { font-size:clamp(1.1rem,1.7vw,1.6rem); max-width:1100px; }
.presentation .present-highlights { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:30px; }
.presentation .present-card { min-width:0; padding:22px; border-radius:0 0 10px 10px; background:rgba(255,255,255,.07); }
.presentation .present-card-wide { grid-column:1/-1; }
.presentation .present-card h3 { display:flex; justify-content:space-between; gap:12px; margin-bottom:14px; }
.presentation .present-card h3 span { color:#adc0ba; font-size:.8em; }
.presentation .present-card ul { margin:0; padding-left:22px; }
.presentation .present-card li { padding:7px 0; }
.presentation .present-card li small { display:block; color:#adc0ba; margin-top:3px; }
.presentation .present-card li.complete { opacity:.65; }
.present-long-text { font-size:1.1rem; line-height:1.7; }
.present-special>strong { display:block; color:#e2b06c; margin-top:14px; }
.present-special>strong:first-of-type { margin-top:0; }
.present-special ul { margin-bottom:12px!important; }
.present-empty { grid-column:1/-1; padding:28px; border:1px dashed rgba(255,255,255,.25); border-radius:10px; color:#adc0ba; }
.presentation footer { border-top:1px solid rgba(255,255,255,.2); padding-top:18px; gap:20px; }
.present-actions { display:flex; gap:8px; }
.present-following { align-self:center; color:#adc0ba; font-size:.82rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.present-actions .btn:disabled { opacity:.35; cursor:not-allowed; }
.fullscreen-gate { position:absolute; inset:0; z-index:5; display:grid; place-items:center; padding:24px; background:rgba(8,28,24,.92); text-align:center; backdrop-filter:blur(10px); }
.fullscreen-gate>div { width:min(560px,100%); padding:40px; border:1px solid rgba(255,255,255,.18); border-radius:18px; background:#173a33; box-shadow:0 24px 80px rgba(0,0,0,.35); }
.fullscreen-gate h2 { margin-bottom:12px; font-size:clamp(2rem,4vw,3.5rem); }
.fullscreen-gate p:not(.eyebrow) { color:#bfd0cb; font-size:1.1rem; }
.fullscreen-gate .btn { margin-top:12px; padding:15px 24px; font-size:1.05rem; }
.recap-timing { color:#60706a; font-size:.82rem; font-weight:700; }
.team-grid { overflow-x:auto; }
.team-grid-head,.team-grid-row { display:grid; grid-template-columns:minmax(150px,1.4fr) repeat(5,minmax(92px,1fr)); gap:8px; align-items:center; min-width:680px; padding:10px 8px; }
.team-grid-head { color:#6f746e; font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; border-bottom:1px solid #ebe5d9; }
.team-grid-row { border-bottom:1px solid #f0ece3; }
.team-grid-row:last-child { border-bottom:0; }
.team-grid-row label { display:grid; place-items:center; margin:0; }
.team-grid-row input { width:18px; height:18px; margin:0; accent-color:#173a33; }
@media(max-width:760px) {
  .capture-grid,.present-highlights { grid-template-columns:1fr!important; }
  .task-form,.staff-form,.branding-form,.history-tools,.role-grid,.metric-input-grid,.segment-form,.segment-row { grid-template-columns:1fr; }
  .guest-control { grid-template-columns:1fr; }
  .segment-row-actions { justify-content:flex-start; }
  .settings-intro { align-items:flex-start; flex-direction:column; }
  .settings-jumps { width:100%; }
  .settings-jumps button { flex:1; }
  .settings-disclosure>summary { grid-template-columns:40px minmax(0,1fr) 20px; padding:17px 16px; }
  .summary-count { display:none; }
  .settings-content { padding:16px; }
  .settings-help { display:grid; }
  .staff-form button { width:100%; }
  .staff-edit-row { grid-template-columns:1fr; align-items:stretch; }
  .staff-row-actions { justify-content:flex-end; }
  .staff-edit-row .btn,.staff-edit-row .text-btn { width:100%; }
  .meeting-clocks { justify-items:start; margin-top:15px; }
  .present-clocks { gap:14px; }
  .health-filter-head { display:grid; }
  .health-filters,.health-bar-grid { grid-template-columns:1fr; }
  .health-quick-ranges { width:100%; }
  .health-quick-ranges button { flex:1; }
  .health-pie-layout { align-items:flex-start; flex-direction:column; }
  .health-pie { width:125px; height:125px; }
  .comparison-head,.comparison-row { grid-template-columns:minmax(120px,1.4fr) repeat(3,60px); gap:6px; }
  .health-column-heading { display:grid; }
  .health-column-legend { justify-content:flex-start; }
  .health-column-chart { height:280px; min-width:460px; }
  .health-y-axis,.health-column-stage { height:225px; }
}
