:root{--mgym-portal-bg:#061019;--mgym-portal-panel:#0e1a24;--mgym-portal-panel-2:#111f2a;--mgym-portal-line:#223440;--mgym-portal-ink:#edf6f5;--mgym-portal-muted:#91a4a5;--mgym-portal-teal:#35dbb6;--mgym-portal-blue:#3d91d7;--mgym-portal-danger:#f18989}
*{box-sizing:border-box}.mgym-portal-page{background:var(--mgym-portal-bg);color:var(--mgym-portal-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0;min-height:100vh}.mgym-portal-page:before{background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:46px 46px;content:"";inset:0;mask-image:linear-gradient(to bottom,black,transparent 72%);pointer-events:none;position:fixed}.mgym-portal-ambient{inset:0;overflow:hidden;pointer-events:none;position:fixed}.mgym-portal-ambient span{border-radius:50%;filter:blur(8px);opacity:.22;position:absolute}.mgym-portal-ambient span:first-child{background:#117e70;height:420px;right:-180px;top:-220px;width:420px}.mgym-portal-ambient span:last-child{background:#175c9e;bottom:-260px;height:520px;left:-260px;width:520px}
.mgym-portal-shell-header{align-items:center;backdrop-filter:blur(20px);background:rgba(6,16,25,.78);border-bottom:1px solid rgba(51,74,87,.72);display:flex;height:78px;justify-content:space-between;padding:0 max(24px,calc((100vw - 1240px)/2));position:sticky;top:0;z-index:100}.mgym-portal-brand{align-items:center;color:#f5fbfa!important;display:flex;gap:12px;text-decoration:none}.mgym-portal-brand>span:first-child{align-items:center;background:linear-gradient(135deg,var(--mgym-portal-teal),var(--mgym-portal-blue));border-radius:13px;box-shadow:0 10px 30px rgba(36,198,180,.22);color:#041310;display:flex;font-size:20px;font-weight:900;height:43px;justify-content:center;width:43px}.mgym-portal-brand>span:last-child{display:grid}.mgym-portal-brand strong{font-size:14px;max-width:330px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mgym-portal-brand small{color:#75898b;font-size:9px;font-weight:700;letter-spacing:.8px;margin-top:2px;text-transform:uppercase}.mgym-portal-shell-actions{align-items:center;display:flex;gap:16px}.mgym-portal-online{align-items:center;color:#839799;display:flex;font-size:11px;gap:8px}.mgym-portal-online i,.mgym-portal-shell-footer i{background:#39dda9;border-radius:50%;box-shadow:0 0 0 4px rgba(57,221,169,.08),0 0 13px rgba(57,221,169,.45);height:7px;width:7px}.mgym-portal-logout{align-items:center;border:1px solid #2b404d;border-radius:10px;color:#b6c5c4!important;display:flex;font-size:12px;font-weight:700;gap:8px;padding:9px 11px;text-decoration:none}.mgym-portal-logout:hover{border-color:#3b756c;color:#62e4c7!important}.mgym-portal-logout b{font-size:15px}.mgym-portal-shell-main{margin:0 auto;max-width:1280px;min-height:calc(100vh - 154px);padding:24px 20px 40px;position:relative}.mgym-portal-shell-footer{align-items:center;border-top:1px solid rgba(43,62,73,.55);color:#6e8385;display:flex;font-size:11px;justify-content:space-between;margin:0 auto;max-width:1240px;padding:22px 0 30px;position:relative}.mgym-portal-shell-footer span:last-child{align-items:center;display:flex;gap:9px}.mgym-portal-page #wpadminbar{display:none!important}.admin-bar.mgym-portal-page{margin-top:0!important}
.mgym-portal{--ink:var(--mgym-portal-ink);--muted:var(--mgym-portal-muted);--green:var(--mgym-portal-teal);--soft:#15302f;--line:var(--mgym-portal-line);color:var(--ink);margin:0 auto;max-width:1240px}.mgym-portal>header{align-items:flex-end;background:linear-gradient(135deg,rgba(19,36,47,.96),rgba(13,28,39,.94));border:1px solid #28414e;border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.25);display:flex;justify-content:space-between;overflow:hidden;padding:30px;position:relative}.mgym-portal>header:after{background:radial-gradient(circle,rgba(53,219,182,.22),transparent 68%);content:"";height:260px;position:absolute;right:-80px;top:-130px;width:260px}.mgym-portal>header p{color:var(--green);font-size:10px;font-weight:800;letter-spacing:1.2px;margin:0;text-transform:uppercase}.mgym-portal>header h2{color:#f5fbfa;font-size:34px;font-weight:780;letter-spacing:-1.2px;margin:5px 0 0}.mgym-portal>header>span{background:rgba(53,219,182,.1);border:1px solid rgba(68,226,194,.2);border-radius:999px;color:#68e4ca;font-size:12px;font-weight:750;padding:9px 14px;position:relative;z-index:1}.mgym-portal-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));margin:15px 0}.mgym-portal-grid>article{background:linear-gradient(145deg,#101e28,#0c1821);border:1px solid var(--line);border-radius:18px;padding:20px;position:relative}.mgym-portal-grid>article:before{background:var(--green);border-radius:999px;content:"";height:3px;left:20px;opacity:.7;position:absolute;top:0;width:42px}.mgym-portal-grid article small{color:#7f9496;font-size:10px;font-weight:750;letter-spacing:.7px;text-transform:uppercase}.mgym-portal-grid article strong{color:#edf6f5;display:block;font-size:20px;margin-top:7px}.mgym-portal-grid article p{color:var(--muted);font-size:12px;margin:6px 0 0}
.mgym-portal>nav{backdrop-filter:blur(20px);background:linear-gradient(135deg,rgba(19,53,57,.96),rgba(13,35,48,.97));border:1px solid rgba(67,202,176,.48);border-radius:15px;box-shadow:0 13px 36px rgba(0,0,0,.28),inset 0 1px 0 rgba(126,239,216,.08);display:flex;gap:7px;margin:0 0 18px;overflow:auto;padding:8px;position:sticky;scrollbar-width:none;top:88px;z-index:80}.mgym-portal>nav::-webkit-scrollbar{display:none}.mgym-portal>nav a{background:rgba(5,18,25,.58);border:1px solid rgba(103,190,177,.13);border-radius:9px;color:#c0d2d1!important;flex:0 0 auto;font-size:11px;font-weight:750;padding:10px 12px;text-decoration:none;transition:.16s}.mgym-portal>nav a:hover,.mgym-portal>nav a:focus{background:#1b4d47;border-color:#46bda6;color:#f3fffc!important;outline:0;transform:translateY(-1px)}
.mgym-portal section{background:linear-gradient(145deg,rgba(16,29,39,.98),rgba(12,23,32,.98));border:1px solid var(--line);border-radius:20px;box-shadow:0 14px 42px rgba(0,0,0,.12);margin-top:14px;padding:24px;scroll-margin-top:150px}.mgym-portal section h3{color:#edf5f4;font-size:19px;letter-spacing:-.3px;margin-top:0}.mgym-portal section>p{color:var(--muted)}.mgym-portal-list{display:grid;gap:10px}.mgym-portal-list article{background:#0c1720;border:1px solid #22343f;border-radius:13px;padding:15px}.mgym-portal-list article small{color:#829698;display:block}.mgym-portal-list article strong{color:#e4edec;display:block;font-size:16px;margin-top:0}.mgym-portal-list article h4{color:#dce7e6;font-size:15px;margin:8px 0 0}.mgym-portal-list article p{color:var(--muted);margin:5px 0}.mgym-portal-list--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.mgym-portal-empty{color:var(--muted)}.mgym-subtitle{color:#dbe6e5;margin:22px 0 10px}.mgym-disclaimer{background:#0b161e;border:1px solid #20313c;border-radius:10px;color:var(--muted);font-size:12px;padding:11px}
.mgym-notices-heading{align-items:center;display:flex;gap:14px;justify-content:space-between}.mgym-notices-heading h3{margin-bottom:0}.mgym-notices-heading span{background:#35dbb6;border-radius:999px;box-shadow:0 0 22px rgba(53,219,182,.3);color:#041511;font-size:10px;font-weight:900;letter-spacing:.7px;padding:7px 11px;text-transform:uppercase}.mgym-portal section.mgym-notices-section.has-notices{background:linear-gradient(135deg,rgba(18,65,57,.92),rgba(13,35,39,.98));border-color:#36bca2;box-shadow:0 18px 55px rgba(16,153,129,.18),inset 0 1px 0 rgba(113,241,215,.08)}.mgym-notices-section.has-notices .mgym-portal-list{margin-top:17px}.mgym-notices-section.has-notices .mgym-portal-list article{background:rgba(5,24,27,.78);border-color:rgba(78,218,190,.34);box-shadow:0 8px 25px rgba(0,0,0,.16)}.mgym-notices-section.has-notices .mgym-portal-list article strong{color:#effffb}.mgym-notices-section.has-notices .mgym-portal-list article p{color:#b8d2ce}
.mgym-pay{background:linear-gradient(135deg,#28d4ad,#2d86c9);border:0;border-radius:10px;color:#041310!important;cursor:pointer;font-family:inherit;font-size:13px;font-weight:800;min-height:42px;padding:10px 14px;text-decoration:none}.mgym-pay:hover{filter:brightness(1.09)}.mgym-pay:disabled{background:#31424b;color:#879799!important;cursor:not-allowed;filter:none}.mgym-secondary{background:#172630;border:1px solid #2b414d;border-radius:10px;color:#b9c8c7!important;cursor:pointer;font-family:inherit;font-weight:700;padding:10px 14px;text-decoration:none}.mgym-secondary:hover{border-color:#3a756b;color:#63e1c5!important}.mgym-class-row,.mgym-payment-box{align-items:center;display:flex;gap:16px;justify-content:space-between}.mgym-class-row form{flex:0 0 auto}.mgym-payment-box{background:#0b171f;border:1px solid #20343e;border-radius:14px;margin-bottom:12px;padding:17px}.mgym-payment-box small,.mgym-payment-box strong{display:block}.mgym-payment-box small{color:#7d9294;font-size:10px;font-weight:750;letter-spacing:.6px;text-transform:uppercase}.mgym-payment-box strong{color:#e5efee;font-size:20px;margin-top:5px}.mgym-payment-box p{color:var(--muted);margin:4px 0 0}.mgym-payment-list article{align-items:center;display:flex;gap:16px;justify-content:space-between}.mgym-payment-list article>div{min-width:0}.mgym-payment-list form{flex:0 0 auto;margin:0}.mgym-payment-list .mgym-pay{white-space:nowrap}
.mgym-portal-message{background:rgba(44,193,145,.12);border:1px solid rgba(67,218,174,.28);border-radius:12px;color:#74e2c3;font-weight:700;margin:12px 0;padding:13px}.mgym-portal-message.is-error{background:rgba(215,89,89,.11);border-color:rgba(241,137,137,.25);color:#f2a3a3}.mgym-portal .mgym-checkin-panel{align-items:center;background:linear-gradient(135deg,rgba(23,66,57,.65),rgba(13,37,37,.7));border-color:#28594f;display:flex;gap:20px;justify-content:space-between}.mgym-checkin-copy small{color:#63e1c3;font-size:9px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.mgym-checkin-copy h3{margin:4px 0!important}.mgym-checkin-copy p{color:#a3b7b4;margin:4px 0}.mgym-checkin-copy>span{color:#819694;display:block;font-size:11px;margin-top:8px}.mgym-checkin-button{background:linear-gradient(135deg,#2bd6ad,#2b88c9);border:0;border-radius:12px;color:#031310;cursor:pointer;font-size:14px;font-weight:800;min-height:50px;padding:12px 19px;white-space:nowrap}.mgym-checkin-button:hover{filter:brightness(1.08)}.mgym-checkin-button:disabled{background:#35454d;color:#889697;cursor:not-allowed}.mgym-checkin-time{background:rgba(57,221,169,.1);border:1px solid rgba(57,221,169,.2);border-radius:999px;color:#69e0bf;display:block;font-size:12px;padding:9px 12px;white-space:nowrap}.mgym-portal .mgym-checkin-panel.is-blocked{background:linear-gradient(135deg,rgba(71,30,37,.7),rgba(40,22,29,.7));border-color:#633842}.mgym-checkin-panel.is-blocked .mgym-checkin-copy small,.mgym-checkin-panel.is-blocked .mgym-checkin-copy h3{color:#f09696}
.mgym-login{margin:8vh auto!important;max-width:500px;padding:30px!important}.mgym-login>h2{font-size:28px!important}.mgym-login>p{color:var(--muted)}.mgym-login label{color:#b8c7c6;font-size:12px;font-weight:700}.mgym-login input[type=text],.mgym-login input[type=password]{background:#08141c;border:1px solid #2a3d48;border-radius:11px;color:#fff;min-height:48px;padding:10px 12px;width:100%}.mgym-login input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(53,219,182,.11);outline:0}.mgym-login input[type=submit]{background:linear-gradient(135deg,#2bd5ae,#2e87c9);border:0;border-radius:11px;color:#041310;font-weight:800;min-height:45px;padding:11px 18px}.mgym-login .login-remember{color:#889b9d}.mgym-alert{text-align:center}
.mgym-portal :focus-visible{outline:2px solid #51dfc1;outline-offset:3px}
.mgym-portal section.mgym-wellness-panel{align-items:center;background:linear-gradient(135deg,rgba(36,48,71,.96),rgba(18,48,51,.96));border-color:#3d6666;display:flex;gap:22px;justify-content:space-between}.mgym-wellness-panel>div:first-child small{color:#67dfc5;font-size:9px;font-weight:850;letter-spacing:1px;text-transform:uppercase}.mgym-wellness-panel h3{margin:5px 0!important}.mgym-wellness-panel p{color:#a5b8b7;margin:4px 0}.mgym-wellness-panel form{margin:0}.mgym-mood-options{display:flex;gap:8px}.mgym-mood-options button{background:#0c1a23;border:1px solid #304750;border-radius:13px;color:#c2d0cf;cursor:pointer;display:grid;font:inherit;gap:4px;justify-items:center;min-height:76px;min-width:72px;padding:9px 7px;transition:.16s}.mgym-mood-options button:hover,.mgym-mood-options button:focus{background:#173936;border-color:#48a993;color:#fff;transform:translateY(-2px)}.mgym-mood-options button>span{font-size:28px;line-height:1}.mgym-mood-options button small{font-size:9px;font-weight:750;line-height:1.15}.mgym-wellness-result{align-items:center;background:rgba(47,208,168,.1);border:1px solid rgba(82,225,190,.25);border-radius:14px;color:#8ce8d1;display:flex;gap:10px;padding:11px 15px}.mgym-wellness-result span{font-size:28px}.mgym-wellness-panel.is-recorded{background:linear-gradient(135deg,rgba(18,57,49,.94),rgba(14,39,45,.96))}@media(max-width:760px){.mgym-portal section.mgym-wellness-panel{align-items:stretch;flex-direction:column}.mgym-mood-options{display:grid;grid-template-columns:repeat(5,minmax(58px,1fr));overflow-x:auto}.mgym-mood-options button{min-width:58px}.mgym-wellness-result{justify-content:center}}
@media(max-width:760px){.mgym-portal-shell-header{height:68px;padding:0 15px}.mgym-portal-brand>span:first-child{border-radius:11px;height:38px;width:38px}.mgym-portal-brand strong{max-width:180px}.mgym-portal-brand small,.mgym-portal-online,.mgym-portal-logout span{display:none}.mgym-portal-logout{padding:8px}.mgym-portal-shell-main{padding:14px 10px 30px}.mgym-portal-shell-footer{align-items:flex-start;flex-direction:column;gap:8px;margin:0 14px;padding:18px 0 26px}.mgym-portal>header{align-items:flex-start;border-radius:19px;gap:14px;padding:22px}.mgym-portal>header h2{font-size:27px}.mgym-portal>header>span{font-size:10px;padding:7px 10px}.mgym-portal-grid{gap:9px;grid-template-columns:1fr}.mgym-portal>nav{top:76px}.mgym-portal section{border-radius:17px;padding:18px;scroll-margin-top:130px}.mgym-portal-list--compact{grid-template-columns:1fr}.mgym-class-row,.mgym-payment-box,.mgym-portal .mgym-checkin-panel,.mgym-payment-list article{align-items:stretch;flex-direction:column}.mgym-checkin-panel form,.mgym-checkin-button,.mgym-payment-list .mgym-pay{min-height:48px;width:100%}.mgym-checkin-time{white-space:normal}.mgym-login{margin:3vh auto!important}}
