.rac-wrap{max-width:1200px;margin:24px auto;font-family:Arial,sans-serif}.rac-layout{display:flex;gap:20px;align-items:flex-start}.rac-side{width:220px;flex:0 0 220px;background:#111827;border-radius:10px;padding:14px;position:sticky;top:20px}.rac-side-title{color:#fff;font-weight:bold;margin-bottom:10px}.rac-side a{display:block;color:#d1d5db;text-decoration:none;padding:10px 12px;border-radius:8px;margin:3px 0}.rac-side a.active,.rac-side a:hover{background:#374151;color:#fff}.rac-main{flex:1;min-width:0}.rac-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px;margin:12px 0;box-shadow:0 1px 2px rgba(0,0,0,.04)}.rac-form{display:grid;gap:12px;max-width:560px}.rac-wide-form{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px}.rac-form h3,.rac-form h4,.rac-waiver{grid-column:1/-1}.rac-form label{display:grid;gap:5px;font-weight:600}.rac-form input,.rac-form select,.rac-form textarea,.rac-search input,.rac-search select{width:100%;padding:9px;border:1px solid #d1d5db;border-radius:7px}.rac-form textarea{min-height:80px}.rac-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px}.rac-check input{width:auto}.rac-btn, .rac-wrap button{background:#111827;color:#fff;border:0;border-radius:7px;padding:9px 13px;text-decoration:none;cursor:pointer;display:inline-block}.rac-btn-small{padding:6px 10px;font-size:13px}.rac-danger{background:#991b1b!important}.rac-table-wrap{overflow:auto}.rac-table{width:100%;border-collapse:collapse;background:#fff}.rac-table th,.rac-table td{border:1px solid #e5e7eb;padding:10px;text-align:left;vertical-align:top}.rac-table th{background:#f3f4f6}.rac-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:16px 0}.rac-stats div{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px;text-align:center}.rac-stats strong{display:block;font-size:28px}.rac-notice{padding:12px;border-radius:8px;margin:12px 0}.rac-success{background:#ecfdf5;color:#065f46}.rac-error{background:#fef2f2;color:#991b1b}.rac-search{display:flex;gap:10px;margin:14px 0}.rac-pagination a{display:inline-block;padding:7px 10px;margin:3px;border:1px solid #d1d5db;text-decoration:none;border-radius:6px}.rac-pagination a.active{background:#111827;color:#fff}.rac-inline{display:flex;gap:6px}.rac-waiver{max-height:220px;overflow:auto;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:12px}@media(max-width:800px){.rac-layout{display:block}.rac-side{width:auto;position:static;margin-bottom:15px}.rac-wide-form{grid-template-columns:1fr}.rac-search{display:block}.rac-search>*{margin-bottom:8px}}
.rac-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.rac-stat span{display:block;color:#6b7280;margin-top:4px}

/* Parent Portal v1.3.4 cleanup */
.rac-parent-portal{display:block}.rac-portal-hero{display:flex;justify-content:space-between;gap:16px;align-items:center;background:linear-gradient(135deg,#111827,#374151);color:#fff;border-radius:14px;padding:22px;margin-bottom:14px}.rac-portal-hero h2{margin:4px 0 6px;color:#fff}.rac-portal-hero p{margin:0;color:#e5e7eb}.rac-eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:#cbd5e1}.rac-logout-form{margin:0;flex:0 0 auto}.rac-logout-btn{background:#fff!important;color:#111827!important}.rac-portal-menu{display:flex;flex-wrap:wrap;gap:8px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:10px;margin-bottom:14px}.rac-portal-menu a{padding:9px 12px;border-radius:999px;text-decoration:none;color:#374151;background:#fff;border:1px solid #e5e7eb}.rac-portal-menu a.active,.rac-portal-menu a:hover{background:#111827;color:#fff;border-color:#111827}.rac-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:14px}.rac-dash-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px;text-align:center;box-shadow:0 1px 2px rgba(0,0,0,.04)}.rac-dash-card strong{display:block;font-size:30px;line-height:1;color:#111827}.rac-dash-card span{display:block;color:#6b7280;margin-top:6px}.rac-action-list{display:flex;flex-wrap:wrap;gap:8px}.rac-class-list{display:grid;gap:8px}.rac-mini-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #e5e7eb;border-radius:10px;padding:10px;background:#f9fafb}.rac-mini-row span{color:#4b5563}.rac-progress-block{border-top:1px solid #e5e7eb;padding-top:10px;margin-top:10px}.rac-progress-block:first-child{border-top:0;padding-top:0}.rac-skill-list{columns:2;margin:10px 0 0;padding-left:20px}.rac-skill-list li{break-inside:avoid;margin-bottom:6px}.rac-skill-list small{color:#6b7280;display:block}@media(max-width:700px){.rac-portal-hero{display:block}.rac-logout-form{margin-top:12px}.rac-mini-row{display:block}.rac-skill-list{columns:1}}
.rac-waiver-content{background:#fff;border:1px solid #ddd;padding:18px;margin:16px 0;max-height:520px;overflow:auto}.rac-signature-pad{width:100%;max-width:520px;height:180px;border:2px solid #333;background:#fff;touch-action:none;display:block}.rac-clear-signature{margin:8px 0 12px}.rac-waiver-sign-form{max-width:760px}.rac-waiver-sign-form button[type=submit]{font-size:18px;padding:12px 20px}

.rac-muted{color:#6b7280;margin-top:-4px}.rac-public-class-list{display:grid;gap:8px;margin:14px 0}.rac-class-row{display:grid;grid-template-columns:minmax(190px,1.1fr) minmax(360px,2fr) auto;gap:12px;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;box-shadow:0 1px 2px rgba(0,0,0,.03)}.rac-class-main strong{display:block;font-size:15px}.rac-class-main small{display:block;color:#6b7280;margin-top:2px;line-height:1.25}.rac-class-meta{display:flex;flex-wrap:wrap;gap:7px;align-items:center;color:#374151}.rac-class-meta span{background:#f9fafb;border:1px solid #e5e7eb;border-radius:999px;padding:5px 8px;font-size:13px;line-height:1}.rac-class-meta .rac-spots{font-weight:700;background:#eef2ff}.rac-class-action{text-align:right}.rac-inline-enroll{display:flex;gap:6px;align-items:center;justify-content:flex-end;margin:0}.rac-inline-enroll select{min-width:130px;max-width:170px;padding:7px;border:1px solid #d1d5db;border-radius:7px}.rac-inline-enroll button{white-space:nowrap}@media(max-width:800px){.rac-class-row{grid-template-columns:1fr;gap:8px}.rac-class-action{text-align:left}.rac-inline-enroll{justify-content:flex-start}.rac-class-meta span{font-size:12px}.rac-inline-enroll select{max-width:100%;flex:1}}

.rac-alert{background:#fff7e6;border:1px solid #f1c27d;border-radius:10px;padding:12px;margin:12px 0}.rac-pill{display:inline-block;padding:3px 8px;border-radius:999px;background:#eef2ff;font-size:12px}.rac-attendance-table input{max-width:260px}.rac-action-list{display:flex;gap:10px;flex-wrap:wrap}.rac-filters label{display:inline-block;margin-right:10px}.rac-filters input,.rac-filters select{margin-right:8px;margin-bottom:8px}

/* v1.45 Growth & Progress */
.rac-growth-note { border-left: 4px solid #2271b1; }
.rac-growth-timeline { display: grid; gap: 12px; }
.rac-growth-item { border: 1px solid #e5e7eb; border-radius: 10px; padding: 12px; background: #fff; }
.rac-growth-change { font-size: 15px; margin: 8px 0; }
.rac-growth-change span { color: #6b7280; }
.rac-pill { display: inline-block; padding: 2px 8px; border-radius: 999px; background: #eef2ff; font-size: 12px; text-transform: capitalize; }

/* v1.47 Growth & Progress dashboard bars */
.rac-progress-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:12px 0}.rac-progress-card,.rac-progress-summary{border:1px solid #e5e7eb;border-radius:12px;background:#f9fafb;padding:12px}.rac-progress-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.rac-progress-top span{font-weight:700;color:#111827}.rac-progress-bar{height:12px;background:#e5e7eb;border-radius:999px;overflow:hidden;margin:8px 0}.rac-progress-bar span{display:block;height:100%;background:linear-gradient(90deg,#60a5fa,#22c55e);border-radius:999px}.rac-progress-card p{margin:8px 0 4px}.rac-progress-card small,.rac-progress-summary small{color:#6b7280}.rac-table-wrap{overflow:auto}

/* v1.5.1 navigation + daily plans */
.rac-side-section{color:#9ca3af;font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin:14px 8px 5px;font-weight:700}.rac-soft{background:#f9fafb}.rac-bulk-row td{background:#f8fafc}.rac-bulk-row button{margin-top:6px;font-size:12px;padding:5px 8px}.rac-chip{display:inline-flex;align-items:center;gap:4px;background:#eef2ff;border:1px solid #c7d2fe;border-radius:999px;padding:6px 9px;margin:4px;font-size:13px}.rac-inline-list{display:flex;gap:4px;flex-wrap:wrap;margin:8px 0 12px}.rac-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.rac-filters label{display:grid;gap:4px;font-weight:600}.rac-filters input,.rac-filters select{padding:8px;border:1px solid #d1d5db;border-radius:7px;min-width:160px}

/* v1.52 class detail cleanup */
.rac-class-header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:12px}.rac-class-count{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:12px 16px;text-align:center;min-width:110px}.rac-class-count strong{display:block;font-size:24px}.rac-class-count span{font-size:12px;color:#6b7280}.rac-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 16px}.rac-tabs a{display:inline-block;padding:9px 12px;border:1px solid #d1d5db;border-radius:999px;text-decoration:none;background:#fff}.rac-tabs a.active{background:#111827;color:#fff;border-color:#111827}.rac-action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.rac-action-card{display:block;border:1px solid #e5e7eb;border-radius:12px;background:#fff;padding:14px;text-decoration:none}.rac-action-card strong{display:block;margin-bottom:5px}.rac-action-card span{display:block;color:#6b7280;font-size:13px}.rac-action-card:hover{box-shadow:0 4px 14px rgba(0,0,0,.08)}.rac-compact-list{display:flex;gap:8px;flex-wrap:wrap}.rac-compact-list a{background:#f3f4f6;border-radius:999px;padding:6px 10px;text-decoration:none}.rac-class-summary-grid{margin-bottom:14px}

/* v1.55 Daily Plan skill chips: changes affect today's plan only, not templates */
.rac-skill-chip-list{gap:8px;align-items:flex-start}
.rac-skill-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid #d1d5db;border-radius:999px;padding:7px 10px;background:#f9fafb;cursor:pointer;font-weight:600}
.rac-skill-chip input{width:auto!important;margin:0}
.rac-skill-chip em{font-style:normal;font-size:11px;color:#6b7280;font-weight:400}
.rac-skill-chip:has(input:not(:checked)){opacity:.55;text-decoration:line-through}
@media(max-width:700px){.rac-skill-chip{border-radius:10px;width:100%;justify-content:flex-start}.rac-skill-chip em{display:block;margin-left:auto}}

/* v1.57 operations stability */
.rac-quick-progress-grid{width:100%;overflow-x:auto;margin-top:10px}
.rac-quick-progress-grid .rac-table{min-width:900px}
.rac-quick-progress-grid .rac-table th:first-child,
.rac-quick-progress-grid .rac-table td:first-child{position:sticky;left:0;background:#fff;z-index:1;min-width:180px}
.rac-quick-progress-grid .rac-table th:first-child{background:#f3f4f6;z-index:2}
.rac-publish-panel{margin-top:14px;padding:12px;border:1px solid #e5e7eb;border-radius:10px;background:#f9fafb;display:flex;gap:12px;align-items:end;flex-wrap:wrap}
.rac-publish-panel label{display:grid;gap:4px;font-weight:600;min-width:220px}
.rac-session-status-cancelled{background:#fee2e2!important;color:#991b1b}.rac-session-status-completed,.rac-session-status-locked{background:#e5e7eb!important;color:#374151}
@media(max-width:800px){.rac-quick-progress-grid .rac-table{min-width:720px}.rac-publish-panel{display:block}.rac-publish-panel>*{margin:8px 0}}

/* v1.58 Quick Progress layout hotfix: keep grid full width and publish controls below */
.rac-wide-form > .rac-quick-progress-grid,
.rac-wide-form > .rac-publish-panel,
.rac-wide-form > .rac-inline-list,
.rac-wide-form > h4,
.rac-wide-form > p{
  grid-column:1 / -1 !important;
}
.rac-wide-form > .rac-quick-progress-grid{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
}
.rac-wide-form > .rac-publish-panel{
  width:100% !important;
  box-sizing:border-box !important;
  margin-top:14px !important;
}
.rac-quick-progress-grid .rac-table{
  min-width:1100px;
}
.rac-quick-progress-grid select,
.rac-quick-progress-grid input{
  min-width:115px;
}
.rac-quick-progress-grid textarea{
  min-width:220px;
  min-height:70px;
}

/* v1.59 Quick Progress real layout fix: move student notes below each student row */
.rac-quick-progress-form{display:block!important;max-width:none!important;width:100%!important}
.rac-quick-progress-form .rac-inline-list,
.rac-quick-progress-form .rac-table-wrap,
.rac-quick-progress-form .rac-publish-panel{width:100%!important;max-width:100%!important;display:block!important}
.rac-quick-progress-form .rac-table{min-width:980px}
.rac-quick-progress-table th,
.rac-quick-progress-table td{white-space:normal}
.rac-progress-note-row td{background:#fafafa;border-top:0!important;padding-top:6px!important}
.rac-progress-note-row td:first-child{font-weight:600;color:#6b7280}
.rac-note-flex{display:grid;grid-template-columns:220px minmax(320px,1fr);gap:10px;align-items:start}
.rac-note-flex textarea{min-height:46px!important;width:100%}
.rac-note-flex select{width:100%}
.rac-publish-panel{display:flex!important;align-items:center!important;justify-content:flex-start!important;margin-top:16px!important}
@media(max-width:900px){.rac-note-flex{grid-template-columns:1fr}.rac-quick-progress-form .rac-table{min-width:760px}}

/* v1.60 Daily Plan persistence + drop-in separation */
.rac-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:10px}
.rac-dropin-details{position:relative}
.rac-dropin-details summary{list-style:none;cursor:pointer;display:inline-block}
.rac-dropin-details summary::-webkit-details-marker{display:none}
.rac-dropin-panel{margin-top:10px;border:1px solid #e5e7eb;background:#fff;border-radius:12px;padding:12px;min-width:min(720px,90vw);box-shadow:0 12px 30px rgba(0,0,0,.08)}
.rac-dropin-card .rac-table{margin-top:8px}
@media(max-width:800px){.rac-section-head{display:block}.rac-dropin-panel{min-width:0;width:100%;box-shadow:none}.rac-dropin-details summary{margin-top:8px}}

/* Zen Gym Club OS v1.6.7 Notification Center */
.rac-menu-badge{display:inline-block;min-width:18px;padding:1px 6px;border-radius:999px;background:#d63638;color:#fff;font-size:12px;line-height:18px;text-align:center;margin-left:6px;font-weight:700;}
.rac-alert-card{border-left:4px solid #d63638;}
.rac-notification-mini-list{margin:10px 0 0 18px;}
.rac-notification-mini-list li{margin-bottom:6px;}
.rac-notification-list{display:grid;gap:12px;}
.rac-notification-item.rac-unread{border-left:4px solid #d63638;background:#fffdf7;}
.rac-notification-head{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.rac-notification-head h3{margin:0;}

/* v1.6.18 Modern UI Foundation / Command Center */
:root{
  --zg-navy:#071832;
  --zg-navy-2:#0b2147;
  --zg-blue:#2563eb;
  --zg-purple:#6d5dfc;
  --zg-green:#22c55e;
  --zg-amber:#f59e0b;
  --zg-red:#f43f5e;
  --zg-cyan:#14b8a6;
  --zg-bg:#f6f8fc;
  --zg-card:#ffffff;
  --zg-line:#e7edf6;
  --zg-text:#101a3d;
  --zg-muted:#63708a;
  --zg-shadow:0 12px 32px rgba(15,23,42,.08);
}
body .rac-wrap{max-width:none;margin:0;font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;color:var(--zg-text)}
.rac-app-shell{min-height:100vh;background:linear-gradient(180deg,#f8fbff,#f3f6fb);gap:0;align-items:stretch}.rac-main{padding:0;min-height:100vh}.rac-content{padding:28px 34px 40px}.rac-side{width:255px;flex:0 0 255px;min-height:100vh;top:0;border-radius:0;background:linear-gradient(180deg,var(--zg-navy),#061126);box-shadow:8px 0 30px rgba(3,7,18,.12);padding:18px 16px;position:sticky}.rac-brand{display:flex;gap:12px;align-items:center;color:#fff;padding:8px 8px 20px;margin-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08)}.rac-brand-mark{width:42px;height:42px;border-radius:16px;background:linear-gradient(135deg,#3b82f6,#2dd4bf);display:grid;place-items:center;font-weight:900;font-size:22px;box-shadow:0 10px 22px rgba(37,99,235,.3)}.rac-brand strong{display:block;line-height:1;font-size:17px;letter-spacing:.04em}.rac-brand span{font-size:12px;letter-spacing:.12em;color:#cfe3ff}.rac-side-title{display:none}.rac-side-section{color:#8fa3c7;font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin:20px 10px 8px;font-weight:800}.rac-side a{display:flex;align-items:center;gap:10px;color:#d9e6ff;text-decoration:none;padding:11px 12px;border-radius:12px;margin:3px 0;transition:.18s ease}.rac-side a:hover{background:rgba(255,255,255,.08);transform:translateX(2px)}.rac-side a.active{background:linear-gradient(135deg,#2563eb,#6d5dfc);color:#fff;box-shadow:0 12px 26px rgba(37,99,235,.3)}.rac-menu-icon{width:22px;text-align:center}.rac-side-logout{margin-top:20px}.rac-side-logout button{width:100%;background:transparent!important;border:1px solid rgba(255,255,255,.12)!important;color:#d9e6ff!important;text-align:left;border-radius:12px;padding:11px 12px!important}.rac-topbar{height:76px;background:rgba(255,255,255,.88);backdrop-filter:blur(10px);border-bottom:1px solid var(--zg-line);display:flex;align-items:center;gap:18px;padding:0 34px;position:sticky;top:0;z-index:5}.rac-mobile-menu{font-size:22px;text-decoration:none;color:var(--zg-text)}.rac-global-search{display:flex;align-items:center;gap:8px;min-width:340px;max-width:620px;flex:1;background:#fff;border:1px solid var(--zg-line);border-radius:14px;padding:13px 16px;text-decoration:none;color:#53617d;box-shadow:0 6px 20px rgba(15,23,42,.04)}.rac-top-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.rac-quick-action{background:linear-gradient(135deg,#1d4ed8,#4f46e5);color:#fff!important;text-decoration:none;border-radius:14px;padding:12px 18px;font-weight:800;box-shadow:0 12px 26px rgba(37,99,235,.25)}.rac-top-icon{width:42px;height:42px;border-radius:14px;background:#fff;border:1px solid var(--zg-line);display:grid;place-items:center;text-decoration:none;box-shadow:0 6px 18px rgba(15,23,42,.05)}.rac-user-chip{display:flex;align-items:center;gap:10px;padding-left:8px}.rac-user-chip strong{display:block;font-size:14px}.rac-user-chip small{display:block;color:var(--zg-muted);font-size:12px}.rac-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#60a5fa,#22c55e);color:#fff;font-weight:900}.rac-avatar-lg{width:68px;height:68px;font-size:28px;margin:0 auto 10px}.rac-hero-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:0 0 22px}.rac-hero-row h1{margin:0 0 8px;font-size:30px;line-height:1.1;color:var(--zg-text)}.rac-hero-row p{margin:0;color:var(--zg-muted)}.rac-date-pill{background:#fff;border:1px solid var(--zg-line);border-radius:14px;padding:12px 16px;box-shadow:0 8px 22px rgba(15,23,42,.04);font-weight:700;white-space:nowrap}.rac-card,.rac-stats div,.rac-dash-card,.rac-action-card{border:1px solid var(--zg-line);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:var(--zg-shadow)}.rac-card{padding:20px;margin:0}.rac-card h3{margin-top:0;color:var(--zg-text)}.rac-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:0 0 20px}.rac-stats div{text-align:left;padding:18px;position:relative;overflow:hidden}.rac-stats div:before{content:"";width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#6d5dfc,#3b82f6);display:block;margin-bottom:10px;box-shadow:0 10px 22px rgba(109,93,252,.22)}.rac-stats div:nth-child(2):before{background:linear-gradient(135deg,#22c55e,#14b8a6)}.rac-stats div:nth-child(3):before{background:linear-gradient(135deg,#f59e0b,#fb7185)}.rac-stats div:nth-child(4):before{background:linear-gradient(135deg,#f43f5e,#fb7185)}.rac-stats div:nth-child(5):before{background:linear-gradient(135deg,#3b82f6,#06b6d4)}.rac-stats div:nth-child(6):before{background:linear-gradient(135deg,#14b8a6,#22c55e)}.rac-stats strong{font-size:28px;color:var(--zg-text)}.rac-stats span{color:var(--zg-muted);font-weight:700}.rac-command-grid{display:grid;grid-template-columns:minmax(380px,1.45fr) minmax(320px,1fr) minmax(280px,.85fr);gap:20px;margin-bottom:20px}.rac-command-grid-bottom{grid-template-columns:minmax(360px,1.25fr) minmax(300px,.9fr) minmax(280px,.75fr)}.rac-panel-large{min-height:330px}.rac-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.rac-section-head h3{margin:0}.rac-section-head a{font-size:13px;text-decoration:none;color:#2563eb;font-weight:800}.rac-schedule-list{display:grid;gap:10px}.rac-schedule-row{display:grid;grid-template-columns:1.4fr 110px auto;align-items:center;gap:14px;padding:12px;border-radius:14px;background:#fbfdff;border:1px solid var(--zg-line)}.rac-schedule-row strong{display:block}.rac-schedule-row small{display:block;color:var(--zg-muted);margin-top:3px}.rac-capacity-mini span{display:block;font-size:13px;font-weight:800;text-align:right;margin-bottom:5px}.rac-capacity-mini div{height:8px;background:#e6ebf4;border-radius:999px;overflow:hidden}.rac-capacity-mini i{display:block;height:100%;background:linear-gradient(90deg,#60a5fa,#22c55e);border-radius:999px}.rac-btn,.rac-wrap button{border-radius:12px;background:#111827;color:#fff;font-weight:800}.rac-btn-small{border-radius:10px}.rac-priority-list{display:grid;gap:10px}.rac-priority-item{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center;text-decoration:none;color:var(--zg-text);padding:12px;border:1px solid var(--zg-line);border-radius:14px;background:#fff}.rac-priority-item small{display:block;color:var(--zg-muted);margin-top:3px}.rac-priority-badge{font-size:12px;text-align:center;border-radius:9px;padding:7px;background:#eff6ff;color:#2563eb;font-weight:800}.rac-priority-item.high{border-left:4px solid var(--zg-red)}.rac-priority-item.high .rac-priority-badge{background:#fff1f2;color:#e11d48}.rac-priority-item.medium{border-left:4px solid var(--zg-amber)}.rac-priority-item.medium .rac-priority-badge{background:#fff7ed;color:#c2410c}.rac-priority-item.low{border-left:4px solid #3b82f6}.rac-risk-strip{display:flex;gap:12px;overflow:auto;padding-bottom:6px}.rac-risk-card{min-width:130px;text-align:center;text-decoration:none;color:var(--zg-text);border:1px solid var(--zg-line);border-radius:16px;background:#fff;padding:14px 10px}.rac-risk-card strong{display:block;font-size:13px}.rac-risk-card small{display:block;color:var(--zg-muted);min-height:34px;margin:5px 0}.rac-risk-card em{font-style:normal;color:#e11d48;background:#fff1f2;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800}.rac-activity-feed{display:grid;gap:12px}.rac-activity-item{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--zg-line);padding-bottom:12px}.rac-activity-item:last-child{border-bottom:0;padding-bottom:0}.rac-activity-item>span{width:42px;height:42px;border-radius:14px;background:#f3f6fb;display:grid;place-items:center}.rac-activity-item strong{display:block}.rac-activity-item small{display:block;color:var(--zg-muted);margin-top:3px}.rac-health{display:grid;grid-template-columns:140px 1fr;gap:14px;align-items:center}.rac-health-ring{width:124px;height:124px;border-radius:50%;background:conic-gradient(var(--zg-green) 0 92%,#e7edf6 92%);display:grid;place-items:center;align-content:center;margin:auto}.rac-health-ring:before{content:"";position:absolute}.rac-health-ring strong{font-size:30px}.rac-health-ring span{font-size:12px;color:#15803d;font-weight:800}.rac-health-lines p{margin:8px 0;display:flex;justify-content:space-between;border-bottom:1px solid var(--zg-line);padding-bottom:7px;color:var(--zg-muted)}.rac-health-lines b{color:var(--zg-text)}.rac-morning-brief{background:linear-gradient(180deg,#fff7e6,#fff);border-color:#f3d18a}.rac-morning-brief h3:before{content:"☀️ ";}.rac-morning-brief ul{margin:0;padding-left:18px;color:#475569}.rac-portal-menu,.rac-tabs{background:transparent;border:0;padding:0}.rac-portal-menu a,.rac-tabs a{border-radius:999px;border:1px solid var(--zg-line);box-shadow:0 4px 16px rgba(15,23,42,.04)}.rac-table th{background:#f8fbff}.rac-table th,.rac-table td{border-color:var(--zg-line)}.rac-table{border-radius:14px;overflow:hidden}.rac-form input,.rac-form select,.rac-form textarea,.rac-search input,.rac-search select{border-radius:12px;border-color:var(--zg-line);padding:11px;background:#fff}.rac-form input:focus,.rac-form select:focus,.rac-form textarea:focus{outline:2px solid rgba(37,99,235,.12);border-color:#93c5fd}.rac-parent-portal{background:var(--zg-bg);padding:20px;border-radius:22px}.rac-portal-hero{background:linear-gradient(135deg,#071832,#123b7a);border-radius:24px;box-shadow:var(--zg-shadow)}.rac-dash-card strong{font-size:32px}.rac-action-card{transition:.18s ease}.rac-action-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(15,23,42,.1)}
@media(max-width:1180px){.rac-command-grid,.rac-command-grid-bottom{grid-template-columns:1fr}.rac-side{width:225px;flex-basis:225px}.rac-global-search{min-width:220px}}
@media(max-width:860px){.rac-app-shell{display:block}.rac-side{position:relative;width:auto;min-height:auto}.rac-topbar{position:relative;height:auto;flex-wrap:wrap;padding:16px}.rac-content{padding:18px}.rac-global-search{min-width:100%;order:2}.rac-command-grid,.rac-command-grid-bottom{grid-template-columns:1fr}.rac-schedule-row{grid-template-columns:1fr}.rac-health{grid-template-columns:1fr}.rac-hero-row{display:block}.rac-date-pill{display:inline-block;margin-top:12px}.rac-top-actions{flex-wrap:wrap;margin-left:0}}

/* v1.6.25 bulk enrollment filter refinement */
.rac-bulk-filter-form{max-width:760px;grid-template-columns:1fr;gap:12px;margin-bottom:14px}
.rac-bulk-filter-form .rac-filter-search{grid-column:1/-1}
.rac-age-filter-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rac-filter-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.rac-filter-note{margin:0;grid-column:1/-1}
@media(max-width:700px){.rac-age-filter-row{grid-template-columns:1fr}}

/* v2.22 Collapsible Navigation */
.rac-side-collapsible{overflow-y:auto;max-height:100vh;scrollbar-width:thin}
.rac-menu-group{margin:8px 0;border-radius:14px;overflow:hidden}
.rac-menu-group summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;color:#8fa3c7;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;padding:11px 10px;border-radius:12px;user-select:none;transition:.18s ease}
.rac-menu-group summary::-webkit-details-marker{display:none}
.rac-menu-group summary:hover{background:rgba(255,255,255,.06);color:#d9e6ff}
.rac-menu-group summary b{font-size:14px;line-height:1;transition:transform .18s ease;color:#cfe3ff}
.rac-menu-group[open] summary b{transform:rotate(180deg)}
.rac-menu-items{padding:2px 0 8px}
.rac-side-collapsible .rac-side-section{display:none}
.rac-side-collapsible a{margin:3px 0 3px 8px}
.rac-menu-group:not([open]){border-bottom:1px solid rgba(255,255,255,.05)}
.rac-menu-group[open]{background:rgba(255,255,255,.025)}
.rac-menu-group[open] summary{color:#d9e6ff}
@media(max-width:860px){.rac-side-collapsible{max-height:none}.rac-menu-group summary{padding:12px 10px}.rac-side-collapsible a{margin-left:0}}

/* v2.41.0 Manager CRM Dashboard */
.rac-manager-crm-dashboard{margin:0 0 22px 0;border-left:4px solid #111827}
.rac-manager-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:16px}
.rac-manager-kpi{display:block;text-decoration:none;background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;padding:14px;color:#111827;transition:.15s ease}
.rac-manager-kpi:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(15,23,42,.08)}
.rac-manager-kpi small{display:block;color:#64748b;font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:.04em}
.rac-manager-kpi strong{display:block;font-size:28px;line-height:1.1;margin:6px 0;color:#0f172a}
.rac-manager-kpi span{display:block;color:#64748b;font-size:12px;line-height:1.35}
.rac-manager-two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}
.rac-manager-two-col h4{margin:0 0 10px 0}
.rac-manager-pipeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.rac-manager-pipeline div{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.rac-manager-pipeline span{font-size:12px;color:#475569;font-weight:700}
.rac-manager-pipeline strong{font-size:20px;color:#111827}
.rac-manager-attention{display:grid;gap:8px}
.rac-manager-attention a{display:block;text-decoration:none;border:1px solid #fde68a;background:#fffbeb;border-radius:12px;padding:10px;color:#111827}
.rac-manager-attention strong{display:block;font-size:13px}
.rac-manager-attention small{display:block;color:#92400e;margin-top:3px}
@media (max-width:1100px){.rac-manager-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.rac-manager-two-col{grid-template-columns:1fr}.rac-manager-pipeline{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){.rac-manager-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rac-manager-pipeline{grid-template-columns:repeat(2,minmax(0,1fr))}.rac-manager-crm-dashboard .rac-section-head{display:block}.rac-manager-crm-dashboard .rac-section-head .button{margin-top:8px;width:100%;text-align:center}}
@media (max-width:430px){.rac-manager-kpi-grid,.rac-manager-pipeline{grid-template-columns:1fr}}


/* v2.43.0 Navigation Refactor */
.rac-side{width:236px;flex-basis:236px}
.rac-menu-group summary{letter-spacing:.09em}
.rac-side-collapsible a{padding:10px 11px;margin-left:4px}
.rac-top-actions .rac-quick-action{white-space:nowrap;margin-left:0}
.rac-quick-action-secondary{background:linear-gradient(135deg,#059669,#22c55e)!important}
.rac-quick-action-light{background:#fff!important;color:#0f172a!important;border:1px solid var(--zg-line);box-shadow:0 6px 18px rgba(15,23,42,.05)}
@media(max-width:1180px){.rac-side{width:220px;flex-basis:220px}.rac-top-actions .rac-quick-action{padding:10px 12px;font-size:12px}}

/* v2.45.0 Role-Based Dashboard Framework */
.rac-role-dashboard { display:block; }
.rac-role-dashboard-head { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; margin:0 0 18px; }
.rac-role-dashboard-head h1 { margin:4px 0 6px; font-size:28px; line-height:1.15; }
.rac-role-dashboard-head p { margin:0; color:#64748b; font-size:14px; }
.rac-dashboard-actions { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 18px; }
.rac-widget-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:16px; align-items:stretch; width:100%; }
.rac-widget-grid > .rac-widget-card,
.rac-widget-grid > .rac-widget-edit-shell { grid-column:span 4; min-width:0; width:100%; }
.rac-widget-grid > .rac-widget-card:nth-child(1),
.rac-widget-grid > .rac-widget-card:nth-child(2),
.rac-widget-grid > .rac-widget-edit-shell:nth-child(1),
.rac-widget-grid > .rac-widget-edit-shell:nth-child(2) { grid-column:span 6; }
.rac-widget-card { background:#fff; border:1px solid #e5e7eb; border-radius:18px; padding:18px; box-shadow:0 10px 25px rgba(15,23,42,.06); min-height:145px; min-width:0; width:100%; box-sizing:border-box; overflow-wrap:break-word; word-break:normal; }
.rac-widget-title { display:flex; align-items:center; gap:10px; margin-bottom:12px; }
.rac-widget-title span { width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center; border-radius:12px; background:#f1f5f9; }
.rac-widget-title h3 { margin:0; font-size:16px; }
.rac-widget-number { display:block; font-size:34px; line-height:1; letter-spacing:-.03em; color:#0f172a; }
.rac-widget-two { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.rac-widget-two div { background:#f8fafc; border-radius:14px; padding:14px; }
.rac-widget-two strong { display:block; font-size:28px; line-height:1; }
.rac-widget-two span { display:block; margin-top:6px; color:#64748b; font-size:12px; }
.rac-mini-bars { display:grid; gap:8px; }
.rac-mini-bars div { display:flex; justify-content:space-between; align-items:center; padding:9px 10px; border-radius:12px; background:#f8fafc; }
.rac-mini-bars strong { font-size:18px; }
.rac-widget-footer { margin-top:12px; padding-top:10px; border-top:1px solid #e5e7eb; color:#64748b; font-size:12px; }
.rac-muted { color:#64748b; }
@media (max-width:1100px){ .rac-widget-grid > .rac-widget-card, .rac-widget-grid > .rac-widget-card:nth-child(1), .rac-widget-grid > .rac-widget-card:nth-child(2), .rac-widget-grid > .rac-widget-edit-shell, .rac-widget-grid > .rac-widget-edit-shell:nth-child(1), .rac-widget-grid > .rac-widget-edit-shell:nth-child(2){ grid-column:span 6; } }
@media (max-width:720px){ .rac-role-dashboard-head{ flex-direction:column; } .rac-widget-grid{ grid-template-columns:1fr; } .rac-widget-grid > .rac-widget-card, .rac-widget-grid > .rac-widget-card:nth-child(1), .rac-widget-grid > .rac-widget-card:nth-child(2), .rac-widget-grid > .rac-widget-edit-shell, .rac-widget-grid > .rac-widget-edit-shell:nth-child(1), .rac-widget-grid > .rac-widget-edit-shell:nth-child(2){ grid-column:span 1; } }

/* v2.46.0 Dashboard Builder */
.rac-dashboard-builder-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0;padding:14px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 8px 22px rgba(15,23,42,.06)}
.rac-dashboard-builder-panel p{margin:.25rem 0 0}.rac-builder-add{display:flex;align-items:center;gap:8px}.rac-builder-add select{min-width:190px;max-width:260px}.rac-widget-edit-shell{position:relative;min-width:0;width:100%;box-sizing:border-box}.rac-widget-controls{position:absolute;right:12px;top:10px;z-index:3;display:flex;gap:5px;opacity:.2;transition:.15s ease}.rac-widget-edit-shell:hover .rac-widget-controls{opacity:1}.rac-widget-controls form{margin:0}.rac-widget-controls button{border:1px solid #d1d5db;background:#fff;border-radius:999px;padding:3px 8px;font-size:11px;cursor:pointer;box-shadow:0 2px 6px rgba(15,23,42,.08)}.rac-widget-controls button:hover{background:#f3f4f6}.rac-widget-edit-shell .rac-widget-card{height:100%}@media(max-width:800px){.rac-dashboard-builder-panel{align-items:stretch;flex-direction:column}.rac-builder-add{align-items:stretch;flex-direction:column}.rac-builder-add select{max-width:none;width:100%}.rac-widget-controls{opacity:1;position:relative;right:auto;top:auto;margin-bottom:6px}}

/* v2.47.0 Family 360 Workspace */
.rac-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0 0 18px}.rac-page-head h2{margin:0 0 4px;font-size:28px;letter-spacing:-.03em}.rac-inline-form{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.rac-inline-form label{flex:1;min-width:260px}.rac-family-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px;background:linear-gradient(135deg,#fff,#f8fafc)}.rac-family-header h2{margin:0 0 6px;font-size:30px;letter-spacing:-.03em}.rac-family-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.rac-btn-small{padding:7px 10px!important;font-size:12px!important}.rac-family-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;padding:10px!important}.rac-family-tabs a{padding:9px 13px;border-radius:999px;text-decoration:none;color:#334155;background:#f1f5f9;border:1px solid transparent;font-weight:700;font-size:13px}.rac-family-tabs a.active,.rac-family-tabs a:hover{background:#111827;color:#fff;border-color:#111827}.rac-family-kpis{margin-bottom:14px}.rac-timeline{display:grid;gap:10px}.rac-timeline-item{display:grid;grid-template-columns:190px 1fr;gap:14px;padding:12px;border:1px solid #e5e7eb;border-radius:14px;background:#fff}.rac-timeline-item strong{display:block;color:#0f172a}.rac-timeline-item span,.rac-timeline-item small{color:#64748b}.rac-timeline-item p{margin:0}@media(max-width:760px){.rac-page-head,.rac-family-header{flex-direction:column}.rac-family-actions{justify-content:flex-start}.rac-timeline-item{grid-template-columns:1fr}}

/* v2.52.1 dashboard layout repair: editable wrapper must participate in grid sizing. */
.rac-widget-edit-shell > .rac-widget-card{height:100%;}
.rac-widget-title h3,.rac-widget-body,.rac-widget-body p{overflow-wrap:break-word;word-break:normal;}

/* v2.57.0 Communication Hub */
.zg-comm-shell{display:flex;flex-direction:column;gap:18px}.zg-comm-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;background:linear-gradient(135deg,#fff,#f7faff);border:1px solid #e5ebf6;border-radius:22px;padding:22px;box-shadow:0 12px 35px rgba(15,23,42,.06)}.zg-comm-head h2{margin:4px 0 4px;font-size:28px}.zg-comm-head p{margin:0;color:#64748b}.zg-kicker{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#2563eb}.zg-comm-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.zg-comm-metric{background:#fff;border:1px solid #e5ebf6;border-radius:18px;padding:16px;box-shadow:0 10px 26px rgba(15,23,42,.05)}.zg-comm-metric strong{display:block;font-size:28px;line-height:1;color:#0f172a}.zg-comm-metric span{display:block;margin-top:7px;color:#64748b;font-size:13px}.zg-comm-tabs{display:flex;gap:8px;flex-wrap:wrap;background:#f8fafc;border:1px solid #e5ebf6;border-radius:18px;padding:8px}.zg-comm-tabs a{padding:10px 14px;border-radius:13px;text-decoration:none;color:#334155;font-weight:800}.zg-comm-tabs a.active{background:#0f172a;color:#fff}.zg-comm-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.85fr);gap:16px}.zg-comm-card{background:#fff;border:1px solid #e5ebf6;border-radius:20px;padding:18px;box-shadow:0 14px 34px rgba(15,23,42,.06)}.zg-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:14px}.zg-card-title h3,.zg-comm-card h3{margin:0 0 6px}.zg-card-title span{color:#64748b;font-size:13px}.zg-comm-list{display:flex;flex-direction:column;gap:10px}.zg-comm-item{display:flex;gap:12px;border:1px solid #edf2f7;border-radius:16px;padding:12px;background:#fbfdff}.zg-comm-icon{width:38px;height:38px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#eaf2ff;color:#2563eb;font-weight:900;flex:0 0 auto}.zg-comm-body{min-width:0;flex:1}.zg-comm-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.zg-comm-body p{margin:6px 0;color:#334155}.zg-comm-body small{color:#64748b}.zg-pill{background:#eef6ff;color:#2563eb;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;white-space:nowrap}.zg-status-list{display:flex;flex-direction:column;gap:10px}.zg-status-list span{display:flex;justify-content:space-between;background:#f8fafc;border:1px solid #edf2f7;border-radius:14px;padding:11px}.zg-status-list b{color:#2563eb}.zg-comm-compose{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,.8fr);gap:16px}.zg-comm-compose.is-compact{display:block}.zg-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.zg-comm-form label{display:block}.zg-comm-form-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px}.zg-help-card ul{margin:10px 0 0;padding-left:20px;color:#334155}.zg-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.zg-template-card{border:1px solid #edf2f7;border-radius:16px;padding:14px;background:#fbfdff}.zg-template-card>div{display:flex;justify-content:space-between;gap:10px}.zg-template-card span,.zg-template-card em{font-size:12px;color:#64748b}.zg-template-card h4{margin:10px 0 6px}.zg-template-card p{color:#475569;margin:0 0 10px}
@media(max-width:980px){.zg-comm-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.zg-comm-layout,.zg-comm-compose{grid-template-columns:1fr}.zg-form-grid,.zg-template-grid{grid-template-columns:1fr}.zg-comm-head{flex-direction:column}.zg-comm-tabs{overflow-x:auto;flex-wrap:nowrap}.zg-comm-tabs a{white-space:nowrap}}

/* v2.58.0 Family Workspace Foundation */
.rac-family-workspace-header{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #e5e7eb;background:linear-gradient(180deg,#ffffff,#f8fafc)}
.rac-eyebrow{display:inline-flex;align-items:center;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#64748b;margin-bottom:4px}
.rac-family-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.rac-family-quick-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.rac-family-quick-actions>div{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.rac-chip-action{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border:1px solid #dbe3ef;border-radius:999px;background:#fff;color:#1f2937;text-decoration:none;font-weight:700;font-size:13px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.rac-chip-action:hover{background:#f8fafc;border-color:#cbd5e1;color:#111827}
.rac-family-overview-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px;margin-top:16px}
.rac-clean-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.rac-clean-list li{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid #eef2f7;border-radius:12px;padding:10px 12px;background:#fff}
.rac-clean-list li strong{color:#111827;font-size:14px}
.rac-clean-list li span{color:#64748b;font-size:12px;text-align:right}
.rac-open-items-card{border-left:4px solid #f59e0b}
.rac-success-text{color:#047857;font-weight:700}
.rac-financial-kpis{margin-bottom:16px}
@media (max-width:900px){.rac-family-workspace-header{align-items:flex-start;flex-direction:column}.rac-family-actions{justify-content:flex-start}.rac-family-quick-actions{align-items:flex-start;flex-direction:column}.rac-family-quick-actions>div{justify-content:flex-start}.rac-family-overview-grid{grid-template-columns:1fr}.rac-clean-list li{flex-direction:column}.rac-clean-list li span{text-align:left}.rac-family-tabs{overflow-x:auto;white-space:nowrap}}


/* v2.59.0 Unified Account Workspace + UI Architecture Freeze */
.rac-account-workspace-header{border-left:4px solid #2563eb;background:linear-gradient(135deg,#ffffff 0%,#f8fbff 100%)}
.rac-account-workspace-header .rac-eyebrow{color:#1d4ed8;font-weight:800;letter-spacing:.05em;text-transform:uppercase;font-size:12px}
.rac-pill{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:12px;font-weight:700}
@media(max-width:780px){.rac-account-workspace-header{display:block}.rac-account-workspace-header .rac-family-actions{margin-top:12px}}

/* ==========================================================
   v2.59.1 LOCKED HYBRID UI SHELL ENFORCEMENT
   This patch applies the approved responsive SaaS layout globally.
   ========================================================== */
:root{
  --zg-shell-side:82px;
  --zg-shell-top:72px;
  --zg-surface:#ffffff;
  --zg-page:#f5f8fc;
  --zg-border:#e5ebf5;
  --zg-text:#0b1736;
  --zg-muted:#66758f;
  --zg-primary:#1f5eff;
  --zg-primary-dark:#09358f;
  --zg-success:#12a65a;
  --zg-soft-shadow:0 16px 42px rgba(15,23,42,.08);
}
.rac-wrap{max-width:none!important;margin:0!important;padding:0!important;background:var(--zg-page)!important;min-height:100vh!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;}
.rac-layout.rac-app-shell{display:grid!important;grid-template-columns:var(--zg-shell-side) minmax(0,1fr)!important;min-height:100vh!important;background:var(--zg-page)!important;}
.rac-side.rac-locked-side{width:var(--zg-shell-side)!important;flex:0 0 var(--zg-shell-side)!important;min-width:var(--zg-shell-side)!important;position:sticky!important;top:0!important;height:100vh!important;min-height:100vh!important;overflow:hidden!important;padding:16px 10px!important;background:linear-gradient(180deg,#071b39 0%,#051126 100%)!important;border-right:1px solid rgba(255,255,255,.08)!important;box-shadow:8px 0 28px rgba(15,23,42,.12)!important;border-radius:0!important;z-index:20!important;}
.rac-locked-brand{display:flex!important;justify-content:center!important;align-items:center!important;padding:4px 0 18px!important;margin:0 0 14px!important;border-bottom:1px solid rgba(255,255,255,.09)!important;}
.rac-locked-brand .rac-brand-mark{width:42px!important;height:42px!important;border-radius:16px!important;margin:0!important;}
.rac-locked-brand .rac-brand-text{display:none!important;}
.rac-locked-nav{display:flex!important;flex-direction:column!important;gap:8px!important;align-items:center!important;}
.rac-locked-nav a{width:52px!important;height:52px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin:0!important;border-radius:17px!important;color:#dbeafe!important;text-decoration:none!important;background:transparent!important;box-shadow:none!important;position:relative!important;}
.rac-locked-nav a:hover{background:rgba(255,255,255,.10)!important;transform:none!important;color:#fff!important;}
.rac-locked-nav a.active{background:linear-gradient(135deg,#2563eb,#6554f5)!important;color:#fff!important;box-shadow:0 14px 26px rgba(37,99,235,.34)!important;}
.rac-locked-nav .rac-menu-icon{font-size:20px!important;width:auto!important;text-align:center!important;line-height:1!important;}
.rac-locked-nav .rac-nav-label{position:fixed!important;left:88px!important;background:#08172f!important;color:#fff!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:10px!important;padding:8px 10px!important;font-size:12px!important;font-weight:800!important;opacity:0!important;pointer-events:none!important;transform:translateX(-4px)!important;transition:.15s ease!important;box-shadow:0 12px 28px rgba(2,6,23,.22)!important;z-index:9999!important;white-space:nowrap!important;}
.rac-locked-nav a:hover .rac-nav-label{opacity:1!important;transform:translateX(0)!important;}
.rac-locked-logout{position:absolute!important;left:10px!important;right:10px!important;bottom:18px!important;margin:0!important;}
.rac-locked-logout button{width:52px!important;height:52px!important;border-radius:17px!important;text-align:center!important;display:grid!important;place-items:center!important;padding:0!important;margin:0!important;color:#dbeafe!important;background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.10)!important;}
.rac-main{min-width:0!important;background:var(--zg-page)!important;padding:0!important;}
.rac-topbar{height:var(--zg-shell-top)!important;position:sticky!important;top:0!important;z-index:15!important;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(14px)!important;border-bottom:1px solid var(--zg-border)!important;padding:0 28px!important;display:flex!important;align-items:center!important;gap:14px!important;box-shadow:0 10px 30px rgba(15,23,42,.04)!important;}
.rac-mobile-menu{width:38px!important;height:38px!important;border-radius:12px!important;display:grid!important;place-items:center!important;color:#0f172a!important;text-decoration:none!important;background:#fff!important;border:1px solid var(--zg-border)!important;}
.rac-global-search{height:48px!important;min-width:320px!important;max-width:560px!important;flex:1 1 460px!important;display:flex!important;align-items:center!important;border:1px solid var(--zg-border)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 8px 24px rgba(15,23,42,.05)!important;color:#53617d!important;padding:0 16px!important;font-size:14px!important;}
.rac-top-actions{margin-left:auto!important;display:flex!important;align-items:center!important;gap:10px!important;}
.rac-quick-action{height:44px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:13px!important;padding:0 18px!important;font-size:14px!important;font-weight:900!important;letter-spacing:-.01em!important;box-shadow:0 12px 24px rgba(37,99,235,.22)!important;}
.rac-quick-action-secondary{background:linear-gradient(135deg,#08a64f,#16c77a)!important;box-shadow:0 12px 24px rgba(22,163,74,.22)!important;}
.rac-quick-action-light{background:#fff!important;color:#0b1736!important;border:1px solid var(--zg-border)!important;box-shadow:0 8px 20px rgba(15,23,42,.05)!important;}
.rac-top-icon{width:40px!important;height:40px!important;border-radius:13px!important;background:#fff!important;border:1px solid var(--zg-border)!important;box-shadow:0 8px 20px rgba(15,23,42,.05)!important;}
.rac-user-chip{gap:8px!important;border-left:1px solid var(--zg-border)!important;padding-left:12px!important;}
.rac-user-chip strong{font-size:13px!important;color:#0b1736!important;}
.rac-user-chip small{font-size:11px!important;color:#66758f!important;}
.rac-avatar{width:34px!important;height:34px!important;background:linear-gradient(135deg,#42c2ff,#16a34a)!important;}
.rac-content{padding:28px 34px 42px!important;max-width:1280px!important;margin:0 auto!important;width:100%!important;box-sizing:border-box!important;}
.rac-role-dashboard-head,.rac-hero-row{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;margin:0 0 22px!important;}
.rac-role-dashboard-head h1,.rac-hero-row h1{font-size:30px!important;line-height:1.1!important;letter-spacing:-.03em!important;margin:0 0 7px!important;color:#0b1736!important;}
.rac-role-dashboard-head p,.rac-hero-row p{color:var(--zg-muted)!important;margin:0!important;}
.rac-eyebrow{font-size:11px!important;font-weight:900!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#37517e!important;}
.rac-date-pill{background:#fff!important;border:1px solid var(--zg-border)!important;border-radius:15px!important;box-shadow:0 10px 26px rgba(15,23,42,.06)!important;padding:13px 18px!important;font-weight:900!important;color:#0b1736!important;}
.rac-dashboard-actions{display:flex!important;gap:10px!important;margin:0 0 18px!important;flex-wrap:wrap!important;}
.rac-dashboard-builder-panel{display:none!important;}
.rac-card,.rac-dash-card,.rac-action-card,.rac-widget,.rac-family-shell,.rac-account-shell,.rac-booking-redesign,.rac-comm-shell{border:1px solid var(--zg-border)!important;border-radius:18px!important;background:rgba(255,255,255,.96)!important;box-shadow:var(--zg-soft-shadow)!important;}
.rac-widget-grid,.rac-dashboard-widgets,.rac-role-dashboard .rac-widget-area{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:16px!important;align-items:start!important;}
.rac-role-dashboard .rac-widget,.rac-widget{grid-column:span 4!important;min-height:150px!important;padding:18px!important;}
.rac-role-dashboard .rac-widget:first-child{grid-column:span 6!important;}
.rac-role-dashboard .rac-widget:nth-child(2){grid-column:span 6!important;}
.rac-role-dashboard .rac-widget:nth-child(3){grid-column:span 4!important;}
.rac-role-dashboard .rac-widget:nth-child(4){grid-column:span 4!important;}
.rac-role-dashboard .rac-widget:nth-child(5){grid-column:span 4!important;}
.rac-dashboard-widget-controls{opacity:.2!important;transition:.15s ease!important;}
.rac-widget:hover .rac-dashboard-widget-controls{opacity:1!important;}
.rac-table{border-radius:16px!important;overflow:hidden!important;border:1px solid var(--zg-border)!important;background:#fff!important;box-shadow:0 10px 30px rgba(15,23,42,.04)!important;}
.rac-table th{background:#f8fbff!important;color:#22304d!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.06em!important;}
.rac-table td,.rac-table th{border-color:var(--zg-border)!important;}
.rac-form input,.rac-form select,.rac-form textarea,.rac-search input,.rac-search select,input,select,textarea{border-radius:12px!important;border-color:var(--zg-border)!important;}
/* Booking locked responsive workspace */
.rac-booking-redesign{padding:16px!important;}
.rac-booking-layout,.rac-booking-workspace{display:grid!important;grid-template-columns:260px minmax(420px,1fr) 320px!important;gap:16px!important;align-items:start!important;}
.rac-booking-types,.rac-booking-summary-panel{position:sticky!important;top:calc(var(--zg-shell-top) + 18px)!important;}
.rac-booking-slot-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px 14px!important;}
.rac-slot-bookable{border-color:#bbf7d0!important;background:#fbfffd!important;}
.rac-slot-not-bookable{border-color:#fed7aa!important;background:#fff7ed!important;}
.rac-slot-blocked{border-color:#dbe3ef!important;background:#f4f6fb!important;color:#64748b!important;}
/* Mobile wizard behavior */
@media(max-width:980px){
  .rac-layout.rac-app-shell{display:block!important;}
  .rac-side.rac-locked-side{position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;width:100%!important;min-width:0!important;height:68px!important;min-height:68px!important;padding:8px 10px!important;border-radius:22px 22px 0 0!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:100!important;}
  .rac-locked-brand,.rac-locked-logout{display:none!important;}
  .rac-locked-nav{display:grid!important;grid-template-columns:repeat(6,1fr)!important;width:100%!important;max-width:560px!important;gap:6px!important;}
  .rac-locked-nav a{width:auto!important;height:50px!important;border-radius:16px!important;}
  .rac-locked-nav a:nth-child(n+7){display:none!important;}
  .rac-locked-nav .rac-nav-label{display:none!important;}
  .rac-topbar{height:auto!important;min-height:70px!important;position:sticky!important;padding:12px 14px!important;flex-wrap:wrap!important;}
  .rac-global-search{order:2!important;flex:1 0 100%!important;min-width:0!important;max-width:none!important;height:44px!important;}
  .rac-top-actions{gap:8px!important;overflow:auto!important;width:100%!important;margin-left:0!important;padding-bottom:2px!important;}
  .rac-user-chip{display:none!important;}
  .rac-content{padding:18px 14px 88px!important;}
  .rac-role-dashboard-head,.rac-hero-row{display:block!important;}
  .rac-date-pill{display:inline-flex!important;margin-top:12px!important;}
  .rac-widget-grid,.rac-dashboard-widgets,.rac-role-dashboard .rac-widget-area{display:block!important;}
  .rac-role-dashboard .rac-widget,.rac-widget{margin-bottom:14px!important;min-height:auto!important;}
  .rac-booking-layout,.rac-booking-workspace{display:block!important;}
  .rac-booking-types,.rac-booking-summary-panel{position:static!important;margin-bottom:14px!important;}
  .rac-booking-slot-grid{grid-template-columns:1fr!important;}
}

/* v3.0.0 Operations Center UI: familiar menu + work-focused dashboard */
.rac-side.rac-operations-side{
  width:280px!important;flex:0 0 280px!important;min-width:280px!important;height:100vh!important;min-height:100vh!important;overflow:auto!important;
  padding:18px 14px!important;background:linear-gradient(180deg,#071b39 0%,#061126 100%)!important;border-radius:0!important;position:sticky!important;top:0!important;
}
.rac-operations-side .rac-brand{padding:6px 8px 18px!important;margin-bottom:10px!important;display:flex!important;border-bottom:1px solid rgba(255,255,255,.08)!important;}
.rac-operations-side .rac-side-section{display:block!important;color:#8fa3c7!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.12em!important;margin:18px 10px 7px!important;font-weight:900!important;}
.rac-operations-nav a{display:flex!important;align-items:center!important;gap:10px!important;color:#d9e6ff!important;text-decoration:none!important;padding:10px 12px!important;border-radius:12px!important;margin:3px 0!important;transition:.16s ease!important;}
.rac-operations-nav a:hover{background:rgba(255,255,255,.08)!important;transform:none!important;}
.rac-operations-nav a.active{background:linear-gradient(135deg,#2563eb,#4f46e5)!important;color:#fff!important;box-shadow:0 10px 22px rgba(37,99,235,.24)!important;}
.rac-operations-nav .rac-nav-label{display:inline!important;position:static!important;opacity:1!important;transform:none!important;background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important;font-size:14px!important;font-weight:750!important;white-space:normal!important;}
.rac-operations-nav .rac-menu-icon{width:22px!important;text-align:center!important;flex:0 0 22px!important;}
.rac-operations-side .rac-side-logout{margin-top:24px!important;padding-top:12px!important;border-top:1px solid rgba(255,255,255,.08)!important;}
.rac-operations-side .rac-side-logout button{width:100%!important;background:transparent!important;border:1px solid rgba(255,255,255,.12)!important;color:#d9e6ff!important;text-align:left!important;border-radius:12px!important;padding:11px 12px!important;}
.rac-dashboard-builder-panel{display:none!important;}
.rac-role-dashboard .rac-widget-grid{display:grid!important;grid-template-columns:repeat(2,minmax(320px,1fr))!important;gap:20px!important;}
.rac-role-dashboard .rac-widget-card{min-height:230px!important;}
.rac-ops-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.rac-ops-metrics a,.rac-action-list a,.rac-revenue-grid div{display:block;text-decoration:none;color:#0f172a;background:#f8fbff;border:1px solid #e6edf7;border-radius:16px;padding:15px;}
.rac-ops-metrics strong,.rac-action-list strong,.rac-revenue-grid strong{display:block;font-size:28px;line-height:1;color:#0f172a;margin-bottom:6px;}
.rac-ops-metrics span,.rac-action-list span,.rac-revenue-grid span{display:block;color:#64748b;font-size:13px;font-weight:800;}
.rac-action-list{display:grid;gap:10px;}
.rac-action-list a{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:12px;border-left:4px solid #3b82f6;}
.rac-action-list a.high{border-left-color:#ef4444;background:#fffafa;}
.rac-upcoming-list{list-style:none;margin:0;padding:0;display:grid;gap:12px;}
.rac-upcoming-list li{border:1px solid #e6edf7;border-radius:16px;padding:14px;background:#fff;}
.rac-upcoming-list strong{display:block;color:#0f172a;}
.rac-upcoming-list span{display:block;color:#64748b;font-size:13px;margin-top:4px;}
.rac-revenue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px;}
@media(max-width:1180px){.rac-side.rac-operations-side{width:250px!important;flex-basis:250px!important;min-width:250px!important}.rac-role-dashboard .rac-widget-grid{grid-template-columns:1fr!important;}}
@media(max-width:860px){.rac-app-shell{display:block!important}.rac-side.rac-operations-side{position:relative!important;width:auto!important;min-width:0!important;height:auto!important;min-height:auto!important;max-height:none!important}.rac-operations-nav{display:grid!important;grid-template-columns:1fr 1fr!important;gap:4px!important}.rac-operations-side .rac-side-section{grid-column:1/-1!important}.rac-role-dashboard .rac-widget-grid{grid-template-columns:1fr!important}.rac-ops-metrics,.rac-revenue-grid{grid-template-columns:1fr!important}}

/* ==========================================================
   v3.0.1 WordPress-Style Collapsible Navigation
   Full menu when expanded, icon rail when collapsed.
   ========================================================== */
:root{
  --zg-expanded-side:260px;
  --zg-collapsed-side:72px;
}
.rac-layout.rac-app-shell{
  grid-template-columns:var(--zg-expanded-side) minmax(0,1fr)!important;
  transition:grid-template-columns .18s ease!important;
}
body.rac-nav-collapsed .rac-layout.rac-app-shell{
  grid-template-columns:var(--zg-collapsed-side) minmax(0,1fr)!important;
}
.rac-side.rac-operations-side{
  width:var(--zg-expanded-side)!important;
  min-width:var(--zg-expanded-side)!important;
  flex-basis:var(--zg-expanded-side)!important;
  overflow-x:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  padding:14px 10px!important;
  transition:width .18s ease,min-width .18s ease,flex-basis .18s ease!important;
}
body.rac-nav-collapsed .rac-side.rac-operations-side{
  width:var(--zg-collapsed-side)!important;
  min-width:var(--zg-collapsed-side)!important;
  flex-basis:var(--zg-collapsed-side)!important;
  padding-left:8px!important;
  padding-right:8px!important;
}
.rac-operations-side .rac-brand{
  min-height:52px!important;
  gap:10px!important;
  padding:4px 6px 14px!important;
  align-items:center!important;
}
body.rac-nav-collapsed .rac-operations-side .rac-brand{
  justify-content:center!important;
  padding-left:0!important;
  padding-right:0!important;
}
body.rac-nav-collapsed .rac-operations-side .rac-brand-text,
body.rac-nav-collapsed .rac-operations-nav .rac-nav-label,
body.rac-nav-collapsed .rac-side-section,
body.rac-nav-collapsed .rac-collapse-label,
body.rac-nav-collapsed .rac-side-logout .rac-nav-label{
  display:none!important;
}
.rac-operations-nav{
  flex:1 1 auto!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:0 2px 12px!important;
  scrollbar-width:thin!important;
}
.rac-menu-section{margin:0 0 8px!important;}
.rac-operations-side .rac-side-section{
  margin:16px 10px 6px!important;
  padding:0!important;
  line-height:1.2!important;
}
.rac-operations-nav a{
  min-height:42px!important;
  border-radius:10px!important;
  margin:2px 0!important;
  padding:9px 10px!important;
  gap:10px!important;
  background:transparent!important;
  box-shadow:none!important;
}
.rac-operations-nav a.active{
  background:rgba(78,105,255,.95)!important;
  box-shadow:0 8px 18px rgba(37,99,235,.22)!important;
}
.rac-operations-nav a:hover{background:rgba(255,255,255,.08)!important;}
body.rac-nav-collapsed .rac-operations-nav a{
  width:50px!important;
  height:46px!important;
  min-height:46px!important;
  justify-content:center!important;
  padding:0!important;
  margin:3px auto!important;
  border-radius:12px!important;
  position:relative!important;
}
body.rac-nav-collapsed .rac-operations-nav .rac-menu-icon{
  width:auto!important;
  flex:0 0 auto!important;
  font-size:18px!important;
}
body.rac-nav-collapsed .rac-operations-nav a:hover:after,
body.rac-nav-collapsed .rac-side-logout button:hover:after{
  content:attr(title)!important;
  position:fixed!important;
  left:78px!important;
  background:#071b39!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:9px!important;
  padding:7px 10px!important;
  font-size:12px!important;
  font-weight:800!important;
  white-space:nowrap!important;
  box-shadow:0 12px 24px rgba(2,6,23,.22)!important;
  z-index:99999!important;
}
.rac-side-footer{
  flex:0 0 auto!important;
  padding-top:10px!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
}
.rac-collapse-menu{
  width:100%!important;
  min-height:42px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  border:0!important;
  background:rgba(255,255,255,.06)!important;
  color:#d9e6ff!important;
  border-radius:10px!important;
  padding:10px 12px!important;
  cursor:pointer!important;
  font-weight:800!important;
  text-align:left!important;
  margin:0 0 8px!important;
}
.rac-collapse-menu:hover{background:rgba(255,255,255,.10)!important;color:#fff!important;}
.rac-collapse-icon{width:22px!important;text-align:center!important;display:inline-block!important;transition:transform .18s ease!important;}
body.rac-nav-collapsed .rac-collapse-menu{
  width:50px!important;
  height:46px!important;
  min-height:46px!important;
  justify-content:center!important;
  padding:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.rac-nav-collapsed .rac-collapse-icon{transform:rotate(180deg)!important;}
.rac-operations-side .rac-side-logout{
  margin:0!important;
  padding:0!important;
  border:0!important;
}
.rac-operations-side .rac-side-logout button{
  min-height:42px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  border:0!important;
  background:transparent!important;
  color:#d9e6ff!important;
  border-radius:10px!important;
  padding:10px 12px!important;
  font-weight:800!important;
}
.rac-operations-side .rac-side-logout button:hover{background:rgba(255,255,255,.08)!important;color:#fff!important;}
body.rac-nav-collapsed .rac-operations-side .rac-side-logout button{
  width:50px!important;
  height:46px!important;
  min-height:46px!important;
  justify-content:center!important;
  padding:0!important;
  margin:0 auto!important;
}
body.rac-nav-collapsed .rac-content{
  max-width:1420px!important;
}
@media(max-width:980px){
  body.rac-nav-collapsed .rac-layout.rac-app-shell,
  .rac-layout.rac-app-shell{display:block!important;}
  .rac-side.rac-operations-side{
    width:100%!important;min-width:0!important;height:68px!important;min-height:68px!important;
    display:flex!important;flex-direction:row!important;overflow:hidden!important;
  }
  .rac-side-footer,.rac-operations-side .rac-brand,.rac-operations-side .rac-side-section{display:none!important;}
  .rac-operations-nav{display:flex!important;width:100%!important;gap:6px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:0!important;}
  .rac-menu-section{display:flex!important;margin:0!important;}
  .rac-menu-section-items{display:flex!important;gap:6px!important;}
  .rac-operations-nav a{width:48px!important;height:48px!important;min-height:48px!important;justify-content:center!important;padding:0!important;margin:0!important;flex:0 0 auto!important;}
  .rac-operations-nav .rac-nav-label{display:none!important;}
}

/*
   v3.0.2 Module Landing Pages + Compact List Controls
   Keeps the sidebar small and moves submenus into module dashboards.
*/
.rac-module-landing{max-width:1280px;margin:0 auto;}
.rac-module-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;}
.rac-module-head h2{margin:0 0 4px!important;font-size:28px!important;letter-spacing:-.02em!important;}
.rac-module-head p{margin:0!important;color:#64748b!important;}
.rac-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.rac-module-card{display:flex!important;flex-direction:column!important;gap:8px!important;text-decoration:none!important;color:#0f172a!important;background:#fff!important;border:1px solid #e5e7eb!important;border-radius:18px!important;padding:18px!important;min-height:135px!important;box-shadow:0 10px 28px rgba(15,23,42,.05)!important;transition:.16s ease!important;}
.rac-module-card:hover{transform:translateY(-2px)!important;border-color:#bfdbfe!important;box-shadow:0 18px 42px rgba(15,23,42,.09)!important;}
.rac-module-icon{width:42px;height:42px;border-radius:14px;background:#eff6ff;display:flex;align-items:center;justify-content:center;font-size:22px;}
.rac-module-card strong{font-size:16px!important;}
.rac-module-card small{color:#64748b!important;line-height:1.35!important;}
.rac-filters,.rac-search{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:8px!important;margin:0 0 12px!important;}
.rac-filters label{display:flex!important;align-items:center!important;gap:6px!important;margin:0!important;}
.rac-filters input,.rac-filters select,.rac-search input{min-height:38px!important;}
.rac-filters button,.rac-search button{min-height:38px!important;}
.rac-pagination{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:6px!important;margin-top:12px!important;}
.rac-pagination a{min-width:34px!important;text-align:center!important;padding:7px 9px!important;border:1px solid #dbe3ee!important;border-radius:10px!important;text-decoration:none!important;background:#fff!important;}
.rac-pagination a.active{background:#1d4ed8!important;color:#fff!important;border-color:#1d4ed8!important;}
.rac-page-summary{color:#64748b!important;margin-right:8px!important;}
@media(max-width:1100px){.rac-module-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:680px){.rac-module-grid{grid-template-columns:1fr}.rac-module-head{display:block}.rac-filters,.rac-search{display:grid!important;grid-template-columns:1fr!important}.rac-filters label{display:grid!important;grid-template-columns:1fr!important}}
/* v3.0.3 Workspace Engine */
.rac-workspace-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:18px}.rac-workspace-card{display:flex;flex-direction:column;gap:10px}.rac-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.rac-card-title h3{margin:0}.rac-workspace-card p{margin:0 0 8px}.rac-workspace-editor{margin-top:8px;border-top:1px solid #e5e7eb;padding-top:10px}.rac-workspace-editor summary{cursor:pointer;font-weight:800;color:#111827}.rac-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:10px 0 14px}.rac-check-grid label{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}.rac-workspace-card .rac-inline-form input{min-width:160px}.rac-workspace-card .rac-inline-form{margin-top:auto}.rac-notice.success{background:#ecfdf5;border:1px solid #bbf7d0;color:#065f46}.rac-notice.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}


/* v3.0.4 Master Module Map + Workflow Shortcuts */
.rac-module-map-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));}
.rac-module-map-card ul{margin:12px 0 0 18px;padding:0;}
.rac-module-map-card li{margin:6px 0;color:#344054;}
.rac-check-grid label small{display:block;color:#667085;font-size:11px;margin-left:22px;margin-top:2px;}
.rac-dashboard-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px;}
.rac-dashboard-actions .rac-quick-action{min-height:34px;align-items:center;display:inline-flex;}

/* v3.0.9 Smart Account Dashboard */
.rac-smart-account-dashboard{display:grid;gap:14px}.rac-smart-account-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.rac-smart-account-hero h3{margin:4px 0 6px;font-size:22px}.rac-smart-account-contact{text-align:right;color:#374151}.rac-smart-kpis{margin-bottom:0}.rac-smart-workflows div{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.rac-smart-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.rac-smart-account-grid .rac-card{margin:0}.rac-smart-timeline-list strong{font-weight:650}@media(max-width:900px){.rac-smart-account-hero{display:block}.rac-smart-account-contact{text-align:left;margin-top:10px}.rac-smart-account-grid{grid-template-columns:1fr}}

/* v3.3.0 Communication Hub Completion */
.zg-comm-filter{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:0 0 14px}.zg-comm-filter select,.zg-comm-filter input{min-height:40px;border:1px solid #dbe4f0;border-radius:12px;padding:8px 11px}.zg-comm-filter input{min-width:260px;flex:1}.zg-comm-item .zg-comm-icon{font-size:18px}.zg-comm-form textarea{width:100%}.zg-comm-form input,.zg-comm-form select,.zg-comm-form textarea{max-width:100%}

.rac-module-card-help .rac-help-dot{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:18px!important;height:18px!important;margin-left:6px!important;border-radius:999px!important;background:#e0f2fe!important;color:#0369a1!important;font-size:12px!important;font-weight:800!important;vertical-align:middle!important;}
.rac-card-example,.rac-card-visibility{display:block!important;margin-top:6px!important;padding-top:8px!important;border-top:1px dashed #e5e7eb!important;color:#475569!important;font-size:12px!important;line-height:1.35!important;}
.rac-card-visibility{color:#64748b!important;}

/* DEV6N Role-Aware Responsive Command Center UI */
.rac-role-dashboard{max-width:1280px!important;margin:0 auto!important;padding:4px 2px 32px!important;}
.rac-dashboard-hero{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;margin:0 0 18px!important;padding:8px 0!important;}
.rac-dashboard-hero-copy h1{font-size:30px!important;line-height:1.12!important;letter-spacing:-.035em!important;margin:6px 0 8px!important;color:#071a44!important;}
.rac-dashboard-hero-copy p{font-size:14px!important;color:#53627b!important;max-width:760px!important;margin:0!important;}
.rac-dashboard-hero-side{display:flex!important;align-items:center!important;gap:10px!important;flex:0 0 auto!important;}
.rac-date-pill{background:#fff!important;border:1px solid #e5edf8!important;border-radius:18px!important;box-shadow:0 10px 30px rgba(15,23,42,.06)!important;color:#071a44!important;font-weight:900!important;padding:14px 18px!important;white-space:nowrap!important;}
.rac-dashboard-actions{display:flex!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:wrap!important;margin:-4px 0 22px!important;}
.rac-dashboard-actions .rac-quick-action{border:0!important;border-radius:12px!important;background:#2563eb!important;color:#fff!important;padding:12px 16px!important;font-size:14px!important;font-weight:900!important;text-decoration:none!important;box-shadow:0 10px 24px rgba(37,99,235,.20)!important;}
.rac-dashboard-actions .rac-quick-action:nth-child(1){background:#16a34a!important;box-shadow:0 10px 24px rgba(22,163,74,.18)!important;}
.rac-dashboard-actions .rac-quick-action:nth-child(2){background:#7c3aed!important;box-shadow:0 10px 24px rgba(124,58,237,.18)!important;}
.rac-widget-grid{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important;}
.rac-widget-card{grid-column:span 6!important;background:#fff!important;border:1px solid #e6edf7!important;border-radius:20px!important;box-shadow:0 12px 34px rgba(15,23,42,.06)!important;overflow:hidden!important;margin:0!important;}
.rac-widget-card:first-child{grid-column:1/-1!important;}
.rac-widget-title{display:flex!important;align-items:center!important;gap:10px!important;padding:16px 18px 10px!important;border-bottom:1px solid #eef3fa!important;}
.rac-widget-title span{width:34px!important;height:34px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:12px!important;background:#eef6ff!important;font-size:17px!important;}
.rac-widget-title h3{font-size:15px!important;text-transform:none!important;letter-spacing:-.01em!important;margin:0!important;color:#071a44!important;}
.rac-widget-body{padding:14px 16px 16px!important;}
.rac-priority-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;}
.rac-priority-card{display:flex!important;flex-direction:column!important;min-height:168px!important;border:1px solid #e6edf7!important;border-radius:18px!important;background:#fff!important;padding:16px!important;text-decoration:none!important;color:#0f172a!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important;transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease!important;}
.rac-priority-card:hover{transform:translateY(-2px)!important;box-shadow:0 16px 36px rgba(15,23,42,.08)!important;border-color:#bfdbfe!important;}
.rac-priority-icon{width:42px!important;height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;background:#eff6ff!important;margin-bottom:10px!important;font-size:20px!important;}
.rac-priority-card strong{font-size:30px!important;line-height:1!important;color:#1d4ed8!important;margin-bottom:10px!important;}
.rac-priority-card b{font-size:14px!important;margin-bottom:6px!important;color:#0f172a!important;}
.rac-priority-card small{font-size:12px!important;line-height:1.35!important;color:#5b677f!important;min-height:34px!important;}
.rac-priority-card em{margin-top:auto!important;font-style:normal!important;color:#1d4ed8!important;font-weight:900!important;font-size:13px!important;}
.rac-priority-card.tone-danger{background:#fff7f7!important;border-color:#ffd6d6!important;}
.rac-priority-card.tone-warning{background:#fffbeb!important;border-color:#fde68a!important;}
.rac-priority-card.tone-ok .rac-priority-icon{background:#ecfdf5!important;}
.rac-priority-card.tone-ok strong{color:#16a34a!important;}
.rac-action-list.rac-intelligence-rollup{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
.rac-action-list.rac-intelligence-rollup a{display:flex!important;align-items:center!important;gap:14px!important;padding:14px!important;border-radius:14px!important;background:#f8fbff!important;border:1px solid #e4eefb!important;color:#0f172a!important;text-decoration:none!important;}
.rac-action-list.rac-intelligence-rollup a.high{background:#fff7f7!important;border-color:#fecaca!important;}
.rac-action-list.rac-intelligence-rollup strong{font-size:24px!important;color:#0b3a8f!important;min-width:34px!important;}
.rac-action-list.rac-intelligence-rollup span{font-weight:800!important;color:#42526b!important;}
.rac-role-dashboard-parent-dashboard .rac-widget-card:first-child,.rac-role-dashboard-family-dashboard .rac-widget-card:first-child{grid-column:span 6!important;}
@media(max-width:1200px){.rac-priority-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.rac-widget-card{grid-column:span 6!important}}
@media(max-width:900px){.rac-role-dashboard{padding:0 10px 28px!important}.rac-dashboard-hero{display:block!important}.rac-dashboard-hero-side{margin-top:12px!important}.rac-dashboard-actions{justify-content:flex-start!important}.rac-widget-grid{grid-template-columns:1fr!important}.rac-widget-card,.rac-widget-card:first-child{grid-column:1/-1!important}.rac-priority-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.rac-action-list.rac-intelligence-rollup{grid-template-columns:1fr!important}.rac-topbar,.rac-admin-topbar,.rac-operations-topbar{position:sticky!important;top:0!important;z-index:50!important;overflow-x:auto!important;white-space:nowrap!important}}
@media(max-width:640px){.rac-dashboard-hero-copy h1{font-size:24px!important}.rac-date-pill{width:100%!important;text-align:center!important}.rac-dashboard-actions{display:grid!important;grid-template-columns:1fr!important}.rac-dashboard-actions .rac-quick-action{justify-content:center!important}.rac-priority-grid{grid-template-columns:1fr!important}.rac-priority-card{min-height:140px!important}.rac-widget-title{padding:14px!important}.rac-widget-body{padding:12px!important}.rac-operations-nav a{min-width:50px!important}.rac-side.rac-operations-side{position:sticky!important;top:0!important;z-index:60!important}}

/* DEV6Q: Offering list cleanup */
.rac-warning-text{display:inline-flex;align-items:center;gap:6px;color:#b45309;background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;padding:5px 9px;font-weight:700;font-size:12px;line-height:1.2;}
@media(max-width:900px){.rac-table .rac-warning-text{white-space:normal;border-radius:10px;}}

/* DEV6T Coach Session Workspace: iPad/phone friendly class companion. */
.rac-session-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;border-radius:24px;padding:24px;margin-bottom:16px;box-shadow:0 18px 40px rgba(79,70,229,.22)}
.rac-session-hero h2{margin:6px 0 8px;color:#fff;font-size:30px}.rac-session-hero p{margin:0;color:#eef2ff}.rac-session-hero .rac-eyebrow{color:#c7d2fe}.rac-session-hero-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.rac-quick-action-green{background:linear-gradient(135deg,#16a34a,#22c55e)!important}.rac-quick-action-purple{background:linear-gradient(135deg,#7c3aed,#a855f7)!important}.rac-session-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:16px}.rac-session-status-grid>div{background:#fff;border:1px solid var(--zg-line);border-radius:18px;padding:16px;box-shadow:var(--zg-shadow)}.rac-session-status-grid strong{display:block;font-size:20px;color:var(--zg-text)}.rac-session-status-grid span{display:block;color:var(--zg-muted);font-weight:700;margin-top:4px}.rac-session-status-grid .is-good{border-left:5px solid #22c55e}.rac-session-status-grid .is-warning{border-left:5px solid #f59e0b}.rac-session-tabs{background:#fff;border:1px solid var(--zg-line);border-radius:18px;padding:14px 16px;margin-bottom:16px;box-shadow:var(--zg-shadow)}.rac-session-tabs>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.rac-session-tabs a{display:inline-block;padding:9px 13px;border:1px solid var(--zg-line);border-radius:999px;text-decoration:none;font-weight:800;color:#111827;background:#fff}.rac-session-tabs a.active{background:#111827;color:#fff;border-color:#111827}.rac-session-layout{display:grid;grid-template-columns:minmax(360px,1.5fr) minmax(280px,.8fr);gap:16px;margin-bottom:16px}.rac-plan-preview{background:#f8fbff;border:1px solid var(--zg-line);border-radius:16px;padding:16px;margin-bottom:16px}.rac-plan-preview strong{display:block;font-size:20px;margin-bottom:8px}.rac-coach-action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.rac-coach-action-grid a{display:grid;gap:5px;text-decoration:none;color:#111827;background:#fff;border:1px solid var(--zg-line);border-radius:18px;padding:16px;box-shadow:0 8px 24px rgba(15,23,42,.05)}.rac-coach-action-grid a>strong{display:block}.rac-coach-action-grid a>span{color:var(--zg-muted);font-size:13px}.rac-finish-checklist{display:flex;gap:10px;flex-wrap:wrap}.rac-finish-checklist span{border-radius:999px;padding:10px 13px;font-weight:800}.rac-finish-checklist .done{background:#dcfce7;color:#166534}.rac-finish-checklist .todo{background:#fff7ed;color:#9a3412}@media(max-width:900px){.rac-session-hero{display:block}.rac-session-hero-actions{justify-content:flex-start;margin-top:14px}.rac-session-layout{grid-template-columns:1fr}.rac-session-hero h2{font-size:26px}}
@media(max-width:560px){.rac-session-hero{padding:18px;border-radius:20px}.rac-session-hero-actions .rac-quick-action{width:100%;text-align:center}.rac-session-status-grid{grid-template-columns:1fr}.rac-coach-action-grid{grid-template-columns:1fr}.rac-session-tabs a{flex:1 1 45%;text-align:center}}

/* DEV6U: Coach-first attendance workspace. Designed for iPad/phone in class. */
.rac-attendance-workspace .rac-section-head{align-items:flex-start}
.rac-att-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:12px 0 16px}
.rac-attendance-mobile-list{display:grid;gap:12px;margin-top:12px}
.rac-att-row{background:#fff;border:1px solid var(--zg-line);border-radius:18px;padding:14px;box-shadow:0 8px 22px rgba(15,23,42,.05);display:grid;grid-template-columns:minmax(160px,.8fr) minmax(280px,1.4fr);gap:12px;align-items:center}
.rac-att-row small{display:block;color:var(--zg-muted);margin-top:3px;font-weight:700}
.rac-att-status-grid{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:8px}
.rac-att-chip{position:relative;display:flex;align-items:center;justify-content:center;border:1px solid var(--zg-line);border-radius:14px;padding:12px 10px;font-weight:900;cursor:pointer;background:#f8fafc;color:#111827;min-height:46px;text-align:center}
.rac-att-chip input{position:absolute;opacity:0;pointer-events:none}
.rac-att-chip:has(input:checked){box-shadow:0 0 0 3px rgba(59,130,246,.15);border-color:#2563eb;background:#eff6ff;color:#1d4ed8}
.rac-att-present:has(input:checked){border-color:#16a34a;background:#dcfce7;color:#166534}
.rac-att-absent:has(input:checked){border-color:#dc2626;background:#fee2e2;color:#991b1b}
.rac-att-late:has(input:checked){border-color:#f59e0b;background:#fff7ed;color:#92400e}
.rac-att-excused:has(input:checked){border-color:#7c3aed;background:#f3e8ff;color:#6d28d9}
.rac-att-note{grid-column:2;width:100%;border:1px solid var(--zg-line);border-radius:12px;padding:10px 12px}
.rac-sticky-save{position:sticky;bottom:10px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border:1px solid var(--zg-line);border-radius:18px;padding:12px;margin-top:16px;display:flex;gap:10px;justify-content:flex-end;box-shadow:0 14px 36px rgba(15,23,42,.12)}
.rac-btn-ghost{background:#fff!important;color:#111827!important;border:1px solid var(--zg-line)!important}
@media(max-width:800px){.rac-att-row{grid-template-columns:1fr}.rac-att-note{grid-column:1}.rac-att-status-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}.rac-sticky-save{justify-content:stretch}.rac-sticky-save .rac-btn{flex:1;text-align:center}}
@media(max-width:480px){.rac-att-status-grid{grid-template-columns:1fr}.rac-att-chip{min-height:50px}.rac-att-toolbar .rac-btn{width:100%;text-align:center}.rac-sticky-save{display:grid;grid-template-columns:1fr}}

/* DEV6W Student Alerts Engine: prioritized, session-context coaching intelligence. */
.rac-student-alert-list{display:grid;gap:10px;margin-top:12px}.rac-student-alert{display:grid;grid-template-columns:46px 1fr;gap:12px;border:1px solid var(--zg-line);border-left-width:5px;border-radius:16px;padding:14px;background:#fff}.rac-student-alert-icon{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#f8fafc;font-size:20px}.rac-student-alert h4{margin:3px 0 5px;font-size:16px}.rac-student-alert p{margin:0;color:var(--zg-muted);line-height:1.4}.rac-alert-type{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#64748b}.rac-alert-critical{border-left-color:#dc2626;background:#fff7f7}.rac-alert-critical .rac-student-alert-icon{background:#fee2e2}.rac-alert-important{border-left-color:#f59e0b;background:#fffbeb}.rac-alert-important .rac-student-alert-icon{background:#fef3c7}.rac-alert-info{border-left-color:#2563eb;background:#f8fbff}.rac-alert-info .rac-student-alert-icon{background:#dbeafe}.rac-alert-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.rac-alert-count{display:inline-flex;vertical-align:middle;margin-left:6px;padding:4px 8px;border-radius:999px;background:#fee2e2;color:#991b1b;font-size:11px}.rac-alert-divider{border:0;border-top:1px solid var(--zg-line);margin:16px 0}.rac-alert-legend{display:flex;gap:10px;flex-wrap:wrap}.rac-alert-legend span{border-radius:999px;padding:8px 11px;font-weight:800;font-size:12px}.rac-alert-legend .critical{background:#fee2e2;color:#991b1b}.rac-alert-legend .important{background:#fef3c7;color:#92400e}.rac-alert-legend .info{background:#dbeafe;color:#1d4ed8}@media(max-width:560px){.rac-student-alert{grid-template-columns:38px 1fr;padding:12px}.rac-student-alert-icon{width:36px;height:36px}.rac-alert-actions .rac-btn{width:100%;text-align:center}}

/* DEV6X Finish Session Workflow: closes the Coach Clipboard loop. */
.rac-quick-action-finish{background:#111827!important;color:#fff!important}
.rac-finish-session{max-width:1050px}
.rac-finish-review{display:grid;gap:10px;margin:18px 0}
.rac-finish-review-row{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;border:1px solid #dfe4ea;border-radius:14px;padding:14px;background:#fff}
.rac-finish-review-row.blocked{border-color:#f0b8b8;background:#fff8f8}
.rac-finish-review-row small{display:block;color:#667085;margin-top:3px}
.rac-finish-review-row a{font-weight:700;text-decoration:none}
.rac-finish-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:#e8f7ee;color:#147a45;font-weight:800}
.rac-finish-review-row.blocked .rac-finish-icon{background:#fde8e8;color:#b42318}
.rac-completion-banner{border:1px solid #a6dfbd;background:#effbf4;border-radius:14px;padding:16px;margin:18px 0}
.rac-completion-banner p{margin:6px 0 0}
.rac-finish-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;position:sticky;bottom:10px;background:#fff;border-top:1px solid #eaecf0;padding:14px 0;margin-top:18px}
.rac-finish-actions button[disabled]{opacity:.45;cursor:not-allowed}
.rac-finish-checklist .optional{background:#f2f4f7;color:#475467}
@media(max-width:700px){.rac-finish-review-row{grid-template-columns:38px 1fr}.rac-finish-review-row a{grid-column:2}.rac-finish-actions{flex-direction:column-reverse;align-items:stretch}.rac-finish-actions .rac-btn{text-align:center;width:100%}}


/* DEV6Y Coach Daily Dashboard + Session History */
.rac-daily-agenda .rac-agenda-session{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}
.rac-agenda-session>div{display:flex;flex-direction:column;gap:8px;min-width:0}
.rac-agenda-badges{display:flex;gap:6px;flex-wrap:wrap}
.rac-session-state{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800;background:#eef2f7;color:#374151}
.rac-session-state-completed{background:#dcfce7;color:#166534}
.rac-session-state-in_progress,.rac-session-state-reopened{background:#fef3c7;color:#92400e}
.rac-session-state-not_started,.rac-session-state-open,.rac-session-state-scheduled{background:#e0f2fe;color:#075985}
.rac-session-state-cancelled,.rac-session-state-canceled{background:#fee2e2;color:#991b1b}
.rac-session-history-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}
.rac-session-history-filters a{padding:8px 12px;border:1px solid #d1d5db;border-radius:999px;background:#fff;text-decoration:none;font-weight:700}
.rac-session-history-table small{color:#6b7280}
@media(max-width:760px){.rac-daily-agenda .rac-agenda-session{align-items:flex-start;flex-direction:column}.rac-agenda-session .rac-btn{width:100%;text-align:center}.rac-session-history-table{display:block;overflow-x:auto;white-space:nowrap}}

/* ========================================================================
 * DEV7C — Coach Clipboard UI Polish
 *
 * These rules are scoped to authenticated staff workspaces where possible.
 * They intentionally improve the delivery experience without changing any
 * Coach Clipboard permissions, routes, database writes, or session states.
 * ====================================================================== */
.rac-coach-shell{--coach-ink:#0f172a;--coach-muted:#64748b;--coach-line:#dbe4ee;--coach-soft:#f6f9fc;--coach-blue:#1d4ed8;--coach-radius:18px}
.rac-coach-shell .rac-content{padding-bottom:84px}
.rac-coach-shell .rac-card{border-color:var(--coach-line);border-radius:var(--coach-radius);box-shadow:0 8px 24px rgba(15,23,42,.055)}
.rac-coach-shell .rac-card h2,.rac-coach-shell .rac-card h3{color:var(--coach-ink);letter-spacing:-.02em}
.rac-coach-shell .rac-muted{color:var(--coach-muted)}
.rac-coach-shell .rac-btn,.rac-coach-shell button{min-height:44px;border-radius:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.rac-coach-shell .rac-btn-small{min-height:38px;padding:8px 12px!important}
.rac-today-shortcut{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 13px;border-radius:999px;background:#eff6ff;color:#1d4ed8!important;border:1px solid #bfdbfe;text-decoration:none!important;font-weight:900;white-space:nowrap}
.rac-today-shortcut:hover{background:#dbeafe;border-color:#93c5fd}
.rac-coach-shell .rac-page-head{padding:4px 0 8px;align-items:center}
.rac-coach-shell .rac-page-head h2{font-size:clamp(24px,3vw,32px)}
.rac-coach-shell .rac-eyebrow{color:#64748b;font-weight:900;letter-spacing:.1em}
.rac-coach-shell .rac-section-head{gap:14px}
.rac-coach-shell .rac-status-pill,.rac-coach-shell .rac-session-state{min-height:28px;padding:6px 10px;display:inline-flex;align-items:center;font-weight:900;line-height:1}
.rac-coach-shell .rac-session-tabs{position:sticky;top:72px;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}
.rac-coach-shell .rac-session-tabs a{min-height:42px;display:inline-flex;align-items:center;justify-content:center}
.rac-coach-shell .rac-daily-agenda .rac-agenda-session{margin:0 -4px;padding:16px 10px;border-bottom:1px solid #e7edf4}
.rac-coach-shell .rac-daily-agenda .rac-agenda-session:last-child{border-bottom:0}
.rac-coach-shell .rac-agenda-session:hover{background:#f8fbff;border-radius:14px}
.rac-coach-shell .rac-agenda-session>div:first-child strong{font-size:17px;color:var(--coach-ink)}
.rac-coach-shell .rac-agenda-badges span{min-height:28px;display:inline-flex;align-items:center}
.rac-coach-shell .rac-priority-card{min-height:154px!important}
.rac-coach-shell .rac-priority-card b{font-size:15px!important}
.rac-coach-shell .rac-upcoming-list li{padding:13px 0}
.rac-coach-shell .rac-upcoming-list a{border-radius:12px;padding:4px;text-decoration:none}
.rac-coach-shell .rac-upcoming-list a:hover{background:#f8fbff}
.rac-coach-shell .rac-att-chip{min-height:52px;font-size:15px}
.rac-coach-shell .rac-sticky-save,.rac-coach-shell .rac-finish-actions{bottom:12px;z-index:30}
.rac-coach-shell .rac-session-history-filters a{min-height:40px;display:inline-flex;align-items:center}
.rac-coach-shell .rac-session-history-filters a:hover{background:#f1f5f9}
.rac-coach-shell .rac-student-alert,.rac-coach-shell .rac-finish-review-row,.rac-coach-shell .rac-att-row{border-radius:var(--coach-radius)}

@media(max-width:900px){
  .rac-coach-shell .rac-topbar{gap:8px}
  .rac-coach-shell .rac-top-actions{gap:6px}
  .rac-coach-shell .rac-global-search{min-width:0}
  .rac-coach-shell .rac-user-chip>span:last-child{display:none}
  .rac-coach-shell .rac-today-shortcut{min-width:44px;padding:8px 11px}
}
@media(max-width:700px){
  .rac-coach-shell .rac-content{padding-left:10px!important;padding-right:10px!important}
  .rac-coach-shell .rac-topbar{position:sticky;top:0;z-index:70;padding:9px 10px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}
  .rac-coach-shell .rac-global-search{display:none}
  .rac-coach-shell .rac-top-actions .rac-quick-action,.rac-coach-shell .rac-top-actions .rac-top-icon:not(:first-of-type),.rac-coach-shell .rac-user-chip{display:none}
  .rac-coach-shell .rac-today-shortcut{margin-left:auto}
  .rac-coach-shell .rac-page-head{align-items:stretch;gap:10px}
  .rac-coach-shell .rac-page-head>.rac-btn{width:100%}
  .rac-coach-shell .rac-session-tabs{top:58px;padding:10px;margin-left:-2px;margin-right:-2px;overflow-x:auto}
  .rac-coach-shell .rac-session-tabs>div{flex-wrap:nowrap;min-width:max-content}
  .rac-coach-shell .rac-session-tabs a{min-width:118px}
  .rac-coach-shell .rac-dashboard-grid,.rac-coach-shell .rac-class-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rac-coach-shell .rac-dash-card{padding:14px 10px}
  .rac-coach-shell .rac-dash-card strong{font-size:25px}
  .rac-coach-shell .rac-agenda-session .rac-btn{min-height:48px}
  .rac-coach-shell .rac-priority-card{min-height:132px!important}
  .rac-coach-shell .rac-sticky-save{left:8px;right:8px;bottom:8px}
}
@media(max-width:480px){
  .rac-coach-shell .rac-dashboard-grid,.rac-coach-shell .rac-class-summary-grid{grid-template-columns:1fr 1fr}
  .rac-coach-shell .rac-card{padding:14px}
  .rac-coach-shell .rac-page-head h2{font-size:24px}
  .rac-coach-shell .rac-session-status-grid{gap:8px}
  .rac-coach-shell .rac-status-pill,.rac-coach-shell .rac-session-state{font-size:11px}
  .rac-coach-shell .rac-finish-review-row{padding:12px}
}


/* DEV7J.1 — Safe Phone Navigation Hotfix
   The drawer is intentionally limited to true phone widths. The existing
   desktop and tablet navigation systems remain untouched. */
.rac-mobile-menu-close,.rac-mobile-menu-overlay{display:none!important;visibility:hidden!important;pointer-events:none!important;}
.rac-search-center-link{display:inline-flex!important;align-items:center!important;gap:8px!important;min-height:42px!important;text-decoration:none!important;cursor:pointer!important;}
.rac-search-center-link span:last-child{font-weight:800!important;color:#334155!important;}

@media(max-width:700px){
  body.rac-mobile-nav-open{overflow:hidden!important;}
  .rac-mobile-menu{display:grid!important;place-items:center!important;flex:0 0 42px!important;cursor:pointer!important;z-index:10003!important;}

  /* Phone drawer overrides the older compact icon strip only at this width. */
  .rac-side.rac-operations-side{
    position:fixed!important;top:0!important;left:0!important;bottom:0!important;
    width:min(88vw,330px)!important;min-width:0!important;height:100dvh!important;min-height:100dvh!important;
    display:flex!important;flex-direction:column!important;overflow:hidden!important;
    transform:translateX(-105%)!important;transition:transform .22s ease!important;
    z-index:10004!important;box-shadow:22px 0 50px rgba(2,10,27,.28)!important;
    padding:14px 12px!important;
  }
  body.rac-mobile-nav-open .rac-side.rac-operations-side{transform:translateX(0)!important;}
  .rac-operations-side .rac-brand{display:flex!important;padding:4px 42px 14px 4px!important;}
  .rac-mobile-menu-close{
    display:grid!important;visibility:visible!important;pointer-events:auto!important;place-items:center!important;position:absolute!important;right:12px!important;top:12px!important;
    width:38px!important;height:38px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:12px!important;
    background:rgba(255,255,255,.08)!important;color:#fff!important;font-size:28px!important;line-height:1!important;cursor:pointer!important;
  }
  .rac-operations-nav{display:block!important;width:100%!important;flex:1 1 auto!important;overflow-y:auto!important;overflow-x:hidden!important;padding:6px 2px 14px!important;}
  .rac-menu-section{display:block!important;margin:0 0 10px!important;}
  .rac-side-section{display:block!important;padding:10px 10px 5px!important;}
  .rac-menu-section-items{display:block!important;}
  .rac-operations-nav a{width:100%!important;height:auto!important;min-height:48px!important;justify-content:flex-start!important;gap:12px!important;padding:11px 12px!important;margin:3px 0!important;flex:0 0 auto!important;border-radius:12px!important;}
  .rac-operations-nav .rac-menu-icon{width:24px!important;flex:0 0 24px!important;text-align:center!important;font-size:18px!important;}
  .rac-operations-nav .rac-nav-label{display:inline!important;white-space:normal!important;font-size:14px!important;font-weight:800!important;}
  .rac-side-footer{display:block!important;flex:0 0 auto!important;padding-top:10px!important;border-top:1px solid rgba(255,255,255,.12)!important;}
  .rac-collapse-menu{display:none!important;}
  .rac-side-logout{display:block!important;margin:0!important;}
  .rac-side-logout button{width:100%!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;min-height:48px!important;padding:11px 12px!important;border-radius:12px!important;background:rgba(255,255,255,.08)!important;color:#fff!important;border:0!important;font-weight:900!important;cursor:pointer!important;}
  .rac-side-logout .rac-nav-label{display:inline!important;}
  .rac-mobile-menu-overlay{display:block!important;visibility:hidden!important;pointer-events:none!important;position:fixed!important;inset:0!important;border:0!important;padding:0!important;background:rgba(2,10,27,.54)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .2s ease,visibility .2s ease!important;z-index:10002!important;}
  body.rac-mobile-nav-open .rac-mobile-menu-overlay{opacity:1!important;visibility:visible!important;pointer-events:auto!important;}
  .rac-layout.rac-app-shell,.rac-main{width:100%!important;min-width:0!important;}
}


/* DEV7J.2 — Always-visible phone logout
   The original sidebar logout remains for desktop. This duplicate mobile-only
   action sits directly below the brand so short phone viewports never hide it. */
.rac-mobile-logout-top{display:none!important;}
@media(max-width:700px){
  .rac-mobile-logout-top{display:block!important;flex:0 0 auto!important;margin:0 0 8px!important;padding:0 2px 10px!important;border-bottom:1px solid rgba(255,255,255,.12)!important;}
  .rac-mobile-logout-top button{width:100%!important;min-height:46px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;padding:10px 12px!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:12px!important;background:rgba(255,255,255,.08)!important;color:#fff!important;font-weight:900!important;cursor:pointer!important;}
  .rac-mobile-logout-top .rac-menu-icon{width:24px!important;text-align:center!important;font-size:18px!important;}
  /* Avoid showing a second logout at the very bottom of the phone drawer. */
  .rac-side-footer .rac-side-logout{display:none!important;}
}

/* FAMILY1 — New mobile-first Family Portal (no legacy parent UI) */
.rac-family-wrap{max-width:760px!important;margin:0 auto!important;padding:0!important;background:#f4f7f6;min-height:100vh;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#172522}
.rac-family-app{min-height:100vh;padding-bottom:86px}
.rac-family-topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:rgba(255,255,255,.96);border-bottom:1px solid #dfe8e4;backdrop-filter:blur(12px)}
.rac-family-topbar>div{display:flex;flex-direction:column;line-height:1.15}.rac-family-brand{font-size:10px;letter-spacing:.14em;font-weight:800;color:#527269}.rac-family-topbar strong{font-size:17px}
.rac-family-avatar,.rac-child-initial{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#176b55;color:#fff!important;text-decoration:none!important;font-weight:800}.rac-child-initial.large{width:64px;height:64px;font-size:24px}
.rac-family-main{padding:18px}.rac-family-welcome{padding:8px 2px 14px}.rac-family-welcome p{margin:0 0 4px;color:#527269;font-weight:700}.rac-family-welcome h1{font-size:30px;line-height:1.1;margin:0 0 9px;letter-spacing:-.03em}.rac-family-welcome span{color:#5f706b;line-height:1.5}
.rac-family-section{margin:18px 0 26px}.rac-family-section-title{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:10px}.rac-family-section-title h2{margin:2px 0 0;font-size:20px}.rac-family-section-title>a{font-weight:750;color:#176b55;text-decoration:none}.rac-family-kicker{font-size:10px;letter-spacing:.12em;font-weight:850;color:#668079}
.rac-family-empty,.rac-family-panel,.rac-family-progress-card,.rac-family-celebration{background:#fff;border:1px solid #dfe8e4;border-radius:18px;padding:18px;box-shadow:0 6px 22px rgba(24,64,53,.05)}.rac-family-empty.positive{background:#effaf5;border-color:#cae8da}.rac-family-empty p,.rac-family-panel p{color:#5b6e68;line-height:1.5}.rac-family-empty .rac-btn{display:inline-block;margin-top:7px}
.rac-family-action-list{display:grid;gap:9px}.rac-family-action-list>a{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#fff;border:1px solid #dfe8e4;border-radius:16px;padding:15px;text-decoration:none;color:inherit;box-shadow:0 5px 15px rgba(24,64,53,.04)}.rac-family-action-list strong{display:block}.rac-family-action-list p{margin:4px 0 0;color:#64756f;font-size:13px}.rac-family-action-list>a>span{color:#176b55;font-weight:800;white-space:nowrap}
.rac-family-child-grid{display:grid;gap:10px}.rac-family-child-card{display:flex;align-items:center;gap:13px;padding:14px;background:#fff;border:1px solid #dfe8e4;border-radius:18px;text-decoration:none!important;color:inherit!important}.rac-family-child-card>div{flex:1}.rac-family-child-card strong,.rac-family-child-card small{display:block}.rac-family-child-card small{color:#698079;margin-top:2px}.rac-family-child-card p{font-size:13px;margin:5px 0 0;color:#65756f}.rac-family-child-card b{font-size:24px;color:#7a918a}
.rac-family-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rac-family-quick-grid>a{min-height:132px;padding:16px;border-radius:18px;background:#fff;border:1px solid #dfe8e4;text-decoration:none!important;color:inherit!important;display:flex;flex-direction:column}.rac-family-quick-grid>a>span{font-size:23px;color:#176b55}.rac-family-quick-grid strong{margin-top:12px}.rac-family-quick-grid small{margin-top:5px;line-height:1.35;color:#667973}.rac-family-quick-grid.child-actions>a{min-height:108px}
.rac-family-bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:40;width:min(760px,100%);height:72px;background:#fff;border-top:1px solid #dbe6e2;display:grid;grid-template-columns:repeat(5,1fr);padding-bottom:env(safe-area-inset-bottom)}.rac-family-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none!important;color:#71837e!important}.rac-family-bottom-nav a span{font-size:22px;line-height:1}.rac-family-bottom-nav a small{font-size:11px;font-weight:700}.rac-family-bottom-nav a.active{color:#176b55!important}.rac-family-bottom-nav a.active span{transform:translateY(-1px)}
.rac-family-page-head{margin:2px 0 16px}.rac-family-page-head>a{display:inline-block;margin-bottom:12px;color:#176b55;text-decoration:none;font-weight:800}.rac-family-page-head h1{font-size:28px;line-height:1.1;margin:0 0 7px}.rac-family-page-head p{margin:0;color:#62756f;line-height:1.45}
.rac-family-panel{margin:12px 0}.rac-family-panel h2{font-size:19px;margin:0 0 9px}.rac-family-panel summary{cursor:pointer;display:flex;flex-direction:column;gap:2px;list-style:none}.rac-family-panel summary span{font-size:13px;color:#6b7e78}.rac-family-panel[open] summary{padding-bottom:15px;border-bottom:1px solid #e5ece9;margin-bottom:15px}
.rac-family-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rac-family-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:750;color:#41564f}.rac-family-form label.full{grid-column:1/-1}.rac-family-form input,.rac-family-form select,.rac-family-form textarea{width:100%;min-height:48px;border:1px solid #cbdad5;border-radius:12px;background:#fff;padding:11px 12px;font:inherit;color:#172522}.rac-family-form textarea{min-height:96px;resize:vertical}.rac-family-form button{grid-column:1/-1;min-height:50px}.rac-family-person{display:flex;align-items:center;gap:12px;margin:14px 0}.rac-family-person>span{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#e1f2eb;color:#176b55;font-weight:850}.rac-family-person small{display:block;color:#6b7e78;margin-top:3px}.rac-family-note{font-size:13px;color:#6b7e78!important}
.rac-family-hero-card{display:flex;align-items:center;gap:14px;padding:18px;background:linear-gradient(135deg,#176b55,#0d493b);color:#fff;border-radius:20px;margin-bottom:12px}.rac-family-hero-card h2{margin:0 0 3px}.rac-family-hero-card p{margin:0;color:#d8eee6}.rac-family-panel.inspiration{background:#fff8e9;border-color:#ead9ae}.rac-family-affirmation{margin-top:14px;padding:14px;border-radius:13px;background:#fff;border:1px dashed #d9bc74;font-weight:800;text-align:center;color:#634e1d}
.rac-family-chip-row{display:flex;gap:8px;overflow-x:auto;padding:0 0 12px}.rac-family-chip-row a{white-space:nowrap;border:1px solid #ccd9d5;background:#fff;border-radius:999px;padding:8px 14px;text-decoration:none;color:#40564f;font-weight:750}.rac-family-chip-row a.active{background:#176b55;color:#fff;border-color:#176b55}.rac-family-progress-card{margin-bottom:12px}.rac-family-progress-card h2{font-size:19px;margin:5px 0 8px}.rac-family-progress-card p{line-height:1.55;color:#425a52}
.rac-family-request-tabs{display:flex;gap:8px;overflow:auto;margin-bottom:10px}.rac-family-request-tabs a{padding:8px 13px;background:#e3efeb;color:#1c5e4c;border-radius:999px;text-decoration:none;font-weight:750}.rac-family-status-list{display:grid;gap:10px}.rac-family-status-list>div{position:relative;padding:13px;border:1px solid #e1e9e6;border-radius:13px}.rac-family-status-list p{margin:4px 0 0}.rac-family-status-list .status{display:inline-block;margin-top:8px;border-radius:999px;padding:5px 9px;background:#edf2f0;font-size:11px;font-weight:800}.rac-family-status-list .status.approved{background:#e0f5e8;color:#24623c}.rac-family-status-list .status.pending{background:#fff3d8;color:#7d5916}
.rac-family-celebration{text-align:center;background:linear-gradient(145deg,#fff6df,#fff);margin-bottom:12px}.rac-family-celebration>span{font-size:42px}.rac-family-celebration h2{margin:7px 0}.rac-family-celebration p{color:#6c624d;line-height:1.5}
.rac-family-message-list{display:grid;gap:10px}.rac-family-message-list article{padding:16px;background:#fff;border:1px solid #dde7e3;border-radius:16px}.rac-family-message-list article.unread{border-left:5px solid #176b55}.rac-family-message-list article>span{font-size:10px;letter-spacing:.1em;font-weight:850;color:#5c766d}.rac-family-message-list h2{font-size:17px;margin:5px 0}.rac-family-message-list p{color:#526760}.rac-family-message-list small{color:#768984}
.rac-family-more-list{display:grid;gap:9px}.rac-family-more-list>a{display:flex;align-items:center;gap:13px;padding:15px;background:#fff;border:1px solid #dce7e3;border-radius:16px;text-decoration:none!important;color:inherit!important}.rac-family-more-list>a>span{display:grid;place-items:center;width:42px;height:42px;background:#e5f2ed;border-radius:13px;font-size:20px;color:#176b55}.rac-family-more-list>a>div{flex:1}.rac-family-more-list strong,.rac-family-more-list small{display:block}.rac-family-more-list small{color:#6c7e79;margin-top:3px}.rac-family-more-list b{font-size:23px;color:#84948f}.rac-family-logout{margin:24px 0}.rac-family-logout button{width:100%;min-height:48px;border:1px solid #d7b6b6;background:#fff;color:#a03535;border-radius:14px;font-weight:800}
@media(min-width:700px){.rac-family-main{padding:24px 30px}.rac-family-welcome h1{font-size:36px}.rac-family-child-grid{grid-template-columns:1fr 1fr}.rac-family-quick-grid{grid-template-columns:repeat(4,1fr)}.rac-family-form{grid-template-columns:1fr 1fr}.rac-family-bottom-nav{border-left:1px solid #dbe6e2;border-right:1px solid #dbe6e2}}
@media(max-width:520px){.rac-family-main{padding:15px}.rac-family-welcome h1{font-size:27px}.rac-family-quick-grid{grid-template-columns:1fr 1fr}.rac-family-form{grid-template-columns:1fr}.rac-family-form label.full,.rac-family-form button{grid-column:1}.rac-family-topbar{padding:12px 15px}.rac-family-page-head h1{font-size:25px}}
/* FAMILY2 — mobile family relationships and child profiles */
.rac-family-permissions{border:0;margin:0;padding:0;display:grid;gap:10px}
.rac-family-permissions legend{font-weight:800;margin-bottom:8px}
.rac-family-permissions label{display:flex!important;align-items:center;gap:10px;background:#f7f8fb;border:1px solid #e5e7eb;border-radius:12px;padding:12px;font-weight:600}
.rac-family-permissions input{width:20px!important;height:20px;margin:0}
.rac-family-panel details{margin-top:14px;border-top:1px solid #e6e8ee;padding-top:14px}
.rac-family-panel details summary{cursor:pointer;display:flex;flex-direction:column;gap:3px}
.rac-family-panel details summary span{font-size:13px;color:#667085;font-weight:500}
@media(max-width:700px){
 .rac-family-form{grid-template-columns:1fr!important}
 .rac-family-form .full,.rac-family-permissions{grid-column:1!important}
 .rac-family-person{align-items:flex-start}
 .rac-family-person>div{min-width:0}
 .rac-family-person small,.rac-family-person p{overflow-wrap:anywhere}
}
/* FAMILY3 — Parent-safe progress, coach encouragement, and inspiration */
.rac-family-progress-hero{display:flex;align-items:center;gap:14px;padding:18px;border-radius:20px;background:linear-gradient(135deg,#176b55,#0d493b);color:#fff;margin-bottom:12px}.rac-family-progress-hero h2{margin:2px 0 5px;font-size:22px}.rac-family-progress-hero p{margin:0;color:#d9eee7}.rac-family-progress-hero .rac-family-kicker{color:#bfe3d7}
.rac-family-progress-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 20px}.rac-family-progress-summary>div{background:#fff;border:1px solid #dfe8e4;border-radius:15px;padding:13px 8px;text-align:center}.rac-family-progress-summary strong{display:block;font-size:23px;color:#176b55}.rac-family-progress-summary span{display:block;font-size:11px;color:#61756e;font-weight:750;margin-top:3px}
.rac-family-skill-list{display:grid;gap:9px}.rac-family-skill-list article{display:grid;grid-template-columns:1fr auto;gap:7px 10px;align-items:center;padding:14px;background:#fff;border:1px solid #dfe8e4;border-radius:15px}.rac-family-skill-list article strong,.rac-family-skill-list article small{display:block}.rac-family-skill-list article small{color:#74847f;margin-top:3px}.rac-family-skill-list article>span,.rac-family-status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:6px 9px;background:#edf4f1;color:#315e51;font-size:11px;font-weight:850}.rac-family-skill-list article>span.confident{background:#def3e7;color:#24623d}.rac-family-skill-list article>span.practicing{background:#fff1cf;color:#76550d}.rac-family-skill-list article>span.just-getting-started{background:#e8eefb;color:#3e568a}.rac-family-skill-list article p{grid-column:1/-1;margin:2px 0 0;color:#5c6f68;font-size:13px}
.rac-family-inspire-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.rac-family-inspire-grid>div{background:#fff;border:1px solid #eadfbd;border-radius:14px;padding:13px}.rac-family-inspire-grid p{margin:6px 0 0!important}
@media(max-width:520px){.rac-family-progress-summary{gap:6px}.rac-family-progress-summary>div{padding:11px 5px}.rac-family-progress-summary strong{font-size:20px}.rac-family-inspire-grid{grid-template-columns:1fr}.rac-family-skill-list article{grid-template-columns:1fr}.rac-family-skill-list article>span{justify-self:start}}

/* FAMILY4 — Growth Story Engine */
.rac-recognition-form{display:grid;gap:18px}.rac-recognition-form>label{display:grid;gap:7px}.rac-recognition-form select,.rac-recognition-form textarea{width:100%;min-height:46px}.rac-recognition-form textarea{min-height:92px}.rac-trait-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.rac-trait-picker label{display:block;cursor:pointer}.rac-trait-picker input{position:absolute;opacity:0;pointer-events:none}.rac-trait-picker span{display:flex;flex-direction:column;gap:4px;height:100%;padding:14px;border:2px solid #dce7e3;border-radius:15px;background:#fff}.rac-trait-picker small{color:#61736d;line-height:1.35}.rac-trait-picker input:checked+span{border-color:#176b55;background:#effaf5;box-shadow:0 0 0 3px rgba(23,107,85,.1)}.rac-parent-visible-toggle{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:10px!important;padding:14px;border-radius:14px;background:#f2f8f6}.rac-parent-visible-toggle input{margin-top:4px}.rac-parent-visible-toggle span{display:flex;flex-direction:column;gap:3px}.rac-parent-visible-toggle small{color:#62756f}.rac-recognition-history{display:grid;gap:10px}.rac-recognition-history article{border:1px solid #dfe8e4;border-radius:14px;padding:13px}.rac-recognition-history article>div{display:flex;justify-content:space-between;gap:12px}.rac-recognition-history span{font-weight:800;color:#176b55}.rac-recognition-history p{margin:8px 0;color:#41574f}.rac-recognition-history small{color:#71817c}
.rac-growth-highlight-list{display:grid;gap:10px}.rac-growth-highlight-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px;background:#fff;border:1px solid #dfe8e4;border-radius:17px;text-decoration:none;color:#213b33;box-shadow:0 5px 18px rgba(24,64,53,.05)}.rac-growth-highlight-card p{margin:4px 0;color:#425a52;line-height:1.42}.rac-growth-highlight-card small{color:#6b7d77}.rac-growth-highlight-card>b{font-size:24px;color:#176b55}.rac-growth-story-overview{display:grid;grid-template-columns:1.5fr 1fr;gap:12px;margin:12px 0 22px}.rac-growth-story-feature,.rac-growth-spotlight{background:#fff;border:1px solid #dfe8e4;border-radius:19px;padding:18px;box-shadow:0 6px 22px rgba(24,64,53,.05)}.rac-growth-story-feature{background:linear-gradient(145deg,#f0faf6,#fff)}.rac-growth-story-feature h2,.rac-growth-spotlight h2{margin:7px 0}.rac-growth-story-feature p,.rac-growth-spotlight p{color:#425a52;line-height:1.55}.rac-growth-story-feature small{color:#687b74}.rac-growth-spotlight{text-align:center}.rac-growth-spotlight-icon{display:grid;place-items:center;width:52px;height:52px;margin:10px auto;border-radius:50%;background:#fff1b8;color:#845f00;font-size:25px}.rac-growth-timeline{position:relative;display:grid;gap:0}.rac-growth-timeline:before{content:"";position:absolute;left:21px;top:22px;bottom:22px;width:2px;background:#d9e8e2}.rac-growth-timeline article{position:relative;display:grid;grid-template-columns:44px 1fr;gap:12px;padding:0 0 18px}.rac-growth-timeline-icon{position:relative;z-index:1;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#176b55;color:#fff;font-size:18px;box-shadow:0 0 0 5px #f5faf8}.rac-growth-timeline article>div:last-child{background:#fff;border:1px solid #dfe8e4;border-radius:16px;padding:14px}.rac-growth-timeline span{font-size:11px;font-weight:800;color:#75857f;text-transform:uppercase;letter-spacing:.05em}.rac-growth-timeline h3{margin:4px 0 5px;font-size:17px}.rac-growth-timeline p{margin:0;color:#425a52;line-height:1.5}.rac-skill-details>summary{cursor:pointer}.rac-skill-details[open]>summary{margin-bottom:16px}
@media(max-width:700px){.rac-trait-picker{grid-template-columns:1fr}.rac-growth-story-overview{grid-template-columns:1fr}.rac-recognition-history article>div{display:block}.rac-recognition-history span{display:block;margin-top:3px}.rac-growth-story-feature,.rac-growth-spotlight{padding:16px}.rac-growth-timeline article>div:last-child{padding:13px}.rac-recognition-card{padding-bottom:78px}}

/* FAMILY5 — Wins & Celebrations Engine */
.rac-celebration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.rac-celebration-grid article{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;background:linear-gradient(145deg,#fffdf4,#fff);border:1px solid #eadfbd;border-radius:17px;padding:14px;box-shadow:0 5px 18px rgba(84,64,14,.05)}.rac-celebration-badge{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:#ffeaa0;color:#6f5100;font-size:20px;font-weight:900;box-shadow:inset 0 0 0 4px rgba(255,255,255,.7)}.rac-celebration-grid strong{display:block;font-size:15px}.rac-celebration-grid p{margin:4px 0;color:#5d5a4c;font-size:13px;line-height:1.4}.rac-celebration-grid small{color:#82795c}.rac-next-milestone{position:relative;display:grid;grid-template-columns:1fr auto;gap:8px 14px;align-items:center;margin-top:12px;padding:16px;border:1px solid #dfe8e4;border-radius:18px;background:#fff}.rac-next-milestone h3{margin:4px 0}.rac-next-milestone p{margin:0;color:#5d6f68}.rac-next-milestone>strong{font-size:18px;color:#176b55}.rac-milestone-meter{grid-column:1/-1;height:9px;border-radius:999px;background:#e5eeea;overflow:hidden}.rac-milestone-meter span{display:block;height:100%;border-radius:999px;background:#176b55}.rac-growth-timeline article:has(h3:first-child){border-color:#eadfbd}
@media(max-width:700px){.rac-celebration-grid{grid-template-columns:1fr}.rac-celebration-grid article{padding:13px}.rac-next-milestone{grid-template-columns:1fr auto}}

/* FAMILY6 — Parent Operations Engine */
.rac-family-session-list>section{margin:0 0 22px}.rac-family-session-list>section>h2{font-size:17px;margin:0 0 10px}.rac-family-session-card{display:grid;grid-template-columns:74px minmax(0,1fr) auto;gap:12px;align-items:center;background:#fff;border:1px solid #e6e9ef;border-radius:16px;padding:14px;margin-bottom:10px;box-shadow:0 6px 18px rgba(20,30,50,.05)}.rac-session-time strong,.rac-session-time small{display:block}.rac-session-time strong{font-size:15px}.rac-session-time small{font-size:11px;color:#6b7280}.rac-session-body span{display:block;font-size:12px;font-weight:800;color:#5b21b6;text-transform:uppercase;letter-spacing:.04em}.rac-session-body h3{font-size:16px;margin:2px 0}.rac-session-body small{color:#6b7280}.rac-session-action{font-size:12px;font-weight:800;text-decoration:none;background:#f3f0ff;padding:9px 11px;border-radius:12px;white-space:nowrap}.rac-family-alert{padding:12px 14px;border-radius:13px;margin:0 0 14px;font-weight:700}.rac-family-alert.success{background:#ecfdf3;color:#166534}.rac-family-alert.error{background:#fef2f2;color:#991b1b}.rac-family-status-list>div{position:relative;padding-right:110px}.rac-family-status-list .status{position:absolute;right:0;top:0;max-width:105px;text-align:center}.rac-family-status-list .status.pending_review,.rac-family-status-list .status.submitted{background:#fff7ed;color:#9a3412}.rac-family-status-list .status.approved,.rac-family-status-list .status.recorded,.rac-family-status-list .status.completed{background:#ecfdf3;color:#166534}.rac-family-status-list .status.declined,.rac-family-status-list .status.canceled{background:#fef2f2;color:#991b1b}.rac-family-status-list .status.needs_information{background:#eff6ff;color:#1d4ed8}@media(max-width:640px){.rac-family-session-card{grid-template-columns:64px minmax(0,1fr)}.rac-session-action{grid-column:1/-1;text-align:center}.rac-family-status-list>div{padding-right:0}.rac-family-status-list .status{position:static;display:inline-block;margin-top:8px}}

/* FAMILY6.1 — Software-admin parent operations */
.rac-request-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.rac-request-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.rac-request-card-head h3{margin:0 0 4px}.rac-request-card-head p{margin:0}.rac-status-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef2ff;font-size:12px;font-weight:800;white-space:nowrap}.rac-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width:700px){.rac-request-grid{grid-template-columns:1fr}.rac-request-card-head{flex-direction:column}.rac-status-pill{align-self:flex-start}.rac-subtabs{overflow-x:auto;white-space:nowrap}}

/* FAMILY6.2 — discoverable mobile navigation and request choices */
.rac-family-top-actions{display:flex;align-items:center;gap:9px}
.rac-family-menu-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 13px;border:1px solid #d4e3de;border-radius:999px;background:#fff;color:#176b55!important;text-decoration:none!important;font-size:13px;font-weight:800}
.rac-family-request-choice-grid{display:grid;grid-template-columns:1fr;gap:10px}
.rac-family-request-choice-grid>a{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:14px;background:#fff;border:1px solid #dce7e3;border-radius:15px;text-decoration:none!important;color:#193b32!important;box-shadow:0 4px 12px rgba(24,70,57,.04)}
.rac-family-request-choice-grid>a>span{width:42px;height:42px;border-radius:13px;background:#edf7f3;display:flex;align-items:center;justify-content:center;color:#176b55;font-size:20px;font-weight:900}
.rac-family-request-choice-grid>a strong{display:block;font-size:15px;margin-bottom:3px}.rac-family-request-choice-grid>a small{display:block;color:#647872;line-height:1.35}.rac-family-request-choice-grid>a>b{font-size:22px;color:#176b55}
.rac-family-request-choice-grid>a.active{border-color:#176b55;box-shadow:0 0 0 2px rgba(23,107,85,.1)}
@media(min-width:700px){.rac-family-request-choice-grid{grid-template-columns:1fr 1fr}}
@media(min-width:900px){.rac-family-menu-button{display:none!important}}
