:root{
  --navy:#0b1324;--navy2:#111d35;--gold:#bd9554;--gold2:#e4c98f;--bg:#f5f7fb;--card:#fff;
  --text:#172033;--muted:#70798b;--line:#e7eaf0;--green:#1c8b5e;--red:#c84545;--amber:#c98a1a;
  --shadow:0 18px 50px rgba(13,25,46,.08);--r:18px;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,"Noto Sans Thai",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}
button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.hidden{display:none!important}
#app{min-height:100vh}.shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{background:linear-gradient(180deg,#091120,#101c33);color:#fff;padding:24px 18px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;z-index:15}.brand{display:flex;gap:12px;align-items:center;padding:0 8px 24px}.brand-mark{width:42px;height:42px;border:1px solid rgba(228,201,143,.65);border-radius:12px;display:grid;place-items:center;font-weight:800;color:var(--gold2);letter-spacing:.5px}.brand h1{font-size:14px;line-height:1.2;margin:0;letter-spacing:.8px}.brand small{color:#aeb9ce;font-size:10px}.nav-group{display:grid;gap:7px}.nav-btn{border:0;background:transparent;color:#b9c3d7;text-align:left;padding:11px 12px;border-radius:11px;display:flex;gap:11px;align-items:center;transition:.18s}.nav-btn:hover,.nav-btn.active{background:rgba(255,255,255,.09);color:#fff}.nav-btn.active{box-shadow:inset 3px 0 0 var(--gold2)}.nav-icon{width:22px;text-align:center}.sidebar-foot{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding-top:16px}.mini-user{display:flex;align-items:center;gap:10px;padding:8px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:#e9d6ab;color:#26334b}.mini-user b{display:block;font-size:12px}.mini-user small{color:#aeb9ce}.main{min-width:0}.topbar{height:72px;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:10}.topbar-left{display:flex;align-items:center;gap:12px}.mobile-menu{display:none;border:0;background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 10px}.topbar-title b{display:block;font-size:15px}.topbar-title small{color:var(--muted);font-size:11px}.top-actions{display:flex;align-items:center;gap:10px}.pill{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:11px;color:var(--muted)}.content{padding:28px;max-width:1500px;margin:auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:22px}.page-head h2{font-size:26px;margin:0 0 5px}.page-head p{margin:0;color:var(--muted);font-size:13px}.actions{display:flex;gap:9px;flex-wrap:wrap}.btn{border:0;border-radius:11px;padding:10px 14px;font-weight:700;font-size:12px;transition:.18s;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn-primary{background:var(--navy);color:#fff}.btn-primary:hover{background:#162642;transform:translateY(-1px)}.btn-gold{background:var(--gold);color:#fff}.btn-soft{background:#eef2f7;color:#26334b}.btn-danger{background:#fff1f1;color:var(--red);border:1px solid #f7d6d6}.btn-line{background:#fff;border:1px solid var(--line);color:#354158}.btn-sm{padding:7px 9px;border-radius:8px;font-size:11px}.grid{display:grid;gap:16px}.kpis{grid-template-columns:repeat(4,1fr);margin-bottom:20px}.kpi{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px;box-shadow:0 8px 30px rgba(10,20,40,.035)}.kpi-top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:11px}.kpi strong{display:block;font-size:27px;margin:10px 0 3px}.trend{font-size:10px;color:var(--green)}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:0 8px 30px rgba(10,20,40,.035);overflow:hidden}.panel-head{padding:17px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:10px}.panel-head h3{font-size:14px;margin:0}.panel-body{padding:18px}.split{grid-template-columns:1.3fr .7fr}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:12px}.table th{text-align:left;color:#7a8497;font-size:10px;text-transform:uppercase;letter-spacing:.45px;padding:11px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:12px 11px;border-bottom:1px solid #f0f2f6;vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tr:hover td{background:#fbfcfe}.status{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.s-active{color:var(--green);background:#eaf7f1}.s-expired{color:#7c8492;background:#f0f2f5}.s-suspended{color:var(--amber);background:#fff5df}.s-revoked{color:var(--red);background:#fff0f0}.toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.input,.select,.textarea{width:100%;border:1px solid #dfe3eb;border-radius:11px;background:#fff;padding:10px 12px;outline:none;font-size:12px;color:var(--text)}.input:focus,.select:focus,.textarea:focus{border-color:#99a6bb;box-shadow:0 0 0 3px rgba(11,19,36,.05)}.search{max-width:300px}.filter{max-width:190px}.cards{grid-template-columns:repeat(3,1fr)}.course-card{background:#fff;border:1px solid var(--line);border-radius:19px;overflow:hidden;box-shadow:0 10px 35px rgba(10,20,40,.04);transition:.2s}.course-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.course-cover{aspect-ratio:16/9;background:linear-gradient(135deg,#0a1427,#263a5b);position:relative;overflow:hidden;color:#fff;padding:20px;display:flex;flex-direction:column;justify-content:flex-end}.course-cover:before{content:"BLC";position:absolute;right:-8px;top:-20px;font-size:108px;font-weight:900;color:rgba(255,255,255,.035);letter-spacing:-8px}.course-cover .tag{position:absolute;left:16px;top:16px;background:rgba(255,255,255,.12);backdrop-filter:blur(8px);padding:5px 8px;border-radius:999px;font-size:9px}.course-cover h3{position:relative;margin:0;font-size:19px;max-width:85%}.course-cover small{position:relative;color:#c9d2e3;margin-top:5px}.course-info{padding:16px}.course-meta{display:flex;gap:12px;color:var(--muted);font-size:10px;margin-bottom:13px}.progress-line{height:6px;background:#edf0f5;border-radius:999px;overflow:hidden}.progress-line span{display:block;height:100%;background:var(--gold);border-radius:999px}.progress-row{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:7px}.course-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px}.expiry{font-size:10px}.expiry b{display:block;color:var(--text);font-size:11px}.login-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#fff}.login-visual{background:radial-gradient(circle at 30% 25%,#26395a 0,#0e192d 38%,#07101f 100%);padding:52px;display:flex;flex-direction:column;color:#fff;position:relative;overflow:hidden}.login-visual:after{content:"BLC";position:absolute;bottom:-110px;right:-45px;font-size:330px;font-weight:900;letter-spacing:-28px;color:rgba(255,255,255,.025)}.login-visual .brand{padding:0;z-index:1}.hero-copy{margin:auto 0;max-width:610px;position:relative;z-index:1}.hero-copy .eyebrow{color:var(--gold2);font-weight:700;font-size:12px;letter-spacing:1.5px}.hero-copy h2{font-size:48px;line-height:1.08;margin:13px 0 18px;letter-spacing:-1px}.hero-copy p{color:#b8c4d8;max-width:540px;line-height:1.8}.feature-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}.feature-chips span{font-size:10px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05);padding:8px 10px;border-radius:999px}.login-panel{display:grid;place-items:center;padding:34px}.login-box{width:min(420px,100%)}.login-box h1{font-size:28px;margin:0 0 7px}.login-box>p{color:var(--muted);font-size:12px;margin:0 0 24px}.field{display:grid;gap:6px;margin-bottom:13px}.field label{font-size:11px;font-weight:700;color:#465168}.demo-box{background:#f7f8fb;border:1px solid var(--line);border-radius:13px;padding:12px;margin-top:16px;font-size:10px;color:var(--muted);line-height:1.7}.demo-box b{color:var(--text)}.login-footer{margin-top:19px;padding-top:16px;border-top:1px solid var(--line);font-size:10px;color:#959eae}.modal-layer{position:fixed;inset:0;background:rgba(6,13,25,.55);z-index:60;display:grid;place-items:center;padding:20px}.modal{background:#fff;width:min(620px,100%);max-height:90vh;overflow:auto;border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.modal-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.modal-head h3{margin:0;font-size:16px}.modal-body{padding:20px}.modal-foot{padding:14px 20px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.xbtn{border:0;background:#f1f3f6;border-radius:8px;width:30px;height:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.span2{grid-column:1/-1}.user-cell{display:flex;align-items:center;gap:9px}.user-cell .avatar{width:31px;height:31px;font-size:11px}.muted{color:var(--muted)}.small{font-size:10px}.strong{font-weight:800}.danger{color:var(--red)}.gold{color:#9d7535}.empty{text-align:center;padding:55px 20px;color:var(--muted)}.empty .empty-icon{font-size:35px;margin-bottom:10px}.player-page{background:#08111f;min-height:100vh;color:#fff}.player-top{height:64px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1)}.player-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;min-height:calc(100vh - 64px)}.video-side{padding:26px;min-width:0}.video-wrap{background:#000;aspect-ratio:16/9;border-radius:15px;overflow:hidden;position:relative;display:grid;place-items:center}.video-wrap video{width:100%;height:100%;object-fit:contain;background:#000}.watermark{position:absolute;z-index:5;font-size:10px;color:rgba(255,255,255,.36);padding:5px 7px;border-radius:6px;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.5);transition:all 1s}.drm-badge{position:absolute;left:12px;top:12px;z-index:4;background:rgba(7,15,28,.7);padding:6px 8px;border-radius:8px;font-size:9px;border:1px solid rgba(255,255,255,.13)}.player-info{padding:18px 2px}.player-info h2{font-size:20px;margin:0 0 7px}.player-info p{font-size:11px;color:#95a2b7;margin:0}.lesson-side{border-left:1px solid rgba(255,255,255,.1);background:#0c1627;overflow:auto}.lesson-head{padding:18px;border-bottom:1px solid rgba(255,255,255,.1)}.lesson-head h3{font-size:13px;margin:0}.lesson-list{display:grid}.lesson{padding:14px 16px;border:0;border-bottom:1px solid rgba(255,255,255,.07);background:transparent;color:#bbc6d9;text-align:left;display:grid;grid-template-columns:30px 1fr auto;gap:8px;align-items:start}.lesson:hover,.lesson.active{background:rgba(255,255,255,.07);color:#fff}.lesson.active{box-shadow:inset 3px 0 0 var(--gold)}.lesson-num{width:25px;height:25px;border:1px solid rgba(255,255,255,.17);border-radius:50%;display:grid;place-items:center;font-size:9px}.lesson b{font-size:11px;display:block}.lesson small{font-size:9px;color:#7f8da4}.not-connected{display:grid;place-items:center;text-align:center;padding:30px}.not-connected .lock{font-size:35px}.not-connected p{max-width:390px;color:#99a7bb;font-size:11px;line-height:1.7}.profile-box{display:grid;grid-template-columns:1fr 1fr;gap:18px}.profile-card{padding:20px}.stat-list{display:grid;gap:10px}.stat-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:9px;font-size:11px}.course-title-cell b{display:block}.course-title-cell small{color:var(--muted)}.badge-count{background:#eef1f6;color:#344158;border-radius:999px;padding:3px 7px;font-size:9px}.section-title{font-size:12px;margin:24px 0 12px;color:#4c586f}.notice{border:1px solid #f0dfb6;background:#fff9eb;border-radius:13px;padding:12px 14px;color:#76591f;font-size:11px;line-height:1.65}.toast{position:fixed;right:20px;bottom:20px;background:#111c30;color:#fff;padding:11px 14px;border-radius:11px;box-shadow:var(--shadow);font-size:11px;z-index:100;animation:toastin .2s ease}.toast.error{background:#8f2c2c}.toast.success{background:#176b4a}@keyframes toastin{from{transform:translateY(12px);opacity:0}to{transform:none;opacity:1}}
@media(max-width:1050px){.kpis{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.player-layout{grid-template-columns:1fr}.lesson-side{border-left:0;border-top:1px solid rgba(255,255,255,.1);max-height:450px}.login-visual{padding:36px}.hero-copy h2{font-size:38px}}
@media(max-width:800px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;width:250px;transition:.25s}.sidebar.open{left:0;box-shadow:20px 0 50px rgba(0,0,0,.3)}.mobile-menu{display:block}.topbar{padding:0 16px}.content{padding:18px}.page-head{align-items:flex-start;flex-direction:column}.cards{grid-template-columns:1fr}.login-page{grid-template-columns:1fr}.login-visual{display:none}.login-panel{min-height:100vh}.player-top .player-course{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-side{padding:12px}.form-grid,.profile-box{grid-template-columns:1fr}.span2{grid-column:auto}}
@media(max-width:520px){.kpis{grid-template-columns:1fr}.top-actions .pill{display:none}.content{padding:14px}.page-head h2{font-size:23px}.course-cover h3{font-size:18px}.toolbar>*{max-width:none!important;width:100%}.actions .btn{flex:1}.player-top{padding:0 12px}.video-wrap{border-radius:10px}.login-panel{padding:22px}}

/* ===== Public BLC LEGAL Academy Website v1.1 ===== */
.public-site{background:#fff;min-height:100vh}.public-container{width:min(1180px,calc(100% - 40px));margin:0 auto}.public-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.93);backdrop-filter:blur(18px);border-bottom:1px solid #edf0f4}.public-nav-wrap{height:76px;width:min(1240px,calc(100% - 40px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px}.public-brand{display:flex;align-items:center;gap:10px;background:none;border:0;text-align:left;color:var(--navy);padding:0}.public-brand-mark{width:42px;height:42px;border:1px solid #d6bb83;border-radius:11px;display:grid;place-items:center;font-weight:900;color:#9a7437;letter-spacing:.3px}.public-brand b{display:block;font-size:13px;letter-spacing:.65px}.public-brand small{display:block;font-size:9px;color:#8c96a7;margin-top:2px}.public-nav{display:flex;align-items:center;gap:26px}.public-nav-link{border:0;background:none;color:#5f697a;font-size:12px;font-weight:700;padding:28px 0;position:relative}.public-nav-link:hover,.public-nav-link.active{color:#0b1324}.public-nav-link.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--gold)}.public-actions{display:flex;align-items:center;gap:9px}.public-user{font-size:11px;color:#737d8e}.public-menu{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 10px}.public-mobile-nav{display:none}.public-hero{background:radial-gradient(circle at 77% 20%,#22375a 0,#101d34 29%,#07101e 72%);color:#fff;overflow:hidden;position:relative}.public-hero:after{content:"BLC";position:absolute;right:-35px;bottom:-155px;font-size:420px;font-weight:900;letter-spacing:-32px;color:rgba(255,255,255,.018);pointer-events:none}.hero-grid{min-height:650px;display:grid;grid-template-columns:1fr .92fr;gap:60px;align-items:center;position:relative;z-index:1}.public-eyebrow,.public-subhero span,.public-section-head>div>span,.section-kicker,.public-cta span{font-size:10px;letter-spacing:2px;font-weight:800;color:var(--gold2)}.public-hero-copy h1{font-size:58px;line-height:1.08;letter-spacing:-2px;margin:16px 0 20px}.public-hero-copy h1 span{color:#e9d09d}.public-hero-copy>p{font-size:14px;line-height:1.9;color:#b8c4d7;max-width:620px}.public-hero-actions{display:flex;gap:10px;margin-top:30px}.btn-lg{padding:13px 19px;font-size:12px}.btn-ghost-light{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff}.btn-ghost-light:hover{background:rgba(255,255,255,.11)}.public-trust-row{display:flex;gap:20px;flex-wrap:wrap;margin-top:30px;color:#aebbd0;font-size:10px}.hero-preview{position:relative;padding:28px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:24px;box-shadow:0 40px 100px rgba(0,0,0,.3);backdrop-filter:blur(15px)}.preview-top{display:flex;align-items:center;gap:8px;font-size:9px;color:#9cabc2;margin-bottom:12px}.preview-dot{width:7px;height:7px;border-radius:50%;background:var(--gold2)}.preview-secure{margin-left:auto;border:1px solid rgba(255,255,255,.13);padding:4px 7px;border-radius:999px}.preview-screen{display:grid;grid-template-columns:1fr 170px;background:#050a12;border-radius:12px;overflow:hidden;min-height:290px}.preview-video{display:grid;place-items:center;align-content:center;gap:12px;background:radial-gradient(circle at center,#1b2c47 0,#090f1a 66%);font-size:11px;color:#bac7da}.preview-play{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:rgba(189,149,84,.92);color:#fff;font-size:18px;padding-left:3px;box-shadow:0 10px 25px rgba(189,149,84,.25)}.preview-lessons{background:#0d1727;padding:16px;font-size:9px;color:#9ba8ba}.preview-lessons>b{display:block;color:#fff;margin-bottom:13px}.preview-lessons div{display:flex;justify-content:space-between;gap:10px;padding:11px 3px;border-bottom:1px solid rgba(255,255,255,.07)}.preview-lessons .active{color:#fff;border-left:2px solid var(--gold);padding-left:8px;background:rgba(255,255,255,.035)}.floating-card{position:absolute;background:#fff;color:#182034;border-radius:12px;padding:11px 14px;box-shadow:0 20px 45px rgba(0,0,0,.25);font-size:9px;min-width:145px}.floating-card b{display:block;font-size:10px}.floating-card span{display:block;color:#7d8798;margin-top:3px}.fc-one{left:-27px;bottom:-25px}.fc-two{right:-22px;top:-24px}.public-stats{border-bottom:1px solid #eef1f4;background:#fff}.public-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 0}.public-stat-grid div{padding:0 25px;border-right:1px solid #eceff3}.public-stat-grid div:first-child{padding-left:0}.public-stat-grid div:last-child{border-right:0}.public-stat-grid strong{font-size:18px;display:block}.public-stat-grid span{font-size:10px;color:#7a8494;display:block;margin-top:5px}.public-section{padding:90px 0}.public-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:34px}.public-section-head h2{font-size:34px;letter-spacing:-.8px;margin:7px 0}.public-section-head p{font-size:12px;color:#798394;margin:0;line-height:1.75}.public-section-head.centered{justify-content:center;text-align:center}.public-course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.public-course-card{border:1px solid #e8ebf0;border-radius:20px;overflow:hidden;box-shadow:0 15px 45px rgba(14,27,47,.055);background:#fff;transition:.2s}.public-course-card:hover{transform:translateY(-5px);box-shadow:0 22px 60px rgba(14,27,47,.1)}.public-course-cover{aspect-ratio:16/9;padding:20px;color:#fff;position:relative;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}.public-course-cover>span{position:absolute;top:15px;left:15px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);padding:5px 8px;border-radius:999px;font-size:9px}.course-monogram{position:absolute;right:-15px;top:-32px;font-size:105px;font-weight:900;letter-spacing:-9px;color:rgba(255,255,255,.04)}.public-course-cover h3{font-size:20px;margin:0;position:relative;max-width:90%}.public-course-cover p{font-size:10px;color:#c7d0df;margin:6px 0 0;position:relative}.public-course-body{padding:18px}.public-course-meta{display:flex;gap:14px;font-size:9px;color:#7d8796;margin-bottom:14px}.public-course-body>p{font-size:11px;line-height:1.75;color:#687284;min-height:58px}.public-course-price{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:16px;padding-top:15px;border-top:1px solid #eef1f4}.public-course-price small{font-size:8px;color:#969faf;display:block}.public-course-price strong{display:inline-block;font-size:19px;margin-top:2px}.public-course-price del{font-size:9px;color:#a0a8b5;margin-left:6px}.public-dark-section{background:#091321;color:#fff}.public-section-head.inverse p{color:#9ba8ba}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.feature-card{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);border-radius:17px;padding:23px}.feature-card i{font-style:normal;color:var(--gold2);font-size:10px}.feature-card h3{font-size:15px;margin:35px 0 9px}.feature-card p{font-size:10px;line-height:1.75;color:#9eabbd;margin:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps>div{position:relative;text-align:center;padding:18px 25px}.steps em{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:#f6f0e5;color:#946d31;font-weight:800;font-style:normal;margin:0 auto 16px}.steps h3{font-size:15px}.steps p{font-size:10px;color:#7e8796;line-height:1.75}.public-cta{background:linear-gradient(120deg,#0a1424,#172a48);color:#fff;padding:60px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta-inner h2{font-size:30px;margin:8px 0}.cta-inner p{font-size:11px;color:#a9b5c8}.cta-inner>div:last-child{display:flex;gap:10px}.public-footer{background:#050b14;color:#9eabba;padding-top:55px}.public-footer-grid{display:grid;grid-template-columns:1.6fr .6fr .7fr;gap:70px;padding-bottom:45px}.footer-brand{color:#fff;margin-bottom:17px}.public-footer p{font-size:10px;line-height:1.8;max-width:420px}.public-footer-grid>div:not(:first-child){display:grid;align-content:start;gap:10px}.public-footer-grid>div:not(:first-child)>b{color:#fff;font-size:11px;margin-bottom:5px}.public-footer button,.public-footer span{background:none;border:0;color:#8f9caf;text-align:left;padding:0;font-size:10px}.public-footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:18px 20px;text-align:center;font-size:9px;color:#657184}.public-subhero{background:linear-gradient(130deg,#0a1424,#182c4a);color:#fff;padding:88px 0}.public-subhero h1{font-size:45px;line-height:1.15;letter-spacing:-1.3px;margin:12px 0}.public-subhero p{max-width:650px;color:#b1bed0;font-size:12px;line-height:1.8}.course-filter-row{display:flex;gap:8px;margin-bottom:25px}.chip{border:1px solid #e2e6ec;background:#fff;color:#697486;border-radius:999px;padding:8px 12px;font-size:10px}.chip.active{background:var(--navy);border-color:var(--navy);color:#fff}.about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:85px;align-items:center}.about-grid h2{font-size:34px;line-height:1.2}.about-grid>div>p{font-size:12px;line-height:1.9;color:#717c8e}.about-points{display:grid;gap:16px;margin-top:30px}.about-points>div{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:start}.about-points b{color:#a47a39;font-size:11px;padding-top:3px}.about-points span{font-size:10px;color:#788294;line-height:1.65}.about-points strong{display:block;color:#152035;font-size:12px;margin-bottom:3px}.about-card{background:#0a1425;color:#fff;border-radius:22px;padding:42px;min-height:330px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.brand-big{position:absolute;font-size:180px;top:-35px;right:-20px;font-weight:900;letter-spacing:-14px;color:rgba(255,255,255,.035)}.about-card h3{font-size:18px;max-width:320px}.about-card p{color:#a9b6c9!important}.about-card hr{width:100%;border:0;border-top:1px solid rgba(255,255,255,.12);margin:17px 0}.about-card small{font-size:9px;line-height:1.7;color:#c6d0df}.faq-list{max-width:820px}.faq-list details{border-bottom:1px solid #e7eaf0;padding:20px 0}.faq-list summary{list-style:none;font-weight:800;font-size:13px;display:flex;justify-content:space-between;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:#a37a3b}.faq-list p{font-size:11px;line-height:1.8;color:#737d8e;max-width:720px}.auth-simple{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#eef1f6);display:grid;place-items:center;padding:30px}.auth-card{width:min(460px,100%);background:#fff;border:1px solid #e5e9ef;border-radius:22px;padding:34px;box-shadow:0 25px 70px rgba(11,24,45,.1)}.auth-brand{margin:18px 0 30px}.auth-card h1{font-size:26px;margin:0 0 6px}.auth-card>p{font-size:11px;color:#7c8697;margin:0 0 23px}.auth-back{border:0;background:none;padding:0;color:#7b8596;font-size:10px}.auth-alt{text-align:center;margin-top:15px;font-size:10px;color:#8a94a4}.auth-alt button{border:0;background:none;color:#9a7235;font-weight:800;padding:0}.public-modal-cover{color:#fff;border-radius:14px;padding:27px;min-height:165px;display:flex;flex-direction:column;justify-content:flex-end}.public-modal-cover>span{font-size:9px;color:#e5ca94}.public-modal-cover h2{margin:8px 0 2px}.public-modal-cover p{margin:0;color:#c3cedd;font-size:10px}.modal-course-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.modal-course-meta>div{background:#f6f8fa;border-radius:10px;padding:11px}.modal-course-meta small{display:block;color:#8a94a4;font-size:8px}.modal-course-meta b{display:block;font-size:11px;margin-top:3px}.public-episode-list{border:1px solid #e8ebef;border-radius:12px;overflow:hidden}.public-episode-list>div{display:flex;justify-content:space-between;gap:10px;padding:11px 13px;border-bottom:1px solid #edf0f3;font-size:10px}.public-episode-list>div:last-child{border-bottom:0}.public-episode-list b{color:#8791a1;font-weight:600}
@media(max-width:1000px){.public-nav{display:none}.public-menu{display:block}.public-mobile-nav.open{display:grid;padding:10px 20px 18px;background:#fff;border-top:1px solid var(--line)}.public-mobile-nav .public-nav-link{padding:10px 0;text-align:left}.public-mobile-nav .public-nav-link.active:after{display:none}.hero-grid{grid-template-columns:1fr;min-height:auto;padding:85px 0}.hero-preview{max-width:720px;margin:auto;width:100%}.public-course-grid{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:repeat(2,1fr)}.public-footer-grid{grid-template-columns:1fr 1fr}.public-footer-grid>div:first-child{grid-column:1/-1}.about-grid{gap:40px}.public-hero-copy h1{font-size:50px}}
@media(max-width:700px){.public-container,.public-nav-wrap{width:min(100% - 28px,1180px)}.public-nav-wrap{height:68px}.public-brand b{font-size:11px}.public-brand small{display:none}.public-actions>.btn-line,.public-user{display:none}.public-hero-copy h1{font-size:40px;letter-spacing:-1px}.public-hero-actions{flex-direction:column;align-items:stretch}.public-trust-row{gap:10px}.hero-preview{padding:13px}.preview-screen{grid-template-columns:1fr}.preview-lessons{display:none}.floating-card{display:none}.public-stat-grid{grid-template-columns:1fr 1fr;gap:20px}.public-stat-grid div{border:0;padding:0}.public-section{padding:65px 0}.public-section-head{align-items:flex-start;flex-direction:column}.public-section-head h2{font-size:28px}.public-course-grid,.feature-grid,.steps,.about-grid{grid-template-columns:1fr}.steps{gap:10px}.public-footer-grid{grid-template-columns:1fr;gap:30px}.public-footer-grid>div:first-child{grid-column:auto}.cta-inner{align-items:flex-start;flex-direction:column}.cta-inner>div:last-child{width:100%;flex-direction:column}.public-subhero{padding:65px 0}.public-subhero h1{font-size:35px}.modal-course-meta{grid-template-columns:1fr 1fr}.course-filter-row{overflow:auto}.auth-card{padding:25px}.login-box .auth-back{margin-bottom:15px}}

/* v1.2 — BLC logo, checkout, payment review and navigation */
.brand-button{width:100%;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
.brand-logo,.sidebar-logo,.public-brand-logo,.footer-logo,.auth-logo,.login-logo,.login-panel-logo,.bank-logo,.player-logo,.about-logo{object-fit:contain;display:block}
.sidebar-logo{width:64px;height:48px;flex:0 0 64px}
.public-brand-logo{width:68px;height:52px;flex:0 0 68px}
.footer-logo{width:82px;height:58px;flex:0 0 82px}
.auth-logo{width:82px;height:58px;flex:0 0 82px}
.login-logo{width:100px;height:72px;flex:0 0 100px}
.login-panel-logo{width:132px;height:92px;margin:12px 0 22px}
.about-logo{width:210px;height:150px;position:absolute;right:24px;top:20px;opacity:.92}
.player-logo{width:58px;height:40px;flex:0 0 58px}
.bank-logo{width:70px;height:50px;flex:0 0 70px}
.login-brand{align-items:center}
.public-brand{align-items:center}
.internal-site-link{width:100%;margin:0 0 12px;background:transparent!important;color:inherit!important;border-color:rgba(255,255,255,.13)!important}
.nav-btn{position:relative}
.nav-badge{margin-left:auto;min-width:20px;height:20px;border-radius:999px;display:grid;place-items:center;background:#c79a53;color:#0b1324;font-size:9px;font-weight:900;padding:0 5px}
.top-site-btn{white-space:nowrap}
.course-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}

.checkout-page{min-height:100vh;background:#f5f6f8;color:#162033}
.checkout-main{padding:48px 0 80px}
.checkout-container{width:min(1100px,calc(100% - 40px));margin:auto}
.checkout-back{margin-bottom:24px}
.checkout-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(330px,.72fr);gap:28px;align-items:start}
.checkout-title>span{font-size:10px;letter-spacing:2.8px;color:#a67b37;font-weight:900}
.checkout-title h1{font-size:38px;line-height:1.1;margin:9px 0 12px;letter-spacing:-.8px}
.checkout-title p{font-size:12px;line-height:1.8;color:#758093;max-width:680px;margin:0 0 22px}
.payment-course-card,.bank-card{background:#fff;border:1px solid #e4e8ee;border-radius:20px;box-shadow:0 18px 55px rgba(10,25,49,.07);overflow:hidden}
.payment-course-cover{padding:30px;color:#fff;min-height:220px;display:flex;flex-direction:column;justify-content:flex-end;position:relative}
.payment-course-cover>span{position:absolute;top:22px;left:24px;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.12);font-size:9px}
.payment-course-cover h2{font-size:27px;margin:0 0 7px;max-width:92%}
.payment-course-cover p{font-size:11px;color:#ccd5e2;margin:0}
.payment-price-row,.payment-detail-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;border-top:1px solid #edf0f3;font-size:11px}
.payment-price-row strong{font-size:26px;color:#a77935}
.payment-detail-row span{color:#7a8494}.payment-detail-row b{text-align:right}
.bank-card{padding:24px;overflow:visible;position:sticky;top:92px}
.bank-head{display:flex;align-items:center;gap:12px;padding-bottom:17px;border-bottom:1px solid #ebedf1;margin-bottom:17px}
.bank-head small{display:block;color:#8993a2;font-size:8px;margin-bottom:3px}.bank-head b{font-size:13px}
.bank-info{position:relative;padding:12px 0;border-bottom:1px solid #eef0f3}.bank-info small{display:block;color:#8b94a2;font-size:8px;margin-bottom:4px}.bank-info strong{display:block;font-size:13px}.bank-info .account-number{font-size:22px;letter-spacing:.7px;color:#172238}.copy-btn{position:absolute;right:0;bottom:13px;border:0;background:#f3eee6;color:#956f36;border-radius:8px;padding:7px 9px;font-size:9px;cursor:pointer}
.bank-amount{padding:20px;border-radius:14px;background:#0c1728;color:#fff;margin:18px 0}.bank-amount small,.bank-amount span{display:block;color:#9eabba;font-size:8px}.bank-amount strong{display:block;font-size:29px;color:#efca88;margin:5px 0 4px}
.slip-upload{display:grid;place-items:center;text-align:center;border:1.5px dashed #cfd5df;border-radius:14px;padding:18px;background:#fafbfc;cursor:pointer}.slip-upload input{display:none}.slip-upload span{font-size:11px;font-weight:800;color:#172238}.slip-upload small{font-size:9px;color:#8b94a3;margin-top:5px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.payment-confirm{display:grid;grid-template-columns:17px 1fr;gap:8px;align-items:start;margin:14px 0 17px}.payment-confirm label{font-size:9px;line-height:1.6;color:#6f7989}
.payment-pending{border:1px solid #ead7ae;background:#fff9ec;border-radius:12px;padding:12px;margin:0 0 16px}.payment-pending b{font-size:11px;color:#8b651f}.payment-pending p,.payment-pending small{font-size:9px;line-height:1.6;color:#7b756a;margin:4px 0 0;display:block}

.payment-review-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:18px}
.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.review-grid>div{background:#f6f8fa;border-radius:10px;padding:12px}.review-grid small{display:block;color:#8791a1;font-size:8px;margin-bottom:4px}.review-grid b{display:block;font-size:11px}
#slip-preview{border-radius:13px;overflow:hidden;background:#0a111c;min-height:250px;display:grid;place-items:center}
.slip-image{display:block;max-width:100%;max-height:520px;object-fit:contain;margin:auto}.slip-pdf{width:100%;height:520px;border:0;background:#fff}.slip-preview-placeholder{color:#95a2b4;font-size:11px;padding:50px 20px;text-align:center}
.reject-notice{margin-top:14px;background:#fff2f2;border-color:#efcccc!important;color:#904646!important}
.student-order-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #edf0f3}.student-order-row:last-child{border-bottom:0}.student-order-row>div:first-child{display:grid;gap:3px}.student-order-row small{font-size:9px;color:#828c9b}.student-order-row>div:last-child{display:flex;align-items:center;gap:8px}.reject-text{color:#b44d4d!important}.order-status-panel{margin-top:20px}
.large-empty{grid-column:1/-1;min-height:260px;display:grid;place-items:center;text-align:center;align-content:center;gap:10px;border:1px dashed #d9dee6;border-radius:18px;background:#fafbfc}.large-empty p{margin:0;color:#8590a0;font-size:10px}
.player-brand,.player-top-actions{display:flex;align-items:center;gap:10px}.player-brand b{max-width:460px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

@media(max-width:900px){.checkout-grid{grid-template-columns:1fr}.bank-card{position:static}.about-logo{width:165px;height:115px}.course-actions{justify-content:flex-start}.top-site-btn{display:none}}
@media(max-width:700px){.public-brand-logo{width:52px;height:40px}.public-brand span b{font-size:10px}.sidebar-logo{width:52px;height:38px}.login-logo{width:84px;height:60px}.checkout-main{padding-top:28px}.checkout-container{width:min(100% - 28px,1100px)}.checkout-title h1{font-size:31px}.payment-course-cover{min-height:190px;padding:23px}.payment-course-cover h2{font-size:23px}.bank-card{padding:19px}.review-grid{grid-template-columns:1fr}.student-order-row{align-items:flex-start;flex-direction:column}.student-order-row>div:last-child{width:100%;justify-content:space-between}.player-top-actions .small{display:none}.player-brand b{max-width:180px}.player-logo{display:none}}

/* v1.3 Supabase boot/setup states */
.boot-screen{min-height:100vh;display:grid;place-content:center;text-align:center;background:#081222;color:#fff;padding:32px}.boot-screen img{width:150px;max-height:100px;object-fit:contain;margin:0 auto 24px}.boot-screen h2{margin:0 0 8px}.boot-screen p{color:#aab5c8}.setup-card{max-width:620px}.setup-card .notice{margin:18px 0;line-height:1.8}.setup-card>img{width:160px;max-height:100px;object-fit:contain;margin-bottom:18px}
