/* TCLMS PATCH-26L4 — Modern Experience Reconstruction v1.0.0 */
@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700;800&family=Tajawal:wght@400;500;700;800&display=swap');

:root{
 --t76-glow:color-mix(in srgb,var(--t-primary,#4f7cff) 26%,transparent);
 --t76-accent-glow:color-mix(in srgb,var(--t-accent,#2dd4bf) 20%,transparent);
 --t76-shadow-sm:0 8px 24px rgba(2,10,24,.10);
 --t76-shadow:0 18px 50px rgba(2,10,24,.16);
 --t76-shadow-lg:0 30px 90px rgba(2,8,22,.26);
 --t76-ring:0 0 0 3px color-mix(in srgb,var(--t-focus,var(--t-primary)) 22%,transparent);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.tclms-admin-shell,body.tclms-student-shell{font-family:var(--tclms-font-body,'Cairo','Tajawal',Tahoma,Arial,sans-serif)!important;background:var(--t-bg)!important;color:var(--t-text)!important;letter-spacing:0}
body.tclms-admin-shell :is(h1,h2,h3,h4,h5,h6),body.tclms-student-shell :is(h1,h2,h3,h4,h5,h6){font-family:var(--tclms-font-heading,'Cairo','Tajawal',Tahoma,Arial,sans-serif)!important;letter-spacing:-.025em}
body.tclms-admin-shell a,body.tclms-student-shell a{transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}
body.tclms-admin-shell :is(button,input,select,textarea),body.tclms-student-shell :is(button,input,select,textarea){font-family:inherit}

/* Shell */
.tclms-app{min-height:100vh;background:var(--t-bg)!important}
.tclms-sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--t-surface) 96%,#020817),color-mix(in srgb,var(--t-primary) 7%,var(--t-surface)))!important;border-inline-start:1px solid color-mix(in srgb,var(--t-primary) 14%,var(--t-border))!important;box-shadow:-18px 0 55px rgba(1,8,20,.14)!important}
.tclms-brand{min-height:86px!important;padding:17px 20px!important;border-bottom:1px solid color-mix(in srgb,var(--t-primary) 13%,var(--t-border))!important;background:radial-gradient(circle at 20% 10%,var(--t76-glow),transparent 40%)}
.tclms-brand img{max-height:47px!important;filter:drop-shadow(0 8px 18px rgba(0,0,0,.16))}
.tclms-nav{padding:12px 10px 24px!important}
.tclms-nav>a,.tclms-nav-group>button{min-height:44px!important;margin:3px 0!important;padding:10px 12px!important;border:1px solid transparent!important;border-radius:11px!important;color:var(--t-muted)!important;font-size:var(--t-nav-label-size,13px)!important;font-weight:var(--t-nav-weight,600)!important;background:transparent!important}
.tclms-nav>a i,.tclms-nav-group>button>i:first-child{width:24px!important;color:color-mix(in srgb,var(--t-primary) 82%,var(--t-text))!important;font-size:var(--t-nav-icon-size,18px)!important}
.tclms-nav>a:hover,.tclms-nav-group>button:hover{background:color-mix(in srgb,var(--t-primary) 8%,var(--t-surface))!important;border-color:color-mix(in srgb,var(--t-primary) 15%,var(--t-border))!important;color:var(--t-text)!important;transform:translateX(-1px)}
.tclms-nav>a.active,.tclms-nav-group>button.active{background:linear-gradient(90deg,color-mix(in srgb,var(--t-primary) 20%,var(--t-surface)),color-mix(in srgb,var(--t-accent) 7%,var(--t-surface)))!important;border-color:color-mix(in srgb,var(--t-primary) 34%,var(--t-border))!important;color:var(--t-text)!important;box-shadow:inset -3px 0 0 var(--t-primary),0 8px 22px rgba(0,0,0,.10)!important}
.tclms-subnav{padding:3px 12px 7px 7px!important}
.tclms-subnav a{min-height:34px!important;padding:7px 10px!important;border-radius:8px!important;color:var(--t-muted)!important;font-size:12px!important}
.tclms-subnav a:hover,.tclms-subnav a.active{color:var(--t-text)!important;background:color-mix(in srgb,var(--t-primary) 9%,var(--t-surface))!important}
.tclms-nav .badge{min-width:22px;height:20px;padding:2px 6px;border-radius:999px;background:var(--t-danger)!important;color:white!important;font-size:9px!important;box-shadow:0 5px 14px color-mix(in srgb,var(--t-danger) 22%,transparent)}

.tclms-topbar{min-height:var(--t-topbar,72px)!important;background:color-mix(in srgb,var(--t-surface) 84%,transparent)!important;border-bottom:1px solid color-mix(in srgb,var(--t-primary) 12%,var(--t-border))!important;backdrop-filter:blur(24px) saturate(1.18)!important;box-shadow:0 8px 28px rgba(1,8,20,.06)!important;z-index:30!important}
.tclms-topbar-title{font-weight:800!important;font-size:16px!important;color:var(--t-text)!important}
.tclms-search{height:42px!important;border:1px solid var(--t-border)!important;border-radius:12px!important;background:color-mix(in srgb,var(--t-surface-2) 72%,transparent)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important}
.tclms-search:focus-within{border-color:color-mix(in srgb,var(--t-primary) 55%,var(--t-border))!important;box-shadow:var(--t76-ring)!important}
.tclms-search input{font-size:12px!important;color:var(--t-text)!important}
.tclms-icon-btn,.tclms-menu-toggle{width:40px!important;height:40px!important;border:1px solid var(--t-border)!important;border-radius:11px!important;background:var(--t-surface-2)!important;color:var(--t-muted)!important}
.tclms-icon-btn:hover,.tclms-menu-toggle:hover{color:var(--t-text)!important;border-color:color-mix(in srgb,var(--t-primary) 34%,var(--t-border))!important;background:color-mix(in srgb,var(--t-primary) 10%,var(--t-surface))!important;transform:translateY(-1px)}
.tclms-user-avatar{background:linear-gradient(135deg,var(--t-primary),var(--t-accent))!important;color:white!important;box-shadow:0 7px 20px var(--t76-glow)}
.tclms-main{background:radial-gradient(circle at 82% -10%,var(--t76-glow),transparent 30%),radial-gradient(circle at 3% 38%,var(--t76-accent-glow),transparent 24%),var(--t-bg)!important}
.tclms-content{max-width:var(--t-max,1680px)!important;padding:clamp(18px,2vw,30px)!important}
.tclms-breadcrumbs{margin-bottom:14px!important;color:var(--t-muted)!important;font-size:11px!important}
.tclms-breadcrumbs a{color:var(--t-muted)!important}.tclms-breadcrumbs a:hover{color:var(--t-primary)!important}

/* Generic surfaces */
.card,.t25b-card,.tclms-toolbar,.t25b-toolbar,.t25b-filter-bar,.t25b-table-wrap{border:1px solid color-mix(in srgb,var(--t-primary) 10%,var(--t-border))!important;border-radius:16px!important;background:linear-gradient(145deg,color-mix(in srgb,var(--t-surface-2) 64%,var(--t-surface)),var(--t-surface))!important;box-shadow:var(--t76-shadow-sm)!important}
.card:hover,.t25b-card:hover{border-color:color-mix(in srgb,var(--t-primary) 18%,var(--t-border))!important}
.btn,.t25b-btn,.tclms-front-btn{min-height:40px;border-radius:11px!important;font-weight:700!important;box-shadow:none;transition:.18s ease!important}
.btn.primary,.btn:not(.ghost):not(.btn2):not(.danger-soft),.t25b-btn-primary{background:linear-gradient(135deg,var(--t-primary),color-mix(in srgb,var(--t-primary) 72%,var(--t-accent)))!important;color:#fff!important;border-color:transparent!important;box-shadow:0 9px 24px color-mix(in srgb,var(--t-primary) 20%,transparent)!important}
.btn:hover,.t25b-btn:hover{transform:translateY(-1px)}
.btn.ghost,.btn.btn2,.t25b-btn-secondary,.t25b-btn-ghost{background:color-mix(in srgb,var(--t-surface-2) 84%,transparent)!important;color:var(--t-text)!important;border-color:var(--t-border)!important}
:is(input,select,textarea,.form-control,.t25b-control){border:1px solid var(--t-border)!important;border-radius:11px!important;background:var(--t-control-bg,var(--t-surface-2))!important;color:var(--t-text)!important;min-height:42px}
:is(input,select,textarea,.form-control,.t25b-control):focus{border-color:color-mix(in srgb,var(--t-primary) 65%,var(--t-border))!important;outline:0!important;box-shadow:var(--t76-ring)!important}

/* Dashboard */
.tclms-dashboard-hero{position:relative;overflow:hidden;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;min-height:150px!important;margin-bottom:16px!important;padding:25px 28px!important;border:1px solid color-mix(in srgb,var(--t-primary) 28%,var(--t-border))!important;border-radius:20px!important;background:radial-gradient(circle at 88% 14%,color-mix(in srgb,var(--t-accent) 24%,transparent),transparent 26%),radial-gradient(circle at 57% 130%,color-mix(in srgb,var(--t-primary) 28%,transparent),transparent 44%),linear-gradient(135deg,color-mix(in srgb,var(--t-primary) 13%,var(--t-surface)),var(--t-surface))!important;box-shadow:var(--t76-shadow)!important}
.tclms-dashboard-hero:after{content:'';position:absolute;inset-inline-end:-60px;top:-95px;width:260px;height:260px;border:38px solid color-mix(in srgb,var(--t-primary) 7%,transparent);border-radius:50%;pointer-events:none}
.tclms-dashboard-hero>div{position:relative;z-index:1}.tclms-dashboard-hero h1{margin:5px 0 7px!important;font-size:clamp(27px,2.4vw,39px)!important;line-height:1.16!important}.tclms-dashboard-hero p{max-width:780px!important;margin:0!important;color:var(--t-muted)!important;font-size:13px!important;line-height:1.8!important}.tclms-kicker{color:var(--t-accent)!important;font-size:10px!important;font-weight:800!important;letter-spacing:.02em!important}.tclms-page-actions{display:flex!important;gap:8px!important;flex-wrap:wrap!important}
.tclms-kpi-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important;margin-bottom:18px!important}
.tclms-kpi-card{position:relative!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;min-height:126px!important;padding:16px!important;border:1px solid color-mix(in srgb,var(--tone,var(--t-primary)) 20%,var(--t-border))!important;border-radius:16px!important;background:linear-gradient(145deg,color-mix(in srgb,var(--tone,var(--t-primary)) 7%,var(--t-surface-2)),var(--t-surface))!important;box-shadow:var(--t76-shadow-sm)!important;transition:.18s ease!important}
.tclms-kpi-card:before{content:'';position:absolute;inset-inline-start:0;top:0;bottom:0;width:3px;background:linear-gradient(var(--tone,var(--t-primary)),color-mix(in srgb,var(--tone,var(--t-primary)) 40%,var(--t-accent)))}
.tclms-kpi-card:hover{transform:translateY(-3px)!important;box-shadow:var(--t76-shadow)!important}.tclms-kpi-icon{position:absolute!important;inset-inline-end:14px!important;top:14px!important;width:38px!important;height:38px!important;display:grid!important;place-items:center!important;border-radius:11px!important;background:color-mix(in srgb,var(--tone,var(--t-primary)) 13%,var(--t-surface))!important;color:var(--tone,var(--t-primary))!important;font-size:17px!important}.tclms-kpi-card small{color:var(--t-muted)!important;font-size:10px!important}.tclms-kpi-card strong{margin-top:3px!important;font-size:clamp(24px,2vw,32px)!important;font-weight:800!important;color:var(--t-text)!important;line-height:1!important}
.tclms-analytics-grid{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important}.tclms-analytics-grid>.card{padding:18px!important;min-width:0!important}.tclms-analytics-grid>.wide{grid-column:span 8!important}.tclms-analytics-grid>.narrow{grid-column:span 4!important}.section-title{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;margin-bottom:14px!important;padding-bottom:12px!important;border-bottom:1px solid color-mix(in srgb,var(--t-primary) 9%,var(--t-border))!important}.section-title h3{margin:3px 0 0!important;font-size:clamp(19px,1.45vw,25px)!important;line-height:1.25!important}.section-title p{margin:4px 0 0!important;font-size:10px!important}.section-title>a{color:var(--t-primary)!important;font-size:10px!important;font-weight:700!important}.tclms-chart-box{height:var(--t-chart-height,300px)!important;min-height:250px!important}.tclms-donut-wrap{display:grid!important;grid-template-columns:minmax(170px,1fr) minmax(95px,.6fr)!important;gap:14px!important;align-items:center!important}.tclms-donut-box{height:220px!important}.tclms-chart-legend{display:grid!important;gap:9px!important}.tclms-chart-legend span{display:grid!important;grid-template-columns:9px 1fr auto!important;align-items:center!important;gap:7px!important;color:var(--t-muted)!important;font-size:10px!important}.tclms-chart-legend i{width:8px!important;height:8px!important;border-radius:50%!important;background:var(--c)!important}.tclms-chart-legend b{color:var(--t-text)!important;font-variant-numeric:tabular-nums!important}
.tclms-operation-metrics{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:9px!important}.tclms-operation-metrics>div,.tclms-money-stack>div{padding:12px!important;border:1px solid var(--t-border)!important;border-radius:12px!important;background:color-mix(in srgb,var(--t-primary) 5%,var(--t-surface-2))!important}.tclms-operation-metrics span,.tclms-money-stack span{display:block!important;color:var(--t-muted)!important;font-size:9px!important}.tclms-operation-metrics strong,.tclms-money-stack strong{display:block!important;margin-top:4px!important;font-size:20px!important;color:var(--t-text)!important}.tclms-score-ring{box-shadow:inset 0 0 0 10px color-mix(in srgb,var(--t-primary) 9%,var(--t-surface))!important}.tclms-mini-row{padding:10px 0!important;border-bottom:1px solid var(--t-border)!important}.tclms-rank{color:var(--t-primary)!important;font-weight:800!important}.tclms-quick-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important}.tclms-quick-grid a{min-height:52px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:6px!important;border:1px solid var(--t-border)!important;border-radius:11px!important;background:var(--t-surface-2)!important;color:var(--t-muted)!important;font-size:9px!important;font-weight:700!important}.tclms-quick-grid a i{color:var(--t-primary)!important;font-size:16px!important}.tclms-quick-grid a:hover{color:var(--t-text)!important;border-color:color-mix(in srgb,var(--t-primary) 34%,var(--t-border))!important;background:color-mix(in srgb,var(--t-primary) 9%,var(--t-surface))!important;transform:translateY(-2px)}.tclms-workflow-chips{display:flex!important;gap:6px!important;flex-wrap:wrap!important;margin-top:12px!important}.tclms-workflow-chips span,.ok,.warn,.bad{border-radius:999px!important;padding:4px 8px!important;font-size:9px!important;font-weight:700!important}.ok{background:color-mix(in srgb,var(--t-success) 13%,var(--t-surface))!important;color:var(--t-success)!important}.warn{background:color-mix(in srgb,var(--t-warning) 13%,var(--t-surface))!important;color:var(--t-warning)!important}.bad{background:color-mix(in srgb,var(--t-danger) 13%,var(--t-surface))!important;color:var(--t-danger)!important}
.scroll{overflow:auto!important}table{border-collapse:separate!important;border-spacing:0!important;width:100%!important}table th{padding:10px 11px!important;background:color-mix(in srgb,var(--t-primary) 5%,var(--t-surface-2))!important;color:var(--t-muted)!important;font-size:10px!important;font-weight:700!important;border-bottom:1px solid var(--t-border)!important}table td{padding:11px!important;color:var(--t-text)!important;font-size:10px!important;border-bottom:1px solid color-mix(in srgb,var(--t-border) 80%,transparent)!important}table tbody tr:hover td{background:color-mix(in srgb,var(--t-primary) 4%,var(--t-surface))!important}.code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important;font-size:9px!important}

/* Design system */
.t25b-component-stack{display:grid!important;gap:18px!important}.t25b-page-header{border-radius:20px!important;background:radial-gradient(circle at 85% 10%,var(--t76-accent-glow),transparent 28%),linear-gradient(135deg,color-mix(in srgb,var(--t-primary) 14%,var(--t-surface)),var(--t-surface))!important;box-shadow:var(--t76-shadow)!important}.t25b-stat-grid{gap:12px!important}.t25b-stat-grid>*{border-radius:14px!important;box-shadow:var(--t76-shadow-sm)!important}.t25b-tabs{position:sticky!important;top:calc(var(--t-topbar,72px) + 8px)!important;z-index:8!important;border-radius:13px!important;background:color-mix(in srgb,var(--t-surface) 90%,transparent)!important;backdrop-filter:blur(16px)!important}.t25b-component-grid{gap:14px!important}.t25b-section-header h2{font-size:22px!important}.t25b-swatch{border-radius:11px!important}

/* Public frontend */
body.tclms-public-shell{font-family:var(--tclms-front-font-body,'Cairo','Tajawal',Tahoma,Arial,sans-serif)!important;background:var(--front-bg)!important;color:var(--front-text)!important}
body.tclms-public-shell :is(h1,h2,h3,h4,h5,h6){font-family:var(--tclms-front-font-heading,'Cairo','Tajawal',Tahoma,Arial,sans-serif)!important;letter-spacing:-.025em}
.tclms-front-header{position:sticky!important;top:0!important;z-index:50!important;box-shadow:0 10px 35px rgba(2,8,22,.09)!important}.tclms-front-utility{background:color-mix(in srgb,var(--front-primary) 9%,var(--front-surface))!important;border-bottom:1px solid var(--front-border)!important}.tclms-front-nav{background:color-mix(in srgb,var(--front-surface) 88%,transparent)!important;border-bottom:1px solid color-mix(in srgb,var(--front-primary) 12%,var(--front-border))!important;backdrop-filter:blur(22px)!important}.tclms-front-links a{border-radius:9px!important;font-weight:700!important}.tclms-front-links a:hover,.tclms-front-links a.active{background:color-mix(in srgb,var(--front-primary) 10%,var(--front-surface))!important;color:var(--front-primary)!important}.tclms-front-hero-wrap{overflow:hidden!important;background:radial-gradient(circle at 80% 20%,color-mix(in srgb,var(--front-accent) 19%,transparent),transparent 28%),radial-gradient(circle at 22% 100%,color-mix(in srgb,var(--front-primary) 18%,transparent),transparent 34%),var(--front-bg)!important}.tclms-hero{min-height:var(--front-hero,560px)!important;align-items:center!important}.tclms-hero-copy h1{font-size:clamp(38px,5vw,70px)!important;line-height:1.14!important}.tclms-hero-copy p{font-size:16px!important;line-height:1.95!important;color:var(--front-muted)!important}.tclms-hero-image-frame{border-radius:28px!important;border:1px solid color-mix(in srgb,var(--front-primary) 25%,var(--front-border))!important;box-shadow:0 34px 90px rgba(2,8,22,.22)!important}.tclms-float-card{border-radius:14px!important;background:color-mix(in srgb,var(--front-surface) 88%,transparent)!important;backdrop-filter:blur(16px)!important;border:1px solid var(--front-border)!important;box-shadow:0 16px 45px rgba(2,8,22,.15)!important}.tclms-front-stat{border-radius:15px!important}.tclms-front-card,.tclms-news-card,.tclms-trainer-card,.tclms-testimonial-card,.tclms-achiever-card{border-radius:18px!important;border:1px solid color-mix(in srgb,var(--front-primary) 10%,var(--front-border))!important;background:var(--front-surface)!important;box-shadow:0 14px 42px rgba(2,8,22,.08)!important;transition:.2s ease!important}.tclms-front-card:hover,.tclms-news-card:hover,.tclms-trainer-card:hover{transform:translateY(-4px)!important;box-shadow:0 24px 60px rgba(2,8,22,.14)!important}.tclms-front-cta{background:linear-gradient(135deg,var(--front-primary),color-mix(in srgb,var(--front-primary) 64%,var(--front-accent)))!important}

/* Light polish */
html[data-theme=light] .tclms-main{background:radial-gradient(circle at 82% -10%,color-mix(in srgb,var(--t-primary) 9%,transparent),transparent 31%),linear-gradient(180deg,#fbfcfe,var(--t-bg) 340px)!important}
html[data-theme=light] .tclms-sidebar{box-shadow:-13px 0 46px rgba(52,73,105,.08)!important}
html[data-theme=light] :is(.card,.tclms-kpi-card,.t25b-card){box-shadow:0 14px 38px rgba(43,63,92,.08)!important}
html[data-theme=light] .tclms-topbar{box-shadow:0 8px 28px rgba(43,63,92,.06)!important}

/* Responsive */
@media(max-width:1500px){.tclms-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.tclms-analytics-grid>.wide{grid-column:span 8!important}.tclms-analytics-grid>.narrow{grid-column:span 4!important}}
@media(max-width:1100px){.tclms-dashboard-hero{align-items:flex-start!important;flex-direction:column!important}.tclms-analytics-grid>.wide,.tclms-analytics-grid>.narrow{grid-column:1/-1!important}.tclms-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:700px){.tclms-content{padding:14px!important}.tclms-dashboard-hero{padding:20px!important;border-radius:16px!important}.tclms-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tclms-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tclms-donut-wrap{grid-template-columns:1fr!important}.tclms-hero-copy h1{font-size:38px!important}}
