/* Gym Manager Advanced Addon - premium frontend UI */
.gmmaa-body .gmmf-app,.gmmf-app{--adv-bg:#eef4ff;--adv-card:#ffffff;--adv-text:#0f172a;--adv-muted:#64748b;--adv-line:rgba(15,23,42,.08);--adv-blue:#2563eb;--adv-purple:#7c3aed;--adv-green:#059669;--adv-red:#dc2626;--adv-orange:#ea580c}
.gmmaa-body .gmmf-app{background:radial-gradient(circle at top left,rgba(37,99,235,.14),transparent 34%),linear-gradient(145deg,#f8fbff,#eef4ff)!important}
.gmmaa-body .gmmf-app-panel,.gmmaa-body .gmmf-app-cards>div{border:1px solid var(--adv-line)!important;box-shadow:0 22px 54px rgba(15,23,42,.075)!important}
.gmmaa-body .gmmf-app-panel:hover,.gmmaa-body .gmmf-app-cards>div:hover{box-shadow:0 28px 70px rgba(15,23,42,.10)!important;transform:translateY(-1px);transition:.18s ease}
.gmmaa-body .gmmf-app-hero{background:linear-gradient(135deg,#fff 0%,#eff6ff 55%,#f5f3ff 100%)!important;border:1px solid rgba(37,99,235,.12)!important}
.gmmaa-body .gmmf-app-hero h1{letter-spacing:-.04em!important}.gmmaa-body .gmmf-app-hero:after{content:'Advanced App';display:inline-flex;align-items:center;border-radius:999px;background:#ecfeff;color:#0369a1;padding:8px 12px;font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.gmmadv-dashboard{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin-bottom:18px}.gmmadv-panel{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:26px;padding:20px;box-shadow:0 18px 44px rgba(15,23,42,.065)}.gmmadv-panel h3{margin:0 0 14px;font-size:18px;letter-spacing:-.02em}.gmmadv-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gmmadv-metric{border-radius:22px;padding:16px;background:linear-gradient(135deg,#f8fafc,#eef6ff);border:1px solid rgba(37,99,235,.09);position:relative;overflow:hidden}.gmmadv-metric:after{content:'';position:absolute;width:72px;height:72px;border-radius:50%;right:-25px;top:-25px;background:rgba(37,99,235,.10)}.gmmadv-metric b{display:block;font-size:28px;letter-spacing:-.04em;color:#0f172a}.gmmadv-metric span{display:block;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin-top:4px}.gmmadv-risk-list{display:grid;gap:9px;max-height:410px;overflow:auto;padding-right:3px}.gmmadv-risk-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:1px solid #eef2f7;border-radius:18px;background:#fff;text-decoration:none;color:#0f172a}.gmmadv-risk-item:hover{background:#f8fbff}.gmmadv-risk-main strong{display:block}.gmmadv-risk-main small{color:#64748b;font-weight:700}.gmmadv-risk-pill{white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.gmmadv-risk-green{background:#ecfdf5;color:#047857}.gmmadv-risk-yellow{background:#fffbeb;color:#b45309}.gmmadv-risk-red{background:#fef2f2;color:#b91c1c}.gmmadv-calendar-help{margin:0 0 12px;background:#eef2ff;color:#3730a3;border:1px solid #c7d2fe;border-radius:18px;padding:12px 14px;font-weight:800}.gmmadv-draggable-row{cursor:grab}.gmmadv-draggable-row:active{cursor:grabbing}.gmmadv-drag-handle{display:inline-flex;align-items:center;justify-content:center;margin-right:8px;width:24px;height:24px;border-radius:9px;background:#eef2ff;color:#1d4ed8;font-weight:900}.gmmadv-drop-target{outline:3px dashed rgba(37,99,235,.35)!important;outline-offset:5px;background:linear-gradient(180deg,#fff,#eff6ff)!important}.gmmadv-drop-deny{outline:3px dashed rgba(220,38,38,.28)!important;outline-offset:5px}.gmmaa-body .gmmf-class-card{transition:.2s ease;border-left:0!important;position:relative;overflow:hidden}.gmmaa-body .gmmf-class-card:before{content:'';position:absolute;left:0;top:0;bottom:0;width:7px;background:linear-gradient(180deg,var(--adv-blue),var(--adv-purple))}.gmmaa-body .gmmf-badge{font-size:12px!important}.gmmaa-body .gmmf-badge.wait{background:#fff7ed!important;color:#c2410c!important}.gmmaa-body .gmmf-btn,.gmmaa-body .gmmf-link{transition:.15s ease}.gmmaa-body .gmmf-btn:hover{transform:translateY(-1px)}.gmmaa-body .gmmf-app-table tr{transition:.12s ease}.gmmaa-body .gmmf-app-table tr:hover td{background:#f8fbff!important}.gmmadv-toast{position:fixed;right:18px;bottom:18px;z-index:999999;background:#0f172a;color:#fff;border-radius:18px;padding:14px 16px;font-weight:800;box-shadow:0 18px 45px rgba(15,23,42,.22);max-width:360px}.gmmadv-toast button{margin-left:10px;border:0;background:#fff;color:#0f172a;border-radius:10px;padding:5px 8px;font-weight:900;cursor:pointer}@media(max-width:1000px){.gmmadv-dashboard{grid-template-columns:1fr}.gmmadv-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.gmmadv-metrics{grid-template-columns:1fr}.gmmaa-body .gmmf-app-hero:after{display:none}.gmmadv-risk-item{align-items:flex-start;flex-direction:column}.gmmadv-risk-pill{white-space:normal}}

/* Weekly calendar view */
.gmmadv-week-wrap{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:28px;box-shadow:0 22px 54px rgba(15,23,42,.075);padding:18px;margin:0 0 18px;overflow:hidden}.gmmadv-week-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.gmmadv-week-head h3{margin:0;font-size:22px;letter-spacing:-.03em}.gmmadv-week-head p{margin:4px 0 0;color:#64748b;font-weight:800}.gmmadv-week-actions{display:flex;gap:8px;flex-wrap:wrap}.gmmadv-week-actions a{display:inline-flex;align-items:center;border-radius:14px;padding:10px 12px;background:#eff6ff;color:#1d4ed8;text-decoration:none;font-weight:900;border:1px solid #dbeafe}.gmmadv-week-actions a:hover{background:#dbeafe}.gmmadv-week-grid{display:grid;grid-template-columns:74px repeat(7,minmax(160px,1fr));gap:1px;background:#e5e7eb;border:1px solid #e5e7eb;border-radius:22px;overflow:auto}.gmmadv-week-corner,.gmmadv-week-day,.gmmadv-week-hour,.gmmadv-week-cell{background:#fff}.gmmadv-week-corner,.gmmadv-week-day{position:sticky;top:0;z-index:2}.gmmadv-week-corner{left:0;z-index:3;display:flex;align-items:center;justify-content:center;font-weight:900;color:#64748b;background:#f8fafc}.gmmadv-week-day{text-align:center;padding:12px 8px;font-weight:900;color:#0f172a;background:#f8fafc}.gmmadv-week-day strong{font-size:17px}.gmmadv-week-hour{position:sticky;left:0;z-index:1;min-height:112px;display:flex;align-items:flex-start;justify-content:center;padding-top:12px;font-size:12px;font-weight:900;color:#64748b;background:#f8fafc}.gmmadv-week-cell{min-height:112px;padding:8px;display:grid;gap:7px;align-content:start}.gmmadv-week-class{border-radius:18px;background:linear-gradient(135deg,#eff6ff,#f5f3ff);border:1px solid rgba(37,99,235,.16);padding:10px;box-shadow:0 10px 26px rgba(37,99,235,.08);cursor:pointer;transition:.15s ease}.gmmadv-week-class:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(37,99,235,.14)}.gmmadv-week-time{font-size:12px;font-weight:1000;color:#1d4ed8}.gmmadv-week-title{margin-top:3px;font-weight:1000;color:#0f172a;line-height:1.15}.gmmadv-week-meta{font-size:11px;color:#64748b;font-weight:800;margin-top:3px}.gmmadv-week-cap{height:18px;border-radius:999px;background:#e2e8f0;position:relative;overflow:hidden;margin-top:8px}.gmmadv-week-cap b{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2563eb,#7c3aed)}.gmmadv-week-cap span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:1000;color:#0f172a;z-index:1}.gmmadv-week-members{display:flex;gap:4px;flex-wrap:wrap;margin-top:7px}.gmmadv-week-members span,.gmmadv-week-members em{font-style:normal;border-radius:999px;background:#fff;color:#334155;border:1px solid rgba(15,23,42,.08);padding:3px 6px;font-size:10px;font-weight:900;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gmmadv-week-wait{display:inline-flex;width:max-content;border-radius:999px;background:#fff7ed;color:#c2410c;padding:4px 7px;font-size:11px;font-weight:1000;margin-top:6px}.gmmadv-week-active .gmmf-class-card{margin-top:12px}.gmmadv-week-active .gmmf-app-main>.gmmf-app-panel:has(.gmmf-class-card){opacity:.98}@media(max-width:900px){.gmmadv-week-head{align-items:flex-start;flex-direction:column}.gmmadv-week-grid{grid-template-columns:58px repeat(7,150px)}.gmmadv-week-wrap{padding:12px;border-radius:22px}.gmmadv-week-hour,.gmmadv-week-cell{min-height:120px}}
