@import url('https://fonts.googleapis.com/css2?family=Tajawal:wght@700;800;900&family=Almarai:wght@400;700;800&display=swap');
:root{--blue:#E31B23;--navy:#111111;--ink:#182226;--muted:#84949d;--line:#E7E9EA;--bg:#F4F7F9;--white:#fff;--radius:16px;--display:'Tajawal',sans-serif;--body:'Almarai',sans-serif}
body:has(.aa-app),body:has(.aa-login-shell){margin:0;background:var(--bg)}
body:has(.aa-app) header,body:has(.aa-app) footer,body:has(.aa-login-shell) header,body:has(.aa-login-shell) footer{display:none!important}
body:has(.aa-app) .site-content,body:has(.aa-login-shell) .site-content{padding:0!important;margin:0!important;max-width:none!important}
.aa-belt-stripe{display:flex;height:6px;width:100%}.aa-belt-stripe span{flex:1}.aa-belt-stripe span:nth-child(1){background:#F5F5F0}.aa-belt-stripe span:nth-child(2){background:#E8C547}.aa-belt-stripe span:nth-child(3){background:#3C9B48}.aa-belt-stripe span:nth-child(4){background:#E31B23}.aa-belt-stripe span:nth-child(5){background:#7A5230}.aa-belt-stripe span:nth-child(6){background:#C0392B}.aa-belt-stripe span:nth-child(7){background:#1A1A1A}
.aa-login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top right,rgba(227,27,35,.18),transparent 35%),linear-gradient(135deg,#080808,#111111);font-family:var(--body)}
.aa-login-card{width:min(440px,100%);background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 28px 80px rgba(0,0,0,.28)}.aa-login-brand{text-align:center;padding:38px 38px 20px}.aa-login-mark,.aa-side-logo{display:grid;place-items:center;background:var(--blue);color:#fff;font-family:var(--display);font-weight:900;border-radius:14px}.aa-login-mark{width:72px;height:72px;margin:0 auto 18px;font-size:22px;overflow:hidden;background:#fff;border:2px solid var(--line)}.aa-login-mark img{width:100%;height:100%;object-fit:contain;padding:5px}.aa-login-brand>span{color:var(--blue);font-weight:800;font-size:13px}.aa-login-brand h1{font-family:var(--display);font-size:30px;color:var(--navy);margin:8px 0}.aa-login-brand p{color:var(--muted);font-size:13px;margin:0}.aa-login-form{padding:18px 38px 34px;display:grid;gap:10px}.aa-login-form label{font-size:12px;font-weight:700;color:var(--ink);margin-top:5px}.aa-login-form input[type=text],.aa-login-form input[type=password]{height:48px;border:1.5px solid var(--line);border-radius:12px;padding:0 14px;font-family:var(--body);font-size:14px;outline:none}.aa-login-form input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(227,27,35,.12)}.aa-login-form .aa-check{display:flex;align-items:center;gap:7px;font-weight:400}.aa-login-form button,.aa-primary-btn{border:0;border-radius:999px;background:var(--blue);color:#fff;font-family:var(--display);font-weight:800;cursor:pointer;box-shadow:0 8px 20px rgba(227,27,35,.25)}.aa-login-form button{height:50px;margin-top:8px}.aa-login-error{margin:0 38px;background:#fff0f0;border:1px solid #ffd0d0;color:#a22;padding:11px 13px;border-radius:10px;font-size:12px}.aa-login-foot{text-align:center;border-top:1px solid var(--line);padding:15px;color:#a7b0b5;font-size:11px}
.aa-app{min-height:100vh;background:var(--bg);font-family:var(--body);color:var(--ink);display:flex}.aa-sidebar{width:255px;background:var(--navy);color:#fff;position:fixed;right:0;top:0;bottom:0;display:flex;flex-direction:column;z-index:100;box-shadow:-12px 0 30px rgba(17,17,17,.12)}.aa-side-brand{padding:26px 22px;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.09)}.aa-side-logo{width:48px;height:48px;border-radius:12px;overflow:hidden;flex:0 0 48px;background:#fff}.aa-side-logo img{width:100%;height:100%;object-fit:contain;padding:3px}.aa-side-brand strong{font-family:var(--display);font-size:15px;display:block}.aa-side-brand span{font-size:10px;color:#c7c7c7}.aa-side-brand{flex-shrink:0}.aa-side-nav{padding:18px 12px;display:flex;flex-direction:column;gap:5px;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.28) transparent}.aa-side-nav::-webkit-scrollbar{width:6px}.aa-side-nav::-webkit-scrollbar-track{background:transparent}.aa-side-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.25);border-radius:10px}.aa-side-nav a{color:#dedede;text-decoration:none;padding:12px 14px;border-radius:11px;font-size:13px;display:flex;gap:10px;align-items:center}.aa-side-nav a:hover,.aa-side-nav a.active{background:rgba(255,255,255,.1);color:#fff}.aa-side-user{margin-top:0;flex-shrink:0;padding:18px 22px;border-top:1px solid rgba(255,255,255,.09);display:grid;gap:4px}.aa-side-user strong{font-size:12px}.aa-side-user span{font-size:9px;color:#c7c7c7;overflow:hidden;text-overflow:ellipsis}.aa-side-user a{margin-top:8px;color:#fff;font-size:11px}.aa-app-main{margin-right:255px;min-width:0;width:calc(100% - 255px)}.aa-topbar{height:72px;background:#fff;display:flex;align-items:center;padding:0 30px;gap:14px;border-bottom:1px solid var(--line)}.aa-topbar>div:nth-child(2){display:flex;flex-direction:column}.aa-topbar span{font-size:10px;color:var(--muted)}.aa-topbar strong{font-family:var(--display);color:var(--navy)}.aa-menu-btn{display:none;background:none;border:0;font-size:22px}.aa-top-user{margin-right:auto;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:800}.aa-app-hero{padding:34px 36px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.aa-eyebrow{color:var(--blue);font-weight:800;font-size:11px}.aa-app-hero h1{font-family:var(--display);font-size:28px;color:var(--navy);margin:5px 0}.aa-app-hero p{margin:0;color:var(--muted);font-size:12px}.aa-primary-btn{padding:11px 22px}.aa-stat-grid{padding:0 36px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.aa-stat-card,.aa-panel{background:#fff;border:1px solid #edf1f3;border-radius:var(--radius);box-shadow:0 8px 28px rgba(17,17,17,.06)}.aa-stat-card{padding:22px;position:relative;overflow:hidden}.aa-stat-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--blue)}.aa-stat-card.aa-warning:before{background:#C0392B}.aa-stat-card span{display:block;color:var(--muted);font-size:11px}.aa-stat-card strong{display:block;font-family:var(--display);font-size:27px;color:var(--navy);margin:8px 0 3px}.aa-stat-card small{color:#a0abb1;font-size:9px}.aa-dashboard-grid{padding:22px 36px 40px;display:grid;grid-template-columns:1.35fr .85fr;gap:18px}.aa-panel{padding:22px}.aa-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.aa-panel-head h2{font-family:var(--display);font-size:16px;color:var(--navy);margin:0}.aa-panel-head a{font-size:10px;color:var(--blue);text-decoration:none}.aa-athlete-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.aa-athlete-row:last-child{border-bottom:0}.aa-avatar{width:38px;height:38px;border-radius:11px;background:#fff0f1;color:var(--blue);display:grid;place-items:center;font-weight:800}.aa-athlete-name{display:flex;flex-direction:column;min-width:0;flex:1}.aa-athlete-name strong{font-size:12px}.aa-athlete-name span{font-size:9px;color:var(--muted)}.aa-status{font-size:9px;background:#eee;padding:5px 9px;border-radius:999px}.aa-status.is-active{background:#e8f7ec;color:#2c8a48}.aa-empty-state{text-align:center;padding:28px 10px;color:var(--muted)}.aa-empty-state strong{font-family:var(--display);color:var(--navy)}.aa-empty-state p{font-size:11px}.aa-alert{display:flex;align-items:center;gap:12px;background:#fff7f7;padding:13px;border-radius:11px;margin-bottom:10px}.aa-alert b{width:34px;height:34px;border-radius:10px;background:var(--blue);color:#fff;display:grid;place-items:center}.aa-alert span{font-size:10px}.aa-alert-red{background:#fff4f4}.aa-alert-red b{background:#C0392B}.aa-quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}.aa-quick-actions a{text-align:center;text-decoration:none;color:var(--navy);background:var(--bg);padding:11px 6px;border-radius:10px;font-size:9px;font-weight:700}
@media(max-width:1000px){.aa-stat-grid{grid-template-columns:repeat(2,1fr)}.aa-dashboard-grid{grid-template-columns:1fr}}
@media(max-width:760px){.aa-sidebar{transform:translateX(100%);transition:.22s}.aa-sidebar.open{transform:translateX(0)}.aa-app-main{margin-right:0;width:100%}.aa-menu-btn{display:block}.aa-topbar{padding:0 18px}.aa-app-hero{padding:25px 18px 18px}.aa-stat-grid{padding:0 18px;grid-template-columns:1fr 1fr;gap:10px}.aa-dashboard-grid{padding:16px 18px 30px}.aa-app-hero .aa-primary-btn{display:none}}
@media(max-width:480px){.aa-stat-grid{grid-template-columns:1fr}.aa-login-brand{padding-left:24px;padding-right:24px}.aa-login-form{padding-left:24px;padding-right:24px}.aa-login-error{margin-left:24px;margin-right:24px}}

/* v0.3 athlete module */
.aa-content{padding:34px;max-width:1500px;margin:0 auto;width:100%;box-sizing:border-box}.aa-page-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:24px}.aa-page-head h1{font-family:var(--font-display);font-size:32px;color:var(--blue-dark);margin:5px 0}.aa-page-head p{margin:0;color:#7c8a91}.aa-primary-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:0;cursor:pointer;background:var(--blue);color:white!important;border-radius:999px;padding:12px 22px;font-family:var(--font-display);font-weight:800;box-shadow:0 6px 16px rgba(227,27,35,.23)}.aa-secondary-btn,.aa-link-btn{border:1px solid #dce4e8;background:#fff;color:var(--blue-dark);border-radius:10px;padding:11px 18px;font-weight:800;cursor:pointer;text-decoration:none}.aa-search-panel{margin-bottom:18px}.aa-search-row{display:grid;grid-template-columns:minmax(260px,1fr) 180px auto;gap:10px}.aa-search-row input,.aa-search-row select,.aa-form-grid input,.aa-form-grid select,.aa-form-grid textarea{width:100%;box-sizing:border-box;border:1px solid #dce4e8;background:#fff;border-radius:10px;padding:12px 13px;font:inherit;outline:none}.aa-search-row input:focus,.aa-form-grid input:focus,.aa-form-grid select:focus,.aa-form-grid textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(227,27,35,.09)}.aa-table-panel{padding:0!important;overflow:hidden}.aa-table-wrap{overflow:auto}.aa-table{width:100%;border-collapse:collapse;min-width:980px}.aa-table th{font-size:12px;color:#718087;text-align:right;background:#f7f9fa;padding:13px 16px;border-bottom:1px solid #e8edef}.aa-table td{padding:14px 16px;border-bottom:1px solid #edf1f3;font-size:13px;vertical-align:middle}.aa-table tr:last-child td{border-bottom:0}.aa-person-cell{display:flex;align-items:center;gap:10px}.aa-person-cell img,.aa-person-cell span,.aa-avatar-img{width:38px;height:38px;border-radius:50%;object-fit:cover}.aa-person-cell span{display:flex;align-items:center;justify-content:center;background:#e9f5fa;color:var(--blue-dark);font-weight:900}.aa-table code,.aa-code{font-family:monospace;background:#eef4f7;color:var(--blue-dark);padding:4px 8px;border-radius:7px}.aa-form-stack{display:flex;flex-direction:column;gap:20px}.aa-form-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 8px 24px rgba(17,17,17,.08)}.aa-form-title{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid #edf1f3}.aa-form-title>b{width:34px;height:34px;border-radius:10px;background:#e9f5fa;color:var(--blue);display:flex;align-items:center;justify-content:center}.aa-form-title h2{font-family:var(--font-display);font-size:18px;color:var(--blue-dark);margin:0 0 4px}.aa-form-title p{margin:0;color:#8a969c;font-size:12px}.aa-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.aa-form-grid label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:#4a5960}.aa-form-grid .aa-span-2{grid-column:span 2}.aa-photo-field{grid-row:span 2;background:#f7fafb;border:1px dashed #bdcbd1;border-radius:12px;padding:15px}.aa-photo-field small{color:#92a0a7}.aa-form-actions{display:flex;justify-content:flex-start;gap:12px;align-items:center;padding:0 2px 30px}.aa-form-actions>a{color:#6f7c82;text-decoration:none;padding:12px 18px}.aa-notice{padding:13px 16px;border-radius:10px;margin-bottom:18px;background:#eef6fa;color:#244d60}.aa-notice.success{background:#eaf7ed;color:#246331}.aa-notice.error{background:#fff0ef;color:#9d2f2a}.aa-profile-hero{background:linear-gradient(135deg,var(--blue-dark),#135b7d);border-radius:18px;padding:28px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.aa-profile-person{display:flex;gap:18px;align-items:center}.aa-profile-person img,.aa-profile-placeholder{width:88px;height:88px;border-radius:20px;object-fit:cover;border:3px solid rgba(255,255,255,.18)}.aa-profile-placeholder{display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12);font-size:32px;font-weight:900}.aa-profile-person .aa-code{background:rgba(255,255,255,.12);color:#fff}.aa-profile-person h1{font-family:var(--font-display);margin:9px 0 3px;font-size:28px}.aa-profile-person p{margin:0;color:#c9e1ec}.aa-status.big{font-size:13px;padding:8px 14px}.aa-profile-tabs{display:flex;gap:6px;overflow:auto;background:#fff;padding:8px;border-radius:14px;margin-bottom:18px;box-shadow:0 7px 20px rgba(17,17,17,.06)}.aa-profile-tabs a{white-space:nowrap;text-decoration:none;color:#62727a;padding:10px 14px;border-radius:9px;font-weight:800;font-size:12px}.aa-profile-tabs a.active{background:#eaf5fa;color:var(--blue-dark)}.aa-profile-tabs b{background:var(--blue);color:#fff;border-radius:999px;padding:2px 6px;margin-right:3px}.aa-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.aa-details{margin:0}.aa-details>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #edf1f3;padding:12px 0}.aa-details>div:last-child{border:0}.aa-details dt{color:#819098;font-size:12px}.aa-details dd{margin:0;color:#26363e;font-weight:800;font-size:13px;text-align:left}.aa-notes-text{line-height:1.9;color:#53646c}.aa-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.aa-quick-grid a{padding:18px;border:1px solid #e5ecef;border-radius:12px;text-decoration:none;color:var(--blue-dark);display:grid;grid-template-columns:auto 1fr;gap:4px 10px}.aa-quick-grid a>b{font-size:14px}.aa-quick-grid a>span{grid-column:2;color:#8a989f;font-size:11px}.aa-large-empty{background:#fff;border-radius:16px;padding:70px 20px;box-shadow:0 8px 24px rgba(17,17,17,.07)}.aa-athlete-row{text-decoration:none;color:inherit}.aa-side-nav a b{font-size:16px;width:22px;text-align:center}
@media(max-width:1000px){.aa-form-grid{grid-template-columns:1fr 1fr}.aa-profile-grid{grid-template-columns:1fr}.aa-content{padding:24px 18px}.aa-search-row{grid-template-columns:1fr 160px auto}}
@media(max-width:650px){.aa-page-head{align-items:flex-start;flex-direction:column}.aa-form-grid,.aa-search-row,.aa-quick-grid{grid-template-columns:1fr}.aa-form-grid .aa-span-2{grid-column:auto}.aa-form-card{padding:18px}.aa-content{padding:20px 12px}.aa-profile-hero{align-items:flex-start;flex-direction:column}.aa-profile-person img,.aa-profile-placeholder{width:70px;height:70px}.aa-profile-person h1{font-size:22px}.aa-page-head h1{font-size:27px}}

/* v0.4 configuration module */
.aa-config-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 20px}.aa-config-tabs a{background:#fff;border:1px solid #e2e9ec;color:var(--navy);text-decoration:none;padding:9px 14px;border-radius:999px;font-size:11px;font-weight:800}.aa-config-tabs a:hover{border-color:var(--blue);color:var(--blue)}
.aa-config-section{background:#fff;border:1px solid #edf1f3;border-radius:16px;box-shadow:0 8px 28px rgba(17,17,17,.06);padding:24px;margin-bottom:20px;scroll-margin-top:20px}.aa-config-head{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #edf1f3;padding-bottom:16px;margin-bottom:18px}.aa-config-head h2{font-family:var(--display);color:var(--navy);font-size:18px;margin:0 0 5px}.aa-config-head p{color:var(--muted);font-size:11px;margin:0}.aa-config-layout{display:grid;grid-template-columns:340px 1fr;gap:22px;align-items:start}.aa-mini-form{background:#f7fafb;border:1px solid #e7edef;border-radius:14px;padding:16px;display:grid;gap:11px}.aa-mini-form label{display:grid;gap:6px}.aa-mini-form label span{font-size:10px;font-weight:800;color:#52636c}.aa-mini-form input,.aa-mini-form select{width:100%;box-sizing:border-box;border:1px solid #dbe4e8;background:#fff;border-radius:9px;padding:10px 11px;font:inherit;outline:none}.aa-mini-form input:focus,.aa-mini-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(227,27,35,.08)}.aa-mini-form .aa-primary-btn{width:100%;margin-top:4px}.aa-config-list{display:grid;gap:9px}.aa-config-item{border:1px solid #e8eef0;border-radius:12px;padding:13px 14px;display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center}.aa-config-item>div{display:grid;gap:3px}.aa-config-item strong{font-size:12px;color:var(--navy)}.aa-config-item span{font-size:9px;color:var(--muted)}.aa-config-item em{font-style:normal;font-size:9px;padding:5px 9px;border-radius:999px;background:#f1f2f2;color:#78868c}.aa-config-item em.active{background:#e8f7ec;color:#278045}.aa-inline-form{margin:0}.aa-inline-form button{border:0;background:#eef5f8;color:var(--navy);border-radius:8px;padding:7px 10px;font:inherit;font-size:9px;font-weight:800;cursor:pointer}.aa-grade-name{display:flex!important;grid-template-columns:none!important;align-items:center;gap:10px!important}.aa-grade-name i{display:block;width:24px;height:24px;border-radius:7px;border:1px solid rgba(0,0,0,.1);flex:0 0 auto}.aa-form-hint{margin:13px 0 0;color:#84949d;font-size:10px}.aa-form-hint a{color:var(--blue);font-weight:800}
@media(max-width:900px){.aa-config-layout{grid-template-columns:1fr}.aa-config-item{grid-template-columns:1fr auto auto}}
@media(max-width:560px){.aa-config-section{padding:16px}.aa-config-item{grid-template-columns:1fr auto}.aa-config-item .aa-inline-form{grid-column:1/-1}.aa-inline-form button{width:100%}}

/* v0.5 payments */
.aa-payment-tools{align-items:start}.aa-payment-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.aa-payment-form label{display:flex;flex-direction:column;gap:7px}.aa-payment-form label span{font-size:12px;font-weight:800;color:var(--aa-dark,#111111)}.aa-payment-form input,.aa-payment-form select,.aa-payment-form textarea{width:100%;border:1px solid #dfe6ea;border-radius:10px;padding:10px 12px;background:#fff;font-family:inherit;box-sizing:border-box}.aa-payment-form .aa-span-2{grid-column:1/-1}.aa-pay-status{display:inline-flex;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.aa-pay-status.paid{background:#e4f6ea;color:#18763a}.aa-pay-status.partial{background:#fff3cf;color:#8a6510}.aa-pay-status.unpaid{background:#fde8e6;color:#ad3128}.aa-person-link{display:flex;flex-direction:column;text-decoration:none;color:#182226}.aa-person-link small,.aa-cell-sub{display:block;margin-top:4px;color:#8a969c;font-size:11px}.aa-collect{position:relative}.aa-collect summary{cursor:pointer;color:#111111;font-weight:800;font-size:12px}.aa-collect form{position:absolute;left:0;z-index:20;min-width:210px;background:#fff;padding:12px;border-radius:12px;box-shadow:0 12px 30px rgba(17,17,17,.18);display:grid;gap:8px}.aa-collect input,.aa-collect select{border:1px solid #dfe6ea;border-radius:8px;padding:8px}.aa-collect button{border:0;border-radius:8px;padding:8px;background:#E31B23;color:#fff;font-weight:800;cursor:pointer}
@media(max-width:800px){.aa-payment-form{grid-template-columns:1fr}.aa-payment-form .aa-span-2{grid-column:auto}.aa-payment-stats{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.aa-payment-stats{grid-template-columns:1fr}}

/* v0.6 Attendance */
.aa-att-filter{display:flex;gap:14px;align-items:end;flex-wrap:wrap}.aa-att-filter label{display:flex;flex-direction:column;gap:7px;min-width:210px}.aa-att-filter label span{font-weight:800;font-size:12px;color:var(--aa-muted,#667780)}
.aa-att-options{display:flex;gap:7px;flex-wrap:wrap}.aa-att-choice{position:relative;cursor:pointer}.aa-att-choice input{position:absolute;opacity:0;pointer-events:none}.aa-att-choice span{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border:1px solid #dfe6e9;border-radius:999px;font-size:12px;font-weight:800;background:#fff;transition:.16s}
.aa-att-choice input:checked+span{color:#fff;border-color:transparent}.aa-att-choice.present input:checked+span{background:#2f9e64}.aa-att-choice.absent input:checked+span{background:#c0392b}.aa-att-choice.late input:checked+span{background:#d39b23}.aa-att-choice.excused input:checked+span{background:#6c7a89}
.aa-note-input{min-width:145px;padding:9px 10px!important}.aa-person-cell small{display:block;color:#85939a;margin-top:2px;font-size:11px}.aa-attendance-sheet .aa-panel-head p{margin:4px 0 0;color:#849198;font-size:12px}.aa-notice.info{background:#eef7fb;border-color:#c8e7f3;color:#245a71}.aa-att-table td{vertical-align:middle}.aa-att-stats{margin-bottom:24px}
@media(max-width:760px){.aa-att-options{min-width:245px}.aa-att-filter label{min-width:100%;}.aa-att-filter .aa-secondary-btn{width:100%}}

/* v0.7 — grade progression */
.aa-grade-form{margin-bottom:24px}.aa-grade-stats{margin-bottom:24px}.aa-form-submit{display:flex;justify-content:flex-start;align-items:center}.aa-table-athlete{display:flex;flex-direction:column;gap:3px;color:var(--aa-dark,#111111);text-decoration:none}.aa-table-athlete small{color:#89959c}.aa-grade-result{display:inline-flex;align-items:center;padding:5px 11px;border-radius:999px;font-weight:800;font-size:12px;background:#eef1f2;color:#43515a}.aa-grade-result.passed{background:#e8f7ed;color:#1e7a3c}.aa-grade-result.failed{background:#fdecec;color:#b53030}.aa-grade-result.pending{background:#fff6dc;color:#946c00}


/* v0.8 — documents */
.aa-doc-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:24px}.aa-stat-card.aa-danger{border-color:#f3d4d1}.aa-stat-card.aa-danger strong{color:#b53030}.aa-doc-status{display:inline-flex;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:800}.aa-doc-status.valid{background:#e8f7ed;color:#1f7b3f}.aa-doc-status.soon{background:#fff4d7;color:#926a00}.aa-doc-status.expired{background:#fdebea;color:#b5322d}
@media(max-width:800px){.aa-doc-stats{grid-template-columns:1fr}}

/* v0.9 — reports & exports */
.aa-report-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}.aa-report-tabs a{padding:9px 14px;border-radius:999px;border:1px solid #e1e9ec;background:#fff;text-decoration:none;color:var(--navy);font-size:11px;font-weight:800}.aa-report-tabs a.active{background:var(--blue);border-color:var(--blue);color:#fff}.aa-report-filter{margin-bottom:20px}.aa-report-filter .aa-panel-head a{font-size:11px;color:var(--blue);text-decoration:none;font-weight:800}.aa-report-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.aa-report-form label{display:grid;gap:6px}.aa-report-form label span{font-size:10px;font-weight:800;color:#5d6d75}.aa-report-form select,.aa-report-form input{width:100%;box-sizing:border-box;border:1px solid #dce5e8;border-radius:9px;padding:10px;background:#fff;font:inherit}.aa-report-form button{height:41px}.aa-report-stats{margin-bottom:20px}.aa-report-stats .aa-stat-card.aa-danger strong{color:#b53030}.aa-empty{padding:40px 20px;text-align:center;color:#829097}.aa-table-wrap{overflow:auto}.aa-table{min-width:820px;width:100%}.aa-table td small{display:block}
@media(max-width:1050px){.aa-report-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.aa-report-form{grid-template-columns:1fr}.aa-report-stats{grid-template-columns:1fr 1fr}}@media(max-width:430px){.aa-report-stats{grid-template-columns:1fr}}

/* v1.0 production controls */
.aa-danger-zone{margin-top:20px;border:1px solid rgba(192,57,43,.18)}
.aa-danger-zone .aa-form-title>b{background:rgba(192,57,43,.1);color:#a62e24}
.aa-side-nav a[href*="view=users"],.aa-side-nav a[href*="view=settings"]{margin-top:3px}
@media(max-width:700px){.aa-profile-hero{gap:12px}.aa-profile-hero>.aa-secondary-btn{width:100%;text-align:center}.aa-dashboard-grid{grid-template-columns:1fr!important}}


/* v1.1.1 — standalone full-bleed fix
   Remove WordPress/theme/admin-bar spacing so the app starts at viewport top. */
html:has(body.aa-management-page),html:has(body.aa-management-login-page){margin-top:0!important;padding-top:0!important}
body.aa-management-page,body.aa-management-login-page{margin:0!important;padding:0!important;background:var(--bg)!important}
body.aa-management-page #wpadminbar,body.aa-management-login-page #wpadminbar{display:none!important}
body.aa-management-page header,body.aa-management-page footer,
body.aa-management-login-page header,body.aa-management-login-page footer,
body.aa-management-page .site-header,body.aa-management-page .site-footer,
body.aa-management-login-page .site-header,body.aa-management-login-page .site-footer,
body.aa-management-page .entry-header,body.aa-management-login-page .entry-header{display:none!important}
body.aa-management-page #page,body.aa-management-login-page #page,
body.aa-management-page .site,body.aa-management-login-page .site,
body.aa-management-page .site-content,body.aa-management-login-page .site-content,
body.aa-management-page .content-area,body.aa-management-login-page .content-area,
body.aa-management-page .site-main,body.aa-management-login-page .site-main,
body.aa-management-page article,body.aa-management-login-page article,
body.aa-management-page .entry-content,body.aa-management-login-page .entry-content,
body.aa-management-page .wp-site-blocks,body.aa-management-login-page .wp-site-blocks,
body.aa-management-page main,body.aa-management-login-page main{
  margin-top:0!important;padding-top:0!important;max-width:none!important;
}
body.aa-management-page .entry-content,body.aa-management-login-page .entry-content{margin-block-start:0!important}
body.aa-management-page .aa-app,body.aa-management-login-page .aa-login-shell{margin-top:0!important}


/* v1.1.2 — true standalone template */
html,body.aa-standalone{margin:0!important;padding:0!important}
body.aa-standalone{min-height:100vh!important;width:100%!important}
body.aa-standalone .aa-app,body.aa-standalone .aa-login-shell{margin:0!important;position:relative!important;top:0!important}
body.aa-standalone .aa-topbar{height:72px!important;min-height:72px!important;max-height:72px!important;padding-top:0!important;padding-bottom:0!important;margin:0!important}
body.aa-standalone .aa-app-main{padding-top:0!important;margin-top:0!important}

/* v1.2 — Athlete ID cards */
.aa-profile-actions,.aa-card-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.aa-card-page-head{align-items:center}
.aa-idcard-stage{padding:10px 0 36px;display:flex;flex-direction:column;align-items:center}.aa-idcard-sheet{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;width:min(100%,1050px)}
.aa-idcard{position:relative;aspect-ratio:85.6/54;overflow:hidden;border-radius:22px;background:#fff;box-shadow:0 18px 48px rgba(17,17,17,.17);border:1px solid #e3eaed;color:#102f40;box-sizing:border-box}.aa-idcard-topline{height:8px;background:linear-gradient(90deg,#1a1a1a 0 14.28%,#c0392b 14.28% 28.56%,#7a5230 28.56% 42.84%,#E31B23 42.84% 57.12%,#3c9b48 57.12% 71.4%,#e8c547 71.4% 85.68%,#f5f5f0 85.68% 100%)}
.aa-idcard-brand{height:23%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 18px 7px;background:#111111;color:#fff}.aa-idcard-logo{width:43px;height:43px;border-radius:12px;background:#E31B23;display:grid;place-items:center;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.15)}.aa-idcard-logo img{width:100%;height:100%;object-fit:cover}.aa-idcard-logo span{font-weight:900;font-size:15px;color:#fff}.aa-idcard-brand>div:nth-child(2){display:grid;gap:1px}.aa-idcard-brand strong{font-size:12px;line-height:1.2}.aa-idcard-brand small{font-size:7.5px;opacity:.78}.aa-idcard-brand em{font-style:normal;font-size:7px;font-weight:900;letter-spacing:1.4px;color:#bfe5f5;border:1px solid rgba(255,255,255,.2);padding:5px 7px;border-radius:999px;white-space:nowrap}
.aa-idcard-body{height:62%;display:grid;grid-template-columns:31% 1fr;gap:15px;padding:13px 18px 9px;box-sizing:border-box;background:linear-gradient(135deg,#fff 0 70%,#f0f8fb 100%)}.aa-idcard-photo{width:100%;aspect-ratio:3/3.6;border-radius:14px;overflow:hidden;background:#e6f2f7;border:3px solid #fff;box-shadow:0 5px 18px rgba(17,17,17,.14);display:grid;place-items:center;align-self:start}.aa-idcard-photo img{width:100%;height:100%;object-fit:cover}.aa-idcard-photo span{font-size:34px;font-weight:900;color:#111111}.aa-idcard-info{min-width:0}.aa-idcard-label{font-size:7px;color:#7c8e97;font-weight:800}.aa-idcard-info h2{font-size:16px;line-height:1.15;margin:3px 0 1px;color:#111111;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aa-idcard-latin{font-size:8px;color:#73838b;margin:0 0 8px}.aa-idcard-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;margin-top:8px}.aa-idcard-facts div{display:grid;gap:1px;min-width:0}.aa-idcard-facts span,.aa-idcard-back-grid span{font-size:6.8px;color:#809099;font-weight:700}.aa-idcard-facts b,.aa-idcard-back-grid b{font-size:8.5px;color:#183847;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aa-idcard-footer{height:15%;box-sizing:border-box;padding:7px 18px;display:flex;align-items:center;justify-content:space-between;background:#f4f8fa;border-top:1px solid #e3ebee}.aa-idcard-footer span{font-size:7.5px;font-weight:900;color:#24814a;background:#e6f6ec;border-radius:999px;padding:4px 8px}.aa-idcard-footer b{font-size:7px;letter-spacing:1.1px;color:#829199;direction:ltr}
.aa-idcard-back{display:flex;flex-direction:column}.aa-idcard-back-title{padding:14px 19px 9px;display:flex;align-items:end;justify-content:space-between}.aa-idcard-back-title strong{font-size:14px;color:#111111}.aa-idcard-back-title span{font-size:7.5px;color:#84949c}.aa-idcard-back-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 17px;padding:5px 19px 8px}.aa-idcard-back-grid>div{display:grid;gap:2px;padding-bottom:6px;border-bottom:1px dashed #dce5e9}.aa-idcard-validation{margin:4px 19px 8px;border-radius:12px;background:#111111;color:#fff;padding:9px 12px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px}.aa-idcard-codebox{direction:ltr;display:grid;gap:1px;border-left:1px solid rgba(255,255,255,.18);padding-left:12px}.aa-idcard-codebox span{font-size:6px;color:#acd4e5}.aa-idcard-codebox strong{font-size:11px;letter-spacing:1.2px}.aa-idcard-codebox small{font-size:6px;opacity:.7}.aa-idcard-validation p{font-size:6.5px;line-height:1.6;margin:0;color:#d5e7ef}.aa-idcard-contact{margin-top:auto;padding:6px 19px 10px;display:flex;gap:9px;flex-wrap:wrap;color:#6f8189;font-size:6.3px;border-top:1px solid #edf1f2}.aa-idcard-size-note{font-size:10px;color:#7e8e96;margin:16px 0 0;text-align:center}
body.aa-show-card-back .aa-idcard-front{opacity:.28}.aa-idcard-front,.aa-idcard-back{transition:.2s}
@media(max-width:900px){.aa-idcard-sheet{grid-template-columns:1fr;max-width:520px}.aa-card-actions{width:100%}.aa-card-actions>*{flex:1;text-align:center}.aa-idcard{border-radius:17px}}
@media(max-width:520px){.aa-idcard-brand{padding-left:10px;padding-right:10px}.aa-idcard-body{padding-left:11px;padding-right:11px;gap:10px}.aa-idcard-info h2{font-size:13px}.aa-idcard-facts{gap:5px 7px}.aa-idcard-back-grid,.aa-idcard-back-title{padding-left:12px;padding-right:12px}.aa-idcard-validation{margin-left:12px;margin-right:12px}}
@media print{
  @page{size:85.6mm 54mm;margin:0}
  html,body,body.aa-standalone{background:#fff!important;margin:0!important;padding:0!important;width:85.6mm!important;height:auto!important}
  .aa-no-print,.aa-side,.aa-sidebar,.aa-app-sidebar,.aa-topbar,.aa-belt-stripe,.aa-card-page-head,.aa-idcard-size-note{display:none!important}
  .aa-app,.aa-app-main,.aa-content,.aa-idcard-stage,.aa-idcard-sheet{display:block!important;width:85.6mm!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important;box-shadow:none!important}
  .aa-idcard{width:85.6mm!important;height:54mm!important;aspect-ratio:auto!important;border:0!important;border-radius:0!important;box-shadow:none!important;break-after:page;page-break-after:always;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  .aa-idcard:last-child{break-after:auto;page-break-after:auto}
}

/* v1.3 typography consistency: keep all platform primary text in the same Arabic font system. */
:root{--font-display:'Tajawal',sans-serif;--font-body:'Almarai',sans-serif;--blue-dark:#111111}
.aa-app,.aa-login-shell,.aa-app input,.aa-app select,.aa-app textarea,.aa-app button,.aa-login-shell input,.aa-login-shell button{font-family:var(--font-body)!important}
.aa-app h1,.aa-app h2,.aa-app h3,.aa-app h4,.aa-app h5,.aa-app h6,.aa-app strong,.aa-app .aa-primary-btn,.aa-app .aa-secondary-btn,.aa-app .aa-link-btn,.aa-app .aa-eyebrow,.aa-login-shell h1,.aa-login-shell h2,.aa-login-shell button{font-family:var(--font-display)!important}
.aa-table code,.aa-code{font-family:var(--font-body)!important}

/* ID card QR + barcode */
.aa-idcard-body{position:relative}.aa-idcard-qr{width:58px;flex:0 0 58px;text-align:center;align-self:center}.aa-idcard-qr img{width:54px;height:54px;background:#fff;padding:3px;border-radius:7px;display:block}.aa-idcard-qr small{font-size:6px;color:#6c7d85;display:block;margin-top:2px}.aa-idcard-barcode{position:absolute;left:18px;right:18px;bottom:31px;height:30px;display:flex;align-items:center;gap:7px;direction:ltr}.aa-idcard-barcode .aa-barcode-svg{height:25px;flex:1;max-width:180px;fill:#102b38}.aa-idcard-barcode small{font-size:6px;letter-spacing:1.2px;color:#40545d}.aa-idcard-front{padding-bottom:61px!important;position:relative}.aa-idcard-validation.aa-with-qr{display:grid;grid-template-columns:1fr 58px;gap:9px;align-items:center}.aa-idcard-validation.aa-with-qr p{grid-column:1/-1}.aa-back-qr{width:54px;height:54px;background:#fff;padding:3px;border-radius:6px}

/* Athlete portal v1.3 */
.aa-portal-notices{margin:22px 36px 0;background:#fff;border:1px solid #edf1f3;border-radius:var(--radius);padding:20px;box-shadow:0 8px 28px rgba(17,17,17,.06)}.aa-notification-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.aa-portal-note{padding:13px 15px;border-radius:12px;display:flex;flex-direction:column;gap:4px;border:1px solid #e5edf0;background:#f6fafb}.aa-portal-note b{color:var(--navy);font-size:12px}.aa-portal-note span{font-size:10px;color:#6f8088;line-height:1.6}.aa-portal-note.warn{background:#fff8e8;border-color:#f1dfaa}.aa-portal-note.warn b{color:#8a6510}.aa-mini-receipt{padding:5px 9px!important;font-size:9px!important}.aa-account-panel{max-width:760px;margin:auto}.aa-receipt{max-width:680px;margin:20px auto;background:#fff;border-radius:18px;padding:34px;box-shadow:0 10px 35px rgba(17,17,17,.08);border:1px solid #e9eef0}.aa-receipt header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--navy);padding-bottom:14px}.aa-receipt header h2{margin:0;color:var(--navy)}.aa-receipt-number{font-family:var(--font-display);font-weight:900;font-size:22px;color:var(--blue);margin:22px 0}.aa-receipt footer{text-align:center;border-top:1px solid #edf1f3;margin-top:20px;padding-top:15px;color:#839098;font-size:10px}
@media(max-width:700px){.aa-notification-grid{grid-template-columns:1fr}.aa-portal-notices{margin:18px 16px 0}.aa-idcard-qr{width:48px;flex-basis:48px}.aa-idcard-qr img{width:45px;height:45px}.aa-idcard-barcode{left:12px;right:12px}}
@media print{.aa-receipt{box-shadow:none;border:0;margin:0 auto}.aa-idcard-qr img,.aa-back-qr{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

.aa-logo-setting-row{display:flex;align-items:center;gap:18px;background:var(--bg);border:1px dashed var(--line);padding:14px;border-radius:14px}.aa-logo-preview{width:84px;height:84px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:14px;padding:6px}.aa-logo-setting-row>div{display:grid;gap:8px;flex:1}.aa-logo-setting-row small{color:var(--muted);font-size:10px}.aa-inline-check{display:flex!important;align-items:center;gap:7px;font-size:11px!important}.aa-portal-brand{display:flex!important;align-items:center;gap:10px;flex-direction:row!important}.aa-portal-brand>img{width:40px;height:40px;object-fit:contain;border:1px solid var(--line);border-radius:10px;padding:3px;background:#fff}.aa-portal-brand>div{display:flex;flex-direction:column}
@media(max-width:760px){.aa-sidebar{height:100dvh}.aa-side-nav{padding-bottom:24px}.aa-logo-setting-row{align-items:flex-start;flex-direction:column}.aa-logo-preview{width:72px;height:72px}}

/* v1.5 — installable PWA */
.aa-pwa-install{border:1px solid #dce5e8;background:#fff;color:var(--navy);border-radius:999px;padding:10px 16px;font-family:var(--display);font-weight:800;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;box-shadow:0 4px 14px rgba(17,17,17,.07)}
.aa-pwa-install[hidden]{display:none!important}.aa-pwa-install:hover{border-color:var(--blue);color:var(--blue)}.aa-pwa-install-icon{font-size:17px;line-height:1}.aa-pwa-install.is-compact{padding:8px 13px;font-size:10px;margin-right:auto}.aa-topbar-actions{margin-right:auto;display:flex;align-items:center;gap:9px}.aa-topbar-actions .aa-pwa-install{margin-right:0}.aa-login-foot{display:flex;flex-direction:column;align-items:center;gap:10px}.aa-login-foot .aa-pwa-install{margin-bottom:2px}.aa-login-foot>span{display:block}
.aa-pwa-toast{position:fixed;left:22px;bottom:22px;z-index:99999;width:min(360px,calc(100vw - 44px));background:#fff;border:1px solid #e1e9ec;border-radius:16px;padding:18px 20px;box-shadow:0 18px 50px rgba(17,17,17,.18);font-family:var(--body);direction:rtl;color:var(--ink)}.aa-pwa-toast strong{display:block;font-family:var(--display);color:var(--navy);font-size:16px;margin-bottom:5px}.aa-pwa-toast p{margin:0;font-size:12px;line-height:1.8;color:#65747b}.aa-pwa-toast button{position:absolute;left:9px;top:7px;border:0;background:transparent;font-size:20px;color:#88969d;cursor:pointer}
@media(max-width:760px){.aa-topbar>.aa-pwa-install.is-compact span:last-child{display:none}.aa-topbar>.aa-pwa-install.is-compact{width:38px;height:38px;padding:0;border-radius:50%;margin-right:auto}.aa-topbar-actions .aa-pwa-install span:last-child{display:none}.aa-topbar-actions .aa-pwa-install{width:38px;height:38px;padding:0}.aa-pwa-toast{left:14px;bottom:14px;width:calc(100vw - 28px)}}


/* v1.5.2 — optional mobile install banner */
.aa-pwa-banner{position:fixed;z-index:99990;left:18px;right:18px;bottom:18px;max-width:720px;margin:0 auto;background:#fff;border:1px solid #dfe8eb;border-radius:18px;box-shadow:0 18px 55px rgba(17,17,17,.22);padding:13px 48px 13px 14px;display:flex;align-items:center;gap:12px;direction:rtl;font-family:var(--body);color:var(--ink);transform:translateY(24px);opacity:0;pointer-events:none;transition:.24s ease}
.aa-pwa-banner.is-visible{transform:translateY(0);opacity:1;pointer-events:auto}
.aa-pwa-banner-icon{width:48px;height:48px;flex:0 0 48px;border-radius:12px;background:var(--blue);color:#fff;display:grid;place-items:center;font-family:var(--display);font-weight:900;overflow:hidden}
.aa-pwa-banner-icon img{width:100%;height:100%;object-fit:contain;background:#fff;padding:3px}
.aa-pwa-banner-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}
.aa-pwa-banner-copy strong{font-family:var(--display)!important;font-size:14px;color:var(--navy)}
.aa-pwa-banner-copy span{font-size:10px;line-height:1.6;color:#708089}
.aa-pwa-banner-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.aa-pwa-banner-actions button{border-radius:999px;padding:8px 14px;font-family:var(--display);font-weight:800;font-size:10px;cursor:pointer}
.aa-pwa-banner-install{border:0;background:var(--blue);color:#fff;box-shadow:0 5px 14px rgba(227,27,35,.22)}
.aa-pwa-banner-later{border:1px solid #dce5e8;background:#fff;color:#657780}
.aa-pwa-banner-close{position:absolute;top:7px;left:9px;border:0;background:transparent;color:#84939a;font-size:21px;line-height:1;cursor:pointer;padding:4px}
@media(max-width:600px){
  .aa-pwa-banner{left:10px;right:10px;bottom:10px;padding:12px 38px 12px 12px;gap:9px;border-radius:16px}
  .aa-pwa-banner-icon{width:42px;height:42px;flex-basis:42px}
  .aa-pwa-banner-copy strong{font-size:12px}
  .aa-pwa-banner-copy span{font-size:9px}
  .aa-pwa-banner-actions{flex-direction:column;gap:4px}
  .aa-pwa-banner-actions button{padding:7px 11px;min-width:62px}
}
@media print{.aa-pwa-banner{display:none!important}}


/* v1.6 — installed app / standalone PWA */
html.aa-running-as-app, body.aa-running-as-app{overscroll-behavior-y:none}
body.aa-running-as-app .aa-pwa-banner{display:none!important}
.aa-pwa-banner-install.is-ready{box-shadow:0 6px 16px rgba(227,27,35,.28)}
@media (display-mode: standalone), (display-mode: fullscreen){
  html,body{min-height:100dvh!important}
  .aa-pwa-banner{display:none!important}
}

/* v1.6.1 — compact native-install bar */
.aa-pwa-banner,.aa-pwa-toast{display:none!important}
.aa-pwa-quickbar{position:fixed;z-index:99995;left:12px;right:12px;bottom:12px;margin:0 auto;max-width:540px;display:flex;align-items:center;gap:10px;padding:10px 42px 10px 10px;background:#fff;border:1px solid #dfe8eb;border-radius:16px;box-shadow:0 14px 42px rgba(17,17,17,.2);direction:rtl;font-family:var(--body);transform:translateY(20px);opacity:0;pointer-events:none;transition:.2s ease}
.aa-pwa-quickbar.is-visible{transform:translateY(0);opacity:1;pointer-events:auto}
.aa-pwa-quickbar-brand{display:flex;align-items:center;gap:8px;min-width:0;flex:1}
.aa-pwa-quickbar-brand strong{font-family:var(--display)!important;color:var(--navy);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aa-pwa-quickbar-icon{width:34px;height:34px;flex:0 0 34px;border-radius:9px;background:var(--blue);color:#fff;display:grid;place-items:center;font-family:var(--display);font-weight:900;font-size:10px;overflow:hidden}
.aa-pwa-quickbar-icon img{width:100%;height:100%;object-fit:contain;background:#fff;padding:2px}
.aa-pwa-quickbar-install{border:0;border-radius:999px;padding:9px 14px;background:var(--blue);color:#fff;font-family:var(--display);font-size:11px;font-weight:800;white-space:nowrap;cursor:pointer;box-shadow:0 5px 14px rgba(227,27,35,.22)}
.aa-pwa-quickbar-close{position:absolute;left:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#8a989f;font-size:20px;line-height:1;cursor:pointer;padding:4px}
@media(max-width:420px){
  .aa-pwa-quickbar{left:8px;right:8px;bottom:8px;padding:9px 36px 9px 9px;gap:7px;border-radius:14px}
  .aa-pwa-quickbar-icon{width:30px;height:30px;flex-basis:30px}
  .aa-pwa-quickbar-brand strong{font-size:11px}
  .aa-pwa-quickbar-install{padding:8px 11px;font-size:10px}
}
@media (display-mode: standalone),(display-mode:fullscreen){.aa-pwa-quickbar{display:none!important}}
@media print{.aa-pwa-quickbar{display:none!important}}

/* v1.7 — dashboard home adapted for Association Team ATLAS GYM Azrou */
.aa-content:has(.aa-public-home){padding:0;max-width:none;background:#fff}.aa-public-home{background:#fff;color:var(--ink);overflow:hidden}.aa-home-hero{background:linear-gradient(135deg,#082a40,#111111 62%,#0e4a6d);color:#fff;position:relative}.aa-home-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 16% 22%,rgba(227,27,35,.34),transparent 28%),linear-gradient(110deg,transparent 54%,rgba(255,255,255,.035) 54%);pointer-events:none}.aa-home-hero-inner{max-width:1180px;margin:auto;padding:76px 44px 62px;display:grid;grid-template-columns:1.35fr .65fr;gap:60px;align-items:center;position:relative;z-index:1}.aa-home-kicker{display:inline-block;color:#d9edf5!important;font-size:12px!important;font-weight:800;margin-bottom:17px}.aa-home-hero h1{font-family:var(--font-display)!important;font-size:clamp(38px,5vw,68px)!important;line-height:1.08;margin:0 0 22px;color:#fff!important;max-width:800px}.aa-home-hero h1 span{display:block;color:#59bce7;font:inherit}.aa-home-hero p{font-size:14px;line-height:2;color:#d0e5ee;max-width:760px;margin:0}.aa-home-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}.aa-home-btn{padding:12px 24px;border-radius:999px;text-decoration:none!important;font-family:var(--font-display)!important;font-weight:800;font-size:13px}.aa-home-btn.primary{background:var(--blue);color:#fff!important;box-shadow:0 9px 25px rgba(227,27,35,.3)}.aa-home-btn.ghost{border:1px solid rgba(255,255,255,.28);color:#fff!important;background:rgba(255,255,255,.06)}.aa-home-emblem{justify-self:end;width:min(260px,100%);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;align-content:center;gap:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);box-shadow:0 22px 60px rgba(0,0,0,.16);backdrop-filter:blur(8px)}.aa-home-emblem img{width:64%;height:64%;object-fit:contain;filter:drop-shadow(0 12px 25px rgba(0,0,0,.16))}.aa-home-emblem strong{font-size:64px;font-family:var(--font-display)!important}.aa-home-emblem span{font-size:11px!important;color:#d5e7ef!important}.aa-home-values{position:relative;z-index:1;display:flex;justify-content:center;gap:26px;flex-wrap:wrap;padding:14px 28px;background:rgba(0,0,0,.13);border-top:1px solid rgba(255,255,255,.07)}.aa-home-values span{font-size:10px!important;color:#d6e8ef!important;font-weight:700}.aa-home-section{max-width:1180px;margin:0 auto;padding:72px 44px}.aa-home-training{text-align:center;max-width:980px}.aa-home-section-head{text-align:center;max-width:780px;margin:0 auto 32px}.aa-home-section-head>span,.aa-home-about-copy>span{display:block;color:var(--blue);font-size:11px;font-weight:800;margin-bottom:9px}.aa-home-section-head h2,.aa-home-about h2,.aa-home-cta h2{font-family:var(--font-display)!important;color:var(--navy)!important;font-size:clamp(26px,3vw,40px)!important;line-height:1.25;margin:0 0 10px}.aa-home-section-head p{color:#87959c;margin:0;font-size:12px}.aa-home-lead{max-width:920px;margin:0 auto;font-size:14px;line-height:2.15;text-align:center;color:#5d6c73}.aa-home-disciplines{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.aa-home-discipline{background:#fff;border:1px solid #e7eef1;border-radius:18px;min-height:220px;padding:26px 20px;display:flex;flex-direction:column;box-shadow:0 13px 35px rgba(17,17,17,.07);transition:.2s}.aa-home-discipline:hover{transform:translateY(-5px);box-shadow:0 19px 42px rgba(17,17,17,.12)}.aa-home-disc-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#e9f6fb;color:var(--blue);font-size:18px;margin-bottom:25px}.aa-home-discipline>span{font-size:9px!important;letter-spacing:.7px;color:var(--blue)!important;font-weight:800}.aa-home-discipline h3{font-family:var(--font-display)!important;color:var(--navy)!important;font-size:17px;margin:8px 0 22px;line-height:1.45}.aa-home-discipline a{margin-top:auto;color:var(--navy);text-decoration:none;font-size:10px;font-weight:800}.aa-home-about{background:#f4f7f9;display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;padding:75px max(44px,calc((100vw - 1180px)/2));}.aa-home-about-copy p{color:#5f7078;font-size:13px;line-height:2.1;margin:0}.aa-home-stats{display:grid;grid-template-columns:1fr 1fr;background:#fff;border-radius:22px;padding:12px;box-shadow:0 18px 55px rgba(17,17,17,.08)}.aa-home-stats div{padding:26px;text-align:center;border:1px solid #edf1f3}.aa-home-stats div:nth-child(1){border-radius:0 14px 0 0}.aa-home-stats div:nth-child(2){border-radius:14px 0 0 0}.aa-home-stats div:nth-child(3){border-radius:0 0 14px 0}.aa-home-stats div:nth-child(4){border-radius:0 0 0 14px}.aa-home-stats strong{font-family:var(--font-display)!important;color:var(--navy)!important;font-size:30px;display:block}.aa-home-stats span{font-size:10px!important;color:#7f8d94!important}.aa-home-management{background:#fff}.aa-home-manage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.aa-home-manage-grid a{text-decoration:none;background:#111111;color:#fff;padding:25px;border-radius:18px;display:flex;flex-direction:column;min-height:145px;box-shadow:0 13px 34px rgba(17,17,17,.13)}.aa-home-manage-grid a.warn{background:#174d67}.aa-home-manage-grid b{font-family:var(--font-display)!important;font-size:30px;color:#67c4eb}.aa-home-manage-grid span{font-size:12px!important;color:#fff!important;font-weight:800;margin:5px 0}.aa-home-manage-grid small{font-size:9px;color:#bbd4df;margin-top:auto}.aa-home-section-head.inline{max-width:none;display:flex;align-items:end;justify-content:space-between;text-align:right}.aa-home-section-head.inline>div span{display:block;color:var(--blue);font-size:11px;font-weight:800}.aa-home-section-head.inline a{font-size:10px;color:var(--blue);text-decoration:none}.aa-home-recent-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.aa-home-person{text-decoration:none!important;background:#fff;border:1px solid #e7eef1;border-radius:17px;padding:20px;text-align:center;color:var(--ink)!important}.aa-home-person img,.aa-home-person>div{width:64px;height:64px;border-radius:50%;object-fit:cover;margin:0 auto 12px;background:#e8f5fa;color:var(--blue);display:grid;place-items:center;font-size:20px;font-weight:900}.aa-home-person strong{display:block;color:var(--navy)!important;font-size:13px}.aa-home-person span{font-size:9px!important;color:#86949a!important}.aa-home-empty{grid-column:1/-1;text-align:center;color:#7c8c94;padding:28px}.aa-home-cta{background:linear-gradient(135deg,#111111,#0b5578);max-width:1090px;margin:20px auto 75px;border-radius:24px;padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:#fff}.aa-home-cta span{font-size:10px;color:#72c4e6;font-weight:800}.aa-home-cta h2{color:#fff!important;font-size:29px!important;margin:7px 0}.aa-home-cta p{font-size:11px;color:#cbe1ea;margin:0}.aa-home-cta>a{flex:0 0 auto;background:#fff;color:var(--navy);text-decoration:none;border-radius:999px;padding:12px 24px;font-family:var(--font-display)!important;font-weight:900;font-size:12px}
@media(max-width:1100px){.aa-home-disciplines{grid-template-columns:repeat(3,1fr)}.aa-home-manage-grid,.aa-home-recent-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.aa-content:has(.aa-public-home){padding:0!important}.aa-home-hero-inner{padding:48px 20px 38px;grid-template-columns:1fr}.aa-home-emblem{justify-self:center;width:175px}.aa-home-hero h1{font-size:39px!important}.aa-home-section{padding:52px 20px}.aa-home-disciplines{grid-template-columns:1fr}.aa-home-about{grid-template-columns:1fr;padding:52px 20px;gap:32px}.aa-home-manage-grid,.aa-home-recent-grid{grid-template-columns:1fr 1fr}.aa-home-cta{margin:10px 18px 52px;padding:28px 22px;flex-direction:column;align-items:flex-start}.aa-home-values{gap:13px 18px;justify-content:flex-start}.aa-home-section-head.inline{align-items:center}.aa-home-section-head.inline h2{font-size:26px!important}}
@media(max-width:430px){.aa-home-manage-grid,.aa-home-recent-grid,.aa-home-stats{grid-template-columns:1fr}.aa-home-stats div{border-radius:12px!important}.aa-home-actions{flex-direction:column}.aa-home-btn{text-align:center}.aa-home-hero h1{font-size:34px!important}}

/* =========================================================
   ID CARD V1.8 — association logo refresh
========================================================= */
.aa-idcard-v18{position:relative;background:#fff!important;color:#0B0B0B;overflow:hidden}
.aa-idcard-v18 .aa-idcard-topline{position:absolute;top:0;left:0;right:0;height:8px;z-index:20;background:linear-gradient(90deg,#1a1a1a 0 14.28%,#c0392b 14.28% 28.56%,#7a5230 28.56% 42.84%,#E31B23 42.84% 57.12%,#3c9b48 57.12% 71.4%,#e8c547 71.4% 85.68%,#f5f5f0 85.68% 100%)}
.aa-idcard-front.aa-idcard-v18{padding:0!important;background:linear-gradient(145deg,#fff 0 72%,#f2f8fb 100%)!important}
.aa-idcard-front.aa-idcard-v18:before{content:"";position:absolute;width:220px;height:220px;left:-95px;bottom:-115px;border-radius:50%;background:rgba(227,27,35,.045);pointer-events:none}
.aa-idcard-front-brand{position:absolute;top:24px;left:24px;display:flex;align-items:center;gap:9px;direction:rtl;z-index:5;max-width:40%}
.aa-idcard-front-brand-logo{width:52px;height:52px;flex:0 0 52px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:#fff;padding:2px;box-shadow:0 5px 16px rgba(7,31,47,.12);border:1px solid #edf2f4}
.aa-idcard-front-brand-logo img{width:100%;height:100%;object-fit:contain}.aa-idcard-front-brand-logo span{font:900 14px 'Tajawal';color:#111111}
.aa-idcard-front-brand-copy{display:grid;gap:2px;text-align:right}.aa-idcard-front-brand-copy strong{font:900 10px/1.25 'Tajawal';color:#111111;white-space:nowrap}.aa-idcard-front-brand-copy small{font:700 6.3px/1.3 'Almarai';color:#7c8c93;white-space:nowrap}
.aa-idcard-front-photo{position:absolute;top:27px;right:20px;width:29%;height:54%;border-radius:16px;overflow:hidden;background:#edf3f6;border:3px solid #fff;box-shadow:0 8px 22px rgba(7,31,47,.15);display:grid;place-items:center}.aa-idcard-front-photo img{width:100%;height:100%;object-fit:cover}.aa-idcard-front-photo span{font:900 34px 'Tajawal';color:#111111}
.aa-idcard-front-name{position:absolute;top:50px;right:35%;left:43%;text-align:right}.aa-idcard-front-name>span{display:block;color:#7d8e96;font-size:6.7px;font-weight:700;margin-bottom:4px}.aa-idcard-front-name h2{margin:0;color:#02080b;font:900 21px/1.12 'Tajawal';white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aa-idcard-front-name p{margin:5px 0 0;color:#839198;font-size:6.8px;direction:ltr;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase}
.aa-idcard-front-facts{position:absolute;top:46%;right:35%;left:28px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 22px}.aa-idcard-front-facts div{min-width:0}.aa-idcard-front-facts span{display:block;font-size:6.5px;color:#839198;margin-bottom:5px}.aa-idcard-front-facts b{display:block;font-size:8px;color:#092f43;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aa-idcard-front-barcode{position:absolute;left:24px;bottom:25px;display:flex;align-items:center;gap:8px;direction:ltr;width:45%}.aa-idcard-front-barcode .aa-barcode-svg{height:25px;fill:#123847;flex:1;max-width:175px}.aa-idcard-front-barcode small{font-size:5.7px;letter-spacing:1.25px;color:#40565f;white-space:nowrap}
.aa-idcard-front-qr-v18{position:absolute;right:22px;bottom:18px;width:61px;text-align:center}.aa-idcard-front-qr-v18 img{display:block;width:58px;height:58px;object-fit:contain;background:#fff;padding:2px}.aa-idcard-front-qr-v18 small{display:block;margin-top:2px;font-size:5.8px;color:#73858d}
.aa-idcard-front-status{position:absolute;left:24px;bottom:61px;padding:4px 8px;border-radius:999px;font-size:5.8px;font-weight:900}.aa-idcard-front-status.is-active{background:#e7f7ec;color:#238244}.aa-idcard-front-status.is-inactive{background:#fde9e7;color:#b7352c}
.aa-idcard-back.aa-idcard-v18{padding:0!important;display:block;background:#fff!important}
.aa-idcard-back-watermark-v18{position:absolute;width:150px;height:150px;left:50%;bottom:10px;transform:translateX(-50%);opacity:.04;z-index:0;display:grid;place-items:center;pointer-events:none}.aa-idcard-back-watermark-v18 img{max-width:100%;max-height:100%;object-fit:contain}
.aa-idcard-back-brand-v18{position:relative;z-index:2;display:flex;align-items:center;gap:9px;padding:22px 20px 5px}.aa-idcard-back-logo-v18{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:#fff;padding:2px;box-shadow:0 4px 13px rgba(7,31,47,.10);border:1px solid #edf2f4}.aa-idcard-back-logo-v18 img{width:100%;height:100%;object-fit:contain}.aa-idcard-back-logo-v18 span{font:900 12px 'Tajawal';color:#111111}.aa-idcard-back-brand-v18 strong{display:block;color:#111111;font:900 10px 'Tajawal'}.aa-idcard-back-brand-v18 small{display:block;color:#84949b;font-size:6.3px;margin-top:2px}
.aa-idcard-back-grid-v18{position:relative;z-index:2;padding:8px 20px 7px!important;gap:7px 18px!important}.aa-idcard-back-grid-v18>div{padding-bottom:5px!important}
.aa-idcard-validation-v18{position:relative;z-index:2;margin:4px 20px 6px!important;padding:10px 12px!important;display:grid!important;grid-template-columns:1fr 62px!important;gap:8px 12px!important;align-items:center;background:linear-gradient(135deg,#111111,#0b4c6c)!important;border-radius:13px!important}.aa-idcard-validation-v18 .aa-idcard-codebox{padding-left:10px}.aa-idcard-validation-v18 .aa-idcard-codebox strong{font-size:10px}.aa-idcard-validation-v18 .aa-back-qr-v18{width:56px;height:56px}.aa-idcard-validation-v18 p{grid-column:1/-1!important;font-size:5.9px!important;line-height:1.55!important}
.aa-idcard-contact-v18{position:relative;z-index:2;padding:5px 20px 8px!important;font-size:5.7px!important}
@media(max-width:520px){.aa-idcard-front-brand{top:19px;left:14px;gap:5px}.aa-idcard-front-brand-logo{width:38px;height:38px;flex-basis:38px}.aa-idcard-front-brand-copy strong{font-size:7px}.aa-idcard-front-brand-copy small{font-size:4.5px}.aa-idcard-front-photo{top:21px;right:14px}.aa-idcard-front-name{top:40px}.aa-idcard-front-name h2{font-size:14px}.aa-idcard-front-facts{left:15px;gap:7px 10px}.aa-idcard-front-barcode{left:14px}.aa-idcard-front-qr-v18{right:13px}.aa-idcard-front-status{left:14px}.aa-idcard-back-brand-v18{padding-left:13px;padding-right:13px}.aa-idcard-validation-v18{margin-left:13px!important;margin-right:13px!important}.aa-idcard-back-grid-v18,.aa-idcard-contact-v18{padding-left:13px!important;padding-right:13px!important}}
@media print{.aa-idcard-front-brand-logo,.aa-idcard-back-logo-v18{box-shadow:none!important}.aa-idcard-back-watermark-v18{opacity:.035!important}.aa-idcard-front-status{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}


/* =========================================================
   ID CARD v1.8.1 — long names + image rendering fixes
========================================================= */
.aa-idcard-v18 img{
  max-width:100%;
  image-rendering:auto;
}
.aa-idcard-front-brand-logo img,
.aa-idcard-back-logo-v18 img,
.aa-idcard-back-watermark-v18 img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center;
}
.aa-idcard-front-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover!important;
  object-position:center top;
}
.aa-idcard-front-qr-v18 img,
.aa-back-qr-v18{
  display:block;
  object-fit:contain!important;
  image-rendering:auto;
}

/* Give the Arabic name a wider, safer area. */
.aa-idcard-front-name{
  top:49px!important;
  right:34%!important;
  left:21%!important;
  min-width:0;
  z-index:4;
}
.aa-idcard-front-name h2{
  width:100%;
  max-width:100%;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere;
  word-break:normal;
  line-height:1.08!important;
  font-size:20px!important;
  max-height:46px;
}
.aa-idcard-front-name.aa-name-long h2{
  font-size:17px!important;
}
.aa-idcard-front-name.aa-name-xlong h2{
  font-size:14px!important;
  line-height:1.12!important;
}
.aa-idcard-front-name p{
  width:100%;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Keep details clear even with two-line names. */
.aa-idcard-front-facts{
  top:48%!important;
  right:34%!important;
  left:25px!important;
}

/* More reliable media containers. */
.aa-idcard-front-brand-logo,
.aa-idcard-back-logo-v18{
  background:#fff!important;
}
.aa-idcard-front-photo{
  isolation:isolate;
}

@media(max-width:520px){
  .aa-idcard-front-name{
    top:39px!important;
    right:34%!important;
    left:19%!important;
  }
  .aa-idcard-front-name h2{font-size:13px!important;max-height:31px}
  .aa-idcard-front-name.aa-name-long h2{font-size:11.5px!important}
  .aa-idcard-front-name.aa-name-xlong h2{font-size:10px!important}
  .aa-idcard-front-facts{right:34%!important;left:13px!important}
}

@media print{
  .aa-idcard-v18 img{visibility:visible!important;opacity:1!important}
  .aa-idcard-front-name h2{
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
}

/* v1.9.0 — athlete actions + visual grading belts */
.aa-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.aa-row-actions form{margin:0}.aa-edit-btn,.aa-delete-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;border-radius:9px;border:1px solid transparent;font:800 12px Tajawal,sans-serif;text-decoration:none;cursor:pointer;transition:.18s}.aa-edit-btn{color:#0b63ce;background:#eaf3ff;border-color:#cfe2ff}.aa-edit-btn:hover{background:#dcecff}.aa-delete-btn{color:#c52e2e;background:#fff0f0;border-color:#ffd1d1}.aa-delete-btn:hover{background:#ffe2e2}.aa-belt-road{background:#fff;border:1px solid #e4edf1;border-right:4px solid #E31B23;border-radius:18px;padding:20px 22px;margin:0 0 22px;box-shadow:0 8px 26px rgba(17,17,17,.05)}.aa-belt-road-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.aa-belt-road-head span{color:#E31B23;font-size:11px;font-weight:900}.aa-belt-road-head h2{margin:3px 0 0;font-size:20px;color:#0B0B0B}.aa-belt-road-head small{color:#7b8c94}.aa-belt-road-list{display:flex;align-items:center;gap:12px;overflow-x:auto;padding:5px 2px 10px}.aa-belt-road-item{min-width:max-content}.aa-belt-arrow{font-size:22px;color:#E31B23;font-weight:900}.aa-belt-chip{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-weight:800;color:#25343a}.aa-belt-chip>i{position:relative;display:inline-block;width:48px;height:15px;border-radius:3px;background:var(--belt);border:1px solid var(--belt-border);box-shadow:0 2px 5px rgba(0,0,0,.08)}.aa-belt-chip>i:before,.aa-belt-chip>i:after{content:"";position:absolute;top:10px;width:20px;height:7px;background:var(--belt);border:1px solid var(--belt-border);border-top:0}.aa-belt-chip>i:before{right:5px;transform:rotate(25deg);transform-origin:right top}.aa-belt-chip>i:after{left:5px;transform:rotate(-25deg);transform-origin:left top}.aa-belt-chip>i b{position:absolute;z-index:2;left:50%;top:-2px;transform:translateX(-50%);width:9px;height:19px;border-radius:2px;background:var(--belt);border:1px solid var(--belt-border)}.aa-belt-empty{color:#9ba8ad}.aa-field-hint{display:block;margin-top:6px;color:#E31B23;font-weight:800}.aa-form-submit{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
@media(max-width:700px){.aa-belt-road-head{align-items:flex-start;flex-direction:column}.aa-row-actions{min-width:150px}.aa-edit-btn,.aa-delete-btn,.aa-row-actions .aa-link-btn{flex:1}}

/* v1.10.1 belt categories */
.aa-belt-chip i{background:var(--belt)!important}
.aa-belt-category{margin-top:18px}.aa-belt-category h3{font-family:Tajawal,sans-serif;font-size:15px;font-weight:800;color:#111111;margin:0 0 12px;padding:8px 12px;background:#f3f8fb;border-radius:10px;border-right:4px solid #E31B23}.aa-grade-group-title{font-family:Tajawal,sans-serif;font-weight:900;color:#111111;background:#f3f8fb;padding:10px 12px;border-radius:10px;margin:12px 0 6px;border-right:4px solid #E31B23}

/* v1.10.2 — DAN stripe markers */
.aa-belt-chip>i.aa-black-dan{overflow:visible;background:#1A1A1A!important;border-color:#1A1A1A!important}
.aa-dan-lines{position:absolute;z-index:4;right:5px;top:1px;height:11px;display:flex;align-items:stretch;gap:2px;pointer-events:none}
.aa-dan-lines em{display:block;width:2px;height:11px;background:#E8C547;border-radius:1px;box-shadow:0 0 0 .2px rgba(255,255,255,.35)}
.aa-receipt-btn{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border-radius:9px;background:#eaf8ff;color:#0b6f9e;border:1px solid #bfe7f7;text-decoration:none;font:800 12px Tajawal,sans-serif}.aa-receipt-toolbar{display:flex;justify-content:flex-end;gap:10px;margin:0 0 18px}.aa-receipt-sheet{position:relative;max-width:820px;margin:0 auto 35px;background:#fff;border:1px solid #dfe9ee;border-radius:24px;overflow:hidden;box-shadow:0 18px 55px rgba(7,31,47,.10);font-family:Tajawal,sans-serif;color:#182226}.aa-receipt-belt{height:9px;display:grid;grid-template-columns:repeat(7,1fr)}.aa-receipt-belt i:nth-child(1){background:#f5f5f0}.aa-receipt-belt i:nth-child(2){background:#e8c547}.aa-receipt-belt i:nth-child(3){background:#3c9b48}.aa-receipt-belt i:nth-child(4){background:#E31B23}.aa-receipt-belt i:nth-child(5){background:#7a5230}.aa-receipt-belt i:nth-child(6){background:#c0392b}.aa-receipt-belt i:nth-child(7){background:#1a1a1a}.aa-receipt-head{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:30px 34px 24px;border-bottom:1px solid #e8eff2;background:linear-gradient(180deg,#fbfdfe,#fff)}.aa-receipt-brand{display:flex;align-items:center;gap:16px}.aa-receipt-brand img{width:72px;height:72px;object-fit:contain}.aa-receipt-brand h1{margin:0;color:#0B0B0B;font-size:21px}.aa-receipt-brand p{margin:4px 0 0;color:#E31B23;font-weight:900}.aa-receipt-number{text-align:left;direction:ltr}.aa-receipt-number span,.aa-receipt-grid span,.aa-receipt-total span,.aa-receipt-person span,.aa-receipt-notes span{display:block;color:#728087;font-size:12px;font-weight:800}.aa-receipt-number strong{display:block;color:#0B0B0B;font-size:18px}.aa-receipt-number small{color:#728087}.aa-paid-stamp{position:absolute;top:113px;left:34px;border:2px solid #2d9a61;color:#23804f;border-radius:999px;padding:7px 15px;font-weight:900;transform:rotate(-5deg);background:#f3fff8}.aa-receipt-person{margin:32px 34px 20px;padding:20px 22px;border-radius:16px;background:#f5fafc;border-right:4px solid #E31B23}.aa-receipt-person strong{display:block;font-size:22px;color:#0B0B0B;margin:3px 0}.aa-receipt-person small{color:#728087;font-weight:700}.aa-receipt-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:0 34px 22px}.aa-receipt-grid>div{border:1px solid #e4edf1;border-radius:14px;padding:13px 15px}.aa-receipt-grid strong{display:block;margin-top:4px;color:#172a33}.aa-receipt-total{margin:0 34px 24px;display:grid;grid-template-columns:1fr 1.2fr 1fr;border:1px solid #d9e8ee;border-radius:18px;overflow:hidden}.aa-receipt-total>div{padding:17px;text-align:center;background:#fbfdfe}.aa-receipt-total>div+div{border-right:1px solid #d9e8ee}.aa-receipt-total .main{background:#111111;color:#fff}.aa-receipt-total .main span{color:#bde9fa}.aa-receipt-total .main strong{display:block;font-size:25px;margin-top:4px}.aa-receipt-notes{margin:0 34px 24px;padding:14px 16px;border-radius:13px;background:#fafcfd}.aa-receipt-notes p{margin:4px 0 0}.aa-receipt-footer{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:10px 50px 28px;text-align:center;color:#728087;font-weight:800}.aa-sign-line{height:55px;border-bottom:1px solid #b9c8ce}.aa-stamp-space{height:55px;border:1px dashed #c5d2d7;border-radius:50%;width:100px;margin:8px auto 0}.aa-receipt-footnote{text-align:center;margin:0;padding:15px 25px;background:#f5f8fa;color:#87959b;font-size:11px}.aa-receipt-sheet small,.aa-receipt-sheet span,.aa-receipt-sheet strong,.aa-receipt-sheet p{font-family:Tajawal,sans-serif}@media(max-width:700px){.aa-receipt-head{align-items:flex-start;flex-direction:column;padding:24px}.aa-receipt-number{text-align:right;direction:rtl}.aa-paid-stamp{position:static;display:table;margin:18px 24px 0}.aa-receipt-person{margin:18px 24px}.aa-receipt-grid{grid-template-columns:1fr;padding:0 24px 18px}.aa-receipt-total{margin:0 24px 20px;grid-template-columns:1fr}.aa-receipt-total>div+div{border-right:0;border-top:1px solid #d9e8ee}.aa-receipt-footer{padding:10px 24px 24px}}@media print{body{background:#fff!important}.aa-sidebar,.aa-topbar,.aa-receipt-toolbar,.no-print{display:none!important}.aa-app,.aa-main,.aa-content{display:block!important;width:100%!important;margin:0!important;padding:0!important;background:#fff!important}.aa-receipt-sheet{max-width:none;margin:0;border:0;border-radius:0;box-shadow:none;break-inside:avoid}.aa-receipt-head{padding-top:20px}@page{size:A4;margin:12mm}}


/* v1.10.6 — professional sidebar line icons */
.aa-side-nav a{position:relative;gap:12px;min-height:48px;padding:8px 10px 8px 12px;transition:background .18s ease,color .18s ease,transform .18s ease}
.aa-side-nav a:hover{transform:translateX(-2px)}
.aa-nav-icon{width:36px;height:36px;flex:0 0 36px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.045);color:#bfe7f7;transition:.18s ease}
.aa-nav-icon svg{width:21px;height:21px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.aa-side-nav a span{font-weight:700;line-height:1.35}
.aa-side-nav a:hover .aa-nav-icon{background:rgba(110,203,240,.12);color:#fff;border-color:rgba(110,203,240,.16)}
.aa-side-nav a.active{background:linear-gradient(90deg,rgba(110,203,240,.12),rgba(255,255,255,.105));box-shadow:inset -3px 0 0 var(--blue-light)}
.aa-side-nav a.active .aa-nav-icon{background:rgba(227,27,35,.24);border-color:rgba(110,203,240,.28);color:#fff;box-shadow:0 5px 16px rgba(0,0,0,.10)}
\n\n/* v1.10.7 — QR attendance scanner */\n.aa-qr-attendance{overflow:hidden}.aa-qr-attendance .aa-panel-head{align-items:center}.aa-qr-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:18px}.aa-qr-scanner,.aa-qr-today{border:1px solid #e1ebef;border-radius:18px;background:#fbfdfe;padding:16px}.aa-qr-video-wrap{position:relative;min-height:330px;border-radius:16px;overflow:hidden;background:#0B0B0B;display:grid;place-items:center}.aa-qr-video-wrap video{width:100%;height:330px;object-fit:cover;display:block}.aa-qr-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#c8e7f3;text-align:center;padding:30px;background:radial-gradient(circle at center,#111111,#0B0B0B)}.aa-qr-placeholder b{width:78px;height:78px;border:2px solid #6ecbf0;border-radius:20px;display:grid;place-items:center;font:900 24px Tajawal,sans-serif;color:#fff;box-shadow:0 0 0 9px rgba(110,203,240,.08)}.aa-qr-placeholder span{max-width:310px;font-weight:700;font-size:13px}.aa-qr-frame{position:absolute;z-index:3;width:190px;height:190px;inset:50% auto auto 50%;transform:translate(-50%,-50%);pointer-events:none}.aa-qr-frame i{position:absolute;width:42px;height:42px;border-color:#6ecbf0;border-style:solid}.aa-qr-frame i:nth-child(1){right:0;top:0;border-width:4px 4px 0 0;border-radius:0 13px 0 0}.aa-qr-frame i:nth-child(2){left:0;top:0;border-width:4px 0 0 4px;border-radius:13px 0 0 0}.aa-qr-frame i:nth-child(3){right:0;bottom:0;border-width:0 4px 4px 0;border-radius:0 0 13px 0}.aa-qr-frame i:nth-child(4){left:0;bottom:0;border-width:0 0 4px 4px;border-radius:0 0 0 13px}.aa-qr-actions{display:flex;align-items:center;gap:12px;margin-top:12px}.aa-qr-actions span{font-size:12px;color:#728087;font-weight:800}.aa-qr-manual{margin-top:14px;padding-top:14px;border-top:1px solid #e4edf1}.aa-qr-manual label>span{display:block;font-size:12px;font-weight:800;color:#728087;margin-bottom:7px}.aa-qr-manual label>div{display:flex;gap:8px}.aa-qr-manual input{flex:1;min-width:0}.aa-qr-today{padding:0;overflow:hidden;background:#fff}.aa-qr-today-head{display:flex;justify-content:space-between;align-items:center;padding:17px 18px;border-bottom:1px solid #e7eef1;background:#f7fbfc}.aa-qr-today-head div{display:flex;flex-direction:column}.aa-qr-today-head b{color:#0B0B0B;font:900 16px Tajawal,sans-serif}.aa-qr-today-head span{color:#87969c;font-size:11px}.aa-qr-today-head>strong{min-width:38px;height:38px;border-radius:12px;background:#e9f7fc;color:#0b6f9e;display:grid;place-items:center}.aa-qr-today-list{max-height:390px;overflow:auto}.aa-qr-person{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;padding:12px 14px;border-bottom:1px solid #eef3f5}.aa-qr-person>img,.aa-qr-person>span{width:42px;height:42px;border-radius:12px;object-fit:cover;background:#e9f7fc;color:#0b6f9e;display:grid;place-items:center;font-weight:900}.aa-qr-person div{min-width:0}.aa-qr-person b{display:block;color:#172a33;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aa-qr-person small{display:block;color:#839198;font-size:10px;margin-top:2px}.aa-qr-person time{direction:ltr;color:#E31B23;font-weight:900;font-size:12px}.aa-qr-empty{padding:40px 20px;text-align:center;color:#8b999f;font-weight:700}@media(max-width:900px){.aa-qr-grid{grid-template-columns:1fr}.aa-qr-video-wrap,.aa-qr-video-wrap video{min-height:290px;height:290px}}@media(max-width:520px){.aa-qr-attendance .aa-panel-head{align-items:stretch;flex-direction:column}.aa-qr-attendance .aa-panel-head .aa-primary-btn{width:100%}.aa-qr-video-wrap,.aa-qr-video-wrap video{min-height:270px;height:270px}.aa-qr-manual label>div{flex-direction:column}.aa-qr-actions{align-items:flex-start;flex-direction:column}.aa-qr-actions .aa-secondary-btn{width:100%}}\n

/* v1.10.8 — athlete attendance calendar */
.aa-calendar-athlete{display:flex;align-items:center;justify-content:space-between;gap:18px}
.aa-calendar-athlete .aa-person-cell img,.aa-calendar-athlete .aa-person-cell>span{width:54px;height:54px}
.aa-calendar-legend{display:flex;gap:8px;flex-wrap:wrap}.aa-calendar-legend span{padding:7px 11px;border-radius:999px;font-size:12px;font-weight:800}
.aa-calendar-legend .present{background:#e9f8ef;color:#18723a}.aa-calendar-legend .late{background:#fff6dc;color:#8a6500}.aa-calendar-legend .absent{background:#fff0f0;color:#b12d2d}.aa-calendar-legend .excused{background:#eef4ff;color:#315c9f}
.aa-full-calendar{overflow:hidden}.aa-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.aa-calendar-toolbar>div{text-align:center}.aa-calendar-toolbar span{font-size:12px;color:var(--aa-muted,#728087)}.aa-calendar-toolbar h2{margin:3px 0 0}.aa-calendar-nav{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border:1px solid #dfe8ed;border-radius:12px;text-decoration:none;font-weight:800;color:#111111;background:#fff}
.aa-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.aa-calendar-weekdays{margin-bottom:8px}.aa-calendar-weekdays div{text-align:center;font-size:12px;font-weight:800;color:#728087;padding:7px}
.aa-calendar-day{min-height:112px;border:1px solid #e1e9ed;border-radius:15px;background:#fff;padding:10px;text-align:right;display:flex;flex-direction:column;align-items:flex-start;gap:7px;cursor:pointer;font-family:inherit;color:#182226;transition:.18s ease}.aa-calendar-day:hover{transform:translateY(-2px);border-color:#6ecbf0;box-shadow:0 8px 22px rgba(7,31,47,.08)}.aa-calendar-day.is-empty{border-color:transparent;background:#f7f9fa;cursor:default}.aa-calendar-day.is-empty:hover{transform:none;box-shadow:none}.aa-day-number{font-weight:900;font-size:15px}.aa-calendar-day b{font-size:12px;padding:5px 8px;border-radius:999px}.aa-calendar-day small{font-size:11px;color:#728087}.aa-calendar-day.status-present{background:#f4fcf7;border-color:#bfe7cc}.aa-calendar-day.status-present b{background:#dff4e6;color:#18723a}.aa-calendar-day.status-late{background:#fffbef;border-color:#f1dfa4}.aa-calendar-day.status-late b{background:#fff0bd;color:#806000}.aa-calendar-day.status-absent{background:#fff7f7;border-color:#f0c5c5}.aa-calendar-day.status-absent b{background:#ffe1e1;color:#ad2929}.aa-calendar-day.status-excused{background:#f6f9ff;border-color:#cad9f1}.aa-calendar-day.status-excused b{background:#e4edfb;color:#315c9f}.aa-add-att{margin-top:auto}
.aa-att-modal[hidden]{display:none!important}.aa-att-modal{position:fixed;inset:0;z-index:99999;background:rgba(4,19,29,.62);display:flex;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(5px)}.aa-att-modal-card{width:min(560px,100%);background:#fff;border-radius:22px;padding:25px;box-shadow:0 30px 80px rgba(0,0,0,.25);position:relative}.aa-att-modal-card h2{margin:4px 0 20px}.aa-att-modal-close{position:absolute;left:16px;top:14px;width:36px;height:36px;border:0;border-radius:10px;background:#f0f4f6;font-size:24px;cursor:pointer}.aa-att-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.aa-att-modal-grid label{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:13px}.aa-att-modal-grid label.wide{grid-column:1/-1}.aa-att-modal-grid input,.aa-att-modal-grid select{width:100%;border:1px solid #dce5e9;border-radius:12px;padding:11px 12px;font-family:inherit;background:#fff}.aa-calendar-modal-actions{margin-top:20px}.aa-modal-open{overflow:hidden}
@media(max-width:760px){.aa-calendar-athlete{align-items:flex-start;flex-direction:column}.aa-calendar-grid{gap:4px}.aa-calendar-weekdays div{font-size:10px;padding:4px 1px}.aa-calendar-day{min-height:82px;padding:7px;border-radius:10px}.aa-calendar-day b{font-size:10px;padding:3px 5px}.aa-calendar-day small{font-size:9px}.aa-calendar-toolbar{gap:8px}.aa-calendar-nav{padding:8px;font-size:11px}.aa-att-modal-grid{grid-template-columns:1fr}}

/* v1.10.9 — advanced athlete profile */
.aa-ap-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px;border-radius:24px;background:linear-gradient(135deg,#0B0B0B,#111111 62%,#116a91);color:#fff;margin-bottom:16px;box-shadow:0 18px 42px rgba(7,31,47,.16)}.aa-ap-person{display:flex;align-items:center;gap:16px}.aa-ap-person>img,.aa-ap-placeholder{width:82px;height:82px;border-radius:22px;object-fit:cover;border:2px solid rgba(255,255,255,.25);background:rgba(255,255,255,.12)}.aa-ap-placeholder{display:grid;place-items:center;font-size:30px;font-weight:900}.aa-ap-person h1{color:#fff;margin:4px 0 6px}.aa-ap-person p{margin:0;color:#c9e8f5}.aa-ap-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.aa-ap-hero .aa-secondary-btn{background:#fff;color:#111111;border-color:#fff}.aa-ap-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}.aa-ap-kpis>a{background:#fff;border:1px solid #e2e9ed;border-radius:18px;padding:16px;text-decoration:none;color:#182226;display:flex;flex-direction:column;gap:5px;transition:.18s;box-shadow:0 7px 22px rgba(7,31,47,.045)}.aa-ap-kpis>a:hover{transform:translateY(-2px);border-color:#6ecbf0}.aa-ap-kpis span{font-size:11px;color:#728087;font-weight:800}.aa-ap-kpis strong{font-size:21px;color:#111111}.aa-ap-kpis small{font-size:11px;color:#728087}.aa-ap-tabs{display:flex;gap:6px;overflow:auto;background:#fff;border:1px solid #e2e9ed;border-radius:15px;padding:6px;margin-bottom:15px}.aa-ap-tabs a{white-space:nowrap;text-decoration:none;color:#5e6d74;padding:9px 12px;border-radius:10px;font-size:12px;font-weight:800}.aa-ap-tabs a.active{background:#111111;color:#fff}.aa-ap-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.aa-ap-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.aa-ap-quick-grid a{padding:13px;border:1px solid #dfe8ed;border-radius:13px;background:#f7fbfc;text-align:center;text-decoration:none;color:#111111;font-weight:800;font-size:12px}.aa-ap-quick-grid a:hover{border-color:#6ecbf0;background:#fff3f4}.aa-ap-activity{margin-top:15px}.aa-ap-activity-list{display:flex;flex-direction:column}.aa-ap-activity-item{display:flex;gap:12px;padding:11px 3px;border-bottom:1px solid #edf1f3;align-items:flex-start}.aa-ap-activity-item:last-child{border-bottom:0}.aa-ap-activity-item i{width:9px;height:9px;border-radius:50%;background:#E31B23;box-shadow:0 0 0 5px #fff0f1;margin-top:5px}.aa-ap-activity-item div{display:flex;flex-direction:column;gap:3px}.aa-ap-activity-item b{font-size:12px}.aa-ap-activity-item small{font-size:11px;color:#728087}
@media(max-width:900px){.aa-ap-hero{align-items:flex-start;flex-direction:column}.aa-ap-kpis{grid-template-columns:1fr 1fr}.aa-ap-grid{grid-template-columns:1fr}}@media(max-width:560px){.aa-ap-person>img,.aa-ap-placeholder{width:64px;height:64px;border-radius:17px}.aa-ap-kpis{grid-template-columns:1fr 1fr}.aa-ap-kpis>a{padding:12px}.aa-ap-kpis strong{font-size:17px}.aa-ap-actions{width:100%}.aa-ap-actions a{flex:1;text-align:center}.aa-ap-quick-grid{grid-template-columns:1fr}}

/* v1.11.0 advanced dashboard */
.aa-dash-welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}.aa-dash-welcome h1{margin:3px 0 5px}.aa-dash-welcome p{margin:0;color:#728087}.aa-dash-date{background:#fff;border:1px solid #e2e9ed;border-radius:15px;padding:10px 15px;display:flex;flex-direction:column}.aa-dash-date span{font-size:10px;color:#728087}.aa-dash-date strong{color:#111111}.aa-dash-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px}.aa-dash-kpis>a{display:flex;flex-direction:column;gap:5px;background:#fff;border:1px solid #e2e9ed;border-radius:18px;padding:16px;text-decoration:none;color:#182226;box-shadow:0 7px 22px rgba(7,31,47,.045);transition:.18s}.aa-dash-kpis>a:hover{transform:translateY(-2px);border-color:#6ecbf0}.aa-dash-kpis .is-alert{background:#fffafa;border-color:#efcaca}.aa-dash-kpis span{font-size:11px;font-weight:800;color:#728087}.aa-dash-kpis strong{font-size:21px;color:#111111}.aa-dash-kpis .is-alert strong{color:#b12d2d}.aa-dash-kpis small{font-size:10px;color:#829096}.aa-dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}.aa-dash-list{display:flex;flex-direction:column}.aa-dash-person,.aa-dash-payment{display:flex;align-items:center;gap:10px;padding:10px 2px;border-bottom:1px solid #edf1f3;text-decoration:none;color:#182226}.aa-dash-person:last-child,.aa-dash-payment:last-child{border-bottom:0}.aa-dash-person img,.aa-dash-person>i{width:38px;height:38px;border-radius:12px;object-fit:cover;background:#fff0f1;display:grid;place-items:center;color:#111111;font-style:normal;font-weight:900}.aa-dash-person>div,.aa-dash-payment>div{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.aa-dash-person b,.aa-dash-payment b{font-size:12px}.aa-dash-person small,.aa-dash-payment small{font-size:10px;color:#728087}.aa-dash-person time{display:flex;flex-direction:column;align-items:flex-end;font-size:10px;color:#728087}.aa-dash-person time em{font-style:normal;color:#E31B23;font-weight:800}.aa-dash-payment>strong{font-size:12px;color:#111111}.aa-dash-events{display:flex;flex-direction:column}.aa-dash-events>a{display:flex;align-items:center;gap:10px;padding:9px 2px;border-bottom:1px solid #edf1f3;text-decoration:none;color:#182226}.aa-dash-events>a:last-child{border-bottom:0}.aa-event-date{width:50px;height:50px;border-radius:13px;background:#fff3f4;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none}.aa-event-date strong{font-size:17px;color:#111111;line-height:1}.aa-event-date span{font-size:9px;color:#728087}.aa-dash-events>a>div:nth-child(2){display:flex;flex-direction:column;gap:3px;flex:1}.aa-dash-events b{font-size:12px}.aa-dash-events small{font-size:10px;color:#728087}.aa-dash-shortcuts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.aa-dash-shortcuts>a{display:flex;flex-direction:column;gap:4px;text-decoration:none;background:linear-gradient(145deg,#111111,#0d5578);border-radius:16px;padding:15px;color:#fff}.aa-dash-shortcuts b{font-size:12px}.aa-dash-shortcuts span{font-size:10px;color:#bfe5f5}@media(max-width:900px){.aa-dash-kpis,.aa-dash-shortcuts{grid-template-columns:1fr 1fr}.aa-dash-grid{grid-template-columns:1fr}}@media(max-width:560px){.aa-dash-welcome{align-items:flex-start;flex-direction:column}.aa-dash-date{width:100%}.aa-dash-kpis{grid-template-columns:1fr 1fr}.aa-dash-kpis>a{padding:12px}.aa-dash-kpis strong{font-size:17px}}

/* v1.11.1 — event management dashboard */
.aa-event-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:22px 24px;border-radius:22px;background:linear-gradient(135deg,#0B0B0B,#111111 65%,#116a91);color:#fff;margin-bottom:15px}.aa-event-hero h1{color:#fff;margin:4px 0 8px}.aa-event-back{display:inline-block;color:#9eddf6;text-decoration:none;font-size:10px;margin-bottom:8px}.aa-event-meta{display:flex;gap:7px;flex-wrap:wrap}.aa-event-meta>span{padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.1);font-size:10px}.aa-event-hero-actions{display:flex;gap:8px;flex-wrap:wrap}.aa-event-hero .aa-secondary-btn{background:#fff;color:#111111;border-color:#fff}.aa-event-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:15px}.aa-event-kpis>div{background:#fff;border:1px solid #e2e9ed;border-radius:17px;padding:15px;display:flex;flex-direction:column;gap:4px}.aa-event-kpis span{font-size:10px;color:#728087;font-weight:800}.aa-event-kpis strong{font-size:20px;color:#111111}.aa-event-kpis small{font-size:10px;color:#829096}.aa-event-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:15px;margin-bottom:15px}.aa-event-filter{display:flex;gap:6px}.aa-event-filter span{padding:5px 8px;background:#f1f6f8;border-radius:999px;font-size:9px;color:#64737a}.aa-event-table-wrap{overflow:auto}.aa-event-table{width:100%;border-collapse:collapse;min-width:760px}.aa-event-table th{font-size:10px;color:#728087;text-align:right;padding:9px;border-bottom:1px solid #dfe7eb}.aa-event-table td{padding:10px 9px;border-bottom:1px solid #edf1f3;font-size:11px}.aa-event-athlete{display:flex;align-items:center;gap:8px;text-decoration:none;color:#182226}.aa-event-athlete img,.aa-event-athlete i{width:32px;height:32px;border-radius:9px;object-fit:cover;background:#fff0f1;display:grid;place-items:center;font-style:normal;color:#111111;font-weight:900}.aa-pay-state{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:800}.aa-pay-state.paid{background:#e5f7eb;color:#176b37}.aa-pay-state.pending{background:#fff1df;color:#985a0a}.aa-mini-action{display:inline-flex;padding:5px 8px;border-radius:8px;background:#fff3f4;color:#0b6389;text-decoration:none;font-size:9px;font-weight:800;margin:2px}.aa-event-summary .aa-details{grid-template-columns:1fr}.aa-event-progress{margin-top:16px}.aa-event-progress>div{display:flex;justify-content:space-between;font-size:11px;margin-bottom:7px}.aa-event-progress>i{display:block;height:8px;background:#e8eef1;border-radius:99px;overflow:hidden}.aa-event-progress>i>em{display:block;height:100%;background:#E31B23;border-radius:99px}.aa-event-payments{margin-bottom:10px}
@media(max-width:950px){.aa-event-grid{grid-template-columns:1fr}.aa-event-kpis{grid-template-columns:1fr 1fr}}@media(max-width:600px){.aa-event-hero{align-items:flex-start;flex-direction:column}.aa-event-hero-actions{width:100%}.aa-event-hero-actions>*{flex:1;text-align:center}.aa-event-kpis{grid-template-columns:1fr 1fr}.aa-event-kpis>div{padding:12px}.aa-event-kpis strong{font-size:16px}}
@media print{.aa-sidebar,.aa-topbar,.aa-event-hero-actions,.aa-event-back,.aa-event-summary,.aa-event-payments,.aa-event-filter,.aa-mini-action{display:none!important}.aa-main{margin:0!important;padding:0!important}.aa-event-hero{background:#fff!important;color:#182226!important;border:1px solid #ddd}.aa-event-hero h1{color:#182226!important}.aa-event-meta>span{background:#f4f4f4!important}.aa-event-grid{display:block}.aa-event-table{min-width:0}.aa-event-kpis{grid-template-columns:repeat(4,1fr)}}

/* v1.12.0 Receipt register */
.aa-receipts-page{direction:rtl}.aa-page-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.aa-page-head h1{margin:4px 0;color:#0B0B0B}.aa-page-head p{margin:0;color:#728087}.aa-eyebrow{font-size:12px;color:#E31B23;font-weight:800}.aa-receipt-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.aa-receipt-summary>div{background:#fff;border:1px solid #e4ebee;border-radius:16px;padding:18px}.aa-receipt-summary span{display:block;color:#728087;font-size:12px}.aa-receipt-summary b{display:block;color:#111111;font-size:24px;margin-top:5px}.aa-receipt-table{width:100%;border-collapse:collapse}.aa-receipt-table th{background:#f4f7f9;color:#53636a;padding:12px 9px;text-align:right;font-size:12px}.aa-receipt-table td{padding:12px 9px;border-bottom:1px solid #e8edef;vertical-align:middle}.aa-receipt-table td small{display:block;color:#89969b;margin-top:3px}.aa-paid-chip{display:inline-block;background:#eaf8ef;color:#176b37;border-radius:30px;padding:5px 9px;font-weight:800;font-size:11px}.aa-empty-cell{text-align:center!important;color:#728087;padding:30px!important}@media(max-width:900px){.aa-page-head{align-items:flex-start;flex-direction:column}.aa-receipt-summary{grid-template-columns:1fr}.aa-table-wrap{overflow:auto}.aa-receipt-table{min-width:1050px}}

/* v1.12.1 receipt integration */
.aa-receipt-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.aa-receipt-download{display:inline-flex;align-items:center;padding:7px 10px;border-radius:9px;background:#111111;color:#fff!important;text-decoration:none;font-size:11px;font-weight:800}.aa-page-head>.aa-primary-btn{white-space:nowrap}

.aa-backup-status{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:0 0 16px}.aa-backup-status>div{background:#fff;border:1px solid #e3ebee;border-radius:16px;padding:18px}.aa-backup-status span{display:block;color:#728087;font-size:12px}.aa-backup-status b{display:block;color:#111111;font-size:24px;margin-top:5px}.aa-backup-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.aa-backup-card{padding:22px}.aa-backup-card form{display:flex;flex-direction:column;gap:12px}.aa-backup-card input[type=file]{padding:14px;border:1px dashed #bdcbd1;border-radius:10px;background:#f8fafb;font-family:Tajawal}.aa-danger-btn{background:#c0392b;color:#fff;border:0;border-radius:10px;padding:12px 18px;font:700 14px Tajawal;cursor:pointer}@media(max-width:800px){.aa-backup-status,.aa-backup-grid{grid-template-columns:1fr}}

/* v1.13.4 Backup password protection */
.aa-backup-lock-wrap{direction:rtl;min-height:calc(100vh - 180px);display:grid;place-items:center;padding:30px 15px}
.aa-backup-lock-card{width:min(520px,100%);background:#fff;border:1px solid #e2eaee;border-radius:24px;padding:38px;box-sizing:border-box;box-shadow:0 18px 50px rgba(7,31,47,.09);text-align:center}
.aa-backup-lock-icon{width:70px;height:70px;border-radius:20px;background:#fff0f1;color:#111111;display:grid;place-items:center;margin:0 auto 18px}
.aa-backup-lock-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.aa-backup-lock-card h1{font-size:28px;color:#0B0B0B;margin:6px 0 8px}
.aa-backup-lock-card>p{color:#728087;line-height:1.8;margin:0 auto 22px;max-width:420px}
.aa-backup-lock-card form{text-align:right}
.aa-backup-lock-card label{display:block;font-weight:700;color:#182226;margin-bottom:7px}
.aa-backup-password-field{display:grid;grid-template-columns:1fr auto;border:1px solid #cbd7dc;border-radius:12px;overflow:hidden;background:#fff}
.aa-backup-password-field input{border:0!important;outline:0!important;padding:14px!important;font:600 16px Arial,Tajawal;width:100%;box-sizing:border-box}
.aa-backup-password-field button{border:0;border-right:1px solid #e1e8eb;background:#f6f9fa;color:#111111;padding:0 16px;font:700 12px Tajawal;cursor:pointer}
.aa-backup-unlock-btn{width:100%;margin-top:14px;text-align:center;justify-content:center}
.aa-backup-lock-note{margin-top:18px;padding-top:16px;border-top:1px solid #edf1f3;color:#8a979c;font-size:11px}
.aa-backup-lock-error{background:#fff0ed;color:#a73428;border-radius:10px;padding:10px 12px;margin:0 0 15px;font-weight:700;font-size:12px}
.aa-backup-lock-btn{background:#fff;color:#111111;border:1px solid #cbd9df;border-radius:10px;padding:10px 15px;text-decoration:none;font-weight:700;white-space:nowrap}
@media(max-width:600px){.aa-backup-lock-card{padding:26px 20px}.aa-backup-lock-card h1{font-size:23px}}

/* v1.13.6 season training groups */
.aa-groups-head{align-items:center;gap:20px}.aa-groups-head form{margin:0}
.aa-season-groups-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0}
.aa-season-group-card{border:1px solid #dce7ec;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(7,31,47,.05)}
.aa-season-group-card .aa-season-card-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:17px 18px;color:#fff}
.aa-season-group-card .aa-season-card-head div{display:flex;flex-direction:column;gap:4px}.aa-season-group-card .aa-season-card-head strong{font-size:15px}.aa-season-group-card .aa-season-card-head span{font-size:11px;opacity:.86}
.aa-season-group-card .aa-season-card-head b{background:rgba(255,255,255,.92);color:#111111;padding:7px 11px;border-radius:999px;font-size:11px;white-space:nowrap}
.aa-season-blue header{background:#096cc3}.aa-season-red header{background:#bc1820}.aa-season-green header{background:#12823a}.aa-season-navy header{background:#0b477b}
.aa-season-table{padding:5px 14px 12px}.aa-season-row{display:grid;grid-template-columns:.75fr 1.25fr 1fr;gap:8px;align-items:center;padding:10px 4px;border-bottom:1px solid #edf2f4;font-size:12px}
.aa-season-row:last-child{border-bottom:0}.aa-season-row strong{color:#111111}.aa-season-labels{font-weight:700;color:#728087;font-size:10px}
.aa-groups-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:4px 0 24px}.aa-groups-summary div{background:#f6fafc;border:1px solid #e1eaee;border-radius:14px;padding:15px;text-align:center}.aa-groups-summary strong{display:block;color:#E31B23;font-size:21px}.aa-groups-summary span{font-size:11px;color:#728087}
.aa-group-manual{border:1px solid #dfe8ec;border-radius:14px;margin:16px 0 24px;background:#fbfdfe}.aa-group-manual summary{cursor:pointer;padding:15px 17px;font-weight:700;color:#111111}.aa-group-manual .aa-mini-form{padding:0 17px 17px}
.aa-existing-groups{margin-top:8px}.aa-existing-groups h3{margin:0 0 4px}
@media(max-width:850px){.aa-season-groups-grid{grid-template-columns:1fr}.aa-groups-summary{grid-template-columns:repeat(2,1fr)}.aa-groups-head{align-items:flex-start;flex-direction:column}}

/* v1.13.7 polished season groups */
.aa-groups-pro>.aa-config-head{border-bottom:1px solid #e7eef1;padding-bottom:22px;margin-bottom:6px}
.aa-groups-pro>.aa-config-head .aa-primary-btn{background:#E31B23!important;border:1px solid #E31B23!important;color:#fff!important;border-radius:12px!important;padding:12px 19px!important;box-shadow:0 7px 18px rgba(227,27,35,.18)!important;font-weight:800!important}
.aa-groups-pro>.aa-config-head .aa-primary-btn:hover{background:#0b6f9d!important;border-color:#0b6f9d!important}
.aa-season-groups-grid{gap:20px!important;margin-top:26px!important}
.aa-season-group-card{border:0!important;border-radius:18px!important;box-shadow:0 9px 28px rgba(7,31,47,.09)!important}
.aa-season-card-head{min-height:92px;padding:16px 18px!important}
.aa-season-card-title{display:flex!important;flex-direction:row!important;align-items:center!important;gap:13px!important;min-width:0}
.aa-season-card-title>div{display:flex;flex-direction:column;gap:2px!important;min-width:0}
.aa-season-card-title strong{font-size:16px!important;line-height:1.5}
.aa-season-card-title small{font-size:12px;font-weight:700;opacity:.95}
.aa-season-card-title span:not(.aa-season-sport-icon){font-size:11px!important;opacity:.82!important}
.aa-season-sport-icon{width:46px;height:46px;border:1px solid rgba(255,255,255,.5);border-radius:50%;display:grid!important;place-items:center;font-size:22px!important;background:rgba(255,255,255,.09);flex:0 0 46px}
.aa-season-group-card .aa-season-card-head>b{font-size:11px!important;min-width:56px;text-align:center}
.aa-season-blue .aa-season-card-head{background:linear-gradient(135deg,#096bc1,#E31B23)!important}
.aa-season-navy .aa-season-card-head{background:linear-gradient(135deg,#07365f,#0b568d)!important}
.aa-season-red .aa-season-card-head{background:linear-gradient(135deg,#a9121b,#d21e27)!important}
.aa-season-green .aa-season-card-head{background:linear-gradient(135deg,#087631,#15964a)!important}
.aa-season-table{padding:0 16px 8px!important}
.aa-season-row{grid-template-columns:.7fr 1.25fr .85fr!important;padding:11px 5px!important;min-height:43px}
.aa-season-labels{background:#f7fafb;margin:0 -16px;padding:9px 21px!important;color:#62757d!important}
.aa-time-ltr{direction:ltr!important;unicode-bidi:isolate!important;display:flex;justify-content:center;align-items:center;gap:7px;font-variant-numeric:tabular-nums;font-weight:700;color:#182226}
.aa-time-ltr i{font-style:normal;color:#9aa8ae;font-weight:400}
.aa-period{font-weight:600;color:#405159}
.aa-season-group-card .aa-season-card-foot{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:11px 18px 14px;border-top:1px solid #edf2f4;background:#fbfdfe}
.aa-season-group-card .aa-season-card-foot span{font-size:10px;color:#52666f;background:#eef5f7;padding:5px 9px;border-radius:999px}
.aa-season-blue .aa-season-row strong{color:#0873b7}.aa-season-navy .aa-season-row strong{color:#0b477b}.aa-season-red .aa-season-row strong{color:#b51620}.aa-season-green .aa-season-row strong{color:#11823b}
.aa-groups-summary div{background:#fff!important;box-shadow:0 5px 18px rgba(7,31,47,.04)}
.aa-groups-summary div:nth-child(1) strong{color:#E31B23}.aa-groups-summary div:nth-child(2) strong{color:#168b45}.aa-groups-summary div:nth-child(3) strong{color:#c58b13}.aa-groups-summary div:nth-child(4) strong{color:#6e4bb5}
@media(max-width:600px){.aa-season-card-head{min-height:auto}.aa-season-card-title strong{font-size:14px!important}.aa-season-row{grid-template-columns:.65fr 1.25fr .8fr!important}.aa-time-ltr{gap:4px}.aa-season-sport-icon{width:39px;height:39px;flex-basis:39px}}

/* v1.13.9 group editing */
.aa-group-actions{display:flex;align-items:center;gap:7px;margin-inline-start:auto}
.aa-group-edit-btn,.aa-secondary-btn{border:1px solid #bcd6e1;background:#eef8fc;color:#0b6f9d;border-radius:9px;padding:8px 13px;font:700 11px Tajawal;cursor:pointer}
.aa-group-edit-btn:hover{background:#dff2fa}
.aa-group-edit-panel{display:none;grid-column:1/-1;width:100%;padding:15px 0 2px;border-top:1px solid #e8eff2;margin-top:12px}
.aa-group-edit-panel.is-open{display:block}
.aa-group-edit-panel .aa-mini-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.aa-group-edit-panel label{display:flex;flex-direction:column;gap:6px}.aa-group-edit-panel label span{font-size:11px;font-weight:700;color:#53666e}
.aa-group-edit-panel input,.aa-group-edit-panel select{width:100%;box-sizing:border-box;border:1px solid #d3e0e5;border-radius:9px;padding:10px;background:#fff;font:500 12px Tajawal}
.aa-edit-group-buttons{display:flex;align-items:end;gap:8px}
.aa-edit-group-buttons .aa-primary-btn,.aa-edit-group-buttons .aa-secondary-btn{height:39px}
.aa-existing-groups .aa-config-item{flex-wrap:wrap}
@media(max-width:800px){.aa-group-edit-panel .aa-mini-form{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.aa-group-edit-panel .aa-mini-form{grid-template-columns:1fr}.aa-group-actions{width:100%;margin-top:8px}}

/* v1.14.0 edit actions inside the colored season cards */
.aa-season-row{grid-template-columns:.65fr 1.15fr .8fr .72fr!important}
.aa-card-row-actions{display:flex;justify-content:center}
.aa-card-edit-btn{border:1px solid #8fcbe5;background:#edf8fd;color:#0877ad;border-radius:7px;padding:6px 11px;font:800 10px Tajawal;cursor:pointer}
.aa-card-edit-btn:hover{background:#d9f1fb}
.aa-not-created{font-size:9px;color:#9aa8ae;background:#f1f4f5;border-radius:99px;padding:5px 7px}
.aa-card-edit-panel{display:none;padding:14px 16px 16px;background:#f7fafb;border-top:1px solid #e1eaee}
.aa-card-edit-panel.is-open{display:block}
.aa-card-edit-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;text-align:right}
.aa-card-edit-form label{display:flex;flex-direction:column;gap:5px}.aa-card-edit-form label span{font-size:9px;font-weight:800;color:#61747c}
.aa-card-edit-form input,.aa-card-edit-form select{width:100%;box-sizing:border-box;border:1px solid #cedde3;border-radius:8px;background:#fff;padding:9px;font:500 11px Tajawal}
.aa-card-edit-controls{display:flex;align-items:end;gap:7px}.aa-card-edit-controls button{height:37px}
.aa-card-edit-controls .aa-primary-btn{padding:8px 12px!important;font-size:10px!important}.aa-card-edit-controls .aa-secondary-btn{font-size:10px}
@media(max-width:600px){.aa-season-row{grid-template-columns:.6fr 1.05fr .75fr .7fr!important}.aa-card-edit-form{grid-template-columns:1fr 1fr}.aa-card-edit-controls{grid-column:1/-1}}

/* v1.14.1 direct creation for an unlinked poster group */
.aa-create-one-group{margin:0!important;padding:0!important}
.aa-create-one-btn{border:1px solid #8fcbe5;background:#edf8fd;color:#0877ad;border-radius:7px;padding:6px 10px;font:800 10px Tajawal;cursor:pointer}
.aa-create-one-btn:hover{background:#d9f1fb}

/* v1.14.2: every poster row always exposes تعديل */
.aa-card-row-actions .aa-card-edit-btn{display:inline-flex;align-items:center;justify-content:center;min-width:58px}

/* Belt sequence styles */
.aa-belt-config-head{align-items:center}.aa-belt-config-head form{margin:0}
.aa-tkd-belts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:18px 0 24px}
.aa-tkd-belt-item{position:relative;border:1px solid #e0e9ed;border-radius:13px;background:#fff;padding:13px 9px 11px;text-align:center}
.aa-tkd-order{position:absolute;top:6px;right:7px;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#111111;color:#fff;font-size:9px;font-weight:800}
.aa-tkd-belt{display:block;width:74px;height:14px;margin:16px auto 9px;border:1px solid #cdd8dc;border-radius:3px;box-shadow:0 2px 5px rgba(0,0,0,.08)}
.aa-tkd-belt-item strong{font-size:10px;color:#26383f}
.aa-tkd-white{background:#f5f5f0}.aa-tkd-white-yellow{background:linear-gradient(90deg,#f5f5f0 0 39%,#e8c547 39% 46%,#f5f5f0 46% 54%,#e8c547 54% 61%,#f5f5f0 61%)}
.aa-tkd-yellow{background:#e8c547}.aa-tkd-orange{background:#f28c28}.aa-tkd-green{background:#3c9b48}.aa-tkd-blue{background:#1c5db5}
.aa-tkd-blue-red{background:linear-gradient(90deg,#1c5db5 0 42%,#c9272f 42% 58%,#1c5db5 58%)}
.aa-tkd-red{background:#c9272f}.aa-tkd-red-black{background:linear-gradient(90deg,#c9272f 0 42%,#1a1a1a 42% 58%,#c9272f 58%)}
.aa-tkd-red-2black{background:linear-gradient(90deg,#c9272f 0 28%,#1a1a1a 28% 35%,#c9272f 35% 65%,#1a1a1a 65% 72%,#c9272f 72%)}
@media(max-width:900px){.aa-tkd-belts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.aa-tkd-belts{grid-template-columns:1fr 1fr}}

/* v1.15.0 — separate belt paths by discipline */
.aa-discipline-belt-block{margin-top:18px;border:1px solid #dce8ed;border-radius:16px;background:#fff;overflow:hidden}
.aa-discipline-belt-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 17px;background:#f2f8fb;border-bottom:1px solid #e0ebef}
.aa-discipline-belt-title span{font-size:10px;color:#71838b;font-weight:700}
.aa-discipline-belt-title h3{margin:0;color:#111111;font-size:18px;font-weight:800}
.aa-discipline-belt-block .aa-belt-category{padding:13px 17px}
.aa-discipline-belt-block .aa-belt-category+.aa-belt-category{border-top:1px solid #edf2f4}
.aa-discipline-belt-block .aa-belt-category h4{margin:0 0 11px;color:#52656d;font-size:11px;font-weight:800}

.aa-existing-sports{padding:14px 16px;border:1px solid #dce8ed;border-radius:12px;background:#f4f9fb;display:flex;gap:10px;align-items:center;justify-content:space-between}.aa-existing-sports span{color:#64777f;font-size:12px}

.aa-auto-category{display:inline-flex;font-weight:800;color:#111111;background:#fff0f1;border-radius:999px;padding:6px 10px;white-space:nowrap}

/* Athletes — martial-art card directory */
.aa-martial-tabs{display:flex;gap:10px;overflow:auto;padding:4px 2px 14px;margin:0 0 8px;scrollbar-width:thin}
.aa-martial-tabs a{display:flex;align-items:center;gap:10px;min-width:max-content;padding:10px 14px;border:1px solid #dce7ec;border-radius:14px;background:#fff;color:#111111;text-decoration:none;font-weight:800;box-shadow:0 5px 18px rgba(7,31,47,.05)}
.aa-martial-tabs a b{display:grid;place-items:center;min-width:28px;height:28px;padding:0 7px;border-radius:999px;background:#fff0f1;color:#E31B23;font-size:12px}
.aa-martial-sections{display:grid;gap:22px}
.aa-martial-section{background:#fff;border:1px solid #e1eaee;border-radius:22px;padding:18px;box-shadow:0 9px 30px rgba(7,31,47,.055);scroll-margin-top:20px}
.aa-martial-head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:0 2px 15px;margin-bottom:15px;border-bottom:1px solid #edf2f4}
.aa-martial-head>div{display:flex;align-items:center;gap:12px}.aa-martial-head h2{margin:1px 0 0;font-size:21px;color:#0B0B0B}.aa-martial-head>strong{font-size:13px;color:#60737c;background:#f5f8fa;border-radius:999px;padding:7px 11px}
.aa-martial-mark{width:6px;height:42px;border-radius:8px;background:linear-gradient(#E31B23,#111111)}
.aa-athlete-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:14px}
.aa-athlete-card{display:flex;flex-direction:column;min-width:0;border:1px solid #e4ecef;border-radius:18px;background:linear-gradient(180deg,#fff,#fbfdfe);padding:15px;transition:.18s ease}
.aa-athlete-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(7,31,47,.08);border-color:#c8e2ed}
.aa-athlete-card-top{display:grid;grid-template-columns:52px 1fr auto;gap:11px;align-items:center}
.aa-athlete-avatar{width:52px;height:52px;border-radius:15px;overflow:hidden;background:#fff0f1;text-decoration:none;display:grid;place-items:center;color:#111111;font-size:20px;font-weight:900}.aa-athlete-avatar img{width:100%;height:100%;object-fit:cover}
.aa-athlete-card-title{min-width:0;display:flex;flex-direction:column;gap:4px}.aa-athlete-card-title>a{font-size:15px;font-weight:900;color:#17262d;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aa-athlete-card-title code{font-size:11px;color:#718087;background:transparent;padding:0}
.aa-athlete-card .aa-status{font-size:10px;padding:5px 7px}
.aa-athlete-card-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.aa-athlete-card-facts>div{padding:9px 10px;border-radius:12px;background:#f5f8fa;min-width:0}.aa-athlete-card-facts .aa-card-wide{grid-column:1/-1}.aa-athlete-card-facts span{display:block;font-size:10px;color:#788991;margin-bottom:3px}.aa-athlete-card-facts b{display:block;color:#25353c;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aa-athlete-card-actions{display:flex;align-items:center;gap:7px;margin-top:auto;padding-top:3px}.aa-athlete-card-actions a{flex:0 0 auto;padding:7px 10px;border-radius:9px;background:#f0f5f7;color:#314750;text-decoration:none;font-size:11px;font-weight:800}.aa-athlete-card-actions .aa-card-open{flex:1;text-align:center;background:#111111;color:#fff}
@media(max-width:640px){.aa-martial-section{padding:13px;border-radius:17px}.aa-athlete-card-grid{grid-template-columns:1fr}.aa-martial-head h2{font-size:18px}.aa-athlete-card{padding:13px}}
\n\n/* ==========================================================
   ATLAS GYM visual identity — v1.16.4-atlas.2
   Logo palette: Red / Black / White
   ========================================================== */
:root{
  --atlas-red:#E31B23;
  --atlas-red-dark:#B80F16;
  --atlas-black:#101010;
  --atlas-charcoal:#1B1B1B;
  --atlas-soft:#F6F6F6;
  --atlas-line:#E7E7E7;
  --blue:#E31B23;
  --navy:#101010;
  --ink:#1B1B1B;
  --line:#E7E7E7;
  --bg:#F6F6F6;
}
.aa-app{background:linear-gradient(180deg,#fafafa 0,#f4f4f4 100%)}
.aa-sidebar{background:linear-gradient(180deg,#090909 0%,#161616 100%);box-shadow:-12px 0 34px rgba(0,0,0,.16)}
.aa-side-brand{border-bottom-color:rgba(255,255,255,.10);padding:20px 16px}
.aa-side-logo{width:78px;height:48px;flex:0 0 78px;border-radius:9px;background:#fff;border:1px solid rgba(255,255,255,.12)}
.aa-side-logo img{padding:2px;object-fit:contain}
.aa-side-brand strong{font-size:13px;line-height:1.35;color:#fff}
.aa-side-brand span,.aa-side-user span{color:#bdbdbd}
.aa-side-nav a{color:#d7d7d7;border:1px solid transparent;transition:.18s ease}
.aa-side-nav a:hover{background:rgba(227,27,35,.10);border-color:rgba(227,27,35,.18);color:#fff}
.aa-side-nav a.active{background:linear-gradient(90deg,rgba(227,27,35,.22),rgba(227,27,35,.08));border-color:rgba(227,27,35,.34);color:#fff;box-shadow:inset -3px 0 0 var(--atlas-red)}
.aa-topbar{background:rgba(255,255,255,.96);border-bottom-color:#e9e9e9;box-shadow:0 5px 18px rgba(0,0,0,.025)}
.aa-topbar strong,.aa-app-hero h1,.aa-panel-head h2,.aa-page-head h1,.aa-empty-state strong{color:var(--atlas-black)}
.aa-top-user{background:var(--atlas-black);box-shadow:0 0 0 3px rgba(227,27,35,.10)}
.aa-eyebrow,.aa-panel-head a{color:var(--atlas-red)}
.aa-primary-btn,.aa-login-form button{background:linear-gradient(135deg,var(--atlas-red),#c81118);box-shadow:0 9px 24px rgba(227,27,35,.25);border-radius:10px}
.aa-primary-btn:hover,.aa-login-form button:hover{filter:brightness(.96);transform:translateY(-1px)}
.aa-secondary-btn,.aa-link-btn{border-color:#d8d8d8;color:var(--atlas-black);background:#fff}
.aa-stat-card,.aa-panel,.aa-form-card{border-color:#ececec;box-shadow:0 9px 28px rgba(0,0,0,.055)}
.aa-stat-card:before{background:var(--atlas-red);width:4px}
.aa-stat-card strong{color:var(--atlas-black)}
.aa-avatar,.aa-person-cell span{background:#fff0f1;color:var(--atlas-red)}
.aa-alert{background:#fff6f6;border:1px solid #ffe3e4}.aa-alert b{background:var(--atlas-red)}
.aa-table th{background:#111;color:#fff;border-bottom-color:#111}.aa-table tbody tr:hover{background:#fff8f8}
.aa-table code,.aa-code{background:#f4f4f4;color:#111}
.aa-form-title>b{background:var(--atlas-red)!important;color:#fff!important}
.aa-search-row input:focus,.aa-form-grid input:focus,.aa-form-grid select:focus,.aa-form-grid textarea:focus{border-color:var(--atlas-red);box-shadow:0 0 0 3px rgba(227,27,35,.10)}
.aa-login-shell{background:radial-gradient(circle at 85% 15%,rgba(227,27,35,.22),transparent 34%),linear-gradient(135deg,#050505 0%,#181818 55%,#090909 100%)}
.aa-login-card{border-radius:18px;box-shadow:0 30px 85px rgba(0,0,0,.38);border:1px solid rgba(255,255,255,.12)}
.aa-login-brand{padding:30px 32px 18px}
.aa-login-mark{width:220px;height:104px;border:0;border-radius:8px;margin:0 auto 12px;background:#fff}
.aa-login-mark img{width:100%;height:100%;object-fit:contain;padding:2px}
.aa-login-brand>span{color:var(--atlas-red);letter-spacing:.3px}
.aa-login-brand h1{color:var(--atlas-black);font-size:27px}
.aa-login-form input[type=text],.aa-login-form input[type=password]{border-radius:9px;background:#fcfcfc}
.aa-login-form input:focus{border-color:var(--atlas-red);box-shadow:0 0 0 3px rgba(227,27,35,.11)}
.aa-belt-stripe{height:5px;background:linear-gradient(90deg,#111 0 30%,#E31B23 30% 70%,#111 70% 100%)}
.aa-belt-stripe span{background:transparent!important}
.aa-receipt-download,.aa-pdf-toolbar button{background:#111!important}
.aa-danger-btn{background:#c51119}
.aa-logo-preview{background:#fff;border:1px solid #e4e4e4;object-fit:contain}
@media(max-width:900px){.aa-side-logo{width:70px;flex-basis:70px}.aa-login-mark{width:190px;height:90px}}


/* ATLAS GYM v1.16.4-atlas.3 — login visibility + official branding */
.aa-login-form button[type="submit"]{
  background:linear-gradient(135deg,#E31B23,#B80F16)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  text-indent:0!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:0!important;
  position:relative!important;
  z-index:2!important;
}
.aa-login-form button[type="submit"]:hover,
.aa-login-form button[type="submit"]:focus{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}


/* ATLAS GYM v1.16.4-atlas.5 — visible labels on white/light action buttons */
.aa-app .aa-secondary-btn,
.aa-app a.aa-secondary-btn,
.aa-app button.aa-secondary-btn,
.aa-app .aa-link-btn,
.aa-app a.aa-link-btn,
.aa-app button.aa-link-btn,
.aa-app .aa-pwa-install,
.aa-app .aa-backup-lock-btn,
.aa-app .aa-group-edit-btn,
.aa-app .aa-card-edit-btn,
.aa-app .aa-create-one-btn,
.aa-app .aa-mini-action,
.aa-login-shell .aa-pwa-install {
  color:#9F1017!important;
  -webkit-text-fill-color:#9F1017!important;
  opacity:1!important;
}

.aa-app .aa-secondary-btn,
.aa-app .aa-link-btn,
.aa-app .aa-pwa-install,
.aa-app .aa-backup-lock-btn,
.aa-login-shell .aa-pwa-install {
  background:#fff!important;
  border-color:#E7BFC1!important;
}

.aa-app .aa-secondary-btn:hover,
.aa-app .aa-link-btn:hover,
.aa-app .aa-pwa-install:hover,
.aa-app .aa-backup-lock-btn:hover,
.aa-login-shell .aa-pwa-install:hover {
  color:#7F0B11!important;
  -webkit-text-fill-color:#7F0B11!important;
  background:#FFF5F5!important;
  border-color:#C84A50!important;
}

/* Main red buttons must remain readable */
.aa-app .aa-primary-btn,
.aa-app a.aa-primary-btn,
.aa-app button.aa-primary-btn,
.aa-login-form button[type="submit"],
.aa-app .aa-danger-btn,
.aa-app .aa-receipt-download {
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}


/* ATLAS GYM v1.16.4-atlas.6 — universal visible action-button labels
   The host theme can force WordPress buttons to a white background.  Keep all
   ordinary management actions readable by explicitly using the ATLAS dark red
   on white, including former .aa-primary-btn actions such as إضافة المدرب. */
.aa-app button:not(.aa-danger-btn):not(.aa-delete-btn),
.aa-app input[type="submit"]:not(.aa-danger-btn):not(.aa-delete-btn),
.aa-app input[type="button"],
.aa-app a.aa-primary-btn,
.aa-app a.aa-secondary-btn,
.aa-app a.aa-link-btn,
.aa-app .aa-primary-btn:not(.aa-danger-btn):not(.aa-delete-btn),
.aa-app .aa-secondary-btn,
.aa-app .aa-link-btn,
.aa-app .aa-pwa-install,
.aa-app .aa-backup-lock-btn,
.aa-app .aa-group-edit-btn,
.aa-app .aa-card-edit-btn,
.aa-app .aa-create-one-btn,
.aa-app .aa-mini-action,
.aa-app .aa-edit-btn,
.aa-app .aa-receipt-btn {
  background:#FFFFFF!important;
  background-image:none!important;
  color:#8F0D14!important;
  -webkit-text-fill-color:#8F0D14!important;
  border:1px solid #DDB7BA!important;
  text-shadow:none!important;
  box-shadow:0 5px 14px rgba(143,13,20,.08)!important;
  opacity:1!important;
  visibility:visible!important;
}

.aa-app button:not(.aa-danger-btn):not(.aa-delete-btn):hover,
.aa-app button:not(.aa-danger-btn):not(.aa-delete-btn):focus,
.aa-app input[type="submit"]:not(.aa-danger-btn):not(.aa-delete-btn):hover,
.aa-app input[type="submit"]:not(.aa-danger-btn):not(.aa-delete-btn):focus,
.aa-app a.aa-primary-btn:hover,
.aa-app a.aa-secondary-btn:hover,
.aa-app a.aa-link-btn:hover,
.aa-app .aa-primary-btn:not(.aa-danger-btn):not(.aa-delete-btn):hover,
.aa-app .aa-secondary-btn:hover,
.aa-app .aa-link-btn:hover,
.aa-app .aa-pwa-install:hover,
.aa-app .aa-backup-lock-btn:hover,
.aa-app .aa-group-edit-btn:hover,
.aa-app .aa-card-edit-btn:hover,
.aa-app .aa-create-one-btn:hover,
.aa-app .aa-mini-action:hover,
.aa-app .aa-edit-btn:hover,
.aa-app .aa-receipt-btn:hover {
  background:#FFF3F3!important;
  background-image:none!important;
  color:#70080D!important;
  -webkit-text-fill-color:#70080D!important;
  border-color:#B94A50!important;
}

/* Explicit warning/destructive controls keep a strong warning treatment. */
.aa-app .aa-danger-btn,
.aa-app .aa-delete-btn {
  background:#A90F16!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  border-color:#A90F16!important;
}

/* Keep the login call-to-action separate from the white in-platform buttons. */
.aa-login-form button[type="submit"] {
  background:linear-gradient(135deg,#E31B23,#B80F16)!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}

/* ATLAS GYM v1.16.4-atlas.7 — sidebar logo framing fix */
.aa-side-brand{
  align-items:center;
  gap:14px;
}
.aa-side-logo{
  width:96px!important;
  height:60px!important;
  flex:0 0 96px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  padding:4px!important;
  border-radius:12px!important;
  background:#fff!important;
}
.aa-side-logo img{
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
  margin:0 auto!important;
  padding:0!important;
}
@media(max-width:900px){
  .aa-side-logo{
    width:86px!important;
    height:54px!important;
    flex-basis:86px!important;
  }
}

/* ATLAS GYM v1.16.4-atlas.8 — login logo framing fix */
.aa-login-brand{
  padding:28px 32px 16px!important;
}
.aa-login-mark{
  width:250px!important;
  height:120px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  padding:6px!important;
  border-radius:12px!important;
  background:#fff!important;
  margin:0 auto 14px!important;
}
.aa-login-mark img{
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
  margin:0 auto!important;
  padding:0!important;
}
@media(max-width:900px){
  .aa-login-mark{
    width:220px!important;
    height:105px!important;
  }
}
@media(max-width:480px){
  .aa-login-mark{
    width:200px!important;
    height:95px!important;
  }
}

/* ATLAS GYM v1.16.4-atlas.9 — installed app native vertical scrolling */
html.aa-running-as-app,
body.aa-running-as-app{
  height:auto!important;
  min-height:100%!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior-y:auto!important;
  -webkit-overflow-scrolling:touch;
}
body.aa-running-as-app{
  min-height:100dvh!important;
  position:static!important;
  touch-action:pan-y!important;
}
body.aa-running-as-app .aa-app,
body.aa-running-as-app .aa-app-main,
body.aa-running-as-app .aa-content{
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  overflow-y:visible!important;
  touch-action:pan-y!important;
}
body.aa-running-as-app .aa-app{
  min-height:100dvh!important;
}
body.aa-running-as-app .aa-app-main{
  min-height:100dvh!important;
}
@media (display-mode:standalone),(display-mode:fullscreen){
  html,
  body{
    height:auto!important;
    min-height:100%!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:auto!important;
    -webkit-overflow-scrolling:touch;
  }
  body{
    min-height:100dvh!important;
    position:static!important;
    touch-action:pan-y!important;
  }
  .aa-app,
  .aa-app-main,
  .aa-content{
    height:auto!important;
    max-height:none!important;
    overflow-y:visible!important;
    touch-action:pan-y!important;
  }
  .aa-app,
  .aa-app-main{
    min-height:100dvh!important;
  }
}

/* ATLAS GYM v1.16.4-atlas.12 — login account type selector */
.aa-login-type-wrap{display:grid;gap:9px;margin:0 0 6px}
.aa-login-type-title{font-size:12px;font-weight:900;color:#1a1a1a}
.aa-login-types{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.aa-login-type-card{position:relative;min-width:0;min-height:88px;border:1.5px solid #e5e5e5;border-radius:13px;background:#fff;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:9px 6px!important;margin:0!important;text-align:center;cursor:pointer;transition:.18s ease;overflow:hidden}
.aa-login-type-card input{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}
.aa-login-type-icon{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#f5f5f5;color:#8f0d13;font:900 16px/1 Arial,sans-serif;transition:.18s ease}
.aa-login-type-card strong{font-size:11px;color:#222;line-height:1.2;white-space:nowrap}
.aa-login-type-card small{font-size:8.5px;color:#949494;line-height:1.2;white-space:nowrap}
.aa-login-type-card:hover{border-color:#d6a4a7;background:#fffafa;transform:translateY(-1px)}
.aa-login-type-card:has(input:checked){border-color:#9f1017;background:#fff5f5;box-shadow:0 0 0 3px rgba(159,16,23,.08)}
.aa-login-type-card:has(input:checked) .aa-login-type-icon{background:#9f1017;color:#fff;box-shadow:0 5px 14px rgba(159,16,23,.20)}
.aa-login-type-card:has(input:checked) strong{color:#8f0d13}
@supports not selector(:has(*)){
  .aa-login-type-card input:checked ~ .aa-login-type-icon{background:#9f1017;color:#fff}
  .aa-login-type-card input:checked ~ strong{color:#8f0d13}
}
@media(max-width:480px){
  .aa-login-types{gap:6px}
  .aa-login-type-card{min-height:82px;padding:7px 4px!important}
  .aa-login-type-card strong{font-size:10px}
  .aa-login-type-card small{font-size:7.5px}
}
