/* RFA identity. The existing classroom palette and layout are deliberately scoped out. */
body:not(.rfa-learning-page){--rfa-bg:#fbfaf7;--rfa-surface:#fff;--rfa-ink:#30313c;--rfa-muted:#77717f;--rfa-line:#eee8df;--rfa-soft:#fbf4e6;--rfa-accent:#906c2b;--rfa-hover:#f8f5ef;--rfa-gold:#be9651;--rfa-pink:#faeff0;--rfa-blue:#edf3fb;--rfa-green:#edf6f0;--rfa-lilac:#f2eefa;--rfa-shadow:0 6px 28px #59472b07;--rfa-rainbow:linear-gradient(105deg,#f7e8e9,#fbefda 28%,#edf4e8 52%,#e8f0f8 76%,#f1eafa)}
html[data-rfa-theme=dark] body:not(.rfa-learning-page){--rfa-bg:#191c24;--rfa-surface:#222630;--rfa-ink:#f1eee8;--rfa-muted:#b1adb8;--rfa-line:#3b3d47;--rfa-soft:#393225;--rfa-accent:#e4c17d;--rfa-hover:#2b2e37;--rfa-gold:#d4b276;--rfa-pink:#362c34;--rfa-blue:#293342;--rfa-green:#29372f;--rfa-lilac:#322d40;--rfa-rainbow:linear-gradient(105deg,#3b2d35,#393226 28%,#2f382e 52%,#2b3440 76%,#352f42)}
.rfa-app-page{--rfa-shell-top:0px;--tutor-surface-base:var(--rfa-bg);--tutor-surface-l1:var(--rfa-surface);--tutor-surface-l2:var(--rfa-hover);--tutor-text-primary:var(--rfa-ink);--tutor-text-secondary:var(--rfa-muted);--tutor-border-idle:var(--rfa-line);--tutor-text-brand:var(--rfa-accent);--tutor-actions-brand-primary:var(--rfa-accent);--tutor-button-primary:var(--rfa-button-bg,#906c2b);--tutor-button-primary-hover:var(--rfa-button-hover,#765520);--tutor-button-primary-text:var(--rfa-button-text,#fff);--tutor-font-family-body:var(--rfa-font-body);--tutor-font-family-heading:var(--rfa-font-heading)}
.admin-bar.rfa-app-page{--rfa-shell-top:32px}
.rfa-app-shell{grid-template-columns:250px minmax(0,1fr);transition:grid-template-columns .2s ease;min-height:calc(100dvh - var(--rfa-shell-top))}
.rfa-app-page .rfa-main-column{background:radial-gradient(ellipse at 100% 0%,var(--rfa-lilac),transparent 38%),radial-gradient(ellipse at 10% 12%,var(--rfa-pink),transparent 35%),var(--rfa-bg)}
.rfa-app-page .rfa-sidebar{position:sticky;top:var(--rfa-shell-top);height:calc(100dvh - var(--rfa-shell-top));min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:0;padding:25px 17px 0;background:var(--rfa-surface);border-right:1px solid var(--rfa-line);z-index:90}
.rfa-app-page .rfa-brand{flex-shrink:0;gap:10px;padding:3px 7px 26px;margin:0;min-height:77px}
.rfa-brand .rfa-logo-image{width:42px;height:42px;object-fit:contain;flex-shrink:0}.rfa-brand-name{font-size:calc(var(--rfa-font-base) * 0.8125)}.rfa-brand-name>span{font-size:calc(var(--rfa-font-base) * 0.4375);letter-spacing:3.5px}.rfa-flower-mark{color:var(--rfa-gold);font-size:calc(var(--rfa-font-base) * 2.75);line-height:1}
.rfa-app-page .rfa-sidebar-caption{padding:12px 14px;font-size:calc(var(--rfa-font-base) * 0.5);letter-spacing:1.5px;margin:0;color:var(--rfa-muted);flex-shrink:0}
.rfa-app-page .rfa-navigation{display:block;min-height:0;flex:1;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--rfa-line) transparent;padding:0 0 15px}
.rfa-navigation>a,.rfa-nav-group>summary{display:flex;gap:12px;align-items:center;min-height:47px;padding:11px 14px;margin:3px 0;border:0;border-radius:12px;font:400 calc(var(--rfa-font-base) * 0.75)/1.5 var(--rfa-font-body);color:var(--rfa-muted);cursor:pointer;list-style:none;position:relative}
.rfa-nav-group>summary::-webkit-details-marker{display:none}.rfa-navigation :is(a,summary)>svg{width:19px;height:19px;flex-shrink:0}.rfa-nav-group>summary:hover,.rfa-navigation>a:hover{background:var(--rfa-hover);color:var(--rfa-accent)}
.rfa-nav-group.has-current>summary,.rfa-navigation>a[aria-current=page],.rfa-navigation>a.is-active{color:var(--rfa-accent);background:var(--rfa-soft);font-weight:500}
.rfa-nav-group>summary .rfa-nav-chevron{margin-left:auto;font-size:calc(var(--rfa-font-base) * 1.0625);line-height:1;transition:transform .15s}.rfa-nav-group[open]>summary .rfa-nav-chevron{transform:rotate(180deg)}
.rfa-submenu{margin:2px 10px 9px 23px;padding:2px 0 2px 20px;border-left:1px solid var(--rfa-line)}
.rfa-submenu>a{display:block;padding:9px 12px;border-radius:9px;font-size:calc(var(--rfa-font-base) * 0.6875);color:var(--rfa-muted);margin:2px 0;overflow-wrap:anywhere}.rfa-submenu>a:hover{background:var(--rfa-hover);color:var(--rfa-ink)}.rfa-submenu>a[aria-current=page]{background:var(--rfa-soft);color:var(--rfa-accent);font-weight:500}
.rfa-app-page .rfa-sidebar-footer{padding:12px 0 14px;flex-shrink:0;border-top:1px solid var(--rfa-line);background:var(--rfa-surface)}
.rfa-app-page .rfa-sidebar button.rfa-collapse-button{display:flex;align-items:center;justify-content:flex-start;gap:12px;width:100%;min-height:42px;padding:10px 14px;background:var(--rfa-soft);border:1px solid var(--rfa-line);border-radius:11px;color:var(--rfa-accent);font:500 calc(var(--rfa-font-base) * 0.6875) var(--rfa-font-body)}
.rfa-sidebar-footer .rfa-website-link{padding:10px 14px 0;justify-content:flex-start;gap:12px;font-size:calc(var(--rfa-font-base) * 0.625);min-height:35px}.rfa-sidebar-footer .rfa-website-link svg{width:17px;height:17px;flex-shrink:0}
.rfa-topbar{position:sticky;top:var(--rfa-shell-top);height:92px;z-index:70;background:var(--rfa-surface);isolation:isolate}.rfa-topbar:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--rfa-rainbow)}.rfa-topbar-actions{gap:13px}.rfa-topbar-actions .rfa-icon-btn{width:36px;min-width:36px;height:36px}.rfa-notifications-link{position:relative}.rfa-count-badge{position:absolute;top:-4px;right:-6px;font:500 calc(var(--rfa-font-base) * 0.5)/1.5 var(--rfa-font-body);background:#aa514a;color:#fff;border:2px solid var(--rfa-surface);border-radius:15px;min-width:17px;padding:0 3px}
.rfa-app-page .rfa-main{max-width:1660px;padding-top:34px}.rfa-account-intro,.rfa-panel-intro{margin-bottom:25px}.rfa-account-intro h1,.rfa-panel-intro h1{font:500 clamp(calc(var(--rfa-font-base) * 1.5625),3vw,calc(var(--rfa-font-base) * 2.1875))/1.3 var(--rfa-font-body);color:var(--rfa-ink);letter-spacing:-1px;margin:7px 0}.rfa-account-intro p,.rfa-panel-intro p{font-size:calc(var(--rfa-font-base) * 0.75);color:var(--rfa-muted);margin:0}.rfa-panel-intro{display:flex;align-items:center;justify-content:space-between;gap:20px}
.rfa-app-page .rfa-featured{background:radial-gradient(ellipse at 88% 0,#9584a04d,transparent 55%),radial-gradient(ellipse at 95% 100%,#b2946266,transparent 65%),linear-gradient(115deg,#393637,#655743);min-height:280px}.rfa-app-page .rfa-featured-flower{color:#efd7a51c}.rfa-app-page .rfa-featured-tag{color:#ead7b9}.rfa-app-page .rfa-featured .rfa-button-white{color:#715424!important}
.rfa-app-page .rfa-stats>div:nth-child(1){background:linear-gradient(125deg,var(--rfa-blue),var(--rfa-surface))}.rfa-app-page .rfa-stats>div:nth-child(2){background:linear-gradient(125deg,var(--rfa-pink),var(--rfa-surface))}.rfa-app-page .rfa-stats>div:nth-child(3){background:linear-gradient(125deg,var(--rfa-lilac),var(--rfa-surface))}.rfa-app-page .rfa-stat-icon{background:var(--rfa-surface);color:var(--rfa-accent)}
.rfa-account-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:25px 0 30px}.rfa-account-shortcuts>a{display:flex;align-items:center;gap:13px;border:1px solid var(--rfa-line);border-radius:16px;padding:17px;background:var(--rfa-surface);box-shadow:var(--rfa-shadow)}.rfa-account-shortcuts>a:nth-child(2){background:var(--rfa-pink)}.rfa-account-shortcuts>a:nth-child(3){background:var(--rfa-blue)}.rfa-account-shortcuts>a:nth-child(4){background:var(--rfa-green)}.rfa-account-shortcuts>a>svg{color:var(--rfa-accent);flex-shrink:0}.rfa-account-shortcuts strong{display:block;font-size:calc(var(--rfa-font-base) * 0.75);font-weight:500}.rfa-account-shortcuts small{font-size:calc(var(--rfa-font-base) * 0.5625);color:var(--rfa-muted)}
.rfa-community-banner{background:var(--rfa-rainbow);border:1px solid var(--rfa-line)}.rfa-app-page .rfa-button:not(.rfa-button-soft):not(.rfa-button-white){background:var(--rfa-button-bg,#906c2b);color:var(--rfa-button-text,#fff)!important}.rfa-app-page .rfa-course-card{border-color:var(--rfa-line)}.rfa-app-page .rfa-course-card:hover{border-color:var(--rfa-gold)}.rfa-app-page .rfa-progress>span{background:linear-gradient(90deg,#c5a163,#b8bdd1,#a6c7b5)}
/* Native Tutor content is embedded without a second dashboard shell. */
.rfa-panel-tabs{display:flex;flex-wrap:wrap;gap:7px;padding:10px;margin-bottom:24px;background:var(--rfa-surface);border:1px solid var(--rfa-line);border-radius:15px}.rfa-panel-tabs>a{padding:9px 13px;border-radius:10px;font-size:calc(var(--rfa-font-base) * 0.6875);color:var(--rfa-muted)}.rfa-panel-tabs>a:hover,.rfa-panel-tabs>a[aria-current=page]{background:var(--rfa-soft);color:var(--rfa-accent)}
.rfa-tutor-panel{min-width:0;color:var(--rfa-ink);font-family:var(--rfa-font-body)}.rfa-tutor-panel>*{max-width:100%;min-width:0}.rfa-tutor-panel :is(.tutor-card,.tutor-student-dashboard-stats,.tutor-dashboard-content){border-radius:18px;border-color:var(--rfa-line);background:var(--rfa-surface)}.rfa-tutor-panel .tutor-account-container{width:100%;padding:0;max-width:none}.rfa-tutor-panel .tutor-profile-header{display:none}.rfa-tutor-panel .tutor-stat-card{border:1px solid var(--rfa-line);border-radius:16px;background:var(--rfa-surface)}.rfa-tutor-panel :is(.tutor-btn,.tutor-form-control){border-radius:11px}.rfa-tutor-panel :is(h1,h2,h3,h4,h5,h6){font-family:inherit;color:var(--rfa-ink)}
@media(min-width:1025px){.rfa-sidebar-collapsed .rfa-app-shell{grid-template-columns:76px minmax(0,1fr)}.rfa-sidebar-collapsed .rfa-sidebar{padding-inline:10px}.rfa-sidebar-collapsed .rfa-brand{padding:3px 0 26px;justify-content:center}.rfa-sidebar-collapsed .rfa-brand-name,.rfa-sidebar-collapsed .rfa-sidebar-caption,.rfa-sidebar-collapsed .rfa-nav-chevron,.rfa-sidebar-collapsed .rfa-submenu{display:none}.rfa-sidebar-collapsed .rfa-nav-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.rfa-sidebar-collapsed .rfa-navigation>a,.rfa-sidebar-collapsed .rfa-nav-group>summary,.rfa-sidebar-collapsed .rfa-collapse-button,.rfa-sidebar-collapsed .rfa-website-link{justify-content:center;padding-inline:0;gap:0}.rfa-sidebar-collapsed .rfa-collapse-button svg{transform:rotate(180deg)}}
@media(max-width:1200px){.rfa-account-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1024px){.rfa-app-shell{display:block}.rfa-app-page .rfa-sidebar{position:fixed;left:0;top:var(--rfa-shell-top)!important;width:285px;max-width:88vw;height:calc(100dvh - var(--rfa-shell-top))!important;z-index:102;padding-top:24px}.rfa-app-page .rfa-sidebar .rfa-brand{padding-top:15px}.rfa-app-page .rfa-collapse-button{display:none}.rfa-topbar{height:84px}.rfa-nav-open .rfa-sidebar{transform:none}.rfa-app-page .rfa-sidebar-close{top:10px}.rfa-app-page .rfa-sidebar-footer{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}}
@media(max-width:782px){.admin-bar.rfa-app-page{--rfa-shell-top:46px}}
@media(max-width:600px){.admin-bar.rfa-app-page{--rfa-shell-top:0px}.rfa-app-page .rfa-topbar{height:88px;padding:16px}.rfa-topbar-actions{gap:6px}.rfa-app-page .rfa-main{padding-top:25px}.rfa-account-shortcuts{gap:9px;margin-top:18px}.rfa-account-shortcuts>a{padding:14px 11px;gap:9px}.rfa-account-shortcuts strong{font-size:calc(var(--rfa-font-base) * 0.6875)}.rfa-account-shortcuts small{font-size:calc(var(--rfa-font-base) * 0.5)}.rfa-account-shortcuts>a>svg{width:18px}.rfa-panel-intro{align-items:flex-start;flex-direction:column;gap:13px}.rfa-panel-tabs{gap:4px;padding:7px}.rfa-panel-tabs>a{font-size:calc(var(--rfa-font-base) * 0.625);padding:8px 10px}.rfa-tutor-panel :is(table,.tutor-table-wrapper){max-width:100%;overflow-x:auto}.rfa-tutor-panel .tutor-donut-chart{max-width:100%}}
@media(prefers-reduced-motion:reduce){.rfa-app-shell,.rfa-nav-chevron{transition:none}}

/* Comfortable type at normal browser zoom, including the responsive shell. */
.rfa-app-page{font-size:calc(var(--rfa-font-base) * 0.9375)}.rfa-navigation>a,.rfa-nav-group>summary{font-size:calc(var(--rfa-font-base) * 0.875);min-height:48px}.rfa-submenu>a{font-size:calc(var(--rfa-font-base) * 0.8125);line-height:1.6}.rfa-nav-group>summary .rfa-nav-chevron{width:16px;height:16px;flex:0 0 16px;margin-inline-start:auto;transition:transform .18s ease}.rfa-app-page .rfa-sidebar button.rfa-collapse-button{font-size:calc(var(--rfa-font-base) * 0.8125)}.rfa-sidebar-footer .rfa-website-link{font-size:calc(var(--rfa-font-base) * 0.75);line-height:1.5}.rfa-topbar-title>strong{font-size:calc(var(--rfa-font-base) * 1)}.rfa-profile-menu summary,.rfa-profile-menu>div a{font-size:calc(var(--rfa-font-base) * 0.8125)}.rfa-app-page .rfa-button{font-size:calc(var(--rfa-font-base) * 0.875)}.rfa-app-page .rfa-page-heading p,.rfa-account-intro p,.rfa-panel-intro p,.rfa-app-page .rfa-featured p{font-size:calc(var(--rfa-font-base) * 0.875);line-height:1.75}.rfa-account-shortcuts strong{font-size:calc(var(--rfa-font-base) * 0.875)}.rfa-account-shortcuts small{font-size:calc(var(--rfa-font-base) * 0.75);line-height:1.6}.rfa-app-page .rfa-stats small{font-size:calc(var(--rfa-font-base) * 0.75)}.rfa-app-page .rfa-course-title{font-size:calc(var(--rfa-font-base) * 0.9375)}.rfa-app-page .rfa-section-head p,.rfa-app-page .rfa-course-card small,.rfa-app-page .rfa-course-meta{font-size:calc(var(--rfa-font-base) * 0.75)}.rfa-panel-tabs>a{font-size:calc(var(--rfa-font-base) * 0.8125)}.rfa-tutor-panel{font-size:calc(var(--rfa-font-base) * 0.9375)}.rfa-app-page .rfa-main :is(.woocommerce,.woocommerce table.shop_table){font-size:calc(var(--rfa-font-base) * 0.875)}.rfa-app-page .rfa-account-shortcuts{align-items:stretch}.rfa-account-shortcuts>a>span{min-width:0;overflow-wrap:anywhere}.rfa-account-shortcuts>a>svg{flex-shrink:0}.rfa-topbar-title{min-width:0}.rfa-topbar-title>strong{overflow-wrap:anywhere}.rfa-app-page .rfa-main{scroll-margin-top:calc(var(--rfa-shell-top) + 110px)}
@media(max-width:600px){.rfa-account-shortcuts strong{font-size:calc(var(--rfa-font-base) * 0.8125)}.rfa-account-shortcuts small{font-size:calc(var(--rfa-font-base) * 0.6875)}.rfa-account-shortcuts>a{gap:9px;padding:14px 11px}.rfa-app-page .rfa-button{font-size:calc(var(--rfa-font-base) * 0.8125)}.rfa-app-page .rfa-page-heading p,.rfa-account-intro p,.rfa-panel-intro p{font-size:calc(var(--rfa-font-base) * 0.8125)}.rfa-panel-tabs>a{font-size:calc(var(--rfa-font-base) * 0.75)}.rfa-topbar-caption{font-size:calc(var(--rfa-font-base) * 0.5625)}.rfa-topbar-title>strong{font-size:calc(var(--rfa-font-base) * 0.875)}.rfa-app-page .rfa-topbar{height:auto;min-height:88px}.rfa-topbar-actions{flex-shrink:0}.rfa-profile-menu summary>span:not(.rfa-profile-avatar){max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
.rfa-profile-menu summary .rfa-profile-chevron{width:16px;height:16px;flex:0 0 16px;transition:transform .18s ease}.rfa-profile-menu[open] summary .rfa-profile-chevron{transform:rotate(180deg)}
.rfa-main .woocommerce-MyAccount-content{max-width:100%;box-sizing:border-box;overflow-x:auto}.rfa-main .woocommerce-MyAccount-content :is(section,article,form,div){box-sizing:border-box}
/* Mage event dashboard ships at 119%; constrain its actual root, not the page. */
.rfa-main .mpwem-event-bookings-dashboard{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.rfa-main .mpwem-event-bookings-dashboard .mpwem-search-input{min-width:0;width:auto;flex:1 1 200px}
.rfa-main .mpwem-event-bookings-dashboard .mpwem-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.rfa-main .mpwem-event-bookings-dashboard .mpwem-bookings-table-wrapper{max-width:100%;overflow-x:auto}
.rfa-main .mpwem-event-bookings-dashboard :is(.mpwem-dashboard-header h2,.mpwem-dashboard-description){color:var(--rfa-ink)}
.rfa-panel-course-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}
@media(max-width:600px){.rfa-main .mpwem-event-bookings-dashboard .mpwem-stats{grid-template-columns:minmax(0,1fr)}}
.rfa-main .mpwem-event-bookings-dashboard .mpwem-filter-group{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap}
.rfa-main .mpwem-event-bookings-dashboard .mpwem-search-input{height:46px;min-height:46px;margin:0}
.rfa-main .mpwem-event-bookings-dashboard .mpwem-stats{display:grid}
.rfa-main .mpwem-event-bookings-dashboard .mpwem-btn-search{background:var(--rfa-accent);color:var(--rfa-surface);border-radius:10px}
.rfa-main .mpwem-event-bookings-dashboard .mpwem-stat-item{min-width:0;box-sizing:border-box}
.rfa-main .mpwem-event-bookings-dashboard table td[colspan]:before{display:none}
@media(max-width:600px){.rfa-main .mpwem-event-bookings-dashboard .mpwem-search-input{flex:1 1 100%}}

.rfa-main .mpwem-event-bookings-dashboard{--color_theme:var(--rfa-accent)}
