*{box-sizing:border-box}.iema-app,.iema-login-wrap{--ink:#0b1324;--muted:#64748b;--line:#e2e8f0;--accent:#2563eb;--navy:#07111f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink)}.iema-app{max-width:1180px;margin:28px auto;padding:0 20px}.iema-top{background:linear-gradient(135deg,#07111f,#122642);color:white;padding:30px;border-radius:24px;display:flex;justify-content:space-between;gap:20px;align-items:center;box-shadow:0 20px 60px #0f172a22}.iema-top span{font-size:12px;letter-spacing:.2em;font-weight:900;color:#93c5fd}.iema-top h1{margin:5px 0;font-size:clamp(28px,4vw,46px)}.iema-top p{margin:0;color:#cbd5e1}.iema-top a{color:white;text-decoration:none;border:1px solid #ffffff44;border-radius:10px;padding:10px 14px}.iema-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.iema-stat-grid>div,.iema-panel{background:white;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 8px 30px #0f172a0c}.iema-stat-grid strong{font-size:34px;display:block}.iema-stat-grid small{color:var(--muted)}.iema-panel{margin:18px 0}.iema-panel h2{margin-top:0}.iema-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.iema-tabs a{padding:10px 14px;background:#eef2ff;border-radius:10px;text-decoration:none;color:#334155;font-weight:750}.iema-tabs a.active{background:#0f172a;color:#fff}.iema-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.iema-ath-card{border:1px solid var(--line);border-radius:16px;padding:18px;text-decoration:none;color:inherit}.iema-ath-card span{font-size:10px;font-weight:900;letter-spacing:.12em;color:#2563eb}.iema-ath-card h3{margin:8px 0}.iema-ath-card p,.iema-ath-card b{font-size:13px;color:var(--muted)}.iema-split{display:grid;grid-template-columns:1fr 1fr;gap:28px}.iema-list{display:grid;gap:8px}.iema-list>a,.iema-list>div,.iema-history>div{border:1px solid var(--line);padding:13px;border-radius:12px;display:flex;justify-content:space-between;gap:12px;text-decoration:none;color:inherit}.iema-list small,.iema-history em{color:var(--muted);font-style:normal}.iema-form{display:grid;gap:12px}.iema-form label,.iema-wellness label{display:grid;gap:6px;font-size:13px;font-weight:700}.iema-form input,.iema-form select,.iema-form textarea,.iema-wellness input,.iema-wellness textarea{width:100%;padding:11px;border:1px solid #cbd5e1;border-radius:10px;font:inherit}.iema-btn{border:0;background:#2563eb;color:#fff;border-radius:11px;padding:12px 16px;font-weight:850;cursor:pointer;text-decoration:none;display:inline-block}.iema-workout{border:1px solid var(--line);border-radius:18px;overflow:hidden}.iema-workout-head{padding:18px;background:#f8fafc;display:flex;justify-content:space-between}.iema-workout-head span{font-size:11px;color:#2563eb;font-weight:900;text-transform:uppercase}.iema-workout-head h3{margin:3px 0}.iema-workout-head b{font-size:11px}.iema-exercise{display:flex;gap:14px;padding:15px 18px;border-top:1px solid var(--line);align-items:center}.iema-exercise input{width:22px;height:22px}.iema-exercise span{display:grid}.iema-exercise small{color:var(--muted)}.iema-wellness{padding:18px;background:#f8fafc;display:grid;grid-template-columns:150px 150px 1fr auto;gap:12px;align-items:end}.iema-save-state{font-size:12px}.iema-login-wrap{max-width:1000px;margin:70px auto;display:grid;grid-template-columns:1.15fr .85fr;box-shadow:0 25px 80px #0f172a22;border-radius:28px;overflow:hidden}.iema-login-brand{background:linear-gradient(135deg,#07111f,#183a68);color:#fff;padding:60px}.iema-login-brand span{font-size:12px;letter-spacing:.2em;font-weight:900;color:#93c5fd}.iema-login-brand h1{font-size:46px;margin:8px 0}.iema-login-brand p{color:#cbd5e1;font-size:18px}.iema-login-card{padding:50px;background:#fff}.iema-login-card form{display:grid;gap:14px}.iema-login-card input[type=text],.iema-login-card input[type=password]{width:100%;padding:13px;border:1px solid #cbd5e1;border-radius:10px}.iema-login-card input[type=submit]{background:#2563eb;color:white;border:0;border-radius:10px;padding:13px;font-weight:800}.iema-empty,.iema-notice{padding:20px;border-radius:14px;background:#f8fafc;color:#64748b}.iema-history{display:grid;gap:8px}.iema-history>div{display:grid;grid-template-columns:80px 1fr 100px}@media(max-width:800px){.iema-stat-grid,.iema-card-grid,.iema-split,.iema-login-wrap{grid-template-columns:1fr}.iema-wellness{grid-template-columns:1fr 1fr}.iema-top{align-items:flex-start}.iema-login-wrap{margin:20px}.iema-login-brand{padding:36px}.iema-login-card{padding:30px}}
/* v0.4.0 Plan Builder */
.iema-builder-head{display:flex;gap:24px;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.iema-kicker{font-size:12px;font-weight:800;letter-spacing:.16em;opacity:.65}.iema-wizard-form{max-width:none}.iema-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.iema-check{display:flex!important;gap:10px;align-items:flex-start}.iema-check input{width:auto!important;margin-top:4px}.iema-safety-note{padding:16px 18px;border-radius:14px;background:#eef6ff;border:1px solid #bfdbfe;margin:16px 0;line-height:1.5}.iema-safety-note.warning{background:#fff7ed;border-color:#fdba74}.iema-btn-big{padding:14px 20px;font-size:16px}.iema-btn-ghost{background:transparent!important;border:1px solid currentColor}.iema-library-title{margin-top:32px}.iema-plan-weeks>h3{margin:30px 0 12px}.iema-week-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.iema-day-card{border:1px solid #e2e8f0;border-radius:18px;padding:18px;background:#fff}.iema-day-card>span{font-size:11px;font-weight:800;letter-spacing:.13em;opacity:.55}.iema-day-card h4{margin:6px 0 2px}.iema-day-card small{opacity:.7}.iema-day-card ul{padding-left:18px}.iema-day-card li{margin:8px 0}.iema-day-card em{display:block;font-style:normal;font-size:12px;opacity:.65}.iema-day-card p{font-size:12px;opacity:.72}.iema-inline-form,.iema-apply-form{margin-top:28px}.iema-inline-form small{display:block;margin-top:8px;opacity:.65}.iema-approved{margin-top:26px;padding:14px 16px;border-radius:14px;background:#ecfdf5;border:1px solid #a7f3d0;font-weight:800}
@media(max-width:800px){.iema-form-grid,.iema-week-grid{grid-template-columns:1fr}.iema-builder-head{flex-direction:column}.iema-builder-head .iema-btn{width:100%;text-align:center}}

/* v0.5.2 logout visibility */
.iema-top .iema-logout{display:inline-flex!important;align-items:center;justify-content:center;background:#fff!important;color:#07111f!important;border:0!important;font-weight:900!important;padding:12px 18px!important;box-shadow:0 8px 24px #0002;white-space:nowrap}.iema-top .iema-logout:hover{transform:translateY(-1px)}
@media(max-width:800px){.iema-top .iema-logout{width:100%;margin-top:12px}}

/* v0.6.1 account profiles */
.iema-app{--accent-soft:#60a5fa}.iema-top{background:linear-gradient(135deg,var(--navy),color-mix(in srgb,var(--accent) 38%,var(--navy)))}.iema-tabs a.active,.iema-btn{background:var(--accent)}.iema-ath-card span,.iema-workout-head span{color:var(--accent)}
.iema-profile-link{display:flex!important;align-items:center;gap:10px;background:#ffffff14!important;border:1px solid #ffffff2b!important;padding:8px 12px!important;border-radius:16px!important;min-width:170px}.iema-profile-link img{width:42px;height:42px;object-fit:cover;border-radius:50%;border:2px solid #fff}.iema-profile-link span{display:flex!important;flex-direction:column;letter-spacing:0!important;color:#fff!important}.iema-profile-link b{font-size:13px}.iema-profile-link small{font-size:11px;color:#cbd5e1}
.iema-profile-layout{display:grid;grid-template-columns:250px 1fr;gap:28px}.iema-profile-card{text-align:center}.iema-profile-avatar{width:150px;height:150px;border-radius:50%;object-fit:cover;border:6px solid #fff;box-shadow:0 12px 30px #0f172a24}.iema-role-chip{display:inline-block;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,white);color:var(--accent);font-weight:850;font-size:12px}.iema-profile-card p{color:var(--muted);font-size:13px;line-height:1.5}.iema-theme-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:8px 0 18px}.iema-theme-choice{border:1px solid var(--line);border-radius:14px;padding:10px;cursor:pointer;display:grid!important;grid-template-columns:auto 1fr;align-items:center;gap:8px!important}.iema-theme-choice input{width:auto!important}.iema-theme-swatch{width:34px;height:34px;border-radius:50%;display:block;background:linear-gradient(135deg,var(--swatch-dark),var(--swatch))}.iema-theme-choice b{font-size:12px;grid-column:2}.iema-account h2{margin-top:24px}.iema-account h2:first-child{margin-top:0}
@media(max-width:800px){.iema-profile-layout{grid-template-columns:1fr}.iema-theme-grid{grid-template-columns:repeat(2,1fr)}.iema-profile-link{min-width:0}.iema-profile-link span{display:none!important}}
.iema-plugin-version{font-size:11px;font-weight:700;letter-spacing:.08em;opacity:.68;margin-left:8px;white-space:nowrap}.iema-help{display:block;margin-top:-6px;margin-bottom:12px;opacity:.7;font-size:12px}

/* v0.6.4 athlete identity + avatar editor */
.iema-athlete-identity{display:flex;align-items:center;gap:12px}.iema-athlete-identity img{width:58px;height:58px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 4px 14px #0f172a1f}.iema-athlete-identity h3{margin:3px 0 0}.iema-athlete-row{justify-content:flex-start!important;align-items:center!important}.iema-athlete-row img{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:0 0 auto}.iema-athlete-row>span{display:flex;flex-direction:column;min-width:0}.iema-athlete-row small{text-transform:capitalize}.iema-athlete-detail-head{display:flex;align-items:center;gap:18px;margin-bottom:18px}.iema-athlete-detail-head img{width:96px;height:96px;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:0 10px 30px #0f172a20}.iema-athlete-detail-head h2{margin:0 0 4px}.iema-athlete-detail-head p{margin:0;color:var(--muted)}
.iema-avatar-editor{border:1px solid var(--line);border-radius:18px;padding:16px;background:#f8fafc;display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:18px;align-items:center}.iema-avatar-crop-stage{position:relative;aspect-ratio:1/1;width:100%;max-width:320px;border-radius:18px;overflow:hidden;background:#e2e8f0;box-shadow:inset 0 0 0 1px #cbd5e1}.iema-avatar-crop-stage canvas{width:100%;height:100%;display:block;cursor:grab;touch-action:none}.iema-avatar-crop-stage canvas.is-dragging{cursor:grabbing}.iema-avatar-crop-ring{position:absolute;inset:8%;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 999px #07111f55,0 0 0 1px #0003 inset;pointer-events:none}.iema-avatar-editor-controls{display:grid;gap:14px}.iema-avatar-editor-controls label{display:grid;gap:6px}.iema-avatar-editor-controls input[type=range]{padding:0;border:0}.iema-current-avatar{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.iema-current-avatar img{width:52px;height:52px;border-radius:50%;object-fit:cover}.iema-current-avatar span{font-weight:800}
@media(max-width:800px){.iema-avatar-editor{grid-template-columns:1fr}.iema-avatar-crop-stage{margin:auto}.iema-athlete-detail-head{align-items:flex-start}.iema-athlete-detail-head img{width:78px;height:78px}}

/* v0.6.5 athlete roster team assignments */
.iema-athlete-roster-card{align-items:flex-start!important;padding:15px!important;gap:14px!important}.iema-athlete-roster-card>img{width:58px!important;height:58px!important;margin-top:2px}.iema-athlete-roster-copy{display:grid!important;gap:9px!important;flex:1;min-width:0}.iema-athlete-name-line{display:flex!important;align-items:center;justify-content:space-between;gap:12px}.iema-athlete-name-line strong{font-size:15px}.iema-athlete-name-line small{font-size:10px;font-weight:850;padding:4px 7px;border-radius:999px;background:#f1f5f9;white-space:nowrap}.iema-athlete-team{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;margin-top:2px}.iema-athlete-team>div{display:grid;gap:2px;min-width:0}.iema-athlete-team span{font-size:10px!important;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.iema-athlete-team strong{font-size:12px;line-height:1.35;color:#334155;overflow-wrap:anywhere}.iema-athlete-detail-head+.iema-athlete-team{padding:12px 14px;margin:0 0 18px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}
@media(max-width:600px){.iema-athlete-team{grid-template-columns:1fr}.iema-athlete-name-line{align-items:flex-start;flex-direction:column;gap:4px}}
/* v0.6.7 athlete date-of-birth and age display */
.iema-athlete-age{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 0;color:var(--muted);font-size:12px}.iema-athlete-age span{display:inline-flex;gap:4px;align-items:center}.iema-athlete-age b{color:var(--text)}.iema-athlete-roster-card .iema-athlete-age{margin-top:6px}
/* v0.7.0 Plan assignment */
.iema-assignment-box{margin:22px 0;padding:20px;border:2px solid color-mix(in srgb,var(--accent) 35%,#e2e8f0);border-radius:18px;background:color-mix(in srgb,var(--accent) 6%,white)}
.iema-assignment-box h3{margin:5px 0 4px}.iema-assignment-box p{margin:0 0 14px;color:var(--muted)}


/* v0.8.0 studio identity + enhanced personalization */
.iema-app{background:var(--surface-2,#f6f7fb);border-radius:28px;padding-top:20px;padding-bottom:28px}
.iema-stat-grid>div,.iema-panel{background:color-mix(in srgb,var(--surface,#fff) calc(var(--card-alpha,1)*100%),transparent);border-radius:var(--card-radius,18px);padding:var(--panel-pad,22px);color:var(--ink);backdrop-filter:blur(14px)}
.iema-panel h2,.iema-panel h3,.iema-stat-grid strong{color:var(--ink)}
.iema-portal-brand{display:flex;align-items:center;gap:16px}.iema-studio-logo{width:64px;height:64px;border-radius:16px;object-fit:cover;background:#fff;padding:5px}.iema-studio-name{margin-top:5px;font-size:14px;font-weight:850;color:#fff;letter-spacing:.02em}.iema-plugin-version{opacity:.8;margin-left:6px}
.iema-personalize-preview{padding:18px;border:1px dashed var(--line);border-radius:var(--card-radius);background:var(--surface-2);margin:8px 0 18px}.iema-preview-card{background:linear-gradient(135deg,var(--navy),color-mix(in srgb,var(--accent) 45%,var(--navy)));border-radius:var(--card-radius);padding:22px;color:white;display:grid;gap:5px}.iema-preview-card span{font-size:10px;letter-spacing:.18em;font-weight:900;color:var(--accent-soft)}.iema-preview-card strong{font-size:22px}.iema-preview-card small{color:#cbd5e1}
.iema-studio-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.iema-studio-logo-preview{display:block;max-width:180px;max-height:140px;object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:18px;padding:10px;margin:10px 0 18px}.iema-studio-settings h3{margin-top:18px}.iema-section-head p{color:var(--muted)}
@media(max-width:800px){.iema-studio-settings-grid{grid-template-columns:1fr}.iema-portal-brand{align-items:flex-start}.iema-studio-logo{width:52px;height:52px}.iema-app{border-radius:0;padding-left:14px;padding-right:14px;margin-top:0}}

/* v0.8.1 studio branding */
.iema-app{background:linear-gradient(180deg,color-mix(in srgb,var(--studio-accent,var(--accent)) 5%,transparent),transparent 260px)}
.iema-top{border-top:5px solid var(--studio-accent,var(--accent));background:linear-gradient(135deg,var(--navy) 0%,color-mix(in srgb,var(--studio-accent,var(--accent)) 48%,var(--navy)) 100%)}
.iema-studio-logo{width:78px;height:78px;border-radius:18px;object-fit:contain;background:#fff;padding:7px;border:2px solid color-mix(in srgb,var(--studio-accent,var(--accent)) 45%,white);box-shadow:0 10px 28px #0003}
.iema-tabs a.active,.iema-btn{background:var(--accent)}
.iema-tabs a:not(.active):hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,#fff)}
.iema-panel{border-top-color:color-mix(in srgb,var(--accent) 28%,var(--line))}
.iema-studio-accent-note{display:flex;align-items:center;gap:12px;padding:13px 14px;margin:8px 0 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.iema-studio-accent-note strong,.iema-studio-accent-note small{display:block}.iema-studio-accent-note small{color:var(--muted);margin-top:2px}.iema-accent-dot{width:28px;height:28px;border-radius:50%;box-shadow:0 0 0 4px #fff,0 0 0 5px var(--line);flex:0 0 auto}
@media(max-width:800px){.iema-studio-logo{width:58px;height:58px}}


/* v0.8.2 studio-led portal visual system */
.iema-top{background:linear-gradient(125deg,#000 0%,#000 48%,color-mix(in srgb,var(--studio-accent,var(--accent)) 88%,#000) 100%)!important;border-top:0!important}
.iema-portal-brand>div{display:flex;flex-direction:column;align-items:flex-start}
.iema-studio-name{order:-2;margin:0 0 4px!important;font-size:clamp(22px,3vw,34px)!important;line-height:1!important;font-weight:1000!important;letter-spacing:.045em!important;text-transform:uppercase;color:var(--studio-accent,var(--accent))!important;font-family:Impact,"Arial Black",Inter,system-ui,sans-serif}
.iema-account-label,.iema-top .iema-account-label{order:-1;font-size:10px!important;letter-spacing:.22em!important;font-weight:900!important;color:#fff!important;opacity:.92}
.iema-plugin-version{color:#fff!important;opacity:.7!important}
.iema-top h1{margin:8px 0 4px!important}
.iema-personalize-preview{background:var(--surface-2)!important}
.iema-preview-card{background:linear-gradient(125deg,#000 0%,#000 55%,color-mix(in srgb,var(--studio-accent,var(--accent)) 82%,#000) 100%)!important}
.iema-preview-card span{color:#fff!important}.iema-preview-card strong{color:var(--studio-accent,var(--accent))!important}
.iema-mode-only{grid-template-columns:minmax(220px,360px)!important}
/* Dancer identity cards: black base, studio accent only for emphasis */
.iema-ath-card{background:#050505!important;border-color:#222!important;color:#fff!important;box-shadow:0 12px 28px #0002;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.iema-ath-card:hover{transform:translateY(-2px);border-color:var(--studio-accent,var(--accent))!important;box-shadow:0 16px 34px #0003}
.iema-ath-card h3,.iema-ath-card p,.iema-ath-card b,.iema-ath-card strong{color:#fff!important}
.iema-ath-card span{color:var(--studio-accent,var(--accent))!important}
.iema-ath-card .iema-athlete-age,.iema-ath-card .iema-athlete-age span,.iema-ath-card small{color:#cfcfcf!important}
.iema-ath-card b{color:var(--studio-accent,var(--accent))!important}
.iema-ath-card .iema-athlete-identity img{border-color:var(--studio-accent,var(--accent))!important}
.iema-athlete-roster-card{background:#050505!important;border-color:#222!important;color:#fff!important}
.iema-athlete-roster-card strong,.iema-athlete-roster-card .iema-athlete-team strong{color:#fff!important}
.iema-athlete-roster-card .iema-athlete-team span,.iema-athlete-roster-card .iema-athlete-age,.iema-athlete-roster-card .iema-athlete-age span{color:#cfcfcf!important}
.iema-athlete-roster-card .iema-athlete-name-line small{background:var(--studio-accent,var(--accent))!important;color:#000!important}
.iema-athlete-roster-card.active,.iema-athlete-roster-card:hover{border-color:var(--studio-accent,var(--accent))!important}
@media(max-width:800px){.iema-studio-name{font-size:23px!important}.iema-account-label{font-size:9px!important}}

/* v0.9.0 Studio scheduling */
.iema-calendar{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--surface)}
.iema-calendar-title{padding:14px 16px;font-weight:900;font-size:18px;border-bottom:1px solid var(--line)}
.iema-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.iema-calendar-head b{padding:9px;text-align:center;font-size:11px;letter-spacing:.08em;color:var(--muted);border-bottom:1px solid var(--line)}
.iema-calendar-day{min-height:105px;padding:8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}
.iema-calendar-day:nth-child(7n){border-right:0}.iema-calendar-day.muted{opacity:.38}
.iema-calendar-day>strong{display:block;margin-bottom:6px}.iema-calendar-day>span{display:block;background:color-mix(in srgb,var(--studio-accent) 18%,#111);color:#fff;border-left:3px solid var(--studio-accent);border-radius:6px;padding:4px 5px;margin:3px 0;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iema-calendar-day>small{font-size:10px;color:var(--muted)}
.iema-room-card{background:#090909;color:#fff;border:1px solid color-mix(in srgb,var(--studio-accent) 35%,#333);border-radius:16px;padding:18px}.iema-room-card>span{color:var(--studio-accent);font-size:10px;font-weight:900;letter-spacing:.12em}.iema-room-card h3{color:#fff;margin:6px 0}.iema-room-card p,.iema-room-card small{color:#cfcfcf}
.iema-avatar-stack{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}.iema-avatar-stack>div{display:flex;align-items:center;gap:8px;background:#0b0b0b;color:#fff;padding:8px 10px;border-radius:999px}.iema-avatar-stack img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid var(--studio-accent)}
.iema-room-picker{border:1px solid #24354c;border-radius:22px;padding:22px;margin:18px 0;background:linear-gradient(180deg,rgba(10,17,26,.9),rgba(7,13,21,.92));display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}
.iema-room-picker legend{font-weight:900;padding:0 8px;color:#fff;font-size:20px;letter-spacing:-.02em;margin-bottom:6px}
.iema-room-picker .iema-check{display:flex;align-items:center;gap:12px;margin:0;padding:14px 16px;border:1px solid #22344a;border-radius:16px;background:linear-gradient(180deg,#0c141f 0%,#09111a 100%);min-width:0;cursor:pointer;transition:border-color .18s ease,transform .18s ease,background .18s ease,box-shadow .18s ease}
.iema-room-picker .iema-check:hover{border-color:#2f84b3;background:linear-gradient(180deg,#111c2a 0%,#0b1521 100%);transform:translateY(-1px);box-shadow:0 10px 24px rgba(0,0,0,.16)}
.iema-room-picker .iema-check input{width:18px;height:18px;margin:0;accent-color:#22b7ff;flex:0 0 auto}
.iema-room-picker .iema-check span{display:block;color:#eef4fb;font-size:15px;font-weight:800;line-height:1.25;overflow-wrap:anywhere}
.iema-room-picker .iema-check:has(input:checked){border-color:#22b7ff;background:linear-gradient(180deg,rgba(18,43,63,.95),rgba(10,24,37,.95));box-shadow:0 0 0 1px rgba(34,183,255,.18) inset,0 12px 26px rgba(0,0,0,.18)}
@media(max-width:980px){.iema-room-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.iema-room-picker{grid-template-columns:1fr;padding:18px}.iema-room-picker legend{font-size:18px}.iema-room-picker .iema-check{padding:13px 14px}}
.iema-slot-list{display:grid;gap:10px}.iema-slot{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#090909;color:#fff;border:1px solid #2b2b2b;border-left:4px solid var(--studio-accent);border-radius:14px;padding:14px 16px}.iema-slot strong,.iema-slot small{display:block}.iema-slot small{color:#c7c7c7;margin-top:3px}
@media(max-width:760px){.iema-calendar-grid{grid-template-columns:repeat(7,minmax(44px,1fr));min-width:560px}.iema-calendar{overflow-x:auto}.iema-calendar-head{min-width:560px}.iema-calendar-day{min-height:88px;padding:5px}.iema-calendar-day>span{font-size:9px}.iema-slot{align-items:flex-start;flex-direction:column}.iema-slot form,.iema-slot .iema-btn{width:100%}}

/* Calendar recurrence + editing v0.9.4 */
.iema-repeat{border:1px solid rgba(148,163,184,.35);border-radius:14px;padding:14px;margin:8px 0 14px}.iema-repeat legend{font-weight:800;padding:0 6px}.iema-weekdays{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}[data-iema-class-repeat-dependent][hidden]{display:none!important}.iema-weekdays>span{width:100%;font-size:.82rem;font-weight:800;opacity:.75}.iema-weekdays label{display:inline-flex!important;align-items:center;gap:5px;padding:7px 9px;border:1px solid rgba(148,163,184,.35);border-radius:10px;margin:0!important}.iema-weekdays input{width:auto!important;margin:0!important}.iema-calendar-event{display:block;text-decoration:none;color:inherit;border-radius:6px;padding:2px 4px}.iema-calendar-event:hover,.iema-calendar-event:focus{outline:2px solid var(--iema-accent,#7c3aed);outline-offset:1px}.iema-edit-event{border:2px solid var(--iema-accent,#7c3aed)}.iema-actions{display:flex;gap:8px;flex-wrap:wrap}.iema-inline-delete{margin-top:12px;padding-top:12px;border-top:1px solid rgba(148,163,184,.25);display:flex;gap:10px;align-items:end;flex-wrap:wrap}

.iema-schedule-time-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:10px}.iema-btn-danger{background:#b91c1c!important;color:#fff!important;border-color:#b91c1c!important}.iema-inline-delete{background:#fff5f5;padding:14px;border:1px solid #fecaca;border-radius:12px;margin-top:18px}.iema-repeat select{margin-bottom:6px}@media(max-width:700px){.iema-schedule-time-grid{grid-template-columns:1fr}}

/* v0.9.8 month calendar navigation */
.iema-calendar-toolbar{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;margin-bottom:14px}.iema-calendar-toolbar .iema-calendar-title{text-align:center;margin:0}.iema-calendar-nav{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;text-decoration:none!important;font-size:24px;font-weight:900;background:#0a0a0a;color:#fff!important;border:1px solid color-mix(in srgb,var(--iema-accent,#3563ff) 55%,#333)}.iema-calendar-nav:hover,.iema-calendar-nav:focus{background:var(--iema-accent,#3563ff);color:#fff!important}.iema-calendar-today{text-align:center;margin:-6px 0 12px}.iema-calendar-today a{font-size:12px;font-weight:800;color:var(--iema-accent,#3563ff);text-decoration:none}.iema-calendar-title{font-size:clamp(20px,3vw,30px);font-weight:900}
@media(max-width:700px){.iema-calendar-toolbar{grid-template-columns:40px 1fr 40px}.iema-calendar-nav{width:38px;height:38px}.iema-calendar-grid{min-width:680px}.iema-calendar{overflow-x:auto;padding-bottom:6px}}

/* v0.9.11 parent full-screen dancer calendar */
.iema-panel-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.iema-panel-heading-row h2{margin-top:0}.iema-full-calendar-launch{white-space:nowrap}
.iema-full-calendar{position:fixed;inset:0;z-index:999999;background:#090909;color:#fff;display:flex;flex-direction:column;overflow:hidden;padding:0!important}.iema-full-calendar:fullscreen{width:100vw;height:100vh}.iema-full-calendar-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 20px;background:linear-gradient(120deg,#000 0%,#000 55%,color-mix(in srgb,var(--studio-accent,var(--iema-accent,#7c3aed)) 85%,#000) 100%);border-bottom:1px solid #252525}.iema-full-calendar-heading{display:flex;flex-direction:column;min-width:0}.iema-full-calendar-heading small{color:var(--studio-accent,var(--iema-accent,#7c3aed));font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.iema-full-calendar-heading strong{font-size:clamp(20px,3vw,30px);line-height:1.1;color:#fff}.iema-full-calendar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.iema-full-calendar-switcher{margin:0}.iema-full-calendar-switcher select{min-width:180px;background:#111;color:#fff;border:1px solid #444;border-radius:10px;padding:9px 34px 9px 10px}.iema-full-calendar-body{flex:1;min-height:0;overflow:auto;padding:18px 22px 28px}.iema-full-calendar-body .iema-calendar{height:100%;min-height:620px;background:#0b0b0b;border-color:#2a2a2a}.iema-full-calendar-body .iema-calendar-day{min-height:clamp(110px,14vh,170px);background:#0d0d0d;color:#fff}.iema-full-calendar-body .iema-calendar-day.muted{background:#070707}.iema-full-calendar-body .iema-calendar-head b{color:#ddd}.iema-full-calendar-body .iema-calendar-event{background:color-mix(in srgb,var(--studio-accent,var(--iema-accent,#7c3aed)) 22%,#111);border-left:3px solid var(--studio-accent,var(--iema-accent,#7c3aed));color:#fff;margin:3px 0;padding:5px 6px}.iema-full-calendar-body .iema-calendar-title{color:#fff}
@media(max-width:760px){.iema-panel-heading-row{flex-direction:column}.iema-full-calendar-bar{align-items:flex-start;flex-direction:column;padding:12px 14px}.iema-full-calendar-actions{width:100%}.iema-full-calendar-switcher{flex:1;min-width:0}.iema-full-calendar-switcher select{width:100%;min-width:0}.iema-browser-fullscreen{display:none}.iema-full-calendar-body{padding:10px}.iema-full-calendar-body .iema-calendar{min-height:0}.iema-full-calendar-body .iema-calendar-grid{min-width:760px}.iema-full-calendar-body .iema-calendar-day{min-height:120px}}

/* dancer workout readability (legacy photo-proof styles retained harmlessly for upgrade CSS compatibility) */
.iema-dancer-portal{max-width:980px}.iema-dancer-portal .iema-top{background:linear-gradient(120deg,#000 0%,#050505 52%,color-mix(in srgb,var(--studio-accent,var(--accent)) 78%,#000) 100%)}
.iema-dancer-portal .iema-today-panel{padding:0;overflow:hidden;background:#0a0a0a;border-color:#222;color:#fff}.iema-dancer-section-title{padding:22px 24px;border-bottom:1px solid #252525}.iema-dancer-section-title>span{font-size:11px;font-weight:950;letter-spacing:.16em;color:var(--studio-accent,var(--accent))}.iema-dancer-section-title h2{font-size:clamp(26px,5vw,38px);margin:5px 0;color:#fff}.iema-dancer-section-title p{margin:0;color:#cbd5e1;font-size:14px}
.iema-dancer-portal .iema-workout{border:0;border-radius:0;background:#090909}.iema-dancer-portal .iema-workout+.iema-workout{border-top:8px solid #161616}.iema-dancer-portal .iema-workout-head{background:#050505;padding:20px 24px;color:#fff;border-bottom:1px solid #252525}.iema-dancer-portal .iema-workout-head span{color:var(--studio-accent,var(--accent));font-size:11px;letter-spacing:.08em}.iema-dancer-portal .iema-workout-head h3{font-size:clamp(22px,4vw,30px);color:#fff;margin:5px 0}.iema-dancer-portal .iema-workout-head small{color:#94a3b8}.iema-dancer-portal .iema-workout-head>b{background:var(--studio-accent,var(--accent));color:#000;padding:7px 10px;border-radius:999px;align-self:flex-start}
.iema-workout-progress{display:flex;align-items:center;gap:12px;padding:13px 24px;background:#0d0d0d;border-bottom:1px solid #222}.iema-workout-progress>div{height:8px;background:#252525;border-radius:999px;overflow:hidden;flex:1}.iema-workout-progress>div>span{display:block;height:100%;background:var(--studio-accent,var(--accent));transition:width .25s ease}.iema-workout-progress>strong{color:#fff;min-width:42px;text-align:right}
.iema-exercise-list{display:grid;gap:12px;padding:18px}.iema-exercise-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:start;background:#111;border:1px solid #2a2a2a;border-radius:16px;padding:16px;color:#fff;transition:border-color .2s,background .2s}.iema-exercise-card.is-complete{border-color:var(--studio-accent,var(--accent));background:color-mix(in srgb,var(--studio-accent,var(--accent)) 10%,#0c0c0c)}.iema-exercise-number{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#000;border:1px solid #333;color:var(--studio-accent,var(--accent));font-weight:950}.iema-exercise-main h4{font-size:19px;margin:0 0 4px;color:#fff}.iema-exercise-main>p{margin:0 0 13px;color:#cbd5e1;font-size:14px;font-weight:700}.iema-complete-check{display:flex!important;flex-direction:column;align-items:center;gap:5px!important;color:#fff!important;font-size:11px!important;text-transform:uppercase;letter-spacing:.06em}.iema-complete-check input{width:28px!important;height:28px!important;accent-color:var(--studio-accent,var(--accent))}.iema-complete-check input:disabled{opacity:.35;cursor:not-allowed}.iema-proof-area{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.iema-proof-preview{min-width:118px;height:64px;border:1px dashed #475569;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:8px;padding:5px 9px;color:#94a3b8;font-size:11px;background:#080808}.iema-proof-preview.has-photo{border-style:solid;border-color:color-mix(in srgb,var(--studio-accent,var(--accent)) 60%,#333);color:#fff}.iema-proof-preview img{width:48px;height:48px;border-radius:8px;object-fit:cover}.iema-photo-btn{display:inline-flex!important;align-items:center;justify-content:center;background:#1b1b1b;border:1px solid #3a3a3a;border-radius:10px;padding:10px 12px;color:#fff!important;font-size:12px!important;cursor:pointer}.iema-photo-btn:hover{border-color:var(--studio-accent,var(--accent))}.iema-photo-btn input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden!important}
.iema-dancer-portal .iema-wellness{background:#050505;border-top:1px solid #252525;padding:20px 24px;grid-template-columns:130px 130px minmax(220px,1fr) auto auto}.iema-dancer-portal .iema-wellness label{color:#fff}.iema-dancer-portal .iema-wellness input,.iema-dancer-portal .iema-wellness textarea{background:#111;border-color:#333;color:#fff}.iema-save-state{color:#86efac;font-weight:800}.iema-save-state.is-error{color:#fca5a5}.iema-dancer-portal .iema-recent-panel{background:#0b0b0b;color:#fff;border-color:#222}.iema-dancer-portal .iema-recent-panel .iema-history>div{border-color:#292929}.iema-dancer-portal .iema-recent-panel .iema-history em{color:#cbd5e1}
@media(max-width:760px){.iema-dancer-portal{padding:0 10px;margin-top:12px}.iema-dancer-portal .iema-top{border-radius:18px;padding:20px}.iema-dancer-portal .iema-stat-grid{grid-template-columns:repeat(3,1fr);gap:7px}.iema-dancer-portal .iema-stat-grid>div{padding:12px 8px;text-align:center}.iema-dancer-portal .iema-stat-grid strong{font-size:25px}.iema-dancer-portal .iema-stat-grid small{font-size:10px}.iema-exercise-list{padding:10px}.iema-exercise-card{grid-template-columns:34px minmax(0,1fr);padding:14px 12px;gap:10px}.iema-exercise-number{width:30px;height:30px}.iema-complete-check{grid-column:1/-1;display:flex!important;flex-direction:row;justify-content:flex-end;border-top:1px solid #292929;padding-top:10px}.iema-exercise-main h4{font-size:18px}.iema-proof-area{align-items:stretch;flex-direction:column}.iema-proof-preview{width:100%;height:70px;justify-content:flex-start}.iema-photo-btn{width:100%}.iema-dancer-portal .iema-wellness{grid-template-columns:1fr 1fr;padding:16px}.iema-dancer-portal .iema-wellness .iema-notes-field,.iema-dancer-portal .iema-wellness .iema-save,.iema-dancer-portal .iema-wellness .iema-save-state{grid-column:1/-1}.iema-dancer-portal .iema-wellness .iema-save{width:100%;font-size:16px;padding:14px}}


/* v0.9.13 exercise how-to modal */
.iema-howto-btn{appearance:none;border:1px solid color-mix(in srgb,var(--studio-accent,var(--accent)) 62%,#333);background:#090909;color:#fff;border-radius:10px;padding:9px 12px;font-size:12px;font-weight:900;cursor:pointer;margin:0 0 13px}.iema-howto-btn:hover,.iema-howto-btn:focus{background:var(--studio-accent,var(--accent));color:#000;outline:none}.iema-howto-modal[hidden]{display:none!important}.iema-howto-modal{position:fixed;inset:0;z-index:1000000;display:grid;place-items:center;padding:18px}.iema-howto-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(4px)}.iema-howto-dialog{position:relative;width:min(680px,100%);max-height:min(86vh,820px);overflow:auto;background:#0b0b0b;color:#fff;border:1px solid #2d2d2d;border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.55);padding:26px}.iema-howto-close{position:absolute;right:15px;top:13px;width:42px;height:42px;border-radius:50%;border:1px solid #333;background:#151515;color:#fff;font-size:28px;line-height:1;cursor:pointer}.iema-howto-close:hover{background:var(--studio-accent,var(--accent));color:#000}.iema-howto-kicker{display:block;color:var(--studio-accent,var(--accent));font-size:11px;font-weight:950;letter-spacing:.15em;margin-bottom:5px}.iema-howto-dialog h2{font-size:clamp(26px,5vw,38px);color:#fff;margin:0 50px 18px 0}.iema-howto-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.iema-howto-meta>div{background:#121212;border:1px solid #292929;border-radius:12px;padding:12px}.iema-howto-meta small{display:block;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:900}.iema-howto-meta strong{display:block;color:#fff;margin-top:4px}.iema-howto-section{border-top:1px solid #282828;padding-top:15px;margin-top:15px}.iema-howto-section h3{color:#fff;margin:0 0 10px;font-size:16px}.iema-howto-section li{color:#e2e8f0;margin:7px 0;line-height:1.45}.iema-howto-warning h3{color:var(--studio-accent,var(--accent))}.iema-howto-safety{margin:20px 0 0;padding:12px;border-radius:10px;background:#151515;color:#cbd5e1;font-size:12px;line-height:1.45}.iema-modal-open{overflow:hidden}
@media(max-width:600px){.iema-howto-modal{padding:8px;align-items:end}.iema-howto-dialog{max-height:92vh;border-radius:20px 20px 10px 10px;padding:22px 18px}.iema-howto-meta{grid-template-columns:1fr}.iema-howto-btn{width:100%;font-size:13px;padding:11px 12px}}

/* v0.9.14 exercise video demo */
.iema-video-frame{position:relative;width:100%;border-radius:14px;overflow:hidden;background:#050505;min-height:64px}
.iema-video-frame iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:#000}
.iema-howto-video[hidden]{display:none!important}

/* v0.10.0 Studio Owner IA + premium dancer workspace */
.iema-primary-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:16px 0 8px;padding:7px;background:#090909;border:1px solid #222;border-radius:18px;box-shadow:0 10px 35px rgba(0,0,0,.12)}
.iema-primary-nav a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 14px;border-radius:12px;color:#cbd5e1;text-decoration:none;font-weight:850;font-size:14px;transition:.18s ease}
.iema-primary-nav a:hover{background:#161616;color:#fff}.iema-primary-nav a.active{background:var(--studio-accent,var(--accent));color:#050505;box-shadow:0 6px 20px color-mix(in srgb,var(--studio-accent,var(--accent)) 28%,transparent)}
.iema-secondary-nav{display:flex;gap:5px;align-items:center;overflow-x:auto;scrollbar-width:none;margin:0 0 18px;padding:0 4px}.iema-secondary-nav::-webkit-scrollbar{display:none}.iema-secondary-nav a{white-space:nowrap;text-decoration:none;color:var(--muted);font-size:13px;font-weight:800;padding:10px 12px;border-bottom:2px solid transparent}.iema-secondary-nav a:hover{color:var(--ink)}.iema-secondary-nav a.active{color:var(--studio-accent,var(--accent));border-color:var(--studio-accent,var(--accent))}
.iema-workspace-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.iema-workspace-heading h2,.iema-workspace-heading h3{margin:3px 0 6px}.iema-workspace-heading p{margin:0;color:var(--muted);max-width:720px}.iema-count-chip{display:inline-flex;align-items:center;background:#111;color:#fff;border:1px solid #2c2c2c;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;white-space:nowrap}
.iema-roster-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:24px;align-items:start}.iema-create-card{background:#0c0c0c;color:#fff;border:1px solid #292929;border-radius:20px;padding:22px;position:sticky;top:18px}.iema-create-card h3{color:#fff;margin:6px 0 18px}.iema-create-card label{color:#fff}.iema-create-card input,.iema-create-card select,.iema-create-card textarea{background:#131313!important;color:#fff!important;border-color:#343434!important}.iema-premium-roster{gap:10px}.iema-premium-roster .iema-athlete-roster-card{position:relative;border:1px solid var(--line);border-radius:16px;padding:14px;background:var(--surface);box-shadow:0 4px 18px rgba(0,0,0,.05)}.iema-premium-roster .iema-athlete-roster-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--studio-accent,var(--accent)) 50%,var(--line));box-shadow:0 10px 28px rgba(0,0,0,.08)}.iema-row-arrow{margin-left:auto;font-size:28px;color:var(--studio-accent,var(--accent));font-weight:400}
.iema-dancer-workspace{display:grid;gap:16px}.iema-back-link{width:max-content;color:var(--muted);text-decoration:none;font-size:13px;font-weight:850}.iema-back-link:hover{color:var(--studio-accent,var(--accent))}.iema-dancer-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;background:linear-gradient(125deg,#050505 0%,#0a0a0a 58%,color-mix(in srgb,var(--studio-accent,var(--accent)) 32%,#050505) 100%);border:1px solid #252525;border-radius:22px;padding:22px;color:#fff;overflow:hidden}.iema-dancer-hero>img{width:108px;height:108px;border-radius:20px;object-fit:cover;border:2px solid color-mix(in srgb,var(--studio-accent,var(--accent)) 65%,#333)}.iema-dancer-hero-copy h2{font-size:clamp(26px,4vw,38px);color:#fff;margin:4px 0 8px}.iema-dancer-hero-copy .iema-athlete-age,.iema-dancer-hero-copy .iema-athlete-team{color:#d1d5db}.iema-dancer-hero-stats{display:flex;gap:10px}.iema-dancer-hero-stats>div{min-width:105px;text-align:center;background:#0f0f0f;border:1px solid #2b2b2b;border-radius:14px;padding:13px}.iema-dancer-hero-stats strong{display:block;color:var(--studio-accent,var(--accent));font-size:25px}.iema-dancer-hero-stats small{display:block;color:#aeb6c2;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;margin-top:3px}
.iema-dancer-nav{display:flex;gap:5px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:5px;overflow-x:auto;scrollbar-width:none}.iema-dancer-nav::-webkit-scrollbar{display:none}.iema-dancer-nav a{flex:1;min-width:max-content;text-align:center;text-decoration:none;color:var(--muted);font-size:13px;font-weight:900;padding:11px 14px;border-radius:10px}.iema-dancer-nav a.active{background:#0b0b0b;color:#fff}.iema-dancer-nav a.active:after{content:'';display:block;height:2px;border-radius:2px;background:var(--studio-accent,var(--accent));margin:6px auto -6px;width:28px}
.iema-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.iema-dashboard-grid>.iema-panel{margin:0}.iema-dashboard-wide{grid-column:1/-1}.iema-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.iema-action-card{border:1px solid #2a2a2a;border-radius:18px;background:#0b0b0b;color:#fff;overflow:hidden}.iema-action-card summary{list-style:none;display:flex;align-items:center;gap:13px;padding:18px;cursor:pointer}.iema-action-card summary::-webkit-details-marker{display:none}.iema-action-card summary:hover{background:#111}.iema-action-card summary>div{display:flex;flex-direction:column;gap:3px}.iema-action-card summary strong{color:#fff;font-size:15px}.iema-action-card summary small{color:#9ca3af}.iema-action-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--studio-accent,var(--accent));color:#050505;font-size:23px;font-weight:600;flex:0 0 auto}.iema-action-body{border-top:1px solid #262626;padding:18px}.iema-action-body label,.iema-action-body legend{color:#fff}.iema-action-body input,.iema-action-body select,.iema-action-body textarea{background:#141414!important;color:#fff!important;border-color:#383838!important}.iema-action-card[open]{grid-column:1/-1}
@media(max-width:900px){.iema-roster-layout{grid-template-columns:1fr}.iema-create-card{position:static}.iema-dancer-hero{grid-template-columns:auto 1fr}.iema-dancer-hero-stats{grid-column:1/-1}.iema-dancer-hero-stats>div{flex:1}.iema-action-grid{grid-template-columns:1fr}.iema-action-card[open]{grid-column:auto}}
@media(max-width:680px){.iema-primary-nav{grid-template-columns:repeat(5,max-content);justify-content:start;overflow-x:auto;padding:6px}.iema-primary-nav a{min-height:42px;padding:8px 12px;font-size:12px}.iema-secondary-nav{margin-bottom:12px}.iema-workspace-heading{flex-direction:column}.iema-dancer-hero{grid-template-columns:1fr;text-align:center}.iema-dancer-hero>img{margin:auto}.iema-dancer-hero-stats{grid-column:auto}.iema-dashboard-grid{grid-template-columns:1fr}.iema-dashboard-wide{grid-column:auto}.iema-dancer-nav a{flex:0 0 auto}.iema-create-card{padding:17px}.iema-action-body{padding:14px}}

/* v0.10.1 unified premium portal system */
.iema-role-nav{display:flex;gap:6px;align-items:center;margin:14px 0 20px;padding:6px;background:#090909;border:1px solid #222;border-radius:16px;box-shadow:0 8px 28px rgba(0,0,0,.10);overflow-x:auto;scrollbar-width:none}.iema-role-nav::-webkit-scrollbar{display:none}.iema-role-nav a{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 15px;border-radius:11px;text-decoration:none;color:#cbd5e1;font-size:13px;font-weight:850;white-space:nowrap;transition:.18s ease}.iema-role-nav a:hover{background:#171717;color:#fff}.iema-role-nav a.active{background:var(--studio-accent,var(--accent));color:#050505;box-shadow:0 6px 18px color-mix(in srgb,var(--studio-accent,var(--accent)) 28%,transparent)}
.iema-parent-portal,.iema-staff-portal,.iema-dancer-portal{max-width:1120px}.iema-parent-portal .iema-top,.iema-staff-portal .iema-top,.iema-dancer-portal .iema-top{box-shadow:0 20px 65px rgba(0,0,0,.18)}
.iema-parent-portal .iema-stat-grid>div,.iema-staff-portal .iema-stat-grid>div{border-top:3px solid var(--studio-accent,var(--accent));box-shadow:0 7px 24px rgba(0,0,0,.05)}
.iema-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}.iema-section-head h2{margin:3px 0 2px}.iema-section-head p{margin:0;color:var(--muted);font-size:14px}.iema-profile-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.iema-mini-profile{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface,#fff);box-shadow:0 4px 16px rgba(0,0,0,.04)}.iema-mini-profile img{width:58px;height:58px;border-radius:50%;object-fit:cover;border:3px solid color-mix(in srgb,var(--studio-accent,var(--accent)) 55%,transparent)}.iema-mini-profile>div{display:grid;min-width:0}.iema-mini-profile strong{font-size:16px}.iema-mini-profile small{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.iema-mini-profile a{margin-top:6px;color:var(--studio-accent,var(--accent));font-size:12px;font-weight:850;text-decoration:none}.iema-calendar-workspace{overflow:hidden}.iema-calendar-workspace .iema-panel-heading-row{padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:18px}.iema-calendar-workspace .iema-split>div:last-child{background:#0b0b0b;color:#fff;border-radius:18px;padding:20px}.iema-calendar-workspace .iema-split>div:last-child h2,.iema-calendar-workspace .iema-split>div:last-child label{color:#fff}.iema-calendar-workspace .iema-split>div:last-child input,.iema-calendar-workspace .iema-split>div:last-child select,.iema-calendar-workspace .iema-split>div:last-child textarea{background:#151515;color:#fff;border-color:#343434}.iema-staff-dancer-grid .iema-ath-card{background:#0b0b0b;border-color:#262626;color:#fff;box-shadow:0 8px 22px rgba(0,0,0,.08)}.iema-staff-dancer-grid .iema-ath-card h3{color:#fff}.iema-staff-dancer-grid .iema-ath-card p{color:#aeb8c5}.iema-staff-dancer-grid .iema-ath-card b,.iema-staff-dancer-grid .iema-ath-card span{color:var(--studio-accent,var(--accent))}
.iema-dancer-portal .iema-role-nav{margin-bottom:14px}.iema-dancer-portal .iema-dancer-stats>div{background:#0b0b0b;color:#fff;border-color:#262626}.iema-dancer-portal .iema-dancer-stats small{color:#aeb8c5}.iema-dancer-portal .iema-dancer-stats strong{color:var(--studio-accent,var(--accent))}.iema-dancer-portal .iema-recent-panel h2{color:#fff}
@media(max-width:860px){.iema-profile-card-grid{grid-template-columns:1fr 1fr}.iema-parent-portal .iema-split,.iema-staff-portal .iema-split{grid-template-columns:1fr}.iema-calendar-workspace .iema-split>div:last-child{margin-top:4px}}
@media(max-width:620px){.iema-app.iema-parent-portal,.iema-app.iema-staff-portal,.iema-app.iema-dancer-portal{padding:0 10px;margin-top:12px}.iema-role-nav{margin-top:10px;border-radius:14px;padding:5px}.iema-role-nav a{min-height:40px;padding:8px 12px;font-size:12px}.iema-profile-card-grid{grid-template-columns:1fr}.iema-section-head{align-items:flex-start;flex-direction:column}.iema-parent-portal .iema-stat-grid,.iema-staff-portal .iema-stat-grid{grid-template-columns:repeat(3,1fr);gap:7px}.iema-parent-portal .iema-stat-grid>div,.iema-staff-portal .iema-stat-grid>div{padding:12px 8px;text-align:center}.iema-parent-portal .iema-stat-grid strong,.iema-staff-portal .iema-stat-grid strong{font-size:23px}.iema-parent-portal .iema-stat-grid small,.iema-staff-portal .iema-stat-grid small{font-size:10px}.iema-calendar-workspace{padding:14px}.iema-calendar-workspace .iema-split>div:last-child{padding:16px}.iema-mini-profile{padding:12px}}
/* v0.10.2 Parent Availability */
.iema-availability-legend{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 16px}.iema-availability-legend span{font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:7px 10px}.iema-availability-legend .is-available{background:#12351f;color:#9af0b4;border:1px solid #28643b}.iema-availability-legend .is-unavailable{background:#3b1518;color:#ffadb4;border:1px solid #793039}.iema-availability-legend .is-unknown{background:#252525;color:#bbb;border:1px solid #444}.iema-calendar-event.iema-event-available{background:#12351f!important;color:#c7f9d4!important;border-left-color:#3dcf70!important}.iema-calendar-event.iema-event-unavailable{background:#3b1518!important;color:#ffd1d5!important;border-left-color:#ff6270!important}.iema-optional{font-size:11px;opacity:.65;font-weight:600}.iema-parent-portal .iema-calendar-workspace .iema-split>div:last-child hr{border:0;border-top:1px solid #333;margin:24px 0}

/* v0.11.0 application-shell redesign */
:root{--iema-shell:#08090b;--iema-canvas:#f5f6f8;--iema-card:#fff;--iema-card-dark:#101113;--iema-sidebar:248px}
.iema-app{max-width:1500px!important;min-height:760px;margin:20px auto!important;padding:0 26px 50px calc(var(--iema-sidebar) + 34px)!important;position:relative;background:var(--iema-canvas);border:1px solid #e6e8ec;border-radius:26px;box-shadow:0 26px 90px rgba(15,23,42,.10);overflow:visible}
.iema-app-topbar{background:transparent!important;color:#111!important;border-radius:0!important;padding:28px 0 18px!important;box-shadow:none!important;display:block!important;min-height:118px;border-bottom:1px solid #e4e6ea}
.iema-shell-brand{position:absolute;left:calc(-1 * var(--iema-sidebar) - 8px);top:24px;width:214px;display:flex;align-items:center;gap:12px;color:#fff;z-index:10}
.iema-shell-brand .iema-studio-logo{width:48px;height:48px;border-radius:13px;padding:3px;border:1px solid #2a2d32;background:#fff}
.iema-shell-brand>div{min-width:0}.iema-shell-brand .iema-studio-name{font-size:14px!important;line-height:1.15;color:var(--studio-accent,var(--accent))!important;text-transform:uppercase;font-weight:950;letter-spacing:.035em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
.iema-shell-brand .iema-account-label{display:block;color:#fff!important;font-size:10px!important;letter-spacing:.16em!important;margin-top:4px}.iema-shell-brand .iema-plugin-version{font-size:9px!important;color:#7f8791!important;margin-left:4px}
.iema-page-heading{display:block}.iema-page-kicker{display:block!important;color:var(--studio-accent,var(--accent))!important;font-size:10px!important;font-weight:950!important;letter-spacing:.18em!important}.iema-app-topbar h1{color:#111!important;font-size:clamp(28px,3.5vw,42px)!important;letter-spacing:-.035em;margin:3px 0 5px!important}.iema-app-topbar p{color:#737b87!important;max-width:760px;font-size:14px}
/* Left rail */
.iema-primary-nav,.iema-role-nav{position:absolute!important;left:calc(-1 * var(--iema-sidebar) - 8px);top:98px;width:214px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:5px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:18px 0!important;margin:0!important;overflow:visible!important;z-index:9}
.iema-primary-nav:before,.iema-role-nav:before{content:'WORKSPACES';display:block;color:#626975;font-size:9px;font-weight:950;letter-spacing:.17em;padding:0 13px 9px}
.iema-primary-nav a,.iema-role-nav a{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-height:44px!important;padding:10px 13px!important;border-radius:11px!important;background:transparent!important;color:#b5bbc4!important;font-size:13px!important;font-weight:800!important;text-decoration:none!important;transition:.18s ease!important;position:relative}
.iema-primary-nav a:hover,.iema-role-nav a:hover{background:#15171a!important;color:#fff!important}.iema-primary-nav a.active,.iema-role-nav a.active{background:#17191d!important;color:#fff!important;box-shadow:none!important}.iema-primary-nav a.active:before,.iema-role-nav a.active:before{content:'';position:absolute;left:-2px;top:9px;bottom:9px;width:3px;border-radius:3px;background:var(--studio-accent,var(--accent))}
.iema-primary-nav a:after,.iema-role-nav a:after{content:'›';margin-left:auto;color:#5d636c;font-size:18px;font-weight:500}.iema-primary-nav a.active:after,.iema-role-nav a.active:after{color:var(--studio-accent,var(--accent))}
.iema-app:before{content:'';position:absolute;left:calc(-1 * var(--iema-sidebar) - 26px);top:-1px;bottom:-1px;width:var(--iema-sidebar);background:linear-gradient(180deg,#070809,#0d0f12);border-radius:26px 0 0 26px;box-shadow:inset -1px 0 #1e2126;z-index:0}
/* Context navigation */
.iema-secondary-nav,.iema-dancer-nav{margin:14px 0 22px!important;padding:4px!important;background:#eceef1!important;border:0!important;border-radius:11px!important;display:flex!important;gap:3px!important;overflow-x:auto}.iema-secondary-nav a,.iema-dancer-nav a{min-height:38px;padding:9px 13px!important;border-radius:8px!important;font-size:12px!important;font-weight:850!important;color:#666e78!important;text-decoration:none!important;white-space:nowrap}.iema-secondary-nav a.active,.iema-dancer-nav a.active{background:#fff!important;color:#111!important;box-shadow:0 3px 12px rgba(0,0,0,.07)!important}.iema-dancer-nav a.active:after{display:none!important}
/* Canvas cards */
.iema-panel,.iema-stat-grid>div{background:#fff!important;border:1px solid #e7e9ed!important;border-radius:16px!important;box-shadow:0 7px 24px rgba(15,23,42,.045)!important}.iema-panel{padding:22px!important}.iema-stat-grid{gap:12px!important}.iema-stat-grid>div{padding:18px 20px!important}.iema-stat-grid strong{font-size:31px!important;letter-spacing:-.04em;color:#111}.iema-stat-grid small{font-size:11px!important;text-transform:uppercase;letter-spacing:.055em;font-weight:800;color:#7c8490!important}
.iema-command-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:20px 0 12px}.iema-command-header h2{font-size:25px;margin:4px 0 2px;letter-spacing:-.025em}.iema-command-header p{margin:0;color:#737b87;font-size:13px}.iema-quick-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.iema-quick-actions a,.iema-text-action{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:11px;font-weight:900;border-radius:9px;padding:9px 11px;background:#111;color:#fff;border:1px solid #24262a}.iema-quick-actions a:last-child{background:var(--studio-accent,var(--accent));border-color:var(--studio-accent,var(--accent));color:#050505}.iema-text-action{background:transparent;color:#3f4751;border:0;padding:7px}
.iema-command-panel{margin-top:14px!important}.iema-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}.iema-ath-card{background:#0e1012!important;border:1px solid #23262b!important;border-radius:15px!important;color:#fff!important;padding:16px!important;box-shadow:none!important;transition:transform .18s,border-color .18s}.iema-ath-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--studio-accent,var(--accent)) 60%,#2a2a2a)!important}.iema-ath-card h3{color:#fff!important;font-size:16px!important}.iema-ath-card p{color:#a8afb8!important}.iema-ath-card b,.iema-ath-card span{color:var(--studio-accent,var(--accent))!important}
.iema-roster-layout{gap:16px!important}.iema-create-card{border-radius:16px!important;background:#101214!important;color:#fff!important;border:1px solid #24272c!important}.iema-create-card h3,.iema-create-card label{color:#fff!important}.iema-create-card input,.iema-create-card select,.iema-create-card textarea{background:#17191c!important;color:#fff!important;border-color:#343841!important}.iema-athlete-roster-card{border-radius:14px!important;background:#fff!important;border-color:#e4e7eb!important}.iema-athlete-roster-card:hover{border-color:var(--studio-accent,var(--accent))!important;background:#fbfbfc!important}
.iema-dancer-hero{border-radius:18px!important;box-shadow:0 14px 34px rgba(0,0,0,.10)!important}.iema-dancer-workspace{gap:13px!important}
/* Parent / staff / dancer consistency */
.iema-parent-portal,.iema-staff-portal,.iema-dancer-portal{max-width:1500px!important}.iema-parent-portal .iema-top,.iema-staff-portal .iema-top,.iema-dancer-portal .iema-top{box-shadow:none!important}.iema-parent-portal .iema-calendar-workspace,.iema-staff-portal .iema-calendar-workspace{border-radius:16px!important}.iema-mini-profile{border-radius:14px!important;box-shadow:none!important}.iema-profile-card-grid{gap:10px!important}
/* Dark-mode keeps the same architecture */
.iema-app[data-mode="dark"],.iema-app.iema-dark{background:#0d0f12!important;border-color:#272a30!important;color:#f5f7fa}.iema-app[data-mode="dark"] .iema-app-topbar h1,.iema-app.iema-dark .iema-app-topbar h1{color:#fff!important}.iema-app[data-mode="dark"] .iema-app-topbar{border-color:#282b31}.iema-app[data-mode="dark"] .iema-panel,.iema-app[data-mode="dark"] .iema-stat-grid>div,.iema-app.iema-dark .iema-panel,.iema-app.iema-dark .iema-stat-grid>div{background:#14161a!important;border-color:#282c33!important;color:#fff!important}
/* Mobile: same app, bottom navigation */
@media(max-width:900px){
 body{padding-bottom:72px}.iema-app{margin:0!important;padding:0 14px 36px!important;border:0!important;border-radius:0!important;box-shadow:none!important;min-height:100vh}.iema-app:before{display:none}.iema-app-topbar{padding:18px 0 14px!important;min-height:0}.iema-shell-brand{position:static!important;width:auto!important;margin-bottom:14px}.iema-shell-brand .iema-studio-logo{width:42px;height:42px}.iema-page-heading h1{font-size:28px!important}.iema-page-heading p{font-size:13px!important}.iema-primary-nav,.iema-role-nav{position:fixed!important;left:8px!important;right:8px!important;bottom:8px!important;top:auto!important;width:auto!important;display:grid!important;grid-auto-flow:column!important;grid-auto-columns:1fr!important;gap:3px!important;padding:5px!important;background:#090a0c!important;border:1px solid #25282e!important;border-radius:16px!important;box-shadow:0 14px 40px rgba(0,0,0,.34)!important;z-index:99999!important;overflow-x:auto!important}.iema-primary-nav:before,.iema-role-nav:before{display:none}.iema-primary-nav a,.iema-role-nav a{justify-content:center!important;min-width:74px!important;min-height:50px!important;padding:8px 8px!important;font-size:10px!important;text-align:center!important;border-radius:11px!important}.iema-primary-nav a:after,.iema-role-nav a:after{display:none}.iema-primary-nav a.active:before,.iema-role-nav a.active:before{left:20%!important;right:20%!important;top:auto!important;bottom:3px!important;width:auto!important;height:2px!important}.iema-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.iema-command-header{align-items:flex-start;flex-direction:column}.iema-quick-actions{justify-content:flex-start}.iema-secondary-nav,.iema-dancer-nav{margin-top:10px!important}.iema-panel{padding:16px!important}}
@media(max-width:600px){.iema-card-grid{grid-template-columns:1fr!important}.iema-command-stats{grid-template-columns:repeat(3,1fr)!important}.iema-command-stats>div{padding:13px 8px!important;text-align:center}.iema-command-stats strong{font-size:24px!important}.iema-command-stats small{font-size:9px!important}.iema-quick-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.iema-quick-actions a{width:100%}.iema-secondary-nav,.iema-dancer-nav{margin-left:-4px!important;margin-right:-4px!important}.iema-profile-card-grid{grid-template-columns:1fr!important}}

/* =========================================================
   v0.11.1 — Editorial / boutique dance-studio redesign
   Full-width, warm neutral palette, no accent-driven shell
   ========================================================= */
:root{
  --md-ink:#181716;
  --md-ink-soft:#2b2926;
  --md-ivory:#f7f3eb;
  --md-paper:#fffdf8;
  --md-stone:#e8e1d7;
  --md-stone-2:#d6cec2;
  --md-muted:#746d64;
  --md-gold:#b48a56;
  --md-gold-soft:#e7d7c1;
  --md-shadow:0 18px 55px rgba(48,39,29,.08);
}

/* Kill the v0.11 sidebar shell entirely. */
.iema-app{
  max-width:1480px!important;
  margin:28px auto!important;
  padding:0 28px 46px!important;
  min-height:calc(100vh - 56px)!important;
  background:var(--md-ivory)!important;
  color:var(--md-ink)!important;
  border:1px solid #ebe4da!important;
  border-radius:28px!important;
  box-shadow:0 24px 70px rgba(61,49,35,.10)!important;
  position:relative!important;
}
.iema-app:before{display:none!important}
.iema-app *{box-sizing:border-box}

/* Editorial top masthead. */
.iema-app-topbar,.iema-top{
  position:relative!important;
  inset:auto!important;
  display:grid!important;
  grid-template-columns:minmax(220px,.7fr) minmax(360px,1.3fr)!important;
  align-items:end!important;
  gap:32px!important;
  min-height:150px!important;
  margin:0 -28px 22px!important;
  padding:28px 34px 26px!important;
  background:var(--md-ink)!important;
  border:0!important;
  border-radius:27px 27px 0 0!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.iema-app-topbar:after,.iema-top:after{
  content:'';position:absolute;right:-70px;top:-110px;width:330px;height:330px;
  border:1px solid rgba(231,215,193,.22);border-radius:50%;box-shadow:0 0 0 54px rgba(231,215,193,.035),0 0 0 108px rgba(231,215,193,.025);pointer-events:none
}
.iema-shell-brand,.iema-portal-brand{
  position:relative!important;left:auto!important;top:auto!important;width:auto!important;
  display:flex!important;align-items:center!important;gap:14px!important;margin:0!important;z-index:2!important
}
.iema-shell-brand .iema-studio-logo,.iema-portal-brand .iema-studio-logo{
  width:62px!important;height:62px!important;border-radius:50%!important;object-fit:cover!important;
  padding:3px!important;background:#fff!important;border:1px solid rgba(255,255,255,.28)!important;box-shadow:none!important
}
.iema-shell-brand .iema-studio-name,.iema-portal-brand .iema-studio-name{
  color:#fff!important;font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(21px,2.3vw,32px)!important;
  font-weight:500!important;letter-spacing:-.02em!important;text-transform:none!important;line-height:1.02!important;white-space:normal!important
}
.iema-shell-brand .iema-account-label,.iema-portal-brand .iema-account-label{
  color:var(--md-gold-soft)!important;font-size:9px!important;letter-spacing:.23em!important;font-weight:800!important;text-transform:uppercase!important;margin-top:7px!important
}
.iema-plugin-version{color:#8e877f!important;font-size:9px!important;font-weight:700!important}
.iema-page-heading{position:relative;z-index:2!important}
.iema-page-kicker{color:var(--md-gold-soft)!important;font-size:10px!important;letter-spacing:.22em!important;text-transform:uppercase!important;font-weight:800!important}
.iema-app-topbar h1,.iema-top h1{color:#fff!important;font-family:Georgia,'Times New Roman',serif!important;font-weight:500!important;font-size:clamp(34px,4.4vw,58px)!important;line-height:.98!important;letter-spacing:-.035em!important;margin:7px 0 9px!important}
.iema-app-topbar p,.iema-top p{color:#cfc8bf!important;font-size:14px!important;line-height:1.65!important;margin:0!important;max-width:720px!important}

/* Full-width horizontal navigation: quiet and editorial. */
.iema-primary-nav,.iema-role-nav{
  position:static!important;width:100%!important;display:flex!important;flex-direction:row!important;align-items:center!important;
  gap:4px!important;padding:5px!important;margin:0 0 22px!important;background:#eee8df!important;border:0!important;border-radius:999px!important;
  box-shadow:none!important;overflow-x:auto!important;z-index:auto!important
}
.iema-primary-nav:before,.iema-role-nav:before{display:none!important}
.iema-primary-nav a,.iema-role-nav a{
  position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;
  min-height:42px!important;padding:9px 17px!important;border-radius:999px!important;background:transparent!important;color:#696158!important;
  font-size:12px!important;font-weight:800!important;text-decoration:none!important;letter-spacing:.01em!important
}
.iema-primary-nav a:after,.iema-role-nav a:after,.iema-primary-nav a:before,.iema-role-nav a:before{display:none!important}
.iema-primary-nav a:hover,.iema-role-nav a:hover{background:rgba(255,255,255,.62)!important;color:var(--md-ink)!important}
.iema-primary-nav a.active,.iema-role-nav a.active{background:var(--md-paper)!important;color:var(--md-ink)!important;box-shadow:0 4px 16px rgba(50,42,32,.06)!important}

/* Secondary nav reads as text tabs, not nested SaaS pills. */
.iema-secondary-nav,.iema-dancer-nav{
  display:flex!important;gap:20px!important;align-items:center!important;margin:6px 0 28px!important;padding:0 2px 11px!important;
  background:transparent!important;border:0!important;border-bottom:1px solid var(--md-stone)!important;border-radius:0!important;overflow-x:auto!important
}
.iema-secondary-nav a,.iema-dancer-nav a{padding:4px 0 9px!important;background:transparent!important;border-radius:0!important;color:#8a8176!important;font-size:12px!important;font-weight:800!important;white-space:nowrap!important;text-decoration:none!important}
.iema-secondary-nav a.active,.iema-dancer-nav a.active{color:var(--md-ink)!important;background:transparent!important;box-shadow:inset 0 -2px var(--md-gold)!important}

/* Canvas / panels. */
.iema-panel,.iema-stat-grid>div,.iema-mini-profile,.iema-athlete-roster-card{
  background:var(--md-paper)!important;border:1px solid #e8e0d6!important;border-radius:22px!important;box-shadow:var(--md-shadow)!important;color:var(--md-ink)!important
}
.iema-panel{padding:26px!important}.iema-panel h2,.iema-panel h3,.iema-panel h4{color:var(--md-ink)!important}.iema-panel p,.iema-panel small{color:var(--md-muted)!important}
.iema-stat-grid{gap:14px!important}.iema-stat-grid>div{padding:20px 22px!important}.iema-stat-grid strong{font-family:Georgia,'Times New Roman',serif!important;font-size:36px!important;font-weight:500!important;color:var(--md-ink)!important}.iema-stat-grid small{color:#8e857a!important;font-size:10px!important;letter-spacing:.12em!important}

/* Quick actions become restrained outlined controls. */
.iema-command-header{align-items:center!important}.iema-command-header h2{font-family:Georgia,'Times New Roman',serif!important;font-weight:500!important;font-size:30px!important;color:var(--md-ink)!important}.iema-command-header p{color:var(--md-muted)!important}
.iema-quick-actions a,.iema-text-action,.iema-btn{
  border-radius:999px!important;background:var(--md-ink)!important;color:#fff!important;border:1px solid var(--md-ink)!important;font-weight:800!important;box-shadow:none!important
}
.iema-quick-actions a:last-child{background:var(--md-gold)!important;border-color:var(--md-gold)!important;color:#fff!important}
.iema-btn-secondary{background:transparent!important;color:var(--md-ink)!important;border-color:#cfc5b8!important}

/* Dancer roster cards: light editorial portrait cards instead of black blocks. */
.iema-card-grid{gap:16px!important}.iema-ath-card{
  background:var(--md-paper)!important;border:1px solid #e7dfd4!important;border-radius:22px!important;color:var(--md-ink)!important;padding:19px!important;
  box-shadow:var(--md-shadow)!important;transition:transform .18s ease,box-shadow .18s ease!important
}
.iema-ath-card:hover{transform:translateY(-3px)!important;border-color:#d8cbbb!important;box-shadow:0 20px 42px rgba(44,37,29,.11)!important}
.iema-ath-card h3,.iema-ath-card strong{color:var(--md-ink)!important}.iema-ath-card p,.iema-ath-card small,.iema-ath-card .iema-athlete-age,.iema-ath-card .iema-athlete-age span{color:var(--md-muted)!important}.iema-ath-card b,.iema-ath-card span{color:#8a6336!important}
.iema-ath-card .iema-athlete-identity img,.iema-mini-profile img{border:3px solid #e9dfd1!important;box-shadow:0 6px 18px rgba(31,26,21,.10)!important}
.iema-athlete-roster-card{background:var(--md-paper)!important;color:var(--md-ink)!important}.iema-athlete-roster-card strong,.iema-athlete-roster-card .iema-athlete-team strong{color:var(--md-ink)!important}.iema-athlete-roster-card .iema-athlete-team span,.iema-athlete-roster-card .iema-athlete-age,.iema-athlete-roster-card .iema-athlete-age span{color:var(--md-muted)!important}.iema-athlete-roster-card .iema-athlete-name-line small{background:#efe4d5!important;color:#6e512f!important}.iema-athlete-roster-card.active,.iema-athlete-roster-card:hover{border-color:#cdb99f!important}

/* Creation / forms are light, calm and spacious. */
.iema-create-card,.iema-action-card{background:#23211f!important;color:#fff!important;border:0!important;border-radius:22px!important;box-shadow:0 18px 42px rgba(29,25,21,.12)!important}
.iema-create-card h3,.iema-create-card label,.iema-action-card strong,.iema-action-body label,.iema-action-body legend{color:#fff!important}
.iema-create-card p,.iema-action-card small{color:#bbb2a7!important}.iema-create-card input,.iema-create-card select,.iema-create-card textarea,.iema-action-body input,.iema-action-body select,.iema-action-body textarea{background:#302d29!important;color:#fff!important;border-color:#4b4640!important;border-radius:12px!important}
.iema-action-icon{background:var(--md-gold)!important;color:#fff!important}.iema-action-card summary:hover{background:#2a2724!important}

/* Calendar receives a calmer, editorial treatment. */
.iema-calendar{background:var(--md-paper)!important;border-color:#e4dbcf!important;border-radius:22px!important;box-shadow:var(--md-shadow)!important}.iema-calendar-title{color:var(--md-ink)!important;font-family:Georgia,'Times New Roman',serif!important;font-weight:500!important}.iema-calendar-head b{color:#81786d!important;background:#f1ebe2!important}.iema-calendar-day{background:#fffdf9!important;border-color:#eee6dc!important;color:var(--md-ink)!important}.iema-calendar-day.muted{background:#f4efe7!important}.iema-calendar-day>span,.iema-calendar-event{background:#efe5d7!important;border-left-color:var(--md-gold)!important;color:#5f4930!important}.iema-calendar-nav{background:var(--md-ink)!important;border-color:var(--md-ink)!important;color:#fff!important}.iema-calendar-nav:hover{background:var(--md-gold)!important;border-color:var(--md-gold)!important}.iema-calendar-today a{color:#8b6438!important}

/* Dancer workout remains high contrast, but not accent-colored. */
.iema-dancer-portal .iema-today-panel{background:#23211f!important;border-color:#23211f!important}.iema-dancer-section-title>span,.iema-dancer-portal .iema-workout-head span,.iema-exercise-number{color:var(--md-gold-soft)!important}.iema-dancer-portal .iema-workout-head>b,.iema-workout-progress>div>span{background:var(--md-gold)!important;color:#fff!important}.iema-exercise-card.is-complete{border-color:#8f6d45!important;background:#2b2723!important}.iema-complete-check input{accent-color:var(--md-gold)!important}

/* Studio color is intentionally de-emphasized in the shell. */
.iema-studio-name,.iema-page-kicker,.iema-ath-card b,.iema-ath-card span{--studio-accent:var(--md-gold)!important}

/* Dark mode uses graphite + warm neutral highlights. */
.iema-app[data-mode="dark"],.iema-app.iema-dark{background:#141311!important;color:#f6f0e8!important;border-color:#2c2925!important}.iema-app[data-mode="dark"] .iema-panel,.iema-app[data-mode="dark"] .iema-stat-grid>div,.iema-app[data-mode="dark"] .iema-mini-profile,.iema-app.iema-dark .iema-panel,.iema-app.iema-dark .iema-stat-grid>div{background:#1e1c19!important;border-color:#37332e!important;color:#f7f1e9!important}.iema-app[data-mode="dark"] .iema-panel h2,.iema-app[data-mode="dark"] .iema-panel h3,.iema-app.iema-dark .iema-panel h2,.iema-app.iema-dark .iema-panel h3{color:#fff!important}.iema-app[data-mode="dark"] .iema-primary-nav,.iema-app.iema-dark .iema-primary-nav{background:#211f1c!important}.iema-app[data-mode="dark"] .iema-primary-nav a.active,.iema-app.iema-dark .iema-primary-nav a.active{background:#302d29!important;color:#fff!important}

/* Mobile: no bottom dock; compact top navigation scrolls naturally. */
@media(max-width:900px){
  body{padding-bottom:0!important}.iema-app{margin:0!important;padding:0 14px 30px!important;border:0!important;border-radius:0!important;box-shadow:none!important;min-height:100vh!important}.iema-app-topbar,.iema-top{grid-template-columns:1fr!important;gap:20px!important;margin:0 -14px 16px!important;padding:22px 18px 24px!important;border-radius:0!important;min-height:0!important}.iema-shell-brand{margin:0!important}.iema-shell-brand .iema-studio-logo{width:50px!important;height:50px!important}.iema-app-topbar h1,.iema-top h1{font-size:38px!important}.iema-primary-nav,.iema-role-nav{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;top:auto!important;display:flex!important;grid-auto-flow:initial!important;grid-auto-columns:initial!important;width:100%!important;margin:0 0 18px!important;padding:5px!important;border-radius:14px!important;background:#eee8df!important;box-shadow:none!important;overflow-x:auto!important}.iema-primary-nav a,.iema-role-nav a{min-width:auto!important;min-height:40px!important;padding:8px 13px!important;font-size:11px!important}.iema-primary-nav a.active:before,.iema-role-nav a.active:before{display:none!important}.iema-secondary-nav,.iema-dancer-nav{margin-top:0!important}.iema-panel{padding:18px!important}.iema-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){.iema-card-grid{grid-template-columns:1fr!important}.iema-command-header{align-items:flex-start!important;flex-direction:column!important}.iema-quick-actions{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important}.iema-quick-actions a{width:100%!important}.iema-app-topbar h1,.iema-top h1{font-size:34px!important}.iema-shell-brand .iema-studio-name{font-size:22px!important}}

/* =========================================================
   v0.11.2 — Dark Premium Studio Redesign
   ========================================================= */
:root{
  --md2-bg:#090c12;
  --md2-bg-soft:#0d1119;
  --md2-surface:#121824;
  --md2-surface-2:#171f2e;
  --md2-surface-3:#1d2738;
  --md2-line:#273246;
  --md2-line-soft:#1d2636;
  --md2-text:#f7f9fc;
  --md2-muted:#a7b2c2;
  --md2-faint:#788598;
  --md2-blue:#7ca8ff;
  --md2-blue-strong:#4f86f7;
  --md2-blue-soft:#b6ceff;
  --md2-green:#7dd9aa;
  --md2-red:#ff8f98;
  --md2-shadow:0 24px 70px rgba(0,0,0,.32);
}

/* Remove the theme/page canvas feeling and let the application own the viewport. */
html:has(.iema-app),body:has(.iema-app){background:var(--md2-bg)!important}
body:has(.iema-app){color:var(--md2-text)!important}
body:has(.iema-app) .site-main,
body:has(.iema-app) main,
body:has(.iema-app) .entry-content,
body:has(.iema-app) .wp-site-blocks{background:transparent!important}

.iema-app{
  max-width:1480px!important;
  margin:0 auto!important;
  padding:24px 28px 54px!important;
  min-height:100vh!important;
  background:var(--md2-bg)!important;
  color:var(--md2-text)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

/* Single premium masthead. */
.iema-app-topbar,.iema-top{
  grid-template-columns:minmax(250px,.85fr) minmax(420px,1.15fr)!important;
  align-items:center!important;
  min-height:138px!important;
  margin:0 0 18px!important;
  padding:26px 30px!important;
  border:1px solid var(--md2-line-soft)!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 88% 8%,rgba(124,168,255,.14),transparent 28%),
    linear-gradient(135deg,#0b0f17 0%,#111827 58%,#182238 100%)!important;
  overflow:hidden!important;
}
.iema-app-topbar:after,.iema-top:after{display:none!important}
.iema-shell-brand .iema-studio-logo,.iema-portal-brand .iema-studio-logo{
  width:68px!important;height:68px!important;border-radius:18px!important;padding:0!important;
  background:#fff!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 10px 30px rgba(0,0,0,.28)!important
}
.iema-shell-brand .iema-studio-name,.iema-portal-brand .iema-studio-name{
  color:var(--md2-text)!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:clamp(24px,2.5vw,36px)!important;font-weight:900!important;letter-spacing:-.035em!important;line-height:1!important
}
.iema-shell-brand .iema-account-label,.iema-portal-brand .iema-account-label{
  color:var(--md2-blue)!important;font-size:10px!important;letter-spacing:.19em!important;font-weight:900!important;margin-top:8px!important
}
.iema-plugin-version{color:#8592a7!important}
.iema-page-kicker{color:var(--md2-blue)!important;font-size:10px!important;font-weight:900!important;letter-spacing:.18em!important}
.iema-app-topbar h1,.iema-top h1{
  color:#fff!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:clamp(34px,4vw,52px)!important;font-weight:850!important;letter-spacing:-.045em!important;line-height:1!important;margin:6px 0 9px!important
}
.iema-app-topbar p,.iema-top p{color:#b8c2d0!important;line-height:1.55!important}

/* Main navigation feels like an application bar, not beige pills. */
.iema-primary-nav,.iema-role-nav{
  gap:7px!important;padding:7px!important;margin:0 0 20px!important;background:#0e141e!important;
  border:1px solid var(--md2-line-soft)!important;border-radius:16px!important
}
.iema-primary-nav a,.iema-role-nav a{
  min-height:44px!important;padding:10px 18px!important;border-radius:11px!important;color:#aab5c5!important;font-size:12px!important;font-weight:850!important
}
.iema-primary-nav a:hover,.iema-role-nav a:hover{background:#161e2b!important;color:#fff!important}
.iema-primary-nav a.active,.iema-role-nav a.active{background:#202b3c!important;color:#fff!important;box-shadow:inset 0 0 0 1px rgba(124,168,255,.28)!important}
.iema-primary-nav a.active:before,.iema-role-nav a.active:before{content:''!important;display:block!important;width:6px!important;height:6px!important;border-radius:50%!important;background:var(--md2-blue)!important;margin-right:8px!important;position:static!important}

.iema-secondary-nav,.iema-dancer-nav{border-bottom-color:var(--md2-line)!important;margin-bottom:22px!important}
.iema-secondary-nav a,.iema-dancer-nav a{color:#7f8da0!important}
.iema-secondary-nav a.active,.iema-dancer-nav a.active{color:#fff!important;box-shadow:inset 0 -2px var(--md2-blue)!important}

/* Workspace canvas. */
.iema-panel,.iema-stat-grid>div,.iema-mini-profile,.iema-athlete-roster-card{
  background:var(--md2-surface)!important;border:1px solid var(--md2-line-soft)!important;border-radius:18px!important;
  color:var(--md2-text)!important;box-shadow:none!important
}
.iema-panel{padding:24px!important}
.iema-panel h2,.iema-panel h3,.iema-panel h4,.iema-command-header h2{color:#fff!important;font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;font-weight:850!important}
.iema-panel p,.iema-panel small,.iema-command-header p{color:var(--md2-muted)!important}
.iema-kicker{color:var(--md2-blue)!important;letter-spacing:.16em!important}
.iema-stat-grid{gap:12px!important}
.iema-stat-grid>div{padding:18px 20px!important;background:linear-gradient(145deg,#121824,#151d2a)!important}
.iema-stat-grid strong{font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;color:#fff!important;font-weight:850!important;font-size:32px!important}
.iema-stat-grid small{color:#8e9bad!important;letter-spacing:.09em!important}

.iema-quick-actions a,.iema-text-action,.iema-btn{
  border-radius:11px!important;background:#1b2637!important;color:#fff!important;border:1px solid #2a3850!important;font-weight:850!important
}
.iema-quick-actions a:hover,.iema-text-action:hover,.iema-btn:hover{background:#25334a!important;border-color:#405374!important}
.iema-quick-actions a:last-child,.iema-btn.iema-btn-big{background:var(--md2-blue-strong)!important;border-color:var(--md2-blue-strong)!important;color:#fff!important}
.iema-btn-secondary,.iema-btn-ghost{background:transparent!important;color:#dce5f2!important;border-color:#35435b!important}

/* Completely rebuilt dancer overview cards — clear sections and breathing room. */
.iema-card-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))!important;gap:16px!important}
.iema-ath-card{
  display:grid!important;grid-template-columns:1fr!important;gap:16px!important;min-height:250px!important;padding:22px!important;
  background:linear-gradient(150deg,#121824 0%,#151c29 100%)!important;border:1px solid #263247!important;border-radius:20px!important;
  color:#fff!important;box-shadow:0 16px 38px rgba(0,0,0,.16)!important;transform:none!important
}
.iema-ath-card:hover{transform:translateY(-2px)!important;border-color:#415572!important;box-shadow:0 20px 46px rgba(0,0,0,.25)!important}
.iema-ath-card .iema-athlete-identity{display:grid!important;grid-template-columns:72px minmax(0,1fr)!important;align-items:center!important;gap:16px!important;padding-bottom:15px!important;border-bottom:1px solid #253044!important}
.iema-ath-card .iema-athlete-identity img{width:72px!important;height:72px!important;border-radius:18px!important;object-fit:cover!important;border:2px solid #33435d!important;box-shadow:none!important}
.iema-ath-card .iema-athlete-identity span{display:inline-flex!important;width:max-content!important;margin-bottom:5px!important;padding:4px 7px!important;border-radius:7px!important;background:#1f2b3e!important;color:var(--md2-blue-soft)!important;font-size:9px!important;font-weight:900!important;letter-spacing:.08em!important}
.iema-ath-card h3{margin:0!important;color:#fff!important;font-size:21px!important;line-height:1.1!important;font-weight:850!important}
.iema-ath-card .iema-athlete-age{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:0!important}
.iema-ath-card .iema-athlete-age span{display:block!important;padding:10px 12px!important;background:#0e141e!important;border:1px solid #222e41!important;border-radius:11px!important;color:#9eabba!important;font-size:11px!important;line-height:1.35!important}
.iema-ath-card .iema-athlete-age b{display:block!important;color:#fff!important;font-size:13px!important;margin-top:2px!important}
.iema-ath-card p{margin:0!important;min-height:44px!important;padding:12px!important;background:#0e141e!important;border-radius:11px!important;color:#b6c1d0!important;line-height:1.45!important}
.iema-ath-card>b{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-top:auto!important;padding-top:2px!important;color:var(--md2-blue)!important;font-size:12px!important}

/* Full roster cards are row-based but have clear team/age zones. */
.iema-premium-roster{gap:12px!important}
.iema-athlete-roster-card{
  display:grid!important;grid-template-columns:82px minmax(0,1fr) 34px!important;align-items:center!important;gap:18px!important;
  padding:18px!important;background:#111824!important;border-color:#263247!important;border-radius:18px!important
}
.iema-athlete-roster-card>img{width:82px!important;height:82px!important;border-radius:18px!important;object-fit:cover!important;margin:0!important;border:2px solid #33435d!important}
.iema-athlete-roster-copy{gap:12px!important}
.iema-athlete-name-line{justify-content:flex-start!important;gap:10px!important}
.iema-athlete-name-line strong{font-size:19px!important;color:#fff!important}
.iema-athlete-name-line small{background:#1e2b40!important;color:var(--md2-blue-soft)!important;border:1px solid #30415e!important;font-size:9px!important}
.iema-athlete-team{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:0!important}
.iema-athlete-team>div{padding:10px 12px!important;background:#0d131d!important;border:1px solid #202b3d!important;border-radius:10px!important}
.iema-athlete-team span{color:#76869a!important;font-size:9px!important}
.iema-athlete-team strong{color:#dfe7f2!important;font-size:12px!important;margin-top:2px!important}
.iema-athlete-roster-card .iema-athlete-age{gap:8px 14px!important;margin:0!important;color:#99a7b9!important}
.iema-athlete-roster-card .iema-athlete-age b{color:#fff!important}
.iema-row-arrow{color:var(--md2-blue)!important}
.iema-athlete-roster-card:hover{background:#151e2b!important;border-color:#415572!important}

/* New dancer workspace hero. */
.iema-dancer-hero{
  background:linear-gradient(145deg,#101722,#172235)!important;border-color:#2b3950!important;border-radius:20px!important;padding:24px!important;box-shadow:none!important
}
.iema-dancer-hero>img{width:112px!important;height:112px!important;border-radius:22px!important;border:2px solid #435776!important}
.iema-dancer-hero-copy h2{font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;font-weight:900!important}
.iema-dancer-hero-copy .iema-athlete-age,.iema-dancer-hero-copy .iema-athlete-team{color:#b8c3d1!important}
.iema-dancer-hero-stats>div{background:#0d131d!important;border-color:#27334a!important;border-radius:13px!important}
.iema-dancer-hero-stats strong{color:var(--md2-blue)!important}

/* Forms and creation panels now integrate with the dark application instead of feeling bolted on. */
.iema-create-card,.iema-action-card{
  background:#101722!important;color:#fff!important;border:1px solid #27344a!important;border-radius:18px!important;box-shadow:none!important
}
.iema-create-card input,.iema-create-card select,.iema-create-card textarea,.iema-action-body input,.iema-action-body select,.iema-action-body textarea,
.iema-form input,.iema-form select,.iema-form textarea{
  background:#0b111a!important;color:#f6f8fb!important;border-color:#2a374d!important;border-radius:10px!important
}
.iema-form input:focus,.iema-form select:focus,.iema-form textarea:focus{outline:none!important;border-color:#5578ad!important;box-shadow:0 0 0 3px rgba(124,168,255,.10)!important}
.iema-action-icon{background:#1e2c42!important;color:var(--md2-blue)!important}

/* Calendar aligns with the application palette. */
.iema-calendar{background:#111824!important;border-color:#263247!important;border-radius:18px!important;box-shadow:none!important}
.iema-calendar-title{font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;color:#fff!important;font-weight:850!important}
.iema-calendar-head b{background:#151e2b!important;color:#97a5b8!important}
.iema-calendar-day{background:#0e141e!important;border-color:#202b3d!important;color:#fff!important}
.iema-calendar-day.muted{background:#0a0f17!important;color:#546277!important}
.iema-calendar-day>span,.iema-calendar-event{background:#1c2a40!important;border-left-color:var(--md2-blue)!important;color:#dce7f8!important}
.iema-calendar-nav{background:#192438!important;border-color:#2d405f!important;color:#fff!important}
.iema-calendar-nav:hover{background:#253653!important;border-color:#405b85!important}
.iema-calendar-today a{color:var(--md2-blue)!important}

/* Dancer workout cards remain dark but become cooler and cleaner. */
.iema-dancer-portal .iema-today-panel,.iema-dancer-portal .iema-workout,.iema-dancer-portal .iema-recent-panel{background:#0f1622!important;border-color:#253147!important}
.iema-dancer-portal .iema-workout-head{background:#0c121c!important;border-color:#253147!important}
.iema-dancer-section-title>span,.iema-dancer-portal .iema-workout-head span,.iema-exercise-number{color:var(--md2-blue)!important}
.iema-dancer-portal .iema-workout-head>b,.iema-workout-progress>div>span{background:var(--md2-blue-strong)!important;color:#fff!important}
.iema-exercise-card{background:#121a27!important;border-color:#28364c!important}
.iema-exercise-card.is-complete{border-color:#3c6f68!important;background:#11201f!important}
.iema-complete-check input{accent-color:var(--md2-blue-strong)!important}

/* Availability keeps semantic colors but uses dark surfaces. */
.iema-availability-legend .is-unknown{background:#151e2b!important;color:#a8b4c4!important;border-color:#2b394f!important}

/* Explicitly neutralize saved studio accent in the core UI. */
.iema-app{--studio-accent:var(--md2-blue)!important;--accent:var(--md2-blue)!important}

@media(max-width:900px){
  .iema-app{padding:12px 12px 34px!important}
  .iema-app-topbar,.iema-top{grid-template-columns:1fr!important;margin:0 0 14px!important;padding:20px!important;border-radius:18px!important;gap:16px!important}
  .iema-shell-brand .iema-studio-logo{width:54px!important;height:54px!important;border-radius:14px!important}
  .iema-primary-nav,.iema-role-nav{background:#0e141e!important;border-radius:13px!important}
  .iema-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .iema-athlete-roster-card{grid-template-columns:68px minmax(0,1fr) 26px!important;padding:14px!important;gap:13px!important}
  .iema-athlete-roster-card>img{width:68px!important;height:68px!important}
}
@media(max-width:650px){
  .iema-card-grid{grid-template-columns:1fr!important}
  .iema-ath-card{min-height:0!important}
  .iema-athlete-roster-card{grid-template-columns:58px minmax(0,1fr)!important;align-items:start!important}
  .iema-athlete-roster-card>img{width:58px!important;height:58px!important;border-radius:14px!important}
  .iema-row-arrow{display:none!important}
  .iema-athlete-team{grid-template-columns:1fr!important}
  .iema-athlete-name-line{align-items:flex-start!important}
  .iema-app-topbar h1,.iema-top h1{font-size:34px!important}
}

/* =========================================================
   v0.11.3 — Full-width Portal Shell Correction
   The portal owns the screen; marketing chrome is removed.
   ========================================================= */
body:has(.iema-app){
  margin:0!important;
  background:#090c12!important;
}
body:has(.iema-app) header.site-header,
body:has(.iema-app) .site-header,
body:has(.iema-app) .wp-site-blocks > header:not(.iema-top),
body:has(.iema-app) .site-branding,
body:has(.iema-app) .entry-header,
body:has(.iema-app) .entry-title,
body:has(.iema-app) .wp-block-post-title,
body:has(.iema-app) article > header:not(.iema-top){display:none!important}
body:has(.iema-app) .site,
body:has(.iema-app) .site-content,
body:has(.iema-app) .content-area,
body:has(.iema-app) .site-main,
body:has(.iema-app) main,
body:has(.iema-app) article,
body:has(.iema-app) .entry-content,
body:has(.iema-app) .wp-site-blocks,
body:has(.iema-app) .wp-block-group,
body:has(.iema-app) .is-layout-constrained{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding-left:0!important;
  padding-right:0!important;
}
body:has(.iema-app) .entry-content > *{max-width:none!important}
body:has(.iema-app) footer.site-footer,
body:has(.iema-app) .site-footer{display:none!important}

.iema-app{
  width:min(1560px,calc(100vw - 32px))!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:22px 0 56px!important;
  transform:none!important;
}
.iema-app-topbar,.iema-top{
  display:grid!important;
  grid-template-columns:minmax(230px,320px) minmax(0,1fr) minmax(190px,240px)!important;
  column-gap:28px!important;
  min-height:124px!important;
  padding:24px 26px!important;
  overflow:visible!important;
}
.iema-shell-brand{min-width:0!important}
.iema-page-heading{min-width:0!important}
.iema-page-heading h1{
  max-width:none!important;
  overflow:visible!important;
  white-space:normal!important;
  text-overflow:clip!important;
  font-size:clamp(30px,3.2vw,48px)!important;
}
.iema-page-heading p{max-width:760px!important}
.iema-portal-user{position:relative!important;justify-self:end!important;width:100%!important;max-width:240px!important;z-index:100!important}
.iema-portal-user summary{
  list-style:none!important;cursor:pointer!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) 14px!important;
  gap:10px!important;align-items:center!important;padding:8px 10px!important;border:1px solid #2d3a50!important;border-radius:14px!important;
  background:#0d131d!important;color:#fff!important;min-height:58px!important
}
.iema-portal-user summary::-webkit-details-marker{display:none!important}
.iema-portal-user summary img{width:42px!important;height:42px!important;border-radius:50%!important;object-fit:cover!important;border:1px solid #46556d!important}
.iema-portal-user summary span{display:grid!important;min-width:0!important}
.iema-portal-user summary strong{color:#fff!important;font-size:12px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.iema-portal-user summary small{color:#92a1b5!important;font-size:10px!important;margin-top:2px!important}
.iema-portal-user summary b{color:#8ea0b8!important;font-size:13px!important}
.iema-portal-user nav{
  position:absolute!important;right:0!important;top:calc(100% + 8px)!important;width:210px!important;padding:7px!important;
  border:1px solid #2b374b!important;border-radius:14px!important;background:#101722!important;box-shadow:0 22px 48px rgba(0,0,0,.42)!important
}
.iema-portal-user:not([open]) nav{display:none!important}
.iema-portal-user nav a{display:block!important;padding:11px 12px!important;border-radius:9px!important;color:#e6edf7!important;text-decoration:none!important;font-size:12px!important;font-weight:800!important}
.iema-portal-user nav a:hover{background:#1a2535!important;color:#fff!important}
.iema-portal-user nav .iema-portal-logout{color:#ffabb1!important;border-top:1px solid #243044!important;margin-top:5px!important;padding-top:12px!important}

/* Give cards and workspaces room to breathe on full desktop widths. */
.iema-card-grid{grid-template-columns:repeat(auto-fit,minmax(330px,1fr))!important;gap:20px!important}
.iema-panel{margin:20px 0!important}
.iema-stat-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important}

@media(max-width:980px){
  .iema-app{width:min(100% - 20px,1200px)!important;padding-top:10px!important}
  .iema-app-topbar,.iema-top{grid-template-columns:1fr auto!important;grid-template-areas:'brand user' 'heading heading'!important;row-gap:20px!important;padding:20px!important}
  .iema-shell-brand{grid-area:brand!important}.iema-page-heading{grid-area:heading!important}.iema-portal-user{grid-area:user!important;width:auto!important;min-width:64px!important}
  .iema-portal-user summary{grid-template-columns:42px 14px!important;padding:7px!important}.iema-portal-user summary span{display:none!important}
}
@media(max-width:650px){
  .iema-app{width:100%!important;padding:0 0 36px!important}
  .iema-app-topbar,.iema-top{border-left:0!important;border-right:0!important;border-radius:0!important;margin-bottom:10px!important;padding:16px!important}
  .iema-shell-brand .iema-studio-logo{width:50px!important;height:50px!important;border-radius:13px!important}
  .iema-shell-brand .iema-studio-name{font-size:19px!important}
  .iema-page-heading h1{font-size:30px!important}
  .iema-primary-nav,.iema-role-nav,.iema-secondary-nav,.iema-dancer-nav,.iema-panel,.iema-stat-grid,.iema-card-grid{margin-left:12px!important;margin-right:12px!important}
  .iema-card-grid{grid-template-columns:1fr!important;gap:14px!important}
}

/* =========================================================
   MyDancer v0.11.4 — Fresh Light Studio UI reset
   Deliberately overrides the prior dark/editorial experiments.
   ========================================================= */
:root{
  --md3-bg:#f2f5f9;
  --md3-surface:#ffffff;
  --md3-surface-soft:#f8fafc;
  --md3-text:#132238;
  --md3-muted:#6d7b8d;
  --md3-line:#dbe3ec;
  --md3-line-strong:#cbd5e1;
  --md3-navy:#12233f;
  --md3-blue:#5874d8;
  --md3-blue-soft:#eef2ff;
  --md3-green:#2f7d64;
  --md3-red:#b54d5a;
  --md3-shadow:0 12px 34px rgba(22,38,63,.08);
  --md3-shadow-soft:0 5px 18px rgba(22,38,63,.06);
}
html:has(.iema-app),body:has(.iema-app){background:var(--md3-bg)!important;color:var(--md3-text)!important}
body:has(.iema-app){margin:0!important;padding:0!important}
body:has(.iema-app) .site-main,
body:has(.iema-app) main,
body:has(.iema-app) article,
body:has(.iema-app) .entry-content,
body:has(.iema-app) .wp-site-blocks,
body:has(.iema-app) .content-area,
body:has(.iema-app) .site-content,
body:has(.iema-app) .is-layout-constrained{background:transparent!important;color:var(--md3-text)!important;max-width:none!important;width:100%!important;margin:0!important;padding-left:0!important;padding-right:0!important}
body:has(.iema-app) .entry-header,
body:has(.iema-app) .entry-title,
body:has(.iema-app) .wp-block-post-title,
body:has(.iema-app) article > header:not(.iema-top){display:none!important}
body:has(.iema-app) footer.site-footer,body:has(.iema-app) .site-footer{display:none!important}

.iema-app{
  box-sizing:border-box!important;
  max-width:1320px!important;
  width:calc(100% - 40px)!important;
  margin:28px auto 56px!important;
  padding:0!important;
  background:transparent!important;
  color:var(--md3-text)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  min-height:0!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.iema-app *{box-sizing:border-box}

/* One clean application masthead */
.iema-app-topbar,.iema-top{
  display:grid!important;
  grid-template-columns:minmax(220px,.8fr) minmax(320px,1.4fr) auto!important;
  align-items:center!important;
  gap:34px!important;
  min-height:132px!important;
  margin:0 0 18px!important;
  padding:25px 30px!important;
  border:1px solid var(--md3-line)!important;
  border-radius:24px!important;
  background:var(--md3-surface)!important;
  color:var(--md3-text)!important;
  box-shadow:var(--md3-shadow)!important;
  overflow:visible!important;
}
.iema-app-topbar:before,.iema-app-topbar:after,.iema-top:before,.iema-top:after{display:none!important}
.iema-shell-brand,.iema-portal-brand{display:flex!important;align-items:center!important;gap:15px!important;min-width:0!important;margin:0!important}
.iema-shell-brand .iema-studio-logo,.iema-portal-brand .iema-studio-logo{width:58px!important;height:58px!important;object-fit:cover!important;border-radius:16px!important;border:1px solid var(--md3-line)!important;background:#fff!important;padding:4px!important;box-shadow:none!important}
.iema-shell-brand .iema-studio-name,.iema-portal-brand .iema-studio-name{margin:0!important;color:var(--md3-navy)!important;font-family:inherit!important;font-size:clamp(18px,2vw,25px)!important;line-height:1.05!important;font-weight:850!important;letter-spacing:-.025em!important;text-transform:none!important}
.iema-shell-brand .iema-account-label,.iema-portal-brand .iema-account-label,.iema-account-label,.iema-top .iema-account-label{display:block!important;margin-top:6px!important;color:var(--md3-muted)!important;font-size:9px!important;font-weight:850!important;letter-spacing:.16em!important;opacity:1!important;order:initial!important}
.iema-plugin-version{color:var(--md3-muted)!important;font-weight:700!important;letter-spacing:.04em!important}
.iema-page-heading{min-width:0!important;padding:0!important;border:0!important}
.iema-page-kicker{display:block!important;color:var(--md3-blue)!important;font-size:10px!important;letter-spacing:.16em!important;font-weight:900!important;margin-bottom:7px!important}
.iema-app-topbar h1,.iema-top h1{margin:0!important;color:var(--md3-navy)!important;font-family:inherit!important;font-size:clamp(29px,3vw,43px)!important;line-height:1!important;font-weight:850!important;letter-spacing:-.035em!important;white-space:normal!important}
.iema-app-topbar p,.iema-top p{margin:9px 0 0!important;color:var(--md3-muted)!important;font-size:14px!important;line-height:1.45!important;max-width:620px!important}

/* Account menu */
.iema-portal-user{position:relative!important;justify-self:end!important;width:auto!important;min-width:210px!important;max-width:260px!important;z-index:100!important}
.iema-portal-user summary{display:grid!important;grid-template-columns:42px 1fr 14px!important;align-items:center!important;gap:10px!important;padding:7px 10px!important;border:1px solid var(--md3-line)!important;border-radius:16px!important;background:var(--md3-surface-soft)!important;color:var(--md3-text)!important;cursor:pointer!important;box-shadow:none!important}
.iema-portal-user summary img{width:42px!important;height:42px!important;border-radius:50%!important;object-fit:cover!important;border:1px solid var(--md3-line-strong)!important}
.iema-portal-user summary strong{color:var(--md3-navy)!important;font-size:12px!important}.iema-portal-user summary small{color:var(--md3-muted)!important;font-size:10px!important}
.iema-portal-user summary b{color:var(--md3-muted)!important}.iema-portal-user nav{position:absolute!important;right:0!important;top:calc(100% + 8px)!important;width:210px!important;padding:7px!important;border:1px solid var(--md3-line)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 14px 36px rgba(20,35,55,.15)!important}
.iema-portal-user nav a{display:block!important;padding:10px 11px!important;border-radius:9px!important;color:var(--md3-navy)!important;font-size:12px!important;font-weight:800!important;text-decoration:none!important}.iema-portal-user nav a:hover{background:var(--md3-blue-soft)!important;color:var(--md3-blue)!important}.iema-portal-user nav .iema-portal-logout{color:var(--md3-red)!important;border-top:1px solid var(--md3-line)!important}

/* Primary workspace navigation */
.iema-primary-nav,.iema-role-nav{position:static!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:6px!important;width:100%!important;margin:0 0 12px!important;padding:7px!important;border:1px solid var(--md3-line)!important;border-radius:18px!important;background:var(--md3-surface)!important;box-shadow:var(--md3-shadow-soft)!important;overflow-x:auto!important}
.iema-primary-nav a,.iema-role-nav a{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:9px 16px!important;border:0!important;border-radius:12px!important;background:transparent!important;color:#526276!important;font-size:12px!important;font-weight:800!important;text-decoration:none!important;white-space:nowrap!important;box-shadow:none!important}
.iema-primary-nav a:hover,.iema-role-nav a:hover{background:#f3f6fb!important;color:var(--md3-navy)!important}.iema-primary-nav a.active,.iema-role-nav a.active{background:var(--md3-navy)!important;color:#fff!important}.iema-primary-nav a.active:before,.iema-role-nav a.active:before{display:none!important}
.iema-secondary-nav,.iema-dancer-nav{display:flex!important;gap:7px!important;margin:0 0 22px!important;padding:0 2px!important;overflow-x:auto!important;background:transparent!important;border:0!important}.iema-secondary-nav a,.iema-dancer-nav a{padding:8px 12px!important;border-radius:10px!important;background:transparent!important;color:var(--md3-muted)!important;font-size:11px!important;font-weight:800!important;text-decoration:none!important;border:1px solid transparent!important}.iema-secondary-nav a.active,.iema-dancer-nav a.active{background:var(--md3-blue-soft)!important;border-color:#dbe3ff!important;color:var(--md3-blue)!important}

/* Surfaces */
.iema-panel,.iema-create-card,.iema-action-card,.iema-stat-grid>div,.iema-mini-profile,.iema-calendar,.iema-dancer-hero,.iema-command-header{
  background:var(--md3-surface)!important;
  color:var(--md3-text)!important;
  border:1px solid var(--md3-line)!important;
  border-radius:20px!important;
  box-shadow:var(--md3-shadow-soft)!important;
}
.iema-panel{padding:24px!important;margin:0 0 18px!important}.iema-panel h2,.iema-panel h3,.iema-create-card h2,.iema-create-card h3,.iema-command-header h2{color:var(--md3-navy)!important;font-family:inherit!important;letter-spacing:-.02em!important}.iema-panel p,.iema-panel small,.iema-help,.iema-section-head p{color:var(--md3-muted)!important}
.iema-stat-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin:0 0 18px!important}.iema-stat-grid>div{padding:19px 20px!important;border-top:0!important;text-align:left!important}.iema-stat-grid strong{display:block!important;color:var(--md3-navy)!important;font-size:30px!important;line-height:1!important}.iema-stat-grid small{display:block!important;margin-top:7px!important;color:var(--md3-muted)!important;font-size:10px!important;font-weight:850!important;letter-spacing:.09em!important;text-transform:uppercase!important}

/* Owner dashboard command center */
.iema-command-header{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:24px!important;padding:24px!important;margin-bottom:14px!important}.iema-kicker{color:var(--md3-blue)!important;font-size:9px!important;font-weight:900!important;letter-spacing:.15em!important}.iema-command-header h2{margin:4px 0 5px!important;font-size:27px!important}.iema-command-header p{margin:0!important;color:var(--md3-muted)!important}.iema-quick-actions{display:flex!important;gap:8px!important;flex-wrap:wrap!important}.iema-quick-actions a,.iema-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;border:0!important;border-radius:11px!important;background:var(--md3-navy)!important;color:#fff!important;padding:10px 14px!important;font-size:12px!important;font-weight:800!important;text-decoration:none!important;box-shadow:none!important}.iema-quick-actions a:hover,.iema-btn:hover{background:#203756!important;color:#fff!important}.iema-btn.secondary,.iema-btn-secondary{background:var(--md3-blue-soft)!important;color:var(--md3-blue)!important}

/* Dancer cards: roomy, readable identity cards */
.iema-card-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}.iema-ath-card{display:flex!important;flex-direction:column!important;gap:16px!important;min-height:325px!important;padding:20px!important;border:1px solid var(--md3-line)!important;border-radius:20px!important;background:#fff!important;color:var(--md3-text)!important;box-shadow:var(--md3-shadow-soft)!important;text-decoration:none!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important}.iema-ath-card:hover{transform:translateY(-2px)!important;border-color:#bfc9e8!important;box-shadow:0 14px 30px rgba(22,38,63,.11)!important}.iema-ath-card .iema-athlete-identity{display:grid!important;grid-template-columns:82px minmax(0,1fr)!important;align-items:center!important;gap:16px!important;padding:0 0 15px!important;border-bottom:1px solid var(--md3-line)!important}.iema-ath-card .iema-athlete-identity img{width:82px!important;height:82px!important;border-radius:18px!important;object-fit:cover!important;border:1px solid var(--md3-line)!important;box-shadow:none!important}.iema-ath-card .iema-athlete-identity span{display:inline-flex!important;width:max-content!important;margin:0 0 6px!important;padding:4px 8px!important;border-radius:999px!important;background:var(--md3-blue-soft)!important;color:var(--md3-blue)!important;font-size:9px!important;font-weight:900!important;letter-spacing:.08em!important}.iema-ath-card h3{margin:0!important;color:var(--md3-navy)!important;font-size:21px!important;line-height:1.15!important;font-weight:850!important}.iema-ath-card .iema-athlete-age{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;margin:0!important}.iema-ath-card .iema-athlete-age span{display:block!important;padding:11px 12px!important;border-radius:12px!important;background:var(--md3-surface-soft)!important;color:var(--md3-muted)!important;font-size:10px!important;line-height:1.35!important}.iema-ath-card .iema-athlete-age b{display:block!important;margin-top:3px!important;color:var(--md3-navy)!important;font-size:13px!important}.iema-ath-card p{margin:0!important;min-height:0!important;padding:12px!important;border-radius:12px!important;background:#f7f9fc!important;color:#58697e!important;line-height:1.5!important}.iema-ath-card>b{display:block!important;margin-top:auto!important;padding-top:2px!important;color:var(--md3-blue)!important;font-size:12px!important}

/* Dancer workspace */
.iema-dancer-hero{display:grid!important;grid-template-columns:120px minmax(0,1fr)!important;gap:22px!important;padding:24px!important}.iema-dancer-hero img{width:120px!important;height:120px!important;border-radius:24px!important;object-fit:cover!important;border:1px solid var(--md3-line)!important}.iema-dancer-hero h2{color:var(--md3-navy)!important}.iema-dancer-hero p,.iema-dancer-hero small{color:var(--md3-muted)!important}

/* Forms */
.iema-create-card,.iema-action-card{padding:22px!important}.iema-create-card h3,.iema-create-card label,.iema-action-card strong,.iema-action-body label,.iema-action-body legend{color:var(--md3-navy)!important}.iema-create-card p,.iema-action-card small{color:var(--md3-muted)!important}.iema-create-card input,.iema-create-card select,.iema-create-card textarea,.iema-action-body input,.iema-action-body select,.iema-action-body textarea,.iema-form-grid input,.iema-form-grid select,.iema-form-grid textarea{background:#fff!important;color:var(--md3-text)!important;border:1px solid var(--md3-line-strong)!important;border-radius:11px!important;box-shadow:none!important}.iema-create-card input:focus,.iema-create-card select:focus,.iema-create-card textarea:focus,.iema-action-body input:focus,.iema-action-body select:focus,.iema-action-body textarea:focus{outline:3px solid rgba(88,116,216,.13)!important;border-color:#8fa2e3!important}.iema-action-card summary{background:#fff!important}.iema-action-card summary:hover{background:#f8faff!important}.iema-action-icon{background:var(--md3-blue-soft)!important;color:var(--md3-blue)!important}

/* Calendar */
.iema-calendar{overflow:hidden!important}.iema-calendar-head{background:#f4f7fb!important}.iema-calendar-head b{color:#5f7085!important}.iema-calendar-day{background:#fff!important;color:var(--md3-text)!important;border-color:var(--md3-line)!important}.iema-calendar-day.muted{background:#f8fafc!important;color:#a8b2bf!important}.iema-calendar-event{background:var(--md3-blue-soft)!important;border-left:3px solid var(--md3-blue)!important;color:var(--md3-navy)!important}.iema-calendar-title{color:var(--md3-navy)!important}.iema-full-calendar{background:var(--md3-bg)!important;color:var(--md3-text)!important}.iema-full-calendar-bar{background:#fff!important;border-bottom:1px solid var(--md3-line)!important;color:var(--md3-text)!important}.iema-full-calendar-heading small{color:var(--md3-blue)!important}.iema-full-calendar-heading strong{color:var(--md3-navy)!important}.iema-full-calendar-body .iema-calendar{background:#fff!important;border-color:var(--md3-line)!important}.iema-full-calendar-body .iema-calendar-day{background:#fff!important;color:var(--md3-text)!important}.iema-full-calendar-body .iema-calendar-day.muted{background:#f8fafc!important}.iema-full-calendar-body .iema-calendar-head b{color:var(--md3-muted)!important}.iema-full-calendar-body .iema-calendar-event{background:var(--md3-blue-soft)!important;border-left-color:var(--md3-blue)!important;color:var(--md3-navy)!important}

/* Dancer workout stays high contrast but not black-heavy */
.iema-dancer-portal{max-width:1100px!important}.iema-dancer-portal .iema-today-panel,.iema-dancer-portal .iema-workout,.iema-dancer-portal .iema-recent-panel{background:#fff!important;border-color:var(--md3-line)!important;color:var(--md3-text)!important}.iema-dancer-section-title{background:#f7f9fc!important;border-color:var(--md3-line)!important}.iema-dancer-section-title>span,.iema-dancer-portal .iema-workout-head span,.iema-exercise-number{color:var(--md3-blue)!important}.iema-dancer-section-title h2,.iema-dancer-portal .iema-workout-head h3{color:var(--md3-navy)!important}.iema-dancer-section-title p,.iema-dancer-portal .iema-workout-head small{color:var(--md3-muted)!important}.iema-dancer-portal .iema-workout-head{background:#f8fafc!important;border-color:var(--md3-line)!important;color:var(--md3-text)!important}.iema-dancer-portal .iema-workout-head>b,.iema-workout-progress>div>span{background:var(--md3-blue)!important;color:#fff!important}.iema-exercise-card{background:#fff!important;border-color:var(--md3-line)!important;color:var(--md3-text)!important}.iema-exercise-card h4,.iema-exercise-card strong{color:var(--md3-navy)!important}.iema-exercise-card p,.iema-exercise-card small{color:var(--md3-muted)!important}.iema-exercise-card.is-complete{border-color:#a8d4c4!important;background:#f2fbf7!important}.iema-complete-check input{accent-color:var(--md3-blue)!important}.iema-dancer-portal .iema-wellness{background:#f8fafc!important;border-color:var(--md3-line)!important}.iema-dancer-portal .iema-wellness label{color:var(--md3-navy)!important}.iema-dancer-portal .iema-wellness input,.iema-dancer-portal .iema-wellness textarea{background:#fff!important;border-color:var(--md3-line-strong)!important;color:var(--md3-text)!important}

/* Small linked profile cards */
.iema-mini-profile{padding:15px!important}.iema-mini-profile img{border-color:var(--md3-line)!important}.iema-mini-profile strong{color:var(--md3-navy)!important}.iema-mini-profile small{color:var(--md3-muted)!important}.iema-mini-profile a{color:var(--md3-blue)!important}

/* Responsive */
@media(max-width:980px){
  .iema-app{width:calc(100% - 24px)!important;margin-top:16px!important}
  .iema-app-topbar,.iema-top{grid-template-columns:1fr auto!important;grid-template-areas:'brand user' 'heading heading'!important;gap:18px!important;padding:20px!important}
  .iema-shell-brand{grid-area:brand!important}.iema-page-heading{grid-area:heading!important}.iema-portal-user{grid-area:user!important;min-width:0!important;width:auto!important}
  .iema-portal-user summary{grid-template-columns:42px 14px!important}.iema-portal-user summary span{display:none!important}
  .iema-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
  .iema-app{width:calc(100% - 16px)!important;margin:8px auto 32px!important}
  .iema-app-topbar,.iema-top{margin:0 0 12px!important;border-radius:18px!important;padding:16px!important;min-height:0!important}
  .iema-shell-brand .iema-studio-logo{width:46px!important;height:46px!important;border-radius:13px!important}
  .iema-shell-brand .iema-studio-name{font-size:18px!important}
  .iema-app-topbar h1,.iema-top h1{font-size:31px!important}
  .iema-primary-nav,.iema-role-nav{border-radius:15px!important;margin-bottom:9px!important}
  .iema-secondary-nav,.iema-dancer-nav{margin-bottom:15px!important}
  .iema-stat-grid{grid-template-columns:1fr!important}
  .iema-card-grid,.iema-profile-card-grid{grid-template-columns:1fr!important}
  .iema-command-header{align-items:flex-start!important;flex-direction:column!important;padding:19px!important}.iema-quick-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important}.iema-quick-actions a{width:100%!important}
  .iema-panel{padding:17px!important}
  .iema-ath-card{min-height:0!important;padding:17px!important}.iema-ath-card .iema-athlete-identity{grid-template-columns:72px minmax(0,1fr)!important}.iema-ath-card .iema-athlete-identity img{width:72px!important;height:72px!important}
  .iema-dancer-hero{grid-template-columns:1fr!important;text-align:center!important}.iema-dancer-hero img{margin:auto!important}
}

/* v0.11.6 Parent Portal — premium family workspace */
body:has(.iema-parent-portal){background:#e7eaee!important;color:#172033!important}
body:has(.iema-parent-portal) .ma-header,
body:has(.iema-parent-portal) .ma-footer{display:none!important}
body:has(.iema-parent-portal) .ma-page{max-width:none!important;width:100%!important;padding:0!important;margin:0!important;min-height:100vh!important}
body:has(.iema-parent-portal) .ma-page>article>h1{display:none!important}
body:has(.iema-parent-portal) .ma-page>article{margin:0!important;padding:0!important;width:100%!important}

.iema-app.iema-parent-portal{width:min(1520px,calc(100vw - 48px))!important;max-width:none!important;margin:28px auto 72px!important;padding:0!important;position:relative!important;left:50%!important;transform:translateX(-50%)!important;color:#172033!important}
.iema-parent-portal .iema-app-topbar{display:grid!important;grid-template-columns:minmax(250px,.8fr) minmax(420px,1.35fr) auto!important;align-items:center!important;gap:34px!important;background:#182334!important;border:1px solid #27364b!important;border-radius:26px!important;padding:28px 32px!important;box-shadow:0 24px 60px rgba(27,39,58,.16)!important;color:#fff!important;min-height:156px!important;margin:0 0 14px!important}
.iema-parent-portal .iema-shell-brand{display:flex!important;align-items:center!important;gap:15px!important;min-width:0!important}.iema-parent-portal .iema-shell-brand .iema-studio-logo{width:64px!important;height:64px!important;border-radius:18px!important;object-fit:cover!important;background:#fff!important;padding:4px!important}.iema-parent-portal .iema-studio-name{color:#fff!important;font-size:24px!important;font-weight:900!important;letter-spacing:-.025em!important;line-height:1.05!important}.iema-parent-portal .iema-account-label{color:#90a0b7!important;font-size:10px!important;letter-spacing:.16em!important;font-weight:850!important}.iema-parent-portal .iema-page-heading{min-width:0!important}.iema-parent-portal .iema-page-kicker{color:#8ea4ff!important;font-size:10px!important;font-weight:900!important;letter-spacing:.16em!important}.iema-parent-portal .iema-page-heading h1{color:#fff!important;font-size:clamp(34px,4vw,54px)!important;line-height:1!important;letter-spacing:-.045em!important;margin:6px 0 8px!important;white-space:normal!important}.iema-parent-portal .iema-page-heading p{color:#b9c4d4!important;margin:0!important;font-size:14px!important}.iema-parent-portal .iema-portal-user{justify-self:end!important;min-width:0!important}.iema-parent-portal .iema-portal-user summary{background:#25344a!important;border:1px solid #344860!important;color:#fff!important;border-radius:16px!important;padding:9px 11px!important;box-shadow:none!important}.iema-parent-portal .iema-portal-user summary img{border:2px solid #fff!important}
.iema-parent-portal .iema-role-nav{display:flex!important;gap:7px!important;align-items:center!important;width:100%!important;position:static!important;background:#d9dee5!important;border:1px solid #cbd2dc!important;border-radius:16px!important;padding:6px!important;margin:0 0 18px!important;box-shadow:none!important}.iema-parent-portal .iema-role-nav a{flex:0 0 auto!important;color:#536174!important;background:transparent!important;border:0!important;border-radius:11px!important;padding:10px 15px!important;font-size:12px!important;font-weight:850!important}.iema-parent-portal .iema-role-nav a.active{background:#fff!important;color:#172033!important;box-shadow:0 4px 14px rgba(30,43,62,.10)!important}
.iema-parent-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#cbd2db;border:1px solid #cbd2db;border-radius:18px;overflow:hidden;margin:0 0 18px}.iema-parent-summary>div{background:#f0f2f5;padding:16px 20px;display:grid;gap:3px;min-width:0}.iema-parent-summary span{font-size:10px;letter-spacing:.09em;text-transform:uppercase;font-weight:900;color:#768398}.iema-parent-summary strong{font-size:14px;color:#1a2638;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.iema-parent-main-grid{display:grid;grid-template-columns:minmax(330px,400px) minmax(0,1fr);gap:18px;align-items:start}.iema-parent-portal .iema-panel{background:#f0f2f5!important;border:1px solid #ccd3dc!important;border-radius:22px!important;box-shadow:0 12px 32px rgba(27,40,59,.07)!important;color:#172033!important}.iema-parent-dancers-panel{padding:24px!important;position:sticky;top:20px}.iema-parent-dancers-panel .iema-section-head h2{font-size:27px!important;color:#172033!important;margin:5px 0 6px!important;letter-spacing:-.025em!important}.iema-parent-dancers-panel .iema-section-head p{font-size:13px!important;line-height:1.55!important;color:#66758a!important;margin-bottom:18px!important}.iema-parent-dancer-stack{display:grid!important;gap:10px!important;max-width:none!important;width:100%!important}.iema-parent-dancer-card{width:100%!important;display:grid!important;grid-template-columns:64px minmax(0,1fr) 26px!important;align-items:center!important;gap:14px!important;border:1px solid #cfd6df!important;background:#fff!important;border-radius:18px!important;padding:12px!important;text-align:left!important;cursor:pointer!important;box-shadow:0 4px 14px rgba(29,42,61,.05)!important;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important;color:#172033!important}.iema-parent-dancer-card:hover{transform:translateY(-1px)!important;box-shadow:0 10px 24px rgba(29,42,61,.11)!important;border-color:#aeb9c7!important}.iema-parent-dancer-avatar img,.iema-parent-dancer-avatar .avatar{width:64px!important;height:64px!important;border-radius:16px!important;object-fit:cover!important;border:0!important;display:block!important;background:#dfe4ea!important}.iema-parent-dancer-main{display:grid!important;gap:4px!important;min-width:0!important}.iema-parent-dancer-main strong{font-size:17px!important;line-height:1.15!important;color:#172033!important;white-space:normal!important}.iema-parent-dancer-main small{font-size:12px!important;line-height:1.4!important;color:#728096!important;white-space:normal!important}.iema-parent-dancer-status{font-size:0!important;color:#445b7c!important;justify-self:end!important}.iema-parent-dancer-status b{font-size:24px!important;font-weight:500!important}
.iema-parent-portal .iema-calendar-workspace{padding:26px!important;background:#f0f2f5!important;margin:0!important;min-width:0!important}.iema-parent-portal .iema-panel-heading-row{align-items:flex-start!important;gap:20px!important;margin-bottom:18px!important}.iema-parent-portal .iema-panel-heading-row h2{font-size:29px!important;color:#172033!important;letter-spacing:-.025em!important;margin:4px 0 6px!important}.iema-parent-portal .iema-panel-heading-row p{color:#69788d!important;max-width:760px!important}.iema-parent-portal .iema-calendar-workspace .iema-split{display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(300px,.72fr)!important;gap:16px!important;align-items:start!important}.iema-parent-portal .iema-calendar-workspace .iema-split>div{min-width:0!important}.iema-parent-portal .iema-calendar-workspace .iema-split>div:last-child{background:#e4e8ed!important;color:#172033!important;border:1px solid #ccd3dc!important;border-radius:18px!important;padding:20px!important}.iema-parent-portal .iema-calendar-workspace .iema-split>div:last-child h2,.iema-parent-portal .iema-calendar-workspace .iema-split>div:last-child label{color:#172033!important}.iema-parent-portal .iema-calendar-workspace input,.iema-parent-portal .iema-calendar-workspace select,.iema-parent-portal .iema-calendar-workspace textarea{background:#fff!important;color:#172033!important;border-color:#bec8d4!important}.iema-parent-portal .iema-btn{background:#365fce!important;color:#fff!important;border-color:#365fce!important;border-radius:11px!important;box-shadow:none!important}.iema-parent-portal .iema-btn-secondary{background:#fff!important;color:#263a59!important;border-color:#c5ceda!important}
.iema-parent-dancer-modal[hidden]{display:none!important}.iema-parent-dancer-modal{position:fixed!important;inset:0!important;z-index:99999!important;display:grid!important;place-items:center!important;padding:24px!important}.iema-parent-modal-backdrop{position:absolute!important;inset:0!important;background:rgba(16,25,39,.62)!important;backdrop-filter:blur(10px)!important}.iema-parent-modal-dialog{position:relative!important;width:min(780px,100%)!important;max-height:min(88vh,850px)!important;overflow:auto!important;background:#f3f5f7!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:28px!important;box-shadow:0 40px 100px rgba(14,23,38,.35)!important;padding:30px!important;color:#172033!important}.iema-parent-modal-close{position:absolute!important;right:18px!important;top:16px!important;width:42px!important;height:42px!important;border:0!important;border-radius:50%!important;background:#dfe4ea!important;color:#26364e!important;font-size:28px!important;cursor:pointer!important}.iema-parent-modal-hero{display:flex!important;align-items:center!important;gap:22px!important;padding:2px 50px 24px 0!important;border-bottom:1px solid #d4dae2!important}.iema-parent-modal-avatar img,.iema-parent-modal-avatar .avatar{width:118px!important;height:118px!important;border-radius:26px!important;object-fit:cover!important;display:block!important;border:4px solid #fff!important;box-shadow:0 12px 30px rgba(25,37,55,.15)!important}.iema-parent-modal-hero h2{font-size:35px!important;line-height:1!important;margin:5px 0 7px!important;color:#172033!important;letter-spacing:-.035em!important}.iema-parent-modal-hero p{margin:0!important;color:#6b798d!important}.iema-parent-modal-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:20px 0!important}.iema-parent-modal-grid>div{background:#e7ebf0!important;border:1px solid #d2d9e2!important;border-radius:15px!important;padding:14px 15px!important;display:grid!important;gap:4px!important}.iema-parent-modal-grid span{font-size:9px!important;font-weight:900!important;letter-spacing:.11em!important;text-transform:uppercase!important;color:#768397!important}.iema-parent-modal-grid strong{font-size:14px!important;color:#172033!important}.iema-parent-modal-wide{grid-column:1/-1!important}
body.iema-parent-modal-open{overflow:hidden!important}
@media(max-width:1180px){.iema-parent-main-grid{grid-template-columns:1fr!important}.iema-parent-dancers-panel{position:static!important}.iema-parent-dancer-stack{grid-template-columns:repeat(2,minmax(0,1fr))!important}.iema-parent-portal .iema-calendar-workspace .iema-split{grid-template-columns:1fr!important}}
@media(max-width:820px){.iema-app.iema-parent-portal{width:calc(100vw - 20px)!important;margin:10px auto 40px!important}.iema-parent-portal .iema-app-topbar{grid-template-columns:1fr auto!important;grid-template-areas:'brand user' 'heading heading'!important;gap:18px!important;padding:20px!important;min-height:0!important}.iema-parent-portal .iema-shell-brand{grid-area:brand!important}.iema-parent-portal .iema-page-heading{grid-area:heading!important}.iema-parent-portal .iema-portal-user{grid-area:user!important}.iema-parent-portal .iema-page-heading h1{font-size:36px!important}.iema-parent-summary{grid-template-columns:1fr!important}.iema-parent-dancer-stack{grid-template-columns:1fr!important}}
@media(max-width:560px){.iema-parent-portal .iema-app-topbar{border-radius:20px!important;padding:17px!important}.iema-parent-portal .iema-studio-name{font-size:19px!important}.iema-parent-portal .iema-shell-brand .iema-studio-logo{width:48px!important;height:48px!important;border-radius:14px!important}.iema-parent-portal .iema-role-nav{overflow-x:auto!important}.iema-parent-portal .iema-role-nav a{white-space:nowrap!important}.iema-parent-dancers-panel,.iema-parent-portal .iema-calendar-workspace{padding:17px!important}.iema-parent-dancer-card{grid-template-columns:58px minmax(0,1fr) 20px!important}.iema-parent-dancer-avatar img,.iema-parent-dancer-avatar .avatar{width:58px!important;height:58px!important}.iema-parent-modal-dialog{padding:21px 17px!important;border-radius:22px!important}.iema-parent-modal-hero{align-items:flex-start!important;gap:14px!important;padding-right:40px!important}.iema-parent-modal-avatar img,.iema-parent-modal-avatar .avatar{width:82px!important;height:82px!important;border-radius:20px!important}.iema-parent-modal-hero h2{font-size:27px!important}.iema-parent-modal-grid{grid-template-columns:1fr!important}.iema-parent-modal-wide{grid-column:auto!important}}


/* v0.11.7 Parent Portal centering + navigation cleanup */
.iema-app.iema-parent-portal{
  width:min(1460px,calc(100% - 48px))!important;
  max-width:1460px!important;
  margin:28px auto 72px!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}
.iema-parent-portal .iema-role-nav{display:none!important}
.iema-parent-portal .iema-parent-summary{margin-top:14px!important}
.iema-parent-portal .iema-calendar-toolbar{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 46px!important;
  align-items:center!important;
  gap:12px!important;
  padding:8px 8px 12px!important;
  margin:0!important;
}
.iema-parent-portal .iema-calendar-toolbar .iema-calendar-title{
  border:0!important;
  padding:0!important;
  text-align:center!important;
  line-height:1.15!important;
}
.iema-parent-portal .iema-calendar-nav{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:12px!important;
  background:#172033!important;
  border:1px solid #24334a!important;
  color:#fff!important;
  font-size:20px!important;
  line-height:1!important;
  padding:0!important;
  box-shadow:none!important;
}
.iema-parent-portal .iema-calendar-nav:hover,
.iema-parent-portal .iema-calendar-nav:focus{
  background:#2f5fd0!important;
  border-color:#2f5fd0!important;
  transform:none!important;
}
@media(max-width:820px){
  .iema-app.iema-parent-portal{width:calc(100% - 20px)!important;max-width:none!important;margin:10px auto 40px!important}
  .iema-parent-portal .iema-calendar-toolbar{grid-template-columns:42px minmax(0,1fr) 42px!important;padding:6px 4px 10px!important}
  .iema-parent-portal .iema-calendar-nav{width:38px!important;height:38px!important;min-width:38px!important;border-radius:10px!important}
}

/* =========================================================
   v0.11.8 — ROOT FIX: explicit portal body classes.
   Do not depend on :has() to escape the theme's .ma-wrap.
   ========================================================= */
body.iema-parent-portal-page{
  margin:0!important;
  padding:0!important;
  background:#e7eaee!important;
  overflow-x:hidden!important;
}
body.iema-parent-portal-page .ma-header,
body.iema-parent-portal-page .ma-footer,
body.iema-parent-portal-page .entry-header,
body.iema-parent-portal-page .entry-title,
body.iema-parent-portal-page .wp-block-post-title,
body.iema-parent-portal-page article>h1:first-child{
  display:none!important;
}
body.iema-parent-portal-page main,
body.iema-parent-portal-page .ma-wrap,
body.iema-parent-portal-page .ma-page,
body.iema-parent-portal-page article,
body.iema-parent-portal-page .entry-content{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding-left:0!important;
  padding-right:0!important;
}
body.iema-parent-portal-page .ma-page{
  padding-top:0!important;
  padding-bottom:0!important;
  min-height:100vh!important;
}
body.iema-parent-portal-page .iema-app.iema-parent-portal{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  width:min(1500px,calc(100vw - 48px))!important;
  max-width:1500px!important;
  margin:24px auto 64px!important;
  padding:0!important;
}
/* Keep the account control fully inside the masthead. */
body.iema-parent-portal-page .iema-parent-portal .iema-app-topbar{
  width:100%!important;
  grid-template-columns:minmax(240px,320px) minmax(0,1fr) minmax(230px,270px)!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-portal-user{
  width:100%!important;
  max-width:270px!important;
  min-width:0!important;
}
/* Month controls: explicit square tap targets, no inherited link sizing. */
body.iema-parent-portal-page .iema-parent-portal .iema-calendar-toolbar{
  grid-template-columns:48px minmax(0,1fr) 48px!important;
  gap:14px!important;
  align-items:center!important;
  width:100%!important;
  padding:8px 10px 14px!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-calendar-nav{
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  margin:0!important;
  padding:0!important;
  border-radius:14px!important;
  text-decoration:none!important;
  line-height:1!important;
  overflow:hidden!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-calendar-toolbar>a:first-child{justify-self:start!important}
body.iema-parent-portal-page .iema-parent-portal .iema-calendar-toolbar>a:last-child{justify-self:end!important}
@media(max-width:900px){
  body.iema-parent-portal-page .iema-app.iema-parent-portal{width:calc(100vw - 20px)!important;margin:10px auto 36px!important}
  body.iema-parent-portal-page .iema-parent-portal .iema-app-topbar{grid-template-columns:1fr auto!important;grid-template-areas:'brand user' 'heading heading'!important}
}
@media(max-width:560px){
  body.iema-parent-portal-page .iema-app.iema-parent-portal{width:100vw!important;margin:0 auto 28px!important}
}


/* =========================================================
   v0.11.9 — Parent masthead alignment + contrast repair
   ========================================================= */
body.iema-parent-portal-page .iema-parent-portal .iema-app-topbar{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) minmax(440px,1.35fr) minmax(260px,1fr)!important;
  align-items:center!important;
  column-gap:32px!important;
  min-height:150px!important;
  padding:26px 34px!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-shell-brand{
  justify-self:start!important;
  align-self:center!important;
  width:100%!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-page-heading{
  justify-self:center!important;
  align-self:center!important;
  width:100%!important;
  max-width:680px!important;
  text-align:center!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-page-heading h1,
body.iema-parent-portal-page .iema-parent-portal .iema-page-heading p{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-page-heading h1{
  font-size:clamp(38px,3.4vw,54px)!important;
  line-height:1.02!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-page-heading p{
  max-width:560px!important;
  color:#d3dcea!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-portal-user{
  justify-self:end!important;
  align-self:center!important;
  width:100%!important;
  max-width:280px!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-portal-user summary{
  width:100%!important;
  min-height:62px!important;
  grid-template-columns:44px minmax(0,1fr) 14px!important;
  background:#24344b!important;
  border:1px solid #41536e!important;
  color:#fff!important;
  padding:8px 12px!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-portal-user summary span{
  display:grid!important;
  gap:2px!important;
  min-width:0!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-portal-user summary strong{
  display:block!important;
  color:#fff!important;
  opacity:1!important;
  font-size:13px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-portal-user summary small{
  display:block!important;
  color:#c8d3e3!important;
  opacity:1!important;
  font-size:10px!important;
  line-height:1.2!important;
  letter-spacing:.04em!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-portal-user summary b{
  color:#fff!important;
  opacity:.9!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-portal-user summary:hover,
body.iema-parent-portal-page .iema-parent-portal .iema-portal-user summary:focus{
  background:#2d405b!important;
  border-color:#59708f!important;
  outline:none!important;
}
/* Lock action contrast in the parent workspace. */
body.iema-parent-portal-page .iema-parent-portal .iema-btn,
body.iema-parent-portal-page .iema-parent-portal a.iema-btn,
body.iema-parent-portal-page .iema-parent-portal button.iema-btn{
  background:#244caa!important;
  border:1px solid #244caa!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:none!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-btn:hover,
body.iema-parent-portal-page .iema-parent-portal a.iema-btn:hover,
body.iema-parent-portal-page .iema-parent-portal button.iema-btn:hover{
  background:#193b8f!important;
  border-color:#193b8f!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-btn-secondary,
body.iema-parent-portal-page .iema-parent-portal a.iema-btn-secondary{
  background:#fff!important;
  border:1px solid #aebbd0!important;
  color:#172033!important;
  -webkit-text-fill-color:#172033!important;
}
@media(max-width:1050px){
  body.iema-parent-portal-page .iema-parent-portal .iema-app-topbar{
    grid-template-columns:minmax(220px,.9fr) minmax(360px,1.2fr) minmax(220px,.9fr)!important;
    gap:20px!important;
    padding:24px!important;
  }
  body.iema-parent-portal-page .iema-parent-portal .iema-page-heading h1{font-size:40px!important}
}
@media(max-width:820px){
  body.iema-parent-portal-page .iema-parent-portal .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:'brand user' 'heading heading'!important;
    gap:18px!important;
  }
  body.iema-parent-portal-page .iema-parent-portal .iema-shell-brand{grid-area:brand!important}
  body.iema-parent-portal-page .iema-parent-portal .iema-page-heading{grid-area:heading!important;justify-self:stretch!important}
  body.iema-parent-portal-page .iema-parent-portal .iema-portal-user{grid-area:user!important;width:auto!important;min-width:58px!important;max-width:240px!important}
  body.iema-parent-portal-page .iema-parent-portal .iema-page-heading h1{font-size:36px!important}
}
@media(max-width:560px){
  body.iema-parent-portal-page .iema-parent-portal .iema-app-topbar{padding:18px!important}
  body.iema-parent-portal-page .iema-parent-portal .iema-portal-user{max-width:64px!important}
  body.iema-parent-portal-page .iema-parent-portal .iema-portal-user summary{grid-template-columns:42px 12px!important;padding:7px!important}
  body.iema-parent-portal-page .iema-parent-portal .iema-portal-user summary span{display:none!important}
  body.iema-parent-portal-page .iema-parent-portal .iema-page-heading{text-align:left!important}
  body.iema-parent-portal-page .iema-parent-portal .iema-page-heading h1,
  body.iema-parent-portal-page .iema-parent-portal .iema-page-heading p{text-align:left!important;margin-left:0!important;margin-right:0!important}
}

/* v0.11.10 — remove redundant masthead workspace kicker */
.iema-app-topbar .iema-page-kicker{display:none!important}

/* v0.11.11 — parent 30-minute drag availability grid */
.iema-week-availability{display:grid;gap:16px;min-width:0}.iema-week-toolbar{display:grid;grid-template-columns:46px 1fr 46px;align-items:center;gap:12px}.iema-week-toolbar>div{text-align:center;display:grid;gap:3px}.iema-week-toolbar strong{font-size:20px;color:#10213b}.iema-week-toolbar small{font-size:12px;color:#6b7a90}.iema-week-dancer-switch{display:flex;justify-content:flex-end}.iema-week-dancer-switch label{display:flex;align-items:center;gap:10px;font-weight:800;color:#22324b}.iema-week-dancer-switch select{min-width:220px}.iema-week-grid-wrap{overflow:auto;max-height:650px;border:1px solid #cbd5e1;border-radius:18px;background:#fff}.iema-week-grid{display:grid;grid-template-columns:82px repeat(7,minmax(105px,1fr));min-width:850px}.iema-week-corner,.iema-week-day-head{position:sticky;top:0;z-index:4;background:#10213b;color:#fff;border-bottom:1px solid #263a58}.iema-week-corner{left:0;z-index:6;display:grid;place-items:center;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.iema-week-day-head{padding:10px 6px;text-align:center;display:grid;gap:2px}.iema-week-day-head b{font-size:12px}.iema-week-day-head span{font-size:11px;color:#c9d6e8}.iema-week-time{position:sticky;left:0;z-index:2;background:#f3f6fa;color:#55657b;border-right:1px solid #d7dee8;border-bottom:1px solid #edf1f5;padding:8px 8px;font-size:10px;font-weight:800;text-align:right;min-height:28px}.iema-week-slot{appearance:none;border:0!important;border-right:1px solid #edf1f5!important;border-bottom:1px solid #edf1f5!important;background:#fff!important;min-height:28px!important;padding:0!important;margin:0!important;border-radius:0!important;cursor:crosshair!important;box-shadow:none!important;touch-action:pan-y}.iema-week-slot:hover{background:#eef4ff!important}.iema-week-slot.is-selecting{background:#c7d9ff!important;outline:1px solid #5b7fd4!important;outline-offset:-1px}.iema-week-slot.is-available{background:#dff4e6!important;box-shadow:inset 4px 0 0 #2f8f57!important}.iema-week-slot.is-unavailable{background:#fde3e6!important;box-shadow:inset 4px 0 0 #b94250!important}.iema-week-slot.is-available.is-selecting,.iema-week-slot.is-unavailable.is-selecting{background:#c7d9ff!important;box-shadow:inset 4px 0 0 #5b7fd4!important}.iema-week-selection{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:16px;background:#e9eef6;border:1px solid #c8d3e2}.iema-week-selection>div:first-child{display:grid;gap:2px}.iema-week-selection small{text-transform:uppercase;letter-spacing:.09em;font-size:9px;font-weight:900;color:#64748b}.iema-week-selection strong{font-size:15px;color:#10213b}.iema-week-selection-actions{display:flex;gap:8px;flex-wrap:wrap}.iema-available-btn{background:#236b43!important;color:#fff!important}.iema-unavailable-btn{background:#9f3441!important;color:#fff!important}.iema-week-help{margin:0;font-size:12px;color:#6b7a90}.iema-calendar-workspace>.iema-availability-legend{margin-bottom:0}
@media(max-width:760px){.iema-week-grid-wrap{max-height:560px}.iema-week-selection{align-items:flex-start;flex-direction:column}.iema-week-selection-actions{width:100%}.iema-week-selection-actions .iema-btn{flex:1}.iema-week-dancer-switch{justify-content:stretch}.iema-week-dancer-switch label{width:100%;display:grid}.iema-week-dancer-switch select{width:100%;min-width:0}}

/* v0.11.12 — compact parent availability grid + copy/repeat controls */
.iema-week-grid-wrap{overflow-x:auto!important;overflow-y:visible!important;max-height:none!important}
.iema-week-grid{grid-template-columns:74px repeat(7,minmax(108px,1fr))!important;min-width:850px!important}
.iema-week-time{min-height:24px!important;padding:5px 7px!important;font-size:9px!important}
.iema-week-time.is-half-hour{color:#94a3b8!important;font-size:8px!important}
.iema-week-slot{min-height:24px!important}
.iema-week-slot.is-hour-start{border-top:1px solid #cbd5e1!important}
.iema-week-day-head{appearance:none!important;border:0!important;border-right:1px solid #263a58!important;border-radius:0!important;cursor:pointer!important;font-family:inherit!important}
.iema-week-day-head:hover,.iema-week-day-head:focus-visible{background:#203653!important;outline:none!important}
.iema-week-day-head.is-focused{background:#315ca8!important;box-shadow:inset 0 -3px 0 #91b5ff!important}
.iema-week-slot.is-day-muted{opacity:.28!important}
.iema-week-slot.is-selecting{opacity:1!important}
.iema-week-selection{display:grid!important;grid-template-columns:minmax(220px,.7fr) minmax(420px,1.5fr);align-items:start!important;gap:18px!important;padding:18px!important}
.iema-week-selection-summary{display:grid;gap:4px}
.iema-week-selection-summary strong{font-size:17px!important}
.iema-week-repeat-box{display:grid;gap:10px;padding:14px;border:1px solid #cbd5e1;border-radius:14px;background:#f8fafc}
.iema-week-repeat-heading{display:grid;gap:2px}.iema-week-repeat-heading strong{color:#10213b;font-size:14px}.iema-week-repeat-heading small{color:#64748b;font-size:11px}
.iema-week-repeat-presets{display:flex;gap:7px;flex-wrap:wrap}.iema-mini-action{appearance:none;border:1px solid #b9c7db;background:#fff;color:#20324d;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;cursor:pointer}.iema-mini-action:hover,.iema-mini-action:focus-visible{border-color:#315ca8;color:#1f4a9c;outline:none}
.iema-week-repeat-days{display:grid;grid-template-columns:repeat(7,minmax(48px,1fr));gap:6px}.iema-week-repeat-days label{position:relative}.iema-week-repeat-days input{position:absolute;opacity:0;pointer-events:none}.iema-week-repeat-days span{display:grid;place-items:center;min-height:36px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#334155;font-size:11px;font-weight:900;cursor:pointer}.iema-week-repeat-days input:checked+span{background:#10213b;color:#fff;border-color:#10213b}
.iema-week-repeat-until{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#334155;font-size:12px;font-weight:800}.iema-week-repeat-until input{width:auto;min-width:170px}
.iema-week-selection-actions{grid-column:1/-1;justify-content:flex-end!important}
@media(max-width:900px){.iema-week-selection{grid-template-columns:1fr!important}.iema-week-selection-actions{grid-column:auto!important}.iema-week-grid{min-width:780px!important}}
@media(max-width:600px){.iema-week-grid{grid-template-columns:62px repeat(7,minmax(92px,1fr))!important;min-width:710px!important}.iema-week-time,.iema-week-slot{min-height:26px!important}.iema-week-repeat-days{grid-template-columns:repeat(4,1fr)}.iema-week-selection-actions .iema-btn{flex:1 1 100%!important}}

/* v0.11.13 — parent weekly availability builder */
.iema-availability-builder{display:grid;gap:22px}.iema-availability-card{border:1px solid #d8e0ea;border-radius:22px;background:#f8fafc;padding:22px;box-shadow:0 8px 24px rgba(21,36,58,.05)}.iema-availability-card-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.iema-availability-card-head h3{margin:4px 0 6px;font-size:23px;color:#10213b}.iema-availability-card-head p{margin:0;max-width:720px;color:#65748a;line-height:1.5}.iema-availability-presets{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.iema-availability-dancer-switch{display:flex;justify-content:flex-end}.iema-availability-dancer-switch label{display:grid;gap:6px;font-weight:800;color:#23344d}.iema-availability-dancer-switch select{min-width:240px}.iema-week-effective{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:14px;margin-bottom:18px}.iema-week-effective label,.iema-exception-grid>label{display:grid;gap:6px;font-size:12px;font-weight:850;color:#3c4b61}.iema-availability-days{display:grid;gap:10px}.iema-availability-day{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(330px,1.45fr) minmax(210px,.8fr);gap:16px;align-items:center;border:1px solid #dce3ec;border-radius:16px;background:#fff;padding:13px 14px;transition:.16s ease}.iema-availability-day.is-on{border-color:#9fb7df;background:#f6f9ff;box-shadow:inset 4px 0 0 #557bc1}.iema-day-toggle{display:flex;align-items:center;gap:11px;cursor:pointer}.iema-day-toggle input{width:20px!important;height:20px!important;accent-color:#365f9d}.iema-day-toggle span{display:grid;gap:2px}.iema-day-toggle b{font-size:15px;color:#16243a}.iema-day-toggle small{font-size:11px;color:#7b889a}.iema-day-times{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:9px}.iema-day-times label{display:grid;gap:5px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:#718096}.iema-day-times>span{padding-bottom:10px;color:#8996a8;font-size:12px}.iema-day-times select,.iema-copy-day select,.iema-week-effective input,.iema-exception-grid input,.iema-exception-grid select{min-height:42px;border:1px solid #cbd5e1;border-radius:11px;background:#fff;color:#17243a;padding:8px 10px}.iema-copy-day{display:grid;grid-template-columns:1fr auto;gap:7px}.iema-copy-button{border:0;border-radius:10px;background:#e9eef7;color:#27456f;font-weight:850;padding:0 12px;cursor:pointer}.iema-replace-weekly{margin:16px 0!important}.iema-exception-card{background:#f5f7fa}.iema-exception-grid{display:grid;grid-template-columns:1fr 1fr auto 1.6fr;gap:12px;align-items:end}.iema-exception-times{display:grid;grid-template-columns:1fr 1fr;gap:10px}.iema-all-day{align-self:center;margin:0!important;white-space:nowrap}.iema-calendar-preview-card{background:#f3f6fa}.iema-calendar-preview-card .iema-calendar{background:#fff;border-radius:17px;padding:8px}.iema-parent-portal .iema-availability-legend{display:none!important}.iema-parent-portal .iema-week-availability{display:none!important}
@media(max-width:1050px){.iema-availability-day{grid-template-columns:150px 1fr}.iema-copy-day{grid-column:2}.iema-exception-grid{grid-template-columns:1fr 1fr}.iema-exception-times{grid-column:1/-1}}
@media(max-width:700px){.iema-availability-card{padding:16px;border-radius:17px}.iema-availability-card-head{display:grid}.iema-availability-presets{justify-content:flex-start}.iema-week-effective{grid-template-columns:1fr 1fr}.iema-availability-day{grid-template-columns:1fr;gap:10px}.iema-copy-day{grid-column:auto}.iema-day-times{grid-template-columns:1fr auto 1fr}.iema-exception-grid{grid-template-columns:1fr}.iema-exception-times{grid-column:auto}.iema-availability-dancer-switch{justify-content:stretch}.iema-availability-dancer-switch label,.iema-availability-dancer-switch select{width:100%;min-width:0}}


/* v0.11.14 parent portal styling refresh */
body.iema-parent-portal-page{background:#dfe5ee!important}
body.iema-parent-portal-page .site, body.iema-parent-portal-page #page, body.iema-parent-portal-page .site-main{background:transparent!important}
.iema-app.iema-parent-portal{
  max-width:1460px!important;
  width:calc(100vw - 48px)!important;
  margin:28px auto 44px!important;
  padding:0!important;
  background:transparent!important;
}
.iema-parent-portal .iema-app-topbar{
  background:linear-gradient(180deg,#f7f9fc 0%,#eef2f7 100%)!important;
  border:1px solid #cfd7e3!important;
  border-radius:28px!important;
  padding:26px 28px!important;
  box-shadow:0 24px 60px rgba(34,49,73,.10)!important;
}
.iema-parent-portal .iema-shell-brand{align-self:center!important}
.iema-parent-portal .iema-shell-brand .iema-studio-logo{
  width:64px!important;height:64px!important;border-radius:20px!important;
  box-shadow:0 10px 24px rgba(39,57,89,.14)!important;
  border:1px solid rgba(30,43,62,.08)!important;
}
.iema-parent-portal .iema-studio-name{
  font-size:27px!important;line-height:1.05!important;letter-spacing:-.03em!important;
  color:#122238!important;font-weight:900!important;
}
.iema-parent-portal .iema-brand-sub{color:#667891!important;font-size:11px!important;letter-spacing:.14em!important}
.iema-parent-portal .iema-page-heading{text-align:center!important;align-self:center!important}
.iema-parent-portal .iema-page-heading h1{
  font-size:42px!important;line-height:1!important;letter-spacing:-.04em!important;
  color:#122238!important;margin:0 0 6px!important;
}
.iema-parent-portal .iema-page-heading p{font-size:14px!important;color:#607187!important;margin:0!important}
.iema-parent-portal .iema-portal-user summary{
  background:#1a2b45!important;color:#fff!important;border:0!important;border-radius:18px!important;
  min-height:58px!important;padding:10px 16px!important;box-shadow:0 14px 28px rgba(20,32,53,.18)!important;
}
.iema-parent-portal .iema-portal-user summary strong,
.iema-parent-portal .iema-portal-user summary small,
.iema-parent-portal .iema-portal-user summary span,
.iema-parent-portal .iema-portal-user summary svg{color:#fff!important;fill:#fff!important}
.iema-parent-summary{
  background:#d3dce8!important;border:1px solid #c5d0de!important;border-radius:22px!important;
  box-shadow:0 10px 30px rgba(38,55,81,.07)!important;
}
.iema-parent-summary>div{background:#edf2f7!important;padding:18px 22px!important}
.iema-parent-summary span{font-size:10px!important;color:#6f8198!important}
.iema-parent-summary strong{font-size:15px!important;color:#15243a!important}
.iema-parent-main-grid{grid-template-columns:minmax(380px,440px) minmax(0,1fr)!important;gap:22px!important}
.iema-parent-portal .iema-panel{
  background:#eef3f8!important;border:1px solid #ccd5e1!important;border-radius:26px!important;
  box-shadow:0 18px 48px rgba(38,55,81,.09)!important;
}
.iema-parent-dancers-panel,.iema-parent-portal .iema-calendar-workspace{padding:28px!important}
.iema-parent-dancers-panel .iema-section-head h2,
.iema-parent-portal .iema-panel-heading-row h2{color:#122238!important;letter-spacing:-.03em!important}
.iema-parent-dancers-panel .iema-section-head p,
.iema-parent-portal .iema-panel-heading-row p{color:#66778d!important}
.iema-parent-dancer-stack{gap:12px!important}
.iema-parent-dancer-card{
  background:linear-gradient(180deg,#fbfcfe 0%,#f3f7fb 100%)!important;
  border:1px solid #d8e0ea!important;border-radius:22px!important;padding:14px!important;
  box-shadow:0 10px 26px rgba(32,49,74,.06)!important;gap:16px!important;
}
.iema-parent-dancer-card:hover{transform:translateY(-2px)!important;box-shadow:0 18px 36px rgba(32,49,74,.12)!important;border-color:#b8c6d8!important}
.iema-parent-dancer-avatar img,.iema-parent-dancer-avatar .avatar{
  width:72px!important;height:72px!important;border-radius:20px!important;
  box-shadow:0 8px 16px rgba(32,49,74,.12)!important;
}
.iema-parent-dancer-main strong{font-size:18px!important;line-height:1.1!important;color:#102137!important}
.iema-parent-dancer-main small{font-size:12px!important;color:#6d7e94!important;line-height:1.45!important}
.iema-parent-dancer-status{align-self:center!important}
.iema-parent-dancer-status b{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:28px!important;height:28px!important;border-radius:999px!important;background:#dbe7ff!important;color:#3555d9!important;font-size:19px!important;font-weight:700!important}
.iema-parent-portal .iema-calendar-workspace{background:#eef3f8!important}
.iema-parent-portal .iema-full-calendar-launch,
.iema-parent-portal .iema-btn{
  background:#3555d9!important;border:1px solid #3555d9!important;color:#fff!important;
  border-radius:14px!important;padding:11px 16px!important;box-shadow:0 10px 20px rgba(53,85,217,.18)!important;
}
.iema-parent-portal .iema-btn:hover{filter:brightness(.98)!important}
.iema-parent-portal .iema-btn-secondary{
  background:#f8fbff!important;border:1px solid #ced8e5!important;color:#1e3456!important;
  box-shadow:none!important;
}
.iema-parent-portal .iema-availability-legend span{border-radius:999px!important;padding:8px 11px!important}
.iema-parent-portal .iema-builder-weekly{
  background:linear-gradient(180deg,#f9fbfd 0%,#f3f7fb 100%)!important;
  border:1px solid #d8e0ea!important;border-radius:22px!important;padding:18px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55)!important;
}
.iema-parent-portal .iema-weekday-row,
.iema-parent-portal .iema-exception-card,
.iema-parent-portal .iema-calendar-preview-card{
  background:#fbfcfe!important;border:1px solid #d9e1eb!important;border-radius:18px!important;
  box-shadow:0 8px 18px rgba(31,47,73,.05)!important;
}
.iema-parent-portal input,
.iema-parent-portal select,
.iema-parent-portal textarea{
  background:#fff!important;color:#17263b!important;border:1px solid #c7d2df!important;
  border-radius:13px!important;min-height:46px!important;box-shadow:inset 0 1px 2px rgba(20,35,58,.03)!important;
}
.iema-parent-portal input:focus,
.iema-parent-portal select:focus,
.iema-parent-portal textarea:focus{
  border-color:#7090ff!important;box-shadow:0 0 0 4px rgba(53,85,217,.12)!important;outline:none!important;
}
.iema-parent-dancer-modal .iema-parent-modal-dialog{
  background:linear-gradient(180deg,#f9fbfd 0%,#eef3f8 100%)!important;
  border:1px solid #d5dde7!important;
}
.iema-parent-dancer-modal .iema-parent-modal-grid>div{
  background:#fbfcfe!important;border-color:#d7dfeb!important;box-shadow:0 6px 16px rgba(33,48,72,.04)!important;
}
.iema-parent-dancer-modal .iema-parent-modal-actions{display:flex!important;gap:10px!important;flex-wrap:wrap!important;margin-top:8px!important}
@media(max-width:1180px){
  .iema-app.iema-parent-portal{width:calc(100vw - 28px)!important}
  .iema-parent-main-grid{grid-template-columns:1fr!important}
}
@media(max-width:860px){
  .iema-parent-portal .iema-app-topbar{padding:22px 20px!important}
  .iema-parent-portal .iema-page-heading h1{font-size:34px!important}
}
@media(max-width:640px){
  .iema-app.iema-parent-portal{width:calc(100vw - 16px)!important;margin:10px auto 24px!important}
  .iema-parent-dancers-panel,.iema-parent-portal .iema-calendar-workspace{padding:20px!important}
  .iema-parent-dancer-card{grid-template-columns:64px minmax(0,1fr) 28px!important}
  .iema-parent-summary>div{padding:16px 18px!important}
}


/* v0.11.15 studio-wide branding */
.iema-studio-brand-card{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(360px,520px)!important;gap:28px!important;align-items:center!important;margin:20px 0!important;background:#f6f8fb!important}
.iema-studio-brand-copy h2{margin:5px 0 8px!important;font-size:25px!important;color:#14243a!important;letter-spacing:-.025em!important}
.iema-studio-brand-copy p{margin:0 0 12px!important;max-width:680px!important;color:#68798f!important;line-height:1.55!important}
.iema-brand-upload-form{display:grid!important;grid-template-columns:92px minmax(0,1fr)!important;gap:16px!important;align-items:center!important;background:#fff!important;border:1px solid #d9e1eb!important;border-radius:20px!important;padding:16px!important}
.iema-brand-logo-preview{width:92px!important;height:92px!important;border:1px solid #d5dee9!important;background:#eef3f8!important;border-radius:20px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important}
.iema-brand-logo-preview img{width:100%!important;height:100%!important;object-fit:contain!important;padding:8px!important;box-sizing:border-box!important}
.iema-brand-logo-preview span{font-size:32px!important;font-weight:900!important;color:#52657d!important}
.iema-brand-upload-actions{display:flex!important;gap:9px!important;align-items:center!important;flex-wrap:wrap!important}
.iema-brand-file{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;padding:10px 14px!important;border:1px solid #cbd6e3!important;border-radius:13px!important;background:#f8fbff!important;color:#243a5a!important;font-size:13px!important;font-weight:800!important;cursor:pointer!important}
.iema-brand-file input{position:absolute!important;inset:0!important;opacity:0!important;cursor:pointer!important;width:100%!important;height:100%!important}
.iema-brand-remove{display:inline-flex!important;align-items:center!important;gap:6px!important;color:#6d7888!important;font-size:12px!important;font-weight:700!important}
.iema-brand-remove input{width:auto!important;min-height:0!important}
.iema-brand-upload-form>small{grid-column:2!important;color:#7a8798!important;font-size:11px!important}
.iema-full-calendar-heading{display:flex!important;align-items:center!important;gap:12px!important}
.iema-full-calendar-heading>span{display:grid!important;gap:2px!important}
.iema-full-calendar-logo{width:46px!important;height:46px!important;border-radius:12px!important;object-fit:contain!important;background:#fff!important;padding:4px!important;border:1px solid #d9e1eb!important;box-sizing:border-box!important}
@media(max-width:900px){.iema-studio-brand-card{grid-template-columns:1fr!important}.iema-brand-upload-form{max-width:620px!important}}
@media(max-width:560px){.iema-brand-upload-form{grid-template-columns:72px minmax(0,1fr)!important;padding:13px!important}.iema-brand-logo-preview{width:72px!important;height:72px!important}.iema-brand-upload-form>small{grid-column:1/-1!important}.iema-brand-upload-actions{grid-column:2!important}}

/* v0.11.16 Parent Portal rebuild — approved visual direction */
body.iema-parent-portal-page{margin:0!important;background:#f4f7fb!important;color:#13213a!important;overflow-x:hidden!important}
body.iema-parent-portal-page .ma-header,body.iema-parent-portal-page .ma-footer,body.iema-parent-portal-page .entry-header,body.iema-parent-portal-page .entry-title,body.iema-parent-portal-page .wp-block-post-title,body.iema-parent-portal-page article>h1:first-child{display:none!important}
body.iema-parent-portal-page main,body.iema-parent-portal-page .ma-wrap,body.iema-parent-portal-page .ma-page,body.iema-parent-portal-page article,body.iema-parent-portal-page .entry-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.iema-parent-shell{--parent-blue:#1668e8;--parent-blue-dark:#0f55cb;--parent-ink:#10203c;--parent-muted:#6a7890;--parent-line:#dfe6ef;display:grid!important;grid-template-columns:240px minmax(0,1fr)!important;min-height:100vh!important;background:#f4f7fb!important;color:var(--parent-ink)!important;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
.iema-parent-sidebar{position:sticky!important;top:0!important;height:100vh!important;box-sizing:border-box!important;padding:26px 14px 22px!important;background:#fff!important;border-right:1px solid #e1e7ef!important;display:flex!important;flex-direction:column!important;z-index:20!important}
.iema-parent-brand{display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;grid-template-rows:auto auto!important;gap:1px 11px!important;align-items:center!important;padding:0 10px 26px!important;border-bottom:1px solid #edf1f6!important}
.iema-parent-brand img,.iema-brand-fallback{grid-row:1/3!important;width:48px!important;height:48px!important;border-radius:12px!important;object-fit:contain!important;background:#fff!important;border:1px solid #e0e6ee!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#1668e8!important;font-weight:900!important}
.iema-parent-brand strong{font-size:16px!important;line-height:1.15!important;color:#0f1d37!important;overflow:hidden!important;text-overflow:ellipsis!important}
.iema-parent-brand small{font-size:12px!important;color:#687891!important}
.iema-parent-sidebar nav{display:grid!important;gap:6px!important;margin-top:22px!important}
.iema-parent-sidebar nav a,.iema-parent-side-bottom>a{display:flex!important;align-items:center!important;gap:12px!important;min-height:46px!important;padding:0 14px!important;border-radius:10px!important;color:#263858!important;text-decoration:none!important;font-size:14px!important;font-weight:700!important;transition:.16s ease!important}
.iema-parent-sidebar nav a span,.iema-parent-side-bottom>a span{width:20px!important;text-align:center!important;font-size:18px!important;color:#607695!important}
.iema-parent-sidebar nav a:hover,.iema-parent-side-bottom>a:hover{background:#f2f6fc!important;color:#0e58ce!important}
.iema-parent-sidebar nav a.active{background:linear-gradient(135deg,#2074ed,#1260da)!important;color:#fff!important;box-shadow:0 8px 20px rgba(22,104,232,.2)!important}
.iema-parent-sidebar nav a.active span{color:#fff!important}
.iema-parent-side-bottom{margin-top:auto!important;display:grid!important;gap:14px!important;border-top:1px solid #edf1f6!important;padding-top:16px!important}
.iema-parent-side-bottom small{padding:0 14px!important;color:#94a0b2!important;font-size:9px!important;letter-spacing:.08em!important}
.iema-parent-content{min-width:0!important;padding:28px 34px 42px!important;box-sizing:border-box!important;max-width:1540px!important;width:100%!important;margin:0 auto!important}
.iema-parent-content-top{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:24px!important;margin-bottom:22px!important}
.iema-parent-content-top h1{font-size:32px!important;line-height:1.1!important;letter-spacing:-.035em!important;margin:0 0 6px!important;color:#0e1c38!important}
.iema-parent-content-top p{margin:0!important;font-size:14px!important;color:#66758d!important}
.iema-parent-account{position:relative!important}
.iema-parent-account summary{list-style:none!important;display:flex!important;align-items:center!important;gap:11px!important;padding:6px 10px 6px 6px!important;border-radius:12px!important;cursor:pointer!important;color:#162540!important;background:transparent!important}
.iema-parent-account summary::-webkit-details-marker{display:none!important}.iema-parent-account summary img{width:44px!important;height:44px!important;border-radius:50%!important;object-fit:cover!important}.iema-parent-account summary span{display:grid!important;gap:2px!important;min-width:120px!important}.iema-parent-account summary strong{font-size:13px!important;color:#172642!important}.iema-parent-account summary small{font-size:11px!important;color:#75839a!important}.iema-parent-account summary b{font-size:14px!important;color:#718097!important}.iema-parent-account>nav{position:absolute!important;right:0!important;top:58px!important;width:180px!important;background:#fff!important;border:1px solid #dfe6ef!important;border-radius:12px!important;padding:7px!important;box-shadow:0 16px 40px rgba(29,43,67,.14)!important;z-index:30!important}.iema-parent-account>nav a{display:block!important;padding:10px 12px!important;border-radius:8px!important;text-decoration:none!important;color:#253854!important;font-size:13px!important}.iema-parent-account>nav a:hover{background:#f3f7fc!important}
.iema-parent-hero{background:#fff!important;border:1px solid #e0e6ee!important;border-radius:14px!important;padding:24px 26px 20px!important;box-shadow:0 6px 20px rgba(30,47,73,.055)!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(420px,.75fr)!important;gap:18px 26px!important;margin-bottom:20px!important}
.iema-parent-welcome h2{margin:3px 0 6px!important;font-size:22px!important;color:#11213d!important;letter-spacing:-.02em!important}.iema-parent-welcome p{margin:0!important;color:#718097!important;font-size:13px!important}
.iema-family-summary{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:0!important;border:1px solid #dfe6ef!important;border-radius:12px!important;padding:12px 10px!important;align-self:start!important}.iema-family-summary>div{display:grid!important;grid-template-columns:34px auto!important;grid-template-rows:auto auto!important;column-gap:9px!important;align-items:center!important;padding:3px 12px!important;border-right:1px solid #edf1f5!important}.iema-family-summary>div:last-child{border-right:0!important}.iema-family-summary>div>span{grid-row:1/3!important;width:32px!important;height:32px!important;border-radius:50%!important;background:#e8f1ff!important;color:#1668e8!important;display:grid!important;place-items:center!important;font-size:14px!important}.iema-family-summary strong{font-size:18px!important;color:#172642!important}.iema-family-summary small{font-size:10px!important;color:#65748c!important;line-height:1.25!important}
.iema-parent-dancer-cards{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin-top:10px!important}.iema-parent-dancer-tile{display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;gap:13px!important;align-items:center!important;padding:13px!important;border:1px solid #dfe6ef!important;border-radius:11px!important;background:#fff!important;text-decoration:none!important;min-width:0!important;color:#14233e!important;transition:.15s ease!important}.iema-parent-dancer-tile:hover{border-color:#a7c6f6!important;box-shadow:0 8px 20px rgba(26,76,149,.08)!important}.iema-parent-dancer-tile.active{border:1.5px solid #1770ef!important;box-shadow:0 0 0 2px rgba(23,112,239,.05)!important}.iema-parent-dancer-tile .iema-parent-dancer-avatar img{width:58px!important;height:58px!important;border-radius:50%!important;object-fit:cover!important}.iema-parent-dancer-tile>span:last-child{display:grid!important;gap:3px!important}.iema-parent-dancer-tile strong{font-size:14px!important}.iema-parent-dancer-tile small{font-size:11px!important;color:#748197!important}.iema-parent-dancer-tile em{justify-self:start!important;margin-top:2px!important;padding:3px 8px!important;border-radius:999px!important;background:#eef3fa!important;color:#60728d!important;font-style:normal!important;font-size:10px!important;font-weight:800!important}.iema-parent-dancer-tile.active em{background:#e7f0ff!important;color:#135fcf!important}
.iema-parent-workspace{background:#fff!important;border:1px solid #e0e6ee!important;border-radius:14px!important;box-shadow:0 6px 20px rgba(30,47,73,.05)!important;overflow:hidden!important}
.iema-modern-dancer-switch{padding:14px 20px 0!important;display:flex!important;justify-content:flex-end!important}.iema-modern-dancer-switch label{display:flex!important;align-items:center!important;gap:8px!important;color:#68778e!important;font-size:12px!important;font-weight:700!important}.iema-modern-dancer-switch select{min-width:180px!important}
.iema-parent-tabs{display:flex!important;align-items:center!important;gap:26px!important;padding:0 20px!important;border-bottom:1px solid #e4e9f0!important;min-height:52px!important}.iema-parent-tabs a{display:flex!important;align-items:center!important;gap:8px!important;align-self:stretch!important;padding:0 4px!important;border-bottom:2px solid transparent!important;color:#455873!important;text-decoration:none!important;font-size:13px!important;font-weight:800!important}.iema-parent-tabs a.active{color:#1168e8!important;border-bottom-color:#1168e8!important}.iema-parent-tabs a:hover{color:#1168e8!important}
.iema-modern-schedule-grid{display:grid!important;grid-template-columns:minmax(0,1.6fr) minmax(360px,.9fr)!important;gap:18px!important;padding:20px!important;background:#f7f9fc!important}.iema-modern-card{background:#fff!important;border:1px solid #e0e6ee!important;border-radius:12px!important;overflow:hidden!important;box-shadow:0 4px 14px rgba(33,49,73,.035)!important}.iema-modern-card-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:17px 18px!important;border-bottom:1px solid #e7ebf1!important}.iema-modern-card-head>div:first-child{display:flex!important;align-items:center!important;gap:10px!important}.iema-modern-icon{display:grid!important;place-items:center!important;width:30px!important;height:30px!important;border-radius:8px!important;background:#eaf2ff!important;color:#1668e8!important;font-size:14px!important;font-weight:900!important}.iema-modern-icon.is-red{background:#fff0f0!important;color:#e5484d!important}.iema-modern-card-head h3{margin:0 0 2px!important;color:#12223e!important;font-size:14px!important}.iema-modern-card-head p{margin:0!important;color:#7b889b!important;font-size:10.5px!important}.iema-modern-actions{display:flex!important;gap:7px!important}.iema-mini-action,.iema-outline-action{appearance:none!important;border:1px solid #d5dde8!important;background:#fff!important;color:#38506f!important;border-radius:8px!important;min-height:34px!important;padding:7px 10px!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important}.iema-mini-action:hover,.iema-outline-action:hover{border-color:#a9c6ef!important;color:#1265dd!important;background:#f8fbff!important}.iema-outline-action{color:#dc4147!important;border-color:#f1b8bb!important}
.iema-modern-week-table{padding:8px 14px 0!important}.iema-modern-week-head,.iema-availability-day{display:grid!important;grid-template-columns:1.05fr 1.05fr .95fr .95fr 1.15fr!important;gap:10px!important;align-items:center!important}.iema-modern-week-head{padding:8px 8px!important;color:#6d7d94!important;font-size:10px!important;font-weight:800!important;background:#f8fafc!important;border-radius:8px!important}.iema-availability-day{padding:8px!important;border-bottom:1px solid #edf1f5!important}.iema-availability-day:last-child{border-bottom:0!important}.iema-availability-day>strong{font-size:11.5px!important;color:#1d2d49!important}.iema-modern-switch{display:flex!important;align-items:center!important;gap:7px!important;cursor:pointer!important}.iema-modern-switch input{position:absolute!important;opacity:0!important;pointer-events:none!important}.iema-modern-switch>span{width:30px!important;height:18px!important;border-radius:999px!important;background:#cfd7e3!important;position:relative!important;transition:.15s ease!important}.iema-modern-switch>span:after{content:""!important;position:absolute!important;width:14px!important;height:14px!important;left:2px!important;top:2px!important;border-radius:50%!important;background:#fff!important;box-shadow:0 1px 3px rgba(0,0,0,.2)!important;transition:.15s ease!important}.iema-modern-switch input:checked+span{background:#1470ec!important}.iema-modern-switch input:checked+span:after{transform:translateX(12px)!important}.iema-modern-switch em{font-size:10px!important;color:#718096!important;font-style:normal!important}.iema-availability-day.is-on .iema-modern-switch em{color:#42607f!important}.iema-modern-time select,.iema-copy-day select,.iema-modern-dancer-switch select,.iema-parent-shell input,.iema-parent-shell select,.iema-parent-shell textarea{box-sizing:border-box!important;min-height:36px!important;border:1px solid #d8e0ea!important;border-radius:7px!important;background:#fff!important;color:#263a57!important;font-size:11px!important;padding:6px 9px!important;box-shadow:none!important}.iema-parent-shell input:focus,.iema-parent-shell select:focus,.iema-parent-shell textarea:focus{outline:0!important;border-color:#6fa8f4!important;box-shadow:0 0 0 3px rgba(22,104,232,.09)!important}.iema-copy-day{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:5px!important}.iema-copy-day button{border:0!important;background:#eff5fd!important;color:#1264da!important;border-radius:7px!important;padding:6px 8px!important;font-size:10px!important;font-weight:800!important;cursor:pointer!important}
.iema-modern-week-footer{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px 18px!important;align-items:end!important;padding:14px 18px 16px!important;background:#fafbfd!important;border-top:1px solid #e8edf3!important}.iema-week-effective{display:flex!important;gap:12px!important}.iema-week-effective label{display:grid!important;gap:4px!important;color:#67768d!important;font-size:10px!important;font-weight:700!important}.iema-week-effective input{min-height:38px!important}.iema-replace-weekly{grid-column:1/2!important;margin:0!important;font-size:10px!important;color:#708097!important}.iema-modern-week-footer .iema-btn{grid-column:2!important;grid-row:1/3!important;align-self:stretch!important;min-width:200px!important;background:#1668e8!important;color:#fff!important;border:1px solid #1668e8!important;border-radius:8px!important;box-shadow:none!important;font-size:12px!important;font-weight:800!important;padding:10px 16px!important}.iema-modern-week-footer .iema-btn:hover{background:#0f5ed7!important}
.iema-modern-right-rail{display:grid!important;gap:18px!important;align-content:start!important}.iema-exception-list{display:grid!important}.iema-exception-item{display:grid!important;grid-template-columns:48px minmax(0,1fr) 20px!important;gap:11px!important;align-items:center!important;padding:10px 14px!important;border-bottom:1px solid #edf1f5!important;text-decoration:none!important;color:#172641!important}.iema-exception-item:last-child{border-bottom:0!important}.iema-exception-item time{display:grid!important;place-items:center!important;padding:4px!important;border-radius:8px!important;background:#eef8f0!important;color:#319252!important;line-height:1!important}.iema-exception-item.is-unavailable time{background:#fff1f1!important;color:#dd474c!important}.iema-exception-item time b,.iema-exception-item time small{font-size:7px!important;letter-spacing:.04em!important}.iema-exception-item time strong{font-size:17px!important;margin:2px 0!important}.iema-exception-item>span{display:grid!important;gap:2px!important}.iema-exception-item>span strong{font-size:11px!important}.iema-exception-item>span small{font-size:9.5px!important;color:#61728b!important}.iema-exception-item>span em{font-size:9.5px!important;color:#7f8da0!important;font-style:normal!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.iema-chevron{color:#9aabc0!important;font-size:18px!important}.iema-modern-empty{padding:22px 16px!important;text-align:center!important;color:#8491a4!important;font-size:11px!important}.iema-exception-form{margin:0!important;padding:14px!important;border-top:1px solid #e7ebf1!important;background:#fbfcfe!important}.iema-exception-form[hidden]{display:none!important}.iema-exception-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important}.iema-exception-form label{font-size:10px!important;color:#62738c!important;font-weight:700!important}.iema-exception-times{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;grid-column:1/-1!important}.iema-exception-form>.iema-btn{margin-top:10px!important;background:#1668e8!important;color:#fff!important;border:0!important;border-radius:8px!important;padding:9px 12px!important}
.iema-modern-calendar .iema-calendar{padding:10px 12px 14px!important}.iema-modern-calendar .iema-calendar-toolbar{display:grid!important;grid-template-columns:36px 1fr 36px!important;align-items:center!important;gap:8px!important;padding:2px 0 10px!important}.iema-modern-calendar .iema-calendar-title{text-align:center!important;font-size:12px!important;font-weight:800!important;color:#233654!important}.iema-modern-calendar .iema-calendar-nav{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;border:1px solid #dce3ec!important;border-radius:7px!important;display:grid!important;place-items:center!important;text-decoration:none!important;color:#4c617e!important}.iema-modern-calendar .iema-calendar-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important}.iema-modern-calendar .iema-calendar-head b{padding:4px!important;font-size:7px!important;text-align:center!important;color:#77869b!important}.iema-modern-calendar .iema-calendar-day{min-height:48px!important;padding:4px!important;border:1px solid #edf1f5!important;background:#fff!important;overflow:hidden!important}.iema-modern-calendar .iema-calendar-day>strong{font-size:8px!important;color:#455a78!important}.iema-modern-calendar .iema-calendar-event{display:block!important;margin-top:2px!important;padding:2px 3px!important;border-radius:3px!important;font-size:6.5px!important;line-height:1.15!important;text-decoration:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.iema-modern-calendar .iema-event-available{background:#e7f7ea!important;color:#348d50!important;border-left:2px solid #55bd72!important}.iema-modern-calendar .iema-event-unavailable{background:#fff0f0!important;color:#d54a50!important;border-left:2px solid #ef6d72!important}.iema-modern-calendar .iema-calendar-today{text-align:center!important;margin:-4px 0 8px!important}.iema-modern-calendar .iema-calendar-today a{font-size:8px!important;color:#1668e8!important;text-decoration:none!important}
.iema-parent-shell .iema-panel.iema-edit-event{margin:0 0 18px!important;background:#fff!important;border:1px solid #dfe6ef!important;border-radius:12px!important;box-shadow:none!important}
@media(max-width:1180px){.iema-parent-shell{grid-template-columns:200px minmax(0,1fr)!important}.iema-parent-content{padding:24px!important}.iema-parent-hero{grid-template-columns:1fr!important}.iema-parent-dancer-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}.iema-modern-schedule-grid{grid-template-columns:1fr!important}.iema-modern-right-rail{grid-template-columns:1fr 1fr!important}}
@media(max-width:820px){.iema-parent-shell{display:block!important}.iema-parent-sidebar{position:static!important;height:auto!important;padding:12px!important;border-right:0!important;border-bottom:1px solid #e1e7ef!important}.iema-parent-brand{grid-template-columns:38px minmax(0,1fr)!important;padding:0 5px 12px!important}.iema-parent-brand img,.iema-brand-fallback{width:38px!important;height:38px!important}.iema-parent-sidebar nav{display:flex!important;overflow-x:auto!important;margin-top:10px!important}.iema-parent-sidebar nav a{flex:0 0 auto!important;min-height:40px!important;padding:0 11px!important}.iema-parent-side-bottom{display:none!important}.iema-parent-content{padding:18px 14px 30px!important}.iema-parent-content-top h1{font-size:27px!important}.iema-parent-hero{padding:18px!important}.iema-family-summary{grid-template-columns:1fr!important}.iema-family-summary>div{border-right:0!important;border-bottom:1px solid #edf1f5!important}.iema-family-summary>div:last-child{border-bottom:0!important}.iema-modern-right-rail{grid-template-columns:1fr!important}.iema-modern-week-head{display:none!important}.iema-availability-day{grid-template-columns:1fr 1fr!important;padding:12px 8px!important}.iema-availability-day>strong{grid-column:1!important}.iema-modern-switch{grid-column:2!important;justify-self:end!important}.iema-modern-time{grid-column:auto!important}.iema-copy-day{grid-column:1/-1!important}.iema-modern-week-footer{grid-template-columns:1fr!important}.iema-modern-week-footer .iema-btn{grid-column:1!important;grid-row:auto!important;min-width:0!important}.iema-replace-weekly{grid-column:1!important}.iema-week-effective{flex-wrap:wrap!important}.iema-parent-account summary span{display:none!important}}
@media(max-width:560px){.iema-parent-content-top{align-items:flex-start!important}.iema-parent-dancer-cards{grid-template-columns:1fr!important}.iema-parent-tabs{gap:14px!important;overflow-x:auto!important}.iema-modern-schedule-grid{padding:10px!important}.iema-modern-card-head{align-items:flex-start!important;flex-direction:column!important}.iema-modern-actions{width:100%!important;flex-wrap:wrap!important}.iema-week-effective{display:grid!important;grid-template-columns:1fr!important}.iema-exception-grid{grid-template-columns:1fr!important}.iema-exception-times{grid-column:auto!important}.iema-parent-hero{border-radius:12px!important}}


/* v0.11.18 — dark rebuild for the ACTUAL v0.11.16 parent shell */
body.iema-parent-portal-page{background:#020305!important;color:#f7f8fb!important;overflow-x:hidden!important}
body.iema-parent-portal-page .ma-header,
body.iema-parent-portal-page .ma-footer,
body.iema-parent-portal-page .entry-header,
body.iema-parent-portal-page .entry-title,
body.iema-parent-portal-page .wp-block-post-title,
body.iema-parent-portal-page article>h1:first-child{display:none!important}
body.iema-parent-portal-page main,
body.iema-parent-portal-page .ma-wrap,
body.iema-parent-portal-page .ma-page,
body.iema-parent-portal-page article,
body.iema-parent-portal-page .entry-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#020305!important}

.iema-parent-shell{
 --parent-blue:#6b5cff!important;
 --parent-blue-dark:#5043dc!important;
 --parent-ink:#f7f8fb!important;
 --parent-muted:#98a2b5!important;
 --parent-line:#232632!important;
 background:#050609!important;
 color:#f7f8fb!important;
 min-height:100vh!important;
}
.iema-parent-sidebar{
 background:#08090d!important;
 border-right:1px solid #1f222b!important;
 box-shadow:14px 0 38px rgba(0,0,0,.24)!important;
}
.iema-parent-brand{border-bottom:1px solid #1e2129!important}
.iema-parent-brand img,.iema-brand-fallback{
 background:#111319!important;
 border:1px solid #262a34!important;
 color:#8d7dff!important;
}
.iema-parent-brand strong{color:#fff!important}
.iema-parent-brand small{color:#8d96a8!important}
.iema-parent-sidebar nav a,.iema-parent-side-bottom>a{color:#c9cfdb!important}
.iema-parent-sidebar nav a span,.iema-parent-side-bottom>a span{color:#8791a7!important}
.iema-parent-sidebar nav a:hover,.iema-parent-side-bottom>a:hover{background:#11141c!important;color:#fff!important}
.iema-parent-sidebar nav a.active{
 background:linear-gradient(135deg,#765cff 0%,#506dff 100%)!important;
 color:#fff!important;
 box-shadow:0 12px 30px rgba(94,78,255,.34)!important;
}
.iema-parent-side-bottom{border-top:1px solid #1e2129!important}
.iema-parent-side-bottom small{color:#626b7c!important}
.iema-parent-content{background:#050609!important}
.iema-parent-content-top h1{color:#fff!important}
.iema-parent-content-top p{color:#929caf!important}
.iema-parent-account summary{background:#0c0e13!important;color:#fff!important;border:1px solid #20242e!important}
.iema-parent-account summary strong{color:#fff!important}
.iema-parent-account summary small,.iema-parent-account summary b{color:#929caf!important}
.iema-parent-account>nav{background:#0d0f14!important;border:1px solid #252936!important;box-shadow:0 18px 48px rgba(0,0,0,.5)!important}
.iema-parent-account>nav a{color:#e8ebf2!important}
.iema-parent-account>nav a:hover{background:#171a22!important;color:#fff!important}

.iema-parent-hero,
.iema-parent-workspace,
.iema-modern-card,
.iema-parent-shell .iema-panel.iema-edit-event{
 background:linear-gradient(180deg,#0d0f14 0%,#090b10 100%)!important;
 border:1px solid #222631!important;
 box-shadow:0 18px 48px rgba(0,0,0,.28)!important;
 color:#f7f8fb!important;
}
.iema-parent-welcome h2{color:#fff!important}
.iema-parent-welcome p{color:#929caf!important}
.iema-family-summary{border:1px solid #262a34!important;background:#090b10!important}
.iema-family-summary>div{border-right:1px solid #222631!important}
.iema-family-summary>div>span{background:#171b2b!important;color:#8c7dff!important}
.iema-family-summary strong{color:#fff!important}
.iema-family-summary small{color:#969fb1!important}
.iema-parent-dancer-tile{
 background:#0c0e13!important;
 border:1px solid #262a34!important;
 color:#fff!important;
 box-shadow:none!important;
}
.iema-parent-dancer-tile:hover{border-color:#6658d8!important;box-shadow:0 12px 28px rgba(90,75,218,.16)!important}
.iema-parent-dancer-tile.active{border:1.5px solid #7b6cff!important;box-shadow:0 0 0 2px rgba(123,108,255,.12)!important;background:#10121a!important}
.iema-parent-dancer-tile small{color:#929caf!important}
.iema-parent-dancer-tile em{background:#171a22!important;color:#aeb6c7!important}
.iema-parent-dancer-tile.active em{background:#211d3b!important;color:#b8adff!important}
.iema-parent-dancer-tile .iema-parent-dancer-avatar img{border:1px solid #2c303a!important;box-shadow:0 8px 20px rgba(0,0,0,.28)!important}

.iema-modern-dancer-switch label{color:#a1aabb!important}
.iema-parent-tabs{border-bottom:1px solid #222631!important}
.iema-parent-tabs a{color:#9ea8ba!important}
.iema-parent-tabs a.active,.iema-parent-tabs a:hover{color:#9d90ff!important;border-bottom-color:#7868ff!important}
.iema-modern-schedule-grid{background:#07090d!important}
.iema-modern-card-head{border-bottom:1px solid #222631!important}
.iema-modern-card-head h3,.iema-modern-card-head strong{color:#fff!important}
.iema-modern-card-head p,.iema-modern-card-head small{color:#949fb2!important}
.iema-modern-icon{background:#1c1833!important;color:#a79cff!important}
.iema-modern-icon.is-red{background:#35161d!important;color:#ff7f93!important}
.iema-modern-actions button,.iema-modern-actions a{
 background:#11141b!important;
 border:1px solid #292e39!important;
 color:#dce1eb!important;
}
.iema-modern-actions button:hover,.iema-modern-actions a:hover{border-color:#695be1!important;color:#fff!important;background:#181b25!important}
.iema-modern-week-table{background:#0b0d12!important}
.iema-modern-week-head{background:#10131a!important;color:#8f99aa!important}
.iema-availability-day{border-bottom:1px solid #20242e!important}
.iema-availability-day>strong{color:#f4f6fa!important}
.iema-modern-switch>span{background:#333844!important}
.iema-modern-switch input:checked+span{background:linear-gradient(90deg,#765cff,#4e74ff)!important}
.iema-modern-switch em{color:#828da0!important}
.iema-availability-day.is-on .iema-modern-switch em{color:#b5bdcc!important}
.iema-modern-time select,.iema-copy-day select,.iema-modern-dancer-switch select,.iema-parent-shell input,.iema-parent-shell select,.iema-parent-shell textarea{
 background:#111319!important;
 border:1px solid #2a2e38!important;
 color:#fff!important;
}
.iema-parent-shell input:focus,.iema-parent-shell select:focus,.iema-parent-shell textarea:focus{border-color:#7868ff!important;box-shadow:0 0 0 3px rgba(120,104,255,.16)!important}
.iema-copy-day button{background:#1b1930!important;color:#b1a7ff!important}
.iema-modern-week-footer{background:#0b0d12!important;border-top:1px solid #222631!important}
.iema-week-effective label,.iema-replace-weekly{color:#929caf!important}
.iema-modern-week-footer .iema-btn,.iema-parent-shell .iema-btn{
 background:linear-gradient(135deg,#765cff 0%,#506dff 100%)!important;
 color:#fff!important;
 border:1px solid #8174ff!important;
 border-radius:10px!important;
 box-shadow:0 12px 28px rgba(94,78,255,.28)!important;
}
.iema-parent-shell .iema-btn-secondary{background:#11141b!important;border:1px solid #2b303b!important;color:#e2e6ee!important;box-shadow:none!important}
.iema-exception-item{border-bottom:1px solid #222631!important;color:#f3f5f9!important}
.iema-exception-item time{background:#10261a!important;color:#67e79a!important}
.iema-exception-item.is-unavailable time{background:#301319!important;color:#ff7b8d!important}
.iema-exception-item>span small,.iema-exception-item>span em{color:#949daf!important}
.iema-chevron{color:#677286!important}
.iema-modern-empty{color:#858fa1!important}
.iema-exception-form{background:#0c0e13!important;border-top:1px solid #222631!important}
.iema-exception-form label{color:#a1aabb!important}

.iema-modern-calendar .iema-calendar{background:#0a0c11!important}
.iema-modern-calendar .iema-calendar-title{color:#fff!important}
.iema-modern-calendar .iema-calendar-nav{background:#12151c!important;border:1px solid #292e39!important;color:#dadfea!important}
.iema-modern-calendar .iema-calendar-head b{color:#7f899b!important}
.iema-modern-calendar .iema-calendar-day{background:#0c0e13!important;border:1px solid #20242d!important}
.iema-modern-calendar .iema-calendar-day>strong{color:#aeb7c6!important}
.iema-modern-calendar .iema-event-available{background:#10261a!important;color:#7eeda6!important;border-left-color:#45d47b!important}
.iema-modern-calendar .iema-event-unavailable{background:#301319!important;color:#ff8c9b!important;border-left-color:#ff5f77!important}
.iema-modern-calendar .iema-calendar-today a{color:#a89dff!important}

/* mobile-first redesign: compact dark app, no giant white stack */
@media(max-width:820px){
 .iema-parent-shell{display:block!important;background:#050609!important}
 .iema-parent-sidebar{
   position:static!important;height:auto!important;padding:12px 12px 8px!important;
   background:#07090d!important;border-right:0!important;border-bottom:1px solid #1f222b!important;box-shadow:none!important;
 }
 .iema-parent-brand{grid-template-columns:42px minmax(0,1fr)!important;padding:2px 2px 12px!important;border-bottom:0!important}
 .iema-parent-brand img,.iema-brand-fallback{width:42px!important;height:42px!important;border-radius:12px!important}
 .iema-parent-brand strong{font-size:17px!important}.iema-parent-brand small{font-size:11px!important}
 .iema-parent-sidebar nav{display:flex!important;gap:7px!important;overflow-x:auto!important;margin:0!important;padding:0 0 4px!important;scrollbar-width:none!important}
 .iema-parent-sidebar nav::-webkit-scrollbar{display:none!important}
 .iema-parent-sidebar nav a{flex:0 0 auto!important;min-height:40px!important;padding:0 13px!important;border-radius:10px!important;background:#0d1016!important;border:1px solid #1f242e!important;font-size:12px!important}
 .iema-parent-sidebar nav a.active{background:linear-gradient(135deg,#765cff,#506dff)!important;border-color:#7868ff!important}
 .iema-parent-side-bottom{display:none!important}
 .iema-parent-content{padding:16px 12px 28px!important;background:#050609!important}
 .iema-parent-content-top{align-items:center!important;margin-bottom:14px!important;gap:10px!important}
 .iema-parent-content-top h1{font-size:28px!important;margin-bottom:4px!important}.iema-parent-content-top p{font-size:12.5px!important;line-height:1.4!important}
 .iema-parent-account summary{padding:5px!important;background:#0d1016!important;border-radius:14px!important}
 .iema-parent-account summary img{width:42px!important;height:42px!important}.iema-parent-account summary span{display:none!important}
 .iema-parent-hero{padding:16px!important;border-radius:18px!important;gap:16px!important;margin-bottom:14px!important}
 .iema-parent-welcome h2{font-size:22px!important;line-height:1.08!important}.iema-parent-welcome p{font-size:12px!important}
 .iema-family-summary{grid-template-columns:repeat(3,1fr)!important;padding:8px 4px!important;border-radius:14px!important}
 .iema-family-summary>div{grid-template-columns:1fr!important;grid-template-rows:auto auto auto!important;text-align:center!important;justify-items:center!important;gap:3px!important;padding:7px 4px!important;border-right:1px solid #222631!important;border-bottom:0!important}
 .iema-family-summary>div>span{grid-row:auto!important;width:28px!important;height:28px!important;font-size:12px!important}
 .iema-family-summary strong{font-size:17px!important}.iema-family-summary small{font-size:8px!important;line-height:1.15!important}
 .iema-parent-dancer-cards{grid-template-columns:1fr!important;gap:9px!important;margin-top:2px!important}
 .iema-parent-dancer-tile{grid-template-columns:54px minmax(0,1fr)!important;padding:11px!important;border-radius:14px!important}
 .iema-parent-dancer-tile .iema-parent-dancer-avatar img{width:54px!important;height:54px!important}
 .iema-parent-dancer-tile strong{font-size:14px!important}.iema-parent-dancer-tile small{font-size:11px!important}
 .iema-parent-workspace{border-radius:18px!important}
 .iema-modern-dancer-switch{padding:12px 12px 0!important;justify-content:stretch!important}.iema-modern-dancer-switch label{width:100%!important}.iema-modern-dancer-switch select{flex:1!important;min-width:0!important}
 .iema-parent-tabs{gap:18px!important;padding:0 12px!important;overflow-x:auto!important;min-height:48px!important}.iema-parent-tabs a{white-space:nowrap!important;font-size:12px!important}
 .iema-modern-schedule-grid{grid-template-columns:1fr!important;gap:12px!important;padding:12px!important}
 .iema-modern-right-rail{grid-template-columns:1fr!important;gap:12px!important}
 .iema-modern-card{border-radius:14px!important}.iema-modern-card-head{padding:14px!important}
 .iema-modern-week-head{display:none!important}
 .iema-availability-day{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;padding:12px 10px!important}
 .iema-availability-day>strong{grid-column:1!important;font-size:13px!important}.iema-modern-switch{grid-column:2!important;justify-self:end!important}
 .iema-modern-time{grid-column:auto!important}.iema-modern-time select{width:100%!important;min-height:42px!important;font-size:13px!important}
 .iema-copy-day{grid-column:1/-1!important}.iema-copy-day select,.iema-copy-day button{min-height:40px!important}
 .iema-modern-week-footer{grid-template-columns:1fr!important;padding:12px!important}.iema-week-effective{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}.iema-modern-week-footer .iema-btn{grid-column:1!important;grid-row:auto!important;min-height:46px!important;min-width:0!important;width:100%!important}.iema-replace-weekly{grid-column:1!important}
}
@media(max-width:560px){
 .iema-parent-content{padding:12px 10px 24px!important}
 .iema-parent-content-top{align-items:flex-start!important}
 .iema-parent-content-top h1{font-size:25px!important}
 .iema-parent-content-top p{max-width:250px!important}
 .iema-family-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .iema-parent-tabs{gap:14px!important}
 .iema-modern-actions{width:100%!important;flex-wrap:wrap!important}
 .iema-week-effective{grid-template-columns:1fr!important}
 .iema-exception-grid{grid-template-columns:1fr!important}.iema-exception-times{grid-column:auto!important}
}


/* v0.11.19 parent portal accent + availability row fix */
.iema-parent-shell{
  --iema-parent-accent:#20b7ff;
  --iema-parent-accent-2:#0d7cff;
  --iema-parent-accent-soft:#0d2234;
}
/* remove purple/violet and move to blue/cyan accents */
.iema-modern-icon{background:#0c2334!important;color:var(--md2-blue-soft)!important}
.iema-modern-actions button,.iema-modern-actions a,
.iema-copy-day button,
.iema-modern-week-footer .iema-btn,.iema-parent-shell .iema-btn,
.iema-parent-tabs a.is-active,
.iema-parent-tabs button.is-active{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
  border-color:#24a9ff!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(13,124,255,.30)!important;
}
.iema-modern-actions button:hover,.iema-modern-actions a:hover,
.iema-copy-day button:hover,
.iema-modern-week-footer .iema-btn:hover,.iema-parent-shell .iema-btn:hover{
  background:linear-gradient(180deg,#4bccff 0%,#2791ff 100%)!important;
  border-color:#49c3ff!important;
}
.iema-modern-switch input:checked+span{background:linear-gradient(90deg,#22c1ff,var(--md2-blue-strong))!important}
.iema-parent-tabs a.is-active,.iema-parent-tabs button.is-active,.iema-parent-tab.is-active{color:var(--md2-blue-soft)!important;border-bottom-color:var(--md2-blue)!important}
.iema-parent-tabs a,.iema-parent-tabs button,.iema-parent-tab{color:#a8b3c7!important}
.iema-parent-tabs a:hover,.iema-parent-tabs button:hover,.iema-parent-tab:hover{color:#e8f6ff!important}
.iema-modern-calendar .iema-calendar-today a{color:var(--md2-blue-soft)!important}
.iema-modern-calendar .iema-calendar-nav:hover{border-color:var(--md2-blue)!important;color:#fff!important;background:#102438!important}
.iema-modern-calendar .iema-event-available{background:#102a1c!important;color:#81efad!important;border-left-color:#3bdd7d!important}
.iema-modern-calendar .iema-event-unavailable{background:#32141a!important;color:#ff99a7!important;border-left-color:#ff5f77!important}
/* weekly availability rows should be dark and readable */
.iema-modern-week-table{background:#0b0d12!important}
.iema-modern-week-head{background:#11151d!important;color:#8695ac!important;border-radius:12px!important}
.iema-availability-day{
  background:#12161f!important;
  border:1px solid #242a35!important;
  border-radius:16px!important;
  margin:10px 0!important;
  padding:14px 12px!important;
}
.iema-availability-day:last-child{border-bottom:1px solid #242a35!important}
.iema-availability-day>strong{
  color:#f4f7ff!important;
  font-size:14px!important;
  font-weight:800!important;
  opacity:1!important;
}
.iema-availability-day.is-on{border-color:#1a587e!important;box-shadow:0 0 0 1px rgba(32,183,255,.18) inset!important}
.iema-modern-switch em{color:#b2bdd0!important;font-size:12px!important}
.iema-availability-day.is-on .iema-modern-switch em{color:#d9e7ff!important}
.iema-modern-time select,.iema-copy-day select,.iema-modern-dancer-switch select,.iema-parent-shell input,.iema-parent-shell select,.iema-parent-shell textarea{
  background:#090d14!important;
  border:1px solid #2d3440!important;
  color:#f5f8ff!important;
}
.iema-modern-time select:focus,.iema-copy-day select:focus,.iema-modern-dancer-switch select:focus,.iema-parent-shell input:focus,.iema-parent-shell select:focus,.iema-parent-shell textarea:focus{
  border-color:var(--md2-blue)!important;
  box-shadow:0 0 0 4px rgba(32,183,255,.14)!important;
}
.iema-copy-day{gap:8px!important}
.iema-copy-day button{border-radius:12px!important;min-height:42px!important;padding:9px 14px!important}
.iema-modern-card-head{padding:18px 18px 16px!important}
.iema-modern-card-head p{color:#9cabc1!important}
/* mobile specifically */
@media(max-width:820px){
  .iema-availability-day{
    grid-template-columns:1fr 1fr!important;
    background:#11151d!important;
    padding:14px 12px!important;
    gap:10px!important;
  }
  .iema-availability-day>strong{grid-column:1 / 2!important;align-self:center!important}
  .iema-modern-switch{grid-column:2 / 3!important;justify-self:end!important;align-self:center!important}
  .iema-modern-time{grid-column:1 / -1!important}
  .iema-modern-time select{min-height:48px!important;font-size:16px!important;border-radius:12px!important}
  .iema-copy-day{grid-column:1 / -1!important;grid-template-columns:minmax(0,1fr) auto!important}
  .iema-copy-day select{min-height:48px!important;font-size:16px!important;border-radius:12px!important}
  .iema-copy-day button{min-width:78px!important;font-size:15px!important}
}


/* v0.11.20 eliminate legacy purple from parent shell */
.iema-parent-shell{--iema-parent-accent:var(--md2-blue)!important;--iema-parent-accent-2:var(--md2-blue-strong)!important;--iema-parent-accent-soft:#0c2334!important}
.iema-parent-brand .iema-brand-fallback,
.iema-parent-sidebar .iema-brand-fallback{
  color:#63ceff!important;
  background:#0b1622!important;
  border-color:#21364a!important;
}
.iema-parent-sidebar nav a.is-active,
.iema-parent-sidebar nav a.active,
.iema-parent-sidebar nav a[aria-current="page"]{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
  border-color:#28b8ff!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(13,124,255,.28)!important;
}
.iema-parent-sidebar nav a:hover{border-color:#24577a!important;background:#101a25!important;color:#edf9ff!important}
.iema-parent-sidebar nav a.is-active:hover,
.iema-parent-sidebar nav a.active:hover{background:linear-gradient(180deg,#49c8ff 0%,#238dff 100%)!important}
.iema-family-summary .iema-summary-icon,
.iema-family-summary>div>span:first-child,
.iema-family-summary .icon{
  background:#0d2234!important;
  color:#54c8ff!important;
  border-color:#173c57!important;
}
.iema-parent-dancer-card.is-selected,
.iema-parent-dancer-card[aria-current="true"],
.iema-parent-dancer-card.is-active{
  border-color:var(--md2-blue)!important;
  box-shadow:0 0 0 2px rgba(32,183,255,.28),0 12px 28px rgba(0,0,0,.28)!important;
}
.iema-parent-dancer-card.is-selected .iema-dancer-state,
.iema-parent-dancer-card.is-selected .iema-selected-pill,
.iema-parent-dancer-card .is-selected,
.iema-parent-dancer-card [class*="selected"]{
  background:#0c2d44!important;
  color:#78d7ff!important;
  border-color:#174866!important;
}
.iema-parent-tabs a.is-active,
.iema-parent-tabs button.is-active,
.iema-parent-tab.is-active,
.iema-parent-tabs .active{
  color:#76d4ff!important;
  border-bottom-color:var(--md2-blue)!important;
  background:transparent!important;
  box-shadow:none!important;
}
.iema-parent-tabs a.is-active:before,
.iema-parent-tabs button.is-active:before,
.iema-parent-tab.is-active:before{color:#52c7ff!important}
.iema-parent-tabs{border-bottom-color:#242b35!important}
.iema-parent-shell a:focus-visible,.iema-parent-shell button:focus-visible,.iema-parent-shell select:focus-visible,.iema-parent-shell input:focus-visible{
  outline:2px solid var(--md2-blue)!important;outline-offset:2px!important;
}
/* catch any remaining parent-shell violet backgrounds/borders from older cascade */
.iema-parent-shell [style*="#765cff"],
.iema-parent-shell [style*="#6f5cff"],
.iema-parent-shell [style*="#7c3aed"]{filter:none!important}
@media(max-width:820px){
  .iema-parent-sidebar nav a.is-active,
  .iema-parent-sidebar nav a.active,
  .iema-parent-sidebar nav a[aria-current="page"]{
    background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
    color:#fff!important;
  }
}


/* v0.11.21 parent portal consistency + topbar/icon fixes */
.iema-parent-shell{
  --iema-parent-accent:var(--md2-blue)!important;
  --iema-parent-accent-2:var(--md2-blue-strong)!important;
  --iema-parent-accent-glow:rgba(13,124,255,.28)!important;
}
/* make all parent sub-pages share the same shell surfaces */
body.iema-parent-portal-page .iema-parent-content,
body.iema-parent-portal-page .iema-parent-hero,
body.iema-parent-portal-page .iema-modern-card,
body.iema-parent-portal-page .iema-panel,
body.iema-parent-portal-page .iema-modern-calendar,
body.iema-parent-portal-page .iema-modern-right-rail > div,
body.iema-parent-portal-page .iema-parent-section,
body.iema-parent-portal-page .iema-parent-page-card{
  color:#f5f8ff!important;
}
/* sidebar icon treatment */
.iema-parent-sidebar nav a,
.iema-parent-side-bottom>a{
  gap:14px!important;
}
.iema-parent-sidebar nav a span,
.iema-parent-side-bottom>a span{
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:10px!important;
  font-size:18px!important;
  line-height:1!important;
  color:#8fcfff!important;
  background:#0f1724!important;
  border:1px solid #233248!important;
}
.iema-parent-sidebar nav a:hover span,
.iema-parent-side-bottom>a:hover span{background:#132339!important;border-color:#2a5078!important;color:#c9f0ff!important}
.iema-parent-sidebar nav a.active span,
.iema-parent-sidebar nav a.is-active span,
.iema-parent-sidebar nav a[aria-current="page"] span{
  background:rgba(255,255,255,.14)!important;
  border-color:rgba(255,255,255,.18)!important;
  color:#fff!important;
}
/* account button alignment + gradient */
.iema-parent-content-top{
  align-items:flex-start!important;
}
.iema-parent-account{
  align-self:flex-start!important;
}
.iema-parent-account summary{
  min-height:58px!important;
  padding:8px 14px 8px 8px!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
  border:1px solid #38beff!important;
  box-shadow:0 12px 28px rgba(13,124,255,.26)!important;
  gap:12px!important;
}
.iema-parent-account summary img{border:2px solid rgba(255,255,255,.92)!important;box-shadow:0 6px 14px rgba(0,0,0,.22)!important}
.iema-parent-account summary strong,
.iema-parent-account summary small,
.iema-parent-account summary b{color:#fff!important}
.iema-parent-account summary small{opacity:.92!important}
.iema-parent-account>nav{background:#0e1420!important;border:1px solid #203248!important;box-shadow:0 20px 44px rgba(0,0,0,.34)!important}
.iema-parent-account>nav a{color:#eff6ff!important}
.iema-parent-account>nav a:hover{background:#132238!important;color:#fff!important}
/* selected dancer card should be blue, not purple */
.iema-parent-dancer-card.is-selected,
.iema-parent-dancer-card.is-active,
.iema-parent-dancer-card[aria-current="true"],
.iema-parent-dancer-tile.active,
.iema-parent-dancer-tile.is-selected,
.iema-parent-dancer-tile[aria-current="true"]{
  border-color:var(--md2-blue)!important;
  box-shadow:0 0 0 2px rgba(32,183,255,.24),0 14px 30px rgba(0,0,0,.28)!important;
}
.iema-parent-dancer-card.is-selected .iema-selected-pill,
.iema-parent-dancer-card.is-selected [class*="selected"],
.iema-parent-dancer-tile.active em,
.iema-parent-dancer-tile.is-selected em,
.iema-parent-dancer-tile[aria-current="true"] em{
  background:#10304a!important;
  color:#89dcff!important;
  border:1px solid #1c5578!important;
}
/* active parent tabs use blue across all pages */
.iema-parent-tabs a.is-active,
.iema-parent-tabs button.is-active,
.iema-parent-tabs .active,
.iema-parent-tab.is-active,
.iema-parent-tab.active{
  color:#87dbff!important;
  border-bottom-color:var(--md2-blue)!important;
  box-shadow:inset 0 -2px 0 var(--md2-blue)!important;
}
.iema-parent-tabs a.is-active:before,
.iema-parent-tabs button.is-active:before,
.iema-parent-tabs .active:before,
.iema-parent-tab.is-active:before{color:#73d3ff!important}
/* make all primary actions consistent */
body.iema-parent-portal-page .iema-btn,
body.iema-parent-portal-page a.iema-btn,
body.iema-parent-portal-page button.iema-btn,
body.iema-parent-portal-page .button-primary,
body.iema-parent-portal-page input[type="submit"]{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
  border:1px solid #37bcff!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(13,124,255,.24)!important;
}
body.iema-parent-portal-page .iema-btn:hover,
body.iema-parent-portal-page a.iema-btn:hover,
body.iema-parent-portal-page button.iema-btn:hover,
body.iema-parent-portal-page .button-primary:hover,
body.iema-parent-portal-page input[type="submit"]:hover{
  background:linear-gradient(180deg,#4cccff 0%,#2791ff 100%)!important;
}
/* calendar + my dancers + account pages consistent cards */
body.iema-parent-portal-page .iema-parent-shell .iema-panel,
body.iema-parent-portal-page .iema-parent-shell .iema-modern-card,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-dancers-panel,
body.iema-parent-portal-page .iema-parent-shell .iema-calendar-workspace,
body.iema-parent-portal-page .iema-parent-shell .iema-account-section,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-account-card{
  background:linear-gradient(180deg,#0a0f18 0%,#070b12 100%)!important;
  border:1px solid #1f2937!important;
  box-shadow:0 18px 40px rgba(0,0,0,.28)!important;
  border-radius:18px!important;
}
@media(max-width:820px){
  .iema-parent-sidebar nav a span,
  .iema-parent-side-bottom>a span{width:24px!important;height:24px!important;min-width:24px!important;border-radius:8px!important;font-size:15px!important}
  .iema-parent-account summary{padding:8px 11px 8px 8px!important;min-height:54px!important}
}
@media(max-width:560px){
  .iema-parent-sidebar{padding:10px 10px 14px!important}
  .iema-parent-sidebar nav a{min-height:44px!important;padding:0 12px!important;border-radius:13px!important}
  .iema-parent-content-top{gap:14px!important}
  .iema-parent-account summary{border-radius:15px!important}
}


/* v0.11.22 parent sidebar icon set */
.iema-parent-sidebar .iema-nav-icon{
  width:32px!important;height:32px!important;min-width:32px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border-radius:10px!important;background:#0d1723!important;border:1px solid #1e3348!important;
  color:#67cbff!important;
}
.iema-parent-sidebar .iema-nav-icon svg{
  width:19px!important;height:19px!important;display:block!important;
  fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
}
.iema-parent-sidebar nav a.active .iema-nav-icon,
.iema-parent-sidebar nav a.is-active .iema-nav-icon,
.iema-parent-sidebar nav a[aria-current="page"] .iema-nav-icon{
  color:#fff!important;background:rgba(255,255,255,.14)!important;border-color:rgba(255,255,255,.22)!important;
}
.iema-parent-sidebar nav a:hover .iema-nav-icon,
.iema-parent-side-bottom>a:hover .iema-nav-icon{
  color:#dff6ff!important;background:#10263a!important;border-color:#285a7f!important;
}
@media(max-width:820px){
  .iema-parent-sidebar .iema-nav-icon{width:28px!important;height:28px!important;min-width:28px!important;border-radius:9px!important}
  .iema-parent-sidebar .iema-nav-icon svg{width:17px!important;height:17px!important}
}

/* v0.11.23 Parent Portal top-nav architecture */
.iema-parent-shell.iema-parent-shell-topnav{display:block!important;min-height:100vh!important;background:#05070b!important;color:#f5f8ff!important}
.iema-parent-appbar{position:sticky!important;top:0!important;z-index:50!important;display:grid!important;grid-template-columns:minmax(220px,320px) minmax(0,1fr) auto!important;align-items:center!important;gap:22px!important;padding:16px 26px!important;background:rgba(6,9,14,.96)!important;border-bottom:1px solid #1c2532!important;backdrop-filter:blur(18px)!important}
.iema-parent-appbar .iema-parent-brand{display:flex!important;align-items:center!important;gap:12px!important;padding:0!important;border:0!important;text-decoration:none!important;min-width:0!important}
.iema-parent-appbar .iema-parent-brand img,.iema-parent-appbar .iema-brand-fallback{width:48px!important;height:48px!important;min-width:48px!important;border-radius:14px!important;background:#0c131d!important;border:1px solid #233247!important;object-fit:contain!important;padding:4px!important;box-sizing:border-box!important;color:#54caff!important}
.iema-parent-appbar .iema-parent-brand>span:last-child{display:grid!important;min-width:0!important}.iema-parent-appbar .iema-parent-brand strong{font-size:15px!important;color:#fff!important;line-height:1.1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.iema-parent-appbar .iema-parent-brand small{color:#8fa0b8!important;font-size:11px!important;margin-top:3px!important}
.iema-parent-topnav{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-width:0!important}
.iema-parent-topnav a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:0 18px!important;border-radius:12px!important;border:1px solid transparent!important;color:#9eacc1!important;text-decoration:none!important;font-size:13px!important;font-weight:800!important;transition:.16s ease!important}
.iema-parent-topnav a:hover{background:#0e1621!important;color:#e9f7ff!important;border-color:#213247!important}.iema-parent-topnav a.active{background:linear-gradient(180deg,var(--md2-blue),var(--md2-blue-strong))!important;color:#fff!important;border-color:#36beff!important;box-shadow:0 10px 24px rgba(13,124,255,.22)!important}
.iema-parent-appbar .iema-parent-account{justify-self:end!important}.iema-parent-appbar .iema-parent-account summary{min-height:52px!important;padding:7px 13px 7px 7px!important}.iema-parent-appbar .iema-parent-account summary img{width:40px!important;height:40px!important}.iema-parent-appbar .iema-parent-account summary span{min-width:110px!important}
.iema-parent-shell-topnav .iema-parent-content{max-width:1500px!important;width:100%!important;margin:0 auto!important;padding:28px 28px 48px!important;box-sizing:border-box!important}
.iema-parent-view-head{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:20px!important;margin-bottom:20px!important}.iema-parent-view-head h1{margin:0 0 5px!important;font-size:34px!important;letter-spacing:-.035em!important;color:#fff!important}.iema-parent-view-head p{margin:0!important;color:#91a0b6!important;font-size:13px!important}
.iema-parent-shell-topnav .iema-parent-hero{background:linear-gradient(180deg,#0b1018 0%,#080c12 100%)!important;border:1px solid #1f2937!important;border-radius:20px!important;box-shadow:0 18px 44px rgba(0,0,0,.26)!important}
.iema-home-quick-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important;margin:18px 0 0!important}.iema-home-action-card{appearance:none!important;width:100%!important;display:grid!important;grid-template-columns:1fr auto!important;gap:4px 16px!important;align-items:center!important;text-align:left!important;padding:18px!important;border-radius:18px!important;background:linear-gradient(180deg,#0d141f,#0a0f17)!important;border:1px solid #1f3043!important;color:#fff!important;text-decoration:none!important;cursor:pointer!important;box-shadow:none!important}.iema-home-action-card span{grid-column:1!important;color:#6dccff!important;font-size:11px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important}.iema-home-action-card strong{grid-column:1!important;font-size:15px!important}.iema-home-action-card b{grid-column:2!important;grid-row:1/3!important;color:#71d2ff!important;font-size:23px!important}.iema-home-action-card:hover{border-color:var(--md2-blue)!important;background:#0d1c29!important}
.iema-active-dancer-strip{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;margin:0 0 16px!important;padding:10px!important;background:#090e16!important;border:1px solid #1c2734!important;border-radius:16px!important}.iema-active-dancer-strip>span{color:#8e9db2!important;font-size:11px!important;font-weight:800!important;padding:0 5px!important}.iema-active-dancer-strip a{display:inline-flex!important;align-items:center!important;min-height:36px!important;padding:0 13px!important;border-radius:10px!important;color:#aeb9c9!important;text-decoration:none!important;font-size:12px!important;font-weight:800!important;border:1px solid transparent!important}.iema-active-dancer-strip a:hover{background:#101a27!important;color:#fff!important}.iema-active-dancer-strip a.active{background:#0c2c43!important;border-color:#165a7e!important;color:#78d9ff!important}
.iema-parent-shell-topnav .iema-modern-dancer-switch,.iema-parent-shell-topnav .iema-parent-tabs{display:none!important}
.iema-parent-shell-topnav .iema-modern-schedule-grid{padding:0!important;background:transparent!important}
.iema-parent-dancers-view{background:linear-gradient(180deg,#0a0f17,#070b11)!important;border:1px solid #1d2734!important;border-radius:20px!important;padding:20px!important}.iema-parent-dancer-cards-large{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin-top:0!important}.iema-parent-dancer-cards-large .iema-parent-dancer-tile{min-height:112px!important}
.iema-parent-calendar-page{background:linear-gradient(180deg,#0a0f17,#070b11)!important;border:1px solid #1d2734!important;border-radius:20px!important;overflow:hidden!important;box-shadow:0 18px 44px rgba(0,0,0,.25)!important}.iema-parent-calendar-page>.iema-calendar{padding:18px!important}.iema-parent-calendar-page .iema-calendar-day{min-height:105px!important}
.iema-modern-calendar{cursor:pointer!important}.iema-modern-calendar:hover{border-color:#245f83!important}.iema-modern-calendar:after{content:'Click to open large calendar';display:block!important;padding:0 14px 14px!important;color:#5fcaff!important;font-size:10px!important;font-weight:800!important;text-align:right!important}
.iema-calendar-modal[hidden]{display:none!important}.iema-calendar-modal{position:fixed!important;inset:0!important;z-index:999999!important;display:grid!important;place-items:center!important;padding:24px!important}.iema-calendar-modal-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.78)!important;backdrop-filter:blur(10px)!important}.iema-calendar-modal-dialog{position:relative!important;width:min(1180px,96vw)!important;max-height:92vh!important;overflow:auto!important;background:#070b11!important;border:1px solid #263548!important;border-radius:24px!important;box-shadow:0 40px 110px rgba(0,0,0,.6)!important;color:#fff!important}.iema-calendar-modal-dialog>header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;padding:20px 22px!important;border-bottom:1px solid #202b39!important}.iema-calendar-modal-dialog>header small{color:#71d2ff!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.09em!important;font-weight:900!important}.iema-calendar-modal-dialog>header h2{margin:3px 0 0!important;color:#fff!important;font-size:24px!important}.iema-calendar-modal-close{width:42px!important;height:42px!important;border-radius:12px!important;background:#111923!important;border:1px solid #29384b!important;color:#fff!important;font-size:25px!important;cursor:pointer!important}.iema-calendar-modal-body{padding:20px!important}.iema-calendar-modal-body .iema-calendar-day{min-height:112px!important}.iema-calendar-modal-dialog>footer{display:flex!important;justify-content:flex-end!important;gap:10px!important;padding:16px 20px!important;border-top:1px solid #202b39!important}.iema-calendar-modal-open{overflow:hidden!important}
@media(max-width:900px){.iema-parent-appbar{grid-template-columns:1fr auto!important;grid-template-areas:'brand account' 'nav nav'!important;padding:12px 14px!important;gap:10px!important}.iema-parent-appbar .iema-parent-brand{grid-area:brand!important}.iema-parent-appbar .iema-parent-account{grid-area:account!important}.iema-parent-topnav{grid-area:nav!important;justify-content:flex-start!important;overflow-x:auto!important;padding-bottom:2px!important}.iema-parent-topnav a{flex:0 0 auto!important;min-height:40px!important;padding:0 14px!important}.iema-parent-shell-topnav .iema-parent-content{padding:20px 14px 36px!important}.iema-parent-dancer-cards-large{grid-template-columns:1fr!important}.iema-home-quick-grid{grid-template-columns:1fr!important}}
@media(max-width:560px){.iema-parent-appbar{position:relative!important}.iema-parent-appbar .iema-parent-brand img,.iema-parent-appbar .iema-brand-fallback{width:42px!important;height:42px!important;min-width:42px!important}.iema-parent-appbar .iema-parent-brand strong{font-size:14px!important}.iema-parent-appbar .iema-parent-account summary span{display:none!important}.iema-parent-appbar .iema-parent-account summary{min-height:48px!important;padding:6px 9px 6px 6px!important}.iema-parent-view-head h1{font-size:28px!important}.iema-calendar-modal{padding:8px!important}.iema-calendar-modal-dialog{width:100%!important;max-height:94vh!important;border-radius:18px!important}.iema-calendar-modal-body{padding:10px!important;overflow-x:auto!important}.iema-calendar-modal-body .iema-calendar{min-width:760px!important}.iema-calendar-modal-dialog>footer{position:sticky!important;bottom:0!important;background:#070b11!important}.iema-parent-calendar-page{overflow-x:auto!important}.iema-parent-calendar-page>.iema-calendar{min-width:760px!important}}


/* v0.11.24 dancer profile modal + final selected-card blue fix */
.iema-parent-shell-topnav .iema-parent-dancer-tile{
  width:100%!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  text-align:left!important;
  font:inherit!important;
  cursor:pointer!important;
}
.iema-parent-shell-topnav .iema-parent-dancer-tile.active,
.iema-parent-shell-topnav .iema-parent-dancer-tile.is-selected,
.iema-parent-shell-topnav .iema-parent-dancer-tile[aria-current="true"]{
  border:1.5px solid var(--md2-blue)!important;
  outline:0!important;
  box-shadow:0 0 0 2px rgba(32,183,255,.25),0 14px 30px rgba(0,0,0,.28)!important;
  background:#0d151f!important;
}
.iema-parent-shell-topnav .iema-parent-dancer-tile.active em,
.iema-parent-shell-topnav .iema-parent-dancer-tile.is-selected em{
  background:#0b3048!important;
  color:#8be0ff!important;
  border:1px solid #17658e!important;
}
.iema-parent-shell-topnav .iema-parent-dancer-tile:hover{
  border-color:#159de0!important;
  box-shadow:0 10px 24px rgba(0,124,190,.12)!important;
}
.iema-parent-profile-modal .iema-parent-modal-backdrop{background:rgba(0,0,0,.82)!important;backdrop-filter:blur(12px)!important}
.iema-parent-profile-modal .iema-parent-modal-dialog{
  width:min(860px,calc(100vw - 32px))!important;
  max-height:min(90vh,900px)!important;
  overflow:auto!important;
  background:linear-gradient(180deg,#0b111a 0%,#070b11 100%)!important;
  border:1px solid #243244!important;
  border-radius:26px!important;
  box-shadow:0 40px 110px rgba(0,0,0,.68)!important;
  padding:30px!important;
  color:#f5f8ff!important;
}
.iema-parent-profile-modal .iema-parent-modal-close{background:#111a26!important;border:1px solid #29394d!important;color:#fff!important}
.iema-parent-profile-modal .iema-parent-modal-hero{border-bottom:1px solid #202b39!important;padding-bottom:24px!important}
.iema-parent-profile-modal .iema-parent-modal-avatar img,
.iema-parent-profile-modal .iema-parent-modal-avatar .avatar{border:3px solid #1c9fe5!important;background:#0a1119!important}
.iema-parent-profile-modal .iema-profile-eyebrow{color:#66d0ff!important;font-size:10px!important;letter-spacing:.12em!important;font-weight:900!important}
.iema-parent-profile-modal .iema-parent-modal-hero h2{color:#fff!important}
.iema-parent-profile-modal .iema-parent-modal-hero p{color:#9aabc1!important}
.iema-parent-profile-modal .iema-profile-goal{display:inline-flex!important;margin-top:10px!important;padding:7px 10px!important;border-radius:999px!important;background:#0c2d42!important;border:1px solid #165676!important;color:#8ddfff!important;font-size:11px!important;font-weight:800!important}
.iema-parent-profile-modal .iema-parent-profile-grid>div{background:#0f1621!important;border:1px solid #202d3e!important}
.iema-parent-profile-modal .iema-parent-profile-grid span{color:#8296af!important}
.iema-parent-profile-modal .iema-parent-profile-grid strong{color:#f4f8ff!important}
.iema-parent-profile-modal .iema-parent-profile-grid small{display:block!important;margin-top:5px!important;color:#91a2b8!important;font-size:11px!important;line-height:1.4!important}
.iema-parent-profile-actions{display:flex!important;gap:10px!important;flex-wrap:wrap!important;margin-top:22px!important}
.iema-parent-profile-actions .iema-btn{min-height:44px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
@media(max-width:620px){
  .iema-parent-profile-modal{padding:8px!important}
  .iema-parent-profile-modal .iema-parent-modal-dialog{width:100%!important;max-height:95vh!important;border-radius:20px!important;padding:22px 16px!important}
  .iema-parent-profile-modal .iema-parent-modal-hero{align-items:flex-start!important;gap:14px!important}
  .iema-parent-profile-modal .iema-parent-modal-avatar img,.iema-parent-profile-modal .iema-parent-modal-avatar .avatar{width:82px!important;height:82px!important;border-radius:20px!important}
  .iema-parent-profile-modal .iema-parent-modal-hero h2{font-size:27px!important}
  .iema-parent-profile-modal .iema-parent-profile-grid{grid-template-columns:1fr!important}
  .iema-parent-profile-modal .iema-parent-modal-wide{grid-column:auto!important}
  .iema-parent-profile-actions{display:grid!important;grid-template-columns:1fr!important}
  .iema-parent-profile-actions .iema-btn{width:100%!important}
}

/* v0.11.25 Home is family-level; dancer selection exists only in scheduling views */
.iema-parent-shell .iema-home-quick-grid .iema-home-action-card small{
  display:block!important;
  margin-top:5px!important;
  color:#8e9cb1!important;
  font-size:11px!important;
  line-height:1.4!important;
  font-weight:500!important;
}
.iema-parent-shell .iema-home-quick-grid .iema-home-action-card{
  align-content:center!important;
}
.iema-parent-shell .iema-parent-home .iema-parent-dancer-tile,
.iema-parent-shell [data-parent-view="home"] .iema-parent-dancer-tile{
  border-color:#26303d!important;
  box-shadow:none!important;
}


/* v0.11.26 Parent full calendar + exception override presentation */
body.iema-parent-portal-page .iema-full-calendar{
  background:#020407!important;
  color:#f5f8ff!important;
}
body.iema-parent-portal-page .iema-full-calendar-bar{
  background:linear-gradient(180deg,#080c12 0%,#05080d 100%)!important;
  border-bottom:1px solid #1d2a39!important;
  padding:18px 24px!important;
  box-shadow:0 12px 34px rgba(0,0,0,.32)!important;
}
body.iema-parent-portal-page .iema-full-calendar-heading .iema-studio-logo,
body.iema-parent-portal-page .iema-full-calendar-heading img{
  width:50px!important;height:50px!important;object-fit:contain!important;border-radius:14px!important;
  background:#0c1118!important;border:1px solid #223247!important;padding:5px!important;box-sizing:border-box!important;
}
body.iema-parent-portal-page .iema-full-calendar-heading small{color:var(--md2-blue-soft)!important;font-size:11px!important;letter-spacing:.1em!important;font-weight:850!important}
body.iema-parent-portal-page .iema-full-calendar-heading strong{color:#fff!important;font-size:clamp(22px,3vw,32px)!important}
body.iema-parent-portal-page .iema-full-calendar-actions .iema-btn{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
  color:#fff!important;border:1px solid #3cc2ff!important;border-radius:13px!important;
  box-shadow:0 10px 24px rgba(13,124,255,.25)!important;
}
body.iema-parent-portal-page .iema-full-calendar-body{background:#020407!important;padding:22px 24px 30px!important}
body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar{
  background:#080c12!important;border:1px solid #1e2a39!important;border-radius:20px!important;overflow:hidden!important;
  box-shadow:0 20px 60px rgba(0,0,0,.30)!important;
}
body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar-toolbar{
  background:#0a0f17!important;border-bottom:1px solid #1f2b3b!important;padding:16px 18px!important;
}
body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar-title{color:#fff!important;font-size:18px!important;font-weight:850!important}
body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar-nav{
  background:#101925!important;border:1px solid #26374d!important;color:#8cddff!important;border-radius:11px!important;
}
body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar-nav:hover{background:#14304a!important;border-color:var(--md2-blue)!important;color:#fff!important}
body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar-head{background:#080c12!important}
body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar-head b{color:#8d9cb2!important;border-color:#1d2836!important}
body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar-day{
  background:#0b1017!important;color:#fff!important;border-color:#1d2836!important;
}
body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar-day.muted{background:#070a0f!important;color:#66748a!important}
body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar-day>strong{color:#dce7f6!important}
body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar-event{
  color:#fff!important;border-radius:7px!important;padding:5px 7px!important;margin:4px 0!important;
}
body.iema-parent-portal-page .iema-full-calendar-body .iema-event-available{
  background:#0d2d1d!important;color:#a7f4bf!important;border-left:3px solid #38d878!important;
}
body.iema-parent-portal-page .iema-full-calendar-body .iema-event-unavailable{
  background:#3a151c!important;color:#ffb6c0!important;border-left:3px solid #ff5f76!important;
  box-shadow:inset 0 0 0 1px rgba(255,95,118,.16)!important;
}
body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar-today a{color:var(--md2-blue-soft)!important}
@media(max-width:760px){
 body.iema-parent-portal-page .iema-full-calendar-bar{padding:14px!important;gap:12px!important}
 body.iema-parent-portal-page .iema-full-calendar-body{padding:10px!important}
 body.iema-parent-portal-page .iema-full-calendar-body .iema-calendar{border-radius:14px!important}
}


/* v0.11.27 parent calendar modal/page dark theme sync */
body.iema-parent-portal-page .iema-calendar-modal-dialog,
body.iema-parent-portal-page .iema-parent-calendar-page,
body.iema-parent-portal-page .iema-parent-calendar-shell{
  background:linear-gradient(180deg,#070b11 0%,#04070c 100%)!important;
  color:#f5f8ff!important;
  border-color:#1f2937!important;
}
body.iema-parent-portal-page .iema-calendar-modal-dialog>header,
body.iema-parent-portal-page .iema-parent-calendar-page>header,
body.iema-parent-portal-page .iema-parent-calendar-shell>header{
  background:transparent!important;
  border-bottom:1px solid #1f2937!important;
}
body.iema-parent-portal-page .iema-calendar-modal-dialog>header h2,
body.iema-parent-portal-page .iema-parent-calendar-page h2,
body.iema-parent-portal-page .iema-parent-calendar-shell h2,
body.iema-parent-portal-page .iema-calendar-modal-dialog>header strong{color:#ffffff!important}
body.iema-parent-portal-page .iema-calendar-modal-dialog>header small,
body.iema-parent-portal-page .iema-parent-calendar-page small,
body.iema-parent-portal-page .iema-parent-calendar-shell small{color:var(--md2-blue-soft)!important}
body.iema-parent-portal-page .iema-calendar-modal-close,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-modal-close,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-modal-close{
  background:#101826!important;
  border:1px solid #2a3950!important;
  color:#fff!important;
  box-shadow:none!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-wrap,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-wrap{
  background:#020407!important;
  padding:18px!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar{
  background:#05080d!important;
  border:1px solid #1f2937!important;
  border-radius:18px!important;
  overflow:hidden!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-toolbar,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-toolbar,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-toolbar{
  background:#05080d!important;
  border-bottom:1px solid #1a2432!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-title,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-title,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-title{
  color:#fff!important;
  font-size:17px!important;
  font-weight:850!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-nav,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-nav,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-nav{
  background:#162136!important;
  border:1px solid #29415e!important;
  color:#ffffff!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-nav:hover,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-nav:hover,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-nav:hover{
  background:#1c3050!important;
  border-color:var(--md2-blue)!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-head,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-head,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-head{
  background:#0b1119!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-head b,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-head b,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-head b{
  color:#8fa0b8!important;
  border-color:#1d2836!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-day,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-day,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-day{
  background:#05080d!important;
  color:#eef4ff!important;
  border-color:#1b2430!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-day.muted,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-day.muted,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-day.muted{
  background:#03060a!important;
  color:#66748a!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-day>strong,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-day>strong,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-day>strong{
  color:#dce7f6!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-event,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-event,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-event{
  color:#fff!important;
  border-left-width:3px!important;
  border-radius:8px!important;
  padding:6px 7px!important;
  box-shadow:none!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-event-available,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-event-available,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-event-available{
  background:#10311e!important;
  border-left-color:#2fda77!important;
  color:#dfffea!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-event-unavailable,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-event-unavailable,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-event-unavailable{
  background:#3b1119!important;
  border-left-color:#ff5b76!important;
  color:#ffd7df!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-today a,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-today a,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-today a{
  color:var(--md2-blue-soft)!important;
}
body.iema-parent-portal-page .iema-calendar-modal-dialog>footer{background:#070b11!important;border-top:1px solid #1f2937!important}
@media(max-width:560px){
  body.iema-parent-portal-page .iema-calendar-modal-body{padding:10px!important}
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar{min-width:760px!important;border-radius:14px!important}
}

/* v0.11.28 My Account — match Parent Portal dark app shell */
body.iema-account-page{margin:0!important;background:#020305!important;color:#f5f8ff!important;overflow-x:hidden!important}
body.iema-account-page .ma-header,body.iema-account-page .ma-footer,body.iema-account-page .entry-header,body.iema-account-page .entry-title,body.iema-account-page .wp-block-post-title,body.iema-account-page article>h1:first-child{display:none!important}
body.iema-account-page main,body.iema-account-page .ma-wrap,body.iema-account-page .ma-page,body.iema-account-page article,body.iema-account-page .entry-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#020305!important}
.iema-account-shell{min-height:100vh!important;background:#020305!important;color:#f5f8ff!important;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
.iema-account-appbar{position:sticky!important;top:0!important;z-index:100!important}
.iema-account-content{width:min(1440px,calc(100% - 48px))!important;margin:0 auto!important;padding:38px 0 60px!important;box-sizing:border-box!important}
.iema-account-view-head{margin-bottom:22px!important}.iema-account-view-head h1{color:#fff!important;font-size:34px!important;letter-spacing:-.035em!important;margin:4px 0 7px!important}.iema-account-view-head p{color:#9aa9bf!important;margin:0!important}.iema-account-kicker{font-size:10px!important;font-weight:900!important;letter-spacing:.14em!important;color:var(--md2-blue-soft)!important}
.iema-account-success{margin:0 0 18px!important;padding:13px 16px!important;border-radius:14px!important;background:#0e2e1b!important;border:1px solid #246d42!important;color:#9af2b7!important;font-weight:800!important}
.iema-account-grid{display:grid!important;grid-template-columns:300px minmax(0,1fr)!important;gap:22px!important;align-items:start!important}
.iema-account-profile-card{position:sticky!important;top:112px!important;padding:26px!important;border-radius:22px!important;background:linear-gradient(180deg,#0d121b 0%,#080c12 100%)!important;border:1px solid #1f2a38!important;box-shadow:0 18px 44px rgba(0,0,0,.32)!important;text-align:center!important}
.iema-account-avatar-wrap{display:flex!important;justify-content:center!important;margin-bottom:16px!important}.iema-account-profile-card .iema-profile-avatar{width:132px!important;height:132px!important;border-radius:28px!important;object-fit:cover!important;border:2px solid #29425c!important;box-shadow:0 18px 38px rgba(0,0,0,.38)!important}
.iema-account-profile-card h2{margin:0 0 9px!important;color:#fff!important;font-size:22px!important}.iema-account-profile-card .iema-role-chip{background:#0c3048!important;color:#82dcff!important;border:1px solid #1d5576!important}.iema-account-profile-card>p{color:#9baac0!important;margin:10px 0 18px!important}
.iema-account-profile-meta{display:grid!important;gap:10px!important;margin:20px 0!important;text-align:left!important}.iema-account-profile-meta>div{padding:12px 13px!important;border-radius:13px!important;background:#0b1018!important;border:1px solid #1f2937!important;display:grid!important;gap:3px!important}.iema-account-profile-meta span{font-size:9px!important;text-transform:uppercase!important;letter-spacing:.09em!important;color:#788ba5!important;font-weight:900!important}.iema-account-profile-meta strong{font-size:12px!important;color:#eef5ff!important;overflow-wrap:anywhere!important}
.iema-account-form{display:grid!important;gap:18px!important}.iema-account-card{padding:22px!important;border-radius:20px!important;background:linear-gradient(180deg,#0c1119 0%,#080c12 100%)!important;border:1px solid #1e2937!important;box-shadow:0 16px 38px rgba(0,0,0,.27)!important}.iema-account-card-head{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:18px!important;padding-bottom:15px!important;border-bottom:1px solid #1c2734!important}.iema-account-card-head>div{display:flex!important;align-items:center!important;gap:12px!important}.iema-account-card-icon{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;border-radius:12px!important;background:#0c3048!important;border:1px solid #1b5273!important;color:#75d7ff!important;font-size:17px!important}.iema-account-card h2{margin:0 0 3px!important;color:#fff!important;font-size:18px!important}.iema-account-card-head p{margin:0!important;color:#8fa0b6!important;font-size:12px!important}
.iema-account-card label{color:#c7d2e2!important;font-size:12px!important;font-weight:750!important}.iema-account-card input,.iema-account-card select,.iema-account-card textarea{background:#080c12!important;color:#fff!important;border:1px solid #293546!important;border-radius:12px!important;min-height:46px!important;padding:10px 12px!important}.iema-account-card textarea{min-height:110px!important}.iema-account-card input:focus,.iema-account-card select:focus,.iema-account-card textarea:focus{outline:none!important;border-color:var(--md2-blue)!important;box-shadow:0 0 0 4px rgba(32,183,255,.13)!important}.iema-account-card input:disabled{opacity:.62!important}
.iema-account-card .iema-avatar-editor{background:#080d14!important;border:1px solid #243142!important;border-radius:18px!important;color:#fff!important}.iema-account-card .iema-avatar-crop-stage{background:#0c1118!important;box-shadow:inset 0 0 0 1px #263343!important}.iema-account-card .iema-current-avatar{color:#9cabbe!important}.iema-account-remove{margin-top:14px!important;color:#a9b6c8!important}
.iema-account-savebar{position:sticky!important;bottom:14px!important;z-index:15!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;padding:14px 16px!important;border-radius:16px!important;background:rgba(8,13,20,.94)!important;border:1px solid #263548!important;box-shadow:0 20px 50px rgba(0,0,0,.48)!important;backdrop-filter:blur(14px)!important}.iema-account-savebar span{color:#8fa0b6!important;font-size:12px!important}.iema-account-savebar .iema-btn{min-width:180px!important;background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border:1px solid #38beff!important;color:#fff!important;box-shadow:0 12px 28px rgba(13,124,255,.28)!important}
.iema-account-shell .iema-btn-secondary{background:#101722!important;border:1px solid #28384b!important;color:#d9e9ff!important;box-shadow:none!important}
@media(max-width:900px){.iema-account-content{width:calc(100% - 28px)!important;padding-top:26px!important}.iema-account-grid{grid-template-columns:1fr!important}.iema-account-profile-card{position:static!important;display:grid!important;grid-template-columns:auto 1fr!important;text-align:left!important;gap:4px 18px!important}.iema-account-avatar-wrap{grid-row:1/5!important;margin:0!important}.iema-account-profile-card .iema-profile-avatar{width:96px!important;height:96px!important;border-radius:22px!important}.iema-account-profile-meta{grid-column:1/-1!important;grid-template-columns:1fr 1fr!important}.iema-account-profile-card>.iema-btn{grid-column:1/-1!important}}
@media(max-width:620px){.iema-account-content{width:calc(100% - 20px)!important;padding:20px 0 36px!important}.iema-account-view-head h1{font-size:29px!important}.iema-account-card{padding:16px!important;border-radius:17px!important}.iema-account-card .iema-form-grid{grid-template-columns:1fr!important}.iema-account-profile-card{padding:18px!important}.iema-account-profile-meta{grid-template-columns:1fr!important}.iema-account-savebar{bottom:8px!important;align-items:stretch!important;flex-direction:column!important}.iema-account-savebar .iema-btn{width:100%!important;min-height:48px!important}.iema-account-appbar .iema-parent-topnav{overflow-x:auto!important}.iema-account-appbar .iema-parent-account summary span{display:none!important}}


/* v0.11.29 avatar editor current-image preview */
.iema-account-shell .iema-avatar-editor .iema-avatar-crop-stage,
body.iema-account-page .iema-avatar-editor .iema-avatar-crop-stage{background:#0a1018!important}
.iema-account-shell .iema-avatar-editor canvas,
body.iema-account-page .iema-avatar-editor canvas{background:#0a1018!important}
.iema-account-shell .iema-current-avatar,
body.iema-account-page .iema-current-avatar{display:none!important}


/* v0.11.30 avatar editor crop presentation fix */
.iema-account-shell .iema-avatar-editor,
body.iema-account-page .iema-avatar-editor{
  grid-template-columns:minmax(240px,320px) minmax(260px,1fr)!important;
  align-items:center!important;
  gap:28px!important;
}
.iema-account-shell .iema-avatar-crop-stage,
body.iema-account-page .iema-avatar-crop-stage{
  width:min(100%,320px)!important;
  max-width:320px!important;
  aspect-ratio:1/1!important;
  border-radius:50%!important;
  overflow:hidden!important;
  background:#0a1018!important;
  border:2px solid #2b3a4d!important;
  box-shadow:0 16px 38px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.03)!important;
}
.iema-account-shell .iema-avatar-crop-stage canvas,
body.iema-account-page .iema-avatar-crop-stage canvas{
  width:100%!important;
  height:100%!important;
  display:block!important;
  border-radius:50%!important;
  background:#0a1018!important;
}
.iema-account-shell .iema-avatar-crop-ring,
body.iema-account-page .iema-avatar-crop-ring{
  inset:0!important;
  border:3px solid rgba(255,255,255,.92)!important;
  border-radius:50%!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.24)!important;
  pointer-events:none!important;
}
.iema-account-shell .iema-avatar-editor-controls,
body.iema-account-page .iema-avatar-editor-controls{
  align-self:center!important;
  min-width:0!important;
}
.iema-account-shell .iema-avatar-editor-controls label,
body.iema-account-page .iema-avatar-editor-controls label{
  gap:8px!important;
}
@media(max-width:800px){
  .iema-account-shell .iema-avatar-editor,
  body.iema-account-page .iema-avatar-editor{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
  .iema-account-shell .iema-avatar-crop-stage,
  body.iema-account-page .iema-avatar-crop-stage{
    width:min(82vw,300px)!important;
    margin:0 auto!important;
  }
}


/* v0.11.32 larger account summary card */
.iema-account-grid{
  grid-template-columns:380px minmax(0,1fr)!important;
  gap:26px!important;
}
.iema-account-profile-card{
  padding:32px!important;
  min-height:640px!important;
  border-radius:24px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
}
.iema-account-avatar-wrap{margin-bottom:20px!important}
.iema-account-profile-card .iema-profile-avatar{
  width:156px!important;
  height:156px!important;
  border-radius:32px!important;
}
.iema-account-profile-card h2{font-size:25px!important;margin-bottom:10px!important}
.iema-account-profile-card>p{font-size:14px!important;margin:12px 0 22px!important}
.iema-account-profile-meta{
  gap:12px!important;
  margin:24px 0!important;
}
.iema-account-profile-meta>div{
  padding:15px 16px!important;
  min-height:66px!important;
  border-radius:15px!important;
}
.iema-account-profile-meta span{font-size:10px!important}
.iema-account-profile-meta strong{font-size:13px!important;line-height:1.4!important}
.iema-account-profile-card>.iema-btn{
  margin-top:auto!important;
  min-height:46px!important;
  align-self:center!important;
  min-width:190px!important;
}
@media(max-width:1100px){
  .iema-account-grid{grid-template-columns:330px minmax(0,1fr)!important}
  .iema-account-profile-card{padding:26px!important;min-height:580px!important}
}
@media(max-width:900px){
  .iema-account-grid{grid-template-columns:1fr!important}
  .iema-account-profile-card{
    min-height:0!important;
    display:grid!important;
    grid-template-columns:auto 1fr!important;
    text-align:left!important;
    gap:4px 18px!important;
  }
  .iema-account-avatar-wrap{grid-row:1/5!important;margin:0!important}
  .iema-account-profile-card .iema-profile-avatar{width:104px!important;height:104px!important;border-radius:24px!important}
  .iema-account-profile-meta{grid-column:1/-1!important;grid-template-columns:1fr 1fr!important}
  .iema-account-profile-card>.iema-btn{grid-column:1/-1!important;margin-top:8px!important;justify-self:start!important}
}
@media(max-width:620px){
  .iema-account-profile-card{padding:20px!important}
  .iema-account-profile-meta{grid-template-columns:1fr!important}
  .iema-account-profile-card>.iema-btn{width:100%!important;justify-self:stretch!important}
}


/* v0.11.33 subtle account/header brand scale-up */
.iema-account-appbar .iema-parent-brand,
.iema-parent-appbar .iema-parent-brand{
  gap:14px!important;
}
.iema-account-appbar .iema-parent-brand img,
.iema-account-appbar .iema-brand-fallback,
.iema-parent-appbar .iema-parent-brand img,
.iema-parent-appbar .iema-brand-fallback{
  width:56px!important;
  height:56px!important;
  min-width:56px!important;
  border-radius:15px!important;
  padding:5px!important;
}
.iema-account-appbar .iema-parent-brand strong,
.iema-parent-appbar .iema-parent-brand strong{
  font-size:18px!important;
  line-height:1.08!important;
  font-weight:900!important;
  letter-spacing:-.015em!important;
}
.iema-account-appbar .iema-parent-brand small,
.iema-parent-appbar .iema-parent-brand small{
  font-size:11px!important;
  margin-top:4px!important;
}
@media(max-width:900px){
  .iema-account-appbar .iema-parent-brand img,
  .iema-account-appbar .iema-brand-fallback,
  .iema-parent-appbar .iema-parent-brand img,
  .iema-parent-appbar .iema-brand-fallback{
    width:50px!important;height:50px!important;min-width:50px!important;
  }
  .iema-account-appbar .iema-parent-brand strong,
  .iema-parent-appbar .iema-parent-brand strong{font-size:16px!important}
}
@media(max-width:560px){
  .iema-account-appbar .iema-parent-brand img,
  .iema-account-appbar .iema-brand-fallback,
  .iema-parent-appbar .iema-parent-brand img,
  .iema-parent-appbar .iema-brand-fallback{
    width:46px!important;height:46px!important;min-width:46px!important;
  }
  .iema-account-appbar .iema-parent-brand strong,
  .iema-parent-appbar .iema-parent-brand strong{font-size:15px!important}
}


/* v0.11.34 stronger studio branding presence */
.iema-account-appbar .iema-parent-brand,
.iema-parent-appbar .iema-parent-brand{
  gap:16px!important;
  align-items:center!important;
}
.iema-account-appbar .iema-parent-brand img,
.iema-account-appbar .iema-brand-fallback,
.iema-parent-appbar .iema-parent-brand img,
.iema-parent-appbar .iema-brand-fallback{
  width:68px!important;
  height:68px!important;
  min-width:68px!important;
  border-radius:17px!important;
  padding:6px!important;
  border:1px solid #2c3c53!important;
  box-shadow:0 10px 24px rgba(0,0,0,.26)!important;
}
.iema-account-appbar .iema-parent-brand strong,
.iema-parent-appbar .iema-parent-brand strong{
  font-size:22px!important;
  line-height:1.04!important;
  font-weight:950!important;
  letter-spacing:-.022em!important;
}
.iema-account-appbar .iema-parent-brand small,
.iema-parent-appbar .iema-parent-brand small{
  font-size:12px!important;
  margin-top:5px!important;
  color:#9eb5d3!important;
}
@media(max-width:900px){
  .iema-account-appbar .iema-parent-brand img,
  .iema-account-appbar .iema-brand-fallback,
  .iema-parent-appbar .iema-parent-brand img,
  .iema-parent-appbar .iema-brand-fallback{
    width:60px!important;height:60px!important;min-width:60px!important;border-radius:16px!important;
  }
  .iema-account-appbar .iema-parent-brand strong,
  .iema-parent-appbar .iema-parent-brand strong{font-size:19px!important}
}
@media(max-width:560px){
  .iema-account-appbar .iema-parent-brand,
  .iema-parent-appbar .iema-parent-brand{gap:13px!important}
  .iema-account-appbar .iema-parent-brand img,
  .iema-account-appbar .iema-brand-fallback,
  .iema-parent-appbar .iema-parent-brand img,
  .iema-parent-appbar .iema-brand-fallback{
    width:54px!important;height:54px!important;min-width:54px!important;border-radius:15px!important;
  }
  .iema-account-appbar .iema-parent-brand strong,
  .iema-parent-appbar .iema-parent-brand strong{font-size:17px!important}
}


/* v0.11.35 dedicated dancers page full two-column cards */
.iema-parent-shell[data-view="dancers"] .iema-parent-dancer-cards,
body.iema-parent-portal-page .iema-parent-dancer-cards.iema-dancers-page-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  margin-top:18px!important;
}
.iema-parent-shell[data-view="dancers"] .iema-parent-dancer-tile,
body.iema-parent-portal-page .iema-dancers-page-grid .iema-parent-dancer-tile{
  min-height:190px!important;
  grid-template-columns:110px minmax(0,1fr)!important;
  gap:20px!important;
  align-items:center!important;
  padding:22px!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#0d131d 0%,#090e15 100%)!important;
  border:1px solid #253141!important;
  box-shadow:0 14px 34px rgba(0,0,0,.26)!important;
}
.iema-parent-shell[data-view="dancers"] .iema-parent-dancer-tile:hover,
body.iema-parent-portal-page .iema-dancers-page-grid .iema-parent-dancer-tile:hover{
  border-color:var(--md2-blue)!important;
  box-shadow:0 0 0 1px rgba(32,183,255,.16),0 18px 40px rgba(0,0,0,.32)!important;
  transform:translateY(-2px)!important;
}
.iema-parent-shell[data-view="dancers"] .iema-parent-dancer-tile .iema-parent-dancer-avatar img,
body.iema-parent-portal-page .iema-dancers-page-grid .iema-parent-dancer-tile .iema-parent-dancer-avatar img{
  width:110px!important;
  height:110px!important;
  border-radius:22px!important;
  object-fit:cover!important;
  border:1px solid #314158!important;
  box-shadow:0 10px 24px rgba(0,0,0,.28)!important;
}
.iema-parent-shell[data-view="dancers"] .iema-parent-dancer-tile>span:last-child,
body.iema-parent-portal-page .iema-dancers-page-grid .iema-parent-dancer-tile>span:last-child{
  display:grid!important;
  gap:7px!important;
  align-content:center!important;
}
.iema-parent-shell[data-view="dancers"] .iema-parent-dancer-tile strong,
body.iema-parent-portal-page .iema-dancers-page-grid .iema-parent-dancer-tile strong{
  font-size:21px!important;
  line-height:1.08!important;
  color:#fff!important;
}
.iema-parent-shell[data-view="dancers"] .iema-parent-dancer-tile small,
body.iema-parent-portal-page .iema-dancers-page-grid .iema-parent-dancer-tile small{
  font-size:13px!important;
  line-height:1.45!important;
  color:#a8b5c9!important;
}
.iema-parent-shell[data-view="dancers"] .iema-parent-dancer-tile em,
body.iema-parent-portal-page .iema-dancers-page-grid .iema-parent-dancer-tile em{
  justify-self:start!important;
  margin-top:7px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  background:#10283c!important;
  color:#7fd8ff!important;
  border:1px solid #1c5376!important;
  font-size:11px!important;
  font-weight:850!important;
}
@media(max-width:980px){
  .iema-parent-shell[data-view="dancers"] .iema-parent-dancer-cards,
  body.iema-parent-portal-page .iema-parent-dancer-cards.iema-dancers-page-grid{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:560px){
  .iema-parent-shell[data-view="dancers"] .iema-parent-dancer-tile,
  body.iema-parent-portal-page .iema-dancers-page-grid .iema-parent-dancer-tile{
    min-height:0!important;
    grid-template-columns:78px minmax(0,1fr)!important;
    gap:14px!important;
    padding:16px!important;
  }
  .iema-parent-shell[data-view="dancers"] .iema-parent-dancer-tile .iema-parent-dancer-avatar img,
  body.iema-parent-portal-page .iema-dancers-page-grid .iema-parent-dancer-tile .iema-parent-dancer-avatar img{
    width:78px!important;height:78px!important;border-radius:18px!important;
  }
  .iema-parent-shell[data-view="dancers"] .iema-parent-dancer-tile strong,
  body.iema-parent-portal-page .iema-dancers-page-grid .iema-parent-dancer-tile strong{font-size:18px!important}
}


/* v0.11.36 actual Dancers view rebuild */
.iema-dancers-profile-section{padding:20px!important;background:linear-gradient(180deg,#0a0f17 0%,#070b11 100%)!important;border:1px solid #1d2734!important;border-radius:20px!important}
.iema-dancers-profile-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;width:100%!important}
.iema-dancers-profile-card{appearance:none!important;width:100%!important;min-width:0!important;min-height:220px!important;display:grid!important;grid-template-columns:132px minmax(0,1fr)!important;gap:22px!important;align-items:center!important;text-align:left!important;padding:22px!important;border:1px solid #253141!important;border-radius:20px!important;background:linear-gradient(180deg,#0e151f 0%,#090e15 100%)!important;color:#fff!important;box-shadow:0 14px 34px rgba(0,0,0,.24)!important;cursor:pointer!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important}
.iema-dancers-profile-card:hover{transform:translateY(-2px)!important;border-color:var(--md2-blue)!important;box-shadow:0 0 0 1px rgba(32,183,255,.16),0 20px 42px rgba(0,0,0,.32)!important}
.iema-dancers-profile-avatar img{display:block!important;width:132px!important;height:132px!important;border-radius:24px!important;object-fit:cover!important;border:1px solid #314158!important;box-shadow:0 12px 28px rgba(0,0,0,.3)!important}
.iema-dancers-profile-body{display:grid!important;gap:18px!important;min-width:0!important}
.iema-dancers-profile-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:14px!important;min-width:0!important}
.iema-dancers-profile-head>span{display:grid!important;gap:5px!important;min-width:0!important}
.iema-dancers-profile-head strong{font-size:24px!important;line-height:1.05!important;color:#fff!important;letter-spacing:-.025em!important}
.iema-dancers-profile-head small{font-size:13px!important;color:#9fb0c7!important}
.iema-dancers-profile-head b{flex:0 0 auto!important;padding:8px 11px!important;border-radius:10px!important;background:#0d2639!important;border:1px solid #1b5275!important;color:#76d5ff!important;font-size:11px!important;white-space:nowrap!important}
.iema-dancers-profile-facts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.iema-dancers-profile-facts>span{display:grid!important;gap:4px!important;min-width:0!important;padding:11px 12px!important;border-radius:13px!important;background:#0a1018!important;border:1px solid #1d2836!important}
.iema-dancers-profile-facts small{font-size:9px!important;font-weight:850!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:#73859d!important}
.iema-dancers-profile-facts strong{font-size:12px!important;line-height:1.35!important;color:#edf5ff!important;overflow:hidden!important;text-overflow:ellipsis!important}
@media(max-width:1050px){.iema-dancers-profile-grid{grid-template-columns:1fr!important}}
@media(max-width:620px){.iema-dancers-profile-section{padding:12px!important}.iema-dancers-profile-card{grid-template-columns:82px minmax(0,1fr)!important;gap:14px!important;min-height:0!important;padding:16px!important}.iema-dancers-profile-avatar img{width:82px!important;height:82px!important;border-radius:18px!important}.iema-dancers-profile-head{display:grid!important}.iema-dancers-profile-head strong{font-size:19px!important}.iema-dancers-profile-head b{justify-self:start!important}.iema-dancers-profile-facts{grid-template-columns:1fr!important}.iema-dancers-profile-body{gap:12px!important}}


/* v0.11.37 complete parent dancer cards */
.iema-dancers-complete-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important;align-items:start!important}
.iema-dancers-complete-card{min-width:0!important;background:linear-gradient(180deg,#0b1018 0%,#070b11 100%)!important;border:1px solid #1f2b39!important;border-radius:22px!important;overflow:hidden!important;box-shadow:0 18px 42px rgba(0,0,0,.28)!important;color:#f5f8ff!important}
.iema-dancers-complete-hero{display:grid!important;grid-template-columns:92px minmax(0,1fr) auto!important;gap:16px!important;align-items:center!important;padding:20px!important;background:linear-gradient(180deg,#111925 0%,#0c121c 100%)!important;border-bottom:1px solid #202c3a!important}
.iema-dancers-complete-avatar img{width:92px!important;height:92px!important;border-radius:24px!important;object-fit:cover!important;border:1px solid #34516e!important;box-shadow:0 10px 24px rgba(0,0,0,.3)!important}
.iema-dancers-complete-title{display:grid!important;gap:5px!important;min-width:0!important}.iema-dancers-complete-title>strong{font-size:22px!important;line-height:1.05!important;color:#fff!important;letter-spacing:-.02em!important}.iema-dancers-complete-title>small{font-size:12px!important;color:#9eabc0!important}.iema-dancers-complete-title>em{justify-self:start!important;font-style:normal!important;font-size:10px!important;font-weight:800!important;color:#71d2ff!important;background:#0c2639!important;border:1px solid #17445f!important;border-radius:999px!important;padding:5px 9px!important}
.iema-dancer-profile-open{appearance:none!important;background:#0f2234!important;border:1px solid #245273!important;color:#76d6ff!important;border-radius:11px!important;padding:9px 11px!important;font-size:11px!important;font-weight:850!important;cursor:pointer!important}.iema-dancer-profile-open:hover{background:#153653!important;color:#fff!important;border-color:var(--md2-blue)!important}
.iema-dancer-card-section{padding:18px 20px!important;border-bottom:1px solid #1c2632!important}.iema-dancer-card-section-head{display:flex!important;align-items:baseline!important;justify-content:space-between!important;gap:12px!important;margin-bottom:12px!important}.iema-dancer-card-section-head>span{font-size:13px!important;font-weight:900!important;letter-spacing:.03em!important;color:#78d7ff!important}.iema-dancer-card-section-head>small{font-size:10px!important;color:#77869b!important;text-align:right!important}
.iema-dancer-detail-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.iema-dancer-detail-grid>div,.iema-dancer-training-summary>div{display:grid!important;gap:4px!important;background:#0c121b!important;border:1px solid #1e2a38!important;border-radius:13px!important;padding:11px 12px!important;min-width:0!important}.iema-dancer-detail-grid>div.wide{grid-column:1/-1!important}.iema-dancer-detail-grid small,.iema-dancer-training-summary small{font-size:9px!important;font-weight:850!important;letter-spacing:.07em!important;text-transform:uppercase!important;color:#7d8ca2!important}.iema-dancer-detail-grid strong,.iema-dancer-training-summary strong{font-size:12px!important;line-height:1.35!important;color:#eef5ff!important;overflow-wrap:anywhere!important}
.iema-dancer-training-summary{display:grid!important;gap:9px!important}.iema-dancer-training-summary em{font-size:10px!important;line-height:1.45!important;color:#91a1b7!important;font-style:normal!important}
.iema-dancer-routine-list,.iema-dancer-schedule-list{display:grid!important;gap:8px!important}.iema-dancer-routine-row{background:#0d151f!important;border:1px solid #203044!important;border-radius:13px!important;padding:11px 12px!important}.iema-dancer-routine-row>span{display:grid!important;gap:3px!important}.iema-dancer-routine-row strong{font-size:12px!important;color:#fff!important}.iema-dancer-routine-row small{font-size:10px!important;color:#a4b3c8!important}.iema-dancer-routine-row em{font-size:9px!important;color:var(--md2-blue-soft)!important;font-style:normal!important}
.iema-dancer-schedule-row{display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;gap:11px!important;align-items:center!important;background:#0d151f!important;border:1px solid #203044!important;border-radius:13px!important;padding:9px 10px!important}.iema-dancer-schedule-row time{display:grid!important;gap:1px!important;text-align:center!important;background:#102337!important;border:1px solid #194663!important;border-radius:10px!important;padding:7px 5px!important}.iema-dancer-schedule-row time b{font-size:11px!important;color:#78d7ff!important}.iema-dancer-schedule-row time small{font-size:8px!important;color:#a8bdd5!important}.iema-dancer-schedule-row>span{display:grid!important;gap:3px!important;min-width:0!important}.iema-dancer-schedule-row strong{font-size:11px!important;color:#fff!important}.iema-dancer-schedule-row small{font-size:9px!important;color:#93a3ba!important}
.iema-dancer-card-empty{padding:13px!important;border:1px dashed #26384d!important;border-radius:13px!important;background:#0a1018!important;color:#7f8fa5!important;font-size:11px!important}
.iema-dancer-card-actions{display:flex!important;gap:9px!important;flex-wrap:wrap!important;padding:16px 20px 20px!important}.iema-dancer-card-actions .iema-btn{flex:1 1 150px!important;justify-content:center!important}
@media(max-width:1100px){.iema-dancers-complete-grid{grid-template-columns:1fr!important}}
@media(max-width:620px){.iema-dancers-complete-hero{grid-template-columns:72px minmax(0,1fr)!important}.iema-dancers-complete-avatar img{width:72px!important;height:72px!important;border-radius:20px!important}.iema-dancer-profile-open{grid-column:1/-1!important;width:100%!important}.iema-dancer-detail-grid{grid-template-columns:1fr!important}.iema-dancer-detail-grid>div.wide{grid-column:auto!important}.iema-dancer-card-section{padding:15px!important}.iema-dancer-card-actions{padding:14px 15px 17px!important}}

/* v0.11.39 dancer card day schedule */
.iema-dancer-schedule-head{align-items:center!important;gap:14px!important}
.iema-dancer-schedule-head>span:first-child{display:grid!important;gap:3px!important}
.iema-dancer-schedule-head>span:first-child>b{color:#f7fbff!important;font-size:13px!important}
.iema-dancer-schedule-head>span:first-child small{color:#8fa0b7!important;font-size:10px!important}
.iema-day-schedule-nav{display:grid!important;grid-template-columns:38px minmax(120px,1fr) 38px!important;align-items:center!important;gap:8px!important;margin-left:auto!important}
.iema-day-schedule-nav a{display:grid!important;place-items:center!important;width:36px!important;height:36px!important;border-radius:10px!important;border:1px solid #29415e!important;background:#101a28!important;color:#72d5ff!important;text-decoration:none!important;font-size:24px!important;font-weight:700!important;line-height:1!important}
.iema-day-schedule-nav a:hover{background:#14304a!important;border-color:var(--md2-blue)!important;color:#fff!important}
.iema-day-schedule-nav strong{text-align:center!important;color:#eef7ff!important;font-size:12px!important;white-space:nowrap!important}
.iema-dancer-day-schedule .iema-dancer-schedule-row time{min-width:88px!important}
.iema-dancer-day-schedule .iema-dancer-schedule-row time b{color:#72d5ff!important}
.iema-dancer-day-schedule .iema-dancer-schedule-row span em{display:block!important;color:#7889a0!important;font-size:10px!important;font-style:normal!important;margin-top:3px!important}
@media(max-width:620px){.iema-dancer-schedule-head{align-items:flex-start!important;flex-direction:column!important}.iema-day-schedule-nav{margin-left:0!important;width:100%!important;grid-template-columns:42px 1fr 42px!important}.iema-day-schedule-nav a{width:40px!important;height:40px!important}.iema-dancer-day-schedule .iema-dancer-schedule-row{grid-template-columns:82px minmax(0,1fr)!important}}


/* v0.11.40 in-place dancer day navigation */
.iema-dancer-day-schedule{position:relative!important}
.iema-dancer-day-schedule.is-loading{opacity:.62!important;pointer-events:none!important}
.iema-dancer-day-schedule.is-loading:after{content:"Updating schedule…";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(5,8,13,.68);color:#9edfff;font-size:12px;font-weight:800;letter-spacing:.02em;border-radius:14px;backdrop-filter:blur(2px)}


/* v0.11.41 Studio Owner portal — match Parent dark/blue application system */
body.iema-owner-portal-page{
  margin:0!important;
  background:#020407!important;
  color:#f4f8ff!important;
  overflow-x:hidden!important;
}
body.iema-owner-portal-page .ma-header,
body.iema-owner-portal-page .ma-footer,
body.iema-owner-portal-page .entry-header,
body.iema-owner-portal-page .entry-title,
body.iema-owner-portal-page .wp-block-post-title,
body.iema-owner-portal-page article>h1:first-child{display:none!important}
body.iema-owner-portal-page main,
body.iema-owner-portal-page .ma-wrap,
body.iema-owner-portal-page .ma-page,
body.iema-owner-portal-page article,
body.iema-owner-portal-page .entry-content{
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#020407!important;
}
.iema-owner-shell{
  --owner-accent:var(--md2-blue);
  --owner-accent-2:var(--md2-blue-strong);
  --owner-bg:#020407;
  --owner-surface:#080d14;
  --owner-surface-2:#0d1420;
  --owner-line:#1e2a39;
  --owner-text:#f4f8ff;
  --owner-muted:#93a4bc;
  width:min(1540px,calc(100vw - 28px))!important;
  max-width:1540px!important;
  margin:14px auto 46px!important;
  padding:0!important;
  background:transparent!important;
  color:var(--owner-text)!important;
}
/* compact branded app bar */
.iema-owner-shell .iema-app-topbar{
  display:grid!important;
  grid-template-columns:minmax(280px,.9fr) minmax(360px,1.2fr) minmax(230px,270px)!important;
  align-items:center!important;
  gap:24px!important;
  min-height:108px!important;
  margin:0 0 12px!important;
  padding:20px 24px!important;
  background:linear-gradient(180deg,#0d1420 0%,#080d14 100%)!important;
  border:1px solid #1e2a39!important;
  border-radius:22px!important;
  box-shadow:0 18px 48px rgba(0,0,0,.34)!important;
  color:#fff!important;
}
.iema-owner-shell .iema-shell-brand{display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important}
.iema-owner-shell .iema-shell-brand .iema-studio-logo{
  width:66px!important;height:66px!important;min-width:66px!important;
  object-fit:contain!important;border-radius:17px!important;padding:5px!important;
  background:#111924!important;border:1px solid #2a3a50!important;box-shadow:0 10px 24px rgba(0,0,0,.28)!important;
}
.iema-owner-shell .iema-studio-name{
  color:#fff!important;font-size:22px!important;font-weight:950!important;line-height:1.05!important;
  letter-spacing:-.02em!important;text-transform:none!important;font-family:inherit!important;
}
.iema-owner-shell .iema-account-label{color:#8fa6c4!important;font-size:10px!important;letter-spacing:.12em!important}
.iema-owner-shell .iema-page-heading{text-align:center!important;min-width:0!important}
.iema-owner-shell .iema-page-heading h1{margin:0 0 5px!important;color:#fff!important;font-size:32px!important;letter-spacing:-.035em!important;line-height:1!important}
.iema-owner-shell .iema-page-heading p{margin:0!important;color:#93a4bc!important;font-size:12.5px!important;line-height:1.45!important}
.iema-owner-shell .iema-portal-user{justify-self:end!important;width:100%!important;max-width:270px!important}
.iema-owner-shell .iema-portal-user summary{
  display:grid!important;grid-template-columns:42px minmax(0,1fr) 14px!important;align-items:center!important;gap:10px!important;
  min-height:58px!important;padding:7px 12px 7px 8px!important;border-radius:16px!important;
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border:1px solid #38beff!important;
  color:#fff!important;box-shadow:0 12px 28px rgba(13,124,255,.25)!important;
}
.iema-owner-shell .iema-portal-user summary img{width:42px!important;height:42px!important;border-radius:50%!important;border:2px solid rgba(255,255,255,.92)!important}
.iema-owner-shell .iema-portal-user summary strong,
.iema-owner-shell .iema-portal-user summary small,
.iema-owner-shell .iema-portal-user summary b{color:#fff!important}
.iema-owner-shell .iema-portal-user nav{background:#0d1420!important;border:1px solid #26364a!important;box-shadow:0 20px 46px rgba(0,0,0,.38)!important}
.iema-owner-shell .iema-portal-user nav a{color:#edf6ff!important}
.iema-owner-shell .iema-portal-user nav a:hover{background:#13243a!important;color:#fff!important}
/* real top navigation */
.iema-owner-shell .iema-primary-nav{
  position:static!important;width:100%!important;display:flex!important;align-items:center!important;gap:8px!important;
  margin:0 0 10px!important;padding:7px!important;overflow-x:auto!important;
  background:#080d14!important;border:1px solid #1e2a39!important;border-radius:17px!important;box-shadow:none!important;
}
.iema-owner-shell .iema-primary-nav:before{display:none!important}
.iema-owner-shell .iema-primary-nav a{
  position:static!important;display:flex!important;align-items:center!important;justify-content:center!important;
  min-height:42px!important;padding:9px 16px!important;border:1px solid transparent!important;border-radius:12px!important;
  background:transparent!important;color:#9aacc4!important;font-size:12.5px!important;font-weight:850!important;text-decoration:none!important;white-space:nowrap!important;
}
.iema-owner-shell .iema-primary-nav a:hover{background:#101a27!important;color:#eaf7ff!important;border-color:#223650!important}
.iema-owner-shell .iema-primary-nav a.active{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border-color:var(--md2-blue)!important;color:#fff!important;
  box-shadow:0 10px 24px rgba(13,124,255,.24)!important;
}
.iema-owner-shell .iema-primary-nav a:before,.iema-owner-shell .iema-primary-nav a:after{display:none!important}
.iema-owner-shell .iema-secondary-nav{
  display:flex!important;gap:16px!important;align-items:center!important;overflow-x:auto!important;
  margin:0 0 18px!important;padding:0 8px!important;border-bottom:1px solid #1e2a39!important;background:transparent!important;
}
.iema-owner-shell .iema-secondary-nav a{
  min-height:40px!important;display:flex!important;align-items:center!important;padding:0 2px!important;
  color:#8799b1!important;border-bottom:2px solid transparent!important;font-size:12px!important;font-weight:800!important;text-decoration:none!important;white-space:nowrap!important;
}
.iema-owner-shell .iema-secondary-nav a:hover{color:#dff6ff!important}
.iema-owner-shell .iema-secondary-nav a.active{color:var(--studio-accent)!important;border-bottom-color:var(--md2-blue)!important}
/* cards / panels */
.iema-owner-shell .iema-panel,
.iema-owner-shell .iema-stat-grid>div,
.iema-owner-shell .iema-ath-card,
.iema-owner-shell .iema-day-card,
.iema-owner-shell .iema-create-card,
.iema-owner-shell .iema-assignment-box,
.iema-owner-shell .iema-roster-workspace,
.iema-owner-shell .iema-dancer-workspace{
  background:linear-gradient(180deg,#0c121c 0%,#080d14 100%)!important;
  border:1px solid #1f2b3a!important;border-radius:18px!important;color:#f4f8ff!important;
  box-shadow:0 16px 40px rgba(0,0,0,.26)!important;
}
.iema-owner-shell .iema-panel{padding:22px!important}
.iema-owner-shell h2,.iema-owner-shell h3,.iema-owner-shell h4,.iema-owner-shell strong{color:#f5f8ff!important}
.iema-owner-shell p,.iema-owner-shell small,.iema-owner-shell .iema-help,.iema-owner-shell .iema-muted{color:#93a4bc!important}
.iema-owner-shell .iema-kicker{color:var(--md2-blue-soft)!important;opacity:1!important}
.iema-owner-shell .iema-command-header{margin:18px 0 14px!important;align-items:flex-end!important}
.iema-owner-shell .iema-command-header h2{font-size:28px!important;margin:4px 0 4px!important}
.iema-owner-shell .iema-command-header p{font-size:13px!important}
.iema-owner-shell .iema-command-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.iema-owner-shell .iema-command-stats>div{padding:20px!important}
.iema-owner-shell .iema-command-stats strong{font-size:32px!important;color:#fff!important}
.iema-owner-shell .iema-command-stats small{color:#8fa2ba!important}
/* buttons and quick actions */
.iema-owner-shell .iema-btn,
.iema-owner-shell button.iema-btn,
.iema-owner-shell a.iema-btn,
.iema-owner-shell .iema-quick-actions a,
.iema-owner-shell input[type="submit"]{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
  border:1px solid #39bdff!important;color:#fff!important;border-radius:12px!important;
  box-shadow:0 10px 22px rgba(13,124,255,.22)!important;
}
.iema-owner-shell .iema-btn:hover,
.iema-owner-shell .iema-quick-actions a:hover,
.iema-owner-shell input[type="submit"]:hover{background:linear-gradient(180deg,#4cccff 0%,#2791ff 100%)!important}
.iema-owner-shell .iema-btn-ghost,.iema-owner-shell .iema-btn-secondary{
  background:#101722!important;border:1px solid #2a394d!important;color:#e6f5ff!important;box-shadow:none!important;
}
.iema-owner-shell .iema-text-action{color:var(--studio-accent)!important;background:transparent!important;border:0!important;box-shadow:none!important}
.iema-owner-shell .iema-quick-actions{gap:8px!important}
.iema-owner-shell .iema-quick-actions a{font-size:11.5px!important;padding:9px 13px!important}
/* forms */
.iema-owner-shell input,
.iema-owner-shell select,
.iema-owner-shell textarea{
  box-sizing:border-box!important;background:#060a10!important;color:#f5f8ff!important;border:1px solid #293648!important;
  border-radius:11px!important;min-height:44px!important;box-shadow:none!important;
}
.iema-owner-shell textarea{min-height:110px!important}
.iema-owner-shell input::placeholder,.iema-owner-shell textarea::placeholder{color:#65758b!important}
.iema-owner-shell input:focus,.iema-owner-shell select:focus,.iema-owner-shell textarea:focus{
  outline:0!important;border-color:var(--md2-blue)!important;box-shadow:0 0 0 4px rgba(32,183,255,.13)!important;
}
.iema-owner-shell label{color:#d8e5f6!important;font-weight:750!important}
/* brand card */
.iema-owner-shell .iema-studio-brand-card{background:linear-gradient(180deg,#0c121c,#080d14)!important}
.iema-owner-shell .iema-studio-brand-copy h2{color:#fff!important}
.iema-owner-shell .iema-studio-brand-copy p{color:#93a4bc!important}
.iema-owner-shell .iema-brand-upload-form{background:#090f18!important;border-color:#223044!important}
.iema-owner-shell .iema-brand-logo-preview{background:#111925!important;border-color:#2a394d!important}
.iema-owner-shell .iema-brand-file{background:#111925!important;color:#e8f5ff!important;border-color:#2b3b50!important}
/* roster/list cards */
.iema-owner-shell .iema-ath-card,
.iema-owner-shell .iema-athlete-roster-card,
.iema-owner-shell .iema-list>div,
.iema-owner-shell .iema-mini-profile{
  background:#0d1420!important;border:1px solid #202d3e!important;color:#fff!important;box-shadow:none!important;
}
.iema-owner-shell .iema-ath-card:hover,
.iema-owner-shell .iema-athlete-roster-card:hover{border-color:var(--md2-blue)!important;background:#101b29!important;box-shadow:0 12px 28px rgba(13,124,255,.10)!important}
.iema-owner-shell .iema-ath-card span,.iema-owner-shell .iema-ath-card b{color:var(--studio-accent)!important}
.iema-owner-shell .iema-count-chip,.iema-owner-shell .iema-role-chip{background:#0e2638!important;color:#75d7ff!important;border:1px solid #1f4b68!important}
.iema-owner-shell .iema-approved{background:#0f2b1a!important;border-color:#25643f!important;color:#a9f3c2!important}
.iema-owner-shell .iema-safety-note{background:#0e1b2c!important;border-color:#244b73!important;color:#d7ebff!important}
.iema-owner-shell .iema-safety-note.warning{background:#2c1c0f!important;border-color:#6f4420!important;color:#ffd6a8!important}
/* calendars within owner portal */
.iema-owner-shell .iema-calendar{background:#05080d!important;border-color:#1e2a39!important}
.iema-owner-shell .iema-calendar-head{background:#0b1119!important}
.iema-owner-shell .iema-calendar-head b{color:#8fa0b8!important}
.iema-owner-shell .iema-calendar-day{background:#05080d!important;color:#eef4ff!important;border-color:#1b2430!important}
.iema-owner-shell .iema-calendar-day.muted{background:#03060a!important;color:#66748a!important}
.iema-owner-shell .iema-calendar-title{color:#fff!important}
.iema-owner-shell .iema-calendar-nav{background:#162136!important;border-color:#29415e!important;color:#fff!important}
/* responsive */
@media(max-width:980px){
  .iema-owner-shell{width:calc(100vw - 16px)!important;margin:8px auto 32px!important}
  .iema-owner-shell .iema-app-topbar{grid-template-columns:1fr auto!important;grid-template-areas:'brand user' 'heading heading'!important;gap:14px!important;padding:18px!important;min-height:0!important}
  .iema-owner-shell .iema-shell-brand{grid-area:brand!important}.iema-owner-shell .iema-page-heading{grid-area:heading!important;text-align:left!important}.iema-owner-shell .iema-portal-user{grid-area:user!important}
  .iema-owner-shell .iema-command-header{align-items:flex-start!important;flex-direction:column!important}
  .iema-owner-shell .iema-command-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:640px){
  .iema-owner-shell{width:100vw!important;margin:0 auto 24px!important}
  .iema-owner-shell .iema-app-topbar{border-radius:0 0 18px 18px!important;border-left:0!important;border-right:0!important;padding:15px!important}
  .iema-owner-shell .iema-shell-brand .iema-studio-logo{width:52px!important;height:52px!important;min-width:52px!important;border-radius:14px!important}
  .iema-owner-shell .iema-studio-name{font-size:17px!important}
  .iema-owner-shell .iema-page-heading h1{font-size:27px!important}
  .iema-owner-shell .iema-page-heading p{font-size:12px!important}
  .iema-owner-shell .iema-portal-user{width:auto!important;min-width:0!important}
  .iema-owner-shell .iema-portal-user summary{grid-template-columns:40px 14px!important;padding:6px!important;min-height:52px!important}
  .iema-owner-shell .iema-portal-user summary span{display:none!important}
  .iema-owner-shell .iema-primary-nav{border-left:0!important;border-right:0!important;border-radius:0!important;margin:0 0 8px!important;padding:6px 10px!important}
  .iema-owner-shell .iema-primary-nav a{min-height:40px!important;padding:8px 13px!important}
  .iema-owner-shell .iema-secondary-nav{padding:0 12px!important;margin-bottom:14px!important}
  .iema-owner-shell .iema-panel{padding:16px!important;border-radius:15px!important}
  .iema-owner-shell .iema-command-header,.iema-owner-shell>.iema-stat-grid,.iema-owner-shell>section{margin-left:10px!important;margin-right:10px!important}
  .iema-owner-shell .iema-command-stats{grid-template-columns:1fr!important;gap:8px!important}
  .iema-owner-shell .iema-command-stats>div{padding:15px!important}
  .iema-owner-shell .iema-command-stats strong{font-size:26px!important}
  .iema-owner-shell .iema-quick-actions{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important}
  .iema-owner-shell .iema-quick-actions a{width:100%!important;box-sizing:border-box!important}
}


/* v0.11.42 Studio Owner dancer workspace dark fix */
.iema-owner-shell .iema-dancer-workspace{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  color:#f5f8ff!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-back-link{
  color:#8fa4bd!important;
  font-size:12px!important;
  font-weight:800!important;
  padding:2px 2px!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-back-link:hover{color:var(--md2-blue-soft)!important}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero{
  display:grid!important;
  grid-template-columns:132px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:24px!important;
  padding:24px!important;
  background:linear-gradient(135deg,#0d1520 0%,#081019 72%,#0a2030 100%)!important;
  color:#f5f8ff!important;
  border:1px solid #213247!important;
  border-radius:20px!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28)!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero>img{
  width:132px!important;
  height:132px!important;
  border-radius:24px!important;
  object-fit:cover!important;
  border:2px solid #2a5879!important;
  background:#070b11!important;
  box-shadow:0 12px 28px rgba(0,0,0,.30)!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-copy{
  min-width:0!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-copy .iema-kicker{
  color:#63d0ff!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-copy h2{
  margin:5px 0 10px!important;
  color:#ffffff!important;
  font-size:clamp(30px,3.2vw,44px)!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
  font-weight:900!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-copy .iema-athlete-age,
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-copy .iema-athlete-team,
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-copy p,
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-copy small{
  color:#aab9cc!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-athlete-team{
  background:#0a111a!important;
  border:1px solid #1e2c3c!important;
  border-radius:13px!important;
  padding:10px 12px!important;
  margin-top:10px!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-athlete-team span{color:#7f91a8!important}
.iema-owner-shell .iema-dancer-workspace .iema-athlete-team strong{color:#edf5ff!important}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-stats{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(105px,1fr))!important;
  gap:10px!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-stats>div{
  min-width:112px!important;
  padding:15px 14px!important;
  background:#080d14!important;
  border:1px solid #25364b!important;
  border-radius:14px!important;
  text-align:center!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-stats strong{
  display:block!important;
  color:var(--md2-blue-soft)!important;
  font-size:28px!important;
  line-height:1!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-stats small{
  display:block!important;
  margin-top:6px!important;
  color:#91a1b7!important;
  font-size:9.5px!important;
  text-transform:uppercase!important;
  letter-spacing:.07em!important;
  font-weight:800!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-nav{
  display:flex!important;
  gap:8px!important;
  align-items:center!important;
  padding:6px!important;
  margin:0!important;
  background:#090f17!important;
  border:1px solid #1e2b3a!important;
  border-radius:15px!important;
  overflow-x:auto!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-nav a{
  flex:1 0 auto!important;
  min-height:40px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:8px 14px!important;
  border:1px solid transparent!important;
  border-radius:10px!important;
  background:transparent!important;
  color:#8fa0b7!important;
  text-decoration:none!important;
  font-size:11.5px!important;
  font-weight:800!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-nav a:hover{
  background:#101a27!important;
  color:#eaf8ff!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-nav a.active{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
  border-color:#36bcff!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(13,124,255,.22)!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dashboard-grid{
  gap:14px!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-panel{
  background:linear-gradient(180deg,#0c121c 0%,#080d14 100%)!important;
  border:1px solid #1f2b3a!important;
  color:#f4f8ff!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-panel h3,
.iema-owner-shell .iema-dancer-workspace .iema-panel h4,
.iema-owner-shell .iema-dancer-workspace .iema-panel strong,
.iema-owner-shell .iema-dancer-workspace .iema-panel b{color:#f5f8ff!important}
.iema-owner-shell .iema-dancer-workspace .iema-panel p,
.iema-owner-shell .iema-dancer-workspace .iema-panel small,
.iema-owner-shell .iema-dancer-workspace .iema-panel span,
.iema-owner-shell .iema-dancer-workspace .iema-panel em{color:#95a6bc!important}
.iema-owner-shell .iema-dancer-workspace .iema-list>a,
.iema-owner-shell .iema-dancer-workspace .iema-list>div,
.iema-owner-shell .iema-dancer-workspace .iema-history>div{
  background:#080d14!important;
  border:1px solid #223043!important;
  color:#f5f8ff!important;
  border-radius:12px!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-list>a:hover{border-color:#2c6b95!important;background:#0c1723!important}
@media(max-width:900px){
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero{
    grid-template-columns:104px minmax(0,1fr)!important;
  }
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero>img{width:104px!important;height:104px!important;border-radius:20px!important}
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-stats{grid-column:1/-1!important}
}
@media(max-width:620px){
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero{grid-template-columns:1fr!important;text-align:center!important;padding:18px!important}
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero>img{margin:auto!important}
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-stats{grid-template-columns:1fr 1fr!important}
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-nav a{min-width:92px!important}
}


/* v0.11.43 owner dashboard command-center surface fix */
.iema-owner-shell .iema-command-header{
  background:linear-gradient(180deg,#0c121c 0%,#080d14 100%)!important;
  border:1px solid #1f2b3a!important;
  border-radius:18px!important;
  box-shadow:0 16px 40px rgba(0,0,0,.26)!important;
  color:#f5f8ff!important;
  padding:22px 24px!important;
}
.iema-owner-shell .iema-command-header h2{
  color:#f8fbff!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-weight:900!important;
  letter-spacing:-.025em!important;
}
.iema-owner-shell .iema-command-header p{color:#93a4bc!important}
.iema-owner-shell .iema-command-header .iema-kicker{color:var(--md2-blue-soft)!important}
.iema-owner-shell .iema-command-header .iema-quick-actions{align-items:center!important}
.iema-owner-shell .iema-command-header .iema-quick-actions a{
  min-height:40px!important;
  padding:10px 15px!important;
  font-size:12px!important;
  font-weight:850!important;
}
@media(max-width:760px){
  .iema-owner-shell .iema-command-header{padding:18px!important;align-items:flex-start!important}
  .iema-owner-shell .iema-command-header .iema-quick-actions{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important}
  .iema-owner-shell .iema-command-header .iema-quick-actions a{width:100%!important}
}


/* v0.11.44 owner submenu theme fix */
.iema-owner-shell .iema-secondary-nav{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  overflow-x:auto!important;
  margin:0 0 18px!important;
  padding:10px!important;
  border:1px solid #1e2a39!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#080d14 0%,#070b11 100%)!important;
  box-shadow:none!important;
}
.iema-owner-shell .iema-secondary-nav::-webkit-scrollbar{height:0!important}
.iema-owner-shell .iema-secondary-nav a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:40px!important;
  padding:9px 14px!important;
  border:1px solid transparent!important;
  border-radius:12px!important;
  background:transparent!important;
  color:#96a8c1!important;
  font-size:12.5px!important;
  font-weight:850!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
.iema-owner-shell .iema-secondary-nav a:hover{
  background:#101a27!important;
  border-color:#223650!important;
  color:#edf7ff!important;
}
.iema-owner-shell .iema-secondary-nav a.active,
.iema-owner-shell .iema-secondary-nav a[aria-current="page"],
.iema-owner-shell .iema-secondary-nav a.current{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
  border-color:var(--md2-blue)!important;
  color:#ffffff!important;
  box-shadow:0 10px 24px rgba(13,124,255,.24)!important;
}
.iema-owner-shell .iema-secondary-nav a.active:before,
.iema-owner-shell .iema-secondary-nav a.active:after,
.iema-owner-shell .iema-secondary-nav a[aria-current="page"]:before,
.iema-owner-shell .iema-secondary-nav a[aria-current="page"]:after{display:none!important}
@media(max-width:560px){
  .iema-owner-shell .iema-secondary-nav{
    padding:8px!important;
    margin:0 10px 14px!important;
    border-radius:14px!important;
  }
  .iema-owner-shell .iema-secondary-nav a{
    min-height:38px!important;
    padding:8px 12px!important;
    font-size:12px!important;
  }
}


/* v0.11.45 compact owner roster + full dancer modal */
.iema-owner-shell .iema-owner-roster-panel{overflow:visible!important}
.iema-owner-shell .iema-owner-dancer-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.iema-owner-shell .iema-owner-dancer-tile{appearance:none!important;width:100%!important;display:grid!important;grid-template-columns:58px minmax(0,1fr) 24px!important;gap:13px!important;align-items:center!important;min-width:0!important;padding:12px 13px!important;border:1px solid #263244!important;border-radius:16px!important;background:linear-gradient(180deg,#101722 0%,#0b1119 100%)!important;color:#fff!important;text-align:left!important;cursor:pointer!important;box-shadow:none!important;transition:.16s ease!important}
.iema-owner-shell .iema-owner-dancer-tile:hover{border-color:var(--md2-blue)!important;background:#101d2a!important;transform:translateY(-1px)!important;box-shadow:0 12px 26px rgba(13,124,255,.10)!important}
.iema-owner-shell .iema-owner-dancer-tile img{width:58px!important;height:58px!important;border-radius:15px!important;object-fit:cover!important;border:1px solid #35445a!important;background:#0a0f16!important}
.iema-owner-shell .iema-owner-dancer-tile>span{display:grid!important;gap:5px!important;min-width:0!important}
.iema-owner-shell .iema-owner-dancer-tile strong{font-size:15px!important;line-height:1.15!important;color:#fff!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.iema-owner-shell .iema-owner-dancer-tile small{font-size:11px!important;line-height:1.35!important;color:#8ea2bd!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.iema-owner-shell .iema-owner-dancer-tile>b{display:grid!important;place-items:center!important;width:24px!important;height:24px!important;border-radius:999px!important;background:#0d2537!important;color:#69d2ff!important;font-size:18px!important;font-weight:700!important}
.iema-owner-dancer-modal .iema-parent-modal-dialog{background:linear-gradient(180deg,#0d141e 0%,#080d14 100%)!important;border:1px solid #263548!important;color:#fff!important}
.iema-owner-dancer-modal .iema-parent-modal-backdrop{background:rgba(0,0,0,.78)!important}
.iema-owner-dancer-modal .iema-parent-modal-close{background:#121b28!important;color:#fff!important;border:1px solid #2a3b51!important}
.iema-owner-dancer-modal .iema-parent-modal-hero{border-bottom:1px solid #223044!important}
.iema-owner-dancer-modal .iema-parent-modal-hero h2{color:#fff!important}
.iema-owner-dancer-modal .iema-parent-modal-hero p{color:#8fa3bd!important}
.iema-owner-dancer-modal .iema-parent-modal-grid>div{background:#101823!important;border:1px solid #253347!important}
.iema-owner-dancer-modal .iema-parent-modal-grid span{color:#6fcfff!important}
.iema-owner-dancer-modal .iema-parent-modal-grid strong{color:#f4f8ff!important}
.iema-owner-dancer-modal .iema-owner-modal-routines{margin:18px 0!important}.iema-owner-dancer-modal .iema-owner-modal-routines .iema-list>div{background:#101823!important;border:1px solid #253347!important}
@media(max-width:1100px){.iema-owner-shell .iema-owner-dancer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){.iema-owner-shell .iema-owner-dancer-grid{grid-template-columns:1fr!important}.iema-owner-shell .iema-owner-dancer-tile{grid-template-columns:54px minmax(0,1fr) 24px!important}.iema-owner-shell .iema-owner-dancer-tile img{width:54px!important;height:54px!important}}


/* v0.11.46 Studio Owner dancer roster clarity + edit access */
.iema-owner-shell .iema-owner-manage-dancer-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}
.iema-owner-shell .iema-owner-manage-dancer-card{
  min-width:0!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#0d1420 0%,#090e16 100%)!important;
  border:1px solid #213047!important;
  border-radius:18px!important;
  box-shadow:0 12px 28px rgba(0,0,0,.18)!important;
}
.iema-owner-shell .iema-owner-manage-dancer-card:hover{border-color:#2b6b96!important}
.iema-owner-shell .iema-owner-manage-dancer-main{
  display:grid!important;
  grid-template-columns:66px minmax(0,1fr) 24px!important;
  align-items:center!important;
  gap:13px!important;
  padding:16px!important;
  text-decoration:none!important;
  color:#fff!important;
  border-bottom:1px solid #1d2939!important;
}
.iema-owner-shell .iema-owner-manage-dancer-main img{
  width:66px!important;height:66px!important;border-radius:17px!important;object-fit:cover!important;
  border:1px solid #31445f!important;
}
.iema-owner-shell .iema-owner-manage-dancer-title{display:grid!important;gap:5px!important;min-width:0!important}
.iema-owner-shell .iema-owner-manage-dancer-title strong{font-size:17px!important;color:#fff!important;line-height:1.1!important}
.iema-owner-shell .iema-owner-manage-dancer-title small{font-size:10px!important;color:var(--studio-accent)!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.06em!important}
.iema-owner-shell .iema-owner-manage-dancer-main>b{color:var(--studio-accent)!important;font-size:22px!important}
.iema-owner-shell .iema-owner-manage-dancer-facts{
  display:grid!important;
  grid-template-columns:1.35fr .8fr 1fr!important;
  gap:8px!important;
  padding:13px 14px!important;
}
.iema-owner-shell .iema-owner-manage-dancer-facts>div{
  display:grid!important;gap:4px!important;padding:10px 11px!important;
  background:#111925!important;border:1px solid #26364b!important;border-radius:12px!important;
}
.iema-owner-shell .iema-owner-manage-dancer-facts span{
  color:#8295af!important;font-size:9px!important;font-weight:850!important;text-transform:uppercase!important;letter-spacing:.07em!important;
}
.iema-owner-shell .iema-owner-manage-dancer-facts strong{
  color:#f7fbff!important;font-size:14px!important;line-height:1.15!important;
}
.iema-owner-shell .iema-owner-manage-dancer-actions{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;
  padding:0 14px 14px!important;
}
.iema-owner-shell .iema-owner-manage-dancer-actions .iema-btn{
  min-height:38px!important;padding:8px 12px!important;font-size:11px!important;border-radius:10px!important;
}
.iema-owner-shell .iema-owner-manage-dancer-actions .iema-text-action{font-size:10.5px!important;white-space:nowrap!important}
@media(max-width:1250px){.iema-owner-shell .iema-owner-manage-dancer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){
 .iema-owner-shell .iema-owner-manage-dancer-grid{grid-template-columns:1fr!important}
 .iema-owner-shell .iema-owner-manage-dancer-facts{grid-template-columns:1.3fr .8fr 1fr!important}
}
@media(max-width:460px){
 .iema-owner-shell .iema-owner-manage-dancer-facts{grid-template-columns:1fr 1fr!important}
 .iema-owner-shell .iema-owner-manage-dancer-facts>div:first-child{grid-column:1/-1!important}
 .iema-owner-shell .iema-owner-manage-dancer-actions{align-items:stretch!important;flex-direction:column!important}
 .iema-owner-shell .iema-owner-manage-dancer-actions .iema-btn{width:100%!important;justify-content:center!important}
}


/* v0.11.47 studio start date + owner dancer avatar editor fix */
.iema-owner-shell .iema-dancer-workspace .iema-avatar-editor,
.iema-owner-shell .iema-create-card .iema-avatar-editor{
  grid-template-columns:minmax(240px,320px) minmax(260px,1fr)!important;
  align-items:center!important;
  gap:28px!important;
  padding:20px!important;
  background:#080d14!important;
  border:1px solid #243142!important;
  border-radius:20px!important;
  color:#fff!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-avatar-crop-stage,
.iema-owner-shell .iema-create-card .iema-avatar-crop-stage{
  width:min(100%,320px)!important;
  max-width:320px!important;
  aspect-ratio:1/1!important;
  border-radius:50%!important;
  overflow:hidden!important;
  background:#0a1018!important;
  border:2px solid #2b3a4d!important;
  box-shadow:0 16px 38px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.03)!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-avatar-crop-stage canvas,
.iema-owner-shell .iema-create-card .iema-avatar-crop-stage canvas{
  width:100%!important;
  height:100%!important;
  display:block!important;
  border-radius:50%!important;
  background:#0a1018!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-avatar-crop-ring,
.iema-owner-shell .iema-create-card .iema-avatar-crop-ring{
  inset:0!important;
  border:3px solid rgba(255,255,255,.92)!important;
  border-radius:50%!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.24)!important;
  pointer-events:none!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-avatar-editor-controls,
.iema-owner-shell .iema-create-card .iema-avatar-editor-controls{min-width:0!important;align-self:center!important}
.iema-owner-shell .iema-dancer-workspace .iema-avatar-editor-controls label,
.iema-owner-shell .iema-create-card .iema-avatar-editor-controls label{gap:8px!important}
.iema-owner-shell .iema-dancer-workspace .iema-avatar-editor-controls input[type="file"],
.iema-owner-shell .iema-create-card .iema-avatar-editor-controls input[type="file"]{width:100%!important;max-width:100%!important}
.iema-owner-shell .iema-dancer-workspace .iema-avatar-editor-controls input[type="range"],
.iema-owner-shell .iema-create-card .iema-avatar-editor-controls input[type="range"]{width:100%!important}
@media(max-width:800px){
  .iema-owner-shell .iema-dancer-workspace .iema-avatar-editor,
  .iema-owner-shell .iema-create-card .iema-avatar-editor{grid-template-columns:1fr!important;gap:20px!important}
  .iema-owner-shell .iema-dancer-workspace .iema-avatar-crop-stage,
  .iema-owner-shell .iema-create-card .iema-avatar-crop-stage{width:min(82vw,300px)!important;margin:0 auto!important}
}


/* v0.11.49 owner Studio Staff roster */
.iema-owner-shell .iema-owner-staff-workspace{overflow:visible!important}
.iema-owner-staff-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;align-content:start!important}
.iema-owner-staff-card{appearance:none!important;width:100%!important;display:grid!important;grid-template-columns:64px minmax(0,1fr) 28px!important;gap:14px!important;align-items:center!important;padding:14px!important;text-align:left!important;background:linear-gradient(180deg,#0d141f,#0a1018)!important;border:1px solid #223044!important;border-radius:18px!important;color:#fff!important;cursor:pointer!important;box-shadow:0 10px 24px rgba(0,0,0,.20)!important;transition:.16s ease!important}
.iema-owner-staff-card:hover{border-color:var(--md2-blue)!important;background:#101b29!important;transform:translateY(-1px)!important;box-shadow:0 14px 30px rgba(13,124,255,.12)!important}
.iema-owner-staff-card img{width:64px!important;height:64px!important;border-radius:17px!important;object-fit:cover!important;border:1px solid #31435a!important;background:#111925!important}
.iema-owner-staff-card>span{display:grid!important;gap:5px!important;min-width:0!important}.iema-owner-staff-card strong{font-size:16px!important;color:#fff!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.iema-owner-staff-card small{font-size:11px!important;color:#8fa3bd!important}.iema-owner-staff-card>b{display:grid!important;place-items:center!important;width:28px!important;height:28px!important;border-radius:999px!important;background:#0d2940!important;color:#6fd3ff!important;font-size:20px!important}
.iema-owner-staff-modal[hidden]{display:none!important}.iema-owner-staff-modal{position:fixed!important;inset:0!important;z-index:999999!important;display:grid!important;place-items:center!important;padding:24px!important}.iema-owner-staff-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.78)!important;backdrop-filter:blur(10px)!important}.iema-owner-staff-dialog{position:relative!important;width:min(760px,96vw)!important;max-height:90vh!important;overflow:auto!important;background:linear-gradient(180deg,#0d141f,#070b11)!important;border:1px solid #26384d!important;border-radius:26px!important;box-shadow:0 40px 110px rgba(0,0,0,.62)!important;padding:28px!important;color:#fff!important}.iema-owner-staff-close{position:absolute!important;right:18px!important;top:18px!important;width:42px!important;height:42px!important;border-radius:13px!important;border:1px solid #2b4058!important;background:#111b28!important;color:#fff!important;font-size:26px!important;cursor:pointer!important}.iema-owner-staff-hero{display:flex!important;align-items:center!important;gap:20px!important;padding:0 56px 22px 0!important;border-bottom:1px solid #223044!important}.iema-owner-staff-hero img{width:104px!important;height:104px!important;border-radius:24px!important;object-fit:cover!important;border:2px solid #29445e!important}.iema-owner-staff-hero h2{font-size:30px!important;margin:4px 0 5px!important;color:#fff!important}.iema-owner-staff-hero p{margin:0!important;color:#91a3bb!important}.iema-owner-staff-facts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:20px 0!important}.iema-owner-staff-facts>div{display:grid!important;gap:5px!important;padding:14px!important;border:1px solid #223044!important;border-radius:14px!important;background:#0b121b!important}.iema-owner-staff-facts span{font-size:9px!important;font-weight:900!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:#6fd3ff!important}.iema-owner-staff-facts strong{font-size:13px!important;color:#fff!important;overflow-wrap:anywhere!important}.iema-owner-staff-routines{padding:18px!important;border:1px solid #223044!important;border-radius:16px!important;background:#091019!important}.iema-owner-staff-routines h3{margin:4px 0 12px!important}.iema-owner-staff-routine-list{display:grid!important;gap:8px!important}.iema-owner-staff-routine-list>div{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:12px!important;border-radius:12px!important;background:#101824!important;border:1px solid #1f2e40!important}.iema-owner-staff-routine-list small{color:#8fa2ba!important}.iema-owner-staff-actions{display:flex!important;gap:10px!important;align-items:flex-start!important;flex-wrap:wrap!important;margin-top:18px!important}.iema-owner-staff-actions details{position:relative!important}.iema-owner-staff-actions summary{list-style:none!important;cursor:pointer!important}.iema-owner-staff-actions summary::-webkit-details-marker{display:none!important}.iema-owner-staff-password{margin-top:10px!important;padding:14px!important;border:1px solid #223044!important;border-radius:14px!important;background:#090f17!important;min-width:320px!important}
@media(max-width:1200px){.iema-owner-staff-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){.iema-owner-staff-grid{grid-template-columns:1fr!important}.iema-owner-staff-dialog{padding:22px 16px!important;border-radius:20px!important}.iema-owner-staff-facts{grid-template-columns:1fr!important}.iema-owner-staff-password{min-width:0!important;width:100%!important}.iema-owner-staff-actions details{width:100%!important}.iema-owner-staff-actions .iema-btn{width:100%!important;justify-content:center!important}.iema-owner-staff-hero img{width:82px!important;height:82px!important;border-radius:20px!important}.iema-owner-staff-hero h2{font-size:24px!important}}


/* v0.11.50 staff profile/avatar editing */
.iema-owner-shell .iema-owner-staff-edit{width:100%!important}
.iema-owner-shell .iema-owner-staff-edit>summary{list-style:none!important;cursor:pointer!important}
.iema-owner-shell .iema-owner-staff-edit>summary::-webkit-details-marker{display:none!important}
.iema-owner-shell .iema-owner-staff-edit-form{margin-top:12px!important;padding:18px!important;background:#080d14!important;border:1px solid #223044!important;border-radius:16px!important}
.iema-owner-shell .iema-owner-staff-edit-form .iema-avatar-editor{background:#080d14!important;border-color:#26364a!important}
.iema-owner-shell .iema-owner-staff-edit-form .iema-avatar-crop-stage{border-radius:50%!important;overflow:hidden!important;background:#0b111a!important}
.iema-owner-shell .iema-owner-staff-edit-form .iema-avatar-crop-ring{inset:0!important;border-radius:50%!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.85)!important}
.iema-owner-shell .iema-owner-staff-edit-form .iema-avatar-crop-stage canvas{border-radius:50%!important}
@media(max-width:700px){.iema-owner-shell .iema-owner-staff-edit-form{padding:14px!important}.iema-owner-shell .iema-owner-staff-edit-form .iema-form-grid{grid-template-columns:1fr!important}}


/* v0.11.51 faculty terminology + position/title */
.iema-owner-staff-card>span{gap:3px!important}
.iema-owner-staff-card .iema-faculty-position{
  color:#6fd3ff!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.25!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.iema-owner-staff-card>span>em{
  color:#8394aa!important;
  font-size:10.5px!important;
  font-style:normal!important;
  font-weight:650!important;
}
.iema-owner-staff-hero .iema-faculty-modal-position{
  margin:3px 0 2px!important;
  color:#6fd3ff!important;
  font-size:14px!important;
  font-weight:800!important;
}
.iema-owner-staff-hero small{color:#8ea0b8!important;font-size:11px!important}


/* v0.11.52 modal faculty creation */
.iema-owner-shell .iema-faculty-heading-actions{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.iema-owner-shell .iema-add-faculty-btn{min-height:42px!important;padding:10px 16px!important;white-space:nowrap!important}
.iema-owner-faculty-create-modal[hidden]{display:none!important}
.iema-owner-faculty-create-modal{position:fixed!important;inset:0!important;z-index:1000000!important;display:grid!important;place-items:center!important;padding:24px!important}
.iema-owner-faculty-create-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.82)!important;backdrop-filter:blur(10px)!important}
.iema-owner-faculty-create-dialog{position:relative!important;width:min(760px,96vw)!important;max-height:92vh!important;overflow:auto!important;background:linear-gradient(180deg,#0d141f 0%,#070b11 100%)!important;border:1px solid #26384d!important;border-radius:26px!important;box-shadow:0 42px 120px rgba(0,0,0,.68)!important;padding:28px!important;color:#fff!important}
.iema-owner-faculty-create-close{position:absolute!important;right:18px!important;top:18px!important;width:42px!important;height:42px!important;display:grid!important;place-items:center!important;border-radius:13px!important;border:1px solid #2b4058!important;background:#111b28!important;color:#fff!important;font-size:26px!important;line-height:1!important;cursor:pointer!important}
.iema-owner-faculty-create-head{padding:0 58px 20px 0!important;border-bottom:1px solid #223044!important;margin-bottom:20px!important}
.iema-owner-faculty-create-head h2{margin:4px 0 6px!important;color:#fff!important;font-size:28px!important;letter-spacing:-.025em!important}
.iema-owner-faculty-create-head p{margin:0!important;color:#91a3bb!important;font-size:13px!important}
.iema-owner-faculty-create-form{display:grid!important;gap:14px!important}
.iema-owner-faculty-create-form .iema-avatar-editor{background:#090f17!important;border-color:#223044!important}
body.iema-owner-faculty-create-open{overflow:hidden!important}
@media(max-width:760px){
 .iema-owner-shell .iema-workspace-heading{align-items:flex-start!important;gap:14px!important}
 .iema-owner-shell .iema-faculty-heading-actions{width:100%!important;justify-content:flex-start!important}
 .iema-owner-shell .iema-add-faculty-btn{flex:1!important;justify-content:center!important}
 .iema-owner-faculty-create-modal{padding:10px!important}
 .iema-owner-faculty-create-dialog{width:100%!important;max-height:95vh!important;padding:22px 16px!important;border-radius:20px!important}
 .iema-owner-faculty-create-head h2{font-size:24px!important}
}


/* v0.11.53 Owner portal viewport background — prevent theme/html white bleed */
html.iema-owner-portal-root,
body.iema-owner-portal-page{
  background:#020407!important;
  background-color:#020407!important;
  min-height:100%!important;
}
html.iema-owner-portal-root{min-height:100vh!important;overscroll-behavior-y:none!important}
body.iema-owner-portal-page{min-height:100vh!important}
body.iema-owner-portal-page #page,
body.iema-owner-portal-page .site,
body.iema-owner-portal-page .site-container,
body.iema-owner-portal-page .site-content,
body.iema-owner-portal-page .content-area,
body.iema-owner-portal-page #content,
body.iema-owner-portal-page .wp-site-blocks,
body.iema-owner-portal-page .wp-site-blocks>*,
body.iema-owner-portal-page main,
body.iema-owner-portal-page .ma-wrap,
body.iema-owner-portal-page .ma-page{
  background:#020407!important;
  background-color:#020407!important;
}

/* v0.11.54 Dancer + Parent / Guardian roster add modals */
.iema-owner-shell .iema-roster-heading-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:wrap!important}
.iema-owner-shell .iema-add-person-btn{min-height:42px!important;padding:10px 16px!important;white-space:nowrap!important}
.iema-owner-person-create-modal[hidden]{display:none!important}
.iema-owner-person-create-modal{position:fixed!important;inset:0!important;z-index:1000000!important;display:grid!important;place-items:center!important;padding:24px!important}
.iema-owner-person-create-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.84)!important;backdrop-filter:blur(10px)!important}
.iema-owner-person-create-dialog{position:relative!important;width:min(780px,96vw)!important;max-height:92vh!important;overflow:auto!important;background:linear-gradient(180deg,#0d141f 0%,#070b11 100%)!important;border:1px solid #26384d!important;border-radius:26px!important;box-shadow:0 42px 120px rgba(0,0,0,.68)!important;padding:28px!important;color:#fff!important}
.iema-owner-person-create-close{position:absolute!important;right:18px!important;top:18px!important;width:42px!important;height:42px!important;display:grid!important;place-items:center!important;border-radius:13px!important;border:1px solid #2b4058!important;background:#111b28!important;color:#fff!important;font-size:26px!important;line-height:1!important;cursor:pointer!important}
.iema-owner-person-create-head{padding:0 58px 20px 0!important;border-bottom:1px solid #223044!important;margin-bottom:20px!important}
.iema-owner-person-create-head h2{margin:4px 0 6px!important;color:#fff!important;font-size:28px!important;letter-spacing:-.025em!important}
.iema-owner-person-create-head p{margin:0!important;color:#91a3bb!important;font-size:13px!important}
.iema-owner-person-create-form{display:grid!important;gap:14px!important}
.iema-owner-person-create-form .iema-avatar-editor{background:#090f17!important;border-color:#223044!important}
body.iema-owner-dancer-create-open,body.iema-owner-parent-create-open{overflow:hidden!important}
.iema-owner-shell .iema-owner-parent-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;margin-top:18px!important}
.iema-owner-shell .iema-owner-parent-card{display:grid!important;grid-template-columns:64px minmax(0,1fr) 18px!important;align-items:center!important;gap:14px!important;padding:15px!important;min-height:96px!important;background:#0a111a!important;border:1px solid #223247!important;border-radius:17px!important;text-decoration:none!important;color:#fff!important;box-shadow:none!important}
.iema-owner-shell .iema-owner-parent-card:hover{background:#101b29!important;border-color:var(--md2-blue)!important;box-shadow:0 12px 28px rgba(13,124,255,.10)!important}
.iema-owner-shell .iema-owner-parent-card img{width:64px!important;height:64px!important;border-radius:16px!important;object-fit:cover!important;border:1px solid #30445c!important;background:#070b11!important}
.iema-owner-shell .iema-owner-parent-card>span{min-width:0!important;display:grid!important;gap:3px!important}
.iema-owner-shell .iema-owner-parent-card strong{font-size:16px!important;color:#fff!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.iema-owner-shell .iema-owner-parent-card small{font-size:11px!important;color:#8fa2b9!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.iema-owner-shell .iema-owner-parent-card em{font-size:10.5px!important;font-style:normal!important;font-weight:800!important;color:var(--md2-blue-soft)!important}
.iema-owner-shell .iema-owner-parent-card>b{color:#66cfff!important;font-size:23px!important}
@media(max-width:1050px){.iema-owner-shell .iema-owner-parent-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){
 .iema-owner-shell .iema-roster-heading-actions{width:100%!important;justify-content:flex-start!important}
 .iema-owner-shell .iema-add-person-btn{flex:1!important;justify-content:center!important}
 .iema-owner-person-create-modal{padding:10px!important}
 .iema-owner-person-create-dialog{width:100%!important;max-height:95vh!important;padding:22px 16px!important;border-radius:20px!important}
 .iema-owner-person-create-head h2{font-size:24px!important}
 .iema-owner-shell .iema-owner-parent-grid{grid-template-columns:1fr!important}
}

/* v0.11.55 dance vs exercise/recovery information architecture */
.iema-owner-shell .iema-primary-nav a{padding-left:14px!important;padding-right:14px!important}
.iema-owner-shell .iema-dance-group-workspace .iema-section-head{margin-bottom:18px!important}
.iema-owner-shell .iema-dance-group-workspace .iema-roster-detail{margin-top:16px!important}
.iema-dancer-subsection-head{margin-top:20px!important;padding-top:16px!important;border-top:1px solid #1f2b3a!important}
@media(max-width:820px){
  .iema-owner-shell .iema-primary-nav a{min-width:max-content!important}
}

/* v0.11.56 owner create actions use consistent modal workflow */
.iema-owner-shell .iema-create-modal[hidden]{display:none!important}
.iema-owner-shell .iema-create-modal{
  position:fixed!important;inset:0!important;z-index:1000000!important;display:grid!important;justify-items:center!important;align-items:start!important;
  overflow:auto!important;padding:56px 24px 32px!important;
}
.iema-owner-shell .iema-create-modal-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.78)!important;backdrop-filter:blur(8px)!important}
.iema-owner-shell .iema-create-modal-dialog{
  position:relative!important;z-index:1!important;width:min(720px,calc(100vw - 32px))!important;max-height:calc(100vh - 96px)!important;
  margin:0 auto!important;overflow:auto!important;padding:26px!important;background:linear-gradient(180deg,#0d1520 0%,#080d14 100%)!important;
  border:1px solid #27405a!important;border-radius:22px!important;box-shadow:0 30px 90px rgba(0,0,0,.58)!important;color:#f5f8ff!important;
}
.iema-owner-shell .iema-create-modal-wide .iema-create-modal-dialog{width:min(940px,calc(100vw - 32px))!important}
.iema-owner-shell .iema-create-modal-close{
  position:absolute!important;right:15px!important;top:15px!important;width:38px!important;height:38px!important;border-radius:50%!important;
  border:1px solid #31465e!important;background:#101925!important;color:#fff!important;font-size:25px!important;line-height:1!important;cursor:pointer!important;
}
.iema-owner-shell .iema-create-modal-close:hover{background:#17263a!important;border-color:#3e759e!important}
.iema-owner-shell .iema-create-modal-head{padding-right:46px!important;margin-bottom:20px!important}
.iema-owner-shell .iema-create-modal-head h2{margin:5px 0 7px!important;font-size:27px!important;color:#fff!important}
.iema-owner-shell .iema-create-modal-head p{margin:0!important;max-width:720px!important;color:#94a7be!important}
.iema-owner-shell .iema-create-modal .iema-form{margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.iema-owner-shell .iema-create-modal .iema-form>label,
.iema-owner-shell .iema-create-modal .iema-form-grid label{color:#dce9f8!important}
.iema-owner-shell .iema-section-head>.iema-btn,
.iema-owner-shell .iema-builder-head>.iema-btn{flex:0 0 auto!important;align-self:center!important}
body.iema-owner-create-modal-open{overflow:hidden!important}
@media(max-width:640px){
  .iema-owner-shell .iema-create-modal{padding:10px!important;align-items:end!important;justify-items:stretch!important}
  .iema-owner-shell .iema-create-modal-dialog,.iema-owner-shell .iema-create-modal-wide .iema-create-modal-dialog{
    width:100%!important;max-height:92vh!important;padding:20px 16px!important;border-radius:20px 20px 10px 10px!important;
  }
  .iema-owner-shell .iema-section-head,.iema-owner-shell .iema-builder-head{align-items:flex-start!important;gap:14px!important}
  .iema-owner-shell .iema-section-head>.iema-btn,.iema-owner-shell .iema-builder-head>.iema-btn{width:100%!important}
}

/* v0.11.57 editable Exercise & Recovery plan library */
.iema-owner-shell .iema-plan-library{display:grid!important;gap:10px!important}
.iema-owner-shell .iema-plan-library-row{width:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;padding:15px 16px!important;background:#080d14!important;border:1px solid #27384d!important;border-radius:13px!important;color:#f5f8ff!important;text-align:left!important;cursor:pointer!important;box-shadow:none!important}
.iema-owner-shell .iema-plan-library-row:hover{background:#0e1824!important;border-color:#2a8dca!important}
.iema-owner-shell .iema-plan-library-row span{display:grid!important;gap:4px!important;min-width:0!important}
.iema-owner-shell .iema-plan-library-row strong{font-size:15px!important;color:#fff!important}
.iema-owner-shell .iema-plan-library-row small{font-size:11.5px!important;color:#91a3bb!important}
.iema-owner-shell .iema-plan-library-row b{flex:0 0 auto!important;color:var(--md2-blue-soft)!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.07em!important}
.iema-owner-shell .iema-plan-editor-dialog{width:min(1080px,calc(100vw - 32px))!important;max-height:92vh!important;overflow:auto!important}
.iema-owner-shell .iema-plan-content-head{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:16px!important;margin:24px 0 12px!important;padding-top:18px!important;border-top:1px solid #243247!important}
.iema-owner-shell .iema-plan-content-head h3{margin:4px 0!important}
.iema-owner-shell .iema-plan-content-head p{margin:0!important}
.iema-owner-shell .iema-plan-day-editor{display:grid!important;gap:12px!important}
.iema-owner-shell .iema-plan-edit-day{padding:16px!important;background:#070c12!important;border:1px solid #243349!important;border-radius:15px!important}
.iema-owner-shell .iema-plan-edit-day-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:12px!important}
.iema-owner-shell .iema-plan-edit-day-head strong{color:#eef7ff!important}
.iema-owner-shell .iema-plan-edit-day-head button{border:0!important;background:transparent!important;color:#ff9da5!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important}
.iema-owner-shell .iema-plan-day-meta{grid-template-columns:90px 90px minmax(180px,1fr) minmax(180px,1fr)!important}
.iema-owner-shell .iema-plan-editor-actions{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:10px!important;margin-top:18px!important;padding-top:16px!important;border-top:1px solid #243247!important}
@media(max-width:760px){.iema-owner-shell .iema-plan-day-meta{grid-template-columns:1fr 1fr!important}.iema-owner-shell .iema-plan-content-head{align-items:flex-start!important;flex-direction:column!important}.iema-owner-shell .iema-plan-editor-actions{align-items:stretch!important;flex-direction:column!important}.iema-owner-shell .iema-plan-editor-actions .iema-btn{width:100%!important}}


/* v0.11.59 modal scroll-state + plan editor containment fix */
.iema-owner-shell .iema-create-modal{
  overflow:hidden!important;
}
.iema-owner-shell .iema-create-modal-dialog{
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
}
.iema-owner-shell .iema-plan-editor-dialog{
  display:block!important;
  max-height:calc(100dvh - 96px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scroll-behavior:auto!important;
}
.iema-owner-shell .iema-plan-editor-dialog .iema-create-modal-head{
  position:sticky!important;
  top:-26px!important;
  z-index:8!important;
  margin:-26px -26px 20px!important;
  padding:26px 72px 18px 26px!important;
  background:linear-gradient(180deg,#0d1520 0%,#0b121b 100%)!important;
  border-bottom:1px solid #24364b!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
}
.iema-owner-shell .iema-plan-editor-dialog .iema-create-modal-close{
  position:sticky!important;
  float:right!important;
  top:15px!important;
  margin:-11px -11px -42px 0!important;
  z-index:12!important;
}
.iema-owner-shell .iema-plan-editor-dialog .iema-plan-editor-actions{
  position:sticky!important;
  bottom:-26px!important;
  z-index:7!important;
  margin:18px -26px -26px!important;
  padding:16px 26px 22px!important;
  background:linear-gradient(0deg,#080d14 82%,rgba(8,13,20,.94) 100%)!important;
  border-top:1px solid #243247!important;
  box-shadow:0 -12px 28px rgba(0,0,0,.22)!important;
}
@media(max-width:640px){
  .iema-owner-shell .iema-create-modal{overflow:hidden!important}
  .iema-owner-shell .iema-plan-editor-dialog{max-height:calc(100dvh - 20px)!important}
  .iema-owner-shell .iema-plan-editor-dialog .iema-create-modal-head{
    top:-20px!important;margin:-20px -16px 18px!important;padding:20px 58px 16px 16px!important;
  }
  .iema-owner-shell .iema-plan-editor-dialog .iema-create-modal-close{top:12px!important;margin:-8px -4px -42px 0!important}
  .iema-owner-shell .iema-plan-editor-dialog .iema-plan-editor-actions{
    bottom:-20px!important;margin:18px -16px -20px!important;padding:14px 16px 18px!important;
  }
}


/* v0.11.60 full-screen plan editor */
.iema-owner-shell .iema-create-modal.iema-create-modal-wide{
  padding:16px!important;
}
.iema-owner-shell .iema-plan-editor-dialog{
  width:calc(100vw - 32px)!important;
  max-width:none!important;
  height:calc(100dvh - 32px)!important;
  max-height:calc(100dvh - 32px)!important;
  margin:0!important;
  border-radius:24px!important;
  overflow:auto!important;
  background:linear-gradient(180deg,#0b121c 0%,#070c13 100%)!important;
  box-shadow:0 40px 120px rgba(0,0,0,.68)!important;
}
.iema-owner-shell .iema-plan-editor-dialog .iema-create-modal-head{
  position:sticky!important;
  top:-26px!important;
  z-index:5!important;
  margin:-26px -26px 22px!important;
  padding:26px 86px 18px 26px!important;
  background:linear-gradient(180deg,rgba(11,18,28,.98) 0%,rgba(8,13,20,.96) 100%)!important;
  border-bottom:1px solid #233349!important;
  backdrop-filter:blur(12px)!important;
}
.iema-owner-shell .iema-plan-editor-dialog .iema-create-modal-head h2{
  font-size:38px!important;
  line-height:1.05!important;
}
.iema-owner-shell .iema-plan-editor-dialog .iema-create-modal-head p{
  max-width:900px!important;
  font-size:16px!important;
}
.iema-owner-shell .iema-plan-editor-dialog .iema-create-modal-close{
  position:sticky!important;
  float:right!important;
  top:18px!important;
  right:18px!important;
  z-index:7!important;
  margin:0 0 -52px auto!important;
  width:52px!important;
  height:52px!important;
  font-size:34px!important;
  background:#101a27!important;
}
.iema-owner-shell .iema-plan-editor-dialog .iema-form-grid{
  gap:20px!important;
}
.iema-owner-shell .iema-plan-editor-dialog .iema-plan-editor-actions{
  position:sticky!important;
  bottom:-26px!important;
  z-index:5!important;
  margin:24px -26px -26px!important;
  padding:18px 26px 22px!important;
  background:linear-gradient(180deg,rgba(8,13,20,.92) 0%,rgba(8,13,20,.98) 100%)!important;
  border-top:1px solid #233349!important;
  backdrop-filter:blur(12px)!important;
}
@media(max-width:900px){
  .iema-owner-shell .iema-create-modal.iema-create-modal-wide{padding:8px!important}
  .iema-owner-shell .iema-plan-editor-dialog{
    width:calc(100vw - 16px)!important;
    height:calc(100dvh - 16px)!important;
    max-height:calc(100dvh - 16px)!important;
    border-radius:20px!important;
  }
  .iema-owner-shell .iema-plan-editor-dialog .iema-create-modal-head{
    top:-22px!important;
    margin:-22px -22px 18px!important;
    padding:22px 74px 16px 22px!important;
  }
  .iema-owner-shell .iema-plan-editor-dialog .iema-create-modal-head h2{font-size:30px!important}
  .iema-owner-shell .iema-plan-editor-dialog .iema-plan-editor-actions{
    bottom:-22px!important;
    margin:20px -22px -22px!important;
    padding:16px 22px 18px!important;
  }
}
@media(max-width:640px){
  .iema-owner-shell .iema-plan-editor-dialog{
    width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    border-radius:0!important;
    border-left:0!important;
    border-right:0!important;
  }
  .iema-owner-shell .iema-plan-editor-dialog .iema-create-modal-head{
    top:-20px!important;
    margin:-20px -20px 16px!important;
    padding:20px 68px 14px 20px!important;
  }
  .iema-owner-shell .iema-plan-editor-dialog .iema-create-modal-close{
    top:12px!important;right:12px!important;width:46px!important;height:46px!important;font-size:30px!important;
  }
}


/* v0.11.61 plan editor is portaled to the document viewport */
body.iema-owner-plan-fullscreen-open{overflow:hidden!important}
body>.iema-create-modal.iema-plan-fullscreen-portal[hidden]{display:none!important}
body>.iema-create-modal.iema-plan-fullscreen-portal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  display:block!important;
  width:100vw!important;
  height:100dvh!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#05080d!important;
}
body>.iema-create-modal.iema-plan-fullscreen-portal>.iema-create-modal-backdrop{
  position:absolute!important;
  inset:0!important;
  background:#05080d!important;
  backdrop-filter:none!important;
}
body>.iema-create-modal.iema-plan-fullscreen-portal>.iema-plan-editor-dialog{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  width:100vw!important;
  max-width:none!important;
  height:100dvh!important;
  max-height:none!important;
  margin:0!important;
  padding:0 34px 0!important;
  overflow:auto!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(180deg,#0b121c 0%,#070c13 100%)!important;
  box-shadow:none!important;
  color:#f5f8ff!important;
  box-sizing:border-box!important;
}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-create-modal-head{
  position:sticky!important;
  top:0!important;
  z-index:20!important;
  margin:0 -34px 24px!important;
  padding:26px 110px 20px 34px!important;
  background:rgba(8,13,20,.97)!important;
  border-bottom:1px solid #243247!important;
  backdrop-filter:blur(14px)!important;
}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-create-modal-head h2{
  margin:4px 0 7px!important;
  color:#fff!important;
  font-size:38px!important;
  line-height:1!important;
}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-create-modal-head p{margin:0!important;color:#9badc3!important;font-size:15px!important}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-kicker{color:var(--md2-blue-soft)!important}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-create-modal-close{
  position:fixed!important;
  top:24px!important;
  right:28px!important;
  z-index:30!important;
  width:52px!important;
  height:52px!important;
  border-radius:15px!important;
  border:1px solid #31465e!important;
  background:#101925!important;
  color:#fff!important;
  font-size:32px!important;
  line-height:1!important;
  cursor:pointer!important;
}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-form{margin:0 auto!important;max-width:1440px!important;padding:0!important;background:transparent!important;border:0!important}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
body>.iema-create-modal.iema-plan-fullscreen-portal label{color:#dce9f8!important;font-weight:750!important}
body>.iema-create-modal.iema-plan-fullscreen-portal input,
body>.iema-create-modal.iema-plan-fullscreen-portal select,
body>.iema-create-modal.iema-plan-fullscreen-portal textarea{
  width:100%!important;
  background:#070c13!important;
  color:#f5f8ff!important;
  border:1px solid #2b3b50!important;
  border-radius:11px!important;
}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-plan-content-head{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:16px!important;margin:26px 0 14px!important;padding-top:20px!important;border-top:1px solid #243247!important}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-plan-content-head h3{color:#fff!important}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-plan-day-editor{display:grid!important;gap:14px!important}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-plan-edit-day{padding:18px!important;background:#070c12!important;border:1px solid #243349!important;border-radius:15px!important}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-plan-edit-day-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:12px!important}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-plan-edit-day-head strong{color:#eef7ff!important}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-plan-day-meta{display:grid!important;grid-template-columns:90px 90px minmax(180px,1fr) minmax(180px,1fr)!important;gap:12px!important}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-plan-editor-actions{
  position:sticky!important;
  bottom:0!important;
  z-index:20!important;
  display:flex!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin:28px -34px 0!important;
  padding:18px 34px!important;
  background:rgba(8,13,20,.97)!important;
  border-top:1px solid #243247!important;
  backdrop-filter:blur(14px)!important;
}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border:1px solid var(--md2-blue)!important;color:#fff!important;border-radius:11px!important;padding:12px 16px!important;font-weight:850!important;text-decoration:none!important}
body>.iema-create-modal.iema-plan-fullscreen-portal .iema-btn-ghost{background:#111925!important;border-color:#2b3b50!important}
@media(max-width:760px){
  body>.iema-create-modal.iema-plan-fullscreen-portal>.iema-plan-editor-dialog{padding:0 16px!important}
  body>.iema-create-modal.iema-plan-fullscreen-portal .iema-create-modal-head{margin:0 -16px 18px!important;padding:20px 72px 16px 16px!important}
  body>.iema-create-modal.iema-plan-fullscreen-portal .iema-create-modal-head h2{font-size:30px!important}
  body>.iema-create-modal.iema-plan-fullscreen-portal .iema-create-modal-close{top:14px!important;right:14px!important;width:46px!important;height:46px!important}
  body>.iema-create-modal.iema-plan-fullscreen-portal .iema-form-grid{grid-template-columns:1fr!important}
  body>.iema-create-modal.iema-plan-fullscreen-portal .iema-plan-day-meta{grid-template-columns:1fr 1fr!important}
  body>.iema-create-modal.iema-plan-fullscreen-portal .iema-plan-editor-actions{margin:22px -16px 0!important;padding:14px 16px!important;flex-direction:column!important}
  body>.iema-create-modal.iema-plan-fullscreen-portal .iema-plan-editor-actions .iema-btn{width:100%!important}
}


/* v0.11.62 dancer-first Exercise & Recovery indexes */
.iema-owner-shell .iema-exercise-dancer-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin-top:18px!important}
.iema-owner-shell .iema-exercise-dancer-card{appearance:none!important;width:100%!important;display:grid!important;grid-template-columns:64px minmax(0,1fr) 20px!important;align-items:center!important;gap:14px!important;padding:14px!important;text-align:left!important;background:#0a111a!important;border:1px solid #223247!important;border-radius:16px!important;color:#fff!important;cursor:pointer!important;box-shadow:none!important}
.iema-owner-shell .iema-exercise-dancer-card:hover{background:#0e1925!important;border-color:#258cc7!important;transform:translateY(-1px)!important}
.iema-owner-shell .iema-exercise-dancer-card>img{width:64px!important;height:64px!important;border-radius:16px!important;object-fit:cover!important;border:1px solid #31506a!important}
.iema-owner-shell .iema-exercise-dancer-card>span{display:grid!important;gap:4px!important;min-width:0!important}.iema-owner-shell .iema-exercise-dancer-card strong{font-size:15px!important;color:#fff!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.iema-owner-shell .iema-exercise-dancer-card small{font-size:11.5px!important;color:#9aabc0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.iema-owner-shell .iema-exercise-dancer-card em{font-style:normal!important;font-size:10px!important;color:var(--md2-blue-soft)!important;font-weight:800!important}.iema-owner-shell .iema-exercise-dancer-card>b{color:var(--md2-blue-soft)!important;font-size:24px!important}
.iema-owner-shell .iema-dancer-exercise-dialog{width:min(980px,calc(100vw - 32px))!important}
.iema-owner-shell .iema-dancer-exercise-hero{display:flex!important;align-items:center!important;gap:18px!important;padding:2px 52px 20px 0!important;border-bottom:1px solid #223247!important}.iema-owner-shell .iema-dancer-exercise-hero img{width:92px!important;height:92px!important;border-radius:22px!important;object-fit:cover!important;border:2px solid #2c5878!important}.iema-owner-shell .iema-dancer-exercise-hero h2{margin:4px 0 6px!important;font-size:30px!important}.iema-owner-shell .iema-dancer-exercise-hero p{margin:0!important}
.iema-owner-shell .iema-dancer-exercise-stats{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:10px!important;margin:18px 0!important}.iema-owner-shell .iema-dancer-exercise-stats>div{padding:14px!important;text-align:center!important;border-radius:13px!important;background:#090f17!important;border:1px solid #223247!important}.iema-owner-shell .iema-dancer-exercise-stats strong{display:block!important;font-size:25px!important;color:var(--md2-blue-soft)!important}.iema-owner-shell .iema-dancer-exercise-stats small{display:block!important;margin-top:4px!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:9px!important}
.iema-owner-shell .iema-dancer-exercise-section{margin-top:18px!important;padding-top:16px!important;border-top:1px solid #223247!important}.iema-owner-shell .iema-dancer-exercise-section h3{margin:0 0 10px!important}.iema-owner-shell .iema-dancer-exercise-actions{display:flex!important;gap:10px!important;flex-wrap:wrap!important;margin-top:20px!important}
@media(max-width:980px){.iema-owner-shell .iema-exercise-dancer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.iema-owner-shell .iema-exercise-dancer-grid{grid-template-columns:1fr!important}.iema-owner-shell .iema-exercise-dancer-card{grid-template-columns:56px minmax(0,1fr) 18px!important}.iema-owner-shell .iema-exercise-dancer-card>img{width:56px!important;height:56px!important}.iema-owner-shell .iema-dancer-exercise-hero{align-items:flex-start!important}.iema-owner-shell .iema-dancer-exercise-hero img{width:72px!important;height:72px!important}.iema-owner-shell .iema-dancer-exercise-stats{grid-template-columns:1fr 1fr 1fr!important}}

/* v0.11.64 dance/training group schedule occupancy */
.iema-owner-shell .iema-roster-schedule-block{margin-top:22px!important;padding-top:20px!important;border-top:1px solid #223044!important}
.iema-owner-shell .iema-roster-schedule-list{display:grid!important;gap:10px!important}
.iema-owner-shell .iema-roster-schedule-list>article{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:14px 16px!important;background:#080d14!important;border:1px solid #25364b!important;border-radius:14px!important}
.iema-owner-shell .iema-roster-schedule-list>article>div:first-child{display:grid!important;gap:4px!important}
.iema-owner-shell .iema-roster-schedule-list>article strong{color:#f5f8ff!important}
.iema-owner-shell .iema-roster-schedule-list>article small{color:#8fa3bd!important}
.iema-owner-shell .iema-roster-heading-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
.iema-owner-shell .iema-roster-heading-actions form{margin:0!important}
.iema-owner-shell .iema-btn-danger{background:#281117!important;border-color:#6f2734!important;color:#ffbec6!important;box-shadow:none!important}
.iema-owner-shell .iema-btn-danger:hover{background:#3a151e!important;border-color:#9b3345!important}
@media(max-width:700px){.iema-owner-shell .iema-roster-schedule-list>article{align-items:flex-start!important;flex-direction:column!important}.iema-owner-shell .iema-roster-schedule-list .iema-roster-heading-actions{width:100%!important}.iema-owner-shell .iema-roster-schedule-list .iema-roster-heading-actions>*{flex:1 1 auto!important}.iema-owner-shell .iema-roster-schedule-list .iema-roster-heading-actions button{width:100%!important}}


/* v0.11.65 global Owner modal viewport portal */
body>.iema-owner-modal-body-portal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  margin:0!important;
  box-sizing:border-box!important;
}
body>.iema-owner-modal-body-portal[hidden]{display:none!important}

/* Generic Owner add/edit modals normally inherit these rules through .iema-owner-shell.
   Once moved under body, keep the same visual system without depending on that ancestor. */
body>.iema-create-modal.iema-owner-modal-body-portal{
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  padding:24px!important;
}
body>.iema-create-modal.iema-owner-modal-body-portal>.iema-create-modal-backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(0,0,0,.84)!important;
  backdrop-filter:blur(10px)!important;
}
body>.iema-create-modal.iema-owner-modal-body-portal>.iema-create-modal-dialog{
  position:relative!important;
  z-index:1!important;
  width:min(720px,calc(100vw - 32px))!important;
  max-height:calc(100dvh - 48px)!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  padding:26px!important;
  background:linear-gradient(180deg,#0d1520 0%,#080d14 100%)!important;
  border:1px solid #27405a!important;
  border-radius:22px!important;
  box-shadow:0 30px 90px rgba(0,0,0,.62)!important;
  color:#f5f8ff!important;
}
body>.iema-create-modal.iema-owner-modal-body-portal.iema-create-modal-wide>.iema-create-modal-dialog:not(.iema-plan-editor-dialog){
  width:min(940px,calc(100vw - 32px))!important;
}
body>.iema-create-modal.iema-owner-modal-body-portal .iema-create-modal-close{
  position:absolute!important;
  right:15px!important;
  top:15px!important;
  width:38px!important;
  height:38px!important;
  border-radius:50%!important;
  border:1px solid #31465e!important;
  background:#101925!important;
  color:#fff!important;
  font-size:25px!important;
  line-height:1!important;
  cursor:pointer!important;
}
body>.iema-create-modal.iema-owner-modal-body-portal .iema-create-modal-head{padding-right:46px!important;margin-bottom:20px!important}
body>.iema-create-modal.iema-owner-modal-body-portal .iema-create-modal-head h2{margin:5px 0 7px!important;font-size:27px!important;color:#fff!important}
body>.iema-create-modal.iema-owner-modal-body-portal .iema-create-modal-head p{margin:0!important;max-width:720px!important;color:#94a7be!important}
body>.iema-create-modal.iema-owner-modal-body-portal .iema-kicker{color:var(--md2-blue-soft)!important}
body>.iema-create-modal.iema-owner-modal-body-portal .iema-form{margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
body>.iema-create-modal.iema-owner-modal-body-portal label{color:#dce9f8!important;font-weight:750!important}
body>.iema-create-modal.iema-owner-modal-body-portal input,
body>.iema-create-modal.iema-owner-modal-body-portal select,
body>.iema-create-modal.iema-owner-modal-body-portal textarea{
  width:100%!important;
  box-sizing:border-box!important;
  background:#080d14!important;
  color:#f5f8ff!important;
  border:1px solid #2a3a4f!important;
}
body>.iema-create-modal.iema-owner-modal-body-portal .iema-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
  border:1px solid var(--md2-blue)!important;
  color:#fff!important;
  border-radius:11px!important;
  text-decoration:none!important;
}

/* The plan editor already has its own true-fullscreen body-level rules. */
body>.iema-create-modal.iema-owner-modal-body-portal.iema-plan-fullscreen-portal{z-index:2147483001!important}

@media(max-width:640px){
  body>.iema-create-modal.iema-owner-modal-body-portal{padding:10px!important;align-items:end!important}
  body>.iema-create-modal.iema-owner-modal-body-portal>.iema-create-modal-dialog:not(.iema-plan-editor-dialog){
    width:100%!important;
    max-height:94dvh!important;
    padding:20px 16px!important;
    border-radius:20px 20px 10px 10px!important;
  }
}

/* v0.11.66 Dance / Training Group roster assignment controls */
.iema-owner-shell .iema-dancer-picker{display:grid!important;grid-template-columns:minmax(180px,.7fr) minmax(300px,1.5fr)!important;gap:14px!important;align-items:start!important}
.iema-owner-shell .iema-dancer-picker select[multiple],
.iema-owner-shell select[name="support_staff_ids[]"]{min-height:180px!important;background:#080d14!important;border:1px solid #2a3a50!important;color:#eef6ff!important}
.iema-owner-shell .iema-dancer-picker option,.iema-owner-shell select[name="support_staff_ids[]"] option{padding:8px 10px!important}
@media(max-width:700px){.iema-owner-shell .iema-dancer-picker{grid-template-columns:1fr!important}}


/* v0.11.67 Owner shell/root containment repair after Dance assignment upgrade */
html{
  max-width:none!important;
}
html:has(body.iema-owner-portal-page),
body.iema-owner-portal-page{
  width:100vw!important;
  min-width:100vw!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:#020407!important;
  background-color:#020407!important;
  overflow-x:hidden!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page #page,
body.iema-owner-portal-page .site,
body.iema-owner-portal-page .site-container,
body.iema-owner-portal-page .site-content,
body.iema-owner-portal-page .content-area,
body.iema-owner-portal-page #content,
body.iema-owner-portal-page .wp-site-blocks,
body.iema-owner-portal-page main,
body.iema-owner-portal-page .ma-wrap,
body.iema-owner-portal-page .ma-page,
body.iema-owner-portal-page article,
body.iema-owner-portal-page .entry-content{
  width:100vw!important;
  min-width:100vw!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
  background:#020407!important;
}
body.iema-owner-portal-page .iema-owner-shell{
  width:min(1540px,calc(100vw - 28px))!important;
  max-width:1540px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
/* Keep the new roster assignment controls styled after global modal portalization. */
.iema-owner-shell .iema-dancer-picker,
body>.iema-create-modal.iema-owner-modal-body-portal .iema-dancer-picker{
  display:grid!important;
  grid-template-columns:minmax(180px,.7fr) minmax(300px,1.5fr)!important;
  gap:14px!important;
  align-items:start!important;
  min-width:0!important;
}
.iema-owner-shell .iema-dancer-picker>* ,
body>.iema-create-modal.iema-owner-modal-body-portal .iema-dancer-picker>*{min-width:0!important}
.iema-owner-shell .iema-dancer-picker select[multiple],
.iema-owner-shell select[name="support_staff_ids[]"],
body>.iema-create-modal.iema-owner-modal-body-portal .iema-dancer-picker select[multiple],
body>.iema-create-modal.iema-owner-modal-body-portal select[name="support_staff_ids[]"]{
  width:100%!important;
  min-width:0!important;
  min-height:180px!important;
  background:#080d14!important;
  border:1px solid #2a3a50!important;
  color:#eef6ff!important;
  box-sizing:border-box!important;
}
@media(max-width:700px){
  .iema-owner-shell .iema-dancer-picker,
  body>.iema-create-modal.iema-owner-modal-body-portal .iema-dancer-picker{grid-template-columns:1fr!important}
}


/* v0.11.68 Dancer Portal visual system — match Owner / Parent */
html:has(body.iema-dancer-portal-page),
body.iema-dancer-portal-page{
  background:#030609!important;
  color:#f5f8ff!important;
  min-height:100%!important;
}
body.iema-dancer-portal-page .ma-header,
body.iema-dancer-portal-page .ma-footer,
body.iema-dancer-portal-page .entry-header,
body.iema-dancer-portal-page .entry-title,
body.iema-dancer-portal-page .wp-block-post-title,
body.iema-dancer-portal-page article>h1:first-child{display:none!important}
body.iema-dancer-portal-page main,
body.iema-dancer-portal-page .ma-wrap,
body.iema-dancer-portal-page .ma-page,
body.iema-dancer-portal-page article,
body.iema-dancer-portal-page .entry-content{
  max-width:none!important;width:100%!important;margin:0!important;padding:0!important;background:#030609!important;
}
.iema-dancer-portal{
  width:min(1540px,calc(100vw - 40px))!important;
  max-width:1540px!important;
  margin:18px auto 44px!important;
  padding:0!important;
  background:transparent!important;
  color:#f5f8ff!important;
  box-sizing:border-box!important;
}
.iema-dancer-portal .iema-app-topbar{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) minmax(360px,1.35fr) minmax(230px,1fr)!important;
  align-items:center!important;
  gap:24px!important;
  min-height:108px!important;
  padding:20px 24px!important;
  margin:0 0 12px!important;
  background:linear-gradient(135deg,#0b131e 0%,#081019 70%,#0a1d2b 100%)!important;
  border:1px solid #203147!important;
  border-radius:22px!important;
  color:#fff!important;
  box-shadow:none!important;
}
.iema-dancer-portal .iema-shell-brand{
  position:static!important;width:auto!important;display:flex!important;align-items:center!important;gap:15px!important;color:#fff!important;z-index:auto!important;
}
.iema-dancer-portal .iema-shell-brand .iema-studio-logo{
  width:64px!important;height:64px!important;min-width:64px!important;border-radius:17px!important;object-fit:contain!important;
  background:#111a26!important;border:1px solid #31445d!important;padding:5px!important;
}
.iema-dancer-portal .iema-studio-name{color:#fff!important;font-size:22px!important;line-height:1.05!important;font-weight:900!important;letter-spacing:-.02em!important}
.iema-dancer-portal .iema-account-label{display:block!important;margin-top:5px!important;color:var(--md2-blue-soft)!important;font-size:9px!important;font-weight:900!important;letter-spacing:.13em!important}
.iema-dancer-portal .iema-account-label small{color:#74859c!important;letter-spacing:0!important}
.iema-dancer-portal .iema-page-heading{position:static!important;text-align:center!important;z-index:auto!important}
.iema-dancer-portal .iema-page-heading h1{margin:0 0 6px!important;color:#fff!important;font-size:34px!important;line-height:1!important;letter-spacing:-.035em!important;font-weight:900!important}
.iema-dancer-portal .iema-page-heading p{margin:0!important;color:#92a5bd!important;font-size:12.5px!important;line-height:1.45!important}
.iema-dancer-portal .iema-portal-user{position:relative!important;justify-self:end!important;width:100%!important;max-width:270px!important;z-index:20!important}
.iema-dancer-portal .iema-portal-user summary{
  display:grid!important;grid-template-columns:42px minmax(0,1fr) 16px!important;align-items:center!important;gap:10px!important;
  min-height:58px!important;padding:7px 12px 7px 8px!important;list-style:none!important;cursor:pointer!important;
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border:1px solid #3ac0ff!important;border-radius:15px!important;color:#fff!important;box-shadow:0 12px 28px rgba(13,124,255,.20)!important;
}
.iema-dancer-portal .iema-portal-user summary::-webkit-details-marker{display:none!important}
.iema-dancer-portal .iema-portal-user summary img{width:42px!important;height:42px!important;border-radius:50%!important;object-fit:cover!important;border:2px solid rgba(255,255,255,.9)!important}
.iema-dancer-portal .iema-portal-user summary span{display:grid!important;gap:2px!important;min-width:0!important}
.iema-dancer-portal .iema-portal-user summary strong{color:#fff!important;font-size:12px!important;letter-spacing:.08em!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.iema-dancer-portal .iema-portal-user summary small{color:#fff!important;font-size:9px!important;font-weight:800!important;letter-spacing:.12em!important}
.iema-dancer-portal .iema-portal-user summary b{color:#fff!important}
.iema-dancer-portal .iema-portal-user nav{background:#0d1520!important;border:1px solid #27394e!important;border-radius:13px!important;box-shadow:0 20px 50px rgba(0,0,0,.42)!important}
.iema-dancer-portal .iema-portal-user nav a{color:#edf7ff!important}
.iema-dancer-portal .iema-portal-user nav a:hover{background:#13243a!important;color:#fff!important}

.iema-dancer-portal .iema-role-nav{
  position:static!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%!important;
  display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;
  margin:0 0 16px!important;padding:7px!important;overflow-x:auto!important;
  background:#080d14!important;border:1px solid #1e2a39!important;border-radius:17px!important;box-shadow:none!important;z-index:auto!important;
}
.iema-dancer-portal .iema-role-nav:before{display:none!important}
.iema-dancer-portal .iema-role-nav a{
  position:static!important;display:flex!important;align-items:center!important;justify-content:center!important;min-width:110px!important;min-height:42px!important;
  padding:9px 17px!important;border:1px solid transparent!important;border-radius:12px!important;background:transparent!important;color:#98abc4!important;
  font-size:12.5px!important;font-weight:850!important;text-decoration:none!important;white-space:nowrap!important;
}
.iema-dancer-portal .iema-role-nav a:hover{background:#101a27!important;color:#eaf7ff!important;border-color:#223650!important}
.iema-dancer-portal .iema-role-nav a.active{background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border-color:var(--md2-blue)!important;color:#fff!important;box-shadow:0 10px 24px rgba(13,124,255,.22)!important}
.iema-dancer-portal .iema-role-nav a:before,.iema-dancer-portal .iema-role-nav a:after{display:none!important}

.iema-dancer-portal .iema-dancer-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin:0 0 16px!important}
.iema-dancer-portal .iema-dancer-stats>div{
  padding:20px!important;background:linear-gradient(180deg,#0d1520 0%,#090f17 100%)!important;border:1px solid #203047!important;border-radius:17px!important;color:#fff!important;box-shadow:none!important;
}
.iema-dancer-portal .iema-dancer-stats strong{display:block!important;color:#fff!important;font-size:32px!important;line-height:1!important}
.iema-dancer-portal .iema-dancer-stats small{display:block!important;margin-top:7px!important;color:#8fa3bd!important;font-size:10px!important;font-weight:850!important;letter-spacing:.07em!important;text-transform:uppercase!important}

.iema-dancer-portal .iema-panel,
.iema-dancer-portal .iema-today-panel,
.iema-dancer-portal .iema-recent-panel{
  background:linear-gradient(180deg,#0c131d 0%,#080d14 100%)!important;border:1px solid #203047!important;border-radius:20px!important;color:#f5f8ff!important;box-shadow:none!important;
}
.iema-dancer-portal .iema-today-panel{overflow:hidden!important;padding:0!important}
.iema-dancer-portal .iema-dancer-section-title{padding:24px 26px!important;background:#0b121b!important;border-bottom:1px solid #203047!important}
.iema-dancer-portal .iema-dancer-section-title>span{color:#64d1ff!important}
.iema-dancer-portal .iema-dancer-section-title h2{margin:5px 0 6px!important;color:#fff!important;font-size:30px!important;letter-spacing:-.025em!important}
.iema-dancer-portal .iema-dancer-section-title p{margin:0!important;color:#94a7be!important}
.iema-dancer-portal .iema-empty{margin:18px!important;background:#09111a!important;border:1px dashed #28405a!important;color:#9fb2c9!important;border-radius:14px!important}

.iema-dancer-portal .iema-workout{background:#091019!important;border:0!important;border-radius:0!important;color:#f5f8ff!important}
.iema-dancer-portal .iema-workout+.iema-workout{border-top:8px solid #05090e!important}
.iema-dancer-portal .iema-workout-head{padding:20px 26px!important;background:#080e16!important;border-bottom:1px solid #203047!important;color:#fff!important}
.iema-dancer-portal .iema-workout-head span{color:#64d1ff!important}
.iema-dancer-portal .iema-workout-head h3{color:#fff!important}
.iema-dancer-portal .iema-workout-head small{color:#91a3bb!important}
.iema-dancer-portal .iema-workout-head>b{background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;color:#fff!important;border:1px solid var(--md2-blue)!important}
.iema-dancer-portal .iema-workout-progress{padding:16px 26px!important;background:#0a111a!important}
.iema-dancer-portal .iema-workout-progress>div{background:#1a2737!important}
.iema-dancer-portal .iema-workout-progress>div>span{background:linear-gradient(90deg,var(--md2-blue),var(--md2-blue-strong))!important}
.iema-dancer-portal .iema-workout-progress strong{color:var(--md2-blue-soft)!important}
.iema-dancer-portal .iema-exercise-list{background:#070c12!important;padding:16px!important}
.iema-dancer-portal .iema-exercise-card{
  background:#0d1520!important;border:1px solid #24364c!important;color:#eef6ff!important;border-radius:16px!important;box-shadow:none!important;
}
.iema-dancer-portal .iema-exercise-card h4,.iema-dancer-portal .iema-exercise-card strong{color:#fff!important}
.iema-dancer-portal .iema-exercise-card p,.iema-dancer-portal .iema-exercise-card small{color:#98a9bd!important}
.iema-dancer-portal .iema-exercise-number{background:#0a2232!important;border:1px solid #1f5372!important;color:#6bd4ff!important}
.iema-dancer-portal .iema-exercise-card.is-complete{background:#0d211a!important;border-color:#245b42!important}
.iema-dancer-portal .iema-complete-check{color:#dce9f7!important}
.iema-dancer-portal .iema-complete-check input{accent-color:#149dff!important}
.iema-dancer-portal .iema-proof-preview{background:#081019!important;border-color:#26384c!important;color:#8fa3bb!important}
.iema-dancer-portal .iema-photo-btn,.iema-dancer-portal .iema-howto-btn{
  background:#111d2a!important;border:1px solid #2a4058!important;color:#e8f6ff!important;border-radius:11px!important;
}
.iema-dancer-portal .iema-photo-btn:hover,.iema-dancer-portal .iema-howto-btn:hover{background:#102b40!important;border-color:#2b7eaa!important;color:#fff!important}
.iema-dancer-portal .iema-wellness{padding:20px 26px!important;background:#080e16!important;border-top:1px solid #203047!important}
.iema-dancer-portal .iema-wellness label{color:#dce8f7!important}
.iema-dancer-portal .iema-wellness input,.iema-dancer-portal .iema-wellness textarea{
  background:#070c12!important;border:1px solid #2a3a4e!important;color:#f5f8ff!important;border-radius:10px!important;
}
.iema-dancer-portal .iema-wellness input:focus,.iema-dancer-portal .iema-wellness textarea:focus{border-color:var(--md2-blue)!important;box-shadow:0 0 0 3px rgba(32,183,255,.10)!important;outline:none!important}
.iema-dancer-portal .iema-btn,.iema-dancer-portal button.iema-btn{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border:1px solid var(--md2-blue)!important;color:#fff!important;border-radius:11px!important;box-shadow:0 9px 20px rgba(13,124,255,.18)!important;
}
.iema-dancer-portal .iema-recent-panel{margin-top:16px!important;padding:22px!important}
.iema-dancer-portal .iema-recent-panel h2{color:#fff!important;margin-top:0!important}
.iema-dancer-portal .iema-history>div{background:#09111a!important;border:1px solid #203047!important;border-radius:12px!important;color:#eef6ff!important}
.iema-dancer-portal .iema-history b{color:#68d3ff!important}
.iema-dancer-portal .iema-history span{color:#eef6ff!important}
.iema-dancer-portal .iema-history em{color:#93a6bd!important}

body.iema-dancer-portal-page .iema-howto-dialog{background:linear-gradient(180deg,#0d1520,#070c12)!important;border:1px solid #2a3d54!important;color:#fff!important}
body.iema-dancer-portal-page .iema-howto-close{background:#111b28!important;border-color:#2b4058!important;color:#fff!important}
body.iema-dancer-portal-page .iema-howto-kicker{color:#68d3ff!important}
body.iema-dancer-portal-page .iema-howto-meta>div{background:#09111a!important;border-color:#22364b!important}
body.iema-dancer-portal-page .iema-howto-section{border-color:#213146!important}
body.iema-dancer-portal-page .iema-howto-safety{background:#09111a!important;color:#9fb1c8!important}

@media(max-width:900px){
  .iema-dancer-portal{width:calc(100vw - 20px)!important;margin:10px auto 32px!important}
  .iema-dancer-portal .iema-app-topbar{grid-template-columns:1fr auto!important;grid-template-areas:'brand user' 'heading heading'!important;gap:14px!important;padding:18px!important;min-height:0!important}
  .iema-dancer-portal .iema-shell-brand{grid-area:brand!important}.iema-dancer-portal .iema-page-heading{grid-area:heading!important;text-align:left!important}.iema-dancer-portal .iema-portal-user{grid-area:user!important}
}
@media(max-width:620px){
  body.iema-dancer-portal-page{padding-bottom:0!important}
  .iema-dancer-portal{width:100%!important;margin:0 auto 24px!important;padding:0 10px!important}
  .iema-dancer-portal .iema-app-topbar{margin:0 -10px 10px!important;border-radius:0 0 18px 18px!important;border-left:0!important;border-right:0!important;padding:15px!important}
  .iema-dancer-portal .iema-shell-brand .iema-studio-logo{width:50px!important;height:50px!important;min-width:50px!important;border-radius:14px!important}
  .iema-dancer-portal .iema-studio-name{font-size:17px!important}
  .iema-dancer-portal .iema-page-heading h1{font-size:27px!important}
  .iema-dancer-portal .iema-page-heading p{font-size:12px!important}
  .iema-dancer-portal .iema-portal-user{width:auto!important;min-width:0!important}
  .iema-dancer-portal .iema-portal-user summary{grid-template-columns:40px 14px!important;padding:6px!important;min-height:52px!important}
  .iema-dancer-portal .iema-portal-user summary span{display:none!important}
  .iema-dancer-portal .iema-role-nav{margin:0 0 10px!important;padding:6px!important}
  .iema-dancer-portal .iema-role-nav a{min-width:92px!important;min-height:40px!important;padding:8px 12px!important;font-size:12px!important}
  .iema-dancer-portal .iema-dancer-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
  .iema-dancer-portal .iema-dancer-stats>div{padding:13px 8px!important;text-align:center!important}
  .iema-dancer-portal .iema-dancer-stats strong{font-size:25px!important}
  .iema-dancer-portal .iema-dancer-stats small{font-size:9px!important;letter-spacing:.02em!important}
  .iema-dancer-portal .iema-dancer-section-title,.iema-dancer-portal .iema-workout-head{padding:18px!important}
  .iema-dancer-portal .iema-dancer-section-title h2{font-size:27px!important}
  .iema-dancer-portal .iema-workout-progress{padding:14px 18px!important}
  .iema-dancer-portal .iema-exercise-list{padding:10px!important}
  .iema-dancer-portal .iema-wellness{padding:16px!important}
  .iema-dancer-portal .iema-recent-panel{padding:16px!important}
}


/* v0.11.69 dancer daily dashboard */
.iema-dancer-portal .iema-dancer-dashboard{display:grid!important;gap:16px!important}
.iema-dancer-portal .iema-dancer-dashboard-head{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:24px!important;padding:20px 4px 2px!important}
.iema-dancer-portal .iema-dancer-dashboard-head h2{margin:5px 0!important;font-size:32px!important;color:#fff!important}.iema-dancer-portal .iema-dancer-dashboard-head p{margin:0!important;color:#91a3bb!important}
.iema-dancer-portal .iema-dancer-day-counts{display:flex!important;gap:10px!important}.iema-dancer-portal .iema-dancer-day-counts>div{min-width:105px!important;padding:13px 15px!important;border:1px solid #24364b!important;border-radius:14px!important;background:#09111b!important;text-align:center!important}.iema-dancer-portal .iema-dancer-day-counts strong{display:block!important;font-size:25px!important;color:var(--md2-blue-soft)!important}.iema-dancer-portal .iema-dancer-day-counts small{color:#8fa2ba!important;font-size:9px!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-weight:900!important}
.iema-dancer-portal .iema-dancer-agenda-list{display:grid!important;gap:10px!important}.iema-dancer-portal .iema-dancer-agenda-item{display:grid!important;grid-template-columns:120px minmax(0,1fr)!important;gap:18px!important;align-items:center!important;padding:17px!important;border:1px solid #223248!important;border-radius:16px!important;background:#090f18!important}.iema-dancer-portal .iema-dancer-agenda-item time{display:grid!important;gap:3px!important;padding-right:16px!important;border-right:1px solid #213047!important}.iema-dancer-portal .iema-dancer-agenda-item time strong{font-size:21px!important;color:#fff!important}.iema-dancer-portal .iema-dancer-agenda-item time small{color:#8194ae!important}.iema-dancer-portal .iema-dancer-agenda-item>div>span{display:block!important;margin-bottom:3px!important;color:#62d0ff!important;font-size:9px!important;font-weight:900!important;letter-spacing:.11em!important;text-transform:uppercase!important}.iema-dancer-portal .iema-dancer-agenda-item h3{margin:0 0 4px!important;color:#fff!important;font-size:18px!important}.iema-dancer-portal .iema-dancer-agenda-item p{margin:0!important;color:#a7b5c8!important}.iema-dancer-portal .iema-dancer-agenda-item p b{color:#eaf6ff!important}.iema-dancer-portal .iema-dancer-agenda-item>div>small{display:block!important;margin-top:5px!important;color:#8194ae!important}
.iema-dancer-portal .iema-dancer-collapsible-workout{padding:0!important;overflow:hidden!important}.iema-dancer-portal .iema-dancer-workout-trigger{width:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;padding:19px 20px!important;border:0!important;background:#0a121d!important;color:#fff!important;text-align:left!important;cursor:pointer!important}.iema-dancer-portal .iema-dancer-workout-trigger:hover{background:#0e1b29!important}.iema-dancer-portal .iema-dancer-workout-trigger>span{display:grid!important;gap:3px!important}.iema-dancer-portal .iema-dancer-workout-trigger small{color:var(--md2-blue-soft)!important;font-size:9px!important;font-weight:900!important;letter-spacing:.1em!important;text-transform:uppercase!important}.iema-dancer-portal .iema-dancer-workout-trigger strong{color:#fff!important;font-size:19px!important}.iema-dancer-portal .iema-dancer-workout-trigger em{color:#8fa3bd!important;font-style:normal!important;font-size:12px!important}.iema-dancer-portal .iema-dancer-workout-trigger>b{color:#fff!important;background:linear-gradient(180deg,var(--md2-blue),var(--md2-blue-strong))!important;border:1px solid var(--md2-blue)!important;border-radius:12px!important;padding:10px 13px!important;font-size:11px!important;white-space:nowrap!important}.iema-dancer-portal .iema-dancer-workout-detail{padding:18px 20px 20px!important;border-top:1px solid #223248!important;background:#070c13!important}.iema-dancer-portal .iema-dancer-workout-detail[hidden]{display:none!important}
@media(max-width:680px){.iema-dancer-portal .iema-dancer-dashboard-head{align-items:flex-start!important;flex-direction:column!important}.iema-dancer-portal .iema-dancer-day-counts{width:100%!important}.iema-dancer-portal .iema-dancer-day-counts>div{flex:1!important}.iema-dancer-portal .iema-dancer-agenda-item{grid-template-columns:1fr!important}.iema-dancer-portal .iema-dancer-agenda-item time{border-right:0!important;border-bottom:1px solid #213047!important;padding:0 0 10px!important;display:flex!important;align-items:baseline!important;gap:8px!important}.iema-dancer-portal .iema-dancer-workout-trigger{align-items:flex-start!important;flex-direction:column!important}.iema-dancer-portal .iema-dancer-workout-trigger>b{width:100%!important;text-align:center!important}}


/* v0.11.70 dancer My Account width matches dancer dashboard */
body.iema-account-page .iema-dancer-account-shell{
  width:min(1540px,calc(100vw - 40px))!important;
  max-width:1540px!important;
  min-height:0!important;
  margin:18px auto 44px!important;
  background:transparent!important;
  box-sizing:border-box!important;
}
body.iema-account-page .iema-dancer-account-shell .iema-account-appbar{
  position:relative!important;
  top:auto!important;
  width:100%!important;
  margin:0 0 12px!important;
  border:1px solid #1f3043!important;
  border-radius:22px!important;
  overflow:visible!important;
}
body.iema-account-page .iema-dancer-account-shell .iema-account-content{
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:24px 0 60px!important;
}
body.iema-account-page .iema-dancer-account-shell .iema-account-view-head,
body.iema-account-page .iema-dancer-account-shell .iema-account-grid,
body.iema-account-page .iema-dancer-account-shell .iema-account-success{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
@media(max-width:1100px){
  body.iema-account-page .iema-dancer-account-shell{
    width:calc(100vw - 20px)!important;
    margin:10px auto 32px!important;
  }
}
@media(max-width:620px){
  body.iema-account-page .iema-dancer-account-shell{
    width:100%!important;
    margin:0 auto 24px!important;
    padding:0 10px!important;
  }
  body.iema-account-page .iema-dancer-account-shell .iema-account-appbar{
    margin:0 -10px 10px!important;
    width:calc(100% + 20px)!important;
    border-radius:0 0 18px 18px!important;
    border-left:0!important;
    border-right:0!important;
  }
  body.iema-account-page .iema-dancer-account-shell .iema-account-content{
    padding:20px 0 36px!important;
  }
}

/* v0.11.71 dancer dashboard day navigation */
.iema-dancer-portal .iema-dancer-day-heading{min-width:0!important}
.iema-dancer-portal .iema-dancer-day-nav{display:flex!important;align-items:center!important;gap:12px!important;margin:5px 0 3px!important}
.iema-dancer-portal .iema-dancer-day-nav h2{margin:0!important;min-width:min(360px,50vw)!important;text-align:center!important;color:#fff!important}
.iema-dancer-portal .iema-dancer-day-nav button{width:42px!important;height:42px!important;flex:0 0 42px!important;display:grid!important;place-items:center!important;padding:0!important;border:1px solid #2a425d!important;border-radius:12px!important;background:#101a27!important;color:#77d8ff!important;font-size:29px!important;line-height:1!important;font-weight:700!important;cursor:pointer!important}
.iema-dancer-portal .iema-dancer-day-nav button:hover{background:#14263a!important;border-color:#2e8fc6!important;color:#fff!important}
.iema-dancer-portal .iema-dancer-today-btn{margin-top:9px!important;padding:7px 11px!important;border:1px solid #215170!important;border-radius:999px!important;background:#0c2232!important;color:#77d8ff!important;font-size:11px!important;font-weight:850!important;cursor:pointer!important}
.iema-dancer-portal #today{transition:opacity .16s ease!important}
.iema-dancer-portal #today.is-loading{opacity:.48!important;pointer-events:none!important}
.iema-dancer-portal .iema-dancer-day-load-error{margin-bottom:12px!important;padding:10px 12px!important;border:1px solid #71333c!important;border-radius:12px!important;background:#2a1218!important;color:#ffb4bc!important;font-size:12px!important;font-weight:750!important}
@media(max-width:640px){
 .iema-dancer-portal .iema-dancer-day-nav{gap:8px!important}
 .iema-dancer-portal .iema-dancer-day-nav h2{min-width:0!important;flex:1!important;font-size:24px!important}
 .iema-dancer-portal .iema-dancer-day-nav button{width:40px!important;height:40px!important;flex-basis:40px!important}
}


/* v0.11.72 Parent Portal width sync with Dancer dashboard */
body.iema-parent-portal-page .iema-parent-shell-topnav,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav{
  width:min(1540px,calc(100vw - 40px))!important;
  max-width:1540px!important;
  margin:18px auto 44px!important;
  box-sizing:border-box!important;
  background:transparent!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-appbar,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-account-appbar{
  border-radius:20px!important;
  border:1px solid #1c2532!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-content,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-account-content{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:28px 0 48px!important;
  box-sizing:border-box!important;
}
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-account-content{
  padding-top:28px!important;
}
@media(max-width:900px){
  body.iema-parent-portal-page .iema-parent-shell-topnav,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav{
    width:calc(100vw - 20px)!important;
    margin:10px auto 32px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-content,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-account-content{
    padding:20px 0 36px!important;
  }
}
@media(max-width:560px){
  body.iema-parent-portal-page .iema-parent-shell-topnav,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav{
    width:100%!important;
    margin:0 auto 24px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-appbar,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-account-appbar{
    border-radius:0 0 18px 18px!important;
    border-left:0!important;
    border-right:0!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-content,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-account-content{
    padding:16px 10px 32px!important;
  }
}

/* v0.11.73 Parent Portal uses the shared Owner / Dancer header shell */
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-app-topbar{
  display:grid!important;
  grid-template-columns:minmax(280px,.9fr) minmax(360px,1.2fr) minmax(230px,270px)!important;
  align-items:center!important;
  gap:24px!important;
  min-height:108px!important;
  margin:0 0 12px!important;
  padding:20px 24px!important;
  background:linear-gradient(180deg,#0d1420 0%,#080d14 100%)!important;
  border:1px solid #1e2a39!important;
  border-radius:22px!important;
  box-shadow:0 18px 48px rgba(0,0,0,.34)!important;
  color:#fff!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-shell-brand{
  display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand .iema-studio-logo,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-shell-brand .iema-studio-logo{
  width:66px!important;height:66px!important;min-width:66px!important;object-fit:contain!important;
  border-radius:17px!important;padding:5px!important;background:#111924!important;border:1px solid #2a3a50!important;
  box-shadow:0 10px 24px rgba(0,0,0,.28)!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-studio-name,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-studio-name{
  color:#fff!important;font-size:22px!important;font-weight:950!important;line-height:1.05!important;letter-spacing:-.02em!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-account-label,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-account-label{
  color:#8fa6c4!important;font-size:10px!important;letter-spacing:.12em!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading{text-align:center!important;min-width:0!important}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading h1,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading h1{
  margin:0 0 5px!important;color:#fff!important;font-size:32px!important;letter-spacing:-.035em!important;line-height:1!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading p,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading p{
  margin:0!important;color:#93a4bc!important;font-size:12.5px!important;line-height:1.45!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user{
  justify-self:end!important;width:100%!important;max-width:270px!important;position:relative!important;z-index:100!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user summary,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user summary{
  display:grid!important;grid-template-columns:42px minmax(0,1fr) 14px!important;align-items:center!important;gap:10px!important;
  min-height:58px!important;padding:7px 12px 7px 8px!important;border-radius:16px!important;
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border:1px solid #38beff!important;color:#fff!important;
  box-shadow:0 12px 28px rgba(13,124,255,.25)!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user summary img,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user summary img{
  width:42px!important;height:42px!important;border-radius:50%!important;object-fit:cover!important;border:2px solid rgba(255,255,255,.92)!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user summary strong,
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user summary small,
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user summary b,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user summary strong,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user summary small,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user summary b{color:#fff!important}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user nav,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user nav{
  background:#0d1420!important;border:1px solid #26364a!important;box-shadow:0 20px 46px rgba(0,0,0,.38)!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user nav a,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user nav a{color:#edf6ff!important}

body.iema-parent-portal-page .iema-parent-shared-nav,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-shared-nav{
  position:static!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%!important;
  display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;
  margin:0 0 10px!important;padding:7px!important;overflow-x:auto!important;
  background:#080d14!important;border:1px solid #1e2a39!important;border-radius:17px!important;box-shadow:none!important;z-index:auto!important;
}
body.iema-parent-portal-page .iema-parent-shared-nav:before,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-shared-nav:before{display:none!important}
body.iema-parent-portal-page .iema-parent-shared-nav a,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-shared-nav a{
  position:static!important;display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;
  min-height:42px!important;padding:9px 16px!important;border:1px solid transparent!important;border-radius:12px!important;
  background:transparent!important;color:#9aacc4!important;font-size:12.5px!important;font-weight:850!important;text-decoration:none!important;white-space:nowrap!important;
}
body.iema-parent-portal-page .iema-parent-shared-nav a:hover,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-shared-nav a:hover{
  background:#101a27!important;color:#eaf7ff!important;border-color:#223650!important;
}
body.iema-parent-portal-page .iema-parent-shared-nav a.active,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-shared-nav a.active{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border-color:var(--md2-blue)!important;color:#fff!important;
  box-shadow:0 10px 24px rgba(13,124,255,.24)!important;
}
body.iema-parent-portal-page .iema-parent-shared-nav a:before,
body.iema-parent-portal-page .iema-parent-shared-nav a:after,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-shared-nav a:before,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-shared-nav a:after{display:none!important}

@media(max-width:900px){
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-app-topbar{
    grid-template-columns:1fr auto!important;grid-template-areas:'brand user' 'heading heading'!important;gap:14px!important;padding:18px!important;min-height:0!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-shell-brand{grid-area:brand!important}
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading{grid-area:heading!important;text-align:left!important}
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user{grid-area:user!important}
}
@media(max-width:560px){
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-app-topbar{
    border-radius:0 0 18px 18px!important;border-left:0!important;border-right:0!important;padding:15px!important;margin-bottom:8px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand .iema-studio-logo,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-shell-brand .iema-studio-logo{width:52px!important;height:52px!important;min-width:52px!important;border-radius:14px!important}
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-studio-name,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-studio-name{font-size:17px!important}
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading h1,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading h1{font-size:27px!important}
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user{width:auto!important;min-width:0!important}
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user summary,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user summary{grid-template-columns:40px 14px!important;padding:6px!important;min-height:52px!important}
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user summary span,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user summary span{display:none!important}
  body.iema-parent-portal-page .iema-parent-shared-nav,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-shared-nav{
    border-left:0!important;border-right:0!important;border-radius:0!important;margin:0 0 8px!important;padding:6px 10px!important;
  }
  body.iema-parent-portal-page .iema-parent-shared-nav a,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-shared-nav a{min-height:40px!important;padding:8px 13px!important}
}


/* v0.11.74 remove legacy Parent shell remnants after shared-header migration */
body.iema-parent-portal-page .iema-parent-shell-topnav>.iema-parent-account{display:none!important}
body.iema-parent-portal-page .iema-parent-shell-topnav[data-view="home"] .iema-parent-view-head{display:none!important}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-content{padding-top:18px!important}
@media(max-width:900px){body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-content{padding-top:14px!important}}


/* v0.11.75 combined Parent Home + Dancer profiles */
.iema-parent-shell .iema-parent-home-roster-head{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:18px!important;margin:26px 0 14px!important}
.iema-parent-shell .iema-parent-home-roster-head h2{margin:4px 0 5px!important;color:#fff!important;font-size:24px!important}
.iema-parent-shell .iema-parent-home-roster-head p{margin:0!important;color:#93a4bc!important;font-size:13px!important}
.iema-parent-shell .iema-parent-dancers-view{margin-top:0!important}
@media(max-width:640px){.iema-parent-shell .iema-parent-home-roster-head{align-items:flex-start!important;flex-direction:column!important;margin-top:20px!important}.iema-parent-shell .iema-parent-home-roster-head h2{font-size:22px!important}}


/* v0.11.77 Faculty Portal daily workspace */
html:has(body.iema-staff-portal-page),body.iema-staff-portal-page{background:#030609!important;min-height:100%!important}
body.iema-staff-portal-page .ma-header,body.iema-staff-portal-page .ma-footer,body.iema-staff-portal-page .entry-header,body.iema-staff-portal-page .entry-title,body.iema-staff-portal-page .wp-block-post-title,body.iema-staff-portal-page article>h1:first-child{display:none!important}
body.iema-staff-portal-page main,body.iema-staff-portal-page .ma-wrap,body.iema-staff-portal-page .ma-page,body.iema-staff-portal-page article,body.iema-staff-portal-page .entry-content{max-width:none!important;width:100%!important;margin:0!important;padding:0!important;background:#030609!important}
.iema-faculty-portal{width:min(1540px,calc(100vw - 40px))!important;max-width:1540px!important;margin:18px auto 44px!important;padding:0!important;background:transparent!important;color:#f5f8ff!important;box-sizing:border-box!important}
.iema-faculty-portal .iema-app-topbar{position:relative!important;display:grid!important;grid-template-columns:minmax(260px,1fr) minmax(360px,1.35fr) minmax(230px,1fr)!important;align-items:center!important;gap:24px!important;min-height:108px!important;padding:20px 24px!important;margin:0 0 12px!important;background:linear-gradient(135deg,#0b131e 0%,#081019 70%,#0a1d2b 100%)!important;border:1px solid #203147!important;border-radius:22px!important;color:#fff!important;box-shadow:none!important}
.iema-faculty-portal .iema-shell-brand{position:static!important;width:auto!important;display:flex!important;align-items:center!important;gap:15px!important;color:#fff!important;z-index:auto!important}.iema-faculty-portal .iema-shell-brand .iema-studio-logo{width:64px!important;height:64px!important;min-width:64px!important;border-radius:17px!important;object-fit:contain!important;background:#111a26!important;border:1px solid #31445d!important;padding:5px!important}.iema-faculty-portal .iema-studio-name{color:#fff!important;font-size:22px!important;line-height:1.05!important;font-weight:900!important;letter-spacing:-.02em!important}.iema-faculty-portal .iema-account-label{display:block!important;margin-top:5px!important;color:var(--md2-blue-soft)!important;font-size:9px!important;font-weight:900!important;letter-spacing:.13em!important}.iema-faculty-portal .iema-account-label small{color:#74859c!important;letter-spacing:0!important}.iema-faculty-portal .iema-page-heading{position:static!important;text-align:center!important;z-index:auto!important}.iema-faculty-portal .iema-page-heading h1{margin:0 0 6px!important;color:#fff!important;font-size:34px!important;line-height:1!important;letter-spacing:-.035em!important;font-weight:900!important}.iema-faculty-portal .iema-page-heading p{margin:0!important;color:#92a5bd!important;font-size:12.5px!important;line-height:1.45!important}.iema-faculty-portal .iema-portal-user{position:relative!important;justify-self:end!important;width:100%!important;max-width:270px!important;z-index:20!important}.iema-faculty-portal .iema-portal-user summary{display:grid!important;grid-template-columns:42px minmax(0,1fr) 16px!important;align-items:center!important;gap:10px!important;min-height:58px!important;padding:7px 12px 7px 8px!important;list-style:none!important;cursor:pointer!important;background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border:1px solid #3ac0ff!important;border-radius:15px!important;color:#fff!important;box-shadow:0 12px 28px rgba(13,124,255,.20)!important}.iema-faculty-portal .iema-portal-user summary img{width:42px!important;height:42px!important;border-radius:50%!important;object-fit:cover!important;border:2px solid rgba(255,255,255,.9)!important}.iema-faculty-portal .iema-portal-user summary strong,.iema-faculty-portal .iema-portal-user summary small,.iema-faculty-portal .iema-portal-user summary b{color:#fff!important}.iema-faculty-portal .iema-portal-user nav{background:#0d1520!important;border:1px solid #27394e!important}.iema-faculty-portal .iema-portal-user nav a{color:#edf7ff!important}
.iema-faculty-portal .iema-role-nav{position:static!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;margin:0 0 16px!important;padding:7px!important;overflow-x:auto!important;background:#080d14!important;border:1px solid #1e2a39!important;border-radius:17px!important;box-shadow:none!important;z-index:auto!important}.iema-faculty-portal .iema-role-nav:before{display:none!important}.iema-faculty-portal .iema-role-nav a{position:static!important;display:flex!important;align-items:center!important;justify-content:center!important;min-width:110px!important;min-height:42px!important;padding:9px 17px!important;border:1px solid transparent!important;border-radius:12px!important;background:transparent!important;color:#98abc4!important;font-size:12.5px!important;font-weight:850!important;text-decoration:none!important;white-space:nowrap!important}.iema-faculty-portal .iema-role-nav a:hover{background:#101a27!important;color:#eaf7ff!important;border-color:#223650!important}.iema-faculty-portal .iema-role-nav a.active{background:linear-gradient(180deg,var(--md2-blue),var(--md2-blue-strong))!important;border-color:var(--md2-blue)!important;color:#fff!important;box-shadow:0 10px 24px rgba(13,124,255,.22)!important}.iema-faculty-portal .iema-role-nav a:before,.iema-faculty-portal .iema-role-nav a:after{display:none!important}
.iema-faculty-portal .iema-faculty-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin:0 0 16px!important}.iema-faculty-portal .iema-faculty-stats>div{padding:20px!important;background:linear-gradient(180deg,#0d1520,#090f17)!important;border:1px solid #203047!important;border-radius:17px!important;color:#fff!important}.iema-faculty-portal .iema-faculty-stats strong{font-size:32px!important;color:#fff!important}.iema-faculty-portal .iema-faculty-stats small{color:#8fa3bd!important}
.iema-faculty-portal .iema-panel{background:linear-gradient(180deg,#0d1520,#080d14)!important;border:1px solid #203047!important;border-radius:18px!important;color:#f5f8ff!important;box-shadow:none!important}.iema-faculty-portal h2,.iema-faculty-portal h3,.iema-faculty-portal strong{color:#fff!important}.iema-faculty-portal p,.iema-faculty-portal small{color:#93a6bd!important}.iema-faculty-portal .iema-kicker{color:#64d1ff!important}
.iema-faculty-day{display:grid!important;gap:16px!important;margin-bottom:16px!important;transition:opacity .16s ease!important}.iema-faculty-day.is-loading{opacity:.45!important;pointer-events:none!important}.iema-faculty-day-head{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:24px!important;padding:18px 4px 0!important}.iema-faculty-day-head h2{margin:0!important;font-size:32px!important}.iema-faculty-day-head p{margin:4px 0 0!important}.iema-faculty-day-nav{display:flex!important;align-items:center!important;gap:12px!important;margin:5px 0 3px!important}.iema-faculty-day-nav h2{min-width:min(380px,50vw)!important;text-align:center!important}.iema-faculty-day-nav button{width:42px!important;height:42px!important;display:grid!important;place-items:center!important;padding:0!important;border:1px solid #2a425d!important;border-radius:12px!important;background:#101a27!important;color:#77d8ff!important;font-size:29px!important;cursor:pointer!important}.iema-faculty-today-btn{margin-top:9px!important;padding:7px 11px!important;border:1px solid #215170!important;border-radius:999px!important;background:#0c2232!important;color:#77d8ff!important;font-size:11px!important;font-weight:850!important;cursor:pointer!important}.iema-faculty-day-count{min-width:120px!important;padding:15px 18px!important;border:1px solid #24364b!important;border-radius:14px!important;background:#09111b!important;text-align:center!important}.iema-faculty-day-count strong{display:block!important;font-size:28px!important;color:var(--md2-blue-soft)!important}.iema-faculty-day-count small{font-size:9px!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-weight:900!important}.iema-faculty-day-load-error{margin:0 0 12px!important;padding:10px 12px!important;border:1px solid #71333c!important;border-radius:12px!important;background:#2a1218!important;color:#ffb4bc!important}
.iema-faculty-agenda-list{display:grid!important;gap:10px!important}.iema-faculty-agenda-item{display:grid!important;grid-template-columns:120px minmax(0,1fr)!important;gap:18px!important;align-items:center!important;padding:17px!important;border:1px solid #223248!important;border-radius:16px!important;background:#090f18!important}.iema-faculty-agenda-item time{display:grid!important;gap:3px!important;padding-right:16px!important;border-right:1px solid #213047!important}.iema-faculty-agenda-item time strong{font-size:21px!important;color:#fff!important}.iema-faculty-agenda-item time small{color:#8194ae!important}.iema-faculty-agenda-copy>span{display:block!important;color:#62d0ff!important;font-size:9px!important;font-weight:900!important;letter-spacing:.1em!important;text-transform:uppercase!important}.iema-faculty-agenda-copy h3{margin:4px 0!important;font-size:19px!important}.iema-faculty-agenda-copy p{margin:0!important}.iema-faculty-agenda-copy p b{color:#fff!important}.iema-faculty-agenda-copy>small{display:block!important;margin-top:5px!important}
.iema-faculty-upcoming-list{display:grid!important;gap:8px!important}.iema-faculty-upcoming-list>button{width:100%!important;display:grid!important;grid-template-columns:135px minmax(0,1fr) 22px!important;align-items:center!important;gap:14px!important;padding:13px 14px!important;border:1px solid #223248!important;border-radius:13px!important;background:#09111a!important;color:#fff!important;text-align:left!important;cursor:pointer!important}.iema-faculty-upcoming-list>button:hover{background:#0e1926!important;border-color:#2e759e!important}.iema-faculty-upcoming-list time{color:#fff!important;font-weight:800!important}.iema-faculty-upcoming-list time small{display:block!important;margin-top:2px!important}.iema-faculty-upcoming-list span{display:grid!important;gap:3px!important}.iema-faculty-upcoming-list b{color:var(--md2-blue-soft)!important;font-size:22px!important}
.iema-faculty-role-summary{display:flex!important;gap:8px!important}.iema-faculty-role-summary span{padding:7px 10px!important;border:1px solid #24415a!important;border-radius:999px!important;background:#0b2233!important;color:#72d6ff!important;font-size:10px!important;font-weight:850!important}.iema-faculty-group-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}.iema-faculty-group-card{padding:18px!important;border:1px solid #223248!important;border-radius:16px!important;background:#09111a!important}.iema-faculty-group-card-head{display:flex!important;justify-content:space-between!important;gap:10px!important}.iema-faculty-group-card-head span{color:#66d1ff!important;font-size:9px!important;font-weight:900!important;letter-spacing:.1em!important}.iema-faculty-group-card-head b{padding:5px 8px!important;border-radius:999px!important;background:#10283a!important;color:#7ad9ff!important;font-size:9px!important}.iema-faculty-group-card h3{margin:12px 0 5px!important;font-size:20px!important}.iema-faculty-group-card p{margin:0!important}.iema-faculty-next{display:grid!important;gap:4px!important;margin:15px 0!important;padding:12px!important;border:1px solid #213449!important;border-radius:12px!important;background:#070d14!important}.iema-faculty-next small{color:#64d1ff!important;text-transform:uppercase!important;font-size:8px!important;font-weight:900!important;letter-spacing:.1em!important}.iema-faculty-next span{color:#8fa3bb!important;font-size:11px!important}.iema-faculty-next.muted strong{color:#8294aa!important}.iema-faculty-group-card details{border-top:1px solid #203047!important;padding-top:12px!important}.iema-faculty-group-card summary{cursor:pointer!important;color:#dcecff!important;font-weight:800!important}.iema-faculty-mini-roster{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin-top:10px!important}.iema-faculty-mini-roster span{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important}.iema-faculty-mini-roster img{width:34px!important;height:34px!important;border-radius:50%!important;object-fit:cover!important}.iema-faculty-mini-roster b{font-size:11px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.iema-faculty-notes-panel{margin-top:16px!important}.iema-faculty-note-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}.iema-faculty-note-card{padding:16px!important;border:1px solid #223248!important;border-radius:15px!important;background:#09111a!important}.iema-faculty-note-card header{display:flex!important;align-items:center!important;gap:11px!important;margin-bottom:12px!important}.iema-faculty-note-card header img{width:50px!important;height:50px!important;border-radius:14px!important;object-fit:cover!important;border:1px solid #2b4964!important}.iema-faculty-note-card header div{display:grid!important;gap:3px!important}.iema-faculty-note-card textarea{width:100%!important;box-sizing:border-box!important;resize:vertical!important;background:#060b11!important;border:1px solid #2a3b50!important;border-radius:11px!important;color:#f3f8ff!important;padding:11px!important}.iema-faculty-note-card footer{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important;margin-top:10px!important}.iema-faculty-note-state{grid-column:1/-1!important;color:#73d7ff!important;font-size:10px!important}.iema-faculty-portal .iema-btn{background:linear-gradient(180deg,var(--md2-blue),var(--md2-blue-strong))!important;border:1px solid var(--md2-blue)!important;color:#fff!important}
@media(max-width:1050px){.iema-faculty-portal{width:calc(100vw - 20px)!important;margin:10px auto 32px!important}.iema-faculty-portal .iema-app-topbar{grid-template-columns:1fr auto!important;grid-template-areas:'brand user' 'heading heading'!important;gap:14px!important;padding:18px!important}.iema-faculty-portal .iema-shell-brand{grid-area:brand!important}.iema-faculty-portal .iema-page-heading{grid-area:heading!important;text-align:left!important}.iema-faculty-portal .iema-portal-user{grid-area:user!important}.iema-faculty-group-grid,.iema-faculty-note-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){body.iema-staff-portal-page{padding-bottom:0!important}.iema-faculty-portal{width:100%!important;margin:0 auto 24px!important;padding:0 10px!important}.iema-faculty-portal .iema-app-topbar{margin:0 -10px 10px!important;border-radius:0 0 18px 18px!important;border-left:0!important;border-right:0!important;padding:15px!important}.iema-faculty-portal .iema-shell-brand .iema-studio-logo{width:50px!important;height:50px!important;min-width:50px!important}.iema-faculty-portal .iema-studio-name{font-size:17px!important}.iema-faculty-portal .iema-page-heading h1{font-size:27px!important}.iema-faculty-portal .iema-portal-user{width:auto!important;min-width:0!important}.iema-faculty-portal .iema-portal-user summary{grid-template-columns:40px 14px!important;padding:6px!important;min-height:52px!important}.iema-faculty-portal .iema-portal-user summary span{display:none!important}.iema-faculty-portal .iema-role-nav{padding:6px!important}.iema-faculty-portal .iema-role-nav a{min-width:92px!important;padding:8px 12px!important}.iema-faculty-portal .iema-faculty-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}.iema-faculty-portal .iema-faculty-stats>div{padding:13px 8px!important;text-align:center!important}.iema-faculty-day-head{align-items:flex-start!important;flex-direction:column!important}.iema-faculty-day-count{width:100%!important;box-sizing:border-box!important}.iema-faculty-day-nav{gap:8px!important;width:100%!important}.iema-faculty-day-nav h2{min-width:0!important;flex:1!important;font-size:23px!important}.iema-faculty-agenda-item{grid-template-columns:1fr!important}.iema-faculty-agenda-item time{display:flex!important;align-items:baseline!important;gap:8px!important;border-right:0!important;border-bottom:1px solid #213047!important;padding:0 0 10px!important}.iema-faculty-upcoming-list>button{grid-template-columns:105px minmax(0,1fr) 18px!important}.iema-faculty-group-grid,.iema-faculty-note-grid{grid-template-columns:1fr!important}.iema-faculty-mini-roster{grid-template-columns:1fr 1fr!important}}

/* v0.11.78 security + audit architecture */
.iema-owner-shell .iema-audit-panel{display:grid!important;gap:18px!important}
.iema-owner-shell .iema-audit-filters{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr)) auto!important;gap:10px!important;align-items:end!important;padding:14px!important;border:1px solid #223247!important;border-radius:16px!important;background:#080e16!important}
.iema-owner-shell .iema-audit-filters label{display:grid!important;gap:6px!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.07em!important;color:#7f93ad!important}
.iema-owner-shell .iema-audit-filters input,.iema-owner-shell .iema-audit-filters select{min-width:0!important;width:100%!important}
.iema-owner-shell .iema-audit-list{display:grid!important;gap:8px!important}
.iema-owner-shell .iema-audit-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:16px!important;align-items:start!important;padding:14px 15px!important;border:1px solid #223044!important;border-radius:14px!important;background:#091019!important}
.iema-owner-shell .iema-audit-row>div{display:grid!important;gap:5px!important}
.iema-owner-shell .iema-audit-row strong{font-size:13px!important;color:#f5f8ff!important}
.iema-owner-shell .iema-audit-row small{font-size:10.5px!important;color:#8397b0!important}
.iema-owner-shell .iema-audit-row details{min-width:120px!important}
.iema-owner-shell .iema-audit-row summary{cursor:pointer!important;color:var(--md2-blue-soft)!important;font-size:11px!important;font-weight:800!important}
.iema-owner-shell .iema-audit-change{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin-top:10px!important}
.iema-owner-shell .iema-audit-change span{display:grid!important;gap:6px!important;padding:10px!important;background:#070c12!important;border:1px solid #1c2a3a!important;border-radius:10px!important}
.iema-owner-shell .iema-audit-change b{font-size:9px!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:var(--studio-accent)!important}
.iema-owner-shell .iema-audit-change code{white-space:pre-wrap!important;overflow-wrap:anywhere!important;color:#b8c8db!important;background:transparent!important;padding:0!important;font-size:10.5px!important}
@media(max-width:1100px){.iema-owner-shell .iema-audit-filters{grid-template-columns:repeat(3,minmax(0,1fr))!important}.iema-owner-shell .iema-audit-filters .iema-btn{width:100%!important}}
@media(max-width:640px){.iema-owner-shell .iema-audit-filters{grid-template-columns:1fr 1fr!important}.iema-owner-shell .iema-audit-row{grid-template-columns:1fr!important}.iema-owner-shell .iema-audit-change{grid-template-columns:1fr!important}}


/* v0.11.79 password strength + complexity */
.iema-password-policy{display:grid!important;gap:7px!important;margin:8px 0 4px!important;padding:12px 13px!important;border:1px solid #26384d!important;border-radius:12px!important;background:#09111a!important;color:#dce9f8!important}
.iema-password-policy strong{font-size:11.5px!important;color:#eaf5ff!important}.iema-password-policy small{font-size:10.5px!important;line-height:1.45!important;color:#91a5bd!important}.iema-password-policy em{min-height:15px!important;font-size:10.5px!important;font-style:normal!important;font-weight:800!important}.iema-password-policy em.is-match{color:#78e0a6!important}.iema-password-policy em.is-mismatch{color:#ff9da5!important}
.iema-password-strength{height:5px!important;overflow:hidden!important;border-radius:999px!important;background:#172231!important}.iema-password-strength span{display:block!important;width:0;height:100%!important;border-radius:inherit!important;background:#ef6b73!important;transition:width .18s ease,background .18s ease}.iema-password-strength span[data-score="3"]{background:#e9bd58!important}.iema-password-strength span[data-score="4"],.iema-password-strength span[data-score="5"]{background:#51cc91!important}
.login .iema-password-policy-login{margin:12px 0!important;padding:12px!important;border-left:4px solid #2271b1!important;background:#fff!important}


/* v0.11.80 shared mobile portal navigation */
.iema-mobile-menu-toggle{display:none!important}
.iema-mobile-nav-drawer[hidden]{display:none!important}
@media(max-width:760px){
  body.iema-mobile-nav-open{overflow:hidden!important}
  .iema-app .iema-primary-nav,
  .iema-app .iema-role-nav{display:none!important}
  .iema-app .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) auto auto!important;
    grid-template-areas:'brand menu user' 'heading heading heading'!important;
    gap:12px!important;
    align-items:center!important;
  }
  .iema-app .iema-shell-brand{grid-area:brand!important;margin:0!important;min-width:0!important}
  .iema-app .iema-page-heading{grid-area:heading!important;text-align:left!important;padding-top:4px!important}
  .iema-app .iema-portal-user{grid-area:user!important;justify-self:end!important;min-width:0!important;width:auto!important}
  .iema-app .iema-mobile-menu-toggle{
    grid-area:menu!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
    min-height:46px!important;padding:9px 13px!important;border:1px solid #2b4057!important;border-radius:13px!important;
    background:#101824!important;color:#eef8ff!important;box-shadow:none!important;font:inherit!important;cursor:pointer!important;
  }
  .iema-app .iema-mobile-menu-toggle span{font-size:18px!important;line-height:1!important;color:var(--md2-blue-soft)!important}
  .iema-app .iema-mobile-menu-toggle b{font-size:12px!important;font-weight:850!important;color:#fff!important}
  .iema-app .iema-mobile-menu-toggle:focus-visible{outline:2px solid var(--md2-blue)!important;outline-offset:2px!important}
  .iema-app .iema-portal-user summary{min-width:48px!important;width:48px!important;height:48px!important;padding:4px!important;display:grid!important;place-items:center!important}
  .iema-app .iema-portal-user summary img{width:38px!important;height:38px!important}
  .iema-app .iema-portal-user summary span,
  .iema-app .iema-portal-user summary b{display:none!important}
  .iema-mobile-nav-drawer{
    position:fixed!important;inset:0!important;z-index:2147483000!important;display:block!important;
  }
  .iema-mobile-nav-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.76)!important;backdrop-filter:blur(9px)!important}
  .iema-mobile-nav-panel{
    position:absolute!important;top:0!important;right:0!important;bottom:0!important;width:min(88vw,380px)!important;
    display:flex!important;flex-direction:column!important;background:linear-gradient(180deg,#0b121c 0%,#070b11 100%)!important;
    border-left:1px solid #26384c!important;box-shadow:-28px 0 80px rgba(0,0,0,.48)!important;color:#fff!important;
  }
  .iema-mobile-nav-panel>header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:20px!important;border-bottom:1px solid #202e3f!important}
  .iema-mobile-nav-panel>header div{display:grid!important;gap:3px!important}
  .iema-mobile-nav-panel>header span{color:var(--md2-blue-soft)!important;font-size:9px!important;font-weight:950!important;letter-spacing:.13em!important}
  .iema-mobile-nav-panel>header strong{color:#fff!important;font-size:22px!important}
  .iema-mobile-nav-panel>header button{width:46px!important;height:46px!important;border-radius:13px!important;border:1px solid #2b4057!important;background:#111b28!important;color:#fff!important;font-size:29px!important;line-height:1!important;cursor:pointer!important}
  .iema-mobile-nav-content{flex:1!important;min-height:0!important;overflow-y:auto!important;padding:18px 14px 28px!important;overscroll-behavior:contain!important}
  .iema-mobile-nav-section{display:grid!important;gap:8px!important;margin-bottom:22px!important}
  .iema-mobile-nav-section>small{padding:0 8px!important;color:#71859e!important;font-size:9px!important;font-weight:950!important;letter-spacing:.13em!important;text-transform:uppercase!important}
  .iema-mobile-nav-links{display:grid!important;gap:6px!important}
  .iema-mobile-nav-links a{
    display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:52px!important;padding:12px 14px!important;
    border:1px solid transparent!important;border-radius:13px!important;background:#0d151f!important;color:#b6c5d7!important;text-decoration:none!important;
    font-size:14px!important;font-weight:800!important;
  }
  .iema-mobile-nav-links a:after{content:'›'!important;color:#60748e!important;font-size:22px!important;font-weight:500!important}
  .iema-mobile-nav-links a.active{background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border-color:var(--md2-blue)!important;color:#fff!important;box-shadow:0 10px 24px rgba(13,124,255,.22)!important}
  .iema-mobile-nav-links a.active:after{color:#fff!important}
}
@media(max-width:430px){
  .iema-app .iema-app-topbar{gap:9px!important;padding-left:13px!important;padding-right:13px!important}
  .iema-app .iema-mobile-menu-toggle{width:46px!important;padding:0!important}
  .iema-app .iema-mobile-menu-toggle b{display:none!important}
  .iema-mobile-nav-panel{width:94vw!important}
}


/* v0.11.81 studio-branded authentication */
body.page-login,body:has(.iema-login-wrap){background:#05080d!important;color:#f5f8ff!important}
body:has(.iema-login-wrap) .ma-header,body:has(.iema-login-wrap) .ma-footer,body:has(.iema-login-wrap) article>h1:first-child{display:none!important}
body:has(.iema-login-wrap) .ma-wrap,body:has(.iema-login-wrap) .ma-page,body:has(.iema-login-wrap) article,body:has(.iema-login-wrap) .entry-content{max-width:none!important;width:100%!important;margin:0!important;padding:0!important;background:#05080d!important}
.iema-login-wrap{width:min(1080px,calc(100% - 32px))!important;max-width:1080px!important;margin:52px auto!important;border:1px solid #1e2c3d!important;border-radius:26px!important;background:#080d14!important;box-shadow:0 30px 90px rgba(0,0,0,.48)!important}
.iema-login-brand{position:relative!important;display:flex!important;flex-direction:column!important;justify-content:center!important;background:linear-gradient(145deg,#08111c 0%,#0b1b2b 68%,#08304b 100%)!important;padding:58px!important}
.iema-login-studio-logo{width:88px!important;height:88px!important;object-fit:contain!important;border-radius:20px!important;background:#0a111a!important;border:1px solid #29415a!important;padding:8px!important;margin-bottom:24px!important}
.iema-login-brand span{color:#68d2ff!important}.iema-login-brand h1{color:#fff!important;font-size:clamp(34px,4vw,50px)!important;line-height:1!important;letter-spacing:-.04em!important}.iema-login-brand p{max-width:560px!important;color:#9eb0c8!important;font-size:16px!important;line-height:1.6!important}
.iema-login-card{display:flex!important;flex-direction:column!important;justify-content:center!important;background:#0a1018!important;color:#edf5ff!important;padding:48px!important}
.iema-login-card-head{margin-bottom:22px!important}.iema-login-card-head span{color:var(--md2-blue-soft)!important;font-size:10px!important;font-weight:900!important;letter-spacing:.12em!important}.iema-login-card-head h2{margin:5px 0!important;color:#fff!important;font-size:28px!important}.iema-login-card-head p{margin:0!important;color:#8fa2ba!important;font-size:13px!important}
.iema-login-card label{color:#dce8f7!important}.iema-login-card input[type=text],.iema-login-card input[type=password]{background:#080d14!important;border:1px solid #27384c!important;color:#fff!important;min-height:48px!important}.iema-login-card input:focus{outline:none!important;border-color:#29b9ff!important;box-shadow:0 0 0 3px rgba(32,183,255,.12)!important}.iema-login-card input[type=submit]{min-height:48px!important;background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border:1px solid var(--md2-blue)!important;border-radius:12px!important;color:#fff!important}.iema-login-card .login-remember label{display:flex!important;align-items:center!important;gap:8px!important}.iema-login-card .login-remember input{width:18px!important;height:18px!important}.iema-login-help{display:inline-block!important;margin-top:16px!important;color:#6fd4ff!important;text-decoration:none!important;font-weight:750!important}.iema-login-status{margin:0 0 16px!important;padding:11px 13px!important;border:1px solid #285f45!important;border-radius:11px!important;background:#0d291c!important;color:#aff2c8!important;font-size:12px!important;font-weight:750!important}.iema-login-status-warning{border-color:#704b25!important;background:#2b1d0e!important;color:#ffd4a3!important}
@media(max-width:800px){.iema-login-wrap{width:calc(100% - 20px)!important;margin:10px auto 24px!important;border-radius:20px!important}.iema-login-brand{padding:34px 26px!important}.iema-login-card{padding:30px 24px!important}.iema-login-studio-logo{width:70px!important;height:70px!important;margin-bottom:18px!important}.iema-login-brand h1{font-size:34px!important}}


/* v0.11.82 deterministic full MyDancer login redesign */
html:has(body.iema-login-page),
body.iema-login-page{
  margin:0!important;
  min-height:100%!important;
  background:#05080d!important;
  color:#f5f8ff!important;
}
body.iema-login-page .ma-header,
body.iema-login-page .ma-footer,
body.iema-login-page .entry-header,
body.iema-login-page .entry-title,
body.iema-login-page .wp-block-post-title,
body.iema-login-page article>h1:first-child{display:none!important}
body.iema-login-page main,
body.iema-login-page .ma-wrap,
body.iema-login-page .ma-page,
body.iema-login-page article,
body.iema-login-page .entry-content,
body.iema-login-page .site-main,
body.iema-login-page #primary,
body.iema-login-page #content{
  width:100%!important;
  max-width:none!important;
  min-height:100vh!important;
  margin:0!important;
  padding:0!important;
  background:#05080d!important;
}
body.iema-login-page .iema-login-wrap{
  width:min(1180px,calc(100vw - 48px))!important;
  max-width:1180px!important;
  min-height:680px!important;
  margin:32px auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr)!important;
  overflow:hidden!important;
  border:1px solid #213247!important;
  border-radius:28px!important;
  background:#080d14!important;
  box-shadow:0 32px 100px rgba(0,0,0,.52)!important;
}
body.iema-login-page .iema-login-brand{
  position:relative!important;
  padding:68px 64px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 20% 15%,rgba(32,183,255,.18),transparent 34%),
    radial-gradient(circle at 80% 80%,rgba(13,124,255,.22),transparent 38%),
    linear-gradient(145deg,#0b1420 0%,#07101a 54%,#071c2a 100%)!important;
}
body.iema-login-page .iema-login-brand:before{
  content:'MYDANCER'!important;
  position:absolute!important;
  top:32px!important;
  right:-26px!important;
  color:rgba(255,255,255,.025)!important;
  font-size:clamp(70px,10vw,150px)!important;
  font-weight:950!important;
  letter-spacing:-.06em!important;
  line-height:1!important;
  pointer-events:none!important;
}
body.iema-login-page .iema-login-studio-logo{
  width:108px!important;
  height:108px!important;
  object-fit:contain!important;
  border-radius:24px!important;
  padding:10px!important;
  margin:0 0 30px!important;
  background:#080d14!important;
  border:1px solid #2a4863!important;
  box-shadow:0 18px 45px rgba(0,0,0,.3)!important;
}
body.iema-login-page .iema-login-brand>span{
  position:relative!important;
  z-index:1!important;
  color:var(--md2-blue-soft)!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.18em!important;
}
body.iema-login-page .iema-login-brand h1{
  position:relative!important;
  z-index:1!important;
  max-width:680px!important;
  margin:9px 0 18px!important;
  color:#fff!important;
  font-size:clamp(42px,5vw,66px)!important;
  line-height:.95!important;
  font-weight:950!important;
  letter-spacing:-.055em!important;
}
body.iema-login-page .iema-login-brand p{
  position:relative!important;
  z-index:1!important;
  max-width:600px!important;
  margin:0!important;
  color:#9fb0c6!important;
  font-size:16px!important;
  line-height:1.65!important;
}
body.iema-login-page .iema-login-card{
  padding:68px 56px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  background:linear-gradient(180deg,#0b111a 0%,#080d14 100%)!important;
  color:#edf5ff!important;
  border-left:1px solid #1f2c3d!important;
}
body.iema-login-page .iema-login-card-head{margin:0 0 28px!important}
body.iema-login-page .iema-login-card-head>span{
  color:var(--md2-blue-soft)!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.14em!important;
}
body.iema-login-page .iema-login-card-head h2{
  margin:7px 0 7px!important;
  color:#fff!important;
  font-size:34px!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
}
body.iema-login-page .iema-login-card-head p{margin:0!important;color:#899bb2!important;font-size:13px!important}
body.iema-login-page .iema-login-card form{display:grid!important;gap:16px!important}
body.iema-login-page .iema-login-card form p{margin:0!important}
body.iema-login-page .iema-login-card label{display:block!important;margin-bottom:7px!important;color:#dbe7f6!important;font-size:12px!important;font-weight:800!important}
body.iema-login-page .iema-login-card input[type=text],
body.iema-login-page .iema-login-card input[type=password]{
  width:100%!important;
  min-height:52px!important;
  padding:12px 14px!important;
  border:1px solid #2a3a4f!important;
  border-radius:12px!important;
  background:#070c12!important;
  color:#fff!important;
  font-size:16px!important;
  box-shadow:none!important;
}
body.iema-login-page .iema-login-card input[type=text]:focus,
body.iema-login-page .iema-login-card input[type=password]:focus{
  outline:none!important;
  border-color:#29b9ff!important;
  box-shadow:0 0 0 3px rgba(32,183,255,.13)!important;
}
body.iema-login-page .iema-login-card input[type=submit]{
  width:100%!important;
  min-height:52px!important;
  margin-top:5px!important;
  border:1px solid #3ac0ff!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
  cursor:pointer!important;
  box-shadow:0 12px 30px rgba(13,124,255,.25)!important;
}
body.iema-login-page .iema-login-card input[type=submit]:hover{background:linear-gradient(180deg,#46c7ff 0%,#268fff 100%)!important}
body.iema-login-page .iema-login-card .login-remember label{display:flex!important;align-items:center!important;gap:9px!important;color:#95a6bb!important;font-size:12px!important}
body.iema-login-page .iema-login-card .login-remember input{width:18px!important;height:18px!important;margin:0!important}
body.iema-login-page .iema-login-help{margin-top:20px!important;color:#6fd4ff!important;font-size:12px!important;font-weight:800!important;text-decoration:none!important}
body.iema-login-page .iema-login-help:hover{color:#a7e8ff!important}
@media(max-width:900px){
  body.iema-login-page .iema-login-wrap{grid-template-columns:1fr!important;width:calc(100vw - 28px)!important;min-height:0!important;margin:14px auto 28px!important}
  body.iema-login-page .iema-login-brand{min-height:330px!important;padding:42px 34px!important;justify-content:flex-end!important}
  body.iema-login-page .iema-login-card{padding:40px 34px!important;border-left:0!important;border-top:1px solid #1f2c3d!important}
  body.iema-login-page .iema-login-studio-logo{width:82px!important;height:82px!important;margin-bottom:22px!important}
  body.iema-login-page .iema-login-brand h1{font-size:42px!important}
}
@media(max-width:560px){
  body.iema-login-page .iema-login-wrap{width:100vw!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  body.iema-login-page .iema-login-brand{min-height:290px!important;padding:32px 22px!important}
  body.iema-login-page .iema-login-card{padding:34px 22px 44px!important}
  body.iema-login-page .iema-login-brand h1{font-size:36px!important}
  body.iema-login-page .iema-login-brand p{font-size:14px!important}
}


/* v0.11.83 premium studio-branded MyDancer login */
body.iema-login-page .iema-login-brand{
  justify-content:space-between!important;
  min-height:680px!important;
  padding:46px 58px!important;
}
body.iema-login-page .iema-login-brand:after{
  content:''!important;
  position:absolute!important;
  width:330px!important;
  height:330px!important;
  right:-120px!important;
  bottom:-100px!important;
  border:1px solid rgba(103,210,255,.12)!important;
  border-radius:50%!important;
  box-shadow:0 0 0 52px rgba(103,210,255,.025),0 0 0 104px rgba(103,210,255,.018)!important;
  pointer-events:none!important;
}
body.iema-login-page .iema-login-brand-top{
  position:relative!important;z-index:2!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;
}
body.iema-login-page .iema-login-logo-frame{
  width:118px!important;height:118px!important;display:grid!important;place-items:center!important;padding:10px!important;border-radius:27px!important;
  background:linear-gradient(145deg,#111c29,#080d14)!important;border:1px solid #2d4b66!important;box-shadow:0 20px 50px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.04)!important;
}
body.iema-login-page .iema-login-studio-logo{width:100%!important;height:100%!important;margin:0!important;padding:0!important;border:0!important;border-radius:18px!important;background:transparent!important;box-shadow:none!important}
body.iema-login-page .iema-login-studio-monogram{font-size:54px!important;font-weight:950!important;color:#fff!important;line-height:1!important}
body.iema-login-page .iema-login-product-lockup{display:grid!important;gap:3px!important;text-align:right!important;position:relative!important;z-index:2!important}
body.iema-login-page .iema-login-product-lockup strong{color:#fff!important;font-size:15px!important;letter-spacing:.17em!important;font-weight:950!important}
body.iema-login-page .iema-login-product-lockup small{color:#6fd4ff!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.13em!important;font-weight:850!important}
body.iema-login-page .iema-login-brand-copy{position:relative!important;z-index:2!important;max-width:650px!important;margin:auto 0!important;padding:44px 0 30px!important}
body.iema-login-page .iema-login-eyebrow{display:block!important;color:#72d7ff!important;font-size:10px!important;font-weight:950!important;letter-spacing:.19em!important;margin-bottom:13px!important}
body.iema-login-page .iema-login-brand-copy h1{margin:0 0 14px!important;font-size:clamp(46px,5.3vw,72px)!important;line-height:.92!important;letter-spacing:-.06em!important}
body.iema-login-page .iema-login-lockup-title{display:flex!important;align-items:baseline!important;gap:9px!important;margin:0 0 15px!important;color:#dce9f7!important;font-size:22px!important;font-weight:650!important;letter-spacing:-.025em!important}
body.iema-login-page .iema-login-lockup-title b{color:var(--md2-blue-soft)!important;font-weight:900!important}
body.iema-login-page .iema-login-season{display:inline-flex!important;align-items:center!important;min-height:30px!important;margin:0 0 20px!important;padding:6px 10px!important;border:1px solid #26506c!important;border-radius:999px!important;background:#0a2130!important;color:#9de4ff!important;font-size:10px!important;font-weight:850!important;letter-spacing:.06em!important;text-transform:uppercase!important}
body.iema-login-page .iema-login-brand-copy p{max-width:570px!important;font-size:15px!important;color:#9cadc2!important}
body.iema-login-page .iema-login-brand-footer{position:relative!important;z-index:2!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding-top:20px!important;border-top:1px solid rgba(126,157,190,.15)!important}
body.iema-login-page .iema-login-brand-footer span{color:#71849b!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.11em!important;font-weight:850!important}
body.iema-login-page .iema-login-brand-footer b{color:#a7b8cb!important;font-size:10px!important;letter-spacing:.04em!important}
body.iema-login-page .iema-login-card{padding:70px 58px!important}
body.iema-login-page .iema-login-card-head>span{display:block!important;margin-bottom:10px!important;color:#6fd4ff!important;white-space:normal!important;line-height:1.5!important}
body.iema-login-page .iema-login-card-head h2{font-size:36px!important;line-height:1.02!important}
body.iema-login-page .iema-login-card-head p{max-width:390px!important;font-size:13px!important;line-height:1.55!important}
body.iema-login-page .iema-login-card:after{content:'MYDANCER • SECURE STUDIO ACCESS'!important;display:block!important;margin-top:30px!important;padding-top:18px!important;border-top:1px solid #1c2939!important;color:#56687e!important;font-size:9px!important;font-weight:850!important;letter-spacing:.13em!important;text-align:center!important}
@media(max-width:900px){
  body.iema-login-page .iema-login-brand{min-height:430px!important;padding:32px 34px!important}
  body.iema-login-page .iema-login-logo-frame{width:92px!important;height:92px!important;border-radius:22px!important}
  body.iema-login-page .iema-login-brand-copy{padding:34px 0 26px!important}
  body.iema-login-page .iema-login-brand-copy h1{font-size:46px!important}
  body.iema-login-page .iema-login-card{padding:42px 34px!important}
}
@media(max-width:560px){
  body.iema-login-page .iema-login-brand{min-height:360px!important;padding:24px 22px!important}
  body.iema-login-page .iema-login-logo-frame{width:76px!important;height:76px!important;padding:8px!important;border-radius:18px!important}
  body.iema-login-page .iema-login-product-lockup strong{font-size:12px!important}.iema-login-product-lockup small{font-size:9px!important}
  body.iema-login-page .iema-login-brand-copy{padding:28px 0 20px!important}
  body.iema-login-page .iema-login-brand-copy h1{font-size:38px!important}
  body.iema-login-page .iema-login-lockup-title{font-size:18px!important}
  body.iema-login-page .iema-login-brand-footer{align-items:flex-start!important;flex-direction:column!important;gap:5px!important}
  body.iema-login-page .iema-login-card{padding:34px 22px 42px!important}
  body.iema-login-page .iema-login-card-head h2{font-size:31px!important}
}


/* v0.11.85 Owner team-first dancer directory + fuzzy search */
.iema-owner-shell .iema-owner-roster-tools{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:16px!important;margin:18px 0!important;padding:14px!important;background:#080d14!important;border:1px solid #1f2e40!important;border-radius:16px!important}
.iema-owner-shell .iema-owner-roster-search{display:grid!important;gap:7px!important;flex:1 1 520px!important;max-width:680px!important;color:#dce9f8!important}
.iema-owner-shell .iema-owner-roster-search>span{font-size:10px!important;font-weight:900!important;letter-spacing:.09em!important;text-transform:uppercase!important;color:var(--studio-accent)!important}
.iema-owner-shell .iema-owner-roster-search input{width:100%!important;min-height:46px!important;margin:0!important;padding:10px 14px!important;border-radius:12px!important;background:#0d1520!important;border:1px solid #2a3d54!important;color:#fff!important;font-size:14px!important}
.iema-owner-shell .iema-owner-roster-search input:focus{border-color:var(--md2-blue)!important;box-shadow:0 0 0 3px rgba(32,183,255,.12)!important;outline:none!important}
.iema-owner-shell .iema-owner-roster-state{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:12px!important;flex-wrap:wrap!important}
.iema-owner-shell .iema-owner-roster-state>span{font-size:11px!important;color:#8fa2ba!important;font-weight:800!important;white-space:nowrap!important}
.iema-owner-shell .iema-owner-team-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.iema-owner-shell .iema-owner-team-card{appearance:none!important;position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:5px 12px!important;align-items:center!important;min-height:116px!important;padding:18px 20px!important;text-align:left!important;background:linear-gradient(145deg,#0c141f 0%,#080d14 100%)!important;border:1px solid #24364b!important;border-radius:18px!important;color:#fff!important;cursor:pointer!important;box-shadow:none!important}
.iema-owner-shell .iema-owner-team-card:hover{background:#101b29!important;border-color:var(--md2-blue)!important;box-shadow:0 14px 32px rgba(13,124,255,.10)!important}
.iema-owner-shell .iema-owner-team-card>span{grid-column:1!important;font-size:9px!important;font-weight:950!important;letter-spacing:.13em!important;color:var(--studio-accent)!important}
.iema-owner-shell .iema-owner-team-card>strong{grid-column:1!important;font-size:22px!important;line-height:1.05!important;color:#fff!important;overflow-wrap:anywhere!important}
.iema-owner-shell .iema-owner-team-card>small{grid-column:1!important;font-size:11.5px!important;color:#91a4bd!important}
.iema-owner-shell .iema-owner-team-card>b{grid-column:2!important;grid-row:1/4!important;align-self:center!important;color:var(--studio-accent)!important;font-size:30px!important;font-weight:400!important}
.iema-owner-shell .iema-owner-team-results{margin-top:4px!important}
.iema-owner-shell .iema-owner-team-panel-head{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:16px!important;margin:6px 0 14px!important}
.iema-owner-shell .iema-owner-team-panel-head h3{margin:3px 0 2px!important;font-size:25px!important;color:#fff!important}
.iema-owner-shell .iema-owner-team-panel-head p{margin:0!important;color:#8fa2ba!important;font-size:12px!important}
.iema-owner-shell .iema-owner-roster-empty{margin:14px 0 0!important}
.iema-owner-shell .iema-owner-dancer-tile[hidden],.iema-owner-shell .iema-owner-manage-dancer-card[hidden]{display:none!important}
@media(max-width:900px){.iema-owner-shell .iema-owner-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){
 .iema-owner-shell .iema-owner-roster-tools{align-items:stretch!important;flex-direction:column!important;padding:12px!important}
 .iema-owner-shell .iema-owner-roster-search{flex-basis:auto!important;max-width:none!important}
 .iema-owner-shell .iema-owner-roster-state{justify-content:space-between!important}
 .iema-owner-shell .iema-owner-team-grid{grid-template-columns:1fr!important;gap:9px!important}
 .iema-owner-shell .iema-owner-team-card{min-height:92px!important;padding:15px 16px!important}
 .iema-owner-shell .iema-owner-team-card>strong{font-size:19px!important}
}


/* v0.11.86 premium mobile studio login refinement */
body.iema-login-page .iema-login-wrap{
  background:#070c13!important;
}
body.iema-login-page .iema-login-card form p{margin:0!important}
body.iema-login-page .iema-login-card .login-submit{margin-top:4px!important}
body.iema-login-page .iema-login-card input[type=submit]{width:100%!important;font-size:14px!important;letter-spacing:.01em!important}
@media(max-width:560px){
  body.iema-login-page .iema-login-wrap{
    width:100%!important;
    min-height:100vh!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    display:block!important;
  }
  body.iema-login-page .iema-login-brand{
    min-height:0!important;
    padding:24px 22px 20px!important;
    background:
      radial-gradient(circle at 92% 12%,rgba(32,183,255,.16),transparent 32%),
      linear-gradient(145deg,#08111c 0%,#091724 68%,#07111b 100%)!important;
    border-bottom:1px solid #1e3042!important;
  }
  body.iema-login-page .iema-login-brand:after{
    width:210px!important;height:210px!important;right:-100px!important;bottom:-112px!important;
    box-shadow:0 0 0 34px rgba(103,210,255,.022),0 0 0 68px rgba(103,210,255,.014)!important;
  }
  body.iema-login-page .iema-login-brand-top{align-items:center!important}
  body.iema-login-page .iema-login-logo-frame{
    width:72px!important;height:72px!important;padding:7px!important;border-radius:19px!important;
    box-shadow:0 14px 34px rgba(0,0,0,.32)!important;
  }
  body.iema-login-page .iema-login-studio-logo{border-radius:13px!important}
  body.iema-login-page .iema-login-studio-monogram{font-size:38px!important}
  body.iema-login-page .iema-login-product-lockup strong{font-size:11px!important;letter-spacing:.15em!important}
  body.iema-login-page .iema-login-product-lockup small{font-size:8px!important;letter-spacing:.11em!important}
  body.iema-login-page .iema-login-brand-copy{
    margin:0!important;padding:24px 0 8px!important;max-width:none!important;
  }
  body.iema-login-page .iema-login-eyebrow{font-size:9px!important;margin-bottom:9px!important;letter-spacing:.16em!important}
  body.iema-login-page .iema-login-brand-copy h1{
    max-width:100%!important;margin:0 0 8px!important;font-size:clamp(34px,10vw,46px)!important;line-height:.98!important;letter-spacing:-.045em!important;
  }
  body.iema-login-page .iema-login-lockup-title{
    margin:0 0 10px!important;font-size:17px!important;line-height:1.1!important;
  }
  body.iema-login-page .iema-login-season{margin:1px 0 10px!important;min-height:26px!important;padding:5px 9px!important;font-size:8px!important}
  body.iema-login-page .iema-login-brand-copy p{
    margin:0!important;max-width:560px!important;font-size:12.5px!important;line-height:1.5!important;color:#91a4ba!important;
  }
  body.iema-login-page .iema-login-brand-footer{
    margin-top:16px!important;padding-top:13px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;
  }
  body.iema-login-page .iema-login-brand-footer span,
  body.iema-login-page .iema-login-brand-footer b{font-size:8px!important}
  body.iema-login-page .iema-login-card{
    padding:26px 22px 34px!important;
    background:linear-gradient(180deg,#080e16 0%,#060a10 100%)!important;
  }
  body.iema-login-page .iema-login-card-head{margin-bottom:20px!important}
  body.iema-login-page .iema-login-card-head>span{margin-bottom:7px!important;font-size:9px!important;letter-spacing:.12em!important}
  body.iema-login-page .iema-login-card-head h2{margin:0 0 6px!important;font-size:27px!important;letter-spacing:-.035em!important}
  body.iema-login-page .iema-login-card-head p{font-size:12px!important;line-height:1.45!important}
  body.iema-login-page .iema-login-card form{gap:12px!important}
  body.iema-login-page .iema-login-card label{font-size:12px!important}
  body.iema-login-page .iema-login-card input[type=text],
  body.iema-login-page .iema-login-card input[type=password]{min-height:52px!important;border-radius:13px!important;padding:12px 14px!important;font-size:16px!important}
  body.iema-login-page .iema-login-card input[type=submit]{min-height:52px!important;border-radius:13px!important;font-size:15px!important}
  body.iema-login-page .iema-login-card .login-remember{margin:2px 0!important}
  body.iema-login-page .iema-login-card .login-remember label{font-size:12px!important;color:#95a6bc!important}
  body.iema-login-page .iema-login-help{margin-top:13px!important;font-size:12px!important}
  body.iema-login-page .iema-login-card:after{margin-top:22px!important;padding-top:14px!important;font-size:8px!important}
}

/* v0.11.87 studio-managed teams + compact accordion roster */
.iema-owner-shell .iema-owner-team-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
}
.iema-owner-shell .iema-owner-team-card{
  min-height:0!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  grid-template-rows:auto!important;
  gap:10px!important;
  align-items:center!important;
  padding:13px 16px!important;
  border-radius:13px!important;
  background:#0a111a!important;
  border:1px solid #223247!important;
}
.iema-owner-shell .iema-owner-team-card>span{display:none!important}
.iema-owner-shell .iema-owner-team-card>strong{grid-column:1!important;grid-row:1!important;font-size:16px!important;line-height:1.2!important}
.iema-owner-shell .iema-owner-team-card>small{grid-column:2!important;grid-row:1!important;font-size:11px!important;color:#8fa2ba!important;white-space:nowrap!important}
.iema-owner-shell .iema-owner-team-card>b{grid-column:3!important;grid-row:1!important;font-size:22px!important;line-height:1!important;transition:transform .16s ease!important}
.iema-owner-shell .iema-owner-team-card.is-open{background:#0d1824!important;border-color:#287bb1!important;border-radius:13px 13px 8px 8px!important}
.iema-owner-shell .iema-owner-team-card.is-open>b{transform:rotate(90deg)!important}
.iema-owner-shell .iema-owner-team-panel{
  margin:-3px 0 5px!important;
  padding:12px!important;
  border:1px solid #223247!important;
  border-top:0!important;
  border-radius:0 0 13px 13px!important;
  background:#070c12!important;
}
.iema-owner-shell .iema-owner-team-panel-head{display:none!important}
.iema-owner-shell .iema-owner-team-panel .iema-owner-dancer-grid,
.iema-owner-shell .iema-owner-team-panel .iema-owner-manage-dancer-grid{margin:0!important}
.iema-owner-shell .iema-owner-team-results{display:none!important}
.iema-owner-shell .iema-team-management-list{display:grid!important;gap:8px!important;margin-top:16px!important}
.iema-owner-shell .iema-team-management-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:13px 15px!important;background:#0a111a!important;border:1px solid #223247!important;border-radius:13px!important}
.iema-owner-shell .iema-team-management-row>div:first-child{display:grid!important;gap:3px!important}
.iema-owner-shell .iema-team-management-row strong{font-size:14px!important;color:#fff!important}
.iema-owner-shell .iema-team-management-row small{font-size:11px!important;color:#8fa2ba!important}
.iema-owner-shell .iema-team-management-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
.iema-owner-shell .iema-team-management-actions form{margin:0!important}
@media(max-width:640px){
 .iema-owner-shell .iema-owner-team-card{padding:13px 14px!important}
 .iema-owner-shell .iema-owner-team-card>strong{font-size:15px!important}
 .iema-owner-shell .iema-team-management-row{align-items:flex-start!important;flex-direction:column!important}
}
.iema-owner-shell .iema-owner-team-card[hidden],
.iema-owner-shell .iema-owner-team-panel[hidden]{display:none!important}

/* v0.11.88 dedicated Studio Management workspace */
.iema-owner-shell .iema-studio-management-intro{
  margin-bottom:12px!important;
  background:linear-gradient(135deg,#0c1520 0%,#081019 72%,#0a2030 100%)!important;
  border-color:#23364a!important;
}
.iema-owner-shell .iema-studio-management-intro .iema-section-head{margin:0!important}
.iema-owner-shell .iema-studio-management-intro h2{margin:4px 0 6px!important}
.iema-owner-shell .iema-studio-management-intro p{margin:0!important;max-width:760px!important}

/* v0.11.89 Owner Studio Snapshot + attendance foundation */
.iema-owner-shell .iema-owner-snapshot{margin:18px 0 16px!important}
.iema-owner-shell .iema-owner-snapshot-head{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:20px!important;margin:0 0 14px!important;padding:0 2px!important}
.iema-owner-shell .iema-owner-snapshot-head h2{margin:4px 0 4px!important;font-size:30px!important;color:#fff!important;letter-spacing:-.025em!important}
.iema-owner-shell .iema-owner-snapshot-head p{margin:0!important;color:#91a4bc!important;font-size:13px!important}
.iema-owner-shell .iema-owner-snapshot-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;align-items:start!important}
.iema-owner-shell .iema-owner-program-summary,.iema-owner-shell .iema-owner-snapshot-stat{background:linear-gradient(180deg,#0c131d,#080d14)!important;border:1px solid #213147!important;border-radius:17px!important;color:#fff!important;overflow:hidden!important;min-width:0!important}
.iema-owner-shell .iema-owner-program-summary summary{list-style:none!important;cursor:pointer!important;min-height:118px!important;padding:17px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important}
.iema-owner-shell .iema-owner-program-summary summary::-webkit-details-marker{display:none!important}
.iema-owner-shell .iema-owner-program-summary summary>span{display:grid!important;gap:3px!important;min-width:0!important}
.iema-owner-shell .iema-owner-program-summary summary small,.iema-owner-shell .iema-owner-snapshot-stat small{color:var(--studio-accent)!important;font-size:9.5px!important;font-weight:900!important;letter-spacing:.09em!important}
.iema-owner-shell .iema-owner-program-summary summary strong,.iema-owner-shell .iema-owner-snapshot-stat>strong{font-size:34px!important;line-height:1!important;color:#fff!important}
.iema-owner-shell .iema-owner-program-summary summary b{color:#a7b7cb!important;font-size:12px!important}
.iema-owner-shell .iema-owner-program-summary summary em{font-style:normal!important;color:var(--md2-blue-soft)!important;font-size:24px!important;transition:transform .18s ease!important}
.iema-owner-shell .iema-owner-program-summary[open] summary em{transform:rotate(180deg)!important}
.iema-owner-shell .iema-owner-program-summary[open]{grid-column:span 2!important}
.iema-owner-shell .iema-owner-program-drop{display:grid!important;gap:8px!important;padding:0 10px 10px!important;border-top:1px solid #1d2b3d!important}
.iema-owner-shell .iema-owner-program-row{width:100%!important;display:grid!important;grid-template-columns:92px minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;padding:13px!important;background:#090f17!important;border:1px solid #1e2e42!important;border-radius:12px!important;color:#fff!important;text-align:left!important;cursor:pointer!important}
.iema-owner-shell .iema-owner-program-row:hover{background:#0f1926!important;border-color:#2388c4!important}
.iema-owner-shell .iema-owner-program-row time{display:grid!important;gap:2px!important}.iema-owner-shell .iema-owner-program-row time strong{color:var(--studio-accent)!important;font-size:12px!important}.iema-owner-shell .iema-owner-program-row time small{color:#7f90a8!important;font-size:10px!important}
.iema-owner-shell .iema-owner-program-row>span{display:grid!important;gap:3px!important;min-width:0!important}.iema-owner-shell .iema-owner-program-row>span strong{color:#f6f9ff!important;font-size:13px!important}.iema-owner-shell .iema-owner-program-row>span small{color:#8fa0b7!important;font-size:11px!important}.iema-owner-shell .iema-owner-program-row>b{color:var(--studio-accent)!important;font-size:10px!important;white-space:nowrap!important}
.iema-owner-shell .iema-owner-snapshot-stat{min-height:118px!important;padding:17px!important;display:grid!important;align-content:center!important;gap:5px!important}.iema-owner-shell .iema-owner-snapshot-stat span{color:#8fa0b7!important;font-size:11px!important}
/* modal styles remain valid after global reparenting to body */
body .iema-owner-attendance-modal .iema-attendance-dialog{width:min(980px,calc(100vw - 32px))!important;max-height:calc(100dvh - 48px)!important;background:linear-gradient(180deg,#0d1520,#070c13)!important}
body .iema-owner-attendance-modal .iema-attendance-key{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;flex-wrap:wrap!important;margin:0 0 14px!important;padding:10px 12px!important;border:1px solid #25364a!important;border-radius:12px!important;background:#09111a!important;color:#8fa2b9!important;font-size:11px!important}
body .iema-owner-attendance-modal .iema-expected-key{color:#ffd28b!important;font-weight:800!important}
body .iema-owner-attendance-modal .iema-attendance-roster{display:grid!important;gap:8px!important}
body .iema-owner-attendance-modal .iema-attendance-dancer{display:grid!important;grid-template-columns:minmax(220px,1fr) minmax(360px,auto)!important;align-items:center!important;gap:16px!important;padding:12px!important;border:1px solid #223248!important;border-radius:14px!important;background:#090f17!important}
body .iema-owner-attendance-modal .iema-attendance-dancer.is-expected-absent{border-color:#72542a!important;background:linear-gradient(90deg,#17130d,#090f17 48%)!important}
body .iema-owner-attendance-modal .iema-attendance-person{display:flex!important;align-items:center!important;gap:12px!important;min-width:0!important}
body .iema-owner-attendance-modal .iema-attendance-person img{width:50px!important;height:50px!important;border-radius:14px!important;object-fit:cover!important;border:1px solid #31455e!important}
body .iema-owner-attendance-modal .iema-attendance-person>span{display:grid!important;gap:3px!important;min-width:0!important}
body .iema-owner-attendance-modal .iema-attendance-person strong{color:#fff!important;font-size:13px!important}
body .iema-owner-attendance-modal .iema-attendance-person small{color:#899bb2!important;font-size:10.5px!important}
body .iema-owner-attendance-modal .iema-attendance-person b{display:inline-flex!important;width:max-content!important;padding:4px 7px!important;border-radius:999px!important;background:#3a2a13!important;border:1px solid #76552a!important;color:#ffd28b!important;font-size:9px!important;text-transform:uppercase!important;letter-spacing:.06em!important}
body .iema-owner-attendance-modal .iema-attendance-control{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;min-width:0!important}
body .iema-owner-attendance-modal .iema-attendance-current{min-width:76px!important;font-size:10px!important;font-weight:900!important;text-align:right!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:#8fa0b7!important}
body .iema-owner-attendance-modal .iema-attendance-current.status-present{color:#85e6ab!important}body .iema-owner-attendance-modal .iema-attendance-current.status-absent{color:#ff9ca4!important}body .iema-owner-attendance-modal .iema-attendance-current.status-late{color:#ffd27a!important}body .iema-owner-attendance-modal .iema-attendance-current.status-excused{color:#9ccfff!important}
body .iema-owner-attendance-modal .iema-attendance-buttons{display:flex!important;gap:5px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
body .iema-owner-attendance-modal .iema-attendance-buttons button{min-height:34px!important;padding:7px 9px!important;border-radius:9px!important;border:1px solid #2a3b50!important;background:#101824!important;color:#a8b6c9!important;font-size:10px!important;font-weight:800!important;cursor:pointer!important}
body .iema-owner-attendance-modal .iema-attendance-buttons button:hover,body .iema-owner-attendance-modal .iema-attendance-buttons button.active{border-color:#2ab4f7!important;background:#0d6ca8!important;color:#fff!important}
body .iema-owner-attendance-modal .iema-attendance-control.is-saving{opacity:.55!important;pointer-events:none!important}
@media(max-width:980px){.iema-owner-shell .iema-owner-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){.iema-owner-shell .iema-owner-snapshot{margin:14px 10px!important}.iema-owner-shell .iema-owner-snapshot-grid{grid-template-columns:1fr!important}.iema-owner-shell .iema-owner-program-summary[open]{grid-column:auto!important}.iema-owner-shell .iema-owner-program-row{grid-template-columns:72px minmax(0,1fr)!important}.iema-owner-shell .iema-owner-program-row>b{grid-column:2!important}.iema-owner-shell .iema-owner-snapshot-stat{min-height:96px!important}.iema-owner-shell .iema-owner-program-summary summary{min-height:96px!important}body .iema-owner-attendance-modal .iema-attendance-dialog{width:100%!important;max-height:100dvh!important;border-radius:0!important}body .iema-owner-attendance-modal .iema-attendance-dancer{grid-template-columns:1fr!important}body .iema-owner-attendance-modal .iema-attendance-control{display:grid!important;justify-content:stretch!important}body .iema-owner-attendance-modal .iema-attendance-current{text-align:left!important}body .iema-owner-attendance-modal .iema-attendance-buttons{display:grid!important;grid-template-columns:1fr 1fr!important}body .iema-owner-attendance-modal .iema-attendance-buttons button{min-height:42px!important}}

/* v0.11.90 linked room scheduling */
.iema-create-modal[data-iema-create-modal="room-reservation"]>[class*="dialog"]>label{display:grid!important;gap:7px!important;margin-bottom:18px!important;color:#d8e5f6!important;font-weight:750!important}
.iema-create-modal[data-iema-create-modal="room-reservation"] [data-iema-room-booking-panel][hidden]{display:none!important}

/* v0.11.92 schedule conflict review modal */
body.iema-schedule-conflict-open{overflow:hidden!important}
.iema-schedule-conflict-modal{position:fixed!important;inset:0!important;z-index:2000000!important;display:grid!important;place-items:center!important;padding:22px!important}
.iema-schedule-conflict-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.82)!important;backdrop-filter:blur(10px)!important}
.iema-schedule-conflict-dialog{position:relative!important;z-index:1!important;width:min(760px,calc(100vw - 32px))!important;max-height:calc(100dvh - 44px)!important;overflow:auto!important;background:linear-gradient(180deg,#0d1520 0%,#070c13 100%)!important;border:1px solid #29415a!important;border-radius:24px!important;box-shadow:0 38px 110px rgba(0,0,0,.66)!important;padding:26px!important;color:#f5f8ff!important}
.iema-schedule-conflict-close{position:absolute!important;right:16px!important;top:16px!important;width:42px!important;height:42px!important;border-radius:50%!important;border:1px solid #30475f!important;background:#111b28!important;color:#fff!important;font-size:28px!important;cursor:pointer!important}
.iema-conflict-head{padding-right:54px!important}.iema-conflict-head>span{display:block!important;color:var(--md2-blue-soft)!important;font-size:10px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.12em!important}.iema-conflict-head h2{margin:5px 0 6px!important;color:#fff!important;font-size:30px!important}.iema-conflict-head p{margin:0!important;color:#93a6be!important}
.iema-conflict-summary{display:flex!important;align-items:baseline!important;gap:8px!important;margin:20px 0!important;padding:14px 16px!important;background:#0a111a!important;border:1px solid #203047!important;border-radius:14px!important}.iema-conflict-summary strong{font-size:28px!important;color:#fff!important}.iema-conflict-summary span{color:#95a8bf!important;font-size:12px!important;font-weight:800!important}
.iema-conflict-section{margin-top:14px!important;border:1px solid #26384d!important;border-radius:16px!important;overflow:hidden!important;background:#091019!important}.iema-conflict-section>header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:12px 14px!important;border-bottom:1px solid #233246!important}.iema-conflict-section>header strong{color:#fff!important;font-size:13px!important}.iema-conflict-section>header span{min-width:28px!important;height:28px!important;display:grid!important;place-items:center!important;border-radius:999px!important;background:#111d2a!important;color:#fff!important;font-size:11px!important;font-weight:900!important}
.iema-conflict-section.is-hard>header{background:#281216!important}.iema-conflict-section.is-hard>header span{background:#5c1c27!important;color:#ffd5da!important}.iema-conflict-section.is-soft>header{background:#261e0e!important}.iema-conflict-section.is-soft>header span{background:#5c4514!important;color:#ffe7a3!important}
.iema-conflict-list{display:grid!important}.iema-conflict-row{display:grid!important;grid-template-columns:minmax(180px,.8fr) minmax(0,1fr)!important;gap:16px!important;align-items:center!important;padding:13px 14px!important;border-bottom:1px solid #1e2a3a!important}.iema-conflict-row:last-child{border-bottom:0!important}.iema-conflict-row>div{display:grid!important;gap:3px!important}.iema-conflict-row strong{color:#f5f8ff!important;font-size:13px!important}.iema-conflict-row small{color:#8295ad!important;font-size:11px!important}.iema-conflict-row p{margin:0!important;color:#b7c4d5!important;font-size:12px!important}
.iema-conflict-explain{margin-top:16px!important;padding:14px 16px!important;border:1px solid #65501d!important;border-radius:14px!important;background:#211a0d!important}.iema-conflict-explain strong{color:#ffe286!important}.iema-conflict-explain p{margin:5px 0 0!important;color:#cbbf9c!important;font-size:12px!important;line-height:1.5!important}
.iema-conflict-actions{display:flex!important;align-items:flex-end!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:wrap!important;margin-top:20px!important;padding-top:18px!important;border-top:1px solid #243247!important}.iema-conflict-note{margin-right:auto!important;display:grid!important;gap:6px!important;min-width:min(330px,100%)!important;color:#c9d6e6!important;font-size:11px!important;font-weight:800!important}.iema-conflict-note input{width:100%!important;background:#070c12!important;border:1px solid #304159!important;border-radius:11px!important;color:#fff!important;padding:10px 12px!important}
.is-checking-conflicts{opacity:.72!important;pointer-events:none!important}
@media(max-width:640px){.iema-schedule-conflict-modal{padding:0!important;align-items:end!important}.iema-schedule-conflict-dialog{width:100vw!important;max-height:94dvh!important;border-radius:22px 22px 0 0!important;border-left:0!important;border-right:0!important;border-bottom:0!important;padding:20px 16px!important}.iema-conflict-head h2{font-size:25px!important}.iema-conflict-row{grid-template-columns:1fr!important;gap:5px!important}.iema-conflict-actions{align-items:stretch!important;flex-direction:column!important}.iema-conflict-actions .iema-btn{width:100%!important}.iema-conflict-note{width:100%!important;min-width:0!important;margin:0!important}}

/* v0.11.98 room-conflict recovery inside schedule review */
.iema-server-conflict-review .iema-room-recovery{margin:16px 0;padding:16px 18px;border:1px solid #27506d;border-radius:15px;background:#0b1d2a!important;color:#eef8ff!important}
.iema-server-conflict-review .iema-room-recovery strong{display:block;color:#75d8ff!important;font-size:14px!important;margin-bottom:5px!important}
.iema-server-conflict-review .iema-room-recovery p{margin:0!important;color:#a9bdd1!important;font-size:12.5px!important;line-height:1.5!important}
.iema-server-conflict-review .iema-conflict-room-form{display:grid!important;grid-template-columns:minmax(260px,1fr) auto!important;align-items:end!important;gap:12px!important;width:100%!important;padding:15px!important;border:1px solid #24425a!important;border-radius:15px!important;background:#09131d!important}
.iema-server-conflict-review .iema-conflict-room-form .iema-room-choice{display:grid!important;gap:7px!important;margin:0!important;color:#dce9f8!important;font-weight:800!important}
.iema-server-conflict-review .iema-conflict-room-form .iema-room-choice span{font-size:11px!important;text-transform:uppercase!important;letter-spacing:.07em!important;color:#7ddcff!important}
.iema-server-conflict-review .iema-conflict-room-form select{width:100%!important;min-height:46px!important;background:#0d1722!important;color:#f5f8ff!important;border:1px solid #31506a!important;border-radius:11px!important}
.iema-server-conflict-review .iema-conflict-room-form .iema-conflict-note{grid-column:1/-1!important}
.iema-server-conflict-review .iema-conflict-actions{align-items:stretch!important}
@media(max-width:700px){.iema-server-conflict-review .iema-conflict-room-form{grid-template-columns:1fr!important}.iema-server-conflict-review .iema-conflict-room-form .iema-btn{width:100%!important}}


/* v0.11.99 calendar day-view modal */
.iema-calendar-day[data-iema-day-view]{cursor:pointer!important;transition:border-color .16s ease,background .16s ease!important}
.iema-calendar-day[data-iema-day-view]:hover{border-color:#2c89bd!important}
.iema-calendar-day[data-iema-day-view]:focus-visible{outline:2px solid #28b8ff!important;outline-offset:-2px!important}
.iema-day-view-open{overflow:hidden!important}
.iema-day-view-modal{position:fixed!important;inset:0!important;z-index:2147483000!important;display:grid!important;place-items:center!important;padding:24px!important}
.iema-day-view-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.82)!important;backdrop-filter:blur(10px)!important}
.iema-day-view-dialog{position:relative!important;z-index:1!important;width:min(760px,calc(100vw - 32px))!important;max-height:calc(100dvh - 48px)!important;overflow:auto!important;background:linear-gradient(180deg,#0d1520 0%,#080d14 100%)!important;border:1px solid #29415b!important;border-radius:24px!important;box-shadow:0 36px 110px rgba(0,0,0,.68)!important;color:#f5f8ff!important}
.iema-day-view-dialog>header{position:sticky!important;top:0!important;z-index:2!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;padding:22px 24px!important;background:rgba(10,16,25,.97)!important;border-bottom:1px solid #223247!important;backdrop-filter:blur(12px)!important}
.iema-day-view-dialog>header span{display:block!important;color:var(--md2-blue-soft)!important;font-size:10px!important;font-weight:900!important;letter-spacing:.12em!important}
.iema-day-view-dialog>header h2{margin:4px 0 0!important;color:#fff!important;font-size:28px!important;letter-spacing:-.025em!important}
.iema-day-view-close{width:44px!important;height:44px!important;border-radius:13px!important;border:1px solid #30445c!important;background:#111b28!important;color:#fff!important;font-size:29px!important;line-height:1!important;cursor:pointer!important}
.iema-day-view-body{display:grid!important;gap:10px!important;padding:20px 24px!important}
.iema-day-view-event{display:grid!important;grid-template-columns:112px minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important;padding:15px 16px!important;background:#0b121b!important;border:1px solid #223349!important;border-radius:15px!important}
.iema-day-view-time{display:grid!important;gap:3px!important}.iema-day-view-time strong{color:#7bdcff!important;font-size:14px!important}.iema-day-view-time span{color:#8093ab!important;font-size:10px!important}
.iema-day-view-copy{display:grid!important;gap:4px!important;min-width:0!important}.iema-day-view-copy small{color:#7589a3!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:9px!important;font-weight:900!important}.iema-day-view-copy strong{color:#f5f8ff!important;font-size:15px!important;overflow-wrap:anywhere!important}
.iema-day-view-empty{display:grid!important;gap:6px!important;padding:34px 20px!important;text-align:center!important;background:#0b121b!important;border:1px solid #223349!important;border-radius:15px!important}.iema-day-view-empty strong{color:#fff!important}.iema-day-view-empty span{color:#8fa2ba!important;font-size:12px!important}
.iema-day-view-dialog>footer{position:sticky!important;bottom:0!important;display:flex!important;justify-content:flex-end!important;padding:16px 24px!important;background:rgba(9,14,22,.97)!important;border-top:1px solid #223247!important;backdrop-filter:blur(12px)!important}
@media(max-width:640px){.iema-day-view-modal{padding:0!important;align-items:end!important}.iema-day-view-dialog{width:100vw!important;max-height:88dvh!important;border-radius:22px 22px 0 0!important;border-left:0!important;border-right:0!important;border-bottom:0!important}.iema-day-view-dialog>header{padding:18px!important}.iema-day-view-dialog>header h2{font-size:23px!important}.iema-day-view-body{padding:14px!important}.iema-day-view-event{grid-template-columns:82px minmax(0,1fr)!important;gap:12px!important}.iema-day-view-event>.iema-btn{grid-column:1/-1!important;width:100%!important}.iema-day-view-dialog>footer{padding:14px!important}.iema-day-view-dialog>footer .iema-btn{width:100%!important}}

/* =========================================================
   v0.12.12 — Studio Owner ambient MyDancer page background
   Scope intentionally limited to the Studio Owner portal.
   ========================================================= */
body.iema-owner-portal-page{
  position:relative!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 18% 18%, rgba(0,142,255,.12) 0, rgba(0,142,255,.045) 22%, transparent 43%),
    radial-gradient(circle at 83% 32%, rgba(0,101,219,.10) 0, rgba(0,101,219,.035) 24%, transparent 46%),
    radial-gradient(circle at 36% 88%, rgba(0,128,255,.08) 0, transparent 38%),
    linear-gradient(145deg,#02060b 0%,#03101d 48%,#02070d 100%)!important;
  background-attachment:fixed!important;
}
body.iema-owner-portal-page::before{
  content:"MYDANCER";
  position:fixed;
  left:-1.5vw;
  top:-3.5vh;
  z-index:0;
  pointer-events:none;
  user-select:none;
  font-family:Arial,Helvetica,sans-serif;
  font-size:clamp(96px,13vw,250px);
  line-height:.82;
  font-weight:900;
  letter-spacing:-.065em;
  color:rgba(95,145,190,.035);
  white-space:nowrap;
}
body.iema-owner-portal-page::after{
  content:"";
  position:fixed;
  z-index:0;
  pointer-events:none;
  right:-18vw;
  top:-24vw;
  width:62vw;
  height:62vw;
  min-width:760px;
  min-height:760px;
  border-radius:50%;
  border:2px solid rgba(0,142,255,.16);
  box-shadow:
    0 0 0 32px rgba(0,142,255,.018),
    0 0 0 66px rgba(0,142,255,.045),
    0 0 0 98px rgba(0,142,255,.018);
  opacity:.72;
}
body.iema-owner-portal-page #page,
body.iema-owner-portal-page .site,
body.iema-owner-portal-page .site-container,
body.iema-owner-portal-page .site-content,
body.iema-owner-portal-page .content-area,
body.iema-owner-portal-page #content,
body.iema-owner-portal-page .wp-site-blocks,
body.iema-owner-portal-page main,
body.iema-owner-portal-page .ma-wrap,
body.iema-owner-portal-page .ma-page,
body.iema-owner-portal-page article,
body.iema-owner-portal-page .entry-content{
  background:transparent!important;
}
body.iema-owner-portal-page .iema-owner-shell{
  position:relative!important;
  z-index:1!important;
}
@media(max-width:700px){
  body.iema-owner-portal-page::before{
    left:-5vw;
    top:1vh;
    font-size:clamp(78px,24vw,150px);
    color:rgba(95,145,190,.03);
  }
  body.iema-owner-portal-page::after{
    right:-72vw;
    top:-30vw;
    width:125vw;
    height:125vw;
    min-width:0;
    min-height:0;
    opacity:.5;
  }
}

/* =========================================================
   v0.12.13 — Studio Owner graphite dashboard visual system
   Owner portal only. Functional/navigation architecture unchanged.
   ========================================================= */
body.iema-owner-portal-page{
  background:
    radial-gradient(circle at 18% 16%, rgba(255,255,255,.035) 0, rgba(255,255,255,.012) 25%, transparent 46%),
    radial-gradient(circle at 84% 24%, rgba(90,115,145,.055) 0, rgba(90,115,145,.018) 25%, transparent 48%),
    radial-gradient(circle at 42% 88%, rgba(255,255,255,.02) 0, transparent 38%),
    linear-gradient(145deg,#101113 0%,#15171a 46%,#0b0c0e 100%)!important;
  background-attachment:fixed!important;
}
body.iema-owner-portal-page::before{
  content:"MYDANCER"!important;
  left:clamp(8px,1.15vw,20px)!important;
  top:50%!important;
  width:auto!important;
  height:auto!important;
  font-size:clamp(58px,5.4vw,96px)!important;
  line-height:.92!important;
  letter-spacing:-.075em!important;
  color:rgba(235,240,247,.032)!important;
  writing-mode:vertical-rl!important;
  text-orientation:mixed!important;
  transform:translateY(-50%) rotate(180deg)!important;
  white-space:nowrap!important;
}
body.iema-owner-portal-page::after{
  right:-22vw!important;
  top:-25vw!important;
  width:60vw!important;
  height:60vw!important;
  min-width:720px!important;
  min-height:720px!important;
  border-color:rgba(166,177,191,.11)!important;
  box-shadow:
    0 0 0 34px rgba(255,255,255,.006),
    0 0 0 70px rgba(166,177,191,.022),
    0 0 0 106px rgba(255,255,255,.006)!important;
  opacity:.76!important;
}

/* Graphite shell surfaces */
body.iema-owner-portal-page .iema-owner-shell .iema-top,
body.iema-owner-portal-page .iema-owner-shell .iema-primary-nav,
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav{
  background:linear-gradient(180deg,rgba(25,27,30,.96),rgba(15,16,18,.96))!important;
  border-color:#34383e!important;
  box-shadow:0 18px 50px rgba(0,0,0,.16)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-panel,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-summary,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-stat,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-team-card,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-tools{
  background:linear-gradient(155deg,rgba(24,26,29,.97),rgba(13,14,16,.985))!important;
  border-color:#353940!important;
  box-shadow:0 16px 38px rgba(0,0,0,.16)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-panel{
  border-radius:18px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-kicker,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-summary summary small,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-stat small{
  color:#72d6ff!important;
}

/* Overview: denser executive-dashboard hierarchy */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot{
  margin:16px 0 14px!important;
  padding:18px!important;
  border:1px solid #34383e!important;
  border-radius:20px!important;
  background:linear-gradient(155deg,rgba(22,24,27,.95),rgba(12,13,15,.97))!important;
  box-shadow:0 22px 60px rgba(0,0,0,.18)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-head{
  margin:0 0 12px!important;
  padding:0!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-head h2{
  margin:2px 0 3px!important;
  font-size:26px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-head p{
  color:#9ca2aa!important;
  font-size:12px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-grid{
  gap:10px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-summary,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-stat{
  border-radius:14px!important;
  box-shadow:none!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-summary summary{
  min-height:96px!important;
  padding:14px 15px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-stat{
  min-height:96px!important;
  padding:15px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-summary summary strong,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-stat>strong{
  font-size:30px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-drop{
  border-top-color:#30343a!important;
  padding:8px 9px 9px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-row{
  background:#141619!important;
  border-color:#33373d!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-row:hover{
  background:#1a1d21!important;
  border-color:#4b8caf!important;
}

/* Roster becomes a compact second dashboard zone instead of a giant visual block. */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-panel{
  margin-top:14px!important;
  padding:18px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-panel .iema-section-head{
  margin-bottom:10px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-panel .iema-section-head h2{
  font-size:24px!important;
  margin:2px 0 3px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-panel .iema-section-head p{
  font-size:12px!important;
  color:#999fa8!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-tools{
  margin:10px 0!important;
  padding:10px 12px!important;
  border-radius:13px!important;
  box-shadow:none!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-search input{
  min-height:42px!important;
  background:#15171a!important;
  border-color:#3a3e45!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-team-grid{
  gap:8px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-team-card{
  min-height:58px!important;
  padding:11px 14px!important;
  border-radius:12px!important;
  box-shadow:none!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-team-card:hover,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-team-card.is-open{
  background:#1b1e22!important;
  border-color:#4b7895!important;
  box-shadow:none!important;
}

/* Keep the familiar blue interaction color; neutralize excess navy elsewhere. */
body.iema-owner-portal-page .iema-owner-shell .iema-primary-nav a:not(.active),
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a:not(.active){
  color:#c0c5cc!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-primary-nav a:hover,
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a:hover{
  background:#24272b!important;
  color:#fff!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-primary-nav a.active,
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a.active{
  box-shadow:0 8px 22px rgba(0,145,255,.18)!important;
}

@media(max-width:980px){
  body.iema-owner-portal-page::before{
    left:2px!important;
    top:140px!important;
    font-size:72px!important;
    opacity:.7!important;
  }
}
@media(max-width:700px){
  body.iema-owner-portal-page::before{
    left:-8px!important;
    top:108px!important;
    font-size:56px!important;
    color:rgba(235,240,247,.025)!important;
  }
  body.iema-owner-portal-page::after{
    right:-82vw!important;
    top:-34vw!important;
    width:132vw!important;
    height:132vw!important;
    min-width:0!important;
    min-height:0!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot{
    margin:12px 10px!important;
    padding:13px!important;
    border-radius:16px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-panel{
    padding:14px!important;
  }
}


/* =========================================================
   v0.12.14 — Owner dashboard polish pass
   Visual-only refinements based on live Studio Owner review.
   ========================================================= */
@media(min-width:981px){
  /* Equal outer tracks keep the portal heading centered in the whole header,
     regardless of studio-brand or account-control width. */
  body.iema-owner-portal-page .iema-owner-shell .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) minmax(420px,560px) minmax(0,1fr)!important;
    gap:20px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-shell-brand{
    justify-self:start!important;
    max-width:100%!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-page-heading{
    justify-self:center!important;
    width:100%!important;
    text-align:center!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user{
    justify-self:end!important;
  }
}

/* Pull the environmental wordmark farther into the background. */
body.iema-owner-portal-page::before{
  color:rgba(235,240,247,.022)!important;
}

/* Tighter Overview rhythm without changing the content model. */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot{
  margin:14px 0 10px!important;
  padding:16px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-head{
  margin-bottom:10px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-grid{
  gap:9px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-summary summary,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-stat{
  min-height:88px!important;
  padding:12px 14px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-panel{
  margin-top:10px!important;
  padding:16px!important;
}

/* Snapshot hierarchy: descriptor recedes, count/status leads. */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-summary summary small,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-stat>small{
  display:block!important;
  margin-bottom:5px!important;
  color:#8ecce7!important;
  font-size:9.5px!important;
  line-height:1.2!important;
  font-weight:850!important;
  letter-spacing:.055em!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-summary summary strong,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-stat>strong{
  display:block!important;
  margin:0 0 2px!important;
  color:#fff!important;
  font-size:32px!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-summary summary b,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-stat>span{
  color:#a5adb7!important;
  font-size:11px!important;
  line-height:1.25!important;
  font-weight:650!important;
}

/* Make the roster action read as an intentional secondary control. */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-panel .iema-text-action{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:7px 11px!important;
  border:1px solid #3a4652!important;
  border-radius:10px!important;
  background:#202328!important;
  color:#dff5ff!important;
  font-size:11px!important;
  font-weight:850!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-panel .iema-text-action:hover{
  background:#292d32!important;
  border-color:#5a7588!important;
  color:#fff!important;
}

@media(max-width:700px){
  body.iema-owner-portal-page::before{
    color:rgba(235,240,247,.018)!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot{
    margin:10px!important;
    padding:12px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-panel{
    margin-top:10px!important;
    padding:13px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-roster-panel .iema-text-action{
    min-height:38px!important;
    padding:8px 12px!important;
  }
}

/* =========================================================
   v0.12.15 — Owner silver ambient background + account polish
   Visual-only. Studio Owner portal only.
   ========================================================= */
body.iema-owner-portal-page{
  background:
    radial-gradient(circle at 15% 7%, rgba(255,255,255,.105) 0, rgba(255,255,255,.042) 23%, transparent 44%),
    radial-gradient(circle at 82% 16%, rgba(224,229,235,.10) 0, rgba(224,229,235,.035) 27%, transparent 50%),
    radial-gradient(circle at 36% 76%, rgba(255,255,255,.065) 0, rgba(255,255,255,.018) 30%, transparent 53%),
    radial-gradient(circle at 94% 84%, rgba(204,211,220,.075) 0, transparent 39%),
    linear-gradient(145deg,#3b3e43 0%,#303338 32%,#272a2e 65%,#202226 100%)!important;
  background-attachment:fixed!important;
}
/* Keep the vertical environmental brand, but let it read cleanly against silver. */
body.iema-owner-portal-page::before{
  color:rgba(235,239,244,.095)!important;
  text-shadow:0 1px 0 rgba(0,0,0,.08)!important;
}
/* Neutral-silver concentric swirl/ring treatment. */
body.iema-owner-portal-page::after{
  right:-20vw!important;
  top:-24vw!important;
  width:65vw!important;
  height:65vw!important;
  min-width:760px!important;
  min-height:760px!important;
  border:1px solid rgba(229,233,238,.23)!important;
  box-shadow:
    0 0 0 42px rgba(229,233,238,.025),
    0 0 0 44px rgba(229,233,238,.13),
    0 0 0 96px rgba(229,233,238,.018),
    0 0 0 98px rgba(229,233,238,.08),
    0 0 0 164px rgba(229,233,238,.012),
    0 0 0 166px rgba(229,233,238,.055)!important;
  opacity:.78!important;
}
/* Add a second family of soft silver arcs through the page background itself. */
body.iema-owner-portal-page .iema-owner-shell::before{
  content:""!important;
  position:fixed!important;
  left:-19vw!important;
  bottom:-35vw!important;
  width:56vw!important;
  height:56vw!important;
  min-width:660px!important;
  min-height:660px!important;
  border-radius:50%!important;
  border:1px solid rgba(232,235,239,.10)!important;
  box-shadow:
    0 0 0 54px rgba(232,235,239,.013),
    0 0 0 56px rgba(232,235,239,.065),
    0 0 0 122px rgba(232,235,239,.01),
    0 0 0 124px rgba(232,235,239,.04)!important;
  opacity:.7!important;
  pointer-events:none!important;
  z-index:-1!important;
}

/* Account control: quieter premium graphite surface instead of a large blue slab. */
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user{
  max-width:248px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary{
  grid-template-columns:40px minmax(0,1fr) 28px!important;
  gap:10px!important;
  min-height:56px!important;
  padding:7px 8px 7px 8px!important;
  border-radius:15px!important;
  background:linear-gradient(145deg,rgba(48,51,56,.98),rgba(31,33,37,.98))!important;
  border:1px solid rgba(183,191,201,.32)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.045)!important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary:hover,
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary:focus-visible{
  background:linear-gradient(145deg,rgba(56,60,66,.99),rgba(34,37,41,.99))!important;
  border-color:rgba(86,196,255,.64)!important;
  box-shadow:0 14px 32px rgba(0,0,0,.24),0 0 0 1px rgba(40,177,246,.12)!important;
  transform:translateY(-1px)!important;
  outline:none!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary img{
  width:40px!important;
  height:40px!important;
  border:1px solid rgba(255,255,255,.68)!important;
  box-shadow:0 2px 10px rgba(0,0,0,.28)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary span{
  gap:1px!important;
  align-content:center!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary strong{
  color:#f8fafc!important;
  font-size:11.5px!important;
  line-height:1.2!important;
  letter-spacing:.065em!important;
  font-weight:900!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary small{
  margin-top:1px!important;
  color:#9ea7b2!important;
  font-size:9px!important;
  line-height:1.2!important;
  letter-spacing:.11em!important;
  font-weight:800!important;
  text-transform:uppercase!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary b{
  display:grid!important;
  place-items:center!important;
  width:28px!important;
  height:28px!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(255,255,255,.075)!important;
  color:#6dd4ff!important;
  font-size:12px!important;
  line-height:1!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav{
  margin-top:2px!important;
  background:rgba(28,30,34,.985)!important;
  border-color:#4a4e54!important;
  box-shadow:0 24px 54px rgba(0,0,0,.42)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav a:hover{
  background:#363a3f!important;
}

@media(max-width:980px){
  body.iema-owner-portal-page .iema-owner-shell::before{display:none!important}
}
@media(max-width:700px){
  body.iema-owner-portal-page{
    background:
      radial-gradient(circle at 16% 4%,rgba(255,255,255,.08) 0,transparent 38%),
      radial-gradient(circle at 88% 28%,rgba(224,229,235,.075) 0,transparent 44%),
      linear-gradient(155deg,#393c41 0%,#292c30 56%,#202226 100%)!important;
  }
  body.iema-owner-portal-page::before{color:rgba(235,239,244,.065)!important}
  body.iema-owner-portal-page::after{opacity:.48!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary{
    grid-template-columns:40px 14px!important;
    padding:6px!important;
    min-height:52px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary span{display:none!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary b{
    width:14px!important;height:28px!important;background:transparent!important;border:0!important;
  }
}


/* =========================================================
   v0.12.16 — Owner account dropdown refinement
   Visual-only. Studio Owner portal only.
   ========================================================= */
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav{
  right:0!important;
  top:calc(100% + 7px)!important;
  width:218px!important;
  padding:6px!important;
  border:1px solid rgba(190,197,206,.28)!important;
  border-radius:14px!important;
  background:linear-gradient(160deg,rgba(38,41,45,.99),rgba(27,29,32,.99))!important;
  box-shadow:0 20px 44px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.035)!important;
  overflow:hidden!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav a{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:39px!important;
  margin:0!important;
  padding:9px 10px 9px 36px!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#edf1f5!important;
  font-size:11.5px!important;
  line-height:1.2!important;
  font-weight:760!important;
  letter-spacing:.005em!important;
  text-decoration:none!important;
  transition:background .14s ease,color .14s ease,transform .14s ease!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav a + a{
  border-top:1px solid rgba(255,255,255,.07)!important;
  border-top-left-radius:0!important;
  border-top-right-radius:0!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav a::before{
  position:absolute!important;
  left:11px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  display:grid!important;
  place-items:center!important;
  width:17px!important;
  height:17px!important;
  color:#9ba6b2!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:500!important;
  opacity:.95!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav a:nth-child(1)::before{content:"▦"!important}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav a:nth-child(2)::before{content:"○"!important;font-size:15px!important}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav .iema-portal-logout::before{content:"↪"!important;font-size:15px!important}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav a:hover,
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav a:focus-visible{
  background:rgba(255,255,255,.065)!important;
  color:#fff!important;
  outline:none!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav a:hover::before,
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav a:focus-visible::before{
  color:var(--md2-blue-soft)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav .iema-portal-logout{
  margin:0!important;
  padding-top:9px!important;
  color:#d8dde3!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
  background:transparent!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav .iema-portal-logout:hover,
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav .iema-portal-logout:focus-visible{
  background:rgba(255,255,255,.055)!important;
  color:#fff!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user[open] summary{
  border-color:rgba(103,210,255,.48)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.24),0 0 0 1px rgba(40,177,246,.08)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-portal-user[open] summary b{
  transform:rotate(180deg)!important;
  transition:transform .16s ease!important;
}
@media(max-width:700px){
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav{
    width:205px!important;
    right:0!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user nav a{
    min-height:42px!important;
    font-size:12px!important;
  }
}

/* v0.12.17 Owner Create Dancer modal layout + visual cleanup */
.iema-owner-person-create-dialog:has(#iema-create-dancer-title){
  width:min(900px,calc(100vw - 32px))!important;
  max-height:min(92vh,920px)!important;
  padding:28px 30px 0!important;
  overflow:auto!important;
  scrollbar-gutter:stable!important;
}
.iema-dancer-create-form{gap:0!important}
.iema-dancer-create-section{
  display:grid!important;
  gap:14px!important;
  padding:20px 0!important;
  border-top:1px solid rgba(123,145,171,.18)!important;
}
.iema-dancer-create-section:first-of-type{border-top:0!important;padding-top:0!important}
.iema-dancer-create-section-head{display:flex!important;align-items:baseline!important;justify-content:space-between!important;gap:16px!important;margin-bottom:1px!important}
.iema-dancer-create-section-head span{font-size:10px!important;line-height:1!important;font-weight:900!important;letter-spacing:.15em!important;color:var(--md2-blue-soft)!important}
.iema-dancer-create-section-head small{font-size:11px!important;font-weight:650!important;color:#75879c!important}
.iema-dancer-create-form label{gap:7px!important;color:#eef5ff!important;font-size:12px!important;font-weight:800!important}
.iema-dancer-create-form input:not([type="range"]):not([type="file"]),
.iema-dancer-create-form select,
.iema-dancer-create-form textarea{
  min-height:44px!important;
  padding:11px 13px!important;
  background:#0a1119!important;
  color:#f4f8ff!important;
  border:1px solid #2a3b4f!important;
  border-radius:11px!important;
  box-shadow:none!important;
  color-scheme:dark!important;
}
.iema-dancer-create-form input::placeholder{color:#71849a!important;opacity:1!important}
.iema-dancer-create-form input:focus,
.iema-dancer-create-form select:focus,
.iema-dancer-create-form textarea:focus{outline:none!important;border-color:#249fe4!important;box-shadow:0 0 0 3px rgba(36,159,228,.12)!important}
.iema-dancer-create-form .iema-form-grid{gap:14px!important}
.iema-dancer-create-form .iema-help{margin-top:-3px!important;color:#70839a!important;font-size:10.5px!important;line-height:1.45!important}
.iema-dancer-create-form .iema-password-policy{
  margin:0!important;
  padding:13px 14px!important;
  background:#080f16!important;
  border:1px solid #223348!important;
  border-radius:12px!important;
}
.iema-dancer-create-form .iema-password-policy small{max-width:720px!important}
.iema-dancer-avatar-section .iema-avatar-editor{
  grid-template-columns:190px minmax(0,1fr)!important;
  gap:20px!important;
  padding:16px!important;
  background:#080f16!important;
  border:1px solid #223348!important;
  border-radius:16px!important;
}
.iema-dancer-avatar-section .iema-avatar-crop-stage{
  width:190px!important;
  max-width:190px!important;
  background:#0b121b!important;
  box-shadow:inset 0 0 0 1px #26384d!important;
}
.iema-dancer-avatar-section .iema-avatar-crop-stage canvas{background:#0b121b!important}
.iema-dancer-avatar-section .iema-avatar-editor-controls{gap:10px!important}
.iema-dancer-avatar-section .iema-avatar-editor-controls input[type="file"]{max-width:100%!important;color:#9fb0c4!important}
.iema-dancer-create-actions{
  position:sticky!important;
  bottom:0!important;
  z-index:3!important;
  display:flex!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin:4px -30px 0!important;
  padding:16px 30px 18px!important;
  background:linear-gradient(180deg,rgba(8,13,20,.90),#080d14 28%)!important;
  border-top:1px solid #223044!important;
  backdrop-filter:blur(12px)!important;
}
.iema-dancer-create-actions .iema-btn{min-width:132px!important;text-align:center!important}
.iema-dancer-create-actions .iema-btn-ghost{border-color:#33475d!important;color:#c6d3e2!important;background:#101820!important}
.iema-dancer-create-actions .iema-btn-ghost:hover{border-color:#4f6f91!important;background:#15202b!important}
.iema-owner-person-create-dialog:has(#iema-create-dancer-title)>.iema-recovery{margin:0 -30px!important;padding:16px 30px 22px!important;border-top:1px solid #1d2a39!important}
@media(max-width:760px){
 .iema-owner-person-create-dialog:has(#iema-create-dancer-title){width:100%!important;padding:22px 16px 0!important;border-radius:20px!important}
 .iema-dancer-create-section-head{display:grid!important;gap:5px!important}
 .iema-dancer-create-form .iema-form-grid{grid-template-columns:1fr!important}
 .iema-dancer-avatar-section .iema-avatar-editor{grid-template-columns:1fr!important}
 .iema-dancer-avatar-section .iema-avatar-crop-stage{width:min(240px,100%)!important;max-width:240px!important;margin:auto!important}
 .iema-dancer-create-actions{margin:4px -16px 0!important;padding:14px 16px 16px!important}
 .iema-owner-person-create-dialog:has(#iema-create-dancer-title)>.iema-recovery{margin:0 -16px!important;padding:14px 16px 18px!important}
}


/* v0.12.18 Owner dancer accordion containment + responsive facts */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-team-panel,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-team-panel .iema-owner-manage-dancer-grid,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-card{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-team-panel{
  overflow:hidden!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-team-panel .iema-owner-manage-dancer-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:10px!important;
  overflow:hidden!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-card{
  overflow:hidden!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-main,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-actions,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts>div{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  width:100%!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts span,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts strong{
  min-width:0!important;
  overflow-wrap:anywhere!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-actions{
  justify-content:flex-start!important;
  padding-top:0!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-actions .iema-text-action{
  margin-left:auto!important;
}
@media(max-width:760px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:560px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts{
    grid-template-columns:1fr 1fr!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts>div:first-child{
    grid-column:1/-1!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-actions{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-actions .iema-btn{
    width:100%!important;
    justify-content:center!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-actions .iema-text-action{
    margin-left:0!important;
    text-align:center!important;
  }
}
@media(max-width:390px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts{
    grid-template-columns:1fr!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts>div:first-child{
    grid-column:auto!important;
  }
}

/* v0.12.19 Owner Parent / Guardian login management */
.iema-owner-shell .iema-parent-detail-head{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:18px!important;margin:4px 0 18px!important}
.iema-owner-shell .iema-parent-detail-head h2{margin:4px 0 4px!important}
.iema-owner-shell .iema-parent-detail-head p{margin:0!important;color:#9eabb9!important}
.iema-parent-login-edit-dialog{width:min(820px,96vw)!important}
.iema-parent-login-edit-form{display:grid!important;gap:0!important}
.iema-parent-login-section{display:grid!important;gap:14px!important;padding:20px 0!important;border-top:1px solid rgba(144,157,172,.18)!important}
.iema-parent-login-section:first-of-type{border-top:0!important;padding-top:2px!important}
.iema-form-section-label{display:block!important;font-size:11px!important;line-height:1!important;font-weight:900!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#62cbff!important}
.iema-form-section-help{margin:-6px 0 0!important;color:#97a5b5!important;font-size:12px!important}
.iema-parent-login-edit-form input[readonly]{opacity:.72!important;cursor:not-allowed!important;background:rgba(255,255,255,.025)!important}
.iema-parent-password-policy{display:grid!important;gap:4px!important;padding:13px 15px!important;border:1px solid rgba(88,150,196,.28)!important;border-radius:13px!important;background:rgba(4,11,18,.38)!important}
.iema-parent-password-policy strong{font-size:12px!important;color:#fff!important}
.iema-parent-password-policy span{font-size:11px!important;line-height:1.5!important;color:#9eb1c6!important}
.iema-parent-login-actions{display:flex!important;justify-content:flex-end!important;gap:10px!important;padding-top:18px!important;border-top:1px solid rgba(144,157,172,.18)!important}
@media(max-width:720px){.iema-owner-shell .iema-parent-detail-head{align-items:stretch!important;flex-direction:column!important}.iema-parent-login-actions{display:grid!important;grid-template-columns:1fr 1fr!important}.iema-parent-login-actions .iema-btn{width:100%!important}}


/* v0.12.23 Align dancer edit control with People profile-card actions */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-card{
  position:relative!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-edit{
  position:absolute!important;
  top:16px!important;
  right:50px!important;
  z-index:2!important;
  min-height:34px!important;
  padding:7px 11px!important;
  border-radius:10px!important;
  font-size:10.5px!important;
  white-space:nowrap!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-main{
  padding-right:150px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-actions{
  justify-content:flex-end!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-actions .iema-text-action{
  margin-left:0!important;
}
@media(max-width:560px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-edit{
    position:static!important;
    display:flex!important;
    width:calc(100% - 28px)!important;
    margin:14px 14px 0!important;
    justify-content:center!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-main{
    padding-right:16px!important;
  }
}

/* v0.12.24 Unified People account actions */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-staff-card-wrap,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-parent-card-wrap{
  position:relative!important;
  min-width:0!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-staff-card-wrap .iema-owner-staff-card,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-parent-card-wrap .iema-owner-parent-card{
  padding-right:150px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-people-card-edit{
  position:absolute!important;
  top:16px!important;
  right:50px!important;
  z-index:3!important;
  min-height:34px!important;
  padding:7px 11px!important;
  border-radius:10px!important;
  font-size:10.5px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
}
@media(max-width:560px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-staff-card-wrap .iema-owner-staff-card,
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-parent-card-wrap .iema-owner-parent-card{
    padding-right:16px!important;
    padding-bottom:58px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-people-card-edit{
    top:auto!important;
    right:14px!important;
    bottom:12px!important;
    left:14px!important;
    width:calc(100% - 28px)!important;
    justify-content:center!important;
  }
}


/* v0.12.25 Keep account-modal grid fields at their natural control height.
   The Username helper text makes its label taller; without start alignment,
   the Phone label stretches to the same grid-row height and its input expands. */
.iema-parent-login-edit-form .iema-form-grid{align-items:start!important;}
.iema-parent-login-edit-form .iema-form-grid>label{align-self:start!important;}
.iema-parent-login-edit-form .iema-form-grid>label>input,.iema-parent-login-edit-form .iema-form-grid>label>select{height:auto!important;min-height:44px!important;}

/* v0.12.26 Removed obsolete dancer-card navigation chevron; Edit Account and Open Profile are the explicit actions. */


/* v0.12.27 Faculty card cleanup: remove redundant profile chevron and align Edit Account action. */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-staff-card-wrap .iema-owner-staff-card{
  grid-template-columns:64px minmax(0,1fr)!important;
  padding-right:132px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-staff-card-wrap .iema-people-card-edit{
  right:16px!important;
}
@media(max-width:560px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-staff-card-wrap .iema-owner-staff-card{
    padding-right:16px!important;
  }
}

/* v0.12.28 Dancer profile hierarchy: studio assignments first, optional Exercise & Recovery last. */
.iema-dancer-hero-profile-first{grid-template-columns:auto 1fr !important}
.iema-dancer-overview-stack{display:grid;gap:18px}
.iema-dancer-assignments-panel .iema-section-head{align-items:flex-start}
.iema-count-pill{white-space:nowrap;border:1px solid rgba(55,183,255,.32);background:rgba(0,139,219,.11);color:#79d8ff;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800}
.iema-dancer-assignment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.iema-dancer-assignment-card{border:1px solid rgba(78,151,205,.32);background:rgba(3,17,30,.62);border-radius:14px;padding:15px;min-width:0}
.iema-dancer-assignment-card>span{display:block;color:#5ed0ff;font-size:10px;font-weight:900;letter-spacing:.09em;margin-bottom:7px}
.iema-dancer-assignment-card>strong{display:block;font-size:16px;line-height:1.2;margin-bottom:6px}
.iema-dancer-assignment-card>small{display:block;color:var(--iema-muted,#a9b9ca);line-height:1.45}
.iema-dancer-assignment-card>p{margin:9px 0 0;color:var(--iema-muted,#a9b9ca);font-size:12px;line-height:1.45}
.iema-dancer-exercise-bottom{margin-top:4px}
.iema-dancer-exercise-bottom.is-empty{padding-top:20px;padding-bottom:20px}
.iema-dancer-exercise-inline-stats{display:flex;gap:10px}
.iema-dancer-exercise-inline-stats>div{min-width:92px;border:1px solid rgba(78,151,205,.3);border-radius:12px;padding:10px 12px;text-align:center;background:rgba(3,17,30,.55)}
.iema-dancer-exercise-inline-stats strong{display:block;color:#55d3ff;font-size:20px}.iema-dancer-exercise-inline-stats small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em}
.iema-dancer-exercise-grid{margin-top:15px}.iema-dancer-exercise-grid>section{border:1px solid rgba(78,151,205,.22);border-radius:13px;padding:14px;background:rgba(3,17,30,.38)}
.iema-dancer-exercise-grid h4{margin:0 0 10px}.iema-dancer-exercise-empty{margin-top:12px}
@media (max-width:980px){.iema-dancer-assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.iema-dancer-assignment-grid{grid-template-columns:1fr}.iema-dancer-exercise-inline-stats{width:100%;margin-top:10px}.iema-dancer-exercise-inline-stats>div{flex:1}.iema-dancer-exercise-bottom .iema-section-head{display:block}}

/* v0.12.29 Keep dancer assignment cards inside the profile panel. Use a non-article card element so the owner-portal theme article reset (100vw) cannot escape the panel. */
.iema-owner-shell .iema-dancer-assignment-grid>.iema-dancer-assignment-card{width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;box-sizing:border-box!important;}
.iema-owner-shell .iema-dancer-assignment-grid{width:100%!important;min-width:0!important;max-width:100%!important;}

/* v0.12.30 Corrected dancer assignment card closing markup. The card opens as a div and must close as a div so subsequent overview panels remain inside the dancer workspace. */


/* v0.12.31 Refined dancer snapshot: compact, balanced profile facts instead of a half-width team row and loose inline metadata. */
.iema-owner-shell .iema-dancer-workspace .iema-dancer-profile-panel{
  padding:24px!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-bottom:16px!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-head h3{
  margin:6px 0 0!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-item{
  min-width:0!important;
  padding:14px 15px!important;
  background:#0a111a!important;
  border:1px solid #1f3043!important;
  border-radius:12px!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-item span{
  display:block!important;
  margin-bottom:5px!important;
  color:#7f91a8!important;
  font-size:9px!important;
  line-height:1.2!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-item strong{
  display:block!important;
  color:#edf5ff!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:850!important;
  overflow-wrap:anywhere!important;
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-email{
  grid-column:1 / -1!important;
}
@media(max-width:900px){
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-grid{grid-template-columns:1fr!important}
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-email{grid-column:auto!important}
}

/* v0.12.32 Premium dancer snapshot — compact five-fact information rail with deliberate hierarchy. */
body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-profile-panel{
  padding:26px 28px 28px!important;
  background:linear-gradient(180deg,rgba(16,20,25,.98),rgba(13,17,22,.98))!important;
  border:1px solid rgba(89,145,190,.16)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.02)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin:0 0 18px!important;
  padding:0!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-head .iema-kicker{
  color:#67d7ff!important;
  font-size:9px!important;
  font-weight:900!important;
  letter-spacing:.13em!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-head h3{
  margin:7px 0 0!important;
  font-size:20px!important;
  line-height:1.15!important;
  letter-spacing:-.02em!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-grid{
  display:grid!important;
  grid-template-columns:1.25fr 1fr .72fr .92fr 1.55fr!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  align-items:stretch!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-item,
body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-email{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  min-height:78px!important;
  padding:15px 16px!important;
  margin:0!important;
  grid-column:auto!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  background:linear-gradient(145deg,#0b1521 0%,#08111b 100%)!important;
  border:1px solid rgba(69,126,172,.34)!important;
  border-radius:13px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-item:before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:15px!important;
  bottom:15px!important;
  width:2px!important;
  border-radius:0 2px 2px 0!important;
  background:linear-gradient(180deg,#59d8ff,#158fff)!important;
  opacity:.72!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-item span{
  display:block!important;
  margin:0 0 7px!important;
  color:#8297ae!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-item strong{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  color:#f5f8fc!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-email strong{
  color:#c9e9fb!important;
  font-size:13px!important;
}
@media(max-width:1100px){
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-email{
    grid-column:2 / -1!important;
  }
}
@media(max-width:760px){
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-profile-panel{padding:22px 18px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-email{grid-column:1 / -1!important}
}
@media(max-width:500px){
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-grid{grid-template-columns:1fr!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-email{grid-column:auto!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-snapshot-item strong{white-space:normal!important}
}


/* v0.12.34 — current dancer avatar preview in unified Edit Account modal */
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-contact-grid{
  align-items:start!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-field{
  min-width:0!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-label{
  display:block!important;
  margin:0 0 8px!important;
  color:#f5f8fc!important;
  font-weight:800!important;
  line-height:1.2!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-control{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  min-height:92px!important;
  padding:12px!important;
  border:1px solid rgba(84,133,173,.42)!important;
  border-radius:13px!important;
  background:linear-gradient(145deg,#0a1420 0%,#08111a 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-preview{
  flex:0 0 72px!important;
  width:72px!important;
  height:72px!important;
  margin:0!important;
  object-fit:cover!important;
  border-radius:14px!important;
  border:1px solid rgba(94,180,237,.55)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.28)!important;
  background:#0a1119!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-actions{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:7px!important;
  min-width:0!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-file-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-height:34px!important;
  margin:0!important;
  padding:7px 12px!important;
  border:1px solid rgba(69,181,255,.65)!important;
  border-radius:9px!important;
  background:linear-gradient(180deg,#20b4ff,#128cf0)!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:800!important;
  cursor:pointer!important;
  box-shadow:0 7px 18px rgba(16,142,239,.18)!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-file-button input[type="file"]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-actions small{
  margin:0!important;
  color:#8ea4bb!important;
  font-size:10px!important;
  line-height:1.35!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-remove{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  margin:2px 0 0!important;
  color:#bdcad8!important;
  font-size:11px!important;
  font-weight:700!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-remove input{
  margin:0!important;
}
@media(max-width:650px){
  body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-control{
    align-items:flex-start!important;
  }
  body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-preview{
    width:64px!important;
    height:64px!important;
    flex-basis:64px!important;
  }
}

/* v0.12.36 — Faculty management mirrors the dancer profile workflow. */
.iema-faculty-back-link{display:inline-flex;margin:2px 0 14px;text-decoration:none}
.iema-owner-faculty-profile{display:grid;gap:20px}
.iema-owner-faculty-profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center}
.iema-owner-faculty-profile-hero>img{width:96px;height:96px;object-fit:cover;border-radius:22px;border:1px solid rgba(78,183,255,.4);background:#091522}
.iema-owner-faculty-profile-copy h2{margin:4px 0 4px;font-size:clamp(1.8rem,3vw,2.7rem)}
.iema-owner-faculty-profile-copy p{margin:0;color:var(--iema-muted,#9fb0c5);font-weight:700}
.iema-owner-faculty-snapshot{display:grid;grid-template-columns:1.2fr 1.5fr 1fr .8fr .8fr;gap:10px}
.iema-owner-faculty-snapshot>div{min-width:0;padding:14px 16px;border:1px solid rgba(80,153,214,.25);border-radius:14px;background:rgba(3,14,25,.48)}
.iema-owner-faculty-snapshot span{display:block;margin-bottom:6px;color:#78d7ff;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.iema-owner-faculty-snapshot strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.iema-owner-faculty-assignment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.iema-owner-faculty-assignment-card{padding:16px;border:1px solid rgba(66,167,236,.3);border-radius:15px;background:#081421}
.iema-owner-faculty-assignment-card>span{color:#6ed7ff;font-size:.68rem;font-weight:900;letter-spacing:.1em}
.iema-owner-faculty-assignment-card h3{margin:8px 0 5px}
.iema-owner-faculty-assignment-card p{margin:0;color:var(--iema-muted,#9fb0c5)}
.iema-owner-faculty-dancer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.iema-owner-faculty-dancer-grid a{display:flex;align-items:center;gap:10px;min-width:0;padding:11px 12px;border:1px solid rgba(66,167,236,.24);border-radius:14px;background:#081421;color:inherit;text-decoration:none}
.iema-owner-faculty-dancer-grid img{width:44px;height:44px;object-fit:cover;border-radius:12px}
.iema-owner-faculty-dancer-grid strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.iema-owner-staff-card-wrap .iema-owner-staff-card{text-decoration:none;color:inherit}
.iema-account-photo-field>span{display:block;margin-bottom:7px;font-weight:800}
.iema-account-photo-current{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid rgba(80,153,214,.25);border-radius:13px;background:#081421}
.iema-account-photo-current img{width:64px;height:64px;object-fit:cover;border-radius:13px}
.iema-account-photo-replace{display:inline-flex!important;position:relative;align-items:center;justify-content:center;width:auto!important;padding:9px 12px;border:1px solid rgba(80,153,214,.4);border-radius:10px;cursor:pointer;font-weight:800}
.iema-account-photo-replace input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
.iema-account-photo-remove{margin-top:8px}
@media(max-width:1100px){.iema-owner-faculty-snapshot{grid-template-columns:repeat(2,minmax(0,1fr))}.iema-owner-faculty-assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.iema-owner-faculty-dancer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.iema-owner-faculty-profile-hero{grid-template-columns:auto 1fr}.iema-owner-faculty-profile-edit{grid-column:1/-1;width:100%}.iema-owner-faculty-snapshot,.iema-owner-faculty-assignment-grid,.iema-owner-faculty-dancer-grid{grid-template-columns:1fr}}


/* =========================================================
   v0.12.37 — Studio Accent Branding
   One accent system, selectable by the studio owner.
   ========================================================= */
.iema-brand-accent-setting{margin:18px 0 20px;padding:18px;border:1px solid #293246;border-radius:18px;background:linear-gradient(145deg,#0d131d,#101927);display:grid;gap:15px}
.iema-brand-accent-copy h4{margin:3px 0 5px;color:#fff;font-size:17px}.iema-brand-accent-copy p{margin:0;color:#9daabd;font-size:12px;line-height:1.5}
.iema-brand-accent-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.iema-brand-accent-choice{display:block!important;cursor:pointer}.iema-brand-accent-choice>input{position:absolute;opacity:0;pointer-events:none;width:1px!important;height:1px!important}.iema-brand-accent-choice>span{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 28px;gap:3px 10px;align-items:center;min-height:76px;padding:13px 14px;border:1px solid #2a3448;border-radius:14px;background:#121b28;transition:.18s ease}.iema-brand-accent-choice b{color:#f7f9fc;font-size:13px}.iema-brand-accent-choice small{grid-column:1;color:#8e9caf;font-size:11px;line-height:1.4}.iema-brand-accent-choice input:checked+span{border-color:var(--md2-blue);box-shadow:0 0 0 2px color-mix(in srgb,var(--md2-blue) 22%,transparent);background:color-mix(in srgb,var(--md2-blue) 9%,#121b28)}
.iema-accent-swatch{grid-column:2;grid-row:1/3;width:27px;height:27px;border-radius:9px;background:var(--swatch,#20b7ff);border:2px solid rgba(255,255,255,.62);box-shadow:0 4px 12px rgba(0,0,0,.28)}.iema-accent-swatch-default{--swatch:#20b7ff}
.iema-brand-accent-picker{display:grid!important;gap:8px!important;color:#dce4f0!important}.iema-brand-accent-picker>div{display:flex;align-items:center;gap:10px}.iema-brand-accent-picker input[type=color]{width:54px!important;height:38px!important;padding:3px!important;border-radius:10px!important;background:#151f2e!important;border:1px solid #344159!important;cursor:pointer}.iema-brand-accent-picker code{padding:8px 10px;border-radius:9px;background:#080d14;color:#d7e0ed;font-size:12px;border:1px solid #263247}.iema-brand-accent-picker>small{color:#8390a2;font-size:10px;font-weight:600;line-height:1.45}
.iema-brand-accent-preview{--preview-accent:#20b7ff;display:flex;align-items:center;gap:10px;min-height:58px;padding:11px 13px;border:1px solid #283348;border-radius:13px;background:#090f17}.iema-brand-accent-preview>span{color:#8997aa;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-right:auto}.iema-brand-accent-preview button{border:0;border-radius:9px;background:var(--preview-accent);color:#fff;padding:8px 11px;font-size:11px;font-weight:900}.iema-brand-accent-preview>b{color:var(--preview-accent);font-size:11px}.iema-brand-accent-preview>i{width:9px;height:9px;border-radius:50%;background:var(--preview-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--preview-accent) 18%,transparent)}
@media(max-width:650px){.iema-brand-accent-options{grid-template-columns:1fr}.iema-brand-accent-preview{flex-wrap:wrap}.iema-brand-accent-preview>span{width:100%}}

/* v0.12.38 audit log containment and responsive layout */
.iema-owner-shell .iema-audit-panel{min-width:0!important;max-width:100%!important;overflow:hidden!important}
.iema-owner-shell .iema-audit-panel>*{min-width:0!important;max-width:100%!important}
.iema-owner-shell .iema-audit-filters{grid-template-columns:repeat(3,minmax(180px,1fr))!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}
.iema-owner-shell .iema-audit-filters label,.iema-owner-shell .iema-audit-filters .iema-btn{min-width:0!important;max-width:100%!important}
.iema-owner-shell .iema-audit-filters .iema-btn{justify-self:start!important;min-width:120px!important}
.iema-owner-shell .iema-audit-list{min-width:0!important;width:100%!important;max-width:100%!important}
.iema-owner-shell .iema-audit-row{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:hidden!important}
.iema-owner-shell .iema-audit-row>div,.iema-owner-shell .iema-audit-row details{min-width:0!important;max-width:100%!important}
.iema-owner-shell .iema-audit-row strong,.iema-owner-shell .iema-audit-row small{overflow-wrap:anywhere!important;word-break:break-word!important}
@media(max-width:1100px){.iema-owner-shell .iema-audit-filters{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){.iema-owner-shell .iema-audit-filters{grid-template-columns:1fr!important}.iema-owner-shell .iema-audit-filters .iema-btn{width:100%!important}}

/* v0.12.39 audit detail layout refinement */
.iema-owner-shell .iema-audit-row{grid-template-columns:minmax(0,1fr)!important;gap:10px!important;align-items:start!important}
.iema-owner-shell .iema-audit-row>.iema-audit-main{display:grid!important;gap:5px!important;min-width:0!important;width:100%!important}
.iema-owner-shell .iema-audit-row details{display:block!important;min-width:0!important;width:100%!important;max-width:100%!important}
.iema-owner-shell .iema-audit-row details>summary{display:inline-flex!important;width:auto!important;max-width:100%!important;list-style:none!important}
.iema-owner-shell .iema-audit-row details>summary::-webkit-details-marker{display:none!important}
.iema-owner-shell .iema-audit-change{grid-column:auto!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
.iema-owner-shell .iema-audit-change span{min-width:0!important;overflow:hidden!important}
.iema-owner-shell .iema-audit-change code{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;white-space:pre-wrap!important;overflow-wrap:anywhere!important;word-break:break-word!important}

/* =========================================================
   v0.12.41 — Studio Owner accent completion
   Studio accent now owns the owner-portal cyan/blue system.
   Accent text is independently configurable for filled accents.
   ========================================================= */
.iema-owner-shell{
  --owner-accent:var(--studio-accent)!important;
  --owner-accent-2:var(--studio-accent-strong)!important;
}
/* Filled accent controls: one color system + one readable foreground setting. */
.iema-owner-shell .iema-btn:not(.iema-btn-ghost):not(.iema-btn-secondary),
.iema-owner-shell button.iema-btn:not(.iema-btn-ghost):not(.iema-btn-secondary),
.iema-owner-shell a.iema-btn:not(.iema-btn-ghost):not(.iema-btn-secondary),
.iema-owner-shell .iema-quick-actions a,
.iema-owner-shell input[type="submit"],
.iema-owner-shell .iema-primary-nav a.active,
.iema-owner-shell .iema-portal-user summary,
body.iema-owner-portal-page>.iema-create-modal.iema-owner-modal-body-portal .iema-btn:not(.iema-btn-ghost):not(.iema-btn-secondary),
body.iema-owner-portal-page>.iema-create-modal.iema-plan-fullscreen-portal .iema-btn:not(.iema-btn-ghost):not(.iema-btn-secondary){
  background:linear-gradient(180deg,var(--studio-accent) 0%,var(--studio-accent-strong) 100%)!important;
  border-color:var(--studio-accent)!important;
  color:var(--studio-accent-text)!important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--studio-accent) 24%,transparent)!important;
}
.iema-owner-shell .iema-btn:not(.iema-btn-ghost):not(.iema-btn-secondary) *,
.iema-owner-shell .iema-primary-nav a.active *,
.iema-owner-shell .iema-portal-user summary strong,
.iema-owner-shell .iema-portal-user summary small,
.iema-owner-shell .iema-portal-user summary b,
body.iema-owner-portal-page>.iema-create-modal.iema-owner-modal-body-portal .iema-btn:not(.iema-btn-ghost):not(.iema-btn-secondary) *,
body.iema-owner-portal-page>.iema-create-modal.iema-plan-fullscreen-portal .iema-btn:not(.iema-btn-ghost):not(.iema-btn-secondary) *{color:var(--studio-accent-text)!important}

/* Consistent rollover: accent lightens instead of jumping back to MyDancer cyan. */
.iema-owner-shell .iema-btn:not(.iema-btn-ghost):not(.iema-btn-secondary):hover,
.iema-owner-shell .iema-quick-actions a:hover,
.iema-owner-shell input[type="submit"]:hover,
.iema-owner-shell .iema-primary-nav a.active:hover,
.iema-owner-shell .iema-portal-user summary:hover,
body.iema-owner-portal-page>.iema-create-modal.iema-owner-modal-body-portal .iema-btn:not(.iema-btn-ghost):not(.iema-btn-secondary):hover,
body.iema-owner-portal-page>.iema-create-modal.iema-plan-fullscreen-portal .iema-btn:not(.iema-btn-ghost):not(.iema-btn-secondary):hover{
  background:linear-gradient(180deg,var(--studio-accent-hover) 0%,var(--studio-accent) 100%)!important;
  border-color:var(--studio-accent-hover)!important;
  color:var(--studio-accent-text)!important;
  box-shadow:0 12px 28px color-mix(in srgb,var(--studio-accent) 32%,transparent)!important;
}

/* Accent-colored labels, active states and icons. */
.iema-owner-shell .iema-kicker,
.iema-owner-shell .iema-secondary-nav a.active,
.iema-owner-shell .iema-text-action,
.iema-owner-shell .iema-ath-card span,
.iema-owner-shell .iema-ath-card b,
.iema-owner-shell .iema-owner-manage-dancer-title small,
.iema-owner-shell .iema-owner-manage-dancer-main>b,
.iema-owner-shell .iema-owner-roster-search>span,
.iema-owner-shell .iema-owner-team-card>span,
.iema-owner-shell .iema-owner-team-card>b,
.iema-owner-shell .iema-owner-program-summary summary small,
.iema-owner-shell .iema-owner-snapshot-stat small,
.iema-owner-shell .iema-owner-program-row time strong,
.iema-owner-shell .iema-owner-program-row>b,
.iema-owner-shell .iema-audit-change b,
.iema-owner-shell .iema-plan-library-row b,
.iema-owner-shell .iema-exercise-dancer-card em,
.iema-owner-shell .iema-exercise-dancer-card>b,
.iema-owner-shell .iema-dancer-exercise-stats strong,
body.iema-owner-portal-page>.iema-create-modal.iema-owner-modal-body-portal .iema-kicker,
body.iema-owner-portal-page>.iema-create-modal.iema-plan-fullscreen-portal .iema-kicker{
  color:var(--studio-accent)!important;
}
.iema-owner-shell .iema-secondary-nav a.active{border-bottom-color:var(--studio-accent)!important}
.iema-owner-shell .iema-text-action:hover{color:var(--studio-accent-hover)!important}

/* Accent chips and circular affordances use translucent studio color, not fixed blue. */
.iema-owner-shell .iema-count-chip,
.iema-owner-shell .iema-role-chip{
  background:color-mix(in srgb,var(--studio-accent) 14%,#08111b)!important;
  color:var(--studio-accent)!important;
  border-color:color-mix(in srgb,var(--studio-accent) 38%,#203044)!important;
}
.iema-owner-shell .iema-owner-dancer-tile>b{
  background:color-mix(in srgb,var(--studio-accent) 13%,#08111b)!important;
  color:var(--studio-accent)!important;
}

/* Borders, selected cards and focus rings. */
.iema-owner-shell .iema-ath-card:hover,
.iema-owner-shell .iema-athlete-roster-card:hover,
.iema-owner-shell .iema-owner-dancer-tile:hover,
.iema-owner-shell .iema-owner-staff-card:hover,
.iema-owner-shell .iema-owner-parent-card:hover,
.iema-owner-shell input:focus,
.iema-owner-shell select:focus,
.iema-owner-shell textarea:focus{
  border-color:var(--studio-accent)!important;
}
.iema-owner-shell input:focus,
.iema-owner-shell select:focus,
.iema-owner-shell textarea:focus{
  box-shadow:0 0 0 4px color-mix(in srgb,var(--studio-accent) 15%,transparent)!important;
}
.iema-owner-shell .iema-ath-card:hover,
.iema-owner-shell .iema-athlete-roster-card:hover,
.iema-owner-shell .iema-owner-dancer-tile:hover,
.iema-owner-shell .iema-owner-staff-card:hover,
.iema-owner-shell .iema-owner-parent-card:hover{
  box-shadow:0 12px 28px color-mix(in srgb,var(--studio-accent) 12%,transparent)!important;
}

/* Branding settings: accent + foreground controls and accurate preview. */
.iema-brand-accent-pickers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.iema-brand-accent-save-note{display:block;color:#8390a2;font-size:10px;font-weight:650;line-height:1.45;margin-top:-4px}
.iema-brand-accent-preview{--preview-accent-text:#fff}
.iema-brand-accent-preview button{color:var(--preview-accent-text)!important;background:linear-gradient(180deg,var(--preview-accent),color-mix(in srgb,var(--preview-accent) 78%,#000))!important;border:1px solid var(--preview-accent)!important;transition:.16s ease}
.iema-brand-accent-preview button:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--preview-accent) 84%,#fff),var(--preview-accent))!important}
.iema-brand-accent-preview>b{color:var(--preview-accent)!important}
@media(max-width:760px){.iema-brand-accent-pickers{grid-template-columns:1fr}}

/* =========================================================
   v0.12.43 — Studio accent correction
   Keep the working v0.12.41 accent foundation and finish the
   remaining owner-portal cyan/blue controls without redefining
   the core color variables.
   ========================================================= */

/* Secondary filled actions (e.g. All Teams) are part of the studio accent system. */
.iema-owner-shell .iema-btn-secondary,
.iema-owner-shell button.iema-btn-secondary,
.iema-owner-shell a.iema-btn-secondary{
  background:linear-gradient(180deg,var(--studio-accent) 0%,var(--studio-accent-strong) 100%)!important;
  border-color:var(--studio-accent)!important;
  color:var(--studio-accent-text)!important;
  box-shadow:0 8px 20px color-mix(in srgb,var(--studio-accent) 20%,transparent)!important;
}
.iema-owner-shell .iema-btn-secondary *,
.iema-owner-shell button.iema-btn-secondary *,
.iema-owner-shell a.iema-btn-secondary *{color:var(--studio-accent-text)!important}
.iema-owner-shell .iema-btn-secondary:hover,
.iema-owner-shell button.iema-btn-secondary:hover,
.iema-owner-shell a.iema-btn-secondary:hover{
  background:linear-gradient(180deg,var(--studio-accent-hover) 0%,var(--studio-accent) 100%)!important;
  border-color:var(--studio-accent-hover)!important;
  color:var(--studio-accent-text)!important;
  box-shadow:0 11px 26px color-mix(in srgb,var(--studio-accent) 28%,transparent)!important;
}

/* Owner-portal accent copy. These are labels/actions that were still using the legacy cyan. */
.iema-owner-shell .iema-kicker,
.iema-owner-shell .iema-page-kicker,
.iema-owner-shell .iema-account-label,
.iema-owner-shell .iema-owner-program-summary summary small,
.iema-owner-shell .iema-owner-snapshot-stat small,
.iema-owner-shell .iema-owner-roster-search>span,
.iema-owner-shell .iema-owner-team-card>span,
.iema-owner-shell .iema-owner-team-card>b,
.iema-owner-shell .iema-owner-program-row time strong,
.iema-owner-shell .iema-owner-program-row>b,
.iema-owner-shell .iema-owner-program-summary summary em,
.iema-owner-shell .iema-text-action,
.iema-owner-shell .iema-row-arrow,
.iema-owner-shell .iema-chevron,
.iema-owner-shell .iema-ath-card span,
.iema-owner-shell .iema-ath-card b,
.iema-owner-shell .iema-role-chip,
.iema-owner-shell .iema-count-chip,
.iema-owner-shell .iema-owner-parent-card em,
.iema-owner-shell .iema-plan-library-row b,
.iema-owner-shell .iema-owner-manage-dancer-title small,
.iema-owner-shell .iema-owner-manage-dancer-main>b,
.iema-owner-shell .iema-audit-change b{
  color:var(--studio-accent)!important;
}

/* Active navigation is always the studio accent, including rollover. */
.iema-owner-shell .iema-primary-nav a.active,
.iema-owner-shell .iema-secondary-nav a.active{
  border-color:var(--studio-accent)!important;
}
.iema-owner-shell .iema-primary-nav a.active{
  background:linear-gradient(180deg,var(--studio-accent) 0%,var(--studio-accent-strong) 100%)!important;
  color:var(--studio-accent-text)!important;
  box-shadow:0 8px 22px color-mix(in srgb,var(--studio-accent) 26%,transparent)!important;
}
.iema-owner-shell .iema-primary-nav a.active:hover{
  background:linear-gradient(180deg,var(--studio-accent-hover) 0%,var(--studio-accent) 100%)!important;
  color:var(--studio-accent-text)!important;
  border-color:var(--studio-accent-hover)!important;
}
.iema-owner-shell .iema-primary-nav a.active *{color:var(--studio-accent-text)!important}
.iema-owner-shell .iema-secondary-nav a.active{color:var(--studio-accent)!important;border-bottom-color:var(--studio-accent)!important}

/* The standard filled owner buttons must never fall back to legacy blue on hover/focus. */
.iema-owner-shell .iema-btn:not(.iema-btn-ghost),
.iema-owner-shell button.iema-btn:not(.iema-btn-ghost),
.iema-owner-shell a.iema-btn:not(.iema-btn-ghost),
.iema-owner-shell input[type="submit"]{
  background:linear-gradient(180deg,var(--studio-accent) 0%,var(--studio-accent-strong) 100%)!important;
  border-color:var(--studio-accent)!important;
  color:var(--studio-accent-text)!important;
}
.iema-owner-shell .iema-btn:not(.iema-btn-ghost):hover,
.iema-owner-shell button.iema-btn:not(.iema-btn-ghost):hover,
.iema-owner-shell a.iema-btn:not(.iema-btn-ghost):hover,
.iema-owner-shell input[type="submit"]:hover{
  background:linear-gradient(180deg,var(--studio-accent-hover) 0%,var(--studio-accent) 100%)!important;
  border-color:var(--studio-accent-hover)!important;
  color:var(--studio-accent-text)!important;
}
.iema-owner-shell .iema-btn:not(.iema-btn-ghost) *{color:var(--studio-accent-text)!important}

/* Replace blue hover/focus glow/surfaces with a studio-accent tint. */
.iema-owner-shell .iema-athlete-roster-card:hover,
.iema-owner-shell .iema-owner-dancer-tile:hover,
.iema-owner-shell .iema-owner-parent-card:hover,
.iema-owner-shell .iema-owner-team-card:hover,
.iema-owner-shell .iema-owner-team-card.is-open,
.iema-owner-shell .iema-owner-staff-card:hover,
.iema-owner-shell .iema-ath-card:hover{
  border-color:var(--studio-accent)!important;
  background:color-mix(in srgb,var(--studio-accent) 7%,#0c121a)!important;
  box-shadow:0 12px 28px color-mix(in srgb,var(--studio-accent) 12%,transparent)!important;
}
.iema-owner-shell input:focus,
.iema-owner-shell select:focus,
.iema-owner-shell textarea:focus{
  border-color:var(--studio-accent)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--studio-accent) 15%,transparent)!important;
  outline:none!important;
}

/* Accent chips stay dark but use the studio hue. */
.iema-owner-shell .iema-count-chip,
.iema-owner-shell .iema-role-chip{
  background:color-mix(in srgb,var(--studio-accent) 14%,#08111b)!important;
  border-color:color-mix(in srgb,var(--studio-accent) 42%,#263247)!important;
}


/* =========================================================
   v0.12.44 — Studio Owner iPhone / small-screen production pass
   Desktop remains unchanged. Mobile becomes a purpose-built,
   touch-first layout down through 320 CSS px.
   ========================================================= */
@media(max-width:760px){
  html,body{max-width:100%!important;overflow-x:hidden!important}
  body.iema-owner-portal-page{min-width:0!important}
  body.iema-owner-portal-page .ma-wrap,
  body.iema-owner-portal-page .ma-page,
  body.iema-owner-portal-page article,
  body.iema-owner-portal-page .entry-content{min-width:0!important;max-width:100%!important;overflow-x:hidden!important}

  body.iema-owner-portal-page .iema-owner-shell{
    width:calc(100% - 12px)!important;max-width:none!important;
    margin:6px auto 28px!important;padding:0!important;min-width:0!important;
  }

  /* App bar: brand + large tap targets first, title beneath. */
  body.iema-owner-portal-page .iema-owner-shell .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 46px 46px!important;
    grid-template-areas:'brand menu user' 'heading heading heading'!important;
    gap:10px!important;min-height:0!important;margin-bottom:8px!important;
    padding:12px!important;border-radius:17px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-shell-brand{gap:10px!important;min-width:0!important;overflow:hidden!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-shell-brand .iema-studio-logo{
    width:46px!important;height:46px!important;min-width:46px!important;border-radius:13px!important;padding:4px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-name{
    font-size:16px!important;line-height:1.08!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-account-label{font-size:8px!important;letter-spacing:.1em!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-page-heading{
    padding:8px 2px 1px!important;text-align:left!important;border-top:1px solid rgba(255,255,255,.06)!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-page-heading h1{font-size:23px!important;line-height:1.08!important;margin:0 0 4px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-page-heading p{font-size:11px!important;line-height:1.45!important;max-width:100%!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-mobile-menu-toggle{
    width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;padding:0!important;
    border-color:color-mix(in srgb,var(--studio-accent) 40%,#27384c)!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-mobile-menu-toggle span{color:var(--studio-accent)!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-mobile-menu-toggle:focus-visible{outline-color:var(--studio-accent)!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user{width:46px!important;max-width:46px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary{
    width:46px!important;min-width:46px!important;height:46px!important;min-height:46px!important;padding:3px!important;
    background:var(--studio-accent)!important;border-color:var(--studio-accent)!important;box-shadow:none!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary img{width:36px!important;height:36px!important}

  /* Every panel is allowed to shrink; no viewport-width children. */
  body.iema-owner-portal-page .iema-owner-shell *,
  body.iema-owner-portal-page .iema-owner-shell *::before,
  body.iema-owner-portal-page .iema-owner-shell *::after{box-sizing:border-box!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-panel,
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot,
  body.iema-owner-portal-page .iema-owner-shell .iema-roster-workspace,
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace{
    width:100%!important;max-width:100%!important;min-width:0!important;margin:8px 0!important;padding:14px!important;border-radius:16px!important;overflow:hidden!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-section-head,
  body.iema-owner-portal-page .iema-owner-shell .iema-panel-heading-row,
  body.iema-owner-portal-page .iema-owner-shell .iema-builder-head{
    display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;margin-bottom:14px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-section-head h2,
  body.iema-owner-portal-page .iema-owner-shell .iema-panel-heading-row h2{font-size:22px!important;line-height:1.1!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-section-head p,
  body.iema-owner-portal-page .iema-owner-shell .iema-panel-heading-row p{font-size:12px!important;line-height:1.5!important}

  /* Touch controls. */
  body.iema-owner-portal-page .iema-owner-shell .iema-btn,
  body.iema-owner-portal-page .iema-owner-shell button,
  body.iema-owner-portal-page .iema-owner-shell input[type=submit]{min-height:44px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:10px 13px!important}
  body.iema-owner-portal-page .iema-owner-shell input:not([type=checkbox]):not([type=radio]):not([type=file]),
  body.iema-owner-portal-page .iema-owner-shell select,
  body.iema-owner-portal-page .iema-owner-shell textarea{
    min-width:0!important;max-width:100%!important;width:100%!important;font-size:16px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-form-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-split,
  body.iema-owner-portal-page .iema-owner-shell .iema-action-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-card-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-grid{
    grid-template-columns:minmax(0,1fr)!important;gap:10px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell label,
  body.iema-owner-portal-page .iema-owner-shell .iema-form-grid>*{min-width:0!important}

  /* Overview/dashboard: single-column priority and compact cards. */
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot{padding:14px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-grid{grid-template-columns:minmax(0,1fr)!important;gap:9px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-stat,
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-summary summary{min-height:84px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-row{
    grid-template-columns:72px minmax(0,1fr)!important;gap:10px!important;padding:11px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-program-row>b{grid-column:1/-1!important;text-align:left!important}

  /* People cards: mobile is information-first, then actions. */
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-main{
    display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;gap:11px!important;padding:12px!important;padding-right:12px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-main img{width:58px!important;height:58px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-edit{
    position:static!important;grid-column:1/-1!important;width:100%!important;margin-top:4px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts{grid-template-columns:minmax(0,1fr)!important;gap:7px!important;padding:10px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts>div:first-child{grid-column:auto!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-actions{padding:10px 12px 12px!important;gap:8px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-actions .iema-btn,
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-actions .iema-text-action{width:100%!important;text-align:center!important;margin:0!important}

  body.iema-owner-portal-page .iema-owner-shell .iema-owner-faculty-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-parent-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-faculty-snapshot,
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-faculty-assignment-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-faculty-dancer-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-assignment-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-faculty-card,
  body.iema-owner-portal-page .iema-owner-shell .iema-parent-card{min-width:0!important;max-width:100%!important}

  /* Tables stay inside their panel. Horizontal scrolling is local, never page-level. */
  body.iema-owner-portal-page .iema-owner-shell table{display:block!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  body.iema-owner-portal-page .iema-owner-shell table th,
  body.iema-owner-portal-page .iema-owner-shell table td{white-space:nowrap!important}

  /* Calendar/scheduling controls stack and remain tappable. */
  body.iema-owner-portal-page .iema-owner-shell .iema-full-calendar-bar,
  body.iema-owner-portal-page .iema-owner-shell .iema-full-calendar-actions,
  body.iema-owner-portal-page .iema-owner-shell .iema-calendar-toolbar{
    display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;gap:8px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-full-calendar-actions .iema-btn{width:100%!important}

  /* Audit is readable instead of compressed. */
  body.iema-owner-portal-page .iema-owner-shell .iema-audit-filters{grid-template-columns:minmax(0,1fr)!important;gap:9px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-audit-row{grid-template-columns:minmax(0,1fr)!important;padding:12px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-audit-change{grid-template-columns:minmax(0,1fr)!important}

  /* Modals become iPhone bottom sheets with one-column forms and reachable actions. */
  body.iema-owner-portal-page .iema-create-modal,
  body.iema-owner-portal-page .iema-owner-attendance-modal,
  body.iema-owner-portal-page .iema-schedule-conflict-modal,
  body.iema-owner-portal-page .iema-day-view-modal{padding:0!important;align-items:flex-end!important}
  body.iema-owner-portal-page .iema-create-modal-dialog,
  body.iema-owner-portal-page .iema-owner-person-create-dialog,
  body.iema-owner-portal-page .iema-parent-login-edit-dialog{
    width:100%!important;max-width:none!important;max-height:92dvh!important;margin:0!important;padding:20px 15px 0!important;
    border-left:0!important;border-right:0!important;border-bottom:0!important;border-radius:22px 22px 0 0!important;overflow-y:auto!important;overscroll-behavior:contain!important;
  }
  body.iema-owner-portal-page .iema-create-modal-head{padding-right:42px!important}
  body.iema-owner-portal-page .iema-create-modal-head h2{font-size:25px!important;line-height:1.08!important}
  body.iema-owner-portal-page .iema-parent-login-actions,
  body.iema-owner-portal-page .iema-dancer-create-actions{
    position:sticky!important;bottom:0!important;z-index:4!important;display:grid!important;grid-template-columns:1fr 1fr!important;
    gap:8px!important;margin:10px -15px 0!important;padding:12px 15px calc(12px + env(safe-area-inset-bottom))!important;
    background:rgba(8,13,20,.96)!important;border-top:1px solid #26384c!important;backdrop-filter:blur(14px)!important;
  }
  body.iema-owner-portal-page .iema-parent-login-actions .iema-btn,
  body.iema-owner-portal-page .iema-dancer-create-actions .iema-btn{width:100%!important;min-height:46px!important}

  /* Avatar editor and file inputs cannot widen the modal. */
  body.iema-owner-portal-page .iema-avatar-editor,
  body.iema-owner-portal-page .iema-dancer-avatar-section .iema-avatar-editor{grid-template-columns:minmax(0,1fr)!important;max-width:100%!important}
  body.iema-owner-portal-page input[type=file]{max-width:100%!important;font-size:14px!important}
}

@media(max-width:430px){
  body.iema-owner-portal-page .iema-owner-shell{width:calc(100% - 8px)!important;margin-top:4px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-app-topbar{padding:10px!important;border-radius:15px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-page-heading h1{font-size:21px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-panel,
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot{padding:12px!important;border-radius:14px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-kicker{font-size:9px!important}
}

@media(max-width:350px){
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-name{font-size:14px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-shell-brand .iema-studio-logo{width:42px!important;height:42px!important;min-width:42px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-mobile-menu-toggle,
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user,
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important}
}

/* The mobile navigation drawer is appended to body, so its branding is copied in JS. */
@media(max-width:760px){
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-panel{border-left-color:color-mix(in srgb,var(--studio-accent) 28%,#26384c)!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-panel>header span{color:var(--studio-accent)!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-links a.active{
    background:var(--studio-accent)!important;border-color:var(--studio-accent)!important;color:var(--studio-accent-text)!important;
    box-shadow:0 10px 24px color-mix(in srgb,var(--studio-accent) 22%,transparent)!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-links a.active:after{color:var(--studio-accent-text)!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-links a:active{transform:scale(.985)!important}
}


/* =========================================================
   v0.12.45 — Owner mobile header refinement
   Fix cramped Menu control, title hierarchy, and narrow-screen
   header balance without changing desktop presentation.
   ========================================================= */
@media(max-width:760px){
  body.iema-owner-portal-page .iema-owner-shell .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 72px 46px!important;
    grid-template-areas:'brand menu user' 'heading heading heading'!important;
    column-gap:8px!important;
    row-gap:11px!important;
    padding:12px 12px 11px!important;
    align-items:center!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-shell-brand{
    min-width:0!important;
    overflow:hidden!important;
    gap:9px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-shell-brand>div{
    min-width:0!important;
    overflow:hidden!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-name{
    max-width:100%!important;
    font-size:15px!important;
    line-height:1.08!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-shell-brand .iema-account-label{
    margin-top:3px!important;
    font-size:7px!important;
    line-height:1!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-mobile-menu-toggle{
    width:72px!important;
    min-width:72px!important;
    height:44px!important;
    min-height:44px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    padding:0 10px!important;
    border-radius:13px!important;
    overflow:hidden!important;
    white-space:nowrap!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-mobile-menu-toggle span{
    flex:0 0 auto!important;
    font-size:17px!important;
    line-height:1!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-mobile-menu-toggle b{
    display:block!important;
    min-width:0!important;
    color:#fff!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:850!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user,
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary{
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
    min-height:46px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-page-heading{
    margin:0!important;
    padding:11px 2px 2px!important;
    border-top:1px solid rgba(255,255,255,.085)!important;
    min-width:0!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-page-heading h1{
    margin:0 0 4px!important;
    font-size:21px!important;
    line-height:1.05!important;
    letter-spacing:-.025em!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-page-heading p{
    margin:0!important;
    font-size:10.5px!important;
    line-height:1.35!important;
    color:#aeb9c8!important;
  }
}

@media(max-width:390px){
  body.iema-owner-portal-page .iema-owner-shell .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 64px 44px!important;
    column-gap:7px!important;
    padding:10px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-shell-brand .iema-studio-logo{
    width:42px!important;height:42px!important;min-width:42px!important;border-radius:12px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-name{font-size:14px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-mobile-menu-toggle{
    width:64px!important;min-width:64px!important;height:42px!important;min-height:42px!important;padding:0 8px!important;gap:5px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-mobile-menu-toggle b{font-size:10px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user,
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary{
    width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-portal-user summary img{width:34px!important;height:34px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-page-heading h1{font-size:20px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-page-heading p{font-size:10px!important}
}

@media(max-width:340px){
  body.iema-owner-portal-page .iema-owner-shell .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 44px 42px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-mobile-menu-toggle{
    width:44px!important;min-width:44px!important;padding:0!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-mobile-menu-toggle b{display:none!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-name{font-size:13px!important}
}


/* =========================================================
   v0.12.46 — Owner mobile navigation refinement
   Turn the mobile drawer into a compact branded side sheet,
   clarify parent/child navigation hierarchy, and keep studio
   accent branding authoritative inside the body-level drawer.
   ========================================================= */
@media(max-width:760px){
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-backdrop{
    background:rgba(0,0,0,.68)!important;
    backdrop-filter:blur(7px)!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-panel{
    top:8px!important;
    right:8px!important;
    bottom:8px!important;
    width:min(360px,calc(100vw - 20px))!important;
    max-width:calc(100vw - 20px)!important;
    border:1px solid color-mix(in srgb,var(--studio-accent) 22%,#26384c)!important;
    border-radius:20px!important;
    overflow:hidden!important;
    background:linear-gradient(180deg,#0a121c 0%,#070c12 100%)!important;
    box-shadow:-18px 12px 56px rgba(0,0,0,.52)!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-panel>header{
    min-height:78px!important;
    padding:15px 16px!important;
    gap:12px!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-panel>header div{
    gap:2px!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-panel>header span{
    color:var(--studio-accent)!important;
    font-size:8px!important;
    letter-spacing:.14em!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-panel>header strong{
    font-size:20px!important;
    line-height:1.1!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-panel>header button{
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    border-radius:12px!important;
    border-color:color-mix(in srgb,var(--studio-accent) 25%,#2b4057)!important;
    background:#0e1824!important;
    color:#fff!important;
    font-size:26px!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-content{
    padding:14px 12px 18px!important;
    scrollbar-width:thin!important;
    scrollbar-color:color-mix(in srgb,var(--studio-accent) 42%,#314154) transparent!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-section{
    gap:7px!important;
    margin:0 0 16px!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-section:last-child{
    margin-bottom:2px!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-section>small{
    padding:0 7px!important;
    color:#71859e!important;
    font-size:8px!important;
    letter-spacing:.14em!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-links{
    gap:6px!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-links a{
    min-height:50px!important;
    padding:11px 13px!important;
    border:1px solid rgba(255,255,255,.035)!important;
    border-radius:13px!important;
    background:#0d151f!important;
    color:#d7e1ed!important;
    font-size:13px!important;
    font-weight:800!important;
    box-shadow:none!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-links a:after{
    color:#64768c!important;
    font-size:19px!important;
  }
  /* When a child section is present, the active top-level item is context,
     not a second primary CTA. Keep it subtle and let the child own the fill. */
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-primary .iema-mobile-nav-links a.active{
    background:color-mix(in srgb,var(--studio-accent) 12%,#0d151f)!important;
    border-color:color-mix(in srgb,var(--studio-accent) 40%,#243449)!important;
    color:var(--studio-accent)!important;
    box-shadow:inset 3px 0 0 var(--studio-accent)!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-primary .iema-mobile-nav-links a.active:after{
    color:var(--studio-accent)!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-secondary .iema-mobile-nav-links a.active,
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-role .iema-mobile-nav-links a.active{
    background:var(--studio-accent)!important;
    border-color:var(--studio-accent)!important;
    color:var(--studio-accent-text)!important;
    box-shadow:0 8px 20px color-mix(in srgb,var(--studio-accent) 18%,transparent)!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-secondary .iema-mobile-nav-links a.active:after,
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-role .iema-mobile-nav-links a.active:after{
    color:var(--studio-accent-text)!important;
  }
  @media(hover:hover) and (pointer:fine){
    .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-links a:not(.active):hover{
      background:color-mix(in srgb,var(--studio-accent) 8%,#0d151f)!important;
      border-color:color-mix(in srgb,var(--studio-accent) 24%,#26384c)!important;
      color:#fff!important;
    }
    .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-links a:not(.active):hover:after{
      color:var(--studio-accent)!important;
    }
  }
}
@media(max-width:390px){
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-panel{
    top:6px!important;
    right:6px!important;
    bottom:6px!important;
    width:calc(100vw - 12px)!important;
    max-width:calc(100vw - 12px)!important;
    border-radius:17px!important;
  }
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-content{padding:12px 10px 16px!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-links a{min-height:48px!important;padding:10px 12px!important}
}

/* v0.12.47 — Owner mobile navigation nested section menus */
@media(max-width:760px){
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-group{display:grid!important;gap:6px!important;min-width:0!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-group-row{display:grid!important;grid-template-columns:minmax(0,1fr) 46px!important;gap:6px!important;align-items:stretch!important;min-width:0!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-group-row>a{min-width:0!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-group-row>a:after{display:none!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-subtoggle{width:46px!important;min-width:46px!important;min-height:48px!important;border:1px solid #1d2b3a!important;border-radius:14px!important;background:#0d1723!important;color:#8da1ba!important;display:grid!important;place-items:center!important;cursor:pointer!important;padding:0!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-subtoggle span{font-size:20px!important;line-height:1!important;transition:transform .16s ease!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-subtoggle[aria-expanded="true"] span{transform:rotate(180deg)!important;color:var(--studio-accent)!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-sublinks{display:grid!important;gap:5px!important;margin:0 0 3px 14px!important;padding:4px 0 2px 11px!important;border-left:2px solid color-mix(in srgb,var(--studio-accent) 38%,#243346)!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-sublinks[hidden]{display:none!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-sublinks a{min-height:44px!important;padding:10px 12px!important;border-radius:12px!important;background:#0a131e!important;border:1px solid #172536!important;color:#c6d2e1!important;font-size:13px!important;font-weight:800!important;display:flex!important;align-items:center!important;justify-content:space-between!important;text-decoration:none!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-sublinks a:after{content:'›'!important;color:#60748e!important;font-size:19px!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-sublinks a.active{background:var(--studio-accent)!important;color:var(--studio-accent-text)!important;border-color:var(--studio-accent)!important;box-shadow:none!important}
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-sublinks a.active:after{color:var(--studio-accent-text)!important}
}


/* v0.12.48 — Mobile section navigation mirrors desktop
   Keep the drawer top-level only. The active section's secondary tabs remain
   directly on the page as a compact, touch-friendly horizontal rail. */
@media(max-width:760px){
  .iema-owner-shell .iema-secondary-nav{
    display:flex!important;
    align-items:stretch!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    margin:10px 0 14px!important;
    padding:7px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-inline:contain!important;
    scrollbar-width:none!important;
    scroll-snap-type:x proximity!important;
    border:1px solid #202b38!important;
    border-radius:15px!important;
    background:#0d1117!important;
    box-shadow:0 8px 24px rgba(0,0,0,.16)!important;
  }
  .iema-owner-shell .iema-secondary-nav::-webkit-scrollbar{display:none!important}
  .iema-owner-shell .iema-secondary-nav a{
    flex:0 0 auto!important;
    min-height:44px!important;
    min-width:max-content!important;
    padding:10px 14px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid transparent!important;
    border-radius:11px!important;
    background:transparent!important;
    color:#c6d0dd!important;
    text-decoration:none!important;
    white-space:nowrap!important;
    font-size:13px!important;
    font-weight:850!important;
    line-height:1.1!important;
    scroll-snap-align:start!important;
    box-shadow:none!important;
  }
  .iema-owner-shell .iema-secondary-nav a.active{
    background:var(--studio-accent)!important;
    border-color:var(--studio-accent)!important;
    color:var(--studio-accent-text)!important;
    box-shadow:0 7px 18px color-mix(in srgb,var(--studio-accent) 24%,transparent)!important;
  }
  .iema-owner-shell .iema-secondary-nav a:focus-visible{
    outline:2px solid var(--studio-accent)!important;
    outline-offset:2px!important;
  }
  @media(hover:hover) and (pointer:fine){
    .iema-owner-shell .iema-secondary-nav a:not(.active):hover{
      color:var(--studio-accent)!important;
      border-color:color-mix(in srgb,var(--studio-accent) 32%,#202b38)!important;
      background:color-mix(in srgb,var(--studio-accent) 8%,#0d1117)!important;
    }
  }
  /* v0.12.47 nested submenu controls are no longer generated. */
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-group,
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-group-row,
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-sublinks,
  .iema-mobile-nav-drawer.iema-owner-mobile-drawer .iema-mobile-nav-subtoggle{display:contents!important}
}
@media(max-width:390px){
  .iema-owner-shell .iema-secondary-nav{gap:6px!important;padding:6px!important}
  .iema-owner-shell .iema-secondary-nav a{min-height:42px!important;padding:9px 12px!important;font-size:12.5px!important}
}


/* v0.12.49 Mobile faculty cards: the whole card opens the profile, so remove the redundant Open Profile button. */
@media(max-width:760px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-staff-card-wrap .iema-people-card-edit{
    display:none!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-staff-card-wrap .iema-owner-staff-card{
    grid-template-columns:64px minmax(0,1fr) 18px!important;
    padding:14px!important;
    padding-right:14px!important;
    padding-bottom:14px!important;
    min-height:92px!important;
    align-items:center!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-staff-card-wrap .iema-owner-staff-card::after{
    content:'›';
    display:grid;
    place-items:center;
    align-self:center;
    justify-self:end;
    width:18px;
    min-width:18px;
    color:var(--studio-accent)!important;
    font-size:24px;
    font-weight:800;
    line-height:1;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-staff-card-wrap .iema-owner-staff-card:active{
    transform:scale(.995)!important;
    border-color:var(--studio-accent)!important;
    background:color-mix(in srgb,var(--studio-accent) 8%,#0c121a)!important;
  }
}


/* v0.12.50 Dancer cards: card opens profile; Edit Account is the single edit action. */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-card{
  position:relative!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-main::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-edit{
  z-index:3!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-actions{
  display:none!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-card:has(.iema-owner-manage-dancer-main:focus-visible){
  outline:2px solid var(--studio-accent)!important;
  outline-offset:2px!important;
  border-color:var(--studio-accent)!important;
}
@media(hover:hover) and (pointer:fine){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-card:hover{
    border-color:var(--studio-accent)!important;
    background:color-mix(in srgb,var(--studio-accent) 5%,#090e16)!important;
  }
}
@media(max-width:760px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-card{
    cursor:pointer!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-main{
    grid-template-columns:58px minmax(0,1fr)!important;
    padding:14px 124px 14px 14px!important;
    min-height:86px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-edit{
    position:absolute!important;
    top:14px!important;
    right:14px!important;
    width:auto!important;
    min-width:94px!important;
    min-height:38px!important;
    margin:0!important;
    padding:8px 11px!important;
    justify-content:center!important;
    font-size:10.5px!important;
    border-radius:10px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-facts{
    padding:10px 12px 14px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-card:active{
    transform:scale(.995)!important;
    border-color:var(--studio-accent)!important;
    background:color-mix(in srgb,var(--studio-accent) 7%,#090e16)!important;
  }
}
@media(max-width:360px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-main{
    grid-template-columns:52px minmax(0,1fr)!important;
    padding-right:108px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-main img{
    width:52px!important;
    height:52px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-manage-dancer-edit{
    right:10px!important;
    min-width:88px!important;
    padding-left:9px!important;
    padding-right:9px!important;
    font-size:10px!important;
  }
}

/* v0.12.51 — Dancer profile account action */
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-profile-first{grid-template-columns:auto minmax(0,1fr) auto!important;}
.iema-owner-shell .iema-dancer-profile-update{align-self:center;justify-self:end;white-space:nowrap;min-height:44px;}
@media(max-width:680px){
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-profile-first{grid-template-columns:1fr!important;}
  .iema-owner-shell .iema-dancer-profile-update{justify-self:stretch;width:100%;margin-top:4px;min-height:46px;}
}


/* v0.12.52 — tidy dancer profile-photo controls in unified account modal */
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-control{
  align-items:center!important;
  gap:12px!important;
  min-height:0!important;
  padding:10px 12px!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-preview{
  flex:0 0 62px!important;
  width:62px!important;
  height:62px!important;
  border-radius:12px!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-actions{
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
  grid-template-areas:
    "replace help"
    "remove remove"!important;
  align-items:center!important;
  gap:7px 10px!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-file-button{
  grid-area:replace!important;
  min-height:36px!important;
  padding:8px 13px!important;
  border-color:color-mix(in srgb,var(--studio-accent,var(--iema-accent,#20b4ff)) 72%,#fff 8%)!important;
  background:var(--studio-accent,var(--iema-accent,#20b4ff))!important;
  color:var(--studio-accent-text,#fff)!important;
  box-shadow:none!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-file-button:hover,
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-file-button:focus-visible{
  background:color-mix(in srgb,var(--studio-accent,var(--iema-accent,#20b4ff)) 82%,#000)!important;
  color:var(--studio-accent-text,#fff)!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-actions>small{
  grid-area:help!important;
  font-size:10px!important;
  line-height:1.35!important;
  max-width:290px!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-remove{
  grid-area:remove!important;
  display:inline-flex!important;
  width:max-content!important;
  max-width:100%!important;
  align-items:center!important;
  gap:7px!important;
  margin:0!important;
  padding:3px 0!important;
  color:#bdcad8!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:700!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-remove input{
  flex:0 0 auto!important;
  width:16px!important;
  height:16px!important;
  margin:0!important;
}
body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-remove span{
  display:inline!important;
  width:auto!important;
  min-width:0!important;
}
@media(max-width:650px){
  body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-control{
    align-items:center!important;
    gap:11px!important;
  }
  body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-preview{
    width:58px!important;
    height:58px!important;
    flex-basis:58px!important;
  }
  body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-actions{
    grid-template-columns:1fr!important;
    grid-template-areas:"replace" "help" "remove"!important;
    gap:5px!important;
  }
  body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-file-button{
    width:max-content!important;
    min-height:36px!important;
  }
  body.iema-owner-portal-page .iema-dancer-account-unified-form .iema-dancer-account-photo-actions>small{
    max-width:none!important;
  }
}

/* v0.12.53 — stronger dancer identity on mobile without making the profile hero overly tall */
@media(max-width:680px){
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-profile-first{
    padding:18px 18px 16px!important;
    gap:12px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-profile-first>img{
    width:136px!important;
    height:136px!important;
    max-width:none!important;
    border-radius:26px!important;
    margin:0 auto 4px!important;
    border-width:2px!important;
    box-shadow:0 14px 30px rgba(0,0,0,.34)!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-profile-first .iema-dancer-hero-copy{
    display:grid!important;
    justify-items:center!important;
    gap:0!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-profile-first .iema-dancer-hero-copy .iema-kicker{
    margin-top:0!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-profile-first .iema-dancer-hero-copy h2{
    margin:4px 0 7px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-profile-first .iema-athlete-team{
    width:100%!important;
    margin-top:8px!important;
    padding:9px 12px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-profile-update{
    margin-top:2px!important;
  }
}
@media(max-width:380px){
  body.iema-owner-portal-page .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-profile-first>img{
    width:124px!important;
    height:124px!important;
    border-radius:24px!important;
  }
}

/* v0.12.54 — Dancer profile hero consolidation */
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-email{
  display:flex;align-items:center;gap:7px;min-width:0;margin:5px 0 10px;color:#b8c3d1;font-size:13px;line-height:1.35
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-email span{
  color:#8e9cad;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-email a{
  color:#e8eef6;text-decoration:none;font-weight:750;min-width:0;overflow-wrap:anywhere
}
.iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-email a:hover{color:var(--studio-accent,var(--accent))}
@media(max-width:760px){
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-email{justify-content:center;flex-wrap:wrap;margin:4px 0 9px;text-align:center}
  .iema-owner-shell .iema-dancer-workspace .iema-dancer-hero-email span{width:100%;margin-bottom:-3px}
}


/* v0.12.56 — Overview KPI context: today versus studio total. */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-value{
  display:flex!important;align-items:baseline!important;gap:7px!important;flex-wrap:wrap!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-value>span{
  font:inherit!important;color:inherit!important;line-height:inherit!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-value>i{
  font-style:normal!important;font-size:13px!important;font-weight:800!important;letter-spacing:-.01em!important;color:#9aa7b7!important;
}
@media(max-width:640px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-value>i{font-size:12px!important;}
}

/* v0.12.57 — Owner dashboard KPI details open in modals, never inline */
.iema-owner-shell .iema-owner-kpi-modal-trigger{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  min-height:118px!important;
  padding:17px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  text-align:left!important;
  cursor:pointer!important;
  font:inherit!important;
}
.iema-owner-shell .iema-owner-kpi-modal-trigger>span{display:grid!important;gap:3px!important;min-width:0!important}
.iema-owner-shell .iema-owner-kpi-modal-trigger small{color:var(--studio-accent)!important;font-size:9.5px!important;font-weight:900!important;letter-spacing:.09em!important}
.iema-owner-shell .iema-owner-kpi-modal-trigger b{color:#a7b7cb!important;font-size:12px!important;font-weight:700!important}
.iema-owner-shell .iema-owner-kpi-modal-trigger em{font-style:normal!important;color:var(--studio-accent)!important;font-size:24px!important;line-height:1!important;transition:transform .16s ease!important}
@media (hover:hover) and (pointer:fine){
  .iema-owner-shell .iema-owner-kpi-modal-trigger:hover{border-color:var(--studio-accent)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--studio-accent) 8%,#0c131d),#080d14)!important}
  .iema-owner-shell .iema-owner-kpi-modal-trigger:hover em{transform:translateX(3px)!important}
}
.iema-owner-shell .iema-owner-kpi-modal-trigger:focus-visible{outline:2px solid var(--studio-accent)!important;outline-offset:2px!important}
body>.iema-create-modal.iema-owner-kpi-detail-modal>.iema-owner-kpi-detail-dialog,
.iema-owner-shell .iema-owner-kpi-detail-modal .iema-owner-kpi-detail-dialog{width:min(760px,calc(100vw - 32px))!important;max-width:760px!important}
.iema-owner-kpi-detail-list{display:grid!important;gap:10px!important;padding-bottom:4px!important}
.iema-owner-kpi-empty{padding:24px!important;text-align:center!important;border:1px solid #213147!important;border-radius:14px!important;background:#090f17!important;color:#98a9bf!important}
@media(max-width:640px){
  .iema-owner-shell .iema-owner-kpi-modal-trigger{min-height:96px!important}
  body>.iema-create-modal.iema-owner-kpi-detail-modal>.iema-owner-kpi-detail-dialog,
  .iema-owner-shell .iema-owner-kpi-detail-modal .iema-owner-kpi-detail-dialog{width:100%!important;max-width:none!important}
}

/* v0.12.58 — Dashboard KPI detail parity: dancers by team and schedule by room. */
.iema-owner-kpi-grouped-list{display:grid!important;gap:14px!important;padding-bottom:4px!important}
.iema-owner-kpi-group{border:1px solid #213147!important;border-radius:15px!important;background:#080e16!important;overflow:hidden!important}
.iema-owner-kpi-group-head{display:grid!important;grid-template-columns:1fr auto!important;gap:2px 12px!important;padding:13px 15px!important;border-bottom:1px solid #1d2a3b!important;background:#0c141f!important}
.iema-owner-kpi-group-head>span{grid-column:1/-1!important;color:var(--studio-accent)!important;font-size:9px!important;font-weight:900!important;letter-spacing:.11em!important}
.iema-owner-kpi-group-head>strong{font-size:15px!important;color:#f2f6fb!important}
.iema-owner-kpi-group-head>small{align-self:center!important;color:#91a1b5!important;font-size:11px!important;font-weight:700!important}
.iema-owner-kpi-dancer-list,.iema-owner-kpi-room-list{display:grid!important}
.iema-owner-kpi-dancer-row{display:grid!important;grid-template-columns:44px minmax(120px,.8fr) minmax(190px,1.3fr) 18px!important;align-items:center!important;gap:12px!important;padding:12px 15px!important;text-decoration:none!important;color:inherit!important;border-bottom:1px solid #172333!important;min-width:0!important}
.iema-owner-kpi-dancer-row:last-child,.iema-owner-kpi-room-row:last-child{border-bottom:0!important}
.iema-owner-kpi-dancer-row>img{width:44px!important;height:44px!important;border-radius:13px!important;object-fit:cover!important;border:1px solid color-mix(in srgb,var(--studio-accent) 55%,#25364b)!important}
.iema-owner-kpi-dancer-main{display:grid!important;gap:2px!important;min-width:0!important}
.iema-owner-kpi-dancer-main>strong{font-size:13px!important;color:#f4f7fb!important;overflow-wrap:anywhere!important}
.iema-owner-kpi-dancer-main>small{font-size:10px!important;color:#8fa0b5!important}
.iema-owner-kpi-dancer-schedule{display:grid!important;gap:3px!important;min-width:0!important}
.iema-owner-kpi-dancer-schedule>small{color:#a9b7c8!important;font-size:10.5px!important;overflow-wrap:anywhere!important}
.iema-owner-kpi-dancer-schedule b{color:var(--studio-accent)!important;margin-right:5px!important}
.iema-owner-kpi-row-arrow{color:var(--studio-accent)!important;font-size:20px!important;text-align:right!important}
.iema-owner-kpi-room-row{appearance:none!important;-webkit-appearance:none!important;width:100%!important;border:0!important;border-bottom:1px solid #172333!important;background:transparent!important;display:grid!important;grid-template-columns:88px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;padding:13px 15px!important;text-align:left!important;color:inherit!important;cursor:pointer!important;font:inherit!important}
.iema-owner-kpi-room-row time{display:grid!important;gap:1px!important}
.iema-owner-kpi-room-row time strong{color:var(--studio-accent)!important;font-size:12px!important}
.iema-owner-kpi-room-row time small{color:#8292a7!important;font-size:10px!important}
.iema-owner-kpi-room-row>span{display:grid!important;gap:2px!important;min-width:0!important}
.iema-owner-kpi-room-row>span strong{font-size:13px!important;color:#f3f6fa!important;overflow-wrap:anywhere!important}
.iema-owner-kpi-room-row>span small{font-size:10px!important;color:#8fa0b5!important}
.iema-owner-kpi-room-row>b{color:var(--studio-accent)!important;font-size:10.5px!important;white-space:nowrap!important}
@media (hover:hover) and (pointer:fine){
 .iema-owner-kpi-dancer-row:hover,.iema-owner-kpi-room-row:hover{background:color-mix(in srgb,var(--studio-accent) 7%,#080e16)!important}
}
.iema-owner-kpi-dancer-row:focus-visible,.iema-owner-kpi-room-row:focus-visible{outline:2px solid var(--studio-accent)!important;outline-offset:-2px!important}
@media(max-width:640px){
 .iema-owner-kpi-group-head{padding:12px!important}
 .iema-owner-kpi-dancer-row{grid-template-columns:42px minmax(0,1fr) 16px!important;padding:11px 12px!important;gap:10px!important}
 .iema-owner-kpi-dancer-row>img{width:42px!important;height:42px!important}
 .iema-owner-kpi-dancer-schedule{grid-column:2/4!important;padding-top:3px!important}
 .iema-owner-kpi-room-row{grid-template-columns:70px minmax(0,1fr)!important;padding:12px!important;gap:10px!important}
 .iema-owner-kpi-room-row>b{grid-column:2!important;justify-self:start!important}
}

/* v0.12.59 — Premium, consistent owner-dashboard KPI cards with compact visual utilization rails. */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-modal-trigger{
  min-height:148px!important;
  padding:18px 20px!important;
  border-radius:16px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-modal-trigger>.iema-owner-kpi-content{
  display:grid!important;
  grid-template-rows:auto auto auto auto auto!important;
  align-content:center!important;
  gap:5px!important;
  width:100%!important;
  min-width:0!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-value{
  display:flex!important;
  align-items:baseline!important;
  gap:6px!important;
  margin:0!important;
  color:#f7f9fc!important;
  font-size:31px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:-.045em!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-value>span{
  font:inherit!important;
  color:inherit!important;
  line-height:inherit!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-value>i{
  font-style:normal!important;
  font-size:17px!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
  color:#8797aa!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-modal-trigger .iema-owner-kpi-content>b{
  color:#aebbc9!important;
  font-size:11.5px!important;
  line-height:1.35!important;
  font-weight:700!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-meter{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:7px!important;
  margin-top:6px!important;
  overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--studio-accent) 22%,#263448)!important;
  border-radius:999px!important;
  background:#111a25!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-meter>span{
  display:block!important;
  height:100%!important;
  min-width:0!important;
  border-radius:inherit!important;
  background:var(--studio-accent)!important;
  box-shadow:0 0 14px color-mix(in srgb,var(--studio-accent) 28%,transparent)!important;
  transition:width .22s ease!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-meter.is-empty{
  border-style:dashed!important;
  opacity:.55!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-meter.is-empty>span{display:none!important}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-percent{
  color:#7f90a4!important;
  font-size:9.5px!important;
  font-weight:800!important;
  line-height:1.25!important;
  letter-spacing:.01em!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-modal-trigger>em{
  flex:0 0 auto!important;
  align-self:center!important;
  margin-left:8px!important;
}
@media(max-width:760px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-modal-trigger{
    min-height:138px!important;
    padding:16px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-value{font-size:29px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-kpi-value>i{font-size:16px!important}
}

/* =========================================================
   v0.12.60 — Dancer Portal design-system alignment
   Carry Studio Owner Portal branding, navigation, and mobile
   interaction patterns into the Dancer Portal without making
   the dancer experience administrative or dense.
   ========================================================= */

/* Studio accent is the single interactive/accent source in the dancer portal. */
.iema-dancer-portal .iema-kicker,
.iema-dancer-portal .iema-dancer-section-title>span,
.iema-dancer-portal .iema-dancer-agenda-item>div>span,
.iema-dancer-portal .iema-workout-head span,
.iema-dancer-portal .iema-history b,
.iema-dancer-portal .iema-howto-kicker,
body.iema-dancer-portal-page .iema-howto-kicker,
.iema-dancer-portal .iema-dancer-day-counts strong,
.iema-dancer-portal .iema-workout-progress strong,
.iema-dancer-portal .iema-dancer-workout-trigger small{
  color:var(--studio-accent)!important;
}
.iema-dancer-portal .iema-role-nav a.active,
.iema-dancer-portal .iema-btn,
.iema-dancer-portal button.iema-btn,
.iema-dancer-portal .iema-dancer-workout-trigger>b,
.iema-dancer-portal .iema-portal-user summary{
  background:var(--studio-accent)!important;
  border-color:var(--studio-accent)!important;
  color:var(--studio-accent-text)!important;
  box-shadow:0 9px 22px color-mix(in srgb,var(--studio-accent) 20%,transparent)!important;
}
.iema-dancer-portal .iema-role-nav a.active *,
.iema-dancer-portal .iema-btn *,
.iema-dancer-portal .iema-dancer-workout-trigger>b *,
.iema-dancer-portal .iema-portal-user summary *{color:var(--studio-accent-text)!important}
.iema-dancer-portal .iema-workout-progress>div>span{background:var(--studio-accent)!important}
.iema-dancer-portal .iema-complete-check input{accent-color:var(--studio-accent)!important}
.iema-dancer-portal .iema-exercise-number{
  background:color-mix(in srgb,var(--studio-accent) 14%,#09111a)!important;
  border-color:color-mix(in srgb,var(--studio-accent) 42%,#22364b)!important;
  color:var(--studio-accent)!important;
}
.iema-dancer-portal .iema-dancer-day-nav button,
.iema-dancer-portal .iema-dancer-today-btn{
  color:var(--studio-accent)!important;
  border-color:color-mix(in srgb,var(--studio-accent) 35%,#26384c)!important;
}
.iema-dancer-portal .iema-dancer-today-btn{background:color-mix(in srgb,var(--studio-accent) 10%,#09111a)!important}
.iema-dancer-portal .iema-wellness input:focus,
.iema-dancer-portal .iema-wellness textarea:focus{
  border-color:var(--studio-accent)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--studio-accent) 14%,transparent)!important;
}
@media (hover:hover) and (pointer:fine){
  .iema-dancer-portal .iema-role-nav a:not(.active):hover,
  .iema-dancer-portal .iema-dancer-day-nav button:hover,
  .iema-dancer-portal .iema-photo-btn:hover,
  .iema-dancer-portal .iema-howto-btn:hover{
    border-color:color-mix(in srgb,var(--studio-accent) 48%,#26384c)!important;
    color:var(--studio-accent)!important;
    background:color-mix(in srgb,var(--studio-accent) 10%,#101a27)!important;
  }
  .iema-dancer-portal .iema-btn:hover,
  .iema-dancer-portal button.iema-btn:hover,
  .iema-dancer-portal .iema-dancer-workout-trigger>b:hover{
    background:var(--studio-accent-hover)!important;
    border-color:var(--studio-accent-hover)!important;
    color:var(--studio-accent-text)!important;
  }
}

/* Mobile follows the Owner Portal shell pattern: compact brand row, Menu + avatar,
   title beneath, then page-level navigation kept visible. */
@media(max-width:760px){
  html,body{max-width:100%!important;overflow-x:hidden!important}
  body.iema-dancer-portal-page{min-width:0!important;padding-bottom:0!important}
  body.iema-dancer-portal-page .ma-wrap,
  body.iema-dancer-portal-page .ma-page,
  body.iema-dancer-portal-page article,
  body.iema-dancer-portal-page .entry-content{min-width:0!important;max-width:100%!important}

  body.iema-dancer-portal-page .iema-dancer-portal{
    width:calc(100% - 12px)!important;max-width:none!important;min-width:0!important;
    margin:6px auto 28px!important;padding:0!important;
  }
  body.iema-dancer-portal-page .iema-dancer-portal *,
  body.iema-dancer-portal-page .iema-dancer-portal *::before,
  body.iema-dancer-portal-page .iema-dancer-portal *::after{box-sizing:border-box!important}

  body.iema-dancer-portal-page .iema-dancer-portal .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 72px 46px!important;
    grid-template-areas:'brand menu user' 'heading heading heading'!important;
    column-gap:8px!important;row-gap:11px!important;align-items:center!important;
    margin:0 0 8px!important;padding:12px 12px 11px!important;border-radius:17px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-portal .iema-shell-brand{grid-area:brand!important;min-width:0!important;overflow:hidden!important;gap:9px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-shell-brand>div{min-width:0!important;overflow:hidden!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-shell-brand .iema-studio-logo{width:46px!important;height:46px!important;min-width:46px!important;border-radius:13px!important;padding:4px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-studio-name{max-width:100%!important;font-size:15px!important;line-height:1.08!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-account-label{margin-top:3px!important;font-size:7px!important;line-height:1!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-page-heading{grid-area:heading!important;padding:8px 2px 1px!important;text-align:left!important;border-top:1px solid rgba(255,255,255,.06)!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-page-heading h1{font-size:23px!important;line-height:1.08!important;margin:0 0 4px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-page-heading p{font-size:11px!important;line-height:1.45!important;max-width:100%!important}

  body.iema-dancer-portal-page .iema-dancer-portal .iema-mobile-menu-toggle{
    grid-area:menu!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;
    width:72px!important;min-width:72px!important;height:44px!important;min-height:44px!important;padding:0 10px!important;
    border-radius:13px!important;border-color:color-mix(in srgb,var(--studio-accent) 42%,#27384c)!important;white-space:nowrap!important;
  }
  body.iema-dancer-portal-page .iema-dancer-portal .iema-mobile-menu-toggle span{display:block!important;color:var(--studio-accent)!important;font-size:17px!important;line-height:1!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-mobile-menu-toggle b{display:block!important;color:#fff!important;font-size:11px!important;line-height:1!important;font-weight:850!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-mobile-menu-toggle:focus-visible{outline:2px solid var(--studio-accent)!important;outline-offset:2px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-portal-user{grid-area:user!important;width:46px!important;max-width:46px!important;min-width:46px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-portal-user summary{
    grid-template-columns:1fr!important;width:46px!important;min-width:46px!important;height:46px!important;min-height:46px!important;padding:3px!important;
    background:var(--studio-accent)!important;border-color:var(--studio-accent)!important;box-shadow:none!important;
  }
  body.iema-dancer-portal-page .iema-dancer-portal .iema-portal-user summary img{width:36px!important;height:36px!important;margin:auto!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-portal-user summary span,
  body.iema-dancer-portal-page .iema-dancer-portal .iema-portal-user summary>b{display:none!important}

  /* Keep the dancer's simple subnav on-page, just as Owner sections do on mobile. */
  body.iema-dancer-portal-page .iema-dancer-portal .iema-role-nav{
    display:flex!important;width:100%!important;min-width:0!important;margin:0 0 10px!important;padding:6px!important;gap:6px!important;
    overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;border-radius:16px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-portal .iema-role-nav::-webkit-scrollbar{display:none!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-role-nav a{
    flex:1 0 auto!important;min-width:104px!important;min-height:44px!important;padding:9px 12px!important;font-size:11px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-portal .iema-role-nav a.active{color:var(--studio-accent-text)!important}

  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-dashboard{gap:10px!important;min-width:0!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-dashboard-head{
    align-items:stretch!important;flex-direction:column!important;gap:12px!important;padding:10px 4px 2px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-day-nav{width:100%!important;gap:7px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-day-nav h2{min-width:0!important;flex:1!important;font-size:22px!important;line-height:1.1!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-day-nav button{width:44px!important;height:44px!important;flex:0 0 44px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-day-counts{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;gap:8px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-day-counts>div{min-width:0!important;min-height:72px!important;padding:11px!important}

  body.iema-dancer-portal-page .iema-dancer-portal .iema-panel,
  body.iema-dancer-portal-page .iema-dancer-portal .iema-recent-panel{width:100%!important;max-width:100%!important;min-width:0!important;margin:8px 0!important;border-radius:16px!important;overflow:hidden!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-section-title{padding:16px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-section-title h2{font-size:24px!important;line-height:1.1!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-section-title p{font-size:12px!important;line-height:1.45!important}

  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-agenda-item{grid-template-columns:1fr!important;gap:10px!important;padding:14px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-agenda-item time{border-right:0!important;border-bottom:1px solid #213047!important;padding:0 0 10px!important;display:flex!important;align-items:baseline!important;gap:8px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-agenda-item time strong{font-size:19px!important}

  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-workout-trigger{align-items:stretch!important;flex-direction:column!important;gap:12px!important;padding:16px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-workout-trigger>b{width:100%!important;min-height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-workout-detail{padding:14px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-exercise-card{min-width:0!important;padding:13px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-wellness{padding:14px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-wellness input,
  body.iema-dancer-portal-page .iema-dancer-portal .iema-wellness textarea,
  body.iema-dancer-portal-page .iema-dancer-portal .iema-wellness select{width:100%!important;min-width:0!important;max-width:100%!important;font-size:16px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-btn,
  body.iema-dancer-portal-page .iema-dancer-portal button{min-height:44px!important}

  body.iema-dancer-portal-page .iema-dancer-portal .iema-history>div{min-width:0!important;gap:7px!important;padding:12px!important}
}

/* Drawer is appended to body, so JS adds this class and copies studio tokens. */
@media(max-width:760px){
  .iema-mobile-nav-drawer.iema-dancer-mobile-drawer .iema-mobile-nav-panel{border-left-color:color-mix(in srgb,var(--studio-accent) 28%,#26384c)!important}
  .iema-mobile-nav-drawer.iema-dancer-mobile-drawer .iema-mobile-nav-panel>header span{color:var(--studio-accent)!important}
  .iema-mobile-nav-drawer.iema-dancer-mobile-drawer .iema-mobile-nav-links a.active{
    background:var(--studio-accent)!important;border-color:var(--studio-accent)!important;color:var(--studio-accent-text)!important;box-shadow:none!important;
  }
  .iema-mobile-nav-drawer.iema-dancer-mobile-drawer .iema-mobile-nav-links a.active:after{color:var(--studio-accent-text)!important}
  .iema-mobile-nav-drawer.iema-dancer-mobile-drawer .iema-mobile-nav-links a:active{transform:scale(.985)!important}
}

@media(max-width:430px){
  body.iema-dancer-portal-page .iema-dancer-portal{width:calc(100% - 8px)!important;margin-top:4px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-app-topbar{padding:10px!important;border-radius:15px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-page-heading h1{font-size:21px!important}
}
@media(max-width:350px){
  body.iema-dancer-portal-page .iema-dancer-portal .iema-app-topbar{grid-template-columns:minmax(0,1fr) 44px 42px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-studio-name{font-size:14px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-shell-brand .iema-studio-logo{width:42px!important;height:42px!important;min-width:42px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-mobile-menu-toggle{width:44px!important;min-width:44px!important;padding:0!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-mobile-menu-toggle b{display:none!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-portal-user,
  body.iema-dancer-portal-page .iema-dancer-portal .iema-portal-user summary{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important}
  body.iema-dancer-portal-page .iema-dancer-portal .iema-portal-user summary img{width:34px!important;height:34px!important}
}

/* =========================================================
   v0.12.61 — Dancer Portal alignment correction
   The dancer portal now resolves branding directly from the
   dancer's owning studio and mirrors the Owner Portal's visual
   hierarchy instead of recoloring the account control itself.
   ========================================================= */

/* Core portal shell: same graphite hierarchy as Owner Portal. */
.iema-dancer-portal{
  --dancer-accent:var(--studio-accent,var(--accent));
  --dancer-accent-text:var(--studio-accent-text,#fff);
}
.iema-dancer-portal .iema-app-topbar{
  background:#111417!important;
  border:1px solid #262d35!important;
  box-shadow:0 12px 32px rgba(0,0,0,.18)!important;
}
.iema-dancer-portal .iema-role-nav{
  position:static!important;
  left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
  width:100%!important;
  display:flex!important;flex-direction:row!important;align-items:center!important;
  gap:7px!important;margin:10px 0 18px!important;padding:7px!important;
  background:#111417!important;border:1px solid #262d35!important;border-radius:17px!important;
  box-shadow:none!important;overflow-x:auto!important;
}
.iema-dancer-portal .iema-role-nav:before{display:none!important}
.iema-dancer-portal .iema-role-nav a{
  position:static!important;flex:0 0 auto!important;min-height:42px!important;
  padding:9px 18px!important;border:1px solid transparent!important;border-radius:12px!important;
  background:transparent!important;color:#c8d2df!important;font-size:12px!important;font-weight:850!important;
}
.iema-dancer-portal .iema-role-nav a:before,.iema-dancer-portal .iema-role-nav a:after{display:none!important}
.iema-dancer-portal .iema-role-nav a.active{
  background:var(--dancer-accent)!important;border-color:var(--dancer-accent)!important;
  color:var(--dancer-accent-text)!important;
  box-shadow:0 8px 20px color-mix(in srgb,var(--dancer-accent) 24%,transparent)!important;
}
.iema-dancer-portal .iema-role-nav a.active *{color:var(--dancer-accent-text)!important}

/* Owner-style account control: neutral shell with accent as an affordance, not a giant color block. */
.iema-dancer-portal .iema-portal-user summary{
  background:#1a1e23!important;border:1px solid #353d47!important;color:#fff!important;box-shadow:none!important;
}
.iema-dancer-portal .iema-portal-user summary img{
  border:2px solid color-mix(in srgb,var(--dancer-accent) 68%,#39434f)!important;
}
.iema-dancer-portal .iema-portal-user summary>b{color:var(--dancer-accent)!important}
.iema-dancer-portal .iema-portal-user summary span strong{color:#fff!important}
.iema-dancer-portal .iema-portal-user summary span small{color:#a8b5c5!important}

/* Replace remaining dancer-specific cyan/blue literals with the owning studio accent. */
.iema-dancer-portal .iema-kicker,
.iema-dancer-portal .iema-dancer-section-title>span,
.iema-dancer-portal .iema-dancer-agenda-item>div>span,
.iema-dancer-portal .iema-workout-head span,
.iema-dancer-portal .iema-history b,
.iema-dancer-portal .iema-howto-kicker,
.iema-dancer-portal .iema-dancer-day-counts strong,
.iema-dancer-portal .iema-workout-progress strong,
.iema-dancer-portal .iema-dancer-workout-trigger small,
.iema-dancer-portal .iema-account-label{
  color:var(--dancer-accent)!important;
}
.iema-dancer-portal .iema-dancer-day-nav button,
.iema-dancer-portal .iema-dancer-today-btn,
.iema-dancer-portal .iema-howto-btn,
.iema-dancer-portal .iema-photo-btn{
  color:var(--dancer-accent)!important;
  border-color:color-mix(in srgb,var(--dancer-accent) 42%,#2b3745)!important;
}
.iema-dancer-portal .iema-dancer-day-nav button:focus-visible,
.iema-dancer-portal a:focus-visible,
.iema-dancer-portal button:focus-visible,
.iema-dancer-portal input:focus-visible,
.iema-dancer-portal textarea:focus-visible,
.iema-dancer-portal select:focus-visible{
  outline:2px solid var(--dancer-accent)!important;outline-offset:2px!important;
}
.iema-dancer-portal .iema-dancer-workout-trigger>b,
.iema-dancer-portal .iema-btn,
.iema-dancer-portal button.iema-btn{
  background:var(--dancer-accent)!important;border-color:var(--dancer-accent)!important;color:var(--dancer-accent-text)!important;
}
.iema-dancer-portal .iema-dancer-workout-trigger>b *,
.iema-dancer-portal .iema-btn *{color:var(--dancer-accent-text)!important}
.iema-dancer-portal .iema-workout-progress>div>span{background:var(--dancer-accent)!important}
.iema-dancer-portal .iema-complete-check input{accent-color:var(--dancer-accent)!important}
.iema-dancer-portal .iema-exercise-number{
  color:var(--dancer-accent)!important;
  background:color-mix(in srgb,var(--dancer-accent) 13%,#0b121b)!important;
  border-color:color-mix(in srgb,var(--dancer-accent) 38%,#243244)!important;
}

/* Give the day header and statistics the same disciplined dashboard spacing as Owner. */
.iema-dancer-portal .iema-dancer-dashboard-head{
  padding:18px 4px 8px!important;gap:18px!important;
}
.iema-dancer-portal .iema-dancer-day-counts>div{
  background:#10151c!important;border:1px solid #2a3543!important;border-radius:14px!important;box-shadow:none!important;
}
.iema-dancer-portal .iema-dancer-day-counts strong{font-size:25px!important}
.iema-dancer-portal .iema-panel,
.iema-dancer-portal .iema-recent-panel{
  background:#0d141d!important;border:1px solid #243244!important;border-radius:19px!important;box-shadow:none!important;
}

@media (hover:hover) and (pointer:fine){
  .iema-dancer-portal .iema-role-nav a:not(.active):hover{
    color:#fff!important;background:#19212c!important;border-color:#2c3b4d!important;
  }
  .iema-dancer-portal .iema-dancer-workout-trigger>b:hover,
  .iema-dancer-portal .iema-btn:hover,
  .iema-dancer-portal button.iema-btn:hover{
    background:var(--studio-accent-hover)!important;border-color:var(--studio-accent-hover)!important;color:var(--dancer-accent-text)!important;
  }
}

@media(max-width:760px){
  body.iema-dancer-portal-page .iema-dancer-portal .iema-role-nav{
    position:static!important;display:flex!important;flex-direction:row!important;
    margin:0 0 10px!important;padding:6px!important;border-radius:16px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-portal .iema-role-nav a{
    flex:1 0 auto!important;min-width:104px!important;min-height:44px!important;padding:9px 12px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-portal .iema-portal-user summary{
    background:#1a1e23!important;border-color:#353d47!important;
  }
}

/* =========================================================
   v0.12.62 — Dancer Portal true design-system alignment
   This is structural, not a recolor pass: the dancer portal
   now uses the same navigation grammar, shell proportions,
   surfaces and studio-brand token behavior as Owner Portal.
   ========================================================= */
body.iema-dancer-portal-page .iema-dancer-shell{
  --dancer-accent:var(--studio-accent,#20b7ff);
  --dancer-accent-text:var(--studio-accent-text,#fff);
  width:min(1360px,calc(100% - 40px))!important;
  max-width:1360px!important;
  margin:18px auto 42px!important;
  padding:0!important;
  color:#edf3fb!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-app-topbar{
  min-height:98px!important;
  padding:17px 22px!important;
  border-radius:20px!important;
  background:#151719!important;
  border:1px solid #292e34!important;
  box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-page-heading h1{
  color:#fff!important;
  font-size:31px!important;
  letter-spacing:-.025em!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-page-heading p{color:#aebed2!important}

/* Same top-level navigation language as Studio Owner Portal. */
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-primary-nav{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  margin:10px 0 14px!important;
  padding:7px!important;
  background:#151719!important;
  border:1px solid #292e34!important;
  border-radius:17px!important;
  overflow-x:auto!important;
  scrollbar-width:none!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-primary-nav::-webkit-scrollbar{display:none!important}
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-primary-nav a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:9px 19px!important;
  border:1px solid transparent!important;
  border-radius:11px!important;
  background:transparent!important;
  color:#d2dae5!important;
  text-decoration:none!important;
  font-size:12px!important;
  font-weight:900!important;
  white-space:nowrap!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-primary-nav a.active{
  background:linear-gradient(180deg,var(--dancer-accent),var(--studio-accent-strong))!important;
  border-color:var(--dancer-accent)!important;
  color:var(--dancer-accent-text)!important;
  box-shadow:0 8px 20px color-mix(in srgb,var(--dancer-accent) 24%,transparent)!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-primary-nav a.active span{color:var(--dancer-accent-text)!important}

/* Dashboard rhythm and surfaces mirror owner-side graphite hierarchy. */
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-dashboard{display:grid!important;gap:14px!important}
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-dashboard-head{
  margin:0!important;
  padding:18px 4px 4px!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-kicker,
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-section-title>span,
body.iema-dancer-portal-page .iema-dancer-shell .iema-account-label,
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-agenda-item>div>span,
body.iema-dancer-portal-page .iema-dancer-shell .iema-workout-head span{
  color:var(--dancer-accent)!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-day-nav button,
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-today-btn,
body.iema-dancer-portal-page .iema-dancer-shell .iema-howto-btn,
body.iema-dancer-portal-page .iema-dancer-shell .iema-photo-btn{
  color:var(--dancer-accent)!important;
  border-color:color-mix(in srgb,var(--dancer-accent) 42%,#334154)!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-day-counts>div,
body.iema-dancer-portal-page .iema-dancer-shell .iema-panel,
body.iema-dancer-portal-page .iema-dancer-shell .iema-recent-panel{
  background:#151719!important;
  border:1px solid #30353b!important;
  box-shadow:none!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-panel,
body.iema-dancer-portal-page .iema-dancer-shell .iema-recent-panel{border-radius:19px!important}
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-day-counts strong{color:var(--dancer-accent)!important}
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-section-title{border-bottom-color:#30353b!important}
body.iema-dancer-portal-page .iema-dancer-shell .iema-empty{
  background:#0d131b!important;
  border:1px dashed #2e3b4d!important;
  color:#aebed2!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-agenda-item,
body.iema-dancer-portal-page .iema-dancer-shell .iema-workout{
  background:#0d131b!important;
  border-color:#2d3949!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-btn,
body.iema-dancer-portal-page .iema-dancer-shell button.iema-btn,
body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-workout-trigger>b{
  background:linear-gradient(180deg,var(--dancer-accent),var(--studio-accent-strong))!important;
  border-color:var(--dancer-accent)!important;
  color:var(--dancer-accent-text)!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-workout-progress>div>span{background:var(--dancer-accent)!important}
body.iema-dancer-portal-page .iema-dancer-shell .iema-complete-check input{accent-color:var(--dancer-accent)!important}

@media (hover:hover) and (pointer:fine){
  body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-primary-nav a:not(.active):hover{
    color:var(--dancer-accent)!important;
    background:color-mix(in srgb,var(--dancer-accent) 8%,#151719)!important;
    border-color:color-mix(in srgb,var(--dancer-accent) 28%,#30353b)!important;
  }
  body.iema-dancer-portal-page .iema-dancer-shell .iema-btn:hover,
  body.iema-dancer-portal-page .iema-dancer-shell button.iema-btn:hover,
  body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-workout-trigger>b:hover{
    background:linear-gradient(180deg,var(--studio-accent-hover),var(--dancer-accent))!important;
    border-color:var(--studio-accent-hover)!important;
    color:var(--dancer-accent-text)!important;
  }
}

/* Mobile: copy the owner portal hierarchy — compact header, visible page nav,
   one-column content, full-width touch targets where appropriate. */
@media(max-width:760px){
  body.iema-dancer-portal-page .iema-dancer-shell{
    width:calc(100% - 10px)!important;
    margin:5px auto 24px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-shell .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 72px 46px!important;
    grid-template-areas:'brand menu user' 'heading heading heading'!important;
    min-height:0!important;
    padding:11px!important;
    row-gap:10px!important;
    border-radius:17px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-shell .iema-page-heading{
    padding:8px 1px 0!important;
    border-top:1px solid #2b3036!important;
  }
  body.iema-dancer-portal-page .iema-dancer-shell .iema-page-heading h1{font-size:23px!important}
  body.iema-dancer-portal-page .iema-dancer-shell .iema-page-heading p{font-size:11px!important}
  body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-primary-nav{
    margin:0 0 10px!important;
    padding:6px!important;
    gap:6px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-primary-nav a{
    flex:1 0 auto!important;
    min-width:100px!important;
    min-height:44px!important;
    padding:9px 12px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-dashboard-head{
    padding:9px 3px 2px!important;
    gap:11px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-shell .iema-dancer-day-counts{grid-template-columns:1fr 1fr!important}
  body.iema-dancer-portal-page .iema-dancer-shell .iema-panel,
  body.iema-dancer-portal-page .iema-dancer-shell .iema-recent-panel{border-radius:17px!important}
}

/* =========================================================
   v0.12.63 — Dancer Portal background / shell parity
   Carry the Studio Owner graphite ambient background into the
   Dancer Portal while preserving dancer content and studio accent.
   ========================================================= */
html:has(body.iema-dancer-portal-page),
body.iema-dancer-portal-page{
  min-height:100%!important;
  background:
    radial-gradient(circle at 18% 16%, rgba(255,255,255,.035) 0, rgba(255,255,255,.012) 25%, transparent 46%),
    radial-gradient(circle at 84% 24%, rgba(90,115,145,.055) 0, rgba(90,115,145,.018) 25%, transparent 48%),
    radial-gradient(circle at 42% 88%, rgba(255,255,255,.02) 0, transparent 38%),
    linear-gradient(145deg,#101113 0%,#15171a 46%,#0b0c0e 100%)!important;
  background-attachment:fixed!important;
}
body.iema-dancer-portal-page{
  position:relative!important;
  isolation:isolate!important;
}
body.iema-dancer-portal-page::before{
  content:"MYDANCER"!important;
  position:fixed!important;
  z-index:0!important;
  pointer-events:none!important;
  user-select:none!important;
  left:clamp(4px,1vw,18px)!important;
  top:clamp(110px,14vh,170px)!important;
  width:auto!important;
  height:auto!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(64px,6.4vw,116px)!important;
  line-height:.82!important;
  font-weight:900!important;
  letter-spacing:-.075em!important;
  color:rgba(235,240,247,.032)!important;
  writing-mode:vertical-rl!important;
  text-orientation:mixed!important;
  transform:rotate(180deg)!important;
  white-space:nowrap!important;
}
body.iema-dancer-portal-page::after{
  content:""!important;
  position:fixed!important;
  z-index:0!important;
  pointer-events:none!important;
  right:-22vw!important;
  top:-25vw!important;
  width:60vw!important;
  height:60vw!important;
  min-width:720px!important;
  min-height:720px!important;
  border-radius:50%!important;
  border:2px solid rgba(166,177,191,.11)!important;
  box-shadow:
    0 0 0 34px rgba(255,255,255,.006),
    0 0 0 70px rgba(166,177,191,.022),
    0 0 0 106px rgba(255,255,255,.006)!important;
  opacity:.76!important;
}
body.iema-dancer-portal-page #page,
body.iema-dancer-portal-page .site,
body.iema-dancer-portal-page .site-container,
body.iema-dancer-portal-page .site-content,
body.iema-dancer-portal-page .content-area,
body.iema-dancer-portal-page #content,
body.iema-dancer-portal-page .wp-site-blocks,
body.iema-dancer-portal-page .wp-site-blocks>*,
body.iema-dancer-portal-page main,
body.iema-dancer-portal-page .ma-wrap,
body.iema-dancer-portal-page .ma-page,
body.iema-dancer-portal-page article,
body.iema-dancer-portal-page .entry-content{
  background:transparent!important;
}
body.iema-dancer-portal-page .iema-dancer-shell{
  position:relative!important;
  z-index:1!important;
}
@media(max-width:700px){
  body.iema-dancer-portal-page::before{
    left:-5vw!important;
    top:118px!important;
    font-size:clamp(62px,20vw,112px)!important;
    color:rgba(235,240,247,.026)!important;
  }
  body.iema-dancer-portal-page::after{
    right:-72vw!important;
    top:-30vw!important;
    width:125vw!important;
    height:125vw!important;
    min-width:0!important;
    min-height:0!important;
    opacity:.48!important;
  }
}

/* =========================================================
   v0.12.66 — Dancer My Account portal parity
   Use the same branded graphite shell, navigation language,
   studio accent tokens and mobile behavior as Dancer Portal.
   ========================================================= */
html:has(body.iema-account-page .iema-dancer-account-shell),
body.iema-account-page:has(.iema-dancer-account-shell){
  min-height:100%!important;
  background:
    radial-gradient(circle at 18% 16%,rgba(255,255,255,.035) 0,rgba(255,255,255,.012) 25%,transparent 46%),
    radial-gradient(circle at 84% 24%,rgba(90,115,145,.055) 0,rgba(90,115,145,.018) 25%,transparent 48%),
    radial-gradient(circle at 42% 88%,rgba(255,255,255,.02) 0,transparent 38%),
    linear-gradient(145deg,#101113 0%,#15171a 46%,#0b0c0e 100%)!important;
  background-attachment:fixed!important;
}
body.iema-account-page:has(.iema-dancer-account-shell){position:relative!important;isolation:isolate!important}
body.iema-account-page:has(.iema-dancer-account-shell)::before{
  content:"MYDANCER"!important;position:fixed!important;z-index:0!important;pointer-events:none!important;user-select:none!important;
  left:clamp(4px,1vw,18px)!important;top:clamp(110px,14vh,170px)!important;font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(64px,6.4vw,116px)!important;line-height:.82!important;font-weight:900!important;letter-spacing:-.075em!important;
  color:rgba(235,240,247,.032)!important;writing-mode:vertical-rl!important;text-orientation:mixed!important;transform:rotate(180deg)!important;white-space:nowrap!important;
}
body.iema-account-page:has(.iema-dancer-account-shell)::after{
  content:""!important;position:fixed!important;z-index:0!important;pointer-events:none!important;right:-22vw!important;top:-25vw!important;
  width:60vw!important;height:60vw!important;min-width:720px!important;min-height:720px!important;border-radius:50%!important;
  border:2px solid rgba(166,177,191,.11)!important;box-shadow:0 0 0 34px rgba(255,255,255,.006),0 0 0 70px rgba(166,177,191,.022),0 0 0 106px rgba(255,255,255,.006)!important;opacity:.76!important;
}
body.iema-account-page:has(.iema-dancer-account-shell) #page,
body.iema-account-page:has(.iema-dancer-account-shell) .site,
body.iema-account-page:has(.iema-dancer-account-shell) .site-container,
body.iema-account-page:has(.iema-dancer-account-shell) .site-content,
body.iema-account-page:has(.iema-dancer-account-shell) .content-area,
body.iema-account-page:has(.iema-dancer-account-shell) #content,
body.iema-account-page:has(.iema-dancer-account-shell) .wp-site-blocks,
body.iema-account-page:has(.iema-dancer-account-shell) .wp-site-blocks>*,
body.iema-account-page:has(.iema-dancer-account-shell) main,
body.iema-account-page:has(.iema-dancer-account-shell) article,
body.iema-account-page:has(.iema-dancer-account-shell) .entry-content{background:transparent!important}
body.iema-account-page .iema-dancer-account-shell{position:relative!important;z-index:1!important;color:#f5f8ff!important;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
body.iema-account-page .iema-dancer-account-shell>.iema-app-topbar{margin-bottom:12px!important}
body.iema-account-page .iema-dancer-account-shell .iema-account-dancer-nav{margin:0 0 12px!important}
body.iema-account-page .iema-dancer-account-shell .iema-account-kicker,
body.iema-account-page .iema-dancer-account-shell .iema-account-card-icon{color:var(--studio-accent)!important}
body.iema-account-page .iema-dancer-account-shell .iema-account-card-icon{
  background:color-mix(in srgb,var(--studio-accent) 13%,#0a1119)!important;
  border-color:color-mix(in srgb,var(--studio-accent) 45%,#243142)!important;
}
body.iema-account-page .iema-dancer-account-shell .iema-role-chip{
  background:color-mix(in srgb,var(--studio-accent) 15%,#0a1119)!important;
  color:var(--studio-accent)!important;border-color:color-mix(in srgb,var(--studio-accent) 45%,#243142)!important;
}
body.iema-account-page .iema-dancer-account-shell .iema-account-card input:focus,
body.iema-account-page .iema-dancer-account-shell .iema-account-card select:focus,
body.iema-account-page .iema-dancer-account-shell .iema-account-card textarea:focus{
  border-color:var(--studio-accent)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--studio-accent) 16%,transparent)!important;
}
body.iema-account-page .iema-dancer-account-shell .iema-account-savebar .iema-btn,
body.iema-account-page .iema-dancer-account-shell .iema-btn:not(.iema-btn-secondary){
  background:linear-gradient(180deg,var(--studio-accent) 0%,var(--studio-accent-strong) 100%)!important;
  border-color:color-mix(in srgb,var(--studio-accent) 70%,#fff)!important;color:var(--studio-accent-text)!important;
  box-shadow:0 12px 28px color-mix(in srgb,var(--studio-accent) 28%,transparent)!important;
}
@media(hover:hover) and (pointer:fine){
 body.iema-account-page .iema-dancer-account-shell .iema-account-savebar .iema-btn:hover,
 body.iema-account-page .iema-dancer-account-shell .iema-btn:not(.iema-btn-secondary):hover{
   background:linear-gradient(180deg,var(--studio-accent-hover) 0%,var(--studio-accent) 100%)!important;color:var(--studio-accent-text)!important;
 }
}
@media(max-width:700px){
 body.iema-account-page:has(.iema-dancer-account-shell)::before{left:-5vw!important;top:118px!important;font-size:clamp(62px,20vw,112px)!important;color:rgba(235,240,247,.026)!important}
 body.iema-account-page:has(.iema-dancer-account-shell)::after{right:-420px!important;top:260px!important;min-width:650px!important;min-height:650px!important;width:650px!important;height:650px!important;opacity:.52!important}
 body.iema-account-page .iema-dancer-account-shell{width:100%!important;padding:0 10px!important;margin:0 auto 24px!important}
 body.iema-account-page .iema-dancer-account-shell>.iema-app-topbar{margin:0 0 10px!important}
 body.iema-account-page .iema-dancer-account-shell .iema-account-dancer-nav{margin:0 0 10px!important;overflow-x:auto!important;grid-template-columns:repeat(3,minmax(118px,1fr))!important}
 body.iema-account-page .iema-dancer-account-shell .iema-account-content{padding-top:14px!important}
}


/* =========================================================
   v0.12.67 — Dancer My Account shell correction
   v0.12.66 inherited legacy light-account chrome. Force the
   account route to use the same graphite header/navigation
   surfaces as the Dancer Portal instead of a white app bar.
   ========================================================= */
body.iema-account-page .iema-dancer-account-shell{
  --dancer-accent:var(--studio-accent,#20b7ff);
  --dancer-accent-text:var(--studio-accent-text,#fff);
  width:min(1360px,calc(100% - 40px))!important;
  max-width:1360px!important;
  margin:18px auto 42px!important;
  padding:0!important;
  background:transparent!important;
}
body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar{
  display:grid!important;
  grid-template-columns:minmax(250px,.9fr) minmax(360px,1.35fr) minmax(220px,.9fr)!important;
  align-items:center!important;
  gap:24px!important;
  min-height:98px!important;
  margin:0 0 10px!important;
  padding:17px 22px!important;
  border-radius:20px!important;
  background:#151719!important;
  border:1px solid #292e34!important;
  color:#edf3fb!important;
  box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
}
body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar .iema-studio-name,
body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar .iema-page-heading h1,
body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar .iema-portal-user summary strong{
  color:#fff!important;
}
body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar .iema-page-heading p,
body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar .iema-portal-user summary small{
  color:#aebed2!important;
}
body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar .iema-account-label{
  color:var(--dancer-accent)!important;
}
body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar .iema-portal-user summary{
  background:#202328!important;
  border:1px solid #383d45!important;
  color:#fff!important;
}
body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar .iema-portal-user nav{
  background:#101316!important;
  border-color:#30353c!important;
}
body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar .iema-portal-user nav a{
  color:#e7edf5!important;
}
body.iema-account-page .iema-dancer-account-shell .iema-account-dancer-nav{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  margin:0 0 14px!important;
  padding:7px!important;
  background:#151719!important;
  border:1px solid #292e34!important;
  border-radius:17px!important;
  box-shadow:none!important;
  overflow-x:auto!important;
  scrollbar-width:none!important;
}
body.iema-account-page .iema-dancer-account-shell .iema-account-dancer-nav::-webkit-scrollbar{display:none!important}
body.iema-account-page .iema-dancer-account-shell .iema-account-dancer-nav a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  min-width:auto!important;
  padding:9px 19px!important;
  border:1px solid transparent!important;
  border-radius:11px!important;
  background:transparent!important;
  color:#d2dae5!important;
  text-decoration:none!important;
  font-size:12px!important;
  font-weight:900!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
body.iema-account-page .iema-dancer-account-shell .iema-account-dancer-nav a.active{
  background:linear-gradient(180deg,var(--dancer-accent),var(--studio-accent-strong))!important;
  border-color:var(--dancer-accent)!important;
  color:var(--dancer-accent-text)!important;
  box-shadow:0 8px 20px color-mix(in srgb,var(--dancer-accent) 24%,transparent)!important;
}
body.iema-account-page .iema-dancer-account-shell .iema-account-dancer-nav a.active span{color:var(--dancer-accent-text)!important}
body.iema-account-page .iema-dancer-account-shell .iema-account-content{
  color:#edf3fb!important;
  background:transparent!important;
}
body.iema-account-page .iema-dancer-account-shell .iema-account-view-head h1{color:#fff!important}
body.iema-account-page .iema-dancer-account-shell .iema-account-view-head p{color:#aebed2!important}
@media(hover:hover) and (pointer:fine){
  body.iema-account-page .iema-dancer-account-shell .iema-account-dancer-nav a:not(.active):hover{
    color:var(--dancer-accent)!important;
    background:color-mix(in srgb,var(--dancer-accent) 8%,#151719)!important;
    border-color:color-mix(in srgb,var(--dancer-accent) 28%,#30353b)!important;
  }
}
@media(max-width:760px){
  body.iema-account-page .iema-dancer-account-shell{
    width:calc(100% - 10px)!important;
    margin:5px auto 24px!important;
    padding:0!important;
  }
  body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 72px 46px!important;
    grid-template-areas:'brand menu user' 'heading heading heading'!important;
    min-height:0!important;
    padding:11px!important;
    row-gap:10px!important;
    border-radius:17px!important;
  }
  body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar .iema-page-heading{
    padding:8px 1px 0!important;
    border-top:1px solid #2b3036!important;
  }
  body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar .iema-page-heading h1{font-size:23px!important}
  body.iema-account-page .iema-dancer-account-shell > .iema-app-topbar .iema-page-heading p{font-size:11px!important}
  body.iema-account-page .iema-dancer-account-shell .iema-account-dancer-nav{
    margin:0 0 10px!important;
    padding:6px!important;
    gap:6px!important;
    grid-template-columns:none!important;
  }
  body.iema-account-page .iema-dancer-account-shell .iema-account-dancer-nav a{
    flex:1 0 auto!important;
    min-width:100px!important;
    min-height:44px!important;
    padding:9px 12px!important;
  }
}


/* =========================================================
   v0.12.68 — Dancer portal sticky shell
   Keep the portal identity/header and workspace navigation
   available while the dancer scrolls long dashboard/account pages.
   ========================================================= */
body.iema-dancer-portal-page .iema-dancer-shell > .iema-dancer-sticky-shell,
body.iema-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell{
  position:sticky!important;
  top:0!important;
  z-index:90!important;
  padding-top:8px!important;
  background:linear-gradient(180deg,rgba(16,17,19,.985) 0%,rgba(16,17,19,.955) 78%,rgba(16,17,19,0) 100%)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
body.iema-dancer-portal-page .iema-dancer-shell > .iema-dancer-sticky-shell .iema-app-topbar,
body.iema-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell .iema-app-topbar{
  margin-top:0!important;
}
body.iema-dancer-portal-page .iema-dancer-shell > .iema-dancer-sticky-shell .iema-dancer-primary-nav,
body.iema-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell .iema-dancer-primary-nav{
  margin-bottom:8px!important;
}
/* The mobile header is substantially taller. Keeping the whole two-tier
   shell pinned would consume too much of an iPhone viewport, so mobile
   keeps the compact header itself sticky and lets the page nav scroll. */
@media(max-width:760px){
  body.iema-dancer-portal-page .iema-dancer-shell > .iema-dancer-sticky-shell,
  body.iema-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell{
    position:relative!important;
    top:auto!important;
    z-index:auto!important;
    padding-top:0!important;
    background:transparent!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.iema-dancer-portal-page .iema-dancer-shell > .iema-dancer-sticky-shell .iema-app-topbar,
  body.iema-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell .iema-app-topbar{
    position:sticky!important;
    top:0!important;
    z-index:90!important;
  }
}


/* =========================================================
   v0.12.69 — Dancer account background parity correction
   Give the dancer account route its own explicit body class so
   background parity does not depend on :has() or legacy account
   wrapper rules. This intentionally overrides the old #020305
   account-page canvas while leaving parent/staff account pages alone.
   ========================================================= */
body.iema-account-page.iema-dancer-account-page{
  min-height:100%!important;
  margin:0!important;
  position:relative!important;
  isolation:isolate!important;
  overflow-x:hidden!important;
  background:
    radial-gradient(circle at 18% 16%,rgba(255,255,255,.035) 0,rgba(255,255,255,.012) 25%,transparent 46%),
    radial-gradient(circle at 84% 24%,rgba(90,115,145,.055) 0,rgba(90,115,145,.018) 25%,transparent 48%),
    radial-gradient(circle at 42% 88%,rgba(255,255,255,.02) 0,transparent 38%),
    linear-gradient(145deg,#101113 0%,#15171a 46%,#0b0c0e 100%)!important;
  background-attachment:fixed!important;
}
body.iema-account-page.iema-dancer-account-page::before{
  content:"MYDANCER"!important;
  position:fixed!important;
  z-index:0!important;
  pointer-events:none!important;
  user-select:none!important;
  left:clamp(4px,1vw,18px)!important;
  top:clamp(110px,14vh,170px)!important;
  width:auto!important;
  height:auto!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(64px,6.4vw,116px)!important;
  line-height:.82!important;
  font-weight:900!important;
  letter-spacing:-.075em!important;
  color:rgba(235,240,247,.032)!important;
  writing-mode:vertical-rl!important;
  text-orientation:mixed!important;
  transform:rotate(180deg)!important;
  white-space:nowrap!important;
}
body.iema-account-page.iema-dancer-account-page::after{
  content:""!important;
  position:fixed!important;
  z-index:0!important;
  pointer-events:none!important;
  right:-22vw!important;
  top:-25vw!important;
  width:60vw!important;
  height:60vw!important;
  min-width:720px!important;
  min-height:720px!important;
  border-radius:50%!important;
  border:2px solid rgba(166,177,191,.11)!important;
  box-shadow:0 0 0 34px rgba(255,255,255,.006),0 0 0 70px rgba(166,177,191,.022),0 0 0 106px rgba(255,255,255,.006)!important;
  opacity:.76!important;
}
body.iema-account-page.iema-dancer-account-page #page,
body.iema-account-page.iema-dancer-account-page .site,
body.iema-account-page.iema-dancer-account-page .site-container,
body.iema-account-page.iema-dancer-account-page .site-content,
body.iema-account-page.iema-dancer-account-page .content-area,
body.iema-account-page.iema-dancer-account-page #content,
body.iema-account-page.iema-dancer-account-page .wp-site-blocks,
body.iema-account-page.iema-dancer-account-page .wp-site-blocks>*,
body.iema-account-page.iema-dancer-account-page main,
body.iema-account-page.iema-dancer-account-page .ma-wrap,
body.iema-account-page.iema-dancer-account-page .ma-page,
body.iema-account-page.iema-dancer-account-page article,
body.iema-account-page.iema-dancer-account-page .entry-content{
  background:transparent!important;
  background-color:transparent!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell{
  position:relative!important;
  z-index:1!important;
}
@media(max-width:700px){
  body.iema-account-page.iema-dancer-account-page::before{
    left:-5vw!important;
    top:118px!important;
    font-size:clamp(62px,20vw,112px)!important;
    color:rgba(235,240,247,.026)!important;
  }
  body.iema-account-page.iema-dancer-account-page::after{
    right:-72vw!important;
    top:-30vw!important;
    width:125vw!important;
    height:125vw!important;
    min-width:0!important;
    min-height:0!important;
    opacity:.48!important;
  }
}


/* =========================================================
   v0.12.70 — Dancer account shell stabilization
   Correct the account-route header after the sticky wrapper was
   introduced, keep header + nav together at the viewport top, and
   stop the left profile card from independently floating/sticking.
   ========================================================= */
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell{
  position:sticky!important;
  top:0!important;
  z-index:110!important;
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:8px 0 8px!important;
  background:linear-gradient(180deg,rgba(16,17,19,.995) 0%,rgba(16,17,19,.985) 82%,rgba(16,17,19,.92) 100%)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar{
  display:grid!important;
  grid-template-columns:minmax(250px,.9fr) minmax(360px,1.35fr) minmax(220px,.9fr)!important;
  align-items:center!important;
  gap:24px!important;
  min-height:98px!important;
  width:100%!important;
  margin:0 0 10px!important;
  padding:17px 22px!important;
  border-radius:20px!important;
  background:#151719!important;
  background-color:#151719!important;
  border:1px solid #292e34!important;
  color:#edf3fb!important;
  box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
  box-sizing:border-box!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar .iema-studio-name,
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar .iema-page-heading h1,
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar .iema-portal-user summary strong{
  color:#fff!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar .iema-page-heading p,
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar .iema-portal-user summary small{
  color:#aebed2!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar .iema-account-label{
  color:var(--studio-accent)!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar .iema-portal-user summary{
  background:#202328!important;
  background-color:#202328!important;
  border:1px solid #383d45!important;
  color:#fff!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar .iema-portal-user nav{
  background:#101316!important;
  border-color:#30353c!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar .iema-portal-user nav a{
  color:#e7edf5!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-account-dancer-nav{
  margin:0!important;
}
/* The profile summary should remain part of document flow. It was using
   an older independent sticky rule, which made the left column appear to
   drift while the account form and portal shell scrolled separately. */
body.iema-account-page.iema-dancer-account-page .iema-account-profile-card{
  position:relative!important;
  top:auto!important;
  align-self:start!important;
  height:auto!important;
  min-height:0!important;
}
body.iema-account-page.iema-dancer-account-page .iema-account-grid{
  align-items:start!important;
}
@media(max-width:760px){
  body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell{
    position:sticky!important;
    top:0!important;
    z-index:110!important;
    padding:5px 0 6px!important;
    background:linear-gradient(180deg,rgba(16,17,19,.995),rgba(16,17,19,.965))!important;
    backdrop-filter:blur(14px)!important;
    -webkit-backdrop-filter:blur(14px)!important;
  }
  body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 72px 46px!important;
    grid-template-areas:'brand menu user' 'heading heading heading'!important;
    min-height:0!important;
    padding:11px!important;
    row-gap:10px!important;
    border-radius:17px!important;
    margin-bottom:8px!important;
  }
  body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar .iema-page-heading{
    padding:8px 1px 0!important;
    border-top:1px solid #2b3036!important;
  }
  body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-account-dancer-nav{
    margin:0!important;
  }
}

/* =========================================================
   v0.12.71 — Dancer account profile summary sticky rail
   On desktop, keep the left identity card visible once it reaches
   the bottom edge of the sticky portal header/navigation shell.
   ========================================================= */
@media(min-width:761px){
  body.iema-account-page.iema-dancer-account-page .iema-account-profile-card{
    position:sticky!important;
    top:calc(var(--iema-dancer-account-sticky-shell-height, 178px) + 12px)!important;
    align-self:start!important;
    height:auto!important;
    max-height:calc(100vh - var(--iema-dancer-account-sticky-shell-height, 178px) - 24px)!important;
    overflow:auto!important;
    overscroll-behavior:contain;
  }
}
@media(max-width:760px){
  body.iema-account-page.iema-dancer-account-page .iema-account-profile-card{
    position:relative!important;
    top:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
}

/* =========================================================
   v0.12.72 — Dancer portal sticky shell + owner-header parity
   Use the same premium header geometry as the Studio Owner Portal
   and keep header + workspace navigation pinned on every dancer view.
   ========================================================= */
body.iema-dancer-portal-page .iema-dancer-shell > .iema-dancer-sticky-shell,
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell{
  position:sticky!important;
  top:0!important;
  z-index:120!important;
  width:100%!important;
  margin:0!important;
  padding:8px 0 8px!important;
  background:linear-gradient(180deg,rgba(16,17,19,.995) 0%,rgba(16,17,19,.985) 82%,rgba(16,17,19,.90) 100%)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}

/* Match the Studio Owner Portal's compact premium hero/header. */
body.iema-dancer-portal-page .iema-dancer-shell > .iema-dancer-sticky-shell > .iema-app-topbar,
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar{
  display:grid!important;
  grid-template-columns:minmax(280px,.9fr) minmax(360px,1.2fr) minmax(230px,270px)!important;
  align-items:center!important;
  gap:24px!important;
  min-height:108px!important;
  width:100%!important;
  margin:0 0 10px!important;
  padding:20px 24px!important;
  background:linear-gradient(180deg,#151719 0%,#111315 100%)!important;
  border:1px solid #292e34!important;
  border-radius:22px!important;
  box-shadow:0 18px 48px rgba(0,0,0,.28)!important;
  color:#fff!important;
  box-sizing:border-box!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-shell-brand,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-shell-brand{
  display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-shell-brand .iema-studio-logo,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-shell-brand .iema-studio-logo{
  width:66px!important;height:66px!important;min-width:66px!important;object-fit:contain!important;
  border-radius:17px!important;padding:5px!important;background:#111924!important;border:1px solid #2a3a50!important;
  box-shadow:0 10px 24px rgba(0,0,0,.28)!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-studio-name,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-studio-name{
  color:#fff!important;font-size:22px!important;font-weight:950!important;line-height:1.05!important;
  letter-spacing:-.02em!important;text-transform:none!important;font-family:inherit!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-account-label,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-label{
  color:var(--studio-accent)!important;font-size:10px!important;letter-spacing:.12em!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-page-heading,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-page-heading{
  text-align:center!important;min-width:0!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-page-heading h1,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-page-heading h1{
  margin:0 0 5px!important;color:#fff!important;font-size:32px!important;letter-spacing:-.035em!important;line-height:1!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-page-heading p,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-page-heading p{
  margin:0!important;color:#93a4bc!important;font-size:12.5px!important;line-height:1.45!important;
}

/* Keep the user control visually secondary, like the Owner Portal account control. */
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-portal-user,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-portal-user{
  justify-self:end!important;width:100%!important;max-width:248px!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-portal-user summary,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-portal-user summary{
  display:grid!important;grid-template-columns:40px minmax(0,1fr) 28px!important;align-items:center!important;gap:10px!important;
  min-height:56px!important;padding:7px 8px!important;border-radius:15px!important;
  background:linear-gradient(145deg,rgba(48,51,56,.98),rgba(31,33,37,.98))!important;
  border:1px solid rgba(183,191,201,.32)!important;color:#fff!important;
  box-shadow:0 12px 28px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.045)!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-portal-user summary img,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-portal-user summary img{
  width:40px!important;height:40px!important;border-radius:50%!important;border:1px solid rgba(255,255,255,.68)!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-portal-user summary strong,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-portal-user summary strong{color:#f8fafc!important;font-size:11.5px!important}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-portal-user summary small,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-portal-user summary small{color:#9ea7b2!important;font-size:9px!important;text-transform:uppercase!important}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-portal-user summary b,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-portal-user summary b{
  display:grid!important;place-items:center!important;width:28px!important;height:28px!important;border-radius:9px!important;
  background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.075)!important;color:var(--studio-accent)!important;
}

/* One consistent workspace menu everywhere in the Dancer Portal. */
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav{
  position:static!important;width:100%!important;display:flex!important;align-items:center!important;gap:8px!important;
  margin:0!important;padding:7px!important;overflow-x:auto!important;
  background:#151719!important;border:1px solid #292e34!important;border-radius:17px!important;box-shadow:none!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav a,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav a{
  display:flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;
  padding:9px 16px!important;border:1px solid transparent!important;border-radius:12px!important;background:transparent!important;
  color:#9aacc4!important;font-size:12.5px!important;font-weight:850!important;text-decoration:none!important;white-space:nowrap!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav a.active,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav a.active{
  background:linear-gradient(180deg,var(--studio-accent),var(--studio-accent-strong))!important;
  border-color:var(--studio-accent)!important;color:var(--studio-accent-text)!important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--studio-accent) 24%,transparent)!important;
}

@media(max-width:760px){
  /* Unlike the old mobile behavior, the menu stays with the header on every dancer page. */
  body.iema-dancer-portal-page .iema-dancer-shell > .iema-dancer-sticky-shell,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell{
    position:sticky!important;top:0!important;z-index:120!important;padding:5px 0 6px!important;
    background:linear-gradient(180deg,rgba(16,17,19,.995),rgba(16,17,19,.965))!important;
    backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;
  }
  body.iema-dancer-portal-page .iema-dancer-sticky-shell > .iema-app-topbar,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell > .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 72px 46px!important;
    grid-template-areas:'brand menu user' 'heading heading heading'!important;
    gap:10px!important;min-height:0!important;padding:11px!important;border-radius:17px!important;margin-bottom:8px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-shell-brand .iema-studio-logo,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-shell-brand .iema-studio-logo{
    width:46px!important;height:46px!important;min-width:46px!important;border-radius:13px!important;padding:4px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-studio-name,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-studio-name{
    font-size:16px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  }
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-page-heading,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-page-heading{
    padding:8px 1px 0!important;text-align:left!important;border-top:1px solid #2b3036!important;
  }
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-page-heading h1,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-page-heading h1{font-size:21px!important}
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-page-heading p,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-page-heading p{font-size:10.5px!important;line-height:1.35!important}
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-portal-user,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-portal-user{width:46px!important;max-width:46px!important}
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-portal-user summary,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-portal-user summary{
    width:46px!important;min-width:46px!important;height:46px!important;min-height:46px!important;padding:3px!important;display:block!important;
  }
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-portal-user summary img,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-portal-user summary img{width:36px!important;height:36px!important}
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-portal-user summary span,
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-portal-user summary b,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-portal-user summary span,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-portal-user summary b{display:none!important}
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav{
    padding:5px!important;gap:4px!important;border-radius:14px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav a,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav a{
    flex:1 0 auto!important;min-height:40px!important;padding:8px 12px!important;font-size:11px!important;
  }
}

/* v0.12.73 — Dancer progress: meaningful studio participation, not a date dump */
body.iema-dancer-portal-page .iema-dancer-progress{display:grid!important;gap:18px!important}
body.iema-dancer-portal-page .iema-dancer-progress>.iema-dancer-section-title{margin:0!important}
body.iema-dancer-portal-page .iema-progress-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
body.iema-dancer-portal-page .iema-progress-kpi{min-width:0;background:#09111a;border:1px solid #25354b;border-radius:15px;padding:17px 18px;display:grid;gap:5px}
body.iema-dancer-portal-page .iema-progress-kpi small,body.iema-dancer-portal-page .iema-progress-breakdown small,body.iema-dancer-portal-page .iema-progress-activity-head small,body.iema-dancer-portal-page .iema-progress-event-main small{font-size:10px;font-weight:900;letter-spacing:.12em;color:var(--studio-accent,#28b8f6)}
body.iema-dancer-portal-page .iema-progress-kpi strong{font-size:32px;line-height:1;color:#f8fbff}
body.iema-dancer-portal-page .iema-progress-kpi span{font-size:12px;line-height:1.45;color:#9fb0c5}
body.iema-dancer-portal-page .iema-progress-breakdown-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
body.iema-dancer-portal-page .iema-progress-breakdown,body.iema-dancer-portal-page .iema-progress-activity{min-width:0;background:#09111a;border:1px solid #25354b;border-radius:15px;padding:18px}
body.iema-dancer-portal-page .iema-progress-breakdown-head,body.iema-dancer-portal-page .iema-progress-activity-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
body.iema-dancer-portal-page .iema-progress-breakdown h3,body.iema-dancer-portal-page .iema-progress-activity h3{margin:4px 0 0!important;color:#f8fbff!important;font-size:18px}
body.iema-dancer-portal-page .iema-progress-breakdown-head>strong{color:#f8fbff;font-size:17px;white-space:nowrap}
body.iema-dancer-portal-page .iema-progress-meter{height:8px;background:#1c2838;border-radius:999px;overflow:hidden;margin:17px 0 13px}
body.iema-dancer-portal-page .iema-progress-meter>span{display:block;height:100%;border-radius:inherit;background:var(--studio-accent,#28b8f6)}
body.iema-dancer-portal-page .iema-progress-meter.is-empty>span{background:#344155}
body.iema-dancer-portal-page .iema-progress-chips{display:flex;flex-wrap:wrap;gap:7px}
body.iema-dancer-portal-page .iema-progress-chips>span{border:1px solid #25354b;background:#0d1724;border-radius:999px;padding:6px 9px;font-size:11px;color:#aebbd0}
body.iema-dancer-portal-page .iema-progress-chips b{color:#f8fbff;margin-right:3px}
body.iema-dancer-portal-page .iema-progress-breakdown>p{margin:13px 0 0;color:#90a0b5;font-size:12px;line-height:1.5}
body.iema-dancer-portal-page .iema-progress-activity-head>span{border:1px solid #25354b;border-radius:999px;padding:5px 9px;color:#93a6bd;font-size:11px;white-space:nowrap}
body.iema-dancer-portal-page .iema-progress-timeline{display:grid;margin-top:12px}
body.iema-dancer-portal-page .iema-progress-event{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px 0;border-top:1px solid #1f2d40;min-width:0}
body.iema-dancer-portal-page .iema-progress-event:first-child{border-top:0}
body.iema-dancer-portal-page .iema-progress-event-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--studio-accent,#28b8f6) 15%,#09111a);border:1px solid color-mix(in srgb,var(--studio-accent,#28b8f6) 45%,#25354b);color:var(--studio-accent,#28b8f6);font-weight:900}
body.iema-dancer-portal-page .iema-progress-event-main{display:grid;min-width:0;gap:2px}
body.iema-dancer-portal-page .iema-progress-event-main strong{color:#f8fbff;overflow-wrap:anywhere}
body.iema-dancer-portal-page .iema-progress-event-main span{color:#9fb0c5;font-size:12px;overflow-wrap:anywhere}
body.iema-dancer-portal-page .iema-progress-event time{color:#93a6bd;font-size:11px;white-space:nowrap}
@media(max-width:760px){
 body.iema-dancer-portal-page .iema-progress-kpis{grid-template-columns:1fr 1fr}
 body.iema-dancer-portal-page .iema-progress-kpi:last-child{grid-column:1/-1}
 body.iema-dancer-portal-page .iema-progress-breakdown-grid{grid-template-columns:1fr}
 body.iema-dancer-portal-page .iema-progress-event{grid-template-columns:34px minmax(0,1fr)}
 body.iema-dancer-portal-page .iema-progress-event time{grid-column:2;white-space:normal}
}
@media(max-width:390px){body.iema-dancer-portal-page .iema-progress-kpis{grid-template-columns:1fr}body.iema-dancer-portal-page .iema-progress-kpi:last-child{grid-column:auto}}


/* =========================================================
   v0.12.74 — Dancer account header true parity
   The account route now uses the exact same header/nav component
   classes and geometry as Today/Progress. This final layer also
   neutralizes older account-only chrome rules that could make the
   header look like a separate product.
   ========================================================= */
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell{
  --dancer-accent:var(--studio-accent,#20b7ff);
  --dancer-accent-text:var(--studio-accent-text,#fff);
  width:min(1360px,calc(100% - 40px))!important;
  max-width:1360px!important;
  margin:18px auto 42px!important;
  padding:0!important;
  background:transparent!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell{
  position:sticky!important;
  top:0!important;
  z-index:120!important;
  width:100%!important;
  margin:0!important;
  padding:8px 0 8px!important;
  background:linear-gradient(180deg,rgba(16,17,19,.995) 0%,rgba(16,17,19,.985) 82%,rgba(16,17,19,.90) 100%)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar{
  display:grid!important;
  grid-template-columns:minmax(280px,.9fr) minmax(360px,1.2fr) minmax(230px,270px)!important;
  align-items:center!important;
  gap:24px!important;
  min-height:108px!important;
  width:100%!important;
  margin:0 0 10px!important;
  padding:20px 24px!important;
  background:linear-gradient(180deg,#151719 0%,#111315 100%)!important;
  border:1px solid #292e34!important;
  border-radius:22px!important;
  box-shadow:0 18px 48px rgba(0,0,0,.28)!important;
  color:#fff!important;
  box-sizing:border-box!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-dancer-primary-nav{
  position:static!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  padding:7px!important;
  overflow-x:auto!important;
  scrollbar-width:none!important;
  background:#151719!important;
  border:1px solid #292e34!important;
  border-radius:17px!important;
  box-shadow:none!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-dancer-primary-nav::-webkit-scrollbar{display:none!important}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-dancer-primary-nav a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:9px 16px!important;
  border:1px solid transparent!important;
  border-radius:12px!important;
  background:transparent!important;
  color:#9aacc4!important;
  font-size:12.5px!important;
  font-weight:850!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-dancer-primary-nav a.active{
  background:linear-gradient(180deg,var(--studio-accent),var(--studio-accent-strong))!important;
  border-color:var(--studio-accent)!important;
  color:var(--studio-accent-text)!important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--studio-accent) 24%,transparent)!important;
}
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-dancer-primary-nav a.active span{color:var(--studio-accent-text)!important}
@media(max-width:760px){
  body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell{
    width:100%!important;
    margin:0 auto 24px!important;
    padding:0 10px!important;
  }
  body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell{
    padding:5px 0 6px!important;
  }
  body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 72px 46px!important;
    grid-template-areas:'brand menu user' 'heading heading heading'!important;
    gap:10px!important;
    min-height:0!important;
    padding:11px!important;
    border-radius:17px!important;
    margin-bottom:8px!important;
  }
  body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-dancer-primary-nav{
    padding:5px!important;
    gap:4px!important;
    border-radius:14px!important;
  }
  body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell > .iema-dancer-primary-nav a{
    flex:1 0 auto!important;
    min-height:40px!important;
    padding:8px 12px!important;
    font-size:11px!important;
  }
}

/* v0.12.75 Dancer progress workout detail modal */
.iema-dancer-progress .iema-progress-event.is-clickable{
  width:100%;border:0;text-align:left;font:inherit;color:inherit;cursor:pointer;
  position:relative;padding-right:50px;
}
.iema-dancer-progress .iema-progress-event.is-clickable:hover,
.iema-dancer-progress .iema-progress-event.is-clickable:focus-visible{
  border-color:var(--studio-accent,var(--accent,#20b8ff));
  box-shadow:0 0 0 1px color-mix(in srgb,var(--studio-accent,var(--accent,#20b8ff)) 45%,transparent);
  outline:none;
}
.iema-progress-event-chevron{position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:24px;color:var(--studio-accent,var(--accent,#20b8ff));line-height:1}
.iema-progress-workout-dialog{max-width:720px!important}
.iema-progress-workout-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.iema-progress-workout-summary>div{min-width:0;padding:14px 16px;border:1px solid var(--line,#25384a);border-radius:14px;background:rgba(6,18,30,.55)}
.iema-progress-workout-summary small{display:block;font-size:10px;font-weight:800;letter-spacing:.11em;color:var(--studio-accent,var(--accent,#20b8ff));margin-bottom:6px}
.iema-progress-workout-summary strong{font-size:22px;line-height:1.1}
.iema-progress-workout-items,.iema-progress-workout-notes{margin-top:18px;padding-top:18px;border-top:1px solid var(--line,#25384a)}
.iema-progress-workout-items h3,.iema-progress-workout-notes h3{margin:0 0 12px}
.iema-progress-completed-list{display:grid;gap:10px}
.iema-progress-completed-list>div{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--line,#25384a);border-radius:12px;background:rgba(6,18,30,.45)}
.iema-progress-completed-list strong,.iema-progress-completed-list small{display:block}
.iema-progress-completed-list small{margin-top:4px;color:var(--muted,#9eb0c6)}
.iema-progress-complete-check{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:var(--studio-accent,var(--accent,#20b8ff));color:var(--studio-accent-text,#fff);font-weight:900}
.iema-progress-workout-notes p{margin:0;padding:14px;border:1px solid var(--line,#25384a);border-radius:12px;color:var(--muted,#c7d2df);white-space:normal}
@media(max-width:760px){
 .iema-progress-workout-summary{grid-template-columns:1fr 1fr}
 .iema-progress-workout-summary>div:first-child{grid-column:1/-1}
 .iema-dancer-progress .iema-progress-event.is-clickable{padding-right:42px}
}

/* =========================================================
   v0.12.76 — Dancer sticky shell visual parity
   Keep the hero + nav sticky without painting a solid slab
   behind them. Owner Portal-style surfaces remain individual
   cards, with the branded page background visible between.
   ========================================================= */
body.iema-dancer-portal-page .iema-dancer-shell > .iema-dancer-sticky-shell,
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell{
  background:transparent!important;
  background-image:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  box-shadow:none!important;
  isolation:isolate!important;
}

/* Keep the two sticky surfaces visually independent, like Owner Portal. */
body.iema-dancer-portal-page .iema-dancer-sticky-shell > .iema-app-topbar,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell > .iema-app-topbar{
  background:linear-gradient(180deg,#0d1420 0%,#080d14 100%)!important;
  border:1px solid #1e2a39!important;
  box-shadow:0 18px 48px rgba(0,0,0,.34)!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav{
  background:#080d14!important;
  border:1px solid #1e2a39!important;
  box-shadow:none!important;
}

/* Preserve a clean strip of page background between hero and menu. */
body.iema-dancer-portal-page .iema-dancer-sticky-shell > .iema-app-topbar,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell > .iema-app-topbar{
  margin-bottom:12px!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav{
  margin-bottom:8px!important;
}

@media(max-width:760px){
  body.iema-dancer-portal-page .iema-dancer-shell > .iema-dancer-sticky-shell,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell{
    background:transparent!important;
    background-image:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    box-shadow:none!important;
  }
  body.iema-dancer-portal-page .iema-dancer-sticky-shell > .iema-app-topbar,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell > .iema-app-topbar{
    margin-bottom:8px!important;
  }
}

/* =========================================================
   v0.12.77 — Dancer Portal owner-shell parity
   Treat the Owner Portal as the visual source of truth:
   separate sticky hero + menu surfaces, and the same graphite
   panel/card language throughout Today, Progress and My Account.
   ========================================================= */

/* Sticky shell: transparent carrier only. The hero and menu are the visible surfaces. */
body.iema-dancer-portal-page .iema-dancer-shell > .iema-dancer-sticky-shell,
body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell{
  position:sticky!important;
  top:0!important;
  z-index:160!important;
  width:100%!important;
  margin:0!important;
  padding:8px 0 8px!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  isolation:isolate!important;
}

/* Exact Owner Portal hero surface language. */
body.iema-dancer-portal-page .iema-dancer-sticky-shell > .iema-app-topbar,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell > .iema-app-topbar{
  display:grid!important;
  grid-template-columns:minmax(280px,.9fr) minmax(360px,1.2fr) minmax(230px,270px)!important;
  align-items:center!important;
  gap:24px!important;
  min-height:108px!important;
  width:100%!important;
  margin:0 0 12px!important;
  padding:20px 24px!important;
  background:linear-gradient(180deg,#0d1420 0%,#080d14 100%)!important;
  border:1px solid #1e2a39!important;
  border-radius:22px!important;
  box-shadow:0 18px 48px rgba(0,0,0,.34)!important;
  color:#fff!important;
  box-sizing:border-box!important;
}

/* Exact Owner Portal primary-menu surface language. */
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-dancer-primary-nav,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav{
  position:static!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  padding:7px!important;
  overflow-x:auto!important;
  scrollbar-width:none!important;
  background:#080d14!important;
  border:1px solid #1e2a39!important;
  border-radius:17px!important;
  box-shadow:none!important;
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav::-webkit-scrollbar,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-dancer-primary-nav::-webkit-scrollbar,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav::-webkit-scrollbar{display:none!important}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav a,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-dancer-primary-nav a,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav a{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:9px 16px!important;
  border:1px solid transparent!important;
  border-radius:12px!important;
  background:transparent!important;
  color:#9aacc4!important;
  font-size:12.5px!important;
  font-weight:850!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
@media (hover:hover) and (pointer:fine){
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav a:not(.active):hover,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-dancer-primary-nav a:not(.active):hover,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav a:not(.active):hover{
    background:#101a27!important;
    color:#eaf7ff!important;
    border-color:#223650!important;
  }
}
body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav a.active,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-dancer-primary-nav a.active,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav a.active{
  background:linear-gradient(180deg,var(--studio-accent),var(--studio-accent-strong))!important;
  border-color:var(--studio-accent)!important;
  color:var(--studio-accent-text)!important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--studio-accent) 24%,transparent)!important;
}

/* Use the Owner Portal's graphite surface system throughout Dancer Today + Progress. */
body.iema-dancer-portal-page .iema-dancer-shell .iema-panel,
body.iema-dancer-portal-page .iema-dancer-shell .iema-day-card,
body.iema-dancer-portal-page .iema-dancer-shell .iema-stat-grid > div,
body.iema-dancer-portal-page .iema-dancer-shell .iema-progress-card,
body.iema-dancer-portal-page .iema-dancer-shell .iema-progress-event,
body.iema-dancer-portal-page .iema-dancer-shell .iema-workout-card,
body.iema-dancer-portal-page .iema-dancer-shell .iema-schedule-card{
  background:linear-gradient(180deg,#0c121c 0%,#080d14 100%)!important;
  border-color:#1f2b3a!important;
  color:#f4f8ff!important;
  box-shadow:0 16px 40px rgba(0,0,0,.26)!important;
}
body.iema-dancer-portal-page .iema-dancer-shell .iema-panel{border-radius:18px!important}
body.iema-dancer-portal-page .iema-dancer-shell h1,
body.iema-dancer-portal-page .iema-dancer-shell h2,
body.iema-dancer-portal-page .iema-dancer-shell h3,
body.iema-dancer-portal-page .iema-dancer-shell h4,
body.iema-dancer-portal-page .iema-dancer-shell strong{color:#f5f8ff!important}
body.iema-dancer-portal-page .iema-dancer-shell p,
body.iema-dancer-portal-page .iema-dancer-shell small,
body.iema-dancer-portal-page .iema-dancer-shell .iema-muted,
body.iema-dancer-portal-page .iema-dancer-shell .iema-help{color:#93a4bc!important}

/* My Account: same visual system, no legacy independent account palette. */
body.iema-account-page.iema-dancer-account-page .iema-account-card,
body.iema-account-page.iema-dancer-account-page .iema-account-profile-card,
body.iema-account-page.iema-dancer-account-page .iema-account-savebar{
  background:linear-gradient(180deg,#0c121c 0%,#080d14 100%)!important;
  border:1px solid #1f2b3a!important;
  color:#f4f8ff!important;
  box-shadow:0 16px 40px rgba(0,0,0,.26)!important;
}
body.iema-account-page.iema-dancer-account-page .iema-account-card,
body.iema-account-page.iema-dancer-account-page .iema-account-profile-card{border-radius:18px!important}
body.iema-account-page.iema-dancer-account-page .iema-account-view-head h1,
body.iema-account-page.iema-dancer-account-page .iema-account-card h2,
body.iema-account-page.iema-dancer-account-page .iema-account-profile-card strong{color:#f5f8ff!important}
body.iema-account-page.iema-dancer-account-page .iema-account-view-head p,
body.iema-account-page.iema-dancer-account-page .iema-account-card p,
body.iema-account-page.iema-dancer-account-page .iema-account-card small{color:#93a4bc!important}

/* Inputs match Owner Portal controls. */
body.iema-account-page.iema-dancer-account-page .iema-account-card input,
body.iema-account-page.iema-dancer-account-page .iema-account-card select,
body.iema-account-page.iema-dancer-account-page .iema-account-card textarea{
  background:#050a10!important;
  border-color:#26384f!important;
  color:#f4f8ff!important;
}
body.iema-account-page.iema-dancer-account-page .iema-account-card input:focus,
body.iema-account-page.iema-dancer-account-page .iema-account-card select:focus,
body.iema-account-page.iema-dancer-account-page .iema-account-card textarea:focus{
  border-color:var(--studio-accent)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--studio-accent) 18%,transparent)!important;
}

/* Keep content clear of the pinned shell and maintain Owner-style spacing. */
body.iema-dancer-portal-page .iema-dancer-sticky-shell + *,
body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell + *{
  position:relative!important;
  z-index:1!important;
}

@media(max-width:760px){
  body.iema-dancer-portal-page .iema-dancer-shell > .iema-dancer-sticky-shell,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-account-shell > .iema-dancer-sticky-shell{
    top:0!important;
    padding:5px 0 6px!important;
    background:transparent!important;
  }
  body.iema-dancer-portal-page .iema-dancer-sticky-shell > .iema-app-topbar,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell > .iema-app-topbar{
    margin-bottom:8px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-dancer-primary-nav,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav{
    padding:5px!important;
    gap:4px!important;
    border-radius:14px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-sticky-shell .iema-dancer-primary-nav a,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-dancer-primary-nav a,
  body.iema-account-page.iema-dancer-account-page .iema-dancer-sticky-shell .iema-account-dancer-nav a{
    min-height:40px!important;
    padding:8px 12px!important;
    font-size:11px!important;
  }
}

/* v0.12.78 Login page graphite parity + iPhone usability */
body.iema-login-page{
  background:
    radial-gradient(circle at 88% 88%,rgba(255,255,255,.035),transparent 30%),
    linear-gradient(135deg,#34383d 0%,#292d31 48%,#202428 100%)!important;
  color:#f5f7fa!important;
}
body.iema-login-page:before{
  content:'MYDANCER'!important;
  position:fixed!important;
  left:-34px!important;
  top:22%!important;
  z-index:0!important;
  writing-mode:vertical-rl!important;
  transform:rotate(180deg)!important;
  color:rgba(255,255,255,.055)!important;
  font-size:78px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.055em!important;
  pointer-events:none!important;
}
body.iema-login-page:after{
  content:''!important;
  position:fixed!important;
  right:-230px!important;
  bottom:-240px!important;
  width:620px!important;
  height:620px!important;
  z-index:0!important;
  border:34px solid rgba(255,255,255,.055)!important;
  border-radius:50%!important;
  box-shadow:0 0 0 56px rgba(255,255,255,.028),0 0 0 112px rgba(255,255,255,.017)!important;
  pointer-events:none!important;
}
body.iema-login-page .site,
body.iema-login-page .site-content,
body.iema-login-page .entry-content,
body.iema-login-page main,
body.iema-login-page article{
  position:relative!important;
  z-index:1!important;
  background:transparent!important;
}
body.iema-login-page .iema-login-wrap{
  position:relative!important;
  z-index:2!important;
  border-color:#414850!important;
  background:#15191d!important;
  box-shadow:0 28px 80px rgba(0,0,0,.38)!important;
}
body.iema-login-page .iema-login-brand{
  background:
    radial-gradient(circle at 14% 8%,color-mix(in srgb,var(--studio-accent) 11%,transparent),transparent 34%),
    linear-gradient(145deg,#1d2125 0%,#171b1f 55%,#111519 100%)!important;
  border-color:#3c434a!important;
}
body.iema-login-page .iema-login-brand:before{color:rgba(255,255,255,.025)!important}
body.iema-login-page .iema-login-brand:after{
  border-color:color-mix(in srgb,var(--studio-accent) 18%,transparent)!important;
  box-shadow:0 0 0 34px rgba(255,255,255,.018),0 0 0 68px rgba(255,255,255,.01)!important;
}
body.iema-login-page .iema-login-logo-frame{
  border-color:#4a5158!important;
  background:#f7f7f5!important;
  box-shadow:0 14px 36px rgba(0,0,0,.28)!important;
}
body.iema-login-page .iema-login-product-lockup small,
body.iema-login-page .iema-login-eyebrow,
body.iema-login-page .iema-login-card-head>span,
body.iema-login-page .iema-login-help{
  color:var(--studio-accent)!important;
}
body.iema-login-page .iema-login-lockup-title b{color:var(--studio-accent)!important}
body.iema-login-page .iema-login-season{
  background:color-mix(in srgb,var(--studio-accent) 12%,#161a1e)!important;
  border-color:color-mix(in srgb,var(--studio-accent) 48%,#444)!important;
  color:var(--studio-accent)!important;
}
body.iema-login-page .iema-login-card{
  background:linear-gradient(180deg,#15191d 0%,#101418 100%)!important;
  border-color:#3a4148!important;
}
body.iema-login-page .iema-login-card input[type=text],
body.iema-login-page .iema-login-card input[type=password]{
  background:#0d1115!important;
  border-color:#414950!important;
  color:#fff!important;
}
body.iema-login-page .iema-login-card input[type=text]:focus,
body.iema-login-page .iema-login-card input[type=password]:focus{
  border-color:var(--studio-accent)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--studio-accent) 20%,transparent)!important;
}
body.iema-login-page .iema-login-card input[type=submit]{
  border-color:color-mix(in srgb,var(--studio-accent) 78%,#fff)!important;
  background:var(--studio-accent)!important;
  color:var(--studio-accent-text)!important;
  box-shadow:0 12px 30px color-mix(in srgb,var(--studio-accent) 22%,transparent)!important;
}
@media (hover:hover) and (pointer:fine){
 body.iema-login-page .iema-login-card input[type=submit]:hover{
   background:var(--studio-accent-hover)!important;
   color:var(--studio-accent-text)!important;
 }
 body.iema-login-page .iema-login-help:hover{color:var(--studio-accent-hover)!important}
}

@media(max-width:560px){
  html:has(body.iema-login-page){background:#24282c!important}
  body.iema-login-page{
    min-width:320px!important;
    background:linear-gradient(180deg,#2d3135 0%,#23272b 100%)!important;
    overflow-x:hidden!important;
  }
  body.iema-login-page:before{left:-39px!important;top:12%!important;font-size:64px!important;opacity:.72!important}
  body.iema-login-page:after{right:-210px!important;bottom:-190px!important;width:430px!important;height:430px!important;border-width:24px!important}
  body.iema-login-page .iema-login-wrap{
    width:calc(100% - 20px)!important;
    margin:10px auto 22px!important;
    min-height:0!important;
    border:1px solid #414850!important;
    border-radius:22px!important;
    overflow:visible!important;
    box-shadow:0 18px 44px rgba(0,0,0,.32)!important;
  }
  body.iema-login-page .iema-login-brand{
    min-height:0!important;
    padding:18px 18px 16px!important;
    border-radius:21px 21px 0 0!important;
    border-bottom:1px solid #3a4148!important;
  }
  body.iema-login-page .iema-login-brand-top{min-height:58px!important;gap:12px!important}
  body.iema-login-page .iema-login-logo-frame{
    width:62px!important;height:62px!important;padding:6px!important;border-radius:16px!important;
  }
  body.iema-login-page .iema-login-studio-logo{border-radius:11px!important}
  body.iema-login-page .iema-login-product-lockup strong{font-size:10px!important;letter-spacing:.14em!important}
  body.iema-login-page .iema-login-product-lockup small{font-size:7.5px!important}
  body.iema-login-page .iema-login-brand-copy{
    margin:0!important;padding:17px 0 5px!important;
  }
  body.iema-login-page .iema-login-eyebrow{margin-bottom:6px!important;font-size:8px!important}
  body.iema-login-page .iema-login-brand-copy h1{
    margin:0 0 5px!important;
    max-width:100%!important;
    font-size:clamp(29px,8.7vw,37px)!important;
    line-height:.96!important;
  }
  body.iema-login-page .iema-login-lockup-title{margin:0 0 7px!important;font-size:15px!important}
  body.iema-login-page .iema-login-season{min-height:23px!important;margin:0 0 7px!important;padding:4px 8px!important;font-size:7.5px!important}
  body.iema-login-page .iema-login-brand-copy p{
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    font-size:11.5px!important;
    line-height:1.4!important;
  }
  body.iema-login-page .iema-login-brand-footer{
    margin-top:11px!important;padding-top:9px!important;gap:8px!important;
  }
  body.iema-login-page .iema-login-brand-footer span,
  body.iema-login-page .iema-login-brand-footer b{font-size:7px!important;letter-spacing:.08em!important}
  body.iema-login-page .iema-login-card{
    padding:18px 18px calc(24px + env(safe-area-inset-bottom))!important;
    border-radius:0 0 21px 21px!important;
  }
  body.iema-login-page .iema-login-card-head{margin-bottom:14px!important}
  body.iema-login-page .iema-login-card-head>span{margin-bottom:4px!important;font-size:8px!important}
  body.iema-login-page .iema-login-card-head h2{margin:0 0 4px!important;font-size:24px!important;line-height:1.02!important}
  body.iema-login-page .iema-login-card-head p{font-size:11px!important;line-height:1.35!important}
  body.iema-login-page .iema-login-card form{gap:10px!important}
  body.iema-login-page .iema-login-card label{margin-bottom:5px!important;font-size:11px!important}
  body.iema-login-page .iema-login-card input[type=text],
  body.iema-login-page .iema-login-card input[type=password],
  body.iema-login-page .iema-login-card input[type=submit]{
    min-height:50px!important;
    border-radius:12px!important;
    font-size:16px!important;
  }
  body.iema-login-page .iema-login-card input[type=text],
  body.iema-login-page .iema-login-card input[type=password]{padding:11px 13px!important}
  body.iema-login-page .iema-login-card .login-remember{margin:0!important}
  body.iema-login-page .iema-login-card .login-remember label{font-size:11px!important}
  body.iema-login-page .iema-login-help{display:inline-flex!important;margin-top:10px!important;font-size:11px!important}
  body.iema-login-page .iema-login-card:after{margin-top:14px!important;padding-top:10px!important;font-size:7px!important}
}
@media(max-width:380px){
  body.iema-login-page .iema-login-wrap{width:calc(100% - 12px)!important;margin-top:6px!important;border-radius:18px!important}
  body.iema-login-page .iema-login-brand{padding:14px 15px 13px!important;border-radius:17px 17px 0 0!important}
  body.iema-login-page .iema-login-logo-frame{width:54px!important;height:54px!important;border-radius:14px!important}
  body.iema-login-page .iema-login-brand-copy{padding-top:13px!important}
  body.iema-login-page .iema-login-brand-copy h1{font-size:28px!important}
  body.iema-login-page .iema-login-brand-copy p{font-size:10.5px!important}
  body.iema-login-page .iema-login-card{padding:16px 15px calc(20px + env(safe-area-inset-bottom))!important;border-radius:0 0 17px 17px!important}
  body.iema-login-page .iema-login-card-head h2{font-size:22px!important}
}

/* v0.12.79 Mobile login brand simplification */
.iema-login-mobile-subtitle,
.iema-login-mobile-copy,
.iema-login-card-eyebrow-mobile,
.iema-login-card-copy-mobile{display:none!important}

@media(max-width:560px){
  /* Make the studio the hero; remove repeated product branding on phone. */
  body.iema-login-page .iema-login-product-lockup,
  body.iema-login-page .iema-login-lockup-title,
  body.iema-login-page .iema-login-brand-footer,
  body.iema-login-page .iema-login-desktop-copy,
  body.iema-login-page .iema-login-card-eyebrow-desktop,
  body.iema-login-page .iema-login-card-copy-desktop{display:none!important}

  body.iema-login-page .iema-login-mobile-subtitle,
  body.iema-login-page .iema-login-mobile-copy,
  body.iema-login-page .iema-login-card-eyebrow-mobile,
  body.iema-login-page .iema-login-card-copy-mobile{display:block!important}

  body.iema-login-page .iema-login-brand{
    padding:15px 18px 14px!important;
  }
  body.iema-login-page .iema-login-brand-top{
    min-height:54px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }
  body.iema-login-page .iema-login-logo-frame{
    width:58px!important;
    height:58px!important;
    flex:0 0 58px!important;
  }
  body.iema-login-page .iema-login-brand-copy{
    padding:11px 0 0!important;
  }
  body.iema-login-page .iema-login-eyebrow{
    margin-bottom:5px!important;
    font-size:7.5px!important;
    letter-spacing:.16em!important;
  }
  body.iema-login-page .iema-login-brand-copy h1{
    margin:0 0 6px!important;
    font-size:clamp(27px,8.2vw,34px)!important;
    line-height:.98!important;
    letter-spacing:-.035em!important;
  }
  body.iema-login-page .iema-login-mobile-subtitle{
    margin:0 0 7px!important;
    color:var(--studio-accent)!important;
    font-size:10px!important;
    line-height:1.2!important;
    font-weight:850!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
  }
  body.iema-login-page .iema-login-season{
    min-height:22px!important;
    margin:0 0 8px!important;
  }
  body.iema-login-page .iema-login-mobile-copy{
    margin:0!important;
    max-width:38ch!important;
    color:#aeb9c7!important;
    font-size:11px!important;
    line-height:1.38!important;
  }
  body.iema-login-page .iema-login-card{
    padding:16px 18px calc(22px + env(safe-area-inset-bottom))!important;
  }
  body.iema-login-page .iema-login-card-head{
    margin-bottom:12px!important;
  }
  body.iema-login-page .iema-login-card-eyebrow-mobile{
    margin:0 0 4px!important;
    color:var(--studio-accent)!important;
    font-size:7.5px!important;
    line-height:1.2!important;
    font-weight:900!important;
    letter-spacing:.15em!important;
  }
  body.iema-login-page .iema-login-card-head h2{
    margin:0 0 3px!important;
    font-size:23px!important;
  }
  body.iema-login-page .iema-login-card-copy-mobile{
    margin:0!important;
    color:#93a2b4!important;
    font-size:10.5px!important;
    line-height:1.35!important;
  }
}
@media(max-width:380px){
  body.iema-login-page .iema-login-brand{padding:13px 15px 12px!important}
  body.iema-login-page .iema-login-logo-frame{width:52px!important;height:52px!important;flex-basis:52px!important}
  body.iema-login-page .iema-login-brand-copy{padding-top:9px!important}
  body.iema-login-page .iema-login-brand-copy h1{font-size:27px!important}
  body.iema-login-page .iema-login-card{padding:15px 15px calc(20px + env(safe-area-inset-bottom))!important}
}


/* v0.12.80 Mobile login final de-duplication */
@media(max-width:560px){
  /* Keep the phone login focused on studio identity + the actual sign-in task. */
  body.iema-login-page .iema-login-mobile-subtitle,
  body.iema-login-page .iema-login-desktop-copy,
  body.iema-login-page .iema-login-card-eyebrow-desktop,
  body.iema-login-page .iema-login-card-eyebrow-mobile{
    display:none!important;
  }
  body.iema-login-page .iema-login-mobile-copy,
  body.iema-login-page .iema-login-card-copy-mobile{
    display:block!important;
  }
  body.iema-login-page .iema-login-brand-copy h1{
    margin-bottom:8px!important;
  }
  body.iema-login-page .iema-login-season{
    margin-top:0!important;
  }
  body.iema-login-page .iema-login-card-head{
    margin-bottom:12px!important;
  }
}


/* v0.12.81 Mobile login final simplification */
@media(max-width:560px){
  /* Remove all remaining duplicated intro/copy on phone. The studio identity
     carries the page; the form begins immediately after the hero divider. */
  body.iema-login-page .iema-login-desktop-copy,
  body.iema-login-page .iema-login-mobile-copy,
  body.iema-login-page .iema-login-card-head{
    display:none!important;
  }

  body.iema-login-page .iema-login-brand-copy{
    padding-bottom:0!important;
  }
  body.iema-login-page .iema-login-season{
    margin-bottom:0!important;
  }
  body.iema-login-page .iema-login-card{
    padding-top:16px!important;
  }
  body.iema-login-page .iema-login-card form{
    margin-top:0!important;
  }
}

@media(max-width:380px){
  body.iema-login-page .iema-login-card{
    padding-top:14px!important;
  }
}


/* v0.13.1 season identity */
.iema-season-context-bar strong i{font:inherit;color:var(--iema-accent,#20b7ff);font-weight:750}.iema-season-row-copy{min-width:0}.iema-season-row-side{display:flex;align-items:center;gap:12px;flex:0 0 auto}.iema-season-tagline{display:block;margin-top:7px;color:var(--iema-accent,#20b7ff);font-size:13px;font-weight:800}.iema-login-season{gap:6px!important}.iema-login-season strong,.iema-login-season em{font:inherit!important;color:inherit!important}.iema-login-season em{font-style:normal!important;letter-spacing:.035em!important;text-transform:none!important}.iema-login-season span{opacity:.65!important}@media(max-width:760px){.iema-season-row-side{width:100%;align-items:stretch;flex-direction:column}.iema-season-row-side>.iema-btn{width:100%}.iema-login-season{max-width:min(94vw,420px)!important;white-space:normal!important;justify-content:center!important;text-align:center!important;line-height:1.25!important}}

/* v0.13.2 Progressive Web App / Home Screen experience */
.iema-pwa-install{position:fixed;z-index:99980;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(440px,calc(100vw - 28px));box-sizing:border-box;display:grid;grid-template-columns:46px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px 12px 12px 14px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:linear-gradient(145deg,rgba(31,40,49,.98),rgba(17,24,32,.98));box-shadow:0 24px 70px rgba(0,0,0,.48);backdrop-filter:blur(18px);color:#fff}
.iema-pwa-install-mark,.iema-pwa-help-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--studio-accent,#20b7ff);color:var(--studio-accent-text,#07111f);font-weight:950;letter-spacing:-.04em}
.iema-pwa-install-copy{min-width:0;display:grid;gap:2px}.iema-pwa-install-copy strong{font-size:14px;line-height:1.2}.iema-pwa-install-copy span{font-size:12px;color:#aeb8c1;line-height:1.35}
.iema-pwa-install-action{border:0;border-radius:12px;min-height:42px;padding:0 15px;background:var(--studio-accent,#20b7ff);color:var(--studio-accent-text,#07111f);font:800 13px/1 inherit;cursor:pointer}.iema-pwa-install-dismiss{width:40px;height:40px;border:0;border-radius:12px;background:transparent;color:#99a5af;font-size:22px;cursor:pointer}
.iema-pwa-help{position:fixed;z-index:99990;inset:0;display:grid;align-items:end;padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom));box-sizing:border-box}.iema-pwa-help-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.68);backdrop-filter:blur(7px)}
.iema-pwa-help-dialog{position:relative;width:min(480px,100%);margin:0 auto;border:1px solid rgba(255,255,255,.13);border-radius:26px;background:linear-gradient(145deg,#202a34,#121920);box-shadow:0 30px 90px rgba(0,0,0,.6);padding:26px;color:#fff;box-sizing:border-box}.iema-pwa-help-dialog h2{margin:18px 0 12px;font-size:24px}.iema-pwa-help-dialog ol{margin:0;padding-left:22px;color:#dbe1e6;line-height:1.8}.iema-pwa-help-dialog p{margin:16px 0 0;color:#aeb8c1;line-height:1.5}.iema-pwa-help-close{position:absolute;right:14px;top:14px;width:42px;height:42px;border:0;border-radius:13px;background:rgba(255,255,255,.07);color:#fff;font-size:24px;cursor:pointer}
.iema-pwa-standalone body.iema-portal-page{padding-top:env(safe-area-inset-top)}
.iema-pwa-standalone .iema-top,.iema-pwa-standalone .iema-login-wrap{--iema-pwa-safe-top:env(safe-area-inset-top)}
@media (max-width:760px){.iema-pwa-install{grid-template-columns:42px minmax(0,1fr) auto;gap:10px}.iema-pwa-install-mark{width:42px;height:42px}.iema-pwa-install-dismiss{position:absolute;right:4px;top:-44px;background:#1c252e;border:1px solid rgba(255,255,255,.1)}.iema-pwa-help-dialog{padding:24px 22px}.iema-pwa-help-dialog h2{font-size:22px}}

/* =========================================================
   v0.13.9 — Theme-independent portal document normalization
   The MyDancer application owns the complete portal viewport. Prevent an
   installed WordPress theme from reserving header/footer/content space above
   or around the app when portal pages are rendered on a new platform host.
   ========================================================= */
html:has(body.iema-plugin-app-document),
body.iema-plugin-app-document{
  margin:0!important;
  padding:0!important;
  width:100%!important;
  max-width:none!important;
  min-height:100%!important;
  background:#020407!important;
  overflow-x:hidden!important;
}
body.iema-plugin-app-document::before,
body.iema-plugin-app-document::after{pointer-events:none!important}
body.iema-plugin-app-document .iema-plugin-app-main{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-height:100vh!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body.iema-plugin-app-document .iema-owner-shell,
body.iema-plugin-app-document .iema-dancer-shell,
body.iema-plugin-app-document .iema-account-shell,
body.iema-plugin-app-document .iema-parent-shell,
body.iema-plugin-app-document .iema-staff-shell{
  position:relative!important;
}

/* v0.13.10 — Studio Owner dancer exercise completion history */
.iema-owner-exercise-history{overflow:visible}
.iema-owner-history-head{align-items:flex-start}
.iema-owner-history-readonly{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--md3-line,#dbe3ec);border-radius:999px;background:var(--md3-surface-soft,#f8fafc);font-size:11px;font-weight:800;letter-spacing:.05em;color:var(--md3-muted,#6d7b8d);white-space:nowrap}
.iema-owner-history-readonly:before{content:'◉';color:var(--studio-accent,var(--accent,#20b8ff))}
.iema-owner-history-monthbar{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:10px;margin:20px 0 12px}
.iema-owner-history-monthbar strong{text-align:center;font-size:18px}
.iema-owner-history-nav{display:grid;place-items:center;min-height:40px;border:1px solid var(--md3-line,#dbe3ec);border-radius:12px;text-decoration:none!important;font-size:25px;line-height:1;color:var(--md3-navy,#12233f);background:#fff;box-shadow:var(--md3-shadow-soft,0 5px 18px rgba(22,38,63,.06))}
.iema-owner-history-legend{display:flex;flex-wrap:wrap;gap:10px 18px;margin:0 0 14px;color:var(--md3-muted,#6d7b8d);font-size:11px;font-weight:700}
.iema-owner-history-legend span{display:inline-flex;align-items:center;gap:7px}.iema-owner-history-legend i{width:8px;height:8px;border-radius:50%;background:#718096}.iema-owner-history-legend .is-complete i{background:#32c48d}.iema-owner-history-legend .is-partial i{background:#f3b64a}.iema-owner-history-legend .is-assigned i{background:#77889a}
.iema-owner-history-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.iema-owner-history-dow{padding:6px 4px;text-align:center;color:var(--muted,#9eb0c6);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.iema-owner-history-day{position:relative;appearance:none;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;min-width:0;min-height:76px;padding:10px;border:1px solid var(--md3-line,#dbe3ec);border-radius:13px;background:#fff;color:var(--md3-text,#132238);text-align:left;font:inherit;box-shadow:0 2px 8px rgba(22,38,63,.035)}
button.iema-owner-history-day{cursor:pointer;transition:transform .14s ease,border-color .14s ease,background .14s ease,box-shadow .14s ease}button.iema-owner-history-day:hover{transform:translateY(-1px);border-color:var(--md3-blue,#5874d8);background:var(--md3-blue-soft,#eef2ff);box-shadow:0 6px 16px rgba(22,38,63,.08)}
.iema-owner-history-day>b{font-size:13px;color:var(--md3-navy,#12233f)}.iema-owner-history-day>span{font-size:10px;font-weight:800;color:var(--md3-muted,#6d7b8d)}.iema-owner-history-day>i{position:absolute;right:9px;top:9px;width:8px;height:8px;border-radius:50%;background:#77889a}.iema-owner-history-day.is-complete>i{background:#32c48d}.iema-owner-history-day.is-partial>i{background:#f3b64a}.iema-owner-history-day.is-blank{visibility:hidden}
.iema-owner-history-dialog{max-width:860px!important}.iema-owner-history-workouts{display:grid;gap:16px}.iema-owner-history-workout{border:1px solid var(--md3-line,#dbe3ec);border-radius:17px;padding:17px;background:#fff;box-shadow:var(--md3-shadow-soft,0 5px 18px rgba(22,38,63,.06))}
.iema-owner-history-workout>header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}.iema-owner-history-workout>header span{display:block;margin-bottom:5px;font-size:10px;font-weight:900;letter-spacing:.08em;color:var(--md3-muted,#6d7b8d)}.iema-owner-history-workout.is-complete>header span{color:#32c48d}.iema-owner-history-workout.is-partial>header span{color:#f3b64a}.iema-owner-history-workout>header h3{margin:0}.iema-owner-history-workout>header p,.iema-owner-history-workout>header time{margin:5px 0 0;color:var(--md3-muted,#6d7b8d);font-size:12px}.iema-owner-history-workout>header time{white-space:nowrap}
.iema-owner-history-exercise-group{margin-top:14px}.iema-owner-history-exercise-group h4{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:12px}.iema-owner-history-exercise-group h4 span{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--md3-surface-soft,#f8fafc);border:1px solid var(--md3-line,#dbe3ec);font-size:10px}.iema-owner-history-exercises{display:grid;gap:7px}.iema-owner-history-exercise{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--md3-line,#dbe3ec);border-radius:11px;background:var(--md3-surface-soft,#f8fafc)}.iema-owner-history-exercise-status{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;font-size:12px;font-weight:900;background:rgba(119,136,154,.15);color:#9eb0c6}.is-complete .iema-owner-history-exercise-status{background:rgba(50,196,141,.14);color:#45dda2}.is-incomplete .iema-owner-history-exercise-status{background:rgba(243,182,74,.14);color:#f3b64a}.iema-owner-history-exercise strong,.iema-owner-history-exercise small{display:block}.iema-owner-history-exercise small{margin-top:3px;color:var(--md3-muted,#6d7b8d)}
.iema-owner-history-workout-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.iema-owner-history-workout-meta span{padding:9px 11px;border:1px solid var(--md3-line,#dbe3ec);border-radius:10px;background:var(--md3-surface-soft,#f8fafc)}.iema-owner-history-workout-meta small,.iema-owner-history-workout-meta strong{display:block}.iema-owner-history-workout-meta small{font-size:9px;letter-spacing:.07em;color:var(--md3-muted,#6d7b8d);text-transform:uppercase}.iema-owner-history-notes{margin-top:14px;padding:12px;border-left:3px solid var(--md3-blue,#5874d8);border-radius:0 10px 10px 0;background:var(--md3-blue-soft,#eef2ff)}.iema-owner-history-notes.is-assignment{border-left-color:#94a3b8;background:#f1f5f9}.iema-owner-history-notes small{font-size:9px;font-weight:900;letter-spacing:.08em;color:var(--md3-muted,#6d7b8d)}.iema-owner-history-notes p{margin:5px 0 0}.iema-owner-history-footnote{margin:16px 0 0;color:var(--md3-muted,#6d7b8d);font-size:11px}.iema-owner-history-empty{margin-top:14px}
@media(max-width:700px){.iema-owner-history-calendar{gap:4px}.iema-owner-history-day{min-height:58px;padding:7px;border-radius:10px}.iema-owner-history-day>span{font-size:9px}.iema-owner-history-dow{font-size:8px;padding-inline:0}.iema-owner-history-workout>header{display:block}.iema-owner-history-workout>header time{display:block;margin-top:7px}.iema-owner-history-readonly{white-space:normal}.iema-owner-history-dialog{padding-inline:14px!important}}

/* v0.13.11 — make dancer exercise history a first-class Owner workspace destination */
.iema-dancer-exercise-overview-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:700px){.iema-dancer-exercise-overview-actions{width:100%;justify-content:flex-start}.iema-dancer-exercise-overview-actions>.iema-btn{width:100%;text-align:center}}


/* =========================================================
   v0.13.13 — Studio Owner canvas regression fix (superseded by v0.13.14)
   Keep the theme-independent document shell, but restore the
   Owner Portal's intended light gray application canvas.
   Dancer/other explicitly dark portals retain their own canvas.
   ========================================================= */
body.iema-plugin-app-document:has(.iema-owner-shell),
body.iema-owner-portal-page{
  background:var(--md3-bg,#f2f5f9)!important;
  color:var(--md3-text,#132238)!important;
}
body.iema-plugin-app-document:has(.iema-owner-shell) .iema-plugin-app-main,
body.iema-owner-portal-page main,
body.iema-owner-portal-page .ma-wrap,
body.iema-owner-portal-page .ma-page,
body.iema-owner-portal-page article,
body.iema-owner-portal-page .entry-content{
  background:transparent!important;
}


/* =========================================================
   v0.13.15 — Studio Owner MYDANCER.PRO environmental wordmark
   Reinstates the established Owner Portal environmental background:
   medium graphite/silver field + MYDANCER.PRO wordmark + concentric rings.
   Content surfaces remain independent cards over the patterned canvas.
   ========================================================= */
html:has(body.iema-owner-portal-page),
html:has(body.iema-plugin-app-document .iema-owner-shell),
body.iema-owner-portal-page,
body.iema-plugin-app-document:has(.iema-owner-shell){
  background:
    radial-gradient(circle at 15% 7%, rgba(255,255,255,.105) 0, rgba(255,255,255,.042) 23%, transparent 44%),
    radial-gradient(circle at 82% 16%, rgba(224,229,235,.10) 0, rgba(224,229,235,.035) 27%, transparent 50%),
    radial-gradient(circle at 36% 76%, rgba(255,255,255,.065) 0, rgba(255,255,255,.018) 30%, transparent 53%),
    radial-gradient(circle at 94% 84%, rgba(204,211,220,.075) 0, transparent 39%),
    linear-gradient(145deg,#3b3e43 0%,#303338 32%,#272a2e 65%,#202226 100%)!important;
  background-attachment:fixed!important;
  color:#f4f8ff!important;
}
body.iema-owner-portal-page::before,
body.iema-plugin-app-document:has(.iema-owner-shell)::before{
  content:"MYDANCER.PRO"!important;
  position:fixed!important;
  left:clamp(4px,1vw,18px)!important;
  top:clamp(110px,14vh,170px)!important;
  z-index:0!important;
  width:auto!important;
  height:auto!important;
  pointer-events:none!important;
  user-select:none!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(64px,6.4vw,116px)!important;
  line-height:.82!important;
  font-weight:900!important;
  letter-spacing:-.075em!important;
  color:rgba(235,239,244,.095)!important;
  text-shadow:0 1px 0 rgba(0,0,0,.08)!important;
  writing-mode:vertical-rl!important;
  text-orientation:mixed!important;
  transform:rotate(180deg)!important;
  white-space:nowrap!important;
}
body.iema-owner-portal-page::after,
body.iema-plugin-app-document:has(.iema-owner-shell)::after{
  content:""!important;
  position:fixed!important;
  z-index:0!important;
  pointer-events:none!important;
  right:-20vw!important;
  top:-24vw!important;
  width:65vw!important;
  height:65vw!important;
  min-width:760px!important;
  min-height:760px!important;
  border-radius:50%!important;
  border:1px solid rgba(229,233,238,.23)!important;
  box-shadow:
    0 0 0 42px rgba(229,233,238,.025),
    0 0 0 44px rgba(229,233,238,.13),
    0 0 0 96px rgba(229,233,238,.018),
    0 0 0 98px rgba(229,233,238,.08),
    0 0 0 164px rgba(229,233,238,.012),
    0 0 0 166px rgba(229,233,238,.055)!important;
  opacity:.78!important;
}
body.iema-owner-portal-page #page,
body.iema-owner-portal-page .site,
body.iema-owner-portal-page .site-container,
body.iema-owner-portal-page .site-content,
body.iema-owner-portal-page .content-area,
body.iema-owner-portal-page #content,
body.iema-owner-portal-page .wp-site-blocks,
body.iema-owner-portal-page main,
body.iema-owner-portal-page .ma-wrap,
body.iema-owner-portal-page .ma-page,
body.iema-owner-portal-page article,
body.iema-owner-portal-page .entry-content,
body.iema-plugin-app-document:has(.iema-owner-shell) .iema-plugin-app-main{
  background:transparent!important;
}
body.iema-owner-portal-page .iema-owner-shell,
body.iema-plugin-app-document:has(.iema-owner-shell) .iema-owner-shell{
  position:relative!important;
  z-index:1!important;
}
@media(max-width:700px){
  body.iema-owner-portal-page::before,
  body.iema-plugin-app-document:has(.iema-owner-shell)::before{
    left:-5vw!important;
    top:1vh!important;
    font-size:clamp(78px,24vw,150px)!important;
    color:rgba(235,239,244,.065)!important;
  }
  body.iema-owner-portal-page::after,
  body.iema-plugin-app-document:has(.iema-owner-shell)::after{
    right:-72vw!important;
    top:-30vw!important;
    width:125vw!important;
    height:125vw!important;
    min-width:0!important;
    min-height:0!important;
  }
}


/* =========================================================
   v0.13.16 — Owner environmental wordmark alignment
   Keep MYDANCER.PRO vertically centered and fully visible.
   ========================================================= */
@media (max-height:760px){
  body.iema-owner-portal-page::before,
  body.iema-plugin-app-document:has(.iema-owner-shell)::before{
    font-size:clamp(50px,4.8vw,78px)!important;
  }
}

/* =========================================================
   v0.13.17 — Owner environmental wordmark viewport fit
   Move MYDANCER.PRO upward so the complete vertical wordmark
   remains visible within the desktop viewport.
   ========================================================= */
body.iema-owner-portal-page::before,
body.iema-plugin-app-document:has(.iema-owner-shell)::before{
  top:clamp(24px,4vh,48px)!important;
}
@media (max-height:760px) and (min-width:701px){
  body.iema-owner-portal-page::before,
  body.iema-plugin-app-document:has(.iema-owner-shell)::before{
    top:18px!important;
    font-size:clamp(48px,4.6vw,74px)!important;
  }
}


/* =========================================================
   v0.13.18 — Owner environmental wordmark final viewport fit
   Slightly reduce MYDANCER.PRO so the complete vertical wordmark
   remains visible while preserving the higher v0.13.17 placement.
   ========================================================= */
@media (min-width:701px){
  body.iema-owner-portal-page::before,
  body.iema-plugin-app-document:has(.iema-owner-shell)::before{
    font-size:clamp(56px,5.3vw,96px)!important;
  }
}
@media (max-height:760px) and (min-width:701px){
  body.iema-owner-portal-page::before,
  body.iema-plugin-app-document:has(.iema-owner-shell)::before{
    font-size:clamp(44px,4.2vw,68px)!important;
  }
}

/* =========================================================
   v0.13.19 — Unified MyDancer portal visual system
   Owner Portal is the visual source of truth. Parent, Faculty and Dancer
   now use the same environmental canvas, application shell, top bar,
   navigation, card surfaces, forms, typography and responsive spacing.
   ========================================================= */

/* Shared medium graphite patterned application canvas. */
html:has(body.iema-parent-portal-page),
html:has(body.iema-staff-portal-page),
html:has(body.iema-dancer-portal-page),
body.iema-parent-portal-page,
body.iema-staff-portal-page,
body.iema-dancer-portal-page{
  margin:0!important;
  background:
    radial-gradient(circle at 15% 7%, rgba(255,255,255,.105) 0, rgba(255,255,255,.042) 23%, transparent 44%),
    radial-gradient(circle at 82% 16%, rgba(224,229,235,.10) 0, rgba(224,229,235,.035) 27%, transparent 50%),
    radial-gradient(circle at 36% 76%, rgba(255,255,255,.065) 0, rgba(255,255,255,.018) 30%, transparent 53%),
    radial-gradient(circle at 94% 84%, rgba(204,211,220,.075) 0, transparent 39%),
    linear-gradient(145deg,#3b3e43 0%,#303338 32%,#272a2e 65%,#202226 100%)!important;
  background-attachment:fixed!important;
  color:#f4f8ff!important;
  overflow-x:hidden!important;
}
body.iema-parent-portal-page::before,
body.iema-staff-portal-page::before,
body.iema-dancer-portal-page::before{
  content:"MYDANCER.PRO"!important;
  position:fixed!important;
  left:clamp(4px,1vw,18px)!important;
  top:clamp(24px,4vh,48px)!important;
  z-index:0!important;
  width:auto!important;height:auto!important;
  pointer-events:none!important;user-select:none!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(56px,5.3vw,96px)!important;
  line-height:.82!important;font-weight:900!important;letter-spacing:-.075em!important;
  color:rgba(235,239,244,.095)!important;text-shadow:0 1px 0 rgba(0,0,0,.08)!important;
  writing-mode:vertical-rl!important;text-orientation:mixed!important;transform:rotate(180deg)!important;white-space:nowrap!important;
}
body.iema-parent-portal-page::after,
body.iema-staff-portal-page::after,
body.iema-dancer-portal-page::after{
  content:""!important;position:fixed!important;z-index:0!important;pointer-events:none!important;
  right:-20vw!important;top:-24vw!important;width:65vw!important;height:65vw!important;min-width:760px!important;min-height:760px!important;
  border-radius:50%!important;border:1px solid rgba(229,233,238,.23)!important;
  box-shadow:0 0 0 42px rgba(229,233,238,.025),0 0 0 44px rgba(229,233,238,.13),0 0 0 96px rgba(229,233,238,.018),0 0 0 98px rgba(229,233,238,.08),0 0 0 164px rgba(229,233,238,.012),0 0 0 166px rgba(229,233,238,.055)!important;
  opacity:.78!important;
}
body.iema-parent-portal-page .iema-plugin-app-main,
body.iema-staff-portal-page .iema-plugin-app-main,
body.iema-dancer-portal-page .iema-plugin-app-main{background:transparent!important;position:relative!important;z-index:1!important}

/* All role shells use Owner Portal dimensions and spacing. */
.iema-parent-shell,.iema-staff-shell,.iema-dancer-shell{
  --owner-accent:var(--md2-blue);--owner-accent-2:var(--md2-blue-strong);--owner-bg:#020407;--owner-surface:#080d14;--owner-surface-2:#0d1420;--owner-line:#1e2a39;--owner-text:#f4f8ff;--owner-muted:#93a4bc;
  width:min(1540px,calc(100vw - 28px))!important;max-width:1540px!important;margin:14px auto 46px!important;padding:0!important;
  background:transparent!important;color:var(--owner-text)!important;position:relative!important;z-index:1!important;
}
.iema-parent-shell .iema-parent-content{padding:0!important;max-width:none!important;background:transparent!important}
.iema-dancer-shell .iema-dancer-sticky-shell{position:static!important;background:transparent!important;padding:0!important;margin:0!important;backdrop-filter:none!important}

/* Exact Owner top-bar language across every role. */
.iema-parent-shell .iema-app-topbar,.iema-staff-shell .iema-app-topbar,.iema-dancer-shell .iema-app-topbar{
  display:grid!important;grid-template-columns:minmax(280px,.9fr) minmax(360px,1.2fr) minmax(230px,270px)!important;align-items:center!important;gap:24px!important;
  min-height:108px!important;margin:0 0 12px!important;padding:20px 24px!important;
  background:linear-gradient(180deg,#0d1420 0%,#080d14 100%)!important;border:1px solid #1e2a39!important;border-radius:22px!important;
  box-shadow:0 18px 48px rgba(0,0,0,.34)!important;color:#fff!important;
}
.iema-parent-shell .iema-shell-brand,.iema-staff-shell .iema-shell-brand,.iema-dancer-shell .iema-shell-brand{display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important}
.iema-parent-shell .iema-shell-brand .iema-studio-logo,.iema-staff-shell .iema-shell-brand .iema-studio-logo,.iema-dancer-shell .iema-shell-brand .iema-studio-logo{
  width:66px!important;height:66px!important;min-width:66px!important;object-fit:contain!important;border-radius:17px!important;padding:5px!important;background:#111924!important;border:1px solid #2a3a50!important;box-shadow:0 10px 24px rgba(0,0,0,.28)!important;
}
.iema-parent-shell .iema-studio-name,.iema-staff-shell .iema-studio-name,.iema-dancer-shell .iema-studio-name{color:#fff!important;font-size:22px!important;font-weight:950!important;line-height:1.05!important;letter-spacing:-.02em!important;text-transform:none!important}
.iema-parent-shell .iema-account-label,.iema-staff-shell .iema-account-label,.iema-dancer-shell .iema-account-label{color:#8fa6c4!important;font-size:10px!important;letter-spacing:.12em!important}
.iema-parent-shell .iema-page-heading,.iema-staff-shell .iema-page-heading,.iema-dancer-shell .iema-page-heading{text-align:center!important;min-width:0!important}
.iema-parent-shell .iema-page-heading h1,.iema-staff-shell .iema-page-heading h1,.iema-dancer-shell .iema-page-heading h1{margin:0 0 5px!important;color:#fff!important;font-size:32px!important;letter-spacing:-.035em!important;line-height:1!important}
.iema-parent-shell .iema-page-heading p,.iema-staff-shell .iema-page-heading p,.iema-dancer-shell .iema-page-heading p{margin:0!important;color:#93a4bc!important;font-size:12.5px!important;line-height:1.45!important}
.iema-parent-shell .iema-portal-user,.iema-staff-shell .iema-portal-user,.iema-dancer-shell .iema-portal-user{justify-self:end!important;width:100%!important;max-width:270px!important}
.iema-parent-shell .iema-portal-user summary,.iema-staff-shell .iema-portal-user summary,.iema-dancer-shell .iema-portal-user summary{
  display:grid!important;grid-template-columns:42px minmax(0,1fr) 14px!important;align-items:center!important;gap:10px!important;min-height:58px!important;padding:7px 12px 7px 8px!important;border-radius:16px!important;
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border:1px solid #38beff!important;color:#fff!important;box-shadow:0 12px 28px rgba(13,124,255,.25)!important;
}
.iema-parent-shell .iema-portal-user summary img,.iema-staff-shell .iema-portal-user summary img,.iema-dancer-shell .iema-portal-user summary img{width:42px!important;height:42px!important;border-radius:50%!important;border:2px solid rgba(255,255,255,.92)!important}
.iema-parent-shell .iema-portal-user summary strong,.iema-parent-shell .iema-portal-user summary small,.iema-parent-shell .iema-portal-user summary b,
.iema-staff-shell .iema-portal-user summary strong,.iema-staff-shell .iema-portal-user summary small,.iema-staff-shell .iema-portal-user summary b,
.iema-dancer-shell .iema-portal-user summary strong,.iema-dancer-shell .iema-portal-user summary small,.iema-dancer-shell .iema-portal-user summary b{color:#fff!important}
.iema-parent-shell .iema-portal-user nav,.iema-staff-shell .iema-portal-user nav,.iema-dancer-shell .iema-portal-user nav{background:#0d1420!important;border:1px solid #26364a!important;box-shadow:0 20px 46px rgba(0,0,0,.38)!important}
.iema-parent-shell .iema-portal-user nav a,.iema-staff-shell .iema-portal-user nav a,.iema-dancer-shell .iema-portal-user nav a{color:#edf6ff!important}

/* Role navigation becomes the same dark segmented bar as Owner primary navigation. */
.iema-parent-shell .iema-role-nav,.iema-staff-shell .iema-role-nav,.iema-dancer-shell .iema-primary-nav{
  position:static!important;width:100%!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;
  margin:0 0 10px!important;padding:7px!important;overflow-x:auto!important;background:#080d14!important;border:1px solid #1e2a39!important;border-radius:17px!important;box-shadow:none!important;
}
.iema-parent-shell .iema-role-nav a,.iema-staff-shell .iema-role-nav a,.iema-dancer-shell .iema-primary-nav a{
  position:static!important;display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;min-height:42px!important;padding:9px 16px!important;
  border:1px solid transparent!important;border-radius:12px!important;background:transparent!important;color:#9aacc4!important;font-size:12.5px!important;font-weight:850!important;text-decoration:none!important;white-space:nowrap!important;
}
.iema-parent-shell .iema-role-nav a:hover,.iema-staff-shell .iema-role-nav a:hover,.iema-dancer-shell .iema-primary-nav a:hover{background:#101a27!important;color:#eaf7ff!important;border-color:#223650!important}
.iema-parent-shell .iema-role-nav a.active,.iema-staff-shell .iema-role-nav a.active,.iema-dancer-shell .iema-primary-nav a.active{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border-color:var(--md2-blue)!important;color:#fff!important;box-shadow:0 10px 24px rgba(13,124,255,.24)!important;
}

/* Shared content surfaces. */
.iema-parent-shell .iema-panel,.iema-parent-shell .iema-parent-hero,.iema-parent-shell .iema-dancers-profile-section,.iema-parent-shell .iema-availability-card,.iema-parent-shell .iema-calendar-preview-card,.iema-parent-shell .iema-parent-view-head,.iema-parent-shell .iema-dancer-profile-card,.iema-parent-shell .iema-parent-dancer-card,
.iema-staff-shell .iema-panel,.iema-staff-shell .iema-stat-grid>div,.iema-staff-shell .iema-faculty-day,.iema-staff-shell .iema-faculty-group-card,.iema-staff-shell .iema-faculty-note-card,
.iema-dancer-shell .iema-panel,.iema-dancer-shell .iema-stat-grid>div,.iema-dancer-shell .iema-today-panel,.iema-dancer-shell .iema-workout,.iema-dancer-shell .iema-progress-kpi,.iema-dancer-shell .iema-progress-breakdown,.iema-dancer-shell .iema-progress-activity{
  background:linear-gradient(180deg,#0c121c 0%,#080d14 100%)!important;border:1px solid #1f2b3a!important;border-radius:18px!important;color:#f4f8ff!important;box-shadow:0 16px 40px rgba(0,0,0,.26)!important;
}
.iema-parent-shell .iema-panel,.iema-staff-shell .iema-panel,.iema-dancer-shell .iema-panel{padding:22px!important}
.iema-parent-shell h1,.iema-parent-shell h2,.iema-parent-shell h3,.iema-parent-shell h4,.iema-parent-shell strong,
.iema-staff-shell h1,.iema-staff-shell h2,.iema-staff-shell h3,.iema-staff-shell h4,.iema-staff-shell strong,
.iema-dancer-shell h1,.iema-dancer-shell h2,.iema-dancer-shell h3,.iema-dancer-shell h4,.iema-dancer-shell strong{color:#f5f8ff!important}
.iema-parent-shell p,.iema-parent-shell small,.iema-parent-shell em,.iema-parent-shell .iema-muted,.iema-parent-shell .iema-help,
.iema-staff-shell p,.iema-staff-shell small,.iema-staff-shell em,.iema-staff-shell .iema-muted,.iema-staff-shell .iema-help,
.iema-dancer-shell p,.iema-dancer-shell small,.iema-dancer-shell em,.iema-dancer-shell .iema-muted,.iema-dancer-shell .iema-help{color:#93a4bc!important}
.iema-parent-shell .iema-kicker,.iema-staff-shell .iema-kicker,.iema-dancer-shell .iema-kicker{color:var(--md2-blue-soft)!important;opacity:1!important}

/* Nested rows/cards follow Owner roster card treatment. */
.iema-parent-shell .iema-family-summary>div,.iema-parent-shell .iema-dancers-profile-grid>*,.iema-parent-shell .iema-parent-program-card,.iema-parent-shell .iema-dancer-schedule-row,.iema-parent-shell .iema-calendar,
.iema-staff-shell .iema-faculty-agenda-item,.iema-staff-shell .iema-faculty-upcoming-list button,.iema-staff-shell .iema-faculty-next,.iema-staff-shell .iema-faculty-mini-roster span,
.iema-dancer-shell .iema-exercise-card,.iema-dancer-shell .iema-progress-event,.iema-dancer-shell .iema-progress-chips span,.iema-dancer-shell .iema-history>div{
  background:#0d1420!important;border-color:#202d3e!important;color:#fff!important;box-shadow:none!important;
}

/* Forms/buttons use the Owner control system. */
.iema-parent-shell input,.iema-parent-shell select,.iema-parent-shell textarea,
.iema-staff-shell input,.iema-staff-shell select,.iema-staff-shell textarea,
.iema-dancer-shell input,.iema-dancer-shell select,.iema-dancer-shell textarea{
  box-sizing:border-box!important;background:#060a10!important;color:#f5f8ff!important;border:1px solid #293648!important;border-radius:11px!important;min-height:44px!important;box-shadow:none!important;
}
.iema-parent-shell input::placeholder,.iema-parent-shell textarea::placeholder,.iema-staff-shell input::placeholder,.iema-staff-shell textarea::placeholder,.iema-dancer-shell input::placeholder,.iema-dancer-shell textarea::placeholder{color:#65758b!important}
.iema-parent-shell label,.iema-staff-shell label,.iema-dancer-shell label{color:#d8e5f6!important;font-weight:750!important}
.iema-parent-shell .iema-btn,.iema-parent-shell button.iema-btn,.iema-parent-shell a.iema-btn,.iema-parent-shell input[type="submit"],
.iema-staff-shell .iema-btn,.iema-staff-shell button.iema-btn,.iema-staff-shell a.iema-btn,.iema-staff-shell input[type="submit"],
.iema-dancer-shell .iema-btn,.iema-dancer-shell button.iema-btn,.iema-dancer-shell a.iema-btn,.iema-dancer-shell input[type="submit"]{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;border:1px solid #39bdff!important;color:#fff!important;border-radius:12px!important;box-shadow:0 10px 22px rgba(13,124,255,.22)!important;
}
.iema-parent-shell .iema-btn-secondary,.iema-staff-shell .iema-btn-secondary,.iema-dancer-shell .iema-btn-secondary,.iema-parent-shell .iema-btn-ghost,.iema-staff-shell .iema-btn-ghost,.iema-dancer-shell .iema-btn-ghost{background:#101722!important;border:1px solid #2a394d!important;color:#e6f5ff!important;box-shadow:none!important}

/* Parent-specific light artifacts converted to dark Owner surfaces. */
.iema-parent-shell .iema-parent-hero{padding:22px!important;margin:0 0 16px!important}
.iema-parent-shell .iema-parent-welcome h2{color:#fff!important}.iema-parent-shell .iema-parent-welcome p{color:#93a4bc!important}
.iema-parent-shell .iema-parent-home-roster-head{margin:0 0 14px!important}.iema-parent-shell .iema-dancers-profile-section{padding:22px!important}
.iema-parent-shell .iema-availability-card,.iema-parent-shell .iema-calendar-preview-card{padding:22px!important}
.iema-parent-shell .iema-availability-day{background:#0d1420!important;border-color:#202d3e!important}.iema-parent-shell .iema-availability-day.is-on{background:#0e1b2c!important;border-color:#2c6b95!important;box-shadow:inset 4px 0 0 var(--md2-blue)!important}
.iema-parent-shell .iema-calendar{padding:8px!important}.iema-parent-shell .iema-calendar-day{background:#05080d!important;color:#eef4ff!important;border-color:#1b2430!important}.iema-parent-shell .iema-calendar-head{background:#0b1119!important}.iema-parent-shell .iema-calendar-head b{color:#8fa0b8!important}

/* Faculty day/group components normalized to Owner cards. */
.iema-staff-shell .iema-faculty-day{padding:22px!important;margin-bottom:16px!important}.iema-staff-shell .iema-faculty-day-head{background:transparent!important;border:0!important;padding:0 0 16px!important}
.iema-staff-shell .iema-faculty-day-nav button{background:#162136!important;border:1px solid #29415e!important;color:#fff!important}.iema-staff-shell .iema-faculty-day-count{background:#0e2638!important;border:1px solid #1f4b68!important;color:#75d7ff!important}
.iema-staff-shell .iema-faculty-group-card,.iema-staff-shell .iema-faculty-note-card{padding:18px!important}.iema-staff-shell .iema-faculty-role-summary span{background:#0e2638!important;color:#75d7ff!important;border-color:#1f4b68!important}

/* Dancer content keeps workout usability, but visually belongs to the same app. */
.iema-dancer-shell{max-width:1540px!important}
.iema-dancer-shell .iema-today-panel{overflow:hidden!important}.iema-dancer-shell .iema-dancer-section-title{background:transparent!important;border-bottom:1px solid #1f2b3a!important}.iema-dancer-shell .iema-workout{border-radius:14px!important;margin:12px!important;overflow:hidden!important}.iema-dancer-shell .iema-workout+.iema-workout{border-top:1px solid #1f2b3a!important}.iema-dancer-shell .iema-workout-head{background:#0d1420!important;border-bottom:1px solid #202d3e!important}.iema-dancer-shell .iema-wellness{background:#0d1420!important;border-top:1px solid #202d3e!important}.iema-dancer-shell .iema-progress-kpis{gap:12px!important}.iema-dancer-shell .iema-progress-kpi,.iema-dancer-shell .iema-progress-breakdown,.iema-dancer-shell .iema-progress-activity{padding:18px!important}

@media(max-width:980px){
  .iema-parent-shell,.iema-staff-shell,.iema-dancer-shell{width:calc(100vw - 16px)!important;margin:8px auto 32px!important}
  .iema-parent-shell .iema-app-topbar,.iema-staff-shell .iema-app-topbar,.iema-dancer-shell .iema-app-topbar{grid-template-columns:1fr auto!important;grid-template-areas:'brand user' 'heading heading'!important;gap:14px!important;padding:18px!important;min-height:0!important}
  .iema-parent-shell .iema-shell-brand,.iema-staff-shell .iema-shell-brand,.iema-dancer-shell .iema-shell-brand{grid-area:brand!important}
  .iema-parent-shell .iema-page-heading,.iema-staff-shell .iema-page-heading,.iema-dancer-shell .iema-page-heading{grid-area:heading!important;text-align:left!important}
  .iema-parent-shell .iema-portal-user,.iema-staff-shell .iema-portal-user,.iema-dancer-shell .iema-portal-user{grid-area:user!important}
}
@media(max-width:700px){
  body.iema-parent-portal-page::before,body.iema-staff-portal-page::before,body.iema-dancer-portal-page::before{left:-5vw!important;top:1vh!important;font-size:clamp(78px,24vw,150px)!important;color:rgba(235,239,244,.065)!important}
  body.iema-parent-portal-page::after,body.iema-staff-portal-page::after,body.iema-dancer-portal-page::after{right:-72vw!important;top:-30vw!important;width:125vw!important;height:125vw!important;min-width:0!important;min-height:0!important}
}
@media(max-width:640px){
  .iema-parent-shell,.iema-staff-shell,.iema-dancer-shell{width:100vw!important;margin:0 auto 24px!important}
  .iema-parent-shell .iema-app-topbar,.iema-staff-shell .iema-app-topbar,.iema-dancer-shell .iema-app-topbar{border-radius:0 0 18px 18px!important;border-left:0!important;border-right:0!important;padding:15px!important}
  .iema-parent-shell .iema-shell-brand .iema-studio-logo,.iema-staff-shell .iema-shell-brand .iema-studio-logo,.iema-dancer-shell .iema-shell-brand .iema-studio-logo{width:52px!important;height:52px!important;min-width:52px!important;border-radius:14px!important}
  .iema-parent-shell .iema-studio-name,.iema-staff-shell .iema-studio-name,.iema-dancer-shell .iema-studio-name{font-size:17px!important}
  .iema-parent-shell .iema-page-heading h1,.iema-staff-shell .iema-page-heading h1,.iema-dancer-shell .iema-page-heading h1{font-size:27px!important}
  .iema-parent-shell .iema-portal-user,.iema-staff-shell .iema-portal-user,.iema-dancer-shell .iema-portal-user{width:auto!important;min-width:0!important}
  .iema-parent-shell .iema-portal-user summary,.iema-staff-shell .iema-portal-user summary,.iema-dancer-shell .iema-portal-user summary{grid-template-columns:40px 14px!important;padding:6px!important;min-height:52px!important}
  .iema-parent-shell .iema-portal-user summary span,.iema-staff-shell .iema-portal-user summary span,.iema-dancer-shell .iema-portal-user summary span{display:none!important}
  .iema-parent-shell .iema-role-nav,.iema-staff-shell .iema-role-nav,.iema-dancer-shell .iema-primary-nav{border-left:0!important;border-right:0!important;border-radius:0!important;margin:0 0 8px!important;padding:6px 10px!important}
  .iema-parent-shell .iema-panel,.iema-staff-shell .iema-panel,.iema-dancer-shell .iema-panel{padding:16px!important;border-radius:15px!important}
  .iema-parent-shell .iema-parent-content>section,.iema-staff-shell>.iema-stat-grid,.iema-staff-shell>section,.iema-staff-shell>[data-faculty-day-shell],.iema-dancer-shell>#today,.iema-dancer-shell>#progress{margin-left:10px!important;margin-right:10px!important}
}
@media (max-height:760px) and (min-width:701px){
  body.iema-parent-portal-page::before,body.iema-staff-portal-page::before,body.iema-dancer-portal-page::before{top:18px!important;font-size:clamp(44px,4.2vw,68px)!important}
}

/* v0.13.20 browser push notifications */
.iema-portal-user nav .iema-push-menu-button{display:block;width:100%;border:0;background:transparent;color:inherit;text-align:left;font:inherit;padding:10px 12px;cursor:pointer;border-radius:10px}
.iema-portal-user nav .iema-push-menu-button:hover,.iema-portal-user nav .iema-push-menu-button:focus-visible{background:rgba(32,183,255,.12);outline:none}
.iema-portal-user nav .iema-push-menu-button.is-on{color:var(--studio-accent,#20b7ff);font-weight:800}
.iema-portal-user nav .iema-push-menu-button:disabled{opacity:.65;cursor:wait}

/* v0.13.21 — mobile portal header correction
   Keep the unified Owner-style shell, but give phones a true safe-area aware
   compact identity row so the studio brand, menu and account control never
   collide with iOS status chrome or each other. */
@media (max-width:640px){
  .iema-parent-shell .iema-app-topbar,
  .iema-staff-shell .iema-app-topbar,
  .iema-dancer-shell .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 44px 52px!important;
    grid-template-areas:'brand menu user' 'heading heading heading'!important;
    column-gap:8px!important;
    row-gap:18px!important;
    align-items:center!important;
    padding:calc(14px + env(safe-area-inset-top)) 14px 20px!important;
    min-height:0!important;
  }
  .iema-parent-shell .iema-shell-brand,
  .iema-staff-shell .iema-shell-brand,
  .iema-dancer-shell .iema-shell-brand{
    min-width:0!important;
    gap:10px!important;
    overflow:hidden!important;
  }
  .iema-parent-shell .iema-shell-brand>div,
  .iema-staff-shell .iema-shell-brand>div,
  .iema-dancer-shell .iema-shell-brand>div{min-width:0!important;overflow:hidden!important}
  .iema-parent-shell .iema-shell-brand .iema-studio-logo,
  .iema-staff-shell .iema-shell-brand .iema-studio-logo,
  .iema-dancer-shell .iema-shell-brand .iema-studio-logo{
    width:50px!important;height:50px!important;min-width:50px!important;
    padding:4px!important;border-radius:13px!important;
  }
  .iema-parent-shell .iema-studio-name,
  .iema-staff-shell .iema-studio-name,
  .iema-dancer-shell .iema-studio-name{
    display:block!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:15px!important;
    line-height:1.08!important;
    letter-spacing:-.015em!important;
  }
  .iema-parent-shell .iema-account-label,
  .iema-staff-shell .iema-account-label,
  .iema-dancer-shell .iema-account-label{
    display:block!important;
    margin-top:5px!important;
    font-size:9px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .iema-parent-shell .iema-account-label .iema-plugin-version,
  .iema-staff-shell .iema-account-label .iema-plugin-version,
  .iema-dancer-shell .iema-account-label .iema-plugin-version{font-size:8px!important}

  .iema-parent-shell .iema-mobile-menu-toggle,
  .iema-staff-shell .iema-mobile-menu-toggle,
  .iema-dancer-shell .iema-mobile-menu-toggle{
    display:inline-flex!important;
    width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;
    padding:0!important;border-radius:12px!important;
  }
  .iema-parent-shell .iema-mobile-menu-toggle b,
  .iema-staff-shell .iema-mobile-menu-toggle b,
  .iema-dancer-shell .iema-mobile-menu-toggle b{display:none!important}
  .iema-parent-shell .iema-mobile-menu-toggle span,
  .iema-staff-shell .iema-mobile-menu-toggle span,
  .iema-dancer-shell .iema-mobile-menu-toggle span{font-size:20px!important;line-height:1!important}

  .iema-parent-shell .iema-portal-user,
  .iema-staff-shell .iema-portal-user,
  .iema-dancer-shell .iema-portal-user{
    width:52px!important;max-width:52px!important;min-width:52px!important;
    justify-self:end!important;
  }
  .iema-parent-shell .iema-portal-user summary,
  .iema-staff-shell .iema-portal-user summary,
  .iema-dancer-shell .iema-portal-user summary{
    display:grid!important;place-items:center!important;
    grid-template-columns:1fr!important;
    width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important;
    padding:4px!important;border-radius:15px!important;
    overflow:hidden!important;
  }
  .iema-parent-shell .iema-portal-user summary img,
  .iema-staff-shell .iema-portal-user summary img,
  .iema-dancer-shell .iema-portal-user summary img{
    width:42px!important;height:42px!important;min-width:42px!important;border-radius:50%!important;
  }
  .iema-parent-shell .iema-portal-user summary span,
  .iema-parent-shell .iema-portal-user summary b,
  .iema-staff-shell .iema-portal-user summary span,
  .iema-staff-shell .iema-portal-user summary b,
  .iema-dancer-shell .iema-portal-user summary span,
  .iema-dancer-shell .iema-portal-user summary b{display:none!important}

  .iema-parent-shell .iema-page-heading,
  .iema-staff-shell .iema-page-heading,
  .iema-dancer-shell .iema-page-heading{
    padding-top:0!important;
    text-align:left!important;
  }
  .iema-parent-shell .iema-page-heading h1,
  .iema-staff-shell .iema-page-heading h1,
  .iema-dancer-shell .iema-page-heading h1{
    font-size:30px!important;
    line-height:1.02!important;
    margin-bottom:7px!important;
  }
  .iema-parent-shell .iema-page-heading p,
  .iema-staff-shell .iema-page-heading p,
  .iema-dancer-shell .iema-page-heading p{
    max-width:34em!important;
    font-size:12px!important;
    line-height:1.45!important;
  }
}
@media (max-width:390px){
  .iema-parent-shell .iema-app-topbar,
  .iema-staff-shell .iema-app-topbar,
  .iema-dancer-shell .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 42px 48px!important;
    column-gap:6px!important;
    padding-left:11px!important;padding-right:11px!important;
  }
  .iema-parent-shell .iema-shell-brand .iema-studio-logo,
  .iema-staff-shell .iema-shell-brand .iema-studio-logo,
  .iema-dancer-shell .iema-shell-brand .iema-studio-logo{width:46px!important;height:46px!important;min-width:46px!important}
  .iema-parent-shell .iema-studio-name,
  .iema-staff-shell .iema-studio-name,
  .iema-dancer-shell .iema-studio-name{font-size:14px!important}
  .iema-parent-shell .iema-mobile-menu-toggle,
  .iema-staff-shell .iema-mobile-menu-toggle,
  .iema-dancer-shell .iema-mobile-menu-toggle{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}
  .iema-parent-shell .iema-portal-user,
  .iema-staff-shell .iema-portal-user,
  .iema-dancer-shell .iema-portal-user,
  .iema-parent-shell .iema-portal-user summary,
  .iema-staff-shell .iema-portal-user summary,
  .iema-dancer-shell .iema-portal-user summary{width:48px!important;max-width:48px!important;min-width:48px!important;height:48px!important;min-height:48px!important}
  .iema-parent-shell .iema-portal-user summary img,
  .iema-staff-shell .iema-portal-user summary img,
  .iema-dancer-shell .iema-portal-user summary img{width:38px!important;height:38px!important;min-width:38px!important}
  .iema-parent-shell .iema-page-heading h1,
  .iema-staff-shell .iema-page-heading h1,
  .iema-dancer-shell .iema-page-heading h1{font-size:28px!important}
}


/* =========================================================
   v0.13.22 — rebuilt phone masthead
   On phones the portal header is intentionally simplified instead of
   squeezing the desktop grid into the iOS status-bar area. The nav is
   already visible directly below the masthead, so the duplicate hamburger
   is removed. Brand + account share one clean row; portal title gets its own.
   ========================================================= */
@media (max-width:640px){
  .iema-parent-shell .iema-app-topbar,
  .iema-staff-shell .iema-app-topbar,
  .iema-dancer-shell .iema-app-topbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:'brand user' 'heading heading'!important;
    align-items:center!important;
    column-gap:14px!important;
    row-gap:20px!important;
    min-height:0!important;
    padding:22px 18px 22px!important;
  }

  /* Installed iPhone/iPad web apps draw beneath the system status bar.
     Reserve real space instead of hoping the desktop header misses it. */
  @media (display-mode:standalone){
    .iema-parent-shell .iema-app-topbar,
    .iema-staff-shell .iema-app-topbar,
    .iema-dancer-shell .iema-app-topbar{
      padding-top:max(58px,calc(env(safe-area-inset-top) + 16px))!important;
    }
  }

  .iema-parent-shell .iema-shell-brand,
  .iema-staff-shell .iema-shell-brand,
  .iema-dancer-shell .iema-shell-brand{
    grid-area:brand!important;
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    min-width:0!important;
    overflow:visible!important;
  }
  .iema-parent-shell .iema-shell-brand>div,
  .iema-staff-shell .iema-shell-brand>div,
  .iema-dancer-shell .iema-shell-brand>div{
    min-width:0!important;
    overflow:hidden!important;
  }
  .iema-parent-shell .iema-shell-brand .iema-studio-logo,
  .iema-staff-shell .iema-shell-brand .iema-studio-logo,
  .iema-dancer-shell .iema-shell-brand .iema-studio-logo{
    width:48px!important;height:48px!important;min-width:48px!important;
    padding:4px!important;border-radius:13px!important;
  }
  .iema-parent-shell .iema-studio-name,
  .iema-staff-shell .iema-studio-name,
  .iema-dancer-shell .iema-studio-name{
    display:block!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:17px!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
  }
  .iema-parent-shell .iema-account-label,
  .iema-staff-shell .iema-account-label,
  .iema-dancer-shell .iema-account-label{
    display:flex!important;
    align-items:baseline!important;
    gap:7px!important;
    margin-top:7px!important;
    font-size:9px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  .iema-parent-shell .iema-portal-user,
  .iema-staff-shell .iema-portal-user,
  .iema-dancer-shell .iema-portal-user{
    grid-area:user!important;
    justify-self:end!important;
    align-self:center!important;
    width:50px!important;min-width:50px!important;max-width:50px!important;
  }
  .iema-parent-shell .iema-portal-user summary,
  .iema-staff-shell .iema-portal-user summary,
  .iema-dancer-shell .iema-portal-user summary{
    display:grid!important;
    place-items:center!important;
    grid-template-columns:1fr!important;
    width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important;
    padding:4px!important;
    border-radius:15px!important;
    overflow:hidden!important;
  }
  .iema-parent-shell .iema-portal-user summary img,
  .iema-staff-shell .iema-portal-user summary img,
  .iema-dancer-shell .iema-portal-user summary img{
    width:40px!important;height:40px!important;min-width:40px!important;
  }
  .iema-parent-shell .iema-portal-user summary span,
  .iema-parent-shell .iema-portal-user summary b,
  .iema-staff-shell .iema-portal-user summary span,
  .iema-staff-shell .iema-portal-user summary b,
  .iema-dancer-shell .iema-portal-user summary span,
  .iema-dancer-shell .iema-portal-user summary b{display:none!important}

  /* The role navigation is already fully visible below the masthead. */
  .iema-parent-shell .iema-mobile-menu-toggle,
  .iema-staff-shell .iema-mobile-menu-toggle,
  .iema-dancer-shell .iema-mobile-menu-toggle{display:none!important}

  .iema-parent-shell .iema-page-heading,
  .iema-staff-shell .iema-page-heading,
  .iema-dancer-shell .iema-page-heading{
    grid-area:heading!important;
    min-width:0!important;
    padding:0!important;
    text-align:left!important;
  }
  .iema-parent-shell .iema-page-heading h1,
  .iema-staff-shell .iema-page-heading h1,
  .iema-dancer-shell .iema-page-heading h1{
    margin:0 0 8px!important;
    font-size:31px!important;
    line-height:1!important;
    letter-spacing:-.045em!important;
  }
  .iema-parent-shell .iema-page-heading p,
  .iema-staff-shell .iema-page-heading p,
  .iema-dancer-shell .iema-page-heading p{
    margin:0!important;
    max-width:32em!important;
    font-size:13px!important;
    line-height:1.42!important;
  }
}
@media (max-width:380px){
  .iema-parent-shell .iema-app-topbar,
  .iema-staff-shell .iema-app-topbar,
  .iema-dancer-shell .iema-app-topbar{padding-left:14px!important;padding-right:14px!important;column-gap:10px!important}
  .iema-parent-shell .iema-shell-brand .iema-studio-logo,
  .iema-staff-shell .iema-shell-brand .iema-studio-logo,
  .iema-dancer-shell .iema-shell-brand .iema-studio-logo{width:44px!important;height:44px!important;min-width:44px!important}
  .iema-parent-shell .iema-studio-name,
  .iema-staff-shell .iema-studio-name,
  .iema-dancer-shell .iema-studio-name{font-size:15px!important}
  .iema-parent-shell .iema-portal-user,
  .iema-staff-shell .iema-portal-user,
  .iema-dancer-shell .iema-portal-user,
  .iema-parent-shell .iema-portal-user summary,
  .iema-staff-shell .iema-portal-user summary,
  .iema-dancer-shell .iema-portal-user summary{width:46px!important;min-width:46px!important;max-width:46px!important;height:46px!important;min-height:46px!important}
  .iema-parent-shell .iema-portal-user summary img,
  .iema-staff-shell .iema-portal-user summary img,
  .iema-dancer-shell .iema-portal-user summary img{width:36px!important;height:36px!important;min-width:36px!important}
  .iema-parent-shell .iema-page-heading h1,
  .iema-staff-shell .iema-page-heading h1,
  .iema-dancer-shell .iema-page-heading h1{font-size:29px!important}
}


/* v0.13.23 app refresh control */
.iema-portal-user nav .iema-app-refresh-button,
.iema-portal-user nav .iema-push-menu-button{
  display:block!important;width:100%!important;box-sizing:border-box!important;padding:10px 11px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:inherit!important;text-align:left!important;font:inherit!important;font-size:12px!important;font-weight:800!important;cursor:pointer!important;
}
.iema-portal-user nav .iema-app-refresh-button:hover,
.iema-portal-user nav .iema-app-refresh-button:focus-visible,
.iema-portal-user nav .iema-push-menu-button:hover,
.iema-portal-user nav .iema-push-menu-button:focus-visible{background:#13243a!important;color:#fff!important;outline:none!important}
.iema-portal-user nav .iema-app-refresh-button:disabled{opacity:.65!important;cursor:wait!important}

/* =========================================================
   v0.13.28 — single-source mobile portal masthead
   iOS standalone no longer uses viewport-fit=cover, so the browser owns the
   status-bar safe area. These are the ONLY late-stage phone masthead rules.
   ========================================================= */
@media (max-width:640px){
  /* Mobile canvas: keep decorative desktop wordmark out of the masthead. */
  body.iema-owner-portal-page::before,
  body.iema-parent-portal-page::before,
  body.iema-staff-portal-page::before,
  body.iema-dancer-portal-page::before,
  body.iema-plugin-app-document:has(.iema-owner-shell)::before{
    display:none!important;
    content:none!important;
  }

  /* Since the viewport is contained below iOS system chrome, no synthetic
     safe-area padding should be applied by legacy PWA rules. */
  html.iema-pwa-standalone body.iema-portal-page,
  html.iema-pwa-standalone body.iema-owner-portal-page,
  html.iema-pwa-standalone body.iema-parent-portal-page,
  html.iema-pwa-standalone body.iema-staff-portal-page,
  html.iema-pwa-standalone body.iema-dancer-portal-page{
    padding-top:0!important;
  }

  .iema-owner-shell .iema-app-topbar,
  .iema-parent-shell .iema-app-topbar,
  .iema-staff-shell .iema-app-topbar,
  .iema-dancer-shell .iema-app-topbar{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 52px!important;
    grid-template-areas:
      'brand user'
      'heading heading'!important;
    align-items:center!important;
    align-content:start!important;
    column-gap:12px!important;
    row-gap:16px!important;
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    margin:0 0 10px!important;
    padding:16px 18px 20px!important;
    border-radius:0 0 18px 18px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  .iema-owner-shell .iema-shell-brand,
  .iema-parent-shell .iema-shell-brand,
  .iema-staff-shell .iema-shell-brand,
  .iema-dancer-shell .iema-shell-brand,
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-shell-brand{
    position:static!important;
    inset:auto!important;
    transform:none!important;
    grid-area:brand!important;
    display:grid!important;
    grid-template-columns:48px minmax(0,1fr)!important;
    align-items:center!important;
    gap:10px!important;
    width:auto!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    overflow:hidden!important;
  }
  .iema-owner-shell .iema-shell-brand>div,
  .iema-parent-shell .iema-shell-brand>div,
  .iema-staff-shell .iema-shell-brand>div,
  .iema-dancer-shell .iema-shell-brand>div{
    min-width:0!important;
    overflow:hidden!important;
  }
  .iema-owner-shell .iema-shell-brand .iema-studio-logo,
  .iema-parent-shell .iema-shell-brand .iema-studio-logo,
  .iema-staff-shell .iema-shell-brand .iema-studio-logo,
  .iema-dancer-shell .iema-shell-brand .iema-studio-logo{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    padding:4px!important;
    border-radius:13px!important;
    box-sizing:border-box!important;
  }
  .iema-owner-shell .iema-studio-name,
  .iema-parent-shell .iema-studio-name,
  .iema-staff-shell .iema-studio-name,
  .iema-dancer-shell .iema-studio-name{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:17px!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
  }
  .iema-owner-shell .iema-account-label,
  .iema-parent-shell .iema-account-label,
  .iema-staff-shell .iema-account-label,
  .iema-dancer-shell .iema-account-label{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    margin-top:5px!important;
    font-size:9px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  .iema-owner-shell .iema-portal-user,
  .iema-parent-shell .iema-portal-user,
  .iema-staff-shell .iema-portal-user,
  .iema-dancer-shell .iema-portal-user{
    position:relative!important;
    grid-area:user!important;
    justify-self:end!important;
    align-self:center!important;
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
    margin:0!important;
  }
  .iema-owner-shell .iema-portal-user summary,
  .iema-parent-shell .iema-portal-user summary,
  .iema-staff-shell .iema-portal-user summary,
  .iema-dancer-shell .iema-portal-user summary{
    display:grid!important;
    place-items:center!important;
    grid-template-columns:1fr!important;
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    min-height:52px!important;
    padding:4px!important;
    border-radius:15px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  .iema-owner-shell .iema-portal-user summary img,
  .iema-parent-shell .iema-portal-user summary img,
  .iema-staff-shell .iema-portal-user summary img,
  .iema-dancer-shell .iema-portal-user summary img{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
  }
  .iema-owner-shell .iema-portal-user summary span,
  .iema-owner-shell .iema-portal-user summary b,
  .iema-parent-shell .iema-portal-user summary span,
  .iema-parent-shell .iema-portal-user summary b,
  .iema-staff-shell .iema-portal-user summary span,
  .iema-staff-shell .iema-portal-user summary b,
  .iema-dancer-shell .iema-portal-user summary span,
  .iema-dancer-shell .iema-portal-user summary b{
    display:none!important;
  }

  .iema-owner-shell .iema-page-heading,
  .iema-parent-shell .iema-page-heading,
  .iema-staff-shell .iema-page-heading,
  .iema-dancer-shell .iema-page-heading{
    position:static!important;
    grid-area:heading!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    text-align:left!important;
  }
  .iema-owner-shell .iema-page-heading h1,
  .iema-parent-shell .iema-page-heading h1,
  .iema-staff-shell .iema-page-heading h1,
  .iema-dancer-shell .iema-page-heading h1{
    margin:0 0 7px!important;
    font-size:30px!important;
    line-height:1!important;
    letter-spacing:-.045em!important;
  }
  .iema-owner-shell .iema-page-heading p,
  .iema-parent-shell .iema-page-heading p,
  .iema-staff-shell .iema-page-heading p,
  .iema-dancer-shell .iema-page-heading p{
    margin:0!important;
    max-width:32em!important;
    font-size:13px!important;
    line-height:1.4!important;
  }

  .iema-owner-shell .iema-mobile-menu-toggle,
  .iema-parent-shell .iema-mobile-menu-toggle,
  .iema-staff-shell .iema-mobile-menu-toggle,
  .iema-dancer-shell .iema-mobile-menu-toggle{
    display:none!important;
  }
}

@media (max-width:380px){
  .iema-owner-shell .iema-app-topbar,
  .iema-parent-shell .iema-app-topbar,
  .iema-staff-shell .iema-app-topbar,
  .iema-dancer-shell .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) 48px!important;
    padding-left:14px!important;
    padding-right:14px!important;
    column-gap:9px!important;
  }
  .iema-owner-shell .iema-shell-brand,
  .iema-parent-shell .iema-shell-brand,
  .iema-staff-shell .iema-shell-brand,
  .iema-dancer-shell .iema-shell-brand{
    grid-template-columns:44px minmax(0,1fr)!important;
    gap:8px!important;
  }
  .iema-owner-shell .iema-shell-brand .iema-studio-logo,
  .iema-parent-shell .iema-shell-brand .iema-studio-logo,
  .iema-staff-shell .iema-shell-brand .iema-studio-logo,
  .iema-dancer-shell .iema-shell-brand .iema-studio-logo{
    width:44px!important;height:44px!important;min-width:44px!important;
  }
  .iema-owner-shell .iema-studio-name,
  .iema-parent-shell .iema-studio-name,
  .iema-staff-shell .iema-studio-name,
  .iema-dancer-shell .iema-studio-name{font-size:15px!important}
  .iema-owner-shell .iema-portal-user,
  .iema-parent-shell .iema-portal-user,
  .iema-staff-shell .iema-portal-user,
  .iema-dancer-shell .iema-portal-user,
  .iema-owner-shell .iema-portal-user summary,
  .iema-parent-shell .iema-portal-user summary,
  .iema-staff-shell .iema-portal-user summary,
  .iema-dancer-shell .iema-portal-user summary{
    width:48px!important;min-width:48px!important;max-width:48px!important;height:48px!important;min-height:48px!important;
  }
  .iema-owner-shell .iema-portal-user summary img,
  .iema-parent-shell .iema-portal-user summary img,
  .iema-staff-shell .iema-portal-user summary img,
  .iema-dancer-shell .iema-portal-user summary img{
    width:38px!important;height:38px!important;min-width:38px!important;
  }
  .iema-owner-shell .iema-page-heading h1,
  .iema-parent-shell .iema-page-heading h1,
  .iema-staff-shell .iema-page-heading h1,
  .iema-dancer-shell .iema-page-heading h1{font-size:28px!important}
}




/* =========================================================
   v0.13.32 — stable iOS header + deterministic mobile menu toggles
   ========================================================= */
html{background:#07111f!important}

@media (max-width:640px){
  /* iOS standalone uses an opaque dark status bar and a contained viewport.
     Do not add synthetic safe-area padding to the masthead. */
  body.iema-owner-portal-page .iema-app-topbar,
  body.iema-parent-portal-page .iema-app-topbar,
  body.iema-staff-portal-page .iema-app-topbar,
  body.iema-dancer-portal-page .iema-app-topbar,
  body.iema-account-page .iema-app-topbar{
    padding-top:16px!important;
    background:#07111f!important;
  }

  /* Account trigger remains in the masthead. */
  .iema-portal-user{
    position:relative!important;
    z-index:1000!important;
    overflow:visible!important;
  }
  .iema-portal-user[open]{z-index:10020!important}
  .iema-portal-user[open] summary{position:relative!important;z-index:10022!important}

  /* Phone menu: anchored directly under the avatar, never a bottom sheet. */
  .iema-portal-user nav{
    position:absolute!important;
    top:calc(100% + 10px)!important;
    right:0!important;
    bottom:auto!important;
    left:auto!important;
    width:min(270px,calc(100vw - 28px))!important;
    max-width:calc(100vw - 28px)!important;
    box-sizing:border-box!important;
    z-index:10021!important;
    padding:8px!important;
    border:1px solid #2a3b50!important;
    border-radius:16px!important;
    background:#0d1724!important;
    box-shadow:0 18px 44px rgba(0,0,0,.42)!important;
    overflow:hidden!important;
    transform:none!important;
  }
  .iema-portal-user nav::before{
    content:"Account";
    display:block;
    margin:0 0 5px!important;
    padding:7px 10px 10px!important;
    color:#8fa6c4!important;
    border-bottom:1px solid #223247!important;
    font-size:9px!important;
    font-weight:900!important;
    letter-spacing:.15em!important;
    text-transform:uppercase!important;
  }
  .iema-portal-user nav a,
  .iema-portal-user nav .iema-app-refresh-button,
  .iema-portal-user nav .iema-push-menu-button{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:44px!important;
    box-sizing:border-box!important;
    margin:1px 0!important;
    padding:10px 12px!important;
    border:0!important;
    border-radius:10px!important;
    background:transparent!important;
    color:#edf6ff!important;
    font-size:13px!important;
    font-weight:800!important;
    line-height:1.2!important;
    text-align:left!important;
    text-decoration:none!important;
  }
  .iema-portal-user nav a:hover,
  .iema-portal-user nav a:focus-visible,
  .iema-portal-user nav .iema-app-refresh-button:hover,
  .iema-portal-user nav .iema-app-refresh-button:focus-visible,
  .iema-portal-user nav .iema-push-menu-button:hover,
  .iema-portal-user nav .iema-push-menu-button:focus-visible,
  .iema-portal-user nav a:active,
  .iema-portal-user nav .iema-app-refresh-button:active,
  .iema-portal-user nav .iema-push-menu-button:active{
    background:#17263a!important;
    color:#fff!important;
    outline:none!important;
  }
  .iema-portal-user nav .iema-push-menu-button.is-on{color:#66d1ff!important}
  .iema-portal-user nav .iema-portal-logout{
    margin-top:5px!important;
    padding-top:11px!important;
    color:#ff9ea6!important;
    border-top:1px solid #27374b!important;
  }
}


/* =========================================================
   v0.13.33 — deterministic account menu control
   Replaces native details/summary behavior with an explicit button/menu.
   ========================================================= */
.iema-portal-user .iema-portal-user-trigger{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 14px!important;
  gap:10px!important;
  align-items:center!important;
  padding:8px 10px!important;
  min-height:58px!important;
  border:1px solid #2d3a50!important;
  border-radius:14px!important;
  background:#0d131d!important;
  color:#fff!important;
  cursor:pointer!important;
  font:inherit!important;
  text-align:left!important;
  box-sizing:border-box!important;
}
.iema-portal-user .iema-portal-user-trigger img{
  width:42px!important;height:42px!important;border-radius:50%!important;
  object-fit:cover!important;border:1px solid #46556d!important;
}
.iema-portal-user .iema-portal-user-trigger span{display:grid!important;min-width:0!important}
.iema-portal-user .iema-portal-user-trigger strong{color:#fff!important;font-size:12px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.iema-portal-user .iema-portal-user-trigger small{color:#92a1b5!important;font-size:10px!important;margin-top:2px!important}
.iema-portal-user .iema-portal-user-trigger b{color:#8ea0b8!important;font-size:13px!important}
.iema-portal-user .iema-portal-user-trigger:focus-visible{outline:2px solid #35bfff!important;outline-offset:2px!important}
.iema-portal-user nav[hidden]{display:none!important}
.iema-portal-user.is-open nav:not([hidden]){display:block!important}
.iema-portal-user.is-open{z-index:10020!important}
.iema-portal-user.is-open .iema-portal-user-trigger{position:relative!important;z-index:10022!important}

/* Match each dark portal masthead. */
.iema-owner-shell .iema-portal-user .iema-portal-user-trigger,
.iema-parent-shell .iema-portal-user .iema-portal-user-trigger,
.iema-staff-shell .iema-portal-user .iema-portal-user-trigger,
.iema-dancer-shell .iema-portal-user .iema-portal-user-trigger{
  background:#172333!important;
  border-color:#31435a!important;
}
.iema-owner-shell .iema-portal-user .iema-portal-user-trigger img,
.iema-parent-shell .iema-portal-user .iema-portal-user-trigger img,
.iema-staff-shell .iema-portal-user .iema-portal-user-trigger img,
.iema-dancer-shell .iema-portal-user .iema-portal-user-trigger img{border:2px solid rgba(255,255,255,.92)!important}

@media (max-width:640px){
  .iema-owner-shell .iema-portal-user,
  .iema-parent-shell .iema-portal-user,
  .iema-staff-shell .iema-portal-user,
  .iema-dancer-shell .iema-portal-user{
    width:52px!important;min-width:52px!important;max-width:52px!important;
    position:relative!important;overflow:visible!important;
  }
  .iema-owner-shell .iema-portal-user .iema-portal-user-trigger,
  .iema-parent-shell .iema-portal-user .iema-portal-user-trigger,
  .iema-staff-shell .iema-portal-user .iema-portal-user-trigger,
  .iema-dancer-shell .iema-portal-user .iema-portal-user-trigger{
    display:grid!important;place-items:center!important;grid-template-columns:1fr!important;
    width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important;
    padding:4px!important;border-radius:15px!important;overflow:hidden!important;
  }
  .iema-owner-shell .iema-portal-user .iema-portal-user-trigger img,
  .iema-parent-shell .iema-portal-user .iema-portal-user-trigger img,
  .iema-staff-shell .iema-portal-user .iema-portal-user-trigger img,
  .iema-dancer-shell .iema-portal-user .iema-portal-user-trigger img{
    width:42px!important;height:42px!important;min-width:42px!important;
  }
  .iema-owner-shell .iema-portal-user .iema-portal-user-trigger span,
  .iema-owner-shell .iema-portal-user .iema-portal-user-trigger b,
  .iema-parent-shell .iema-portal-user .iema-portal-user-trigger span,
  .iema-parent-shell .iema-portal-user .iema-portal-user-trigger b,
  .iema-staff-shell .iema-portal-user .iema-portal-user-trigger span,
  .iema-staff-shell .iema-portal-user .iema-portal-user-trigger b,
  .iema-dancer-shell .iema-portal-user .iema-portal-user-trigger span,
  .iema-dancer-shell .iema-portal-user .iema-portal-user-trigger b{display:none!important}

  /* Compact menu anchored under avatar; never a sheet. */
  .iema-portal-user nav{
    position:absolute!important;
    top:calc(100% + 8px)!important;
    right:0!important;
    left:auto!important;
    bottom:auto!important;
    width:220px!important;
    max-width:calc(100vw - 24px)!important;
    padding:6px!important;
    border:1px solid #2a3b50!important;
    border-radius:14px!important;
    background:#0d1724!important;
    box-shadow:0 16px 36px rgba(0,0,0,.42)!important;
    overflow:hidden!important;
    z-index:10021!important;
  }
  .iema-portal-user nav::before{
    content:"Account"!important;
    display:block!important;
    padding:6px 9px 8px!important;
    margin:0 0 3px!important;
    color:#8fa6c4!important;
    border-bottom:1px solid #223247!important;
    font-size:9px!important;
    font-weight:900!important;
    letter-spacing:.15em!important;
    text-transform:uppercase!important;
  }
  .iema-portal-user nav a,
  .iema-portal-user nav .iema-app-refresh-button,
  .iema-portal-user nav .iema-push-menu-button{
    min-height:40px!important;
    padding:9px 10px!important;
    margin:0!important;
    border-radius:9px!important;
    font-size:12px!important;
    line-height:1.15!important;
  }
}


/* =========================================================
   v0.13.34 — portal shell canvas color unification
   Remove white browser/theme strips around the portal shell.
   ========================================================= */
:root{--iema-shell-canvas:#6a6e76;}
html:has(body.iema-owner-portal-page),
html:has(body.iema-parent-portal-page),
html:has(body.iema-staff-portal-page),
html:has(body.iema-dancer-portal-page),
html:has(body.iema-account-page){background:var(--iema-shell-canvas)!important;}
body.iema-owner-portal-page,
body.iema-parent-portal-page,
body.iema-staff-portal-page,
body.iema-dancer-portal-page,
body.iema-account-page{
  background:var(--iema-shell-canvas)!important;
}
body.iema-owner-portal-page .site,
body.iema-parent-portal-page .site,
body.iema-staff-portal-page .site,
body.iema-dancer-portal-page .site,
body.iema-account-page .site,
body.iema-owner-portal-page #page,
body.iema-parent-portal-page #page,
body.iema-staff-portal-page #page,
body.iema-dancer-portal-page #page,
body.iema-account-page #page,
body.iema-owner-portal-page .site-main,
body.iema-parent-portal-page .site-main,
body.iema-staff-portal-page .site-main,
body.iema-dancer-portal-page .site-main,
body.iema-account-page .site-main,
body.iema-owner-portal-page main,
body.iema-parent-portal-page main,
body.iema-staff-portal-page main,
body.iema-dancer-portal-page main,
body.iema-account-page main,
body.iema-owner-portal-page article,
body.iema-parent-portal-page article,
body.iema-staff-portal-page article,
body.iema-dancer-portal-page article,
body.iema-account-page article,
body.iema-owner-portal-page .entry-content,
body.iema-parent-portal-page .entry-content,
body.iema-staff-portal-page .entry-content,
body.iema-dancer-portal-page .entry-content,
body.iema-account-page .entry-content,
body.iema-owner-portal-page .wp-site-blocks,
body.iema-parent-portal-page .wp-site-blocks,
body.iema-staff-portal-page .wp-site-blocks,
body.iema-dancer-portal-page .wp-site-blocks,
body.iema-account-page .wp-site-blocks,
body.iema-owner-portal-page .content-area,
body.iema-parent-portal-page .content-area,
body.iema-staff-portal-page .content-area,
body.iema-dancer-portal-page .content-area,
body.iema-account-page .content-area{
  background:transparent!important;
}


/* =========================================================
   v0.13.37 — Parent mobile masthead/nav gap fix
   ONLY removes the exposed shell strip between these two bars.
   ========================================================= */
@media(max-width:560px){
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar{
    margin-bottom:0!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-shared-nav{
    margin-top:0!important;
    border-top-color:#1e2a39!important;
    background:#080d14!important;
  }
}


/* =========================================================
   v0.13.38 — Parent mobile top strip and seam correction
   Only the top clock/status strip becomes masthead navy, and the
   masthead/nav join is flattened with no exposed gray seam.
   ========================================================= */
@media(max-width:560px){
  body.iema-parent-portal-page .iema-parent-shell-topnav{
    position:relative!important;
    z-index:1!important;
  }
  body.iema-parent-portal-page::after{
    content:""!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:0!important;
    height:190px!important;
    background:#07111f!important;
    z-index:0!important;
    pointer-events:none!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar{
    margin-bottom:0!important;
    border-bottom-left-radius:0!important;
    border-bottom-right-radius:0!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-shared-nav{
    margin-top:-1px!important;
    border-top:0!important;
    border-top-left-radius:0!important;
    border-top-right-radius:0!important;
    background:#080d14!important;
  }
}


/* =========================================================
   v0.13.39 — iOS Parent status-area color only
   The system/status safe area is painted by the root canvas, not body.
   Keep the body shell gray; only the standalone root becomes masthead navy.
   ========================================================= */
@media(max-width:560px){
  html.iema-pwa-standalone:has(body.iema-parent-portal-page){
    background:#07111f!important;
  }
  html.iema-pwa-standalone:has(body.iema-parent-portal-page) body.iema-parent-portal-page{
    background:var(--iema-shell-canvas,#6a6e76)!important;
  }
  body.iema-parent-portal-page::after{
    display:none!important;
    content:none!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar{
    margin-bottom:0!important;
    border-bottom-left-radius:0!important;
    border-bottom-right-radius:0!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-shared-nav{
    margin-top:-1px!important;
    border-top:0!important;
    border-top-left-radius:0!important;
    border-top-right-radius:0!important;
  }
}


/* =========================================================
   v0.13.40 — Parent mobile continuous dark header
   1) Paint the iOS status-strip navy via the html root class.
   2) Remove the remaining seam between masthead and nav.
   No other shell backgrounds are changed.
   ========================================================= */
@media(max-width:560px){
  html.iema-parent-portal-active{
    background:#07111f!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar{
    margin-bottom:0!important;
    padding-bottom:12px!important;
    border-bottom:0!important;
    border-bottom-left-radius:0!important;
    border-bottom-right-radius:0!important;
    box-shadow:none!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-shared-nav{
    margin-top:-2px!important;
    border-top:0!important;
    border-top-left-radius:0!important;
    border-top-right-radius:0!important;
    background:#080d14!important;
    box-shadow:none!important;
  }
}


/* =========================================================
   v0.13.41 — actual iOS Parent status-bar integration
   Parent PWA uses viewport-fit=cover + black-translucent; the masthead
   owns the safe area while the gray shell below remains unchanged.
   ========================================================= */
@media(max-width:560px){
  html.iema-parent-pwa-cover{
    background:#07111f!important;
  }
  html.iema-parent-pwa-cover body.iema-parent-portal-page{
    padding-top:0!important;
    background:var(--iema-shell-canvas,#6a6e76)!important;
  }
  html.iema-parent-pwa-cover body.iema-parent-portal-page .iema-parent-shell-topnav{
    background:transparent!important;
  }
  html.iema-parent-pwa-cover body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar{
    margin-top:0!important;
    margin-bottom:0!important;
    padding-top:calc(16px + env(safe-area-inset-top))!important;
    border-top-left-radius:0!important;
    border-top-right-radius:0!important;
    border-bottom-left-radius:0!important;
    border-bottom-right-radius:0!important;
    background:linear-gradient(180deg,#0d1420 0%,#080d14 100%)!important;
  }
  html.iema-parent-pwa-cover body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-shared-nav{
    margin-top:-1px!important;
    border-top:0!important;
    border-top-left-radius:0!important;
    border-top-right-radius:0!important;
  }
  html.iema-parent-pwa-cover body.iema-parent-portal-page .iema-parent-content{
    background:transparent!important;
  }
}


/* =========================================================
   v0.13.42 — Parent mobile dancer-card separation
   Improve distinction between multiple stacked dancers without
   altering desktop layout or the card design language.
   ========================================================= */
@media(max-width:560px){
  body.iema-parent-portal-page .iema-parent-dancer-stack,
  body.iema-parent-portal-page .iema-parent-dancer-cards,
  body.iema-parent-portal-page .iema-parent-dancer-cards-large{
    gap:16px!important;
  }
  body.iema-parent-portal-page .iema-parent-dancer-card,
  body.iema-parent-portal-page .iema-parent-dancer-tile{
    position:relative!important;
    box-shadow:0 7px 18px rgba(0,0,0,.16)!important;
  }
  body.iema-parent-portal-page .iema-parent-dancer-card + .iema-parent-dancer-card,
  body.iema-parent-portal-page .iema-parent-dancer-tile + .iema-parent-dancer-tile{
    margin-top:2px!important;
  }
}


/* =========================================================
   v0.13.43 — Parent mobile complete-card separation
   Targets the actual dancer profile cards rendered on Parent Home.
   ========================================================= */
@media(max-width:620px){
  body.iema-parent-portal-page .iema-dancers-complete-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:30px!important;
  }
  body.iema-parent-portal-page .iema-dancers-complete-card{
    position:relative!important;
    overflow:visible!important;
  }
  body.iema-parent-portal-page .iema-dancers-complete-card + .iema-dancers-complete-card::before{
    content:""!important;
    position:absolute!important;
    left:10px!important;
    right:10px!important;
    top:-18px!important;
    height:6px!important;
    border-radius:999px!important;
    background:rgba(126,132,141,.72)!important;
    box-shadow:0 1px 0 rgba(255,255,255,.08) inset!important;
    pointer-events:none!important;
  }
}

/* v0.13.44 — Parent Availability redundant page heading removed in PHP for desktop and mobile. */


/* =========================================================
   v0.13.45 — Studio Login recovery / portal-shell parity
   Explicitly overrides the legacy black + giant MYDANCER fallback.
   Login page only; portal screens are untouched.
   ========================================================= */
html:has(body.iema-studio-path-login),
html:has(body.iema-login-page){
  background:#666b73!important;
}
body.iema-studio-path-login,
body.iema-login-page{
  min-height:100vh!important;
  margin:0!important;
  color:#f5f8ff!important;
  background:
    radial-gradient(circle at 78% 82%,rgba(255,255,255,.035) 0 1px,transparent 2px),
    radial-gradient(circle at 78% 82%,transparent 0 240px,rgba(255,255,255,.055) 242px 268px,transparent 270px 100%),
    linear-gradient(135deg,#747981 0%,#656a72 52%,#565b63 100%)!important;
  background-size:auto!important;
  overflow-x:hidden!important;
}
/* Kill every legacy login environmental wordmark/ring layer. */
body.iema-studio-path-login::before,
body.iema-studio-path-login::after,
body.iema-login-page::before,
body.iema-login-page::after{
  display:none!important;
  content:none!important;
}
body.iema-studio-path-login .site,
body.iema-studio-path-login #page,
body.iema-studio-path-login main,
body.iema-studio-path-login article,
body.iema-studio-path-login .entry-content,
body.iema-login-page .site,
body.iema-login-page #page,
body.iema-login-page main,
body.iema-login-page article,
body.iema-login-page .entry-content{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
}
body.iema-studio-path-login .iema-login-wrap,
body.iema-login-page .iema-login-wrap{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr)!important;
  width:min(1120px,calc(100vw - 36px))!important;
  max-width:1120px!important;
  min-height:610px!important;
  margin:clamp(28px,7vh,72px) auto!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #27364a!important;
  border-radius:26px!important;
  background:#080d14!important;
  box-shadow:0 28px 80px rgba(0,0,0,.34)!important;
}
body.iema-studio-path-login .iema-login-brand,
body.iema-login-page .iema-login-brand{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  min-width:0!important;
  padding:46px!important;
  border:0!important;
  border-right:1px solid #1f2b3a!important;
  border-radius:0!important;
  background:
    radial-gradient(circle at 10% 8%,rgba(32,183,255,.11),transparent 34%),
    linear-gradient(155deg,#101a28 0%,#0b121c 58%,#07111f 100%)!important;
  box-shadow:none!important;
}
body.iema-studio-path-login .iema-login-brand::before,
body.iema-studio-path-login .iema-login-brand::after,
body.iema-login-page .iema-login-brand::before,
body.iema-login-page .iema-login-brand::after{display:none!important;content:none!important}
body.iema-studio-path-login .iema-login-logo-frame,
body.iema-login-page .iema-login-logo-frame{
  background:#fff!important;
  border:1px solid #35465d!important;
  box-shadow:0 12px 30px rgba(0,0,0,.24)!important;
}
body.iema-studio-path-login .iema-login-brand-copy h1,
body.iema-login-page .iema-login-brand-copy h1{color:#fff!important}
body.iema-studio-path-login .iema-login-brand-copy p,
body.iema-login-page .iema-login-brand-copy p,
body.iema-studio-path-login .iema-login-brand-footer,
body.iema-login-page .iema-login-brand-footer{color:#9aacbf!important}
body.iema-studio-path-login .iema-login-card,
body.iema-login-page .iema-login-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  padding:52px 46px!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(180deg,#0c131e 0%,#080d14 100%)!important;
  color:#f5f8ff!important;
  box-shadow:none!important;
}
body.iema-studio-path-login .iema-login-card::after,
body.iema-login-page .iema-login-card::after{color:#71839a!important;border-color:#1f2b3a!important}
body.iema-studio-path-login .iema-login-card-head h2,
body.iema-login-page .iema-login-card-head h2{color:#fff!important}
body.iema-studio-path-login .iema-login-card-head p,
body.iema-login-page .iema-login-card-head p{color:#93a4bc!important}
body.iema-studio-path-login .iema-login-card input[type=text],
body.iema-studio-path-login .iema-login-card input[type=password],
body.iema-login-page .iema-login-card input[type=text],
body.iema-login-page .iema-login-card input[type=password]{
  background:#101925!important;
  border:1px solid #2a3a50!important;
  color:#fff!important;
}
body.iema-studio-path-login .iema-login-card input[type=text]:focus,
body.iema-studio-path-login .iema-login-card input[type=password]:focus,
body.iema-login-page .iema-login-card input[type=text]:focus,
body.iema-login-page .iema-login-card input[type=password]:focus{
  border-color:var(--studio-accent,#20b7ff)!important;
  box-shadow:0 0 0 3px rgba(32,183,255,.13)!important;
}
body.iema-studio-path-login .iema-login-card input[type=submit],
body.iema-login-page .iema-login-card input[type=submit]{
  background:linear-gradient(180deg,#27baf9 0%,#159edb 100%)!important;
  border:1px solid #38c3ff!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(13,124,255,.22)!important;
}
@media(max-width:760px){
  body.iema-studio-path-login .iema-login-wrap,
  body.iema-login-page .iema-login-wrap{
    grid-template-columns:1fr!important;
    width:calc(100vw - 20px)!important;
    min-height:0!important;
    margin:10px auto 28px!important;
    border-radius:22px!important;
  }
  body.iema-studio-path-login .iema-login-brand,
  body.iema-login-page .iema-login-brand{
    padding:24px 22px 22px!important;
    border-right:0!important;
    border-bottom:1px solid #1f2b3a!important;
  }
  body.iema-studio-path-login .iema-login-card,
  body.iema-login-page .iema-login-card{
    padding:28px 22px calc(30px + env(safe-area-inset-bottom))!important;
  }
}


/* v0.13.46 — canonical /login/ is plugin-owned; suppress any theme remnants. */
body.iema-studio-path-login{margin:0!important;min-height:100vh!important;}
body.iema-studio-path-login .iema-studio-path-login-main{display:block!important;width:100%!important;min-height:100vh!important;margin:0!important;padding:0!important;background:transparent!important;}


/* =========================================================
   v0.13.48 — Studio Login portal-background parity
   Use the exact graphite/silver environmental canvas from the portals.
   Login card/layout remains unchanged above this visual layer.
   ========================================================= */
html:has(body.iema-login-page),
body.iema-login-page{
  background:
    radial-gradient(circle at 15% 7%, rgba(255,255,255,.105) 0, rgba(255,255,255,.042) 23%, transparent 44%),
    radial-gradient(circle at 82% 16%, rgba(224,229,235,.10) 0, rgba(224,229,235,.035) 27%, transparent 50%),
    radial-gradient(circle at 36% 76%, rgba(255,255,255,.065) 0, rgba(255,255,255,.018) 30%, transparent 53%),
    radial-gradient(circle at 94% 84%, rgba(204,211,220,.075) 0, transparent 39%),
    linear-gradient(145deg,#3b3e43 0%,#303338 32%,#272a2e 65%,#202226 100%)!important;
  background-attachment:fixed!important;
}
body.iema-login-page::before{
  content:"MYDANCER.PRO"!important;
  position:fixed!important;
  left:clamp(4px,1vw,18px)!important;
  top:clamp(110px,14vh,170px)!important;
  z-index:0!important;
  width:auto!important;
  height:auto!important;
  pointer-events:none!important;
  user-select:none!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(64px,6.4vw,116px)!important;
  line-height:.82!important;
  font-weight:900!important;
  letter-spacing:-.075em!important;
  color:rgba(235,239,244,.095)!important;
  text-shadow:0 1px 0 rgba(0,0,0,.08)!important;
  writing-mode:vertical-rl!important;
  text-orientation:mixed!important;
  transform:rotate(180deg)!important;
  white-space:nowrap!important;
}
body.iema-login-page::after{
  content:""!important;
  position:fixed!important;
  z-index:0!important;
  pointer-events:none!important;
  right:-20vw!important;
  top:-24vw!important;
  bottom:auto!important;
  width:65vw!important;
  height:65vw!important;
  min-width:760px!important;
  min-height:760px!important;
  border-radius:50%!important;
  border:1px solid rgba(229,233,238,.23)!important;
  box-shadow:
    0 0 0 42px rgba(229,233,238,.025),
    0 0 0 44px rgba(229,233,238,.13),
    0 0 0 96px rgba(229,233,238,.018),
    0 0 0 98px rgba(229,233,238,.08),
    0 0 0 164px rgba(229,233,238,.012),
    0 0 0 166px rgba(229,233,238,.055)!important;
  opacity:.78!important;
}
body.iema-login-page .iema-login-wrap{
  position:relative!important;
  z-index:1!important;
}
@media(max-width:700px){
  body.iema-login-page::before{display:none!important;content:none!important}
  body.iema-login-page::after{
    right:-72vw!important;
    top:-30vw!important;
    width:125vw!important;
    height:125vw!important;
    min-width:0!important;
    min-height:0!important;
  }
}


/* v0.13.52 — exact login main canvas override */
body.iema-login-page #primary,body.iema-studio-path-login #primary,body.iema-login-page main#primary,body.iema-studio-path-login main#primary{background:transparent!important;}


/* =========================================================
   v0.13.54 — Login page simplification
   Reduce duplicate branding and clean up hierarchy.
   ========================================================= */
body.iema-login-page .iema-login-card:after{display:none!important;content:none!important}
body.iema-login-page .iema-login-brand-top{margin-bottom:18px!important;align-items:flex-start!important;justify-content:flex-start!important}
body.iema-login-page .iema-login-brand-copy .iema-login-eyebrow,
body.iema-login-page .iema-login-brand-footer,
body.iema-login-page .iema-login-product-lockup,
body.iema-login-page .iema-login-mobile-subtitle,
body.iema-login-page .iema-login-card-eyebrow-desktop,
body.iema-login-page .iema-login-card-eyebrow-mobile,
body.iema-login-page .iema-login-card-copy-desktop,
body.iema-login-page .iema-login-card-copy-mobile{display:none!important}
body.iema-login-page .iema-login-brand-copy h1{font-size:clamp(40px,4.7vw,64px)!important;line-height:.95!important;margin:0 0 10px!important}
body.iema-login-page .iema-login-lockup-title{margin:0 0 12px!important;font-size:19px!important}
body.iema-login-page .iema-login-desktop-copy{max-width:520px!important}
body.iema-login-page .iema-login-card-head{margin:0 0 24px!important}
body.iema-login-page .iema-login-card-head h2{margin:0 0 8px!important;font-size:34px!important}
body.iema-login-page .iema-login-card-head p{max-width:420px!important;font-size:14px!important;line-height:1.55!important;color:#93a4bc!important}
@media(max-width:900px){
  body.iema-login-page .iema-login-brand-copy h1{font-size:clamp(34px,7vw,52px)!important}
  body.iema-login-page .iema-login-card-head h2{font-size:28px!important}
}


/* =========================================================
   v0.13.55 — Owner dashboard KPI modal correction
   These KPI dialogs are body-portaled at runtime. Keep them centered on
   desktop/mobile and style their schedule rows independently of owner-shell.
   ========================================================= */
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal[hidden]{display:none!important;}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  display:grid!important;
  place-items:center!important;
  align-items:center!important;
  justify-items:center!important;
  padding:24px!important;
  overflow:auto!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal > .iema-create-modal-backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(0,0,0,.74)!important;
  backdrop-filter:blur(8px)!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal > .iema-owner-kpi-detail-dialog{
  position:relative!important;
  z-index:1!important;
  width:min(760px,calc(100vw - 32px))!important;
  max-width:760px!important;
  max-height:min(82dvh,760px)!important;
  margin:auto!important;
  padding:26px!important;
  overflow:auto!important;
  background:linear-gradient(180deg,#0d1520 0%,#080d14 100%)!important;
  border:1px solid #27405a!important;
  border-radius:22px!important;
  box-shadow:0 30px 90px rgba(0,0,0,.58)!important;
  color:#f5f8ff!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-create-modal-head{
  margin-bottom:20px!important;
  padding-right:48px!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-create-modal-head h2{
  margin:5px 0 7px!important;
  color:#fff!important;
  font-size:27px!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-create-modal-head p{
  margin:0!important;
  color:#94a7be!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-create-modal-close{
  position:absolute!important;
  top:15px!important;
  right:15px!important;
  width:40px!important;
  height:40px!important;
  border:1px solid #31465e!important;
  border-radius:50%!important;
  background:#101925!important;
  color:#fff!important;
  font-size:24px!important;
  cursor:pointer!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-detail-list{
  display:grid!important;
  gap:10px!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-program-row{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:96px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  margin:0!important;
  padding:14px 15px!important;
  background:#0a111a!important;
  border:1px solid #22344a!important;
  border-radius:13px!important;
  box-shadow:none!important;
  color:#fff!important;
  text-align:left!important;
  font:inherit!important;
  cursor:pointer!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-program-row:hover{
  background:#101b29!important;
  border-color:#2b80ad!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-program-row time{
  display:grid!important;
  gap:3px!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-program-row time strong{
  color:var(--studio-accent,#20b7ff)!important;
  font-size:13px!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-program-row time small{
  color:#8fa0b7!important;
  font-size:10px!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-program-row > span{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-program-row > span strong{
  color:#f6f9ff!important;
  font-size:14px!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-program-row > span small{
  color:#91a3b9!important;
  font-size:11px!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-program-row > b{
  color:var(--studio-accent,#20b7ff)!important;
  font-size:11px!important;
  white-space:nowrap!important;
}
@media(max-width:640px){
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal{
    place-items:center!important;
    align-items:center!important;
    justify-items:center!important;
    padding:16px!important;
  }
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal > .iema-owner-kpi-detail-dialog{
    width:100%!important;
    max-width:560px!important;
    max-height:calc(100dvh - 32px)!important;
    margin:auto!important;
    padding:22px 16px!important;
    border:1px solid #27405a!important;
    border-radius:20px!important;
  }
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-create-modal-head h2{font-size:25px!important;}
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-program-row{
    grid-template-columns:82px minmax(0,1fr)!important;
    gap:12px!important;
    padding:13px!important;
  }
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-program-row > b{
    grid-column:2!important;
    white-space:normal!important;
  }
}


/* =========================================================
   v0.13.56 — Owner KPI summary modal card rebuild
   Dedicated robust styling for Dances Today / Training Groups Today rows.
   ========================================================= */
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-detail-dialog{
  width:min(760px,calc(100vw - 32px))!important;
  max-width:760px!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-detail-list{
  display:grid!important;
  gap:12px!important;
  padding-top:2px!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-card{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  margin:0!important;
  padding:14px!important;
  border:1px solid #22344a!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#0c141f 0%,#09111a 100%)!important;
  color:#f4f8fd!important;
  display:grid!important;
  grid-template-columns:150px minmax(0,1fr) auto!important;
  gap:14px!important;
  align-items:center!important;
  text-align:left!important;
  box-shadow:0 8px 22px rgba(0,0,0,.16)!important;
  cursor:pointer!important;
  font:inherit!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-card:hover{
  background:linear-gradient(180deg,#111c2a 0%,#0b1521 100%)!important;
  border-color:#2f84b3!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-time{
  display:grid!important;
  gap:4px!important;
  align-self:stretch!important;
  align-content:center!important;
  min-height:84px!important;
  padding:12px 14px!important;
  border:1px solid #24587a!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#10273a 0%,#0d2131 100%)!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-time strong{
  color:#6fd4ff!important;
  font-size:19px!important;
  line-height:1.05!important;
  font-weight:900!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-time small{
  color:#a9bbcf!important;
  font-size:13px!important;
  line-height:1.2!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-info{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-info strong{
  color:#f6f9fe!important;
  font-size:28px!important;
  line-height:1.08!important;
  letter-spacing:-.03em!important;
  overflow-wrap:anywhere!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-info small{
  color:#9ab0c6!important;
  font-size:14px!important;
  line-height:1.35!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-info em{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  margin-top:4px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  border:1px solid #23435f!important;
  background:#0d1b28!important;
  color:#73d2ff!important;
  font-style:normal!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-link{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  justify-self:end!important;
  align-self:center!important;
  padding:10px 14px!important;
  border-radius:999px!important;
  border:1px solid #255474!important;
  background:#0d1f2f!important;
  color:#69d2ff!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  white-space:nowrap!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-link i{
  font-style:normal!important;
  font-size:17px!important;
  line-height:1!important;
}
@media(max-width:760px){
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-card{
    grid-template-columns:1fr!important;
    gap:12px!important;
    padding:13px!important;
  }
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-time{
    min-height:auto!important;
  }
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-info strong{
    font-size:22px!important;
  }
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-link{
    justify-self:start!important;
  }
}
@media(max-width:640px){
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal{
    place-items:center!important;
    align-items:center!important;
    justify-items:center!important;
    padding:16px!important;
  }
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal > .iema-owner-kpi-detail-dialog{
    width:100%!important;
    max-width:560px!important;
    max-height:calc(100dvh - 32px)!important;
    margin:auto!important;
    padding:22px 16px!important;
    border-radius:22px!important;
  }
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-create-modal-head h2{
    font-size:24px!important;
  }
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-time strong{
    font-size:17px!important;
  }
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-program-info strong{
    font-size:19px!important;
  }
}


/* =========================================================
   v0.13.57 — Owner attendance/roster modal no horizontal scroll
   Keep roster content fully contained within the dialog.
   ========================================================= */
body.iema-owner-portal-page > .iema-create-modal.iema-owner-attendance-modal > .iema-attendance-dialog,
body .iema-owner-attendance-modal .iema-attendance-dialog{
  width:min(980px,calc(100vw - 32px))!important;
  max-width:980px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  box-sizing:border-box!important;
}
body .iema-owner-attendance-modal .iema-create-modal-head,
body .iema-owner-attendance-modal .iema-attendance-key,
body .iema-owner-attendance-modal .iema-attendance-roster,
body .iema-owner-attendance-modal .iema-attendance-dancer{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body .iema-owner-attendance-modal .iema-attendance-dancer{
  grid-template-columns:minmax(180px,1fr) minmax(0,1.35fr)!important;
  width:100%!important;
}
body .iema-owner-attendance-modal .iema-attendance-person,
body .iema-owner-attendance-modal .iema-attendance-person>span,
body .iema-owner-attendance-modal .iema-attendance-control,
body .iema-owner-attendance-modal .iema-attendance-buttons{
  min-width:0!important;
  max-width:100%!important;
}
body .iema-owner-attendance-modal .iema-attendance-control{
  flex-wrap:wrap!important;
}
body .iema-owner-attendance-modal .iema-attendance-buttons{
  justify-content:flex-end!important;
}
body .iema-owner-attendance-modal .iema-attendance-person strong,
body .iema-owner-attendance-modal .iema-attendance-person small,
body .iema-owner-attendance-modal .iema-create-modal-head p{
  overflow-wrap:anywhere!important;
}
@media(max-width:760px){
  body .iema-owner-attendance-modal .iema-attendance-dancer{
    grid-template-columns:1fr!important;
  }
  body .iema-owner-attendance-modal .iema-attendance-control{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-content:stretch!important;
  }
  body .iema-owner-attendance-modal .iema-attendance-buttons{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
  }
  body .iema-owner-attendance-modal .iema-attendance-buttons button{
    width:100%!important;
    min-width:0!important;
  }
}


/* v0.13.58 — Studio room editing */
.iema-room-card-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
.iema-room-card-head>span{color:var(--studio-accent)!important;font-size:10px!important;font-weight:900!important;letter-spacing:.12em!important}
.iema-room-edit{appearance:none!important;border:1px solid #27506d!important;border-radius:9px!important;background:#0d1d2b!important;color:#6fd4ff!important;padding:7px 10px!important;font:inherit!important;font-size:10px!important;font-weight:850!important;cursor:pointer!important}
.iema-room-edit:hover{background:#11283a!important;border-color:var(--studio-accent,#20b7ff)!important;color:#fff!important}
.iema-room-edit-dialog{width:min(560px,calc(100vw - 32px))!important;max-width:560px!important}
@media(max-width:640px){.iema-room-card-head{align-items:flex-start!important}.iema-room-edit{min-height:38px!important}.iema-room-edit-dialog{width:100%!important;max-width:none!important}}


/* v0.13.59 — Rooms & Spaces live under Studio Management */
.iema-owner-shell .iema-studio-room-management{scroll-margin-top:24px!important}
.iema-owner-shell .iema-studio-room-grid{margin-top:16px!important}
.iema-owner-shell .iema-room-scheduling-workspace .iema-empty .iema-btn{margin-top:12px!important;width:max-content!important}
@media(max-width:700px){.iema-owner-shell .iema-studio-room-grid{grid-template-columns:1fr!important}}


/* =========================================================
   v0.13.60 — Rooms & Spaces dedicated Studio Management page
   Keep room cards inside the panel; modals are no longer grid children.
   ========================================================= */
body.iema-owner-portal-page .iema-owner-shell .iema-studio-room-page{
  overflow:hidden!important;
  min-width:0!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-room-page .iema-section-head{
  min-width:0!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-room-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-top:18px!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-room-grid > .iema-room-card{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-room-grid .iema-room-card-head{
  min-width:0!important;
  flex-wrap:wrap!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-room-grid .iema-room-card h3,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-room-grid .iema-room-card p,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-room-grid .iema-room-card small{
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
@media(max-width:1050px){
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:640px){
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-room-grid{grid-template-columns:1fr!important;gap:12px!important;}
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-room-page .iema-section-head{align-items:flex-start!important;}
}


/* =========================================================
   v0.13.61 — Owner season context + Rooms & Spaces refinement
   ========================================================= */
body.iema-owner-portal-page .iema-owner-season-inline{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  margin-top:8px!important;color:#8ea4bc!important;font-size:9px!important;line-height:1!important;
}
body.iema-owner-portal-page .iema-owner-season-inline>span{font-weight:900!important;letter-spacing:.13em!important}
body.iema-owner-portal-page .iema-owner-season-inline>strong{color:#eaf5ff!important;font-size:10px!important;font-weight:900!important}
body.iema-owner-portal-page .iema-owner-season-inline>strong i{color:#62d1ff!important;font-style:normal!important}
body.iema-owner-portal-page .iema-owner-season-inline>em{padding:4px 7px!important;border-radius:999px!important;background:#0d2b3e!important;border:1px solid #194865!important;color:#5dd2ff!important;font-style:normal!important;font-size:8px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important}
body.iema-owner-portal-page .iema-season-context-bar{display:none!important}

body.iema-owner-portal-page .iema-studio-room-page{
  padding:24px!important;
  overflow:hidden!important;
}
body.iema-owner-portal-page .iema-studio-room-page>.iema-section-head{
  align-items:center!important;margin-bottom:20px!important;padding-bottom:18px!important;border-bottom:1px solid #1f2b3a!important;
}
body.iema-owner-portal-page .iema-studio-room-grid{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;width:100%!important;min-width:0!important;
}
body.iema-owner-portal-page .iema-room-card{
  min-width:0!important;min-height:190px!important;padding:18px!important;border:1px solid #263b50!important;border-radius:18px!important;
  background:linear-gradient(180deg,#0c141e 0%,#090f17 100%)!important;box-shadow:0 10px 26px rgba(0,0,0,.16)!important;color:#f4f8ff!important;
  display:flex!important;flex-direction:column!important;gap:16px!important;overflow:hidden!important;
}
body.iema-owner-portal-page .iema-room-card-top{display:grid!important;grid-template-columns:46px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;min-width:0!important}
body.iema-owner-portal-page .iema-room-icon{width:46px!important;height:46px!important;display:grid!important;place-items:center!important;border:1px solid #245475!important;border-radius:13px!important;background:#0c2232!important;color:#66d2ff!important;font-size:20px!important}
body.iema-owner-portal-page .iema-room-title{min-width:0!important;display:grid!important;gap:4px!important}
body.iema-owner-portal-page .iema-room-title small{color:#5ed0ff!important;font-size:8px!important;font-weight:900!important;letter-spacing:.13em!important}
body.iema-owner-portal-page .iema-room-title h3{margin:0!important;color:#fff!important;font-size:20px!important;line-height:1.1!important;overflow-wrap:anywhere!important}
body.iema-owner-portal-page .iema-room-edit{align-self:start!important;padding:8px 11px!important;border:1px solid #2a536f!important;border-radius:10px!important;background:#0c1d2a!important;color:#6ed4ff!important;font-size:10px!important;font-weight:900!important;cursor:pointer!important}
body.iema-owner-portal-page .iema-room-edit:hover{background:#123048!important;border-color:#3bbfff!important;color:#fff!important}
body.iema-owner-portal-page .iema-room-meta{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin-top:auto!important}
body.iema-owner-portal-page .iema-room-meta>div{min-width:0!important;padding:11px 12px!important;border:1px solid #1d2d3e!important;border-radius:12px!important;background:#080e16!important;display:grid!important;gap:4px!important}
body.iema-owner-portal-page .iema-room-meta span{color:#72869c!important;font-size:8px!important;font-weight:900!important;letter-spacing:.11em!important}
body.iema-owner-portal-page .iema-room-meta strong{color:#dbe8f5!important;font-size:12px!important;overflow-wrap:anywhere!important}
body.iema-owner-portal-page .iema-room-notes{margin:0!important;padding-top:12px!important;border-top:1px solid #1d2a39!important;color:#91a4ba!important;font-size:11px!important;line-height:1.45!important}
body.iema-owner-portal-page .iema-room-edit-dialog{width:min(580px,calc(100vw - 32px))!important;max-width:580px!important}
@media(max-width:1050px){body.iema-owner-portal-page .iema-studio-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){
  body.iema-owner-portal-page .iema-owner-season-inline{justify-content:flex-start!important;flex-wrap:wrap!important;gap:6px!important;margin-top:7px!important}
  body.iema-owner-portal-page .iema-studio-room-page{padding:16px!important;margin-left:10px!important;margin-right:10px!important}
  body.iema-owner-portal-page .iema-studio-room-page>.iema-section-head{align-items:flex-start!important;flex-direction:column!important;gap:14px!important}
  body.iema-owner-portal-page .iema-studio-room-grid{grid-template-columns:1fr!important}
  body.iema-owner-portal-page .iema-room-card{min-height:0!important;padding:15px!important}
  body.iema-owner-portal-page .iema-room-card-top{grid-template-columns:42px minmax(0,1fr) auto!important;gap:10px!important}
  body.iema-owner-portal-page .iema-room-icon{width:42px!important;height:42px!important}
  body.iema-owner-portal-page .iema-room-meta{grid-template-columns:1fr 1fr!important}
  body.iema-owner-portal-page .iema-room-edit-dialog{width:calc(100vw - 24px)!important;max-width:none!important;margin:auto!important;border-radius:20px!important}
}


/* =========================================================
   v0.13.63 — Owner Studio Management submenu active-state normalization
   Keep active tabs identical in size/alignment; only fill/color changes.
   ========================================================= */
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a,
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a.active,
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a[aria-current="page"],
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a.current{
  min-height:40px!important;
  height:40px!important;
  padding:0 14px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  border-radius:12px!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a.active,
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a[aria-current="page"],
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a.current{
  background:linear-gradient(180deg,var(--studio-accent) 0%,var(--studio-accent-strong) 100%)!important;
  border:1px solid var(--studio-accent)!important;
  color:var(--studio-accent-text,#fff)!important;
  box-shadow:0 8px 20px color-mix(in srgb,var(--studio-accent) 24%,transparent)!important;
  opacity:1!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a.active:hover,
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a[aria-current="page"]:hover,
body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a.current:hover{
  color:var(--studio-accent-text,#fff)!important;
}
@media(max-width:760px){
  body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a,
  body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a.active,
  body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a[aria-current="page"],
  body.iema-owner-portal-page .iema-owner-shell .iema-secondary-nav a.current{
    min-height:44px!important;
    height:44px!important;
    padding:0 14px!important;
  }
}


/* =========================================================
   v0.13.65 — Studio settings page reorganization
   ========================================================= */
.iema-studio-settings .iema-form{display:grid;gap:24px}
.iema-studio-settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px!important;align-items:start}
.iema-settings-column{display:grid;gap:20px}
.iema-settings-card{padding:20px 22px;border:1px solid #24354c;border-radius:22px;background:linear-gradient(180deg,rgba(11,18,27,.92),rgba(8,14,22,.94));box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}
.iema-settings-card-head{margin-bottom:16px}
.iema-settings-card-head h3{margin:4px 0 6px!important;font-size:24px!important;color:#fff}
.iema-settings-card-head p{margin:0;color:#98a8bc;font-size:13px;line-height:1.55}
.iema-settings-card .iema-form-grid{margin-bottom:14px}
.iema-settings-card > label{display:grid;gap:8px;margin-top:12px}
.iema-settings-assets-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.iema-settings-asset-card{padding:16px;border:1px solid #223247;border-radius:18px;background:rgba(7,13,20,.55);display:grid;gap:12px;align-content:start}
.iema-settings-asset-head h4{margin:0 0 4px;color:#fff;font-size:17px}
.iema-settings-asset-head p{margin:0;color:#97a6bb;font-size:12px;line-height:1.5}
.iema-studio-logo-preview{max-width:140px!important;max-height:116px!important;margin:0!important;padding:10px!important}
.iema-studio-app-icon-preview{width:88px;height:88px;border-radius:22px;object-fit:cover;border:1px solid #2b4058;background:#fff;flex:0 0 auto}
.iema-app-icon-setting-structured{display:grid;grid-template-columns:88px minmax(0,1fr);gap:14px;align-items:start}
.iema-settings-actions{display:flex;justify-content:flex-end;padding-top:6px}
.iema-settings-actions .iema-btn-big{min-width:260px}
.iema-studio-settings .iema-approved{margin-top:0!important}
.iema-owner-shell .iema-settings-card .iema-safety-note{margin:14px 0 0!important}
@media(max-width:980px){
  .iema-studio-settings-grid{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  .iema-settings-card{padding:18px}
  .iema-settings-assets-grid{grid-template-columns:1fr}
  .iema-app-icon-setting-structured{grid-template-columns:1fr}
  .iema-studio-app-icon-preview{width:76px;height:76px}
  .iema-settings-actions{justify-content:stretch}
  .iema-settings-actions .iema-btn-big{width:100%;min-width:0}
}

/* v0.13.69 Recovery & Readiness dashboard */
.iema-recovery-dashboard{display:grid;gap:18px}
.iema-recovery-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap}
.iema-recovery-hero h3{margin:4px 0 8px}
.iema-recovery-hero p{margin:0;max-width:760px}
.iema-recovery-hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.iema-recovery-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.iema-recovery-kpi-card,.iema-recovery-board{border:1px solid rgba(78,151,205,.22);border-radius:18px;background:linear-gradient(180deg,rgba(7,17,27,.88),rgba(4,12,20,.78));padding:16px}
.iema-recovery-kpi-card span,.iema-recovery-board .iema-kicker{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#8fb6d4;font-weight:800}
.iema-recovery-kpi-card strong{display:block;margin-top:8px;font-size:22px;line-height:1.2;color:#fff}
.iema-recovery-kpi-card small{display:block;margin-top:7px;color:#9fb2c3;line-height:1.45}
.iema-recovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.iema-recovery-board-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:14px}
.iema-recovery-board-head h4{margin:4px 0 0}
.iema-readiness-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap;border:1px solid rgba(255,255,255,.12)}
.iema-readiness-pill.is-good{background:rgba(27,125,70,.18);color:#8ff0b7;border-color:rgba(76,210,129,.35)}
.iema-readiness-pill.is-watch{background:rgba(168,118,18,.18);color:#ffd777;border-color:rgba(255,215,119,.35)}
.iema-readiness-pill.is-alert{background:rgba(168,49,49,.18);color:#ff9c9c;border-color:rgba(255,120,120,.35)}
.iema-readiness-pill.is-neutral{background:rgba(65,84,106,.2);color:#c5d5e4;border-color:rgba(164,188,214,.25)}
.iema-recovery-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.iema-recovery-facts>div{padding:12px 13px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(124,159,189,.16)}
.iema-recovery-facts span{display:block;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#86a6c1}
.iema-recovery-facts strong{display:block;margin-top:6px;font-size:14px;line-height:1.4;color:#fff}
.iema-recovery-note{margin-top:14px;padding:14px;border-radius:14px;background:rgba(10,20,31,.72);border:1px solid rgba(124,159,189,.16)}
.iema-recovery-note strong{display:block;margin-bottom:6px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8fb6d4}
.iema-recovery-note p{margin:0;color:#c7d5e1;line-height:1.55}
.iema-recovery-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.iema-recovery-chip-row span{display:inline-flex;align-items:center;padding:8px 10px;border-radius:999px;background:rgba(32,183,255,.12);border:1px solid rgba(32,183,255,.28);color:#b9e8ff;font-size:11px;font-weight:700}
.iema-recovery-timeline{display:grid;gap:10px}
.iema-recovery-timeline article{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 13px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(124,159,189,.16)}
.iema-recovery-timeline article strong{display:block;color:#fff}
.iema-recovery-timeline article small{display:block;margin-top:4px;color:#9fb2c3;line-height:1.4}
.iema-recovery-timeline article span{display:block;max-width:44%;text-align:right;color:#cde1f1;font-size:12px;line-height:1.4}
.iema-recovery-timeline-empty{padding:14px;border-radius:14px;background:rgba(255,255,255,.03);border:1px dashed rgba(124,159,189,.2)}
.iema-recovery-timeline-empty strong{display:block;color:#fff}
.iema-recovery-timeline-empty small{display:block;margin-top:5px;color:#9fb2c3;line-height:1.5}
@media(max-width:980px){.iema-recovery-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.iema-recovery-grid{grid-template-columns:1fr}}
@media(max-width:700px){.iema-recovery-kpi-grid,.iema-recovery-facts{grid-template-columns:1fr}.iema-recovery-timeline article{display:block}.iema-recovery-timeline article span{max-width:none;text-align:left;margin-top:6px}.iema-recovery-hero-actions{width:100%}.iema-recovery-hero-actions .iema-btn{flex:1 1 100%;text-align:center}}

/* =========================================================
   v0.13.70 — Recovery & Readiness command center
   ========================================================= */
.iema-recovery-command-center{display:grid;gap:18px}
.iema-recovery-command-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}
.iema-recovery-command-head h2{margin:5px 0 8px}
.iema-recovery-command-head p{margin:0;max-width:760px;color:#9eb0c4}
.iema-recovery-command-actions{display:flex;gap:9px;flex-wrap:wrap}
.iema-recovery-command-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.iema-recovery-command-kpis article{padding:17px;border-radius:18px;border:1px solid #22344a;background:linear-gradient(180deg,#0c141f,#09111a)}
.iema-recovery-command-kpis article span{display:block;color:#91a9bf;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.iema-recovery-command-kpis article strong{display:block;margin-top:8px;color:#fff;font-size:28px;line-height:1}
.iema-recovery-command-kpis article small{display:block;margin-top:8px;color:#8fa2b7;font-size:11px}
.iema-recovery-command-kpis article.is-alert strong{color:#ff947f}
.iema-recovery-command-kpis article.is-good strong{color:#79e3a7}
.iema-recovery-watchlist-head{padding-top:4px}
.iema-recovery-watchlist-head h3{margin:5px 0 6px}
.iema-recovery-watchlist-head p{margin:0;color:#9eb0c4}
.iema-recovery-watchlist{display:grid;gap:10px}
.iema-recovery-dancer-row{display:grid;grid-template-columns:54px minmax(150px,1.2fr) 92px minmax(140px,1fr) minmax(160px,1.25fr) minmax(120px,.85fr) 22px;gap:12px;align-items:center;padding:13px 14px;border:1px solid #21344a;border-radius:16px;background:linear-gradient(180deg,#0c141f,#09111a);text-decoration:none!important;color:inherit!important;transition:.16s ease}
.iema-recovery-dancer-row:hover{border-color:#2c83b2;background:linear-gradient(180deg,#111d2a,#0b1521);transform:translateY(-1px)}
.iema-recovery-dancer-row>img{width:54px;height:54px;border-radius:15px;object-fit:cover;border:1px solid #34516b}
.iema-recovery-dancer-row span{min-width:0}
.iema-recovery-dancer-row b,.iema-recovery-dancer-row strong{display:block;color:#f7fbff;line-height:1.25}
.iema-recovery-dancer-row small{display:block;margin-top:4px;color:#8fa4b9;font-size:11px;line-height:1.35;overflow-wrap:anywhere}
.iema-recovery-score{display:grid;justify-items:start}
.iema-recovery-score b{font-size:19px}
.iema-recovery-score.is-good b{color:#7ee7ab}.iema-recovery-score.is-blue b{color:#67cfff}.iema-recovery-score.is-watch b{color:#ffd36b}.iema-recovery-score.is-alert b{color:#ff8f79}
.iema-recovery-row-arrow{font-size:24px;color:#69d2ff!important;text-align:right}
.iema-recovery-management{display:grid;gap:16px}
.iema-readiness-score-badge{display:grid;justify-items:center;min-width:92px;padding:10px 14px;border-radius:15px;border:1px solid #28425c;background:#0b1521}
.iema-readiness-score-badge strong{font-size:21px;color:#fff}.iema-readiness-score-badge small{font-size:10px;margin-top:3px;color:#9fb1c2;text-transform:uppercase;letter-spacing:.08em}
.iema-readiness-score-badge.is-good strong{color:#7ee7ab}.iema-readiness-score-badge.is-blue strong{color:#67cfff}.iema-readiness-score-badge.is-watch strong{color:#ffd36b}.iema-readiness-score-badge.is-alert strong{color:#ff8f79}
.iema-recovery-management-form{display:grid;gap:14px}
.iema-recovery-management-actions{display:flex;justify-content:flex-end}
.iema-parent-recovery-summary{border-color:#2a597a!important;background:linear-gradient(180deg,#0b1d2c,#091521)!important}
@media(max-width:1100px){.iema-recovery-command-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.iema-recovery-dancer-row{grid-template-columns:54px minmax(160px,1fr) 84px minmax(130px,1fr) 22px}.iema-recovery-dancer-row .iema-recovery-plan,.iema-recovery-dancer-row .iema-recovery-last{display:none}}
@media(max-width:720px){.iema-recovery-command-kpis{grid-template-columns:1fr 1fr}.iema-recovery-command-actions{width:100%}.iema-recovery-command-actions .iema-btn{flex:1 1 100%;text-align:center}.iema-recovery-dancer-row{grid-template-columns:52px minmax(0,1fr) auto 18px}.iema-recovery-dancer-row .iema-recovery-status{display:none}.iema-recovery-score{justify-items:end}.iema-recovery-command-kpis article strong{font-size:24px}.iema-recovery-management-actions .iema-btn{width:100%}}
@media(max-width:480px){.iema-recovery-command-kpis{grid-template-columns:1fr}.iema-recovery-dancer-row{grid-template-columns:48px minmax(0,1fr) 18px}.iema-recovery-dancer-row>img{width:48px;height:48px}.iema-recovery-score{grid-column:2/3;justify-items:start;margin-top:4px}.iema-recovery-row-arrow{grid-column:3;grid-row:1/3;align-self:center}}

/* v0.13.71 — Owner dancer avatar crop / zoom editor */
.iema-avatar-zoom-control{display:grid;gap:8px}
.iema-avatar-zoom-control>span{font-size:12px;font-weight:900;color:#dbe8f5}
.iema-avatar-zoom-row{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:10px;align-items:center}
.iema-avatar-zoom-button,.iema-avatar-reset-button{appearance:none;border:1px solid #2c4d68;background:#0d1b29;color:#e9f7ff;font-weight:900;cursor:pointer;transition:.16s ease}
.iema-avatar-zoom-button{width:42px;height:42px;border-radius:12px;font-size:24px;line-height:1}
.iema-avatar-reset-button{min-height:38px;padding:8px 12px;border-radius:11px;font-size:11px;justify-self:start}
.iema-avatar-zoom-button:hover,.iema-avatar-reset-button:hover{border-color:#20b7ff;background:#10283a;color:#fff}
.iema-dancer-account-photo-editor{display:grid!important;gap:10px!important;grid-column:1/-1!important;min-width:0!important}
.iema-dancer-account-photo-editor .iema-avatar-editor{grid-template-columns:minmax(210px,280px) minmax(0,1fr)!important;background:#080f18!important;border-color:#253a50!important;margin:0!important;max-width:none!important}
.iema-dancer-account-photo-editor .iema-avatar-crop-stage{width:min(280px,100%)!important;background:#0a111b!important}
.iema-dancer-account-photo-editor .iema-avatar-crop-ring{box-shadow:0 0 0 999px rgba(3,9,15,.52),0 0 0 1px rgba(255,255,255,.18) inset!important}
.iema-dancer-account-photo-editor .iema-avatar-editor-controls{min-width:0!important}
.iema-dancer-account-photo-editor .iema-avatar-editor-controls>label{color:#eef6ff!important}
.iema-dancer-account-photo-editor .iema-avatar-editor-controls input[type=file]{width:100%!important;max-width:100%!important}
.iema-dancer-account-photo-editor .iema-dancer-account-photo-remove{margin-top:2px!important}
@media(max-width:720px){.iema-dancer-account-photo-editor .iema-avatar-editor{grid-template-columns:1fr!important}.iema-dancer-account-photo-editor .iema-avatar-crop-stage{margin:auto!important}.iema-avatar-reset-button{width:100%;justify-self:stretch}}


/* v0.13.73 Parent Portal header polish */
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-app-topbar{
  grid-template-columns:minmax(300px,1fr) auto minmax(300px,1fr)!important;
  gap:18px!important;
  min-height:104px!important;
  margin:0 0 14px!important;
  padding:18px 24px!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-shell-brand{
  max-width:360px!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  max-width:560px!important;
  margin:0 auto!important;
  padding:0 8px!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading h1,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading h1{
  margin:0!important;
  font-size:30px!important;
  line-height:1.02!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading p,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading p{
  margin:0!important;
  max-width:420px!important;
  line-height:1.35!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-portal-user{
  max-width:300px!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-parent-shared-nav,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-shared-nav{
  margin:0 0 14px!important;
  padding:8px!important;
}
body.iema-parent-portal-page .iema-active-dancer-strip,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-active-dancer-strip{
  align-items:center!important;
  gap:10px!important;
  margin:0 0 12px!important;
  padding:10px 12px!important;
}
body.iema-parent-portal-page .iema-active-dancer-strip > span,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-active-dancer-strip > span{
  display:inline-flex!important;
  align-items:center!important;
  min-height:36px!important;
  padding:0 4px!important;
}
@media(max-width:1100px){
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-app-topbar{
    grid-template-columns:minmax(240px,1fr) auto minmax(240px,1fr)!important;
    gap:14px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading h1,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading h1{
    font-size:28px!important;
  }
}
@media(max-width:900px){
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-app-topbar{
    grid-template-columns:1fr auto!important;
    grid-template-areas:'brand user' 'heading heading'!important;
    gap:14px!important;
    padding:16px 18px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading{
    align-items:flex-start!important;
    text-align:left!important;
    max-width:none!important;
    margin:0!important;
    padding-top:2px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading h1,
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading p,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading h1,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading p{
    text-align:left!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}


/* v0.13.74 Parent title cleanup + segmented dancer switcher */
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading{
  gap:0!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading p:empty,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading p:empty{
  display:none!important;
}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading h1,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-page-heading h1{
  margin:0!important;
}
body.iema-parent-portal-page .iema-active-dancer-strip,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-active-dancer-strip{
  width:max-content!important;
  max-width:100%!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:4px!important;
  margin:0 0 14px!important;
  padding:5px!important;
  overflow-x:auto!important;
  scrollbar-width:none!important;
  background:#080d14!important;
  border:1px solid #1f2c3b!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
body.iema-parent-portal-page .iema-active-dancer-strip::-webkit-scrollbar,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-active-dancer-strip::-webkit-scrollbar{
  display:none!important;
}
body.iema-parent-portal-page .iema-active-dancer-strip>span,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-active-dancer-strip>span{
  min-height:34px!important;
  padding:0 10px!important;
  color:#8293aa!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
body.iema-parent-portal-page .iema-active-dancer-strip a,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-active-dancer-strip a{
  min-height:34px!important;
  padding:0 13px!important;
  border-radius:9px!important;
  border:1px solid transparent!important;
  background:transparent!important;
  color:#a8b7ca!important;
  font-size:11px!important;
  font-weight:850!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
body.iema-parent-portal-page .iema-active-dancer-strip a:hover,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-active-dancer-strip a:hover{
  background:#101a27!important;
  border-color:#223650!important;
  color:#fff!important;
}
body.iema-parent-portal-page .iema-active-dancer-strip a.active,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-active-dancer-strip a.active{
  background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
  border-color:var(--md2-blue)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(13,124,255,.20)!important;
}
@media(max-width:560px){
  body.iema-parent-portal-page .iema-active-dancer-strip,
  body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-active-dancer-strip{
    width:100%!important;
    border-radius:12px!important;
  }
}


/* v0.13.75 Parent live season in masthead */
body.iema-parent-portal-page .iema-parent-season-inline,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-season-inline{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  margin-top:7px!important;color:#8ea4bc!important;font-size:9px!important;line-height:1!important;
}
body.iema-parent-portal-page .iema-parent-season-inline>span,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-season-inline>span{font-weight:900!important;letter-spacing:.13em!important}
body.iema-parent-portal-page .iema-parent-season-inline>strong,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-season-inline>strong{color:#eaf5ff!important;font-size:10px!important;font-weight:900!important}
body.iema-parent-portal-page .iema-parent-season-inline>strong i,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-season-inline>strong i{color:#62d1ff!important;font-style:normal!important}
body.iema-parent-portal-page .iema-parent-season-inline>em,
body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-season-inline>em{padding:4px 7px!important;border-radius:999px!important;background:#0d2b3e!important;border:1px solid #194865!important;color:#5dd2ff!important;font-style:normal!important;font-size:8px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important}
@media(max-width:900px){
 body.iema-parent-portal-page .iema-parent-season-inline,
 body.iema-account-page .iema-account-shell.iema-parent-shell-topnav .iema-parent-season-inline{justify-content:flex-start!important;flex-wrap:wrap!important;gap:6px!important;margin-top:6px!important}
}


/* v0.13.76 — Parent calendar scheduled-event contrast repair */
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-event:not(.iema-event-available):not(.iema-event-unavailable),
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-event:not(.iema-event-available):not(.iema-event-unavailable),
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-event:not(.iema-event-available):not(.iema-event-unavailable){
  background:linear-gradient(180deg,#142b46 0%,#0f2238 100%)!important;
  border-left-color:#4cc7ff!important;
  color:#edf8ff!important;
  -webkit-text-fill-color:#edf8ff!important;
}
body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-event:not(.iema-event-available):not(.iema-event-unavailable):hover,
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-event:not(.iema-event-available):not(.iema-event-unavailable):hover,
body.iema-parent-portal-page .iema-parent-calendar-shell .iema-calendar-event:not(.iema-event-available):not(.iema-event-unavailable):hover{
  background:linear-gradient(180deg,#193858 0%,#122b46 100%)!important;
  border-left-color:#79d9ff!important;
}

/* v0.13.78 availability override marker on calendar events */
body.iema-parent-portal-page .iema-calendar-event.iema-event-availability-override,
body.iema-owner-portal-page .iema-calendar-event.iema-event-availability-override,
body.iema-dancer-portal-page .iema-calendar-event.iema-event-availability-override{
  position:relative!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:8px!important;
  border-color:#d69b2d!important;
  box-shadow:inset 3px 0 0 #f2b84b!important;
}
.iema-calendar-event-copy{min-width:0;overflow-wrap:anywhere}
.iema-calendar-override-badge{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:3px 6px!important;
  border:1px solid rgba(255,213,126,.55)!important;
  border-radius:999px!important;
  background:#4b3412!important;
  color:#ffd67d!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
@media(max-width:700px){
  .iema-calendar-event.iema-event-availability-override{flex-direction:column!important;gap:5px!important}
  .iema-calendar-override-badge{align-self:flex-start!important}
}


/* v0.13.79 parent availability exception marker */
.iema-calendar-event.iema-event-availability-exception{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:8px!important;
}
.iema-calendar-exception-badge{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:3px 6px!important;
  border:1px solid currentColor!important;
  border-radius:999px!important;
  background:rgba(0,0,0,.12)!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
@media(max-width:700px){
  .iema-calendar-event.iema-event-availability-exception{flex-direction:column!important;gap:5px!important}
  .iema-calendar-exception-badge{align-self:flex-start!important}
}

/* v0.13.80 Owner Training Group / Dance edit access */
.iema-owner-shell .iema-program-roster-list{gap:10px!important}.iema-owner-shell .iema-program-roster-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:stretch!important;padding:0!important;border:0!important;background:transparent!important}.iema-owner-shell .iema-program-roster-main{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;min-width:0!important;padding:14px 16px!important;border:1px solid #223248!important;border-radius:13px!important;background:#0a121c!important;color:#eef5fc!important;text-decoration:none!important}.iema-owner-shell .iema-program-roster-main:hover{border-color:#356c91!important;background:#0d1925!important}.iema-owner-shell .iema-program-roster-main>span{display:grid!important;gap:4px!important;min-width:0!important}.iema-owner-shell .iema-program-roster-main strong{font-size:14px!important}.iema-owner-shell .iema-program-roster-main small{color:#8fa3b8!important;font-size:11px!important}.iema-owner-shell .iema-program-roster-main>b{font-size:20px!important;color:#78d5ff!important}.iema-owner-shell .iema-program-roster-edit{display:grid!important;place-items:center!important;min-width:76px!important;margin:0!important}
@media(max-width:680px){.iema-owner-shell .iema-program-roster-row{grid-template-columns:minmax(0,1fr) 68px!important}.iema-owner-shell .iema-program-roster-main{padding:12px!important}.iema-owner-shell .iema-program-roster-edit{min-width:0!important;padding:10px!important}}

/* v0.13.81 Training Group roster rows + detail/edit modal */
.iema-owner-shell .iema-program-roster-list .iema-program-roster-row{grid-template-columns:minmax(0,1fr)!important}
.iema-owner-shell .iema-program-roster-open{width:100%!important;text-align:left!important;font:inherit!important;cursor:pointer!important}
.iema-training-group-detail-dialog{width:min(760px,calc(100% - 28px))!important;max-width:760px!important}
.iema-training-group-summary{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;margin:4px 0 22px!important}
.iema-training-group-summary>div{display:grid!important;gap:5px!important;padding:13px 14px!important;border:1px solid #223248!important;border-radius:12px!important;background:#0a121c!important}
.iema-training-group-summary span,.iema-training-group-section>.iema-form-section-label{color:#7f93aa!important;font-size:9px!important;font-weight:900!important;letter-spacing:.09em!important;text-transform:uppercase!important}
.iema-training-group-summary strong{color:#f3f7fb!important;font-size:13px!important}
.iema-training-group-section{margin:18px 0!important}
.iema-training-group-chip-list{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin-top:9px!important}
.iema-training-group-chip-list span{padding:6px 9px!important;border:1px solid #27445f!important;border-radius:999px!important;background:#0b1a28!important;color:#d8e9f8!important;font-size:11px!important;font-weight:800!important}
.iema-training-group-dancer-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-top:10px!important}
.iema-training-group-dancer-list>span{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important;padding:9px 10px!important;border:1px solid #1f3043!important;border-radius:11px!important;background:#0a121c!important}
.iema-training-group-dancer-list img{width:34px!important;height:34px!important;border-radius:50%!important;object-fit:cover!important}
.iema-training-group-dancer-list b{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#eaf2f9!important;font-size:12px!important}
.iema-training-group-notes,.iema-training-group-empty{margin:8px 0 0!important;color:#a6b5c5!important;font-size:12px!important;line-height:1.55!important}
.iema-training-group-schedule-mini{display:grid!important;gap:8px!important;margin-top:10px!important}
.iema-training-group-schedule-mini>div{display:flex!important;justify-content:space-between!important;gap:12px!important;padding:10px 12px!important;border:1px solid #1f3043!important;border-radius:10px!important;background:#0a121c!important}
.iema-training-group-schedule-mini strong{color:#eaf2f9!important;font-size:12px!important}.iema-training-group-schedule-mini small{color:#8397ad!important;font-size:10px!important}
.iema-training-group-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:wrap!important;gap:8px!important;margin-top:22px!important}
@media(max-width:680px){.iema-training-group-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.iema-training-group-dancer-list{grid-template-columns:1fr!important}.iema-training-group-actions>*{flex:1 1 auto!important}.iema-training-group-schedule-mini>div{flex-direction:column!important;gap:3px!important}}

/* v0.13.82 Training Group modal-only management + containment */
.iema-owner-shell .iema-dance-group-workspace{overflow:hidden!important}
.iema-owner-shell .iema-program-roster-list,.iema-owner-shell .iema-program-roster-row,.iema-owner-shell .iema-program-roster-main{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
.iema-training-group-detail-dialog{max-height:calc(100% - 32px)!important;overflow:auto!important;overscroll-behavior:contain!important}
.iema-training-group-detail-dialog .iema-roster-schedule-list,.iema-training-group-detail-dialog .iema-roster-schedule-list article{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
.iema-training-group-detail-dialog .iema-roster-schedule-list article{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;flex-wrap:wrap!important}
.iema-training-group-detail-dialog .iema-roster-schedule-list article>div:first-child{min-width:0!important;flex:1 1 260px!important}
.iema-training-group-detail-dialog .iema-roster-heading-actions{flex:0 1 auto!important;flex-wrap:wrap!important}
.iema-training-group-schedule-manager{min-width:0!important;overflow:hidden!important}
.iema-training-group-add-schedule-head{margin-top:18px!important}
@media(max-width:680px){.iema-training-group-detail-dialog{width:calc(100% - 20px)!important}.iema-training-group-detail-dialog .iema-roster-heading-actions{width:100%!important}.iema-training-group-detail-dialog .iema-roster-heading-actions>*{flex:1 1 auto!important}}

/* v0.13.83 Dance list: compact index + filters */
.iema-owner-shell .iema-program-index-tools{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(180px,240px) auto!important;gap:10px!important;align-items:end!important;margin:16px 0 12px!important;padding:12px!important;border:1px solid #1f3043!important;border-radius:13px!important;background:#0b1118!important}
.iema-owner-shell .iema-program-index-tools label{display:grid!important;gap:6px!important;margin:0!important}.iema-owner-shell .iema-program-index-tools label>span{color:#8195aa!important;font-size:9px!important;font-weight:900!important;letter-spacing:.08em!important;text-transform:uppercase!important}.iema-owner-shell .iema-program-index-tools input,.iema-owner-shell .iema-program-index-tools select{min-height:40px!important;margin:0!important}
.iema-owner-shell .iema-program-roster-list{gap:7px!important}.iema-owner-shell .iema-program-roster-main{padding:11px 14px!important;border-radius:11px!important}.iema-owner-shell .iema-program-roster-main strong{font-size:13px!important}.iema-owner-shell .iema-program-roster-main small{font-size:10px!important;line-height:1.4!important}
.iema-owner-shell .iema-program-filter-empty{margin-top:10px!important;padding:18px!important;border:1px dashed #29415a!important;border-radius:12px!important;text-align:center!important}.iema-owner-shell .iema-program-filter-empty strong{display:block!important;color:#e9f2fa!important}.iema-owner-shell .iema-program-filter-empty small{display:block!important;margin-top:4px!important;color:#8195aa!important}
.iema-owner-shell .iema-dance-detail-modal .iema-training-group-actions form{margin:0!important}.iema-owner-shell .iema-dance-detail-modal .iema-training-group-actions .iema-btn{margin:0!important}
@media(max-width:760px){.iema-owner-shell .iema-program-index-tools{grid-template-columns:1fr!important}.iema-owner-shell .iema-program-index-tools .iema-program-clear{width:100%!important}}


/* v0.13.85 — Dance detail/schedule modals are true body-level overlays */
body.iema-owner-portal-page > .iema-create-modal.iema-dance-detail-modal.iema-owner-modal-body-portal,
body.iema-owner-portal-page > .iema-create-modal.iema-training-group-detail-modal.iema-owner-modal-body-portal{
  position:fixed!important;inset:0!important;z-index:2147483000!important;display:grid!important;place-items:center!important;
  width:auto!important;height:auto!important;margin:0!important;padding:24px!important;overflow:hidden!important;box-sizing:border-box!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-dance-detail-modal.iema-owner-modal-body-portal[hidden],
body.iema-owner-portal-page > .iema-create-modal.iema-training-group-detail-modal.iema-owner-modal-body-portal[hidden]{display:none!important}
body.iema-owner-portal-page > .iema-create-modal.iema-dance-detail-modal.iema-owner-modal-body-portal > .iema-create-modal-backdrop,
body.iema-owner-portal-page > .iema-create-modal.iema-training-group-detail-modal.iema-owner-modal-body-portal > .iema-create-modal-backdrop{
  position:absolute!important;inset:0!important;background:rgba(0,0,0,.84)!important;backdrop-filter:blur(10px)!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-dance-detail-modal.iema-owner-modal-body-portal > .iema-training-group-detail-dialog,
body.iema-owner-portal-page > .iema-create-modal.iema-training-group-detail-modal.iema-owner-modal-body-portal > .iema-training-group-detail-dialog{
  position:relative!important;z-index:1!important;width:min(920px,calc(100vw - 48px))!important;max-width:920px!important;
  max-height:calc(100dvh - 48px)!important;overflow:auto!important;overscroll-behavior:contain!important;box-sizing:border-box!important;
  margin:0!important;padding:26px!important;background:linear-gradient(180deg,#0d1520 0%,#080d14 100%)!important;
  border:1px solid #27405a!important;border-radius:22px!important;box-shadow:0 30px 90px rgba(0,0,0,.62)!important;color:#f5f8ff!important;
}
body.iema-owner-portal-page > .iema-create-modal.iema-dance-detail-modal.iema-owner-modal-body-portal .iema-create-modal-close,
body.iema-owner-portal-page > .iema-create-modal.iema-training-group-detail-modal.iema-owner-modal-body-portal .iema-create-modal-close{
  position:absolute!important;right:15px!important;top:15px!important;z-index:3!important;width:38px!important;height:38px!important;
  display:grid!important;place-items:center!important;border-radius:50%!important;border:1px solid #31465e!important;background:#101925!important;color:#fff!important;
  font-size:25px!important;line-height:1!important;cursor:pointer!important;
}
@media(max-width:640px){
  body.iema-owner-portal-page > .iema-create-modal.iema-dance-detail-modal.iema-owner-modal-body-portal,
  body.iema-owner-portal-page > .iema-create-modal.iema-training-group-detail-modal.iema-owner-modal-body-portal{padding:10px!important;align-items:end!important}
  body.iema-owner-portal-page > .iema-create-modal.iema-dance-detail-modal.iema-owner-modal-body-portal > .iema-training-group-detail-dialog,
  body.iema-owner-portal-page > .iema-create-modal.iema-training-group-detail-modal.iema-owner-modal-body-portal > .iema-training-group-detail-dialog{
    width:100%!important;max-width:none!important;max-height:94dvh!important;padding:20px 16px!important;border-radius:20px 20px 10px 10px!important;
  }
}

/* v0.13.86 — Existing Dance rehearsal schedule is the primary Manage Schedule view. */
.iema-dance-current-schedule-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin:0 0 14px!important;flex-wrap:wrap!important}
.iema-dance-current-schedule-head>div{display:grid!important;gap:4px!important}
.iema-dance-current-schedule-head>div>strong{color:#f6f9fd!important;font-size:14px!important}
.iema-dance-current-schedule-row>div:first-child{display:grid!important;gap:4px!important;min-width:0!important}
.iema-dance-current-schedule-row em{font-size:11px!important;color:#8fa2b9!important;font-style:normal!important;overflow-wrap:anywhere!important}
@media(max-width:680px){.iema-dance-current-schedule-head>.iema-btn{width:100%!important}.iema-dance-current-schedule-row{align-items:flex-start!important;flex-direction:column!important}.iema-dance-current-schedule-row .iema-roster-heading-actions{width:100%!important;flex-wrap:wrap!important}}

/* v0.14.13 Master Calendar */
.iema-master-calendar-workspace{min-width:0}
.iema-master-calendar-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:12px;align-items:end;margin:18px 0 10px;padding:14px;border:1px solid var(--iema-line,#26384a);border-radius:16px;background:rgba(7,17,31,.52)}
.iema-master-calendar-filters label{display:grid;gap:7px;min-width:0}
.iema-master-calendar-filters label>span{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--iema-muted,#9eafc2)}
.iema-master-calendar-filters select{width:100%;min-width:0}
.iema-master-calendar-filter-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.iema-master-calendar-status{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin:0 2px 12px;color:var(--iema-muted,#9eafc2);font-size:12px}
.iema-master-calendar-status strong{color:var(--iema-text,#f5f7fb);font-size:13px}
@media(max-width:980px){.iema-master-calendar-filters{grid-template-columns:1fr 1fr}.iema-master-calendar-filter-actions{grid-column:1/-1}}
@media(max-width:620px){.iema-master-calendar-filters{grid-template-columns:1fr}.iema-master-calendar-filter-actions{grid-column:auto}.iema-master-calendar-filter-actions .iema-btn{flex:1}}


/* =========================================================
   v0.14.14 — Theme-independent portal top-gap containment
   Portal documents own the viewport and must begin at the top of the page.
   ========================================================= */
html:has(body.iema-plugin-app-document),
body.iema-plugin-app-document{
  margin:0!important;
  padding:0!important;
  min-height:100%!important;
}
body.iema-plugin-app-document>.iema-plugin-app-main{
  display:block!important;
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  max-width:none!important;
  min-height:100vh!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
}
body.iema-plugin-app-document:has(.iema-owner-shell) .iema-owner-shell{
  margin-top:14px!important;
}
@media(max-width:700px){
  body.iema-plugin-app-document:has(.iema-owner-shell) .iema-owner-shell{margin-top:0!important}
}

/* =========================================================
   v0.14.15 — Standalone portal document hard boundary
   Portal pages do not inherit theme header/footer spacing.
   ========================================================= */
html:has(body.iema-plugin-app-document),
body.iema-plugin-app-document{
  margin:0!important;
  padding:0!important;
  width:100%!important;
  min-height:100%!important;
}
body.iema-plugin-app-document>.iema-plugin-app-main{
  margin:0!important;
  padding:0!important;
  width:100%!important;
  min-height:100vh!important;
}
body.iema-plugin-app-document:has(.iema-owner-shell) .iema-owner-shell{
  margin-top:0!important;
}

/* =========================================================
   v0.14.16 — Shared portal top-edge contract
   The plugin-owned document is the viewport. No portal shell may reserve
   vertical space above its application masthead.
   ========================================================= */
body.iema-plugin-app-document > .iema-plugin-app-main > .iema-app,
body.iema-plugin-app-document .iema-owner-shell,
body.iema-plugin-app-document .iema-faculty-portal,
body.iema-plugin-app-document .iema-parent-portal,
body.iema-plugin-app-document .iema-dancer-portal{
  margin-top:0!important;
}

/* =========================================================
   v0.14.17 — Direct portal document boundary
   Portal GET requests are emitted by MyDancer itself before the theme.
   No upstream WordPress page wrapper may reserve space above the app.
   ========================================================= */
html:has(body.iema-direct-portal-document),
body.iema-direct-portal-document{
  margin:0!important;
  padding:0!important;
  width:100%!important;
  min-height:100%!important;
}
body.iema-direct-portal-document>.iema-direct-portal-main{
  display:block!important;
  position:relative!important;
  width:100%!important;
  min-height:100vh!important;
  margin:0!important;
  padding:0!important;
  inset:auto!important;
  transform:none!important;
}
body.iema-direct-portal-document>.iema-direct-portal-main>.iema-app,
body.iema-direct-portal-document .iema-owner-shell,
body.iema-direct-portal-document .iema-parent-shell,
body.iema-direct-portal-document .iema-parent-shell-topnav,
body.iema-direct-portal-document .iema-staff-shell,
body.iema-direct-portal-document .iema-faculty-portal,
body.iema-direct-portal-document .iema-dancer-shell,
body.iema-direct-portal-document .iema-dancer-portal{
  margin-top:0!important;
}

/* =========================================================
   v0.14.18 — Dancer Portal daily dashboard refinement
   ========================================================= */
body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-tabs,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-tabs{
  min-height:56px!important;
  padding:6px 8px!important;
  margin-bottom:18px!important;
}
body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-tabs a,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-tabs a{
  min-height:42px!important;
  padding:10px 18px!important;
}

body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-today-head,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-today-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:20px!important;
  align-items:end!important;
  margin:0 4px 14px!important;
}
body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-date-nav,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-date-nav{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  flex-wrap:wrap!important;
}
body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-date-nav h1,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-date-nav h1{
  margin:0!important;
  font-size:clamp(28px,2.3vw,40px)!important;
  line-height:1.05!important;
}
body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-date-nav .iema-icon-btn,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-date-nav .iema-icon-btn{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  padding:0!important;
}
body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-today-copy,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-today-copy{
  margin:6px 0 0!important;
  max-width:720px!important;
  font-size:14px!important;
  line-height:1.45!important;
}

body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-today-stats,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-today-stats{
  display:flex!important;
  gap:10px!important;
  align-items:stretch!important;
}
body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-today-stats .iema-stat-card,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-today-stats .iema-stat-card{
  min-width:104px!important;
  min-height:72px!important;
  padding:10px 14px!important;
  border-radius:14px!important;
}
body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-today-stats .iema-stat-card strong,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-today-stats .iema-stat-card strong{
  font-size:25px!important;
  line-height:1!important;
}
body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-today-stats .iema-stat-card span,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-today-stats .iema-stat-card span{
  margin-top:7px!important;
  font-size:10px!important;
  letter-spacing:.08em!important;
}

body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-schedule-card,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-schedule-card{
  margin-top:10px!important;
  padding:30px 40px 34px!important;
  border-radius:18px!important;
}
body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-schedule-card h2,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-schedule-card h2{
  margin:6px 0 6px!important;
  font-size:30px!important;
}
body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-schedule-card .iema-section-copy,
body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-schedule-card .iema-section-copy{
  margin-bottom:20px!important;
  max-width:760px!important;
}
body.iema-direct-portal-document .iema-dancer-portal .iema-empty-state,
body.iema-plugin-app-document .iema-dancer-portal .iema-empty-state{
  min-height:0!important;
  padding:24px 28px!important;
  text-align:center!important;
  border-radius:14px!important;
}
body.iema-direct-portal-document .iema-dancer-portal .iema-empty-state strong,
body.iema-plugin-app-document .iema-dancer-portal .iema-empty-state strong{
  display:block!important;
  margin-bottom:5px!important;
  font-size:17px!important;
}

@media (max-width:820px){
  body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-today-head,
  body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-today-head{
    grid-template-columns:1fr!important;
    align-items:start!important;
  }
  body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-today-stats,
  body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-today-stats{
    justify-content:flex-start!important;
  }
  body.iema-direct-portal-document .iema-dancer-portal .iema-dancer-schedule-card,
  body.iema-plugin-app-document .iema-dancer-portal .iema-dancer-schedule-card{
    padding:24px 20px 26px!important;
  }
}

/* =========================================================
   v0.14.19 — Dancer Portal exact live-selector refinement
   ========================================================= */
body.iema-direct-portal-document .iema-dancer-shell{
  padding-bottom:28px!important;
}

body.iema-direct-portal-document .iema-dancer-sticky-shell{
  margin-bottom:12px!important;
}

body.iema-direct-portal-document .iema-dancer-primary-nav{
  min-height:54px!important;
  padding:6px 8px!important;
}
body.iema-direct-portal-document .iema-dancer-primary-nav a{
  min-height:40px!important;
  padding:9px 18px!important;
  display:inline-flex!important;
  align-items:center!important;
}

body.iema-direct-portal-document .iema-dancer-dashboard{
  padding-top:10px!important;
}
body.iema-direct-portal-document .iema-dancer-dashboard-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:18px!important;
  align-items:end!important;
  margin:0 4px 12px!important;
}
body.iema-direct-portal-document .iema-dancer-day-heading{
  min-width:0!important;
}
body.iema-direct-portal-document .iema-dancer-day-heading>.iema-kicker{
  display:block!important;
  margin-bottom:7px!important;
}
body.iema-direct-portal-document .iema-dancer-day-nav{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
body.iema-direct-portal-document .iema-dancer-day-nav h2{
  margin:0!important;
  font-size:clamp(28px,2.15vw,36px)!important;
  line-height:1.05!important;
  white-space:nowrap!important;
}
body.iema-direct-portal-document .iema-dancer-day-nav button{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  border-radius:12px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  font-size:29px!important;
  line-height:1!important;
}
body.iema-direct-portal-document .iema-dancer-day-heading>p{
  margin:7px 0 0!important;
  max-width:690px!important;
  font-size:14px!important;
  line-height:1.45!important;
}

body.iema-direct-portal-document .iema-dancer-day-counts{
  display:flex!important;
  align-items:stretch!important;
  gap:10px!important;
  align-self:center!important;
}
body.iema-direct-portal-document .iema-dancer-day-counts>div{
  width:104px!important;
  min-width:104px!important;
  min-height:72px!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
body.iema-direct-portal-document .iema-dancer-day-counts strong{
  font-size:25px!important;
  line-height:1!important;
}
body.iema-direct-portal-document .iema-dancer-day-counts small{
  margin-top:7px!important;
  font-size:10px!important;
  line-height:1.1!important;
  letter-spacing:.08em!important;
}

body.iema-direct-portal-document .iema-dancer-agenda-panel,
body.iema-direct-portal-document .iema-dancer-workout-panel{
  margin-top:12px!important;
  padding:28px 34px 32px!important;
  border-radius:18px!important;
}
body.iema-direct-portal-document .iema-dancer-section-title{
  margin-bottom:18px!important;
}
body.iema-direct-portal-document .iema-dancer-section-title span{
  margin-bottom:7px!important;
}
body.iema-direct-portal-document .iema-dancer-section-title h2{
  margin:0 0 6px!important;
  font-size:30px!important;
  line-height:1.08!important;
}
body.iema-direct-portal-document .iema-dancer-section-title p{
  margin:0!important;
  max-width:760px!important;
  font-size:14px!important;
  line-height:1.45!important;
}

body.iema-direct-portal-document .iema-dancer-agenda-panel>.iema-empty,
body.iema-direct-portal-document .iema-dancer-workout-panel>.iema-empty{
  min-height:0!important;
  padding:22px 24px!important;
  border-radius:14px!important;
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
body.iema-direct-portal-document .iema-dancer-agenda-panel>.iema-empty strong{
  font-size:17px!important;
  margin-bottom:5px!important;
}
body.iema-direct-portal-document .iema-dancer-agenda-panel>.iema-empty span{
  font-size:13px!important;
  opacity:.82!important;
}

@media (max-width:900px){
  body.iema-direct-portal-document .iema-dancer-dashboard-head{
    grid-template-columns:1fr!important;
    align-items:start!important;
  }
  body.iema-direct-portal-document .iema-dancer-day-counts{
    justify-content:flex-start!important;
  }
}

@media (max-width:600px){
  body.iema-direct-portal-document .iema-dancer-day-nav{
    gap:8px!important;
  }
  body.iema-direct-portal-document .iema-dancer-day-nav h2{
    font-size:25px!important;
    white-space:normal!important;
  }
  body.iema-direct-portal-document .iema-dancer-day-counts{
    width:100%!important;
  }
  body.iema-direct-portal-document .iema-dancer-day-counts>div{
    flex:1 1 0!important;
    width:auto!important;
    min-width:0!important;
  }
  body.iema-direct-portal-document .iema-dancer-agenda-panel,
  body.iema-direct-portal-document .iema-dancer-workout-panel{
    padding:22px 18px 24px!important;
  }
}

/* =========================================================
   v0.14.20 — Dancer header alignment + date strip containment
   ========================================================= */

/* Match Owner portal header geometry: true three-column shell with centered title. */
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-header,
body.iema-direct-portal-document .iema-dancer-shell .iema-owner-header,
body.iema-direct-portal-document .iema-dancer-shell .iema-app-header{
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) minmax(320px,1fr) minmax(280px,1fr)!important;
  align-items:center!important;
  column-gap:24px!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-header-center,
body.iema-direct-portal-document .iema-dancer-shell .iema-owner-header-center,
body.iema-direct-portal-document .iema-dancer-shell .iema-app-header-center{
  justify-self:center!important;
  text-align:center!important;
  width:100%!important;
  min-width:0!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-header-center h1,
body.iema-direct-portal-document .iema-dancer-shell .iema-owner-header-center h1,
body.iema-direct-portal-document .iema-dancer-shell .iema-app-header-center h1{
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-header-right,
body.iema-direct-portal-document .iema-dancer-shell .iema-owner-header-right,
body.iema-direct-portal-document .iema-dancer-shell .iema-app-header-right{
  justify-self:end!important;
}

/* Put Today/date/stats on the dark app surface instead of floating over gray. */
body.iema-direct-portal-document .iema-dancer-dashboard{
  margin-top:12px!important;
}
body.iema-direct-portal-document .iema-dancer-dashboard-head{
  background:#0b1521!important;
  border:1px solid rgba(57,119,169,.32)!important;
  border-radius:18px!important;
  padding:18px 20px!important;
  margin:0 0 12px!important;
  box-shadow:none!important;
}
body.iema-direct-portal-document .iema-dancer-dashboard-head .iema-kicker{
  color:var(--studio-accent)!important;
}
body.iema-direct-portal-document .iema-dancer-day-heading>p{
  color:#9fb0c4!important;
}
body.iema-direct-portal-document .iema-dancer-day-nav h2{
  color:#fff!important;
}
body.iema-direct-portal-document .iema-dancer-day-nav button{
  background:#0b1724!important;
  border:1px solid color-mix(in srgb,var(--studio-accent) 58%,#22445e)!important;
}
body.iema-direct-portal-document .iema-dancer-day-counts>div{
  background:#11151a!important;
  border:1px solid rgba(255,255,255,.06)!important;
}

/* Visually join the schedule card to the date strip. */
body.iema-direct-portal-document .iema-dancer-agenda-panel{
  margin-top:0!important;
}

/* Responsive header falls back cleanly on smaller widths. */
@media (max-width:980px){
  body.iema-direct-portal-document .iema-dancer-shell .iema-portal-header,
  body.iema-direct-portal-document .iema-dancer-shell .iema-owner-header,
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-header{
    grid-template-columns:1fr!important;
    row-gap:12px!important;
    text-align:center!important;
  }
  body.iema-direct-portal-document .iema-dancer-shell .iema-portal-header-left,
  body.iema-direct-portal-document .iema-dancer-shell .iema-owner-header-left,
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-header-left,
  body.iema-direct-portal-document .iema-dancer-shell .iema-portal-header-right,
  body.iema-direct-portal-document .iema-dancer-shell .iema-owner-header-right,
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-header-right{
    justify-self:center!important;
  }
}

/* =========================================================
   v0.14.21 — Dancer header true-centering + compact date row
   ========================================================= */

/* True visual centering across the entire header, independent of side widths. */
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar{
  position:relative!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:min(42%,560px)!important;
  margin:0!important;
  text-align:center!important;
  pointer-events:none!important;
  z-index:1!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading h1,
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading p{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-shell-brand{
  position:relative!important;
  z-index:2!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user{
  position:relative!important;
  z-index:2!important;
}

/* One compact dark date/status strip. */
body.iema-direct-portal-document .iema-dancer-dashboard{
  padding-top:8px!important;
}
body.iema-direct-portal-document .iema-dancer-dashboard-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  padding:14px 18px!important;
  margin:0 0 10px!important;
  background:#0b1521!important;
  border:1px solid rgba(57,119,169,.30)!important;
  border-radius:16px!important;
}
body.iema-direct-portal-document .iema-dancer-day-heading{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  min-width:0!important;
}
body.iema-direct-portal-document .iema-dancer-day-heading>.iema-kicker{
  display:none!important;
}
body.iema-direct-portal-document .iema-dancer-day-nav{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
}
body.iema-direct-portal-document .iema-dancer-day-nav h2{
  margin:0!important;
  font-size:clamp(26px,2vw,34px)!important;
  line-height:1!important;
  color:#fff!important;
}
body.iema-direct-portal-document .iema-dancer-day-nav button{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  border-radius:11px!important;
}
body.iema-direct-portal-document .iema-dancer-day-counts{
  gap:8px!important;
}
body.iema-direct-portal-document .iema-dancer-day-counts>div{
  min-width:92px!important;
  width:92px!important;
  min-height:60px!important;
  padding:8px 10px!important;
  border-radius:12px!important;
}
body.iema-direct-portal-document .iema-dancer-day-counts strong{
  font-size:22px!important;
}
body.iema-direct-portal-document .iema-dancer-day-counts small{
  margin-top:5px!important;
  font-size:9px!important;
}

/* Tighten schedule panel now that helper copy is gone. */
body.iema-direct-portal-document .iema-dancer-agenda-panel{
  margin-top:0!important;
  padding-top:26px!important;
}
body.iema-direct-portal-document .iema-dancer-agenda-panel .iema-dancer-section-title{
  margin-bottom:14px!important;
}
body.iema-direct-portal-document .iema-dancer-agenda-panel .iema-dancer-section-title h2{
  margin-bottom:0!important;
}

@media (max-width:980px){
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading{
    position:static!important;
    transform:none!important;
    width:auto!important;
    pointer-events:auto!important;
  }
  body.iema-direct-portal-document .iema-dancer-dashboard-head{
    grid-template-columns:1fr!important;
  }
  body.iema-direct-portal-document .iema-dancer-day-counts{
    justify-content:flex-start!important;
  }
}

/* =========================================================
   v0.14.22 — Dancer header repair
   Match the proven Studio Owner header geometry exactly.
   ========================================================= */
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(280px,.9fr) minmax(360px,1.2fr) minmax(230px,270px)!important;
  align-items:center!important;
  gap:24px!important;
  min-height:108px!important;
  padding:20px 24px!important;
}

/* Undo v0.14.21 absolute positioning. */
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading{
  position:static!important;
  left:auto!important;
  top:auto!important;
  transform:none!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  justify-self:stretch!important;
  align-self:center!important;
  text-align:center!important;
  pointer-events:auto!important;
  z-index:auto!important;
  min-width:0!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-page-heading h1{
  margin:0 0 5px!important;
  text-align:center!important;
  color:#fff!important;
  font-size:32px!important;
  letter-spacing:-.035em!important;
  line-height:1!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-page-heading p{
  margin:0!important;
  text-align:center!important;
  color:#93a4bc!important;
  font-size:12.5px!important;
  line-height:1.45!important;
  max-width:none!important;
}

body.iema-direct-portal-document .iema-dancer-shell .iema-shell-brand{
  position:static!important;
  left:auto!important;
  top:auto!important;
  width:auto!important;
  justify-self:start!important;
  z-index:auto!important;
  min-width:0!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user{
  position:relative!important;
  justify-self:end!important;
  width:100%!important;
  max-width:270px!important;
  z-index:100!important;
}

/* Same visual scale as Owner header. */
body.iema-direct-portal-document .iema-dancer-shell .iema-shell-brand .iema-studio-logo{
  width:66px!important;
  height:66px!important;
  min-width:66px!important;
  object-fit:contain!important;
  border-radius:17px!important;
  padding:5px!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-studio-name{
  font-size:22px!important;
  font-weight:950!important;
  line-height:1.05!important;
  letter-spacing:-.02em!important;
  text-transform:none!important;
  color:#fff!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-account-label{
  font-size:10px!important;
  letter-spacing:.12em!important;
}

/* Keep compact fallback only when there truly isn't enough width. */
@media (max-width:980px){
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar{
    grid-template-columns:1fr!important;
    row-gap:12px!important;
    text-align:center!important;
  }
  body.iema-direct-portal-document .iema-dancer-shell .iema-shell-brand,
  body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user,
  body.iema-direct-portal-document .iema-dancer-shell .iema-page-heading{
    justify-self:center!important;
  }
}

/* =========================================================
   v0.14.23 — Dancer account submenu = Owner account submenu
   ========================================================= */
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user nav{
  position:absolute!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  width:220px!important;
  padding:7px!important;
  margin:0!important;
  background:#0d1420!important;
  border:1px solid #26364a!important;
  border-radius:14px!important;
  box-shadow:0 20px 46px rgba(0,0,0,.38)!important;
  overflow:hidden!important;
  z-index:10030!important;
}

/* All menu choices use the same flat Owner-style row treatment. */
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user nav a,
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user nav button{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-height:38px!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:10px 11px!important;
  border:0!important;
  border-radius:9px!important;
  background:transparent!important;
  color:#edf6ff!important;
  text-align:left!important;
  text-decoration:none!important;
  font:inherit!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.2!important;
  cursor:pointer!important;
  box-shadow:none!important;
}

body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user nav a:hover,
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user nav a:focus-visible,
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user nav button:hover,
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user nav button:focus-visible{
  background:#13243a!important;
  color:#fff!important;
  outline:none!important;
  border:0!important;
}

/* Keep logout separated exactly like the Owner-style destructive action. */
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user nav .iema-portal-logout{
  margin-top:5px!important;
  padding-top:11px!important;
  border-top:1px solid #243044!important;
  color:#ffabb1!important;
  border-radius:0 0 9px 9px!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user nav .iema-portal-logout:hover,
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user nav .iema-portal-logout:focus-visible{
  color:#ffd7da!important;
  background:#2a1820!important;
}

/* Remove legacy button-specific visual differences. */
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user nav .iema-app-refresh-button,
body.iema-direct-portal-document .iema-dancer-shell .iema-portal-user nav .iema-push-menu-button{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
}

/* =========================================================
   v0.14.24 — Dancer header final Owner-grid match
   ========================================================= */
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(280px,.9fr) minmax(360px,1.2fr) minmax(230px,270px)!important;
  align-items:center!important;
  gap:24px!important;
  min-height:108px!important;
  margin:0 0 12px!important;
  padding:20px 24px!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-shell-brand{
  position:static!important;
  left:auto!important;
  top:auto!important;
  width:auto!important;
  justify-self:start!important;
  align-self:center!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading{
  position:static!important;
  left:auto!important;
  top:auto!important;
  transform:none!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  justify-self:stretch!important;
  align-self:center!important;
  text-align:center!important;
  pointer-events:auto!important;
  z-index:auto!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading h1{
  margin:0 0 5px!important;
  text-align:center!important;
  font-size:32px!important;
  line-height:1!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading p{
  margin:0!important;
  text-align:center!important;
  font-size:12.5px!important;
  line-height:1.45!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-portal-user{
  position:relative!important;
  justify-self:end!important;
  align-self:center!important;
  width:100%!important;
  max-width:270px!important;
}

@media (max-width:980px){
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar{
    grid-template-columns:1fr!important;
    row-gap:12px!important;
  }
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-shell-brand,
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading,
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-portal-user{
    justify-self:center!important;
  }
}

/* =========================================================
   v0.14.25 — Dancer header true center (non-overlapping)
   ========================================================= */
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:24px!important;
  position:relative!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-shell-brand{
  grid-column:1!important;
  justify-self:start!important;
  position:static!important;
  left:auto!important;
  top:auto!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading{
  grid-column:2!important;
  justify-self:center!important;
  position:static!important;
  left:auto!important;
  top:auto!important;
  transform:none!important;
  width:auto!important;
  min-width:300px!important;
  max-width:520px!important;
  margin:0!important;
  text-align:center!important;
  pointer-events:auto!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading h1,
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading p{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-portal-user{
  grid-column:3!important;
  justify-self:end!important;
  position:relative!important;
  width:100%!important;
  max-width:270px!important;
  min-width:0!important;
}

/* Keep the compact date strip clean. */
body.iema-direct-portal-document .iema-dancer-dashboard-head{
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
}
body.iema-direct-portal-document .iema-dancer-day-heading{
  display:block!important;
}
body.iema-direct-portal-document .iema-dancer-day-nav{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
body.iema-direct-portal-document .iema-dancer-day-nav h2{
  margin:0!important;
}

/* Responsive: only collapse once the desktop layout truly cannot fit. */
@media (max-width:900px){
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar{
    grid-template-columns:1fr!important;
    row-gap:12px!important;
  }
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-shell-brand,
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-page-heading,
  body.iema-direct-portal-document .iema-dancer-shell .iema-app-topbar>.iema-portal-user{
    grid-column:1!important;
    justify-self:center!important;
  }
}


/* MyDancer Privates v0.14.51 */
.iema-private-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}
.iema-private-kpis>div{padding:16px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.035)}
.iema-private-kpis strong{display:block;font-size:28px;line-height:1}.iema-private-kpis span{display:block;margin-top:6px;color:#aeb8c3;font-size:13px}
.iema-private-provider-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.iema-private-card{display:grid;gap:12px;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:#24282d}
.iema-private-card h3{margin:0}.iema-private-card label:not(.iema-check),.iema-private-open-form label,.iema-private-dancer-picker label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#b9c2cb}
.iema-private-card select,.iema-private-open-form input,.iema-private-open-form select,.iema-private-dancer-picker select{width:100%;box-sizing:border-box;border:1px solid #46505a;border-radius:12px;background:#191d21;color:#fff;padding:11px 12px}
.iema-check{display:flex!important;align-items:center;gap:8px;color:#e5e9ed!important;font-size:13px!important}
.iema-private-open-form{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(130px,1fr)) auto;gap:12px;align-items:end;margin:12px 0 20px}
.iema-private-opening-list,.iema-private-booking-list,.iema-private-permission-list{display:grid;gap:10px}
.iema-private-opening-list article,.iema-private-booking-list article,.iema-private-permission-list>form{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 15px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.025)}
.iema-private-opening-list article>div,.iema-private-booking-list article>div{display:grid;gap:3px}.iema-private-opening-list span,.iema-private-booking-list small{color:#aeb8c3}
.iema-private-permission-list>form{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto}
.iema-private-status{display:inline-flex;width:max-content;padding:3px 8px;border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;background:#3b4650;color:#e9eef2}
.iema-private-status.is-confirmed{background:#173e2b;color:#86efac}.iema-private-status.is-requested{background:#493714;color:#fde68a}
.iema-private-actions{display:flex;align-items:center;gap:10px}.iema-private-subtitle{margin:24px 0 10px}
.iema-private-slot-grid{display:grid;gap:18px}.iema-private-slot-day{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px}.iema-private-slot-day h3{grid-column:1/-1;margin:8px 0 2px}
.iema-private-slot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.03)}
.iema-private-slot span{display:grid}.iema-private-slot small{color:#aeb8c3}
.iema-private-dancer-picker{max-width:360px;margin:0 0 20px}
@media(max-width:760px){
 .iema-private-kpis{grid-template-columns:1fr}
 .iema-private-open-form{grid-template-columns:1fr 1fr}.iema-private-open-form label:first-of-type,.iema-private-open-form .iema-btn{grid-column:1/-1}
 .iema-private-permission-list>form{grid-template-columns:1fr}.iema-private-opening-list article,.iema-private-booking-list article{align-items:flex-start;flex-direction:column}
 .iema-private-actions{width:100%}
}


/* MyDancer Master Calendar V1 v0.14.52 */
.iema-master-type-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0 14px;padding:13px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.025)}
.iema-master-type-pills{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.iema-master-type-pill{appearance:none;border:1px solid #48525c;background:#24292e;color:#aeb8c3;border-radius:999px;min-height:38px;padding:7px 13px;display:inline-flex;align-items:center;gap:7px;font:inherit;font-size:12px;font-weight:850;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}
.iema-master-type-pill:hover{transform:translateY(-1px);border-color:#68737e}
.iema-master-type-pill b{min-width:21px;height:21px;padding:0 6px;border-radius:999px;display:inline-grid;place-items:center;background:rgba(255,255,255,.08);font-size:10px}
.iema-master-type-pill.is-active{color:#fff;border-color:rgba(255,255,255,.2);background:#343b42}
.iema-master-type-pill.is-all.is-active{background:#e8edf2;color:#14191e;border-color:#e8edf2}
.iema-master-type-pill.is-training.is-active{box-shadow:inset 0 -3px 0 #5bd7e0}
.iema-master-type-pill.is-dance.is-active{box-shadow:inset 0 -3px 0 #9a8cff}
.iema-master-type-pill.is-private.is-active{box-shadow:inset 0 -3px 0 #f6b65b}
.iema-master-type-pill.is-recreational.is-active{box-shadow:inset 0 -3px 0 #69d899}
.iema-master-type-pill.is-studio.is-active{box-shadow:inset 0 -3px 0 #7ab5ff}
.iema-master-type-pill.is-closure.is-active{box-shadow:inset 0 -3px 0 #ff7c7c}
.iema-master-type-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}
.iema-master-type-link{appearance:none;border:0;background:none;color:#9eabb6;font:inherit;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;padding:7px 3px}
.iema-master-type-link:hover{color:#fff}
.iema-master-calendar-workspace .iema-calendar-event[data-master-type="training"]{border-left:3px solid #5bd7e0}
.iema-master-calendar-workspace .iema-calendar-event[data-master-type="dance"]{border-left:3px solid #9a8cff}
.iema-master-calendar-workspace .iema-calendar-event[data-master-type="private"]{border-left:3px solid #f6b65b}
.iema-master-calendar-workspace .iema-calendar-event[data-master-type="recreational"]{border-left:3px solid #69d899}
.iema-master-calendar-workspace .iema-calendar-event[data-master-type="studio"]{border-left:3px solid #7ab5ff}
.iema-master-calendar-workspace .iema-calendar-event[data-master-type="closure"]{border-left:3px solid #ff7c7c}
.iema-master-calendar-workspace .iema-calendar-event[hidden]{display:none!important}
.iema-master-calendar-workspace .iema-master-more{display:block;margin-top:4px;color:#aeb8c3;font-size:10px;font-weight:800}
.iema-master-calendar-workspace .iema-master-more[hidden]{display:none!important}
@media(max-width:820px){
 .iema-master-type-toolbar{align-items:flex-start;flex-direction:column}
 .iema-master-type-pills{flex-wrap:nowrap;width:100%;overflow-x:auto;padding-bottom:3px;-webkit-overflow-scrolling:touch}
 .iema-master-type-pill{flex:0 0 auto}
 .iema-master-type-actions{width:100%;justify-content:flex-end}
}


/* MyDancer Recreational V1 v0.14.53 */
.iema-rec-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}
.iema-rec-kpis>div{padding:16px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.035)}
.iema-rec-kpis strong{display:block;font-size:28px;line-height:1}.iema-rec-kpis span{display:block;margin-top:6px;color:#aeb8c3;font-size:13px}
.iema-rec-session-form{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:12px;align-items:end}
.iema-rec-session-form label,.iema-rec-class-picker label,.iema-rec-enroll-form label,.iema-rec-attendance-filter label{display:grid;gap:6px;color:#b9c2cb;font-size:12px;font-weight:800}
.iema-rec-session-form input,.iema-rec-class-picker select,.iema-rec-enroll-form select,.iema-rec-attendance-filter select,.iema-rec-attendance-filter input{width:100%;box-sizing:border-box;border:1px solid #46505a;border-radius:12px;background:#191d21;color:#fff;padding:11px 12px}
.iema-rec-session-chips{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.iema-rec-session-chips span{display:grid;gap:2px;padding:9px 12px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:#24292e;color:#9facb7;font-size:11px}.iema-rec-session-chips strong{color:#fff}
.iema-rec-class-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:13px}
.iema-rec-class-card{padding:17px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:#24282d}.iema-rec-class-card h3{margin:12px 0 4px}.iema-rec-class-card p{margin:0;color:#bac3cb}
.iema-rec-class-top{display:flex;justify-content:space-between;gap:10px;font-size:10px;font-weight:900;letter-spacing:.05em;color:#83e4b0}.iema-rec-class-top b{color:#aeb8c3}
.iema-rec-meta{display:grid;gap:5px;margin-top:13px;color:#aeb8c3;font-size:12px}.iema-rec-card-actions{display:flex;gap:8px;margin-top:14px}
.iema-rec-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.iema-rec-three{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.iema-rec-class-picker{max-width:460px;margin-bottom:18px}.iema-rec-enroll-layout{display:grid;grid-template-columns:1.35fr .8fr;gap:18px}
.iema-rec-student-list{display:grid;gap:9px}.iema-rec-student-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.025)}.iema-rec-student-list article>div{display:grid}.iema-rec-student-list small,.iema-rec-help{color:#aeb8c3}
.iema-rec-enroll-form{display:grid;gap:10px;padding:15px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.025)}
.iema-rec-attendance-filter{display:grid;grid-template-columns:1.4fr 1fr auto;gap:10px;align-items:end;margin-bottom:18px}.iema-rec-attendance-list{display:grid;gap:8px;margin-bottom:16px}.iema-rec-attendance-list article{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 14px;border:1px solid rgba(255,255,255,.08);border-radius:14px}.iema-rec-attendance-list article>div{display:flex;gap:10px;flex-wrap:wrap}.iema-rec-attendance-list label{font-size:12px;color:#c5cdd4}
.iema-parent-rec-family{display:grid;gap:16px}.iema-parent-rec-family>article{padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:17px;background:rgba(255,255,255,.025)}.iema-parent-rec-family h3{margin:0 0 10px}.iema-parent-rec-classes{display:grid;gap:8px}.iema-parent-rec-classes>div{display:grid;gap:3px;padding:11px 12px;border-radius:13px;background:rgba(255,255,255,.035)}.iema-parent-rec-classes span,.iema-parent-rec-classes small{color:#aeb8c3}
@media(max-width:820px){
 .iema-rec-kpis{grid-template-columns:1fr}.iema-rec-session-form{grid-template-columns:1fr 1fr}.iema-rec-session-form label:first-child,.iema-rec-session-form .iema-btn{grid-column:1/-1}
 .iema-rec-enroll-layout{grid-template-columns:1fr}.iema-rec-attendance-filter{grid-template-columns:1fr}.iema-rec-attendance-list article{align-items:flex-start;flex-direction:column}.iema-rec-two,.iema-rec-three{grid-template-columns:1fr}
}


/* MyDancer Faculty Work Logs V1 v0.14.54 */
.iema-faculty-day-actions{display:grid;justify-items:end;gap:8px;min-width:150px}
.iema-faculty-submit-work{min-width:138px}
.iema-faculty-work-state{font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;color:#aeb8c3}
.iema-faculty-work-state.is-needs_correction{color:#f6b65b}.iema-faculty-work-state.is-approved{color:#69d899}.iema-faculty-work-state.is-paid{color:#7ab5ff}
.iema-work-dialog{width:min(940px,calc(100vw - 28px));max-height:90vh;overflow:auto}
.iema-work-status{display:inline-flex;margin-top:10px;padding:6px 10px;border-radius:999px;background:#343b42;color:#d9e1e7;font-size:11px;font-weight:850}
.iema-work-status.is-needs_correction{background:rgba(246,182,91,.14);color:#f6c875}.iema-work-status.is-approved{background:rgba(105,216,153,.14);color:#8ae3af}.iema-work-status.is-paid{background:rgba(122,181,255,.14);color:#9ccaff}
.iema-work-correction-note,.iema-work-locked{display:grid;gap:4px;margin-top:12px;padding:12px 14px;border:1px solid rgba(246,182,91,.28);border-radius:14px;background:rgba(246,182,91,.08)}
.iema-work-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 12px}.iema-work-tools span{color:#aeb8c3;font-size:12px;font-weight:800}
.iema-work-items{display:grid;gap:10px}.iema-work-item{display:grid;grid-template-columns:auto minmax(180px,1fr) minmax(220px,.7fr) minmax(120px,.45fr);gap:12px;align-items:center;padding:13px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.025);transition:border-color .15s ease,background .15s ease}
.iema-work-item.is-selected{border-color:rgba(91,215,224,.36);background:rgba(91,215,224,.055)}
.iema-work-check{display:grid;place-items:center}.iema-work-check input{width:18px;height:18px}
.iema-work-item-copy{display:grid;gap:3px}.iema-work-item-copy small{color:#83dce3;font-size:10px;font-weight:900;text-transform:uppercase}.iema-work-item-copy span{color:#aeb8c3;font-size:11px}
.iema-work-time{display:grid;grid-template-columns:1fr 1fr;gap:8px}.iema-work-time label,.iema-work-note{display:grid;gap:5px;color:#aeb8c3;font-size:10px;font-weight:800}.iema-work-time input,.iema-work-note input,.iema-work-unscheduled input,.iema-work-unscheduled select{width:100%;box-sizing:border-box;border:1px solid #46505a;border-radius:10px;background:#191d21;color:#fff;padding:9px 10px}
.iema-work-unscheduled{margin-top:14px;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:11px 13px}.iema-work-unscheduled summary{cursor:pointer;font-weight:850}.iema-work-unscheduled-grid{display:grid;grid-template-columns:1fr 1.5fr 1fr 1fr;gap:10px;margin-top:12px}.iema-work-unscheduled-grid label{display:grid;gap:5px;color:#aeb8c3;font-size:10px;font-weight:800}.iema-work-unscheduled-grid .wide{grid-column:span 2}
.iema-work-submit{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08)}.iema-work-submit>div{display:grid}.iema-work-submit strong{font-size:22px}.iema-work-submit span{color:#aeb8c3;font-size:11px}
.iema-work-owner-filters{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;gap:10px;align-items:end;margin-bottom:18px}.iema-work-owner-filters label{display:grid;gap:5px;color:#aeb8c3;font-size:10px;font-weight:850}.iema-work-owner-filters input,.iema-work-owner-filters select{width:100%;box-sizing:border-box;border:1px solid #46505a;border-radius:10px;background:#191d21;color:#fff;padding:9px 10px}
.iema-work-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-bottom:18px}.iema-work-summary-grid article{padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.025)}.iema-work-summary-grid article>strong{display:block;margin-bottom:10px}.iema-work-summary-grid article>div{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.iema-work-summary-grid span{display:grid;gap:2px}.iema-work-summary-grid b{font-size:13px}.iema-work-summary-grid small{color:#aeb8c3;font-size:9px}
.iema-work-owner-list{display:grid;gap:12px}.iema-work-owner-card{border:1px solid rgba(255,255,255,.09);border-radius:18px;background:#24282d;overflow:hidden}.iema-work-owner-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:15px 16px;border-bottom:1px solid rgba(255,255,255,.07)}.iema-work-owner-card header span{font-size:9px;font-weight:900;letter-spacing:.05em;color:#aeb8c3}.iema-work-owner-card h3{margin:3px 0}.iema-work-owner-card header p{margin:0;color:#aeb8c3;font-size:11px}.iema-work-owner-card header>strong{font-size:22px}
.iema-work-owner-entries{display:grid}.iema-work-owner-entries>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid rgba(255,255,255,.055)}.iema-work-owner-entries>div>div{display:grid;gap:2px}.iema-work-owner-entries small{font-size:9px;color:#83dce3;font-weight:900}.iema-work-owner-entries span{color:#aeb8c3;font-size:11px}.iema-work-owner-entries em{font-style:normal;font-size:10px;font-weight:850;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.06);white-space:nowrap}.iema-work-owner-entries em.is-variance{color:#f6c875;background:rgba(246,182,91,.1)}.iema-work-owner-entries em.is-unscheduled{color:#9ccaff;background:rgba(122,181,255,.1)}
.iema-work-owner-note{padding:10px 16px;background:rgba(246,182,91,.08);color:#e8c98c;font-size:12px}.iema-work-owner-card>footer{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px}.iema-work-owner-card footer form{margin:0}.iema-work-correction-form{display:flex;gap:8px;flex:1}.iema-work-correction-form input{min-width:220px;flex:1;border:1px solid #46505a;border-radius:10px;background:#191d21;color:#fff;padding:9px 10px}.iema-work-paid-label{color:#9ccaff;font-size:12px;font-weight:850}
@media(max-width:900px){
 .iema-work-item{grid-template-columns:auto 1fr}.iema-work-time,.iema-work-note{grid-column:2}.iema-work-owner-filters{grid-template-columns:1fr 1fr}.iema-work-owner-filters .iema-btn{grid-column:1/-1}
}
@media(max-width:620px){
 .iema-faculty-day-actions{justify-items:start;width:100%}.iema-work-item{grid-template-columns:auto 1fr}.iema-work-time{grid-template-columns:1fr 1fr}.iema-work-unscheduled-grid{grid-template-columns:1fr 1fr}.iema-work-unscheduled-grid .wide{grid-column:1/-1}.iema-work-submit{align-items:stretch;flex-direction:column}.iema-work-owner-filters{grid-template-columns:1fr}.iema-work-owner-filters .iema-btn{grid-column:auto}.iema-work-summary-grid article>div{grid-template-columns:1fr 1fr}.iema-work-owner-entries>div{align-items:flex-start;flex-direction:column}.iema-work-correction-form{width:100%;flex-direction:column}.iema-work-correction-form input{min-width:0;width:100%;box-sizing:border-box}
}


/* v0.14.55 Work Logs footer containment / responsive polish */
.iema-work-owner-card{
  overflow:hidden;
  min-width:0;
}
.iema-work-owner-card>footer{
  box-sizing:border-box;
  width:100%;
  max-width:100%;
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:10px 12px;
}
.iema-work-owner-card>footer>form{
  min-width:0;
  max-width:100%;
}
.iema-work-owner-card>footer>form:not(.iema-work-correction-form){
  width:max-content;
  max-width:100%;
}
.iema-work-correction-form{
  width:100%;
  min-width:0;
  max-width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
}
.iema-work-correction-form input{
  box-sizing:border-box;
  width:100%;
  min-width:0;
  max-width:100%;
}
.iema-work-correction-form .iema-btn{
  white-space:nowrap;
}
.iema-work-paid-label{
  grid-column:1/-1;
}
@media(max-width:980px){
  .iema-work-owner-card>footer{
    grid-template-columns:1fr;
    align-items:stretch;
  }
  .iema-work-owner-card>footer>form:not(.iema-work-correction-form){
    width:100%;
  }
  .iema-work-owner-card>footer>form:not(.iema-work-correction-form) .iema-btn{
    width:100%;
  }
}
@media(max-width:700px){
  .iema-work-correction-form{
    grid-template-columns:1fr;
  }
  .iema-work-correction-form .iema-btn{
    width:100%;
  }
}


/* MyDancer Communications V1 v0.14.57 */
.iema-notification-center{position:relative;margin-left:auto}.iema-notification-bell{position:relative;width:40px;height:40px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#24292e;color:#fff;cursor:pointer;font-size:20px}.iema-notification-bell b{position:absolute;right:-4px;top:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;display:grid;place-items:center;background:#ff6b6b;color:#fff;font-size:9px}
.iema-notification-popover{position:absolute;right:0;top:48px;z-index:90;width:min(370px,calc(100vw - 28px));border:1px solid rgba(255,255,255,.1);border-radius:16px;background:#20252a;box-shadow:0 22px 60px rgba(0,0,0,.38);overflow:hidden}.iema-notification-popover[hidden]{display:none}.iema-notification-popover header{display:flex;justify-content:space-between;padding:13px 14px;border-bottom:1px solid rgba(255,255,255,.08)}.iema-notification-popover header span{color:#aeb8c3;font-size:11px}.iema-notification-list{max-height:420px;overflow:auto}.iema-notification-list a{display:grid;gap:3px;padding:11px 14px;border-bottom:1px solid rgba(255,255,255,.055);color:#fff;text-decoration:none}.iema-notification-list a.is-unread{background:rgba(91,215,224,.06)}.iema-notification-list span,.iema-notification-list small{color:#aeb8c3;font-size:11px}.iema-notification-empty{padding:18px;color:#aeb8c3}
.iema-urgent-alert{margin:10px auto 14px;max-width:1460px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px;border:1px solid rgba(246,182,91,.3);border-radius:16px;background:rgba(246,182,91,.09)}.iema-urgent-alert.is-urgent{border-color:rgba(255,124,124,.4);background:rgba(255,124,124,.1)}.iema-urgent-alert>div{display:grid;gap:2px}.iema-urgent-alert span{font-size:9px;font-weight:950;letter-spacing:.07em;color:#f6c875}.iema-urgent-alert.is-urgent span{color:#ff9696}.iema-urgent-alert p{margin:2px 0 0;color:#cbd3da;font-size:12px}
.iema-comm-search,.iema-doc-filters{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-bottom:18px}.iema-doc-filters{grid-template-columns:minmax(0,1fr) minmax(160px,.35fr) auto}.iema-comm-search input,.iema-doc-filters input,.iema-doc-filters select{width:100%;box-sizing:border-box;border:1px solid #46505a;border-radius:12px;background:#191d21;color:#fff;padding:11px 12px}
.iema-notice-feed{display:grid;gap:13px}.iema-notice-post{border:1px solid rgba(255,255,255,.09);border-radius:18px;background:#24282d;overflow:hidden}.iema-notice-post.is-pinned{border-color:rgba(122,181,255,.25)}.iema-notice-post.is-important{border-left:4px solid #f6b65b}.iema-notice-post.is-urgent{border-left:4px solid #ff7c7c}.iema-notice-post>header{display:flex;justify-content:space-between;gap:14px;padding:15px 16px;border-bottom:1px solid rgba(255,255,255,.06)}.iema-notice-post header span{font-size:9px;font-weight:950;letter-spacing:.06em;color:#8adfe5}.iema-notice-post h3{margin:4px 0 2px}.iema-notice-post header p{margin:0;color:#aeb8c3;font-size:11px}.iema-notice-body{padding:14px 16px}.iema-notice-body p{margin:0 0 10px}.iema-notice-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;padding:0 16px 14px}.iema-notice-links a{display:grid;gap:2px;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.025);color:#fff;text-decoration:none}.iema-notice-links span{color:#aeb8c3;font-size:10px}.iema-notice-post>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 16px;background:rgba(255,255,255,.018)}.iema-comm-owner-metrics{display:grid;justify-items:end}.iema-comm-owner-metrics b{font-size:12px}.iema-comm-owner-metrics small{color:#aeb8c3;font-size:10px}
.iema-audience-summary{display:flex;flex-wrap:wrap;gap:5px}.iema-audience-summary span,.iema-audience-summary em{font-style:normal;padding:4px 7px;border-radius:999px;background:rgba(255,255,255,.06);color:#aeb8c3;font-size:9px;font-weight:800}
.iema-comm-create-dialog{width:min(880px,calc(100vw - 28px));max-height:90vh;overflow:auto}.iema-comm-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.iema-audience-head{display:grid;gap:2px;margin-top:8px}.iema-audience-head span{color:#aeb8c3;font-size:11px}.iema-audience-picker{padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(255,255,255,.02)}.iema-audience-quick{display:flex;flex-wrap:wrap;gap:8px 14px}.iema-audience-quick label{display:flex!important;grid-template-columns:none!important;align-items:center;gap:6px}.iema-audience-picker details{margin-top:10px}.iema-audience-picker summary{cursor:pointer;font-weight:850}.iema-audience-specific{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.iema-audience-specific label{display:grid;gap:5px}.iema-audience-specific select{min-height:92px}
.iema-doc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px}.iema-doc-card{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:15px;border:1px solid rgba(255,255,255,.09);border-radius:17px;background:#24282d}.iema-doc-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(91,215,224,.08);color:#83dce3;font-size:20px}.iema-doc-card>div:nth-child(2)>span{font-size:9px;font-weight:900;color:#83dce3}.iema-doc-card h3{margin:4px 0}.iema-doc-card p{margin:0;color:#c3cbd2;font-size:12px}.iema-doc-card small{display:block;margin-top:6px;color:#8f9aa4}.iema-doc-card footer{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:8px}
.iema-notification-report{display:grid;gap:7px;margin-top:16px}.iema-notification-report article{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid rgba(255,255,255,.07);border-radius:12px}.iema-notification-report article>div{display:grid}.iema-notification-report span,.iema-notification-report small{color:#aeb8c3;font-size:10px}
@media(max-width:760px){.iema-notification-center{margin-left:0}.iema-urgent-alert{margin-left:10px;margin-right:10px;align-items:stretch;flex-direction:column}.iema-comm-search,.iema-doc-filters{grid-template-columns:1fr}.iema-comm-two,.iema-audience-specific{grid-template-columns:1fr}.iema-notice-post>header{flex-direction:column}.iema-comm-owner-metrics{justify-items:start}.iema-notice-post>footer{align-items:flex-start;flex-direction:column}}


/* v0.14.65 Notification read/clear controls + all-clear green state */
.iema-notification-bar.is-clear{
  background:#9ed9aa!important;
  color:#173a20!important;
  border-color:#bfe8c7!important;
  box-shadow:0 8px 20px rgba(66,132,78,.12)!important;
}
.iema-notification-bar.is-clear:hover{
  filter:brightness(1.02);
}
.iema-notification-bar.has-unread{
  background:#c93434!important;
  color:#fff!important;
}
.iema-notification-popover>header{
  align-items:flex-start!important;
  gap:10px!important;
}
.iema-notification-popover>header>div:first-child{
  display:grid;
  gap:2px;
}
.iema-notification-popover-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  flex-wrap:wrap;
}
.iema-notification-popover-actions form{
  margin:0!important;
}
.iema-notification-popover-actions button{
  appearance:none;
  border:1px solid rgba(255,255,255,.12);
  border-radius:8px;
  background:#11161b;
  color:#dce4ea;
  padding:6px 8px;
  font:inherit;
  font-size:10px;
  font-weight:850;
  cursor:pointer;
}
.iema-notification-popover-actions button:hover{
  background:#1a2229;
  color:#fff;
}
.iema-notification-list a.is-read{
  opacity:.72;
}
.iema-notification-list a.is-unread{
  opacity:1;
}
@media(max-width:620px){
  .iema-notification-popover>header{
    flex-direction:column;
  }
  .iema-notification-popover-actions{
    justify-content:flex-start;
  }
}


/* MyDancer Family Access V1 v0.14.66 */
.iema-family-access-created{display:grid;gap:10px;margin-bottom:16px;padding:15px;border:1px solid rgba(105,216,153,.28);border-radius:16px;background:rgba(105,216,153,.07)}
.iema-family-access-created label{display:grid;gap:5px;color:#aeb8c3;font-size:10px;font-weight:850}.iema-family-access-created input{width:100%;box-sizing:border-box;border:1px solid #46505a;border-radius:10px;background:#15191d;color:#fff;padding:10px}
.iema-family-access-list{display:grid;gap:10px}.iema-family-access-card{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 15px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.025)}.iema-family-access-card>div{display:grid;gap:3px}.iema-family-access-card span{font-size:9px;font-weight:950;letter-spacing:.06em;color:#69d899}.iema-family-access-card.is-revoked span{color:#ff8c8c}.iema-family-access-card p,.iema-family-access-card small{margin:0;color:#aeb8c3}.iema-family-access-dialog{width:min(700px,calc(100vw - 28px));max-height:90vh;overflow:auto}
.iema-family-guest-document{margin:0;background:#303338;color:#fff;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.iema-family-guest-shell{width:min(1080px,calc(100vw - 24px));margin:12px auto 36px}.iema-family-guest-header{display:flex;align-items:center;gap:14px;padding:18px 20px;background:linear-gradient(180deg,#0d1420,#080d14);border:1px solid #1e2a39;border-radius:18px 18px 0 0}.iema-family-guest-header img{width:58px;height:58px;object-fit:contain;border-radius:14px;background:#111924;border:1px solid #2a3a50;padding:4px}.iema-family-guest-header span{font-size:9px;font-weight:950;letter-spacing:.12em;color:#62d1ff}.iema-family-guest-header h1{margin:3px 0 2px}.iema-family-guest-header p{margin:0;color:#9aa8b7;font-size:12px}.iema-family-guest-nav{display:flex;gap:8px;overflow-x:auto;padding:8px;background:#080d14;border:1px solid #1e2a39;border-top:0;border-radius:0 0 16px 16px}.iema-family-guest-nav a{padding:9px 13px;border-radius:10px;background:#111923;color:#dce8f2;text-decoration:none;font-weight:850;font-size:12px}.iema-family-guest-intro{margin:14px 0;padding:12px 14px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#22272c}.iema-family-guest-intro p{margin:3px 0 0;color:#aeb8c3}.iema-family-guest-schedule{display:grid;gap:8px}.iema-family-guest-schedule article{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.025)}.iema-family-guest-schedule article>div{display:grid;gap:2px}.iema-family-guest-schedule span,.iema-family-guest-schedule small{color:#aeb8c3;font-size:10px}.iema-family-guest-file-note{color:#aeb8c3;font-size:10px}.iema-family-guest-footer{padding:18px 4px;color:#9aa3ad;font-size:10px;text-align:center}
@media(max-width:620px){.iema-family-access-card{align-items:flex-start;flex-direction:column}.iema-family-access-card form,.iema-family-access-card button{width:100%}.iema-family-guest-shell{width:100%;margin:0 auto 24px}.iema-family-guest-header{border-radius:0}.iema-family-guest-nav{border-radius:0}.iema-family-guest-shell>.iema-panel,.iema-family-guest-intro{margin-left:10px!important;margin-right:10px!important}.iema-family-guest-schedule article{align-items:flex-start;flex-direction:column}}


/* =========================================================
   v0.14.68 — Parent Portal mobile masthead + navigation only
   Built from v0.14.66. Parent is the reference portal.
   ========================================================= */
.iema-parent-mobile-nav{display:none!important}

@media(max-width:760px){
  /* iPhone safe-area must be masthead navy, never the page canvas. */
  html.iema-parent-root{
    background:#0d1420!important;
  }
  html.iema-parent-root body.iema-plugin-app-document{
    background:#0d1420!important;
  }

  /* Parent masthead touches the phone edges and top safe area. */
  body.iema-parent-portal-page .iema-parent-shell-topnav{
    width:100%!important;
    max-width:none!important;
    margin:0 auto 28px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) auto auto!important;
    grid-template-areas:'brand menu user'!important;
    align-items:center!important;
    column-gap:8px!important;
    row-gap:0!important;
    min-height:0!important;
    margin:0!important;
    padding:calc(11px + env(safe-area-inset-top)) 12px 11px!important;
    background:linear-gradient(180deg,#0d1420 0%,#080d14 100%)!important;
    border-radius:0!important;
    border-top:0!important;
    border-left:0!important;
    border-right:0!important;
    border-bottom:1px solid #1e2a39!important;
    box-shadow:none!important;
  }

  /* Parent Portal title/current-season block is intentionally removed on phones. */
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-page-heading{
    display:none!important;
  }

  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand{
    grid-area:brand!important;
    min-width:0!important;
    gap:9px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand .iema-studio-logo{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    border-radius:11px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-studio-name{
    font-size:15px!important;
    line-height:1.08!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-mobile-menu-toggle{
    grid-area:menu!important;
    margin:0!important;
  }
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user{
    grid-area:user!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    justify-self:end!important;
  }

  /* Keep notification band physically attached to the masthead. */
  body.iema-parent-portal-page .iema-parent-shell-topnav>.iema-notification-bar-wrap{
    margin:-1px 0 0!important;
    padding:7px 9px!important;
    border-left:0!important;
    border-right:0!important;
    border-radius:0!important;
    background:#080d14!important;
  }

  /* Desktop's 8-link row is hidden on phones — no horizontal overflow. */
  body.iema-parent-portal-page .iema-parent-shell-topnav>.iema-parent-shared-nav{
    display:none!important;
  }

  /* Four fixed mobile destinations. Everything else lives under More. */
  body.iema-parent-portal-page .iema-parent-mobile-nav{
    position:relative!important;
    z-index:35!important;
    width:100%!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:5px!important;
    margin:0 0 12px!important;
    padding:7px 8px 8px!important;
    overflow:visible!important;
    background:#080d14!important;
    border:0!important;
    border-bottom:1px solid #1e2a39!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.iema-parent-portal-page .iema-parent-mobile-nav>a,
  body.iema-parent-portal-page .iema-parent-mobile-more>summary{
    min-width:0!important;
    min-height:39px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    padding:7px 5px!important;
    border:1px solid transparent!important;
    border-radius:9px!important;
    background:#101721!important;
    color:#aebdce!important;
    text-decoration:none!important;
    text-align:center!important;
    font-size:11px!important;
    font-weight:850!important;
    line-height:1.05!important;
    white-space:nowrap!important;
    cursor:pointer!important;
  }
  body.iema-parent-portal-page .iema-parent-mobile-nav>a.active,
  body.iema-parent-portal-page .iema-parent-mobile-more.active>summary{
    background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
    border-color:var(--md2-blue)!important;
    color:#fff!important;
  }
  body.iema-parent-portal-page .iema-parent-mobile-more{
    position:relative!important;
    min-width:0!important;
  }
  body.iema-parent-portal-page .iema-parent-mobile-more>summary{
    list-style:none!important;
  }
  body.iema-parent-portal-page .iema-parent-mobile-more>summary::-webkit-details-marker{
    display:none!important;
  }
  body.iema-parent-portal-page .iema-parent-mobile-more[open]>summary{
    color:#fff!important;
    background:#162231!important;
    border-color:#2b4056!important;
  }
  body.iema-parent-portal-page .iema-parent-mobile-more-menu{
    position:absolute!important;
    right:0!important;
    top:calc(100% + 7px)!important;
    width:min(250px,calc(100vw - 18px))!important;
    display:grid!important;
    gap:5px!important;
    padding:7px!important;
    border:1px solid #283545!important;
    border-radius:12px!important;
    background:#0c121a!important;
    box-shadow:0 18px 48px rgba(0,0,0,.5)!important;
  }
  body.iema-parent-portal-page .iema-parent-mobile-more-menu a{
    display:flex!important;
    align-items:center!important;
    min-height:40px!important;
    padding:8px 11px!important;
    border-radius:9px!important;
    color:#d6e0ea!important;
    text-decoration:none!important;
    font-size:12px!important;
    font-weight:800!important;
  }
  body.iema-parent-portal-page .iema-parent-mobile-more-menu a.active{
    background:rgba(32,183,255,.15)!important;
    color:#72d5ff!important;
  }
  body.iema-parent-portal-page .iema-parent-mobile-more-menu a:hover{
    background:#15202c!important;
    color:#fff!important;
  }
}

@media(max-width:380px){
  body.iema-parent-portal-page .iema-parent-mobile-nav>a,
  body.iema-parent-portal-page .iema-parent-mobile-more>summary{
    font-size:10px!important;
    padding-left:3px!important;
    padding-right:3px!important;
  }
}


/* =========================================================
   v0.14.69 — Parent iPhone status/safe-area masthead paint
   The iOS top strip is controlled by the root canvas + PWA status metadata,
   not only by the visible header element.
   ========================================================= */
@media(max-width:760px){
  html.iema-parent-root,
  html.iema-parent-root body,
  html.iema-parent-root body.iema-plugin-app-document{
    background:#0d1420!important;
  }

  html.iema-parent-root body.iema-plugin-app-document>.iema-plugin-app-main{
    background:#0d1420!important;
    min-height:100vh!important;
  }

  /* Paint a fixed masthead-color layer behind the iPhone safe area. */
  html.iema-parent-root body.iema-plugin-app-document::before{
    content:""!important;
    position:fixed!important;
    z-index:0!important;
    top:0!important;
    left:0!important;
    right:0!important;
    height:calc(env(safe-area-inset-top) + 72px)!important;
    background:#0d1420!important;
    pointer-events:none!important;
  }

  html.iema-parent-root body.iema-plugin-app-document>.iema-plugin-app-main{
    position:relative!important;
    z-index:1!important;
  }

  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar{
    background:#0d1420!important;
  }
}


/* =========================================================
   v0.14.70 — Parent iPhone safe-area actual canvas correction
   The main portal canvas itself must be masthead-colored behind the status area.
   ========================================================= */
@media(max-width:760px){
  html.iema-parent-root,
  html.iema-parent-root body.iema-plugin-app-document{
    background:#0d1420!important;
  }

  html.iema-parent-root body.iema-plugin-app-document>.iema-plugin-app-main{
    position:relative!important;
    z-index:auto!important;
    min-height:100vh!important;
    background:#0d1420!important;
    background-image:none!important;
  }

  /* The previous helper layer is no longer needed; the actual canvas now carries the color. */
  html.iema-parent-root body.iema-plugin-app-document::before{
    display:none!important;
    content:none!important;
  }

  body.iema-parent-portal-page .iema-parent-shell-topnav{
    background:transparent!important;
  }

  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar{
    background:#0d1420!important;
  }
}


/* =========================================================
   v0.14.72 — Parent home dancer cards collapsed by default
   Full profile continues to use the existing Parent profile modal.
   ========================================================= */
body.iema-parent-portal-page .iema-dancers-complete-grid{
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;
  gap:14px!important;
}

body.iema-parent-portal-page .iema-parent-dancer-collapsed{
  padding:0!important;
  min-width:0!important;
  overflow:hidden!important;
  border-radius:18px!important;
}

/* Hide the full inline card content on the Parent home page.
   The same dancer information remains available in the existing profile modal. */
body.iema-parent-portal-page .iema-parent-dancer-collapsed>.iema-dancer-card-section,
body.iema-parent-portal-page .iema-parent-dancer-collapsed>.iema-dancer-card-actions{
  display:none!important;
}

body.iema-parent-portal-page .iema-parent-dancer-summary{
  appearance:none!important;
  width:100%!important;
  min-height:108px!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:13px!important;
  padding:14px!important;
  border:0!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#0c121c 0%,#080d14 100%)!important;
  color:#f5f8ff!important;
  text-align:left!important;
  cursor:pointer!important;
}

body.iema-parent-portal-page .iema-parent-dancer-summary:hover,
body.iema-parent-portal-page .iema-parent-dancer-summary:focus-visible{
  outline:none!important;
  background:linear-gradient(180deg,#111a27 0%,#0a1119 100%)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--md2-blue) 65%,#263444)!important;
}

body.iema-parent-portal-page .iema-parent-dancer-summary .iema-dancers-complete-avatar{
  width:72px!important;
  height:72px!important;
  min-width:72px!important;
  display:block!important;
  overflow:hidden!important;
  border-radius:50%!important;
  background:#111923!important;
}

body.iema-parent-portal-page .iema-parent-dancer-summary .iema-dancers-complete-avatar img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

body.iema-parent-portal-page .iema-parent-dancer-summary-copy{
  min-width:0!important;
  display:grid!important;
  gap:5px!important;
}

body.iema-parent-portal-page .iema-parent-dancer-summary-copy strong{
  color:#fff!important;
  font-size:18px!important;
  font-weight:900!important;
  line-height:1.08!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

body.iema-parent-portal-page .iema-parent-dancer-summary-copy small{
  color:#9aa9ba!important;
  font-size:12px!important;
  font-weight:750!important;
}

body.iema-parent-portal-page .iema-parent-dancer-summary-action{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  color:#73d3ff!important;
  font-size:10px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}

body.iema-parent-portal-page .iema-parent-dancer-summary-action b{
  font-size:21px!important;
  font-weight:700!important;
  line-height:1!important;
}

@media(max-width:620px){
  body.iema-parent-portal-page .iema-dancers-complete-grid{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  body.iema-parent-portal-page .iema-parent-dancer-summary{
    min-height:88px!important;
    grid-template-columns:58px minmax(0,1fr) 24px!important;
    gap:11px!important;
    padding:11px 12px!important;
    border-radius:14px!important;
  }

  body.iema-parent-portal-page .iema-parent-dancer-summary .iema-dancers-complete-avatar{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
  }

  body.iema-parent-portal-page .iema-parent-dancer-summary-copy strong{
    font-size:16px!important;
  }

  body.iema-parent-portal-page .iema-parent-dancer-summary-action{
    font-size:0!important;
    justify-content:flex-end!important;
  }

  body.iema-parent-portal-page .iema-parent-dancer-summary-action b{
    font-size:22px!important;
  }
}


/* v0.14.75 Masthead live-season metadata */
.iema-live-season-meta{
  display:inline-block;
  margin-left:5px;
  color:#7f8b99;
  font-size:.82em;
  font-weight:800;
  letter-spacing:.02em;
  white-space:nowrap;
}
@media(max-width:760px){
  .iema-shell-brand .iema-account-label{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:3px!important;
  }
  .iema-shell-brand .iema-live-season-meta{
    margin-left:1px!important;
    color:#7f8b99!important;
    font-size:8.5px!important;
    font-weight:800!important;
    letter-spacing:.01em!important;
  }
}


/* v0.14.76 notification preference state */
.iema-push-menu-button.is-on{font-weight:850!important}
.iema-push-menu-button.is-blocked{opacity:.72!important}


/* =========================================================
   v0.14.77 — Notification permission prompt
   ========================================================= */
.iema-push-permission-prompt[hidden]{display:none!important}
.iema-push-permission-prompt{
  position:fixed!important;
  inset:0!important;
  z-index:100500!important;
  display:grid!important;
  place-items:center!important;
  padding:20px!important;
  box-sizing:border-box!important;
}
.iema-push-permission-backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(0,0,0,.72)!important;
  backdrop-filter:blur(8px)!important;
}
.iema-push-permission-dialog{
  position:relative!important;
  z-index:1!important;
  width:min(460px,calc(100vw - 30px))!important;
  box-sizing:border-box!important;
  padding:24px!important;
  border:1px solid #2c3949!important;
  border-radius:20px!important;
  background:#0c131d!important;
  color:#fff!important;
  box-shadow:0 24px 80px rgba(0,0,0,.55)!important;
}
.iema-push-permission-dialog h2{
  margin:7px 0 8px!important;
  color:#fff!important;
  font-size:25px!important;
}
.iema-push-permission-dialog p{
  margin:0!important;
  color:#b7c2ce!important;
  line-height:1.5!important;
}
.iema-push-permission-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin-top:20px!important;
}
.iema-push-permission-actions .iema-btn{
  flex:1 1 170px!important;
}
.iema-push-permission-dialog>small{
  display:block!important;
  margin-top:12px!important;
  min-height:18px!important;
  color:#9ba9b7!important;
}
.iema-push-permission-close{
  position:absolute!important;
  top:10px!important;
  right:10px!important;
  width:38px!important;
  height:38px!important;
  border:1px solid #2b3948!important;
  border-radius:10px!important;
  background:#111a25!important;
  color:#fff!important;
  font-size:24px!important;
  cursor:pointer!important;
}
body.iema-push-prompt-open{overflow:hidden!important}
@media(max-width:560px){
  .iema-push-permission-prompt{
    align-items:end!important;
    padding:0!important;
  }
  .iema-push-permission-dialog{
    width:100%!important;
    border-left:0!important;
    border-right:0!important;
    border-bottom:0!important;
    border-radius:20px 20px 0 0!important;
    padding:22px 18px calc(20px + env(safe-area-inset-bottom))!important;
  }
  .iema-push-permission-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
}

/* v0.14.80 Parent masthead logo/avatar prominence */
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar{align-items:center!important}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand{min-width:0!important;display:flex!important;align-items:center!important;gap:12px!important}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand img,
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-studio-logo{width:auto!important;height:54px!important;max-width:170px!important;object-fit:contain!important;flex:0 0 auto!important}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user img{width:46px!important;height:46px!important;min-width:46px!important;object-fit:cover!important;border-radius:50%!important}
body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user{align-items:center!important;gap:9px!important}
@media(max-width:760px){
 body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand{gap:9px!important}
 body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand img,
 body.iema-parent-portal-page .iema-parent-shell-topnav .iema-studio-logo{height:48px!important;max-width:145px!important}
 body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user img{width:42px!important;height:42px!important;min-width:42px!important}
}
@media(max-width:420px){
 body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand img,
 body.iema-parent-portal-page .iema-parent-shell-topnav .iema-studio-logo{height:44px!important;max-width:128px!important}
 body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user img{width:40px!important;height:40px!important;min-width:40px!important}
}


/* =========================================================
   v0.14.81 — Parent iPhone safe-area correction + larger logo
   Preserve proven safe-area spacing; enlarge branding inside it.
   ========================================================= */
@media(max-width:760px){
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar{
    padding-top:calc(env(safe-area-inset-top) + 14px)!important;
    padding-bottom:12px!important;
    min-height:auto!important;
    align-items:center!important;
  }

  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand{
    min-height:64px!important;
    gap:10px!important;
    align-items:center!important;
  }

  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand img,
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-studio-logo{
    height:64px!important;
    width:auto!important;
    max-width:190px!important;
    object-fit:contain!important;
    object-position:left center!important;
    flex:0 0 auto!important;
  }

  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user img{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
  }
}

@media(max-width:420px){
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-app-topbar{
    padding-top:calc(env(safe-area-inset-top) + 13px)!important;
    padding-bottom:11px!important;
  }

  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand{
    min-height:58px!important;
  }

  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-shell-brand img,
  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-studio-logo{
    height:58px!important;
    max-width:170px!important;
  }

  body.iema-parent-portal-page .iema-parent-shell-topnav .iema-portal-user img{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
  }
}


/* =========================================================
   v0.14.82 — Parent mobile full-width content + Today schedule
   ========================================================= */
.iema-parent-today{
  margin:18px 0 22px;
  padding:20px;
  border:1px solid #dce3ea;
  border-radius:18px;
  background:#fff;
}
.iema-parent-today-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
.iema-parent-today-head h2{
  margin:4px 0 3px;
}
.iema-parent-today-head p{
  margin:0;
  color:#697684;
}
.iema-parent-today-dancers{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:12px;
}
.iema-parent-today-dancer{
  border:1px solid #e1e6ec;
  border-radius:15px;
  background:#f8fafc;
  overflow:hidden;
}
.iema-parent-today-dancer>header{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-bottom:1px solid #e4e9ee;
  background:#fff;
}
.iema-parent-today-dancer>header>span:last-child{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.iema-parent-today-dancer>header strong{
  color:#13202d;
  font-size:15px;
}
.iema-parent-today-dancer>header small{
  margin-top:2px;
  color:#74808d;
  font-size:12px;
}
.iema-parent-today-avatar,
.iema-parent-today-avatar img{
  display:block;
  width:42px;
  height:42px;
  min-width:42px;
  border-radius:50%;
  object-fit:cover;
}
.iema-parent-today-list{
  padding:4px 0;
}
.iema-parent-today-item{
  display:grid;
  grid-template-columns:78px minmax(0,1fr);
  gap:10px;
  padding:10px 14px;
  border-bottom:1px solid #e7ebef;
}
.iema-parent-today-item:last-child{border-bottom:0}
.iema-parent-today-item time{
  display:flex;
  flex-direction:column;
  color:#172331;
}
.iema-parent-today-item time b{font-size:13px}
.iema-parent-today-item time small{
  margin-top:2px;
  color:#7a8793;
  font-size:11px;
}
.iema-parent-today-item>span{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.iema-parent-today-item>span strong{
  color:#172331;
  font-size:14px;
  line-height:1.3;
}
.iema-parent-today-item>span small{
  margin-top:2px;
  color:#697684;
  font-size:12px;
}
.iema-parent-today-item>span em{
  margin-top:4px;
  color:#7b8792;
  font-size:11px;
  font-style:normal;
}
.iema-parent-today-empty{
  padding:16px 14px;
  color:#6f7c88;
  font-size:13px;
}
.iema-parent-today-availability{
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:9px 14px;
  border-top:1px solid #e5e9ed;
  color:#7d6754;
  font-size:11px;
}
.iema-parent-today-availability strong{
  font-weight:700;
  text-align:right;
}

/* Mobile: use nearly the full device width. Keep only a deliberate 12px gutter. */
@media(max-width:760px){
  body.iema-parent-portal-page .iema-parent-content{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
    padding-left:12px!important;
    padding-right:12px!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  body.iema-parent-portal-page .iema-parent-content>.iema-panel,
  body.iema-parent-portal-page .iema-parent-content>.iema-parent-hero,
  body.iema-parent-portal-page .iema-parent-content>.iema-parent-today,
  body.iema-parent-portal-page .iema-parent-content>.iema-parent-dancers-view,
  body.iema-parent-portal-page .iema-parent-content>.iema-parent-workspace,
  body.iema-parent-portal-page .iema-parent-content>.iema-parent-calendar-page{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  body.iema-parent-portal-page .iema-dancers-profile-grid,
  body.iema-parent-portal-page .iema-dancers-complete-grid{
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    gap:10px!important;
  }

  body.iema-parent-portal-page .iema-dancers-complete-card,
  body.iema-parent-portal-page .iema-parent-dancer-collapsed{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  .iema-parent-today{
    padding:14px!important;
    border-radius:16px!important;
  }
  .iema-parent-today-head{
    align-items:stretch!important;
    margin-bottom:12px!important;
  }
  .iema-parent-today-head .iema-btn{
    align-self:center!important;
    white-space:nowrap!important;
  }
  .iema-parent-today-dancers{
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    gap:10px!important;
  }
  .iema-parent-today-dancer{
    width:100%!important;
    box-sizing:border-box!important;
  }
}

@media(max-width:420px){
  body.iema-parent-portal-page .iema-parent-content{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .iema-parent-today-head{
    display:block!important;
  }
  .iema-parent-today-head .iema-btn{
    display:inline-flex!important;
    margin-top:10px!important;
  }
  .iema-parent-today-item{
    grid-template-columns:70px minmax(0,1fr)!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
}


/* =========================================================
   v0.14.84 — Parent Today card visual alignment
   Match existing MyDancer Parent Portal dark UI language.
   ========================================================= */
body.iema-parent-portal-page .iema-parent-today{
  border:1px solid #3c424a!important;
  background:#34383d!important;
  box-shadow:none!important;
}

body.iema-parent-portal-page .iema-parent-today-head h2{
  color:#f3f5f7!important;
}

body.iema-parent-portal-page .iema-parent-today-head p{
  color:#aeb6bf!important;
}

body.iema-parent-portal-page .iema-parent-today .iema-kicker{
  color:#8f9aa6!important;
}

body.iema-parent-portal-page .iema-parent-today-dancer{
  border:1px solid #454b53!important;
  background:#2f3338!important;
}

body.iema-parent-portal-page .iema-parent-today-dancer>header{
  border-bottom:1px solid #454b53!important;
  background:#383d43!important;
}

body.iema-parent-portal-page .iema-parent-today-dancer>header strong{
  color:#f5f6f8!important;
}

body.iema-parent-portal-page .iema-parent-today-dancer>header small{
  color:#aab3bc!important;
}

body.iema-parent-portal-page .iema-parent-today-list{
  background:#2f3338!important;
}

body.iema-parent-portal-page .iema-parent-today-item{
  border-bottom:1px solid #424850!important;
}

body.iema-parent-portal-page .iema-parent-today-item time{
  color:#eef1f4!important;
}

body.iema-parent-portal-page .iema-parent-today-item time small{
  color:#929da8!important;
}

body.iema-parent-portal-page .iema-parent-today-item>span strong{
  color:#f2f4f6!important;
}

body.iema-parent-portal-page .iema-parent-today-item>span small{
  color:#aeb6bf!important;
}

body.iema-parent-portal-page .iema-parent-today-item>span em{
  color:#919ca7!important;
}

body.iema-parent-portal-page .iema-parent-today-empty{
  color:#aeb6bf!important;
}

body.iema-parent-portal-page .iema-parent-today-availability{
  border-top:1px solid #454b53!important;
  background:#35393e!important;
  color:#c7a982!important;
}

body.iema-parent-portal-page .iema-parent-today-availability strong{
  color:#ded5c8!important;
}

body.iema-parent-portal-page .iema-parent-today-avatar img{
  border:2px solid #535b64!important;
  background:#25292d!important;
}

body.iema-parent-portal-page .iema-parent-today .iema-btn-secondary{
  border-color:#555d66!important;
  background:#2c3035!important;
  color:#edf0f3!important;
}

body.iema-parent-portal-page .iema-parent-today .iema-btn-secondary:hover{
  background:#393e44!important;
}


/* =========================================================
   v0.14.85 — Parent Today exact MyDancer card palette
   Use the same surfaces as the existing dancer profile cards.
   ========================================================= */
body.iema-parent-portal-page .iema-parent-today{
  background:linear-gradient(180deg,#0b1018 0%,#070b11 100%)!important;
  border:1px solid #1f2b39!important;
  border-radius:22px!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28)!important;
  color:#f5f8ff!important;
}

body.iema-parent-portal-page .iema-parent-today-head h2{
  color:#fff!important;
}

body.iema-parent-portal-page .iema-parent-today-head p{
  color:#9eabc0!important;
}

body.iema-parent-portal-page .iema-parent-today .iema-kicker{
  color:#7f90a5!important;
}

body.iema-parent-portal-page .iema-parent-today-dancer{
  background:linear-gradient(180deg,#0c121c 0%,#080d14 100%)!important;
  border:1px solid #202c3a!important;
  border-radius:18px!important;
  color:#f5f8ff!important;
}

body.iema-parent-portal-page .iema-parent-today-dancer>header{
  background:linear-gradient(180deg,#111925 0%,#0c121c 100%)!important;
  border-bottom:1px solid #202c3a!important;
}

body.iema-parent-portal-page .iema-parent-today-dancer>header strong,
body.iema-parent-portal-page .iema-parent-today-item>span strong,
body.iema-parent-portal-page .iema-parent-today-item time{
  color:#fff!important;
}

body.iema-parent-portal-page .iema-parent-today-dancer>header small,
body.iema-parent-portal-page .iema-parent-today-item>span small,
body.iema-parent-portal-page .iema-parent-today-item time small,
body.iema-parent-portal-page .iema-parent-today-empty{
  color:#9eabc0!important;
}

body.iema-parent-portal-page .iema-parent-today-list{
  background:transparent!important;
}

body.iema-parent-portal-page .iema-parent-today-item{
  border-bottom:1px solid #202c3a!important;
}

body.iema-parent-portal-page .iema-parent-today-item>span em{
  color:#8493a7!important;
}

body.iema-parent-portal-page .iema-parent-today-avatar img{
  border:1px solid #34516e!important;
  background:#111923!important;
  box-shadow:0 8px 18px rgba(0,0,0,.28)!important;
}

body.iema-parent-portal-page .iema-parent-today-availability{
  background:#0c121c!important;
  border-top:1px solid #202c3a!important;
  color:#aab7c8!important;
}

body.iema-parent-portal-page .iema-parent-today-availability strong{
  color:#d9e2ec!important;
}

body.iema-parent-portal-page .iema-parent-today .iema-btn-secondary{
  background:#111925!important;
  border-color:#26384b!important;
  color:#eaf1f8!important;
}

body.iema-parent-portal-page .iema-parent-today .iema-btn-secondary:hover,
body.iema-parent-portal-page .iema-parent-today .iema-btn-secondary:focus-visible{
  background:#162131!important;
  border-color:#34516e!important;
}

/* Avatar menu: always show an explicit push status. */
.iema-portal-user nav .iema-push-menu-button.is-off{
  color:inherit!important;
}
.iema-portal-user nav .iema-push-menu-button.is-on::before,
.iema-portal-user nav .iema-push-menu-button.is-off::before,
.iema-portal-user nav .iema-push-menu-button.is-blocked::before{
  content:'';
  display:inline-block;
  width:7px;
  height:7px;
  margin-right:8px;
  border-radius:50%;
  vertical-align:1px;
  background:currentColor;
}
.iema-portal-user nav .iema-push-menu-button.is-blocked{
  color:#a6adb6!important;
}


/* =========================================================
   v0.14.94 — Wall audience selector mobile alignment
   Keep every checkbox visually attached to its audience label.
   ========================================================= */
@media(max-width:760px){
  body.iema-owner-portal-page .iema-communications-audience,
  body.iema-owner-portal-page .iema-audience-options,
  body.iema-owner-portal-page .iema-communication-audience-grid,
  body.iema-owner-portal-page [data-communication-audience],
  body.iema-owner-portal-page [data-audience-options]{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
    width:100%!important;
  }

  body.iema-owner-portal-page .iema-communications-audience label,
  body.iema-owner-portal-page .iema-audience-options label,
  body.iema-owner-portal-page .iema-communication-audience-grid label,
  body.iema-owner-portal-page [data-communication-audience] label,
  body.iema-owner-portal-page [data-audience-options] label{
    display:grid!important;
    grid-template-columns:22px minmax(0,1fr)!important;
    align-items:center!important;
    column-gap:10px!important;
    row-gap:2px!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:10px 12px!important;
    box-sizing:border-box!important;
    border-radius:10px!important;
  }

  body.iema-owner-portal-page .iema-communications-audience label input[type="checkbox"],
  body.iema-owner-portal-page .iema-audience-options label input[type="checkbox"],
  body.iema-owner-portal-page .iema-communication-audience-grid label input[type="checkbox"],
  body.iema-owner-portal-page [data-communication-audience] label input[type="checkbox"],
  body.iema-owner-portal-page [data-audience-options] label input[type="checkbox"]{
    grid-column:1!important;
    grid-row:1!important;
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    margin:0!important;
    align-self:center!important;
    justify-self:center!important;
  }

  body.iema-owner-portal-page .iema-communications-audience label span,
  body.iema-owner-portal-page .iema-audience-options label span,
  body.iema-owner-portal-page .iema-communication-audience-grid label span,
  body.iema-owner-portal-page [data-communication-audience] label span,
  body.iema-owner-portal-page [data-audience-options] label span{
    grid-column:2!important;
    min-width:0!important;
    margin:0!important;
    line-height:1.25!important;
    text-align:left!important;
    overflow-wrap:anywhere!important;
  }

  body.iema-owner-portal-page .iema-communications-audience label small,
  body.iema-owner-portal-page .iema-audience-options label small,
  body.iema-owner-portal-page .iema-communication-audience-grid label small,
  body.iema-owner-portal-page [data-communication-audience] label small,
  body.iema-owner-portal-page [data-audience-options] label small{
    grid-column:2!important;
    margin:0!important;
    text-align:left!important;
  }
}

/* Generic fallback for Communication forms that use plain inline checkbox labels. */
@media(max-width:760px){
  body.iema-owner-portal-page form .iema-check-row,
  body.iema-owner-portal-page form .iema-checkbox-row{
    display:flex!important;
    align-items:flex-start!important;
    gap:10px!important;
    width:100%!important;
  }

  body.iema-owner-portal-page form .iema-check-row input[type="checkbox"],
  body.iema-owner-portal-page form .iema-checkbox-row input[type="checkbox"]{
    flex:0 0 18px!important;
    width:18px!important;
    height:18px!important;
    margin:2px 0 0!important;
  }
}


/* =========================================================
   v0.14.95 — Communications audience picker redesign
   Actual component markup + high-clarity mobile selection rows.
   ========================================================= */
.iema-audience-picker{
  width:100%;
}
.iema-audience-quick{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  width:100%;
}
.iema-audience-choice{
  position:relative;
  display:grid!important;
  grid-template-columns:20px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  min-height:48px;
  margin:0!important;
  padding:10px 12px!important;
  box-sizing:border-box;
  border:1px solid #293748;
  border-radius:12px;
  background:#0c121c;
  color:#eaf0f7;
  cursor:pointer;
  user-select:none;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
.iema-audience-choice:hover{
  border-color:#3b526b;
  background:#101925;
}
.iema-audience-choice input[type="checkbox"]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.iema-audience-check{
  position:relative;
  display:block!important;
  width:18px!important;
  height:18px!important;
  margin:0!important;
  border:1.5px solid #718197;
  border-radius:5px;
  background:#070b11;
  box-sizing:border-box;
}
.iema-audience-choice-label{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  color:#eef3f8!important;
  font-size:13px!important;
  font-weight:750!important;
  line-height:1.2!important;
  text-align:left!important;
}
.iema-audience-choice input:checked + .iema-audience-check{
  border-color:var(--studio-accent,#20b7ff);
  background:var(--studio-accent,#20b7ff);
}
.iema-audience-choice input:checked + .iema-audience-check::after{
  content:'';
  position:absolute;
  left:5px;
  top:2px;
  width:5px;
  height:9px;
  border:solid #fff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}
.iema-audience-choice:has(input:checked){
  border-color:color-mix(in srgb,var(--studio-accent,#20b7ff) 70%,#365069);
  background:color-mix(in srgb,var(--studio-accent,#20b7ff) 11%,#0c121c);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--studio-accent,#20b7ff) 18%,transparent);
}
.iema-audience-choice input:focus-visible + .iema-audience-check{
  outline:2px solid var(--studio-accent,#20b7ff);
  outline-offset:3px;
}
.iema-audience-targeted{
  margin-top:12px;
}
.iema-audience-targeted>summary{
  cursor:pointer;
}

@media(max-width:760px){
  body.iema-owner-portal-page .iema-audience-head{
    margin-bottom:10px!important;
  }

  body.iema-owner-portal-page .iema-audience-head strong{
    display:block!important;
    font-size:15px!important;
    line-height:1.2!important;
  }

  body.iema-owner-portal-page .iema-audience-head span{
    display:block!important;
    margin-top:3px!important;
    font-size:11px!important;
    line-height:1.3!important;
  }

  body.iema-owner-portal-page .iema-audience-picker .iema-audience-quick{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:7px!important;
    width:100%!important;
  }

  body.iema-owner-portal-page .iema-audience-picker .iema-audience-choice{
    display:grid!important;
    grid-template-columns:22px minmax(0,1fr)!important;
    align-items:center!important;
    gap:11px!important;
    width:100%!important;
    min-height:50px!important;
    padding:11px 13px!important;
    border-radius:12px!important;
  }

  body.iema-owner-portal-page .iema-audience-picker .iema-audience-choice-label{
    white-space:normal!important;
    overflow:visible!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    font-size:14px!important;
    line-height:1.2!important;
  }

  body.iema-owner-portal-page .iema-audience-picker .iema-audience-check{
    width:20px!important;
    height:20px!important;
  }

  body.iema-owner-portal-page .iema-audience-picker .iema-audience-choice input:checked + .iema-audience-check::after{
    left:6px!important;
    top:3px!important;
  }

  body.iema-owner-portal-page .iema-audience-targeted{
    margin-top:10px!important;
    border-top:1px solid #263342;
    padding-top:10px;
  }
}


/* =========================================================
   v0.14.97 — Wall Document Library browser
   ========================================================= */
.iema-wall-doc-picker{
  border:1px solid #263545;
  border-radius:16px;
  background:#0a1018;
  overflow:hidden;
}
.iema-wall-doc-picker-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 15px;
  background:#0d1520;
}
.iema-wall-doc-picker-head>div{
  min-width:0;
}
.iema-wall-doc-picker-head strong{
  display:block;
  color:#f3f7fb;
  font-size:14px;
}
.iema-wall-doc-picker-head span{
  display:block;
  margin-top:3px;
  color:#8f9eaf;
  font-size:11px;
  line-height:1.35;
}
.iema-wall-doc-selected{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  min-height:42px;
  padding:10px 14px;
  border-top:1px solid #1e2a37;
  background:#080d13;
}
.iema-wall-doc-selected-empty{
  align-self:center;
  color:#758497;
  font-size:12px;
}
.iema-wall-doc-selected-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  max-width:100%;
  margin:0;
  padding:7px 9px 7px 10px;
  border:1px solid #34516c;
  border-radius:999px;
  background:#101c29;
  color:#e8f1f9;
  font:inherit;
  cursor:pointer;
}
.iema-wall-doc-selected-chip span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:11px;
  font-weight:700;
}
.iema-wall-doc-selected-chip b{
  font-size:15px;
  line-height:1;
  color:#9fb2c6;
}
.iema-wall-doc-browser{
  border-top:1px solid #263545;
  background:#0b1119;
}
.iema-wall-doc-search{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-bottom:1px solid #1f2c3a;
}
.iema-wall-doc-search input{
  flex:1 1 auto;
  min-width:0;
  margin:0!important;
}
.iema-wall-doc-search span{
  flex:0 0 auto;
  color:#8291a3;
  font-size:11px;
}
.iema-wall-doc-results{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  max-height:340px;
  padding:10px;
  overflow:auto;
  overscroll-behavior:contain;
}
.iema-wall-doc-option{
  position:relative;
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr) 22px!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:11px!important;
  box-sizing:border-box!important;
  border:1px solid #263545;
  border-radius:12px;
  background:#0e1621;
  cursor:pointer;
}
.iema-wall-doc-option:hover{
  border-color:#3a5068;
  background:#111c29;
}
.iema-wall-doc-option.is-selected{
  border-color:var(--studio-accent,#20b7ff);
  background:color-mix(in srgb,var(--studio-accent,#20b7ff) 10%,#0e1621);
}
.iema-wall-doc-option input{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.iema-wall-doc-option-icon{
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border:1px solid #2e4052;
  border-radius:9px;
  background:#0a111a;
  color:#a9bdd0;
  font-size:17px;
}
.iema-wall-doc-option-copy{
  display:block!important;
  min-width:0!important;
}
.iema-wall-doc-option-copy strong{
  display:block;
  color:#f2f6fa;
  font-size:12px;
  line-height:1.25;
}
.iema-wall-doc-option-copy>span{
  display:block!important;
  margin-top:2px!important;
  color:#8393a5!important;
  font-size:10px!important;
  line-height:1.25!important;
}
.iema-wall-doc-option-copy small{
  display:block!important;
  margin-top:4px!important;
  color:#a0adba!important;
  font-size:10px!important;
  line-height:1.3!important;
}
.iema-wall-doc-option-copy em{
  display:block!important;
  margin-top:5px!important;
  color:#6f8397!important;
  font-size:9px!important;
  font-style:normal!important;
  line-height:1.25!important;
}
.iema-wall-doc-option-check{
  position:relative;
  display:block!important;
  width:20px;
  height:20px;
  border:1.5px solid #607387;
  border-radius:50%;
  background:#080d13;
}
.iema-wall-doc-option.is-selected .iema-wall-doc-option-check{
  border-color:var(--studio-accent,#20b7ff);
  background:var(--studio-accent,#20b7ff);
}
.iema-wall-doc-option.is-selected .iema-wall-doc-option-check::after{
  content:'';
  position:absolute;
  left:6px;
  top:3px;
  width:5px;
  height:9px;
  border:solid #fff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}
.iema-wall-doc-browser-foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:11px 14px;
  border-top:1px solid #1f2c3a;
}
.iema-wall-doc-browser-foot span{
  color:#7f8e9f;
  font-size:10px;
}

@media(max-width:760px){
  body.iema-owner-portal-page .iema-wall-doc-picker-head{
    display:block!important;
    padding:13px!important;
  }
  body.iema-owner-portal-page .iema-wall-doc-picker-head .iema-btn{
    width:100%!important;
    margin-top:10px!important;
    justify-content:center!important;
  }
  body.iema-owner-portal-page .iema-wall-doc-results{
    grid-template-columns:minmax(0,1fr)!important;
    max-height:52vh!important;
    padding:8px!important;
  }
  body.iema-owner-portal-page .iema-wall-doc-option{
    grid-template-columns:38px minmax(0,1fr) 22px!important;
    min-height:72px!important;
    padding:11px!important;
  }
  body.iema-owner-portal-page .iema-wall-doc-search{
    display:block!important;
    padding:10px!important;
  }
  body.iema-owner-portal-page .iema-wall-doc-search span{
    display:block!important;
    margin-top:6px!important;
  }
  body.iema-owner-portal-page .iema-wall-doc-browser-foot{
    display:block!important;
    padding:10px!important;
  }
  body.iema-owner-portal-page .iema-wall-doc-browser-foot .iema-btn{
    width:100%!important;
    margin-top:8px!important;
    justify-content:center!important;
  }
}


/* =========================================================
   v0.14.100 — Mobile/PWA in-app Wall document viewer
   ========================================================= */
.iema-mobile-doc-viewer[hidden]{
  display:none!important;
}
.iema-mobile-doc-viewer{
  position:fixed;
  inset:0;
  z-index:2147483000;
  background:#070b11;
}
.iema-mobile-doc-viewer-shell{
  display:flex;
  flex-direction:column;
  width:100%;
  height:100%;
  height:100dvh;
  background:#070b11;
}
.iema-mobile-doc-viewer-head{
  flex:0 0 auto;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  min-height:58px;
  padding:
    calc(env(safe-area-inset-top) + 8px)
    calc(env(safe-area-inset-right) + 10px)
    8px
    calc(env(safe-area-inset-left) + 10px);
  box-sizing:border-box;
  border-bottom:1px solid #243242;
  background:#0c131d;
  box-shadow:0 8px 22px rgba(0,0,0,.28);
}
.iema-mobile-doc-viewer-head>strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#f3f7fb;
  font-size:13px;
  text-align:center;
}
.iema-mobile-doc-close,
.iema-mobile-doc-external{
  min-height:38px;
  margin:0;
  padding:7px 10px;
  border:1px solid #31445a;
  border-radius:10px;
  background:#111b27;
  color:#edf4fa;
  font:inherit;
  font-size:12px;
  font-weight:750;
  cursor:pointer;
}
.iema-mobile-doc-close{
  display:inline-flex;
  align-items:center;
  gap:4px;
  font-size:21px;
  line-height:1;
}
.iema-mobile-doc-close span{
  font-size:11px;
  line-height:1;
}
.iema-mobile-doc-viewer-body{
  position:relative;
  flex:1 1 auto;
  min-height:0;
  padding-bottom:env(safe-area-inset-bottom);
  background:#15191f;
}
.iema-mobile-doc-viewer-body iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
  background:#fff;
}
.iema-mobile-doc-fallback{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  height:100%;
  min-height:0;
  padding:28px 22px calc(env(safe-area-inset-bottom) + 28px);
  box-sizing:border-box;
  text-align:center;
  background:linear-gradient(180deg,#0e1621 0%,#080d13 100%);
}
.iema-mobile-doc-fallback[hidden]{
  display:none!important;
}
.iema-mobile-doc-file-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:64px;
  height:64px;
  margin-bottom:16px;
  border:1px solid #32465c;
  border-radius:18px;
  background:#121e2b;
  color:#b8cbdd;
  font-size:28px;
}
.iema-mobile-doc-fallback>strong{
  color:#f2f6fa;
  font-size:17px;
}
.iema-mobile-doc-fallback>p{
  max-width:360px;
  margin:8px 0 18px;
  color:#99a8b8;
  font-size:12px;
  line-height:1.5;
}
.iema-mobile-doc-fallback .iema-btn{
  width:min(100%,320px);
  justify-content:center;
}
@media(min-width:901px) and (pointer:fine){
  .iema-mobile-doc-viewer{
    display:none!important;
  }
}


/* =========================================================
   v0.14.101 — Mobile document initial fit
   ========================================================= */
.iema-mobile-doc-image-wrap{
  width:100%;
  height:100%;
  overflow:auto;
  padding:12px;
  box-sizing:border-box;
  background:#15191f;
  text-align:center;
  -webkit-overflow-scrolling:touch;
}
.iema-mobile-doc-image-wrap[hidden]{
  display:none!important;
}
.iema-mobile-doc-image-wrap img{
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  max-height:100%;
  margin:0 auto;
  object-fit:contain;
  transform:none!important;
}
@media(max-width:760px){
  .iema-mobile-doc-viewer-body iframe{
    width:100%!important;
    height:100%!important;
    transform:none!important;
    zoom:1!important;
  }
}


/* =========================================================
   v0.14.102 — MyDancer-controlled mobile PDF shell zoom
   Native mobile PDF viewers often ignore PDF URL zoom hints.
   ========================================================= */
.iema-mobile-doc-zoombar{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:44px;
  padding:6px 10px;
  box-sizing:border-box;
  border-bottom:1px solid #243242;
  background:#0a1018;
}
.iema-mobile-doc-zoombar[hidden]{
  display:none!important;
}
.iema-mobile-doc-zoombar button{
  min-width:42px;
  min-height:32px;
  margin:0;
  padding:5px 10px;
  border:1px solid #31445a;
  border-radius:9px;
  background:#111b27;
  color:#eef4fa;
  font:inherit;
  font-size:13px;
  font-weight:800;
}
.iema-mobile-doc-zoombar span{
  min-width:48px;
  color:#8fa1b4;
  font-size:10px;
  font-weight:750;
  text-align:center;
}
.iema-mobile-doc-viewer-body{
  overflow:hidden!important;
}
.iema-mobile-doc-viewer-body iframe{
  max-width:none!important;
  max-height:none!important;
  border:0!important;
  transform-origin:top left!important;
}


/* =========================================================
   v0.14.103 — True mobile PDF fit
   Do not inversely widen the iframe; genuinely shrink the native viewer.
   ========================================================= */
.iema-mobile-doc-viewer-body{
  overflow:auto!important;
  -webkit-overflow-scrolling:touch;
}
.iema-mobile-doc-viewer-body iframe{
  display:block!important;
  position:relative!important;
  left:0!important;
  margin-right:0!important;
  background:#fff!important;
}


/* =========================================================
   v0.14.104 — Virtual desktop viewport for native mobile PDF
   Give iOS/Android a wide layout viewport, then scale it to phone width.
   ========================================================= */
.iema-mobile-doc-viewer-body{
  position:relative!important;
  overflow:auto!important;
  background:#15191f!important;
}
.iema-mobile-doc-viewer-body iframe{
  display:block!important;
  min-width:960px!important;
  max-width:none!important;
  border:0!important;
  background:#fff!important;
  transform-origin:top left!important;
}


/* =========================================================
   v0.14.105 — Real mobile PDF rendering
   PDF pages are rendered by MyDancer with PDF.js canvases.
   ========================================================= */
.iema-mobile-pdf-pages{
  width:100%;
  height:100%;
  min-height:0;
  padding:10px;
  box-sizing:border-box;
  overflow:auto;
  background:#171b20;
  -webkit-overflow-scrolling:touch;
}
.iema-mobile-pdf-pages[hidden]{
  display:none!important;
}
.iema-mobile-pdf-page{
  display:flex;
  justify-content:center;
  width:100%;
  margin:0 auto 12px;
}
.iema-mobile-pdf-page canvas{
  display:block;
  max-width:none!important;
  background:#fff;
  box-shadow:0 3px 14px rgba(0,0,0,.3);
}
.iema-mobile-pdf-loading,
.iema-mobile-pdf-error{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:60vh;
  padding:28px 20px;
  box-sizing:border-box;
  color:#edf3f8;
  text-align:center;
}
.iema-mobile-pdf-loading span{
  width:30px;
  height:30px;
  margin-bottom:12px;
  border:3px solid #34465a;
  border-top-color:#eef4fa;
  border-radius:50%;
  animation:iemaPdfSpin .8s linear infinite;
}
.iema-mobile-pdf-error p{
  max-width:340px;
  margin:8px 0 16px;
  color:#9aa9b8;
  font-size:12px;
  line-height:1.45;
}
@keyframes iemaPdfSpin{to{transform:rotate(360deg)}}

/* Retire native mobile PDF iframe sizing from previous attempts. */
.iema-mobile-doc-viewer-body iframe[data-mobile-doc-frame]{
  display:none!important;
}


/* =========================================================
   v0.14.106 — Portal Refresh App splash
   ========================================================= */
html.iema-refreshing,
body.iema-refreshing{
  overflow:hidden!important;
}
.iema-refresh-splash{
  position:fixed;
  inset:0;
  z-index:2147483600;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:
    calc(env(safe-area-inset-top) + 24px)
    calc(env(safe-area-inset-right) + 24px)
    calc(env(safe-area-inset-bottom) + 24px)
    calc(env(safe-area-inset-left) + 24px);
  box-sizing:border-box;
  background:
    radial-gradient(circle at 50% 35%,rgba(55,111,164,.18),transparent 34%),
    linear-gradient(180deg,#0d1420 0%,#080d14 100%);
  opacity:0;
  visibility:hidden;
  transition:opacity .18s ease,visibility .18s ease;
}
.iema-refresh-splash.is-visible{
  opacity:1;
  visibility:visible;
}
.iema-refresh-splash-inner{
  width:min(100%,360px);
  text-align:center;
  color:#f3f7fb;
}
.iema-refresh-mark{
  position:relative;
  width:76px;
  height:76px;
  margin:0 auto 20px;
  border:1px solid #31465c;
  border-radius:22px;
  background:linear-gradient(180deg,#111d2b 0%,#0b121c 100%);
  box-shadow:0 20px 50px rgba(0,0,0,.34);
}
.iema-refresh-mark::before,
.iema-refresh-mark::after,
.iema-refresh-mark span{
  content:'';
  position:absolute;
  inset:13px;
  border:3px solid transparent;
  border-top-color:#eaf3fb;
  border-radius:50%;
  animation:iemaRefreshSpin 1s linear infinite;
}
.iema-refresh-mark::after{
  inset:21px;
  border-width:2px;
  border-top-color:#7f9fbd;
  animation-direction:reverse;
  animation-duration:.8s;
}
.iema-refresh-mark span{
  inset:29px;
  border-width:2px;
  border-top-color:#b9cede;
  animation-duration:.65s;
}
.iema-refresh-brand{
  color:#8ea7bf;
  font-size:11px;
  font-weight:900;
  letter-spacing:.22em;
}
.iema-refresh-splash h2{
  margin:8px 0 6px;
  color:#f6f9fc;
  font-size:24px;
  line-height:1.15;
}
.iema-refresh-splash p{
  margin:0;
  color:#98a8b8;
  font-size:13px;
  line-height:1.45;
}
.iema-refresh-progress{
  position:relative;
  width:min(100%,240px);
  height:4px;
  margin:22px auto 0;
  overflow:hidden;
  border-radius:999px;
  background:#1c2a38;
}
.iema-refresh-progress span{
  position:absolute;
  top:0;
  left:-45%;
  width:45%;
  height:100%;
  border-radius:inherit;
  background:#c6d8e8;
  animation:iemaRefreshProgress 1.05s ease-in-out infinite;
}
@keyframes iemaRefreshSpin{
  to{transform:rotate(360deg)}
}
@keyframes iemaRefreshProgress{
  0%{left:-45%}
  55%{left:38%}
  100%{left:100%}
}
@media(prefers-reduced-motion:reduce){
  .iema-refresh-mark::before,
  .iema-refresh-mark::after,
  .iema-refresh-mark span,
  .iema-refresh-progress span{
    animation-duration:2.4s;
  }
}


/* =========================================================
   v0.14.111 — Random refresh dance jokes
   ========================================================= */
.iema-refresh-joke{
  min-height:18px;
  margin:13px auto 0;
  padding:0 12px;
  color:#7f94a8;
  font-size:11px;
  font-weight:650;
  line-height:1.4;
  letter-spacing:.01em;
  text-align:center;
  opacity:.95;
}
.iema-refresh-joke::before{
  content:'✦';
  display:inline-block;
  margin-right:6px;
  color:#536f88;
  font-size:8px;
  vertical-align:1px;
}


/* =========================================================
   v0.14.112 — Mobile calendar redesign
   Month view scans cleanly; Day View owns the details.
   ========================================================= */
@media(max-width:760px){
  .iema-calendar{
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    padding:10px 8px 12px!important;
    box-sizing:border-box!important;
  }
  .iema-calendar-toolbar{
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr) 46px!important;
    align-items:center!important;
    gap:8px!important;
    padding:0 0 10px!important;
  }
  .iema-calendar-title{
    min-width:0!important;
    text-align:center!important;
    font-size:16px!important;
    font-weight:900!important;
    line-height:1.15!important;
  }
  .iema-calendar-nav{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    margin:0!important;
    border-radius:12px!important;
    display:grid!important;
    place-items:center!important;
    font-size:20px!important;
    line-height:1!important;
  }
  .iema-calendar-today{
    margin:-3px 0 9px!important;
    text-align:center!important;
  }
  .iema-calendar-today a{
    display:inline-flex!important;
    align-items:center!important;
    min-height:32px!important;
    padding:0 12px!important;
    border-radius:999px!important;
    font-size:11px!important;
    font-weight:800!important;
  }
  .iema-calendar-grid,
  .iema-full-calendar-body .iema-calendar-grid,
  .iema-modern-calendar .iema-calendar-grid{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:2px!important;
  }
  .iema-calendar-head b,
  .iema-modern-calendar .iema-calendar-head b{
    min-width:0!important;
    padding:5px 0 6px!important;
    font-size:9px!important;
    font-weight:850!important;
    letter-spacing:.01em!important;
    text-align:center!important;
  }
  .iema-calendar-day,
  .iema-full-calendar-body .iema-calendar-day,
  .iema-modern-calendar .iema-calendar-day{
    position:relative!important;
    min-width:0!important;
    min-height:58px!important;
    height:58px!important;
    padding:5px 3px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    border-radius:8px!important;
    cursor:pointer!important;
    touch-action:manipulation!important;
  }
  .iema-calendar-day>strong,
  .iema-modern-calendar .iema-calendar-day>strong{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:22px!important;
    height:22px!important;
    margin:0 auto!important;
    border-radius:50%!important;
    font-size:10px!important;
    font-weight:900!important;
    line-height:1!important;
  }
  .iema-calendar-day.muted{opacity:.48!important;}
  .iema-calendar-day .iema-calendar-event,
  .iema-modern-calendar .iema-calendar-day .iema-calendar-event,
  .iema-calendar-day>small:not(.iema-mobile-calendar-summary),
  .iema-master-more{
    display:none!important;
  }
  .iema-mobile-calendar-summary{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    width:100%!important;
    margin-top:4px!important;
    pointer-events:none!important;
  }
  .iema-mobile-calendar-dots{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:2px!important;
    height:5px!important;
  }
  .iema-mobile-calendar-dot{
    display:block!important;
    width:5px!important;
    height:5px!important;
    border-radius:999px!important;
    background:var(--studio-accent,var(--iema-accent,#20b7ff))!important;
  }
  .iema-mobile-dot-unavailable{background:#ef6d72!important;}
  .iema-mobile-dot-available{background:#55bd72!important;}
  .iema-mobile-calendar-summary>b{
    display:block!important;
    max-width:100%!important;
    overflow:hidden!important;
    color:inherit!important;
    font-size:7px!important;
    font-weight:800!important;
    line-height:1!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
    opacity:.68!important;
  }
  .iema-full-calendar-bar{
    padding:calc(env(safe-area-inset-top) + 10px) 12px 10px!important;
    gap:10px!important;
  }
  .iema-full-calendar-heading strong{font-size:19px!important;}
  .iema-full-calendar-body{
    padding:8px 6px calc(env(safe-area-inset-bottom) + 12px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  .iema-full-calendar-body .iema-calendar{
    min-height:0!important;
    height:auto!important;
  }
  .iema-day-view-dialog{
    width:calc(100% - 20px)!important;
    max-width:none!important;
    max-height:calc(100dvh - 28px)!important;
    margin:14px 10px!important;
    border-radius:18px!important;
  }
  .iema-day-view-dialog>header{
    position:sticky!important;
    top:0!important;
    z-index:2!important;
    padding:14px!important;
  }
  .iema-day-view-dialog>header h2{font-size:18px!important;}
  .iema-day-view-body{padding:10px!important;}
  .iema-day-view-event{
    display:grid!important;
    grid-template-columns:72px minmax(0,1fr)!important;
    gap:9px!important;
    padding:12px!important;
    border-radius:12px!important;
  }
  .iema-day-view-event .iema-btn{
    grid-column:1/-1!important;
    width:100%!important;
    justify-content:center!important;
  }
  .iema-day-view-time strong{font-size:12px!important;}
  .iema-day-view-copy>strong{font-size:13px!important;line-height:1.25!important;}
}


/* =========================================================
   v0.14.113 — Parent Portal actual mobile calendar runtime
   Explicitly override legacy Parent rules that forced a
   760px desktop calendar inside a horizontally scrolling page.
   ========================================================= */
@media(max-width:760px){

  body.iema-parent-portal-page .iema-parent-calendar-page{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
    overflow-y:visible!important;
    border-radius:16px!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page>.iema-calendar,
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:10px 7px 12px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    border-radius:14px!important;
  }

  body.iema-parent-portal-page .iema-calendar-modal-body{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:8px!important;
    box-sizing:border-box!important;
    overflow-x:hidden!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-grid,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-grid{
    display:grid!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    gap:2px!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-head b,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-head b{
    min-width:0!important;
    width:auto!important;
    padding:6px 0!important;
    font-size:9px!important;
    line-height:1!important;
    text-align:center!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-day,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-day{
    min-width:0!important;
    width:auto!important;
    min-height:60px!important;
    height:60px!important;
    padding:5px 2px!important;
    overflow:hidden!important;
    border-radius:8px!important;
    box-sizing:border-box!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-day>strong,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-day>strong{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:23px!important;
    height:23px!important;
    margin:0 auto!important;
    padding:0!important;
    font-size:10px!important;
    line-height:1!important;
    border-radius:50%!important;
  }

  /* Month view is for scanning on mobile; Day View owns event detail. */
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-event,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-event,
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-master-more,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-master-more,
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-day>small:not(.iema-mobile-calendar-summary),
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-day>small:not(.iema-mobile-calendar-summary){
    display:none!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page .iema-mobile-calendar-summary,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-mobile-calendar-summary{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    width:100%!important;
    margin:4px 0 0!important;
    padding:0!important;
    pointer-events:none!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page .iema-mobile-calendar-dots,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-mobile-calendar-dots{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:2px!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page .iema-mobile-calendar-summary>b,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-mobile-calendar-summary>b{
    display:block!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    font-size:7px!important;
    line-height:1!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-toolbar,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-toolbar{
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr) 46px!important;
    align-items:center!important;
    gap:7px!important;
    width:100%!important;
    padding:0 0 10px!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-nav,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-nav{
    display:grid!important;
    place-items:center!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:0!important;
    border-radius:12px!important;
    font-size:20px!important;
    line-height:1!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-title,
  body.iema-parent-portal-page .iema-calendar-modal-body .iema-calendar-title{
    min-width:0!important;
    font-size:16px!important;
    line-height:1.15!important;
    text-align:center!important;
  }

  /* The page header should not fight for horizontal room on a phone. */
  body.iema-parent-portal-page .iema-parent-calendar-page>.iema-modern-card-head{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:10px!important;
    padding:14px!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page>.iema-modern-card-head>div{
    min-width:0!important;
  }

  body.iema-parent-portal-page .iema-parent-calendar-page>.iema-modern-card-head .iema-btn{
    width:100%!important;
    justify-content:center!important;
  }

  /* Large calendar should actually be a phone-sized sheet. */
  body.iema-parent-portal-page .iema-calendar-modal{
    padding:6px!important;
  }

  body.iema-parent-portal-page .iema-calendar-modal-dialog{
    width:100%!important;
    max-width:100%!important;
    max-height:calc(100dvh - 12px)!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }

  body.iema-parent-portal-page .iema-calendar-modal-dialog>header{
    padding:
      calc(env(safe-area-inset-top) + 10px)
      12px
      10px!important;
  }

  body.iema-parent-portal-page .iema-calendar-modal-dialog>header h2{
    font-size:18px!important;
  }

  body.iema-parent-portal-page .iema-calendar-modal-dialog>footer{
    padding:10px 12px calc(env(safe-area-inset-bottom) + 10px)!important;
  }
}


/* v0.14.115 — environment portability indicator */
.iema-environment-badge{display:inline-flex;align-items:center;margin-left:7px;padding:2px 7px;border:1px solid currentColor;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.08em;line-height:1.4;vertical-align:1px;opacity:.82}

/* MyDancer Messages v1 */
.iema-nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 6px;margin-left:5px;border-radius:999px;background:var(--iema-accent,#20b7ff);color:#06101a;font-size:10px;font-weight:900;line-height:1}
.iema-messages{overflow:hidden}.iema-message-layout{display:grid;grid-template-columns:minmax(240px,32%) minmax(0,1fr);min-height:560px;border:1px solid #26384b;border-radius:18px;overflow:hidden;background:#09121c}.iema-message-list{border-right:1px solid #26384b;background:#0b1622;max-height:650px;overflow:auto}.iema-message-thread{display:block;padding:16px;border-bottom:1px solid #1e3042;text-decoration:none!important;color:inherit!important}.iema-message-thread:hover,.iema-message-thread.active{background:#112236}.iema-message-thread>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.iema-message-thread strong{font-size:14px}.iema-message-thread b{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--iema-accent,#20b7ff);color:#06101a;font-size:10px}.iema-message-thread span{display:block;margin-top:5px;color:#a9b8ca;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iema-message-thread small{display:block;margin-top:6px;color:#71859a;font-size:10px}.iema-message-conversation{display:flex;flex-direction:column;min-width:0;background:#0d1824}.iema-message-conversation>header{padding:17px 20px;border-bottom:1px solid #26384b;background:#0c1722}.iema-message-conversation>header span{display:block;color:var(--iema-accent,#20b7ff);font-size:9px;font-weight:900;letter-spacing:.14em}.iema-message-conversation>header h3{margin:4px 0 2px;font-size:20px}.iema-message-conversation>header small{color:#8295aa}.iema-message-stream{display:flex;flex-direction:column;gap:12px;flex:1;padding:20px;max-height:520px;overflow:auto}.iema-message-bubble{max-width:min(78%,620px);padding:11px 14px;border-radius:16px;background:#152536;border:1px solid #26384b}.iema-message-bubble.mine{align-self:flex-end;background:color-mix(in srgb,var(--iema-accent,#20b7ff) 16%,#102131);border-color:color-mix(in srgb,var(--iema-accent,#20b7ff) 42%,#26384b)}.iema-message-bubble.theirs{align-self:flex-start}.iema-message-bubble strong{display:block;font-size:10px;color:var(--iema-accent,#20b7ff);margin-bottom:4px}.iema-message-bubble p{margin:0;color:#edf4fb;line-height:1.45;white-space:normal}.iema-message-bubble time{display:block;margin-top:7px;color:#7f93a8;font-size:9px}.iema-message-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:14px;border-top:1px solid #26384b;background:#0b1622}.iema-message-compose textarea{resize:none;min-height:48px;max-height:140px}.iema-message-compose .iema-btn{align-self:stretch;min-width:84px}.iema-message-placeholder{display:flex;flex:1;min-height:400px;align-items:center;justify-content:center;flex-direction:column;gap:5px;text-align:center;color:#8295aa}.iema-message-placeholder strong{color:#e9f1f8;font-size:18px}.iema-message-list>.iema-empty{margin:16px}
@media(max-width:760px){.iema-message-layout{grid-template-columns:1fr;min-height:0}.iema-message-list{border-right:0;border-bottom:1px solid #26384b;max-height:240px}.iema-message-stream{max-height:440px;padding:14px}.iema-message-bubble{max-width:88%}.iema-message-compose{grid-template-columns:1fr}.iema-message-compose .iema-btn{min-height:44px}.iema-messages .iema-section-head{align-items:flex-start}}


/* v0.14.117 — Parent Portal visual consistency across every view */
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content{
  display:block!important;
  min-width:0!important;
  color:#172033!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home){
  background:#eef1f4!important;
  border:1px solid #cbd3dd!important;
  border-radius:24px!important;
  padding:22px!important;
  box-shadow:0 14px 36px rgba(27,40,59,.07)!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) > .iema-panel,
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) > section,
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) > .iema-parent-workspace,
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) > .iema-parent-calendar-page{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  background:#f7f8fa!important;
  border:1px solid #cfd6df!important;
  border-radius:21px!important;
  box-shadow:0 7px 22px rgba(27,40,59,.055)!important;
  color:#172033!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) > .iema-panel,
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) > section:not(.iema-parent-calendar-page){
  padding:24px!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) .iema-section-head{
  margin:0 0 20px!important;
  padding:0 0 18px!important;
  border-bottom:1px solid #d7dde5!important;
  align-items:flex-end!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) .iema-section-head h2,
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) h2,
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) h3{
  color:#172033!important;
  letter-spacing:-.025em!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) .iema-section-head p,
body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) .iema-kicker{
  color:#68778b!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-active-dancer-strip{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  margin:0 0 14px!important;
  padding:10px!important;
  background:#d9dee5!important;
  border:1px solid #cbd2dc!important;
  border-radius:16px!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-active-dancer-strip>span{
  padding:0 7px!important;
  color:#647286!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-active-dancer-strip a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:38px!important;
  padding:8px 13px!important;
  border-radius:11px!important;
  color:#536174!important;
  font-size:12px!important;
  font-weight:850!important;
  text-decoration:none!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-active-dancer-strip a.active{
  background:#fff!important;
  color:#172033!important;
  box-shadow:0 4px 14px rgba(30,43,62,.10)!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-parent-view-messages .iema-messages{
  padding:24px!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-parent-view-messages .iema-message-layout{
  overflow:hidden!important;
  border:1px solid #d3dae3!important;
  border-radius:18px!important;
  background:#fff!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-parent-view-notices .iema-communication-wall,
body.iema-parent-portal-page .iema-parent-portal .iema-parent-view-documents .iema-document-library,
body.iema-parent-portal-page .iema-parent-portal .iema-parent-view-family_access .iema-family-access{
  background:#f7f8fa!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-parent-view-calendar .iema-parent-calendar-page{
  padding:24px!important;
  overflow:hidden!important;
}
body.iema-parent-portal-page .iema-parent-portal .iema-parent-view-availability .iema-parent-workspace{
  padding:24px!important;
  overflow:hidden!important;
}
@media(max-width:820px){
  body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home){
    padding:15px!important;
    border-radius:20px!important;
  }
  body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) > .iema-panel,
  body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) > section:not(.iema-parent-calendar-page),
  body.iema-parent-portal-page .iema-parent-portal .iema-parent-view-calendar .iema-parent-calendar-page,
  body.iema-parent-portal-page .iema-parent-portal .iema-parent-view-availability .iema-parent-workspace{
    padding:17px!important;
    border-radius:18px!important;
  }
  body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home) .iema-section-head{
    align-items:flex-start!important;
  }
}
@media(max-width:560px){
  body.iema-parent-portal-page .iema-parent-portal .iema-parent-content:not(.iema-parent-view-home){
    padding:10px!important;
    border-radius:17px!important;
  }
  body.iema-parent-portal-page .iema-parent-portal .iema-active-dancer-strip{
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
  }
  body.iema-parent-portal-page .iema-parent-portal .iema-active-dancer-strip>span,
  body.iema-parent-portal-page .iema-parent-portal .iema-active-dancer-strip a{flex:0 0 auto!important;white-space:nowrap!important}
}


/* v0.14.134 — Parent Account edge breathing room only */
body.iema-parent-portal-page .iema-parent-portal .iema-parent-view-account{
  padding:24px!important;
}
@media(max-width:820px){
  body.iema-parent-portal-page .iema-parent-portal .iema-parent-view-account{
    padding:18px!important;
  }
}
@media(max-width:560px){
  body.iema-parent-portal-page .iema-parent-portal .iema-parent-view-account{
    padding:14px!important;
  }
}

/* v0.14.136 — Parent Account avatar viewport uses the actual circular clip. */
.iema-parent-shell .iema-parent-view-account .iema-dancer-account-photo-editor .iema-avatar-crop-stage{
  border-radius:50%!important;
  overflow:hidden!important;
  clip-path:circle(50% at 50% 50%)!important;
  -webkit-clip-path:circle(50% at 50% 50%)!important;
}
.iema-parent-shell .iema-parent-view-account .iema-dancer-account-photo-editor .iema-avatar-crop-stage canvas{
  border-radius:50%!important;
}
.iema-parent-shell .iema-parent-view-account .iema-dancer-account-photo-editor .iema-avatar-crop-ring{
  inset:0!important;
  border-radius:50%!important;
  border:3px solid #fff!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.20)!important;
}

/* v0.14.137 — Parent Account internal card breathing room only. */
.iema-parent-shell .iema-parent-view-account > .iema-parent-workspace{
  padding:28px!important;
}
@media(max-width:820px){
  .iema-parent-shell .iema-parent-view-account > .iema-parent-workspace{
    padding:23px!important;
  }
}
@media(max-width:560px){
  .iema-parent-shell .iema-parent-view-account > .iema-parent-workspace{
    padding:20px!important;
  }
}


/* v0.14.138 — mobile Messages composer spacing/alignment only */
@media (max-width:760px){
  .iema-message-compose{
    gap:10px!important;
    padding:14px!important;
  }
  .iema-message-compose textarea{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
    min-height:54px!important;
    margin:0!important;
    padding:14px 15px!important;
    border-radius:12px!important;
    font-size:16px!important;
    line-height:1.35!important;
    text-align:left!important;
    vertical-align:middle!important;
  }
  .iema-message-compose textarea::placeholder{
    line-height:1.35!important;
  }
  .iema-message-compose .iema-btn{
    width:100%!important;
    min-height:46px!important;
    margin:0!important;
    align-self:stretch!important;
  }
}


/* v0.14.140 — mobile message bubble internal spacing/alignment only */
@media (max-width:760px){
  .iema-message-stream{
    padding:14px!important;
    gap:14px!important;
  }
  .iema-message-bubble{
    box-sizing:border-box!important;
    max-width:92%!important;
    padding:14px 16px 13px!important;
    text-align:left!important;
  }
  .iema-message-bubble strong{
    display:block!important;
    margin:0 0 7px!important;
    padding:0!important;
    line-height:1.2!important;
    text-align:left!important;
  }
  .iema-message-bubble p{
    display:block!important;
    margin:0!important;
    padding:0!important;
    line-height:1.45!important;
    text-align:left!important;
    overflow-wrap:anywhere!important;
  }
  .iema-message-bubble time{
    display:block!important;
    margin:8px 0 0!important;
    padding:0!important;
    line-height:1.2!important;
    text-align:left!important;
  }
}

/* v0.14.140 — Parent mobile Messages: actual rendered shell + bubble spacing */
.iema-parent-shell .iema-parent-view-messages .iema-messages{
  padding:24px!important;
}
.iema-parent-shell .iema-parent-view-messages .iema-message-layout{
  overflow:hidden!important;
  border-radius:18px!important;
}
@media (max-width:760px){
  .iema-parent-shell .iema-parent-view-messages .iema-message-stream{
    padding:16px!important;
    gap:14px!important;
  }
  .iema-parent-shell .iema-parent-view-messages article.iema-message-bubble{
    width:auto!important;
    max-width:92%!important;
    box-sizing:border-box!important;
    padding:16px 18px!important;
    text-align:left!important;
  }
  .iema-parent-shell .iema-parent-view-messages article.iema-message-bubble > strong{
    display:block!important;
    margin:0 0 7px 0!important;
    padding:0!important;
    text-align:left!important;
    line-height:1.2!important;
  }
  .iema-parent-shell .iema-parent-view-messages article.iema-message-bubble > p{
    display:block!important;
    margin:0!important;
    padding:0!important;
    text-align:left!important;
    line-height:1.45!important;
    overflow-wrap:anywhere!important;
  }
  .iema-parent-shell .iema-parent-view-messages article.iema-message-bubble > time{
    display:block!important;
    margin:8px 0 0 0!important;
    padding:0!important;
    text-align:left!important;
    line-height:1.2!important;
  }
}


/* v0.14.141 — structural mobile message bubble spacing fix.
   Parent Portal globally resets ARTICLE padding to 0!important, so padding lives on an inner DIV instead. */
.iema-message-bubble{
  padding:0!important;
}
.iema-message-bubble-inner{
  display:block!important;
  box-sizing:border-box!important;
  padding:11px 14px!important;
  text-align:left!important;
}
.iema-message-bubble-inner > strong{
  display:block!important;
  margin:0 0 5px!important;
  padding:0!important;
  text-align:left!important;
  line-height:1.25!important;
}
.iema-message-bubble-inner > p{
  display:block!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  line-height:1.45!important;
  overflow-wrap:anywhere!important;
}
.iema-message-bubble-inner > time{
  display:block!important;
  margin:7px 0 0!important;
  padding:0!important;
  text-align:left!important;
  line-height:1.2!important;
}
@media (max-width:760px){
  body.iema-parent-portal-page .iema-message-stream{
    padding:16px!important;
    gap:14px!important;
  }
  body.iema-parent-portal-page .iema-message-bubble{
    width:auto!important;
    max-width:92%!important;
    padding:0!important;
  }
  body.iema-parent-portal-page .iema-message-bubble-inner{
    padding:16px 18px 15px!important;
  }
  body.iema-parent-portal-page .iema-message-bubble-inner > strong{
    margin-bottom:7px!important;
  }
  body.iema-parent-portal-page .iema-message-bubble-inner > time{
    margin-top:8px!important;
  }
}


/* v0.14.142 — collapsible conversations and nav unread badges. */
.iema-message-conversation>header{display:flex;align-items:center;justify-content:space-between;gap:14px}
.iema-message-collapse-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;border:1px solid #31465b;border-radius:999px;background:#132131;color:#dce8f3;padding:8px 12px;font:800 11px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
.iema-message-collapse-toggle:hover{border-color:var(--iema-accent,#20b7ff)}
.iema-message-collapse-toggle b{font-size:13px;line-height:1;color:var(--iema-accent,#20b7ff)}
.iema-message-conversation.is-collapsed .iema-message-conversation-body{display:none!important}
.iema-message-conversation.is-collapsed>header{border-bottom:0}
.iema-role-nav .iema-nav-badge,.iema-primary-nav .iema-nav-badge,.iema-secondary-nav .iema-nav-badge{vertical-align:middle}
@media (max-width:760px){
  .iema-message-conversation>header{padding:15px 16px}
  .iema-message-collapse-toggle{padding:8px 10px;font-size:10px}
  .iema-message-collapse-toggle span{display:inline}
}

/* v0.14.144 — Messages v2: clear inbox + conversation hierarchy. */
.iema-messages-v2{overflow:hidden}
.iema-messages-v2 .iema-message-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}
.iema-messages-v2 .iema-message-topbar h2{margin:3px 0 4px;font-size:clamp(24px,3vw,32px);line-height:1.05}
.iema-messages-v2 .iema-message-topbar p{margin:0;color:#8498ac;font-size:13px}
.iema-messages-v2 .iema-message-layout{grid-template-columns:minmax(300px,36%) minmax(0,1fr);min-height:590px;border-radius:20px;border:1px solid #26384b;box-shadow:0 16px 42px rgba(0,0,0,.16)}
.iema-messages-v2 .iema-message-list{background:#0b1622;border-right:1px solid #26384b;max-height:680px}
.iema-message-list-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px 13px;background:#0b1622;border-bottom:1px solid #26384b}
.iema-message-list-head>div{display:flex;align-items:baseline;gap:8px}.iema-message-list-head strong{font-size:13px;color:#f1f6fb}.iema-message-list-head span{font-size:10px;color:#73879b}.iema-message-list-head>b{display:inline-flex;padding:5px 8px;border-radius:999px;background:rgba(32,183,255,.14);color:#8edcff;font-size:9px;letter-spacing:.03em}
.iema-messages-v2 .iema-message-thread{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:14px 15px!important;border-bottom:1px solid #1d2d3d;text-decoration:none!important;transition:background .15s ease,border-color .15s ease}
.iema-messages-v2 .iema-message-thread:hover{background:#101f2f}.iema-messages-v2 .iema-message-thread.active{background:#12263a;box-shadow:inset 3px 0 0 var(--iema-accent,#20b7ff)}.iema-messages-v2 .iema-message-thread.unread{background:#0f2030}
.iema-message-thread-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#182b3d;border:1px solid #2b4258;color:#d9ebfa;font-size:14px;font-weight:900}.iema-message-thread.unread .iema-message-thread-avatar{background:color-mix(in srgb,var(--iema-accent,#20b7ff) 18%,#16293a);border-color:color-mix(in srgb,var(--iema-accent,#20b7ff) 42%,#2b4258)}
.iema-message-thread-main{display:block;min-width:0}.iema-message-thread-line{display:flex;align-items:center;justify-content:space-between;gap:8px}.iema-message-thread-line strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#eef5fb;font-size:13px;font-weight:800}.iema-message-thread-line time{flex:0 0 auto;color:#6f8397;font-size:9px;font-weight:700}.iema-message-thread.unread .iema-message-thread-line strong{color:#fff}
.iema-message-thread-context,.iema-message-thread-preview{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iema-message-thread-context{margin-top:3px;color:#6f8599;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.iema-message-thread-preview{margin-top:5px;color:#9eb0c1;font-size:11px}.iema-message-thread-unread{align-self:center;display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--iema-accent,#20b7ff);color:#07111f;font-size:10px;font-weight:900}
.iema-message-empty-inbox{display:flex;min-height:250px;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px 22px;color:#7f93a6}.iema-message-empty-inbox strong{margin-top:10px;color:#e8f0f7;font-size:15px}.iema-message-empty-inbox span{margin-top:5px;max-width:220px;font-size:11px;line-height:1.45}.iema-message-empty-icon,.iema-message-placeholder-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:#142536;border:1px solid #2a4055;color:var(--iema-accent,#20b7ff);font-size:20px}
.iema-messages-v2 .iema-message-conversation{background:#0d1824}.iema-message-conversation-head{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center!important;gap:14px!important;padding:15px 18px!important}.iema-message-conversation-title{min-width:0}.iema-message-conversation-title>span{font-size:8px!important}.iema-message-conversation-title h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 2px!important;font-size:18px!important}.iema-message-conversation-title small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8295aa;font-size:10px}
.iema-message-back{display:none;align-items:center;gap:5px;color:#a8bdd0!important;text-decoration:none!important;font-size:11px;font-weight:800}.iema-message-back:hover{color:#fff!important}
.iema-messages-v2 .iema-message-stream{padding:22px;gap:14px;background:linear-gradient(180deg,#0d1824 0%,#0b1520 100%)}
.iema-messages-v2 .iema-message-bubble{max-width:min(72%,620px);border-radius:17px}.iema-messages-v2 .iema-message-bubble-inner{padding:12px 15px!important}.iema-messages-v2 .iema-message-bubble.mine{border-bottom-right-radius:5px}.iema-messages-v2 .iema-message-bubble.theirs{border-bottom-left-radius:5px}
.iema-messages-v2 .iema-message-compose{padding:13px 14px;background:#09131e;border-top:1px solid #26384b}.iema-messages-v2 .iema-message-compose textarea{border-radius:13px!important;padding:13px 14px!important;background:#101e2c!important;border:1px solid #2a3f53!important}.iema-messages-v2 .iema-message-compose textarea:focus{border-color:var(--iema-accent,#20b7ff)!important;box-shadow:0 0 0 3px rgba(32,183,255,.11)!important}
.iema-messages-v2 .iema-message-placeholder{min-height:500px}.iema-messages-v2 .iema-message-placeholder strong{margin-top:11px}.iema-messages-v2 .iema-message-placeholder span{font-size:11px}
@media(max-width:760px){
  .iema-messages-v2{overflow:visible}
  .iema-messages-v2 .iema-message-topbar{align-items:center;margin-bottom:13px}.iema-messages-v2 .iema-message-topbar h2{font-size:24px}.iema-messages-v2 .iema-message-topbar p{font-size:11px}.iema-messages-v2 .iema-message-new-btn{padding:9px 11px;font-size:10px}
  .iema-messages-v2 .iema-message-layout{display:block;min-height:0;border-radius:16px}
  .iema-messages-v2 .iema-message-list{max-height:none;border:0}
  .iema-messages-v2.has-selection .iema-message-list{display:none}
  .iema-messages-v2.no-selection .iema-message-conversation{display:none}
  .iema-messages-v2 .iema-message-thread{grid-template-columns:42px minmax(0,1fr) auto;padding:14px!important;min-height:76px}
  .iema-messages-v2 .iema-message-thread.active{box-shadow:none}
  .iema-message-list-head{padding:13px 14px}
  .iema-message-conversation-head{grid-template-columns:auto minmax(0,1fr) auto!important;padding:12px 13px!important;gap:10px!important}
  .iema-message-back{display:inline-flex}.iema-message-back span{display:none}
  .iema-message-conversation-title>span{display:none!important}.iema-message-conversation-title h3{margin:0 0 2px!important;font-size:15px!important}.iema-message-conversation-title small{font-size:9px}
  .iema-message-collapse-toggle{padding:7px 9px!important}.iema-message-collapse-toggle span{display:none!important}
  .iema-messages-v2 .iema-message-stream{max-height:58vh;padding:16px!important;gap:13px!important}
  .iema-messages-v2 .iema-message-bubble{max-width:89%!important}
  .iema-messages-v2 .iema-message-bubble-inner{padding:13px 15px!important}
  .iema-messages-v2 .iema-message-compose{grid-template-columns:minmax(0,1fr) auto!important;align-items:end;gap:8px!important;padding:10px!important}
  .iema-messages-v2 .iema-message-compose textarea{min-height:44px!important;max-height:110px!important;padding:11px 12px!important}
  .iema-messages-v2 .iema-message-compose .iema-btn{min-width:64px!important;min-height:44px!important;padding:0 13px!important}
}

/* v0.14.147 — notification history controls */
.iema-notification-list .iema-notification-item{position:relative;border-bottom:1px solid rgba(255,255,255,.055)}
.iema-notification-list .iema-notification-item.is-unread{background:rgba(91,215,224,.06)}
.iema-notification-list .iema-notification-item>a{display:grid;gap:3px;padding:11px 44px 11px 14px;color:#fff;text-decoration:none;border-bottom:0}
.iema-notification-list .iema-notification-dismiss-form{position:absolute;right:9px;top:50%;transform:translateY(-50%);margin:0}
.iema-notification-list .iema-notification-dismiss{display:grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.04);color:#aeb8c3;font-size:18px;line-height:1;cursor:pointer}
.iema-notification-list .iema-notification-dismiss:hover,.iema-notification-list .iema-notification-dismiss:focus{background:rgba(255,255,255,.1);color:#fff}
.iema-notification-popover-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.iema-notification-popover-actions form{margin:0}
.iema-notification-popover-actions button{white-space:nowrap}
@media(max-width:560px){.iema-notification-popover header{gap:8px;align-items:flex-start}.iema-notification-popover-actions{max-width:210px}.iema-notification-list .iema-notification-item>a{padding-right:46px}}


/* v0.14.149 — keep notification history actions on one line */
.iema-notification-popover-actions{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:5px!important;
  max-width:none!important;
  white-space:nowrap!important;
}
.iema-notification-popover-actions form{
  flex:0 0 auto!important;
  margin:0!important;
}
.iema-notification-popover-actions button{
  white-space:nowrap!important;
}
@media(max-width:620px){
  .iema-notification-popover>header{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .iema-notification-popover-actions{
    width:100%!important;
    justify-content:flex-start!important;
    gap:4px!important;
  }
  .iema-notification-popover-actions button{
    padding:6px 7px!important;
    font-size:9px!important;
    line-height:1.1!important;
  }
}

/* =========================================================
   v0.14.151 — Notification Center premium visual polish
   Visual only. Preserve notification behavior/routing/actions.
   ========================================================= */
.iema-notification-bar-wrap{
  --iema-notify-accent:#63d7e2;
  --iema-notify-panel:#101820;
  --iema-notify-panel-2:#16222d;
  --iema-notify-border:rgba(148,184,210,.20);
  --iema-notify-muted:#9eafbd;
}
.iema-notification-bar{
  min-height:44px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:9px!important;
  padding:7px 11px 7px 12px!important;
  border:1px solid rgba(150,190,215,.22)!important;
  border-radius:13px!important;
  background:linear-gradient(135deg,#111b25 0%,#182633 100%)!important;
  color:#f7fbff!important;
  box-shadow:0 8px 24px rgba(3,12,20,.18),inset 0 1px 0 rgba(255,255,255,.055)!important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.iema-notification-bar::before{
  content:'\1F514';
  width:28px;
  height:28px;
  flex:0 0 28px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.08);
  border-radius:9px;
  background:rgba(255,255,255,.055);
  font-size:13px;
  line-height:1;
  filter:saturate(.82);
}
.iema-notification-bar:hover,
.iema-notification-bar:focus-visible{
  transform:translateY(-1px)!important;
  border-color:rgba(99,215,226,.40)!important;
  box-shadow:0 12px 30px rgba(3,12,20,.24),0 0 0 3px rgba(99,215,226,.07)!important;
  outline:none!important;
}
.iema-notification-bar>span{
  color:#dbe7ef!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.105em!important;
  line-height:1!important;
}
.iema-notification-bar>strong{
  margin-left:auto!important;
  min-width:68px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:6px 9px!important;
  border:1px solid rgba(255,255,255,.09)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.065)!important;
  color:#dce8ef!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.035em!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.iema-notification-bar>b{
  width:22px!important;
  height:22px!important;
  display:grid!important;
  place-items:center!important;
  color:#92a8b8!important;
  font-size:20px!important;
  font-weight:400!important;
  line-height:1!important;
  transform:rotate(0deg)!important;
  transition:transform .16s ease,color .16s ease!important;
}
.iema-notification-bar[aria-expanded="true"]>b{
  transform:rotate(90deg)!important;
  color:#e8f5fb!important;
}
.iema-notification-bar.has-unread{
  background:linear-gradient(135deg,#111b25 0%,#182633 100%)!important;
  color:#fff!important;
  border-color:rgba(99,215,226,.30)!important;
}
.iema-notification-bar.has-unread::before{
  border-color:rgba(99,215,226,.24)!important;
  background:rgba(99,215,226,.10)!important;
  box-shadow:inset 0 0 0 1px rgba(99,215,226,.04)!important;
}
.iema-notification-bar.has-unread>strong{
  border-color:rgba(255,108,108,.28)!important;
  background:linear-gradient(180deg,#d84e4e,#bd3434)!important;
  color:#fff!important;
  box-shadow:0 4px 12px rgba(178,42,42,.22)!important;
}
.iema-notification-bar.is-clear{
  background:linear-gradient(135deg,#111b25 0%,#182633 100%)!important;
  color:#fff!important;
  border-color:rgba(115,205,151,.22)!important;
  box-shadow:0 8px 24px rgba(3,12,20,.18),inset 0 1px 0 rgba(255,255,255,.055)!important;
}
.iema-notification-bar.is-clear::before{
  content:'\2713';
  color:#93e0ad!important;
  border-color:rgba(115,205,151,.22)!important;
  background:rgba(115,205,151,.10)!important;
  font-size:14px!important;
  font-weight:900!important;
}
.iema-notification-bar.is-clear>strong{
  border-color:rgba(115,205,151,.20)!important;
  background:rgba(115,205,151,.10)!important;
  color:#aee9c0!important;
  box-shadow:none!important;
}
.iema-notification-bar-wrap .iema-notification-popover{
  top:calc(100% + 10px)!important;
  width:min(430px,calc(100vw - 24px))!important;
  border:1px solid var(--iema-notify-border)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#14202a 0%,#0f171f 100%)!important;
  box-shadow:0 28px 70px rgba(0,0,0,.42),0 8px 20px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.045)!important;
  overflow:hidden!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
.iema-notification-popover>header{
  padding:15px 16px 13px!important;
  border-bottom:1px solid rgba(255,255,255,.075)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,0))!important;
}
.iema-notification-popover>header>div:first-child strong{
  color:#f7fbff!important;
  font-size:15px!important;
  font-weight:900!important;
  letter-spacing:-.01em!important;
}
.iema-notification-popover>header>div:first-child span{
  margin-top:2px!important;
  color:#8fa3b3!important;
  font-size:10px!important;
  font-weight:750!important;
}
.iema-notification-popover-actions{
  gap:5px!important;
}
.iema-notification-popover-actions button{
  min-height:28px!important;
  padding:5px 8px!important;
  border:1px solid rgba(145,180,204,.16)!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.035)!important;
  color:#c9d7e1!important;
  box-shadow:none!important;
  font-size:9px!important;
  font-weight:850!important;
  letter-spacing:.012em!important;
  transition:background .14s ease,border-color .14s ease,color .14s ease!important;
}
.iema-notification-popover-actions button:hover,
.iema-notification-popover-actions button:focus-visible{
  background:rgba(99,215,226,.09)!important;
  border-color:rgba(99,215,226,.30)!important;
  color:#f5fbff!important;
  outline:none!important;
}
.iema-notification-list{
  max-height:min(470px,58vh)!important;
  padding:6px!important;
  background:transparent!important;
}
.iema-notification-list .iema-notification-item{
  margin:3px 0!important;
  border:1px solid transparent!important;
  border-radius:12px!important;
  background:transparent!important;
  overflow:hidden!important;
  transition:background .14s ease,border-color .14s ease,transform .14s ease!important;
}
.iema-notification-list .iema-notification-item:hover{
  border-color:rgba(145,180,204,.13)!important;
  background:rgba(255,255,255,.035)!important;
  transform:translateY(-1px)!important;
}
.iema-notification-list .iema-notification-item.is-unread{
  border-color:rgba(99,215,226,.14)!important;
  background:linear-gradient(90deg,rgba(99,215,226,.085),rgba(99,215,226,.025))!important;
  box-shadow:inset 3px 0 0 rgba(99,215,226,.70)!important;
}
.iema-notification-list .iema-notification-item>a{
  gap:5px!important;
  padding:12px 45px 12px 14px!important;
  border:0!important;
}
.iema-notification-list .iema-notification-item>a>strong{
  color:#f3f8fb!important;
  font-size:12px!important;
  font-weight:880!important;
  line-height:1.25!important;
}
.iema-notification-list .iema-notification-item>a>span{
  color:#adbdc8!important;
  font-size:11px!important;
  line-height:1.38!important;
}
.iema-notification-list .iema-notification-item>a>small{
  color:#72899a!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.025em!important;
}
.iema-notification-list .iema-notification-item.is-unread>a>small{
  color:#75d8e2!important;
}
.iema-notification-list .iema-notification-dismiss-form{
  right:10px!important;
}
.iema-notification-list .iema-notification-dismiss{
  width:26px!important;
  height:26px!important;
  border-color:rgba(255,255,255,.09)!important;
  background:rgba(255,255,255,.025)!important;
  color:#72899a!important;
  font-size:16px!important;
  transition:background .14s ease,color .14s ease,border-color .14s ease!important;
}
.iema-notification-list .iema-notification-dismiss:hover,
.iema-notification-list .iema-notification-dismiss:focus-visible{
  border-color:rgba(255,124,124,.24)!important;
  background:rgba(255,124,124,.10)!important;
  color:#ffb3b3!important;
  outline:none!important;
}
.iema-notification-empty{
  display:grid!important;
  place-items:center!important;
  min-height:130px!important;
  padding:24px!important;
  color:#96a9b7!important;
  font-size:12px!important;
  font-weight:750!important;
  text-align:center!important;
}
.iema-notification-empty::before{
  content:'\2713';
  width:36px;
  height:36px;
  margin-bottom:8px;
  display:grid;
  place-items:center;
  border:1px solid rgba(115,205,151,.18);
  border-radius:12px;
  background:rgba(115,205,151,.08);
  color:#9cdeb1;
  font-size:17px;
  font-weight:900;
}
@media(max-width:620px){
  .iema-notification-bar{
    min-height:42px!important;
    padding:6px 9px!important;
    gap:7px!important;
  }
  .iema-notification-bar::before{
    width:26px!important;
    height:26px!important;
    flex-basis:26px!important;
  }
  .iema-notification-bar>span{font-size:9px!important}
  .iema-notification-bar>strong{min-width:62px!important;padding:6px 8px!important;font-size:9px!important}
  .iema-notification-bar-wrap .iema-notification-popover{
    width:calc(100vw - 20px)!important;
    max-width:430px!important;
    border-radius:16px!important;
  }
  .iema-notification-popover>header{
    padding:13px!important;
    gap:9px!important;
  }
  .iema-notification-popover-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:5px!important;
  }
  .iema-notification-popover-actions form{min-width:0!important;width:100%!important}
  .iema-notification-popover-actions button{
    width:100%!important;
    padding:6px 3px!important;
    font-size:8.5px!important;
  }
  .iema-notification-list{padding:5px!important;max-height:56vh!important}
  .iema-notification-list .iema-notification-item>a{padding:11px 42px 11px 13px!important}
}


/* v0.14.152 — Wall unread state + full notice reader */
.iema-notice-feed .iema-notice-post[data-iema-wall-post-id]{position:relative;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}
.iema-notice-feed .iema-notice-post[data-iema-wall-post-id]:hover{transform:translateY(-1px);border-color:rgba(147,197,253,.26);box-shadow:0 10px 28px rgba(2,8,23,.18)}
.iema-notice-feed .iema-notice-post.is-unread{border-color:rgba(96,165,250,.58);background:linear-gradient(135deg,rgba(37,99,235,.16),rgba(36,40,45,.98) 52%);box-shadow:inset 4px 0 0 #60a5fa,0 10px 30px rgba(37,99,235,.10)}
.iema-notice-feed .iema-notice-post.is-unread h3{color:#fff}
.iema-wall-new-badge{display:inline-flex;align-items:center;margin-left:7px;padding:3px 7px;border-radius:999px;background:#60a5fa;color:#07111f;font-size:8px;line-height:1;font-weight:950;letter-spacing:.08em;vertical-align:1px}
.iema-notice-feed .iema-notice-post:not(.iema-wall-reader-post) .iema-notice-body{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;max-height:5.2em}
.iema-wall-reader-modal[hidden]{display:none!important}.iema-wall-reader-modal{position:fixed;inset:0;z-index:100250;display:grid;place-items:center;padding:24px}.iema-wall-reader-backdrop{position:absolute;inset:0;background:rgba(3,8,18,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.iema-wall-reader-dialog{position:relative;z-index:1;width:min(760px,calc(100vw - 32px));max-height:min(84vh,860px);overflow:auto;border:1px solid rgba(255,255,255,.13);border-radius:24px;background:#171b20;box-shadow:0 30px 90px rgba(0,0,0,.48);padding:18px}.iema-wall-reader-close{position:sticky;top:0;float:right;z-index:4;width:38px;height:38px;margin:0 0 -38px;border:1px solid rgba(255,255,255,.13);border-radius:50%;background:#242a31;color:#fff;font-size:24px;line-height:1;cursor:pointer}.iema-wall-reader-post{cursor:default!important;transform:none!important;box-shadow:none!important;margin:0;border-color:rgba(255,255,255,.1)!important;background:#24282d!important}.iema-wall-reader-post .iema-notice-body{display:block!important;max-height:none!important;overflow:visible!important;-webkit-line-clamp:unset!important}.iema-wall-reader-post>header{padding-right:54px}
@media(max-width:760px){.iema-wall-reader-modal{padding:12px}.iema-wall-reader-dialog{width:calc(100vw - 24px);max-height:88vh;padding:12px;border-radius:20px}.iema-notice-feed .iema-notice-post.is-unread{box-shadow:inset 3px 0 0 #60a5fa,0 8px 24px rgba(37,99,235,.10)}}

/* v0.14.154 Wall state synchronization */
.iema-wall-acknowledged{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.02em;background:rgba(42,183,255,.10);border:1px solid rgba(42,183,255,.28);color:#0b526f;white-space:nowrap}

/* v0.14.157 — What's New aligned to the MyDancer portal UI */
html.iema-release-open{overflow:hidden}
.iema-release-modal[hidden]{display:none!important}
.iema-release-modal{
  position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;
  padding:22px;box-sizing:border-box;font-family:inherit
}
.iema-release-backdrop{
  position:absolute;inset:0;background:rgba(8,13,20,.76);
  backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)
}
.iema-release-dialog{
  --release-ink:#172033;--release-muted:#68778b;--release-border:#cfd6df;
  --release-surface:#f7f8fa;--release-card:#fff;--release-navy:#080d14;
  --release-accent:var(--iema-accent,#20b7ff);
  position:relative;width:min(680px,100%);max-height:min(86vh,820px);overflow:auto;
  box-sizing:border-box;padding:0;border:1px solid #26384b;border-radius:22px;
  background:var(--release-surface);box-shadow:0 26px 80px rgba(2,8,23,.46);color:var(--release-ink)
}
.iema-release-dialog:before{
  content:"";display:block;height:9px;background:var(--release-navy);border-radius:21px 21px 0 0
}
.iema-release-welcome-dialog{width:min(620px,100%);text-align:left}
.iema-release-welcome-dialog>.iema-release-spark,
.iema-release-welcome-dialog>.iema-kicker,
.iema-release-welcome-dialog>h2,
.iema-release-welcome-dialog>.iema-release-lede,
.iema-release-welcome-dialog>.iema-release-mini-list,
.iema-release-welcome-dialog>.iema-release-actions{
  margin-left:28px;margin-right:28px
}
.iema-release-spark{
  width:44px;height:44px;margin-top:26px!important;margin-bottom:13px!important;display:grid;place-items:center;
  border-radius:13px;background:var(--release-navy);border:1px solid #26384b;color:var(--release-accent);
  font-size:21px;box-shadow:0 8px 20px rgba(8,13,20,.16)
}
.iema-release-dialog .iema-kicker{
  display:block;margin-top:24px;margin-bottom:6px;color:#68778b;font-size:10px;font-weight:900;
  letter-spacing:.11em;text-transform:uppercase
}
.iema-release-welcome-dialog>.iema-kicker{margin-top:0}
.iema-release-dialog h2{margin:0;color:var(--release-ink);font-size:28px;line-height:1.15;letter-spacing:-.03em}
.iema-release-dialog .iema-release-lede{margin-top:8px;margin-bottom:0;color:var(--release-muted);font-size:15px;font-weight:650;line-height:1.5}
.iema-release-dialog>p{color:var(--release-muted);line-height:1.6}
.iema-release-mini-list{
  display:grid;gap:0;margin-top:22px!important;margin-bottom:0!important;border:1px solid var(--release-border);
  border-radius:17px;background:var(--release-card);overflow:hidden;box-shadow:0 5px 16px rgba(27,40,59,.04)
}
.iema-release-mini-list span{
  display:flex;align-items:flex-start;gap:9px;padding:13px 15px;border-bottom:1px solid #e2e6eb;
  background:#fff;color:#3f4b5d;font-size:13px;line-height:1.45
}
.iema-release-mini-list span:last-child{border-bottom:0}
.iema-release-actions{
  display:flex;gap:10px;justify-content:flex-end;margin:22px 0 0;padding:18px 28px;
  border-top:1px solid #d7dde5;background:#eef1f4;border-radius:0 0 21px 21px
}
.iema-release-actions .iema-btn{
  min-width:132px;min-height:42px;border-radius:11px!important;font-weight:850!important
}
.iema-release-actions .iema-btn-secondary{
  background:#fff!important;color:#172033!important;border-color:#cbd2dc!important
}
.iema-release-x{
  position:absolute;top:22px;right:20px;width:36px;height:36px;border:1px solid #d0d7df;border-radius:11px;
  background:#fff;color:#536174;font-size:22px;line-height:1;cursor:pointer;box-shadow:0 3px 10px rgba(27,40,59,.05)
}
.iema-release-notes-dialog>.iema-kicker,
.iema-release-notes-dialog>h2,
.iema-release-notes-dialog>.iema-release-lede,
.iema-release-notes-dialog>.iema-release-history,
.iema-release-notes-dialog>.iema-release-version{
  margin-left:28px;margin-right:28px
}
.iema-release-notes-dialog>.iema-kicker{margin-top:25px}
.iema-release-history{display:grid;gap:16px;margin-top:21px;margin-bottom:24px}
.iema-release-version{
  padding:0!important;margin-top:21px;border:1px solid var(--release-border)!important;border-radius:18px!important;
  background:#fff!important;overflow:hidden;box-shadow:0 5px 16px rgba(27,40,59,.045)
}
.iema-release-version>header{padding:18px 20px 16px;border-bottom:1px solid #dfe4ea;background:#fff}
.iema-release-version>header>span{color:#68778b;font-size:9px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.iema-release-version h3{margin:5px 0 5px;color:var(--release-ink);font-size:18px;letter-spacing:-.02em}
.iema-release-version header p{margin:0;color:var(--release-muted);font-size:13px;line-height:1.5}
.iema-release-group{padding:14px 20px;border-bottom:1px solid #edf0f3;background:#fff}
.iema-release-group:last-child{border-bottom:0}
.iema-release-group h4{margin:0 0 7px;color:var(--release-ink);font-size:12px;font-weight:900;letter-spacing:.01em}
.iema-release-group ul{margin:0;padding-left:18px;color:#4f5c6d;font-size:13px}
.iema-release-group li{margin:5px 0;line-height:1.45}
.iema-release-group.is-added h4,
.iema-release-group.is-improved h4,
.iema-release-group.is-fixed h4,
.iema-release-group.is-removed h4{color:var(--release-ink)}
.iema-release-group h4:before{
  content:"";display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--release-accent);vertical-align:1px
}
@media(max-width:640px){
  .iema-release-modal{padding:12px;padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}
  .iema-release-dialog,.iema-release-welcome-dialog{width:100%;max-height:90vh;border-radius:18px}
  .iema-release-dialog:before{border-radius:17px 17px 0 0}
  .iema-release-welcome-dialog>.iema-release-spark,.iema-release-welcome-dialog>.iema-kicker,.iema-release-welcome-dialog>h2,.iema-release-welcome-dialog>.iema-release-lede,.iema-release-welcome-dialog>.iema-release-mini-list,.iema-release-notes-dialog>.iema-kicker,.iema-release-notes-dialog>h2,.iema-release-notes-dialog>.iema-release-lede,.iema-release-notes-dialog>.iema-release-history,.iema-release-notes-dialog>.iema-release-version{margin-left:18px;margin-right:18px}
  .iema-release-spark{margin-top:20px!important}
  .iema-release-dialog h2{font-size:24px;padding-right:34px}
  .iema-release-dialog .iema-release-lede{font-size:14px}
  .iema-release-version>header,.iema-release-group{padding-left:16px;padding-right:16px}
  .iema-release-actions{padding:14px 18px;gap:8px;flex-direction:row}
  .iema-release-actions .iema-btn{width:auto;min-width:0;flex:1;padding-left:10px!important;padding-right:10px!important;font-size:12px!important}
  .iema-release-x{top:18px;right:16px}
}

/* v0.14.159 — What's New uses the native dark MyDancer app surface */
.iema-release-dialog{
  --release-ink:#f7f8fb;
  --release-muted:#98a2b5;
  --release-border:#232632;
  --release-surface:#050609;
  --release-card:#0d0f14;
  --release-navy:#08090d;
  --release-accent:var(--iema-accent,#20b7ff);
  border-color:#222631!important;
  background:#050609!important;
  color:#f7f8fb!important;
  box-shadow:0 28px 90px rgba(0,0,0,.62)!important;
}
.iema-release-dialog:before{background:#08090d!important}
.iema-release-dialog h2,
.iema-release-version h3,
.iema-release-group h4{color:#fff!important}
.iema-release-dialog .iema-kicker,
.iema-release-dialog .iema-release-lede,
.iema-release-dialog>p,
.iema-release-version>header>span,
.iema-release-version header p{color:#98a2b5!important}
.iema-release-spark{
  background:#111319!important;
  border-color:#262a34!important;
  color:var(--release-accent)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.28)!important;
}
.iema-release-mini-list{
  border-color:#232632!important;
  background:#0d0f14!important;
  box-shadow:0 10px 28px rgba(0,0,0,.18)!important;
}
.iema-release-mini-list span{
  background:#0d0f14!important;
  color:#d6dbe5!important;
  border-bottom-color:#222631!important;
}
.iema-release-actions{
  border-top-color:#222631!important;
  background:#08090d!important;
}
.iema-release-actions .iema-btn-secondary{
  background:#11141b!important;
  color:#e8ebf2!important;
  border-color:#2b303b!important;
}
.iema-release-x{
  background:#11141b!important;
  color:#d8dde7!important;
  border-color:#2b303b!important;
  box-shadow:none!important;
}
.iema-release-version{
  border-color:#232632!important;
  background:linear-gradient(180deg,#0d0f14 0%,#090b10 100%)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.24)!important;
}
.iema-release-version>header{
  background:#0d0f14!important;
  border-bottom-color:#222631!important;
}
.iema-release-group{
  background:#090b10!important;
  border-bottom-color:#222631!important;
}
.iema-release-group ul{color:#c7ceda!important}
.iema-release-backdrop{background:rgba(2,3,5,.82)!important}


/* v0.14.160 — desktop notification center responsiveness + fast-action feedback */
@media(min-width:721px){
  .iema-notification-bar-wrap .iema-notification-popover{width:min(520px,calc(100vw - 40px))!important;max-height:min(650px,78vh)!important}
  .iema-notification-popover>header{padding:16px 18px 14px!important}
  .iema-notification-list{max-height:min(520px,62vh)!important;padding:8px!important}
  .iema-notification-list .iema-notification-item>a{padding:14px 48px 14px 16px!important}
  .iema-notification-list .iema-notification-item>a>strong{font-size:13px!important}
  .iema-notification-list .iema-notification-item>a>span{font-size:11.5px!important;line-height:1.45!important}
}
.iema-notification-popover form[data-iema-notification-history-form] button[aria-busy="true"]{opacity:.48!important;cursor:wait!important;pointer-events:none!important}


/* =========================================================
   v0.14.162 — Owner Wall post containment
   Owner portal legacy shell rules intentionally make the outer
   WordPress article 100vw. Wall posts are articles too, so they
   must opt back into their local Wall container width.
   ========================================================= */
body.iema-owner-portal-page .iema-owner-shell .iema-comm-wall,
body.iema-owner-portal-page .iema-owner-shell .iema-notice-feed{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-notice-feed > article.iema-notice-post{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-notice-post > header,
body.iema-owner-portal-page .iema-owner-shell .iema-notice-post > footer,
body.iema-owner-portal-page .iema-owner-shell .iema-notice-post .iema-notice-body,
body.iema-owner-portal-page .iema-owner-shell .iema-notice-post .iema-notice-links{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-notice-post h3,
body.iema-owner-portal-page .iema-owner-shell .iema-notice-post p,
body.iema-owner-portal-page .iema-owner-shell .iema-notice-post a,
body.iema-owner-portal-page .iema-owner-shell .iema-notice-post span,
body.iema-owner-portal-page .iema-owner-shell .iema-notice-post strong,
body.iema-owner-portal-page .iema-owner-shell .iema-notice-post small{
  overflow-wrap:anywhere!important;
  word-break:break-word;
}


/* =========================================================
   v0.14.163 — Wall reader modal containment
   Keep the fixed modal inside the viewport and isolate scrolling
   to the reader content. Also neutralize the Owner Portal's legacy
   article:100vw rule for the cloned Wall post shown in the modal.
   ========================================================= */
.iema-wall-reader-modal{
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.iema-wall-reader-dialog{
  width:min(760px,calc(100vw - 48px))!important;
  max-width:calc(100vw - 48px)!important;
  height:auto!important;
  max-height:min(86vh,860px)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  padding:0!important;
}
.iema-wall-reader-dialog>[data-iema-wall-reader-content]{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  padding:18px!important;
  scrollbar-gutter:stable;
}
.iema-wall-reader-close{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  float:none!important;
  margin:0!important;
  z-index:6!important;
}
.iema-wall-reader-dialog article.iema-wall-reader-post,
body.iema-owner-portal-page .iema-wall-reader-dialog article.iema-wall-reader-post{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.iema-wall-reader-dialog .iema-wall-reader-post>header,
.iema-wall-reader-dialog .iema-wall-reader-post>footer,
.iema-wall-reader-dialog .iema-wall-reader-post .iema-notice-body,
.iema-wall-reader-dialog .iema-wall-reader-post .iema-notice-links,
.iema-wall-reader-dialog .iema-wall-reader-post .iema-audience-summary{
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.iema-wall-reader-dialog .iema-wall-reader-post img,
.iema-wall-reader-dialog .iema-wall-reader-post video,
.iema-wall-reader-dialog .iema-wall-reader-post iframe,
.iema-wall-reader-dialog .iema-wall-reader-post table{
  max-width:100%!important;
}
.iema-wall-reader-dialog .iema-wall-reader-post h1,
.iema-wall-reader-dialog .iema-wall-reader-post h2,
.iema-wall-reader-dialog .iema-wall-reader-post h3,
.iema-wall-reader-dialog .iema-wall-reader-post p,
.iema-wall-reader-dialog .iema-wall-reader-post a,
.iema-wall-reader-dialog .iema-wall-reader-post span,
.iema-wall-reader-dialog .iema-wall-reader-post strong,
.iema-wall-reader-dialog .iema-wall-reader-post small{
  overflow-wrap:anywhere!important;
  word-break:break-word;
}
@media(max-width:760px){
  .iema-wall-reader-modal{padding:10px!important;align-items:center!important}
  .iema-wall-reader-dialog{
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    max-height:calc(100dvh - 20px)!important;
    border-radius:18px!important;
  }
  .iema-wall-reader-dialog>[data-iema-wall-reader-content]{padding:14px!important}
  .iema-wall-reader-close{top:10px!important;right:10px!important}
}

/* =========================================================
   v0.14.164 — What's New menu pill + release modal containment
   Keep release dialogs and version-history articles inside the
   viewport, including Owner Portal pages with legacy article:100vw.
   ========================================================= */
.iema-whats-new-menu{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}
.iema-whats-new-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  min-width:34px!important;
  height:19px!important;
  padding:0 9px!important;
  margin-left:auto!important;
  border:1px solid rgba(45,188,255,.48)!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,rgba(40,188,255,.22),rgba(22,132,220,.14))!important;
  color:#7ed8ff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 3px 10px rgba(0,0,0,.16)!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  vertical-align:middle!important;
}
.iema-release-modal{
  width:100vw!important;
  max-width:100vw!important;
  height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
.iema-release-dialog{
  width:min(720px,calc(100vw - 48px))!important;
  max-width:calc(100vw - 48px)!important;
  max-height:calc(100dvh - 48px)!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-gutter:stable;
}
.iema-release-dialog *{
  min-width:0;
  box-sizing:border-box;
}
.iema-release-dialog article.iema-release-version,
body.iema-owner-portal-page .iema-release-dialog article.iema-release-version,
body.iema-parent-portal-page .iema-release-dialog article.iema-release-version,
body.iema-dancer-portal-page .iema-release-dialog article.iema-release-version,
body.iema-faculty-portal-page .iema-release-dialog article.iema-release-version{
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.iema-release-notes-dialog>.iema-release-history,
.iema-release-notes-dialog>.iema-release-version,
.iema-release-version>header,
.iema-release-group,
.iema-release-mini-list,
.iema-release-actions{
  max-width:100%!important;
  box-sizing:border-box!important;
}
.iema-release-dialog h1,
.iema-release-dialog h2,
.iema-release-dialog h3,
.iema-release-dialog h4,
.iema-release-dialog p,
.iema-release-dialog li,
.iema-release-dialog span,
.iema-release-dialog a{
  overflow-wrap:anywhere!important;
  word-break:break-word;
}
@media(max-width:760px){
  .iema-release-modal{
    padding:10px!important;
    padding-top:max(10px,env(safe-area-inset-top))!important;
    padding-bottom:max(10px,env(safe-area-inset-bottom))!important;
  }
  .iema-release-dialog,
  .iema-release-welcome-dialog{
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    max-height:calc(100dvh - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important;
  }
}


/* =========================================================
   v0.14.165 — Messages containment + red What's New pill
   Keep the complete Messages experience inside the portal
   workspace even on Owner pages with legacy article:100vw.
   ========================================================= */
.iema-whats-new-badge{
  min-width:34px!important;
  height:19px!important;
  padding:0 9px!important;
  border-color:#e34a4a!important;
  background:linear-gradient(180deg,#ef5350,#c62828)!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 3px 10px rgba(198,40,40,.24)!important;
  text-shadow:none!important;
}

.iema-messages,
.iema-messages-v2,
.iema-message-layout,
.iema-message-list,
.iema-message-conversation,
.iema-message-conversation-body,
.iema-message-stream,
.iema-message-compose{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.iema-message-layout{
  overflow:hidden!important;
}
.iema-message-list,
.iema-message-conversation{
  overflow-x:hidden!important;
}
.iema-message-conversation-head,
.iema-message-conversation-title,
.iema-message-stream,
.iema-message-compose,
.iema-message-thread,
.iema-message-bubble-inner{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.iema-message-conversation-title h3,
.iema-message-conversation-title small,
.iema-message-thread span,
.iema-message-bubble-inner p,
.iema-message-bubble-inner strong,
.iema-message-bubble-inner time{
  overflow-wrap:anywhere!important;
  word-break:break-word;
}

/* Neutralize the Owner Portal's broad article:100vw reset for chat bubbles. */
body.iema-owner-portal-page article.iema-message-bubble,
body.iema-parent-portal-page article.iema-message-bubble,
body.iema-dancer-portal-page article.iema-message-bubble,
body.iema-faculty-portal-page article.iema-message-bubble,
article.iema-message-bubble{
  width:auto!important;
  min-width:0!important;
  max-width:min(78%,620px)!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body.iema-owner-portal-page article.iema-message-bubble.mine,
body.iema-parent-portal-page article.iema-message-bubble.mine,
body.iema-dancer-portal-page article.iema-message-bubble.mine,
body.iema-faculty-portal-page article.iema-message-bubble.mine,
article.iema-message-bubble.mine{
  margin-left:auto!important;
}
body.iema-owner-portal-page article.iema-message-bubble.theirs,
body.iema-parent-portal-page article.iema-message-bubble.theirs,
body.iema-dancer-portal-page article.iema-message-bubble.theirs,
body.iema-faculty-portal-page article.iema-message-bubble.theirs,
article.iema-message-bubble.theirs{
  margin-right:auto!important;
}

@media(max-width:760px){
  .iema-messages,
  .iema-messages-v2,
  .iema-message-layout,
  .iema-message-conversation,
  .iema-message-conversation-body,
  .iema-message-stream,
  .iema-message-compose{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  body.iema-owner-portal-page article.iema-message-bubble,
  body.iema-parent-portal-page article.iema-message-bubble,
  body.iema-dancer-portal-page article.iema-message-bubble,
  body.iema-faculty-portal-page article.iema-message-bubble,
  article.iema-message-bubble{
    max-width:88%!important;
  }
}

/* v0.14.286 — Removed legacy v0.14.168 light Dancer/Faculty mobile theme. Parent mobile is now the canonical mobile visual reference. */

/* v0.14.177 — Studio Owner My Account rebuilt from the proven Parent Account UI. */
.iema-owner-shell .iema-owner-account-parent-ui.iema-parent-shell{
  display:block!important;
  min-height:0!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  color:#172033!important;
}
.iema-owner-shell .iema-owner-account-parent-ui .iema-parent-content{
  box-sizing:border-box!important;
  width:calc(100% - 48px)!important;
  max-width:1540px!important;
  margin:24px auto 42px!important;
}
.iema-owner-shell .iema-owner-account-parent-ui .iema-parent-view-account{
  padding:24px!important;
}
.iema-owner-shell .iema-owner-account-parent-ui .iema-parent-view-account > .iema-parent-workspace{
  padding:28px!important;
}
.iema-owner-shell .iema-owner-account-parent-ui .iema-dancer-account-photo-editor .iema-avatar-crop-stage{
  border-radius:50%!important;
  overflow:hidden!important;
  clip-path:circle(50% at 50% 50%)!important;
  -webkit-clip-path:circle(50% at 50% 50%)!important;
}
.iema-owner-shell .iema-owner-account-parent-ui .iema-dancer-account-photo-editor .iema-avatar-crop-stage canvas{
  border-radius:50%!important;
}
.iema-owner-shell .iema-owner-account-parent-ui .iema-dancer-account-photo-editor .iema-avatar-crop-ring{
  inset:0!important;
  border-radius:50%!important;
  border:3px solid #fff!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.20)!important;
}
@media(max-width:820px){
  .iema-owner-shell .iema-owner-account-parent-ui .iema-parent-content{
    width:calc(100% - 28px)!important;
    margin:18px auto 32px!important;
  }
  .iema-owner-shell .iema-owner-account-parent-ui .iema-parent-view-account{padding:18px!important}
  .iema-owner-shell .iema-owner-account-parent-ui .iema-parent-view-account > .iema-parent-workspace{padding:23px!important}
}
@media(max-width:560px){
  .iema-owner-shell .iema-owner-account-parent-ui .iema-parent-content{
    width:calc(100% - 20px)!important;
    margin:12px auto 26px!important;
  }
  .iema-owner-shell .iema-owner-account-parent-ui .iema-parent-view-account{padding:14px!important}
  .iema-owner-shell .iema-owner-account-parent-ui .iema-parent-view-account > .iema-parent-workspace{padding:20px!important}
}

/* v0.14.178 — Owner My Account: make the proven Parent account component authoritative inside the Owner shell. */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-parent-view-account{
  color:#172033!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-parent-view-account > .iema-parent-workspace{
  background:#f7f8fa!important;
  border:1px solid #cfd6df!important;
  color:#172033!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-section-head h2{
  color:#172033!important;
  font-weight:700!important;
  letter-spacing:-.025em!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-section-head p,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-kicker{
  color:#68778b!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form{
  display:grid!important;
  gap:12px!important;
  color:#172033!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form label,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form-grid label{
  display:grid!important;
  gap:6px!important;
  margin:0!important;
  color:#334155!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]),
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form select,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form textarea{
  width:100%!important;
  min-height:44px!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:11px 12px!important;
  border:1px solid #cbd5e1!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#263a57!important;
  font:inherit!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:1.4!important;
  letter-spacing:0!important;
  box-shadow:none!important;
  -webkit-text-fill-color:#263a57!important;
  opacity:1!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form textarea{
  min-height:88px!important;
  resize:vertical!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form input[readonly],
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form input:disabled{
  background:#f1f5f9!important;
  color:#64748b!important;
  -webkit-text-fill-color:#64748b!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form input:focus,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form select:focus,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form textarea:focus{
  outline:none!important;
  border-color:#6fa8f4!important;
  box-shadow:0 0 0 3px rgba(22,104,232,.09)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form .iema-check{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  color:#334155!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form .iema-check input[type="checkbox"]{
  width:18px!important;
  height:18px!important;
  margin:0!important;
  accent-color:#2563eb!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form > .iema-btn,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form button[type="submit"]{
  justify-self:start!important;
  min-height:44px!important;
  padding:12px 18px!important;
  border:1px solid #2563eb!important;
  border-radius:11px!important;
  background:#2563eb!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:700!important;
  letter-spacing:0!important;
  box-shadow:none!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form > .iema-btn:hover,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form button[type="submit"]:hover{
  background:#1d4ed8!important;
  border-color:#1d4ed8!important;
}
/* Keep this page at the same comfortable content scale as the Parent account surface. */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-parent-content{
  width:calc(100% - 48px)!important;
  max-width:1280px!important;
  margin:24px auto 42px!important;
}
@media(max-width:820px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-parent-content{
    width:calc(100% - 28px)!important;
    margin:18px auto 32px!important;
  }
}
@media(max-width:560px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-parent-content{
    width:calc(100% - 20px)!important;
    margin:12px auto 26px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-account-parent-ui .iema-form-grid{
    grid-template-columns:1fr!important;
  }
}

/* v0.14.179 — Owner My Account native full-width Parent-style workspace. */
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native{display:block!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:0!important;background:transparent!important;box-sizing:border-box!important;color:#172033!important}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-content{display:block!important;width:calc(100% - 48px)!important;max-width:1280px!important;min-width:0!important;margin:24px auto 42px!important;padding:24px!important;box-sizing:border-box!important;background:#eef1f4!important;border:1px solid #cbd3dd!important;border-radius:22px!important;box-shadow:0 16px 34px rgba(0,0,0,.16)!important;color:#172033!important}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-workspace{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:28px!important;box-sizing:border-box!important;background:#fff!important;border:1px solid #d6dde6!important;border-radius:18px!important;color:#172033!important;box-shadow:none!important}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-section-head h2,body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form label,body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form-grid label{color:#26364d!important}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-section-head p,body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-kicker,body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-help{color:#718096!important}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]),body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form select,body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form textarea{background:#fff!important;color:#263a57!important;-webkit-text-fill-color:#263a57!important;border:1px solid #cbd5e1!important;border-radius:10px!important;box-shadow:none!important}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form input[readonly],body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form input:disabled{background:#f1f5f9!important;color:#64748b!important;-webkit-text-fill-color:#64748b!important}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-avatar-editor{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-avatar-crop-stage{overflow:hidden!important;border-radius:50%!important;clip-path:circle(50% at 50% 50%)!important;-webkit-clip-path:circle(50% at 50% 50%)!important}
@media(max-width:820px){body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-content{width:calc(100% - 28px)!important;margin:18px auto 32px!important;padding:18px!important}body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-workspace{padding:22px!important}}
@media(max-width:560px){body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-content{width:calc(100% - 20px)!important;margin:12px auto 26px!important;padding:14px!important;border-radius:18px!important}body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-workspace{padding:18px!important}body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form-grid{grid-template-columns:1fr!important}}

/* v0.14.181 — Owner My Account: light portal-native avatar editor + reliable crop status. */
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor{
  margin-top:4px!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-editor{
  display:grid!important;
  grid-template-columns:220px minmax(0,1fr)!important;
  gap:28px!important;
  align-items:center!important;
  width:100%!important;
  max-width:100%!important;
  padding:22px!important;
  background:#f8fafc!important;
  border:1px solid #d8e0e8!important;
  border-radius:16px!important;
  box-shadow:none!important;
  color:#26364d!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-crop-stage{
  width:220px!important;
  max-width:220px!important;
  aspect-ratio:1/1!important;
  margin:0!important;
  border-radius:50%!important;
  overflow:hidden!important;
  clip-path:circle(50% at 50% 50%)!important;
  -webkit-clip-path:circle(50% at 50% 50%)!important;
  background:#e9eef4!important;
  border:1px solid #c7d2df!important;
  box-shadow:0 8px 20px rgba(31,49,72,.10)!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-crop-stage canvas{
  width:100%!important;
  height:100%!important;
  border-radius:50%!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-crop-ring{
  inset:0!important;
  border:3px solid #fff!important;
  border-radius:50%!important;
  box-shadow:inset 0 0 0 1px rgba(27,45,68,.20)!important;
  pointer-events:none!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-editor-controls{
  display:grid!important;
  gap:16px!important;
  min-width:0!important;
  color:#26364d!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-editor-controls>label,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-zoom-control>span{
  color:#334155!important;
  font-size:13px!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor input[type=file]{
  display:block!important;
  width:100%!important;
  min-height:44px!important;
  margin-top:7px!important;
  padding:7px 9px!important;
  color:#334155!important;
  background:#fff!important;
  border:1px solid #cbd5e1!important;
  border-radius:10px!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-zoom-control{
  display:grid!important;
  gap:8px!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-zoom-row{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 42px!important;
  gap:10px!important;
  align-items:center!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-zoom-button,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-reset-button{
  min-height:40px!important;
  border:1px solid #b8c7d8!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#26364d!important;
  box-shadow:none!important;
  font-weight:700!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-reset-button{
  justify-self:start!important;
  padding:0 14px!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor input[type=range]{
  width:100%!important;
  accent-color:#2563eb!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-help{
  margin:0!important;
  color:#718096!important;
  font-size:12px!important;
  line-height:1.5!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-avatar-save-error{
  grid-column:1/-1!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid #fecaca!important;
  border-radius:10px!important;
  background:#fff1f2!important;
  color:#9f1239!important;
  font-size:13px!important;
  font-weight:650!important;
}
@media(max-width:720px){
  body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-editor{
    grid-template-columns:1fr!important;
    gap:18px!important;
    padding:18px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-crop-stage{
    width:min(62vw,220px)!important;
    max-width:220px!important;
    margin:0 auto!important;
  }
  body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-reset-button{
    justify-self:stretch!important;
    width:100%!important;
  }
}


/* v0.14.181 — Owner My Account is a native Owner Portal surface, not a light Parent sheet. */
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native{
  display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
  margin:0!important;padding:0 18px 42px!important;background:transparent!important;color:#f5f7fb!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-content{
  display:block!important;width:100%!important;max-width:none!important;min-width:0!important;
  margin:20px 0 0!important;padding:0!important;background:transparent!important;border:0!important;
  border-radius:0!important;box-shadow:none!important;color:#f5f7fb!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-workspace{
  width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:26px!important;
  background:#111419!important;border:1px solid #2b3139!important;border-radius:18px!important;
  box-shadow:0 14px 32px rgba(0,0,0,.18)!important;color:#f5f7fb!important;overflow:hidden!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-section-head{
  margin:0 0 18px!important;padding:0 0 16px!important;border-bottom:1px solid #2b3139!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-section-head:not(:first-child){margin-top:28px!important}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-section-head h2,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form label,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form-grid label{
  color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-section-head p,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-kicker,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-help{
  color:#9ca9b8!important;-webkit-text-fill-color:#9ca9b8!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-kicker{color:#9d67d8!important;-webkit-text-fill-color:#9d67d8!important}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]),
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form select,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form textarea{
  background:#090d12!important;color:#edf3fa!important;-webkit-text-fill-color:#edf3fa!important;
  border:1px solid #35404d!important;border-radius:11px!important;box-shadow:none!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form input[readonly],
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form input:disabled{
  background:#151a21!important;color:#97a5b5!important;-webkit-text-fill-color:#97a5b5!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form input:focus,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form select:focus,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form textarea:focus{
  border-color:#8f1dcc!important;box-shadow:0 0 0 3px rgba(143,29,204,.18)!important;outline:0!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-account-success{
  background:#11351f!important;border:1px solid #277a46!important;color:#a8f1bf!important;border-radius:11px!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor{
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-editor{
  display:grid!important;grid-template-columns:minmax(180px,230px) minmax(0,1fr)!important;gap:24px!important;align-items:center!important;
  width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:20px!important;
  background:#090d12!important;border:1px solid #35404d!important;border-radius:15px!important;color:#f4f7fb!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-crop-stage{
  width:100%!important;max-width:220px!important;aspect-ratio:1/1!important;margin:0 auto!important;border-radius:50%!important;
  overflow:hidden!important;clip-path:circle(50% at 50% 50%)!important;-webkit-clip-path:circle(50% at 50% 50%)!important;
  background:#05080c!important;box-shadow:0 0 0 1px #4a5868,0 12px 28px rgba(0,0,0,.25)!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-crop-ring{display:none!important}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-editor-controls{min-width:0!important;gap:14px!important}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-editor-controls>label,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-zoom-control>span{
  color:#e9eff6!important;-webkit-text-fill-color:#e9eff6!important;font-weight:650!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor input[type=file]{
  width:100%!important;max-width:100%!important;padding:10px!important;background:#111820!important;color:#dce5ef!important;
  border:1px solid #35404d!important;border-radius:10px!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-avatar-zoom-button,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-avatar-reset-button{
  background:#17202a!important;color:#eff5fb!important;border:1px solid #405066!important;border-radius:10px!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form > .iema-btn,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form button[type=submit]{
  background:linear-gradient(135deg,#8f16c8,#66149f)!important;color:#fff!important;border:1px solid #a337dc!important;
  border-radius:12px!important;box-shadow:0 8px 20px rgba(103,20,159,.22)!important;
}
@media(max-width:820px){
 body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native{padding:0 12px 32px!important}
 body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-content{margin-top:14px!important}
 body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-workspace{padding:20px!important}
 body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-editor{grid-template-columns:1fr!important;gap:18px!important;padding:18px!important}
}
@media(max-width:560px){
 body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native{padding:0 10px 26px!important}
 body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-workspace{padding:16px!important;border-radius:16px!important}
 body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-form-grid{grid-template-columns:1fr!important}
 body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-dancer-account-photo-editor .iema-avatar-crop-stage{max-width:190px!important}
}


/* v0.14.182 — Owner My Account aligns exactly to Owner masthead width. */
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-content,
body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native .iema-parent-workspace{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
@media(max-width:560px){
  body.iema-owner-portal-page .iema-owner-shell > .iema-owner-account-native{
    padding-left:10px!important;
    padding-right:10px!important;
  }
}


/* v0.14.190 — Classes: assignment sources */
.iema-class-assignment-picker{margin:18px 0;padding:18px;border:1px solid rgba(148,163,184,.22);border-radius:16px;background:rgba(15,23,42,.34);box-sizing:border-box;max-width:100%}
.iema-class-assignment-head{margin-bottom:14px}.iema-class-assignment-head p{margin:5px 0 0;color:var(--iema-muted,#9aa6b5);font-size:13px;line-height:1.45}
.iema-class-assignment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
.iema-class-assignment-grid label{min-width:0}.iema-class-assignment-grid label>span{display:block;margin-bottom:7px;font-weight:650;color:inherit}
.iema-class-assignment-grid select[multiple]{width:100%;min-width:0;min-height:184px;box-sizing:border-box}
.iema-class-assignment-grid small{display:block;margin-top:7px;line-height:1.4}
.iema-class-assignment-note{margin:12px 0 0;font-size:12px;color:var(--iema-muted,#9aa6b5)}
@media(max-width:900px){.iema-class-assignment-grid{grid-template-columns:1fr}.iema-class-assignment-grid select[multiple]{min-height:132px}}

/* v0.14.191 — Classes: Individuals + Teams assignment only */
.iema-class-assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
@media(max-width:760px){.iema-class-assignment-grid{grid-template-columns:1fr;}}


/* v0.14.194 — Inline Class rehearsal scheduler */
.iema-dance-schedule-manager-modal .iema-rehearsal-inline-panel{
  margin-top:18px;
  padding:18px;
  border:1px solid rgba(148,163,184,.28);
  border-radius:14px;
  background:rgba(255,255,255,.055);
  max-width:100%;
  box-sizing:border-box;
}
.iema-dance-schedule-manager-modal .iema-rehearsal-inline-panel[hidden]{display:none!important}
.iema-dance-schedule-manager-modal .iema-rehearsal-inline-actions{
  display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:6px
}
@media(max-width:700px){
  .iema-dance-schedule-manager-modal .iema-rehearsal-inline-panel{padding:14px;margin-top:14px}
  .iema-dance-schedule-manager-modal .iema-rehearsal-inline-actions{display:grid;grid-template-columns:1fr}
  .iema-dance-schedule-manager-modal .iema-rehearsal-inline-actions .iema-btn{width:100%}
}

/* v0.14.195 — Master Calendar event details */
.iema-master-calendar-workspace .iema-calendar-event{cursor:pointer}
.iema-master-event-modal{position:fixed!important;inset:0!important;z-index:100000!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:24px!important;box-sizing:border-box!important}
.iema-master-event-modal[hidden]{display:none!important}
.iema-master-event-modal .iema-create-modal-backdrop{position:absolute!important;inset:0!important;background:rgba(2,5,9,.76)!important;backdrop-filter:blur(8px)}
.iema-master-event-dialog{position:relative!important;z-index:1!important;width:min(680px,100%)!important;max-width:680px!important;max-height:calc(100vh - 48px)!important;overflow:auto!important;box-sizing:border-box!important;background:#181a1d!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:20px!important;box-shadow:0 28px 80px rgba(0,0,0,.5)!important;padding:28px!important;color:#f7f9fc!important}
.iema-master-event-dialog .iema-create-modal-head{padding-right:40px!important;margin-bottom:22px!important}
.iema-master-event-dialog .iema-create-modal-head h2{color:#fff!important;margin:4px 0 6px!important}
.iema-master-event-dialog .iema-create-modal-head p{margin:0!important;color:#9eacc0!important}
.iema-master-event-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important}
.iema-master-event-detail-grid>div,.iema-master-event-notes{min-width:0!important;background:#101216!important;border:1px solid #2b3038!important;border-radius:14px!important;padding:15px 16px!important;box-sizing:border-box!important}
.iema-master-event-detail-grid span,.iema-master-event-notes>span{display:block!important;margin-bottom:6px!important;color:#8e9aae!important;font-size:11px!important;font-weight:700!important;letter-spacing:.08em!important}
.iema-master-event-detail-grid strong{display:block!important;color:#fff!important;font-size:15px!important;line-height:1.35!important;overflow-wrap:anywhere!important}
.iema-master-event-detail-grid small{display:block!important;color:#bcc6d5!important;margin-top:4px!important;font-size:13px!important}
.iema-master-event-notes{margin-top:12px!important}
.iema-master-event-notes p{margin:0!important;color:#d9e0ea!important;line-height:1.55!important;white-space:pre-wrap!important;overflow-wrap:anywhere!important}
.iema-master-event-actions{display:flex!important;justify-content:flex-end!important;gap:10px!important;margin-top:20px!important}
@media(max-width:640px){.iema-master-event-modal{padding:12px!important}.iema-master-event-dialog{max-height:calc(100dvh - 24px)!important;padding:20px!important;border-radius:16px!important}.iema-master-event-detail-grid{grid-template-columns:1fr!important}.iema-master-event-actions{display:grid!important;grid-template-columns:1fr 1fr!important}.iema-master-event-actions .iema-btn{width:100%!important;justify-content:center!important}}

/* v0.14.196 — Master Calendar assignment sources */
.iema-master-event-assigned{margin-top:16px;padding:16px 18px;border:1px solid rgba(148,163,184,.22);border-radius:14px;background:rgba(255,255,255,.035)}
.iema-master-event-assigned-label{display:block;margin-bottom:10px;font-size:11px;font-weight:700;letter-spacing:.08em;color:#9ca3af}
.iema-master-event-assigned-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.iema-master-event-assigned-grid>div{min-width:0;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.04)}
.iema-master-event-assigned-grid span{display:block;margin-bottom:5px;font-size:10px;font-weight:700;letter-spacing:.07em;color:#9ca3af}
.iema-master-event-assigned-grid strong{display:block;overflow-wrap:anywhere;font-size:14px;line-height:1.45;color:#f8fafc}
@media(max-width:640px){.iema-master-event-assigned-grid{grid-template-columns:1fr}}


/* v0.14.197 — Master Calendar full-screen + studio classification legend */
.iema-master-calendar-workspace .iema-master-type-pill:not(.is-all).is-active{
  border-color:hsl(var(--iema-category-hue,210) 55% 54% / .72)!important;
  box-shadow:inset 0 -3px 0 hsl(var(--iema-category-hue,210) 72% 62%)!important;
  background:hsl(var(--iema-category-hue,210) 30% 20% / .72)!important;
  color:#fff!important;
}
.iema-master-calendar-workspace .iema-calendar-event[data-master-type]{
  border-left:3px solid hsl(var(--iema-category-hue,210) 72% 62%)!important;
}
.iema-master-calendar-workspace:fullscreen,
.iema-master-calendar-workspace.is-iema-fullscreen{
  position:fixed!important;
  inset:0!important;
  z-index:999999!important;
  width:100vw!important;
  max-width:none!important;
  height:100vh!important;
  max-height:none!important;
  margin:0!important;
  padding:22px!important;
  box-sizing:border-box!important;
  border-radius:0!important;
  overflow:auto!important;
  background:#181a1d!important;
}
.iema-master-calendar-workspace:fullscreen .iema-calendar,
.iema-master-calendar-workspace.is-iema-fullscreen .iema-calendar{
  min-height:calc(100vh - 250px)!important;
}
.iema-master-calendar-workspace:fullscreen .iema-calendar-day,
.iema-master-calendar-workspace.is-iema-fullscreen .iema-calendar-day{
  min-height:130px!important;
}
body.iema-master-calendar-fullscreen-fallback{overflow:hidden!important}
@media(max-width:700px){
 .iema-master-calendar-workspace:fullscreen,.iema-master-calendar-workspace.is-iema-fullscreen{padding:12px!important;height:100dvh!important}
 .iema-master-calendar-workspace:fullscreen .iema-calendar-day,.iema-master-calendar-workspace.is-iema-fullscreen .iema-calendar-day{min-height:96px!important}
}


/* v0.14.201 — keep Master Calendar detail modals above the in-app full-screen calendar. */
.iema-master-calendar-workspace.is-iema-fullscreen{overflow:auto!important;isolation:isolate!important}
.iema-master-calendar-workspace.is-iema-fullscreen .iema-master-event-modal{position:fixed!important;inset:0!important;z-index:2147483000!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;padding:24px!important;overflow:hidden!important;box-sizing:border-box!important}
.iema-master-calendar-workspace.is-iema-fullscreen .iema-master-event-modal .iema-create-modal-backdrop{position:fixed!important;inset:0!important}
.iema-master-calendar-workspace.is-iema-fullscreen .iema-master-event-dialog{position:relative!important;z-index:1!important;max-height:calc(100dvh - 48px)!important;overflow:auto!important}
@media(max-width:640px){.iema-master-calendar-workspace.is-iema-fullscreen .iema-master-event-modal{padding:12px!important}.iema-master-calendar-workspace.is-iema-fullscreen .iema-master-event-dialog{max-height:calc(100dvh - 24px)!important}}


/* v0.14.201 — Master Calendar faculty role list. */
.iema-master-event-faculty-list{display:flex;flex-direction:column;gap:7px;min-width:0}
.iema-master-event-faculty-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
.iema-master-event-faculty-row strong{min-width:0;overflow-wrap:anywhere;color:inherit}
.iema-master-event-faculty-role{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:3px 8px;border-radius:999px;font-size:10px;font-weight:750;line-height:1;letter-spacing:.035em;text-transform:uppercase;border:1px solid rgba(148,163,184,.24)}
.iema-master-event-faculty-role.is-primary{background:rgba(124,58,237,.18);border-color:rgba(167,139,250,.4);color:#ddd6fe}
.iema-master-event-faculty-role.is-secondary{background:rgba(59,130,246,.13);border-color:rgba(96,165,250,.32);color:#bfdbfe}

/* v0.14.201 — People > Teams roster management */
.iema-team-people-page .iema-team-management-list{display:grid;gap:14px}
.iema-team-management-card{width:100%;max-width:100%;box-sizing:border-box;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px;background:rgba(255,255,255,.035);overflow:hidden}
.iema-team-management-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.iema-team-management-card-head>div:first-child>span{display:block;font-size:11px;line-height:1.2;font-weight:700;letter-spacing:.08em;color:rgba(255,255,255,.5);margin-bottom:4px}
.iema-team-management-card-head h3{margin:0;color:#fff;font-size:19px;line-height:1.25;font-weight:700}
.iema-team-management-card-head p{margin:4px 0 0;color:rgba(255,255,255,.62);font-size:13px}
.iema-team-member-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.07)}
.iema-team-member-chips span{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:rgba(255,255,255,.05);color:rgba(255,255,255,.83);font-size:12px;font-weight:600}
.iema-team-no-members{margin:14px 0 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.07);color:rgba(255,255,255,.5);font-size:13px}
.iema-team-edit-dialog{width:min(760px,calc(100vw - 32px));max-width:760px}
.iema-team-member-picker{margin-top:4px;padding-top:18px;border-top:1px solid rgba(255,255,255,.09)}
.iema-team-member-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.iema-team-member-picker-head p{margin:4px 0 0;color:rgba(255,255,255,.58);font-size:13px;line-height:1.45}
.iema-team-member-picker-head>span{flex:0 0 auto;display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.06);color:rgba(255,255,255,.62);font-size:11px;font-weight:700}
.iema-team-member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:360px;overflow:auto;padding:2px 4px 2px 0}
.iema-team-member-option{display:flex!important;align-items:center;gap:10px;min-width:0;padding:10px!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:12px;background:rgba(255,255,255,.035)!important;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}
.iema-team-member-option:hover{border-color:rgba(111,94,255,.46)!important;background:rgba(111,94,255,.08)!important}
.iema-team-member-option:has(input:checked){border-color:rgba(111,94,255,.72)!important;background:rgba(111,94,255,.13)!important}
.iema-team-member-option input{width:17px!important;height:17px!important;min-width:17px!important;accent-color:#6f5eff;margin:0!important;padding:0!important}
.iema-team-member-avatar{width:34px;height:34px;min-width:34px;border-radius:50%;overflow:hidden;background:rgba(255,255,255,.08)}
.iema-team-member-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.iema-team-member-copy{display:block;min-width:0}
.iema-team-member-copy strong{display:block;color:#fff;font-size:13px;font-weight:650;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.iema-team-member-copy small{display:block;margin-top:3px;color:rgba(255,255,255,.5);font-size:11px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:700px){
 .iema-team-management-card-head{align-items:stretch;flex-direction:column}
 .iema-team-management-actions{display:flex;flex-wrap:wrap;gap:8px}
 .iema-team-member-grid{grid-template-columns:1fr;max-height:420px}
 .iema-team-edit-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}
}


/* v0.14.202 — People > Teams containment and internal edge spacing */
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0 0 18px!important;
  padding:24px 26px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page>.iema-section-head{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0 0 20px!important;
  padding:0!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-management-list{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page article.iema-team-management-card{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:18px 20px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  background:rgba(255,255,255,.035)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-management-card-head,
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-member-chips,
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-no-members{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-management-card-head>div:first-child{
  min-width:0!important;
  padding:0 2px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-member-chips{
  padding:14px 2px 0!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-member-chips span{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
}
@media(max-width:700px){
  body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page{padding:18px 16px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page article.iema-team-management-card{padding:16px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page>.iema-section-head{gap:14px!important}
}


/* v0.14.204 — Teams edit action visibility */
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-management-card-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:18px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-management-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  min-width:0!important;
  max-width:100%!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-management-actions .iema-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:9px 14px!important;
  white-space:nowrap!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-management-card-head>div:first-child{
  min-width:0!important;
}
@media (max-width:700px){
  body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-management-card-head{
    grid-template-columns:1fr!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-team-people-page .iema-team-management-actions{
    justify-content:flex-start!important;
    width:100%!important;
  }
}

/* v0.14.204 — Teams add/edit modal polish */
body.iema-owner-portal-page .iema-team-edit-dialog{
  width:min(900px,calc(100vw - 40px));
  max-width:900px;
  max-height:min(780px,calc(100dvh - 40px));
  padding:0!important;
  overflow:hidden!important;
  border-radius:22px!important;
  border:1px solid rgba(92,135,180,.36)!important;
  background:#0e1724!important;
  box-shadow:0 28px 90px rgba(0,0,0,.52),0 0 0 1px rgba(255,255,255,.025) inset!important;
}
body.iema-owner-portal-page .iema-team-edit-dialog>.iema-create-modal-close{
  top:18px!important;right:18px!important;width:42px!important;height:42px!important;border-radius:50%!important;
  background:#132235!important;border:1px solid rgba(123,164,207,.35)!important;color:#f8fbff!important;
  font-size:26px!important;font-weight:400!important;line-height:1!important;
}
body.iema-owner-portal-page .iema-team-edit-dialog>.iema-create-modal-head{
  margin:0!important;padding:28px 76px 22px 30px!important;border-bottom:1px solid rgba(148,163,184,.16)!important;
  background:linear-gradient(180deg,rgba(17,29,44,.98),rgba(14,23,36,.98))!important;
}
body.iema-owner-portal-page .iema-team-edit-dialog>.iema-create-modal-head .iema-kicker{color:#65d4ff!important;font-size:11px!important;letter-spacing:.12em!important;font-weight:750!important}
body.iema-owner-portal-page .iema-team-edit-dialog>.iema-create-modal-head h2{margin:8px 0 6px!important;font-size:28px!important;line-height:1.12!important;font-weight:720!important;letter-spacing:-.02em!important;color:#fff!important}
body.iema-owner-portal-page .iema-team-edit-dialog>.iema-create-modal-head p{max-width:680px!important;margin:0!important;color:#9eafc4!important;font-size:14px!important;line-height:1.5!important}
body.iema-owner-portal-page .iema-team-edit-dialog>form.iema-form{
  display:flex!important;flex-direction:column!important;gap:0!important;max-height:calc(100dvh - 160px)!important;
  padding:24px 30px 26px!important;overflow:auto!important;overscroll-behavior:contain!important;background:#0e1724!important;
}
body.iema-owner-portal-page .iema-team-edit-dialog>form.iema-form>label:first-of-type{
  display:grid!important;gap:8px!important;margin:0 0 22px!important;color:#dbe7f5!important;font-size:13px!important;font-weight:650!important;
}
body.iema-owner-portal-page .iema-team-edit-dialog>form.iema-form>label:first-of-type input{
  min-height:48px!important;padding:0 14px!important;border-radius:12px!important;border:1px solid rgba(110,151,194,.38)!important;
  background:#09121d!important;color:#fff!important;font-size:15px!important;font-weight:600!important;box-shadow:none!important;
}
body.iema-owner-portal-page .iema-team-edit-dialog>form.iema-form>label:first-of-type input:focus{outline:none!important;border-color:#44bff4!important;box-shadow:0 0 0 3px rgba(68,191,244,.12)!important}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-picker{
  margin:0!important;padding:20px 0 0!important;border-top:1px solid rgba(148,163,184,.16)!important;
}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-picker-head{align-items:center!important;margin:0 0 14px!important;gap:18px!important}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-picker-head .iema-form-section-label{display:block!important;color:#65d4ff!important;font-size:12px!important;font-weight:760!important;letter-spacing:.1em!important;text-transform:uppercase!important}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-picker-head p{margin:5px 0 0!important;color:#9eafc4!important;font-size:13px!important;line-height:1.45!important}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-picker-head>span{
  min-height:30px!important;padding:5px 11px!important;border-radius:999px!important;background:#172434!important;border:1px solid rgba(148,163,184,.18)!important;
  color:#c8d4e3!important;font-size:11px!important;font-weight:700!important;
}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;max-height:340px!important;padding:2px 6px 2px 2px!important;
  overflow:auto!important;scrollbar-gutter:stable!important;
}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-option{
  position:relative!important;display:grid!important;grid-template-columns:44px minmax(0,1fr) 24px!important;align-items:center!important;column-gap:12px!important;
  min-height:70px!important;padding:12px 13px!important;border-radius:14px!important;border:1px solid rgba(148,163,184,.16)!important;
  background:#111d2b!important;box-shadow:none!important;overflow:hidden!important;
}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-option:hover{border-color:rgba(77,190,242,.48)!important;background:#132235!important;transform:translateY(-1px)!important}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-option:has(input:checked){border-color:#7657ff!important;background:linear-gradient(180deg,rgba(91,61,210,.22),rgba(63,45,150,.16))!important;box-shadow:0 0 0 1px rgba(118,87,255,.16) inset!important}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-option input{
  grid-column:3!important;grid-row:1!important;width:20px!important;height:20px!important;min-width:20px!important;margin:0!important;justify-self:end!important;accent-color:#7657ff!important;
}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-avatar{grid-column:1!important;grid-row:1!important;width:44px!important;height:44px!important;min-width:44px!important;border:2px solid rgba(255,255,255,.12)!important;box-shadow:0 4px 16px rgba(0,0,0,.28)!important}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-copy{grid-column:2!important;grid-row:1!important;min-width:0!important}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-copy strong{font-size:14px!important;font-weight:680!important;color:#f7fbff!important;line-height:1.3!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-copy small{margin-top:4px!important;color:#94a7bd!important;font-size:11px!important;line-height:1.3!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-help{display:block!important;margin:12px 0 0!important;padding:10px 12px!important;border-radius:10px!important;background:rgba(101,212,255,.055)!important;border:1px solid rgba(101,212,255,.11)!important;color:#93a9bf!important;font-size:12px!important;line-height:1.45!important}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-parent-login-actions{
  position:sticky!important;bottom:-26px!important;z-index:2!important;display:flex!important;justify-content:flex-end!important;gap:10px!important;
  margin:22px -30px -26px!important;padding:18px 30px 22px!important;border-top:1px solid rgba(148,163,184,.16)!important;
  background:linear-gradient(180deg,rgba(14,23,36,.94),#0e1724 24%)!important;backdrop-filter:blur(8px)!important;
}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-parent-login-actions .iema-btn{min-height:42px!important;padding:0 18px!important;border-radius:11px!important;font-size:13px!important;font-weight:700!important}
body.iema-owner-portal-page .iema-team-edit-dialog .iema-parent-login-actions .iema-btn-secondary{background:#172434!important;border-color:rgba(148,163,184,.22)!important;color:#dce6f2!important}
@media(max-width:700px){
 body.iema-owner-portal-page .iema-team-edit-dialog{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important;border-radius:18px!important}
 body.iema-owner-portal-page .iema-team-edit-dialog>.iema-create-modal-head{padding:22px 62px 18px 20px!important}
 body.iema-owner-portal-page .iema-team-edit-dialog>.iema-create-modal-head h2{font-size:24px!important}
 body.iema-owner-portal-page .iema-team-edit-dialog>form.iema-form{padding:20px!important;max-height:calc(100dvh - 140px)!important}
 body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-grid{grid-template-columns:1fr!important;max-height:44dvh!important;padding-right:3px!important}
 body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-option{grid-template-columns:42px minmax(0,1fr) 24px!important;min-height:66px!important;padding:10px 12px!important}
 body.iema-owner-portal-page .iema-team-edit-dialog .iema-team-member-avatar{width:42px!important;height:42px!important;min-width:42px!important}
 body.iema-owner-portal-page .iema-team-edit-dialog .iema-parent-login-actions{bottom:-20px!important;margin:20px -20px -20px!important;padding:15px 20px calc(16px + env(safe-area-inset-bottom))!important}
 body.iema-owner-portal-page .iema-team-edit-dialog .iema-parent-login-actions .iema-btn{flex:1 1 0!important}
}


/* v0.14.205 — Native Class rehearsal scheduler. The schedule form uses
 * <details>/<summary> so opening it cannot regress with modal JS handlers. */
.iema-dance-schedule-manager-modal .iema-rehearsal-native-scheduler{
  display:block;
  width:100%;
  max-width:100%;
  margin:14px 0 0;
  box-sizing:border-box;
}
.iema-dance-schedule-manager-modal .iema-rehearsal-native-scheduler > summary{
  list-style:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  user-select:none;
}
.iema-dance-schedule-manager-modal .iema-rehearsal-native-scheduler > summary::-webkit-details-marker{display:none}
.iema-dance-schedule-manager-modal .iema-rehearsal-native-scheduler > summary::marker{display:none;content:""}
.iema-dance-schedule-manager-modal .iema-rehearsal-native-scheduler[open] > summary{
  margin-bottom:12px;
}
.iema-dance-schedule-manager-modal .iema-rehearsal-native-scheduler .iema-rehearsal-inline-panel{
  display:block !important;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}
.iema-dance-schedule-manager-modal .iema-rehearsal-native-scheduler[open] ~ .iema-empty{
  display:none !important;
}
@media (max-width:760px){
  .iema-dance-schedule-manager-modal .iema-rehearsal-native-scheduler > summary{width:100%}
}


/* v0.14.206 — compact Teams directory + detail modal */
.iema-team-directory-page .iema-team-directory-list{display:grid;gap:10px;margin-top:18px;min-width:0}
.iema-team-directory-row{appearance:none;-webkit-appearance:none;width:100%;min-width:0;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) auto 28px;align-items:center;gap:18px;padding:17px 20px;border:1px solid rgba(148,163,184,.18);border-radius:15px;background:rgba(13,18,25,.72);color:#f8fafc;text-align:left;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.iema-team-directory-row:hover,.iema-team-directory-row:focus-visible{border-color:rgba(56,189,248,.48);background:rgba(17,25,35,.92);outline:none;transform:translateY(-1px)}
.iema-team-directory-name{font-size:17px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}
.iema-team-directory-meta{font-size:13px;font-weight:500;color:#94a3b8;white-space:nowrap}
.iema-team-directory-arrow{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:rgba(148,163,184,.09);color:#7dd3fc;font-size:24px;line-height:1}
.iema-team-detail-dialog{width:min(820px,calc(100vw - 40px));max-width:820px;box-sizing:border-box;overflow:hidden}
.iema-team-detail-section{padding:18px 0;border-top:1px solid rgba(148,163,184,.16)}
.iema-team-detail-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;color:#7dd3fc;font-size:11px;font-weight:750;letter-spacing:.08em}
.iema-team-detail-section-head b{display:inline-flex;min-width:26px;height:26px;padding:0 8px;align-items:center;justify-content:center;border-radius:999px;background:rgba(125,211,252,.1);color:#e0f2fe;font-size:12px;letter-spacing:0}
.iema-team-detail-members{display:flex;flex-wrap:wrap;gap:9px}
.iema-team-detail-members>span{display:inline-flex;align-items:center;gap:9px;padding:7px 11px 7px 7px;border:1px solid rgba(148,163,184,.16);border-radius:999px;background:rgba(255,255,255,.035)}
.iema-team-detail-members img{width:31px;height:31px;object-fit:cover;border-radius:999px}
.iema-team-detail-members strong{font-size:13px;font-weight:650;color:#f8fafc}
.iema-team-class-list{display:grid;gap:10px}
.iema-team-class-row{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);gap:20px;align-items:start;padding:14px 15px;border:1px solid rgba(148,163,184,.16);border-radius:13px;background:rgba(255,255,255,.03)}
.iema-team-class-name strong{font-size:15px;color:#f8fafc;overflow-wrap:anywhere}
.iema-team-class-faculty{display:flex;flex-wrap:wrap;gap:8px}
.iema-team-class-faculty span{display:flex;align-items:center;gap:7px;min-width:0;padding:6px 9px;border-radius:9px;background:rgba(125,211,252,.07);border:1px solid rgba(125,211,252,.12)}
.iema-team-class-faculty b{font-size:12px;font-weight:650;color:#e2e8f0;overflow-wrap:anywhere}
.iema-team-class-faculty small{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#7dd3fc}
.iema-team-class-faculty em,.iema-team-detail-empty{font-style:normal;font-size:13px;color:#94a3b8}
.iema-team-detail-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:18px;border-top:1px solid rgba(148,163,184,.16)}
@media(max-width:680px){
 .iema-team-directory-row{grid-template-columns:minmax(0,1fr) 26px;gap:10px;padding:15px 16px}
 .iema-team-directory-meta{grid-column:1/2;grid-row:2;white-space:normal}
 .iema-team-directory-arrow{grid-column:2;grid-row:1/3}
 .iema-team-detail-dialog{width:calc(100vw - 24px)}
 .iema-team-class-row{grid-template-columns:1fr;gap:10px}
 .iema-team-detail-actions{flex-direction:column-reverse}
 .iema-team-detail-actions .iema-btn{width:100%}
}


/* v0.14.207 — Studio Calendar room utilization / availability view. */
.iema-room-availability-calendar{max-width:100%!important;overflow:hidden!important}
.iema-room-calendar-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:18px 0 16px;padding:16px 18px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:#111820}
.iema-room-calendar-toolbar label{display:grid;gap:7px;min-width:min(340px,100%);font-weight:650}.iema-room-calendar-toolbar label span{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}.iema-room-calendar-toolbar select{width:100%;min-height:44px;border-radius:12px;border:1px solid #334155;background:#0b1118;color:#fff;padding:0 12px}.iema-room-week-nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.iema-room-calendar-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.iema-room-calendar-summary>div{display:grid;gap:3px;padding:14px 16px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:#111820}.iema-room-calendar-summary span{font-size:11px;font-weight:750;letter-spacing:.1em;color:#38bdf8}.iema-room-calendar-summary strong{font-size:18px;color:#fff}.iema-room-calendar-summary small{color:#94a3b8}
.iema-room-week-grid{display:grid;grid-template-columns:repeat(7,minmax(180px,1fr));gap:10px;overflow-x:auto;padding-bottom:8px}.iema-room-day{min-width:180px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:#0d141c;overflow:hidden}.iema-room-day.is-today{box-shadow:inset 0 0 0 1px #38bdf8}.iema-room-day>header{display:grid;gap:2px;padding:14px 14px 12px;border-bottom:1px solid rgba(255,255,255,.08);background:#121b25}.iema-room-day>header span{font-size:11px;font-weight:800;letter-spacing:.1em;color:#38bdf8}.iema-room-day>header strong{font-size:18px;color:#fff}.iema-room-day>header small{font-size:12px;color:#94a3b8}.iema-room-day-slots{display:grid;gap:8px;padding:10px}.iema-room-slot{display:grid;gap:3px;padding:11px 12px;border-radius:13px;text-decoration:none!important;min-width:0}.iema-room-slot span{font-size:10px;font-weight:800;letter-spacing:.08em}.iema-room-slot strong{font-size:13px;line-height:1.3;overflow-wrap:anywhere}.iema-room-slot small{font-size:11px;line-height:1.35}.iema-room-slot.is-open{border:1px dashed rgba(74,222,128,.45);background:rgba(34,197,94,.08)}.iema-room-slot.is-open span,.iema-room-slot.is-open strong{color:#bbf7d0}.iema-room-slot.is-open small{color:#86efac}.iema-room-slot.is-booked{border:1px solid rgba(56,189,248,.28);background:#172333}.iema-room-slot.is-booked:hover{border-color:#38bdf8;transform:translateY(-1px)}.iema-room-slot.is-booked span{color:#7dd3fc}.iema-room-slot.is-booked strong{color:#fff}.iema-room-slot.is-booked small{color:#a7b5c7}
@media(max-width:800px){.iema-room-calendar-toolbar{align-items:stretch;flex-direction:column}.iema-room-week-nav{display:grid;grid-template-columns:1fr 1fr 1fr}.iema-room-week-nav .iema-btn{padding-inline:8px}.iema-room-calendar-summary{grid-template-columns:1fr}.iema-room-week-grid{grid-template-columns:repeat(7,minmax(240px,78vw));scroll-snap-type:x proximity}.iema-room-day{scroll-snap-align:start}}

/* v0.14.210 — Private Lesson Payment Requests */
.iema-private-payments{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}
.iema-private-payment-create{margin-top:16px}
.iema-private-payment-direct{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:12px 0 16px;padding:12px 14px;border:1px solid rgba(32,183,255,.2);border-radius:12px;background:rgba(32,183,255,.07);font-size:13px}
.iema-private-payment-list{display:grid;gap:12px;min-width:0}
.iema-private-payment-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;margin:0!important;padding:16px!important;border:1px solid rgba(148,163,184,.22);border-radius:16px;background:rgba(255,255,255,.92);box-shadow:0 8px 24px rgba(15,23,42,.06);overflow:hidden}
.iema-private-payment-card header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;min-width:0}
.iema-private-payment-card header>div{min-width:0}
.iema-private-payment-card h3{margin:6px 0 3px;font-size:16px;line-height:1.3;color:#132033}
.iema-private-payment-card header p{margin:0;color:#64748b;font-size:13px}
.iema-private-payment-status{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#eef2f7;color:#475569;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.iema-private-payment-card.is-requested .iema-private-payment-status{background:#fff4d6;color:#8a5a00}
.iema-private-payment-card.is-paid .iema-private-payment-status{background:#dcfce7;color:#166534}
.iema-private-payment-card.is-cancelled{opacity:.72}
.iema-private-payment-amount{flex:0 0 auto;font-size:24px;line-height:1;color:#132033;white-space:nowrap}
.iema-private-payment-note{margin:12px 0 0;padding:12px 14px;border-radius:12px;background:#f8fafc;color:#475569;line-height:1.5;overflow-wrap:anywhere}
.iema-private-payment-pay{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(148,163,184,.18)}
.iema-private-payment-pay>div{display:grid;gap:2px;min-width:0}.iema-private-payment-pay small{color:#64748b}.iema-private-payment-pay strong{color:#132033}.iema-private-payment-pay span{color:#64748b;font-size:12px}
.iema-venmo-btn{white-space:nowrap;background:#008cff!important;border-color:#008cff!important;color:#fff!important}
.iema-private-payment-warning{display:inline-flex;padding:8px 10px;border-radius:10px;background:#fff4d6;color:#8a5a00;font-size:12px;font-weight:700}
.iema-private-payment-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid rgba(148,163,184,.18)}
.iema-private-payment-actions form{margin:0}.iema-private-payment-admin-status{display:flex;align-items:flex-end;gap:8px}.iema-private-payment-admin-status label{margin:0;min-width:190px}
.iema-private-payment-filter{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0}.iema-private-payment-filter a{display:inline-flex;align-items:center;padding:7px 11px;border:1px solid rgba(148,163,184,.25);border-radius:999px;text-decoration:none;font-size:12px;font-weight:700;color:inherit;background:rgba(148,163,184,.08)}.iema-private-payment-filter a.active{background:#20b7ff;color:#06131d;border-color:#20b7ff}
.iema-payment-profile-head{margin-top:26px}
.iema-private-payment-setup{margin:12px 0 18px}
.iema-private-payment-setup p{margin:5px 0 12px}
/* Owner dark-surface compatibility */
.iema-owner-portal .iema-private-payment-card{background:#202327;border-color:rgba(255,255,255,.1);box-shadow:none}.iema-owner-portal .iema-private-payment-card h3,.iema-owner-portal .iema-private-payment-amount,.iema-owner-portal .iema-private-payment-pay strong{color:#f8fafc}.iema-owner-portal .iema-private-payment-card header p,.iema-owner-portal .iema-private-payment-pay small,.iema-owner-portal .iema-private-payment-pay span{color:#aeb7c4}.iema-owner-portal .iema-private-payment-note{background:#17191c;color:#d2d8e0}.iema-owner-portal .iema-private-payment-pay,.iema-owner-portal .iema-private-payment-actions{border-color:rgba(255,255,255,.08)}
@media(max-width:700px){.iema-private-payment-card{padding:14px!important}.iema-private-payment-card header{gap:10px}.iema-private-payment-amount{font-size:21px}.iema-private-payment-pay{align-items:stretch;flex-direction:column}.iema-venmo-btn{width:100%;justify-content:center}.iema-private-payment-actions{align-items:stretch;flex-direction:column}.iema-private-payment-actions form,.iema-private-payment-admin-status{width:100%}.iema-private-payment-admin-status{align-items:stretch;flex-direction:column}.iema-private-payment-admin-status label{min-width:0;width:100%}}

/* v0.14.212 — Owner-set 30-minute private rate + calculated payment requests */
.iema-money-field{display:flex;align-items:center;gap:8px}
.iema-money-field>span{font-weight:700;opacity:.8}
.iema-money-field input{min-width:0;flex:1}
.iema-private-payment-calculation{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 16px;align-items:center;padding:14px 16px;border:1px solid rgba(56,189,248,.22);border-radius:14px;background:rgba(56,189,248,.06);margin:2px 0 14px}
.iema-private-payment-calculation span{font-size:12px;font-weight:650;color:var(--iema-muted,#94a3b8)}
.iema-private-payment-calculation strong{font-size:16px;text-align:right}
.iema-private-payment-calculation strong[data-private-calculated-amount]{font-size:21px}
.iema-private-payment-calculation small{grid-column:1/-1;color:var(--iema-muted,#94a3b8)}
.iema-private-payment-rate{display:block;margin-top:5px;color:var(--iema-muted,#94a3b8)}
@media(max-width:700px){.iema-private-payment-calculation{grid-template-columns:1fr auto;padding:13px 14px}}


/* v0.14.213 — Private lesson/payment panels stay inside portal workspace */
.iema-private-payment-create,
.iema-private-payment-list,
.iema-private-payment-card,
.iema-private-payment-calculation,
.iema-private-payment-direct,
.iema-private-payment-setup,
.iema-private-provider-card,
.iema-private-provider-settings,
.iema-private-provider-grid,
.iema-private-payments,
.iema-private-payment-section {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

.iema-private-payment-create *,
.iema-private-payment-card *,
.iema-private-provider-card *,
.iema-private-provider-settings * {
  min-width: 0;
  box-sizing: border-box;
}

.iema-private-payment-create .iema-form-grid,
.iema-private-provider-settings .iema-form-grid,
.iema-private-provider-grid {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.iema-private-payment-create input,
.iema-private-payment-create select,
.iema-private-payment-create textarea,
.iema-private-provider-settings input,
.iema-private-provider-settings select,
.iema-private-provider-settings textarea,
.iema-money-field {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.iema-private-payment-card header,
.iema-private-payment-card footer,
.iema-private-payment-card .iema-actions,
.iema-private-provider-card header,
.iema-private-provider-card footer,
.iema-private-provider-card .iema-actions {
  max-width: 100%;
  min-width: 0;
  flex-wrap: wrap;
}

.iema-private-payment-card h3,
.iema-private-payment-card p,
.iema-private-payment-card small,
.iema-private-provider-card h3,
.iema-private-provider-card p,
.iema-private-provider-card small {
  overflow-wrap: anywhere;
  word-break: break-word;
}

body.iema-owner-portal-page .iema-private-payment-card,
body.iema-owner-portal-page .iema-private-provider-card,
body.iema-owner-portal-page .iema-private-payment-create,
body.iema-owner-portal-page .iema-private-provider-settings,
body.iema-owner-portal-page article.iema-private-payment-card,
body.iema-owner-portal-page article.iema-private-provider-card {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media (max-width: 760px) {
  .iema-private-payment-create .iema-form-grid,
  .iema-private-provider-grid,
  .iema-private-provider-settings .iema-form-grid {
    grid-template-columns: minmax(0,1fr) !important;
  }

  .iema-private-payment-calculation {
    grid-template-columns: minmax(0,1fr) auto;
  }

  .iema-private-payment-card header,
  .iema-private-provider-card header {
    align-items: flex-start;
  }
}

/* v0.14.215 — Payment requests originate from booked private lessons */
.iema-private-booking-payments{display:grid;gap:12px}
.iema-private-booking-payment-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
.iema-private-booking-summary{display:flex;align-items:center;gap:12px;min-width:0;flex-wrap:wrap}
.iema-private-booking-summary strong{min-width:0}
.iema-private-booking-summary small{margin-left:auto}
.iema-private-booking-payment-state{display:flex;align-items:center;gap:10px;margin-left:auto}
.iema-private-booking-payment-state span,.iema-private-payment-wait{font-size:12px;font-weight:650;color:var(--iema-muted,#94a3b8)}
.iema-private-payment-from-booking{width:100%;max-width:100%;margin-top:12px;border-top:1px solid rgba(148,163,184,.18);padding-top:12px}
.iema-private-payment-from-booking>summary{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border:1px solid rgba(56,189,248,.38);border-radius:12px;cursor:pointer;font-weight:700;list-style:none}
.iema-private-payment-from-booking>summary::-webkit-details-marker{display:none}
.iema-private-payment-from-booking[open]>summary{margin-bottom:14px}
.iema-private-payment-prefill{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}
.iema-private-payment-prefill>div{padding:11px 12px;border:1px solid rgba(148,163,184,.18);border-radius:12px;min-width:0}
.iema-private-payment-prefill span{display:block;font-size:11px;color:var(--iema-muted,#94a3b8);margin-bottom:3px}
.iema-private-payment-prefill strong{display:block;overflow-wrap:anywhere}
@media(max-width:760px){
 .iema-private-booking-summary{align-items:flex-start}
 .iema-private-booking-summary small{width:100%;margin-left:0}
 .iema-private-booking-payment-state{margin-left:0;width:100%;justify-content:space-between}
 .iema-private-payment-prefill{grid-template-columns:1fr}
 .iema-private-payment-from-booking>summary{width:100%;box-sizing:border-box}
}

/* v0.14.216 — Explicit Parent dancer selection for private bookings */
.iema-private-dancer-choice{width:100%;max-width:100%;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:22px;align-items:end;padding:18px 20px;margin:0 0 18px;border:1px solid rgba(56,189,248,.2);border-radius:16px;background:rgba(56,189,248,.05)}
.iema-private-choice-copy{min-width:0}
.iema-private-choice-copy h3{margin:3px 0 5px}
.iema-private-choice-copy p{margin:0}
.iema-private-dancer-choice .iema-private-dancer-picker{width:100%;max-width:100%;min-width:0}
.iema-private-dancer-choice select{width:100%;max-width:100%;min-width:0}
.iema-private-awaiting-dancer{padding:24px 20px;border:1px dashed rgba(148,163,184,.3);border-radius:14px;text-align:center;color:var(--iema-muted,#94a3b8)}
@media(max-width:760px){.iema-private-dancer-choice{grid-template-columns:1fr;padding:16px;gap:14px}}

/* v0.14.218 — Hardened booked-private payment prefill */
.iema-private-payment-prefill-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.iema-private-payment-prefill-fields label{display:block;min-width:0}
.iema-private-payment-prefill-fields input[readonly]{width:100%;max-width:100%;min-width:0;box-sizing:border-box;cursor:default}
@media(max-width:760px){.iema-private-payment-prefill-fields{grid-template-columns:1fr}}

/* v0.14.219 — payment calculation emphasis */
.iema-private-payment-calculation[data-private-calculation]{grid-template-columns:minmax(0,1fr) auto}
.iema-private-payment-calculation [data-private-calculated-amount]{font-size:24px;font-weight:800}
.iema-private-payment-calculation [data-private-calc-equation]{grid-column:1/-1;font-size:13px;font-weight:700;opacity:.9}

/* v0.14.223 — Privates configuration lives on People profiles */
.iema-owner-person-privates{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.iema-person-privates-form{display:grid;gap:16px}
.iema-private-master-toggle,.iema-parent-private-dancer,.iema-private-approval-check{display:flex!important;align-items:flex-start!important;gap:10px!important;padding:14px 16px;border:1px solid rgba(148,163,184,.18);border-radius:14px}
.iema-private-master-toggle span,.iema-parent-private-dancer span,.iema-private-approval-check span{display:grid;gap:3px;min-width:0}
.iema-private-master-toggle small,.iema-parent-private-dancer small,.iema-private-approval-check small{font-weight:500;opacity:.72}
.iema-person-privates-actions{display:flex;justify-content:flex-end}
.iema-parent-private-dancer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.iema-private-config-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.iema-private-config-links a{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border:1px solid rgba(148,163,184,.22);border-radius:999px;text-decoration:none;font-size:13px;font-weight:700}
.iema-parent-private-settings{margin:18px 0}
@media(max-width:760px){
 .iema-parent-private-dancer-grid{grid-template-columns:1fr}
 .iema-person-privates-actions .iema-btn{width:100%}
}

/* v0.14.225 — Studio Owner Edit Dancer polish + Private Lesson access */
body.iema-owner-portal-page .iema-dancer-edit-dialog{
 width:min(920px,calc(100vw - 32px))!important;max-width:920px!important;max-height:min(900px,calc(100vh - 30px))!important;
 overflow:auto!important;padding:0!important;border-radius:20px!important;background:#fff!important;border:1px solid #e1e5ea!important;
 box-shadow:0 28px 80px rgba(15,23,42,.22)!important
}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-create-modal-head{
 position:sticky!important;top:0!important;z-index:4!important;margin:0!important;padding:25px 28px 20px!important;
 background:rgba(255,255,255,.97)!important;border-bottom:1px solid #e8ebef!important;backdrop-filter:blur(12px)
}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-create-modal-head h2{margin:4px 0 5px!important;font-size:27px!important;letter-spacing:-.025em!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-create-modal-head p{margin:0!important;max-width:690px!important;color:#68717d!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-dancer-account-unified-form{display:grid!important;gap:0!important;padding:8px 28px 26px!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-parent-login-section{
 margin:0!important;padding:22px 0!important;border:0!important;border-bottom:1px solid #e9ecf0!important;background:transparent!important;border-radius:0!important
}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-parent-login-section:last-of-type{border-bottom:0!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-form-section-label{
 display:block!important;margin-bottom:12px!important;color:#242a32!important;font-size:11px!important;font-weight:800!important;letter-spacing:.09em!important;text-transform:uppercase!important
}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-form-grid{gap:14px!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog label{color:#3a424d!important;font-weight:650!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),
body.iema-owner-portal-page .iema-dancer-edit-dialog select{
 min-height:44px!important;background:#f8f9fb!important;color:#1c232c!important;-webkit-text-fill-color:#1c232c!important;
 border:1px solid #d9dee5!important;border-radius:10px!important;box-shadow:none!important
}
body.iema-owner-portal-page .iema-dancer-edit-dialog input:focus,
body.iema-owner-portal-page .iema-dancer-edit-dialog select:focus{border-color:#707985!important;box-shadow:0 0 0 3px rgba(31,41,55,.08)!important;outline:0!important}
body.iema-owner-portal-page .iema-dancer-edit-section-copy{margin-bottom:14px!important}
body.iema-owner-portal-page .iema-dancer-edit-section-copy .iema-form-section-label{margin-bottom:5px!important}
body.iema-owner-portal-page .iema-dancer-edit-section-copy p{margin:0!important;color:#717a86!important;line-height:1.5!important}

/* The crop stage itself is the clip boundary; canvas can never render outside the avatar circle. */
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-dancer-account-photo-editor{
 display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important
}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-avatar-editor{
 display:grid!important;grid-template-columns:220px minmax(0,1fr)!important;gap:24px!important;align-items:center!important;
 width:100%!important;max-width:100%!important;min-width:0!important;padding:20px!important;margin:0!important;
 background:#f7f8fa!important;border:1px solid #dfe3e8!important;border-radius:16px!important
}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-avatar-crop-stage{
 position:relative!important;width:220px!important;height:220px!important;max-width:220px!important;aspect-ratio:1/1!important;
 overflow:hidden!important;border-radius:50%!important;clip-path:circle(50% at 50% 50%)!important;-webkit-clip-path:circle(50% at 50% 50%)!important;
 contain:paint!important;background:#e9edf2!important;box-shadow:0 0 0 1px #cdd3da,0 10px 24px rgba(15,23,42,.10)!important
}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-avatar-crop-stage canvas{
 display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;
 border-radius:50%!important;clip-path:circle(50% at 50% 50%)!important;-webkit-clip-path:circle(50% at 50% 50%)!important
}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-avatar-crop-ring{display:none!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-avatar-editor-controls{display:grid!important;gap:13px!important;min-width:0!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-avatar-editor-controls>label,
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-avatar-zoom-control>span{color:#303842!important;font-weight:700!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-avatar-editor-controls input[type=file]{
 width:100%!important;max-width:100%!important;padding:10px!important;background:#fff!important;color:#3d4651!important;
 border:1px solid #d7dce3!important;border-radius:10px!important
}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-avatar-zoom-button,
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-avatar-reset-button{
 background:#fff!important;color:#262d36!important;border:1px solid #ccd2da!important;border-radius:9px!important
}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-dancer-account-photo-remove{margin:12px 0 0!important}

/* Private Lesson toggle is intentionally prominent inside Edit Dancer. */
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-dancer-private-toggle{
 display:flex!important;align-items:flex-start!important;gap:12px!important;margin:0!important;padding:16px 17px!important;
 background:#f7f8fa!important;border:1px solid #dce1e7!important;border-radius:13px!important
}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-dancer-private-toggle input{width:18px!important;height:18px!important;margin-top:2px!important;flex:0 0 18px!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-dancer-private-toggle span{display:grid!important;gap:3px!important;min-width:0!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-dancer-private-toggle strong{color:#20262e!important;font-size:14px!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-dancer-private-toggle small{color:#68717c!important;font-weight:500!important;line-height:1.45!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-dancer-private-parent-note{margin:9px 2px 0!important;color:#7a838e!important;font-size:12px!important}
body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-parent-login-actions{
 position:sticky!important;bottom:-26px!important;z-index:3!important;display:flex!important;justify-content:flex-end!important;gap:9px!important;
 margin:0 -28px -26px!important;padding:16px 28px!important;background:rgba(255,255,255,.97)!important;border-top:1px solid #e5e9ee!important;backdrop-filter:blur(10px)
}
@media(max-width:720px){
 body.iema-owner-portal-page .iema-dancer-edit-dialog{width:calc(100vw - 18px)!important;max-height:calc(100vh - 18px)!important;border-radius:16px!important}
 body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-create-modal-head{padding:20px 18px 16px!important}
 body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-dancer-account-unified-form{padding:5px 18px 22px!important}
 body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-form-grid{grid-template-columns:1fr!important}
 body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-avatar-editor{grid-template-columns:1fr!important;padding:16px!important}
 body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-avatar-crop-stage{width:190px!important;height:190px!important;margin:0 auto!important}
 body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-parent-login-actions{margin:0 -18px -22px!important;padding:13px 18px!important}
 body.iema-owner-portal-page .iema-dancer-edit-dialog .iema-parent-login-actions .iema-btn{flex:1!important}
}

/* v0.14.228 — live messaging */
.iema-message-compose[data-iema-live-message-compose] button:disabled{opacity:.58;cursor:wait}
.iema-message-stream[data-iema-message-stream]{scroll-behavior:smooth}

/* v0.14.229 — Parent actionable summary */
.iema-parent-action-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
.iema-parent-summary-box{appearance:none;border:0;font:inherit;text-align:left;cursor:pointer;background:transparent;color:inherit;min-width:0}
.iema-parent-action-summary .iema-parent-summary-box{position:relative}
.iema-parent-summary-box em{display:block;margin-top:8px;font-size:12px;font-style:normal;font-weight:800;opacity:.72}
.iema-parent-summary-box:hover em,.iema-parent-summary-box:focus-visible em{opacity:1}
.iema-parent-summary-box:focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:12px}
body.iema-parent-summary-modal-open{overflow:hidden}
.iema-parent-summary-modal{position:fixed;inset:0;z-index:99998;display:grid;place-items:center;padding:24px;box-sizing:border-box}
.iema-parent-summary-modal[hidden]{display:none!important}
.iema-parent-summary-backdrop{position:absolute;inset:0;background:rgba(4,10,18,.72);backdrop-filter:blur(6px)}
.iema-parent-summary-dialog{position:relative;width:min(920px,100%);max-height:min(86vh,900px);overflow:auto;box-sizing:border-box;background:#fff;color:#18202a;border-radius:22px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.28)}
.iema-parent-summary-close{position:sticky;float:right;top:0;z-index:2;width:38px;height:38px;border:0;border-radius:50%;background:#eef2f5;font-size:25px;line-height:1;cursor:pointer}
.iema-parent-summary-modal-head{padding-right:50px;margin-bottom:20px}
.iema-parent-summary-modal-head h2{margin:4px 0 6px}
.iema-parent-summary-modal-head p{margin:0;color:#65707c}
.iema-parent-exceptions-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-right:50px}
.iema-parent-summary-dancer-groups{display:grid;gap:16px}
.iema-parent-summary-dancer-group{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;margin:0!important;padding:18px!important;border:1px solid #e3e8ec;border-radius:16px;background:#fafbfc}
.iema-parent-summary-dancer-group>header{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.iema-parent-summary-dancer-group>header img{width:44px;height:44px;border-radius:50%;object-fit:cover}
.iema-parent-summary-dancer-group>header div{display:grid}
.iema-parent-summary-dancer-group>header small{color:#6a747e}
.iema-parent-week-list,.iema-parent-exception-list{display:grid;gap:8px}
.iema-parent-week-row,.iema-parent-exception-row{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border-radius:12px;background:#fff;border:1px solid #e8ecef}
.iema-parent-week-row time,.iema-parent-exception-row time{display:grid}
.iema-parent-week-row time span,.iema-parent-exception-row time span{font-size:12px;color:#737c85}
.iema-parent-week-row>div,.iema-parent-exception-row>div{display:grid;min-width:0}
.iema-parent-week-row small,.iema-parent-exception-row small{color:#66717c}
.iema-parent-week-row em,.iema-parent-exception-row em{font-size:12px;font-style:normal;color:#737c85;margin-top:3px}
.iema-parent-exception-row>a{font-weight:800;text-decoration:none}
.iema-parent-exception-row.is-unavailable{border-left:4px solid #b62929}
.iema-parent-exception-row.is-available{border-left:4px solid #258453}
.iema-parent-summary-empty{padding:14px;border-radius:12px;background:#fff;color:#68737e}
.iema-parent-summary-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
.iema-parent-summary-exception-form{margin:0 0 20px;padding:18px;border:1px solid #dfe5ea;border-radius:16px;background:#f7f9fa}
.iema-parent-summary-exception-form[hidden]{display:none!important}
.iema-parent-exception-targets{margin-bottom:16px}
.iema-parent-exception-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
.iema-parent-exception-picker-actions{display:flex;align-items:center;gap:12px;margin-top:8px}
.iema-parent-exception-picker-actions small{color:#6a747e}
@media(max-width:760px){
 .iema-parent-action-summary{grid-template-columns:1fr 1fr}
 .iema-parent-summary-modal{padding:10px}
 .iema-parent-summary-dialog{padding:20px 16px;border-radius:18px;max-height:92vh}
 .iema-parent-exceptions-head{display:block}
 .iema-parent-exceptions-head .iema-btn{margin-top:12px;width:100%}
 .iema-parent-exception-picker{grid-template-columns:1fr}
 .iema-parent-week-row,.iema-parent-exception-row{grid-template-columns:58px minmax(0,1fr)}
 .iema-parent-exception-row>a{grid-column:2}
 .iema-parent-summary-actions{flex-direction:column}
 .iema-parent-summary-actions .iema-btn{width:100%;text-align:center}
}

/* v0.14.230 — Parent home summary UI polish and portal-matched dark modals */
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;
  align-items:center!important;
  column-gap:12px!important;
  row-gap:2px!important;
  width:100%!important;
  min-width:0!important;
  padding:16px 18px!important;
  border-radius:18px!important;
  border:1px solid #233244!important;
  background:linear-gradient(180deg,#0f1621 0%,#0a1017 100%)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.03)!important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box:hover,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box:focus-visible{
  transform:translateY(-2px)!important;
  border-color:#3555d9!important;
  box-shadow:0 22px 46px rgba(0,0,0,.28),0 0 0 1px rgba(53,85,217,.25) inset!important;
  background:linear-gradient(180deg,#121b28 0%,#0d141d 100%)!important;
  outline:none!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box>span{
  grid-row:1 / span 3!important;
  grid-column:1!important;
  width:44px!important;
  height:44px!important;
  border-radius:14px!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(180deg,rgba(111,94,255,.28) 0%,rgba(53,85,217,.16) 100%)!important;
  border:1px solid rgba(120,131,255,.35)!important;
  color:#c8d1ff!important;
  font-size:18px!important;
  font-weight:900!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box strong{
  grid-column:2!important;
  margin:0!important;
  font-size:20px!important;
  line-height:1.05!important;
  color:#ffffff!important;
  letter-spacing:-.025em!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box small{
  grid-column:2!important;
  margin:0!important;
  color:#94a7c3!important;
  font-size:12px!important;
  line-height:1.32!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box em{
  grid-column:2!important;
  margin-top:5px!important;
  color:#7dd3ff!important;
  font-size:11px!important;
  line-height:1.2!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  opacity:1!important;
}

body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-modal{
  z-index:2147483000!important;
  padding:18px!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-backdrop{
  background:rgba(3,8,14,.78)!important;
  backdrop-filter:blur(12px)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dialog{
  width:min(960px,calc(100vw - 36px))!important;
  max-width:960px!important;
  max-height:min(90vh,900px)!important;
  overflow:auto!important;
  padding:0!important;
  border-radius:26px!important;
  border:1px solid #223245!important;
  background:linear-gradient(180deg,#0b1119 0%,#080d14 100%)!important;
  color:#f5f8ff!important;
  box-shadow:0 40px 110px rgba(0,0,0,.62), inset 0 1px 0 rgba(255,255,255,.03)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dialog::before{
  content:'';
  position:sticky;
  top:0;
  display:block;
  height:0;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-close{
  position:absolute!important;
  top:18px!important;
  right:18px!important;
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  border:1px solid #2d4056!important;
  background:#101924!important;
  color:#fff!important;
  box-shadow:none!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-close:hover{
  background:#162335!important;
  border-color:#4da9db!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-modal-head,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exceptions-head{
  margin:0!important;
  padding:26px 28px 20px!important;
  border-bottom:1px solid #1d2a39!important;
  background:linear-gradient(180deg,rgba(255,255,255,.018) 0%,rgba(255,255,255,0) 100%)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-modal-head .iema-kicker,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exceptions-head .iema-kicker{
  display:inline-flex!important;
  align-items:center!important;
  min-height:24px!important;
  padding:4px 10px!important;
  border-radius:999px!important;
  background:rgba(77,169,219,.10)!important;
  border:1px solid rgba(77,169,219,.24)!important;
  color:#81d4ff!important;
  font-size:10px!important;
  letter-spacing:.12em!important;
  font-weight:900!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-modal-head h2,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exceptions-head h2{
  margin:12px 0 6px!important;
  color:#fff!important;
  font-size:34px!important;
  line-height:1.04!important;
  letter-spacing:-.04em!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-modal-head p,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exceptions-head p{
  margin:0!important;
  color:#95a7be!important;
  font-size:14px!important;
  line-height:1.45!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dancer-groups{
  gap:14px!important;
  padding:22px 28px 10px!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dancer-group{
  padding:18px!important;
  border-radius:20px!important;
  border:1px solid #1f2b39!important;
  background:linear-gradient(180deg,#0e1621 0%,#0b121a 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dancer-group>header{
  margin-bottom:14px!important;
  padding-bottom:12px!important;
  border-bottom:1px solid rgba(255,255,255,.06)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dancer-group>header>span{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  border-radius:16px!important;
  overflow:hidden!important;
  background:#0e1722!important;
  border:1px solid #26384d!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
  display:grid!important;
  place-items:center!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dancer-group>header img{
  width:100%!important;height:100%!important;border-radius:0!important;object-fit:cover!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dancer-group>header strong{color:#fff!important;font-size:18px!important;line-height:1.08!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dancer-group>header small{color:#88a0bc!important;font-size:12px!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row{
  grid-template-columns:78px minmax(0,1fr) auto!important;
  gap:14px!important;
  padding:14px 15px!important;
  border-radius:16px!important;
  border:1px solid #1d2a39!important;
  background:#0a1017!important;
  box-shadow:none!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row:hover,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row:hover{
  border-color:#2c435a!important;
  background:#0d141d!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row time,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row time{
  align-self:stretch!important;
  justify-content:center!important;
  gap:4px!important;
  padding:10px 8px!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#111a26 0%,#0d141d 100%)!important;
  border:1px solid #223245!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row time strong,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row time strong{color:#fff!important;font-size:15px!important;line-height:1.05!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row time span,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row time span{color:#86a0be!important;font-size:11px!important;line-height:1.2!important;text-transform:uppercase!important;letter-spacing:.06em!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row>div strong,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row>div strong{color:#fff!important;font-size:15px!important;line-height:1.25!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row>div small,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row>div small{color:#8ea5c1!important;font-size:12px!important;line-height:1.42!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row>div em,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row>div em{color:#6bcfff!important;font-size:11px!important;line-height:1.45!important;margin-top:5px!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row>a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  padding:0 12px!important;
  border-radius:12px!important;
  border:1px solid #27496b!important;
  background:#0f1f31!important;
  color:#9ddbff!important;
  text-decoration:none!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row>a:hover{background:#14304a!important;border-color:#4cb8ff!important;color:#fff!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row.is-unavailable{border-left:4px solid #ff5c74!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row.is-available{border-left:4px solid #39d98a!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-empty{
  padding:14px 16px!important;
  border-radius:14px!important;
  border:1px dashed #243446!important;
  background:#0b1118!important;
  color:#8ea2bc!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-exception-form{
  margin:20px 28px 0!important;
  padding:18px!important;
  border-radius:20px!important;
  border:1px solid #1f2b39!important;
  background:linear-gradient(180deg,#0d151f 0%,#0a1017 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-exception-form label,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-exception-form .iema-form-section-label,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-exception-form strong,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-exception-form small{color:#d8e4f5!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-exception-form input[type="date"],
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-exception-form input[type="text"],
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-exception-form input:not([type]),
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-exception-form select{
  width:100%!important;
  min-height:44px!important;
  border-radius:14px!important;
  border:1px solid #2a394c!important;
  background:#09111a!important;
  color:#f5f8ff!important;
  box-shadow:none!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-exception-form input::placeholder{color:#6f849f!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-picker{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-picker .iema-check{
  align-items:center!important;
  gap:10px!important;
  padding:12px 14px!important;
  border-radius:14px!important;
  border:1px solid #243244!important;
  background:#09111a!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-picker .iema-check input{accent-color:#6f5eff!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-picker-actions{
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-picker-actions small{color:#8ca1bc!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-actions{
  padding:16px 28px 24px!important;
  margin:0!important;
  border-top:1px solid transparent!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dialog>.iema-parent-summary-actions,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dialog>footer.iema-parent-summary-actions{
  border-top:1px solid #1d2a39!important;
  background:linear-gradient(180deg,rgba(8,13,20,0) 0%,rgba(8,13,20,.94) 30%)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dialog .iema-btn{
  min-height:44px!important;
  padding:11px 16px!important;
  border-radius:14px!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dialog .iema-btn.iema-btn-secondary{
  background:#101925!important;
  border:1px solid #2a394c!important;
  color:#dbe9ff!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dialog .iema-btn.iema-btn-secondary:hover{background:#152233!important;border-color:#3c5370!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dialog .iema-approved{
  margin:18px 28px 0!important;
  border-radius:14px!important;
  border:1px solid rgba(57,217,138,.28)!important;
  background:rgba(17,86,52,.35)!important;
  color:#b8f3d4!important;
}

@media(max-width:860px){
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-modal-head,
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-exceptions-head,
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dancer-groups,
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-actions{padding-left:20px!important;padding-right:20px!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-exception-form{margin-left:20px!important;margin-right:20px!important}
}
@media(max-width:700px){
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary{grid-template-columns:1fr!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-modal{padding:10px!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-dialog{width:100%!important;max-height:94vh!important;border-radius:22px!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-modal-head h2,
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-exceptions-head h2{font-size:28px!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-exceptions-head{display:block!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-exceptions-head .iema-btn{width:100%!important;margin-top:14px!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row,
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row{grid-template-columns:1fr!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row time,
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row time{grid-template-columns:repeat(2,auto)!important;justify-content:flex-start!important;align-items:center!important;padding:10px 12px!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row>a{width:100%!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-picker{grid-template-columns:1fr!important}
}

/* v0.14.231 — Parent week clickable schedule + class detail modal */
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row-action{appearance:none!important;width:100%!important;text-align:left!important;color:inherit!important;cursor:pointer!important;font:inherit!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row-action:hover,body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row-action:focus-visible{transform:translateY(-1px)!important;border-color:#3555d9!important;background:#0f1823!important;box-shadow:0 12px 28px rgba(0,0,0,.20)!important;outline:none!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-copy{display:grid!important;min-width:0!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-copy>strong{color:#fff!important;font-size:15px!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-copy>small{color:#8ea5c1!important;font-size:12px!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-copy>em{color:#6bcfff!important;font-size:11px!important;font-style:normal!important;margin-top:5px!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-chevron{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:12px!important;background:#101925!important;border:1px solid #26384d!important;color:#91d9ff!important;font-size:25px!important;line-height:1!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-dialog{width:min(780px,calc(100vw - 36px))!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-body{padding:22px 28px 8px!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-grid>div{min-width:0!important;padding:16px!important;border-radius:16px!important;border:1px solid #1f2d3d!important;background:linear-gradient(180deg,#0e1621 0%,#0a1119 100%)!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-grid>div>span{display:block!important;margin-bottom:6px!important;color:#7690ad!important;font-size:10px!important;font-weight:900!important;letter-spacing:.1em!important;text-transform:uppercase!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-grid>div>strong{display:block!important;color:#fff!important;font-size:15px!important;line-height:1.35!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-grid>div>small{display:block!important;margin-top:4px!important;color:#8fa5bf!important;font-size:12px!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-grid>div>p{margin:0!important;color:#c7d5e6!important;font-size:13px!important;line-height:1.55!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-wide{grid-column:1/-1!important}
@media(max-width:700px){body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row-action{grid-template-columns:58px minmax(0,1fr) 34px!important}body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row-action time{grid-template-columns:1fr!important}body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-body{padding:18px 18px 6px!important}body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-grid{grid-template-columns:1fr!important}body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-wide{grid-column:auto!important}}

/* v0.14.233 — isolated Parent class roster modal */
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-actions{justify-content:space-between!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-roster-dialog{width:min(600px,calc(100vw - 36px))!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-roster-body{display:grid!important;gap:9px!important;padding:22px 28px 8px!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-roster-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:13px 15px!important;border-radius:14px!important;border:1px solid #1f2d3d!important;background:#0c131c!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-roster-row strong{color:#fff!important;font-size:14px!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-roster-row small{color:#81d4ff!important;font-size:10px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-roster-row.is-current{border-color:#3555d9!important;background:#101a29!important}
@media(max-width:700px){body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-detail-actions{display:grid!important;grid-template-columns:1fr!important}body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-roster-body{padding:18px 18px 6px!important}}

/* v0.14.234 — Document upload completion feedback */
.iema-doc-library .iema-doc-upload-success{
 display:flex!important;align-items:flex-start!important;gap:12px!important;
 margin:0 0 18px!important;padding:14px 16px!important;
 border:1px solid rgba(57,217,138,.34)!important;border-radius:16px!important;
 background:linear-gradient(180deg,rgba(31,111,73,.28) 0%,rgba(18,75,49,.18) 100%)!important;
 color:#e7fff2!important;
}
.iema-doc-library .iema-doc-upload-success-icon{
 display:grid!important;place-items:center!important;width:34px!important;height:34px!important;min-width:34px!important;
 border-radius:50%!important;background:rgba(57,217,138,.17)!important;border:1px solid rgba(57,217,138,.4)!important;
 color:#8df0bd!important;font-weight:950!important;
}
.iema-doc-library .iema-doc-upload-success strong{display:block!important;color:#fff!important;font-size:14px!important;line-height:1.25!important}
.iema-doc-library .iema-doc-upload-success p{margin:4px 0 0!important;color:#bcd9ca!important;font-size:12px!important;line-height:1.45!important}


/* v0.14.239 — Parent Privates time-slot containment */
body.iema-parent-portal-page .iema-parent-shell .iema-private-browser,
body.iema-parent-portal-page .iema-parent-shell .iema-private-slot-grid,
body.iema-parent-portal-page .iema-parent-shell .iema-private-slot-day{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-private-slot-day{
  grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))!important;
  gap:10px!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-private-slot{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  padding:12px 13px!important;
  overflow:hidden!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-private-slot>span{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-private-slot>span strong,
body.iema-parent-portal-page .iema-parent-shell .iema-private-slot>span small{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  white-space:normal!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-private-slot>span strong{
  font-size:15px!important;
  line-height:1.2!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-private-slot>span small{
  margin-top:3px!important;
  line-height:1.35!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-private-slot .iema-btn{
  flex:0 0 auto!important;
  min-width:70px!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-private-dancer-choice,
body.iema-parent-portal-page .iema-parent-shell .iema-private-dancer-picker{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-private-dancer-picker select{
  min-width:0!important;
  max-width:100%!important;
}

@media(max-width:760px){
  body.iema-parent-portal-page .iema-parent-shell .iema-private-slot-day{
    grid-template-columns:1fr!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-private-slot{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
    padding:11px 12px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-private-slot .iema-btn{
    min-width:64px!important;
    padding:9px 11px!important;
  }
}

@media(max-width:390px){
  body.iema-parent-portal-page .iema-parent-shell .iema-private-slot{
    grid-template-columns:1fr!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-private-slot .iema-btn{
    width:100%!important;
  }
}

/* v0.14.240 — Availability UX rebuild */
.iema-availability-v3{display:grid;gap:18px;min-width:0}
.iema-availability-success{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(59,220,139,.35);border-radius:16px;background:rgba(28,104,68,.22)}
.iema-availability-success>b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(59,220,139,.15);color:#88efb7}
.iema-availability-success span{display:grid}.iema-availability-success strong{color:#fff}.iema-availability-success small{color:#a8c9b8;margin-top:2px}
.iema-availability-person-switch{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.iema-availability-person-switch>span{color:#8da2b7;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.iema-availability-person-switch>div{display:flex;gap:7px;flex-wrap:wrap}.iema-availability-person-switch a{padding:8px 12px;border:1px solid #263a4e;border-radius:999px;background:#0e1823;color:#aebfd0;text-decoration:none!important;font-size:12px;font-weight:800}.iema-availability-person-switch a.active{background:rgba(32,183,255,.14);border-color:#2879a2;color:#d8f3ff}
.iema-availability-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:22px 24px;border:1px solid #213245;border-radius:20px;background:linear-gradient(135deg,#0e1925 0%,#0a121b 100%)}.iema-availability-hero h2{margin:4px 0 7px;color:#fff;font-size:clamp(24px,3vw,32px)}.iema-availability-hero p{margin:0;color:#91a6ba;max-width:680px}
.iema-availability-v3-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.75fr);gap:18px;align-items:start}
.iema-availability-normal-week,.iema-availability-exceptions-v3{min-width:0;border:1px solid #223447;border-radius:20px;background:linear-gradient(180deg,#0d1722 0%,#09121b 100%);overflow:hidden}
.iema-availability-normal-week>header,.iema-availability-exceptions-v3>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid #203143;background:#101c28}.iema-availability-normal-week>header>div,.iema-availability-exceptions-v3>header>div{display:flex;align-items:center;gap:12px}.iema-availability-step{display:grid;place-items:center;width:32px;height:32px;border-radius:11px;background:rgba(32,183,255,.14);border:1px solid rgba(32,183,255,.28);color:#a8e4ff;font-size:13px;font-weight:950}.iema-availability-normal-week h3,.iema-availability-exceptions-v3 h3{margin:0;color:#fff;font-size:18px}.iema-availability-normal-week header p,.iema-availability-exceptions-v3 header p{margin:3px 0 0;color:#879db2;font-size:11px}
.iema-availability-days{display:grid}.iema-availability-day-v3{display:grid;grid-template-columns:minmax(120px,.8fr) 138px minmax(260px,1.2fr);gap:16px;align-items:center;min-width:0;padding:13px 18px;border-bottom:1px solid #1b2a39;transition:.15s}.iema-availability-day-v3:last-child{border-bottom:0}.iema-availability-day-v3.is-on{background:rgba(25,58,82,.18)}.iema-availability-day-v3.is-off{background:rgba(6,12,18,.25)}.iema-availability-day-name{display:grid;min-width:0}.iema-availability-day-name strong{color:#fff;font-size:14px}.iema-availability-day-name small{margin-top:3px;color:#7890a7;font-size:11px}
.iema-availability-choice{display:block;cursor:pointer}.iema-availability-choice input{position:absolute;opacity:0;pointer-events:none}.iema-availability-choice span{display:grid;place-items:center;min-height:40px;padding:0 10px;border:1px solid #314254;border-radius:12px;background:#111b25}.iema-availability-choice b,.iema-availability-choice em{font-size:11px;font-style:normal;font-weight:900}.iema-availability-choice b{display:none;color:#a9f0c7}.iema-availability-choice em{display:block;color:#a4b0bd}.iema-availability-choice input:checked+span{border-color:rgba(57,217,138,.42);background:rgba(33,113,75,.18)}.iema-availability-choice input:checked+span b{display:block}.iema-availability-choice input:checked+span em{display:none}
.iema-availability-times{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:end;min-width:0}.iema-availability-times>span{padding-bottom:10px;color:#60778e;font-size:11px}.iema-availability-times label{display:grid;gap:4px;min-width:0}.iema-availability-times label>span{color:#718aa1;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.iema-availability-times select{width:100%;min-width:0}
.iema-availability-day-v3.is-off .iema-availability-times{visibility:hidden;pointer-events:none}
.iema-availability-save{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-top:1px solid #203143;background:#0b151f}.iema-availability-save p{display:grid;margin:0}.iema-availability-save strong{color:#dce8f3;font-size:12px}.iema-availability-save span{margin-top:3px;color:#71879d;font-size:10px}
.iema-exception-explainer{display:grid;gap:6px;margin:15px 16px 0;padding:13px 14px;border:1px solid #26384b;border-radius:14px;background:#0b151f}.iema-exception-explainer strong{color:#bcd0e2;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.iema-exception-explainer span{color:#7f95aa;font-size:10px;line-height:1.4}
.iema-availability-exception-v3{display:grid;gap:14px;margin:15px 16px;padding:16px;border:1px solid #2a3e52;border-radius:16px;background:#101a25}.iema-availability-exception-v3>label{display:grid;gap:6px;color:#aebfd0;font-size:11px;font-weight:800}.iema-availability-exception-v3 fieldset{margin:0;padding:0;border:0}.iema-availability-exception-v3 legend{margin-bottom:8px;color:#aebfd0;font-size:11px;font-weight:800}
.iema-exception-type-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px}.iema-exception-type-cards label{cursor:pointer}.iema-exception-type-cards input{position:absolute;opacity:0}.iema-exception-type-cards span{display:grid;gap:4px;height:100%;padding:12px;border:1px solid #2a3d50;border-radius:13px;background:#0d1721}.iema-exception-type-cards b{color:#eef5fb;font-size:12px}.iema-exception-type-cards small{color:#73889e;font-size:9px;line-height:1.35}.iema-exception-type-cards input:checked+span{border-color:#3886ad;background:rgba(32,183,255,.11);box-shadow:inset 0 0 0 1px rgba(32,183,255,.12)}
.iema-all-day-choice{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important}.iema-availability-exception-v3 .iema-exception-times{display:grid;grid-template-columns:1fr 1fr;gap:10px}.iema-availability-exception-v3 .iema-exception-times label{display:grid;gap:5px}.iema-availability-exception-actions{display:flex;justify-content:flex-end;gap:8px}
.iema-upcoming-exceptions{display:grid;gap:8px;padding:16px}.iema-upcoming-exceptions h4{margin:0 0 4px;color:#8fa4b8;font-size:10px;text-transform:uppercase;letter-spacing:.09em}.iema-upcoming-exception{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px;border:1px solid #24374a;border-radius:13px;background:#0b151f;color:inherit;text-decoration:none!important}.iema-upcoming-exception.is-unavailable{border-left:3px solid #ef6574}.iema-upcoming-exception.is-available{border-left:3px solid #42d886}.iema-upcoming-exception time{color:#a9bdce;font-size:10px;font-weight:900}.iema-upcoming-exception span{display:grid;min-width:0}.iema-upcoming-exception strong{color:#eef5fb;font-size:12px}.iema-upcoming-exception small{color:#8499ad;font-size:10px}.iema-upcoming-exception em{margin-top:3px;color:#aebccc;font-size:9px;font-style:normal}
.iema-faculty-agenda-roster{margin-top:12px;border-top:1px solid #243548;padding-top:10px}.iema-faculty-agenda-roster summary{cursor:pointer;color:#9ccfe8;font-size:11px;font-weight:850}.iema-faculty-agenda-roster summary b{display:inline-flex;min-width:20px;height:20px;align-items:center;justify-content:center;margin-left:5px;border-radius:999px;background:#172b3d}.iema-faculty-agenda-roster>div{display:grid;gap:7px;margin-top:10px}.iema-faculty-agenda-roster>div>span{display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;align-items:center;padding:8px 9px;border:1px solid #213346;border-radius:11px;background:#0b151f}.iema-faculty-agenda-roster img{width:32px;height:32px;border-radius:10px;object-fit:cover;grid-row:1/3}.iema-faculty-agenda-roster b{color:#e9f2fa;font-size:11px}.iema-faculty-agenda-roster em{color:#ee8490;font-size:9px;font-style:normal;font-weight:850}.iema-faculty-agenda-roster .has-availability-warning{border-color:rgba(239,101,116,.36);background:rgba(99,31,42,.18)}
@media(max-width:980px){.iema-availability-v3-grid{grid-template-columns:1fr}.iema-availability-day-v3{grid-template-columns:130px 130px minmax(0,1fr)}}
@media(max-width:700px){.iema-availability-hero{align-items:flex-start;flex-direction:column;padding:18px}.iema-availability-hero .iema-btn{width:100%}.iema-availability-normal-week>header,.iema-availability-exceptions-v3>header{align-items:flex-start;flex-direction:column}.iema-availability-exceptions-v3>header .iema-btn{width:100%}.iema-availability-day-v3{grid-template-columns:minmax(0,1fr) 120px;padding:12px;gap:10px}.iema-availability-times{grid-column:1/-1}.iema-availability-day-v3.is-off .iema-availability-times{display:none}.iema-availability-save{align-items:flex-start;flex-direction:column}.iema-availability-save .iema-btn{width:100%}.iema-exception-type-cards{grid-template-columns:1fr}.iema-availability-exception-v3 .iema-exception-times{grid-template-columns:1fr}.iema-upcoming-exception{grid-template-columns:70px minmax(0,1fr) auto}}


/* v0.14.242 — Multiple availability windows per day */
.iema-availability-day-v3{display:block!important;padding:0!important}
.iema-availability-day-top{display:grid;grid-template-columns:minmax(0,1fr) 138px;gap:16px;align-items:center;padding:13px 18px}
.iema-availability-slot-list{display:grid;gap:8px;padding:0 18px 10px 18px}
.iema-availability-slot-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:8px;align-items:end;padding:10px;border:1px solid #24384b;border-radius:13px;background:#0c1620}
.iema-availability-slot-row label{display:grid;gap:4px;min-width:0}.iema-availability-slot-row label>span{color:#718aa1;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.iema-availability-slot-row select{width:100%;min-width:0}.iema-availability-slot-to{padding-bottom:10px;color:#60778e;font-size:11px}
.iema-availability-remove-slot{align-self:end;min-height:40px;padding:0 10px;border:1px solid #3b4652;border-radius:10px;background:#131a21;color:#aeb9c4;font-size:10px;font-weight:850;cursor:pointer}.iema-availability-remove-slot:hover{border-color:#aa5662;color:#ffc0c7;background:rgba(100,30,40,.22)}
.iema-availability-add-slot{margin:0 18px 13px;padding:8px 11px;border:1px dashed #33516a;border-radius:10px;background:rgba(32,183,255,.05);color:#9bdfff;font-size:10px;font-weight:900;cursor:pointer}.iema-availability-add-slot:hover{background:rgba(32,183,255,.11);border-color:#3d86aa}
.iema-availability-day-v3.is-off .iema-availability-slot-list,.iema-availability-day-v3.is-off .iema-availability-add-slot{display:none!important}
@media(max-width:700px){.iema-availability-day-top{grid-template-columns:minmax(0,1fr) 120px;padding:12px}.iema-availability-slot-list{padding:0 12px 10px}.iema-availability-slot-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:6px}.iema-availability-remove-slot{grid-column:1/-1;width:100%;min-height:34px}.iema-availability-add-slot{margin:0 12px 12px;width:calc(100% - 24px)}}
@media(max-width:420px){.iema-availability-slot-row{grid-template-columns:1fr}.iema-availability-slot-to{display:none}.iema-availability-day-top{grid-template-columns:1fr}.iema-availability-choice{max-width:140px}}

/* v0.14.244 — Parent full-screen dancer calendar */
body.iema-parent-portal-page .iema-parent-calendar-dancer-strip a{
 display:inline-flex!important;align-items:center!important;gap:7px!important;
}
body.iema-parent-portal-page .iema-parent-calendar-dancer-strip a>i,
.iema-parent-full-calendar .iema-full-calendar-dancer-switcher a>i,
.iema-parent-full-calendar .iema-full-calendar-dancer-color>i{
 display:inline-block!important;width:9px!important;height:9px!important;min-width:9px!important;border-radius:50%!important;
 background:hsl(var(--dancer-hue,var(--iema-parent-dancer-hue,198)) 78% 57%)!important;
 box-shadow:0 0 0 3px hsl(var(--dancer-hue,var(--iema-parent-dancer-hue,198)) 78% 57% / .14)!important;
}
body.iema-parent-portal-page .iema-parent-calendar-dancer-strip a.active{
 border-color:hsl(var(--dancer-hue) 72% 52%)!important;
 background:hsl(var(--dancer-hue) 65% 20% / .55)!important;
 color:#fff!important;
}
body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-event:not(.iema-event-available):not(.iema-event-unavailable),
.iema-parent-full-calendar .iema-calendar-event:not(.iema-event-available):not(.iema-event-unavailable){
 background:hsl(var(--iema-parent-dancer-hue,198) 58% 23%)!important;
 border-left:3px solid hsl(var(--iema-parent-dancer-hue,198) 80% 58%)!important;
 color:#fff!important;
 box-shadow:inset 0 0 0 1px hsl(var(--iema-parent-dancer-hue,198) 70% 62% / .16)!important;
}
.iema-parent-full-calendar{
 min-height:100vh!important;
 background:#020407!important;
 color:#fff!important;
}
.iema-parent-full-calendar .iema-full-calendar-bar{
 display:grid!important;
 grid-template-columns:minmax(230px,auto) minmax(0,1fr) auto!important;
 align-items:center!important;
 gap:18px!important;
}
.iema-parent-full-calendar .iema-full-calendar-heading{
 min-width:0!important;
}
.iema-parent-full-calendar .iema-full-calendar-heading>div{
 min-width:0!important;
}
.iema-parent-full-calendar .iema-full-calendar-dancer-color{
 display:flex!important;align-items:center!important;gap:7px!important;
 margin-top:6px!important;color:#9eb2c6!important;font-size:10px!important;font-weight:800!important;
}
.iema-parent-full-calendar .iema-full-calendar-dancer-switcher{
 display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
 min-width:0!important;overflow-x:auto!important;padding:4px!important;
 scrollbar-width:thin!important;
}
.iema-parent-full-calendar .iema-full-calendar-dancer-switcher a{
 display:inline-flex!important;align-items:center!important;gap:7px!important;flex:0 0 auto!important;
 min-height:38px!important;padding:0 12px!important;border-radius:12px!important;
 border:1px solid #26384c!important;background:#0e1722!important;color:#aab9c9!important;
 text-decoration:none!important;font-size:11px!important;font-weight:850!important;
}
.iema-parent-full-calendar .iema-full-calendar-dancer-switcher a.active{
 border-color:hsl(var(--dancer-hue) 72% 52%)!important;
 background:hsl(var(--dancer-hue) 65% 20% / .58)!important;
 color:#fff!important;
 box-shadow:0 8px 22px hsl(var(--dancer-hue) 80% 45% / .12)!important;
}
.iema-parent-full-calendar .iema-full-calendar-body{
 min-height:calc(100vh - 94px)!important;
}
.iema-parent-full-calendar:fullscreen,
.iema-parent-full-calendar:-webkit-full-screen{
 width:100vw!important;height:100vh!important;overflow:auto!important;background:#020407!important;
}
@media(max-width:900px){
 .iema-parent-full-calendar .iema-full-calendar-bar{
  grid-template-columns:1fr auto!important;
 }
 .iema-parent-full-calendar .iema-full-calendar-dancer-switcher{
  grid-column:1/-1!important;grid-row:2!important;justify-content:flex-start!important;width:100%!important;
 }
}
@media(max-width:620px){
 .iema-parent-full-calendar .iema-full-calendar-bar{
  grid-template-columns:1fr!important;padding:13px!important;
 }
 .iema-parent-full-calendar .iema-full-calendar-actions{
  display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;
 }
 .iema-parent-full-calendar .iema-full-calendar-actions .iema-btn{
  width:100%!important;
 }
 .iema-parent-full-calendar .iema-full-calendar-dancer-switcher{
  grid-row:auto!important;grid-column:auto!important;
 }
 .iema-parent-full-calendar .iema-full-calendar-body{
  min-height:0!important;padding:10px!important;
 }
}

/* v0.14.247 — Remove misleading avatar-menu notification status dot globally
   The legacy dot represented push permission state, not unread notifications.
   Keep the explicit Notifications: On/Off/Blocked text and bell icon only. */
.iema-portal-user nav .iema-push-menu-button.is-on::before,
.iema-portal-user nav .iema-push-menu-button.is-off::before,
.iema-portal-user nav .iema-push-menu-button.is-blocked::before,
body.iema-parent-portal-page .iema-portal-user nav .iema-push-menu-button::before,
body.iema-dancer-portal-page .iema-portal-user nav .iema-push-menu-button::before,
body.iema-faculty-portal-page .iema-portal-user nav .iema-push-menu-button::before,
body.iema-owner-portal-page .iema-portal-user nav .iema-push-menu-button::before{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  margin:0!important;
}


/* v0.14.250 — Studio Snapshot accent normalization
   Dancers Scheduled / Rooms in Use were still inheriting legacy cyan rules. */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-grid
.iema-owner-kpi-modal-trigger .iema-owner-kpi-content>small{
  color:var(--studio-accent)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-grid
.iema-owner-kpi-modal-trigger>em{
  color:var(--studio-accent)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-grid
.iema-owner-kpi-modal-trigger .iema-owner-kpi-meter{
  border-color:color-mix(in srgb,var(--studio-accent) 34%,#2a3441)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-grid
.iema-owner-kpi-modal-trigger .iema-owner-kpi-meter>span{
  background:var(--studio-accent)!important;
  box-shadow:0 0 14px color-mix(in srgb,var(--studio-accent) 28%,transparent)!important;
}
/* The ratio suffix remains intentionally muted; do not let older cyan rules tint it. */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-snapshot-grid
.iema-owner-kpi-value>i{
  color:#8797aa!important;
}

/* v0.14.254 — Owner Private Lessons becomes a schedule view */
body.iema-owner-portal-page .iema-private-owner-schedule{
 display:grid!important;gap:9px!important;
}
body.iema-owner-portal-page .iema-private-owner-schedule-row{
 display:grid!important;
 grid-template-columns:minmax(150px,1.15fr) repeat(4,minmax(120px,1fr))!important;
 gap:14px!important;align-items:center!important;
 padding:15px 16px!important;
 border:1px solid rgba(255,255,255,.08)!important;
 border-radius:16px!important;
 background:linear-gradient(180deg,#171c22,#13181e)!important;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
body.iema-owner-portal-page .iema-private-owner-schedule-row>div{
 display:grid!important;gap:4px!important;min-width:0!important;
}
body.iema-owner-portal-page .iema-private-owner-schedule-row span{
 color:#7f8e9e!important;font-size:8px!important;font-weight:950!important;letter-spacing:.12em!important;
}
body.iema-owner-portal-page .iema-private-owner-schedule-row strong{
 color:#f4f7fa!important;font-size:12px!important;line-height:1.35!important;overflow-wrap:anywhere!important;
}
body.iema-owner-portal-page .iema-private-owner-schedule-row small{
 color:#9da9b5!important;font-size:10px!important;line-height:1.35!important;
}
body.iema-owner-portal-page .iema-private-owner-when strong{
 color:var(--studio-accent)!important;font-size:14px!important;
}
@media(max-width:1050px){
 body.iema-owner-portal-page .iema-private-owner-schedule-row{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
 }
}
@media(max-width:620px){
 body.iema-owner-portal-page .iema-private-owner-schedule-row{
  grid-template-columns:1fr!important;
 }
}

/* v0.14.255 — Notification center action restoration */
.iema-notification-item{position:relative!important}
.iema-notification-item-actions{display:flex!important;align-items:center!important;gap:6px!important;flex:0 0 auto!important;margin-left:auto!important;padding-left:8px!important}
.iema-notification-item-actions form{margin:0!important;padding:0!important}
.iema-notification-item-action{min-height:28px!important;padding:0 9px!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:9px!important;background:rgba(255,255,255,.04)!important;color:#b9c5d0!important;font-size:9px!important;font-weight:900!important;cursor:pointer!important;white-space:nowrap!important}
.iema-notification-item-action:hover,.iema-notification-item-action:focus-visible{border-color:var(--studio-accent)!important;color:var(--studio-accent)!important}
.iema-notification-item-action.is-archive{color:#93a2b1!important}
@media(max-width:680px){.iema-notification-item{display:grid!important;grid-template-columns:1fr!important}.iema-notification-item-actions{justify-content:flex-end!important;width:100%!important;padding:6px 0 0!important}}

/* v0.14.257 — cleaner Wall/document presentation and persisted per-user NEW state. */
.iema-doc-card[data-iema-document-card]{cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}
.iema-doc-card[data-iema-document-card]:hover{border-color:rgba(131,220,227,.28);background:#272c31;transform:translateY(-1px)}
.iema-doc-card[data-iema-document-card]:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.iema-doc-card.is-unread{border-color:rgba(131,220,227,.24)}
.iema-doc-meta-label{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.iema-doc-card .iema-wall-new-badge,.iema-wall-document-link .iema-wall-new-badge{display:inline-flex;vertical-align:middle;margin-left:5px}
.iema-wall-document-link{cursor:pointer}

/* =========================================================
   v0.14.258 — compact, contained Document Library cards
   ========================================================= */
.iema-doc-library{overflow:hidden!important}
.iema-doc-library .iema-doc-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.iema-doc-library .iema-doc-card{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:10px!important;
  row-gap:3px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:72px!important;
  padding:10px 11px!important;
  box-sizing:border-box!important;
  border-radius:13px!important;
  overflow:hidden!important;
}
.iema-doc-library .iema-doc-icon{
  width:34px!important;
  height:34px!important;
  border-radius:10px!important;
  font-size:16px!important;
  flex:0 0 34px!important;
}
.iema-doc-library .iema-doc-card>div:nth-child(2){
  min-width:0!important;
  overflow:hidden!important;
}
.iema-doc-library .iema-doc-meta-label{
  gap:5px!important;
  margin:0 0 1px!important;
  font-size:8px!important;
  line-height:1.15!important;
}
.iema-doc-library .iema-doc-card h3{
  margin:1px 0 2px!important;
  font-size:14px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.iema-doc-library .iema-doc-card p{
  margin:2px 0!important;
  font-size:10px!important;
  line-height:1.3!important;
  display:-webkit-box!important;
  -webkit-line-clamp:1!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
.iema-doc-library .iema-doc-card small{
  margin-top:1px!important;
  font-size:9px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}
.iema-doc-library .iema-doc-card .iema-audience-summary{
  margin-top:3px!important;
  gap:3px!important;
  min-width:0!important;
  overflow:hidden!important;
  flex-wrap:nowrap!important;
}
.iema-doc-library .iema-doc-card .iema-audience-summary em{
  max-width:96px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:7px!important;
  padding:2px 5px!important;
}
.iema-doc-library .iema-doc-card>footer{
  grid-column:3!important;
  grid-row:1!important;
  align-self:center!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-end!important;
  gap:4px!important;
  min-width:52px!important;
  margin:0!important;
  padding:0!important;
}
.iema-doc-library .iema-doc-card>footer .iema-btn{
  min-height:30px!important;
  padding:0 11px!important;
  border-radius:9px!important;
  font-size:9px!important;
  white-space:nowrap!important;
}
.iema-doc-library .iema-doc-card>footer form{margin:0!important}
.iema-doc-library .iema-doc-card>footer .iema-text-action{
  font-size:8px!important;
  line-height:1.1!important;
}
.iema-doc-library .iema-doc-filters{
  gap:8px!important;
  margin-bottom:10px!important;
}
.iema-doc-library .iema-doc-filters input,
.iema-doc-library .iema-doc-filters select{
  min-height:40px!important;
  padding:8px 11px!important;
}
.iema-doc-library .iema-doc-filters .iema-btn{
  min-height:40px!important;
  padding:0 14px!important;
}
@media(max-width:1180px){
  .iema-doc-library .iema-doc-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .iema-doc-library .iema-doc-grid{grid-template-columns:1fr!important}
  .iema-doc-library .iema-doc-card{grid-template-columns:32px minmax(0,1fr) auto!important;padding:9px 10px!important;min-height:66px!important}
  .iema-doc-library .iema-doc-icon{width:32px!important;height:32px!important}
  .iema-doc-library .iema-doc-card h3{font-size:13px!important}
}


/* v0.14.260 — cumulative Document Library filters */
.iema-doc-library .iema-doc-filters{
  grid-template-columns:minmax(0,1fr) minmax(160px,.35fr) auto!important;
  align-items:center!important;
}
.iema-doc-library .iema-doc-clear-filters{
  min-height:40px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:10px;
  background:rgba(255,255,255,.045);
  color:#d8e1ec;
  font:inherit;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
  white-space:nowrap;
}
.iema-doc-library .iema-doc-clear-filters:hover{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.28)}
.iema-doc-library .iema-doc-active-filters{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:-3px 0 10px;
}
.iema-doc-library .iema-doc-active-filters span{
  display:inline-flex;
  align-items:center;
  gap:4px;
  min-height:24px;
  padding:3px 8px;
  border:1px solid rgba(98,211,255,.18);
  border-radius:999px;
  background:rgba(98,211,255,.07);
  color:#aebdcc;
  font-size:10px;
  line-height:1.2;
}
.iema-doc-library .iema-doc-active-filters strong{color:#edf7ff;font-weight:700}
@media(max-width:700px){
  .iema-doc-library .iema-doc-filters{grid-template-columns:1fr!important}
  .iema-doc-library .iema-doc-clear-filters{width:100%}
}

/* v0.14.263 — Parent Availability task launcher + focused modal workflows */
.iema-parent-availability-simple-head{margin-bottom:18px!important}
.iema-parent-availability-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
.iema-parent-availability-action{appearance:none!important;width:100%!important;min-width:0!important;border:1px solid #d7dee8!important;background:#fff!important;border-radius:18px!important;padding:18px!important;display:grid!important;grid-template-columns:46px minmax(0,1fr) 18px!important;gap:13px!important;align-items:center!important;text-align:left!important;cursor:pointer!important;color:#172033!important;box-shadow:0 5px 16px rgba(20,33,52,.06)!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important}
.iema-parent-availability-action:hover,.iema-parent-availability-action:focus-visible{transform:translateY(-2px)!important;border-color:color-mix(in srgb,var(--studio-accent,var(--accent)) 58%,#cbd5e1)!important;box-shadow:0 9px 24px rgba(20,33,52,.10)!important;outline:none!important}
.iema-parent-availability-action-icon{width:46px!important;height:46px!important;border-radius:14px!important;display:grid!important;place-items:center!important;background:color-mix(in srgb,var(--studio-accent,var(--accent)) 12%,#f4f7fb)!important;color:color-mix(in srgb,var(--studio-accent,var(--accent)) 82%,#172033)!important;font-size:22px!important;font-weight:900!important}
.iema-parent-availability-action>span:nth-child(2){display:grid!important;gap:3px!important;min-width:0!important}
.iema-parent-availability-action strong{font-size:15px!important;line-height:1.2!important;color:#172033!important}
.iema-parent-availability-action small{font-size:11px!important;line-height:1.4!important;color:#718096!important;font-weight:650!important}
.iema-parent-availability-action>b{font-size:22px!important;color:#8b98aa!important;font-weight:500!important}
.iema-parent-availability-modal{z-index:1000001!important}
.iema-parent-availability-modal .iema-create-modal-backdrop{background:rgba(12,18,27,.70)!important;backdrop-filter:blur(7px)!important}
.iema-parent-availability-modal-dialog{width:min(980px,calc(100vw - 34px))!important;max-height:92vh!important;overflow:auto!important;background:#f5f7fa!important;color:#172033!important;border:1px solid #d6dde7!important;border-radius:22px!important;box-shadow:0 32px 90px rgba(0,0,0,.32)!important;padding:22px!important}
.iema-parent-availability-modal-dialog>.iema-create-modal-close{position:sticky!important;float:right!important;top:0!important;z-index:5!important;background:#fff!important;border:1px solid #d7dee8!important;color:#334155!important}
.iema-parent-availability-modal-dialog>.iema-create-modal-head{padding:2px 52px 18px 2px!important;border-bottom:1px solid #dce2ea!important;margin-bottom:18px!important}
.iema-parent-availability-modal-dialog>.iema-create-modal-head h2{color:#172033!important;margin:3px 0 5px!important}
.iema-parent-availability-modal-dialog>.iema-create-modal-head p{color:#6f7d90!important;margin:0!important}
.iema-parent-availability-modal-dialog .iema-availability-normal-week,.iema-parent-availability-modal-dialog .iema-availability-exceptions-v3{margin:0!important;box-shadow:none!important;max-width:none!important}
.iema-parent-availability-modal-dialog .iema-availability-normal-week>header,.iema-parent-availability-modal-dialog .iema-availability-exceptions-v3>header{display:none!important}
.iema-parent-availability-calendar-dialog{width:min(1180px,calc(100vw - 34px))!important}
.iema-parent-availability-calendar-body{overflow:auto!important;padding:1px!important}
.iema-parent-availability-calendar-body .iema-calendar{min-width:760px!important}
.iema-parent-availability-modal-footer{display:flex!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:wrap!important;margin-top:18px!important;padding-top:16px!important;border-top:1px solid #dce2ea!important}
body.iema-owner-create-modal-open{overflow:hidden!important}
@media(max-width:850px){.iema-parent-availability-actions{grid-template-columns:1fr!important}.iema-parent-availability-action{padding:15px!important}.iema-parent-availability-modal-dialog{width:calc(100vw - 16px)!important;max-height:95vh!important;border-radius:18px!important;padding:16px!important}.iema-parent-availability-calendar-dialog{width:calc(100vw - 16px)!important}.iema-parent-availability-modal-dialog>.iema-create-modal-head{padding-right:44px!important}.iema-parent-availability-modal-footer{position:sticky!important;bottom:-16px!important;background:#f5f7fa!important;padding-bottom:4px!important}}
@media(max-width:520px){.iema-parent-availability-action{grid-template-columns:42px minmax(0,1fr) 14px!important;gap:10px!important}.iema-parent-availability-action-icon{width:42px!important;height:42px!important;border-radius:12px!important}.iema-parent-availability-modal-footer .iema-btn{flex:1 1 auto!important;text-align:center!important}}


/* v0.14.264 — Parent Availability modal mobile calendar + responsive form repairs */
.iema-parent-availability-modal-dialog{overflow-x:hidden!important}
.iema-parent-availability-modal-dialog .iema-weekly-availability-form,
.iema-parent-availability-modal-dialog .iema-availability-days,
.iema-parent-availability-modal-dialog .iema-availability-day-v3,
.iema-parent-availability-modal-dialog .iema-availability-slot-list,
.iema-parent-availability-modal-dialog .iema-availability-slot-row{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
.iema-parent-availability-modal-dialog .iema-all-day-choice{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;width:auto!important;grid-template-columns:none!important}
.iema-parent-availability-modal-dialog .iema-all-day-choice input[type="checkbox"]{flex:0 0 auto!important;width:18px!important;height:18px!important;margin:0!important;padding:0!important}
.iema-parent-availability-modal-dialog .iema-all-day-choice>span{display:inline-block!important;margin:0!important;line-height:18px!important}

@media(max-width:760px){
  /* Use the same compact, tap-a-day month calendar behavior as the Parent Calendar. */
  body.iema-parent-portal-page .iema-parent-availability-calendar-body.iema-calendar-modal-body{
    width:100%!important;min-width:0!important;max-width:100%!important;padding:0!important;overflow-x:hidden!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-calendar{
    width:100%!important;min-width:0!important;max-width:100%!important;padding:8px 5px 10px!important;overflow:hidden!important;box-sizing:border-box!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-calendar-grid{
    display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;width:100%!important;min-width:0!important;max-width:100%!important;gap:2px!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-calendar-head b{
    min-width:0!important;width:auto!important;padding:5px 0!important;font-size:8px!important;text-align:center!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-calendar-day{
    min-width:0!important;width:auto!important;min-height:60px!important;height:60px!important;padding:5px 2px!important;overflow:hidden!important;border-radius:8px!important;box-sizing:border-box!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-calendar-event,
  body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-master-more,
  body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-calendar-day>small:not(.iema-mobile-calendar-summary){display:none!important}

  /* Weekly availability must fit the modal viewport without sideways scrolling. */
  .iema-parent-availability-modal-dialog{width:calc(100vw - 12px)!important;padding:13px!important;overflow-x:hidden!important}
  .iema-parent-availability-modal-dialog .iema-availability-normal-week{width:100%!important;min-width:0!important;overflow:hidden!important}
  .iema-parent-availability-modal-dialog .iema-availability-days{width:100%!important;overflow:hidden!important}
  .iema-parent-availability-modal-dialog .iema-availability-day-top{grid-template-columns:1fr!important;gap:8px!important;padding:11px!important}
  .iema-parent-availability-modal-dialog .iema-availability-choice{width:max-content!important;max-width:100%!important}
  .iema-parent-availability-modal-dialog .iema-availability-slot-list{padding:0 10px 9px!important;width:100%!important}
  .iema-parent-availability-modal-dialog .iema-availability-slot-row{grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important;padding:9px!important}
  .iema-parent-availability-modal-dialog .iema-availability-slot-row label{min-width:0!important;width:100%!important}
  .iema-parent-availability-modal-dialog .iema-availability-slot-row select{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
  .iema-parent-availability-modal-dialog .iema-availability-slot-to{display:none!important}
  .iema-parent-availability-modal-dialog .iema-availability-remove-slot{grid-column:1/-1!important;width:100%!important}
  .iema-parent-availability-modal-dialog .iema-availability-add-slot{width:calc(100% - 20px)!important;margin:0 10px 10px!important;box-sizing:border-box!important}
  .iema-parent-availability-modal-dialog .iema-availability-save{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
}

@media(max-width:430px){
  .iema-parent-availability-modal-dialog .iema-availability-slot-row{grid-template-columns:1fr!important}
}


/* v0.14.265 — Parent Availability modal containment + calendar surface cleanup */
.iema-parent-availability-modal .iema-parent-availability-modal-dialog{
  box-sizing:border-box!important;
  max-width:calc(100vw - 16px)!important;
  overflow-x:hidden!important;
}
.iema-parent-availability-modal .iema-parent-availability-modal-dialog *,
.iema-parent-availability-modal .iema-parent-availability-modal-dialog *::before,
.iema-parent-availability-modal .iema-parent-availability-modal-dialog *::after{
  box-sizing:border-box!important;
}
.iema-parent-availability-calendar-dialog,
.iema-parent-availability-calendar-body,
.iema-parent-availability-calendar-body .iema-calendar{
  background:#f5f7fa!important;
}
.iema-parent-availability-calendar-body{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  border-radius:16px!important;
}
.iema-parent-availability-calendar-body .iema-calendar{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
}

@media(max-width:760px){
  .iema-parent-availability-modal{
    padding:6px!important;
    overflow-x:hidden!important;
  }
  .iema-parent-availability-modal .iema-parent-availability-modal-dialog{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:13px!important;
  }
  .iema-parent-availability-modal .iema-weekly-availability-form,
  .iema-parent-availability-modal .iema-availability-normal-week,
  .iema-parent-availability-modal .iema-availability-days,
  .iema-parent-availability-modal .iema-availability-day-v3,
  .iema-parent-availability-modal .iema-availability-day-top,
  .iema-parent-availability-modal .iema-availability-slot-list,
  .iema-parent-availability-modal .iema-availability-slot-row,
  .iema-parent-availability-modal .iema-availability-save{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .iema-parent-availability-modal .iema-availability-slot-list{
    padding-left:10px!important;
    padding-right:10px!important;
  }
  .iema-parent-availability-modal .iema-availability-add-slot{
    width:calc(100% - 20px)!important;
    max-width:calc(100% - 20px)!important;
  }
  .iema-parent-availability-modal .iema-availability-save{
    padding-left:11px!important;
    padding-right:11px!important;
  }
  .iema-parent-availability-calendar-dialog,
  .iema-parent-availability-calendar-body,
  .iema-parent-availability-calendar-body .iema-calendar,
  .iema-parent-availability-calendar-body .iema-calendar-grid{
    background:#f5f7fa!important;
  }
}


/* v0.14.267 — screenshot-driven Parent Availability modal repair */
body.iema-parent-portal-page .iema-parent-availability-modal[hidden]{display:none!important}
body.iema-parent-portal-page .iema-parent-availability-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  display:grid!important;
  place-items:center!important;
  width:100vw!important;
  height:100dvh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
body.iema-parent-portal-page .iema-parent-availability-modal>.iema-create-modal-backdrop{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
body.iema-parent-portal-page .iema-parent-availability-modal>.iema-parent-availability-modal-dialog{
  position:relative!important;
  z-index:1!important;
  width:min(920px,calc(100vw - 20px))!important;
  max-width:calc(100vw - 20px)!important;
  height:auto!important;
  max-height:calc(100dvh - 20px)!important;
  margin:0!important;
  padding:20px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  box-sizing:border-box!important;
  background:linear-gradient(180deg,#0d1722 0%,#09121b 100%)!important;
  border:1px solid #294159!important;
  color:#f4f8fc!important;
}
body.iema-parent-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-close{
  position:absolute!important;
  top:16px!important;
  right:16px!important;
  float:none!important;
  background:#111c29!important;
  border:1px solid #35506d!important;
  color:#fff!important;
}
body.iema-parent-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-head{
  padding:2px 54px 18px 2px!important;
  border-bottom:1px solid #2a3a4d!important;
  margin:0 0 18px!important;
  min-width:0!important;
}
body.iema-parent-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-head h2{
  color:#fff!important;
  overflow-wrap:anywhere!important;
}
body.iema-parent-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-head p{color:#91a6ba!important}

/* Calendar modal: one continuous dark surface — no white grid/footer showing through. */
body.iema-parent-portal-page .iema-parent-availability-calendar-dialog,
body.iema-parent-portal-page .iema-parent-availability-calendar-body,
body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-calendar,
body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-calendar-grid,
body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-calendar-head{
  background:#070c12!important;
}
body.iema-parent-portal-page .iema-parent-availability-calendar-body{
  padding:10px!important;
  border:1px solid #223447!important;
  border-radius:16px!important;
}
body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-calendar-grid{gap:3px!important}
body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-calendar-day{border-color:#1e2c3b!important}
body.iema-parent-portal-page .iema-parent-availability-modal-footer{
  position:static!important;
  bottom:auto!important;
  margin-top:18px!important;
  padding:16px 0 0!important;
  border-top:1px solid #2a3a4d!important;
  background:transparent!important;
}

/* Weekly availability: every layer participates in the same bounded width. */
body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-normal-week,
body.iema-parent-portal-page .iema-parent-availability-modal .iema-weekly-availability-form,
body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-days,
body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-day-v3,
body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-day-top,
body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-day-name,
body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-slot-list,
body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-slot-row,
body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-save{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-day-name small{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-slot-row label,
body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-slot-row select{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

@media(max-width:760px){
  body.iema-parent-portal-page .iema-parent-availability-modal{
    place-items:center!important;
    padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal>.iema-parent-availability-modal-dialog{
    width:100%!important;
    max-width:100%!important;
    max-height:calc(100dvh - max(16px,env(safe-area-inset-top) + env(safe-area-inset-bottom)))!important;
    padding:16px 14px!important;
    border-radius:18px!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-head{
    padding:0 48px 15px 0!important;
    margin-bottom:14px!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-head h2{
    font-size:clamp(24px,7vw,32px)!important;
    line-height:1.08!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-head p{
    font-size:13px!important;
    line-height:1.45!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-day-top{
    grid-template-columns:1fr!important;
    gap:9px!important;
    padding:12px!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-choice{
    width:max-content!important;
    max-width:100%!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-slot-list{
    padding:0 12px 10px!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-slot-row{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px!important;
    padding:10px!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-slot-to{display:none!important}
  body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-remove-slot{
    grid-column:1/-1!important;
    width:100%!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-add-slot{
    display:block!important;
    width:calc(100% - 24px)!important;
    max-width:calc(100% - 24px)!important;
    margin:0 12px 12px!important;
    box-sizing:border-box!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-save{
    padding:14px 12px!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-calendar-body{
    padding:6px!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-calendar-body .iema-calendar{
    padding:6px 2px 8px!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal-footer{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  body.iema-parent-portal-page .iema-parent-availability-modal-footer .iema-btn{
    width:100%!important;
    min-width:0!important;
  }
}

@media(max-width:430px){
  body.iema-parent-portal-page .iema-parent-availability-modal .iema-availability-slot-row{grid-template-columns:1fr!important}
  body.iema-parent-portal-page .iema-parent-availability-modal-footer{grid-template-columns:1fr!important}
}


/* v0.14.268 — Parent home hero refresh */
body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.95fr)!important;
  align-items:stretch!important;
  gap:22px!important;
  padding:26px 28px!important;
  border-radius:24px!important;
  border:1px solid #1b2a40!important;
  background:
    radial-gradient(circle at top right, rgba(127,86,255,.14) 0, rgba(127,86,255,0) 34%),
    radial-gradient(circle at bottom left, rgba(0,195,255,.10) 0, rgba(0,195,255,0) 32%),
    linear-gradient(180deg,#09111b 0%,#070d15 100%)!important;
  box-shadow:0 20px 46px rgba(0,0,0,.30)!important;
  overflow:hidden!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-welcome{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  padding-right:8px!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero-kicker{
  display:inline-flex!important;
  align-self:flex-start!important;
  margin:0 0 12px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(96,129,255,.28)!important;
  background:rgba(88,109,255,.12)!important;
  color:#9dd9ff!important;
  font-size:11px!important;
  letter-spacing:.16em!important;
  line-height:1!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-welcome h2{
  margin:0 0 10px!important;
  font-size:36px!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
  color:#fff!important;
  max-width:11ch!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-welcome p{
  margin:0!important;
  max-width:42ch!important;
  color:#9db0cb!important;
  font-size:15px!important;
  line-height:1.55!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero-aside{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:10px!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-caption{
  color:#90a3bf!important;
  font-size:12px!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  font-weight:800!important;
  padding-left:4px!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;
  align-items:center!important;
  gap:4px 14px!important;
  width:100%!important;
  min-width:0!important;
  padding:18px 18px!important;
  border-radius:20px!important;
  border:1px solid #22334a!important;
  background:linear-gradient(180deg,rgba(15,24,36,.98) 0%,rgba(10,16,24,.98) 100%)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.03)!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box:hover,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box:focus-visible{
  transform:translateY(-2px)!important;
  border-color:#4b67ff!important;
  background:linear-gradient(180deg,rgba(18,29,43,.99) 0%,rgba(12,19,29,.99) 100%)!important;
  box-shadow:0 18px 40px rgba(0,0,0,.28),0 0 0 1px rgba(75,103,255,.16) inset!important;
  outline:none!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-icon{
  grid-row:1 / span 3!important;
  grid-column:1!important;
  width:52px!important;
  height:52px!important;
  border-radius:16px!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(180deg,rgba(111,94,255,.26) 0%,rgba(53,85,217,.12) 100%)!important;
  border:1px solid rgba(132,148,255,.34)!important;
  color:#d4dcff!important;
  font-size:20px!important;
  font-weight:900!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box strong{
  grid-column:2!important;
  margin:0!important;
  font-size:34px!important;
  line-height:1!important;
  color:#fff!important;
  letter-spacing:-.05em!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box small{
  grid-column:2!important;
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  margin:0!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-shell .iema-parent-summary-label,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-label{
  color:#f5f7fb!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:700!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-period{
  color:#8da4c2!important;
  font-size:12px!important;
  line-height:1.25!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box em{
  grid-column:2!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  margin-top:4px!important;
  color:#78d4ff!important;
  font-size:11px!important;
  line-height:1.2!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  opacity:1!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box em b{
  font-weight:900!important;
}

@media (max-width: 1180px){
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-welcome h2{
    max-width:none!important;
  }
}

@media (max-width: 820px){
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero{
    padding:20px 18px!important;
    border-radius:20px!important;
    gap:16px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero-kicker{
    margin-bottom:10px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-welcome h2{
    font-size:28px!important;
    line-height:1.06!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-welcome p{
    font-size:14px!important;
    max-width:none!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
}

@media (max-width: 560px){
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero{
    padding:18px 16px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-welcome h2{
    font-size:24px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-caption{
    padding-left:2px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box{
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:3px 12px!important;
    padding:16px!important;
    border-radius:18px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-icon{
    width:46px!important;
    height:46px!important;
    border-radius:14px!important;
    font-size:18px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box strong{
    font-size:28px!important;
  }
}


/* v0.14.269 — Parent home summary cards simplified */
body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero-aside{
  gap:8px!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-caption{
  padding-left:2px!important;
  color:#a9b6c9!important;
  font-size:11px!important;
  letter-spacing:.12em!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary{
  gap:12px!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 28px!important;
  grid-template-rows:1fr!important;
  align-items:center!important;
  gap:13px!important;
  min-height:94px!important;
  padding:15px 15px!important;
  border-radius:18px!important;
  border:1px solid #24344a!important;
  background:rgba(10,17,27,.78)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box:hover,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box:focus-visible{
  transform:none!important;
  border-color:#405779!important;
  background:rgba(14,23,35,.92)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-icon{
  grid-column:1!important;
  grid-row:1!important;
  width:46px!important;
  height:46px!important;
  border-radius:14px!important;
  background:#18213c!important;
  border:1px solid #4650a7!important;
  color:#dce3ff!important;
  font-size:16px!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-copy{
  grid-column:2!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  grid-template-areas:"number label" "number period"!important;
  align-items:center!important;
  column-gap:12px!important;
  row-gap:2px!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-copy>strong{
  grid-area:number!important;
  margin:0!important;
  min-width:30px!important;
  color:#fff!important;
  font-size:30px!important;
  line-height:1!important;
  letter-spacing:-.05em!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-copy>.iema-parent-summary-label{
  grid-area:label!important;
  display:block!important;
  min-width:0!important;
  color:#f4f7fb!important;
  font-size:13px!important;
  font-weight:750!important;
  line-height:1.2!important;
  white-space:normal!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-copy>.iema-parent-summary-period{
  grid-area:period!important;
  display:block!important;
  margin:0!important;
  color:#8fa1ba!important;
  font-size:11px!important;
  line-height:1.25!important;
  white-space:normal!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-chevron{
  grid-column:3!important;
  grid-row:1!important;
  width:28px!important;
  height:28px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid #2a3b52!important;
  background:#0c1420!important;
  color:#79d4ff!important;
  font-size:21px!important;
  line-height:1!important;
  transition:transform .16s ease,border-color .16s ease!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-box:hover .iema-parent-summary-chevron,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-box:focus-visible .iema-parent-summary-chevron{
  transform:translateX(2px)!important;
  border-color:#4b668a!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box>em{
  display:none!important;
}
@media(max-width:560px){
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-box{
    grid-template-columns:42px minmax(0,1fr) 26px!important;
    min-height:84px!important;
    padding:13px 14px!important;
    gap:11px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-action-summary .iema-parent-summary-icon{
    width:42px!important;
    height:42px!important;
    border-radius:13px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-copy{
    column-gap:10px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-copy>strong{
    font-size:27px!important;
  }
}


/* v0.14.270 — isolated Parent At-a-glance component; intentionally does not inherit legacy family-summary styles */
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-title{
  margin:0 0 8px!important;
  padding:0!important;
  color:#a9b7ca!important;
  font:700 12px/1.2 inherit!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:none!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-card{
  -webkit-appearance:none!important;
  appearance:none!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  width:100%!important;
  min-width:0!important;
  min-height:100px!important;
  margin:0!important;
  padding:16px!important;
  overflow:hidden!important;
  border:1px solid #26364b!important;
  border-radius:18px!important;
  background:#0b131e!important;
  color:#fff!important;
  text-align:left!important;
  cursor:pointer!important;
  box-shadow:none!important;
  font:inherit!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-card:hover,
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-card:focus-visible{
  border-color:#415b7d!important;
  background:#0e1825!important;
  outline:none!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-icon{
  flex:0 0 44px!important;
  width:44px!important;
  height:44px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #4f59b9!important;
  border-radius:14px!important;
  background:#1a2145!important;
  color:#dfe4ff!important;
  font-size:17px!important;
  font-weight:800!important;
  line-height:1!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-text{
  flex:1 1 auto!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:center!important;
  gap:2px!important;
  margin:0!important;
  padding:0!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  width:100%!important;
  margin:0 0 2px!important;
  padding:0!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-top strong{
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:#fff!important;
  font-size:28px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-arrow{
  flex:0 0 auto!important;
  display:block!important;
  margin:0!important;
  color:#7fd7ff!important;
  font-size:24px!important;
  font-weight:400!important;
  line-height:1!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-label{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#f5f7fb!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.25!important;
  white-space:normal!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-period{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#91a4bd!important;
  font-size:11px!important;
  font-weight:500!important;
  line-height:1.3!important;
  white-space:normal!important;
}
@media(max-width:820px){
 body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-grid{grid-template-columns:1fr!important}
 body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-card{min-height:88px!important;padding:14px!important}
}
@media(max-width:420px){
 body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-card{gap:12px!important;border-radius:16px!important}
 body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-icon{flex-basis:40px!important;width:40px!important;height:40px!important;border-radius:12px!important}
 body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-top strong{font-size:25px!important}
}


/* v0.14.272 — Parent home: compact summary row */
body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero{
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) minmax(460px,620px)!important;
  align-items:center!important;
  gap:28px!important;
  min-height:0!important;
  padding:20px 24px!important;
  margin-bottom:16px!important;
  border-radius:18px!important;
  border:1px solid #1e2b3b!important;
  background:#09111a!important;
  box-shadow:0 10px 26px rgba(0,0,0,.20)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-welcome{
  padding:0!important;
  min-width:0!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-welcome h2{
  max-width:none!important;
  margin:0 0 5px!important;
  font-size:22px!important;
  line-height:1.15!important;
  letter-spacing:-.025em!important;
  color:#fff!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-welcome p{
  margin:0!important;
  font-size:13px!important;
  line-height:1.4!important;
  color:#93a4ba!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero-aside{
  display:block!important;
  min-width:0!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-title,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero-kicker{
  display:none!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  width:100%!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-card{
  appearance:none!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) 18px!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  column-gap:11px!important;
  row-gap:1px!important;
  width:100%!important;
  min-width:0!important;
  min-height:72px!important;
  padding:12px 13px!important;
  border:1px solid #26374b!important;
  border-radius:14px!important;
  background:#0c141f!important;
  box-shadow:none!important;
  color:#fff!important;
  text-align:left!important;
  cursor:pointer!important;
  font:inherit!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-card:hover,
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-card:focus-visible{
  border-color:#3d5877!important;
  background:#101a27!important;
  outline:none!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-icon{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  width:38px!important;
  height:38px!important;
  flex:none!important;
  display:grid!important;
  place-items:center!important;
  border-radius:11px!important;
  border:1px solid #424da8!important;
  background:#171d3d!important;
  color:#d9e0ff!important;
  font-size:14px!important;
  line-height:1!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-text{
  display:contents!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-top{
  grid-column:2 / span 2!important;
  grid-row:1!important;
  display:grid!important;
  grid-template-columns:auto 1fr 18px!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  margin:0!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-top strong{
  grid-column:1!important;
  margin:0!important;
  font-size:21px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:-.03em!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-arrow{
  grid-column:3!important;
  justify-self:end!important;
  color:#79d8ff!important;
  font-size:20px!important;
  line-height:1!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-label{
  grid-column:2!important;
  grid-row:2!important;
  align-self:start!important;
  margin:0!important;
  color:#f1f5fa!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:700!important;
}
body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-period{
  grid-column:2!important;
  grid-row:2!important;
  align-self:end!important;
  margin-top:15px!important;
  color:#8295ad!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:500!important;
}
@media(max-width:1050px){
 body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero{grid-template-columns:1fr!important;gap:14px!important}
}
@media(max-width:620px){
 body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero{padding:16px!important;border-radius:16px!important}
 body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-grid{grid-template-columns:1fr!important;gap:9px!important}
 body.iema-parent-portal-page .iema-parent-shell .md-parent-glance-card{min-height:68px!important}
}


/* v0.14.273 — Parent desktop avatar menu notification status visibility */
@media (min-width: 641px){
  body.iema-parent-portal-page .iema-parent-shell .iema-portal-user nav{
    width:270px!important;
    max-width:270px!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-portal-user nav .iema-push-menu-button .iema-account-menu-label{
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
}


/* v0.14.276 — Desktop parity regression rollback: v0.14.275 broad canonical layer removed. Owner desktop remains the immutable visual source of truth; existing v0.13.19 shared non-owner desktop foundation retained. */

/* =========================================================
   v0.14.279 — Screenshot-driven desktop parity corrections
   Owner remains immutable. Parent, Dancer, and Faculty only.
   ========================================================= */
@media (min-width:981px){
  /* Shared non-owner environmental canvas: exact Owner graphite environment. */
  html:has(body.iema-parent-portal-page),
  html:has(body.iema-staff-portal-page),
  html:has(body.iema-dancer-portal-page),
  body.iema-parent-portal-page,
  body.iema-staff-portal-page,
  body.iema-dancer-portal-page{
    margin:0!important;
    background:
      radial-gradient(circle at 15% 7%, rgba(255,255,255,.105) 0, rgba(255,255,255,.042) 23%, transparent 44%),
      radial-gradient(circle at 82% 16%, rgba(224,229,235,.10) 0, rgba(224,229,235,.035) 27%, transparent 50%),
      radial-gradient(circle at 36% 76%, rgba(255,255,255,.065) 0, rgba(255,255,255,.018) 30%, transparent 53%),
      radial-gradient(circle at 94% 84%, rgba(204,211,220,.075) 0, transparent 39%),
      linear-gradient(145deg,#3b3e43 0%,#303338 32%,#272a2e 65%,#202226 100%)!important;
    background-attachment:fixed!important;
    color:#f4f8ff!important;
    overflow-x:hidden!important;
  }
  body.iema-parent-portal-page #page,
  body.iema-parent-portal-page .site,
  body.iema-parent-portal-page .site-container,
  body.iema-parent-portal-page .site-content,
  body.iema-parent-portal-page .content-area,
  body.iema-parent-portal-page #content,
  body.iema-parent-portal-page .wp-site-blocks,
  body.iema-parent-portal-page main,
  body.iema-parent-portal-page .ma-wrap,
  body.iema-parent-portal-page .ma-page,
  body.iema-parent-portal-page article,
  body.iema-parent-portal-page .entry-content,
  body.iema-staff-portal-page #page,
  body.iema-staff-portal-page .site,
  body.iema-staff-portal-page .site-container,
  body.iema-staff-portal-page .site-content,
  body.iema-staff-portal-page .content-area,
  body.iema-staff-portal-page #content,
  body.iema-staff-portal-page .wp-site-blocks,
  body.iema-staff-portal-page main,
  body.iema-staff-portal-page .ma-wrap,
  body.iema-staff-portal-page .ma-page,
  body.iema-staff-portal-page article,
  body.iema-staff-portal-page .entry-content,
  body.iema-dancer-portal-page #page,
  body.iema-dancer-portal-page .site,
  body.iema-dancer-portal-page .site-container,
  body.iema-dancer-portal-page .site-content,
  body.iema-dancer-portal-page .content-area,
  body.iema-dancer-portal-page #content,
  body.iema-dancer-portal-page .wp-site-blocks,
  body.iema-dancer-portal-page main,
  body.iema-dancer-portal-page .ma-wrap,
  body.iema-dancer-portal-page .ma-page,
  body.iema-dancer-portal-page article,
  body.iema-dancer-portal-page .entry-content{
    width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:transparent!important;
  }

  /* Shared non-owner shell dimensions. Owner is 1540px max. */
  body.iema-parent-portal-page .iema-parent-shell,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal{
    box-sizing:border-box!important;
    width:min(1540px,calc(100vw - 28px))!important;
    max-width:1540px!important;
    min-width:0!important;
    margin:0 auto 46px!important;
    padding:0!important;
    background:transparent!important;
    color:#f4f8ff!important;
    position:relative!important;
    z-index:1!important;
    font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;
    font-weight:400!important;
    -webkit-font-smoothing:antialiased!important;
    text-rendering:optimizeLegibility!important;
    --iema-top-shell-bg:#181a1d;
    --iema-top-shell-border:#34383e;
  }

  /* Screenshot gap #1: one continuous Owner-style masthead / notification / nav surface. */
  body.iema-parent-portal-page .iema-parent-shell > .iema-app-topbar,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal > .iema-app-topbar,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal > .iema-app-topbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(420px,560px) minmax(0,1fr)!important;
    align-items:center!important;
    gap:20px!important;
    min-height:108px!important;
    margin:0!important;
    padding:20px 24px!important;
    box-sizing:border-box!important;
    background:#181a1d!important;
    background-image:none!important;
    border:1px solid #34383e!important;
    border-bottom-color:#34383e!important;
    border-radius:22px 22px 0 0!important;
    box-shadow:none!important;
    color:#fff!important;
  }
  body.iema-parent-portal-page .iema-parent-shell > .iema-notification-bar-wrap,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal > .iema-notification-bar-wrap,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal > .iema-notification-bar-wrap{
    width:100%!important;max-width:none!important;
    margin:-1px 0 0!important;
    padding:10px 26px!important;
    box-sizing:border-box!important;
    background:#181a1d!important;
    background-image:none!important;
    border-left:1px solid #34383e!important;
    border-right:1px solid #34383e!important;
    border-radius:0!important;
  }
  body.iema-parent-portal-page .iema-parent-shell > .iema-role-nav,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal > .iema-role-nav,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal > .iema-role-nav{
    position:static!important;
    display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;
    width:100%!important;max-width:none!important;
    margin:-1px 0 14px!important;
    padding:7px!important;
    box-sizing:border-box!important;
    overflow-x:auto!important;
    background:#181a1d!important;
    background-image:none!important;
    border:1px solid #34383e!important;
    border-radius:0 0 22px 22px!important;
    box-shadow:none!important;
    left:auto!important;right:auto!important;top:auto!important;transform:none!important;
  }
  body.iema-parent-portal-page .iema-parent-shell > .iema-role-nav a,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal > .iema-role-nav a,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal > .iema-role-nav a{
    flex:0 0 auto!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    min-height:42px!important;
    padding:9px 14px!important;
    border:1px solid transparent!important;
    border-radius:11px!important;
    color:#cbd5e1!important;
    background:transparent!important;
    font-size:13px!important;font-weight:600!important;letter-spacing:-.01em!important;line-height:1.2!important;
    text-decoration:none!important;white-space:nowrap!important;
  }
  body.iema-parent-portal-page .iema-parent-shell > .iema-role-nav a:hover,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal > .iema-role-nav a:hover,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal > .iema-role-nav a:hover{
    background:#25282c!important;color:#fff!important;border-color:#3a3e44!important;
  }
  body.iema-parent-portal-page .iema-parent-shell > .iema-role-nav a.active,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal > .iema-role-nav a.active,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal > .iema-role-nav a.active{
    background:var(--studio-accent,#8500aa)!important;
    color:var(--studio-accent-text,#fff)!important;
    border-color:var(--studio-accent,#8500aa)!important;
    box-shadow:0 8px 20px color-mix(in srgb,var(--studio-accent,#8500aa) 24%,transparent)!important;
    font-weight:700!important;
  }

  /* Owner masthead geometry and typography. */
  body.iema-parent-portal-page .iema-parent-shell .iema-shell-brand,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-shell-brand,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-shell-brand{display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-shell-brand .iema-studio-logo,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-shell-brand .iema-studio-logo,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-shell-brand .iema-studio-logo{
    width:66px!important;height:66px!important;min-width:66px!important;object-fit:contain!important;border-radius:17px!important;padding:5px!important;
    background:#111924!important;border:1px solid #2a3a50!important;box-shadow:0 10px 24px rgba(0,0,0,.28)!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-studio-name,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-studio-name,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-studio-name{
    color:#fff!important;font-size:22px!important;font-weight:700!important;line-height:1.08!important;letter-spacing:-.025em!important;text-transform:none!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-account-label,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-account-label,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-account-label{color:#8fa6c4!important;font-size:10px!important;font-weight:650!important;letter-spacing:.105em!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-page-heading,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-page-heading,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-page-heading{text-align:center!important;min-width:0!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-page-heading h1,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-page-heading h1,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-page-heading h1{
    margin:0 0 5px!important;color:#fff!important;font-size:32px!important;font-weight:750!important;letter-spacing:-.04em!important;line-height:.98!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-page-heading p,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-page-heading p,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-page-heading p{margin:0!important;color:#93a4bc!important;font-size:12.5px!important;line-height:1.45!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-canonical-account,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-canonical-account,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-canonical-account{justify-self:end!important;width:100%!important;max-width:270px!important}

  /* Shared content canvas. */
  body.iema-parent-portal-page .iema-parent-shell > .iema-parent-content,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal > .iema-parent-content,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal > .iema-parent-content{
    width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:0!important;background:transparent!important;box-sizing:border-box!important;
  }

  /* Parent screenshot corrections: preserve its role-specific dashboard, but use Owner spacing/surfaces. */
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-view-home{display:grid!important;gap:18px!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero,
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-today,
  body.iema-parent-portal-page .iema-parent-shell .iema-dancers-profile-section,
  body.iema-parent-portal-page .iema-parent-shell .iema-panel{
    background:#0d1117!important;
    border:1px solid #252b34!important;
    border-radius:20px!important;
    box-shadow:0 16px 40px rgba(0,0,0,.20)!important;
    color:#f4f8ff!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero{padding:22px!important}

  /* Faculty screenshot corrections: remove legacy white stat/empty surfaces. */
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-stats{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin:0 0 16px!important;
  }
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-stats>div{
    padding:18px 20px!important;
    background:#0d1117!important;
    color:#f4f8ff!important;
    border:1px solid #252b34!important;
    border-radius:18px!important;
    box-shadow:0 12px 30px rgba(0,0,0,.18)!important;
  }
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-stats strong{
    display:block!important;color:#fff!important;font-size:31px!important;font-weight:700!important;letter-spacing:-.04em!important;line-height:1!important;
  }
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-stats small{
    display:block!important;margin-top:7px!important;color:#93a4bc!important;font-size:10px!important;font-weight:650!important;letter-spacing:.08em!important;text-transform:uppercase!important;
  }
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-day,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-panel,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-groups-panel,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-notes-panel{
    background:#0d1117!important;color:#f4f8ff!important;border:1px solid #252b34!important;border-radius:20px!important;box-shadow:0 16px 40px rgba(0,0,0,.20)!important;
  }
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-empty{
    background:#10151c!important;color:#93a4bc!important;border:1px solid #28313d!important;border-radius:14px!important;
  }
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-empty strong{color:#f4f8ff!important}

  /* Dancer screenshot corrections: dark Owner-style date and empty-state cards. */
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-date-nav,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-day,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-panel,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-today-panel,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-recent-panel{
    background:#0d1117!important;color:#f4f8ff!important;border:1px solid #252b34!important;border-radius:20px!important;box-shadow:0 16px 40px rgba(0,0,0,.20)!important;
  }
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-empty{
    background:#10151c!important;color:#93a4bc!important;border:1px solid #28313d!important;border-radius:14px!important;
  }
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-empty strong{color:#f4f8ff!important}

  /* Common Owner-like controls, scoped only to the three non-owner portals. */
  body.iema-parent-portal-page .iema-parent-shell input,
  body.iema-parent-portal-page .iema-parent-shell select,
  body.iema-parent-portal-page .iema-parent-shell textarea,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal input,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal select,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal textarea,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal input,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal select,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal textarea{
    box-sizing:border-box!important;background:#080b10!important;color:#f5f8ff!important;border:1px solid #343b45!important;border-radius:11px!important;min-height:44px!important;box-shadow:none!important;font-family:inherit!important;
  }
  body.iema-parent-portal-page .iema-parent-shell textarea,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal textarea,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal textarea{min-height:110px!important}
  body.iema-parent-portal-page .iema-parent-shell .iema-btn,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-btn,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-btn{
    background:var(--studio-accent,#8500aa)!important;border:1px solid color-mix(in srgb,var(--studio-accent,#8500aa) 75%,#fff 25%)!important;color:var(--studio-accent-text,#fff)!important;border-radius:12px!important;box-shadow:0 10px 22px color-mix(in srgb,var(--studio-accent,#8500aa) 22%,transparent)!important;font-family:inherit!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-btn-secondary,
  body.iema-parent-portal-page .iema-parent-shell .iema-btn-ghost,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-btn-secondary,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-btn-ghost,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-btn-secondary,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-btn-ghost{
    background:#181a1d!important;border:1px solid #34383e!important;color:#eef4ff!important;box-shadow:none!important;
  }

  /* Keep tables/calendars/dialogs on the same graphite family. */
  body.iema-parent-portal-page .iema-parent-shell .iema-calendar,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-calendar,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-calendar{background:#0b0e13!important;border-color:#2c323b!important}
  body.iema-parent-portal-page .iema-parent-shell table,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal table,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;color:#eef5ff!important}
  body.iema-parent-portal-page .iema-parent-shell th,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal th,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal th{background:#181a1d!important;color:#aab7c8!important;border-color:#34383e!important}
  body.iema-parent-portal-page .iema-parent-shell td,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal td,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal td{background:#0d1117!important;color:#e9f2ff!important;border-color:#292f37!important}
}


/* v0.14.280 — Screenshot refinement: Owner graphite section hierarchy + readable role headings.
   Desktop only. Owner portal intentionally excluded. */
@media (min-width:981px){
  /* Parent: Owner uses graphite as the outer content surface; keep darker cards nested inside. */
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-hero,
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-today,
  body.iema-parent-portal-page .iema-parent-shell .iema-dancers-profile-section{
    background:#181a1d!important;
    border-color:#34383e!important;
    box-shadow:0 14px 34px rgba(0,0,0,.22)!important;
  }
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-summary-card,
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-today-dancer,
  body.iema-parent-portal-page .iema-parent-shell .iema-dancer-profile-card,
  body.iema-parent-portal-page .iema-parent-shell .iema-parent-dancer-card{
    background:#0d1117!important;
    border-color:#2b3440!important;
  }

  /* Faculty: legacy unified-role rules were still forcing dark heading text. */
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-day,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-groups-panel,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-notes-panel{
    background:#181a1d!important;
    border-color:#34383e!important;
    box-shadow:0 14px 34px rgba(0,0,0,.22)!important;
  }
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-day h1,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-day h2,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-day h3,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-day h4,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-section-head h1,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-section-head h2,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-section-head h3{
    color:#f7f9fc!important;
  }
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-day p,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-day small,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-section-head p{
    color:#93a4bc!important;
  }
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-day-head,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-schedule,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-faculty-upcoming{
    background:transparent!important;
    color:#f4f8ff!important;
  }

  /* Dancer: match Owner's graphite outer panel while retaining darker nested content. */
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-date-nav,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-day,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-today-panel,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-recent-panel,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-agenda-panel,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-workouts-panel{
    background:#181a1d!important;
    border-color:#34383e!important;
    box-shadow:0 14px 34px rgba(0,0,0,.22)!important;
  }
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-day h1,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-day h2,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-day h3,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-section-title h1,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-section-title h2,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-section-title h3,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-day-nav h2{
    color:#f7f9fc!important;
  }
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-day p,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-day small,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-section-title p{
    color:#93a4bc!important;
  }
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-dancer-section-title{
    background:transparent!important;
    border-bottom-color:#34383e!important;
  }
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal .iema-empty,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal .iema-empty{
    background:#0d1117!important;
    border-color:#2b3440!important;
    color:#9dafc5!important;
  }
}


/* v0.14.282 — screenshot-driven non-owner masthead structural alignment.
   Owner masthead is read-only; these rules target Parent, Faculty, and Dancer desktop only. */
.iema-role-season-inline{display:none!important}
@media (min-width:981px){
  body.iema-parent-portal-page .iema-parent-shell > .iema-app-topbar .iema-shell-brand,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal > .iema-app-topbar .iema-shell-brand,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal > .iema-app-topbar .iema-shell-brand{
    justify-self:start!important;
    max-width:100%!important;
  }
  body.iema-parent-portal-page .iema-parent-shell > .iema-app-topbar .iema-page-heading,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal > .iema-app-topbar .iema-page-heading,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal > .iema-app-topbar .iema-page-heading{
    justify-self:center!important;
    width:100%!important;
    text-align:center!important;
  }
  body.iema-parent-portal-page .iema-parent-shell > .iema-app-topbar .iema-canonical-account,
  body.iema-staff-portal-page .iema-parent-shell.iema-faculty-portal > .iema-app-topbar .iema-canonical-account,
  body.iema-dancer-portal-page .iema-parent-shell.iema-dancer-portal > .iema-app-topbar .iema-canonical-account{
    justify-self:end!important;
  }
  body.iema-staff-portal-page .iema-role-season-inline,
  body.iema-dancer-portal-page .iema-role-season-inline{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    margin-top:7px!important;
    color:#8ea4bc!important;
    font-size:9px!important;
    line-height:1!important;
  }
  body.iema-staff-portal-page .iema-role-season-inline>span,
  body.iema-dancer-portal-page .iema-role-season-inline>span{
    font-weight:900!important;
    letter-spacing:.13em!important;
  }
  body.iema-staff-portal-page .iema-role-season-inline>strong,
  body.iema-dancer-portal-page .iema-role-season-inline>strong{
    color:#eaf5ff!important;
    font-size:10px!important;
    font-weight:900!important;
  }
  body.iema-staff-portal-page .iema-role-season-inline>strong i,
  body.iema-dancer-portal-page .iema-role-season-inline>strong i{
    color:#62d1ff!important;
    font-style:normal!important;
  }
  body.iema-staff-portal-page .iema-role-season-inline>em,
  body.iema-dancer-portal-page .iema-role-season-inline>em{
    padding:4px 7px!important;
    border-radius:999px!important;
    background:#0d2b3e!important;
    border:1px solid #194865!important;
    color:#5dd2ff!important;
    font-style:normal!important;
    font-size:8px!important;
    font-weight:900!important;
    text-transform:uppercase!important;
    letter-spacing:.08em!important;
  }
}


/* =========================================================
   v0.14.286 — Canonical Parent-mobile shell for Owner/Dancer/Faculty
   Parent mobile is immutable visual source of truth.
   Scope: mobile only. Desktop remains unchanged.
   ========================================================= */
@media(max-width:980px){
  html.iema-canonical-mobile-root,
  html.iema-canonical-mobile-root body,
  html.iema-canonical-mobile-root body.iema-plugin-app-document{
    background:#0d1420!important;
  }
  html.iema-canonical-mobile-root:not(.iema-parent-root) body.iema-plugin-app-document>.iema-plugin-app-main{
    min-height:100vh!important;
    background:#0d1420!important;
    background-image:none!important;
  }
}

@media(max-width:760px){
  /* Non-Parent portal shells adopt the exact Parent mobile top-shell geometry. */
  body.iema-owner-portal-page .iema-owner-shell,
  body.iema-dancer-portal-page .iema-parent-shell-topnav,
  body.iema-staff-portal-page .iema-parent-shell-topnav{
    width:100%!important;
    max-width:none!important;
    margin:0 auto 28px!important;
    padding:0!important;
  }

  body.iema-owner-portal-page .iema-owner-shell .iema-app-topbar,
  body.iema-dancer-portal-page .iema-parent-shell-topnav .iema-app-topbar,
  body.iema-staff-portal-page .iema-parent-shell-topnav .iema-app-topbar{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:'brand user'!important;
    align-items:center!important;
    column-gap:8px!important;
    row-gap:0!important;
    min-height:0!important;
    margin:0!important;
    padding:calc(11px + env(safe-area-inset-top)) 12px 11px!important;
    background:linear-gradient(180deg,#0d1420 0%,#080d14 100%)!important;
    border-radius:0!important;
    border-top:0!important;
    border-left:0!important;
    border-right:0!important;
    border-bottom:1px solid #1e2a39!important;
    box-shadow:none!important;
  }

  /* Parent intentionally omits the portal title on phones; other roles now do the same. */
  body.iema-owner-portal-page .iema-owner-shell .iema-page-heading,
  body.iema-dancer-portal-page .iema-parent-shell-topnav .iema-page-heading,
  body.iema-staff-portal-page .iema-parent-shell-topnav .iema-page-heading,
  body.iema-owner-portal-page .iema-owner-shell .iema-mobile-menu-toggle,
  body.iema-dancer-portal-page .iema-parent-shell-topnav .iema-mobile-menu-toggle,
  body.iema-staff-portal-page .iema-parent-shell-topnav .iema-mobile-menu-toggle{
    display:none!important;
  }

  body.iema-owner-portal-page .iema-owner-shell .iema-shell-brand,
  body.iema-dancer-portal-page .iema-parent-shell-topnav .iema-shell-brand,
  body.iema-staff-portal-page .iema-parent-shell-topnav .iema-shell-brand{
    grid-area:brand!important;
    min-width:0!important;
    margin:0!important;
    gap:9px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-shell-brand .iema-studio-logo,
  body.iema-dancer-portal-page .iema-parent-shell-topnav .iema-shell-brand .iema-studio-logo,
  body.iema-staff-portal-page .iema-parent-shell-topnav .iema-shell-brand .iema-studio-logo{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    border-radius:11px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-name,
  body.iema-dancer-portal-page .iema-parent-shell-topnav .iema-studio-name,
  body.iema-staff-portal-page .iema-parent-shell-topnav .iema-studio-name{
    font-size:15px!important;
    line-height:1.08!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-canonical-account,
  body.iema-dancer-portal-page .iema-parent-shell-topnav .iema-canonical-account,
  body.iema-staff-portal-page .iema-parent-shell-topnav .iema-canonical-account{
    grid-area:user!important;
    justify-self:end!important;
  }

  /* Notification strip: exact Parent mobile attachment. */
  body.iema-owner-portal-page .iema-owner-shell>.iema-notification-bar-wrap,
  body.iema-dancer-portal-page .iema-parent-shell-topnav>.iema-notification-bar-wrap,
  body.iema-staff-portal-page .iema-parent-shell-topnav>.iema-notification-bar-wrap{
    width:100%!important;
    max-width:none!important;
    margin:-1px 0 0!important;
    padding:7px 9px!important;
    box-sizing:border-box!important;
    border-left:0!important;
    border-right:0!important;
    border-radius:0!important;
    background:#080d14!important;
  }

  /* Hide desktop navigation rows. Owner secondary navigation also moves under More. */
  body.iema-owner-portal-page .iema-owner-shell>.iema-primary-nav,
  body.iema-owner-portal-page .iema-owner-shell>.iema-secondary-nav,
  body.iema-dancer-portal-page .iema-parent-shell-topnav>.iema-parent-shared-nav,
  body.iema-staff-portal-page .iema-parent-shell-topnav>.iema-parent-shared-nav{
    display:none!important;
  }

  /* Activate the same four-slot navigation component Parent already uses. */
  body.iema-owner-portal-page .iema-owner-shell>.iema-parent-mobile-nav,
  body.iema-dancer-portal-page .iema-parent-mobile-nav,
  body.iema-staff-portal-page .iema-parent-mobile-nav{
    position:relative!important;
    z-index:35!important;
    width:100%!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:5px!important;
    margin:0 0 12px!important;
    padding:7px 8px 8px!important;
    overflow:visible!important;
    background:#080d14!important;
    border:0!important;
    border-bottom:1px solid #1e2a39!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.iema-owner-portal-page .iema-parent-mobile-nav>a,
  body.iema-owner-portal-page .iema-parent-mobile-more>summary,
  body.iema-dancer-portal-page .iema-parent-mobile-nav>a,
  body.iema-dancer-portal-page .iema-parent-mobile-more>summary,
  body.iema-staff-portal-page .iema-parent-mobile-nav>a,
  body.iema-staff-portal-page .iema-parent-mobile-more>summary{
    min-width:0!important;
    min-height:39px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    padding:7px 5px!important;
    border:1px solid transparent!important;
    border-radius:9px!important;
    background:#101721!important;
    color:#aebdce!important;
    text-decoration:none!important;
    text-align:center!important;
    font-size:11px!important;
    font-weight:850!important;
    line-height:1.05!important;
    white-space:nowrap!important;
    cursor:pointer!important;
  }
  body.iema-owner-portal-page .iema-parent-mobile-nav>a.active,
  body.iema-owner-portal-page .iema-parent-mobile-more.active>summary,
  body.iema-dancer-portal-page .iema-parent-mobile-nav>a.active,
  body.iema-dancer-portal-page .iema-parent-mobile-more.active>summary,
  body.iema-staff-portal-page .iema-parent-mobile-nav>a.active,
  body.iema-staff-portal-page .iema-parent-mobile-more.active>summary{
    background:linear-gradient(180deg,var(--md2-blue) 0%,var(--md2-blue-strong) 100%)!important;
    border-color:var(--md2-blue)!important;
    color:#fff!important;
  }
  body.iema-owner-portal-page .iema-parent-mobile-more,
  body.iema-dancer-portal-page .iema-parent-mobile-more,
  body.iema-staff-portal-page .iema-parent-mobile-more{position:relative!important;min-width:0!important}
  body.iema-owner-portal-page .iema-parent-mobile-more>summary,
  body.iema-dancer-portal-page .iema-parent-mobile-more>summary,
  body.iema-staff-portal-page .iema-parent-mobile-more>summary{list-style:none!important}
  body.iema-owner-portal-page .iema-parent-mobile-more>summary::-webkit-details-marker,
  body.iema-dancer-portal-page .iema-parent-mobile-more>summary::-webkit-details-marker,
  body.iema-staff-portal-page .iema-parent-mobile-more>summary::-webkit-details-marker{display:none!important}
  body.iema-owner-portal-page .iema-parent-mobile-more[open]>summary,
  body.iema-dancer-portal-page .iema-parent-mobile-more[open]>summary,
  body.iema-staff-portal-page .iema-parent-mobile-more[open]>summary{
    color:#fff!important;background:#162231!important;border-color:#2b4056!important;
  }
  body.iema-owner-portal-page .iema-parent-mobile-more-menu,
  body.iema-dancer-portal-page .iema-parent-mobile-more-menu,
  body.iema-staff-portal-page .iema-parent-mobile-more-menu{
    position:absolute!important;
    right:0!important;
    top:calc(100% + 7px)!important;
    width:min(250px,calc(100vw - 18px))!important;
    display:grid!important;
    gap:5px!important;
    padding:7px!important;
    border:1px solid #283545!important;
    border-radius:12px!important;
    background:#0c121a!important;
    box-shadow:0 18px 48px rgba(0,0,0,.5)!important;
  }
  body.iema-owner-portal-page .iema-parent-mobile-more-menu a,
  body.iema-dancer-portal-page .iema-parent-mobile-more-menu a,
  body.iema-staff-portal-page .iema-parent-mobile-more-menu a{
    display:flex!important;
    align-items:center!important;
    min-height:40px!important;
    padding:8px 11px!important;
    border-radius:9px!important;
    color:#d6e0ea!important;
    text-decoration:none!important;
    font-size:12px!important;
    font-weight:800!important;
  }
  body.iema-owner-portal-page .iema-parent-mobile-more-menu a.active,
  body.iema-dancer-portal-page .iema-parent-mobile-more-menu a.active,
  body.iema-staff-portal-page .iema-parent-mobile-more-menu a.active{
    background:rgba(32,183,255,.15)!important;color:#72d5ff!important;
  }

  /* Parent-style mobile canvas and gutters for role-specific content. */
  body.iema-owner-portal-page .iema-owner-shell,
  body.iema-dancer-portal-page .iema-parent-shell,
  body.iema-staff-portal-page .iema-parent-shell{background:transparent!important}
  body.iema-dancer-portal-page .iema-parent-content,
  body.iema-staff-portal-page .iema-parent-content{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    padding:0 10px 28px!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    color:#f5f8ff!important;
  }

  /* Remove the remaining light Parent-card inheritance from Dancer/Faculty mobile. */
  body.iema-dancer-portal-page .iema-parent-content .iema-panel,
  body.iema-dancer-portal-page .iema-parent-content section,
  body.iema-dancer-portal-page .iema-parent-content article,
  body.iema-staff-portal-page .iema-parent-content .iema-panel,
  body.iema-staff-portal-page .iema-parent-content section,
  body.iema-staff-portal-page .iema-parent-content article{
    color:#f5f8ff!important;
  }
  body.iema-dancer-portal-page .iema-dancer-day,
  body.iema-dancer-portal-page .iema-dancer-date-nav,
  body.iema-dancer-portal-page .iema-progress-shell,
  body.iema-dancer-portal-page .iema-private-booking-browser,
  body.iema-staff-portal-page .iema-faculty-day,
  body.iema-staff-portal-page .iema-faculty-groups-panel,
  body.iema-staff-portal-page .iema-faculty-notes-panel,
  body.iema-staff-portal-page .iema-availability-v3,
  body.iema-staff-portal-page .iema-private-booking-browser{
    background:#07111f!important;
    color:#f5f8ff!important;
    border:1px solid #1e3147!important;
    border-radius:18px!important;
    box-shadow:none!important;
  }
  body.iema-dancer-portal-page .iema-dancer-day h1,
  body.iema-dancer-portal-page .iema-dancer-day h2,
  body.iema-dancer-portal-page .iema-dancer-day h3,
  body.iema-dancer-portal-page .iema-progress-shell h1,
  body.iema-dancer-portal-page .iema-progress-shell h2,
  body.iema-dancer-portal-page .iema-progress-shell h3,
  body.iema-staff-portal-page .iema-faculty-day h1,
  body.iema-staff-portal-page .iema-faculty-day h2,
  body.iema-staff-portal-page .iema-faculty-day h3,
  body.iema-staff-portal-page .iema-faculty-groups-panel h2,
  body.iema-staff-portal-page .iema-faculty-notes-panel h2{
    color:#f7f9fc!important;
  }
  body.iema-dancer-portal-page .iema-dancer-day p,
  body.iema-dancer-portal-page .iema-dancer-day small,
  body.iema-staff-portal-page .iema-faculty-day p,
  body.iema-staff-portal-page .iema-faculty-day small{
    color:#94a6bd!important;
  }
  body.iema-dancer-portal-page .iema-empty,
  body.iema-staff-portal-page .iema-empty,
  body.iema-dancer-portal-page .iema-progress-kpi,
  body.iema-dancer-portal-page .iema-progress-breakdown,
  body.iema-dancer-portal-page .iema-progress-activity,
  body.iema-staff-portal-page .iema-faculty-stats>div,
  body.iema-staff-portal-page .iema-faculty-group-card,
  body.iema-staff-portal-page .iema-faculty-note-card{
    background:#0b1520!important;
    color:#f5f8ff!important;
    border:1px solid #25384b!important;
    box-shadow:none!important;
  }
  body.iema-dancer-portal-page .iema-parent-content input:not([type=checkbox]):not([type=radio]),
  body.iema-dancer-portal-page .iema-parent-content select,
  body.iema-dancer-portal-page .iema-parent-content textarea,
  body.iema-staff-portal-page .iema-parent-content input:not([type=checkbox]):not([type=radio]),
  body.iema-staff-portal-page .iema-parent-content select,
  body.iema-staff-portal-page .iema-parent-content textarea{
    background:#08111b!important;
    color:#edf5ff!important;
    border-color:#2a3d52!important;
  }

  /* Faculty KPI cards collapse to Parent-like stacked summary cards on phones. */
  body.iema-staff-portal-page .iema-faculty-stats{
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:0 10px!important;
    margin:0 0 14px!important;
  }
  body.iema-staff-portal-page .iema-faculty-stats>div{
    min-height:76px!important;
    padding:16px 18px!important;
    text-align:left!important;
    border-radius:16px!important;
  }
  body.iema-staff-portal-page .iema-faculty-stats strong{font-size:28px!important;color:#fff!important}
  body.iema-staff-portal-page .iema-faculty-stats small{font-size:10px!important;color:#94a6bd!important}

  /* Dancer date navigator reflows rather than clipping horizontally. */
  body.iema-dancer-portal-page .iema-dancer-date-nav{
    margin:0 10px 14px!important;
    padding:14px!important;
    grid-template-columns:42px minmax(0,1fr) 42px!important;
  }
  body.iema-dancer-portal-page .iema-dancer-date-nav h2{
    min-width:0!important;
    font-size:24px!important;
    line-height:1.08!important;
    text-align:center!important;
  }
}

@media(max-width:380px){
  body.iema-owner-portal-page .iema-parent-mobile-nav>a,
  body.iema-owner-portal-page .iema-parent-mobile-more>summary,
  body.iema-dancer-portal-page .iema-parent-mobile-nav>a,
  body.iema-dancer-portal-page .iema-parent-mobile-more>summary,
  body.iema-staff-portal-page .iema-parent-mobile-nav>a,
  body.iema-staff-portal-page .iema-parent-mobile-more>summary{
    font-size:10px!important;
    padding-left:3px!important;
    padding-right:3px!important;
  }
}


/* v0.14.287 — Faculty Availability uses canonical Parent modal treatment */
body.iema-staff-portal-page .iema-parent-availability-modal[hidden]{display:none!important}
body.iema-staff-portal-page .iema-parent-availability-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  display:grid!important;
  place-items:center!important;
  width:100vw!important;
  height:100dvh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
body.iema-staff-portal-page .iema-parent-availability-modal>.iema-create-modal-backdrop{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
body.iema-staff-portal-page .iema-parent-availability-modal>.iema-parent-availability-modal-dialog{
  position:relative!important;
  z-index:1!important;
  width:min(920px,calc(100vw - 20px))!important;
  max-width:calc(100vw - 20px)!important;
  height:auto!important;
  max-height:calc(100dvh - 20px)!important;
  margin:0!important;
  padding:20px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  box-sizing:border-box!important;
  background:linear-gradient(180deg,#0d1722 0%,#09121b 100%)!important;
  border:1px solid #294159!important;
  color:#f4f8fc!important;
}
body.iema-staff-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-close{
  position:absolute!important;
  top:16px!important;
  right:16px!important;
  float:none!important;
  background:#111c29!important;
  border:1px solid #35506d!important;
  color:#fff!important;
}
body.iema-staff-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-head{
  padding:2px 54px 18px 2px!important;
  border-bottom:1px solid #2a3a4d!important;
  margin:0 0 18px!important;
  min-width:0!important;
}
body.iema-staff-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-head h2{
  color:#fff!important;
  overflow-wrap:anywhere!important;
}
body.iema-staff-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-head p{color:#91a6ba!important}

/* Calendar modal: one continuous dark surface — no white grid/footer showing through. */
body.iema-staff-portal-page .iema-parent-availability-calendar-dialog,
body.iema-staff-portal-page .iema-parent-availability-calendar-body,
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar,
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-grid,
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-head{
  background:#070c12!important;
}
body.iema-staff-portal-page .iema-parent-availability-calendar-body{
  padding:10px!important;
  border:1px solid #223447!important;
  border-radius:16px!important;
}
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-grid{gap:3px!important}
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-day{border-color:#1e2c3b!important}
body.iema-staff-portal-page .iema-parent-availability-modal-footer{
  position:static!important;
  bottom:auto!important;
  margin-top:18px!important;
  padding:16px 0 0!important;
  border-top:1px solid #2a3a4d!important;
  background:transparent!important;
}

/* Weekly availability: every layer participates in the same bounded width. */
body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-normal-week,
body.iema-staff-portal-page .iema-parent-availability-modal .iema-weekly-availability-form,
body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-days,
body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-day-v3,
body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-day-top,
body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-day-name,
body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-slot-list,
body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-slot-row,
body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-save{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-day-name small{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-slot-row label,
body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-slot-row select{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

@media(max-width:760px){
  body.iema-staff-portal-page .iema-parent-availability-modal{
    place-items:center!important;
    padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal>.iema-parent-availability-modal-dialog{
    width:100%!important;
    max-width:100%!important;
    max-height:calc(100dvh - max(16px,env(safe-area-inset-top) + env(safe-area-inset-bottom)))!important;
    padding:16px 14px!important;
    border-radius:18px!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-head{
    padding:0 48px 15px 0!important;
    margin-bottom:14px!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-head h2{
    font-size:clamp(24px,7vw,32px)!important;
    line-height:1.08!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal-dialog>.iema-create-modal-head p{
    font-size:13px!important;
    line-height:1.45!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-day-top{
    grid-template-columns:1fr!important;
    gap:9px!important;
    padding:12px!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-choice{
    width:max-content!important;
    max-width:100%!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-slot-list{
    padding:0 12px 10px!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-slot-row{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px!important;
    padding:10px!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-slot-to{display:none!important}
  body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-remove-slot{
    grid-column:1/-1!important;
    width:100%!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-add-slot{
    display:block!important;
    width:calc(100% - 24px)!important;
    max-width:calc(100% - 24px)!important;
    margin:0 12px 12px!important;
    box-sizing:border-box!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-save{
    padding:14px 12px!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-calendar-body{
    padding:6px!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar{
    padding:6px 2px 8px!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal-footer{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  body.iema-staff-portal-page .iema-parent-availability-modal-footer .iema-btn{
    width:100%!important;
    min-width:0!important;
  }
}

@media(max-width:430px){
  body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-slot-row{grid-template-columns:1fr!important}
  body.iema-staff-portal-page .iema-parent-availability-modal-footer{grid-template-columns:1fr!important}
}


/* =========================================================
   v0.14.288 — Parent-canonical mobile account + navigation completion
   Screenshot-driven. Parent and desktop remain unchanged.
   ========================================================= */
@media(max-width:820px){
  body.iema-dancer-portal-page .iema-parent-view-account,
  body.iema-staff-portal-page .iema-parent-view-account{
    padding:18px!important;
  }
  body.iema-dancer-portal-page .iema-parent-view-account>.iema-parent-workspace,
  body.iema-staff-portal-page .iema-parent-view-account>.iema-parent-workspace{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:23px!important;
    box-sizing:border-box!important;
    background:linear-gradient(180deg,#0d0f14 0%,#090b10 100%)!important;
    border:1px solid #222631!important;
    border-radius:18px!important;
    color:#f7f8fb!important;
    box-shadow:0 18px 48px rgba(0,0,0,.28)!important;
  }
  body.iema-dancer-portal-page .iema-parent-view-account .iema-form-grid,
  body.iema-staff-portal-page .iema-parent-view-account .iema-form-grid{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:560px){
  body.iema-dancer-portal-page .iema-parent-view-account,
  body.iema-staff-portal-page .iema-parent-view-account{
    padding:14px!important;
  }
  body.iema-dancer-portal-page .iema-parent-view-account>.iema-parent-workspace,
  body.iema-staff-portal-page .iema-parent-view-account>.iema-parent-workspace{
    padding:20px!important;
  }
}

/* Production 4: Faculty Time owner workspace */
.iema-faculty-time-center{display:grid;gap:18px}.iema-faculty-time-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.iema-faculty-time-metrics article{border:1px solid var(--iema-border,#dfe5ea);border-radius:16px;padding:16px;background:var(--iema-card,#fff);display:grid;gap:4px}.iema-faculty-time-metrics small{font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.66}.iema-faculty-time-metrics strong{font-size:1.55rem}.iema-faculty-time-metrics span{font-size:.9rem;opacity:.75}.iema-faculty-time-toolbar{display:flex;gap:12px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap}.iema-faculty-batch-pay{margin-left:auto}.iema-faculty-pay-settings{border:1px solid var(--iema-border,#dfe5ea);border-radius:16px;background:var(--iema-card,#fff);overflow:hidden}.iema-faculty-pay-settings>summary{cursor:pointer;padding:15px 18px;font-weight:800}.iema-faculty-pay-rate-grid{display:grid;gap:10px;padding:0 16px 16px}.iema-faculty-pay-rate-grid article{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--iema-border,#e5e7eb);padding-top:12px}.iema-faculty-pay-rate-grid article>div{display:grid;gap:2px}.iema-faculty-pay-rate-grid form{display:flex;align-items:center;gap:8px}.iema-faculty-pay-rate-grid input{width:110px}.iema-faculty-rate-label{display:block;margin-top:2px;opacity:.7}.iema-work-pay-total{display:grid;text-align:right;gap:2px}.iema-work-pay-total b{font-size:1rem}.iema-notice.is-success{border-left:4px solid currentColor;padding:12px 14px;border-radius:10px;background:rgba(34,197,94,.08)}
@media(max-width:900px){.iema-faculty-time-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.iema-faculty-time-toolbar{align-items:stretch}.iema-faculty-batch-pay{margin-left:0}.iema-faculty-pay-rate-grid article{align-items:flex-start;flex-direction:column}.iema-faculty-pay-rate-grid form{width:100%;flex-wrap:wrap}}
@media(max-width:560px){.iema-faculty-time-metrics{grid-template-columns:1fr 1fr}.iema-faculty-time-metrics article{padding:13px}.iema-faculty-time-metrics strong{font-size:1.2rem}.iema-faculty-pay-rate-grid input{width:96px}}


/* Production 4 v0.14.309 — Faculty Time owner workspace containment + dark visual polish */
body.iema-owner-portal-page .iema-faculty-time-center{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  background:#111418!important;
  border-color:#242b33!important;
  color:#f5f7fa!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-section-head{
  margin-bottom:8px!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-section-head h2{
  color:#f7f9fc!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-section-head p{
  color:#92a0b2!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-kicker{
  color:#6fd2df!important;
}
/* The global owner reset intentionally makes theme article elements viewport-wide.
   Faculty Time uses semantic article cards, so contain them back inside this workspace. */
body.iema-owner-portal-page .iema-faculty-time-center article,
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-time-metrics article,
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-rate-grid article,
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-card{
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:initial!important;
  padding-right:initial!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-time-metrics{
  width:100%!important;
  min-width:0!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-time-metrics article{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-height:104px!important;
  padding:16px 18px!important;
  border:1px solid #28313b!important;
  border-radius:15px!important;
  background:#171b20!important;
  box-shadow:none!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-time-metrics small{
  color:#8390a1!important;
  opacity:1!important;
  font-size:10px!important;
  line-height:1.2!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-time-metrics strong{
  color:#f7f9fc!important;
  font-size:25px!important;
  line-height:1.05!important;
  letter-spacing:-.025em!important;
  margin-top:4px!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-time-metrics span{
  color:#738094!important;
  opacity:1!important;
  font-size:11px!important;
  margin-top:4px!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-time-toolbar{
  width:100%!important;
  min-width:0!important;
  padding:2px 0 0!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-filters{
  min-width:0!important;
  margin-bottom:0!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-filters label{
  color:#aeb8c5!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-filters input,
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-filters select{
  background:#0c1015!important;
  border-color:#2b3643!important;
  color:#f4f7fb!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-settings{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  border:1px solid #28313b!important;
  border-radius:15px!important;
  background:#15191e!important;
  color:#f5f7fa!important;
  overflow:hidden!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-settings>summary{
  list-style:none!important;
  position:relative!important;
  padding:15px 46px 15px 18px!important;
  background:#171c22!important;
  color:#eef3f9!important;
  border:0!important;
  font-size:13px!important;
  font-weight:850!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-settings>summary::-webkit-details-marker{display:none!important}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-settings>summary:after{
  content:'+';
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  color:#7fd4df;
  font-size:20px;
  font-weight:500;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-settings[open]>summary:after{content:'−'}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-rate-grid{
  padding:4px 16px 16px!important;
  background:#12161b!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-rate-grid article{
  padding:14px 0 0!important;
  background:transparent!important;
  border:0!important;
  border-top:1px solid #262e37!important;
  color:#f5f7fa!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-rate-grid article:first-child{border-top:0!important}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-rate-grid strong{color:#f5f7fa!important}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-rate-grid small{color:#7f8b9b!important}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-rate-grid form{
  min-width:0!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-rate-grid input{
  background:#0b0f14!important;
  border:1px solid #303a46!important;
  border-radius:9px!important;
  color:#f5f7fa!important;
  padding:9px 10px!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-list{
  width:100%!important;
  min-width:0!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-card{
  background:#171b20!important;
  border-color:#29313b!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-card>header,
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-card>footer{
  background:transparent!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-card h3,
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-pay-total strong,
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-pay-total b{
  color:#f5f7fa!important;
}
@media(max-width:1100px){
  body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-time-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:620px){
  body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-time-metrics{
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-time-metrics article{
    min-height:92px!important;
    padding:13px!important;
  }
  body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-time-metrics strong{font-size:20px!important}
}


/* Production 4 v0.14.310 — Faculty Time contrast/readability pass */
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-summary-grid article{
  background:#171b20!important;
  border-color:#29313b!important;
  color:#f4f7fb!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-summary-grid article>strong{
  color:#f7f9fc!important;
  font-size:14px!important;
  font-weight:850!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-summary-grid b{
  color:#e9eef5!important;
  opacity:1!important;
  font-weight:850!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-summary-grid small{
  color:#a7b3c2!important;
  opacity:1!important;
  font-weight:700!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-rate-label,
body.iema-owner-portal-page .iema-faculty-time-center .iema-faculty-pay-rate-grid small{
  color:#a7b3c2!important;
  opacity:1!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-card header span{
  color:#8ddce5!important;
  opacity:1!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-card header p,
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-entries span{
  color:#b7c1ce!important;
  opacity:1!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-entries small{
  color:#8ddce5!important;
  opacity:1!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-entries strong{
  color:#f4f7fb!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-entries em{
  color:#dce4ed!important;
  background:#252c34!important;
  border:1px solid #36414d!important;
  opacity:1!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-entries em.is-match{
  color:#b9f0d0!important;
  background:rgba(72,190,124,.14)!important;
  border-color:rgba(98,220,151,.30)!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-entries em.is-variance{
  color:#ffd791!important;
  background:rgba(246,182,91,.13)!important;
  border-color:rgba(246,182,91,.28)!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-owner-entries em.is-unscheduled{
  color:#b8d9ff!important;
  background:rgba(122,181,255,.13)!important;
  border-color:rgba(122,181,255,.28)!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-pay-total strong,
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-pay-total b{
  color:#f7f9fc!important;
  opacity:1!important;
}
body.iema-owner-portal-page .iema-faculty-time-center .iema-work-paid-label{
  color:#b8d9ff!important;
  opacity:1!important;
}

/* v0.14.320 — per-user mobile menu shortcut preferences */
.iema-mobile-nav-preference-head{margin-top:26px!important}
.iema-mobile-nav-preference-grid select{width:100%;min-height:46px}

/* v0.14.321 — Faculty Pay period foundation */
body.iema-owner-portal-page .iema-faculty-pay-period-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid rgba(116,144,176,.22);border-radius:18px;background:linear-gradient(135deg,rgba(16,27,41,.96),rgba(9,17,27,.96));box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
body.iema-owner-portal-page .iema-faculty-pay-period-head>div{display:grid;gap:4px;min-width:0}
body.iema-owner-portal-page .iema-faculty-pay-period-head small{font-size:10px;font-weight:800;letter-spacing:.12em;color:#7fd0ff}
body.iema-owner-portal-page .iema-faculty-pay-period-head strong{font-size:18px;color:#f5f9ff}
body.iema-owner-portal-page .iema-faculty-pay-period-head span{font-size:12px;line-height:1.45;color:#a9b8ca}
body.iema-owner-portal-page .iema-faculty-pay-period-head nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
body.iema-owner-portal-page .iema-payroll-settings-card .iema-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
body.iema-owner-portal-page .iema-payroll-settings-card .iema-form-grid>label:last-child{grid-column:1/-1}
@media(max-width:720px){body.iema-owner-portal-page .iema-faculty-pay-period-head{align-items:flex-start;flex-direction:column}body.iema-owner-portal-page .iema-faculty-pay-period-head nav{width:100%;justify-content:stretch}body.iema-owner-portal-page .iema-faculty-pay-period-head nav .iema-btn{flex:1}body.iema-owner-portal-page .iema-payroll-settings-card .iema-form-grid{grid-template-columns:1fr}}


/* v0.14.322 Faculty Pay: three-rate model */
.iema-faculty-three-rates{display:grid!important;grid-template-columns:repeat(3,minmax(120px,1fr)) auto;gap:10px!important;align-items:end!important;width:min(760px,100%)!important}
.iema-faculty-three-rates label{display:grid!important;grid-template-columns:auto 1fr;align-items:center;gap:6px!important;margin:0!important}
.iema-faculty-three-rates label>span{grid-column:1/-1;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.iema-faculty-three-rates input{width:100%!important;min-width:0!important}
.iema-faculty-pay-rate-help{margin:0 16px 16px;font-size:.86rem;line-height:1.45;opacity:.78}
@media(max-width:760px){.iema-faculty-three-rates{grid-template-columns:1fr!important}.iema-faculty-three-rates button{width:100%}}


/* v0.14.323 — reliable mobile/PWA Remember Me control */
body.iema-login-page .iema-login-card .login-remember{
  position:relative!important;
  z-index:5!important;
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr)!important;
  align-items:start!important;
  column-gap:10px!important;
  width:100%!important;
  padding:3px 0!important;
}
body.iema-login-page .iema-login-card .login-remember input[type=checkbox]{
  position:relative!important;
  z-index:6!important;
  display:block!important;
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  margin:1px 0 0!important;
  padding:0!important;
  -webkit-appearance:checkbox!important;
  appearance:auto!important;
  accent-color:#2ebcff!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
  cursor:pointer!important;
}
body.iema-login-page .iema-login-card .login-remember label{
  position:relative!important;
  z-index:6!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:2px!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  color:#dbe7f6!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.25!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
}
body.iema-login-page .iema-login-card .login-remember label span{
  color:#8294aa!important;
  font-size:10px!important;
  font-weight:650!important;
  line-height:1.35!important;
}
body.iema-login-page .iema-login-card .login-submit{
  position:relative!important;
  z-index:1!important;
}

/* v0.14.324 — faculty profile compensation rates */
.iema-faculty-compensation .iema-faculty-rate-profile-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.iema-faculty-compensation .iema-faculty-rate-profile-note{margin-top:14px;padding:12px 14px;border:1px solid rgba(86,204,242,.18);border-radius:12px;background:rgba(11,25,35,.5);color:var(--iema-muted,#a9b8c7);font-size:.9rem}
.iema-faculty-compensation .iema-faculty-rate-profile-note strong{color:var(--iema-text,#fff)}
.iema-owner-faculty-snapshot{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}
@media(max-width:760px){.iema-faculty-compensation .iema-faculty-rate-profile-grid{grid-template-columns:1fr}}

/* Faculty Pay reporting v0.14.325 */
.iema-pay-report-metrics{grid-template-columns:repeat(5,minmax(0,1fr))!important}.iema-pay-report-table-wrap{overflow:auto;margin:18px 0 22px;border:1px solid rgba(148,163,184,.18);border-radius:18px;background:rgba(6,12,20,.42)}.iema-pay-report-table{width:100%;min-width:1050px;border-collapse:collapse}.iema-pay-report-table th,.iema-pay-report-table td{padding:14px 16px;text-align:left;border-bottom:1px solid rgba(148,163,184,.12);vertical-align:top}.iema-pay-report-table th{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#9cc7df;background:rgba(9,20,31,.75)}.iema-pay-report-table td{color:#e8eef5}.iema-pay-report-table td small{display:block;margin-top:4px;color:#9daebb;max-width:340px;white-space:normal}.iema-pay-addons,.iema-pay-time-review{margin:18px 0;border:1px solid rgba(148,163,184,.18);border-radius:18px;background:rgba(9,16,24,.52);overflow:hidden}.iema-pay-addons>summary,.iema-pay-time-review>summary{cursor:pointer;padding:16px 18px;font-weight:800;color:#eef7ff;background:rgba(16,28,40,.72)}.iema-pay-addon-layout{padding:18px}.iema-pay-addon-form{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.iema-pay-addon-form .iema-pay-addon-wide{grid-column:span 2}.iema-pay-addon-list{display:grid;gap:10px;margin-top:18px}.iema-pay-addon-list article{display:flex!important;justify-content:space-between!important;align-items:center!important;width:auto!important;max-width:none!important;padding:14px 16px!important;border:1px solid rgba(148,163,184,.14)!important;border-radius:14px!important;background:rgba(5,12,19,.5)!important}.iema-pay-addon-list article div{display:grid;gap:3px}.iema-pay-addon-list article strong{color:#f5f9fc}.iema-pay-addon-list article span,.iema-pay-addon-list article small{color:#aebdca}.iema-pay-time-review>.iema-work-owner-list,.iema-pay-time-review>.iema-empty{margin:16px}.iema-faculty-time-toolbar .iema-work-owner-filters label{min-width:280px}@media(max-width:1000px){.iema-pay-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}.iema-pay-addon-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.iema-pay-report-metrics,.iema-pay-addon-form{grid-template-columns:1fr!important}.iema-pay-addon-form .iema-pay-addon-wide{grid-column:auto}.iema-pay-report-table-wrap{margin-left:-4px;margin-right:-4px}.iema-section-head>form{width:100%}.iema-section-head>form .iema-btn{width:100%}}


/* Faculty reimbursement workflow — v0.14.326 */
.iema-reimbursement-dialog{max-width:720px!important}.iema-reimbursement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.iema-reimbursement-grid .wide{grid-column:1/-1}.iema-receipt-upload input[type=file]{padding:14px;border:1px dashed rgba(125,211,252,.35);border-radius:12px;background:rgba(8,20,31,.8)}.iema-reimbursement-recent{margin-top:20px;padding-top:18px;border-top:1px solid rgba(148,163,184,.16)}.iema-reimbursement-mini-list{display:grid;gap:8px}.iema-reimbursement-mini-list article{display:flex!important;width:auto!important;max-width:none!important;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;border:1px solid rgba(148,163,184,.14);border-radius:13px;background:rgba(8,16,25,.55)}.iema-reimbursement-mini-list article div{display:grid;gap:2px}.iema-reimbursement-mini-list article span,.iema-reimbursement-mini-list article small{color:#aebdca}.iema-pay-reimbursements{margin:18px 0;border:1px solid rgba(125,211,252,.16);border-radius:16px;overflow:hidden;background:rgba(5,13,20,.38)}.iema-pay-reimbursements>summary{display:flex;align-items:center;gap:10px;padding:16px 18px;font-weight:800;cursor:pointer;background:rgba(16,31,43,.78)}.iema-reimbursement-owner-list{display:grid;gap:10px;padding:14px}.iema-reimbursement-owner-card{display:block!important;width:auto!important;max-width:none!important;padding:16px;border:1px solid rgba(148,163,184,.16);border-radius:14px;background:rgba(8,16,25,.62)}.iema-reimbursement-owner-card.is-approved{border-color:rgba(74,222,128,.28)}.iema-reimbursement-owner-card.is-needs_correction{border-color:rgba(251,191,36,.32)}.iema-reimbursement-owner-card.is-rejected{opacity:.72}.iema-reimbursement-owner-main{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.iema-reimbursement-owner-main>div{display:grid;gap:4px}.iema-reimbursement-owner-main small{color:#75d5ff;font-weight:800}.iema-reimbursement-owner-main strong{font-size:1.05rem}.iema-reimbursement-owner-main span,.iema-reimbursement-owner-main em{color:#b8c5d0}.iema-reimbursement-owner-status{display:flex;align-items:center;gap:10px;margin-top:12px}.iema-reimbursement-owner-status span{color:#c3ced8}.iema-reimbursement-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px;padding-top:14px;border-top:1px solid rgba(148,163,184,.12)}.iema-reimbursement-actions form{margin:0}.iema-reimbursement-correction{display:flex;gap:8px;flex:1;min-width:300px}.iema-reimbursement-correction input{min-width:180px;flex:1}.iema-status-pill.is-submitted{background:rgba(56,189,248,.13);color:#8bdcff;border-color:rgba(56,189,248,.28)}.iema-status-pill.is-approved{background:rgba(74,222,128,.12);color:#86efac;border-color:rgba(74,222,128,.26)}.iema-status-pill.is-needs_correction{background:rgba(251,191,36,.12);color:#fde68a;border-color:rgba(251,191,36,.26)}.iema-status-pill.is-rejected{background:rgba(248,113,113,.12);color:#fca5a5;border-color:rgba(248,113,113,.26)}
@media(max-width:700px){.iema-reimbursement-grid{grid-template-columns:1fr 1fr}.iema-reimbursement-grid label:nth-child(3){grid-column:1/-1}.iema-reimbursement-owner-main{flex-direction:column}.iema-reimbursement-actions{align-items:stretch}.iema-reimbursement-actions form,.iema-reimbursement-actions button{width:100%}.iema-reimbursement-correction{min-width:0;flex-direction:column}.iema-faculty-day-actions .iema-faculty-reimbursement-btn{width:100%}}

/* Faculty Pay period lock state */
.iema-pay-period-head-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.iema-pay-period-head-actions nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.iema-pay-period-lock-form{margin:0}
.iema-pay-period-state{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-top:10px;padding:9px 12px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.035)}
.iema-pay-period-state b{font-size:12px;letter-spacing:.08em}
.iema-pay-period-state span{font-size:12px;color:var(--iema-muted,#9aa8ba)}
.iema-pay-period-state.is-open b{color:#7fe5b0}
.iema-pay-period-state.is-locked{border-color:rgba(255,190,72,.28);background:rgba(255,190,72,.07)}
.iema-pay-period-state.is-locked b{color:#ffd27a}
.iema-pay-period-state.is-override{border-color:rgba(69,194,255,.3);background:rgba(69,194,255,.07)}
.iema-pay-period-state.is-override b{color:#70d7ff}
.iema-pay-locked-note{margin:12px 0;padding:11px 13px;border:1px solid rgba(255,190,72,.24);border-radius:12px;background:rgba(255,190,72,.06);color:#d7e0ec;font-size:13px}
@media(max-width:760px){.iema-faculty-pay-period-head{align-items:stretch!important}.iema-pay-period-head-actions{align-items:stretch}.iema-pay-period-head-actions nav{justify-content:flex-start}.iema-pay-period-lock-form .iema-btn{width:100%}}

/* Faculty mobile Today polish — v0.14.328 */
.iema-faculty-toast{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:12px 14px;border:1px solid rgba(74,222,128,.28);border-radius:14px;background:linear-gradient(135deg,rgba(20,83,45,.36),rgba(7,25,18,.74));box-shadow:0 10px 28px rgba(0,0,0,.16)}
.iema-faculty-toast>span{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:999px;background:rgba(74,222,128,.16);color:#86efac;font-weight:900}.iema-faculty-toast>div{display:grid;gap:1px}.iema-faculty-toast strong{color:#ecfdf5;font-size:13px}.iema-faculty-toast small{color:#a7c7b1;font-size:11px}
.iema-faculty-view-today .iema-faculty-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin-bottom:12px!important}.iema-faculty-view-today .iema-faculty-stats>div{min-height:0!important;padding:14px 16px!important;border-radius:14px!important}.iema-faculty-view-today .iema-faculty-stats strong{font-size:25px!important;line-height:1!important}.iema-faculty-view-today .iema-faculty-stats small{margin-top:5px!important;font-size:9px!important;line-height:1.2!important}
.iema-faculty-view-today .iema-faculty-day{gap:12px!important}.iema-faculty-view-today .iema-faculty-day-head{align-items:stretch!important;padding:14px 0 0!important;gap:16px!important}.iema-faculty-day-copy{min-width:0;flex:1}.iema-faculty-view-today .iema-faculty-day-nav{margin:3px 0 2px!important;gap:9px!important}.iema-faculty-view-today .iema-faculty-day-nav h2{font-size:27px!important;line-height:1.08!important}.iema-faculty-view-today .iema-faculty-day-copy>p{margin:6px 0 0!important;color:#9fb0c3!important;max-width:640px}
.iema-faculty-view-today .iema-faculty-day-actions{display:grid!important;grid-template-columns:116px minmax(300px,1fr)!important;gap:12px!important;align-items:stretch!important;min-width:min(520px,48vw)!important}.iema-faculty-view-today .iema-faculty-day-count{min-width:0!important;height:100%!important;display:grid!important;place-content:center!important;padding:13px!important}.iema-faculty-view-today .iema-faculty-day-count strong{font-size:25px!important}.iema-faculty-quick-actions{display:grid;gap:7px;padding:11px 12px;border:1px solid #26394d;border-radius:14px;background:linear-gradient(145deg,#0b1420,#0d1926)}.iema-faculty-action-label{font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#7f92a7}.iema-faculty-action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.iema-faculty-action-buttons .iema-btn{margin:0!important;min-height:40px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;font-size:12px!important;line-height:1.1!important;padding:10px 12px!important;border-radius:11px!important}.iema-faculty-action-buttons .iema-faculty-reimbursement-btn{border-color:#35516f!important;background:#111c29!important;color:#dceeff!important}.iema-faculty-work-state{margin:0!important;padding-top:1px!important;color:#9fb1c5!important;font-size:10px!important}
@media(max-width:820px){.iema-faculty-view-today .iema-faculty-day-head{display:grid!important}.iema-faculty-view-today .iema-faculty-day-actions{min-width:0!important;grid-template-columns:92px 1fr!important}.iema-faculty-view-today .iema-faculty-day-nav h2{min-width:0!important;font-size:24px!important}}
@media(max-width:600px){.iema-faculty-toast{margin:0 0 10px;padding:10px 12px}.iema-faculty-view-today .iema-faculty-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}.iema-faculty-view-today .iema-faculty-stats>div{padding:11px 9px!important;text-align:center!important}.iema-faculty-view-today .iema-faculty-stats strong{font-size:22px!important}.iema-faculty-view-today .iema-faculty-stats small{font-size:8px!important;letter-spacing:.04em!important}.iema-faculty-view-today .iema-faculty-day-head{padding-top:8px!important;gap:10px!important}.iema-faculty-view-today .iema-faculty-day-nav button{width:38px!important;height:38px!important;border-radius:11px!important}.iema-faculty-view-today .iema-faculty-day-nav h2{font-size:21px!important}.iema-faculty-view-today .iema-faculty-day-copy>p{font-size:11px!important;line-height:1.45!important}.iema-faculty-view-today .iema-faculty-day-actions{grid-template-columns:1fr!important;gap:8px!important}.iema-faculty-view-today .iema-faculty-day-count{display:flex!important;align-items:baseline!important;justify-content:center!important;gap:7px!important;height:auto!important;padding:9px 12px!important}.iema-faculty-view-today .iema-faculty-day-count strong{font-size:22px!important}.iema-faculty-action-buttons{grid-template-columns:1fr 1fr!important}.iema-faculty-action-buttons .iema-btn{min-height:42px!important;padding:9px 8px!important;font-size:11px!important}.iema-faculty-quick-actions{padding:10px!important}.iema-faculty-view-today .iema-panel{margin-top:0!important}}
@media(max-width:390px){.iema-faculty-action-buttons{grid-template-columns:1fr!important}.iema-faculty-view-today .iema-faculty-stats small{font-size:7.5px!important}}

/* v0.14.329 — Faculty Today focused schedule redesign */
.iema-faculty-view-today .iema-faculty-toast{max-width:620px;margin:0 0 10px;padding:9px 12px;border-radius:12px;box-shadow:none}
.iema-faculty-view-today .iema-faculty-toast>span{width:24px;height:24px;flex-basis:24px}.iema-faculty-view-today .iema-faculty-toast strong{font-size:12px}.iema-faculty-view-today .iema-faculty-toast small{font-size:10px}
.iema-faculty-day-v2{gap:12px!important}.iema-faculty-today-hero{display:grid;gap:7px;padding:14px 2px 4px}.iema-faculty-today-hero .iema-kicker{margin:0}.iema-faculty-today-hero .iema-faculty-day-nav{margin:0!important}.iema-faculty-today-hero .iema-faculty-day-nav h2{font-size:27px!important}.iema-faculty-today-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.iema-faculty-today-summary strong{font-size:13px;color:#fff}.iema-faculty-today-summary span{font-size:11px;color:#91a6bd}
.iema-faculty-agenda-v2{padding:18px!important}.iema-faculty-agenda-v2 .iema-section-head{margin-bottom:12px!important}.iema-faculty-agenda-v2 .iema-section-head h2{font-size:24px!important}.iema-faculty-agenda-v2 .iema-section-head p{margin-top:3px!important}
.iema-faculty-agenda-list-v2{display:grid;gap:9px}.iema-faculty-agenda-card{border:1px solid #26394f;border-radius:15px;background:linear-gradient(145deg,#0a121d,#0d1723);overflow:hidden}.iema-faculty-agenda-card[open]{border-color:#355776;box-shadow:0 8px 24px rgba(0,0,0,.15)}.iema-faculty-agenda-card>summary{list-style:none;display:grid;grid-template-columns:98px minmax(0,1fr) 22px;gap:14px;align-items:center;padding:14px 15px;cursor:pointer}.iema-faculty-agenda-card>summary::-webkit-details-marker{display:none}.iema-faculty-agenda-card>summary time{display:grid;gap:2px;padding-right:12px;border-right:1px solid #24354a}.iema-faculty-agenda-card>summary time strong{font-size:18px;color:#fff}.iema-faculty-agenda-card>summary time small{font-size:10px;color:#869ab2}.iema-faculty-agenda-main{display:grid;gap:2px;min-width:0}.iema-faculty-agenda-main em{font-style:normal;font-size:8px;font-weight:900;letter-spacing:.12em;color:#78d7ff}.iema-faculty-agenda-card.is-private .iema-faculty-agenda-main em{color:#e7b7ff}.iema-faculty-agenda-main strong{font-size:15px;color:#f7fbff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iema-faculty-agenda-main small{font-size:11px;color:#9cafc4}.iema-faculty-agenda-card>summary>b{font-size:22px;color:#75d8ff;transition:transform .16s ease}.iema-faculty-agenda-card[open]>summary>b{transform:rotate(90deg)}
.iema-faculty-agenda-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 15px 15px 127px;border-top:1px solid rgba(94,119,147,.18)}.iema-faculty-agenda-detail>div{display:grid;gap:3px;padding-top:12px}.iema-faculty-agenda-detail>div.wide{grid-column:1/-1}.iema-faculty-agenda-detail small{font-size:8px;font-weight:900;letter-spacing:.1em;color:#6f89a5}.iema-faculty-agenda-detail strong,.iema-faculty-agenda-detail span{font-size:12px;line-height:1.4;color:#e9f2fb}.iema-faculty-agenda-people{display:flex;flex-wrap:wrap;gap:7px}.iema-faculty-agenda-people span{display:inline-flex;align-items:center;gap:6px;padding:5px 8px 5px 5px;border:1px solid #263d56;border-radius:999px;background:#0a1623}.iema-faculty-agenda-people img{width:24px;height:24px;border-radius:50%;object-fit:cover}.iema-faculty-agenda-people b{font-size:10px;color:#f4f8fc}
.iema-faculty-empty-day{display:grid!important;gap:4px!important;padding:18px!important}.iema-faculty-empty-day strong{font-size:15px;color:#fff}.iema-faculty-empty-day span{font-size:11px;color:#91a3b8}
.iema-faculty-action-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #26394e;border-radius:16px;background:linear-gradient(135deg,#0b1521,#0d1926)}.iema-faculty-action-strip>div:first-child{display:grid;gap:3px}.iema-faculty-action-strip>div:first-child>strong{font-size:17px;color:#fff}.iema-faculty-action-strip>div:first-child>small{font-size:10px;color:#95a9bf}.iema-faculty-action-strip .iema-faculty-action-buttons{display:flex;gap:8px;min-width:min(460px,50%)}.iema-faculty-action-strip .iema-btn{flex:1;min-height:42px!important;margin:0!important;display:flex!important;align-items:center;justify-content:center;text-align:center;padding:10px 13px!important;border-radius:11px!important;font-size:11px!important;line-height:1.15!important}
@media(max-width:680px){.iema-faculty-view-today .iema-parent-content{padding-top:10px!important}.iema-faculty-today-hero{padding:8px 1px 2px;gap:6px}.iema-faculty-today-hero .iema-faculty-day-nav button{width:38px!important;height:38px!important}.iema-faculty-today-hero .iema-faculty-day-nav h2{font-size:21px!important}.iema-faculty-today-summary{justify-content:center}.iema-faculty-agenda-v2{padding:14px!important}.iema-faculty-agenda-v2 .iema-section-head h2{font-size:20px!important}.iema-faculty-agenda-card>summary{grid-template-columns:78px minmax(0,1fr) 18px;gap:10px;padding:12px}.iema-faculty-agenda-card>summary time{padding-right:9px}.iema-faculty-agenda-card>summary time strong{font-size:15px}.iema-faculty-agenda-main strong{font-size:13px}.iema-faculty-agenda-main small{font-size:10px}.iema-faculty-agenda-detail{grid-template-columns:1fr;padding:0 12px 12px;gap:3px}.iema-faculty-agenda-detail>div.wide{grid-column:auto}.iema-faculty-agenda-people{gap:5px}.iema-faculty-action-strip{display:grid;padding:12px;gap:10px}.iema-faculty-action-strip .iema-faculty-action-buttons{min-width:0;width:100%;display:grid;grid-template-columns:1fr 1fr}.iema-faculty-action-strip>div:first-child>strong{font-size:15px}.iema-faculty-upcoming-panel{margin-top:0!important}}
@media(max-width:420px){.iema-faculty-action-strip .iema-faculty-action-buttons{grid-template-columns:1fr}.iema-faculty-agenda-card>summary{grid-template-columns:70px minmax(0,1fr) 16px}.iema-faculty-agenda-main strong{white-space:normal}}


/* Faculty Today refinement — v0.14.330 */
.iema-faculty-day-v2{gap:16px!important;}
.iema-faculty-today-hero{padding:20px 6px 10px!important;gap:10px!important;}
.iema-faculty-today-hero .iema-faculty-day-nav h2{font-size:30px!important;}
.iema-faculty-today-summary{gap:10px!important;}
.iema-faculty-today-summary strong{font-size:15px!important;}
.iema-faculty-today-summary span{font-size:12px!important;}
.iema-faculty-agenda-v2{padding:24px!important;min-height:390px!important;border-radius:24px!important;}
.iema-faculty-agenda-v2 .iema-section-head{margin-bottom:18px!important;}
.iema-faculty-agenda-v2 .iema-section-head h2{font-size:28px!important;}
.iema-faculty-agenda-v2 .iema-section-head p{font-size:13px!important;max-width:560px!important;}
.iema-faculty-action-strip{margin-top:0!important;padding:18px!important;border-radius:20px!important;}
.iema-faculty-action-strip>div:first-child{gap:4px!important;}
.iema-faculty-action-strip>div:first-child>strong{font-size:18px!important;}
.iema-faculty-action-strip>div:first-child>small{font-size:12px!important;line-height:1.35!important;}
.iema-faculty-upcoming-panel{display:none!important;}
@media(max-width:680px){
 .iema-faculty-today-hero{padding:14px 2px 8px!important;}
 .iema-faculty-today-hero .iema-faculty-day-nav h2{font-size:24px!important;}
 .iema-faculty-agenda-v2{padding:18px!important;min-height:360px!important;border-radius:22px!important;}
 .iema-faculty-agenda-v2 .iema-section-head h2{font-size:24px!important;}
 .iema-faculty-action-strip{padding:16px!important;gap:12px!important;}
}


/* Faculty Today dynamic schedule height — v0.14.333 */
.iema-faculty-agenda-v2{
  min-height:0!important;
  height:auto!important;
}
.iema-faculty-agenda-v2 .iema-faculty-agenda-list-v2{
  min-height:0!important;
  height:auto!important;
}
.iema-faculty-agenda-v2 .iema-faculty-empty-day{
  min-height:0!important;
  padding:16px 18px!important;
  margin:0!important;
}
@media(max-width:680px){
  .iema-faculty-agenda-v2{
    min-height:0!important;
    height:auto!important;
  }
  .iema-faculty-agenda-v2 .iema-faculty-empty-day{
    padding:14px 15px!important;
  }
}


/* Owner reimbursement review — compact single-row layout v0.14.335 */
.iema-reimbursement-review-table{display:grid;gap:8px!important;padding:10px 12px 12px!important}
.iema-reimbursement-review-row{position:relative;display:grid!important;grid-template-columns:minmax(310px,1fr) 150px auto!important;align-items:center!important;gap:14px!important;width:auto!important;max-width:none!important;padding:10px 12px!important;border-radius:12px!important;background:rgba(8,16,25,.68)!important}
.iema-reimbursement-review-info{display:grid;grid-template-columns:62px minmax(0,1fr);gap:12px;align-items:center;min-width:0}
.iema-reimbursement-review-date{display:grid;gap:0;line-height:1.05}.iema-reimbursement-review-date strong{font-size:13px;color:#dfeaf4}.iema-reimbursement-review-date small{font-size:10px;color:#8194a8}
.iema-reimbursement-review-copy{display:grid;gap:2px;min-width:0}.iema-reimbursement-review-copy strong{font-size:14px;color:#f7fbff}.iema-reimbursement-review-copy span{font-size:12px;color:#b6c5d2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iema-reimbursement-review-copy small{font-size:10px;color:#8296a9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.iema-reimbursement-review-amount{display:flex;align-items:center;justify-content:flex-end;gap:9px;white-space:nowrap}.iema-reimbursement-review-amount>strong{font-size:15px;color:#fff}.iema-reimbursement-review-amount .iema-status-pill{margin:0;font-size:10px;padding:5px 8px}
.iema-reimbursement-review-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap}.iema-reimbursement-review-actions form{margin:0!important}.iema-reimbursement-review-actions .iema-btn,.iema-reimbursement-correction-pop>summary{min-height:34px!important;padding:8px 11px!important;border-radius:9px!important;font-size:11px!important;line-height:1!important;margin:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;cursor:pointer;list-style:none}.iema-reimbursement-correction-pop>summary::-webkit-details-marker{display:none}.iema-reimbursement-reject-btn{background:rgba(127,29,29,.42)!important;border:1px solid rgba(248,113,113,.34)!important;color:#fecaca!important}
.iema-reimbursement-correction-pop{position:relative}.iema-reimbursement-correction-pop[open]>summary{border-color:rgba(251,191,36,.45)!important;color:#fde68a!important}.iema-reimbursement-correction-form{position:absolute;z-index:40;right:0;top:calc(100% + 8px);width:min(480px,75vw);padding:13px;border:1px solid rgba(125,211,252,.24);border-radius:12px;background:#0a141f;box-shadow:0 18px 48px rgba(0,0,0,.45);display:grid;gap:10px}.iema-reimbursement-correction-form label{display:grid;gap:5px;margin:0}.iema-reimbursement-correction-form label span{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#9fb3c6}.iema-reimbursement-correction-form input{width:100%;min-width:0}.iema-reimbursement-correction-form>div{display:flex;justify-content:flex-end;gap:8px}
.iema-reimbursement-review-note{grid-column:1/-1;margin-top:-2px;padding:7px 10px;border-radius:8px;background:rgba(251,191,36,.08);color:#d9cfa9;font-size:11px}.iema-reimbursement-review-note strong{color:#fde68a}
@media(max-width:1050px){.iema-reimbursement-review-row{grid-template-columns:minmax(260px,1fr) 135px!important}.iema-reimbursement-review-actions{grid-column:1/-1;justify-content:flex-start;padding-top:7px;border-top:1px solid rgba(148,163,184,.1)}}
@media(max-width:700px){.iema-reimbursement-review-table{padding:8px!important}.iema-reimbursement-review-row{grid-template-columns:1fr!important;gap:9px!important;padding:12px!important}.iema-reimbursement-review-info{grid-template-columns:54px minmax(0,1fr)}.iema-reimbursement-review-amount{justify-content:flex-start}.iema-reimbursement-review-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr;gap:7px;border-top:1px solid rgba(148,163,184,.1);padding-top:9px}.iema-reimbursement-review-actions>a,.iema-reimbursement-review-actions>form,.iema-reimbursement-review-actions>details,.iema-reimbursement-review-actions button,.iema-reimbursement-correction-pop>summary{width:100%!important}.iema-reimbursement-correction-form{position:fixed;left:12px;right:12px;top:auto;bottom:calc(12px + env(safe-area-inset-bottom));width:auto;max-width:none}.iema-reimbursement-review-copy span,.iema-reimbursement-review-copy small{white-space:normal}.iema-reimbursement-review-note{grid-column:auto}}

/* v0.14.336 — reimbursement expense date clarity + receipt modal */
.iema-reimbursement-form label small{display:block;margin-top:5px;color:#91a5b8;font-size:10px;line-height:1.35}
.iema-receipt-modal[hidden]{display:none!important}.iema-receipt-modal{position:fixed;inset:0;z-index:2147482500;display:grid;place-items:center;padding:20px;box-sizing:border-box}.iema-receipt-modal-backdrop{position:absolute;inset:0;background:rgba(2,8,14,.82);backdrop-filter:blur(7px)}.iema-receipt-modal-dialog{position:relative;z-index:1;width:min(900px,96vw);height:min(88vh,980px);display:grid;grid-template-rows:auto 1fr;background:#07111b;border:1px solid rgba(125,211,252,.22);border-radius:20px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.58)}.iema-receipt-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid rgba(148,163,184,.14);background:#0d1a27}.iema-receipt-modal-head div{min-width:0}.iema-receipt-modal-head small{display:block;color:#73d7ff;font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;margin-bottom:3px}.iema-receipt-modal-head strong{display:block;color:#f7fbff;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iema-receipt-modal-close{appearance:none;width:36px;height:36px;border-radius:10px;border:1px solid #334a60;background:#111f2d;color:#f5fbff;font-size:22px;line-height:1;cursor:pointer}.iema-receipt-modal-body{position:relative;min-height:0;background:#02070c}.iema-receipt-modal-frame{width:100%;height:100%;border:0;background:#fff}.iema-receipt-modal-loading{position:absolute;inset:0;display:grid;place-items:center;color:#b9cad7;font-weight:700;pointer-events:none}.iema-receipt-modal.is-loaded .iema-receipt-modal-loading{display:none}@media(max-width:700px){.iema-receipt-modal{padding:8px}.iema-receipt-modal-dialog{width:100%;height:calc(100dvh - 16px);border-radius:16px}.iema-receipt-modal-head{padding:12px}.iema-receipt-modal-head strong{font-size:12px}}

/* v0.14.337 — reimbursement form clarity + mobile polish */
.iema-reimbursement-dialog{max-width:680px!important}
.iema-reimbursement-dialog .iema-create-modal-head{padding-bottom:14px!important}
.iema-reimbursement-dialog .iema-create-modal-head h2{margin-bottom:4px!important}
.iema-reimbursement-dialog .iema-create-modal-head p{max-width:560px;color:#aebdca!important;line-height:1.4!important}
.iema-reimbursement-form{display:grid;gap:14px}
.iema-reimbursement-grid{grid-template-columns:1.15fr 1fr .85fr;gap:10px 12px!important}
.iema-reimbursement-grid label{display:grid;gap:6px;margin:0!important;min-width:0}
.iema-reimbursement-grid label>span{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#b8c8d8}
.iema-reimbursement-grid label>span em{font-style:normal;font-weight:700;letter-spacing:0;text-transform:none;color:#7890a5}
.iema-reimbursement-form input,.iema-reimbursement-form select{min-height:44px!important}
.iema-expense-date-field small{margin-top:2px!important;padding:8px 10px;border-left:3px solid #7dd3fc;border-radius:7px;background:rgba(56,189,248,.08);color:#b9cbd9!important;font-size:10px!important;line-height:1.4!important}
.iema-money-field{display:grid;grid-template-columns:34px 1fr;align-items:center;border:1px solid #314255;border-radius:10px;background:#08111b;overflow:hidden}
.iema-money-field>b{display:grid;place-items:center;height:100%;color:#93a9bd;border-right:1px solid #253548;font-size:14px}
.iema-money-field input{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;min-width:0}
.iema-receipt-upload input[type=file]{min-height:50px!important;padding:7px!important;border:1px dashed rgba(125,211,252,.38)!important;border-radius:11px!important;background:rgba(8,20,31,.82)!important;color:#aebdca}
.iema-receipt-upload input[type=file]::file-selector-button{margin-right:10px;padding:9px 12px;border:1px solid #38617d;border-radius:8px;background:#102536;color:#dff5ff;font-weight:800;cursor:pointer}
.iema-reimbursement-submit{width:100%;margin:0!important;min-height:46px!important}
.iema-reimbursement-recent{margin-top:14px!important;padding-top:14px!important}
.iema-reimbursement-recent h3{margin:0 0 9px!important;font-size:13px!important}
@media(max-width:700px){
 .iema-reimbursement-dialog{width:calc(100vw - 20px)!important;max-width:none!important;max-height:calc(100dvh - 24px)!important;overflow:auto!important;padding:18px 14px 16px!important}
 .iema-reimbursement-grid{grid-template-columns:1fr!important;gap:11px!important}
 .iema-reimbursement-grid .wide,.iema-reimbursement-grid label:nth-child(3){grid-column:auto!important}
 .iema-reimbursement-dialog .iema-create-modal-head{padding-right:28px!important}
 .iema-reimbursement-dialog .iema-create-modal-head h2{font-size:22px!important}
 .iema-reimbursement-dialog .iema-create-modal-head p{font-size:12px!important;margin-top:3px!important}
 .iema-reimbursement-form input,.iema-reimbursement-form select{font-size:16px!important}
 .iema-expense-date-field small{font-size:11px!important}
 .iema-reimbursement-mini-list article{padding:10px 11px!important}
}

/* v0.14.338 — receipt modal image fit */
.iema-receipt-modal-frame{background:#02070c!important}


/* v0.14.339 — AI-assisted receipt entry + submitter verification */
.iema-receipt-ai-state{display:flex;align-items:center;gap:11px;padding:11px 12px;border:1px solid rgba(125,211,252,.24);border-radius:12px;background:rgba(7,17,27,.82);color:#dce9f3}.iema-receipt-ai-state[hidden]{display:none!important}.iema-receipt-ai-state>div{display:grid;gap:2px;min-width:0;flex:1}.iema-receipt-ai-state strong{font-size:12px;color:#f7fbff}.iema-receipt-ai-state small{font-size:10px;line-height:1.35;color:#9fb2c4}.iema-receipt-ai-state.is-success{border-color:rgba(74,222,128,.3);background:rgba(20,83,45,.15)}.iema-receipt-ai-state.is-warning{border-color:rgba(251,191,36,.3);background:rgba(120,53,15,.13)}.iema-receipt-ai-state.is-error{border-color:rgba(248,113,113,.3);background:rgba(127,29,29,.13)}.iema-receipt-ai-spinner{width:22px;height:22px;border-radius:50%;border:2px solid rgba(148,163,184,.24);border-top-color:#7dd3fc;animation:iemaReceiptSpin .75s linear infinite;flex:0 0 22px}.iema-receipt-ai-state:not(.is-reading) .iema-receipt-ai-spinner{animation:none;border-color:rgba(74,222,128,.55);position:relative}.iema-receipt-ai-state:not(.is-reading) .iema-receipt-ai-spinner:after{content:'✓';position:absolute;inset:-4px;display:grid;place-items:center;font-size:12px;font-weight:900;color:#86efac}.iema-receipt-ai-state.is-warning .iema-receipt-ai-spinner{border-color:rgba(251,191,36,.55)}.iema-receipt-ai-state.is-warning .iema-receipt-ai-spinner:after{content:'!';color:#fde68a}@keyframes iemaReceiptSpin{to{transform:rotate(360deg)}}
.iema-receipt-ai-disclosure{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid rgba(167,139,250,.28);border-radius:14px;background:linear-gradient(145deg,rgba(76,29,149,.18),rgba(8,20,31,.88))}.iema-receipt-ai-disclosure>div{display:grid;gap:4px;min-width:0}.iema-receipt-ai-disclosure .iema-kicker{margin:0;color:#c4b5fd}.iema-receipt-ai-disclosure strong{font-size:13px;line-height:1.35;color:#f7f4ff}.iema-receipt-ai-disclosure p{margin:0;font-size:10px;line-height:1.5;color:#b9c7d4}.iema-receipt-ai-disclosure.is-disabled{border-color:rgba(148,163,184,.2);background:rgba(8,20,31,.72)}.iema-receipt-ai-disclosure.is-disabled .iema-kicker{color:#9fb2c4}.iema-receipt-ai-consent{flex:0 0 auto;min-width:172px}.iema-receipt-ai-consent:disabled{opacity:.45;cursor:not-allowed;filter:saturate(.4)}
.iema-receipt-ai-state [data-receipt-scan-again]{min-height:32px!important;padding:7px 10px!important;font-size:10px!important;margin:0!important;flex:0 0 auto}.iema-receipt-verify{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:10px!important;padding:12px!important;border:1px solid rgba(125,211,252,.22);border-radius:12px;background:rgba(10,20,31,.7)}.iema-receipt-verify>input{width:18px!important;height:18px!important;min-height:18px!important;margin:2px 0 0!important;flex:0 0 18px}.iema-receipt-verify>span{display:grid;gap:2px!important}.iema-receipt-verify strong{font-size:12px;color:#f4f9fd}.iema-receipt-verify small{font-size:10px!important;line-height:1.35;color:#9fb2c4!important;margin:0!important}
@media(max-width:700px){.iema-receipt-ai-disclosure{align-items:stretch;flex-direction:column}.iema-receipt-ai-consent{width:100%;min-width:0}.iema-receipt-ai-state{align-items:flex-start;flex-wrap:wrap}.iema-receipt-ai-state [data-receipt-scan-again]{margin-left:33px!important}.iema-receipt-verify{padding:11px!important}}

/* v0.14.340 — reimbursement capture + verification flow */
.iema-receipt-source{display:grid!important;gap:8px!important}.iema-field-label{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#b8c8d8}.iema-receipt-source-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.iema-receipt-source-btn{display:flex!important;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px!important;min-height:62px;padding:12px 14px!important;border:1px solid rgba(125,211,252,.34)!important;border-radius:12px!important;background:linear-gradient(180deg,rgba(16,37,54,.96),rgba(9,24,36,.96))!important;cursor:pointer}.iema-receipt-source-btn:hover{border-color:rgba(125,211,252,.65)!important;background:linear-gradient(180deg,rgba(20,46,66,.98),rgba(10,29,43,.98))!important}.iema-receipt-source-btn strong{font-size:13px;color:#f6fbff}.iema-receipt-source-btn small{font-size:10px;color:#9fb4c6!important}.iema-receipt-source-help{margin:0!important;font-size:10px!important;line-height:1.35;color:#8fa5b8!important}.iema-receipt-selected{padding:8px 10px;border-radius:9px;background:rgba(56,189,248,.08);border:1px solid rgba(56,189,248,.18);font-size:10px;color:#bfeaff}.iema-receipt-review-head{display:grid;gap:3px!important;margin-top:4px;padding:12px 13px;border-radius:12px;border:1px solid rgba(125,211,252,.18);background:rgba(7,17,27,.62)}.iema-receipt-review-head .iema-kicker{font-size:9px}.iema-receipt-review-head strong{font-size:13px;color:#f7fbff}.iema-receipt-review-head small{font-size:10px!important;line-height:1.4;color:#9fb2c4!important}.iema-receipt-verify{margin-top:2px!important;border-color:rgba(74,222,128,.24)!important;background:rgba(20,83,45,.12)!important}.iema-receipt-verify strong{color:#ecfdf5!important}.iema-receipt-verify input:checked+span strong{color:#86efac!important}@media(max-width:700px){.iema-receipt-source-actions{grid-template-columns:1fr 1fr}.iema-receipt-source-btn{min-height:58px;padding:11px 12px!important}.iema-receipt-review-head{padding:11px 12px}}


/* v0.14.342 — reimbursement mobile containment + verification alignment */
.iema-reimbursement-dialog,
.iema-reimbursement-dialog *,
.iema-reimbursement-form,
.iema-reimbursement-form *{box-sizing:border-box}
.iema-reimbursement-dialog{overflow-x:hidden!important}
.iema-reimbursement-form{width:100%;max-width:100%;min-width:0;overflow-x:hidden}
.iema-reimbursement-grid{width:100%;max-width:100%;min-width:0}
.iema-reimbursement-grid>*{min-width:0;max-width:100%}
.iema-reimbursement-grid label,
.iema-reimbursement-grid input,
.iema-reimbursement-grid select,
.iema-reimbursement-grid textarea,
.iema-receipt-source,
.iema-receipt-ai-state,
.iema-receipt-review-head,
.iema-receipt-verify{width:100%;max-width:100%;min-width:0}
.iema-reimbursement-form input,
.iema-reimbursement-form select,
.iema-reimbursement-form textarea{max-width:100%!important}
.iema-money-field{width:100%;max-width:100%;min-width:0;grid-template-columns:44px minmax(0,1fr)!important}
.iema-money-field input{width:100%!important;min-width:0!important}
.iema-receipt-review-head{overflow:hidden}
.iema-receipt-review-head small,
.iema-expense-date-field small,
.iema-receipt-source-help{overflow-wrap:anywhere}
.iema-receipt-verify{
 display:grid!important;
 grid-template-columns:24px minmax(0,1fr)!important;
 align-items:start!important;
 gap:11px!important;
 overflow:hidden!important;
 padding:13px 14px!important;
}
.iema-receipt-verify>input[type=checkbox]{
 appearance:auto!important;
 -webkit-appearance:checkbox!important;
 width:20px!important;
 height:20px!important;
 min-width:20px!important;
 min-height:20px!important;
 max-width:20px!important;
 margin:1px 0 0!important;
 padding:0!important;
 position:static!important;
 transform:none!important;
}
.iema-receipt-verify>span{
 display:block!important;
 width:auto!important;
 min-width:0!important;
 max-width:100%!important;
 margin:0!important;
 padding:0!important;
 overflow:hidden!important;
}
.iema-receipt-verify strong,
.iema-receipt-verify small{
 display:block!important;
 width:auto!important;
 max-width:100%!important;
 white-space:normal!important;
 overflow-wrap:anywhere!important;
 word-break:normal!important;
 text-align:left!important;
}
.iema-receipt-verify strong{line-height:1.3!important}
.iema-receipt-verify small{margin-top:4px!important;line-height:1.45!important}
.iema-reimbursement-mini-list{width:100%;max-width:100%;min-width:0}
.iema-reimbursement-mini-list article{width:100%!important;max-width:100%!important;min-width:0!important}
.iema-reimbursement-mini-list article>div{min-width:0}
.iema-reimbursement-mini-list article strong,
.iema-reimbursement-mini-list article span,
.iema-reimbursement-mini-list article small{overflow-wrap:anywhere}
@media(max-width:700px){
 html:has(.iema-create-modal:not([hidden])) body{overflow-x:hidden!important}
 .iema-reimbursement-dialog{
   width:calc(100vw - 16px)!important;
   max-width:calc(100vw - 16px)!important;
   margin:8px!important;
   padding:16px 14px!important;
   overflow-x:hidden!important;
 }
 .iema-reimbursement-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
 .iema-receipt-source-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important}
 .iema-receipt-source-btn{min-width:0!important;width:100%!important;padding:11px 10px!important}
 .iema-receipt-source-btn strong,.iema-receipt-source-btn small{white-space:normal!important;overflow-wrap:anywhere}
 .iema-expense-date-field small{padding:10px 11px!important;font-size:11px!important}
 .iema-receipt-review-head{padding:11px!important}
 .iema-receipt-verify{grid-template-columns:22px minmax(0,1fr)!important;padding:12px!important;gap:10px!important}
 .iema-receipt-verify>input[type=checkbox]{width:20px!important;height:20px!important;min-width:20px!important}
 .iema-receipt-verify strong{font-size:13px!important}
 .iema-receipt-verify small{font-size:11px!important}
 .iema-reimbursement-submit{width:100%!important;max-width:100%!important}
}

/* v0.14.344 — receipt date override review */
.iema-receipt-date-override{display:grid;gap:12px;padding:14px 16px;border:1px solid rgba(255,190,80,.42);border-radius:16px;background:rgba(255,174,59,.08);max-width:100%;overflow:hidden}.iema-receipt-date-override[hidden]{display:none!important}.iema-receipt-date-override strong{display:block;color:#fff;line-height:1.35}.iema-receipt-date-override small{display:block;color:#c9d3df;line-height:1.45;margin-top:5px}.iema-receipt-date-override label{margin:0;min-width:0}.iema-date-override-flag{display:inline-flex!important;flex-wrap:wrap;gap:6px;align-items:center;width:fit-content;margin-top:5px;padding:5px 8px;border-radius:999px;background:rgba(255,174,59,.12);border:1px solid rgba(255,174,59,.36);color:#ffd18a!important;font-size:11px!important;font-weight:800}.iema-date-override-flag b{font-size:10px;letter-spacing:.08em}.iema-date-override-flag.is-approved{background:rgba(55,200,130,.10);border-color:rgba(55,200,130,.35);color:#8ce7bb!important}.iema-date-override-flag.is-rejected{background:rgba(240,80,95,.10);border-color:rgba(240,80,95,.35);color:#ff9aa5!important}.iema-date-override-reason{color:#d2dbe5!important;margin-top:4px}@media(max-width:720px){.iema-receipt-date-override{padding:13px 14px;border-radius:14px}}


/* v0.14.348 — receipt modal iOS/PWA safe-area header */
@media (max-width:700px){
  .iema-receipt-modal{
    place-items:start center!important;
    padding-top:calc(8px + env(safe-area-inset-top,0px))!important;
    padding-right:max(8px,env(safe-area-inset-right,0px))!important;
    padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;
    padding-left:max(8px,env(safe-area-inset-left,0px))!important;
  }
  .iema-receipt-modal-dialog{
    width:100%!important;
    height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;
    max-height:none!important;
  }
  .iema-receipt-modal-head{
    position:sticky!important;
    top:0!important;
    z-index:5!important;
    min-height:58px!important;
    padding:9px 10px 9px 14px!important;
    box-sizing:border-box!important;
  }
  .iema-receipt-modal-close{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;
    flex:0 0 48px!important;
    display:grid!important;
    place-items:center!important;
    padding:0!important;
    margin:0!important;
    font-size:28px!important;
    line-height:1!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  .iema-receipt-modal-body{min-height:0!important;overflow:hidden!important;}
}


/* v0.14.349 — Faculty Pay clickable drill-down */
.iema-pay-report-drill-table .iema-pay-drill-row{cursor:pointer;transition:background .16s ease,border-color .16s ease}.iema-pay-report-drill-table .iema-pay-drill-row:hover,.iema-pay-report-drill-table .iema-pay-drill-row:focus{background:rgba(92,204,255,.055);outline:none}.iema-pay-cell-link{appearance:none;border:0;background:transparent;color:inherit;font:inherit;padding:8px 6px;margin:-8px -6px;min-width:44px;border-radius:9px;cursor:pointer;text-align:left}.iema-pay-cell-link:hover,.iema-pay-cell-link:focus{background:rgba(83,202,255,.10);color:#9ee8ff;outline:1px solid rgba(83,202,255,.24)}.iema-pay-cell-link small{display:block;margin-top:2px}.iema-pay-cell-link.is-total{font-weight:900}.iema-pay-tap-hint{display:block;color:#65d6ff!important;margin-top:3px!important;font-size:10px!important}.iema-pay-drill-modal[hidden]{display:none!important}.iema-pay-drill-modal{position:fixed;inset:0;z-index:100100;display:grid;place-items:center;padding:24px;box-sizing:border-box}.iema-pay-drill-backdrop{position:absolute;inset:0;background:rgba(2,8,15,.78);backdrop-filter:blur(7px)}.iema-pay-drill-dialog{position:relative;z-index:1;width:min(900px,calc(100vw - 32px));max-height:min(86vh,900px);display:flex;flex-direction:column;background:#0b141f;border:1px solid #294052;border-radius:22px;box-shadow:0 30px 90px rgba(0,0,0,.52);overflow:hidden}.iema-pay-drill-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid #223444;background:#101c28}.iema-pay-drill-dialog>header h2{margin:3px 0 4px}.iema-pay-drill-dialog>header p{margin:0;color:#9fb0bf}.iema-pay-drill-close{appearance:none;width:44px;height:44px;min-width:44px;border-radius:12px;border:1px solid #32495c;background:#142331;color:#fff;font-size:27px;line-height:1;cursor:pointer}.iema-pay-drill-body{overflow:auto;padding:18px 20px 24px;display:grid;gap:12px}.iema-pay-drill-section-title{display:flex;align-items:center;gap:9px;margin-top:8px;padding-top:8px}.iema-pay-drill-section-title:first-child{margin-top:0;padding-top:0}.iema-pay-drill-section-title h3{margin:0;font-size:16px}.iema-pay-drill-section-title span{display:inline-grid;place-items:center;min-width:25px;height:25px;padding:0 7px;border-radius:999px;background:#192a39;color:#8edfff;font-size:11px;font-weight:900}.iema-pay-drill-card{width:100%!important;max-width:none!important;margin:0!important;padding:14px 16px!important;border:1px solid #263a4a!important;border-radius:15px!important;background:#0f1924!important}.iema-pay-drill-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.iema-pay-drill-card-head strong{font-size:15px;color:#fff}.iema-pay-drill-card-head b{white-space:nowrap;color:#9ee8ff}.iema-pay-drill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:11px}.iema-pay-drill-meta{min-width:0}.iema-pay-drill-meta small{display:block;color:#7890a4;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.iema-pay-drill-meta span{display:block;color:#d8e3ec;margin-top:3px;font-size:12px;line-height:1.35;overflow-wrap:anywhere}.iema-pay-drill-note{margin:10px 0 0;color:#aebdca;font-size:12px;line-height:1.45}.iema-pay-drill-empty{padding:17px;border:1px dashed #2a4052;border-radius:14px;color:#93a7b7;text-align:center}.iema-pay-drill-open{overflow:hidden!important}@media(max-width:700px){.iema-pay-drill-modal{place-items:end center;padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom))}.iema-pay-drill-dialog{width:100%;max-height:88dvh;border-radius:20px 20px 14px 14px}.iema-pay-drill-dialog>header{padding:15px 14px}.iema-pay-drill-body{padding:14px}.iema-pay-drill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.iema-pay-report-drill-table .iema-pay-tap-hint{display:none}.iema-pay-cell-link{padding:7px 4px;margin:-7px -4px}}


/* v0.14.350 — Faculty Pay mobile summary + content-sized drill-down */
@media (max-width:700px){
  .iema-pay-report-table-wrap{overflow:visible!important;width:100%!important;max-width:100%!important;}
  .iema-pay-report-drill-table{width:100%!important;min-width:0!important;table-layout:fixed!important;}
  .iema-pay-report-drill-table th,
  .iema-pay-report-drill-table td{display:none!important;}
  .iema-pay-report-drill-table th:first-child,
  .iema-pay-report-drill-table td:first-child,
  .iema-pay-report-drill-table th:last-child,
  .iema-pay-report-drill-table td:last-child{display:table-cell!important;}
  .iema-pay-report-drill-table th:first-child,
  .iema-pay-report-drill-table td:first-child{width:68%!important;text-align:left!important;}
  .iema-pay-report-drill-table th:last-child,
  .iema-pay-report-drill-table td:last-child{width:32%!important;text-align:right!important;}
  .iema-pay-report-drill-table td:first-child strong{display:block;font-size:14px;line-height:1.25;}
  .iema-pay-report-drill-table td:first-child small:not(.iema-pay-tap-hint){display:block;margin-top:3px;font-size:10px;line-height:1.25;}
  .iema-pay-report-drill-table .iema-pay-cell-link.is-total{display:inline-flex!important;justify-content:flex-end;align-items:center;width:100%;min-width:0;margin:0;padding:10px 0;text-align:right;font-size:15px;}
  .iema-pay-report-drill-table .iema-pay-drill-row{cursor:pointer;}
  .iema-pay-report-drill-table .iema-pay-drill-row td{padding-top:12px!important;padding-bottom:12px!important;vertical-align:middle!important;}

  .iema-pay-drill-modal{place-items:center!important;padding:max(12px,env(safe-area-inset-top)) 10px max(12px,env(safe-area-inset-bottom))!important;overflow:hidden!important;}
  .iema-pay-drill-dialog{width:min(100%,560px)!important;height:auto!important;min-height:0!important;max-height:calc(100dvh - max(24px,env(safe-area-inset-top)) - max(24px,env(safe-area-inset-bottom)))!important;align-self:center!important;border-radius:20px!important;overflow:hidden!important;}
  .iema-pay-drill-dialog>header{flex:0 0 auto!important;padding:14px 14px 12px!important;}
  .iema-pay-drill-dialog>header h2{font-size:19px!important;line-height:1.2!important;}
  .iema-pay-drill-dialog>header p{font-size:11px!important;}
  .iema-pay-drill-close{width:46px!important;height:46px!important;min-width:46px!important;}
  .iema-pay-drill-body{flex:0 1 auto!important;min-height:0!important;height:auto!important;max-height:calc(100dvh - 150px - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important;overflow-y:auto!important;overscroll-behavior:contain;padding:12px!important;gap:10px!important;}
  .iema-pay-drill-grid{grid-template-columns:1fr 1fr!important;gap:8px!important;}
  .iema-pay-drill-card{padding:12px!important;border-radius:13px!important;}
}

/* v0.14.352 — Faculty My Classes redesign */
body.iema-staff-portal-page .iema-faculty-classes-v2{overflow:hidden!important}
body.iema-staff-portal-page .iema-faculty-classes-v2 .iema-section-head{align-items:flex-end!important;margin-bottom:16px!important}
body.iema-staff-portal-page .iema-faculty-classes-v2 .iema-section-head p{max-width:720px!important;margin-top:5px!important}
body.iema-staff-portal-page .iema-faculty-class-count{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:30px!important;padding:6px 11px!important;border:1px solid #27465d!important;border-radius:999px!important;background:#0b2130!important;color:#9fe3ff!important;font-size:11px!important;font-weight:850!important;white-space:nowrap!important}
body.iema-staff-portal-page .iema-faculty-class-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
body.iema-staff-portal-page .iema-faculty-class-card{display:flex!important;flex-direction:column!important;min-width:0!important;padding:18px!important;border:1px solid #26394c!important;border-radius:18px!important;background:linear-gradient(180deg,#0b1621 0%,#08111a 100%)!important;box-shadow:0 10px 28px rgba(0,0,0,.16)!important}
body.iema-staff-portal-page .iema-faculty-class-card>header{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:14px!important;padding:0 0 14px!important;border-bottom:1px solid rgba(145,180,205,.13)!important}
body.iema-staff-portal-page .iema-faculty-class-card h3{margin:4px 0 2px!important;color:#f6fbff!important;font-size:20px!important;line-height:1.16!important}
body.iema-staff-portal-page .iema-faculty-class-card header small{display:block!important;color:#9fb1c2!important;font-size:11px!important}
body.iema-staff-portal-page .iema-faculty-class-type{display:block!important;color:#58ccff!important;font-size:9px!important;font-weight:900!important;letter-spacing:.13em!important}
body.iema-staff-portal-page .iema-faculty-class-duration{flex:0 0 auto!important;padding:6px 9px!important;border-radius:999px!important;background:#102535!important;color:#c9eefe!important;font-size:10px!important;font-weight:850!important}
body.iema-staff-portal-page .iema-faculty-class-schedule{display:grid!important;gap:9px!important;padding:14px 0!important}
body.iema-staff-portal-page .iema-faculty-meets{display:grid!important;gap:3px!important;padding:12px 13px!important;border:1px solid #213b4f!important;border-radius:13px!important;background:#07121b!important}
body.iema-staff-portal-page .iema-faculty-meets small{color:#57cfff!important;font-size:8px!important;font-weight:900!important;letter-spacing:.13em!important}
body.iema-staff-portal-page .iema-faculty-meets strong{color:#eff9ff!important;font-size:14px!important;line-height:1.3!important}
body.iema-staff-portal-page .iema-faculty-meets span{color:#9eb2c4!important;font-size:11px!important;line-height:1.35!important}
body.iema-staff-portal-page .iema-faculty-schedule-pending{padding:9px 0!important;color:#94a7b8!important;font-size:11px!important}
body.iema-staff-portal-page .iema-faculty-cancelled-list{display:grid!important;gap:7px!important;margin:0 0 14px!important;padding:11px 12px!important;border:1px solid rgba(248,113,113,.36)!important;border-radius:13px!important;background:rgba(127,29,29,.13)!important}
body.iema-staff-portal-page .iema-faculty-cancelled-list>strong{color:#fecaca!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.08em!important}
body.iema-staff-portal-page .iema-faculty-cancelled-list>div{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-cancelled-list b{flex:0 0 auto!important;padding:4px 7px!important;border-radius:999px!important;background:#7f1d1d!important;color:#fee2e2!important;font-size:8px!important;letter-spacing:.08em!important}
body.iema-staff-portal-page .iema-faculty-cancelled-list span{min-width:0!important;color:#ffd7d7!important;font-size:11px!important;overflow-wrap:anywhere!important}
body.iema-staff-portal-page .iema-faculty-class-card>footer{margin-top:auto!important;padding-top:12px!important;border-top:1px solid rgba(145,180,205,.13)!important}
body.iema-staff-portal-page .iema-faculty-class-roster-toggle{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;padding:0!important;border:0!important;background:transparent!important;color:#dcedf8!important;cursor:pointer!important;text-align:left!important}
body.iema-staff-portal-page .iema-faculty-class-roster-toggle span{color:#92a8b9!important;font-size:11px!important}
body.iema-staff-portal-page .iema-faculty-class-roster-toggle b{color:#69d3ff!important;font-size:11px!important}
body.iema-staff-portal-page .iema-faculty-class-roster{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding-top:12px!important}
body.iema-staff-portal-page .iema-faculty-class-roster[hidden]{display:none!important}
body.iema-staff-portal-page .iema-faculty-class-roster>span{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important;padding:7px 8px!important;border-radius:10px!important;background:#0b1b27!important}
body.iema-staff-portal-page .iema-faculty-class-roster img{width:30px!important;height:30px!important;border-radius:50%!important;object-fit:cover!important}
body.iema-staff-portal-page .iema-faculty-class-roster b{min-width:0!important;color:#e8f4fb!important;font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body.iema-staff-portal-page .iema-faculty-class-no-roster{grid-column:1/-1!important;color:#8da0b2!important;font-size:11px!important;background:transparent!important;padding:0!important}
@media(max-width:780px){
 body.iema-staff-portal-page .iema-faculty-classes-v2{padding:15px!important}
 body.iema-staff-portal-page .iema-faculty-classes-v2 .iema-section-head{align-items:flex-start!important;gap:9px!important;margin-bottom:12px!important}
 body.iema-staff-portal-page .iema-faculty-classes-v2 .iema-section-head h2{font-size:22px!important}
 body.iema-staff-portal-page .iema-faculty-classes-v2 .iema-section-head p{font-size:11px!important;line-height:1.45!important}
 body.iema-staff-portal-page .iema-faculty-class-count{min-height:26px!important;padding:5px 9px!important;font-size:10px!important}
 body.iema-staff-portal-page .iema-faculty-class-list{grid-template-columns:1fr!important;gap:10px!important}
 body.iema-staff-portal-page .iema-faculty-class-card{padding:14px!important;border-radius:15px!important}
 body.iema-staff-portal-page .iema-faculty-class-card>header{padding-bottom:11px!important}
 body.iema-staff-portal-page .iema-faculty-class-card h3{font-size:18px!important}
 body.iema-staff-portal-page .iema-faculty-class-schedule{padding:11px 0!important;gap:7px!important}
 body.iema-staff-portal-page .iema-faculty-meets{padding:10px 11px!important}
 body.iema-staff-portal-page .iema-faculty-meets strong{font-size:13px!important}
 body.iema-staff-portal-page .iema-faculty-class-roster{grid-template-columns:1fr!important}
}


/* v0.14.353 — Faculty My Classes schedule hierarchy */
body.iema-staff-portal-page .iema-faculty-next-class,
body.iema-staff-portal-page .iema-faculty-regular-schedule{display:grid!important;gap:4px!important;padding:12px 13px!important;border:1px solid #213b4f!important;border-radius:13px!important;background:#07121b!important}
body.iema-staff-portal-page .iema-faculty-next-class small,
body.iema-staff-portal-page .iema-faculty-regular-schedule small{color:#57cfff!important;font-size:8px!important;font-weight:900!important;letter-spacing:.13em!important}
body.iema-staff-portal-page .iema-faculty-next-class strong{color:#f5fbff!important;font-size:15px!important;line-height:1.28!important}
body.iema-staff-portal-page .iema-faculty-next-class span{color:#9eb2c4!important;font-size:11px!important;line-height:1.35!important}
body.iema-staff-portal-page .iema-faculty-regular-schedule{background:#0a1721!important}
body.iema-staff-portal-page .iema-faculty-regular-schedule strong{display:block!important;color:#dcecf6!important;font-size:13px!important;line-height:1.35!important}
body.iema-staff-portal-page .iema-faculty-regular-schedule strong+strong{margin-top:2px!important}
@media(max-width:780px){
 body.iema-staff-portal-page .iema-faculty-next-class,
 body.iema-staff-portal-page .iema-faculty-regular-schedule{padding:10px 11px!important;border-radius:12px!important}
 body.iema-staff-portal-page .iema-faculty-next-class strong{font-size:14px!important}
 body.iema-staff-portal-page .iema-faculty-regular-schedule strong{font-size:12px!important}
}


/* v0.14.356 — Faculty Availability parity with Parent + mobile calendar repair */
body.iema-staff-portal-page .iema-faculty-view-availability .iema-availability-v3{width:100%!important;max-width:100%!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-view-availability .iema-parent-availability-actions{width:100%!important;max-width:100%!important}
body.iema-staff-portal-page .iema-faculty-view-availability .iema-parent-availability-action{min-width:0!important;width:100%!important;box-sizing:border-box!important}
@media(max-width:760px){
body.iema-staff-portal-page .iema-parent-availability-calendar-dialog{width:100%!important;max-width:100%!important;padding:14px 10px!important}
body.iema-staff-portal-page .iema-parent-availability-calendar-body{width:100%!important;min-width:0!important;overflow:hidden!important;padding:5px!important}
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar,body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-grid{width:100%!important;min-width:0!important;max-width:100%!important}
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:2px!important}
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-head b{min-width:0!important;padding:5px 0!important;font-size:9px!important;letter-spacing:0!important;text-align:center!important;overflow:hidden!important}
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-day{min-width:0!important;min-height:48px!important;padding:5px 3px!important;overflow:hidden!important;border-radius:7px!important}
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-day>strong{display:block!important;margin:0 0 4px!important;font-size:11px!important;line-height:1!important}
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-event{display:inline-block!important;width:6px!important;height:6px!important;min-width:6px!important;min-height:6px!important;margin:1px!important;padding:0!important;border-radius:999px!important;overflow:hidden!important;vertical-align:top!important}
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-event-copy,body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-override-badge,body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-exception-badge,body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-day>small:not(.iema-master-more){display:none!important}
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-toolbar{grid-template-columns:40px minmax(0,1fr) 40px!important;gap:6px!important}
body.iema-staff-portal-page .iema-parent-availability-calendar-body .iema-calendar-title{font-size:17px!important;min-width:0!important}
body.iema-staff-portal-page .iema-parent-availability-modal .iema-exception-type-cards{grid-template-columns:1fr!important}
body.iema-staff-portal-page .iema-parent-availability-modal .iema-availability-exception-v3,body.iema-staff-portal-page .iema-parent-availability-modal .iema-exception-times{min-width:0!important;width:100%!important;max-width:100%!important}
body.iema-staff-portal-page .iema-parent-availability-modal .iema-exception-times{grid-template-columns:1fr!important}
}

/* =========================================================
   v0.14.363 — Studio Settings centered page geometry
   Fix the page at the root instead of patching individual cards.
   ========================================================= */
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings{
  box-sizing:border-box!important;
  width:min(100%,1280px)!important;
  max-width:1280px!important;
  min-width:0!important;
  margin:12px auto!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings>.iema-section-head,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings>form.iema-form{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-studio-settings-grid{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0 auto!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-column,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-card{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-card *,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-card *::before,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-card *::after{
  box-sizing:border-box!important;
  min-width:0;
}

@media(max-width:760px){
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings{
    width:calc(100% - 20px)!important;
    max-width:calc(100% - 20px)!important;
    margin:8px auto 18px!important;
    padding:14px!important;
    overflow:hidden!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings>.iema-section-head,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings>form.iema-form,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-studio-settings-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-column,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-studio-settings-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:18px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-column{
    gap:18px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-card{
    padding:16px!important;
    border-radius:18px!important;
    overflow:hidden!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-form-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-assets-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-app-icon-setting-structured{
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings input:not([type=checkbox]):not([type=radio]),
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings select,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings textarea,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-btn{
    max-width:100%!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-actions{
    width:100%!important;
    max-width:100%!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}

@media(max-width:430px){
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings{
    width:calc(100% - 16px)!important;
    max-width:calc(100% - 16px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:12px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-card{
    padding:14px!important;
  }
}


/* =========================================================
   v0.14.364 — Studio Settings actual inner-column centering
   Center the form/grid that owns the cards, not only the panel.
   ========================================================= */
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings{
  overflow:visible!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings>.iema-section-head,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings>form.iema-form{
  width:min(1120px,calc(100% - 36px))!important;
  max-width:1120px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings>form.iema-form>.iema-studio-settings-grid{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-column,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-card{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}

@media(max-width:760px){
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings{
    width:100%!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    overflow:visible!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings>.iema-section-head,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings>form.iema-form{
    width:calc(100% - 28px)!important;
    max-width:calc(100% - 28px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings>form.iema-form>.iema-studio-settings-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
    gap:18px!important;
    margin:0!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-column,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings .iema-settings-card{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}

@media(max-width:430px){
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings>.iema-section-head,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-settings>form.iema-form{
    width:calc(100% - 24px)!important;
    max-width:calc(100% - 24px)!important;
  }
}


/* v0.14.370 — private schedule containment + removal controls */
.iema-master-calendar-workspace .iema-calendar-day{min-width:0!important;overflow:hidden!important}
.iema-master-calendar-workspace .iema-calendar-event{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.iema-master-calendar-workspace .iema-calendar-event-copy{display:block!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.iema-private-owner-schedule-row{min-width:0!important;overflow:hidden!important}
.iema-private-owner-schedule-row>*{min-width:0!important}
.iema-private-owner-schedule-row strong,.iema-private-owner-schedule-row small,.iema-private-owner-schedule-row span{overflow-wrap:anywhere}
.iema-private-cancel-form{display:flex;align-items:center;justify-content:flex-end;margin:0;min-width:0}
.iema-private-danger-action{color:#ff9b9b!important;font-weight:800!important}
.iema-private-danger-action:hover{color:#ffc1c1!important}
@media(max-width:760px){
 .iema-private-owner-schedule-row{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
 .iema-private-cancel-form{width:100%!important;justify-content:flex-start!important;margin-top:4px!important}
 .iema-private-opening-list article,.iema-private-booking-list article{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:hidden!important}
 .iema-private-opening-list article>*,.iema-private-booking-list article>*{min-width:0!important;max-width:100%!important}
}


/* v0.14.371 — actual Private opening row containment/actions */
.iema-private-opening-list{min-width:0!important;max-width:100%!important;overflow:hidden!important}
.iema-private-opening-row{
 display:grid!important;
 grid-template-columns:minmax(0,1fr) auto!important;
 align-items:center!important;
 gap:16px!important;
 width:100%!important;
 max-width:100%!important;
 min-width:0!important;
 box-sizing:border-box!important;
 overflow:hidden!important;
}
.iema-private-opening-copy{display:grid!important;gap:4px!important;min-width:0!important;max-width:100%!important}
.iema-private-opening-copy strong,.iema-private-opening-copy span{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;word-break:normal!important}
.iema-private-opening-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;min-width:max-content!important;margin:0!important}
.iema-private-remove-opening{display:inline-flex!important;visibility:visible!important;opacity:1!important;white-space:nowrap!important;margin:0!important}
@media(max-width:760px){
 .iema-private-opening-row{grid-template-columns:1fr!important;gap:10px!important;padding:13px 14px!important}
 .iema-private-opening-actions{width:100%!important;min-width:0!important;justify-content:flex-start!important}
 .iema-private-remove-opening{width:auto!important;max-width:100%!important}
}


/* v0.14.372 — private opening actions live inside visible content block */
.iema-private-opening-inline-action{display:block!important;position:static!important;float:none!important;width:auto!important;max-width:100%!important;min-width:0!important;margin:10px 0 0!important;visibility:visible!important;opacity:1!important;overflow:visible!important}
.iema-private-opening-inline-action .iema-private-remove-opening{display:inline-flex!important;position:static!important;visibility:visible!important;opacity:1!important;width:auto!important;max-width:100%!important;margin:0!important}
.iema-private-opening-row{grid-template-columns:minmax(0,1fr)!important}


/* v0.14.373 — Master Calendar high-contrast category system */
.iema-master-calendar-workspace .iema-calendar-event[data-master-type]{
  position:relative!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:6px!important;
  padding:6px 8px 6px 9px!important;
  border:1px solid hsl(var(--iema-category-hue,210) 78% 58% / .62)!important;
  border-left:5px solid hsl(var(--iema-category-hue,210) 88% 62%)!important;
  border-radius:8px!important;
  background:linear-gradient(90deg,hsl(var(--iema-category-hue,210) 70% 25% / .96),hsl(var(--iema-category-hue,210) 44% 18% / .90))!important;
  box-shadow:inset 0 0 0 1px hsl(var(--iema-category-hue,210) 84% 70% / .08),0 2px 7px rgba(0,0,0,.16)!important;
  color:#fff!important;
}
.iema-master-calendar-workspace .iema-calendar-event[data-master-type]:hover{
  background:linear-gradient(90deg,hsl(var(--iema-category-hue,210) 74% 30% / .98),hsl(var(--iema-category-hue,210) 48% 22% / .94))!important;
  border-color:hsl(var(--iema-category-hue,210) 90% 70% / .85)!important;
}
.iema-master-calendar-workspace .iema-master-event-category{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  max-width:92px!important;
  padding:3px 6px!important;
  border-radius:999px!important;
  background:hsl(var(--iema-category-hue,210) 88% 62%)!important;
  color:hsl(var(--iema-category-hue,210) 60% 10%)!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.iema-master-calendar-workspace .iema-calendar-event-copy{
  color:#fff!important;
  font-weight:750!important;
  text-shadow:0 1px 1px rgba(0,0,0,.34)!important;
}
.iema-master-calendar-workspace .iema-master-type-pill:not(.is-all).is-active{
  border-color:hsl(var(--iema-category-hue,210) 82% 64% / .88)!important;
  box-shadow:inset 0 -3px 0 hsl(var(--iema-category-hue,210) 92% 67%)!important;
  background:hsl(var(--iema-category-hue,210) 48% 23% / .96)!important;
}
.iema-master-calendar-workspace .iema-calendar-event.iema-event-canceled,
.iema-master-calendar-workspace .iema-calendar-event.iema-event-cancelled{
  --iema-category-hue:0!important;
  opacity:.86!important;
  text-decoration:line-through!important;
}
@media(max-width:700px){
  .iema-master-calendar-workspace .iema-calendar-event[data-master-type]{grid-template-columns:1fr!important;gap:3px!important;padding:5px 6px!important;border-left-width:4px!important}
  .iema-master-calendar-workspace .iema-master-event-category{justify-self:start!important;max-width:100%!important;font-size:7px!important;padding:2px 5px!important}
  .iema-master-calendar-workspace .iema-calendar-event-copy{font-size:10px!important}
}


/* v0.14.374 — Master Calendar compact category color treatment */
.iema-master-calendar-workspace .iema-calendar-event[data-master-type]{
  display:block!important;
  position:relative!important;
  padding:3px 6px 3px 8px!important;
  border:1px solid hsl(var(--iema-category-hue,210) 64% 52% / .52)!important;
  border-left:7px solid hsl(var(--iema-category-hue,210) 88% 60%)!important;
  border-radius:6px!important;
  background:hsl(var(--iema-category-hue,210) 62% 30% / .34)!important;
  box-shadow:inset 0 0 0 1px hsl(var(--iema-category-hue,210) 82% 72% / .05)!important;
  color:#fff!important;
  min-height:0!important;
}
.iema-master-calendar-workspace .iema-calendar-event[data-master-type]:hover{
  background:hsl(var(--iema-category-hue,210) 68% 34% / .46)!important;
  border-color:hsl(var(--iema-category-hue,210) 82% 64% / .72)!important;
  border-left-color:hsl(var(--iema-category-hue,210) 92% 64%)!important;
}
.iema-master-calendar-workspace .iema-master-event-category{display:none!important}
.iema-master-calendar-workspace .iema-calendar-event-copy{
  display:block!important;
  color:#fff!important;
  font-weight:750!important;
  line-height:1.2!important;
  text-shadow:0 1px 1px rgba(0,0,0,.26)!important;
}
.iema-master-calendar-workspace .iema-calendar-event.iema-event-canceled,
.iema-master-calendar-workspace .iema-calendar-event.iema-event-cancelled{
  --iema-category-hue:0!important;
  opacity:.88!important;
  text-decoration:line-through!important;
}
@media(max-width:700px){
  .iema-master-calendar-workspace .iema-calendar-event[data-master-type]{
    padding:3px 5px 3px 6px!important;
    border-left-width:6px!important;
  }
  .iema-master-calendar-workspace .iema-calendar-event-copy{font-size:10px!important;line-height:1.15!important}
}


/* v0.14.375 — Master Calendar events match the active category filter pill */
.iema-master-calendar-workspace .iema-calendar-event[data-master-type]{
  background:hsl(var(--iema-category-hue,210) 48% 23% / .96)!important;
  border:1px solid hsl(var(--iema-category-hue,210) 82% 64% / .88)!important;
  border-left:7px solid hsl(var(--iema-category-hue,210) 92% 67%)!important;
  color:#fff!important;
  box-shadow:inset 0 -2px 0 hsl(var(--iema-category-hue,210) 92% 67% / .28)!important;
  padding:3px 6px 3px 7px!important;
  border-radius:6px!important;
}
.iema-master-calendar-workspace .iema-calendar-event[data-master-type]:hover,
.iema-master-calendar-workspace .iema-calendar-event[data-master-type]:focus{
  background:hsl(var(--iema-category-hue,210) 52% 27% / .98)!important;
  border-color:hsl(var(--iema-category-hue,210) 90% 70% / .96)!important;
  border-left-color:hsl(var(--iema-category-hue,210) 96% 72%)!important;
}
.iema-master-calendar-workspace .iema-calendar-event-copy{
  color:#fff!important;
  text-shadow:none!important;
  font-weight:800!important;
}
@media(max-width:700px){
  .iema-master-calendar-workspace .iema-calendar-event[data-master-type]{
    border-left-width:6px!important;
    padding:3px 5px 3px 6px!important;
  }
}
/* v0.14.380 — multi-recipient Messages composer */
.iema-message-recipient-field{display:grid;gap:10px;min-width:0}.iema-message-recipient-title{display:grid;gap:2px}.iema-message-recipient-title strong{font-size:14px}.iema-message-recipient-title small,.iema-message-recipient-help{font-size:12px;line-height:1.4;opacity:.76}.iema-message-recipient-picker{display:grid;gap:12px;max-height:min(46vh,430px);overflow:auto;padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:14px;min-width:0}.iema-message-recipient-group{display:grid;gap:6px;min-width:0}.iema-message-recipient-group>span{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.68;padding:2px 2px}.iema-message-recipient-choice{display:grid!important;grid-template-columns:22px minmax(0,1fr);grid-template-areas:"check name" "check meta";column-gap:9px;row-gap:1px;align-items:center;padding:9px 10px!important;margin:0!important;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:rgba(255,255,255,.035);min-width:0;cursor:pointer}.iema-message-recipient-choice:hover{background:rgba(255,255,255,.07)}.iema-message-recipient-choice input{grid-area:check;width:18px!important;height:18px!important;min-width:18px!important;margin:0!important}.iema-message-recipient-choice b{grid-area:name;min-width:0;overflow-wrap:anywhere;font-size:13px}.iema-message-recipient-choice small{grid-area:meta;font-size:11px;opacity:.66;min-width:0;overflow-wrap:anywhere}.iema-message-recipient-choice:has(input:checked){border-color:rgba(32,183,255,.62);background:rgba(32,183,255,.12)}
@media(max-width:700px){.iema-create-modal[data-iema-create-modal="message-new"] .iema-create-modal-dialog{width:min(calc(100vw - 24px),560px)!important;max-width:calc(100vw - 24px)!important;padding-left:14px!important;padding-right:14px!important}.iema-message-recipient-picker{max-height:42vh;padding:8px}.iema-message-recipient-choice{padding:9px!important}.iema-message-recipient-help{display:block}}

/* v0.14.381 — elite collapsed messaging audience picker */
.iema-message-new-dialog{width:min(720px,calc(100vw - 28px));max-width:720px}
.iema-message-recipient-accordion{gap:8px;max-height:min(52vh,520px);padding:8px;background:rgba(4,11,24,.34)}
.iema-message-audience{border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.035);overflow:hidden;min-width:0}
.iema-message-audience>summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto 18px;gap:10px;align-items:center;padding:13px 14px;cursor:pointer;min-width:0;user-select:none}
.iema-message-audience>summary::-webkit-details-marker{display:none}.iema-message-audience>summary>span{display:grid;gap:2px;min-width:0}.iema-message-audience>summary>span>b{font-size:14px;line-height:1.2}.iema-message-audience>summary>span>small{font-size:11px;opacity:.65;line-height:1.25}.iema-message-audience>summary>i{font-style:normal;font-size:17px;opacity:.6;transition:transform .18s ease}.iema-message-audience[open]>summary>i{transform:rotate(180deg)}
.iema-message-select-all{display:inline-flex!important;align-items:center!important;gap:6px!important;margin:0!important;padding:7px 9px!important;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.05);font-size:11px!important;font-weight:800!important;white-space:nowrap;cursor:pointer}.iema-message-select-all input{width:15px!important;height:15px!important;min-width:15px!important;margin:0!important}.iema-message-select-all:has(input:checked){border-color:rgba(32,183,255,.65);background:rgba(32,183,255,.14)}
.iema-message-audience-items{display:grid;gap:6px;padding:0 10px 10px;border-top:1px solid rgba(255,255,255,.08);padding-top:10px}.iema-message-audience:not([open]) .iema-message-audience-items{display:none}
@media(max-width:640px){.iema-message-new-dialog{width:calc(100vw - 18px);max-width:none}.iema-message-recipient-accordion{max-height:48vh;padding:6px}.iema-message-audience>summary{grid-template-columns:minmax(0,1fr) auto 15px;padding:11px 10px;gap:7px}.iema-message-select-all{padding:6px 7px!important;font-size:10px!important}.iema-message-audience-items{padding:8px}.iema-message-recipient-choice{padding:8px!important}}


/* v0.14.385 — shared calendar event detail modal */
.iema-shared-event-modal{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));box-sizing:border-box}.iema-shared-event-backdrop{position:absolute;inset:0;background:rgba(4,7,12,.76);backdrop-filter:blur(8px)}.iema-shared-event-dialog{position:relative;z-index:1;width:min(560px,100%);max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:#181a1d;color:#f8fafc;box-shadow:0 28px 90px rgba(0,0,0,.55);padding:26px}.iema-shared-event-dialog header{padding-right:42px;margin-bottom:18px}.iema-shared-event-dialog header>span,.iema-shared-event-notes>span{display:block;color:var(--studio-accent,var(--iema-accent,#8b5cf6));font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.iema-shared-event-dialog h2{margin:5px 0 0;color:#fff;font-size:25px;line-height:1.15}.iema-shared-event-x{position:absolute;top:14px;right:14px;width:44px;height:44px;border:0;border-radius:999px;background:#272b31;color:#fff;font-size:26px;line-height:1;cursor:pointer}.iema-shared-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.iema-shared-event-grid>div,.iema-shared-event-notes{min-width:0;padding:13px 14px;border:1px solid #2c3139;border-radius:13px;background:#101216}.iema-shared-event-grid span{display:block;margin-bottom:5px;color:#8f9bad;font-size:10px;font-weight:800;letter-spacing:.08em}.iema-shared-event-grid strong{display:block;color:#fff;font-size:14px;line-height:1.4;overflow-wrap:anywhere}.iema-shared-event-notes{margin-top:10px}.iema-shared-event-notes p{margin:6px 0 0;color:#dbe2ec;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.iema-shared-event-dialog footer{display:flex;justify-content:flex-end;margin-top:18px}.iema-shared-event-open{overflow:hidden!important}@media(max-width:640px){.iema-shared-event-modal{padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.iema-shared-event-dialog{padding:20px 16px 16px;border-radius:16px;max-height:calc(100dvh - 20px)}.iema-shared-event-grid{grid-template-columns:1fr}.iema-shared-event-dialog h2{font-size:21px}.iema-shared-event-dialog footer .iema-btn{width:100%;justify-content:center}}


/* v0.14.430 — Owner scheduled-private containment + real action column */
body.iema-owner-portal-page .iema-private-owner-schedule{
  width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-private-owner-schedule-row{
  width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:hidden!important;
  grid-template-columns:minmax(130px,1.05fr) repeat(4,minmax(95px,.9fr)) minmax(90px,auto)!important;
}
body.iema-owner-portal-page .iema-private-owner-schedule-row>.iema-private-cancel-form{
  min-width:0!important;max-width:100%!important;justify-self:end!important;align-self:center!important;
}
body.iema-owner-portal-page .iema-private-owner-schedule-row .iema-private-danger-action{
  white-space:nowrap!important;max-width:100%!important;
}
@media(max-width:1100px){
 body.iema-owner-portal-page .iema-private-owner-schedule-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.iema-owner-portal-page .iema-private-owner-schedule-row>.iema-private-cancel-form{justify-self:start!important}
}
@media(max-width:620px){
 body.iema-owner-portal-page .iema-private-owner-schedule-row{grid-template-columns:1fr!important}
}
.iema-private-booked-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;margin-left:8px;border-radius:999px;background:rgba(178,48,255,.18);border:1px solid rgba(178,48,255,.45);font-size:12px;font-weight:800;vertical-align:middle}


/* v0.14.430 — Owner Privates hard containment */
.iema-private-owner-schedule,
.iema-private-owner-schedule-row,
.iema-private-owner-schedule-row > *,
.iema-private-owner-schedule-row form,
.iema-private-owner-schedule-row button,
.iema-private-owner-schedule-row a{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.iema-private-owner-schedule{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
}
.iema-private-owner-schedule-row{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  grid-template-columns:
    minmax(120px,.9fr)
    minmax(120px,1fr)
    minmax(120px,1fr)
    minmax(120px,1fr)
    minmax(120px,1fr)
    minmax(110px,auto)!important;
}
.iema-private-owner-schedule-row > div{
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
.iema-private-owner-schedule-row .iema-private-cancel-form{
  justify-self:end!important;
  width:auto!important;
  max-width:100%!important;
}
@media(max-width:900px){
  .iema-private-owner-schedule-row{
    grid-template-columns:1fr 1fr!important;
    align-items:start!important;
  }
  .iema-private-owner-schedule-row .iema-private-cancel-form{
    grid-column:1/-1!important;
    justify-self:start!important;
    width:100%!important;
  }
}
@media(max-width:600px){
  .iema-private-owner-schedule-row{
    grid-template-columns:1fr!important;
  }
}


/* v0.14.430 — Owner Privates faculty accordion */
.iema-owner-private-overview{overflow:hidden}
.iema-owner-private-overview-head{align-items:flex-start}
.iema-owner-private-faculty-list{display:grid;gap:10px;min-width:0}
.iema-owner-private-faculty{border:1px solid rgba(125,211,252,.18);border-radius:18px;background:linear-gradient(180deg,rgba(22,39,54,.72),rgba(12,24,35,.72));overflow:hidden;min-width:0}
.iema-owner-private-faculty-summary{list-style:none;display:grid;grid-template-columns:minmax(220px,1fr) auto 44px;align-items:center;gap:18px;padding:16px 18px;cursor:pointer;min-width:0}
.iema-owner-private-faculty-summary::-webkit-details-marker{display:none}
.iema-owner-private-faculty-person{display:flex;align-items:center;gap:12px;min-width:0}
.iema-owner-private-faculty-person img,.iema-owner-private-avatar-fallback{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:0 0 auto;border:1px solid rgba(255,255,255,.16)}
.iema-owner-private-avatar-fallback{display:grid;place-items:center;background:#172334;color:#fff;font-weight:900}
.iema-owner-private-faculty-person>span:last-child{display:grid;gap:2px;min-width:0}
.iema-owner-private-faculty-person strong{font-size:17px;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.iema-owner-private-faculty-person small{color:#94a3b8}
.iema-owner-private-faculty-counts{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.iema-owner-private-count{display:inline-flex;align-items:center;min-height:32px;padding:6px 11px;border-radius:999px;font-size:12px;font-weight:850;white-space:nowrap;border:1px solid rgba(168,85,247,.18);background:rgba(126,34,206,.18);color:#d8b4fe}
.iema-owner-private-count.is-open{border-color:rgba(96,165,250,.18);background:rgba(30,64,175,.16);color:#93c5fd}
.iema-owner-private-chevron{width:36px;height:36px;border-radius:12px;border:1px solid rgba(168,85,247,.62);display:grid;place-items:center;color:#d8b4fe;font-size:22px;line-height:1;transition:transform .18s ease}
.iema-owner-private-faculty[open] .iema-owner-private-chevron{transform:rotate(180deg)}
.iema-owner-private-faculty-body{border-top:1px solid rgba(168,85,247,.18);padding:16px;display:grid;gap:18px;min-width:0}
.iema-owner-private-subsection{display:grid;gap:10px;min-width:0}
.iema-owner-private-subsection h3{margin:0;display:flex;align-items:center;gap:8px;font-size:14px;color:#d8b4fe}
.iema-owner-private-subsection.is-openings h3{color:#93c5fd}
.iema-owner-private-subsection h3 span{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:rgba(255,255,255,.06);font-size:11px}
.iema-owner-private-lessons,.iema-owner-private-openings{display:grid;gap:8px;min-width:0}
.iema-owner-private-lesson{display:grid;grid-template-columns:70px minmax(120px,.85fr) minmax(150px,1.1fr) minmax(150px,1fr) auto auto;align-items:center;gap:16px;padding:10px 12px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(255,255,255,.018);min-width:0;box-sizing:border-box}
.iema-owner-private-date{height:62px;border:1px solid rgba(168,85,247,.28);border-radius:10px;display:grid;place-items:center;align-content:center;line-height:1.05}
.iema-owner-private-date span,.iema-owner-private-date small{font-size:9px;font-weight:850;color:#c4b5fd;text-transform:uppercase}
.iema-owner-private-date strong{font-size:20px;color:#f8fafc}
.iema-owner-private-time,.iema-owner-private-detail{display:grid;gap:3px;min-width:0}
.iema-owner-private-time strong{color:#c084fc}
.iema-owner-private-time small,.iema-owner-private-detail small{color:#94a3b8;font-size:11px}
.iema-owner-private-detail span{font-size:9px;font-weight:900;letter-spacing:.08em;color:#7f8da1}
.iema-owner-private-detail strong{color:#f8fafc;overflow-wrap:anywhere}
.iema-owner-private-status span{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(22,163,74,.16);border:1px solid rgba(34,197,94,.22);color:#86efac;font-size:10px;font-weight:900;text-transform:uppercase}
.iema-owner-private-cancel,.iema-owner-private-remove{min-height:38px;padding:0 13px;border-radius:10px;background:transparent;font:inherit;font-size:12px;font-weight:850;cursor:pointer;white-space:nowrap}
.iema-owner-private-cancel{border:1px solid rgba(248,113,113,.52);color:#f87171}
.iema-owner-private-remove{border:1px solid rgba(96,165,250,.48);color:#93c5fd}
.iema-owner-private-opening{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid rgba(96,165,250,.16);border-radius:12px;background:rgba(30,64,175,.06);min-width:0}
.iema-owner-private-opening>div{display:grid;gap:3px;min-width:0}
.iema-owner-private-opening strong{color:#f8fafc;overflow-wrap:anywhere}
.iema-owner-private-opening small{color:#94a3b8}
.iema-owner-private-opening form{margin:0;flex:0 0 auto}
.iema-owner-private-empty{padding:12px 14px;border:1px dashed rgba(148,163,184,.18);border-radius:12px;color:#94a3b8;font-size:12px}
@media(max-width:1050px){
 .iema-owner-private-lesson{grid-template-columns:64px 1fr 1fr;gap:12px}
 .iema-owner-private-status,.iema-owner-private-lesson .iema-private-cancel-form{justify-self:start}
}
@media(max-width:700px){
 .iema-owner-private-overview-head{display:grid;gap:12px}
 .iema-owner-private-overview-head .iema-btn{width:100%;justify-content:center}
 .iema-owner-private-faculty-summary{grid-template-columns:minmax(0,1fr) 38px;padding:14px}
 .iema-owner-private-faculty-counts{grid-column:1/-1;grid-row:2;justify-content:flex-start}
 .iema-owner-private-chevron{grid-column:2;grid-row:1}
 .iema-owner-private-faculty-body{padding:12px}
 .iema-owner-private-lesson{grid-template-columns:58px minmax(0,1fr);align-items:start}
 .iema-owner-private-time{align-self:center}
 .iema-owner-private-detail,.iema-owner-private-status,.iema-owner-private-lesson .iema-private-cancel-form{grid-column:1/-1}
 .iema-owner-private-lesson .iema-private-cancel-form{width:100%}
 .iema-owner-private-cancel{width:100%}
 .iema-owner-private-opening{align-items:flex-start;flex-direction:column}
 .iema-owner-private-opening form,.iema-owner-private-remove{width:100%}
}


/* v0.14.430 — Faculty Privates separate cards */
.iema-faculty-private-dashboard{display:grid;gap:18px;margin-top:16px}
.iema-faculty-private-card{margin:0!important;min-width:0}
.iema-faculty-private-card .iema-section-head{margin-bottom:12px}
.iema-faculty-private-card .iema-section-head h3{margin:2px 0 0;font-size:20px}
.iema-faculty-private-card .iema-section-head p{margin-top:5px;max-width:760px}
.iema-faculty-private-open-card{border-color:rgba(96,165,250,.18)}
.iema-faculty-private-requests-card{border-color:rgba(250,204,21,.16)}
.iema-faculty-private-booked-card{border-color:rgba(168,85,247,.2)}
.iema-faculty-private-card .iema-private-opening-list,
.iema-faculty-private-card .iema-private-request-list,
.iema-faculty-private-card .iema-private-booking-list{margin-top:8px}
.iema-faculty-private-card .iema-private-booking-payment-card{overflow:hidden!important}
@media(max-width:700px){
 .iema-faculty-private-dashboard{gap:14px}
 .iema-faculty-private-card{padding:14px!important}
 .iema-faculty-private-card .iema-section-head h3{font-size:18px}
}


/* v0.14.430 — Faculty Privates: fully separated workspace cards */
.iema-faculty-privates{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.iema-faculty-privates > .iema-section-head{
  margin:0 0 18px!important;
  padding:18px 20px!important;
  border:1px solid rgba(148,163,184,.16)!important;
  border-radius:18px!important;
  background:rgba(8,15,24,.84)!important;
}
.iema-faculty-private-dashboard{
  display:grid!important;
  gap:22px!important;
  margin:0!important;
}
.iema-faculty-private-card{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:20px!important;
  border-radius:20px!important;
  background:rgba(8,15,24,.9)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.16)!important;
}
.iema-faculty-private-open-card{
  border:1px solid rgba(96,165,250,.2)!important;
}
.iema-faculty-private-requests-card{
  border:1px solid rgba(250,204,21,.18)!important;
}
.iema-faculty-private-booked-card{
  border:1px solid rgba(168,85,247,.22)!important;
}
.iema-faculty-private-card + .iema-faculty-private-card{
  margin-top:0!important;
}
.iema-faculty-private-card .iema-section-head{
  padding:0!important;
  margin:0 0 16px!important;
  border:0!important;
  background:transparent!important;
}
.iema-faculty-private-card .iema-section-head h3{
  margin:3px 0 0!important;
}
.iema-faculty-private-card .iema-section-head p{
  margin:6px 0 0!important;
}
.iema-faculty-privates + .iema-panel,
.iema-faculty-privates ~ .iema-panel{
  margin-top:22px!important;
}
@media(max-width:700px){
  .iema-faculty-privates > .iema-section-head{
    padding:16px!important;
    margin-bottom:14px!important;
  }
  .iema-faculty-private-dashboard{
    gap:14px!important;
  }
  .iema-faculty-private-card{
    padding:16px!important;
    border-radius:17px!important;
  }
  .iema-faculty-privates + .iema-panel,
  .iema-faculty-privates ~ .iema-panel{
    margin-top:14px!important;
  }
}

/* v0.14.430 — Faculty Calendar workspace */
.iema-faculty-calendar-workspace{min-width:0;overflow:hidden}
.iema-faculty-calendar-body{min-width:0;max-width:100%}
.iema-faculty-calendar-body .iema-calendar{max-width:100%}
@media(max-width:700px){
 .iema-faculty-calendar-workspace{padding:14px!important}
}

/* v0.14.430 — Master Calendar audience event creator */
.iema-master-audience-dialog{width:min(900px,calc(100vw - 32px))!important;max-width:900px!important;max-height:min(90vh,900px)!important;overflow:auto!important}
.iema-master-audience-form{display:grid;gap:18px}
.iema-master-event-core-grid{display:grid;grid-template-columns:1fr 1.4fr 1fr auto 1fr 1fr;gap:12px;align-items:end}
.iema-master-all-day{display:flex!important;align-items:center!important;gap:9px!important;min-height:44px}
.iema-master-all-day input,.iema-master-audience-quick input,.iema-master-audience-specific input,.iema-master-notify-toggle input,.iema-master-room-impact input{width:20px!important;height:20px!important;min-width:20px!important}
.iema-master-room-impact{display:grid;grid-template-columns:auto auto auto minmax(180px,1fr);gap:12px;align-items:center;border:1px solid rgba(148,163,184,.16);border-radius:14px;padding:14px}
.iema-master-room-impact legend{padding:0 8px;font-weight:850}
.iema-master-room-impact label{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important}
.iema-master-audience-heading h3{margin:3px 0 2px}
.iema-master-audience-heading p{margin:0;color:#94a3b8}
.iema-master-audience-quick{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.iema-master-audience-quick label{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important;padding:12px!important;border:1px solid rgba(148,163,184,.16);border-radius:13px;background:rgba(255,255,255,.025);cursor:pointer;min-width:0}
.iema-master-audience-quick label>span{display:grid;gap:2px;min-width:0}
.iema-master-audience-quick strong{font-size:12px}.iema-master-audience-quick small{font-size:10px;color:#94a3b8}
.iema-master-audience-specific{display:grid;gap:8px}
.iema-master-audience-specific details{border:1px solid rgba(148,163,184,.14);border-radius:13px;overflow:hidden}
.iema-master-audience-specific summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:12px 14px;cursor:pointer;font-weight:800}
.iema-master-audience-specific summary::-webkit-details-marker{display:none}
.iema-master-audience-specific summary b{display:grid;place-items:center;min-width:28px;height:25px;border-radius:999px;background:rgba(168,85,247,.14);color:#d8b4fe;font-size:11px}
.iema-master-audience-specific details>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:0 12px 12px}
.iema-master-audience-specific details label{display:flex!important;flex-direction:row!important;align-items:center!important;gap:9px!important;padding:9px 10px!important;border-radius:9px;background:rgba(255,255,255,.025)}
.iema-master-notify-toggle{display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px!important;padding:14px!important;border:1px solid rgba(56,189,248,.2);border-radius:14px;background:rgba(14,165,233,.06)}
.iema-master-notify-toggle>span{display:grid;gap:2px}.iema-master-notify-toggle small{color:#94a3b8}
.iema-master-audience-actions{display:flex;justify-content:flex-end;gap:10px}
@media(max-width:850px){
 .iema-master-event-core-grid{grid-template-columns:1fr 1fr}
 .iema-master-audience-quick{grid-template-columns:1fr 1fr}
 .iema-master-room-impact{grid-template-columns:1fr 1fr}
 .iema-master-room-impact select{grid-column:1/-1}
}
@media(max-width:600px){
 .iema-master-audience-dialog{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}
 .iema-master-event-core-grid,.iema-master-audience-quick,.iema-master-audience-specific details>div,.iema-master-room-impact{grid-template-columns:1fr}
 .iema-master-audience-actions{display:grid;grid-template-columns:1fr 1fr}
 .iema-master-audience-actions .iema-btn{width:100%;justify-content:center}
}

/* v0.14.430 — Other Events are unmistakably red */
.iema-master-type-pill[data-master-type="other-events"]{
  --iema-category-hue:0!important;
  border-color:hsla(0,82%,62%,.62)!important;
  background:linear-gradient(180deg,hsla(0,82%,52%,.18),hsla(0,82%,46%,.10))!important;
  color:hsl(0,90%,82%)!important;
  box-shadow:inset 0 -3px 0 hsla(0,86%,58%,.82)!important;
}
.iema-master-type-pill[data-master-type="other-events"] b{
  background:hsla(0,82%,60%,.16)!important;
  color:hsl(0,92%,88%)!important;
}
.iema-calendar-event[data-master-type="other-events"]{
  --iema-category-hue:0!important;
  border-color:hsla(0,82%,62%,.58)!important;
  border-left-color:hsl(0,86%,58%)!important;
  background:linear-gradient(90deg,hsla(0,82%,52%,.22),hsla(0,82%,52%,.10))!important;
  color:hsl(0,92%,90%)!important;
  box-shadow:inset 4px 0 0 hsl(0,86%,58%)!important;
}
.iema-calendar-event[data-master-type="other-events"] .iema-calendar-event-copy{
  color:hsl(0,92%,90%)!important;
}
.iema-calendar-event[data-master-type="other-events"]:hover{
  background:linear-gradient(90deg,hsla(0,82%,52%,.30),hsla(0,82%,52%,.15))!important;
  border-color:hsla(0,86%,64%,.78)!important;
}

/* v0.14.430 — one calendar color language across every MyDancer portal */
.iema-calendar-event[data-master-type]{
  background:hsl(var(--iema-category-hue,210) 48% 23% / .96)!important;
  border:1px solid hsl(var(--iema-category-hue,210) 82% 64% / .88)!important;
  border-left:7px solid hsl(var(--iema-category-hue,210) 92% 67%)!important;
  color:#fff!important;
  box-shadow:inset 0 -2px 0 hsl(var(--iema-category-hue,210) 92% 67% / .28)!important;
  padding:3px 6px 3px 7px!important;
  border-radius:6px!important;
}
.iema-calendar-event[data-master-type] .iema-calendar-event-copy{
  color:#fff!important;
  text-shadow:none!important;
  font-weight:800!important;
}
.iema-calendar-event[data-master-type]:hover,
.iema-calendar-event[data-master-type]:focus{
  background:hsl(var(--iema-category-hue,210) 52% 27% / .98)!important;
  border-color:hsl(var(--iema-category-hue,210) 90% 70% / .96)!important;
  border-left-color:hsl(var(--iema-category-hue,210) 96% 72%)!important;
}
/* Other Events and unavailable remain translucent red everywhere. */
.iema-calendar-event[data-master-type="other-events"],
.iema-calendar-event[data-master-type="availability-unavailable"]{
  --iema-category-hue:0!important;
  border-color:hsla(0,82%,62%,.58)!important;
  border-left-color:hsl(0,86%,58%)!important;
  background:linear-gradient(90deg,hsla(0,82%,52%,.22),hsla(0,82%,52%,.10))!important;
  color:hsl(0,92%,90%)!important;
  box-shadow:inset 4px 0 0 hsl(0,86%,58%)!important;
}
.iema-calendar-event[data-master-type="other-events"] .iema-calendar-event-copy,
.iema-calendar-event[data-master-type="availability-unavailable"] .iema-calendar-event-copy{
  color:hsl(0,92%,90%)!important;
}
.iema-calendar-event[data-master-type="availability-available"]{
  --iema-category-hue:146!important;
}
@media(max-width:700px){
 .iema-calendar-event[data-master-type]{
   border-left-width:6px!important;
   padding:3px 5px 3px 6px!important;
 }
}

/* v0.14.430 — Master Calendar category pills on every portal calendar */
.iema-shared-calendar-type-toolbar{
  margin:0 0 12px!important;
  padding:0 0 10px!important;
  border-bottom:1px solid rgba(148,163,184,.10);
}
.iema-shared-calendar-status{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-height:22px;
  margin:-5px 0 8px;
  color:#94a3b8;
  font-size:11px;
}
.iema-shared-calendar-status strong{font-weight:750}
.iema-calendar .iema-master-type-pills{
  min-width:0;
}
@media(max-width:700px){
 .iema-shared-calendar-type-toolbar{
   display:grid!important;
   gap:8px!important;
 }
 .iema-calendar .iema-master-type-pills{
   display:flex!important;
   flex-wrap:nowrap!important;
   overflow-x:auto!important;
   overscroll-behavior-x:contain;
   scrollbar-width:none;
   padding-bottom:2px;
 }
 .iema-calendar .iema-master-type-pills::-webkit-scrollbar{display:none}
 .iema-calendar .iema-master-type-pill{flex:0 0 auto}
 .iema-shared-calendar-type-toolbar .iema-master-type-actions{justify-content:flex-start!important}
 .iema-shared-calendar-status{justify-content:flex-start}
}

/* v0.14.430 — shared calendar pills use the exact Master Calendar color treatment */
.iema-shared-calendar-type-toolbar .iema-master-type-pill:not(.is-all).is-active{
  border-color:hsl(var(--iema-category-hue,210) 82% 64% / .88)!important;
  box-shadow:inset 0 -3px 0 hsl(var(--iema-category-hue,210) 92% 67%)!important;
  background:hsl(var(--iema-category-hue,210) 48% 23% / .96)!important;
  color:#fff!important;
}
.iema-shared-calendar-type-toolbar .iema-master-type-pill:not(.is-all).is-active b{
  background:hsl(var(--iema-category-hue,210) 72% 62% / .18)!important;
  color:hsl(var(--iema-category-hue,210) 92% 82%)!important;
}
.iema-shared-calendar-type-toolbar .iema-master-type-pill:not(.is-all):not(.is-active){
  border-color:rgba(148,163,184,.18)!important;
  background:rgba(148,163,184,.06)!important;
  color:#7f8b98!important;
  box-shadow:none!important;
}
.iema-shared-calendar-type-toolbar .iema-master-type-pill[data-master-type="other-events"].is-active,
.iema-shared-calendar-type-toolbar .iema-master-type-pill[data-master-type="availability-unavailable"].is-active{
  --iema-category-hue:0!important;
  border-color:hsla(0,82%,62%,.62)!important;
  background:linear-gradient(180deg,hsla(0,82%,52%,.20),hsla(0,82%,46%,.11))!important;
  color:hsl(0,92%,88%)!important;
  box-shadow:inset 0 -3px 0 hsla(0,86%,58%,.82)!important;
}

/* v0.14.430 — Training is cyan/blue; Available keeps green */
.iema-master-type-pill[data-master-type="class-training"].is-active,
.iema-calendar-event[data-master-type="class-training"]{
  --iema-category-hue:198!important;
}

/* v0.14.430 — category colors/pills belong only to Owner Master Calendar */
.iema-calendar:not(.iema-master-calendar-workspace .iema-calendar) .iema-calendar-event[data-master-type]{
  background:rgba(255,255,255,.035)!important;
  border:1px solid rgba(148,163,184,.18)!important;
  border-left:3px solid rgba(148,163,184,.34)!important;
  color:#f8fafc!important;
  box-shadow:none!important;
}
.iema-calendar:not(.iema-master-calendar-workspace .iema-calendar) .iema-calendar-event[data-master-type] .iema-calendar-event-copy{
  color:#f8fafc!important;
  text-shadow:none!important;
}
.iema-calendar:not(.iema-master-calendar-workspace .iema-calendar) .iema-calendar-event[data-master-type]:hover,
.iema-calendar:not(.iema-master-calendar-workspace .iema-calendar) .iema-calendar-event[data-master-type]:focus{
  background:rgba(255,255,255,.065)!important;
  border-color:rgba(148,163,184,.3)!important;
  border-left-color:rgba(148,163,184,.48)!important;
}
/* Parent with multiple dancers: the dancer—not the event category—owns the color. */
.iema-parent-calendar-multi-dancer .iema-calendar-event[style*="--iema-parent-dancer-hue"]{
  background:hsl(var(--iema-parent-dancer-hue,198) 44% 22% / .52)!important;
  border-color:hsl(var(--iema-parent-dancer-hue,198) 58% 48% / .42)!important;
  border-left:5px solid hsl(var(--iema-parent-dancer-hue,198) 72% 62%)!important;
  color:#fff!important;
}
.iema-parent-calendar-multi-dancer .iema-calendar-event[style*="--iema-parent-dancer-hue"] .iema-calendar-event-copy{color:#fff!important}
/* No full-screen entry points on mobile. */
@media(max-width:700px){
 .iema-desktop-fullscreen-only,
 [data-iema-master-fullscreen],
 [data-parent-browser-fullscreen]{
   display:none!important;
 }
}

/* v0.14.430 — Parent Calendar All / dancer selector */
.iema-parent-calendar-dancer-strip a:not([style]){padding-left:14px!important}
.iema-parent-calendar-dancer-strip a:not([style])::before{display:none!important}

/* v0.14.430 — failed sign-in must be impossible to miss */
.iema-login-status-warning{
  border:2px solid #ff4d5e!important;
  background:linear-gradient(180deg,#5a1018 0%,#3a0a10 100%)!important;
  color:#fff!important;
  font-size:16px!important;
  line-height:1.45!important;
  font-weight:900!important;
  padding:15px 16px!important;
  box-shadow:0 0 0 3px rgba(255,77,94,.12),0 10px 26px rgba(0,0,0,.26)!important;
}
.iema-login-status-warning::before{
  content:"⚠ ";
  color:#ffb6bd;
  font-weight:950;
}
.iema-parent-today-event-button{
  width:100%!important;
  appearance:none;
  text-align:left;
  cursor:pointer;
  font:inherit;
}
.iema-parent-today-event-button:hover,
.iema-parent-today-event-button:focus-visible{
  border-color:rgba(148,163,184,.36)!important;
  background:rgba(255,255,255,.055)!important;
  outline:none;
}
.iema-parent-today-event-arrow{
  align-self:center;
  justify-self:end;
  font-size:22px;
  line-height:1;
  opacity:.62;
}

/* v0.14.430 — restore Parent Home Daily Schedule GUI color treatment.
   Calendar category colors remain disabled; these colors identify the dancer card. */
body.iema-parent-portal-page .iema-parent-today-dancer{
  border-color:hsl(var(--iema-today-dancer-hue,198) 44% 42% / .42)!important;
  box-shadow:inset 4px 0 0 hsl(var(--iema-today-dancer-hue,198) 72% 61% / .86)!important;
}
body.iema-parent-portal-page .iema-parent-today-dancer>header{
  background:linear-gradient(90deg,
    hsl(var(--iema-today-dancer-hue,198) 42% 22% / .42),
    #0c121c 58%)!important;
  border-bottom-color:hsl(var(--iema-today-dancer-hue,198) 44% 40% / .30)!important;
}
body.iema-parent-portal-page .iema-parent-today-dancer>header strong{
  color:#fff!important;
}
body.iema-parent-portal-page .iema-parent-today-avatar img{
  border-color:hsl(var(--iema-today-dancer-hue,198) 70% 62% / .72)!important;
}
body.iema-parent-portal-page .iema-parent-today-event-button{
  grid-template-columns:78px minmax(0,1fr) auto!important;
  border:0!important;
  border-bottom:1px solid hsl(var(--iema-today-dancer-hue,198) 36% 32% / .28)!important;
  border-radius:0!important;
  background:linear-gradient(90deg,
    hsl(var(--iema-today-dancer-hue,198) 36% 20% / .22),
    rgba(255,255,255,.012) 48%)!important;
  color:inherit!important;
  box-shadow:none!important;
}
body.iema-parent-portal-page .iema-parent-today-event-button:last-child{
  border-bottom:0!important;
}
body.iema-parent-portal-page .iema-parent-today-event-button:hover,
body.iema-parent-portal-page .iema-parent-today-event-button:focus-visible{
  background:linear-gradient(90deg,
    hsl(var(--iema-today-dancer-hue,198) 46% 24% / .36),
    rgba(255,255,255,.035) 58%)!important;
}
body.iema-parent-portal-page .iema-parent-today-event-button time b,
body.iema-parent-portal-page .iema-parent-today-event-arrow{
  color:hsl(var(--iema-today-dancer-hue,198) 82% 78%)!important;
}
@media(max-width:420px){
 body.iema-parent-portal-page .iema-parent-today-event-button{
   grid-template-columns:68px minmax(0,1fr) auto!important;
 }
}

/* v0.14.430 — Parent Calendar day list is read-only and drillable */
body.iema-parent-portal-page .iema-day-view-event-detail{
  width:100%;
  appearance:none;
  cursor:pointer;
  text-align:left;
  font:inherit;
  color:inherit;
  grid-template-columns:minmax(64px,88px) minmax(0,1fr) auto!important;
  border-left:0!important;
  border-right:0!important;
  border-top:0!important;
  background:transparent!important;
}
body.iema-parent-portal-page .iema-day-view-event-detail:hover,
body.iema-parent-portal-page .iema-day-view-event-detail:focus-visible{
  background:rgba(255,255,255,.045)!important;
  outline:none;
}
body.iema-parent-portal-page .iema-day-view-detail-arrow{
  align-self:center;
  font-size:24px;
  line-height:1;
  opacity:.62;
}

/* v0.14.430 — Parent event details match Weekly Schedule information density */
body.iema-parent-portal-page .iema-parent-rich-event-modal .iema-shared-event-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
body.iema-parent-portal-page .iema-parent-rich-event-modal .iema-shared-event-dialog header p{
  margin:5px 0 0;
  color:#94a3b8;
  font-size:13px;
}
@media(max-width:620px){
 body.iema-parent-portal-page .iema-parent-rich-event-modal .iema-shared-event-grid{
   grid-template-columns:1fr!important;
 }
}

/* v0.14.430 — Parent rich event detail Class Roster */
body.iema-parent-portal-page .iema-shared-roster-view header p{
  margin:5px 0 0;
  color:#94a3b8;
  font-size:13px;
}
body.iema-parent-portal-page .iema-shared-roster-list{
  display:grid;
  gap:8px;
  margin-top:16px;
}
body.iema-parent-portal-page .iema-shared-roster-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:11px 12px;
  border:1px solid rgba(148,163,184,.18);
  border-radius:12px;
  background:rgba(255,255,255,.025);
}
body.iema-parent-portal-page .iema-shared-roster-row.is-current{
  border-color:rgba(56,189,248,.4);
  background:rgba(56,189,248,.08);
}
body.iema-parent-portal-page .iema-shared-roster-row small{
  color:#7dd3fc;
  font-weight:700;
}

/* v0.14.430 — Weekly Schedule detail GUI is canonical for Parent Daily + Calendar */
body.iema-parent-portal-page [data-parent-week-event]{
  cursor:pointer;
}

/* v0.14.430 — Weekly-style detail UI inside standalone Parent Full Calendar */
.iema-parent-full-calendar .iema-parent-summary-modal[hidden]{display:none!important}
.iema-parent-full-calendar .iema-parent-summary-modal:not([hidden]){
  display:flex!important;
}

/* v0.14.430 — shared Weekly-style calendar detail GUI */
.iema-unified-calendar-detail-modal:not([hidden]){display:flex!important}
.iema-unified-calendar-detail-modal .iema-parent-week-roster-body{display:grid;gap:8px}
.iema-unified-calendar-detail-modal .iema-parent-week-roster-row{display:flex;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid rgba(148,163,184,.18);border-radius:12px}
.iema-unified-calendar-detail-modal .iema-parent-week-roster-row.is-current{border-color:rgba(56,189,248,.4);background:rgba(56,189,248,.08)}


/* v0.14.430 — Full Calendar detail inherits the exact Parent Weekly/Daily GUI */
.iema-fullcal-week-detail-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483600!important;
  display:grid!important;
  place-items:center!important;
  box-sizing:border-box!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-modal{
  z-index:2147483000!important;
  padding:18px!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-dialog{
  width:min(960px,calc(100vw - 36px))!important;
  max-width:960px!important;
  max-height:min(90vh,900px)!important;
  overflow:auto!important;
  padding:0!important;
  border-radius:26px!important;
  border:1px solid #223245!important;
  background:linear-gradient(180deg,#0b1119 0%,#080d14 100%)!important;
  color:#f5f8ff!important;
  box-shadow:0 40px 110px rgba(0,0,0,.62), inset 0 1px 0 rgba(255,255,255,.03)!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-dialog::before{
  content:'';
  position:sticky;
  top:0;
  display:block;
  height:0;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-close{
  position:absolute!important;
  top:18px!important;
  right:18px!important;
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  border:1px solid #2d4056!important;
  background:#101924!important;
  color:#fff!important;
  box-shadow:none!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-close:hover{
  background:#162335!important;
  border-color:#4da9db!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-modal-head,
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-exceptions-head{
  margin:0!important;
  padding:26px 28px 20px!important;
  border-bottom:1px solid #1d2a39!important;
  background:linear-gradient(180deg,rgba(255,255,255,.018) 0%,rgba(255,255,255,0) 100%)!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-modal-head .iema-kicker,
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-exceptions-head .iema-kicker{
  display:inline-flex!important;
  align-items:center!important;
  min-height:24px!important;
  padding:4px 10px!important;
  border-radius:999px!important;
  background:rgba(77,169,219,.10)!important;
  border:1px solid rgba(77,169,219,.24)!important;
  color:#81d4ff!important;
  font-size:10px!important;
  letter-spacing:.12em!important;
  font-weight:900!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-modal-head h2,
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-exceptions-head h2{
  margin:12px 0 6px!important;
  color:#fff!important;
  font-size:34px!important;
  line-height:1.04!important;
  letter-spacing:-.04em!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-modal-head p,
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-exceptions-head p{
  margin:0!important;
  color:#95a7be!important;
  font-size:14px!important;
  line-height:1.45!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-actions{
  padding:16px 28px 24px!important;
  margin:0!important;
  border-top:1px solid transparent!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-dialog>.iema-parent-summary-actions,
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-dialog>footer.iema-parent-summary-actions{
  border-top:1px solid #1d2a39!important;
  background:linear-gradient(180deg,rgba(8,13,20,0) 0%,rgba(8,13,20,.94) 30%)!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-dialog .iema-btn{
  min-height:44px!important;
  padding:11px 16px!important;
  border-radius:14px!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-dialog .iema-btn.iema-btn-secondary{
  background:#101925!important;
  border:1px solid #2a394c!important;
  color:#dbe9ff!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-dialog .iema-btn.iema-btn-secondary:hover{background:#152233!important;border-color:#3c5370!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-dialog .iema-approved{
  margin:18px 28px 0!important;
  border-radius:14px!important;
  border:1px solid rgba(57,217,138,.28)!important;
  background:rgba(17,86,52,.35)!important;
  color:#b8f3d4!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-modal-head,
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-exceptions-head,
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-dancer-groups,
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-actions{padding-left:20px!important;padding-right:20px!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-modal{padding:10px!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-dialog{width:100%!important;max-height:94vh!important;border-radius:22px!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-summary-modal-head h2,
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-exceptions-head h2{font-size:28px!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-dialog{width:min(780px,calc(100vw - 36px))!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-body{padding:22px 28px 8px!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-grid>div{min-width:0!important;padding:16px!important;border-radius:16px!important;border:1px solid #1f2d3d!important;background:linear-gradient(180deg,#0e1621 0%,#0a1119 100%)!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-grid>div>span{display:block!important;margin-bottom:6px!important;color:#7690ad!important;font-size:10px!important;font-weight:900!important;letter-spacing:.1em!important;text-transform:uppercase!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-grid>div>strong{display:block!important;color:#fff!important;font-size:15px!important;line-height:1.35!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-grid>div>small{display:block!important;margin-top:4px!important;color:#8fa5bf!important;font-size:12px!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-grid>div>p{margin:0!important;color:#c7d5e6!important;font-size:13px!important;line-height:1.55!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-wide{grid-column:1/-1!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-body{padding:18px 18px 6px!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-grid{grid-template-columns:1fr!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-wide{grid-column:auto!important}
/* v0.14.233 — isolated Parent class roster modal */
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-actions{justify-content:space-between!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-roster-dialog{width:min(600px,calc(100vw - 36px))!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-roster-body{display:grid!important;gap:9px!important;padding:22px 28px 8px!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-roster-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:13px 15px!important;border-radius:14px!important;border:1px solid #1f2d3d!important;background:#0c131c!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-roster-row strong{color:#fff!important;font-size:14px!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-roster-row small{color:#81d4ff!important;font-size:10px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-roster-row.is-current{border-color:#3555d9!important;background:#101a29!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-detail-actions{display:grid!important;grid-template-columns:1fr!important}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal .iema-parent-week-roster-body{padding:18px 18px 6px!important}

/* v0.14.431 — Owner dashboard View Roster controls are identical across Performance, Training, and Rooms data views */
body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-room-row > .iema-owner-kpi-program-link{
  justify-self:end!important;
  align-self:center!important;
}
@media(max-width:760px){
  body.iema-owner-portal-page > .iema-create-modal.iema-owner-kpi-detail-modal .iema-owner-kpi-room-row > .iema-owner-kpi-program-link{
    grid-column:2!important;
    justify-self:start!important;
  }
}

/* v0.14.432 — Parent Full Calendar class-detail roster action follows the studio accent */
body.iema-parent-portal-page .iema-fullcal-week-detail-modal [data-iema-fullcal-roster-open]{
  background:linear-gradient(180deg,var(--studio-accent) 0%,var(--studio-accent-strong) 100%)!important;
  border-color:var(--studio-accent)!important;
  color:var(--studio-accent-text)!important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--studio-accent) 28%,transparent)!important;
}
body.iema-parent-portal-page .iema-fullcal-week-detail-modal [data-iema-fullcal-roster-open]:hover,
body.iema-parent-portal-page .iema-fullcal-week-detail-modal [data-iema-fullcal-roster-open]:focus-visible{
  background:linear-gradient(180deg,var(--studio-accent-hover) 0%,var(--studio-accent-strong) 100%)!important;
  border-color:var(--studio-accent-hover)!important;
  color:var(--studio-accent-text)!important;
}


/* v0.14.439 — Calendar detail roster actions always use the studio accent */
.iema-studio-accent-action{
  background:linear-gradient(180deg,var(--studio-accent,var(--iema-accent,#7c3aed)) 0%,var(--studio-accent-strong,var(--studio-accent,var(--iema-accent,#7c3aed))) 100%)!important;
  border-color:var(--studio-accent,var(--iema-accent,#7c3aed))!important;
  color:var(--studio-accent-text,#fff)!important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--studio-accent,var(--iema-accent,#7c3aed)) 28%,transparent)!important;
}
.iema-studio-accent-action:hover,
.iema-studio-accent-action:focus-visible{
  background:linear-gradient(180deg,var(--studio-accent-hover,var(--studio-accent,var(--iema-accent,#7c3aed))) 0%,var(--studio-accent-strong,var(--studio-accent,var(--iema-accent,#7c3aed))) 100%)!important;
  border-color:var(--studio-accent-hover,var(--studio-accent,var(--iema-accent,#7c3aed)))!important;
  color:var(--studio-accent-text,#fff)!important;
}

/* v0.14.439 — exact Parent Full Calendar unified-detail roster action uses studio accent */
body.iema-parent-portal-page .iema-unified-calendar-detail-modal [data-iema-unified-roster],
body.iema-parent-portal-page .iema-parent-week-detail-modal.iema-unified-calendar-detail-modal [data-iema-unified-roster]{
  background:linear-gradient(180deg,var(--iema-parent-accent,var(--studio-accent,var(--md2-blue,#7c3aed))) 0%,var(--iema-parent-accent-2,var(--studio-accent-strong,var(--md2-blue-strong,var(--iema-parent-accent,var(--studio-accent,#7c3aed))))) 100%)!important;
  border:1px solid var(--iema-parent-accent,var(--studio-accent,var(--md2-blue,#7c3aed)))!important;
  color:var(--studio-accent-text,#fff)!important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--iema-parent-accent,var(--studio-accent,var(--md2-blue,#7c3aed))) 28%,transparent)!important;
}
body.iema-parent-portal-page .iema-unified-calendar-detail-modal [data-iema-unified-roster]:hover,
body.iema-parent-portal-page .iema-unified-calendar-detail-modal [data-iema-unified-roster]:focus-visible,
body.iema-parent-portal-page .iema-parent-week-detail-modal.iema-unified-calendar-detail-modal [data-iema-unified-roster]:hover,
body.iema-parent-portal-page .iema-parent-week-detail-modal.iema-unified-calendar-detail-modal [data-iema-unified-roster]:focus-visible{
  background:linear-gradient(180deg,var(--studio-accent-hover,var(--iema-parent-accent,var(--md2-blue,#7c3aed))) 0%,var(--iema-parent-accent-2,var(--studio-accent-strong,var(--md2-blue-strong,var(--studio-accent,#7c3aed)))) 100%)!important;
  border-color:var(--studio-accent-hover,var(--iema-parent-accent,var(--md2-blue,#7c3aed)))!important;
  color:var(--studio-accent-text,#fff)!important;
}


/* v0.14.440 — body-level unified calendar modal receives studio tokens in JS;
   roster action therefore resolves against the actual active studio accent. */
.iema-unified-calendar-detail-modal [data-iema-unified-roster]{
  background:linear-gradient(180deg,var(--studio-accent) 0%,var(--studio-accent-strong) 100%)!important;
  border:1px solid var(--studio-accent)!important;
  color:var(--studio-accent-text)!important;
}
.iema-unified-calendar-detail-modal [data-iema-unified-roster]:hover,
.iema-unified-calendar-detail-modal [data-iema-unified-roster]:focus-visible{
  background:linear-gradient(180deg,var(--studio-accent-hover) 0%,var(--studio-accent-strong) 100%)!important;
  border-color:var(--studio-accent-hover)!important;
  color:var(--studio-accent-text)!important;
}


/* v0.14.444 — one Parent roster action for Today, This Week, and Full Calendar.
   All three surfaces use the same Parent detail/roster modal and this same button class. */
body.iema-parent-portal-page .iema-parent-roster-action{
  background:var(--studio-accent,#8500aa)!important;
  border:1px solid color-mix(in srgb,var(--studio-accent,#8500aa) 75%,#fff 25%)!important;
  color:var(--studio-accent-text,#fff)!important;
  box-shadow:0 10px 22px color-mix(in srgb,var(--studio-accent,#8500aa) 22%,transparent)!important;
}
body.iema-parent-portal-page .iema-parent-roster-action:hover,
body.iema-parent-portal-page .iema-parent-roster-action:focus-visible{
  background:var(--studio-accent-hover,var(--studio-accent,#8500aa))!important;
  border-color:var(--studio-accent-hover,var(--studio-accent,#8500aa))!important;
  color:var(--studio-accent-text,#fff)!important;
}

/* v0.14.488 — Messages remains inside the canonical portal.
   The existing v0.14.483 mobile shell owns the visual surface; document-canvas
   protection is applied narrowly/reversibly by mydancer.js. */

/* v0.14.489 — direct iPhone/PWA Messages layout is authoritative inline in serve_direct_portal_document(); shared CSS remains desktop/non-direct fallback only. */


/* v0.14.493 — Parent mobile canvas uses the same navy as the masthead. */
@media(max-width:760px){
  html.iema-parent-root,
  html.iema-parent-root body.iema-plugin-app-document,
  html.iema-parent-root body.iema-plugin-app-document>.iema-plugin-app-main,
  body.iema-parent-portal-page,
  body.iema-parent-portal-page main,
  body.iema-parent-portal-page .ma-wrap,
  body.iema-parent-portal-page .ma-page,
  body.iema-parent-portal-page article,
  body.iema-parent-portal-page .entry-content{
    background:#0d1420!important;
    background-image:none!important;
  }
}

/* v0.14.496 — Parent mobile root document canvas is uniformly navy.
   This is app-level paint, not component paint. Desktop and other roles are unchanged. */
@media(max-width:760px){
  html.iema-parent-root,
  html.iema-parent-root body,
  html.iema-parent-root body.iema-plugin-app-document,
  html.iema-parent-root body.iema-plugin-app-document>.iema-plugin-app-main,
  html.iema-parent-root body.iema-parent-portal-page,
  html.iema-parent-root body.iema-parent-portal-page main,
  html.iema-parent-root body.iema-parent-portal-page .iema-app,
  html.iema-parent-root body.iema-parent-portal-page .iema-parent-portal,
  html.iema-parent-root body.iema-parent-portal-page .iema-parent-shell,
  html.iema-parent-root body.iema-parent-portal-page .iema-parent-shell-topnav,
  html.iema-parent-root body.iema-parent-portal-page .iema-parent-content,
  html.iema-parent-root body.iema-parent-portal-page .ma-wrap,
  html.iema-parent-root body.iema-parent-portal-page .ma-page,
  html.iema-parent-root body.iema-parent-portal-page article,
  html.iema-parent-root body.iema-parent-portal-page .entry-content{
    background:#0d1420!important;
    background-color:#0d1420!important;
    background-image:none!important;
  }
  html.iema-parent-root,
  html.iema-parent-root body.iema-plugin-app-document,
  html.iema-parent-root body.iema-plugin-app-document>.iema-plugin-app-main{
    min-height:100%!important;
  }
}


/* v0.14.497 — Parent mobile shell canvas source-of-truth.
   The exposed iOS/PWA strip was the legacy --iema-shell-canvas (#6a6e76).
   Override the variable itself so every legacy/current Parent mobile rule resolves to navy. */
@media (max-width:760px){
  html.iema-parent-root,
  html.iema-parent-portal-active,
  html.iema-parent-pwa-cover,
  html.iema-pwa-standalone:has(body.iema-parent-portal-page),
  body.iema-parent-portal-page,
  body.iema-parent-account-page{
    --iema-shell-canvas:#0d1420!important;
    background:#0d1420!important;
    background-color:#0d1420!important;
    background-image:none!important;
  }
  html.iema-parent-root body,
  html.iema-parent-root body>.iema-direct-portal-main,
  html.iema-parent-root body>.iema-direct-portal-main>.iema-app,
  body.iema-parent-portal-page .site,
  body.iema-parent-portal-page #page,
  body.iema-parent-portal-page .site-main,
  body.iema-parent-portal-page .wp-site-blocks,
  body.iema-parent-portal-page .content-area{
    --iema-shell-canvas:#0d1420!important;
    background:#0d1420!important;
    background-color:#0d1420!important;
    background-image:none!important;
  }
}


/* v0.14.502 Messaging v2 owns the mobile surface. Legacy portal notification bar must not occupy layout inside Messages. */
body.iema-messages-surface .iema-notification-center.iema-notification-bar-wrap,
body.iema-messages-surface .iema-parent-shell-topnav > .iema-notification-bar-wrap{
  display:none!important;
}

/* v0.14.511 — Parent calendar exception consistency + compact full calendar */
/* Date-specific exceptions are red anywhere they are presented. */
.iema-calendar-event.iema-event-availability-exception,
.iema-parent-today-item.iema-parent-today-exception,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row.is-exception{
  background:#351018!important;
  border-color:#7f2434!important;
  border-left:4px solid #ff4d67!important;
  color:#ffd7dd!important;
  box-shadow:inset 0 0 0 1px rgba(255,77,103,.12)!important;
}
.iema-calendar-event.iema-event-availability-exception .iema-calendar-event-copy,
.iema-calendar-event.iema-event-availability-exception .iema-calendar-exception-badge,
.iema-parent-today-item.iema-parent-today-exception strong,
.iema-parent-today-item.iema-parent-today-exception small,
.iema-parent-today-item.iema-parent-today-exception em,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row.is-exception strong,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row.is-exception small,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row.is-exception em{
  color:#ffd7dd!important;
}
.iema-calendar-event.iema-event-availability-exception .iema-calendar-exception-badge{
  background:#ff4d67!important;
  border-color:#ff4d67!important;
  color:#26050b!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row.is-exception{border-left-width:4px!important}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-exception-row.is-exception>a{
  border-color:#8c3041!important;background:#321019!important;color:#ffd7dd!important;
}

/* Full Calendar is a compact index; detailed data lives in the click-through modal. */
body.iema-parent-portal-page .iema-parent-full-calendar .iema-calendar-day{
  min-height:86px!important;
  padding:4px!important;
}
body.iema-parent-portal-page .iema-parent-full-calendar .iema-calendar-day>strong{
  font-size:10px!important;
  line-height:1!important;
}
body.iema-parent-portal-page .iema-parent-full-calendar .iema-calendar-event{
  display:flex!important;
  align-items:center!important;
  min-height:18px!important;
  max-height:22px!important;
  margin:2px 0!important;
  padding:2px 5px!important;
  border-radius:5px!important;
  font-size:9px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  cursor:pointer!important;
}
body.iema-parent-portal-page .iema-parent-full-calendar .iema-calendar-event-copy{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body.iema-parent-portal-page .iema-parent-full-calendar .iema-calendar-exception-badge,
body.iema-parent-portal-page .iema-parent-full-calendar .iema-calendar-override-badge{
  padding:2px 4px!important;
  font-size:6px!important;
}
@media(max-width:760px){
  body.iema-parent-portal-page .iema-parent-full-calendar .iema-calendar-day{min-height:78px!important}
  body.iema-parent-portal-page .iema-parent-full-calendar .iema-calendar-event{min-height:17px!important;max-height:20px!important;font-size:8px!important}
}
/* v0.14.511 — exception lists in Availability use the same red exception language. */
.iema-upcoming-exception.is-unavailable,
.iema-upcoming-exception.is-available{
  background:#351018!important;
  border-color:#7f2434!important;
  border-left:4px solid #ff4d67!important;
  color:#ffd7dd!important;
}
.iema-upcoming-exception.is-unavailable strong,
.iema-upcoming-exception.is-available strong,
.iema-upcoming-exception.is-unavailable small,
.iema-upcoming-exception.is-available small,
.iema-upcoming-exception.is-unavailable em,
.iema-upcoming-exception.is-available em,
.iema-upcoming-exception.is-unavailable time,
.iema-upcoming-exception.is-available time{color:#ffd7dd!important}


/* v0.14.511 — Parent Full Calendar hidden events must remain hidden; Today exceptions are authoritative red. */
body.iema-parent-portal-page .iema-parent-full-calendar .iema-calendar-event[hidden]{display:none!important}
body.iema-parent-portal-page .iema-parent-full-calendar .iema-master-more[hidden]{display:none!important}
body.iema-parent-portal-page .iema-parent-today-item.iema-parent-today-exception{background:#351018!important;border-color:#7f2434!important;border-left:4px solid #ff4d67!important;color:#ffd7dd!important}


/* v0.14.512 — Parent embedded month calendar uses the same compact event index as Full Screen. */
@media (min-width:761px){
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-day{
    min-height:92px!important;
    padding:6px 7px!important;
  }
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-day>strong{
    margin:0 0 4px!important;
    font-size:12px!important;
    line-height:1!important;
  }
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-event[hidden],
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-master-more[hidden]{
    display:none!important;
  }
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-event:not([hidden]){
    display:flex!important;
    align-items:center!important;
    gap:4px!important;
    width:100%!important;
    min-width:0!important;
    min-height:22px!important;
    max-height:24px!important;
    margin:1px 0!important;
    padding:2px 5px!important;
    border-radius:5px!important;
    box-sizing:border-box!important;
    font-size:9px!important;
    line-height:1.05!important;
    overflow:hidden!important;
    white-space:nowrap!important;
  }
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-event-copy{
    display:block!important;
    min-width:0!important;
    flex:1 1 auto!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:9px!important;
    line-height:1.05!important;
  }
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-override-badge,
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-calendar-exception-badge{
    flex:0 0 auto!important;
    padding:2px 4px!important;
    border-radius:999px!important;
    font-size:6px!important;
    line-height:1!important;
    letter-spacing:.03em!important;
  }
  body.iema-parent-portal-page .iema-parent-calendar-page .iema-master-more{
    display:block!important;
    margin:2px 0 0!important;
    font-size:8px!important;
    line-height:1.1!important;
  }
}

/* v0.14.513 — Canonical Parent calendar: one Month renderer, same component in fullscreen. */
body.iema-parent-portal-page .iema-parent-calendar-canonical .iema-calendar-day{
 min-height:78px!important;padding:3px!important;
}
body.iema-parent-portal-page .iema-parent-calendar-canonical .iema-calendar-day>strong{
 font-size:10px!important;line-height:1!important;margin-bottom:2px!important;
}
body.iema-parent-portal-page .iema-parent-calendar-canonical .iema-calendar-event{
 display:flex!important;align-items:center!important;height:22px!important;min-height:22px!important;max-height:22px!important;
 margin:2px 0!important;padding:2px 5px!important;border-radius:5px!important;font-size:10px!important;line-height:1!important;
 white-space:nowrap!important;overflow:hidden!important;box-sizing:border-box!important;
}
body.iema-parent-portal-page .iema-parent-calendar-canonical .iema-calendar-event[hidden]{display:none!important}
body.iema-parent-portal-page .iema-parent-calendar-canonical .iema-calendar-event-copy{
 display:block!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;line-height:1!important;
}
body.iema-parent-portal-page .iema-parent-calendar-canonical .iema-master-more{
 display:block!important;margin:2px 1px!important;font-size:8px!important;line-height:1.1!important;
}
body.iema-parent-portal-page .iema-parent-calendar-canonical .iema-master-more[hidden]{display:none!important}
/* Preserve per-dancer identity in the all-dancers calendar. Inline --iema-parent-dancer-hue comes from the event's dancer. */
body.iema-parent-portal-page .iema-parent-calendar-canonical .iema-calendar-event:not(.iema-event-availability-exception):not(.iema-event-unavailable):not(.iema-event-available){
 background:hsl(var(--iema-parent-dancer-hue,198) 58% 23%)!important;
 border-left:3px solid hsl(var(--iema-parent-dancer-hue,198) 80% 58%)!important;
 color:#fff!important;
 box-shadow:inset 0 0 0 1px hsl(var(--iema-parent-dancer-hue,198) 70% 62% / .16)!important;
}
body.iema-parent-portal-page .iema-parent-calendar-canonical .iema-calendar-event.iema-event-availability-exception{
 background:#3a0b13!important;border-color:#ff4568!important;color:#fff!important;
}
body.iema-parent-portal-page .iema-parent-calendar-canonical:fullscreen,
body.iema-parent-portal-page .iema-parent-calendar-canonical:-webkit-full-screen{
 width:100vw!important;height:100vh!important;overflow:auto!important;background:#020407!important;padding:14px!important;box-sizing:border-box!important;
}
body.iema-parent-portal-page .iema-parent-calendar-canonical:fullscreen>.iema-modern-card-head,
body.iema-parent-portal-page .iema-parent-calendar-canonical:-webkit-full-screen>.iema-modern-card-head{
 position:sticky!important;top:0!important;z-index:20!important;background:#070b11!important;
}
body.iema-parent-portal-page .iema-parent-calendar-canonical:fullscreen .iema-calendar,
body.iema-parent-portal-page .iema-parent-calendar-canonical:-webkit-full-screen .iema-calendar{
 min-height:calc(100vh - 90px)!important;
}

/* v0.14.528 — Parent Availability is now the weekly availability editor itself.
   Calendar and date-specific exceptions live in their dedicated Parent workflows,
   so this view no longer uses the three-card task launcher or modal editor. */
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-normal-week,
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-weekly-availability-form,
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-days,
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-day-v3,
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-day-top,
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-day-name,
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-slot-list,
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-slot-row,
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-save{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline-week>header h3{
  color:#fff!important;
}
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline-week>header p{
  color:#879db2!important;
}
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-day-name small{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-slot-row label,
body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-slot-row select{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
@media(max-width:760px){
  body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-day-top{
    grid-template-columns:1fr!important;
    gap:9px!important;
    padding:12px!important;
  }
  body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-choice{
    width:max-content!important;
    max-width:100%!important;
  }
  body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-slot-list{
    padding:0 12px 10px!important;
  }
  body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-slot-row{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px!important;
    padding:10px!important;
  }
  body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-slot-to{display:none!important}
  body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-remove-slot{
    grid-column:1/-1!important;
    width:100%!important;
  }
  body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-add-slot{
    display:block!important;
    width:calc(100% - 24px)!important;
    max-width:calc(100% - 24px)!important;
    margin:0 12px 12px!important;
    box-sizing:border-box!important;
  }
  body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-save{
    padding:14px 12px!important;
  }
}
@media(max-width:430px){
  body.iema-parent-portal-page .iema-parent-view-availability .iema-parent-availability-inline .iema-availability-slot-row{grid-template-columns:1fr!important}
}


/* v0.14.529 — Wall document cards: remove the duplicated-card appearance on portal feeds.
   Auto-generated Document Library posts keep the document title once in the Wall header,
   then expose the file/resource as a compact action row. Recipient portals no longer show
   the audience footer (for example the redundant \"All\" chip); owner metrics/audience and
   urgent acknowledgement controls remain unchanged. */
.iema-notice-post.is-document-post .iema-notice-links.is-auto-document{display:block;padding:0 16px 14px}
.iema-notice-post.is-document-post .iema-notice-links.is-auto-document .iema-wall-document-action{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 0 0;border:0;border-top:1px solid rgba(255,255,255,.07);border-radius:0;background:transparent}
.iema-notice-post.is-document-post .iema-notice-links.is-auto-document .iema-wall-document-action strong{font-size:12px;line-height:1.25}
.iema-notice-post.is-document-post .iema-notice-links.is-auto-document .iema-wall-document-action span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}
@media(max-width:760px){.iema-notice-post.is-document-post .iema-notice-links.is-auto-document .iema-wall-document-action{align-items:flex-start;flex-direction:column;gap:3px}.iema-notice-post.is-document-post .iema-notice-links.is-auto-document .iema-wall-document-action span{text-align:left;max-width:100%}}

/* v0.14.531 — Wall is a normal document-scrolling Parent view.
   The Wall reader already has its own internal scroll container, so the parent
   page does not need to be frozen. These selectors are a CSS safety net for a
   restored page snapshot before JavaScript has reconciled stale lock state. */
body.iema-parent-portal-page:not(.iema-messages-surface):has(.iema-parent-view-notices):not(:has([data-iema-wall-reader-modal]:not([hidden]))):not(:has([data-mobile-doc-viewer]:not([hidden]))):not(:has(.iema-release-modal:not([hidden]))){
  overflow-y:auto!important;
}
html.iema-parent-root:has(body.iema-parent-portal-page:not(.iema-messages-surface) .iema-parent-view-notices):not(:has([data-iema-wall-reader-modal]:not([hidden]))):not(:has([data-mobile-doc-viewer]:not([hidden]))):not(:has(.iema-release-modal:not([hidden]))){
  overflow-y:auto!important;
}


/* v0.14.533 — Parent Home daily schedule navigation layout. */
body.iema-parent-portal-page .iema-parent-today-heading{min-width:0}
body.iema-parent-portal-page .iema-parent-day-nav{display:flex;align-items:center;gap:10px;margin:4px 0 3px;min-width:0}
body.iema-parent-portal-page .iema-parent-day-nav h2{margin:0!important;min-width:0}
body.iema-parent-portal-page .iema-parent-day-nav-btn{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid #26384b;border-radius:10px;background:#111925;color:#eaf1f8!important;text-decoration:none!important;font-size:25px;font-weight:500;line-height:1;box-shadow:none;transition:background .16s ease,border-color .16s ease,transform .16s ease}
body.iema-parent-portal-page .iema-parent-day-nav-btn:hover,
body.iema-parent-portal-page .iema-parent-day-nav-btn:focus-visible{background:#162131;border-color:var(--studio-accent,var(--accent));color:#fff!important;outline:none;transform:translateY(-1px)}
body.iema-parent-portal-page .iema-parent-day-today{display:inline-flex;align-items:center;margin-top:8px;color:var(--studio-accent,var(--accent))!important;font-size:11px;font-weight:900;letter-spacing:.04em;text-decoration:none!important}
body.iema-parent-portal-page .iema-parent-day-today:hover,
body.iema-parent-portal-page .iema-parent-day-today:focus-visible{text-decoration:underline!important;outline:none}
@media(max-width:560px){
  body.iema-parent-portal-page .iema-parent-day-nav{gap:7px}
  body.iema-parent-portal-page .iema-parent-day-nav-btn{flex-basis:32px;width:32px;height:32px;border-radius:9px;font-size:23px}
  body.iema-parent-portal-page .iema-parent-day-nav h2{font-size:clamp(20px,6vw,27px)!important}
}


/* v0.14.533 — Center Parent Home date navigation and place Full Calendar beneath it. */
body.iema-parent-portal-page .iema-parent-today-head{display:block!important}
body.iema-parent-portal-page .iema-parent-today-heading{text-align:center!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:0!important}
body.iema-parent-portal-page .iema-parent-day-nav{justify-content:center!important;width:100%!important}
body.iema-parent-portal-page .iema-parent-today-heading>p{max-width:720px;margin:8px auto 0!important;text-align:center!important}
body.iema-parent-portal-page .iema-parent-today-nav-actions{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;margin:10px 0 0}
body.iema-parent-portal-page .iema-parent-today .iema-parent-full-calendar-btn{align-self:center!important;min-width:150px!important}
body.iema-parent-portal-page .iema-parent-day-today{margin-top:0!important;justify-content:center!important}
@media(max-width:560px){
  body.iema-parent-portal-page .iema-parent-today-nav-actions{margin-top:8px!important;gap:7px!important}
  body.iema-parent-portal-page .iema-parent-today-heading>p{margin-top:10px!important}
}


/* v0.14.534 — Parent This Week date-specific availability exceptions.
   Match the red exception treatment used by the Parent Daily schedule. */
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row.iema-parent-week-exception{
  background:#351018!important;
  border-color:#7f2434!important;
  border-left:4px solid #ff4d67!important;
  color:#ffd7dd!important;
  box-shadow:inset 0 0 0 1px rgba(255,77,103,.12)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row.iema-parent-week-exception:hover,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row.iema-parent-week-exception:focus-visible{
  background:#42131d!important;
  border-color:#a12f43!important;
  border-left-color:#ff5d74!important;
  box-shadow:inset 0 0 0 1px rgba(255,77,103,.18),0 12px 28px rgba(0,0,0,.20)!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row.iema-parent-week-exception time{
  background:#290c13!important;
  border-color:#6c2030!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row.iema-parent-week-exception time strong,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row.iema-parent-week-exception .iema-parent-week-copy>strong{
  color:#fff!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row.iema-parent-week-exception time span,
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row.iema-parent-week-exception .iema-parent-week-copy>small{
  color:#ffc1cb!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row.iema-parent-week-exception .iema-parent-week-copy>em{
  color:#ffd7dd!important;
}
body.iema-parent-portal-page .iema-parent-shell .iema-parent-week-row.iema-parent-week-exception .iema-parent-week-chevron{
  background:#290c13!important;
  border-color:#7f2434!important;
  color:#ff9bab!important;
}

/* =========================================================
   v0.14.537 — Faculty workflow consolidation
   Privates, roster attendance, Dancer Notes, Availability.
   ========================================================= */

/* Faculty Privates: one obvious opening action + aligned history card. */
body.iema-staff-portal-page .iema-faculty-private-quickbar{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;
  width:100%!important;box-sizing:border-box!important;margin:0 0 18px!important;padding:16px 18px!important;
  border:1px solid rgba(56,189,248,.24)!important;border-radius:17px!important;
  background:linear-gradient(135deg,rgba(14,116,144,.13),rgba(8,15,24,.92))!important;
}
body.iema-staff-portal-page .iema-faculty-private-quickbar>div{display:grid!important;gap:4px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-private-quickbar strong{color:#f5fbff!important;font-size:16px!important}
body.iema-staff-portal-page .iema-faculty-private-quickbar small{color:#93a9ba!important;line-height:1.45!important;max-width:720px!important}
body.iema-staff-portal-page .iema-faculty-private-quickbar .iema-btn{flex:0 0 auto!important;white-space:nowrap!important}
body.iema-staff-portal-page .iema-faculty-private-card-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:14px!important}
body.iema-staff-portal-page .iema-faculty-private-card-head>div{min-width:0!important}
body.iema-staff-portal-page .iema-faculty-private-history-card{
  display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
  margin:0!important;padding:20px!important;border:1px solid rgba(56,189,248,.18)!important;border-radius:20px!important;
  background:rgba(8,15,24,.9)!important;box-shadow:0 12px 28px rgba(0,0,0,.16)!important;
}
body.iema-staff-portal-page .iema-faculty-private-history-card>.iema-section-head{padding:0!important;margin:0 0 12px!important;border:0!important;background:transparent!important}
body.iema-staff-portal-page .iema-faculty-private-history-card .iema-private-payment-filter{margin:12px 0 16px!important}
body.iema-staff-portal-page>.iema-create-modal.iema-faculty-open-private-modal>.iema-faculty-open-private-dialog,
body.iema-staff-portal-page .iema-faculty-open-private-dialog{width:min(720px,calc(100vw - 32px))!important;max-width:720px!important;overflow-x:hidden!important}
body.iema-staff-portal-page .iema-private-open-form-modal{
  display:grid!important;grid-template-columns:1fr!important;gap:12px!important;margin:0!important;align-items:stretch!important;
}
body.iema-staff-portal-page .iema-private-open-step{
  display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;gap:12px!important;align-items:start!important;
  min-width:0!important;padding:13px!important;border:1px solid rgba(148,163,184,.16)!important;border-radius:14px!important;background:#09111a!important;
}
body.iema-staff-portal-page .iema-private-open-step>b{
  display:grid!important;place-items:center!important;width:32px!important;height:32px!important;border-radius:50%!important;
  background:#0e7490!important;color:#e8fbff!important;font-size:13px!important;
}
body.iema-staff-portal-page .iema-private-open-step label,
body.iema-staff-portal-page .iema-private-open-step>div{min-width:0!important}
body.iema-staff-portal-page .iema-private-open-step label{display:grid!important;gap:6px!important;color:#dce9f4!important;font-size:12px!important;font-weight:800!important}
body.iema-staff-portal-page .iema-private-open-step label small,
body.iema-staff-portal-page .iema-private-open-time-step>div>small{color:#8fa4b6!important;font-size:10.5px!important;font-weight:500!important;line-height:1.4!important}
body.iema-staff-portal-page .iema-private-open-step input,
body.iema-staff-portal-page .iema-private-open-step select{width:100%!important;box-sizing:border-box!important}
body.iema-staff-portal-page .iema-private-open-time-step>div{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}
body.iema-staff-portal-page .iema-private-open-time-step>div>small{grid-column:1/-1!important}
body.iema-staff-portal-page .iema-faculty-open-private-actions{display:flex!important;justify-content:flex-end!important;gap:10px!important;margin-top:4px!important;padding-top:4px!important}

/* My Classes: footer is an action row; roster is a true modal. */
body.iema-staff-portal-page .iema-faculty-class-card-actions{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;
}
body.iema-staff-portal-page .iema-faculty-class-card-actions>span{color:#91a8ba!important;font-size:11px!important;font-weight:750!important}
body.iema-staff-portal-page .iema-faculty-view-roster{min-height:38px!important;padding:8px 13px!important}
body.iema-staff-portal-page>.iema-create-modal.iema-faculty-roster-modal>.iema-faculty-roster-dialog,
body.iema-staff-portal-page .iema-faculty-roster-dialog{
  width:min(920px,calc(100vw - 32px))!important;max-width:920px!important;max-height:calc(100dvh - 40px)!important;
  overflow-y:auto!important;overflow-x:hidden!important;box-sizing:border-box!important;
}
body.iema-staff-portal-page .iema-faculty-attendance-section{display:grid!important;gap:12px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-attendance-toolbar{
  display:grid!important;grid-template-columns:minmax(220px,1fr) auto!important;gap:10px 12px!important;align-items:end!important;
  padding:12px!important;border:1px solid #26394c!important;border-radius:14px!important;background:#09131d!important;
}
body.iema-staff-portal-page .iema-faculty-attendance-toolbar label{display:grid!important;gap:6px!important;color:#cfe1ef!important;font-size:11px!important;font-weight:800!important}
body.iema-staff-portal-page .iema-faculty-attendance-toolbar select{width:100%!important;min-height:42px!important;box-sizing:border-box!important;border:1px solid #31475c!important;border-radius:10px!important;background:#071019!important;color:#eff8ff!important;padding:8px 10px!important}
body.iema-staff-portal-page .iema-faculty-attendance-state{grid-column:1/-1!important;min-height:16px!important;color:#8fdcff!important;font-size:10.5px!important;line-height:1.4!important}
body.iema-staff-portal-page .iema-faculty-attendance-pane[hidden]{display:none!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-roster{display:grid!important;gap:8px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-dancer{
  display:grid!important;grid-template-columns:minmax(190px,1fr) minmax(0,1.5fr)!important;align-items:center!important;gap:14px!important;
  min-width:0!important;padding:11px!important;border:1px solid #223248!important;border-radius:13px!important;background:#090f17!important;
}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-person{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-person img{width:46px!important;height:46px!important;border-radius:13px!important;object-fit:cover!important;border:1px solid #31455e!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-person>span{display:grid!important;gap:2px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-person strong{color:#f8fcff!important;font-size:12.5px!important;overflow-wrap:anywhere!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-person small{color:#879bae!important;font-size:10px!important;overflow-wrap:anywhere!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-control{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:9px!important;min-width:0!important;flex-wrap:wrap!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-current{min-width:70px!important;color:#8fa0b7!important;font-size:9.5px!important;font-weight:900!important;text-align:right!important;text-transform:uppercase!important;letter-spacing:.05em!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-current.status-present{color:#85e6ab!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-current.status-absent{color:#ff9ca4!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-current.status-late{color:#ffd27a!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-current.status-excused{color:#9ccfff!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-buttons{display:flex!important;justify-content:flex-end!important;gap:5px!important;flex-wrap:wrap!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-buttons button{
  min-height:34px!important;padding:7px 9px!important;border:1px solid #2a3b50!important;border-radius:9px!important;background:#101824!important;color:#a8b6c9!important;font-size:10px!important;font-weight:800!important;cursor:pointer!important;
}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-buttons button:hover,
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-buttons button.active{border-color:#2ab4f7!important;background:#0d6ca8!important;color:#fff!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-control.is-saving{opacity:.55!important;pointer-events:none!important}
body.iema-staff-portal-page .iema-faculty-class-roster-modal-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-top:10px!important}
body.iema-staff-portal-page .iema-faculty-class-roster-modal-list>span{display:flex!important;align-items:center!important;gap:9px!important;padding:9px!important;border:1px solid #223248!important;border-radius:11px!important;background:#09131d!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-class-roster-modal-list img{width:34px!important;height:34px!important;border-radius:50%!important;object-fit:cover!important}
body.iema-staff-portal-page .iema-faculty-class-roster-modal-list b{min-width:0!important;color:#eaf6ff!important;font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

/* Dancer Notes: searchable connected-dancer directory + immutable-looking row history. */
body.iema-staff-portal-page .iema-faculty-notes-v2{min-width:0!important}
body.iema-staff-portal-page .iema-faculty-note-search{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:12px!important;margin:0 0 14px!important}
body.iema-staff-portal-page .iema-faculty-note-search label{display:grid!important;gap:6px!important;flex:1 1 420px!important;max-width:620px!important;color:#cfe1ef!important;font-size:11px!important;font-weight:800!important}
body.iema-staff-portal-page .iema-faculty-note-search input{width:100%!important;min-height:44px!important;box-sizing:border-box!important;border:1px solid #2b4054!important;border-radius:12px!important;background:#071019!important;color:#f4f9fd!important;padding:10px 12px!important}
body.iema-staff-portal-page .iema-faculty-note-search>small{color:#8fa6b8!important;font-size:10.5px!important;padding-bottom:11px!important}
body.iema-staff-portal-page .iema-faculty-notes-layout{display:grid!important;grid-template-columns:minmax(225px,290px) minmax(0,1fr)!important;gap:14px!important;align-items:start!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-note-directory{display:grid!important;gap:7px!important;min-width:0!important;max-height:68vh!important;overflow:auto!important;padding-right:3px!important}
body.iema-staff-portal-page .iema-faculty-note-person{
  appearance:none!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;
  width:100%!important;min-width:0!important;padding:9px!important;border:1px solid #22364a!important;border-radius:13px!important;background:#09131d!important;color:#eaf6ff!important;text-align:left!important;cursor:pointer!important;
}
body.iema-staff-portal-page .iema-faculty-note-person[hidden]{display:none!important}
body.iema-staff-portal-page .iema-faculty-note-person:hover{border-color:#2d6689!important;background:#0b1a27!important}
body.iema-staff-portal-page .iema-faculty-note-person.active{border-color:#28aeea!important;background:#0c2232!important;box-shadow:inset 3px 0 #28aeea!important}
body.iema-staff-portal-page .iema-faculty-note-person img{width:42px!important;height:42px!important;border-radius:12px!important;object-fit:cover!important;border:1px solid #31475d!important}
body.iema-staff-portal-page .iema-faculty-note-person>span{display:grid!important;gap:2px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-note-person strong{font-size:11.5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body.iema-staff-portal-page .iema-faculty-note-person small{color:#8da3b4!important;font-size:9.5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body.iema-staff-portal-page .iema-faculty-note-person>b{color:#61cff9!important;font-size:18px!important}
body.iema-staff-portal-page .iema-faculty-note-panels{min-width:0!important}
body.iema-staff-portal-page .iema-faculty-note-panel{display:grid!important;gap:12px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-note-panel[hidden]{display:none!important}
body.iema-staff-portal-page .iema-faculty-note-dancer-head{display:flex!important;align-items:center!important;gap:12px!important;padding:13px 14px!important;border:1px solid #26394c!important;border-radius:15px!important;background:#09131d!important}
body.iema-staff-portal-page .iema-faculty-note-dancer-head img{width:58px!important;height:58px!important;border-radius:15px!important;object-fit:cover!important;border:1px solid #33506a!important}
body.iema-staff-portal-page .iema-faculty-note-dancer-head>div{display:grid!important;gap:2px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-note-dancer-head h3{margin:2px 0!important;color:#f6fbff!important;font-size:20px!important}
body.iema-staff-portal-page .iema-faculty-note-dancer-head p{margin:0!important;color:#8fa6b8!important;font-size:10.5px!important}
body.iema-staff-portal-page .iema-faculty-note-composer{padding:14px!important;border:1px solid #274158!important;border-radius:15px!important;background:#08121c!important}
body.iema-staff-portal-page .iema-faculty-note-composer label{display:grid!important;gap:7px!important;color:#d9e7f2!important;font-size:11px!important;font-weight:800!important}
body.iema-staff-portal-page .iema-faculty-note-composer textarea{width:100%!important;box-sizing:border-box!important;resize:vertical!important;min-height:104px!important;border:1px solid #2c4156!important;border-radius:11px!important;background:#050b11!important;color:#f5f9fc!important;padding:11px!important}
body.iema-staff-portal-page .iema-faculty-note-composer footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-top:10px!important}
body.iema-staff-portal-page .iema-faculty-note-state{color:#76d8ff!important;font-size:10.5px!important;min-height:15px!important}
body.iema-staff-portal-page .iema-faculty-note-history{min-width:0!important;padding:14px!important;border:1px solid rgba(148,163,184,.14)!important;border-radius:15px!important;background:rgba(5,11,17,.58)!important}
body.iema-staff-portal-page .iema-faculty-note-history-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin:0 0 10px!important}
body.iema-staff-portal-page .iema-faculty-note-history-head h4{margin:0!important;color:#edf7ff!important;font-size:14px!important}
body.iema-staff-portal-page .iema-faculty-note-history-head span{color:#8ea4b5!important;font-size:10px!important}
body.iema-staff-portal-page .iema-faculty-note-history-list{display:grid!important;gap:8px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-note-history-row{display:grid!important;gap:8px!important;padding:11px 12px!important;border:1px solid #203347!important;border-radius:12px!important;background:#09121c!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-note-history-row header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-note-history-row header>span{display:grid!important;gap:1px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-note-history-row header strong{color:#eaf6ff!important;font-size:11px!important}
body.iema-staff-portal-page .iema-faculty-note-history-row header small{color:#66d3ff!important;font-size:8.5px!important;font-weight:850!important;text-transform:uppercase!important;letter-spacing:.06em!important}
body.iema-staff-portal-page .iema-faculty-note-history-row time{color:#8197aa!important;font-size:9.5px!important;white-space:nowrap!important}
body.iema-staff-portal-page .iema-faculty-note-history-row p{margin:0!important;color:#d7e5ef!important;font-size:11.5px!important;line-height:1.55!important;overflow-wrap:anywhere!important}

/* Faculty Availability uses the same shared Parent normal-week component. */
body.iema-staff-portal-page .iema-faculty-availability-inline{width:100%!important;max-width:none!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-availability-inline .iema-parent-availability-inline-week{width:100%!important;max-width:none!important}

@media(max-width:760px){
  body.iema-staff-portal-page .iema-faculty-private-quickbar{display:grid!important;gap:12px!important;padding:14px!important;margin-bottom:14px!important}
  body.iema-staff-portal-page .iema-faculty-private-quickbar .iema-btn,
  body.iema-staff-portal-page .iema-faculty-private-card-head .iema-btn{width:100%!important;justify-content:center!important}
  body.iema-staff-portal-page .iema-faculty-private-card-head{display:grid!important}
  body.iema-staff-portal-page .iema-faculty-private-history-card{padding:16px!important;border-radius:17px!important}
  body.iema-staff-portal-page>.iema-create-modal.iema-faculty-open-private-modal{padding:8px!important;align-items:end!important}
  body.iema-staff-portal-page>.iema-create-modal.iema-faculty-open-private-modal>.iema-faculty-open-private-dialog{width:100%!important;max-height:94dvh!important;border-radius:18px 18px 0 0!important}
  body.iema-staff-portal-page .iema-private-open-time-step>div{grid-template-columns:1fr!important}
  body.iema-staff-portal-page .iema-private-open-time-step>div>small{grid-column:auto!important}
  body.iema-staff-portal-page .iema-faculty-open-private-actions{display:grid!important;grid-template-columns:1fr!important}
  body.iema-staff-portal-page .iema-faculty-open-private-actions .iema-btn{width:100%!important}

  body.iema-staff-portal-page .iema-faculty-class-card-actions{align-items:center!important}
  body.iema-staff-portal-page .iema-faculty-class-card-actions .iema-btn{min-width:132px!important}
  body.iema-staff-portal-page>.iema-create-modal.iema-faculty-roster-modal{padding:8px!important;align-items:end!important}
  body.iema-staff-portal-page>.iema-create-modal.iema-faculty-roster-modal>.iema-faculty-roster-dialog{width:100%!important;max-height:94dvh!important;border-radius:18px 18px 0 0!important}
  body.iema-staff-portal-page .iema-faculty-attendance-toolbar{grid-template-columns:1fr!important}
  body.iema-staff-portal-page .iema-faculty-attendance-state{grid-column:auto!important}
  body.iema-staff-portal-page .iema-faculty-mark-all-present{width:100%!important;justify-content:center!important}
  body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-dancer{grid-template-columns:1fr!important;gap:10px!important}
  body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-control{display:grid!important;grid-template-columns:1fr!important;justify-content:stretch!important}
  body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-current{text-align:left!important}
  body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-buttons{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important}
  body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-buttons button{width:100%!important;min-height:40px!important}
  body.iema-staff-portal-page .iema-faculty-class-roster-modal-list{grid-template-columns:1fr!important}

  body.iema-staff-portal-page .iema-faculty-note-search{display:grid!important;gap:4px!important}
  body.iema-staff-portal-page .iema-faculty-note-search label{max-width:none!important}
  body.iema-staff-portal-page .iema-faculty-note-search>small{padding:0!important}
  body.iema-staff-portal-page .iema-faculty-notes-layout{grid-template-columns:1fr!important;gap:10px!important}
  body.iema-staff-portal-page .iema-faculty-note-directory{max-height:246px!important;padding-right:0!important}
  body.iema-staff-portal-page .iema-faculty-note-dancer-head{padding:11px!important}
  body.iema-staff-portal-page .iema-faculty-note-dancer-head img{width:50px!important;height:50px!important}
  body.iema-staff-portal-page .iema-faculty-note-dancer-head h3{font-size:18px!important}
  body.iema-staff-portal-page .iema-faculty-note-composer footer{display:grid!important;grid-template-columns:1fr!important}
  body.iema-staff-portal-page .iema-faculty-note-composer .iema-btn{width:100%!important;justify-content:center!important}
  body.iema-staff-portal-page .iema-faculty-note-history-row header{align-items:flex-start!important;display:grid!important;grid-template-columns:1fr!important}
  body.iema-staff-portal-page .iema-faculty-note-history-row time{white-space:normal!important}
}


/* v0.14.538 — Attendance availability-exception context is shared by Faculty and Owner. */
body .iema-attendance-exception-badge{display:inline-flex!important;width:max-content!important;max-width:100%!important;align-items:center!important;padding:4px 7px!important;border-radius:999px!important;border:1px solid #76552a!important;background:#3a2a13!important;color:#ffd28b!important;font-size:9px!important;font-weight:900!important;line-height:1.2!important;text-transform:uppercase!important;letter-spacing:.045em!important;white-space:normal!important}
body .iema-attendance-exception-badge.is-available{border-color:#28644c!important;background:#102d23!important;color:#9ef1c8!important}
body .iema-attendance-exception-badge.is-unavailable{border-color:#76552a!important;background:#3a2a13!important;color:#ffd28b!important}
body .iema-attendance-exception-time{color:#d7b879!important;font-size:9.5px!important;font-weight:750!important}
body.iema-staff-portal-page .iema-faculty-attendance-key{margin:0!important;padding:10px 12px!important;border:1px solid #25364a!important;border-radius:12px!important;background:#09111a!important;color:#8fa2b9!important;font-size:10.5px!important;line-height:1.4!important}
body.iema-staff-portal-page .iema-faculty-attendance-key .iema-expected-key{color:#ffd28b!important;font-weight:800!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-dancer.is-expected-absent{border-color:#72542a!important;background:linear-gradient(90deg,#17130d,#090f17 48%)!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-person .iema-attendance-exception-badge{margin-top:2px!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-person .iema-attendance-exception-time{margin-top:-1px!important}
body .iema-owner-attendance-modal .iema-attendance-person b.iema-attendance-exception-badge.is-available,
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-person b.iema-attendance-exception-badge.is-available{border-color:#28644c!important;background:#102d23!important;color:#9ef1c8!important}
body .iema-owner-attendance-modal .iema-attendance-person b.iema-attendance-exception-badge.is-unavailable,
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-person b.iema-attendance-exception-badge.is-unavailable{border-color:#76552a!important;background:#3a2a13!important;color:#ffd28b!important}

/* v0.14.539 — Parent exceptions apply to the specific dancer + class occurrence. */
body .iema-attendance-current.status-exception{color:#ffd28b!important}
body .iema-attendance-dancer[data-attendance-exception="1"]{border-color:#76552a!important;box-shadow:inset 3px 0 0 #d49a42!important}
body .iema-attendance-dancer[data-attendance-exception="1"] .iema-attendance-current.status-exception{display:inline-flex!important;align-items:center!important;justify-content:flex-end!important;gap:5px!important}
body .iema-attendance-dancer[data-attendance-exception="1"] .iema-attendance-current.status-exception:before{content:"•";font-size:14px!important;line-height:1!important}
@media(max-width:760px){body .iema-attendance-dancer[data-attendance-exception="1"] .iema-attendance-current.status-exception{justify-content:flex-start!important}}

/* v0.14.540 — Faculty private-opening editing + dancer-card class exceptions. */
body.iema-staff-portal-page .iema-faculty-private-open-card .iema-faculty-private-card-head{display:block!important}
body.iema-staff-portal-page .iema-faculty-private-opening-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important}
body.iema-staff-portal-page .iema-faculty-private-opening-copy{min-width:0!important}
body.iema-staff-portal-page .iema-faculty-private-opening-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;min-width:0!important;flex-wrap:wrap!important}
body.iema-staff-portal-page .iema-faculty-private-opening-actions .iema-private-opening-inline-action{margin:0!important}
body.iema-staff-portal-page .iema-private-opening-lock-note{display:block!important;margin-top:5px!important;color:#d7b879!important;font-size:9.5px!important;font-weight:700!important;line-height:1.4!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-dancer[data-has-availability-exception="available"]{border-color:#28644c!important;box-shadow:inset 3px 0 0 #4eb987!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-attendance-dancer[data-has-availability-exception="unavailable"]{border-color:#8d3343!important;box-shadow:inset 3px 0 0 #e05b70!important;background:linear-gradient(90deg,rgba(67,16,27,.46),#090f17 50%)!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-faculty-dancer-exception{display:grid!important;gap:2px!important;width:100%!important;max-width:100%!important;margin-top:7px!important;padding:7px 9px!important;border:1px solid #76552a!important;border-radius:10px!important;background:#24190f!important;color:#ffd28b!important;line-height:1.35!important;overflow-wrap:anywhere!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-faculty-dancer-exception b{color:inherit!important;font-size:9px!important;font-weight:950!important;letter-spacing:.05em!important;text-transform:uppercase!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-faculty-dancer-exception span{color:inherit!important;font-size:10px!important;font-weight:800!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-faculty-dancer-exception small{color:inherit!important;font-size:9.5px!important;font-weight:650!important;opacity:.9!important;line-height:1.45!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-faculty-dancer-exception.is-unavailable{border-color:#8d3343!important;background:#35131b!important;color:#ffadba!important}
body.iema-staff-portal-page .iema-faculty-roster-modal .iema-faculty-dancer-exception.is-available{border-color:#28644c!important;background:#102d23!important;color:#9ef1c8!important}
@media(max-width:760px){
 body.iema-staff-portal-page .iema-faculty-private-opening-row{grid-template-columns:1fr!important;align-items:stretch!important}
 body.iema-staff-portal-page .iema-faculty-private-opening-actions{justify-content:flex-start!important}
 body.iema-staff-portal-page .iema-faculty-private-opening-actions .iema-btn{width:auto!important;max-width:100%!important}
 body.iema-staff-portal-page .iema-faculty-roster-modal .iema-faculty-dancer-exception{margin-top:6px!important}
}

/* v0.14.542 — Faculty Dancer Notes mobile master/detail cleanup. */
body.iema-staff-portal-page .iema-faculty-notes-layout{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
body.iema-staff-portal-page .iema-faculty-note-picker{display:grid!important;gap:10px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-note-picker .iema-faculty-note-search{display:grid!important;align-items:stretch!important;justify-content:stretch!important;gap:4px!important;margin:0!important}
body.iema-staff-portal-page .iema-faculty-note-picker .iema-faculty-note-search label{max-width:none!important;flex:none!important}
body.iema-staff-portal-page .iema-faculty-note-picker .iema-faculty-note-search>small{padding:0!important}
body.iema-staff-portal-page [data-faculty-notes-workspace].has-selection:not(.is-picking) .iema-faculty-note-picker{display:none!important}
body.iema-staff-portal-page [data-faculty-notes-workspace].is-picking .iema-faculty-note-panels{display:none!important}
body.iema-staff-portal-page [data-faculty-notes-workspace].is-picking .iema-faculty-note-picker{display:grid!important}
body.iema-staff-portal-page .iema-faculty-note-change{display:inline-flex!important;margin-left:auto!important;min-height:34px!important;padding:7px 10px!important;font-size:10px!important;white-space:nowrap!important}
body.iema-staff-portal-page .iema-faculty-note-state:empty{display:none!important}
body.iema-staff-portal-page .iema-faculty-note-state.is-success{color:#8ce8bd!important}

@media(max-width:760px){
  body.iema-staff-portal-page .iema-faculty-notes-layout{grid-template-columns:1fr!important;gap:10px!important}
  body.iema-staff-portal-page .iema-faculty-note-dancer-head{flex-wrap:wrap!important}
  body.iema-staff-portal-page .iema-faculty-note-dancer-head>div{flex:1 1 170px!important}
  body.iema-staff-portal-page .iema-faculty-note-directory{max-height:none!important}
}


/* v0.14.543 — Faculty Dancer Notes directory starts collapsed on every viewport. */


/* v0.14.545 — Faculty Dancer Notes starts in dancer-picker mode; search leaves the strongest match. */
body.iema-staff-portal-page [data-faculty-notes-workspace].is-picking .iema-faculty-note-picker{display:grid!important}
body.iema-staff-portal-page [data-faculty-notes-workspace].is-picking .iema-faculty-note-panels{display:none!important}
body.iema-staff-portal-page [data-faculty-notes-workspace]:not(.has-selection) .iema-faculty-note-picker{display:grid!important}
body.iema-staff-portal-page [data-faculty-notes-workspace]:not(.has-selection) .iema-faculty-note-panels{display:none!important}
body.iema-staff-portal-page .iema-faculty-note-directory [data-faculty-note-dancer][hidden]{display:none!important}
body.iema-staff-portal-page .iema-faculty-note-search-state-best{font-weight:800!important}


/* v0.14.546 — Dancer Today adopts the canonical Parent / Faculty daily workspace */
.iema-dancer-portal .iema-dancer-day-v2{display:grid!important;gap:16px!important;margin-bottom:16px!important;transition:opacity .16s ease!important}
.iema-dancer-portal .iema-dancer-day-v2.is-loading{opacity:.45!important;pointer-events:none!important}
.iema-dancer-portal .iema-dancer-today-hero{padding:20px 6px 10px!important;gap:10px!important}
.iema-dancer-portal .iema-dancer-today-hero>.iema-kicker{text-align:left!important}
.iema-dancer-portal .iema-dancer-day-nav-v2{justify-content:flex-start!important;margin:0!important}
.iema-dancer-portal .iema-dancer-day-nav-v2 h2{font-size:30px!important;line-height:1.08!important;color:#fff!important}
.iema-dancer-portal .iema-dancer-today-summary{gap:10px!important}
.iema-dancer-portal .iema-dancer-today-summary strong{font-size:15px!important;color:#fff!important}
.iema-dancer-portal .iema-dancer-today-summary span{font-size:12px!important;color:#91a6bd!important}
.iema-dancer-portal .iema-dancer-agenda-v2,
.iema-dancer-portal .iema-dancer-workout-v2{padding:24px!important;border-radius:24px!important}
.iema-dancer-portal .iema-dancer-agenda-v2 .iema-section-head,
.iema-dancer-portal .iema-dancer-workout-v2 .iema-section-head{margin-bottom:18px!important}
.iema-dancer-portal .iema-dancer-agenda-v2 .iema-section-head h2,
.iema-dancer-portal .iema-dancer-workout-v2 .iema-section-head h2{font-size:28px!important;margin:2px 0 0!important}
.iema-dancer-portal .iema-dancer-agenda-v2 .iema-section-head p,
.iema-dancer-portal .iema-dancer-workout-v2 .iema-section-head p{font-size:13px!important;max-width:560px!important}
.iema-dancer-portal .iema-dancer-agenda-card{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important}
.iema-dancer-portal .iema-dancer-agenda-card>summary{width:100%!important;box-sizing:border-box!important}
.iema-dancer-portal .iema-dancer-agenda-detail{box-sizing:border-box!important}
.iema-dancer-portal .iema-dancer-workout-v2{display:grid!important;gap:10px!important}
.iema-dancer-portal .iema-dancer-workout-card-v2{margin:0!important;border:1px solid #26394f!important;border-radius:15px!important;background:linear-gradient(145deg,#0a121d,#0d1723)!important;box-shadow:none!important}
.iema-dancer-portal .iema-dancer-workout-card-v2 .iema-dancer-workout-trigger{min-height:76px!important;padding:14px 15px!important;background:transparent!important}
.iema-dancer-portal .iema-dancer-workout-card-v2 .iema-dancer-workout-trigger:hover{background:#0e1a27!important}
.iema-dancer-portal .iema-dancer-workout-card-v2 .iema-dancer-workout-trigger strong{font-size:15px!important}
.iema-dancer-portal .iema-dancer-workout-card-v2 .iema-dancer-workout-trigger em{font-size:11px!important}
.iema-dancer-portal .iema-dancer-workout-card-v2 .iema-dancer-workout-trigger>b{min-width:112px!important;text-align:center!important}
.iema-dancer-portal .iema-dancer-workout-card-v2 .iema-dancer-workout-detail{background:#070d15!important}
@media(max-width:680px){
 .iema-dancer-portal .iema-dancer-day-v2{gap:12px!important}
 .iema-dancer-portal .iema-dancer-today-hero{padding:14px 2px 8px!important;gap:7px!important}
 .iema-dancer-portal .iema-dancer-today-hero>.iema-kicker{text-align:center!important}
 .iema-dancer-portal .iema-dancer-day-nav-v2{width:100%!important;display:grid!important;grid-template-columns:38px minmax(0,1fr) 38px!important;gap:8px!important;align-items:center!important}
 .iema-dancer-portal .iema-dancer-day-nav-v2 button{width:38px!important;height:38px!important}
 .iema-dancer-portal .iema-dancer-day-nav-v2 h2{min-width:0!important;font-size:24px!important;text-align:center!important}
 .iema-dancer-portal .iema-dancer-today-summary{justify-content:center!important;text-align:center!important}
 .iema-dancer-portal .iema-dancer-today-btn{justify-self:center!important}
 .iema-dancer-portal .iema-dancer-agenda-v2,
 .iema-dancer-portal .iema-dancer-workout-v2{padding:18px!important;border-radius:22px!important}
 .iema-dancer-portal .iema-dancer-agenda-v2 .iema-section-head h2,
 .iema-dancer-portal .iema-dancer-workout-v2 .iema-section-head h2{font-size:24px!important}
 .iema-dancer-portal .iema-dancer-agenda-v2 .iema-section-head p,
 .iema-dancer-portal .iema-dancer-workout-v2 .iema-section-head p{font-size:12px!important}
 .iema-dancer-portal .iema-dancer-workout-card-v2 .iema-dancer-workout-trigger{align-items:flex-start!important;flex-direction:column!important;gap:10px!important}
 .iema-dancer-portal .iema-dancer-workout-card-v2 .iema-dancer-workout-trigger>b{width:100%!important;box-sizing:border-box!important}
}
@media(max-width:420px){
 .iema-dancer-portal .iema-dancer-day-nav-v2 h2{font-size:21px!important}
 .iema-dancer-portal .iema-dancer-agenda-v2,
 .iema-dancer-portal .iema-dancer-workout-v2{padding:14px!important;border-radius:18px!important}
}


/* =========================================================
   v0.14.547 — Dancer Today is the canonical Parent Today experience
   The Dancer role now uses the same compact hero, day navigator, color-coded
   schedule card, exception treatment and Day → Detail → Roster modal system.
   ========================================================= */
body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-day-v3{
  display:grid!important;
  gap:16px!important;
  margin-bottom:16px!important;
  min-width:0!important;
  transition:opacity .16s ease!important;
}
body.iema-dancer-portal-page .iema-dancer-portal .iema-dancer-day-v3.is-loading{opacity:.45!important;pointer-events:none!important}

/* Parent compact Home hero, applied only to Dancer Today. */
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-hero{
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) minmax(460px,620px)!important;
  align-items:center!important;
  gap:28px!important;
  min-height:0!important;
  padding:20px 24px!important;
  margin:0 0 16px!important;
  border:1px solid #1e2b3b!important;
  border-radius:18px!important;
  background:#09111a!important;
  box-shadow:0 10px 26px rgba(0,0,0,.20)!important;
}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-welcome{padding:0!important;min-width:0!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-welcome h2{
  max-width:none!important;margin:0 0 5px!important;color:#fff!important;font-size:22px!important;line-height:1.15!important;letter-spacing:-.025em!important
}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-welcome p{margin:0!important;color:#93a4ba!important;font-size:13px!important;line-height:1.4!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-hero-aside{display:block!important;min-width:0!important}
body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;width:100%!important}
body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-card{
  appearance:none!important;display:grid!important;grid-template-columns:38px minmax(0,1fr) 18px!important;grid-template-rows:auto auto!important;align-items:center!important;
  column-gap:11px!important;row-gap:1px!important;width:100%!important;min-width:0!important;min-height:72px!important;padding:12px 13px!important;
  border:1px solid #26374b!important;border-radius:14px!important;background:#0c141f!important;box-shadow:none!important;color:#fff!important;text-align:left!important;cursor:pointer!important;font:inherit!important
}
body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-card:hover,
body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-card:focus-visible{border-color:#3d5877!important;background:#101a27!important;outline:none!important}
body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-icon{
  grid-column:1!important;grid-row:1/span 2!important;width:38px!important;height:38px!important;display:grid!important;place-items:center!important;
  border:1px solid #424da8!important;border-radius:11px!important;background:#171d3d!important;color:#d9e0ff!important;font-size:14px!important;line-height:1!important
}
body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-text{display:contents!important}
body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-top{grid-column:2/span 2!important;grid-row:1!important;display:grid!important;grid-template-columns:auto 1fr 18px!important;align-items:center!important;gap:8px!important;width:100%!important;margin:0!important}
body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-top strong{grid-column:1!important;margin:0!important;color:#fff!important;font-size:21px!important;line-height:1!important;font-weight:800!important;letter-spacing:-.03em!important}
body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-arrow{grid-column:3!important;justify-self:end!important;color:#79d8ff!important;font-size:20px!important;line-height:1!important}
body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-label{grid-column:2!important;grid-row:2!important;align-self:start!important;margin:0!important;color:#f1f5fa!important;font-size:12px!important;line-height:1.2!important;font-weight:700!important}
body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-period{grid-column:2!important;grid-row:2!important;align-self:end!important;margin-top:15px!important;color:#8295ad!important;font-size:10px!important;line-height:1!important;font-weight:500!important}

/* Parent Today card palette and dancer color identity. */
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today{
  margin:2px 0 22px!important;padding:20px!important;border:1px solid #1f2b39!important;border-radius:22px!important;
  background:linear-gradient(180deg,#0b1018 0%,#070b11 100%)!important;box-shadow:0 18px 42px rgba(0,0,0,.28)!important;color:#f5f8ff!important
}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-head{display:block!important;margin-bottom:16px!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-heading{text-align:center!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:0!important;min-width:0!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today .iema-kicker{color:#7f90a5!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-day-nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;margin:4px 0 3px!important;width:100%!important;min-width:0!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-day-nav h2{margin:0!important;min-width:0!important;color:#fff!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-day-nav-btn{
  appearance:none!important;display:grid!important;place-items:center!important;flex:0 0 34px!important;width:34px!important;height:34px!important;padding:0!important;
  border:1px solid #26384b!important;border-radius:10px!important;background:#111925!important;color:#eaf1f8!important;text-decoration:none!important;
  font:inherit!important;font-size:25px!important;font-weight:500!important;line-height:1!important;box-shadow:none!important;cursor:pointer!important;transition:background .16s ease,border-color .16s ease,transform .16s ease!important
}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-day-nav-btn:hover,
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-day-nav-btn:focus-visible{background:#162131!important;border-color:var(--studio-accent,var(--accent))!important;color:#fff!important;outline:none!important;transform:translateY(-1px)!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-nav-actions{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:100%!important;margin:10px 0 0!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-full-calendar-btn{align-self:center!important;min-width:150px!important;background:#111925!important;border-color:#26384b!important;color:#eaf1f8!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-day-today{appearance:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;color:var(--studio-accent,var(--accent))!important;font:inherit!important;font-size:11px!important;font-weight:900!important;letter-spacing:.04em!important;text-decoration:none!important;cursor:pointer!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-heading>p{max-width:720px!important;margin:8px auto 0!important;text-align:center!important;color:#9eabc0!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-dancers{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important;gap:12px!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-dancer{
  overflow:hidden!important;border:1px solid hsl(var(--iema-today-dancer-hue,198) 44% 42%/.42)!important;border-radius:18px!important;
  background:linear-gradient(180deg,#0c121c 0%,#080d14 100%)!important;color:#f5f8ff!important;box-shadow:inset 4px 0 0 hsl(var(--iema-today-dancer-hue,198) 72% 61%/.86)!important
}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-dancer>header{
  display:flex!important;align-items:center!important;gap:10px!important;padding:12px 14px!important;
  border-bottom:1px solid hsl(var(--iema-today-dancer-hue,198) 44% 40%/.30)!important;
  background:linear-gradient(90deg,hsl(var(--iema-today-dancer-hue,198) 42% 22%/.42),#0c121c 58%)!important
}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-dancer>header>span:last-child{display:flex!important;flex-direction:column!important;min-width:0!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-dancer>header strong{color:#fff!important;font-size:15px!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-dancer>header small{margin-top:2px!important;color:#9eabc0!important;font-size:12px!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-avatar,
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-avatar img{display:block!important;width:42px!important;height:42px!important;min-width:42px!important;border-radius:50%!important;object-fit:cover!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-avatar img{border:1px solid hsl(var(--iema-today-dancer-hue,198) 70% 62%/.72)!important;background:#111923!important;box-shadow:0 8px 18px rgba(0,0,0,.28)!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-list{padding:4px 0!important;background:transparent!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-event-button{
  appearance:none!important;display:grid!important;grid-template-columns:78px minmax(0,1fr) auto!important;gap:10px!important;width:100%!important;padding:10px 14px!important;
  border:0!important;border-bottom:1px solid hsl(var(--iema-today-dancer-hue,198) 36% 32%/.28)!important;border-radius:0!important;
  background:linear-gradient(90deg,hsl(var(--iema-today-dancer-hue,198) 36% 20%/.22),rgba(255,255,255,.012) 48%)!important;color:inherit!important;
  box-shadow:none!important;text-align:left!important;cursor:pointer!important;font:inherit!important
}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-event-button:last-child{border-bottom:0!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-event-button:hover,
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-event-button:focus-visible{background:linear-gradient(90deg,hsl(var(--iema-today-dancer-hue,198) 46% 24%/.36),rgba(255,255,255,.035) 58%)!important;outline:none!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-item time{display:flex!important;flex-direction:column!important;color:#fff!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-item time b{color:hsl(var(--iema-today-dancer-hue,198) 82% 78%)!important;font-size:13px!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-item time small{margin-top:2px!important;color:#9eabc0!important;font-size:11px!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-item>span{display:flex!important;flex-direction:column!important;min-width:0!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-item>span strong{color:#fff!important;font-size:14px!important;line-height:1.3!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-item>span small{margin-top:2px!important;color:#9eabc0!important;font-size:12px!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-item>span em{margin-top:4px!important;color:#8493a7!important;font-size:11px!important;font-style:normal!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-event-arrow{align-self:center!important;justify-self:end!important;color:hsl(var(--iema-today-dancer-hue,198) 82% 78%)!important;font-size:22px!important;line-height:1!important;opacity:.62!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-exception{background:#351018!important;border-color:#7f2434!important;border-left:4px solid #ff4d67!important;color:#ffd7dd!important;box-shadow:inset 0 0 0 1px rgba(255,77,103,.12)!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-exception:hover,
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-exception:focus-visible{background:#42131d!important;border-color:#a12f43!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-empty{padding:16px 14px!important;color:#9eabc0!important;font-size:13px!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-availability{display:flex!important;justify-content:space-between!important;gap:10px!important;padding:9px 14px!important;border-top:1px solid #202c3a!important;background:#0c121c!important;color:#aab7c8!important;font-size:11px!important}
body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-availability strong{color:#d9e2ec!important;font-weight:700!important;text-align:right!important}

/* Parent summary/detail/roster modals, shared by Dancer Today and Dancer Full Calendar. */
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-modal{z-index:2147483000!important;padding:18px!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-backdrop{background:rgba(3,8,14,.78)!important;backdrop-filter:blur(12px)!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dialog{width:min(960px,calc(100vw - 36px))!important;max-width:960px!important;max-height:min(90vh,900px)!important;overflow:auto!important;padding:0!important;border:1px solid #223245!important;border-radius:26px!important;background:linear-gradient(180deg,#0b1119 0%,#080d14 100%)!important;color:#f5f8ff!important;box-shadow:0 40px 110px rgba(0,0,0,.62),inset 0 1px 0 rgba(255,255,255,.03)!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-close{position:absolute!important;top:18px!important;right:18px!important;width:42px!important;height:42px!important;border:1px solid #2d4056!important;border-radius:50%!important;background:#101924!important;color:#fff!important;box-shadow:none!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-close:hover{background:#162335!important;border-color:#4da9db!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-modal-head{margin:0!important;padding:26px 28px 20px!important;border-bottom:1px solid #1d2a39!important;background:linear-gradient(180deg,rgba(255,255,255,.018) 0%,rgba(255,255,255,0) 100%)!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-modal-head .iema-kicker{display:inline-flex!important;align-items:center!important;min-height:24px!important;padding:4px 10px!important;border:1px solid rgba(77,169,219,.24)!important;border-radius:999px!important;background:rgba(77,169,219,.10)!important;color:#81d4ff!important;font-size:10px!important;letter-spacing:.12em!important;font-weight:900!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-modal-head h2{margin:12px 0 6px!important;color:#fff!important;font-size:34px!important;line-height:1.04!important;letter-spacing:-.04em!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-modal-head p{margin:0!important;color:#95a7be!important;font-size:14px!important;line-height:1.45!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dancer-groups{display:grid!important;gap:14px!important;padding:22px 28px 10px!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dancer-group{padding:18px!important;border:1px solid #1f2b39!important;border-radius:20px!important;background:linear-gradient(180deg,#0e1621 0%,#0b121a 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dancer-group>header{display:flex!important;align-items:center!important;gap:12px!important;margin-bottom:14px!important;padding-bottom:12px!important;border-bottom:1px solid rgba(255,255,255,.06)!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dancer-group>header>span{width:48px!important;height:48px!important;min-width:48px!important;display:grid!important;place-items:center!important;overflow:hidden!important;border:1px solid #26384d!important;border-radius:16px!important;background:#0e1722!important;box-shadow:0 10px 24px rgba(0,0,0,.18)!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dancer-group>header img{width:100%!important;height:100%!important;border-radius:0!important;object-fit:cover!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dancer-group>header>div{display:grid!important;gap:3px!important;min-width:0!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dancer-group>header strong{color:#fff!important;font-size:18px!important;line-height:1.08!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dancer-group>header small{color:#88a0bc!important;font-size:12px!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-empty{padding:14px 16px!important;border:1px dashed #243446!important;border-radius:14px!important;background:#0b1118!important;color:#8ea2bc!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-list,
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-exception-list{display:grid!important;gap:8px!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-row,
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-exception-row{display:grid!important;grid-template-columns:78px minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;width:100%!important;padding:14px 15px!important;border:1px solid #1d2a39!important;border-radius:16px!important;background:#0a1017!important;color:inherit!important;box-shadow:none!important;text-align:left!important;font:inherit!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-row-action{appearance:none!important;cursor:pointer!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-row:hover,
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-row:focus-visible{border-color:#3555d9!important;background:#0f1823!important;box-shadow:0 12px 28px rgba(0,0,0,.20)!important;outline:none!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-row time,
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-exception-row time{display:flex!important;flex-direction:column!important;align-self:stretch!important;justify-content:center!important;gap:4px!important;padding:10px 8px!important;border:1px solid #223245!important;border-radius:14px!important;background:linear-gradient(180deg,#111a26 0%,#0d141d 100%)!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-row time strong,
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-exception-row time strong{color:#fff!important;font-size:15px!important;line-height:1.05!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-row time span,
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-exception-row time span{color:#86a0be!important;font-size:11px!important;line-height:1.2!important;text-transform:uppercase!important;letter-spacing:.06em!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-copy{display:grid!important;min-width:0!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-copy>strong,
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-exception-row>div strong{color:#fff!important;font-size:15px!important;line-height:1.25!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-copy>small,
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-exception-row>div small{color:#8ea5c1!important;font-size:12px!important;line-height:1.42!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-copy>em,
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-exception-row>div em{margin-top:5px!important;color:#6bcfff!important;font-size:11px!important;line-height:1.45!important;font-style:normal!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-chevron{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border:1px solid #26384d!important;border-radius:12px!important;background:#101925!important;color:#91d9ff!important;font-size:25px!important;line-height:1!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-row.iema-parent-week-exception{background:#351018!important;border-color:#7f2434!important;border-left:4px solid #ff4d67!important;color:#ffd7dd!important;box-shadow:inset 0 0 0 1px rgba(255,77,103,.12)!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-row.iema-parent-week-exception time{background:#290c13!important;border-color:#6c2030!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-exception-row.is-unavailable{border-left:4px solid #ff5c74!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-exception-row.is-available{border-left:4px solid #39d98a!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-actions{padding:16px 28px 24px!important;margin:0!important;border-top:1px solid #1d2a39!important;background:linear-gradient(180deg,rgba(8,13,20,0) 0%,rgba(8,13,20,.94) 30%)!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dialog .iema-btn{min-height:44px!important;padding:11px 16px!important;border-radius:14px!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dialog .iema-btn.iema-btn-secondary{background:#101925!important;border:1px solid #2a394c!important;color:#dbe9ff!important}

/* Class/event detail and class roster opened from Today, Week, or Full Calendar. */
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-dialog{width:min(780px,calc(100vw - 36px))!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-body{padding:22px 28px 8px!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-grid>div{min-width:0!important;padding:16px!important;border:1px solid #1f2d3d!important;border-radius:16px!important;background:linear-gradient(180deg,#0e1621 0%,#0a1119 100%)!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-grid>div>span{display:block!important;margin-bottom:6px!important;color:#7690ad!important;font-size:10px!important;font-weight:900!important;letter-spacing:.1em!important;text-transform:uppercase!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-grid>div>strong{display:block!important;color:#fff!important;font-size:15px!important;line-height:1.35!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-grid>div>small{display:block!important;margin-top:4px!important;color:#8fa5bf!important;font-size:12px!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-grid>div>p{margin:0!important;color:#c7d5e6!important;font-size:13px!important;line-height:1.55!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-wide{grid-column:1/-1!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-actions{display:flex!important;justify-content:space-between!important;gap:10px!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-roster-dialog{width:min(600px,calc(100vw - 36px))!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-roster-body{display:grid!important;gap:9px!important;padding:22px 28px 8px!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-roster-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:13px 15px!important;border:1px solid #1f2d3d!important;border-radius:14px!important;background:#0c131c!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-roster-row strong{color:#fff!important;font-size:14px!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-roster-row small{color:#81d4ff!important;font-size:10px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important}
body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-roster-row.is-current{border-color:#3555d9!important;background:#101a29!important}

/* Dancer Full Calendar reuses the stabilized Parent Month presentation. */
body.iema-dancer-portal-page .iema-dancer-view-calendar .iema-dancer-calendar-page{margin:0!important;min-width:0!important}

@media(max-width:1050px){
 body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-hero{grid-template-columns:1fr!important;gap:14px!important}
}
@media(max-width:700px){
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-modal{padding:10px!important}
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dialog{width:100%!important;max-height:94vh!important;border-radius:22px!important}
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-modal-head,
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-dancer-groups,
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-actions{padding-left:18px!important;padding-right:18px!important}
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-summary-modal-head h2{font-size:28px!important}
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-row,
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-exception-row{grid-template-columns:58px minmax(0,1fr) 34px!important}
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-body{padding:18px 18px 6px!important}
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-grid{grid-template-columns:1fr!important}
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-wide{grid-column:auto!important}
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-detail-actions{display:grid!important;grid-template-columns:1fr!important}
 body.iema-dancer-portal-page .iema-dancer-portal .iema-parent-week-roster-body{padding:18px 18px 6px!important}
}
@media(max-width:620px){
 body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-hero{padding:16px!important;border-radius:16px!important}
 body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-grid{grid-template-columns:1fr!important;gap:9px!important}
 body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-card{min-height:68px!important}
 body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today{padding:16px!important;border-radius:20px!important}
}
@media(max-width:560px){
 body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-day-nav{gap:7px!important}
 body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-day-nav-btn{flex-basis:32px!important;width:32px!important;height:32px!important;border-radius:9px!important;font-size:23px!important}
 body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-day-nav h2{font-size:clamp(20px,6vw,27px)!important}
 body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-nav-actions{margin-top:8px!important;gap:7px!important}
 body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-heading>p{margin-top:10px!important}
}
@media(max-width:420px){
 body.iema-dancer-portal-page .iema-dancer-view-today .iema-parent-today-event-button{grid-template-columns:68px minmax(0,1fr) auto!important;padding-left:12px!important;padding-right:10px!important}
 body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-card{gap:12px!important;border-radius:16px!important}
 body.iema-dancer-portal-page .iema-dancer-view-today .md-parent-glance-icon{width:40px!important;height:40px!important;border-radius:12px!important}
}


/* =========================================================
   v0.14.549 — Faculty Today canonical styling scope correction
   The Faculty role now uses the same compact hero, day navigator, color-coded
   schedule card, exception treatment and Day → Detail → Roster modal system.
   ========================================================= */
body.iema-staff-portal-page .iema-faculty-portal .iema-faculty-day-v3{
  display:grid!important;
  gap:16px!important;
  margin-bottom:16px!important;
  min-width:0!important;
  transition:opacity .16s ease!important;
}
body.iema-staff-portal-page .iema-faculty-portal .iema-faculty-day-v3.is-loading{opacity:.45!important;pointer-events:none!important}

/* Parent compact Home hero, applied only to Faculty Today. */
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-hero{
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) minmax(460px,620px)!important;
  align-items:center!important;
  gap:28px!important;
  min-height:0!important;
  padding:20px 24px!important;
  margin:0 0 16px!important;
  border:1px solid #1e2b3b!important;
  border-radius:18px!important;
  background:#09111a!important;
  box-shadow:0 10px 26px rgba(0,0,0,.20)!important;
}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-welcome{padding:0!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-welcome h2{
  max-width:none!important;margin:0 0 5px!important;color:#fff!important;font-size:22px!important;line-height:1.15!important;letter-spacing:-.025em!important
}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-welcome p{margin:0!important;color:#93a4ba!important;font-size:13px!important;line-height:1.4!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-hero-aside{display:block!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;width:100%!important}
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-card{
  appearance:none!important;display:grid!important;grid-template-columns:38px minmax(0,1fr) 18px!important;grid-template-rows:auto auto!important;align-items:center!important;
  column-gap:11px!important;row-gap:1px!important;width:100%!important;min-width:0!important;min-height:72px!important;padding:12px 13px!important;
  border:1px solid #26374b!important;border-radius:14px!important;background:#0c141f!important;box-shadow:none!important;color:#fff!important;text-align:left!important;cursor:pointer!important;font:inherit!important
}
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-card:hover,
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-card:focus-visible{border-color:#3d5877!important;background:#101a27!important;outline:none!important}
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-icon{
  grid-column:1!important;grid-row:1/span 2!important;width:38px!important;height:38px!important;display:grid!important;place-items:center!important;
  border:1px solid #424da8!important;border-radius:11px!important;background:#171d3d!important;color:#d9e0ff!important;font-size:14px!important;line-height:1!important
}
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-text{display:contents!important}
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-top{grid-column:2/span 2!important;grid-row:1!important;display:grid!important;grid-template-columns:auto 1fr 18px!important;align-items:center!important;gap:8px!important;width:100%!important;margin:0!important}
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-top strong{grid-column:1!important;margin:0!important;color:#fff!important;font-size:21px!important;line-height:1!important;font-weight:800!important;letter-spacing:-.03em!important}
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-arrow{grid-column:3!important;justify-self:end!important;color:#79d8ff!important;font-size:20px!important;line-height:1!important}
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-label{grid-column:2!important;grid-row:2!important;align-self:start!important;margin:0!important;color:#f1f5fa!important;font-size:12px!important;line-height:1.2!important;font-weight:700!important}
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-period{grid-column:2!important;grid-row:2!important;align-self:end!important;margin-top:15px!important;color:#8295ad!important;font-size:10px!important;line-height:1!important;font-weight:500!important}

/* Parent Today card palette and dancer color identity. */
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today{
  margin:2px 0 22px!important;padding:20px!important;border:1px solid #1f2b39!important;border-radius:22px!important;
  background:linear-gradient(180deg,#0b1018 0%,#070b11 100%)!important;box-shadow:0 18px 42px rgba(0,0,0,.28)!important;color:#f5f8ff!important
}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-head{display:block!important;margin-bottom:16px!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-heading{text-align:center!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:0!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today .iema-kicker{color:#7f90a5!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-day-nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;margin:4px 0 3px!important;width:100%!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-day-nav h2{margin:0!important;min-width:0!important;color:#fff!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-day-nav-btn{
  appearance:none!important;display:grid!important;place-items:center!important;flex:0 0 34px!important;width:34px!important;height:34px!important;padding:0!important;
  border:1px solid #26384b!important;border-radius:10px!important;background:#111925!important;color:#eaf1f8!important;text-decoration:none!important;
  font:inherit!important;font-size:25px!important;font-weight:500!important;line-height:1!important;box-shadow:none!important;cursor:pointer!important;transition:background .16s ease,border-color .16s ease,transform .16s ease!important
}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-day-nav-btn:hover,
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-day-nav-btn:focus-visible{background:#162131!important;border-color:var(--studio-accent,var(--accent))!important;color:#fff!important;outline:none!important;transform:translateY(-1px)!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-nav-actions{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:100%!important;margin:10px 0 0!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-full-calendar-btn{align-self:center!important;min-width:150px!important;background:#111925!important;border-color:#26384b!important;color:#eaf1f8!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-day-today{appearance:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;color:var(--studio-accent,var(--accent))!important;font:inherit!important;font-size:11px!important;font-weight:900!important;letter-spacing:.04em!important;text-decoration:none!important;cursor:pointer!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-heading>p{max-width:720px!important;margin:8px auto 0!important;text-align:center!important;color:#9eabc0!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-dancers{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important;gap:12px!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-dancer{
  overflow:hidden!important;border:1px solid hsl(var(--iema-today-dancer-hue,198) 44% 42%/.42)!important;border-radius:18px!important;
  background:linear-gradient(180deg,#0c121c 0%,#080d14 100%)!important;color:#f5f8ff!important;box-shadow:inset 4px 0 0 hsl(var(--iema-today-dancer-hue,198) 72% 61%/.86)!important
}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-dancer>header{
  display:flex!important;align-items:center!important;gap:10px!important;padding:12px 14px!important;
  border-bottom:1px solid hsl(var(--iema-today-dancer-hue,198) 44% 40%/.30)!important;
  background:linear-gradient(90deg,hsl(var(--iema-today-dancer-hue,198) 42% 22%/.42),#0c121c 58%)!important
}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-dancer>header>span:last-child{display:flex!important;flex-direction:column!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-dancer>header strong{color:#fff!important;font-size:15px!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-dancer>header small{margin-top:2px!important;color:#9eabc0!important;font-size:12px!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-avatar,
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-avatar img{display:block!important;width:42px!important;height:42px!important;min-width:42px!important;border-radius:50%!important;object-fit:cover!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-avatar img{border:1px solid hsl(var(--iema-today-dancer-hue,198) 70% 62%/.72)!important;background:#111923!important;box-shadow:0 8px 18px rgba(0,0,0,.28)!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-list{padding:4px 0!important;background:transparent!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-event-button{
  appearance:none!important;display:grid!important;grid-template-columns:78px minmax(0,1fr) auto!important;gap:10px!important;width:100%!important;padding:10px 14px!important;
  border:0!important;border-bottom:1px solid hsl(var(--iema-today-dancer-hue,198) 36% 32%/.28)!important;border-radius:0!important;
  background:linear-gradient(90deg,hsl(var(--iema-today-dancer-hue,198) 36% 20%/.22),rgba(255,255,255,.012) 48%)!important;color:inherit!important;
  box-shadow:none!important;text-align:left!important;cursor:pointer!important;font:inherit!important
}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-event-button:last-child{border-bottom:0!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-event-button:hover,
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-event-button:focus-visible{background:linear-gradient(90deg,hsl(var(--iema-today-dancer-hue,198) 46% 24%/.36),rgba(255,255,255,.035) 58%)!important;outline:none!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-item time{display:flex!important;flex-direction:column!important;color:#fff!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-item time b{color:hsl(var(--iema-today-dancer-hue,198) 82% 78%)!important;font-size:13px!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-item time small{margin-top:2px!important;color:#9eabc0!important;font-size:11px!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-item>span{display:flex!important;flex-direction:column!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-item>span strong{color:#fff!important;font-size:14px!important;line-height:1.3!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-item>span small{margin-top:2px!important;color:#9eabc0!important;font-size:12px!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-item>span em{margin-top:4px!important;color:#8493a7!important;font-size:11px!important;font-style:normal!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-event-arrow{align-self:center!important;justify-self:end!important;color:hsl(var(--iema-today-dancer-hue,198) 82% 78%)!important;font-size:22px!important;line-height:1!important;opacity:.62!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-exception{background:#351018!important;border-color:#7f2434!important;border-left:4px solid #ff4d67!important;color:#ffd7dd!important;box-shadow:inset 0 0 0 1px rgba(255,77,103,.12)!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-exception:hover,
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-exception:focus-visible{background:#42131d!important;border-color:#a12f43!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-empty{padding:16px 14px!important;color:#9eabc0!important;font-size:13px!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-availability{display:flex!important;justify-content:space-between!important;gap:10px!important;padding:9px 14px!important;border-top:1px solid #202c3a!important;background:#0c121c!important;color:#aab7c8!important;font-size:11px!important}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-availability strong{color:#d9e2ec!important;font-weight:700!important;text-align:right!important}

/* Parent summary/detail/roster modals, shared by Faculty Today and Faculty Full Calendar. */
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-modal{z-index:2147483000!important;padding:18px!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-backdrop{background:rgba(3,8,14,.78)!important;backdrop-filter:blur(12px)!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-dialog{width:min(960px,calc(100vw - 36px))!important;max-width:960px!important;max-height:min(90vh,900px)!important;overflow:auto!important;padding:0!important;border:1px solid #223245!important;border-radius:26px!important;background:linear-gradient(180deg,#0b1119 0%,#080d14 100%)!important;color:#f5f8ff!important;box-shadow:0 40px 110px rgba(0,0,0,.62),inset 0 1px 0 rgba(255,255,255,.03)!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-close{position:absolute!important;top:18px!important;right:18px!important;width:42px!important;height:42px!important;border:1px solid #2d4056!important;border-radius:50%!important;background:#101924!important;color:#fff!important;box-shadow:none!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-close:hover{background:#162335!important;border-color:#4da9db!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-modal-head{margin:0!important;padding:26px 28px 20px!important;border-bottom:1px solid #1d2a39!important;background:linear-gradient(180deg,rgba(255,255,255,.018) 0%,rgba(255,255,255,0) 100%)!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-modal-head .iema-kicker{display:inline-flex!important;align-items:center!important;min-height:24px!important;padding:4px 10px!important;border:1px solid rgba(77,169,219,.24)!important;border-radius:999px!important;background:rgba(77,169,219,.10)!important;color:#81d4ff!important;font-size:10px!important;letter-spacing:.12em!important;font-weight:900!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-modal-head h2{margin:12px 0 6px!important;color:#fff!important;font-size:34px!important;line-height:1.04!important;letter-spacing:-.04em!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-modal-head p{margin:0!important;color:#95a7be!important;font-size:14px!important;line-height:1.45!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-dancer-groups{display:grid!important;gap:14px!important;padding:22px 28px 10px!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-dancer-group{padding:18px!important;border:1px solid #1f2b39!important;border-radius:20px!important;background:linear-gradient(180deg,#0e1621 0%,#0b121a 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-dancer-group>header{display:flex!important;align-items:center!important;gap:12px!important;margin-bottom:14px!important;padding-bottom:12px!important;border-bottom:1px solid rgba(255,255,255,.06)!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-dancer-group>header>span{width:48px!important;height:48px!important;min-width:48px!important;display:grid!important;place-items:center!important;overflow:hidden!important;border:1px solid #26384d!important;border-radius:16px!important;background:#0e1722!important;box-shadow:0 10px 24px rgba(0,0,0,.18)!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-dancer-group>header img{width:100%!important;height:100%!important;border-radius:0!important;object-fit:cover!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-dancer-group>header>div{display:grid!important;gap:3px!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-dancer-group>header strong{color:#fff!important;font-size:18px!important;line-height:1.08!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-dancer-group>header small{color:#88a0bc!important;font-size:12px!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-empty{padding:14px 16px!important;border:1px dashed #243446!important;border-radius:14px!important;background:#0b1118!important;color:#8ea2bc!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-list,
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-exception-list{display:grid!important;gap:8px!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-row,
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-exception-row{display:grid!important;grid-template-columns:78px minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;width:100%!important;padding:14px 15px!important;border:1px solid #1d2a39!important;border-radius:16px!important;background:#0a1017!important;color:inherit!important;box-shadow:none!important;text-align:left!important;font:inherit!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-row-action{appearance:none!important;cursor:pointer!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-row:hover,
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-row:focus-visible{border-color:#3555d9!important;background:#0f1823!important;box-shadow:0 12px 28px rgba(0,0,0,.20)!important;outline:none!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-row time,
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-exception-row time{display:flex!important;flex-direction:column!important;align-self:stretch!important;justify-content:center!important;gap:4px!important;padding:10px 8px!important;border:1px solid #223245!important;border-radius:14px!important;background:linear-gradient(180deg,#111a26 0%,#0d141d 100%)!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-row time strong,
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-exception-row time strong{color:#fff!important;font-size:15px!important;line-height:1.05!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-row time span,
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-exception-row time span{color:#86a0be!important;font-size:11px!important;line-height:1.2!important;text-transform:uppercase!important;letter-spacing:.06em!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-copy{display:grid!important;min-width:0!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-copy>strong,
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-exception-row>div strong{color:#fff!important;font-size:15px!important;line-height:1.25!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-copy>small,
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-exception-row>div small{color:#8ea5c1!important;font-size:12px!important;line-height:1.42!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-copy>em,
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-exception-row>div em{margin-top:5px!important;color:#6bcfff!important;font-size:11px!important;line-height:1.45!important;font-style:normal!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-chevron{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border:1px solid #26384d!important;border-radius:12px!important;background:#101925!important;color:#91d9ff!important;font-size:25px!important;line-height:1!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-row.iema-parent-week-exception{background:#351018!important;border-color:#7f2434!important;border-left:4px solid #ff4d67!important;color:#ffd7dd!important;box-shadow:inset 0 0 0 1px rgba(255,77,103,.12)!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-row.iema-parent-week-exception time{background:#290c13!important;border-color:#6c2030!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-exception-row.is-unavailable{border-left:4px solid #ff5c74!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-exception-row.is-available{border-left:4px solid #39d98a!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-actions{padding:16px 28px 24px!important;margin:0!important;border-top:1px solid #1d2a39!important;background:linear-gradient(180deg,rgba(8,13,20,0) 0%,rgba(8,13,20,.94) 30%)!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-dialog .iema-btn{min-height:44px!important;padding:11px 16px!important;border-radius:14px!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-summary-dialog .iema-btn.iema-btn-secondary{background:#101925!important;border:1px solid #2a394c!important;color:#dbe9ff!important}

/* Class/event detail and class roster opened from Today, Week, or Full Calendar. */
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-detail-dialog{width:min(780px,calc(100vw - 36px))!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-detail-body{padding:22px 28px 8px!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-detail-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-detail-grid>div{min-width:0!important;padding:16px!important;border:1px solid #1f2d3d!important;border-radius:16px!important;background:linear-gradient(180deg,#0e1621 0%,#0a1119 100%)!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-detail-grid>div>span{display:block!important;margin-bottom:6px!important;color:#7690ad!important;font-size:10px!important;font-weight:900!important;letter-spacing:.1em!important;text-transform:uppercase!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-detail-grid>div>strong{display:block!important;color:#fff!important;font-size:15px!important;line-height:1.35!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-detail-grid>div>small{display:block!important;margin-top:4px!important;color:#8fa5bf!important;font-size:12px!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-detail-grid>div>p{margin:0!important;color:#c7d5e6!important;font-size:13px!important;line-height:1.55!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-detail-wide{grid-column:1/-1!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-detail-actions{display:flex!important;justify-content:space-between!important;gap:10px!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-roster-dialog{width:min(600px,calc(100vw - 36px))!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-roster-body{display:grid!important;gap:9px!important;padding:22px 28px 8px!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-roster-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:13px 15px!important;border:1px solid #1f2d3d!important;border-radius:14px!important;background:#0c131c!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-roster-row strong{color:#fff!important;font-size:14px!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-roster-row small{color:#81d4ff!important;font-size:10px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important}
body.iema-staff-portal-page .iema-faculty-portal .iema-parent-week-roster-row.is-current{border-color:#3555d9!important;background:#101a29!important}


/* v0.14.549 — Faculty Today attendance/detail integration. */
body.iema-staff-portal-page .iema-faculty-view-today .iema-faculty-action-strip-v3{margin:0!important;border-radius:18px!important;border-color:#1f2b39!important;background:linear-gradient(180deg,#0d151f 0%,#091019 100%)!important}
body.iema-staff-portal-page .iema-faculty-today-class-modal .iema-faculty-today-class-detail{padding-bottom:14px!important}
body.iema-staff-portal-page .iema-faculty-today-class-modal .iema-faculty-today-attendance{margin:10px 22px 18px!important}
body.iema-staff-portal-page .iema-faculty-today-class-modal .iema-faculty-attendance-toolbar>div{display:grid!important;gap:4px!important}
body.iema-staff-portal-page .iema-faculty-today-class-modal .iema-faculty-attendance-toolbar>div>strong{color:#fff!important;font-size:14px!important}
@media(max-width:700px){body.iema-staff-portal-page .iema-faculty-today-class-modal .iema-faculty-today-attendance{margin:8px 14px 16px!important}}

/* =========================================================
   v0.14.550 — Faculty Today responsive parity with Parent/Dancer Today
   Prevent legacy Faculty desktop min-content sizing from widening the Today
   workspace on phones. Today now collapses as a true single-column mobile
   composition rather than a squeezed desktop grid.
   ========================================================= */
body.iema-staff-portal-page .iema-faculty-view-today,
body.iema-staff-portal-page .iema-faculty-view-today #faculty-today,
body.iema-staff-portal-page .iema-faculty-view-today .iema-faculty-day-v3{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.iema-staff-portal-page .iema-faculty-view-today .iema-faculty-day-v3{
  grid-template-columns:minmax(0,1fr)!important;
}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-hero,
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today,
body.iema-staff-portal-page .iema-faculty-view-today .iema-faculty-action-strip-v3,
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-hero-aside,
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-grid,
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-head,
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-heading,
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-dancers,
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-dancer{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-welcome,
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-card,
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-top,
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-label,
body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-period,
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-day-nav,
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-day-nav h2,
body.iema-staff-portal-page .iema-faculty-view-today .iema-faculty-action-strip-v3>div,
body.iema-staff-portal-page .iema-faculty-view-today .iema-faculty-action-buttons{
  min-width:0!important;
  box-sizing:border-box!important;
}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-day-nav h2{
  max-width:calc(100% - 88px)!important;
  overflow-wrap:anywhere!important;
  text-align:center!important;
}
body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-heading>p{
  width:100%!important;
  box-sizing:border-box!important;
}

@media(max-width:1050px){
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-hero{
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
  }
}
@media(max-width:700px){
  body.iema-staff-portal-page .iema-faculty-portal{
    overflow-x:hidden!important;
  }
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-summary-modal{padding:10px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-summary-dialog{width:100%!important;max-width:100%!important;max-height:94vh!important;border-radius:22px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-summary-modal-head,
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-summary-dancer-groups,
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-summary-actions{padding-left:18px!important;padding-right:18px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-summary-modal-head h2{font-size:28px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-week-row,
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-exception-row{grid-template-columns:58px minmax(0,1fr) 34px!important;gap:10px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-week-detail-body{padding:18px 18px 6px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-week-detail-grid{grid-template-columns:minmax(0,1fr)!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-week-detail-wide{grid-column:auto!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-week-detail-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-week-roster-body{padding:18px 18px 6px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-faculty-action-strip-v3{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-items:stretch!important;
    gap:12px!important;
    padding:16px!important;
  }
  body.iema-staff-portal-page .iema-faculty-view-today .iema-faculty-action-strip-v3 .iema-faculty-action-buttons{
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.iema-staff-portal-page .iema-faculty-view-today .iema-faculty-action-strip-v3 .iema-btn{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    white-space:normal!important;
  }
}
@media(max-width:620px){
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-hero{
    grid-template-columns:minmax(0,1fr)!important;
    padding:16px!important;
    border-radius:16px!important;
    gap:14px!important;
  }
  body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:9px!important;
  }
  body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-card{min-height:68px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today{
    padding:16px!important;
    border-radius:20px!important;
    margin-bottom:16px!important;
  }
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-dancers{
    grid-template-columns:minmax(0,1fr)!important;
  }
}
@media(max-width:560px){
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-welcome h2{font-size:21px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-day-nav{gap:7px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-day-nav-btn{flex-basis:32px!important;width:32px!important;height:32px!important;border-radius:9px!important;font-size:23px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-day-nav h2{
    max-width:calc(100% - 78px)!important;
    font-size:clamp(20px,6vw,27px)!important;
    line-height:1.12!important;
  }
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-nav-actions{margin-top:8px!important;gap:7px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-heading>p{margin-top:10px!important;font-size:13px!important;line-height:1.4!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-full-calendar-btn{min-width:145px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-availability{align-items:flex-start!important;flex-direction:column!important;gap:3px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-availability strong{text-align:left!important}
}
@media(max-width:420px){
  body.iema-staff-portal-page .iema-faculty-view-today .iema-parent-today-event-button{
    grid-template-columns:68px minmax(0,1fr) auto!important;
    gap:8px!important;
    padding-left:12px!important;
    padding-right:10px!important;
  }
  body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-card{column-gap:12px!important;border-radius:16px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .md-parent-glance-icon{width:40px!important;height:40px!important;border-radius:12px!important}
  body.iema-staff-portal-page .iema-faculty-view-today .iema-faculty-action-strip-v3 .iema-faculty-action-buttons{grid-template-columns:minmax(0,1fr)!important}
}

/* v0.14.553 — Apprentice Track ------------------------------------------------ */
.iema-owner-apprentice-page{width:100%;max-width:100%;min-width:0;padding:0;display:grid;gap:16px;overflow:hidden;box-sizing:border-box}
.iema-owner-apprentice-page>*{min-width:0;max-width:100%;box-sizing:border-box}
.iema-owner-apprentice-page>.iema-panel{width:100%;margin:0!important}
.iema-apprentice-hero{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;background:linear-gradient(135deg,rgba(19,31,49,.98),rgba(9,17,29,.98));border-color:#263d54}
.iema-apprentice-hero>div{min-width:0;flex:1 1 560px}.iema-apprentice-hero>.iema-btn{flex:0 0 auto}
.iema-owner-apprentice-page .iema-empty{background:#08121e!important;border:1px solid #25384c!important;color:#dceafb!important;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.iema-owner-apprentice-page .iema-empty strong{color:#f5f8ff!important}.iema-owner-apprentice-page .iema-empty span,.iema-owner-apprentice-page .iema-empty small{color:#9bb0c6!important}
.iema-apprentice-hero h2{margin:.15rem 0 .35rem}.iema-apprentice-hero p{margin:0;max-width:760px;color:#a9bed2}
.iema-apprentice-track-tabs{display:flex;gap:10px;overflow:auto;padding:2px 0 4px;scrollbar-width:thin}
.iema-apprentice-track-tabs>a{flex:0 0 min(310px,82vw);display:grid;gap:3px;padding:12px 14px;border:1px solid #26384b;border-radius:14px;background:#0b1522;color:#dceafb;text-decoration:none}
.iema-apprentice-track-tabs>a strong{font-size:14px}.iema-apprentice-track-tabs>a small{color:#8fa8c0;font-size:11px}.iema-apprentice-track-tabs>a.active{border-color:#22b8f4;box-shadow:inset 3px 0 #22b8f4}.iema-apprentice-track-tabs>a.is-archived{opacity:.58}
.iema-apprentice-subnav{margin:0!important}.iema-apprentice-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.iema-apprentice-overview-grid>.iema-panel{margin:0;min-width:0}
.iema-apprentice-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:16px}.iema-apprentice-kpis>div{padding:12px;border:1px solid #25384c;border-radius:12px;background:#08121e;display:grid;gap:2px}.iema-apprentice-kpis strong{font-size:20px;color:#f3f8ff}.iema-apprentice-kpis span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#87a2bc}
.iema-apprentice-person-list{display:grid;gap:8px;margin-top:12px}.iema-apprentice-person-list>div{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid #26384a;border-radius:12px;background:#0a1420}.iema-apprentice-person-list img{width:42px;height:42px;border-radius:50%;object-fit:cover;border:1px solid #3a5570}.iema-apprentice-person-list span{display:grid}.iema-apprentice-person-list small{color:#8ea7bf}
.iema-apprentice-rule-list,.iema-apprentice-session-list{display:grid;gap:8px;margin-top:12px}.iema-apprentice-rule-list>div,.iema-apprentice-session-list>div{display:flex;align-items:center;gap:11px;padding:10px;border:1px solid #26384a;border-radius:12px;background:#0a1420}.iema-apprentice-rule-list>div>b{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#141d44;border:1px solid #4053a0;color:#7fd7ff}.iema-apprentice-rule-list span,.iema-apprentice-session-list span{display:grid;gap:2px}.iema-apprentice-rule-list small,.iema-apprentice-session-list small{color:#91a9bf}
.iema-apprentice-session-list time{display:grid;min-width:46px}.iema-apprentice-session-list time b{color:#7fd7ff}.iema-apprentice-session-list time small{color:#7894ae}
.iema-apprentice-editor-modal .iema-create-modal-dialog{width:min(1080px,calc(100vw - 28px));max-height:min(92vh,920px);overflow:auto}
.iema-apprentice-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.iema-apprentice-form-wide{grid-column:1/-1}.iema-apprentice-form-grid label{min-width:0}.iema-apprentice-form-grid textarea{min-height:88px}
.iema-apprentice-assignment-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.iema-apprentice-assignment-grid fieldset{border:1px solid #2a4055;border-radius:14px;padding:12px;min-width:0}.iema-apprentice-assignment-grid legend{padding:0 6px;color:#b8d1e8;font-weight:800}.iema-apprentice-checkbox-list{display:grid;gap:7px;max-height:260px;overflow:auto}.iema-apprentice-checkbox-list>label{display:flex;align-items:center;gap:9px;padding:8px;border:1px solid #26384b;border-radius:10px;background:#09131f;cursor:pointer}.iema-apprentice-checkbox-list input{width:auto!important;margin:0}.iema-apprentice-checkbox-list img{width:34px;height:34px;border-radius:50%;object-fit:cover}.iema-apprentice-checkbox-list span{display:grid}.iema-apprentice-checkbox-list small{color:#849db5}
.iema-apprentice-schedule-builder{margin-top:8px;padding-top:16px;border-top:1px solid #26394d}.iema-apprentice-rule-row{display:grid;grid-template-columns:1.05fr .8fr .8fr 1.1fr 1.25fr 1.45fr auto;gap:8px;align-items:end;padding:10px 0;border-bottom:1px solid #1e3041}.iema-apprentice-rule-row label{min-width:0}.iema-apprentice-rule-row input,.iema-apprentice-rule-row select{min-width:0}.iema-apprentice-remove-rule{width:38px;height:38px;border:1px solid #5d3140;border-radius:10px;background:#281019;color:#ff8fa2;font-size:20px;cursor:pointer}
.iema-apprentice-date-filter{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:12px 0 16px}.iema-apprentice-date-filter label{display:grid;gap:4px;color:#91aac1;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.iema-apprentice-date-filter input{min-width:155px}
.iema-apprentice-attendance-sessions{display:grid;gap:10px}.iema-apprentice-attendance-session{border:1px solid #293c50;border-radius:14px;background:#09131f;overflow:hidden}.iema-apprentice-attendance-session>summary{list-style:none;display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;cursor:pointer}.iema-apprentice-attendance-session>summary::-webkit-details-marker{display:none}.iema-apprentice-attendance-session>summary time,.iema-apprentice-attendance-session>summary span{display:grid}.iema-apprentice-attendance-session>summary time b{color:#7ed8ff}.iema-apprentice-attendance-session>summary time small,.iema-apprentice-attendance-session>summary span small{color:#869fb7}.iema-apprentice-attendance-session>summary em{font-style:normal;color:#9fb6cb;font-size:12px}.iema-apprentice-attendance-session[open]>summary{border-bottom:1px solid #293c50;background:#0d1926}.iema-apprentice-attendance-session>.iema-apprentice-attendance{padding:12px}.iema-apprentice-attendance-session>.iema-inline-delete{padding:0 12px 12px}
.iema-apprentice-attendance .iema-attendance-roster{display:grid;gap:9px;margin-top:12px}.iema-apprentice-selfcheck{color:#6fe4b0!important;font-weight:700;margin-top:4px}.iema-apprentice-attendance .iema-faculty-attendance-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.iema-apprentice-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.iema-apprentice-report-grid>article{padding:14px;border:1px solid #293d51;border-radius:14px;background:#09131f}.iema-apprentice-report-grid header{display:flex;align-items:center;gap:10px}.iema-apprentice-report-grid header img{width:46px;height:46px;border-radius:50%;object-fit:cover}.iema-apprentice-report-grid header span{display:grid}.iema-apprentice-report-grid header small{color:#8ea6bd}.iema-apprentice-report-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:12px}.iema-apprentice-report-stats>div{display:grid;text-align:center;padding:8px 4px;border:1px solid #24374a;border-radius:9px;background:#07101a}.iema-apprentice-report-stats b{font-size:17px}.iema-apprentice-report-stats span{font-size:9px;text-transform:uppercase;color:#819bb2}.iema-apprentice-goal{margin-top:12px;display:grid;gap:6px;color:#a9bfd2;font-size:12px}.iema-apprentice-goal>div{height:8px;border-radius:99px;background:#172536;overflow:hidden}.iema-apprentice-goal i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#5e27d8,#1fc5ff)}
.iema-apprentice-session-modal .iema-create-modal-dialog{width:min(850px,calc(100vw - 26px))}.iema-apprentice-detail-grid{margin-bottom:14px}.iema-apprentice-checkin-card{display:grid;gap:7px;padding:14px;border:1px solid #31506a;border-radius:14px;background:#0a1724}.iema-apprentice-checkin-card>span{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#8aa6bf;font-weight:800}.iema-apprentice-checkin-card>strong{font-size:18px}.iema-apprentice-checkin-card .iema-btn{justify-self:start}.iema-apprentice-checkin-card .iema-btn.is-complete{background:#14523e;border-color:#2b9972}.iema-apprentice-checkin-card small{color:#91a8be}.iema-apprentice-exception-callout{display:grid;gap:3px;margin:0 0 12px;padding:12px;border-radius:12px;border:1px solid #7f2434;background:#351018;color:#ffd7dd}.iema-apprentice-exception-callout small{color:#f1aab5}.iema-apprentice-today-item{box-shadow:inset 4px 0 #8f5cff}.iema-apprentice-today-item time b{color:#bba6ff}

@media(max-width:900px){
 .iema-owner-apprentice-page{padding:0 10px}.iema-apprentice-hero{align-items:flex-start;flex-direction:column}.iema-apprentice-hero>.iema-btn{width:100%}.iema-apprentice-overview-grid,.iema-apprentice-report-grid{grid-template-columns:1fr}.iema-apprentice-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.iema-apprentice-assignment-grid{grid-template-columns:1fr}.iema-apprentice-rule-row{grid-template-columns:1fr 1fr}.iema-apprentice-rule-row .iema-apprentice-remove-rule{grid-column:2;justify-self:end}.iema-apprentice-kpis{grid-template-columns:1fr 1fr}.iema-apprentice-report-stats{grid-template-columns:repeat(5,minmax(52px,1fr));overflow:auto}
}
@media(max-width:560px){
 .iema-apprentice-form-grid{grid-template-columns:1fr}.iema-apprentice-form-wide{grid-column:auto}.iema-apprentice-rule-row{grid-template-columns:1fr}.iema-apprentice-rule-row .iema-apprentice-remove-rule{grid-column:auto;justify-self:end}.iema-apprentice-attendance-session>summary{grid-template-columns:54px minmax(0,1fr)}.iema-apprentice-attendance-session>summary em{grid-column:2}.iema-apprentice-date-filter{display:grid;grid-template-columns:1fr 1fr}.iema-apprentice-date-filter .iema-btn{grid-column:1/-1}.iema-apprentice-date-filter input{min-width:0;width:100%}.iema-apprentice-attendance .iema-faculty-attendance-toolbar{align-items:flex-start;flex-direction:column}.iema-apprentice-attendance .iema-faculty-attendance-toolbar .iema-btn{width:100%}.iema-apprentice-report-stats{grid-template-columns:repeat(3,1fr);overflow:visible}.iema-apprentice-editor-modal .iema-create-modal-dialog{width:calc(100vw - 14px);max-height:95vh}
}
.iema-apprentice-hours-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:9px 10px;border:1px solid #24374a;border-radius:10px;background:#07101a;color:#91a9bf;font-size:11px}.iema-apprentice-hours-row strong{color:#eaf5ff;font-size:13px}

/* v0.14.555 — Apprentice Track people picker polish ------------------------- */
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-assignment-grid{
  gap:16px!important;
  margin:20px 0 22px!important;
}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-assignment-grid fieldset{
  min-width:0!important;
  margin:0!important;
  padding:14px!important;
  border:1px solid #2a4055!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#0b1623 0%,#08121d 100%)!important;
  box-shadow:0 10px 26px rgba(0,0,0,.16)!important;
}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-assignment-grid legend{
  padding:0 8px!important;
  color:#c8dcf0!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.2!important;
}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list{
  display:grid!important;
  gap:8px!important;
  max-height:324px!important;
  min-width:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  padding:2px 5px 2px 0!important;
  scrollbar-width:thin!important;
  scrollbar-color:#40566d transparent!important;
  overscroll-behavior:contain!important;
}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list::-webkit-scrollbar{width:7px!important}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list::-webkit-scrollbar-track{background:transparent!important}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list::-webkit-scrollbar-thumb{background:#40566d!important;border-radius:999px!important}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list>label{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) 22px!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  gap:12px!important;
  min-width:0!important;
  min-height:66px!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid #263b50!important;
  border-radius:13px!important;
  background:#0a1623!important;
  color:#edf7ff!important;
  cursor:pointer!important;
  box-sizing:border-box!important;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list>label:hover{
  border-color:#3d6788!important;
  background:#0d1b2a!important;
  transform:translateY(-1px)!important;
}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list>label:has(input:checked){
  border-color:#2ebcff!important;
  background:linear-gradient(180deg,rgba(24,84,119,.30),rgba(12,35,53,.72))!important;
  box-shadow:inset 3px 0 #25b9f5,0 0 0 1px rgba(37,185,245,.08)!important;
}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list img{
  grid-column:1!important;
  grid-row:1!important;
  display:block!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  margin:0!important;
  border:2px solid rgba(255,255,255,.12)!important;
  border-radius:999px!important;
  object-fit:cover!important;
  box-shadow:0 4px 14px rgba(0,0,0,.24)!important;
}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list span{
  grid-column:2!important;
  grid-row:1!important;
  display:block!important;
  min-width:0!important;
  margin:0!important;
  text-align:left!important;
}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list strong{
  display:block!important;
  margin:0!important;
  color:#f7fbff!important;
  font-size:14px!important;
  font-weight:750!important;
  line-height:1.25!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list small{
  display:block!important;
  margin-top:3px!important;
  color:#91a8bf!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.3!important;
  white-space:normal!important;
}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list input[type="checkbox"]{
  grid-column:3!important;
  grid-row:1!important;
  justify-self:end!important;
  align-self:center!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  margin:0!important;
  padding:0!important;
  accent-color:#20b7f4!important;
  cursor:pointer!important;
}
body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list>label:focus-within{
  outline:2px solid rgba(46,188,255,.42)!important;
  outline-offset:2px!important;
}
@media(max-width:900px){
  body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list{max-height:300px!important}
}
@media(max-width:560px){
  body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-assignment-grid{gap:14px!important}
  body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-assignment-grid fieldset{padding:11px!important}
  body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list>label{grid-template-columns:40px minmax(0,1fr) 22px!important;min-height:62px!important;padding:9px 10px!important;gap:10px!important}
  body.iema-owner-portal-page .iema-apprentice-editor-modal .iema-apprentice-checkbox-list img{width:40px!important;height:40px!important;min-width:40px!important}
}

/* v0.14.556 — Apprentice check-in modal parity + resilient detail layout ----- */
.iema-apprentice-session-modal .iema-apprentice-detail-grid{
 display:grid!important;
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
 gap:12px!important;
 margin:0 0 14px!important;
}
.iema-apprentice-session-modal .iema-apprentice-detail-grid>div{
 min-width:0!important;
 padding:14px 16px!important;
 border:1px solid #1f2d3d!important;
 border-radius:14px!important;
 background:linear-gradient(180deg,#0e1621 0%,#0a1119 100%)!important;
}
.iema-apprentice-session-modal .iema-apprentice-detail-grid>div>span{
 display:block!important;
 margin:0 0 6px!important;
 color:#7690ad!important;
 font-size:10px!important;
 font-weight:900!important;
 letter-spacing:.1em!important;
 line-height:1.2!important;
 text-transform:uppercase!important;
}
.iema-apprentice-session-modal .iema-apprentice-detail-grid>div>strong{
 display:block!important;
 color:#fff!important;
 font-size:15px!important;
 font-weight:800!important;
 line-height:1.35!important;
 overflow-wrap:anywhere!important;
}
.iema-apprentice-session-modal .iema-apprentice-detail-grid>div>p{
 margin:0!important;
 color:#c7d5e6!important;
 font-size:13px!important;
 line-height:1.55!important;
}
.iema-apprentice-session-modal .iema-apprentice-detail-grid>.iema-parent-week-detail-wide{grid-column:1/-1!important}
.iema-apprentice-session-modal .iema-apprentice-checkin-card{
 margin-top:4px!important;
 padding:16px!important;
 border-color:#31506a!important;
 background:linear-gradient(180deg,#0b1a28 0%,#09131f 100%)!important;
}
@media(max-width:700px){
 .iema-apprentice-session-modal .iema-apprentice-detail-grid{grid-template-columns:minmax(0,1fr)!important;gap:9px!important}
 .iema-apprentice-session-modal .iema-apprentice-detail-grid>.iema-parent-week-detail-wide{grid-column:auto!important}
 .iema-apprentice-session-modal .iema-apprentice-detail-grid>div{padding:12px 13px!important}
}

/* v0.14.557 — Apprentice Owner overview: one coherent workspace -------------- */
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-overview{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:16px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-track-summary{
  width:100%!important;
  margin:0!important;
  padding:22px!important;
  border:1px solid #26394d!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#0d1723 0%,#0a131d 100%)!important;
  box-shadow:none!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-track-head{
  margin:0!important;
  align-items:flex-start!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-track-head h3{
  margin:5px 0 4px!important;
  color:#f7fbff!important;
  font-size:24px!important;
  line-height:1.15!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-track-head p,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-track-description{
  margin:0!important;
  color:#9eb2c6!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-track-description{
  margin-top:14px!important;
  max-width:920px!important;
  line-height:1.55!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-kpis{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  margin:18px 0 0!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-kpis>div{
  min-width:0!important;
  padding:13px 14px!important;
  border:1px solid #263b50!important;
  border-radius:13px!important;
  background:#08131f!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-kpis strong{
  color:#f8fbff!important;
  font-size:22px!important;
  line-height:1!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-kpis span{
  margin-top:5px!important;
  color:#8da5bc!important;
  font-size:10px!important;
  font-weight:800!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-overview-section{
  display:grid!important;
  gap:14px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:20px!important;
  border:1px solid #26394d!important;
  border-radius:16px!important;
  background:#0a121c!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-section-title{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:16px!important;
  min-width:0!important;
  padding:0 2px 13px!important;
  border-bottom:1px solid #213247!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-section-title>div{min-width:0!important}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-section-title h3{
  margin:4px 0 0!important;
  color:#f5f9ff!important;
  font-size:19px!important;
  line-height:1.2!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-section-title>small{
  flex:0 0 auto!important;
  color:#88a0b7!important;
  font-size:11px!important;
  white-space:nowrap!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-people-grid,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-schedule-overview-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  width:100%!important;
  min-width:0!important;
  align-items:start!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-schedule-overview-grid{
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-overview-card{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:16px!important;
  border:1px solid #24374b!important;
  border-radius:14px!important;
  background:#08131f!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-card-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  min-height:24px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-card-head>b{
  display:grid!important;
  place-items:center!important;
  min-width:28px!important;
  height:24px!important;
  padding:0 8px!important;
  border:1px solid #29445b!important;
  border-radius:999px!important;
  background:#0d1d2b!important;
  color:#8fdcff!important;
  font-size:11px!important;
  line-height:1!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-person-list,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-rule-list,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-session-list{
  margin-top:12px!important;
  gap:8px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-person-list>div,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-rule-list>div,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-session-list>div{
  min-width:0!important;
  padding:10px 11px!important;
  border:1px solid #26394d!important;
  border-radius:12px!important;
  background:#0b1724!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-person-list img{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-person-list span,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-rule-list span,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-session-list span{
  min-width:0!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-person-list strong,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-rule-list strong,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-session-list strong{
  color:#f3f8ff!important;
  overflow-wrap:anywhere!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-person-list small,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-rule-list small,
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-session-list small{
  color:#8fa6bc!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-rule-list>div>b{
  flex:0 0 42px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-session-list time{
  flex:0 0 52px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-overview-card .iema-empty{
  min-height:64px!important;
  margin:12px 0 0!important;
  padding:12px!important;
  border-style:dashed!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-archive{
  margin:0!important;
  padding:2px 0 0!important;
  display:flex!important;
  justify-content:flex-end!important;
}
@media(max-width:980px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-schedule-overview-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
}
@media(max-width:760px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-track-summary,
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-overview-section{
    padding:15px!important;
    border-radius:14px!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-track-head,
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-section-title{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-track-head>.iema-btn{
    width:100%!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-people-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-schedule-overview-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-overview-card{
    padding:13px!important;
  }
}
@media(max-width:460px){
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-kpis{gap:8px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-kpis>div{padding:11px!important}
  body.iema-owner-portal-page .iema-owner-shell .iema-owner-apprentice-page .iema-apprentice-track-head h3{font-size:21px!important}
}

/* Working Production 5 v0.14.563 — Owner Faculty Pay: submitted Daily Work is immediately visible for review. */
.iema-pay-awaiting-review{margin:16px 0 18px;padding:16px;border:1px solid rgba(250,204,21,.28);border-radius:18px;background:linear-gradient(180deg,rgba(120,53,15,.18),rgba(12,24,34,.72));box-shadow:0 14px 34px rgba(0,0,0,.16)}
.iema-pay-awaiting-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.iema-pay-awaiting-head>div{min-width:0}.iema-pay-awaiting-head h3{margin:2px 0 4px;color:#fff;font-size:18px}.iema-pay-awaiting-head p{margin:0;color:#c7d7e3;font-size:12px;line-height:1.5}.iema-pay-awaiting-list{display:grid;gap:10px}.iema-pay-awaiting-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:14px;border:1px solid rgba(148,163,184,.18);border-radius:14px;background:rgba(7,17,27,.8)}.iema-pay-awaiting-copy{display:grid;gap:3px;min-width:0}.iema-pay-awaiting-copy>span{font-size:9px;font-weight:900;letter-spacing:.09em;color:#fde68a}.iema-pay-awaiting-copy>strong{font-size:15px;color:#f8fbff}.iema-pay-awaiting-copy>small{font-size:11px;color:#9fb2c4}.iema-pay-awaiting-entry{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:7px;padding-top:7px;border-top:1px solid rgba(148,163,184,.12)}.iema-pay-awaiting-entry b{font-size:11px;color:#dceaf4}.iema-pay-awaiting-entry em{font-style:normal;font-size:10px;color:#8fa4b5}.iema-pay-awaiting-actions{display:grid;justify-items:end;gap:8px;min-width:150px}.iema-pay-awaiting-actions>b{font-size:11px;color:#9ee8ff}.iema-pay-awaiting-actions form{margin:0}.iema-pay-awaiting-actions small{font-size:10px;color:#fcd34d}.iema-pay-time-review>summary .iema-count-chip{margin-left:8px}
@media(max-width:700px){.iema-pay-awaiting-review{padding:13px;margin:12px 0 16px}.iema-pay-awaiting-head{display:grid;gap:8px}.iema-pay-awaiting-head .iema-count-chip{justify-self:start}.iema-pay-awaiting-card{grid-template-columns:1fr;gap:12px}.iema-pay-awaiting-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-items:stretch;min-width:0}.iema-pay-awaiting-actions>b{align-self:center}.iema-pay-awaiting-actions form{justify-self:end}.iema-pay-awaiting-actions .iema-btn{width:auto;min-width:96px}}

.iema-pay-awaiting-action-row{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.iema-pay-awaiting-action-row form{margin:0}.iema-work-correction-pop{position:relative}.iema-work-correction-pop>summary{list-style:none;cursor:pointer}.iema-work-correction-pop>summary::-webkit-details-marker{display:none}.iema-work-correction-pop .iema-reimbursement-correction-form{right:0;left:auto;z-index:20}
@media(max-width:700px){.iema-pay-awaiting-action-row{justify-content:flex-end}.iema-work-correction-pop .iema-reimbursement-correction-form{position:fixed!important;left:12px!important;right:12px!important;bottom:calc(82px + env(safe-area-inset-bottom))!important;top:auto!important;width:auto!important;max-width:none!important}}

/* MyDancer 0.15.0-dev.592 — Emergency Contacts isolated two-column card */
.iema-emergency-contacts-panel{max-width:100%!important;overflow:hidden!important;box-sizing:border-box!important}
/* Parent Portal: emergency details stay compact until the parent explicitly opens them. */
body.iema-parent-portal-page .iema-emergency-contacts-collapsible{margin:0!important;padding:0!important;border:0!important;border-top:1px solid #1f2b39!important;border-radius:0!important;background:#090f17!important;box-shadow:none!important}
body.iema-parent-portal-page .iema-emergency-collapse-summary{list-style:none!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:100%!important;min-height:54px!important;padding:10px 14px!important;cursor:pointer!important;user-select:none!important;background:#090f17!important;color:#f4f8fc!important}
body.iema-parent-portal-page .iema-emergency-collapse-summary::-webkit-details-marker{display:none!important}
body.iema-parent-portal-page .iema-emergency-collapse-summary::marker{content:""}
body.iema-parent-portal-page .iema-emergency-collapse-summary>span{display:grid!important;grid-template-columns:auto 1fr!important;align-items:baseline!important;column-gap:9px!important;row-gap:1px!important;min-width:0!important}
body.iema-parent-portal-page .iema-emergency-collapse-summary .iema-kicker{grid-column:1!important;grid-row:1!important;margin:0!important;font-size:8px!important}
body.iema-parent-portal-page .iema-emergency-collapse-summary strong{grid-column:2!important;grid-row:1!important;color:#f4f8fc!important;font-size:13px!important;font-weight:900!important;line-height:1.2!important}
body.iema-parent-portal-page .iema-emergency-collapse-summary small{grid-column:1/-1!important;grid-row:2!important;color:#8495a8!important;font-size:10px!important;font-weight:700!important}
body.iema-parent-portal-page .iema-emergency-collapse-summary>b{flex:0 0 auto!important;color:#79cfff!important;font-size:18px!important;font-weight:800!important;line-height:1!important;transition:transform .16s ease!important}
body.iema-parent-portal-page .iema-emergency-contacts-collapsible[open]>.iema-emergency-collapse-summary>b{transform:rotate(180deg)!important}
body.iema-parent-portal-page .iema-emergency-collapse-summary:hover,body.iema-parent-portal-page .iema-emergency-collapse-summary:focus-visible{outline:none!important;background:#0e1722!important}
body.iema-parent-portal-page .iema-emergency-collapse-body{padding:14px!important;border-top:1px solid #1f2b39!important;background:#0b121b!important}
body.iema-parent-portal-page .iema-emergency-section-head-collapsed{margin:0 0 12px!important}
body.iema-parent-portal-page .iema-emergency-section-head-collapsed p{margin:0!important}
.iema-emergency-section-head{align-items:center!important}
.iema-emergency-section-head>div{min-width:0!important}
.iema-emergency-add{flex:0 0 auto!important;white-space:nowrap!important}
.iema-emergency-saved{margin:0 0 14px!important}
.iema-emergency-contact-list{display:grid!important;gap:12px!important;min-width:0!important;width:100%!important;box-sizing:border-box!important}
.iema-emergency-contact-card{display:grid!important;grid-template-columns:minmax(230px,290px) minmax(0,1fr)!important;gap:0!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;border:1px solid #2b3c50!important;border-radius:16px!important;background:#0b121b!important;overflow:hidden!important}
.iema-emergency-contact-card.iema-emergency-contact-primary{border-left:4px solid #46c8ff!important}
.iema-emergency-contact-card.iema-emergency-contact-secondary{border-left:4px solid #7892ae!important}
.iema-emergency-contact-card.iema-emergency-contact-backup{border-left:4px solid #5e6c7e!important}
.iema-emergency-contact-summary{display:grid!important;align-content:start!important;gap:14px!important;min-width:0!important;padding:16px!important;background:rgba(255,255,255,.025)!important;border-right:1px solid #263648!important;box-sizing:border-box!important}
.iema-emergency-summary-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;min-width:0!important}
.iema-emergency-priority-badge{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:27px!important;padding:5px 10px!important;border-radius:999px!important;background:rgba(70,200,255,.10)!important;border:1px solid rgba(70,200,255,.35)!important;color:#9bdfff!important;font-size:10px!important;font-weight:900!important;letter-spacing:.09em!important;line-height:1!important;text-transform:uppercase!important;white-space:nowrap!important}
.iema-emergency-contact-secondary .iema-emergency-priority-badge{background:rgba(120,146,174,.12)!important;border-color:rgba(120,146,174,.34)!important;color:#c6d3e0!important}
.iema-emergency-contact-backup .iema-emergency-priority-badge{background:rgba(94,108,126,.14)!important;border-color:rgba(125,141,161,.28)!important;color:#bac7d5!important}
.iema-emergency-edit{flex:0 0 auto!important;min-height:31px!important;padding:6px 10px!important;font-size:11px!important}
.iema-emergency-person{display:grid!important;gap:4px!important;min-width:0!important}
.iema-emergency-person strong{display:block!important;color:#f5f8fc!important;font-size:18px!important;line-height:1.2!important;overflow-wrap:anywhere!important}
.iema-emergency-person>span{display:block!important;color:#9cacc0!important;font-size:13px!important;font-weight:700!important;line-height:1.35!important}
.iema-emergency-linked-badge{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;column-gap:7px!important;row-gap:2px!important;align-items:center!important;width:100%!important;max-width:100%!important;padding:9px 10px!important;box-sizing:border-box!important;border-radius:11px!important;background:rgba(47,171,107,.08)!important;border:1px solid rgba(63,193,123,.20)!important;color:#8ad9ae!important;font-size:11px!important;font-weight:800!important;line-height:1.25!important}
.iema-emergency-linked-badge>span:first-child{grid-row:1 / span 2!important}
.iema-emergency-linked-badge small{grid-column:2!important;color:#aebdca!important;font-size:10px!important;font-weight:700!important;overflow-wrap:anywhere!important}
.iema-emergency-contact-body{display:grid!important;align-content:start!important;gap:12px!important;min-width:0!important;padding:16px 18px!important;box-sizing:border-box!important}
.iema-emergency-contact-details{display:grid!important;grid-template-columns:repeat(3,minmax(150px,1fr))!important;gap:10px!important;min-width:0!important}
.iema-emergency-detail{display:grid!important;gap:5px!important;min-width:0!important;padding:10px 12px!important;border:1px solid rgba(148,163,184,.15)!important;border-radius:11px!important;background:rgba(255,255,255,.025)!important;box-sizing:border-box!important}
.iema-emergency-detail small,.iema-emergency-notes small{display:block!important;color:#8295aa!important;font-size:9px!important;font-weight:900!important;letter-spacing:.08em!important;text-transform:uppercase!important;line-height:1.2!important}
.iema-emergency-detail a{display:block!important;color:#e7f2ff!important;font-size:14px!important;font-weight:800!important;line-height:1.35!important;text-decoration:none!important;overflow-wrap:anywhere!important}
.iema-emergency-detail a:hover{color:#8bd9ff!important}
.iema-emergency-notes{display:grid!important;gap:5px!important;padding:10px 12px!important;border-radius:11px!important;background:rgba(255,255,255,.02)!important;border:1px solid rgba(148,163,184,.10)!important}
.iema-emergency-notes p{margin:0!important;color:#b4c0cf!important;line-height:1.45!important;white-space:pre-wrap!important}
.iema-emergency-quick-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
.iema-emergency-quick-actions .iema-btn{min-height:32px!important;padding:6px 11px!important;font-size:11px!important;white-space:nowrap!important}
.iema-emergency-edit-dialog{max-width:680px!important}
@media(max-width:1050px){.iema-emergency-contact-card{grid-template-columns:minmax(210px,250px) minmax(0,1fr)!important}.iema-emergency-contact-details{grid-template-columns:repeat(2,minmax(0,1fr))!important}.iema-emergency-detail:last-child:nth-child(odd){grid-column:1/-1!important}}
@media(max-width:720px){.iema-emergency-section-head{align-items:flex-start!important;flex-direction:column!important}.iema-emergency-add{width:100%!important}.iema-emergency-contact-card{grid-template-columns:1fr!important}.iema-emergency-contact-summary{border-right:0!important;border-bottom:1px solid #263648!important}.iema-emergency-contact-details{grid-template-columns:1fr!important}.iema-emergency-detail:last-child:nth-child(odd){grid-column:auto!important}.iema-emergency-quick-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}.iema-emergency-quick-actions .iema-btn{width:100%!important}}

/* MyDancer 0.15.0-dev.590 — product version/build presentation */
.iema-account-label .iema-build-version{display:inline-block;margin-left:5px;color:var(--md3-muted,#93a3b8)!important;font-size:8px!important;font-weight:800!important;letter-spacing:.04em!important;white-space:nowrap!important;text-transform:none!important}
@media(max-width:680px){.iema-account-label .iema-build-version{display:block!important;margin:2px 0 0!important;font-size:7px!important}}


/* MyDancer 0.15.0-dev.593 — Emergency Contacts detail-grid overflow fix */
.iema-emergency-contact-body,.iema-emergency-contact-details,.iema-emergency-detail,.iema-emergency-detail a{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
.iema-emergency-contact-details{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:100%!important}
.iema-emergency-detail-email{grid-column:1/-1!important}
.iema-emergency-detail a{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important}
@media(max-width:820px){.iema-emergency-contact-details{grid-template-columns:1fr!important}.iema-emergency-detail-email{grid-column:auto!important}}


/* MyDancer 0.15.0-dev.595 — Master Calendar day-first interaction + visual hierarchy */
body.iema-owner-portal-page .iema-master-calendar-workspace .iema-calendar-day[data-iema-day-view]{cursor:pointer!important;background:#0b1018!important;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease!important}
body.iema-owner-portal-page .iema-master-calendar-workspace .iema-calendar-day[data-iema-day-view]:hover{background:#101824!important;border-color:#34516e!important;box-shadow:inset 0 0 0 1px rgba(84,174,230,.08)!important}
body.iema-owner-portal-page .iema-master-calendar-workspace .iema-calendar-day>strong{font-size:13px!important;font-weight:700!important;color:#dbe5ef!important;letter-spacing:0!important}
body.iema-owner-portal-page .iema-master-calendar-workspace .iema-calendar-event[data-master-type]{display:block!important;padding:4px 6px!important;border:1px solid hsl(var(--iema-category-hue,210) 55% 46% / .38)!important;border-left:3px solid hsl(var(--iema-category-hue,210) 82% 62%)!important;border-radius:6px!important;background:hsl(var(--iema-category-hue,210) 38% 18% / .70)!important;box-shadow:none!important;color:#eef4fa!important;text-decoration:none!important}
body.iema-owner-portal-page .iema-master-calendar-workspace .iema-calendar-event[data-master-type]:hover,body.iema-owner-portal-page .iema-master-calendar-workspace .iema-calendar-event[data-master-type]:focus{background:hsl(var(--iema-category-hue,210) 42% 22% / .82)!important;border-color:hsl(var(--iema-category-hue,210) 66% 58% / .60)!important}
body.iema-owner-portal-page .iema-master-calendar-workspace .iema-calendar-event-copy{display:flex!important;align-items:baseline!important;gap:5px!important;min-width:0!important;color:#eaf1f8!important;font-size:10.5px!important;line-height:1.25!important;font-weight:500!important;text-shadow:none!important}
body.iema-owner-portal-page .iema-master-calendar-workspace .iema-master-event-time{flex:0 0 auto!important;color:#aab9c8!important;font-size:9px!important;font-weight:650!important;font-variant-numeric:tabular-nums!important}
body.iema-owner-portal-page .iema-master-calendar-workspace .iema-master-event-title{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#f4f7fb!important;font-weight:600!important}
body.iema-owner-portal-page .iema-master-calendar-workspace .iema-master-more{color:#8fa1b5!important;font-size:9px!important;font-weight:650!important;padding:3px 2px!important}
body.iema-owner-portal-page .iema-master-calendar-workspace .iema-master-calendar-status strong{font-weight:700!important}
.iema-day-view-event-meta{display:block!important;margin-top:3px!important;color:#8295aa!important;font-size:10px!important;font-weight:500!important;line-height:1.3!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
body.iema-owner-portal-page .iema-day-view-event-detail{cursor:pointer!important;text-align:left!important;color:inherit!important;font:inherit!important;width:100%!important}
body.iema-owner-portal-page .iema-day-view-event-detail:hover{border-color:#365a7b!important;background:#101b29!important}
body.iema-owner-portal-page .iema-day-view-copy small{font-weight:700!important}
body.iema-owner-portal-page .iema-day-view-copy strong{font-weight:650!important}
@media(max-width:720px){body.iema-owner-portal-page .iema-master-calendar-workspace .iema-calendar-event-copy{display:block!important}body.iema-owner-portal-page .iema-master-calendar-workspace .iema-master-event-time{display:block!important;margin-bottom:1px!important}body.iema-owner-portal-page .iema-day-view-event-meta{white-space:normal!important}}


/* MyDancer 0.15.0-dev.602 — Owner Master Calendar Day View modal isolation
   Keep the proven 598/601 click path. Only isolate/center the Day View presentation
   so WordPress/theme semantic section/header/footer rules cannot recolor or offset it. */
body.iema-owner-portal-page .iema-master-inline-day-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  display:block!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
}
body.iema-owner-portal-page .iema-master-inline-day-modal>.iema-day-view-backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(0,0,0,.82)!important;
  backdrop-filter:blur(10px)!important;
}
body.iema-owner-portal-page .iema-master-inline-day-modal>.iema-master-day-view-dialog{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  z-index:1!important;
  width:min(760px,calc(100vw - 48px))!important;
  max-width:760px!important;
  max-height:calc(100dvh - 48px)!important;
  margin:0!important;
  padding:0!important;
  overflow:auto!important;
  box-sizing:border-box!important;
  background:linear-gradient(180deg,#0d1520 0%,#080d14 100%)!important;
  border:1px solid #29415b!important;
  border-radius:24px!important;
  box-shadow:0 36px 110px rgba(0,0,0,.68)!important;
  color:#f5f8ff!important;
}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-head{
  position:sticky!important;
  top:0!important;
  z-index:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  padding:22px 24px!important;
  margin:0!important;
  background:rgba(10,16,25,.97)!important;
  border-bottom:1px solid #223247!important;
  backdrop-filter:blur(12px)!important;
}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-head>div{min-width:0!important}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-head span{
  display:block!important;
  color:var(--md2-blue-soft,#69d2ff)!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  line-height:1.2!important;
}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-head h2{
  margin:4px 0 0!important;
  color:#fff!important;
  font-size:28px!important;
  font-weight:800!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-close{
  flex:0 0 44px!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:13px!important;
  border:1px solid #30445c!important;
  background:#111b28!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:29px!important;
  font-weight:400!important;
  line-height:1!important;
  cursor:pointer!important;
}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-body{
  display:grid!important;
  gap:10px!important;
  padding:20px 24px!important;
  margin:0!important;
  background:transparent!important;
}
body.iema-owner-portal-page .iema-master-inline-day-modal button.iema-master-inline-day-event{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:grid!important;
  grid-template-columns:112px minmax(0,1fr) 24px!important;
  align-items:center!important;
  gap:16px!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:15px 16px!important;
  text-align:left!important;
  color:#f5f8ff!important;
  background:#0b121b!important;
  border:1px solid #223349!important;
  border-radius:15px!important;
  box-shadow:none!important;
  font:inherit!important;
  cursor:pointer!important;
}
body.iema-owner-portal-page .iema-master-inline-day-modal button.iema-master-inline-day-event:hover,
body.iema-owner-portal-page .iema-master-inline-day-modal button.iema-master-inline-day-event:focus-visible{
  background:#101b29!important;
  border-color:#365a7b!important;
  outline:none!important;
}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-time strong{color:#7bdcff!important;font-size:14px!important;font-weight:800!important}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-time span{color:#8093ab!important;font-size:10px!important;font-weight:600!important}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-copy{display:grid!important;gap:4px!important;min-width:0!important}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-copy small{color:#7589a3!important;font-size:9px!important;font-weight:800!important;letter-spacing:.08em!important;text-transform:uppercase!important}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-copy strong{color:#f5f8ff!important;font-size:15px!important;font-weight:650!important;line-height:1.3!important;overflow-wrap:anywhere!important}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-event-meta{color:#8295aa!important;font-size:10px!important;font-weight:500!important}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-detail-arrow{color:#6c8199!important;font-size:25px!important;line-height:1!important}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-empty{background:#0b121b!important;border:1px solid #223349!important;color:#f5f8ff!important}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-foot{
  position:sticky!important;
  bottom:0!important;
  z-index:2!important;
  display:flex!important;
  justify-content:flex-end!important;
  padding:16px 24px!important;
  margin:0!important;
  background:rgba(9,14,22,.97)!important;
  border-top:1px solid #223247!important;
  backdrop-filter:blur(12px)!important;
}
body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-foot .iema-btn{
  margin:0!important;
}
@media(max-width:640px){
  body.iema-owner-portal-page .iema-master-inline-day-modal>.iema-master-day-view-dialog{
    left:0!important;right:0!important;top:auto!important;bottom:0!important;
    transform:none!important;width:100vw!important;max-width:none!important;
    max-height:88dvh!important;border-radius:22px 22px 0 0!important;
    border-left:0!important;border-right:0!important;border-bottom:0!important;
  }
  body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-head{padding:18px!important}
  body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-head h2{font-size:23px!important}
  body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-body{padding:14px!important}
  body.iema-owner-portal-page .iema-master-inline-day-modal button.iema-master-inline-day-event{grid-template-columns:82px minmax(0,1fr) 20px!important;gap:12px!important}
  body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-foot{padding:14px!important}
  body.iema-owner-portal-page .iema-master-inline-day-modal .iema-day-view-foot .iema-btn{width:100%!important}
}

body.iema-unified-calendar-modal-open{overflow:hidden!important}
/* MyDancer 0.15.0-dev.604 — canonical Unified Calendar Event Detail isolation
   The shared Event Detail modal is appended to <body>, outside each portal shell.
   Give it a complete MyDancer surface of its own so theme/WordPress semantic rules
   cannot make it white, left-aligned, or collapse its detail grid. */
.iema-unified-calendar-detail-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483100!important;
  display:block!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.iema-unified-calendar-detail-modal>.iema-unified-calendar-backdrop{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:auto!important;
  height:auto!important;
  background:rgba(0,0,0,.82)!important;
  backdrop-filter:blur(10px)!important;
}
.iema-unified-calendar-detail-modal>.iema-unified-calendar-dialog{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  z-index:1!important;
  display:block!important;
  width:min(780px,calc(100vw - 48px))!important;
  max-width:780px!important;
  min-width:0!important;
  max-height:calc(100dvh - 48px)!important;
  margin:0!important;
  padding:0!important;
  overflow:auto!important;
  box-sizing:border-box!important;
  border:1px solid #223245!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#0b1119 0%,#080d14 100%)!important;
  color:#f5f8ff!important;
  box-shadow:0 40px 110px rgba(0,0,0,.68),inset 0 1px 0 rgba(255,255,255,.03)!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-close{
  position:absolute!important;
  top:18px!important;
  right:18px!important;
  z-index:4!important;
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #2a3a4e!important;
  border-radius:13px!important;
  background:#111b28!important;
  color:#f5f8ff!important;
  box-shadow:none!important;
  font-size:26px!important;
  font-weight:400!important;
  line-height:1!important;
  cursor:pointer!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-close:hover,
.iema-unified-calendar-detail-modal .iema-unified-calendar-close:focus-visible{
  border-color:#46627f!important;
  background:#172538!important;
  outline:none!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-head{
  display:block!important;
  margin:0!important;
  padding:25px 76px 20px 26px!important;
  border-bottom:1px solid #1d2a39!important;
  background:linear-gradient(180deg,rgba(255,255,255,.018) 0%,rgba(255,255,255,0) 100%)!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-head .iema-unified-calendar-kicker{
  display:inline-flex!important;
  align-items:center!important;
  min-height:24px!important;
  margin:0!important;
  padding:4px 10px!important;
  border:1px solid rgba(105,210,255,.25)!important;
  border-radius:999px!important;
  background:rgba(105,210,255,.09)!important;
  color:var(--md2-blue-soft,#69d2ff)!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1.2!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-head h2{
  margin:11px 0 5px!important;
  color:#fff!important;
  font-size:30px!important;
  font-weight:800!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-head p{
  margin:0!important;
  color:#95a7be!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:1.45!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-body{
  display:block!important;
  margin:0!important;
  padding:20px 26px 8px!important;
  background:transparent!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  margin:0!important;
  padding:0!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-grid>div{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  padding:15px 16px!important;
  border:1px solid #1f2d3d!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,#0e1621 0%,#0a1119 100%)!important;
  color:#f5f8ff!important;
  box-sizing:border-box!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-grid>div>span{
  display:block!important;
  margin:0 0 6px!important;
  color:#7690ad!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1.2!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-grid>div>strong{
  display:block!important;
  margin:0!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:750!important;
  line-height:1.4!important;
  overflow-wrap:anywhere!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-grid>div>small{
  display:block!important;
  margin:4px 0 0!important;
  color:#8fa5bf!important;
  font-size:12px!important;
  line-height:1.4!important;
  overflow-wrap:anywhere!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-grid>div>p{
  margin:0!important;
  color:#c7d5e6!important;
  font-size:13px!important;
  line-height:1.55!important;
  white-space:pre-wrap!important;
  overflow-wrap:anywhere!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-grid>.iema-unified-calendar-wide{
  grid-column:1/-1!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin:0!important;
  padding:16px 26px 24px!important;
  border-top:1px solid #1d2a39!important;
  background:linear-gradient(180deg,rgba(8,13,20,0) 0%,rgba(8,13,20,.96) 32%)!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-actions .iema-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  margin:0!important;
  padding:10px 15px!important;
  border-radius:12px!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-actions .iema-btn-secondary{
  border:1px solid #2a394c!important;
  background:#101925!important;
  color:#dbe9ff!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-actions>a.iema-btn{
  border:1px solid #2a394c!important;
  background:#13233a!important;
  color:#fff!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-roster-body{
  display:grid!important;
  gap:9px!important;
  padding:20px 26px 8px!important;
  margin:0!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-roster-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  min-width:0!important;
  margin:0!important;
  padding:13px 15px!important;
  border:1px solid #1f2d3d!important;
  border-radius:14px!important;
  background:#0c131c!important;
  color:#fff!important;
}
.iema-unified-calendar-detail-modal .iema-unified-calendar-roster-row strong{color:#fff!important;overflow-wrap:anywhere!important}
.iema-unified-calendar-detail-modal .iema-unified-calendar-roster-row small{color:#81d4ff!important;font-size:10px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important}
.iema-unified-calendar-detail-modal .iema-unified-calendar-roster-row.is-current{border-color:#3555d9!important;background:#101a29!important}
@media(max-width:700px){
  .iema-unified-calendar-detail-modal>.iema-unified-calendar-dialog{
    left:10px!important;
    right:10px!important;
    top:50%!important;
    width:auto!important;
    max-width:none!important;
    max-height:calc(100dvh - 20px)!important;
    transform:translateY(-50%)!important;
    border-radius:20px!important;
  }
  .iema-unified-calendar-detail-modal .iema-unified-calendar-head{padding:20px 66px 16px 18px!important}
  .iema-unified-calendar-detail-modal .iema-unified-calendar-head h2{font-size:25px!important}
  .iema-unified-calendar-detail-modal .iema-unified-calendar-body{padding:16px 18px 6px!important}
  .iema-unified-calendar-detail-modal .iema-unified-calendar-grid{grid-template-columns:1fr!important}
  .iema-unified-calendar-detail-modal .iema-unified-calendar-grid>.iema-unified-calendar-wide{grid-column:auto!important}
  .iema-unified-calendar-detail-modal .iema-unified-calendar-actions{display:grid!important;grid-template-columns:1fr!important;padding:14px 18px 18px!important}
  .iema-unified-calendar-detail-modal .iema-unified-calendar-actions .iema-btn{width:100%!important}
  .iema-unified-calendar-detail-modal .iema-unified-calendar-roster-body{padding:16px 18px 6px!important}
}

/* ===== Build 605: Studio Dashboard + Attendance Policy ===== */
.iema-studio-dashboard,.iema-attendance-workspace{display:grid;gap:18px;max-width:1600px;margin:0 auto;padding:0 18px 34px;box-sizing:border-box;color:#eef5ff}.iema-studio-dashboard *,.iema-attendance-workspace *{box-sizing:border-box}.iema-studio-dashboard-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:26px 28px;border:1px solid #2b3b4d;border-radius:22px;background:linear-gradient(135deg,#101923 0%,#0a1119 62%,#0d1620 100%);box-shadow:0 18px 50px rgba(0,0,0,.22)}.iema-studio-dashboard-hero h2{margin:5px 0 7px;font-size:clamp(26px,3vw,40px);letter-spacing:-.035em}.iema-studio-dashboard-hero p{margin:0;color:#9eb0c4}.iema-studio-dashboard-range{display:inline-flex;gap:5px;padding:5px;border:1px solid #2b3b4d;border-radius:14px;background:#070d13}.iema-studio-dashboard-range a{min-width:74px;padding:9px 12px;border-radius:10px;text-align:center;text-decoration:none;color:#9fb0c4;font-size:12px;font-weight:800}.iema-studio-dashboard-range a.active{background:#19283a;color:#fff;box-shadow:inset 0 0 0 1px #38516c}.iema-studio-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.iema-studio-kpi{position:relative;display:flex;min-width:0;min-height:142px;flex-direction:column;padding:18px;border:1px solid #27384a;border-radius:18px;background:linear-gradient(180deg,#111a24,#0b1219);text-decoration:none;color:#eef5ff;overflow:hidden;transition:transform .15s ease,border-color .15s ease}.iema-studio-kpi:hover{transform:translateY(-2px);border-color:#3e5874}.iema-studio-kpi:after{content:"";position:absolute;inset:auto -26px -42px auto;width:112px;height:112px;border-radius:50%;background:radial-gradient(circle,rgba(32,183,255,.12),transparent 68%);pointer-events:none}.iema-studio-kpi>span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#8da3ba;font-weight:900}.iema-studio-kpi>strong{display:block;margin:8px 0 6px;font-size:30px;line-height:1;letter-spacing:-.04em}.iema-studio-kpi>small{color:#c4cfdb;font-size:12px;line-height:1.35}.iema-studio-kpi>i{margin-top:auto;padding-top:12px;color:#7f95ab;font-size:11px;font-style:normal}.iema-studio-kpi.is-attendance{border-color:#1f759a}.iema-studio-kpi.is-warning{border-color:#8c6520;background:linear-gradient(180deg,#1e1a10,#10130f)}.iema-studio-kpi.is-danger{border-color:#8c3547;background:linear-gradient(180deg,#211218,#120d11)}.iema-studio-dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.iema-studio-dashboard-card{min-width:0;padding:20px;border:1px solid #27384a;border-radius:20px;background:#0c141d;box-shadow:0 12px 36px rgba(0,0,0,.14);overflow:hidden}.iema-dashboard-span-2{grid-column:span 2}.iema-studio-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.iema-studio-card-head>div>span{display:block;margin-bottom:3px;font-size:9px;letter-spacing:.14em;color:#20b7ff;font-weight:900}.iema-studio-card-head h3{margin:0;font-size:19px}.iema-studio-card-head p{margin:4px 0 0;color:#8fa3b9}.iema-studio-card-head>a{flex:none;color:#8dcdf0;text-decoration:none;font-size:11px;font-weight:800}.iema-studio-chart-empty{display:grid;min-height:150px;place-items:center;padding:20px;text-align:center;color:#8195aa;border:1px dashed #2a3a4c;border-radius:14px;background:#091019}.iema-studio-trend-chart{height:210px;display:flex;align-items:stretch;gap:10px;padding:12px 4px 0;border-bottom:1px solid #27384a}.iema-studio-trend-point{flex:1;min-width:0;display:grid;grid-template-rows:1fr auto auto;gap:5px;text-align:center}.iema-studio-trend-bars{align-self:end;height:155px;display:flex;align-items:flex-end;justify-content:center;gap:3px}.iema-studio-trend-bars i{display:block;width:min(20px,42%);min-height:3px;border-radius:6px 6px 2px 2px}.iema-studio-trend-bars i.is-good{background:linear-gradient(180deg,#42d3a6,#168d70)}.iema-studio-trend-bars i.is-bad{background:linear-gradient(180deg,#ff7385,#a63749)}.iema-studio-trend-point>strong{font-size:11px}.iema-studio-trend-point>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8297ad;font-size:10px}.iema-studio-chart-legend{display:flex;align-items:center;gap:15px;padding-top:12px;color:#8da1b7;font-size:10px}.iema-studio-chart-legend span{display:flex;align-items:center;gap:6px}.iema-studio-chart-legend i{width:8px;height:8px;border-radius:99px}.iema-studio-chart-legend i.is-good{background:#42d3a6}.iema-studio-chart-legend i.is-bad{background:#ff7385}.iema-studio-chart-legend em{margin-left:auto;font-style:normal}.iema-studio-bar-chart{display:grid;gap:11px}.iema-studio-bar-row{display:grid;grid-template-columns:minmax(78px,1fr) minmax(90px,1.8fr) 42px;align-items:center;gap:10px}.iema-studio-bar-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#b6c4d2;font-size:11px}.iema-studio-bar-row>div{height:8px;border-radius:99px;background:#182431;overflow:hidden}.iema-studio-bar-row>div>i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#188dc3,#25c1ff)}.iema-studio-bar-row>strong{text-align:right;font-size:11px}.iema-studio-positive{display:flex;align-items:center;gap:13px;padding:20px;border:1px solid #23584b;border-radius:14px;background:#0b1d1a}.iema-studio-positive>b{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#174d3f;color:#69e3b8}.iema-studio-positive strong,.iema-studio-positive span{display:block}.iema-studio-positive span{margin-top:3px;color:#88a89f;font-size:11px}.iema-studio-risk-list{display:grid;gap:8px}.iema-studio-risk-list>a{display:grid;grid-template-columns:minmax(140px,1.35fr) minmax(80px,1fr) 54px minmax(90px,.8fr);align-items:center;gap:12px;padding:11px 12px;border:1px solid #27384a;border-radius:13px;background:#0a1118;text-decoration:none;color:#ecf4fc}.iema-studio-risk-list>a>div:first-child strong,.iema-studio-risk-list>a>div:first-child span{display:block}.iema-studio-risk-list>a>div:first-child span{margin-top:2px;color:#8297ac;font-size:10px}.iema-studio-risk-list>a>b{text-align:right}.iema-studio-risk-list>a>small{font-size:10px;font-weight:800}.iema-studio-risk-list>a.is-warning>small{color:#f0c96e}.iema-studio-risk-list>a.is-limit>small,.iema-studio-risk-list>a.is-over>small{color:#ff7e8d}.iema-risk-meter{height:7px;border-radius:99px;background:#1a2632;overflow:hidden}.iema-risk-meter>i{display:block;height:100%;border-radius:99px;background:#efb84f}.iema-studio-risk-list>a.is-limit .iema-risk-meter>i,.iema-studio-risk-list>a.is-over .iema-risk-meter>i{background:#ee586c}.iema-studio-class-health{display:grid;gap:7px}.iema-studio-class-health>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #263748;border-radius:12px;background:#091119;text-decoration:none;color:#eef5ff}.iema-studio-class-health strong,.iema-studio-class-health span{display:block}.iema-studio-class-health span{margin-top:2px;color:#8195a9;font-size:10px}.iema-studio-class-health b{font-size:15px}.iema-studio-today-card{padding:20px 22px}.iema-studio-today-head{align-items:center}.iema-studio-day-nav{display:flex;align-items:center;gap:6px}.iema-studio-day-nav a{display:grid;min-width:36px;height:36px;place-items:center;padding:0 10px;border:1px solid #30445a;border-radius:11px;background:#101c28;color:#fff;text-decoration:none;font-weight:900}.iema-studio-day-nav a.today{min-width:auto;font-size:11px}.iema-studio-agenda{display:grid;gap:8px}.iema-studio-agenda>a{display:grid;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 14px;border:1px solid #26384a;border-radius:13px;background:#091119;text-decoration:none;color:#eef5ff}.iema-studio-agenda time{color:#7fd8ff;font-size:12px;font-weight:900}.iema-studio-agenda strong,.iema-studio-agenda span{display:block}.iema-studio-agenda span{margin-top:3px;color:#8296aa;font-size:10px}.iema-studio-agenda>a>b{color:#a4b5c6;font-size:10px}

.iema-attendance-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px!important;background:linear-gradient(135deg,#101923,#0a1119)!important}.iema-attendance-hero h2{margin:5px 0 7px}.iema-attendance-hero p{margin:0;color:#9fb0c4}.iema-attendance-hero-stats{display:flex;gap:10px}.iema-attendance-hero-stats>div{min-width:112px;padding:13px;border:1px solid #2b3c4e;border-radius:14px;background:#0a121a;text-align:center}.iema-attendance-hero-stats strong,.iema-attendance-hero-stats span{display:block}.iema-attendance-hero-stats strong{font-size:22px}.iema-attendance-hero-stats span{margin-top:3px;color:#8ca1b7;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.iema-attendance-policy-panel,.iema-attendance-risk-panel,.iema-owner-class-attendance{padding:22px!important}.iema-attendance-policy-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.iema-attendance-policy-grid label{display:grid;align-content:start;gap:7px}.iema-attendance-policy-grid input[type=number]{width:100%}.iema-attendance-policy-grid small{color:#8194a8;font-size:10px;line-height:1.35}.iema-attendance-policy-check{display:flex!important;align-items:center!important;gap:10px;padding:13px;border:1px solid #2a3b4d;border-radius:13px;background:#0a121a}.iema-attendance-policy-check input{flex:none}.iema-attendance-policy-check span strong,.iema-attendance-policy-check span small{display:block}.iema-attendance-class-overrides{margin-top:16px;border:1px solid #293a4c;border-radius:14px;background:#091119;overflow:hidden}.iema-attendance-class-overrides>summary{display:flex;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;font-weight:900}.iema-attendance-class-overrides>summary span{color:#8196ab;font-size:10px;font-weight:700}.iema-attendance-override-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 16px 16px}.iema-attendance-override-grid label{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid #233344;border-radius:11px}.iema-attendance-override-grid label span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:800}.iema-attendance-override-grid input{width:84px!important;flex:none}.iema-attendance-policy-actions{display:flex;align-items:center;gap:14px;margin-top:14px}.iema-attendance-policy-actions>span{color:#8397ad;font-size:10px}.iema-attendance-risk-table{display:grid;gap:7px;overflow-x:auto}.iema-attendance-risk-head,.iema-attendance-risk-row{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(160px,1.4fr) 100px 145px minmax(145px,1fr);gap:12px;align-items:center;min-width:760px}.iema-attendance-risk-head{padding:0 12px 7px;color:#71869d;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.iema-attendance-risk-row{padding:11px 12px;border:1px solid #27384a;border-radius:12px;background:#091119;text-decoration:none;color:#edf5fd}.iema-attendance-risk-row>span{min-width:0}.iema-attendance-risk-row strong,.iema-attendance-risk-row small,.iema-attendance-risk-row b{display:block}.iema-attendance-risk-row small{margin-top:2px;color:#8297ac;font-size:9px}.iema-attendance-risk-row em{font-style:normal;font-size:10px;font-weight:900}.iema-attendance-risk-row.is-warning{border-color:#715522}.iema-attendance-risk-row.is-warning em{color:#f1c96a}.iema-attendance-risk-row.is-limit,.iema-attendance-risk-row.is-over{border-color:#713243}.iema-attendance-risk-row.is-limit em,.iema-attendance-risk-row.is-over em{color:#ff7c8c}.iema-attendance-risk-meter{height:6px;margin-top:5px;border-radius:99px;background:#1a2633;overflow:hidden}.iema-attendance-risk-meter>i{display:block;height:100%;background:#25b8f3;border-radius:99px}.iema-attendance-risk-row.is-warning .iema-attendance-risk-meter>i{background:#e9b84d}.iema-attendance-risk-row.is-limit .iema-attendance-risk-meter>i,.iema-attendance-risk-row.is-over .iema-attendance-risk-meter>i{background:#ef586b}.iema-attendance-class-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}.iema-attendance-class-picker label{display:grid;gap:6px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#879aaf}.iema-attendance-class-picker select{width:100%}.iema-attendance-class-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0 14px}.iema-attendance-class-meta>div{padding:12px;border:1px solid #28394b;border-radius:12px;background:#0a121a}.iema-attendance-class-meta span,.iema-attendance-class-meta strong{display:block}.iema-attendance-class-meta span{font-size:8px;letter-spacing:.1em;color:#7f95aa;font-weight:900}.iema-attendance-class-meta strong{margin-top:4px;font-size:12px}.iema-owner-attendance-toolbar{margin:0 0 12px}.iema-attendance-workspace .iema-attendance-dancer{max-width:100%;min-width:0}

@media(max-width:1180px){.iema-studio-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.iema-studio-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.iema-dashboard-span-2{grid-column:span 2}.iema-attendance-policy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.iema-attendance-override-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.iema-attendance-class-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.iema-studio-dashboard,.iema-attendance-workspace{padding:0 10px 96px;gap:12px}.iema-studio-dashboard-hero,.iema-attendance-hero{align-items:stretch;flex-direction:column;padding:18px!important}.iema-studio-dashboard-range{width:100%}.iema-studio-dashboard-range a{flex:1;min-width:0}.iema-studio-kpi-grid,.iema-studio-dashboard-grid{grid-template-columns:1fr}.iema-dashboard-span-2{grid-column:auto}.iema-studio-kpi{min-height:126px}.iema-studio-trend-chart{height:185px;gap:5px}.iema-studio-trend-bars{height:130px}.iema-studio-chart-legend{align-items:flex-start;flex-wrap:wrap}.iema-studio-chart-legend em{width:100%;margin:0}.iema-studio-risk-list>a{grid-template-columns:1fr 50px}.iema-studio-risk-list>a .iema-risk-meter{grid-column:1}.iema-studio-risk-list>a>small{grid-column:1/-1}.iema-studio-agenda>a{grid-template-columns:70px minmax(0,1fr)}.iema-studio-agenda>a>b{display:none}.iema-studio-today-head{align-items:flex-start;flex-direction:column}.iema-attendance-hero-stats{display:grid;grid-template-columns:repeat(3,1fr)}.iema-attendance-hero-stats>div{min-width:0;padding:10px 6px}.iema-attendance-policy-grid,.iema-attendance-override-grid,.iema-attendance-class-picker,.iema-attendance-class-meta{grid-template-columns:1fr}.iema-attendance-policy-actions{align-items:stretch;flex-direction:column}.iema-attendance-policy-actions .iema-btn{width:100%}.iema-attendance-override-grid label{align-items:flex-start;flex-direction:column}.iema-attendance-override-grid input{width:100%!important}.iema-owner-class-attendance,.iema-attendance-policy-panel,.iema-attendance-risk-panel{padding:15px!important}}

/* Build 605 — attendance status composition */
.iema-studio-attendance-mix{display:flex;flex-direction:column}.iema-studio-mix-bar{display:flex;width:100%;height:18px;margin:8px 0 20px;overflow:hidden;border:1px solid #2a3b4d;border-radius:999px;background:#101923;box-shadow:inset 0 1px 3px rgba(0,0,0,.35)}.iema-studio-mix-bar>i{display:block;height:100%;min-width:0}.iema-studio-mix-bar .is-present,.iema-studio-mix-list i.is-present{background:#35c89a}.iema-studio-mix-bar .is-late,.iema-studio-mix-list i.is-late{background:#e7b64b}.iema-studio-mix-bar .is-absent,.iema-studio-mix-list i.is-absent{background:#ec5d70}.iema-studio-mix-bar .is-excused,.iema-studio-mix-list i.is-excused{background:#71859c}.iema-studio-mix-list{display:grid;gap:9px}.iema-studio-mix-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto 48px;align-items:center;gap:10px;padding:9px 10px;border:1px solid #263749;border-radius:11px;background:#091119}.iema-studio-mix-list span{display:flex;align-items:center;gap:8px;color:#b6c5d4;font-size:11px}.iema-studio-mix-list span>i{width:8px;height:8px;flex:none;border-radius:50%}.iema-studio-mix-list strong{text-align:right;font-size:12px}.iema-studio-mix-list small{text-align:right;color:#8196aa;font-size:10px}


/* MyDancer 0.15.0-dev.606 — Owner dashboard containment and responsive grid fix */
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard,
body.iema-owner-portal-page .iema-owner-shell .iema-attendance-workspace{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 0 34px !important;
  overflow:hidden !important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-hero,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-kpi-grid,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-grid,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-grid-lower,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-card,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-kpi{
  width:100%;
  max-width:100%;
  min-width:0;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-hero{
  flex-wrap:wrap;
  align-items:flex-end;
  overflow:hidden;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-range{
  flex-wrap:wrap;
  max-width:100%;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-card-head{
  flex-wrap:wrap;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-grid,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-grid-lower{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-kpi-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-span-2{
  grid-column:span 2;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-risk-list>a,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-bar-row,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-mix-list>div,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-agenda>a{
  min-width:0;
  max-width:100%;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-risk-list>a{
  grid-template-columns:minmax(0,1.35fr) minmax(64px,1fr) 54px minmax(74px,.8fr);
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-bar-row>span,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-trend-point>span,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-class-health span,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-agenda span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
@media(max-width:1500px){
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-kpi-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-grid-lower{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-span-2{
    grid-column:span 2;
  }
}
@media(max-width:860px){
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard,
  body.iema-owner-portal-page .iema-owner-shell .iema-attendance-workspace{
    padding:0 0 96px !important;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-kpi-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-grid,
  body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-grid-lower{
    grid-template-columns:1fr;
  }
  body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-span-2{
    grid-column:auto;
  }
}


/* MyDancer 0.15.0-dev.609 — Studio Command Center Today action */
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-hero{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center !important;
  gap:24px;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-hero-copy{min-width:0;justify-self:start}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-range{justify-self:end}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action{
  appearance:none;
  width:min(390px,36vw);
  min-width:300px;
  min-height:78px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  justify-self:center;
  padding:13px 22px;
  border:1px solid color-mix(in srgb,var(--studio-accent,var(--accent,#8b0fc9)) 55%,#30445a);
  border-radius:18px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--studio-accent,var(--accent,#8b0fc9)) 18%,#101923),#0a1119 70%);
  color:#fff;
  box-shadow:0 12px 32px rgba(0,0,0,.24),inset 0 0 0 1px rgba(255,255,255,.025);
  cursor:pointer;
  text-align:center;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action:hover,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action:focus-visible{
  transform:translateY(-2px);
  border-color:var(--studio-accent,var(--accent,#8b0fc9));
  box-shadow:0 16px 38px rgba(0,0,0,.3),0 0 28px color-mix(in srgb,var(--studio-accent,var(--accent,#8b0fc9)) 20%,transparent);
  outline:none;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action>span{
  color:#79d9ff;
  font-size:9px;
  line-height:1;
  font-weight:900;
  letter-spacing:.16em;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action>strong{
  color:#fff;
  font-size:15px;
  line-height:1.25;
  font-weight:900;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action>small{
  color:#8fa3b9;
  font-size:10px;
  line-height:1.2;
}
@media(max-width:1180px){
 body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-hero{grid-template-columns:minmax(0,1fr) auto}
 body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action{grid-column:1/-1;grid-row:2;width:min(520px,100%);min-width:0}
}
@media(max-width:720px){
 body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-hero{grid-template-columns:1fr;gap:15px}
 body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-range{justify-self:stretch}
 body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action{grid-column:auto;grid-row:auto;width:100%;min-height:72px}
}

/* MyDancer 0.15.0-dev.609 — Dashboard Today direct-click reliability */
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-hero{
  position:relative !important;
  isolation:isolate;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-hero-copy,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-range{
  position:relative;
  z-index:1;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action{
  position:relative !important;
  z-index:5 !important;
  pointer-events:auto !important;
  touch-action:manipulation;
  text-decoration:none !important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action>span,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action>strong,
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action>small{
  pointer-events:none;
}


/* MyDancer 0.15.0-dev.609 — Dashboard Today native no-JS modal */
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-modal{
  display:none;
  position:fixed;
  inset:0;
  z-index:2147482500;
  width:100vw;
  height:100dvh;
  align-items:center;
  justify-content:center;
  padding:24px;
  box-sizing:border-box;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-modal:target{display:flex!important}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-backdrop{
  position:absolute;
  inset:0;
  z-index:0;
  display:block;
  background:rgba(2,7,12,.78);
  backdrop-filter:blur(8px);
}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-dialog{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  width:min(780px,calc(100vw - 48px));
  max-width:100%;
  max-height:min(760px,calc(100dvh - 48px));
  min-width:0;
  overflow:hidden;
  border:1px solid #2f4358;
  border-radius:22px;
  background:linear-gradient(180deg,#101923 0%,#0a1119 100%);
  color:#eef5ff;
  box-shadow:0 34px 100px rgba(0,0,0,.62);
}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:21px 22px 17px;
  border-bottom:1px solid #27384a;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-head>div{min-width:0}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-head span{
  display:block;
  margin-bottom:5px;
  color:#79d9ff;
  font-size:9px;
  line-height:1;
  font-weight:900;
  letter-spacing:.15em;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-head h2{
  margin:0!important;
  color:#f6f9fc!important;
  font-size:23px!important;
  line-height:1.15!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-head p{
  margin:6px 0 0!important;
  color:#8fa3b9!important;
  font-size:11px!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-close{
  display:grid;
  flex:0 0 38px;
  width:38px;
  height:38px;
  place-items:center;
  border:1px solid #33495f;
  border-radius:12px;
  background:#101c28;
  color:#fff!important;
  text-decoration:none!important;
  font-size:24px;
  line-height:1;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-body{
  display:grid;
  gap:9px;
  min-height:0;
  overflow:auto;
  padding:16px 18px 18px;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-event{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  text-decoration:none!important;
}
body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  padding:14px 18px 18px;
  border-top:1px solid #27384a;
}
body.iema-owner-portal-page .iema-owner-shell .iema-studio-dashboard-today-action{
  pointer-events:auto!important;
  cursor:pointer!important;
}
@media(max-width:720px){
 body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-modal{align-items:flex-end;padding:10px}
 body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-dialog{width:100%;max-height:88dvh;border-radius:20px}
 body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-head{padding:18px 16px 14px}
 body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-body{padding:13px}
 body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-actions{padding:12px 13px 14px;flex-direction:column}
 body.iema-owner-portal-page .iema-owner-shell .iema-dashboard-today-native-actions .iema-btn{width:100%}
}

/* MyDancer 0.15.0-dev.610 — Family-level Emergency Contacts */
.iema-emergency-family-badge{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;column-gap:7px!important;row-gap:2px!important;align-items:center!important;width:100%!important;max-width:100%!important;padding:9px 10px!important;box-sizing:border-box!important;border-radius:11px!important;background:rgba(86,126,255,.08)!important;border:1px solid rgba(104,142,255,.20)!important;color:#a9bcff!important;font-size:11px!important;font-weight:800!important;line-height:1.25!important}
.iema-emergency-family-badge>span:first-child{grid-row:1 / span 2!important}.iema-emergency-family-badge small{grid-column:2!important;color:#aebdca!important;font-size:10px!important;font-weight:700!important;overflow-wrap:anywhere!important}
.iema-emergency-edit-dialog{width:min(760px,calc(100vw - 28px))!important;max-width:760px!important}
.iema-emergency-family-picker{margin:4px 0 0!important;padding:15px!important;border:1px solid #2b3c50!important;border-radius:14px!important;background:#0b121b!important;min-width:0!important}
.iema-emergency-family-picker legend{padding:0 7px!important;color:#dce8f6!important;font-size:12px!important;font-weight:900!important;letter-spacing:.04em!important}
.iema-emergency-family-picker>p{margin:0 0 12px!important;color:#8fa3b8!important;font-size:11px!important;line-height:1.45!important}
.iema-emergency-family-grid{display:grid!important;gap:9px!important;min-width:0!important}
.iema-emergency-family-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(135px,170px)!important;align-items:center!important;gap:12px!important;padding:11px 12px!important;border:1px solid rgba(148,163,184,.14)!important;border-radius:12px!important;background:rgba(255,255,255,.025)!important;min-width:0!important}
.iema-emergency-family-row>.iema-check{margin:0!important;min-width:0!important}.iema-emergency-family-row>.iema-check span{min-width:0!important}.iema-emergency-family-row>.iema-check strong,.iema-emergency-family-row>.iema-check small{display:block!important}.iema-emergency-family-row>.iema-check small{margin-top:2px!important;color:#8095aa!important;font-size:10px!important}.iema-emergency-family-row>label:last-child{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:8px!important;color:#91a5ba!important;font-size:10px!important;font-weight:800!important}.iema-emergency-family-row select{min-width:0!important;width:100%!important}
.iema-emergency-apply-all{margin:2px 0!important;padding:12px 13px!important;border:1px solid rgba(70,200,255,.22)!important;border-radius:12px!important;background:rgba(70,200,255,.06)!important}.iema-emergency-apply-all span strong,.iema-emergency-apply-all span small{display:block!important}.iema-emergency-apply-all span small{margin-top:3px!important;color:#8fa5ba!important;font-size:10px!important;line-height:1.4!important}
@media(max-width:680px){.iema-emergency-family-row{grid-template-columns:1fr!important;align-items:stretch!important}.iema-emergency-family-row>label:last-child{grid-template-columns:1fr!important}.iema-emergency-edit-dialog{width:min(94vw,760px)!important}}

/* MyDancer 0.15.0-dev.612 — Owner Voice Scheduler */
.iema-class-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.iema-voice-scheduler-open{white-space:nowrap}.iema-voice-scheduler-dialog{width:min(1080px,calc(100vw - 32px))!important;max-width:1080px!important;max-height:min(90vh,900px)!important;overflow:auto!important;background:linear-gradient(180deg,#101923 0%,#0b121a 100%)!important;border:1px solid #31465b!important;color:#eef5ff!important}.iema-voice-head{padding-right:50px}.iema-voice-privacy{display:flex;align-items:flex-start;gap:12px;margin:0 0 16px;padding:12px 14px;border:1px solid #29445a;border-radius:14px;background:#0b1a26}.iema-voice-privacy strong{flex:none;color:#7fd8ff;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.iema-voice-privacy span{color:#9eb2c5;font-size:11px;line-height:1.45}.iema-voice-command{display:grid;grid-template-columns:148px minmax(0,1fr) auto;align-items:stretch;gap:12px;margin-bottom:12px}.iema-voice-command>label{display:grid;gap:6px;min-width:0}.iema-voice-command>label>span{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#91a8bd;font-weight:900}.iema-voice-command textarea{width:100%;min-height:96px;resize:vertical;background:#08111a!important;color:#fff!important;border:1px solid #30465a!important;border-radius:14px!important;padding:12px 13px!important}.iema-voice-command>.iema-btn{align-self:end;min-height:44px}.iema-voice-mic{appearance:none;border:1px solid #2e526b;border-radius:17px;background:linear-gradient(180deg,#10283a,#0a1722);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:14px;cursor:pointer;transition:.15s ease}.iema-voice-mic:hover{border-color:#20b7ff;transform:translateY(-1px)}.iema-voice-mic>span{font-size:28px}.iema-voice-mic>strong{font-size:12px}.iema-voice-mic>small{color:#8198ad;font-size:9px}.iema-voice-mic.is-listening{border-color:#ff6479;box-shadow:0 0 0 4px rgba(255,100,121,.1);background:#27131b}.iema-voice-mic.is-unavailable{opacity:.58;cursor:not-allowed;transform:none}.iema-voice-state{padding:11px 13px;border-radius:12px;border:1px solid #2b3d50;background:#091119;color:#a9bbcc;font-size:11px;font-weight:700}.iema-voice-state.is-good{border-color:#235b4d;background:#0a1c18;color:#78dfb8}.iema-voice-state.is-warn{border-color:#725b28;background:#1b170d;color:#efca73}.iema-voice-state.is-error{border-color:#713445;background:#211016;color:#ff8897}.iema-voice-state.is-busy{border-color:#285674;color:#0c1520;color:#8bdcff}.iema-voice-assumptions{display:grid;gap:6px;margin-top:10px}.iema-voice-assumptions>div{display:flex;gap:10px;padding:9px 11px;border:1px solid #2c4053;border-radius:10px;background:#0a121a}.iema-voice-assumptions b{flex:none;color:#7fd8ff;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.iema-voice-assumptions span{font-size:10px;color:#a7b8c8}.iema-voice-assumptions .is-missing{border-color:#785b28}.iema-voice-assumptions .is-missing b{color:#efc56b}.iema-voice-review{margin-top:18px;padding:18px;border:1px solid #283b4e;border-radius:18px;background:#0a121a}.iema-voice-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:13px}.iema-voice-section-head span{display:block;color:#20b7ff;font-size:9px;font-weight:900;letter-spacing:.13em}.iema-voice-section-head h3{margin:3px 0 0;color:#fff;font-size:18px}.iema-voice-section-head>small{color:#8296aa;font-size:10px;text-align:right}.iema-voice-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.iema-voice-form-grid>label{display:grid;gap:6px;min-width:0;color:#a9b9c9;font-size:10px;font-weight:800}.iema-voice-form-grid>label.wide{grid-column:span 3}.iema-voice-form-grid input,.iema-voice-form-grid select,.iema-voice-form-grid textarea{width:100%;max-width:100%;min-width:0;background:#0d1721!important;color:#fff!important;border:1px solid #31475b!important;border-radius:11px!important;padding:10px 11px!important}.iema-voice-form-grid select[multiple]{padding:6px!important}.iema-voice-form-grid select[multiple] option{padding:7px 8px;border-radius:7px}.iema-voice-form-grid select[multiple] option:checked{background:#1d526e linear-gradient(0deg,#1d526e,#1d526e)!important;color:#fff}.iema-voice-weekdays{grid-column:span 2;display:flex;align-items:center;gap:6px;min-width:0;margin:0;padding:7px 9px;border:1px solid #31475b;border-radius:11px}.iema-voice-weekdays legend{padding:0 5px;color:#91a8bd;font-size:9px;text-transform:uppercase}.iema-voice-weekdays label{display:flex;align-items:center;gap:4px;padding:4px 6px;color:#c5d1dc;font-size:9px}.iema-voice-weekdays input{width:auto!important}.iema-voice-weekdays.is-muted{opacity:.45}.iema-voice-conflicts,.iema-voice-options{margin-top:14px;padding:16px;border:1px solid #2b3e51;border-radius:17px;background:#091119}.iema-voice-clear{display:flex;align-items:center;gap:13px}.iema-voice-clear>b{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#174d3f;color:#69e3b8}.iema-voice-clear strong,.iema-voice-clear span{display:block}.iema-voice-clear span{margin-top:3px;color:#88a89f;font-size:10px}.iema-voice-conflict-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:11px}.iema-voice-conflict-head span{color:#ff7c8c;font-size:9px;font-weight:900;letter-spacing:.12em}.iema-voice-conflict-head h3{margin:3px 0 0}.iema-voice-conflict-head>b{color:#a7b8c9;font-size:10px}.iema-voice-conflict-list{display:grid;gap:7px}.iema-voice-conflict-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:10px 11px;border:1px solid #4d3440;border-radius:11px;background:#160d12}.iema-voice-conflict-list>div.is-soft{border-color:#675529;background:#17140c}.iema-voice-conflict-list strong{font-size:11px}.iema-voice-conflict-list span{color:#8fa3b7;font-size:9px}.iema-voice-conflict-list p{grid-column:1/-1;margin:0;color:#c4cdd6;font-size:10px}.iema-voice-override{margin-top:11px}.iema-voice-option-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.iema-voice-option-list>button{appearance:none;text-align:left;display:grid;gap:3px;min-width:0;padding:12px;border:1px solid #30526b;border-radius:13px;background:#0c1a25;color:#fff;cursor:pointer}.iema-voice-option-list>button:hover{border-color:#20b7ff;background:#102536}.iema-voice-option-list b{color:#20b7ff;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.iema-voice-option-list strong{font-size:12px}.iema-voice-option-list span{color:#8ea2b5;font-size:10px}.iema-voice-footer{position:sticky;bottom:-1px;display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin:18px -20px -20px;padding:14px 20px;border-top:1px solid #2a3d50;background:rgba(10,17,25,.96);backdrop-filter:blur(12px);z-index:2}.iema-voice-footer .iema-btn[disabled]{opacity:.45;cursor:not-allowed}.iema-voice-scheduler-modal[hidden]{display:none!important}
@media(max-width:820px){.iema-class-head-actions{width:100%;justify-content:stretch}.iema-class-head-actions .iema-btn{flex:1}.iema-voice-scheduler-dialog{width:calc(100vw - 18px)!important;max-height:92vh!important}.iema-voice-command{grid-template-columns:1fr}.iema-voice-mic{min-height:92px}.iema-voice-command>.iema-btn{align-self:stretch}.iema-voice-form-grid{grid-template-columns:1fr}.iema-voice-form-grid>label.wide,.iema-voice-weekdays{grid-column:auto}.iema-voice-weekdays{flex-wrap:wrap}.iema-voice-option-list{grid-template-columns:1fr}.iema-voice-section-head,.iema-voice-conflict-head{flex-direction:column}.iema-voice-section-head>small{text-align:left}.iema-voice-footer{justify-content:stretch}.iema-voice-footer .iema-btn{width:100%}}

.iema-season-management-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.iema-season-management-actions .iema-btn{text-decoration:none}@media(max-width:680px){.iema-season-management-actions{width:100%;justify-content:stretch}.iema-season-management-actions .iema-btn{flex:1;text-align:center}}
