:root{--bg:#061628;--bg2:#0b2a4b;--ink:#102033;--muted:#66788f;--card:#fff;--soft:#f4f8fc;--line:#e5edf6;--accent:#17d6a8;--accent2:#4da3ff;--gold:#f5c76b;--danger:#ef476f;--ok:#10b981;--radius:26px;--shadow:0 22px 70px rgba(6,22,40,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:linear-gradient(180deg,#f5f9fd,#edf5fb);color:var(--ink)}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.site-header{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 6vw;background:rgba(255,255,255,.82);backdrop-filter:blur(20px);border-bottom:1px solid rgba(229,237,246,.75)}.brand{display:flex;align-items:center;gap:12px;font-weight:900}.brand small{display:block;color:var(--muted);font-size:11px;letter-spacing:.2em;text-transform:uppercase}.brand-mark{width:50px;height:50px;border-radius:18px;background:linear-gradient(135deg,var(--bg),var(--accent));color:#fff;display:grid;place-items:center;font-size:13px;box-shadow:0 15px 30px rgba(23,214,168,.22)}.nav{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.nav a{padding:10px 13px;border-radius:999px;font-weight:850;color:#2a4059}.nav a:hover,.admin-tabs a:hover{background:#eef5fb}.menu-toggle{display:none;border:0;border-radius:14px;background:#eef5fb;padding:11px 14px;font-size:20px}.btn,.nav-btn,button.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;padding:13px 18px;border-radius:999px;font-weight:900;cursor:pointer;color:#fff!important;background:linear-gradient(135deg,var(--accent),var(--accent2));box-shadow:0 14px 30px rgba(23,214,168,.23)}.btn.big{padding:16px 24px;font-size:16px}.btn.secondary,.muted-btn,.btn.soft,.btn.ghost{background:#eef3f8;color:#22384f!important;box-shadow:none}.btn.danger,.danger{background:#fff0f3!important;color:#c9184a!important;box-shadow:none}.btn[disabled],button[disabled]{opacity:.5;cursor:not-allowed}.hero{padding:86px 6vw 70px;background:radial-gradient(circle at 72% 8%,rgba(23,214,168,.34),transparent 27%),radial-gradient(circle at 5% 88%,rgba(77,163,255,.27),transparent 31%),linear-gradient(135deg,var(--bg),var(--bg2));color:#fff;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(340px,.98fr);gap:42px;align-items:center;overflow:hidden}.hero h1{font-size:clamp(42px,6.8vw,82px);line-height:.95;margin:20px 0;letter-spacing:-.06em}.hero p{font-size:20px;line-height:1.8;color:#d7e6f4;max-width:760px}.badge{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid rgba(255,255,255,.24);border-radius:999px;color:#cafff1;font-weight:900;font-size:13px}.badge.dark{border:1px solid #dce8f3;background:#fff;color:#117b68}.hero-actions,.row-actions,.course-badges{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.hero-art{position:relative}.hero-art img{border-radius:44px;box-shadow:0 36px 100px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.20)}.floating-panel{position:absolute;left:-18px;bottom:26px;background:rgba(255,255,255,.92);color:var(--ink);border:1px solid rgba(255,255,255,.35);border-radius:24px;padding:16px 18px;box-shadow:0 20px 50px rgba(0,0,0,.18);min-width:230px}.floating-panel strong{display:block;font-size:26px;color:#0a7f70}.mini-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.mini-metrics div{padding:16px;border-radius:20px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14)}.mini-metrics b{font-size:24px;display:block}.section{padding:58px 6vw}.pt0{padding-top:0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}.section h1,.admin-hero h1{font-size:clamp(36px,5vw,68px);line-height:1;margin:12px 0;letter-spacing:-.045em}.section h2{font-size:34px;letter-spacing:-.03em;margin:0 0 8px}.eyebrow{color:#159d82;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.muted{color:var(--muted);line-height:1.65}.small{font-size:13px}.tiny{font-size:12px;color:var(--muted)}.grid,.stats-row,.crm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}.card,.stat,.track-card,.profile-card,.form{background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.stat{position:relative;overflow:hidden}.stat:after{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,rgba(23,214,168,.18),rgba(77,163,255,.18))}.stat strong{font-size:38px;color:#178bd7;display:block}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#eef7ff;color:#216ba8;padding:8px 12px;font-size:13px;font-weight:900;border:1px solid #dcecff}.pill.active,.pill.free{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-color:transparent}.pill.paid{background:#fff6df;color:#9a6500;border-color:#ffe2a2}.course-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:100%}.premium:before{content:"";position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,var(--accent),var(--accent2),var(--gold))}.course-card h3,.profile-card h3{font-size:23px;margin:14px 0 8px}.course-cover{height:180px;margin:-24px -24px 18px;background-size:cover;background-position:center;border-radius:var(--radius) var(--radius) 22px 22px}.course-meta{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.course-meta b{padding:9px 12px;border-radius:14px;background:#f1f6fb;font-size:13px}.course-meta.large b{font-size:14px}.tracks{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}.track-card{background:linear-gradient(145deg,#fff,#f1f9ff)}.track-card h3{font-size:25px;margin:0 0 8px}.feature-list{display:grid;gap:12px}.feature-list div{padding:18px;border-radius:22px;background:#fff;border:1px solid var(--line)}.profile-hero,.admin-hero,.dash-head{background:radial-gradient(circle at 82% 0,rgba(23,214,168,.14),transparent 25%),linear-gradient(180deg,#fff,#f3f9ff);border-bottom:1px solid var(--line)}.filters,.searchbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:18px}.searchbar input,.searchbar select{width:auto;min-width:210px}.profiles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.profile-card{overflow:hidden;padding:0}.profile-cover{height:84px;background:linear-gradient(135deg,var(--bg),var(--accent2))}.avatar{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-size:32px;font-weight:900;border:5px solid #fff;overflow:hidden;margin:-44px 0 0 22px}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.xl{width:130px;height:130px;margin:0 auto 14px;font-size:42px}.profile-body{padding:18px 22px 24px}.profile-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.verified{font-size:12px;font-weight:900;color:#067a63;background:#e8fff8;padding:7px 10px;border-radius:999px}.bio{min-height:62px;color:#42546a;line-height:1.6}.pagination{display:flex;justify-content:center;gap:8px;margin-top:28px;flex-wrap:wrap}.pagination a,.pagination span{padding:10px 14px;border-radius:14px;border:1px solid var(--line);background:#fff;font-weight:800}.pagination .active{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff}.auth-wrap{min-height:calc(100vh - 160px);display:grid;place-items:center;padding:50px 6vw;background:radial-gradient(circle at 80% 12%,rgba(23,214,168,.20),transparent 25%)}.auth-wrap .form,.login-card{width:min(960px,100%)}.login-card{display:grid;grid-template-columns:1fr .9fr;overflow:hidden;padding:0}.login-side{background:linear-gradient(135deg,var(--bg),var(--bg2));color:#fff;padding:42px}.login-side p{color:#d7e6f4;line-height:1.7}.login-side img{margin-top:20px;border-radius:24px}.login-form{box-shadow:none;border:0;border-radius:0;padding:42px}.form-grid,.dash-grid,.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{display:grid;gap:8px;margin-bottom:15px}.field label{font-size:13px;font-weight:900;color:#30475f}.field input,.field select,.field textarea,.searchbar input,.searchbar select{border:1px solid #dce7f2;border-radius:17px;padding:13px 14px;font:inherit;background:#fff;color:var(--ink);outline:none}.field input:focus,.field select:focus,.field textarea:focus,.searchbar input:focus{border-color:var(--accent2);box-shadow:0 0 0 4px rgba(77,163,255,.12)}.form-result{margin:8px 0}.alert{padding:13px 15px;border-radius:16px;font-weight:800;margin:10px 0}.alert.ok{background:#e9fff8;color:#087458}.alert.err,.alert.error{background:#fff0f3;color:#b80f40}.my-card{text-align:center}.course-line{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:13px}.status-pill{display:inline-flex;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;background:#eef3f8;color:#344a62}.status-pill.pending{background:#fff5da;color:#996d00}.status-pill.approved,.status-pill.completed{background:#e8fff8;color:#087458}.status-pill.rejected,.status-pill.cancelled{background:#fff0f3;color:#b80f40}.crm-shell{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px}.crm-side{position:sticky;top:94px;align-self:start;background:#07182d;color:#fff;border-radius:30px;padding:22px;box-shadow:var(--shadow)}.crm-side a{display:flex;padding:12px 14px;border-radius:16px;color:#dce9f7;font-weight:850}.crm-side a:hover{background:rgba(255,255,255,.09)}.crm-board{display:grid;gap:20px}.crm-card{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);padding:24px}.crm-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.kpi{padding:20px;border-radius:22px;background:linear-gradient(145deg,#fff,#f2f8ff);border:1px solid var(--line)}.kpi span{color:var(--muted);font-weight:800}.kpi strong{display:block;font-size:34px;margin-top:8px;color:#117bb9}.admin-tabs{display:flex;gap:10px;flex-wrap:wrap}.admin-tabs a{padding:12px 16px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:900}.admin-tabs a.active{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-color:transparent}.table-wrap{overflow:auto;border-radius:20px;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;background:#fff;min-width:760px}th,td{text-align:left;padding:14px;border-bottom:1px solid var(--line);vertical-align:top}th{background:#f5f9fd;color:#344a62;font-size:13px}.admin-course-thumb{width:96px;height:64px;object-fit:cover;border-radius:14px}.check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:9px}.check-grid label{background:#f6f9fc;border:1px solid var(--line);border-radius:14px;padding:10px}.mini-actions{display:flex;gap:7px;flex-wrap:wrap}.mini-actions button{border:0;border-radius:13px;padding:9px 10px;font-weight:900;background:#eef4fa;color:#243b55}.edit-modal summary{list-style:none}.edit-modal summary::-webkit-details-marker{display:none}.modal-backdrop{position:fixed;inset:0;background:rgba(4,13,24,.52);z-index:60;display:none}.modal-backdrop.show{display:block}.modal-lock{overflow:hidden}.edit-modal[open] .course-edit-box,.edit-modal[open] .member-edit-box{position:fixed;z-index:70;top:50%;left:50%;transform:translate(-50%,-50%);width:min(920px,92vw);max-height:88vh;overflow:auto;background:#fff;border-radius:28px;box-shadow:0 35px 110px rgba(0,0,0,.35);padding:24px}.current-image img{width:160px;height:100px;object-fit:cover;border-radius:18px;margin-bottom:6px}.course-detail{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px}.detail-hero{min-height:560px;border-radius:34px;background-size:cover;background-position:center;box-shadow:var(--shadow)}.detail-card h1{font-size:clamp(34px,5vw,62px);letter-spacing:-.045em;line-height:1}.lead{font-size:19px;line-height:1.7}.footer{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:26px 6vw;background:#07182d;color:#fff}.footer span,.footer a{color:#b9c9dc}.footer-links{display:flex;gap:14px;flex-wrap:wrap}.empty-state{text-align:center;padding:40px;border:1px dashed #cddbea;border-radius:24px;background:#fff}.inline-form{box-shadow:var(--shadow)}hr{border:0;border-top:1px solid var(--line);margin:20px 0}@media (max-width:980px){.hero,.dash-grid,.admin-grid,.course-detail,.login-card,.crm-shell{grid-template-columns:1fr}.crm-side{position:static}.floating-panel{position:static;margin-top:14px}.hero{padding-top:60px}.form-grid{grid-template-columns:1fr}}@media (max-width:760px){.menu-toggle{display:block}.nav{display:none;position:absolute;left:6vw;right:6vw;top:76px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:12px;box-shadow:var(--shadow);align-items:stretch}.nav.open{display:grid}.nav a{display:block}.section{padding:42px 5vw}.site-header{padding:12px 5vw}.hero{grid-template-columns:1fr;padding:52px 5vw}.hero h1{font-size:42px}.hero p{font-size:17px}.mini-metrics{grid-template-columns:1fr}.section-head{display:grid}.footer{display:grid}.searchbar input,.searchbar select{width:100%}.profiles-grid{grid-template-columns:1fr}.course-cover{height:155px}}

/* Refinements requested: cleaner CRM images, compact public profiles, instant status controls */
.compact-profile .profile-body{padding-bottom:18px}.compact-profile h3{margin-bottom:4px}.profile-country{font-weight:800;margin:0 0 14px}.profile-accordion{margin-top:12px;border-top:1px solid var(--line);padding-top:12px}.profile-accordion summary{cursor:pointer;font-weight:900;color:#117bb9;list-style:none;display:flex;align-items:center;justify-content:space-between}.profile-accordion summary::-webkit-details-marker{display:none}.profile-accordion summary:after{content:'+';width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#eef7ff}.profile-accordion[open] summary:after{content:'−'}.profile-details{padding-top:12px}.compact-bio{min-height:0;margin-bottom:0}.crm-initial{display:inline-grid!important;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-weight:900;border:0}.mini-photo{width:44px;height:44px;border-radius:14px;object-fit:cover;margin-right:10px;vertical-align:middle}.inline-status-form{display:grid;gap:5px}.status-select{border:0;border-radius:999px;padding:8px 12px;font-weight:900;outline:none}.status-select.pending{background:#fff5da;color:#996d00}.status-select.approved{background:#e8fff8;color:#087458}.status-select.rejected{background:#fff0f3;color:#b80f40}.status-msg{min-height:14px}.field input.english-only:invalid{border-color:#ef476f;box-shadow:0 0 0 4px rgba(239,71,111,.10)}

/* CRM user photos + bulk approval + profile cropper */
.crm-photo{display:inline-block!important;background:#eef4fa;border:1px solid var(--line)}
.fallback-initial{vertical-align:middle}
.bulk-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 16px;padding:14px;border:1px solid var(--line);border-radius:20px;background:#f7fbff}
.bulk-actions .form-result{margin:0;min-width:220px}
.bulk-actions .alert{margin:0;padding:9px 12px}
.crop-modal{position:fixed;inset:0;z-index:100;background:rgba(4,13,24,.62);display:none;align-items:center;justify-content:center;padding:20px}
.crop-modal.show{display:flex}
.crop-panel{width:min(560px,96vw);background:#fff;border-radius:28px;box-shadow:0 35px 110px rgba(0,0,0,.35);padding:22px}
.crop-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:20px}
.crop-close{width:38px;height:38px;border:0;border-radius:50%;background:#eef4fa;font-size:26px;line-height:1;cursor:pointer}
.crop-canvas{width:100%;max-width:420px;display:block;margin:14px auto;border-radius:24px;box-shadow:inset 0 0 0 1px var(--line);touch-action:none;background:#f4f8fc}
.crop-range{display:grid;gap:8px;font-weight:900;color:#30475f}.crop-range input{width:100%}.crop-help{display:block;margin-top:6px;color:#66788f}
@media(max-width:760px){.crop-panel{padding:16px}.crop-canvas{max-width:100%}}

.crm-member-filters{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 14px}.crm-member-filters input,.crm-member-filters select{border:1px solid #dce7f2;border-radius:16px;padding:12px 14px;font:inherit;background:#fff;color:var(--ink);outline:none}.crm-member-filters input{min-width:min(360px,100%);flex:1}.crm-photo-placeholder{display:inline-block;background:linear-gradient(135deg,#edf4fb,#dce8f4);border:1px solid #cfddeb}.crm-photo{background:#edf4fb}.crm-initial,.fallback-initial{display:none!important}


/* WSB Academy 2026 complete redesign */
:root{--bg:#f7fbff;--bg2:#eef8ff;--ink:#102033;--muted:#60758c;--card:#ffffff;--soft:#f4f9fd;--line:#dfeaf4;--accent:#17d6a8;--accent2:#4da3ff;--navy:#0b1f3a;--radius:28px;--shadow:0 24px 70px rgba(18,42,66,.10)}
body{background:radial-gradient(circle at 8% 0%,#e7fff8 0,transparent 25%),radial-gradient(circle at 92% 8%,#e7f2ff 0,transparent 28%),linear-gradient(180deg,#fbfdff,#eef7fd);}
.fresh-header{border-bottom:1px solid rgba(223,234,244,.78);box-shadow:0 10px 30px rgba(16,32,51,.04)}
.brand-mark{background:linear-gradient(135deg,var(--navy),var(--accent2) 55%,var(--accent));}
.nav-btn,.btn,button.btn{background:linear-gradient(135deg,var(--navy),var(--accent2));box-shadow:0 16px 34px rgba(77,163,255,.20)}
.btn.secondary,.muted-btn,.btn.soft,.btn.ghost{background:#edf5fb;color:#17324d!important;box-shadow:none}
.academy-home-hero{background:radial-gradient(circle at 82% 12%,rgba(23,214,168,.28),transparent 26%),linear-gradient(135deg,#f8fcff,#eaf7ff);color:var(--ink);grid-template-columns:minmax(0,1fr) minmax(350px,.95fr)}
.academy-home-hero h1{color:#0b1f3a}.academy-home-hero p{color:#526a82}.academy-home-hero .badge{background:#fff;border-color:#dceaf6;color:#117b68}.academy-home-hero .mini-metrics div{background:#fff;border:1px solid var(--line);box-shadow:0 18px 45px rgba(18,42,66,.08)}
.hero-gallery{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end}.hero-gallery img{border-radius:34px;box-shadow:0 24px 70px rgba(18,42,66,.13);border:1px solid #fff}.hero-gallery img:nth-child(2){transform:translateY(36px)}
.hero-gallery .floating-panel{left:24px;bottom:18px}.soft-intro .track-card,.tracks .track-card{background:linear-gradient(180deg,#fff,#f7fbff)}
.card,.stat,.track-card,.profile-card,.form{border-color:rgba(223,234,244,.95);box-shadow:var(--shadow)}
.join-card{max-width:980px}.modern-auth{background:radial-gradient(circle at 84% 20%,rgba(23,214,168,.20),transparent 28%),radial-gradient(circle at 10% 80%,rgba(77,163,255,.18),transparent 30%)}
.closed-card{max-width:720px;margin:60px auto;text-align:center;padding:55px 40px}.lock-icon{font-size:68px;margin-bottom:18px}.progress{height:10px;border-radius:999px;background:#e8f1f8;overflow:hidden}.progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent2))}.certificate-card{border:1px solid var(--line);border-radius:26px;padding:24px;background:linear-gradient(135deg,#fff,#f4fbff);box-shadow:var(--shadow)}.certificate-card>span{display:inline-flex;border-radius:999px;padding:8px 11px;background:#e9fff8;color:#087458;font-weight:900;font-size:12px}.certificate-card h3{font-size:24px;margin:14px 0 8px}.certificate-page{display:grid;place-items:center}.certificate-sheet{width:min(920px,100%);min-height:620px;border-radius:34px;background:linear-gradient(135deg,#fff,#f8fcff);border:10px solid #e6f2fb;box-shadow:0 30px 90px rgba(16,32,51,.16);padding:52px;text-align:center;position:relative;overflow:hidden}.certificate-sheet:before{content:"";position:absolute;inset:24px;border:1px solid #cfe3f2;border-radius:24px;pointer-events:none}.cert-top{display:flex;gap:14px;align-items:center;justify-content:center;margin-bottom:34px}.cert-top small{display:block;color:var(--muted);letter-spacing:.18em;text-transform:uppercase}.certificate-sheet h1{font-size:clamp(42px,7vw,74px);line-height:1;margin:12px 0;color:#0b1f3a}.certificate-sheet h2{font-size:clamp(26px,4vw,42px);margin:10px 0;color:#117b68}.cert-number{display:inline-flex;margin:20px 0;padding:12px 18px;border-radius:999px;background:#0b1f3a;color:#fff;font-weight:900}@media print{.site-header,.footer,.certificate-sheet .btn{display:none!important}body{background:#fff}.section{padding:0}.certificate-sheet{box-shadow:none;border:8px solid #dfeaf4;border-radius:0;width:100%;min-height:100vh}}
@media(max-width:760px){.hero-gallery{grid-template-columns:1fr}.hero-gallery img:nth-child(2){transform:none}.academy-home-hero{padding-top:42px}.certificate-sheet{padding:34px 20px}}
@media(max-width:760px){.hero-gallery{grid-template-columns:1fr}.hero-gallery img:nth-child(2){transform:none}.academy-home-hero{padding-top:42px}.certificate-sheet{padding:34px 20px}}

/* Public profiles modal redesign */
.profile-click-card{cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.profile-click-card:hover{transform:translateY(-5px);box-shadow:0 26px 80px rgba(6,22,40,.16);border-color:#cfe4f5}
.profile-open-hint{display:inline-flex;margin-top:8px;padding:9px 12px;border-radius:999px;background:#f0f8ff;color:#117bb9;font-size:13px;font-weight:900}
.profile-modal{position:fixed;inset:0;z-index:120;display:none;align-items:center;justify-content:center;padding:22px}
.profile-modal.show{display:flex}
.profile-modal__overlay{position:absolute;inset:0;background:rgba(5,16,30,.58);backdrop-filter:blur(10px)}
.profile-modal__panel{position:relative;width:min(820px,94vw);max-height:90vh;overflow:auto;background:linear-gradient(180deg,#fff,#f7fbff);border:1px solid rgba(255,255,255,.72);border-radius:34px;box-shadow:0 38px 120px rgba(0,0,0,.35);padding:30px}
.profile-modal__close{position:absolute;top:18px;right:18px;width:42px;height:42px;border:0;border-radius:50%;background:#eef4fa;color:#213b55;font-size:28px;line-height:1;cursor:pointer;font-weight:800}
.profile-modal__head{text-align:center;padding:10px 20px 22px;border-bottom:1px solid var(--line)}
.profile-modal__head .pill,.profile-modal__head .verified{margin:4px}
.profile-modal__head h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.04em;margin:12px 0 4px}
.profile-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}
.profile-info-grid div,.profile-bio-box{padding:16px;border-radius:20px;background:#fff;border:1px solid var(--line)}
.profile-info-grid b,.profile-bio-box b{display:block;color:#20384f;margin-bottom:6px;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.profile-info-grid span,.profile-bio-box p{color:#52667c;line-height:1.65;margin:0}
.profile-bio-box{margin-top:12px}
.profile-pagination a:first-child,.profile-pagination a:last-child{min-width:98px;text-align:center}
@media (max-width:640px){.profile-modal{padding:12px}.profile-modal__panel{padding:22px;border-radius:26px}.profile-info-grid{grid-template-columns:1fr}.profile-modal__close{top:12px;right:12px}.profile-pagination a:first-child,.profile-pagination a:last-child{min-width:auto}}

/* Courses status sections */
.course-list-section{margin-bottom:42px}.section-head.compact{margin-bottom:18px}.course-status-tabs{margin-top:16px}.course-badges .pill.open{background:#eafff5;color:#087458}.course-badges .pill.upcoming{background:#eef6ff;color:#1768aa}.course-badges .pill.ended{background:#fff3e8;color:#a65310}.course-state-ended{opacity:.92}.course-state-ended .course-cover{filter:grayscale(.18)}.course-state-upcoming{border-color:#dbeeff}

/* =========================================================
   WSBF ACADEMY PWA RADICAL REDESIGN - 2026
   Works with normal PHP links/forms first; JavaScript is optional.
========================================================= */
:root{
  --wsb-navy:#001F3D;
  --wsb-navy-2:#06386f;
  --wsb-blue:#1487ce;
  --wsb-sky:#e9f5ff;
  --wsb-mint:#26d6a4;
  --wsb-gold:#f4c66a;
  --wsb-ink:#091827;
  --wsb-muted:#657589;
  --wsb-line:rgba(0,31,61,.12);
  --wsb-card:rgba(255,255,255,.92);
  --wsb-shadow:0 24px 70px rgba(0,31,61,.13);
  --wsb-radius:28px;
  --safe-bottom:env(safe-area-inset-bottom,0px);
}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body.wsb-pwa-body,body{background:radial-gradient(circle at 14% 8%,rgba(20,135,206,.12),transparent 28%),radial-gradient(circle at 86% 0,rgba(38,214,164,.12),transparent 25%),linear-gradient(180deg,#f7fbff 0%,#edf5fb 100%);color:var(--wsb-ink);overscroll-behavior-y:none}
a{-webkit-tap-highlight-color:transparent}.flash-message{position:fixed;top:82px;left:50%;transform:translateX(-50%);z-index:80;max-width:min(720px,calc(100% - 28px));box-shadow:0 18px 50px rgba(0,31,61,.16)}
.site-header.wsb-app-header{position:sticky;top:0;z-index:60;padding:10px max(18px,6vw);background:rgba(255,255,255,.78);border-bottom:1px solid rgba(0,31,61,.08);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.wsb-brand{min-width:240px}.brand-logo{width:72px;height:44px;object-fit:contain;border-radius:0;background:transparent;box-shadow:none}.wsb-brand b{font-size:16px;letter-spacing:-.02em}.wsb-brand small{letter-spacing:.16em;color:var(--wsb-blue)}.wsb-brand .brand-mark{display:none}
.nav-check{display:none}.css-menu-toggle{display:none}.wsb-nav a{color:#24405f}.wsb-nav .nav-btn{background:linear-gradient(135deg,var(--wsb-navy),var(--wsb-blue));color:#fff!important;box-shadow:0 12px 32px rgba(20,135,206,.24)}
.btn,.nav-btn,button.btn{background:linear-gradient(135deg,var(--wsb-navy),var(--wsb-blue));box-shadow:0 16px 34px rgba(20,135,206,.22);color:#fff!important}.btn:hover{transform:translateY(-1px)}.btn.secondary,.muted-btn,.btn.soft,.btn.ghost{background:#eef5fb;color:var(--wsb-navy)!important;box-shadow:none}.btn.gold{background:linear-gradient(135deg,#f4c66a,#f59e0b);color:#261700!important}
.badge{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.24);color:#dff7ff}.badge.dark{background:#fff;border-color:var(--wsb-line);color:var(--wsb-navy)}.eyebrow{color:var(--wsb-blue)}.muted{color:var(--wsb-muted)}
.hero.wsb-home-hero{min-height:calc(100svh - 74px);padding:70px max(18px,6vw) 52px;background:linear-gradient(135deg,rgba(0,31,61,.96),rgba(6,56,111,.94)),url('../img/academy-banner.jpg') center/cover;color:#fff;grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr);position:relative;isolation:isolate}.hero.wsb-home-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 10%,rgba(38,214,164,.28),transparent 28%),radial-gradient(circle at 8% 80%,rgba(244,198,106,.18),transparent 28%);z-index:-1}.hero.wsb-home-hero h1{font-size:clamp(40px,6vw,80px);letter-spacing:-.065em}.hero.wsb-home-hero p{color:#d8e9f8}.hero-media-stack{position:relative;min-height:520px;display:grid;place-items:center}.hero-phone-card{width:min(390px,92%);border-radius:46px;padding:14px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.26);box-shadow:0 36px 100px rgba(0,0,0,.28);backdrop-filter:blur(12px)}.hero-phone-card img{height:420px;width:100%;object-fit:cover;border-radius:34px}.hero-float-card{position:absolute;right:0;bottom:50px;width:260px;border-radius:28px;background:rgba(255,255,255,.92);color:var(--wsb-navy);padding:18px;box-shadow:var(--wsb-shadow)}.hero-float-card b{font-size:32px;display:block}.hero-float-card span{color:var(--wsb-muted);font-weight:800}.mini-metrics div{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(12px)}
.section{padding:58px max(18px,6vw)}.section-head.compact{align-items:flex-start}.section h1,.admin-hero h1{letter-spacing:-.06em}.section h2{color:var(--wsb-navy)}.card,.stat,.track-card,.profile-card,.form,.crm-card{border:1px solid var(--wsb-line);border-radius:var(--wsb-radius);box-shadow:var(--wsb-shadow);background:var(--wsb-card)}.glass-card{background:rgba(255,255,255,.78);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.wsbf-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}.wsbf-image-card{min-height:360px;border-radius:34px;background:url('../img/about-wsb.jpg') center/cover;box-shadow:var(--wsb-shadow);position:relative;overflow:hidden}.wsbf-image-card:after{content:"WORLD SKATE BALL";position:absolute;left:20px;bottom:20px;border-radius:999px;background:rgba(255,255,255,.88);color:var(--wsb-navy);padding:10px 14px;font-weight:900;letter-spacing:.08em;font-size:12px}.info-list{display:grid;gap:12px}.info-row{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:22px;background:#f8fbff;border:1px solid var(--wsb-line)}.info-row strong{color:var(--wsb-navy)}.info-icon{width:42px;height:42px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,var(--wsb-navy),var(--wsb-blue));color:#fff;font-weight:900;flex:0 0 auto}
.sports-showcase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.sport-card{min-height:360px;border-radius:34px;overflow:hidden;position:relative;background:#000;color:#fff;box-shadow:var(--wsb-shadow);display:flex;align-items:flex-end}.sport-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,31,61,.08),rgba(0,31,61,.84));z-index:1}.sport-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.sport-card-content{position:relative;z-index:2;padding:24px}.sport-card-content h3{font-size:30px;margin:8px 0}.sport-kicker{display:inline-flex;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);padding:7px 10px;font-size:12px;font-weight:900;letter-spacing:.1em}.rule-book-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.rule-book{position:relative;overflow:hidden;border-radius:30px;background:linear-gradient(145deg,#fff,#edf7ff);border:1px solid var(--wsb-line);padding:24px;box-shadow:var(--wsb-shadow)}.rule-book:after{content:"PDF";position:absolute;right:-18px;top:18px;transform:rotate(18deg);font-weight:900;font-size:58px;color:rgba(20,135,206,.08)}.rule-book h3{margin:4px 0 8px;color:var(--wsb-navy)}.rule-book .rule-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.certificate-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px;align-items:center}.certificate-preview{background:#fff;border:1px solid rgba(0,31,61,.18);border-radius:34px;padding:28px;box-shadow:0 28px 80px rgba(0,31,61,.12);position:relative;overflow:hidden}.certificate-preview:before{content:"";position:absolute;inset:16px;border:2px solid rgba(244,198,106,.55);border-radius:26px;pointer-events:none}.certificate-preview img{width:150px;margin:0 auto 18px}.certificate-preview h3{text-align:center;font-size:34px;color:var(--wsb-navy);margin:8px 0}.certificate-preview .cert-line{height:1px;background:linear-gradient(90deg,transparent,var(--wsb-gold),transparent);margin:18px 0}.certificate-preview p{text-align:center;color:var(--wsb-muted)}
.profile-hero,.admin-hero,.dash-head{background:radial-gradient(circle at 86% 0,rgba(38,214,164,.13),transparent 26%),linear-gradient(180deg,#fff,#f0f7ff)}.profiles-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.profile-card{transition:transform .18s ease,box-shadow .18s ease}.profile-card:hover{transform:translateY(-4px);box-shadow:0 26px 80px rgba(0,31,61,.18)}.profile-card.profile-link-card{display:block;color:inherit}.profile-cover{background:linear-gradient(135deg,var(--wsb-navy),var(--wsb-blue))}.profile-open-hint{display:inline-flex;margin-top:8px;font-weight:900;color:var(--wsb-blue)}
.css-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px;opacity:0;pointer-events:none;transition:.18s ease}.css-modal:target{opacity:1;pointer-events:auto}.css-modal-bg{position:absolute;inset:0;background:rgba(0,31,61,.62);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.css-modal-panel{position:relative;width:min(920px,100%);max-height:86svh;overflow:auto;background:#fff;border-radius:32px;box-shadow:0 36px 110px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.34);padding:26px}.css-modal-close{position:sticky;top:0;margin-left:auto;width:42px;height:42px;border-radius:999px;background:var(--wsb-navy);color:#fff;display:grid;place-items:center;font-size:28px;line-height:1;z-index:2}.css-modal-head{text-align:center}.css-modal-head .avatar{margin:0 auto 12px}.profile-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.profile-info-grid div{padding:15px;border-radius:18px;background:#f8fbff;border:1px solid var(--wsb-line)}.profile-info-grid b{display:block;color:var(--wsb-navy);font-size:13px}.profile-info-grid span{color:var(--wsb-muted)}.profile-bio-box{padding:18px;border-radius:22px;background:linear-gradient(145deg,#f8fbff,#fff);border:1px solid var(--wsb-line)}
.dashboard-shell{display:grid;grid-template-columns:minmax(0,1.1fr) 380px;gap:22px}.dashboard-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.dashboard-card-list{display:grid;gap:14px}.dash-tile{padding:18px;border-radius:24px;background:#fff;border:1px solid var(--wsb-line);box-shadow:0 12px 34px rgba(0,31,61,.06)}.dash-tile h3{margin:0 0 8px;color:var(--wsb-navy)}.password-card{background:linear-gradient(135deg,var(--wsb-navy),var(--wsb-navy-2));color:#fff}.password-card h3{color:#fff}.password-card .muted{color:#cfe4f8}.modal-form{box-shadow:none;border:0;padding:0;background:transparent}.modal-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-list-section{margin-bottom:34px}.pill.open{background:#e8fff8;color:#087458}.pill.upcoming{background:#fff7df;color:#9a6500}.pill.ended{background:#eef3f8;color:#52657a}.course-state-ended{opacity:.82}.course-state-upcoming{border-color:rgba(244,198,106,.6)}.course-cover{background-color:#dfeaf4}.detail-hero{background-color:#dfeaf4}.certificate-page{background:linear-gradient(135deg,#eef7ff,#fff)}.certificate-sheet{position:relative;background:#fff;border-radius:34px;padding:46px;box-shadow:0 28px 90px rgba(0,31,61,.16);border:1px solid rgba(0,31,61,.12);overflow:hidden}.certificate-sheet:before{content:"";position:absolute;inset:18px;border:3px double rgba(244,198,106,.78);border-radius:24px;pointer-events:none}.certificate-sheet:after{content:"WSB";position:absolute;right:34px;bottom:18px;font-size:116px;font-weight:900;color:rgba(0,31,61,.04)}.cert-top{justify-content:center;text-align:center}.cert-logo{width:170px;margin:0 auto 10px}.certificate-sheet h1{font-size:clamp(42px,6vw,76px);color:var(--wsb-navy);text-align:center}.certificate-sheet h2{text-align:center;color:var(--wsb-blue)}.cert-number{text-align:center;display:block;width:max-content;max-width:100%;margin:24px auto;border:1px solid rgba(0,31,61,.14);border-radius:999px;padding:12px 16px;background:#f8fbff;font-weight:900;color:var(--wsb-navy)}
.auth-wrap{background:radial-gradient(circle at 80% 12%,rgba(20,135,206,.18),transparent 25%),linear-gradient(180deg,#f7fbff,#edf5fb)}.login-card{border-radius:34px;box-shadow:var(--wsb-shadow);overflow:hidden}.login-side{background:linear-gradient(135deg,var(--wsb-navy),var(--wsb-navy-2))}.login-side img{max-height:260px;object-fit:cover;width:100%}.join-card{border-radius:34px}.form input,.form select,.form textarea,.field input,.field select,.field textarea,.searchbar input,.searchbar select{min-height:48px;border-radius:16px}.form input:focus,.form select:focus,.form textarea:focus,.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--wsb-blue);box-shadow:0 0 0 4px rgba(20,135,206,.12)}
.footer.wsb-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px max(18px,6vw) calc(26px + var(--safe-bottom));background:#fff;border-top:1px solid var(--wsb-line)}.footer-brand-line{display:flex;align-items:center;gap:14px}.footer-logo-img{width:86px;height:46px;object-fit:contain}.footer-brand-line span{display:block;color:var(--wsb-muted);font-size:13px}.footer-links{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.footer-links a{font-weight:850;color:var(--wsb-navy)}
@media(max-width:1000px){.hero.wsb-home-hero,.wsbf-about-grid,.certificate-feature,.dashboard-shell{grid-template-columns:1fr}.hero-media-stack{min-height:420px}.sports-showcase{grid-template-columns:1fr}.hero-float-card{right:18px}.login-card{grid-template-columns:1fr}.login-side{display:none}.crm-shell{grid-template-columns:1fr}.crm-side{position:relative;top:auto}.modal-form .form-grid,.form-grid,.dash-grid,.admin-grid{grid-template-columns:1fr}}
@media(max-width:760px){.site-header.wsb-app-header{padding:10px 14px}.wsb-brand{min-width:0}.brand-logo{width:58px;height:34px}.wsb-brand b{font-size:14px}.wsb-brand small{font-size:9px}.css-menu-toggle{display:grid;place-items:center;width:44px;height:44px;margin-left:auto;background:#eef5fb;color:var(--wsb-navy)}.wsb-nav{position:absolute;left:12px;right:12px;top:64px;display:grid;grid-template-columns:1fr;gap:4px;background:rgba(255,255,255,.96);border:1px solid var(--wsb-line);border-radius:24px;padding:12px;box-shadow:var(--wsb-shadow);opacity:0;transform:translateY(-10px);pointer-events:none}.nav-check:checked~.wsb-nav{opacity:1;transform:translateY(0);pointer-events:auto}.wsb-nav a{width:100%;padding:13px 14px}.hero.wsb-home-hero{padding:44px 18px 34px;min-height:auto}.hero.wsb-home-hero h1{font-size:42px}.hero.wsb-home-hero p{font-size:16px}.mini-metrics{grid-template-columns:1fr}.hero-phone-card img{height:300px}.hero-float-card{position:relative;right:auto;bottom:auto;width:100%;margin-top:-40px}.section{padding:36px 18px}.section-head{display:block}.profile-info-grid{grid-template-columns:1fr}.css-modal{padding:10px}.css-modal-panel{border-radius:24px;padding:18px}.footer.wsb-footer{display:grid;text-align:center}.footer-brand-line{justify-content:center;display:grid}.footer-logo-img{margin:auto}.footer-links{justify-content:center}.auth-wrap{padding:24px 14px}.certificate-sheet{padding:32px 18px}.certificate-sheet:before{inset:10px}.searchbar input,.searchbar select{width:100%;min-width:0}.filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px}.filters .pill{white-space:nowrap}.profile-card:hover{transform:none}}
@media(display-mode:standalone){.site-header.wsb-app-header{padding-top:calc(10px + env(safe-area-inset-top,0px))}.footer.wsb-footer{padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))}}
@media print{.site-header,.footer,.btn,.nav,.flash-message{display:none!important}body{background:#fff}.certificate-sheet{box-shadow:none;border:0}.certificate-page{padding:0}.certificate-sheet:before{border-color:#c7a64a}}

/* =========================================================
   WSB Academy full-page polish v2
========================================================= */
.home-course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,320px));gap:18px;align-items:stretch}.compact-course-card{max-width:340px}.compact-course-card .course-cover{height:150px}.support-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;border-radius:34px;padding:28px;background:linear-gradient(135deg,#001F3D,#06386f);color:#fff;box-shadow:var(--wsb-shadow);overflow:hidden;position:relative}.support-panel:after{content:"?";position:absolute;right:22px;bottom:-48px;font-size:190px;font-weight:900;color:rgba(255,255,255,.05)}.support-panel h2{color:#fff}.support-panel .muted{color:#cfe4f8}.support-actions{position:relative;z-index:1}
.members-hero-v2{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:22px;align-items:center;background:radial-gradient(circle at 78% 0,rgba(38,214,164,.16),transparent 28%),linear-gradient(180deg,#fff,#f1f8ff);border-bottom:1px solid var(--wsb-line)}.members-hero-text h1,.courses-hero-copy h1{font-size:clamp(40px,6vw,78px);line-height:.95;letter-spacing:-.065em;margin:14px 0}.members-stat-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.member-stat{display:block;border:1px solid var(--wsb-line);border-radius:24px;padding:18px;background:#fff;box-shadow:0 16px 44px rgba(0,31,61,.08)}.member-stat b{display:block;font-size:34px;color:var(--wsb-blue)}.member-stat span{color:var(--wsb-muted);font-weight:900}.member-stat.active{background:linear-gradient(135deg,var(--wsb-navy),var(--wsb-blue));color:#fff}.member-stat.active b,.member-stat.active span{color:#fff}.members-search-panel{grid-column:1/-1;display:grid;grid-template-columns:1.5fr 1fr 1fr auto auto;gap:10px;padding:14px;border:1px solid var(--wsb-line);border-radius:26px;background:rgba(255,255,255,.82);box-shadow:var(--wsb-shadow)}.members-search-panel input,.members-search-panel select{border:1px solid #dce7f2;border-radius:16px;padding:13px 14px;font:inherit;background:#fff;min-height:48px}.members-grid-v2{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.member-card-v2{position:relative;display:block;background:#fff;border:1px solid var(--wsb-line);border-radius:30px;padding:14px;color:inherit;box-shadow:var(--wsb-shadow);overflow:hidden;transition:.18s ease}.member-card-v2:hover{transform:translateY(-4px);box-shadow:0 28px 80px rgba(0,31,61,.17)}.member-role-ribbon{position:absolute;top:16px;left:16px;z-index:2;border-radius:999px;padding:7px 10px;background:rgba(0,31,61,.78);color:#fff;font-size:12px;font-weight:900;backdrop-filter:blur(10px)}.member-photo-wrap{height:230px;border-radius:24px;background:linear-gradient(135deg,#e9f5ff,#fff);display:grid;place-items:center;overflow:hidden}.member-photo-wrap img{width:100%;height:100%;object-fit:cover}.member-photo-wrap span{font-size:60px;font-weight:900;color:var(--wsb-blue)}.member-card-body{padding:16px 4px 4px}.member-card-top,.inquiry-thread-top,.dash-tile-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.settings-icon,.settings-round{width:38px;height:38px;border-radius:999px;display:grid;place-items:center;background:#eef5fb;color:var(--wsb-navy);font-weight:900}.member-card-v2 h3{margin:12px 0 6px;font-size:22px;color:var(--wsb-navy)}.member-mini-info{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.member-mini-info span{border-radius:999px;background:#f2f7fc;color:#52657a;padding:7px 9px;font-size:12px;font-weight:800}.member-modal-panel{width:min(880px,100%)}.member-modal-hero{display:grid;grid-template-columns:210px minmax(0,1fr);gap:22px;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--wsb-line)}.modal-photo{height:210px}.member-modal-hero h2{font-size:clamp(32px,5vw,58px);line-height:1;letter-spacing:-.05em;margin:10px 0}
.courses-hero-v2{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:center;background:radial-gradient(circle at 85% 12%,rgba(20,135,206,.16),transparent 26%),linear-gradient(180deg,#fff,#edf7ff);border-bottom:1px solid var(--wsb-line)}.course-guide-panel{border-radius:30px;padding:24px;background:linear-gradient(135deg,var(--wsb-navy),var(--wsb-navy-2));color:#fff;box-shadow:var(--wsb-shadow)}.course-guide-panel h3{margin-top:0;font-size:26px}.course-guide-panel ul{margin:0;padding-left:20px;color:#dbeafe;line-height:1.8}.course-filter-shell{display:grid;gap:8px}.course-filter-v2,.course-status-tabs{padding:10px;border-radius:22px;background:#fff;border:1px solid var(--wsb-line);box-shadow:0 12px 30px rgba(0,31,61,.06)}.course-grid-v2{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:18px}.course-card-v2{background:#fff;border:1px solid var(--wsb-line);border-radius:30px;overflow:hidden;box-shadow:var(--wsb-shadow);display:grid;grid-template-rows:190px auto;transition:.18s ease}.course-card-v2:hover{transform:translateY(-3px);box-shadow:0 28px 80px rgba(0,31,61,.16)}.course-image-v2{background-size:cover;background-position:center;position:relative;display:block}.course-image-v2:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,31,61,0),rgba(0,31,61,.62))}.course-image-v2 span{position:absolute;left:16px;bottom:16px;z-index:1;border-radius:999px;background:rgba(255,255,255,.92);color:var(--wsb-navy);padding:8px 11px;font-weight:900;font-size:12px}.course-content-v2{padding:18px}.course-content-v2 h3{font-size:24px;line-height:1.15;margin:14px 0 8px;color:var(--wsb-navy)}.course-info-strip{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.course-info-strip span{border-radius:999px;background:#f2f7fc;color:#31475e;padding:8px 10px;font-size:12px;font-weight:900}.course-guidance{border-radius:18px;background:#f8fbff;border:1px solid var(--wsb-line);padding:12px;margin:12px 0;color:#52657a;line-height:1.65}.course-detail-v2{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:24px;align-items:start}.course-detail-media{min-height:620px;border-radius:36px;background-size:cover;background-position:center;box-shadow:var(--wsb-shadow);position:sticky;top:92px;overflow:hidden;padding:20px;display:flex;align-items:flex-start}.course-detail-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,31,61,.02),rgba(0,31,61,.38));z-index:0}.course-detail-media .pill{position:relative;z-index:1}.course-detail-content{background:#fff;border:1px solid var(--wsb-line);border-radius:34px;padding:26px;box-shadow:var(--wsb-shadow)}.course-detail-content h1{font-size:clamp(38px,5vw,68px);line-height:.98;letter-spacing:-.06em;margin:14px 0}.course-detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px;margin:18px 0}.course-text-card{border:1px solid var(--wsb-line);border-radius:24px;padding:18px;background:#f8fbff}.course-text-card h3{margin-top:0;color:var(--wsb-navy)}.guide-card{background:linear-gradient(145deg,#fff,#fff8e5)}.course-action-box{display:flex;gap:12px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--wsb-line);padding-top:18px}.detail-strip span{font-size:13px}
.dashboard-v2 .dash-tile{background:rgba(255,255,255,.94)}.profile-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.profile-summary-grid div{border:1px solid var(--wsb-line);border-radius:18px;background:#f8fbff;padding:14px}.profile-summary-grid b{display:block;color:var(--wsb-navy);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.profile-summary-grid span{color:var(--wsb-muted);font-weight:800}.sticky-member-card{position:sticky;top:94px;align-self:start}.dash-mini-actions{display:grid;gap:10px}.inquiry-thread-card,.inquiry-admin-card{border:1px solid var(--wsb-line);border-radius:22px;background:#fff;padding:16px;margin-top:12px}.inquiry-thread-card.new,.inquiry-admin-card.new{border-color:rgba(245,158,11,.35);background:linear-gradient(180deg,#fff,#fffbeb)}.reply-box{margin-top:12px;border-radius:18px;border:1px solid rgba(20,135,206,.16);background:#f0f8ff;padding:14px}.reply-box b{display:block;color:var(--wsb-navy);margin-bottom:6px}.reply-box p{margin:0;color:#40566f;line-height:1.6}.reply-box.compact{padding:11px}.cert-grid-compact{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.inquiries-panel{background:linear-gradient(180deg,#fff,#f8fbff)}.inquiry-stats{display:flex;gap:8px;flex-wrap:wrap}.inquiry-stats span{border-radius:999px;background:#eef5fb;color:var(--wsb-navy);padding:8px 11px;font-weight:900}.inquiries-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:14px;margin-top:16px}.status-pill.new{background:#fff5da;color:#996d00}.status-pill.replied{background:#e8fff8;color:#087458}.status-pill.closed{background:#eef3f8;color:#52657a}
.crop-panel{width:min(560px,96vw);background:#fff;border-radius:30px;padding:20px;box-shadow:0 35px 110px rgba(0,0,0,.35)}.crop-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.crop-close{border:0;border-radius:999px;width:40px;height:40px;background:#0f172a;color:#fff;font-size:22px}.crop-canvas{width:100%;height:auto;border-radius:22px;background:#f4f8fc;border:1px solid var(--wsb-line);touch-action:none}.crop-range{display:grid;gap:8px;font-weight:900;margin:12px 0}.crop-range input{width:100%}
@media(max-width:1000px){.support-panel,.members-hero-v2,.courses-hero-v2,.course-detail-v2,.course-detail-grid{grid-template-columns:1fr}.course-detail-media{position:relative;top:auto;min-height:360px}.members-search-panel{grid-template-columns:1fr}.profile-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sticky-member-card{position:relative;top:auto}.home-course-grid{grid-template-columns:repeat(auto-fit,minmax(245px,1fr))}.member-modal-hero{grid-template-columns:1fr}.modal-photo{height:260px}.members-stat-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.home-course-grid,.course-grid-v2,.members-grid-v2,.inquiries-admin-grid{grid-template-columns:1fr}.support-panel{padding:22px}.member-photo-wrap{height:210px}.profile-summary-grid{grid-template-columns:1fr}.course-card-v2{grid-template-rows:170px auto}.courses-hero-copy h1,.members-hero-text h1{font-size:42px}.course-detail-content{padding:18px;border-radius:26px}.course-detail-media{min-height:300px;border-radius:28px}.members-stat-stack{grid-template-columns:1fr}}

/* =========================================================
   WSBF Academy Courses — Clean Professional Cards
   Single source for homepage + courses page cards
========================================================= */

/* Shared course card grid */
.home-courses-section .section-head,
.course-filter-shell,
.course-main-grid{
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
}

.home-course-grid,
.home-course-grid.square-courses-grid,
.course-main-grid{
  width:100%;
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(245px,300px));
  justify-content:center;
  align-items:stretch;
  gap:22px;
}

/* Courses page filters */
.course-filter-shell{
  display:grid;
  gap:12px;
}

.course-search-form{
  display:grid;
  grid-template-columns:minmax(240px,1fr) auto auto;
  gap:10px;
  align-items:center;
}

.course-search-form input[type="text"]{
  width:100%;
  min-height:48px;
  border:1px solid #dce7f2;
  border-radius:18px;
  padding:13px 15px;
  font:inherit;
  background:#fff;
  color:var(--ink,#102033);
  outline:none;
}

.course-search-form input[type="text"]:focus{
  border-color:var(--wsb-blue,#1487ce);
  box-shadow:0 0 0 4px rgba(20,135,206,.12);
}

/* Unified card shape */
.square-course-card,
.course-square-card,
.home-course-grid .course-card{
  width:100%;
  max-width:300px;
  min-height:0 !important;
  height:auto;
  margin:0 auto;
  padding:0 !important;
  overflow:hidden;
  border-radius:28px !important;
  background:#fff;
  border:1px solid rgba(0,31,61,.10);
  box-shadow:0 20px 58px rgba(0,31,61,.11);
  display:flex !important;
  flex-direction:column !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.square-course-card:hover,
.course-square-card:hover,
.home-course-grid .course-card:hover{
  transform:translateY(-4px);
  border-color:rgba(20,135,206,.24);
  box-shadow:0 28px 78px rgba(0,31,61,.16);
}

.square-course-card.premium:before,
.course-square-card.premium:before,
.home-course-grid .course-card.premium:before{
  display:none !important;
}

/* Unified image area */
.square-course-cover,
.course-square-image,
.home-course-grid .course-card .course-cover{
  position:relative !important;
  display:block;
  width:100% !important;
  height:185px !important;
  min-height:185px !important;
  margin:0 !important;
  border-radius:28px 28px 0 0 !important;
  background-size:cover !important;
  background-position:center !important;
  overflow:hidden !important;
}

.square-course-cover:after,
.course-square-image:after,
.home-course-grid .course-card .course-cover:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,31,61,0),rgba(0,31,61,.32));
  z-index:1;
  pointer-events:none;
}

/* Small corner status tag */
.course-status-corner{
  position:absolute !important;
  top:10px !important;
  right:10px !important;
  z-index:3 !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  padding:4px 9px !important;
  border-radius:999px !important;
  color:#fff !important;
  font-size:10px !important;
  line-height:1.15 !important;
  font-weight:900 !important;
  letter-spacing:.02em;
  text-transform:uppercase;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(0,0,0,.16);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.course-status-corner.available,
.course-status-corner.open{
  background:linear-gradient(135deg,#059669,#22c55e) !important;
}

.course-status-corner.coming,
.course-status-corner.upcoming{
  background:linear-gradient(135deg,#f59e0b,#f97316) !important;
}

.course-status-corner.closed,
.course-status-corner.ended{
  background:linear-gradient(135deg,#64748b,#111827) !important;
}

/* Card content */
.square-course-body,
.course-square-content,
.home-course-grid .course-card > div:not(.course-cover):not(.square-course-cover){
  padding:15px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:11px !important;
  flex:1 1 auto;
}

.square-course-body .course-badges,
.course-square-content .course-badges,
.home-course-grid .course-card .course-badges{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  margin:0 !important;
}

.square-course-body .pill,
.course-square-content .pill,
.home-course-grid .course-card .pill{
  padding:6px 9px !important;
  font-size:11px !important;
  font-weight:900 !important;
  border-radius:999px !important;
}

.square-course-body h3,
.course-square-content h3,
.home-course-grid .course-card h3{
  margin:0 !important;
  color:var(--wsb-navy,#001F3D);
  font-size:18px !important;
  line-height:1.28 !important;
  min-height:46px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.square-course-body p,
.course-square-content p,
.home-course-grid .course-card p.muted,
.course-guidance{
  display:none !important;
}

.square-course-body .course-meta,
.course-square-content .course-info-strip,
.home-course-grid .course-card .course-meta{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  margin:auto 0 0 !important;
}

.square-course-body .course-meta b,
.course-square-content .course-info-strip span,
.home-course-grid .course-card .course-meta b{
  padding:7px 9px !important;
  border-radius:999px !important;
  background:#f2f7fc !important;
  color:#31475e !important;
  font-size:11px !important;
  font-weight:900 !important;
}

.course-date-mini{
  padding:10px 11px;
  border-radius:15px;
  background:#f8fbff;
  border:1px solid rgba(0,31,61,.10);
  color:#52657a;
  font-size:12px;
  line-height:1.45;
}

.course-date-mini b{
  color:var(--wsb-navy,#001F3D);
}

.square-course-body .btn,
.course-square-content .btn,
.home-course-grid .course-card .btn{
  width:100%;
  min-height:42px;
  padding:11px 14px !important;
  border-radius:999px !important;
  margin-top:2px;
  justify-content:center;
}

/* PWA and mobile: one card per row */
@media (display-mode:standalone), (max-width:760px){
  .home-course-grid,
  .home-course-grid.square-courses-grid,
  .course-main-grid{
    grid-template-columns:1fr !important;
    max-width:520px;
    margin-inline:auto;
    gap:16px !important;
  }

  .square-course-card,
  .course-square-card,
  .home-course-grid .course-card{
    max-width:100%;
    border-radius:24px !important;
  }

  .square-course-cover,
  .course-square-image,
  .home-course-grid .course-card .course-cover{
    height:165px !important;
    min-height:165px !important;
    border-radius:24px 24px 0 0 !important;
  }

  .course-search-form{
    grid-template-columns:1fr;
  }

  .course-status-corner{
    top:9px !important;
    right:9px !important;
    padding:4px 8px !important;
    font-size:9px !important;
  }

  .square-course-body,
  .course-square-content{
    padding:13px !important;
  }

  .square-course-body h3,
  .course-square-content h3,
  .home-course-grid .course-card h3{
    font-size:16px !important;
    min-height:auto;
  }
}


/* =========================================================
   WSBF Courses redesign clean patch - v20260704
   Single source for courses page, homepage course cards, and admin course controls.
========================================================= */
:root{
  --course-green:#059669;
  --course-green-2:#10b981;
  --course-orange:#f97316;
  --course-red:#ef4444;
  --course-slate:#64748b;
  --course-dark:#001F3D;
}

/* Hero like the approved mockup */
.courses-hero-v3{
  margin:18px max(18px,1.2vw) 0;
  padding:42px 5vw;
  min-height:260px;
  border-radius:18px;
  color:#fff;
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:28px;
  align-items:center;
  background:
    linear-gradient(90deg,rgba(0,31,61,.96),rgba(5,150,105,.84)),
    url('../img/academy-banner.jpg') center/cover;
  box-shadow:0 18px 50px rgba(0,31,61,.12);
  overflow:hidden;
}
.courses-hero-v3 h1{font-size:clamp(38px,5vw,66px);line-height:1;margin:18px 0 10px;color:#fff;letter-spacing:-.055em}
.courses-hero-v3 p{font-size:18px;line-height:1.8;max-width:760px;color:#e8f7ff;margin:0}
.courses-hero-v3 .breadcrumb{display:flex;gap:10px;align-items:center;font-size:13px;color:#bde9de;font-weight:800}
.courses-hero-emblem{display:grid;place-items:center}.courses-hero-emblem img{width:min(240px,70%);filter:brightness(0) invert(1);opacity:.96}

.course-filters-card{
  margin:14px max(18px,1.2vw) 0;
  padding:22px 2vw !important;
  border-radius:18px;
  background:#fff;
  box-shadow:0 14px 40px rgba(15,23,42,.08);
  border:1px solid rgba(15,23,42,.08);
  display:grid;
  grid-template-columns:1.2fr 1.6fr 1.4fr;
  gap:20px;
  align-items:end;
}
.course-search-form{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:end;margin:0!important}
.course-search-form label,.filter-group>b{display:block;margin-bottom:10px;font-weight:900;color:#0f172a}
.search-input-wrap{position:relative}.search-input-wrap input{width:100%;min-height:48px;border:1px solid #dce7f2;border-radius:12px;padding:0 44px 0 14px;font:inherit;background:#fff;color:#0f172a;outline:none}.search-input-wrap span{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#64748b;font-size:24px}.filter-pills{display:flex;gap:10px;flex-wrap:wrap}.filter-pills .pill{min-height:42px;padding:0 18px;border-radius:10px;background:#fff;color:#0f172a;border:1px solid #dbe3ee;box-shadow:0 4px 14px rgba(15,23,42,.03)}.filter-pills .pill.active{background:linear-gradient(135deg,#059669,#10b981);border-color:transparent;color:#fff}

.courses-list-section{padding-left:max(18px,1.2vw)!important;padding-right:max(18px,1.2vw)!important}.courses-result-head{display:flex;justify-content:flex-end;color:#64748b;font-weight:700;margin:0 0 12px}.wsb-course-list{display:grid;gap:12px}.wsb-course-row{display:grid;grid-template-columns:260px minmax(230px,1fr) minmax(430px,1.4fr) 180px;gap:26px;align-items:center;min-height:106px;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:14px;padding:10px 18px 10px 12px;box-shadow:0 8px 26px rgba(15,23,42,.08);transition:.18s ease}.wsb-course-row:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(15,23,42,.12)}
.wsb-course-thumb{position:relative;height:88px;border-radius:9px;background-size:cover;background-position:center;overflow:hidden;display:block}.wsb-course-thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.34),rgba(0,0,0,.05));pointer-events:none}.course-status-corner{position:absolute!important;top:8px!important;left:8px!important;right:auto!important;bottom:auto!important;z-index:4!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:auto!important;width:auto!important;max-width:calc(100% - 16px)!important;height:24px!important;padding:0 9px!important;border-radius:7px!important;color:#fff!important;font-size:10px!important;font-weight:900!important;line-height:1!important;letter-spacing:.01em!important;text-transform:none!important;box-shadow:0 5px 14px rgba(0,0,0,.20)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.course-status-corner.available{background:var(--course-green)!important}.course-status-corner.coming{background:var(--course-orange)!important}.course-status-corner.closed{background:var(--course-red)!important}
.wsb-course-main h3{margin:0 0 10px;font-size:22px;line-height:1.25;color:#0f172a;letter-spacing:-.02em}.wsb-course-tags{display:flex;gap:8px;flex-wrap:wrap}.wsb-course-tags span{border-radius:7px;background:#e8f3ff;color:#0b67ad;padding:5px 10px;font-size:12px;font-weight:900}.wsb-course-tags span.free{background:#dcfce7;color:#15803d}.wsb-course-tags span.paid{background:#fff3e5;color:#c2410c}.wsb-course-facts{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:10px 16px;color:#0f172a;font-weight:700}.wsb-course-facts span{display:flex;align-items:center;gap:7px;white-space:nowrap}.wsb-course-facts i{font-style:normal;color:#64748b}.course-start-date{grid-column:1/-1;color:#64748b;font-size:12px!important}.wsb-course-action{text-align:right}.wsb-course-action .btn{min-width:160px;border-radius:9px}.btn.warning{background:linear-gradient(135deg,#f97316,#fb923c)!important;color:#fff!important}.btn.danger{background:linear-gradient(135deg,#ef4444,#f43f5e)!important;color:#fff!important}

/* Homepage course cards - organized and compact */
.home-courses-section .home-course-grid.square-courses-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;gap:18px!important;align-items:stretch!important;max-width:none!important;margin:0!important}.home-courses-section .square-course-card{padding:0!important;border-radius:20px!important;overflow:hidden!important;background:#fff!important;min-height:0!important;box-shadow:0 10px 32px rgba(15,23,42,.09)!important;border:1px solid rgba(15,23,42,.08)!important}.home-courses-section .square-course-cover{height:154px!important;min-height:154px!important;aspect-ratio:auto!important;border-radius:20px 20px 0 0!important;background-size:cover!important;background-position:center!important;position:relative!important;overflow:hidden!important;margin:0!important}.home-courses-section .square-course-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.28));pointer-events:none}.home-courses-section .square-course-body{padding:14px!important;gap:10px!important;display:flex!important;flex-direction:column!important}.home-courses-section .square-course-body h3{font-size:17px!important;line-height:1.35!important;min-height:46px!important;margin:0!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.home-courses-section .course-meta{margin:0!important}.home-courses-section .course-meta b{font-size:11px!important;padding:7px 9px!important;border-radius:10px!important}.home-courses-section .btn{width:100%;border-radius:12px!important}

/* Admin course cards and forms */
.academy-courses-redesign .status-dot{display:inline-flex!important;border-radius:999px!important;padding:6px 9px!important;font-size:11px!important;font-weight:900!important;color:#fff!important;background:#64748b!important}.academy-courses-redesign .status-dot.open{background:#059669!important}.academy-courses-redesign .status-dot.upcoming{background:#f97316!important}.academy-courses-redesign .status-dot.closed{background:#ef4444!important}.academy-courses-redesign .status-dot.draft{background:#64748b!important}.academy-courses-redesign .course-edit-box .field input,.academy-courses-redesign .course-edit-box .field select,.academy-courses-redesign .course-edit-box .field textarea{width:100%}.academy-courses-redesign .course-cards-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important}.academy-courses-redesign .course-tile{box-shadow:0 12px 34px rgba(15,23,42,.10)!important}.academy-courses-redesign .course-tile img{width:90px!important;height:90px!important}

@media(max-width:1180px){.course-filters-card{grid-template-columns:1fr}.wsb-course-row{grid-template-columns:220px 1fr;gap:16px}.wsb-course-facts{grid-column:2}.wsb-course-action{grid-column:1/-1;text-align:left}.wsb-course-action .btn{width:100%}}
@media(max-width:760px){.courses-hero-v3{margin:10px 12px 0;padding:28px 18px;grid-template-columns:1fr;min-height:auto}.courses-hero-emblem{display:none}.course-filters-card{margin:12px;padding:16px!important}.course-search-form{grid-template-columns:1fr}.filter-pills{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.filter-pills .pill{white-space:nowrap}.courses-list-section{padding-left:12px!important;padding-right:12px!important}.courses-result-head{justify-content:flex-start}.wsb-course-row{grid-template-columns:1fr;padding:12px;gap:12px;border-radius:16px}.wsb-course-thumb{height:158px}.wsb-course-facts{grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr));font-size:13px}.wsb-course-main h3{font-size:19px}.wsb-course-action{text-align:stretch}.home-courses-section .home-course-grid.square-courses-grid{grid-template-columns:1fr!important;max-width:520px!important;margin-inline:auto!important}.home-courses-section .square-course-cover{height:165px!important}.academy-courses-redesign .course-tile img{width:100%!important;height:160px!important}}

/* =========================================================
   Members CRM v3 - aligned with courses redesign
========================================================= */
.members-crm-page{padding-top:26px}.members-crm-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;border-radius:34px;padding:34px;background:linear-gradient(135deg,rgba(0,31,61,.94),rgba(6,56,111,.86)),url('../img/academy-banner.jpg') center/cover;color:#fff;box-shadow:var(--wsb-shadow);overflow:hidden}.members-crm-hero h1{font-size:clamp(38px,5vw,70px);line-height:.95;letter-spacing:-.06em;margin:12px 0;color:#fff}.members-crm-hero p{color:#d8e9f8;line-height:1.7;max-width:720px}.members-breadcrumb{color:#9ee7d3;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:12px}.members-hero-actions,.members-export-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.members-import-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin:18px 0;padding:16px;border-radius:28px;background:#fff;border:1px solid var(--wsb-line);box-shadow:0 16px 40px rgba(0,31,61,.08)}.members-import-form{display:grid;grid-template-columns:minmax(240px,1fr) minmax(190px,.5fr) auto minmax(140px,.35fr);gap:12px;align-items:center;margin:0}.members-import-form b{display:block;color:var(--wsb-navy)}.members-import-form span{display:block;color:var(--wsb-muted);font-size:13px;margin-top:4px}.members-import-form input[type=file]{min-height:48px;border:1px solid #dce7f2;border-radius:16px;padding:10px;background:#fff}.members-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.members-stat-card{display:block;padding:18px;border-radius:24px;background:#fff;border:1px solid var(--wsb-line);box-shadow:0 16px 42px rgba(0,31,61,.07);color:inherit;text-decoration:none}.members-stat-card b{display:block;font-size:34px;color:var(--wsb-blue);letter-spacing:-.04em}.members-stat-card span{color:var(--wsb-muted);font-weight:900;font-size:13px}.members-stat-card.active{background:linear-gradient(135deg,var(--wsb-navy),var(--wsb-blue));color:#fff}.members-stat-card.active b,.members-stat-card.active span{color:#fff}.members-filter-panel{padding:18px;border-radius:30px;background:#fff;border:1px solid var(--wsb-line);box-shadow:0 16px 42px rgba(0,31,61,.07);margin:18px 0}.members-filter-form{display:grid;grid-template-columns:minmax(240px,1fr) 170px 170px auto auto;gap:10px;align-items:end}.members-filter-form label{display:grid;gap:7px;margin:0}.members-filter-form label span{font-size:13px;font-weight:900;color:var(--wsb-navy)}.members-filter-form input,.members-filter-form select,.member-full-form input,.member-full-form select,.member-full-form textarea{min-height:48px;border:1px solid #dce7f2;border-radius:16px;padding:12px 14px;font:inherit;background:#fff;color:var(--wsb-ink);outline:none}.members-filter-form input:focus,.members-filter-form select:focus,.member-full-form input:focus,.member-full-form select:focus,.member-full-form textarea:focus{border-color:var(--wsb-blue);box-shadow:0 0 0 4px rgba(20,135,206,.12)}.members-bulk-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:16px 0;padding:14px 16px;border-radius:22px;background:#f8fbff;border:1px solid var(--wsb-line)}.members-bulk-bar>div:first-child{display:flex;gap:10px;align-items:center}.members-list-v2{display:grid;gap:12px;margin-top:16px}.member-row-card{display:grid;grid-template-columns:28px 180px minmax(230px,.9fr) minmax(360px,1.2fr) 150px 112px;gap:18px;align-items:center;padding:14px 18px;border-radius:24px;background:#fff;border:1px solid var(--wsb-line);box-shadow:0 13px 34px rgba(0,31,61,.06);transition:transform .18s ease,box-shadow .18s ease}.member-row-card:hover{transform:translateY(-2px);box-shadow:0 22px 60px rgba(0,31,61,.13)}.member-select{display:grid;place-items:center}.member-photo-box{position:relative;height:86px;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#e9f5ff,#fff);display:grid;place-items:center}.member-photo-box img{width:100%;height:100%;object-fit:cover}.member-photo-box>span{font-size:38px;font-weight:900;color:var(--wsb-blue)}.member-role-badge{position:absolute;top:8px;left:8px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:4px 9px;font-size:11px;font-weight:900;font-style:normal;color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.16)}.member-role-badge.new{background:#0f9b72}.member-role-badge.admin{background:#0f172a}.member-main-info h3{font-size:20px;line-height:1.2;margin:0 0 9px;color:var(--wsb-navy);letter-spacing:-.02em}.member-tags,.member-contact{display:flex;gap:7px;flex-wrap:wrap}.member-tags span{border-radius:999px;background:#eef6ff;color:#1768aa;padding:6px 9px;font-size:12px;font-weight:900}.member-contact{margin-top:8px;color:var(--wsb-muted);font-size:13px}.member-details-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.member-details-strip span{display:block;min-height:54px;border-radius:16px;background:#f8fbff;border:1px solid rgba(0,31,61,.08);padding:9px;color:#52657a;font-size:12px;overflow:hidden;text-overflow:ellipsis}.member-details-strip b{display:block;color:var(--wsb-navy);font-size:11px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}.member-status-form select.status-select{width:100%;min-height:40px;border:0;border-radius:999px;padding:0 12px;font-size:12px;font-weight:900}.status-select.pending{background:#fff7df;color:#9a6500}.status-select.approved{background:#e8fff8;color:#087458}.status-select.rejected{background:#fff0f3;color:#b80f40}.member-edit-btn{min-height:42px;padding:10px 16px}.member-edit-panel{width:min(980px,96vw)}.member-full-form{padding:0;background:transparent;border:0;box-shadow:none}.member-form-head{display:flex;align-items:center;gap:16px;margin-bottom:18px;padding:16px;border-radius:24px;background:linear-gradient(135deg,#f8fbff,#eef7ff);border:1px solid var(--wsb-line)}.member-form-head>div{width:86px;height:86px;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#e9f5ff,#fff);display:grid;place-items:center;flex:0 0 auto}.member-form-head img{width:100%;height:100%;object-fit:cover}.member-form-head span{font-size:40px;font-weight:900;color:var(--wsb-blue)}.member-form-head h2{margin:0;color:var(--wsb-navy);font-size:30px;letter-spacing:-.04em}.member-form-head p{margin:6px 0 0;color:var(--wsb-muted)}.member-full-form .field{margin-bottom:0}.member-full-form textarea{resize:vertical}.member-full-form .row-actions{margin-top:16px}.member-edit-modal .css-modal-panel{max-height:90svh;overflow:auto}.member-edit-modal .css-modal-close{position:sticky;top:0;float:right}.pagination{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:22px}.pagination a,.pagination span{padding:10px 14px;border-radius:14px;border:1px solid var(--wsb-line);background:#fff;font-weight:900;color:var(--wsb-navy)}.pagination .active{background:linear-gradient(135deg,var(--wsb-navy),var(--wsb-blue));color:#fff;border-color:transparent}@media(max-width:1180px){.member-row-card{grid-template-columns:28px 140px minmax(220px,1fr) 150px 110px}.member-details-strip{grid-column:3/6;grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:900px){.members-crm-hero,.members-import-panel,.members-import-form,.members-filter-form{grid-template-columns:1fr}.members-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-row-card{grid-template-columns:28px 112px minmax(0,1fr);gap:12px}.member-details-strip{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}.member-status-form,.member-edit-btn{grid-column:1/-1}.member-photo-box{height:96px}}@media(max-width:600px){.members-crm-page{padding-left:14px;padding-right:14px}.members-crm-hero{padding:24px;border-radius:26px}.members-stat-grid{grid-template-columns:1fr}.member-row-card{grid-template-columns:1fr;padding:14px}.member-select{justify-content:start}.member-photo-box{width:100%;height:150px}.member-details-strip{grid-template-columns:1fr}.members-hero-actions,.members-export-actions{width:100%}.members-hero-actions .btn,.members-export-actions .btn,.members-filter-form .btn,.member-edit-btn{width:100%}.member-form-head{display:grid;text-align:center}.member-form-head>div{margin:auto}}


/* =========================================================
   FINAL CLEAN PATCH - roles, courses filters, member/profile photos
   Added to override older duplicated rules safely.
========================================================= */
.course-filters-card{
  max-width:1180px;
  margin:18px auto 24px!important;
  padding:18px!important;
  border-radius:28px;
  background:rgba(255,255,255,.92);
  border:1px solid var(--wsb-line, rgba(0,31,61,.12));
  box-shadow:0 18px 55px rgba(0,31,61,.08);
  display:grid!important;
  grid-template-columns:1fr;
  gap:16px!important;
}
.course-search-form{
  display:grid!important;
  grid-template-columns:minmax(220px,120px) minmax(280px,1fr) auto auto;
  align-items:end;
  gap:12px!important;
  margin:0!important;
}
.course-search-form>label{font-size:13px;font-weight:900;color:var(--wsb-navy,#001F3D);align-self:center;margin-bottom:14px}
.search-input-wrap{position:relative;display:block}
.search-input-wrap input,
.course-search-form input[type="text"]{
  width:100%;min-height:50px;border:1px solid #dce7f2;border-radius:18px;padding:0 44px 0 15px;background:#fff;color:var(--wsb-ink,#091827);font:inherit;outline:none;
}
.search-input-wrap span{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:var(--wsb-muted,#657589);font-weight:900}
.filter-group{display:grid;gap:9px}.filter-group>b{color:var(--wsb-navy,#001F3D);font-size:13px}.filter-pills{display:flex;gap:8px;flex-wrap:wrap}.filter-pills .pill{padding:9px 13px;line-height:1;border-radius:999px}
.course-status-corner{
  position:absolute!important;top:10px!important;right:10px!important;left:auto!important;bottom:auto!important;z-index:4!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:0!important;max-width:max-content!important;height:auto!important;
  padding:5px 9px!important;border-radius:999px!important;font-size:10px!important;line-height:1!important;font-weight:900!important;letter-spacing:.02em!important;color:#fff!important;text-transform:uppercase!important;
  box-shadow:0 8px 18px rgba(0,0,0,.18)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.course-status-corner.available{background:rgba(22,163,74,.92)!important}.course-status-corner.coming{background:rgba(245,158,11,.94)!important}.course-status-corner.closed{background:rgba(75,85,99,.94)!important}
.wsb-course-thumb{position:relative!important;overflow:hidden!important}.wsb-course-thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,31,61,0),rgba(0,31,61,.22));pointer-events:none}.wsb-course-thumb .course-status-corner{transform:none!important}
.role-stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important}
.member-photo-box{width:160px!important;height:120px!important;border-radius:18px!important;background:#eef6ff!important}.member-photo-box img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}.member-form-head>div{border-radius:18px!important}.member-role-badge.player{background:#2563eb}.member-role-badge.coach{background:#7c3aed}.member-role-badge.referee{background:#ea580c}.member-role-badge.administrator{background:#0891b2}.member-role-badge.new{background:#0f9b72}.member-role-badge.admin{background:#0f172a}
.member-photo-wrap{aspect-ratio:1/1!important;height:auto!important;min-height:0!important;border-radius:22px!important;background:#eef6ff!important}.member-photo-wrap img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#fff}.member-photo-wrap.modal-photo{width:100%;height:auto!important;aspect-ratio:1/1!important}.profiles-grid .avatar,.member-card-v2 .avatar{border-radius:18px!important}
@media(max-width:1180px){.course-search-form{grid-template-columns:1fr 2fr auto auto}.member-photo-box{width:128px!important;height:112px!important}.member-row-card{grid-template-columns:28px 140px minmax(220px,1fr) 150px 110px!important}}
@media(max-width:900px){.course-search-form{grid-template-columns:1fr!important}.course-search-form>label{margin-bottom:0}.course-search-form .btn{width:100%}.course-filters-card{margin:14px 12px 22px!important;padding:16px!important;border-radius:22px}.filter-pills{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px}.filter-pills .pill{white-space:nowrap}.member-row-card{grid-template-columns:28px 130px minmax(0,1fr)!important}.member-details-strip{grid-column:1/-1!important}.member-photo-box{width:130px!important;height:130px!important}}
@media(max-width:600px){.member-row-card{grid-template-columns:1fr!important}.member-photo-box{width:100%!important;height:auto!important;aspect-ratio:1/1!important}.member-photo-box img{object-fit:contain!important;background:#fff}.members-filter-form{grid-template-columns:1fr!important}.member-photo-wrap{aspect-ratio:1/1!important}.member-photo-wrap img{object-fit:contain!important}.members-search-panel{grid-template-columns:1fr!important}.members-search-panel input,.members-search-panel select,.members-search-panel .btn{width:100%!important}}
