:root {
  color-scheme: light;
  --ho-jade: #4F46E5;
  --ho-jade-deep: #3730A3;
  --ho-jade-soft: #EEF2FF;
  --ho-tropical: #2563EB;
  --ho-sunrise: #06B6D4;
  --ho-sunrise-deep: #0891B2;
  --ho-sunrise-soft: #CFFAFE;
  --ho-coral: #F43F5E;
  --ho-coral-soft: #FFE4E6;
  --ho-bg: #F4F6FB;
  --ho-surface: #FFFFFF;
  --ho-surface-raised: #FFFFFF;
  --ho-surface-muted: #F1F5F9;
  --ho-text: #0F172A;
  --ho-text-muted: #64748B;
  --ho-border: #E2E8F0;
  --ho-divider: #EEF2F7;
  --ho-primary: var(--ho-jade);
  --ho-primary-hover: var(--ho-jade-deep);
  --ho-primary-soft: var(--ho-jade-soft);
  --ho-secondary: var(--ho-tropical);
  --ho-success: #059669;
  --ho-success-soft: #ECFDF5;
  --ho-warning: #D97706;
  --ho-warning-soft: var(--ho-sunrise-soft);
  --ho-danger: #E11D48;
  --ho-danger-soft: var(--ho-coral-soft);
  --ho-info: #0284C7;
  --ho-info-soft: #E0F2FE;
  --ho-purple: #7C3AED;
  --ho-purple-soft: #F3E8FF;
  --ho-sidebar: #FFFFFF;
  --ho-sidebar-active: var(--ho-jade-soft);
  --ho-focus: #6366F1;
  --ho-shadow: 0 10px 30px rgba(15, 23, 42, .08);
  --ho-radius: 14px;
  --ho-sidebar-width: 248px;
}

html[data-theme="dark"] {
  color-scheme: dark;
  --ho-jade: #A5B4FC;
  --ho-jade-deep: #C7D2FE;
  --ho-jade-soft: #1E1B4B;
  --ho-tropical: #93C5FD;
  --ho-sunrise: #67E8F9;
  --ho-sunrise-deep: #67E8F9;
  --ho-sunrise-soft: #164E63;
  --ho-coral: #FB7185;
  --ho-coral-soft: #4C0519;
  --ho-bg: #070B14;
  --ho-surface: #111827;
  --ho-surface-raised: #1F2937;
  --ho-surface-muted: #1E293B;
  --ho-text: #F8FAFC;
  --ho-text-muted: #94A3B8;
  --ho-border: #334155;
  --ho-divider: #1E293B;
  --ho-primary: var(--ho-jade);
  --ho-primary-hover: var(--ho-jade-deep);
  --ho-primary-soft: var(--ho-jade-soft);
  --ho-secondary: var(--ho-tropical);
  --ho-success: #34D399;
  --ho-success-soft: #064E3B;
  --ho-warning: var(--ho-sunrise);
  --ho-warning-soft: var(--ho-sunrise-soft);
  --ho-danger: #FDA4AF;
  --ho-danger-soft: var(--ho-coral-soft);
  --ho-info: #7DD3FC;
  --ho-info-soft: #0C4A6E;
  --ho-purple: #C4B5FD;
  --ho-purple-soft: #2E1065;
  --ho-sidebar: #0B1220;
  --ho-sidebar-active: var(--ho-jade-soft);
  --ho-focus: #818CF8;
  --ho-shadow: 0 12px 34px rgba(0, 0, 0, .4);
}


* { box-sizing: border-box; }
html { background: var(--ho-bg); scroll-padding-top: 0; }
body {
  margin: 0;
  background: var(--ho-bg);
  color: var(--ho-text);
  font-family: "Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 15px;
  line-height: 1.5;
}
a { color: var(--ho-primary); }
a:hover { color: var(--ho-primary-hover); }
:focus-visible { outline: 2px solid var(--ho-focus) !important; outline-offset: 2px; }
.text-muted, .muted { color: var(--ho-text-muted) !important; }

.ho-shell { min-height: 100vh; }
.ho-sidebar {
  position: fixed; inset: 0 auto 0 0; width: var(--ho-sidebar-width); z-index: 1100;
  display: flex; flex-direction: column; overflow-y: auto; padding: 18px 14px 14px;
  background: var(--ho-sidebar); border-right: 1px solid var(--ho-border);
  isolation: isolate;
}
.ho-main {
  min-height: 100vh;
  margin-left: var(--ho-sidebar-width);
  position: relative;
  z-index: 1;
}
.ho-topbar {
  min-height: 64px; position: sticky; top: 0; z-index: 40;
  isolation: isolate;
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 10px 24px; background: color-mix(in srgb, var(--ho-surface) 94%, transparent);
  border-bottom: 1px solid var(--ho-border); backdrop-filter: blur(12px);
}
.ho-content { max-width: 1600px; margin: 0 auto; padding: 28px 24px 48px; }
.ho-brand { display: flex; align-items: center; gap: 10px; padding: 2px 8px; text-decoration: none; color: var(--ho-primary); font-size: 20px; font-weight: 800; letter-spacing: -.025em; }
.ho-role { padding: 3px 8px 16px; color: var(--ho-text-muted); font-size: 12px; }

.ho-event-context { margin: 2px 4px 14px; padding: 10px; background: var(--ho-surface-muted); border: 1px solid var(--ho-border); border-radius: 12px; }
.ho-event-context label { display: block; margin-bottom: 5px; color: var(--ho-text-muted); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ho-event-context .form-select { background-color: var(--ho-surface); color: var(--ho-text); border-color: var(--ho-border); }

.ho-nav-group { margin: 2px 0; }
.ho-nav-group summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; min-height: 38px; padding: 8px 10px; color: var(--ho-text-muted); font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; border-radius: 10px; }
.ho-nav-group summary::-webkit-details-marker { display: none; }
.ho-nav-group summary:hover { background: var(--ho-surface-muted); color: var(--ho-text); }
.ho-nav-chevron { transition: transform .16s ease; }
.ho-nav-group[open] .ho-nav-chevron { transform: rotate(90deg); }
.ho-nav-items { display: grid; gap: 2px; padding: 2px 0 7px; }
.ho-nav-link { display: flex; align-items: center; gap: 10px; min-height: 42px; padding: 9px 11px; color: var(--ho-text-muted); border-radius: 10px; text-decoration: none; font-weight: 620; border-left: 3px solid transparent; }
.ho-nav-link i { width: 18px; text-align: center; font-size: 16px; }
.ho-nav-link:hover { background: var(--ho-surface-muted); color: var(--ho-text); }
.ho-nav-link.active { background: var(--ho-sidebar-active); color: var(--ho-primary); border-left-color: var(--ho-primary); }
.ho-sidebar-footer { margin-top: auto; padding-top: 12px; border-top: 1px solid var(--ho-divider); }
.ho-user { display: flex; align-items: center; gap: 9px; padding: 8px; }
.ho-avatar { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--ho-primary-soft); color: var(--ho-primary); font-weight: 800; overflow: hidden; }
.ho-avatar .sc-avatar { width: 100%; height: 100%; border: 0; }

.ho-mobile-menu { display: none; }
.ho-sidebar-backdrop { display: none; }

.ho-page-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 24px; }
.ho-eyebrow { color: var(--ho-text-muted); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ho-page-title { margin: 3px 0 4px; font-size: clamp(26px, 3vw, 32px); line-height: 1.15; font-weight: 780; letter-spacing: -.025em; }
.ho-page-subtitle { color: var(--ho-text-muted); margin: 0; }
.ho-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }

.ho-status { display: inline-flex; align-items: center; gap: 6px; min-height: 27px; padding: 4px 9px; border-radius: 999px; font-size: 12px; font-weight: 750; }
.ho-status-primary { background: var(--ho-primary-soft); color: var(--ho-primary); }
.ho-status-success { background: var(--ho-success-soft); color: var(--ho-success); }
.ho-status-warning { background: var(--ho-warning-soft); color: var(--ho-warning); }
.ho-status-danger { background: var(--ho-danger-soft); color: var(--ho-danger); }
.ho-status-info { background: var(--ho-info-soft); color: var(--ho-info); }
.ho-status-neutral { background: var(--ho-surface-muted); color: var(--ho-text-muted); }

.ho-kpi-grid { display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 14px; margin-bottom: 28px; }
.ho-kpi-grid a.ho-kpi { text-decoration: none; color: inherit; }
.ho-kpi-grid a.ho-kpi:hover { border-color: var(--ho-primary); transform: translateY(-1px); }
.ho-card { background: var(--ho-surface); border: 1px solid var(--ho-border); border-radius: var(--ho-radius); box-shadow: var(--ho-shadow); }
.ho-card-static { box-shadow: none; }
.ho-kpi { min-height: 124px; padding: 18px; }
.ho-kpi-label { color: var(--ho-text-muted); font-size: 11px; font-weight: 800; letter-spacing: .065em; text-transform: uppercase; }
.ho-kpi-value { margin-top: 7px; font-size: 34px; line-height: 1.05; font-weight: 790; letter-spacing: -.03em; }
.ho-kpi-context { margin-top: 8px; color: var(--ho-text-muted); font-size: 12px; }
.ho-kpi-warning .ho-kpi-value { color: var(--ho-warning); }
.ho-kpi-success .ho-kpi-value { color: var(--ho-success); }
.ho-kpi-primary .ho-kpi-value { color: var(--ho-primary); }
.ho-kpi-purple .ho-kpi-value { color: var(--ho-purple); }

.ho-section { margin-top: 28px; }
.ho-section-head { display: flex; align-items: end; justify-content: space-between; gap: 14px; margin-bottom: 12px; }
.ho-section-title { margin: 0; font-size: 18px; line-height: 1.3; font-weight: 760; }
.ho-section-help { margin-top: 2px; color: var(--ho-text-muted); font-size: 13px; }
.ho-service-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }
.ho-service-card { position: relative; min-height: 178px; padding: 18px; text-decoration: none; color: var(--ho-text); overflow: hidden; transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease; }
.ho-service-card::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--service-accent, var(--ho-primary)); }
.ho-service-card:hover { transform: translateY(-2px); border-color: color-mix(in srgb, var(--service-accent, var(--ho-primary)) 45%, var(--ho-border)); color: var(--ho-text); box-shadow: 0 14px 30px rgba(15,23,42,.10); }
.ho-service-title { display: flex; justify-content: space-between; gap: 12px; font-weight: 750; }
.ho-mini-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin-top: 22px; }
.ho-mini-value { font-size: 23px; line-height: 1; font-weight: 780; }
.ho-mini-label { margin-top: 5px; color: var(--ho-text-muted); font-size: 11px; }

.ho-alert-list { display: grid; gap: 9px; }
.ho-alert { display: flex; align-items: flex-start; gap: 11px; padding: 13px 14px; border: 1px solid var(--ho-border); border-radius: 12px; background: var(--ho-surface); }
.ho-alert-warning { border-left: 4px solid var(--ho-warning); }
.ho-alert-danger { border-left: 4px solid var(--ho-danger); }
.ho-alert-success { border-left: 4px solid var(--ho-success); }
.ho-alert-info { border-left: 4px solid var(--ho-info); }

.ho-two-col { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(300px,.75fr); gap: 18px; }
.ho-panel { padding: 20px; }
.ho-empty { padding: 36px 20px; text-align: center; color: var(--ho-text-muted); border: 1px dashed var(--ho-border); border-radius: var(--ho-radius); background: var(--ho-surface); }
.ho-empty i { display:block; font-size:1.8rem; color:var(--ho-primary); margin-bottom:10px }

.ho-report-toolbar { display: flex; flex-wrap: wrap; align-items: end; gap: 12px; padding: 14px; margin-bottom: 20px; background: var(--ho-surface); border: 1px solid var(--ho-border); border-radius: var(--ho-radius); }
.ho-report-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
.ho-report-card { padding: 20px; }
.ho-bar-row { display: grid; grid-template-columns: minmax(115px, .8fr) minmax(100px, 2fr) 56px; align-items: center; gap: 10px; margin: 10px 0; font-size: 13px; }
.ho-bar-track { height: 9px; overflow: hidden; border-radius: 999px; background: var(--ho-surface-muted); }
.ho-bar-fill { height: 100%; border-radius: inherit; background: var(--ho-primary); }
.ho-bar-fill.success { background: var(--ho-success); }
.ho-bar-fill.warning { background: var(--ho-warning); }
.ho-bar-fill.purple { background: var(--ho-purple); }
.ho-report-table { --bs-table-bg: transparent; --bs-table-color: var(--ho-text); --bs-table-border-color: var(--ho-border); }
.ho-report-table thead th { color: var(--ho-text-muted); font-size: 11px; letter-spacing: .055em; text-transform: uppercase; }
.sc-admins { display:flex; flex-wrap:wrap; gap:8px; max-width:420px; }
.sc-admin-pill { display:inline-flex; align-items:center; gap:8px; padding:4px 6px 4px 10px; border:1px solid var(--ho-border); border-radius:999px; background:var(--ho-surface-muted); font-size:13px; }
.sc-admin-pill form { margin:0; }
.sc-wizard-rail { list-style:none; padding:0; margin:0 0 22px; display:grid; gap:8px; }
@media (min-width: 800px) { .sc-wizard-rail { grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); } }
.sc-wizard-rail li { display:flex; gap:8px; align-items:flex-start; padding:10px 12px; border:1px solid var(--ho-border); border-radius:12px; background:var(--ho-surface); font-size:13px; font-weight:650; color:var(--ho-text-muted); }
.sc-wizard-rail li.is-on { border-color:var(--ho-primary); color:var(--ho-text); background:var(--ho-primary-soft); }
.sc-wizard-rail li.is-done { border-color:var(--ho-success); }
.sc-wizard-num { display:grid; place-items:center; width:22px; height:22px; border-radius:999px; background:var(--ho-surface-muted); color:var(--ho-text); font-size:12px; font-weight:800; flex:none; }
.sc-wizard-rail li.is-on .sc-wizard-num { background:var(--ho-primary); color:#fff; }
.sc-wizard-card .form-control, .sc-wizard-card .form-select { width:100%; }
.sc-wizard-nav { display:flex; justify-content:space-between; gap:12px; margin-top:24px; padding-top:16px; border-top:1px solid var(--ho-divider); }
.sc-wizard-grid { display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:10px; }
.sc-wizard-tile { display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; column-gap:10px; row-gap:2px; align-items:start; padding:12px 14px; min-height:0; text-decoration:none; color:var(--ho-text); }
.sc-wizard-tile:hover { border-color:var(--ho-primary); color:var(--ho-text); }
.sc-wizard-tile > i { grid-row:1 / span 2; font-size:1.15rem; color:var(--ho-primary); margin-top:1px; }
.sc-wizard-tile-copy { display:grid; gap:2px; min-width:0; }
.sc-wizard-tile-copy strong { font-size:13px; font-weight:800; line-height:1.25; }
.sc-wizard-tile-copy span { font-size:12px; color:var(--ho-text-muted); line-height:1.3; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.sc-wizard-tile em { grid-column:2; font-style:normal; font-size:11px; font-weight:750; color:var(--ho-text-muted); letter-spacing:.02em; }
@media (max-width: 1199px) { .sc-wizard-grid { grid-template-columns:repeat(3, minmax(0,1fr)); } }
@media (max-width: 799px) { .sc-wizard-grid { grid-template-columns:repeat(2, minmax(0,1fr)); } }
@media (max-width: 480px) { .sc-wizard-grid { grid-template-columns:1fr; } }
.sc-report-tabs { display:flex; flex-wrap:wrap; gap:8px; }
.sc-report-tabs a { padding:7px 12px; border-radius:999px; border:1px solid var(--ho-border); color:var(--ho-text); text-decoration:none; font-size:13px; font-weight:700; background:var(--ho-surface); }
.sc-report-tabs a.is-on, .sc-report-tabs a:hover { border-color:var(--ho-primary); color:var(--ho-primary); background:var(--ho-primary-soft); }
.sc-qb-cols { display:flex; flex-wrap:wrap; gap:10px 16px; margin:12px 0 16px; }
.sc-qb-cols label { display:inline-flex; gap:6px; align-items:center; font-size:13px; font-weight:650; }
.sc-qb-filters { display:grid; gap:8px; }
.sc-qb-row { display:grid; grid-template-columns:minmax(140px,1.2fr) minmax(110px,.8fr) minmax(140px,1.4fr); gap:8px; }
.sc-qb-meta { display:flex; flex-wrap:wrap; gap:12px; }
.sc-qb-meta label { display:grid; gap:4px; font-size:12px; font-weight:750; color:var(--ho-text-muted); }
.sc-qb-meta .form-select, .sc-qb-meta .form-control { min-width:140px; }
@media (max-width:700px){ .sc-qb-row { grid-template-columns:1fr; } }

.ho-finance-hero { padding: 24px; border: 1px solid var(--ho-border); border-radius: var(--ho-radius); background: linear-gradient(135deg, var(--ho-primary-soft), var(--ho-surface)); }
.ho-clinical-next { padding: 22px; border-left: 4px solid var(--ho-secondary); }
.ho-queue-list { display: grid; gap: 7px; }
.ho-queue-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 11px 13px; border: 1px solid var(--ho-border); border-radius: 10px; color: var(--ho-text); text-decoration: none; }
.ho-queue-row:hover { background: var(--ho-surface-muted); color: var(--ho-text); }

.btn-primary { --bs-btn-bg: var(--ho-primary); --bs-btn-border-color: var(--ho-primary); --bs-btn-hover-bg: var(--ho-primary-hover); --bs-btn-hover-border-color: var(--ho-primary-hover); }
.btn-outline-primary { --bs-btn-color: var(--ho-primary); --bs-btn-border-color: var(--ho-primary); --bs-btn-hover-bg: var(--ho-primary); --bs-btn-hover-border-color: var(--ho-primary); }
.form-control, .form-select { background-color: var(--ho-surface); color: var(--ho-text); border-color: var(--ho-border); }
.form-control:focus, .form-select:focus { background-color: var(--ho-surface); color: var(--ho-text); border-color: var(--ho-primary); box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--ho-primary) 18%, transparent); }
.table { --bs-table-color: var(--ho-text); --bs-table-bg: var(--ho-surface); --bs-table-border-color: var(--ho-border); }
.card, .modal-content, .dropdown-menu { background-color: var(--ho-surface); color: var(--ho-text); border-color: var(--ho-border); }
.bg-white { background-color: var(--ho-surface) !important; }
.bg-light { background-color: var(--ho-surface-muted) !important; }
.border { border-color: var(--ho-border) !important; }

.ho-theme-switcher { display: inline-flex; gap: 3px; padding: 3px; border: 1px solid var(--ho-border); border-radius: 10px; background: var(--ho-surface-muted); }
.ho-theme-button { width: 34px; height: 32px; border: 0; border-radius: 8px; display: grid; place-items: center; background: transparent; color: var(--ho-text-muted); }
.ho-theme-button:hover, .ho-theme-button.active { background: var(--ho-surface); color: var(--ho-primary); box-shadow: 0 1px 4px rgba(15,23,42,.08); }

@media (max-width: 1399px) { .ho-kpi-grid { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 1099px) { .ho-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .ho-two-col { grid-template-columns: 1fr; } }
@media (max-width: 991.98px) {
  .ho-sidebar { transform: translateX(-105%); transition: transform .18s ease; box-shadow: var(--ho-shadow); }
  body.ho-menu-open .ho-sidebar { transform: translateX(0); }
  body.ho-menu-open .ho-sidebar-backdrop { display: block; position: fixed; inset: 0; z-index: 1090; background: rgba(15,23,42,.46); }
  .ho-main { margin-left: 0; }
  .ho-mobile-menu { display: inline-grid; place-items: center; width: 42px; height: 42px; border: 1px solid var(--ho-border); border-radius: 10px; background: var(--ho-surface); color: var(--ho-text); }
  .ho-topbar { padding: 8px 14px; }
  .ho-content { padding: 20px 16px 36px; }
  .ho-top-event-meta { display: none; }
}
@media (max-width: 767px) {
  .ho-page-head { flex-direction: column; }
  .ho-actions { justify-content: flex-start; width: 100%; }
  .ho-kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ho-service-grid, .ho-report-grid { grid-template-columns: 1fr; }
  .ho-kpi { min-height: 108px; padding: 15px; }
  .ho-kpi-value { font-size: 29px; }
  .ho-bar-row { grid-template-columns: 95px minmax(70px,1fr) 45px; }
}
@media (max-width: 480px) { .ho-kpi-grid { grid-template-columns: 1fr; } }

@media (prefers-reduced-motion: no-preference) {
  body, .ho-sidebar, .ho-topbar, .ho-card, .form-control, .form-select { transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease; }
}
@media print {
  .ho-sidebar, .ho-topbar, .no-print { display: none !important; }
  .ho-main { margin-left: 0; }
  .ho-content { max-width: none; padding: 0; }
  body, html { background: #fff !important; color: #000 !important; }
  .ho-card, .ho-report-card { box-shadow: none !important; border: 1px solid #bbb !important; break-inside: avoid; }
}

/* Compatibility utilities for existing station/admin screens while they inherit the new shell. */
.card-soft { border: 1px solid var(--ho-border) !important; border-radius: var(--ho-radius) !important; box-shadow: var(--ho-shadow) !important; background: var(--ho-surface) !important; }
.metric { font-size: 1.55rem; font-weight: 780; }
.label { color: var(--ho-text-muted); font-size: .72rem; font-weight: 800; letter-spacing: .065em; text-transform: uppercase; }
.brand { color: var(--ho-primary); font-weight: 800; letter-spacing: -.02em; }
.section-title { font-size: 1.05rem; font-weight: 760; }
.touch-btn { min-height: 44px; }
.event-chip { background: var(--ho-surface-muted); color: var(--ho-text-muted); border-radius: 999px; padding: .35rem .75rem; font-size: .82rem; }
.history-card { border-left: 4px solid var(--ho-primary-soft) !important; }
.sticky-actions { position: sticky; top: 84px; }
.patient-name { font-size: 1.45rem; font-weight: 800; }
.data-grid dt { color: var(--ho-text-muted); font-size: .75rem; text-transform: uppercase; }
.data-grid dd { font-weight: 600; margin-bottom: 1rem; }
.action-strip { display: flex; flex-wrap: wrap; gap: .5rem; }
.admin-action { border-left: 4px solid var(--ho-primary) !important; }
.table-actions { white-space: nowrap; }
.form-section { border: 1px solid var(--ho-border); border-radius: var(--ho-radius); padding: 1.1rem; background: var(--ho-surface); }
.table-light { --bs-table-bg: var(--ho-surface-muted); --bs-table-color: var(--ho-text); }
.alert-light { --bs-alert-bg: var(--ho-surface-muted); --bs-alert-color: var(--ho-text); --bs-alert-border-color: var(--ho-border); }
@media (max-width: 991.98px) { .sticky-actions { position: static; } }

/* Stage 2.0 Guided Workflow UX */
.ho-nav-setup > summary { color: var(--ho-primary); }
.ho-nav-eventday > summary { color: var(--ho-success); }
.ho-nav-communication > summary { color: var(--ho-purple); }
.ho-nav-admin > summary { color: var(--ho-text-muted); }
.ho-nav-group > summary { font-weight: 800; letter-spacing: .015em; }
.ho-nav-eventday .ho-nav-link.active { border-left-color: var(--ho-success); }
.ho-nav-communication .ho-nav-link.active { border-left-color: var(--ho-purple); }
.ho-required-marker { color: var(--ho-danger); font-weight: 800; margin-left: .18rem; }
.ho-required-note { color: var(--ho-text-muted); font-size: .82rem; margin-bottom: 1rem; }
.ho-flow-note { padding: 14px 16px; border-radius: 12px; background: var(--ho-primary-soft); border: 1px solid color-mix(in srgb, var(--ho-primary) 22%, var(--ho-border)); }
.ho-flow-note strong { color: var(--ho-primary); }
.ho-next-action { border-left: 5px solid var(--ho-warning); background: color-mix(in srgb, var(--ho-warning) 8%, var(--ho-surface)); }
.ho-next-action.ho-next-ready { border-left-color: var(--ho-success); background: color-mix(in srgb, var(--ho-success) 8%, var(--ho-surface)); }
.ho-workflow-footer { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-top:24px; padding-top:18px; border-top:1px solid var(--ho-border); }
.ho-workflow-next { max-width: 520px; color: var(--ho-text-muted); font-size: .86rem; text-align:right; }
.ho-setup-list { display:grid; gap:10px; }
.ho-setup-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 16px; border:1px solid var(--ho-border); border-radius:12px; text-decoration:none; color:var(--ho-text); background:var(--ho-surface); }
.ho-setup-row:hover { color:var(--ho-text); border-color:var(--ho-primary); }
.ho-setup-row .ho-step-state { min-width:94px; text-align:right; font-size:.82rem; font-weight:750; }
.ho-section-tint-setup { border-top: 4px solid var(--ho-primary); }
.ho-section-tint-eventday { border-top: 4px solid var(--ho-success); }
.ho-section-tint-team { border-top: 4px solid var(--ho-purple); }
@media (max-width: 767px) { .ho-workflow-footer { align-items:stretch; flex-direction:column; } .ho-workflow-next { text-align:left; max-width:none; } }

/* Event Administrator choice controls */
.ho-choice-stack { display:grid; gap:10px; }
.ho-choice-option { display:flex; align-items:flex-start; gap:12px; padding:14px 16px; border:1px solid var(--ho-border); border-radius:12px; background:var(--ho-surface); cursor:pointer; transition:border-color .15s ease, box-shadow .15s ease, background-color .15s ease; }
.ho-choice-option:hover { border-color:var(--ho-primary); background:color-mix(in srgb, var(--ho-primary) 4%, var(--ho-surface)); }
.ho-choice-option:has(.form-check-input:checked) { border-color:var(--ho-primary); box-shadow:0 0 0 3px color-mix(in srgb, var(--ho-primary) 12%, transparent); background:color-mix(in srgb, var(--ho-primary) 5%, var(--ho-surface)); }
.ho-choice-option .form-check-input { flex:0 0 auto; width:1.1rem; height:1.1rem; margin:.15rem 0 0; }
.ho-choice-option span { display:grid; gap:3px; }
.ho-choice-option strong { color:var(--ho-text); font-size:.98rem; }
.ho-nav-link span { overflow: hidden; text-overflow: ellipsis; }
form p { display: grid; gap: 0.25rem; margin-bottom: 0.75rem; }



/* Tropical Jade Sunrise accents */
.ho-brand i { color: var(--ho-sunrise); }
.ho-topbar { border-top: 3px solid var(--ho-sunrise); }
.ho-nav-setup > summary { color: var(--ho-jade); }
.ho-nav-eventday > summary { color: var(--ho-tropical); }
.ho-nav-communication > summary { color: var(--ho-coral); }
.ho-nav-eventday .ho-nav-link.active { color: var(--ho-tropical); border-left-color: var(--ho-tropical); background: color-mix(in srgb, var(--ho-tropical) 10%, var(--ho-surface)); }
.ho-nav-communication .ho-nav-link.active { color: var(--ho-coral); border-left-color: var(--ho-coral); background: var(--ho-coral-soft); }
.ho-section-tint-eventday { border-top-color: var(--ho-tropical); }
.ho-section-tint-team { border-top-color: var(--ho-coral); }
.ho-next-action { border-left-color: var(--ho-sunrise); }
.ho-choice-option:has(.form-check-input:checked) { border-color: var(--ho-jade); background: linear-gradient(135deg, var(--ho-jade-soft), color-mix(in srgb, var(--ho-sunrise-soft) 38%, var(--ho-surface))); }
.btn-primary { --bs-btn-color:#fff; --bs-btn-hover-color:#fff; --bs-btn-active-color:#fff; }


/* Self-service account shell + organization branding */
.ho-org-logo{width:30px;height:30px;object-fit:contain;border-radius:7px;background:#fff;padding:2px}
.ho-account-menu{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--ho-border);border-radius:999px;background:var(--ho-surface);color:var(--ho-text);padding:4px 9px 4px 5px;font-weight:650;cursor:pointer;max-width:220px}
.sc-account-name{max-width:9rem}
.ho-security-callout{display:flex;gap:12px;padding:15px;border-radius:12px;background:var(--ho-primary-soft);color:var(--ho-text)}.ho-security-callout>i{font-size:20px;color:var(--ho-primary)}
.ho-brand-preview{overflow:hidden;box-shadow:none}.ho-brand-preview-top{min-height:76px;padding:14px 18px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--ho-border);background:color-mix(in srgb,var(--preview-primary) 7%,var(--ho-surface))}.ho-brand-preview-top img{max-height:46px;max-width:145px;object-fit:contain}.ho-brand-preview-top>div:last-child div{font-size:12px;color:var(--ho-text-muted)}.ho-brand-preview-mark{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:var(--preview-primary);color:#fff}.ho-brand-preview-body{padding:24px}.ho-brand-preview-kicker{color:var(--preview-secondary);font-size:11px;text-transform:uppercase;font-weight:850;letter-spacing:.08em}.ho-brand-preview-body h2{margin:8px 0;font-size:24px}.ho-brand-preview-body p{color:var(--ho-text-muted)}.ho-brand-preview-body button{border:0;border-radius:10px;padding:10px 15px;background:var(--preview-primary);color:#fff;font-weight:750}.ho-brand-preview-chip{display:inline-flex;margin-left:8px;padding:8px 11px;border-radius:999px;background:color-mix(in srgb,var(--preview-accent) 25%,transparent);color:color-mix(in srgb,var(--preview-accent) 70%,#000);font-weight:750}

.sc-hero{margin-bottom:22px;padding:0;overflow:hidden;border-radius:20px;background:linear-gradient(135deg,var(--ho-jade-soft),color-mix(in srgb,var(--ho-sunrise-soft) 55%,var(--ho-surface)));border:1px solid var(--ho-border)}
.sc-hero-copy{padding:22px 24px}
.sc-hero .ho-page-title{margin-top:4px}
.sc-hero-photo{display:block;width:100%;max-height:280px;object-fit:cover}
.sc-content-thumb{width:88px;height:88px;object-fit:cover;border-radius:16px;border:1px solid var(--ho-border)}
.sc-content-thumb-sm{width:44px;height:44px;object-fit:cover;border-radius:10px;flex:none}
.sc-post-meta{font-size:13px;color:var(--ho-text-muted)}
.sc-banners{display:grid;gap:10px;margin:0 0 16px}
.sc-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:12px;border:1px solid var(--ho-border)}
.sc-banner strong{display:block;margin-bottom:2px}
.sc-banner p{color:var(--ho-text);font-size:14px}
.sc-banner-scope{flex:0 0 auto;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ho-text-muted)}
.sc-announce{border-left:4px solid var(--ho-sunrise)}
.sc-listing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.sc-listing-date{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ho-primary)}
.sc-icon-menu{position:relative;z-index:1}
.sc-icon-menu[open]{z-index:3}
.sc-icon-menu>summary{list-style:none;cursor:pointer}
.sc-icon-menu>summary::-webkit-details-marker{display:none}
.sc-icon-panel{position:absolute;right:0;top:calc(100% + 6px);z-index:2;min-width:180px;padding:6px;border-radius:12px;border:1px solid var(--ho-border);background:var(--ho-surface);box-shadow:var(--ho-shadow);display:grid;gap:2px}
.sc-icon-panel a,.sc-icon-panel button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;text-align:left;text-decoration:none;color:var(--ho-text);font-weight:650;font-size:13px}
.sc-icon-panel a:hover,.sc-icon-panel a.active,.sc-icon-panel button:hover,.sc-icon-panel button.active{background:var(--ho-primary-soft);color:var(--ho-primary)}
.sc-media{display:block;width:100%;max-height:420px;object-fit:cover;background:#0f172a;pointer-events:none}
.sc-media-open{display:block;width:100%;padding:0;border:0;background:#0f172a;cursor:pointer;position:relative}
.sc-media-play{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:3rem;text-shadow:0 2px 16px rgba(0,0,0,.45);pointer-events:none}
.sc-reel{position:fixed;inset:0;z-index:2200;background:#000;display:flex;align-items:center;justify-content:center}
.sc-reel[hidden]{display:none !important}
.sc-reel-open{overflow:hidden}
.sc-reel-close{position:absolute;top:max(10px,env(safe-area-inset-top));left:max(10px,env(safe-area-inset-left));z-index:2;width:44px;height:44px;border:0;border-radius:50%;background:rgba(0,0,0,.45);color:#fff;font-size:1.35rem;display:grid;place-items:center;line-height:1}
.sc-reel-close:focus-visible{outline:2px solid #fff;outline-offset:3px}
.sc-reel-photo,.sc-reel-video{width:100%;height:100%;background:#000}
.sc-reel-photo{object-fit:contain}
.sc-reel-video{object-fit:cover}
.sc-tone-indigo{border-left:5px solid #4F46E5;background:linear-gradient(90deg,#EEF2FF,var(--ho-surface))}
.sc-tone-cyan{border-left:5px solid #06B6D4;background:linear-gradient(90deg,#CFFAFE,var(--ho-surface))}
.sc-tone-amber{border-left:5px solid #F59E0B;background:linear-gradient(90deg,#FEF3C7,var(--ho-surface))}
.sc-tone-rose{border-left:5px solid #F43F5E;background:linear-gradient(90deg,#FFE4E6,var(--ho-surface))}
.sc-tone-emerald{border-left:5px solid #10B981;background:linear-gradient(90deg,#D1FAE5,var(--ho-surface))}
.sc-tone-slate{border-left:5px solid #64748B;background:linear-gradient(90deg,#F1F5F9,var(--ho-surface))}
html[data-theme="dark"] .sc-tone-indigo,
html[data-theme="dark"] .sc-tone-cyan,
html[data-theme="dark"] .sc-tone-amber,
html[data-theme="dark"] .sc-tone-rose,
html[data-theme="dark"] .sc-tone-emerald,
html[data-theme="dark"] .sc-tone-slate{background:var(--ho-surface)}
.sc-manage{--ho-sidebar-width:280px}
.sc-manage .ho-sidebar{padding-top:16px}
.sc-manage .ho-nav-link{min-height:38px}
.sc-manage .table{background:var(--ho-surface);border-radius:12px;overflow:hidden}
.sc-dock{display:none}
@media (max-width:991.98px){
  .sc-app .ho-content{padding-bottom:88px}
  .sc-dock{position:fixed;left:12px;right:12px;bottom:12px;z-index:1045;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding:8px;border-radius:18px;background:color-mix(in srgb,var(--ho-surface) 92%,transparent);border:1px solid var(--ho-border);box-shadow:var(--ho-shadow);backdrop-filter:blur(16px)}
  .sc-dock a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:12px;text-decoration:none;color:var(--ho-text-muted);font-size:10px;font-weight:750}
  .sc-dock a i{font-size:18px}
  .sc-dock a.active{background:var(--ho-primary-soft);color:var(--ho-primary)}
}
.sc-module-row{display:flex;flex-wrap:wrap;gap:8px}
.sc-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;border:1px solid var(--ho-border);background:var(--ho-surface);color:var(--ho-text);text-decoration:none;font-weight:750;font-size:13px}
.sc-chip:hover{border-color:var(--ho-primary);color:var(--ho-primary)}
.sc-scope{display:flex;flex-wrap:wrap;gap:8px}
.sc-scope a{padding:8px 12px;border-radius:999px;border:1px solid var(--ho-border);text-decoration:none;color:var(--ho-text-muted);font-weight:750;font-size:13px}
.sc-scope a.active{background:var(--ho-primary);color:#fff;border-color:var(--ho-primary)}
.sc-listing{display:block;text-decoration:none;color:var(--ho-text)}
.sc-listing:hover{color:var(--ho-text);border-color:var(--ho-primary)}
.sc-event-card{position:relative}
.sc-event-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.sc-event-card-copy{min-width:0;flex:1;padding-right:8px}
.sc-event-card-title{display:block;font-weight:800;color:var(--ho-text);text-decoration:none !important}
.sc-event-card-title:hover{color:var(--ho-primary);text-decoration:none !important}
.sc-event-card-desc,.sc-event-card-desc a{margin:6px 0 0;color:var(--ho-text-muted);font-size:14px;text-decoration:none !important}
.sc-cal-icon{
  flex:0 0 40px;margin-left:auto;width:40px;height:40px;display:grid;place-items:center;
  border-radius:12px;border:1px solid var(--ho-border);color:var(--ho-primary);
  text-decoration:none !important;font-size:1.15rem;background:var(--ho-surface);
}
.sc-cal-icon:hover{color:var(--ho-primary);border-color:var(--ho-primary);text-decoration:none}
.sc-profile-banner{
  position:sticky;top:64px;z-index:30;display:flex;align-items:center;gap:10px;
  padding:12px 24px;background:#F59E0B;color:#1C1917;font-weight:700;
  border-bottom:1px solid color-mix(in srgb, #B45309 40%, transparent);
}
.sc-profile-banner a{color:inherit;text-decoration:underline}
.sc-idle-banner{
  position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:1080;
  display:flex;align-items:center;gap:12px;width:min(520px, calc(100% - 24px));
  padding:14px 16px;border-radius:16px;background:#111827;color:#F8FAFC;
  box-shadow:0 16px 40px rgba(15,23,42,.35);
}
.sc-idle-banner[hidden]{display:none !important}
.sc-idle-banner>i{font-size:1.35rem;color:#FBBF24}
.sc-idle-banner strong{display:block;margin-bottom:2px}
.sc-idle-banner p{margin:0;font-size:14px;font-weight:650;color:rgba(248,250,252,.88)}
.sc-idle-banner [data-idle-count]{font-variant-numeric:tabular-nums;font-weight:800;color:#FBBF24}
.sc-email-table td{vertical-align:middle}
.sc-email-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.sc-filter.sc-people-filter{grid-template-columns:1fr auto}
.sc-people-invite{padding:16px;border:1px solid var(--ho-border);border-radius:16px;background:var(--ho-surface)}
.sc-people-hit{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--ho-divider)}
.sc-people-hit:last-child{border-bottom:0}
.sc-people-hit-meta{flex:1;min-width:0}
.sc-people-hit form{margin:0}
.sc-filter:has(input[type="date"]){grid-template-columns:1fr 180px 160px auto}
.sc-hub-services{display:flex;flex-wrap:wrap;gap:8px}
.sc-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--ho-sunrise);color:#17332F;font-size:11px;font-weight:800;display:inline-grid;place-items:center}
.sc-ig-icon .sc-badge{position:absolute;top:2px;right:0}
.sc-notify-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid var(--ho-border);background:var(--ho-surface);font-weight:650;cursor:pointer}
.sc-notify-chip input{accent-color:var(--ho-primary)}
.sc-follow-list{display:grid;gap:10px}
.sc-follow-row{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--ho-border);border-radius:18px;background:var(--ho-surface);box-shadow:var(--ho-shadow-sm, none)}
.sc-follow-name{display:flex;align-items:center;justify-content:flex-start;gap:12px;text-decoration:none;color:var(--ho-text);min-width:0;flex:1 1 auto}
.sc-follow-name>i{font-size:1.25rem;color:var(--ho-primary);flex:0 0 auto}
.sc-follow-name .sc-story-ring{margin:0;flex:0 0 auto}
.sc-follow-name > span.min-w-0{min-width:0;text-align:left}
.sc-follow-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto;flex:0 0 auto}
.sc-follow-actions form{margin:0}
.sc-follow-action{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:8px 12px;border-radius:12px;border:1px solid var(--ho-border);background:var(--ho-surface-muted, var(--ho-surface));color:var(--ho-text);font-weight:700;font-size:13px;line-height:1;white-space:nowrap}
.sc-follow-action i{font-size:1.15rem}
.sc-follow-action.is-on{background:var(--ho-primary-soft);border-color:transparent;color:var(--ho-primary)}
.sc-follow-action.is-off{color:var(--ho-text-muted)}
.sc-follow-action.is-leave{color:#E11D48;border-color:color-mix(in srgb,#E11D48 22%,var(--ho-border))}
.sc-follow-action:hover{filter:brightness(.98)}
@media (max-width:640px){
  .sc-follow-action span{display:none}
  .sc-follow-action{min-width:42px;padding:8px;justify-content:center}
}
.sc-note h2{font-size:1rem}
.sc-unread{border-left:4px solid var(--ho-primary)}
.sc-note-body{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sc-id{max-width:22rem;text-align:center;margin:0 auto}
.sc-id .qr svg{max-width:180px;height:auto}
.sc-id .ho-kpi-value{font-variant-numeric:tabular-nums;letter-spacing:.12em}
@media (max-width:767px){
  .sc-filter{grid-template-columns:1fr}
  .sc-filter.sc-people-filter{grid-template-columns:1fr auto}
}

.sc-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 16px;font-size:13px;font-weight:650}
.sc-crumbs a{color:var(--ho-text-muted);text-decoration:none}
.sc-crumbs a:hover{color:var(--ho-primary)}
.sc-crumbs-sep{color:var(--ho-text-muted);opacity:.5}
.sc-crumbs-current{color:var(--ho-text)}
.sc-ig-logo{font-weight:800;letter-spacing:-.04em;font-size:1.2rem;color:var(--ho-text);text-decoration:none}
.sc-top-search{flex:1 1 160px;max-width:420px;display:flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid var(--ho-border);border-radius:999px;background:var(--ho-surface-muted)}
.sc-top-search i{color:var(--ho-text-muted);font-size:14px}
.sc-top-search input{border:0;background:transparent;width:100%;min-width:0;outline:none;color:var(--ho-text);font-size:14px;font-weight:550}
.sc-top-search input::placeholder{color:var(--ho-text-muted)}
.sc-top-search:focus-within{border-color:var(--ho-primary);background:var(--ho-surface);box-shadow:0 0 0 .2rem color-mix(in srgb, var(--ho-primary) 18%, transparent)}
@media (max-width:767px){
  .sc-top-search{max-width:none;padding:0 10px}
  .sc-top-search input{font-size:13px}
}
.sc-ig-icon{position:relative;width:40px;height:40px;display:grid;place-items:center;color:var(--ho-text);font-size:1.25rem;text-decoration:none;border-radius:12px}
.sc-ig-icon.active,.ho-account-menu.active{background:var(--ho-primary-soft);color:var(--ho-primary);border-color:var(--ho-primary)}
.sc-feed{max-width:540px;margin:0 auto}
.sc-home-head{margin:0 0 14px}
.sc-home-head .sc-ig-title{margin:0 0 4px}
.sc-stories{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 12px;margin-bottom:8px;scrollbar-width:thin;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.sc-stories::-webkit-scrollbar{height:5px}
.sc-stories::-webkit-scrollbar-thumb{background:var(--ho-border);border-radius:999px}
.sc-hub-row{padding-bottom:14px}
.sc-story{flex:0 0 auto;width:68px;text-align:center;text-decoration:none;color:var(--ho-text);scroll-snap-align:start}
.sc-story-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;margin-top:5px;min-height:2.3em;font-size:10px;font-weight:650;line-height:1.15;word-break:break-word}
.sc-story-ring{display:grid;place-items:center;width:62px;height:62px;margin:0 auto;padding:2px;border-radius:50%;background:linear-gradient(135deg,#06B6D4,#4F46E5,#7C3AED)}
.sc-story-ring-sm{width:40px;height:40px;padding:2px;flex:0 0 auto}
.sc-story-ring-lg{width:92px;height:92px;padding:3px}
.sc-story-ring-add{background:var(--ho-border)}
.sc-avatar{width:100%;height:100%;border-radius:50%;display:grid;place-items:center;background:var(--ho-primary-soft);color:var(--ho-primary);font-size:1.35rem;font-weight:800;border:2px solid var(--ho-bg);overflow:hidden;position:relative}
.sc-avatar-img{width:100%;height:100%;object-fit:cover;display:block}
.sc-avatar-cam{position:absolute;right:4px;bottom:4px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--ho-primary);color:#fff;font-size:.7rem;opacity:1}
.sc-avatar-initials{font-size:.72em;font-weight:800;letter-spacing:.02em;line-height:1;color:var(--ho-primary)}
.sc-avatar-lg .sc-avatar-initials{font-size:.85em}
.sc-photo-form{margin:0}
.sc-photo-upload{cursor:pointer}
.sc-join-photo{display:flex;flex-direction:column;align-items:center;margin:0 auto 16px;width:76px}
.ho-avatar{overflow:hidden}
.ho-avatar .sc-avatar-img{width:100%;height:100%;object-fit:cover}
.sc-avatar-lg{font-size:1.6rem}
.sc-ig-post{background:var(--ho-surface);border:1px solid var(--ho-border);border-radius:16px;margin-bottom:18px;scroll-margin-top:80px}
.sc-ig-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--ho-divider)}
.sc-ig-user{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ho-text);min-width:0}
.sc-ig-sub{display:block;font-size:12px;color:var(--ho-text-muted);font-weight:500}
.sc-ig-body{padding:14px 16px 8px}
.sc-ig-body h2{font-size:1.05rem;font-weight:800;margin:0 0 8px}
.sc-ig-actions{display:flex;align-items:center;gap:10px;padding:4px 10px 14px}
.sc-ig-like-form{display:flex;align-items:center;gap:8px;margin:0}
.sc-ig-like{border:0;background:transparent;color:var(--ho-text);font-size:1.45rem;line-height:1;padding:4px}
.sc-ig-like i{color:inherit}
.sc-ig-like.is-liked,.sc-ig-like.is-liked i{color:#ed4956 !important}
.sc-ig-count{font-weight:750;font-size:13px}
.sc-share-menu .sc-icon-panel{min-width:200px}
.sc-ig-profile{display:flex;gap:18px;align-items:flex-start;margin-bottom:24px}
.sc-ig-profile .sc-photo-form{flex:0 0 auto;width:auto;margin:0}
.sc-ig-profile .sc-story{flex:0 0 auto;width:auto;text-align:left}
.sc-ig-profile .sc-story-ring{margin:0}
.sc-ig-profile > div{min-width:0;flex:1;padding-top:6px}
.sc-avatar-lg .sc-avatar-cam{width:26px;height:26px;right:2px;bottom:2px}
.sc-channel-page{display:flex;flex-direction:column;align-items:stretch;gap:20px;max-width:40rem}
.sc-channel-page .sc-ig-profile{flex-direction:column;align-items:flex-start;gap:16px;margin:0}
.sc-channel-page .sc-ig-profile > div{width:100%}
.sc-channel-page .sc-ig-profile .sc-story-ring{margin:0}
.sc-channel-page .sc-ig-profile .sc-story{width:auto;text-align:left}
.sc-channel-page .sc-hub-services,.sc-channel-page .sc-notify,.sc-channel-page .sc-stories,.sc-channel-page .sc-channel-contact,.sc-channel-page .sc-people-invite{margin-bottom:0}
.sc-channel-contact{display:flex;flex-wrap:wrap;gap:8px}
.sc-channel-page .sc-listing-grid{grid-template-columns:1fr;margin-bottom:0}
.sc-channel-page .sc-explore-grid{margin-bottom:0}
.sc-channel-page .sc-feed{max-width:none;margin:0;width:100%}
.sc-channel-page .ho-empty{margin:0}
.sc-ig-title{font-size:1.4rem;font-weight:800;letter-spacing:-.03em;margin:0 0 6px}
.sc-composer-stage{display:grid;gap:10px;margin:0 0 12px}
.sc-composer-preview{position:relative;margin:0;border-radius:14px;overflow:hidden;background:#0f172a;border:1px solid var(--ho-border)}
.sc-composer-preview img,.sc-composer-preview video{display:block;width:100%;max-height:320px;object-fit:contain;background:#0f172a}
.sc-composer-clear{position:absolute;top:8px;right:8px;width:36px;height:36px;border:0;border-radius:999px;background:rgba(15,23,42,.78);color:#fff;display:grid;place-items:center;cursor:pointer}
.sc-composer-clear:hover{background:#111827}
.sc-ig-tools{display:flex;align-items:center;gap:2px;flex:0 0 auto}
.sc-ig-tools form{margin:0}
.sc-explore-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.sc-explore-tile{display:flex;flex-direction:column;justify-content:flex-start;gap:4px;min-height:0;padding:14px;text-decoration:none;color:var(--ho-text);background:var(--ho-surface);border:1px solid var(--ho-border);border-radius:14px}
.sc-explore-tile strong{font-size:.95rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sc-explore-tile span{font-size:12px;color:var(--ho-text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sc-guest-grid{display:grid;gap:24px;align-items:start}
.sc-join-page{max-width:32rem;margin:0 auto}
.sc-guest-channels{margin-top:8px;margin-bottom:8px}
.sc-join-form .form-control,.sc-join-form .form-select{margin-bottom:0}
.sc-form-section{margin-bottom:22px;padding-bottom:8px;border-bottom:1px solid var(--ho-divider)}
.sc-form-section:last-of-type{border-bottom:0}
.sc-field{margin-bottom:14px}
.sc-join-card{position:sticky;top:84px}
.sc-explore-grid-guest{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sc-setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.sc-setup-actions{grid-column:1/-1}
@media (max-width:991.98px){
  .sc-guest-grid,.sc-setup-grid{grid-template-columns:1fr}
  .sc-join-card{position:static}
}

.sc-builder-list{display:grid;gap:12px}
.sc-builder-q-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}
.sc-builder-key{display:inline-block;margin-right:8px;padding:2px 8px;border-radius:999px;background:var(--ho-primary-soft);color:var(--ho-primary);font-size:12px;font-weight:800}
.sc-builder-q.is-hidden{opacity:.62;background:color-mix(in srgb, var(--ho-surface-muted) 70%, var(--ho-surface))}
.sc-builder-if>summary{cursor:pointer;font-weight:750;list-style:none;display:flex;align-items:center;gap:8px;padding:8px 0}
.sc-builder-if>summary::-webkit-details-marker{display:none}
.sc-builder-if-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.sc-builder-if-grid label{display:grid;gap:6px;font-size:13px;font-weight:700}
.sc-builder-if-table select,.sc-builder-if-table input{min-width:0}
@media (max-width:767px){.sc-builder-if-grid{grid-template-columns:1fr}}
.sc-reg-form{max-width:36rem}
.sc-reg-options{display:grid;gap:10px;margin:12px 0 8px}
.sc-reg-option{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--ho-border);border-radius:14px;cursor:pointer;background:var(--ho-surface)}
.sc-reg-option:has(input:checked){border-color:var(--ho-primary);background:var(--ho-primary-soft)}
.sc-reg-option.is-full{opacity:.55;cursor:not-allowed}
.sc-reg-option input{margin-top:4px}
.sc-reg-who{display:grid;gap:10px;margin:12px 0}
.sc-reg-guest{display:none;gap:8px;margin:0 0 8px;padding:14px;border:1px dashed var(--ho-border);border-radius:14px}
.sc-reg-form:has([name=who][value=other]:checked) .sc-reg-guest,
.sc-reg-guest.is-open{display:grid}
.sc-party-list{display:grid;gap:8px}
.sc-party-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--ho-border);border-radius:14px;background:var(--ho-surface)}
.sc-party-row i{font-size:1.2rem;color:var(--ho-primary)}
.sc-cart-ticket{font-size:1.4rem;color:var(--ho-primary);flex:0 0 auto}
.sc-cart-total{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}

.sc-auth-body{min-height:100vh;margin:0;background:var(--ho-bg)}
.sc-auth{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}
.sc-auth-brand{
  position:relative;overflow:hidden;padding:40px 48px 36px;display:flex;flex-direction:column;justify-content:space-between;gap:32px;color:#F8FAFC;
  background:
    radial-gradient(900px 520px at -8% -10%, color-mix(in srgb, var(--ho-sunrise) 50%, transparent), transparent 58%),
    radial-gradient(700px 480px at 120% 90%, color-mix(in srgb, var(--ho-primary) 42%, transparent), transparent 52%),
    linear-gradient(165deg, #0B1220 0%, #111827 58%, #0F172A 100%);
}
.sc-auth-logo{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:800;font-size:1.15rem;letter-spacing:-.03em;width:fit-content}
.sc-auth-logo:hover{color:#fff}
.sc-auth-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,#fff 14%, transparent);color:var(--ho-sunrise);font-size:1.2rem}
.sc-auth-kicker{margin:0 0 10px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb,#fff 70%, transparent)}
.sc-auth-brand h1{margin:0 0 12px;font-size:clamp(28px,3.4vw,42px);line-height:1.12;font-weight:800;letter-spacing:-.035em;max-width:14ch}
.sc-auth-lead{margin:0;max-width:36ch;color:color-mix(in srgb,#fff 78%, transparent);font-size:1.02rem}
.sc-auth-points{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.sc-auth-points li{display:flex;align-items:center;gap:10px;font-weight:650;color:color-mix(in srgb,#fff 88%, transparent)}
.sc-auth-points i{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,#fff 10%, transparent)}
.sc-auth-main{display:flex;flex-direction:column;padding:20px 28px 36px;background:var(--ho-bg)}
.sc-auth-tools{display:flex;justify-content:flex-end;gap:6px;margin-bottom:12px}
.sc-auth-panel{margin:auto;width:100%;max-width:420px;padding:28px;border:1px solid var(--ho-border);border-radius:22px;background:var(--ho-surface);box-shadow:var(--ho-shadow)}
.sc-auth-title{margin:4px 0 8px;font-size:1.7rem;font-weight:800;letter-spacing:-.03em}
.sc-auth-sub{margin:0 0 22px;color:var(--ho-text-muted)}
.sc-auth-form{display:grid;gap:6px}
.sc-auth-field{margin:8px 0 4px;font-size:13px;font-weight:750;color:var(--ho-text)}
.sc-auth-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:8px}
.sc-auth-link{font-size:13px;font-weight:700;text-decoration:none}
.sc-auth-input{position:relative;display:flex;align-items:center}
.sc-auth-input>i{position:absolute;left:14px;z-index:1;color:var(--ho-text-muted);pointer-events:none;font-size:1.05rem}
.sc-auth-form .sc-auth-input input[type=text],
.sc-auth-form .sc-auth-input input[type=email],
.sc-auth-form .sc-auth-input input[type=password],
.sc-auth-input .form-control{
  padding:10px 44px 10px 44px;min-height:48px;border-radius:12px;
}
.sc-auth-reveal{position:absolute;right:6px;width:36px;height:36px;border:0;border-radius:10px;background:transparent;color:var(--ho-text-muted)}
.sc-auth-reveal:hover{color:var(--ho-text);background:var(--ho-surface-muted)}
.sc-auth-submit{margin-top:16px;min-height:48px;width:100%;border-radius:12px;font-weight:750}
.sc-auth-foot{margin:18px 0 0;text-align:center;color:var(--ho-text-muted);font-size:14px}
.sc-avatar-picker{display:grid;gap:12px}
.sc-avatar-form{margin:0}
.sc-avatar-colors{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.sc-avatar-color{width:28px;height:28px;padding:0;border:2px solid transparent;border-radius:50%;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.sc-avatar-color.is-on{border-color:var(--ho-text);box-shadow:0 0 0 3px var(--ho-primary-soft,rgba(79,70,229,.25))}
.sc-avatar-color-custom{position:relative;overflow:hidden;background:conic-gradient(from 90deg,#ef4444,#eab308,#22c55e,#3b82f6,#a855f7,#ef4444)}
.sc-avatar-color-custom input{position:absolute;inset:-8px;opacity:0;cursor:pointer;width:44px;height:44px}
.sc-avatar-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin:0;max-height:280px;overflow:auto;padding:2px;align-content:start}
.sc-avatar-choice{aspect-ratio:1;padding:0;border:2px solid var(--ho-border);border-radius:50%;overflow:hidden;cursor:pointer;display:grid;place-items:center;color:#fff;font-size:1.05rem;background:var(--avatar-pick-color,#4F46E5)}
.sc-avatar-choice[hidden]{display:none !important}
.sc-avatar-choice i{line-height:1}
.sc-avatar-choice:hover,.sc-avatar-choice.is-on{border-color:#fff;box-shadow:0 0 0 3px var(--ho-primary)}
.sc-avatar-fa{width:100%;height:100%;display:grid;place-items:center;color:#fff;font-size:.92em;line-height:1;border-radius:50%}
.sc-avatar-lg .sc-avatar-fa{font-size:.82em}
.sc-avatar-upload{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 12px;border:1px dashed var(--ho-border);border-radius:14px;background:var(--ho-surface-muted,var(--ho-surface));cursor:pointer;font-weight:700;font-size:13px}
.sc-avatar-upload:hover{border-color:var(--ho-primary);color:var(--ho-primary)}
@media (max-width:640px){.sc-avatar-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
.sc-pw{margin:0}
.sc-pw-input{position:relative;display:flex;align-items:center}
.sc-pw-input .form-control,.sc-auth-form .sc-pw-input input{padding-right:48px}
.sc-pw-meter{display:flex;align-items:center;gap:10px;margin-top:8px}
.sc-pw-track{flex:1;height:6px;border-radius:999px;background:var(--ho-border);overflow:hidden}
.sc-pw-fill{display:block;height:100%;width:0;border-radius:inherit;background:var(--ho-danger);transition:width .2s ease,background .2s ease}
.sc-pw-fill[data-score="1"]{background:#F59E0B}
.sc-pw-fill[data-score="2"]{background:#EAB308}
.sc-pw-fill[data-score="3"]{background:var(--ho-primary)}
.sc-pw-fill[data-score="4"]{background:#059669}
.sc-pw-label{font-size:12px;font-weight:750;min-width:4.6rem;color:var(--ho-text-muted)}
.sc-pw-issues{margin:6px 0 0;padding:0;list-style:none;color:var(--ho-danger);font-size:13px;font-weight:650}
.sc-pw-mismatch{margin:6px 0 0;color:var(--ho-danger);font-size:13px;font-weight:650}
.sc-auth-form p{display:grid;gap:4px;margin:0 0 10px}
.sc-auth-form input[type=text],.sc-auth-form input[type=email],.sc-auth-form input[type=password]{
  min-height:48px;border-radius:12px;border:1px solid var(--ho-border);background:var(--ho-surface);color:var(--ho-text);padding:10px 14px;width:100%;
}
.sc-auth-otp{min-height:56px;text-align:center;letter-spacing:.28em;font-size:1.25rem;font-weight:750;border-radius:12px}
.sc-auth-qr{display:grid;place-items:center;margin:0 0 14px;padding:16px;border-radius:16px;background:var(--ho-surface-muted)}
.sc-auth-qr svg{max-width:200px;height:auto}
.sc-auth-secret{font-size:13px;color:var(--ho-text-muted)}
.sc-auth-secret code{font-size:13px;letter-spacing:.04em}
.sc-auth-body .ho-required-marker{display:none}
@media (max-width:899px){
  .sc-auth{grid-template-columns:1fr}
  .sc-auth-brand{min-height:auto;padding:24px 22px 20px}
  .sc-auth-brand h1{font-size:1.55rem;max-width:none}
  .sc-auth-points{display:none}
  .sc-auth-main{padding:8px 16px 32px}
  .sc-auth-panel{margin:0 auto;box-shadow:none}
}

.sc-learn-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px;flex-wrap:wrap}
.sc-learn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.sc-learn-card{display:flex;flex-direction:column;text-decoration:none;color:var(--ho-text);border:1px solid var(--ho-border);border-radius:18px;overflow:hidden;background:var(--ho-surface)}
.sc-learn-card:hover{border-color:var(--ho-primary);color:var(--ho-text)}
.sc-learn-card img,.sc-learn-cover{width:100%;height:140px;object-fit:cover;background:linear-gradient(135deg,var(--ho-primary-soft),var(--ho-sunrise-soft))}
.sc-learn-cover{display:grid;place-items:center;font-size:2rem;color:var(--ho-primary)}
.sc-learn-card-body{padding:14px;display:grid;gap:6px}
.sc-learn-banner{width:100%;max-height:240px;object-fit:cover;border-radius:18px;margin-bottom:16px}
.sc-learn-curriculum{margin-top:24px}
.sc-learn-player{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px;align-items:start}
.sc-learn-rail{position:sticky;top:84px;display:grid;gap:4px;padding:14px;border:1px solid var(--ho-border);border-radius:16px;background:var(--ho-surface)}
.sc-learn-rail-label{margin:10px 0 4px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ho-text-muted)}
.sc-learn-rail-item{display:flex;gap:8px;align-items:center;padding:8px 10px;border-radius:10px;text-decoration:none;color:var(--ho-text);font-weight:650}
.sc-learn-rail-item.active,.sc-learn-rail-item:hover{background:var(--ho-primary-soft);color:var(--ho-primary)}
.sc-learn-embed{position:relative;padding-top:56.25%;border-radius:16px;overflow:hidden;background:#000}
.sc-learn-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.sc-learn-block{margin:18px 0}
.sc-learn-block img{max-width:100%;border-radius:16px}
.sc-learn-block figcaption{color:var(--ho-text-muted);font-size:13px;margin-top:8px}
.sc-learn-prose{font-size:1.05rem;line-height:1.65}
.sc-learn-q{border:0;margin:0 0 16px;padding:0}
.sc-learn-q legend{font-weight:750;margin-bottom:8px}
.sc-learn-q.is-missed{padding:12px;border-radius:12px;background:color-mix(in srgb,#F43F5E 8%,var(--ho-surface))}
.sc-learn-q-admin{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--ho-divider)}
.sc-learn-review{width:min(480px, calc(100% - 32px));padding:24px;border:0;border-radius:18px;box-shadow:var(--ho-shadow);background:var(--ho-surface);color:var(--ho-text)}
.sc-learn-review::backdrop{background:rgba(15,23,42,.55)}
.sc-learn-review h2{font-size:1.25rem;font-weight:800;margin:0 0 10px}
.sc-learn-review-q{font-weight:750;margin:12px 0 18px}
.sc-xp-card{display:flex;gap:12px;align-items:center;min-width:220px;padding:14px 16px;border-radius:16px;border:1px solid var(--ho-border);background:var(--ho-surface)}
.sc-xp-card i{font-size:1.6rem;color:var(--ho-sunrise)}
.sc-xp-card span,.sc-xp-card small{display:block;color:var(--ho-text-muted);font-size:13px}
.sc-xp-bar{height:8px;border-radius:999px;background:var(--ho-surface-muted);margin:8px 0 4px;overflow:hidden}
.sc-xp-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--ho-primary),var(--ho-sunrise))}
.sc-xp-chip{display:inline-flex;padding:4px 10px;border-radius:999px;background:var(--ho-primary-soft);color:var(--ho-primary);font-size:12px;font-weight:800}
.sc-badge-shelf,.sc-badge-grid{display:flex;flex-wrap:wrap;gap:12px}
.sc-learn-badge,.sc-learn-badge-card{display:grid;place-items:center;gap:6px;min-width:110px;padding:14px;border-radius:16px;border:1px solid var(--ho-border);background:var(--ho-surface);text-align:center}
.sc-learn-badge i,.sc-learn-badge-card i{font-size:1.8rem;color:#F59E0B}
.sc-learn-section{padding:12px 0;border-bottom:1px solid var(--ho-divider)}
.sc-learn-block-admin{display:grid;gap:8px;padding:12px 0;border-bottom:1px solid var(--ho-divider)}
.sc-learn-thumb{max-width:160px;border-radius:10px}
@media (max-width:899px){
  .sc-learn-player{grid-template-columns:1fr}
  .sc-learn-rail{position:static}
}
.sc-tour-root{position:fixed;inset:0;z-index:1080;pointer-events:none}
.sc-tour-spot{position:absolute;border-radius:16px;box-shadow:0 0 0 9999px rgba(15,23,42,.55);outline:3px solid var(--ho-sunrise);pointer-events:none}
.sc-tour-card{position:absolute;left:50%;top:24px;transform:translateX(-50%);width:min(360px,calc(100vw - 24px));padding:18px;border-radius:18px;background:var(--ho-surface);color:var(--ho-text);box-shadow:var(--ho-shadow);pointer-events:auto}
.sc-tour-card h2{font-size:1.15rem;font-weight:800;margin:0 0 8px}
.sc-tour-meta{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ho-text-muted);margin-bottom:8px}
.sc-tour-actions{display:flex;gap:8px;justify-content:flex-end;align-items:center;margin-top:14px}
.sc-tour-target{position:relative;z-index:1081}

.sc-user-edit{display:grid;gap:16px;max-width:760px}
.sc-user-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.sc-user-hero{display:flex;gap:16px;align-items:center}
.sc-user-hero .sc-story-ring{margin:0;flex:none}
.sc-user-form .form-control{width:100%}
.sc-user-form .input-group-text{background:var(--ho-surface-muted);color:var(--ho-text-muted);border-color:var(--ho-border)}
.sc-user-section{margin:22px 0 10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ho-text-muted);font-size:11px}
.sc-user-switches{display:grid;gap:8px}
.sc-user-switch{display:flex;gap:12px;align-items:flex-start;min-height:0;padding:14px 16px;margin:0;border:1px solid var(--ho-border);border-radius:12px;background:var(--ho-surface-muted)}
.sc-user-switch .form-check-input{width:2.4em;height:1.28em;margin:4px 0 0;flex:none;cursor:pointer}
.sc-user-switch .form-check-label{padding-top:0}
.sc-user-switch strong{display:block;font-size:14px;font-weight:750}
.sc-user-switch span{display:block;margin-top:2px;color:var(--ho-text-muted);font-size:13px;font-weight:500}
.sc-user-form-actions{margin-top:22px;padding-top:16px;border-top:1px solid var(--ho-divider)}
.sc-user-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.sc-user-actions .btn{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;text-align:left}
@media (max-width: 599px){
  .sc-user-actions{grid-template-columns:1fr}
  .sc-user-hero{align-items:flex-start}
}

