/* ============================================================
   GASSI ACADEMY — Design System
   Colors: Orange (#e85d04), Red (#d62828), Blue (#023e8a / #0077b6)
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Rajdhani:wght@400;500;600;700&family=Nunito:wght@400;600;700;800;900&display=swap');

:root {
  --orange:      #e85d04;
  --orange-light:#ff7b24;
  --orange-dark: #c44f02;
  --red:         #d62828;
  --red-dark:    #a61c1c;
  --blue:        #0077b6;
  --blue-dark:   #023e8a;
  --blue-light:  #00b4d8;
  --primary:     #e85d04;
  --primary-dark:#c44f02;
  --secondary:   #0077b6;
  --accent:      #d62828;
  --bg:          #050c1a;
  --bg-card:     #0a1628;
  --bg-card2:    #0d1e35;
  --bg-elevated: #112040;
  --bg-surface:  #0f1c30;
  --text:        #f0f4ff;
  --text-muted:  rgba(200,215,255,.65);
  --text-dim:    rgba(150,175,220,.45);
  --border:      rgba(0,119,182,.25);
  --radius:      16px;
  --radius-sm:   10px;
  --radius-lg:   24px;
  --shadow:      0 8px 32px rgba(0,0,0,.45);
  --shadow-orange: 0 0 30px rgba(232,93,4,.25);
  --shadow-blue:   0 0 30px rgba(0,119,182,.2);
  --glow-orange: 0 0 20px rgba(232,93,4,.5),0 0 40px rgba(232,93,4,.2);
  --glow-blue:   0 0 20px rgba(0,183,255,.4),0 0 40px rgba(0,119,182,.2);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Nunito',system-ui,sans-serif;background:var(--bg);color:var(--text);overflow-x:clip;min-height:100vh;background-image:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(0,119,182,.12) 0%,transparent 60%),radial-gradient(ellipse 60% 40% at 100% 80%,rgba(232,93,4,.07) 0%,transparent 50%);}
a{color:inherit;text-decoration:none;}
img{max-width:100%;height:auto;display:block;}

.container{width:100%;padding-right:.75rem;padding-left:.75rem;margin-right:auto;margin-left:auto;}
@media(min-width:576px){.container{max-width:540px;}}
@media(min-width:768px){.container{max-width:720px;}}
@media(min-width:992px){.container{max-width:960px;}}
@media(min-width:1200px){.container{max-width:1140px;}}
@media(min-width:1400px){.container{max-width:1320px;}}
.app-container{max-width:1200px;margin:0 auto;padding:0 1.5rem;width:100%;}
.full-bleed{position:relative!important;left:50%!important;right:50%!important;width:100vw!important;margin-left:-50vw!important;margin-right:-50vw!important;max-width:none!important;}

h1,h2,h3{font-family:'Rajdhani',sans-serif;font-weight:700;line-height:1.1;}
h4,h5,h6{font-family:'Nunito',sans-serif;font-weight:800;}
.text-gradient{background:linear-gradient(90deg,var(--orange-light),var(--red));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}

/* Flash */
.flash-messages{position:fixed;top:86px;right:18px;z-index:1300;max-width:420px;width:calc(100% - 36px);}
.flash,.alert{background:var(--bg-card2);border:1px solid var(--border);border-left:5px solid var(--blue);border-radius:var(--radius-sm);padding:.85rem 1.1rem;box-shadow:var(--shadow);margin-bottom:.8rem;color:var(--text);font-weight:700;animation:slideInRight .3s ease;}
@keyframes slideInRight{from{transform:translateX(30px);opacity:0;}to{transform:translateX(0);opacity:1;}}
.flash.success,.alert-success{border-left-color:#10d47e;}
.flash.error,.alert-danger{border-left-color:var(--red);}
.flash.warning,.alert-warning{border-left-color:var(--orange);}
.flash.info,.alert-info{border-left-color:var(--blue-light);}

/* Header */
.site-header{position:sticky;top:0;z-index:1200;background:rgba(5,12,26,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,119,182,.2);box-shadow:0 4px 30px rgba(0,0,0,.5),0 1px 0 rgba(232,93,4,.12);}
.site-header .bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 0;}
.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit;min-width:160px;}
.brand-logo{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(232,93,4,.5));flex:0 0 auto;}
.brand-text .brand-title{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:1.25rem;line-height:1;letter-spacing:.04em;text-transform:uppercase;}
.brand-text .brand-title .gassi{color:var(--orange);}
.brand-text .brand-sub{font-size:.7rem;color:var(--text-muted);font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-top:2px;}
.site-nav{display:flex;align-items:center;gap:.35rem;}
.site-nav a{text-decoration:none;color:var(--text-muted);font-weight:700;font-size:.88rem;padding:.48rem .82rem;border-radius:var(--radius-sm);transition:.2s ease;white-space:nowrap;display:inline-flex;align-items:center;gap:.4rem;}
.site-nav a:hover{background:rgba(232,93,4,.1);color:var(--orange);}
.nav-actions{display:flex;gap:.5rem;align-items:center;}
.btn-nav{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.52rem 1.1rem;border-radius:999px;font-weight:800;font-size:.86rem;text-decoration:none;border:2px solid transparent;transition:.25s ease;white-space:nowrap;cursor:pointer;font-family:'Nunito',sans-serif;}
.btn-nav.primary{background:linear-gradient(135deg,var(--orange),var(--red));color:#fff;box-shadow:var(--shadow-orange);}
.btn-nav.primary:hover{transform:translateY(-2px);box-shadow:var(--glow-orange);}
.btn-nav.ghost{background:transparent;border-color:rgba(0,119,182,.5);color:var(--blue-light);}
.btn-nav.ghost:hover{background:rgba(0,119,182,.12);border-color:var(--blue);transform:translateY(-1px);}
.user-chip{display:flex;align-items:center;gap:.6rem;background:rgba(0,119,182,.1);border:1px solid rgba(0,119,182,.25);padding:.38rem .7rem;border-radius:999px;}
.user-avatar{width:32px;height:32px;border-radius:999px;background:linear-gradient(135deg,var(--orange),var(--red));color:#fff;font-weight:900;font-size:.88rem;display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.user-meta{line-height:1.1;}
.user-name{font-weight:800;font-size:.86rem;color:var(--text);}
.user-role{font-size:.7rem;color:var(--text-muted);font-weight:700;}
.menu-btn{display:none;width:44px;height:44px;border-radius:var(--radius-sm);border:1px solid rgba(0,119,182,.35);background:rgba(0,119,182,.1);color:var(--text);cursor:pointer;align-items:center;justify-content:center;transition:.2s ease;}
.menu-btn:hover{background:rgba(0,119,182,.2);}
.nav-backdrop{display:none;}
.mobile-drawer{display:none;}

@media(max-width:900px){
  .menu-btn{display:inline-flex;}
  .site-nav{display:none;}
  .nav-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:.25s ease;z-index:1199;}
  .nav-backdrop.active{opacity:1;pointer-events:auto;}
  .mobile-drawer{display:flex;position:fixed;top:0;right:0;height:100vh;width:min(88vw,340px);background:var(--bg-card);border-left:1px solid rgba(0,119,182,.25);box-shadow:-20px 0 60px rgba(0,0,0,.6);transform:translateX(105%);transition:.28s ease;z-index:1200;flex-direction:column;}
  .mobile-drawer.active{transform:translateX(0);}
  .drawer-head{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid rgba(0,119,182,.2);}
  .drawer-close{width:40px;height:40px;border-radius:var(--radius-sm);border:1px solid rgba(0,119,182,.3);background:rgba(0,119,182,.1);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;}
  .drawer-body{padding:.8rem 1rem 1rem;overflow:auto;}
  .drawer-links{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.9rem;}
  .drawer-links a{display:flex;align-items:center;gap:.75rem;padding:.85rem;border-radius:var(--radius-sm);border:1px solid rgba(0,119,182,.2);background:rgba(0,119,182,.06);color:var(--text-muted);font-weight:700;font-size:.9rem;}
  .drawer-links a:hover{color:var(--orange);background:rgba(232,93,4,.08);border-color:rgba(232,93,4,.2);}
  .drawer-actions{display:flex;flex-direction:column;gap:.65rem;margin-top:.8rem;}
  .drawer-actions .btn-nav{width:100%;justify-content:center;padding:.85rem 1rem;border-radius:var(--radius);}
  .drawer-user{margin-top:.9rem;padding:.85rem;border-radius:var(--radius);border:1px solid rgba(0,119,182,.2);background:rgba(0,119,182,.06);display:flex;gap:.75rem;align-items:center;}
  .flash-messages{left:18px;right:18px;max-width:none;}
}

/* Footer */
.site-footer{margin-top:4rem;background:#020810;border-top:1px solid rgba(232,93,4,.2);color:var(--text);padding:3rem 0 1.5rem;position:relative;overflow:hidden;}
.site-footer::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--orange),var(--red),transparent);}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2.5rem;align-items:start;}
.footer-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;}
.footer-logo{width:50px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(232,93,4,.4));}
.footer-brand-text .footer-title{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:1.3rem;text-transform:uppercase;letter-spacing:.04em;}
.footer-brand-text .footer-title .gassi{color:var(--orange);}
.footer-desc{color:var(--text-muted);line-height:1.7;font-size:.88rem;margin-bottom:1.2rem;}
.footer-social{display:flex;gap:.6rem;}
.footer-social a{width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid rgba(0,119,182,.3);background:rgba(0,119,182,.08);color:var(--text-muted);display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:.2s ease;}
.footer-social a:hover{background:rgba(232,93,4,.15);border-color:rgba(232,93,4,.4);color:var(--orange);}
.footer-head{font-weight:800;font-size:.9rem;color:var(--orange);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.9rem;}
.footer-link{display:flex;align-items:center;gap:.5rem;color:var(--text-muted);text-decoration:none;margin:.4rem 0;font-size:.86rem;font-weight:600;transition:.2s ease;}
.footer-link:hover{color:var(--orange);}
.footer-contact-item{display:flex;align-items:flex-start;gap:.6rem;margin:.5rem 0;color:var(--text-muted);font-size:.86rem;font-weight:600;}
.footer-contact-item i{color:var(--orange);margin-top:2px;flex-shrink:0;}
.footer-copy{margin-top:2.5rem;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.06);color:var(--text-dim);text-align:center;font-size:.84rem;font-weight:700;}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr;}}

/* Buttons */
.btnx{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-weight:800;font-family:'Nunito',sans-serif;text-decoration:none;border:none;cursor:pointer;transition:.25s ease;letter-spacing:.01em;border-radius:var(--radius-sm);padding:.65rem 1.4rem;font-size:.92rem;}
.btnx-sm{padding:.42rem .85rem;font-size:.8rem;}
.btnx-lg{padding:.85rem 1.8rem;font-size:1rem;border-radius:var(--radius);}
.btnx-primary{background:linear-gradient(135deg,var(--orange) 0%,var(--red) 100%);color:#fff;box-shadow:var(--shadow-orange);}
.btnx-primary:hover{transform:translateY(-3px);box-shadow:var(--glow-orange);filter:brightness(1.1);}
.btnx-blue{background:linear-gradient(135deg,var(--blue) 0%,var(--blue-dark) 100%);color:#fff;box-shadow:var(--shadow-blue);}
.btnx-blue:hover{transform:translateY(-2px);box-shadow:var(--glow-blue);}
.btnx-ghost{background:transparent;border:2px solid rgba(232,93,4,.4);color:var(--orange);}
.btnx-ghost:hover{background:rgba(232,93,4,.1);border-color:var(--orange);transform:translateY(-2px);}
.btnx-ghost-blue{background:transparent;border:2px solid rgba(0,119,182,.4);color:var(--blue-light);}
.btnx-ghost-blue:hover{background:rgba(0,119,182,.1);border-color:var(--blue);transform:translateY(-2px);}
.btnx-outline{background:transparent;border:2px solid rgba(255,255,255,.15);color:var(--text-muted);}
.btnx-outline:hover{border-color:var(--orange);color:var(--orange);}
.btnx-danger{background:linear-gradient(135deg,var(--red),var(--red-dark));color:#fff;}
.btnx-danger:hover{transform:translateY(-2px);filter:brightness(1.1);}
.btnx-success{background:linear-gradient(135deg,#10d47e,#059669);color:#fff;}
.btnx-success:hover{transform:translateY(-2px);filter:brightness(1.1);}

/* Cards */
.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:.3s ease;}
.card:hover{border-color:rgba(232,93,4,.35);transform:translateY(-4px);box-shadow:var(--shadow),0 0 30px rgba(232,93,4,.1);}
.card-body{padding:1.5rem;}
.card-title{font-family:'Rajdhani',sans-serif;font-size:1.12rem;font-weight:700;margin-bottom:.4rem;}
.card-text{color:var(--text-muted);font-size:.86rem;line-height:1.6;}

/* Badges */
.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.22rem .65rem;border-radius:999px;font-size:.73rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;}
.badge-orange{background:rgba(232,93,4,.15);color:var(--orange);border:1px solid rgba(232,93,4,.3);}
.badge-blue{background:rgba(0,119,182,.15);color:var(--blue-light);border:1px solid rgba(0,119,182,.3);}
.badge-red{background:rgba(214,40,40,.15);color:#f77;border:1px solid rgba(214,40,40,.3);}
.badge-green{background:rgba(16,212,126,.12);color:#10d47e;border:1px solid rgba(16,212,126,.25);}

/* Forms */
.form-group{margin-bottom:1.2rem;}
.form-label{display:block;font-weight:700;font-size:.84rem;color:var(--text-muted);margin-bottom:.42rem;text-transform:uppercase;letter-spacing:.04em;}
.form-control{width:100%;padding:.72rem 1rem;background:rgba(0,119,182,.06);border:1px solid rgba(0,119,182,.25);border-radius:var(--radius-sm);color:var(--text);font-size:.92rem;font-family:'Nunito',sans-serif;font-weight:600;transition:.2s ease;outline:none;}
.form-control::placeholder{color:var(--text-dim);}
.form-control:focus{border-color:var(--orange);background:rgba(232,93,4,.05);box-shadow:0 0 0 3px rgba(232,93,4,.15);}
select.form-control{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23e85d04' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;}
select.form-control option{background:#0a1628;color:var(--text);}
textarea.form-control{resize:vertical;min-height:100px;}
.form-hint{font-size:.76rem;color:var(--text-dim);margin-top:.3rem;}

/* Sections */
.section{padding:4.5rem 0;}
.section-soft{background:rgba(0,119,182,.03);}
.section-head{text-align:center;margin-bottom:3rem;}
.section-label{display:inline-flex;align-items:center;gap:.45rem;padding:.28rem .9rem;border-radius:999px;background:rgba(232,93,4,.12);border:1px solid rgba(232,93,4,.25);color:var(--orange);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.9rem;}
.section-title{font-size:clamp(1.8rem,4vw,2.5rem);font-weight:700;margin-bottom:.6rem;color:var(--text);}
.section-subtitle{font-size:1rem;color:var(--text-muted);max-width:580px;margin:0 auto;line-height:1.7;}

/* Hero */
.hero{min-height:88vh;display:flex;align-items:center;position:relative;overflow:hidden;padding:4rem 0 3rem;}
.hero-bg{position:absolute;inset:0;z-index:0;}
.hero-bg-gradient{position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 60% 50%,rgba(0,119,182,.15) 0%,transparent 70%),radial-gradient(ellipse 50% 40% at 20% 80%,rgba(232,93,4,.12) 0%,transparent 60%),radial-gradient(ellipse 40% 30% at 80% 10%,rgba(214,40,40,.08) 0%,transparent 50%);}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,119,182,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(0,119,182,.06) 1px,transparent 1px);background-size:50px 50px;mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 30%,transparent 80%);}
.hero-orbs span{position:absolute;border-radius:50%;filter:blur(80px);opacity:.3;animation:orbFloat 8s ease-in-out infinite;}
.hero-orbs .o1{width:400px;height:400px;background:var(--blue);top:-10%;left:55%;animation-delay:0s;}
.hero-orbs .o2{width:300px;height:300px;background:var(--orange);bottom:-5%;right:5%;animation-delay:-3s;}
.hero-orbs .o3{width:200px;height:200px;background:var(--red);top:40%;left:10%;animation-delay:-6s;}
@keyframes orbFloat{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(20px,-30px) scale(1.05);}}
.hero-wrap{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;}
.hero-content{max-width:580px;}
.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(232,93,4,.1);border:1px solid rgba(232,93,4,.3);border-radius:999px;padding:.32rem 1rem;font-size:.76rem;font-weight:800;color:var(--orange);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1.4rem;animation:fadeInUp .6s ease both;}
.hero-title{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:700;line-height:1.08;margin-bottom:1.2rem;animation:fadeInUp .6s ease .1s both;}
.hero-subtitle{font-size:1.05rem;color:var(--text-muted);line-height:1.7;margin-bottom:2rem;animation:fadeInUp .6s ease .2s both;}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:2.5rem;animation:fadeInUp .6s ease .3s both;}
.hero-visual{display:flex;align-items:center;justify-content:center;animation:fadeInRight .8s ease .2s both;}
.hero-logo-wrap{position:relative;display:inline-block;}
.hero-logo{width:280px;height:280px;object-fit:contain;filter:drop-shadow(0 0 40px rgba(232,93,4,.5)) drop-shadow(0 0 80px rgba(0,119,182,.3));animation:logoPulse 4s ease-in-out infinite;}
@keyframes logoPulse{0%,100%{filter:drop-shadow(0 0 30px rgba(232,93,4,.5)) drop-shadow(0 0 60px rgba(0,119,182,.3));}50%{filter:drop-shadow(0 0 50px rgba(232,93,4,.7)) drop-shadow(0 0 90px rgba(0,119,182,.5));}}
.hero-logo-ring{position:absolute;inset:-20px;border-radius:50%;border:1px solid rgba(232,93,4,.2);animation:ringRotate 12s linear infinite;}
.hero-logo-ring::before{content:'';position:absolute;width:10px;height:10px;background:var(--orange);border-radius:50%;top:50%;left:-5px;transform:translateY(-50%);box-shadow:0 0 10px var(--orange);}
@keyframes ringRotate{to{transform:rotate(360deg);}}
.hero-stats{display:flex;gap:2rem;animation:fadeInUp .6s ease .4s both;}
.stat-num{font-family:'Rajdhani',sans-serif;font-size:2rem;font-weight:700;background:linear-gradient(90deg,var(--orange-light),var(--red));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.stat-label{font-size:.76rem;color:var(--text-dim);font-weight:700;text-transform:uppercase;letter-spacing:.04em;}
.trustbar{display:flex;gap:1.5rem;flex-wrap:wrap;margin-bottom:2rem;animation:fadeInUp .6s ease .35s both;}
.trust-item{display:flex;align-items:center;gap:.6rem;font-size:.8rem;color:var(--text-muted);}
.trust-icon{width:30px;height:30px;border-radius:var(--radius-sm);background:rgba(0,119,182,.12);border:1px solid rgba(0,119,182,.25);display:flex;align-items:center;justify-content:center;color:var(--blue-light);font-size:.8em;}
.trust-title{font-weight:800;color:var(--text);font-size:.83rem;line-height:1.1;}
.trust-sub{font-size:.7rem;color:var(--text-dim);}
@keyframes fadeInUp{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
@keyframes fadeInRight{from{opacity:0;transform:translateX(30px);}to{opacity:1;transform:translateX(0);}}
@media(max-width:900px){
  .hero-wrap{grid-template-columns:1fr;text-align:center;}
  .hero-content{max-width:100%;}
  .hero-badge{margin:0 auto 1.4rem;}
  .hero-actions{justify-content:center;}
  .hero-stats{justify-content:center;}
  .trustbar{justify-content:center;}
  .hero-visual{order:-1;}
  .hero-logo{width:200px;height:200px;}
}
.scroll-hint{display:flex;flex-direction:column;align-items:center;gap:.3rem;color:var(--text-dim);font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-top:2rem;animation:bounce 2s ease-in-out infinite;}
@keyframes bounce{0%,100%{transform:translateY(0);}50%{transform:translateY(6px);}}

/* Features */
.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;}
.feature-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.8rem;transition:.3s ease;position:relative;overflow:hidden;}
.feature-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--orange),transparent);opacity:0;transition:.3s ease;}
.feature-card:hover{border-color:rgba(232,93,4,.35);transform:translateY(-5px);box-shadow:var(--shadow),0 0 30px rgba(232,93,4,.1);}
.feature-card:hover::before{opacity:1;}
.feature-icon{width:50px;height:50px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:1.2rem;}
.feature-icon.orange{background:rgba(232,93,4,.12);color:var(--orange);border:1px solid rgba(232,93,4,.25);}
.feature-icon.blue{background:rgba(0,119,182,.12);color:var(--blue-light);border:1px solid rgba(0,119,182,.25);}
.feature-icon.red{background:rgba(214,40,40,.12);color:#f77;border:1px solid rgba(214,40,40,.25);}
.feature-icon.green{background:rgba(16,212,126,.1);color:#10d47e;border:1px solid rgba(16,212,126,.2);}
.feature-title{font-family:'Rajdhani',sans-serif;font-size:1.12rem;font-weight:700;margin-bottom:.5rem;}
.feature-text{color:var(--text-muted);font-size:.86rem;line-height:1.65;}

/* Course cards */
.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;}
.course-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:.3s ease;display:flex;flex-direction:column;}
.course-card:hover{border-color:rgba(232,93,4,.4);transform:translateY(-5px);box-shadow:var(--shadow),0 0 30px rgba(232,93,4,.12);}
.course-cover{position:relative;height:175px;overflow:hidden;}
.course-cover img{width:100%;height:100%;object-fit:cover;transition:.4s ease;}
.course-card:hover .course-cover img{transform:scale(1.05);}
.course-cover-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(5,12,26,.9) 0%,transparent 60%);}
.course-level-badge{position:absolute;top:.75rem;right:.75rem;padding:.22rem .62rem;border-radius:999px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;background:rgba(232,93,4,.85);color:#fff;backdrop-filter:blur(4px);}
.course-body{padding:1.2rem;flex:1;display:flex;flex-direction:column;}
.course-title{font-family:'Rajdhani',sans-serif;font-size:1.08rem;font-weight:700;margin-bottom:.45rem;line-height:1.25;color:var(--text);}
.course-summary{color:var(--text-muted);font-size:.82rem;line-height:1.6;flex:1;margin-bottom:1rem;}
.course-meta{display:flex;gap:1rem;margin-bottom:1rem;}
.course-meta-item{display:flex;align-items:center;gap:.35rem;font-size:.76rem;color:var(--text-dim);font-weight:700;}
.course-meta-item i{color:var(--orange);}
.course-footer{border-top:1px solid var(--border);padding-top:.85rem;}

/* Catalog */
.catalog-header{padding:2.5rem 0 1.5rem;border-bottom:1px solid var(--border);margin-bottom:2rem;}
.catalog-title{font-size:clamp(1.8rem,4vw,2.4rem);font-weight:700;margin-bottom:.4rem;}
.catalog-filters{display:flex;gap:.8rem;flex-wrap:wrap;align-items:center;margin:1.2rem 0;}
.filter-chip{padding:.38rem 1rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);font-size:.8rem;font-weight:700;cursor:pointer;transition:.2s ease;text-decoration:none;}
.filter-chip:hover,.filter-chip.active{border-color:var(--orange);color:var(--orange);background:rgba(232,93,4,.08);}

/* Enrollment status */
.enrollment-status{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .62rem;border-radius:999px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.enrollment-status.approved{background:rgba(16,212,126,.12);color:#10d47e;border:1px solid rgba(16,212,126,.25);}
.enrollment-status.pending{background:rgba(245,158,11,.12);color:#fbbf24;border:1px solid rgba(245,158,11,.25);}
.enrollment-status.rejected{background:rgba(214,40,40,.12);color:#f77;border:1px solid rgba(214,40,40,.3);}
.progress-bar{height:5px;background:rgba(255,255,255,.06);border-radius:999px;overflow:hidden;}
.progress-fill{height:100%;background:linear-gradient(90deg,var(--orange),var(--red));border-radius:999px;transition:width .5s ease;}

/* Course viewer */
.course-viewer{display:grid;grid-template-columns:1fr 320px;gap:1.5rem;align-items:start;margin:1.5rem 0;}
.video-area{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;}
.video-embed{position:relative;padding-top:56.25%;background:#000;}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:none;}
.video-info{padding:1.5rem;}
.video-title{font-family:'Rajdhani',sans-serif;font-size:1.3rem;font-weight:700;margin-bottom:.5rem;}
.sidebar-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);position:sticky;top:80px;max-height:calc(100vh - 100px);overflow-y:auto;}
.sidebar-panel::-webkit-scrollbar{width:4px;}
.sidebar-panel::-webkit-scrollbar-thumb{background:rgba(0,119,182,.3);border-radius:99px;}
.sidebar-head{padding:1rem 1.2rem;border-bottom:1px solid var(--border);}
.sidebar-head h3{font-size:1rem;font-weight:800;}
.module-item{border-bottom:1px solid var(--border);}
.module-header{padding:.82rem 1.2rem;font-weight:800;font-size:.85rem;color:var(--orange);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;display:flex;align-items:center;justify-content:space-between;}
.session-link{display:flex;align-items:center;gap:.6rem;padding:.68rem 1.2rem .68rem 2.2rem;color:var(--text-muted);font-size:.83rem;font-weight:700;text-decoration:none;border-left:3px solid transparent;transition:.2s ease;}
.session-link:hover,.session-link.active{color:var(--orange);border-left-color:var(--orange);background:rgba(232,93,4,.06);}
@media(max-width:900px){.course-viewer{grid-template-columns:1fr;}.sidebar-panel{position:static;max-height:none;}}

/* Admin */
.admin-layout{display:grid;grid-template-columns:256px 1fr;gap:0;min-height:calc(100vh - 70px);}
.admin-sidebar{background:var(--bg-card);border-right:1px solid var(--border);padding:1.5rem 0;position:sticky;top:70px;height:calc(100vh - 70px);overflow-y:auto;}
.admin-sidebar::-webkit-scrollbar{width:3px;}
.admin-sidebar::-webkit-scrollbar-thumb{background:rgba(0,119,182,.3);border-radius:99px;}
.sidebar-section-label{font-size:.67rem;font-weight:800;color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em;padding:.8rem 1.2rem .35rem;}
.sidebar-nav-link{display:flex;align-items:center;gap:.7rem;padding:.68rem 1rem;margin:1px .7rem;border-radius:var(--radius-sm);color:var(--text-muted);font-size:.86rem;font-weight:700;text-decoration:none;transition:.2s ease;}
.sidebar-nav-link i{width:20px;text-align:center;opacity:.7;}
.sidebar-nav-link:hover,.sidebar-nav-link.active{background:rgba(232,93,4,.1);color:var(--orange);}
.sidebar-nav-link.active i,.sidebar-nav-link:hover i{opacity:1;}
.admin-content{padding:2rem;overflow:hidden;}
.admin-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.8rem;flex-wrap:wrap;gap:1rem;}
.admin-page-title{font-family:'Rajdhani',sans-serif;font-size:1.55rem;font-weight:700;}
.admin-page-title span{color:var(--orange);}
@media(max-width:900px){.admin-layout{grid-template-columns:1fr;}.admin-sidebar{position:static;height:auto;}}

/* Tables */
.table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;}
table{width:100%;border-collapse:collapse;}
thead{background:rgba(0,119,182,.08);}
thead th{padding:.82rem 1.2rem;font-size:.73rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;}
tbody tr{border-bottom:1px solid rgba(0,119,182,.08);transition:.15s ease;}
tbody tr:last-child{border-bottom:none;}
tbody tr:hover{background:rgba(0,119,182,.04);}
tbody td{padding:.85rem 1.2rem;font-size:.86rem;color:var(--text-muted);vertical-align:middle;}
tbody td strong,.td-title{color:var(--text);font-weight:700;}
.table-actions{display:flex;gap:.4rem;flex-wrap:wrap;}
@media(max-width:700px){.table-wrap{overflow-x:auto;}}

/* Stat cards */
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.2rem;margin-bottom:2rem;}
.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem;position:relative;overflow:hidden;transition:.2s ease;}
.stat-card.orange{border-color:rgba(232,93,4,.25);}
.stat-card.blue{border-color:rgba(0,119,182,.25);}
.stat-card.red{border-color:rgba(214,40,40,.25);}
.stat-card.green{border-color:rgba(16,212,126,.2);}
.stat-card:hover{transform:translateY(-3px);}
.stat-card-icon{width:44px;height:44px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:1rem;}
.stat-card.orange .stat-card-icon{background:rgba(232,93,4,.12);color:var(--orange);}
.stat-card.blue .stat-card-icon{background:rgba(0,119,182,.12);color:var(--blue-light);}
.stat-card.red .stat-card-icon{background:rgba(214,40,40,.12);color:#f77;}
.stat-card.green .stat-card-icon{background:rgba(16,212,126,.1);color:#10d47e;}
.stat-card-value{font-family:'Rajdhani',sans-serif;font-size:2.2rem;font-weight:700;line-height:1;color:var(--text);margin-bottom:.2rem;}
.stat-card-label{font-size:.76rem;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;}

/* Auth */
.auth-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;}
.auth-hero{position:relative;background:linear-gradient(135deg,#020810 0%,var(--bg-card) 100%);display:flex;align-items:center;justify-content:center;padding:3rem;overflow:hidden;}
.auth-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 40%,rgba(232,93,4,.15) 0%,transparent 65%),radial-gradient(ellipse 50% 40% at 20% 80%,rgba(0,119,182,.12) 0%,transparent 55%);}
.auth-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,119,182,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,119,182,.05) 1px,transparent 1px);background-size:40px 40px;}
.auth-hero-content{position:relative;z-index:1;text-align:center;max-width:440px;}
.auth-hero-logo{width:160px;height:160px;object-fit:contain;filter:drop-shadow(0 0 30px rgba(232,93,4,.5)) drop-shadow(0 0 60px rgba(0,119,182,.3));margin:0 auto 1.8rem;animation:logoPulse 4s ease-in-out infinite;}
.auth-hero-title{font-family:'Rajdhani',sans-serif;font-size:2rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.6rem;}
.auth-hero-title .gassi{color:var(--orange);}
.auth-hero-subtitle{color:var(--text-muted);font-size:.9rem;line-height:1.7;margin-bottom:2rem;}
.auth-features{display:flex;flex-direction:column;gap:.7rem;text-align:left;}
.auth-feature{display:flex;align-items:center;gap:.7rem;padding:.7rem 1rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-sm);}
.auth-feature-icon{width:34px;height:34px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0;}
.auth-feature-icon.orange{background:rgba(232,93,4,.15);color:var(--orange);}
.auth-feature-icon.blue{background:rgba(0,119,182,.15);color:var(--blue-light);}
.auth-feature-icon.green{background:rgba(16,212,126,.1);color:#10d47e;}
.auth-feature-text{font-size:.83rem;font-weight:700;color:var(--text-muted);}
.auth-form-section{background:var(--bg);display:flex;align-items:center;justify-content:center;padding:3rem 2rem;overflow-y:auto;}
.auth-form-box{width:100%;max-width:440px;}
.auth-form-logo{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem;}
.auth-form-logo img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(232,93,4,.4));}
.auth-form-logo-text .name{font-family:'Rajdhani',sans-serif;font-size:1.15rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;}
.auth-form-logo-text .name .gassi{color:var(--orange);}
.auth-form-logo-text .sub{font-size:.7rem;color:var(--text-dim);font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.auth-form-title{font-family:'Rajdhani',sans-serif;font-size:1.8rem;font-weight:700;margin-bottom:.3rem;}
.auth-form-subtitle{font-size:.86rem;color:var(--text-muted);margin-bottom:1.8rem;line-height:1.5;}
.auth-divider{display:flex;align-items:center;gap:1rem;margin:1.5rem 0;color:var(--text-dim);font-size:.76rem;font-weight:700;}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:rgba(255,255,255,.08);}
.auth-link{color:var(--orange);font-weight:800;text-decoration:none;}
.auth-link:hover{text-decoration:underline;}
@media(max-width:768px){.auth-page{grid-template-columns:1fr;}.auth-hero{display:none;}.auth-form-section{padding:2rem 1.5rem;min-height:100vh;}}

/* Verify */
.verify-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.5rem;max-width:680px;margin:2rem auto;}
.verify-valid{border-color:rgba(16,212,126,.3);background:rgba(16,212,126,.04);}
.verify-invalid{border-color:rgba(214,40,40,.3);background:rgba(214,40,40,.04);}
.verify-badge{display:inline-flex;align-items:center;gap:.6rem;padding:.55rem 1.2rem;border-radius:999px;font-weight:800;font-size:.88rem;margin-bottom:1.5rem;}
.verify-badge.valid{background:rgba(16,212,126,.15);color:#10d47e;border:1px solid rgba(16,212,126,.3);}
.verify-badge.invalid{background:rgba(214,40,40,.15);color:#f77;border:1px solid rgba(214,40,40,.3);}

/* Utilities */
.text-center{text-align:center;}
.text-right{text-align:right;}
.text-muted{color:var(--text-muted);}
.text-orange{color:var(--orange);}
.text-blue{color:var(--blue-light);}
.text-green{color:#10d47e;}
.text-red{color:#f77;}
.fw-700{font-weight:700;}
.fw-800{font-weight:800;}
.mt-1{margin-top:.5rem;}.mt-2{margin-top:1rem;}.mt-3{margin-top:1.5rem;}.mt-4{margin-top:2rem;}
.mb-1{margin-bottom:.5rem;}.mb-2{margin-bottom:1rem;}.mb-3{margin-bottom:1.5rem;}.mb-4{margin-bottom:2rem;}
.d-flex{display:flex;}.gap-1{gap:.5rem;}.gap-2{gap:1rem;}.align-center{align-items:center;}.justify-between{justify-content:space-between;}.flex-wrap{flex-wrap:wrap;}.w-100{width:100%;}
.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-dim);}
.empty-state i{font-size:3rem;margin-bottom:1rem;opacity:.4;display:block;}
.empty-state h3{font-size:1.2rem;font-weight:700;color:var(--text-muted);margin-bottom:.5rem;}
.empty-state p{font-size:.88rem;}
.breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:700;color:var(--text-dim);margin-bottom:1.5rem;flex-wrap:wrap;}
.breadcrumb a{color:var(--text-muted);text-decoration:none;transition:.2s ease;}
.breadcrumb a:hover{color:var(--orange);}
::-webkit-scrollbar{width:6px;height:6px;}
::-webkit-scrollbar-track{background:var(--bg);}
::-webkit-scrollbar-thumb{background:rgba(0,119,182,.3);border-radius:99px;}
::-webkit-scrollbar-thumb:hover{background:var(--orange);}

/* ========== BOOTSTRAP COMPATIBILITY LAYER ========== */
/* Maps Bootstrap classes to Gassi Academy theme */
.btn { display:inline-flex;align-items:center;justify-content:center;gap:.45rem;font-weight:800;font-family:'Nunito',sans-serif;text-decoration:none;cursor:pointer;transition:.25s ease;border:none;border-radius:var(--radius-sm);padding:.55rem 1.1rem;font-size:.88rem; }
.btn-primary { background:linear-gradient(135deg,var(--orange),var(--red));color:#fff;box-shadow:var(--shadow-orange); }
.btn-primary:hover { transform:translateY(-2px);filter:brightness(1.1); }
.btn-secondary { background:rgba(0,119,182,.15);color:var(--blue-light);border:1px solid rgba(0,119,182,.3); }
.btn-secondary:hover { background:rgba(0,119,182,.25); }
.btn-success { background:linear-gradient(135deg,#10d47e,#059669);color:#fff; }
.btn-success:hover { transform:translateY(-1px);filter:brightness(1.1); }
.btn-danger { background:linear-gradient(135deg,var(--red),var(--red-dark));color:#fff; }
.btn-danger:hover { transform:translateY(-1px);filter:brightness(1.1); }
.btn-warning { background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff; }
.btn-warning:hover { transform:translateY(-1px);filter:brightness(1.1); }
.btn-info { background:rgba(0,183,255,.15);color:var(--blue-light);border:1px solid rgba(0,183,255,.3); }
.btn-outline-secondary { background:transparent;border:1px solid var(--border);color:var(--text-muted); }
.btn-outline-secondary:hover { border-color:var(--orange);color:var(--orange); }
.btn-sm { padding:.35rem .75rem;font-size:.78rem; }
.btn-lg { padding:.8rem 1.6rem;font-size:1rem; }
.bg-primary { background:var(--orange) !important; }
.text-primary { color:var(--orange) !important; }
.border-primary { border-color:var(--orange) !important; }
/* Admin card legacy styles */
.ad-card { background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem; }
.ad-kpi { font-family:'Rajdhani',sans-serif;font-size:2.4rem;font-weight:700;color:var(--orange);line-height:1; }
.ad-label { font-size:.75rem;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em; }
.ad-desc { font-size:.82rem;color:var(--text-muted);margin-top:.3rem; }
.ad-chip { display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .7rem;border-radius:999px;background:rgba(232,93,4,.1);border:1px solid rgba(232,93,4,.2);color:var(--orange);font-size:.78rem;font-weight:700;margin:.25rem; }
/* Input/form Bootstrap compat */
.form-control { width:100%;padding:.72rem 1rem;background:rgba(0,119,182,.06);border:1px solid rgba(0,119,182,.25);border-radius:var(--radius-sm);color:var(--text);font-size:.92rem;font-family:'Nunito',sans-serif;font-weight:600;transition:.2s ease;outline:none; }
.form-control:focus { border-color:var(--orange);background:rgba(232,93,4,.05);box-shadow:0 0 0 3px rgba(232,93,4,.15); }
.form-select { width:100%;padding:.72rem 2.5rem .72rem 1rem;background:rgba(0,119,182,.06) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23e85d04' d='M6 8L1 3h10z'/%3E%3C/svg%3E") no-repeat right 1rem center;border:1px solid rgba(0,119,182,.25);border-radius:var(--radius-sm);color:var(--text);font-size:.92rem;font-family:'Nunito',sans-serif;font-weight:600;-webkit-appearance:none;appearance:none;cursor:pointer;outline:none; }
.form-select:focus { border-color:var(--orange);box-shadow:0 0 0 3px rgba(232,93,4,.15); }
.form-select option { background:#0a1628;color:var(--text); }
.form-label { display:block;font-weight:700;font-size:.84rem;color:var(--text-muted);margin-bottom:.42rem;text-transform:uppercase;letter-spacing:.04em; }
.mb-3 { margin-bottom:1rem !important; }
.mb-4 { margin-bottom:1.5rem !important; }
.mt-3 { margin-top:1rem !important; }
.mt-4 { margin-top:1.5rem !important; }
.d-flex { display:flex; }
.gap-2 { gap:.75rem; }
.gap-3 { gap:1rem; }
.align-items-center { align-items:center; }
.justify-content-between { justify-content:space-between; }
.flex-wrap { flex-wrap:wrap; }
.w-100 { width:100% !important; }
.text-end { text-align:right; }
.text-center { text-align:center !important; }
.fw-bold { font-weight:700 !important; }
.small { font-size:.82rem; }
.rounded { border-radius:var(--radius-sm) !important; }
.shadow-sm { box-shadow:var(--shadow) !important; }
/* Alert compat */
.alert { background:var(--bg-card2);border:1px solid var(--border);border-left:5px solid var(--blue);border-radius:var(--radius-sm);padding:.85rem 1.1rem;margin-bottom:1rem;color:var(--text);font-weight:700; }
.alert-success { border-left-color:#10d47e;background:rgba(16,212,126,.05); }
.alert-danger  { border-left-color:var(--red);background:rgba(214,40,40,.05); }
.alert-warning { border-left-color:var(--orange);background:rgba(232,93,4,.05); }
.alert-info    { border-left-color:var(--blue-light);background:rgba(0,183,255,.05); }
/* Table compat */
.table-responsive { overflow-x:auto; }
.table { width:100%;border-collapse:collapse; }
.table th { padding:.82rem 1.2rem;font-size:.73rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);text-align:left;border-bottom:1px solid var(--border); }
.table td { padding:.85rem 1.2rem;font-size:.86rem;color:var(--text-muted);vertical-align:middle;border-bottom:1px solid rgba(0,119,182,.08); }
.table-striped tbody tr:nth-child(odd) { background:rgba(0,119,182,.03); }
.table-hover tbody tr:hover { background:rgba(0,119,182,.06); }
/* Badge compat */
.badge.bg-success { background:rgba(16,212,126,.15) !important;color:#10d47e;border:1px solid rgba(16,212,126,.25); }
.badge.bg-warning { background:rgba(245,158,11,.15) !important;color:#fbbf24;border:1px solid rgba(245,158,11,.25); }
.badge.bg-danger  { background:rgba(214,40,40,.15) !important;color:#f77;border:1px solid rgba(214,40,40,.3); }
.badge.bg-primary { background:rgba(232,93,4,.15) !important;color:var(--orange);border:1px solid rgba(232,93,4,.3); }
.badge.bg-secondary { background:rgba(0,119,182,.15) !important;color:var(--blue-light);border:1px solid rgba(0,119,182,.3); }
/* Card compat */
.card { background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius); }
.card-header { padding:1rem 1.3rem;border-bottom:1px solid var(--border);font-weight:800;font-size:.95rem; }
.card-body { padding:1.3rem; }
.card-footer { padding:.9rem 1.3rem;border-top:1px solid var(--border); }
/* Container compat */
.container-fluid { width:100%;padding:0 1.5rem; }
/* Pagination compat */
.pagination { display:flex;gap:.4rem;list-style:none;flex-wrap:wrap;margin:1.5rem 0; }
.page-item .page-link { display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 .6rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);font-weight:700;font-size:.85rem;text-decoration:none;transition:.2s ease; }
.page-item.active .page-link { background:var(--orange);border-color:var(--orange);color:#fff; }
.page-item.disabled .page-link { opacity:.4;cursor:default; }
.page-item .page-link:hover:not(.page-item.disabled .page-link) { border-color:var(--orange);color:var(--orange); }
/* Input group */
.input-group { display:flex;gap:0; }
.input-group .form-control { border-radius:var(--radius-sm) 0 0 var(--radius-sm); }
.input-group .btn { border-radius:0 var(--radius-sm) var(--radius-sm) 0; }
/* Select2 / default select override */
select { background:#0a1628;color:var(--text);border:1px solid rgba(0,119,182,.25);border-radius:var(--radius-sm); }
