/* Shared ICT Master visual language for public inner pages. */
:root{--ict-cyan:#19c8ff;--ict-blue:#168cff;--ict-purple:#8f4dff;--ict-bg:#030a18;--ict-panel:rgba(7,24,48,.82);--ict-line:rgba(39,194,255,.3);--ict-text:#eef8ff;--ict-muted:#88a6c0}
body.bt-catalog,body.bt-page,body.bt-course-auth,body.bt-auth{background:var(--ict-bg)!important;color:var(--ict-text)!important;font-family:'Inter','Noto Sans Sinhala',sans-serif!important;min-height:100vh}
body.bt-catalog::before,body.bt-page::before,body.bt-course-auth::before,body.bt-auth::before{content:"";position:fixed;inset:0;z-index:-4;pointer-events:none;background:radial-gradient(circle at 8% 4%,rgba(0,135,255,.2),transparent 25%),radial-gradient(circle at 92% 16%,rgba(135,52,255,.17),transparent 27%),linear-gradient(rgba(37,154,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(37,154,255,.045) 1px,transparent 1px);background-size:auto,auto,44px 44px,44px 44px;animation:ictAmbient 12s ease-in-out infinite alternate}
body.bt-catalog::after,body.bt-page::after,body.bt-course-auth::after,body.bt-auth::after{content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;opacity:.12;background:linear-gradient(transparent 96%,rgba(0,196,255,.35) 100%);background-size:100% 6px;animation:ictScan 9s linear infinite}
body.bt-catalog .mesh,body.bt-course-auth .mesh,body.bt-auth .mesh{background:transparent!important;opacity:.8}.grain{opacity:.06!important}
body.bt-catalog .navbar,body.bt-page .navbar{top:15px!important;left:50%!important;right:auto!important;width:min(1160px,calc(100% - 30px))!important;height:60px!important;transform:translateX(-50%)!important;border:1px solid rgba(36,194,255,.58)!important;border-radius:999px!important;background:rgba(3,14,32,.82)!important;backdrop-filter:blur(22px)!important;box-shadow:0 0 0 1px rgba(143,77,255,.2),0 0 26px rgba(22,146,255,.2)!important;animation:ictNavIn .8s cubic-bezier(.16,1,.3,1) both}
body.bt-catalog .navbar::before,body.bt-page .navbar::before{content:"";position:absolute;inset:-2px;border-radius:inherit;background:conic-gradient(from 0deg,transparent 0 30%,var(--ict-cyan),var(--ict-purple),transparent 53% 80%,var(--ict-cyan),transparent 90%);filter:blur(4px);z-index:-1;opacity:.7;animation:ictSpin 7s linear infinite}
body.bt-catalog .logo-wrap,body.bt-page .logo-wrap{color:var(--ict-text)!important}.logo-badge{background:linear-gradient(135deg,var(--ict-blue),var(--ict-purple))!important;box-shadow:0 0 18px rgba(24,155,255,.45)!important}.nav-links a{color:#c7deee!important}.nav-links a:hover,.nav-links a.active{background:linear-gradient(135deg,var(--ict-blue),var(--ict-purple))!important;color:#fff!important;box-shadow:0 0 17px rgba(23,166,255,.42)!important}
body.bt-catalog .btn-nav,body.bt-page .btn-nav{background:linear-gradient(135deg,var(--ict-blue),var(--ict-purple))!important;box-shadow:0 0 17px rgba(23,166,255,.35)!important;color:#fff!important}
body.bt-catalog .hero{padding-top:140px!important}.bt-catalog .hero h1{color:#f2fbff!important;text-shadow:0 0 22px rgba(16,177,255,.22)}.bt-catalog .hero p,.bt-page p{color:var(--ict-muted)}.bt-catalog .eyebrow{background:rgba(0,152,255,.12)!important;border-color:rgba(33,203,255,.4)!important;color:var(--ict-cyan)!important;box-shadow:0 0 15px rgba(0,177,255,.16)!important}
.bt-catalog .course,.bt-page .glass,.bt-page .card,.bt-page .panel,.bt-page .content-card{background:linear-gradient(145deg,rgba(9,38,72,.88),rgba(3,16,35,.92))!important;border:1px solid var(--ict-line)!important;box-shadow:0 0 0 1px rgba(143,77,255,.1),0 18px 40px rgba(0,0,0,.3),inset 0 0 24px rgba(0,145,255,.06)!important;color:var(--ict-text)!important}
.bt-catalog .course{position:relative;overflow:hidden!important;border-radius:18px!important;transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s!important}.bt-catalog .course::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:conic-gradient(from 0deg,transparent 0 30%,var(--ict-cyan),transparent 47% 72%,var(--ict-purple),transparent 87%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:ictSpin 5.5s linear infinite;pointer-events:none}.bt-catalog .course:hover{transform:translateY(-9px) scale(1.012)!important;box-shadow:0 0 25px rgba(0,187,255,.25),0 22px 45px rgba(0,0,0,.4)!important}.bt-catalog .thumb{background:linear-gradient(135deg,#087fdc,#823eff)!important}.bt-catalog .thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 28%,rgba(255,255,255,.18),transparent 70%);transform:translateX(-120%);animation:ictSheen 4.5s ease-in-out infinite}.bt-catalog .c-body h3{color:#f0fbff!important}.bt-catalog .c-body p,.bt-catalog .price small{color:var(--ict-muted)!important}.bt-catalog .pill.buy{background:linear-gradient(135deg,var(--ict-blue),var(--ict-purple))!important;box-shadow:0 0 18px rgba(30,151,255,.34)!important}
body.bt-page{padding-top:20px!important}.bt-page main,.bt-page .container,.bt-page>section{position:relative}.bt-page .btn,.bt-page button{border-radius:12px}.bt-page input,.bt-page select,.bt-page textarea{background:rgba(2,14,31,.78)!important;border:1px solid var(--ict-line)!important;color:var(--ict-text)!important}.bt-page input:focus,.bt-page select:focus,.bt-page textarea:focus{border-color:var(--ict-cyan)!important;box-shadow:0 0 0 3px rgba(26,198,255,.12),0 0 18px rgba(0,165,255,.15)!important}.bt-page .eyebrow{color:var(--ict-cyan)!important}.bt-page .btn-accent,.bt-page .btn-primary{background:linear-gradient(135deg,var(--ict-blue),var(--ict-purple))!important;box-shadow:0 0 18px rgba(20,159,255,.34)!important}.bt-page footer{background:rgba(2,11,26,.96)!important;border-top-color:var(--ict-line)!important}
body.bt-course-auth{display:flex;align-items:center;justify-content:center;padding:28px 18px!important}.bt-course-auth .card{position:relative;max-width:450px!important;padding:36px!important;border-radius:24px!important;background:linear-gradient(145deg,rgba(9,38,72,.93),rgba(3,16,35,.96))!important;border:1px solid rgba(37,199,255,.48)!important;box-shadow:0 0 0 1px rgba(143,77,255,.18),0 0 42px rgba(0,148,255,.18),0 25px 70px rgba(0,0,0,.42)!important;animation:ictCardIn .75s cubic-bezier(.16,1,.3,1) both}.bt-course-auth .card::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:conic-gradient(from 0deg,transparent 0 27%,var(--ict-cyan),transparent 44% 73%,var(--ict-purple),transparent 89%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:ictSpin 6s linear infinite;pointer-events:none}.bt-course-auth .bt-auth-brand{display:block;text-align:center;position:relative;z-index:1}.bt-course-auth .bt-auth-brand img{filter:drop-shadow(0 0 10px rgba(0,197,255,.7))}.bt-course-auth .brand,.bt-course-auth h1,.bt-course-auth .sub,.bt-course-auth form,.bt-course-auth .foot,.bt-course-auth .note,.bt-course-auth .err{position:relative;z-index:1}.bt-course-auth h1{color:#f4fbff}.bt-course-auth .sub,.bt-course-auth label,.bt-course-auth .foot{color:var(--ict-muted)}.bt-course-auth .inp{background:rgba(2,14,31,.78)!important;border-color:var(--ict-line)!important;color:#f1fbff!important}.bt-course-auth .inp:focus{border-color:var(--ict-cyan)!important;box-shadow:0 0 0 3px rgba(26,198,255,.12),0 0 18px rgba(0,165,255,.15)!important}.bt-course-auth .btn{background:linear-gradient(135deg,var(--ict-blue),var(--ict-purple))!important;box-shadow:0 0 22px rgba(0,145,255,.35)!important;position:relative;overflow:hidden}.bt-course-auth .btn:hover{transform:translateY(-3px)!important}.bt-course-auth .note{background:rgba(0,155,235,.12)!important;color:#71deff!important;border:1px solid rgba(42,202,255,.2)}.bt-course-auth .err{background:rgba(240,68,88,.14)!important;color:#ffabb5!important;border:1px solid rgba(255,93,107,.28)}.bt-course-auth .foot a{color:#58dfff!important}
body.bt-auth{background:var(--ict-bg)!important}.bt-auth .layout-wrapper{background:transparent!important}.bt-auth .brand-section{background:radial-gradient(circle at 25% 35%,rgba(10,115,220,.22),transparent 35%),linear-gradient(145deg,#04142b,#030a18)!important;border-right:1px solid var(--ict-line)!important}.bt-auth .login-section{background:rgba(3,10,24,.84)!important}.bt-auth .login-box,.bt-auth .register-box{background:linear-gradient(145deg,rgba(9,38,72,.9),rgba(3,16,35,.96))!important;border:1px solid rgba(37,199,255,.46)!important;box-shadow:0 0 0 1px rgba(143,77,255,.16),0 0 35px rgba(0,148,255,.18),0 25px 65px rgba(0,0,0,.38)!important;border-radius:24px!important;animation:ictCardIn .8s cubic-bezier(.16,1,.3,1) both}.bt-auth .login-box::before,.bt-auth .register-box::before{background:conic-gradient(from 0deg,transparent 0 28%,var(--ict-cyan),transparent 45% 72%,var(--ict-purple),transparent 88%)!important;filter:blur(4px);opacity:.72;animation:ictSpin 6s linear infinite}.bt-auth .login-header h2,.bt-auth .login-box h2,.bt-auth .register-box h2{color:#f4fbff!important}.bt-auth .login-header p,.bt-auth .form-group label,.bt-auth .register-link,.bt-auth .mobile-footer{color:var(--ict-muted)!important}.bt-auth .form-group input,.bt-auth .form-group select{background:rgba(2,14,31,.78)!important;color:#f1fbff!important;border-color:var(--ict-line)!important}.bt-auth .form-group input:focus,.bt-auth .form-group select:focus{border-color:var(--ict-cyan)!important;box-shadow:0 0 0 3px rgba(26,198,255,.12),0 0 18px rgba(0,165,255,.15)!important}.bt-auth .login-btn{background:linear-gradient(135deg,var(--ict-blue),var(--ict-purple))!important;box-shadow:0 0 22px rgba(0,145,255,.35)!important}.bt-auth .bt-auth-brand img{filter:drop-shadow(0 0 10px rgba(0,197,255,.72))}.bt-auth .bt-auth-constellation{filter:drop-shadow(0 0 16px rgba(0,198,255,.38))}.bt-auth .bt-orbit{border-color:rgba(41,213,255,.65)!important}.bt-auth .bt-orbit-two{border-color:rgba(145,75,255,.7)!important}.bt-auth .bt-orbit-center{background:linear-gradient(135deg,var(--ict-blue),var(--ict-purple))!important;box-shadow:0 0 25px rgba(0,181,255,.55)!important}.bt-auth .badge{background:rgba(7,87,144,.25)!important;border-color:rgba(39,198,255,.32)!important;color:#a8eaff!important}
@keyframes ictAmbient{from{filter:brightness(.92) saturate(.95)}to{filter:brightness(1.12) saturate(1.2)}}@keyframes ictScan{from{background-position:0 -20%}to{background-position:0 120%}}@keyframes ictSpin{to{transform:rotate(360deg)}}@keyframes ictSheen{0%,35%{transform:translateX(-120%)}65%,100%{transform:translateX(120%)}}@keyframes ictNavIn{from{opacity:0;transform:translate(-50%,-30px) scale(.94)}to{opacity:1;transform:translate(-50%,0) scale(1)}}@keyframes ictCardIn{from{opacity:0;transform:translateY(24px) scale(.97);filter:blur(6px)}to{opacity:1;transform:none;filter:blur(0)}}
@media(max-width:900px){body.bt-catalog .navbar,body.bt-page .navbar{top:10px!important;width:calc(100% - 20px)!important;border-radius:18px!important}body.bt-catalog .nav-links,body.bt-page .nav-links{background:rgba(3,14,32,.98)!important;border:1px solid var(--ict-line)!important}.bt-catalog .hero{padding-top:130px!important}.bt-auth .brand-section{display:none!important}.bt-auth .login-section{width:100%!important;background:var(--ict-bg)!important}.bt-auth .login-box,.bt-auth .register-box{max-width:520px!important;margin:0 auto}.bt-course-auth .card{padding:28px 22px!important}}
@media(prefers-reduced-motion:reduce){body.bt-catalog::before,body.bt-catalog::after,body.bt-page::before,body.bt-page::after,body.bt-course-auth::before,body.bt-course-auth::after,body.bt-auth::before,body.bt-auth::after,.bt-catalog .navbar,.bt-page .navbar,.bt-course-auth .card,.bt-auth .login-box,.bt-auth .register-box,.bt-catalog .course::before,.bt-course-auth .card::before,.bt-auth .login-box::before,.bt-auth .register-box::before{animation:none!important}}

/* ═══════════════════════════════════════════════════════════════════════════
   PUBLIC-PAGE NAVBAR — parity with the homepage
   courses.php / articles.php / page.php carried a 4-item menu while the
   homepage showed 9, and they swapped to a hamburger at ~900px with a
   square-cornered single-column dropdown hanging off a rounded pill. The menu
   is now the same list, the breakpoint matches the homepage's 1180px (11 items
   cannot sit on one row below that), and the panel is the same rounded,
   multi-column sheet the homepage uses.
   ═══════════════════════════════════════════════════════════════════════════ */
body.bt-catalog .logo-wrap img, body.bt-page .logo-wrap img { max-width: 190px; object-fit: contain; }
body.bt-catalog .nav-links a, body.bt-page .nav-links a { font-size: 12.5px; padding: 9px 11px; white-space: nowrap; }
body.bt-catalog .mobile-auth-btn, body.bt-page .mobile-auth-btn { display: none; }

/* The logo is uploaded as a JPEG, so it carries an opaque near-black box.
   `screen` drops those pixels into the dark navbar. Same rule the homepage
   uses; scoped to .jpg/.jpeg so a transparent PNG upload disables it. */
body.bt-catalog .logo-wrap img[src$=".jpg"],  body.bt-page .logo-wrap img[src$=".jpg"],
body.bt-catalog .logo-wrap img[src$=".jpeg"], body.bt-page .logo-wrap img[src$=".jpeg"],
body.bt-catalog .logo-wrap img[src$=".JPG"],  body.bt-page .logo-wrap img[src$=".JPG"],
body.bt-catalog .logo-wrap img[src$=".JPEG"], body.bt-page .logo-wrap img[src$=".JPEG"] {
  mix-blend-mode: screen;
}

@media (max-width: 1180px) {
  body.bt-catalog .hamburger, body.bt-page .hamburger {
    display: grid !important; place-items: center;
    width: 44px; height: 44px; padding: 0; flex-shrink: 0;
    border: 1px solid #49b4ed50; border-radius: 12px;
    background: #13304e; color: #e4f8ff; font-size: 22px; cursor: pointer;
  }
  body.bt-catalog .navbar .nav-links, body.bt-page .navbar .nav-links {
    display: none !important;
    position: absolute; top: calc(100% + 10px); left: 0; right: 0; width: 100%;
    margin: 0; padding: 14px !important; gap: 4px;
    border: 1px solid #3cb5ed50 !important; border-radius: 18px !important;
    background: #07172bf9 !important; box-shadow: 0 18px 46px #0009 !important;
    max-height: calc(100dvh - 126px); overflow-y: auto;
    opacity: 1 !important; visibility: visible !important; transform: none !important;
  }
  body.bt-catalog .navbar .nav-links.open, body.bt-page .navbar .nav-links.open {
    display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  body.bt-catalog .navbar .nav-links a, body.bt-page .navbar .nav-links a {
    display: flex; align-items: center; justify-content: center;
    min-height: 48px; font-size: 14px; text-align: center; white-space: normal;
  }
  body.bt-catalog .mobile-auth-btn, body.bt-page .mobile-auth-btn {
    display: block; grid-column: 1 / -1; margin-top: 6px;
  }
  body.bt-catalog .mobile-auth-btn .btn-nav, body.bt-page .mobile-auth-btn .btn-nav {
    width: 100%; justify-content: center;
  }
}
@media (max-width: 760px) {
  body.bt-catalog .navbar .nav-links.open, body.bt-page .navbar .nav-links.open {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
