@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,Arial,sans-serif;color:#17283a;background:#f4f7fa;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.53}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,DM Sans,sans-serif;letter-spacing:-.035em}h1{font-size:clamp(25px,3vw,33px);line-height:1.25;margin-bottom:9px}h2{font-size:21px}h3{font-size:16px}.muted{color:#7b8b9c}.small{font-size:13px}.tiny{font-size:11px}.micro,.eyebrow{font-size:10px;letter-spacing:.14em;font-weight:800;color:#85a9bb}.eyebrow.blue{color:#2f88a4}.shell{min-height:100vh;display:flex}.sidebar{width:262px;flex:none;background:#081b2e;color:#e9f4fa;display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh;z-index:20}.brand{height:104px;padding:22px 19px;display:flex;align-items:center;gap:11px;border-bottom:1px solid #183249}.brand img{width:53px;height:53px;border-radius:50%;object-fit:contain}.brand strong{display:block;font-family:Manrope;font-size:14px;line-height:1.35}.brand span{display:block;color:#8faabf;font-size:10px;margin-top:5px}.brand .iconbtn{display:none}.side-section{padding:27px 23px 12px;font-size:10px;letter-spacing:.2em;color:#68859e;font-weight:800}.sidebar nav{padding:0 11px;display:flex;flex-direction:column;gap:5px;overflow-y:auto}.navitem{border:0;background:transparent;color:#a7bbcc;padding:13px 14px;display:flex;align-items:center;gap:13px;width:100%;border-radius:10px;text-align:left;font-size:13px;font-weight:600}.navitem:hover{background:#15354b;color:#fff}.navitem.active{background:#1b4256;color:#fff}.navitem.active svg{color:#77cbdf}.navdot{width:5px;height:5px;border-radius:50%;background:#79d6ea;margin-left:auto}.sidebottom{margin-top:auto;padding:20px 12px;border-top:1px solid #183249}.side-profile{display:flex;align-items:center;gap:10px;padding:8px 10px 14px}.avatar{height:37px;width:37px;border-radius:50%;background:#367c99;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}.side-profile strong{display:block;font-size:12px}.side-profile span{display:block;color:#91a8b9;font-size:11px;margin-top:3px}.logout{font-size:12px}.main{flex:1;min-width:0}.topbar{height:76px;background:#fff;border-bottom:1px solid #e6edf2;display:flex;align-items:center;justify-content:space-between;padding:0 38px}.top-left,.top-right{display:flex;align-items:center;gap:15px}.top-left>.iconbtn{display:none}.bread{display:flex;align-items:center;gap:8px;color:#9eacba;font-size:10px;letter-spacing:.11em;font-weight:700}.bread b{color:#445c70}.role-pill{background:#eff6f8;color:#326b81;border-radius:30px;display:flex;align-items:center;gap:6px;padding:8px 12px;font-size:11px;font-weight:800}.smallav{width:34px;height:34px;font-size:12px}.content{padding:38px;max-width:1530px;margin:auto}.page-heading{margin-bottom:27px}.page-heading .eyebrow{display:block;margin-bottom:10px}.page-heading p{font-size:13px;margin:0}.split{display:flex;align-items:center;justify-content:space-between;gap:16px}.banner{position:relative;background:linear-gradient(110deg,#0b2135,#12384e 68%,#16637c);color:#fff;padding:32px 35px;border-radius:16px;min-height:166px;overflow:hidden;margin-bottom:23px}.banner>*:not(.banner-shape){position:relative;z-index:2}.banner h2{font-size:25px;margin:13px 0 9px}.banner p{color:#c0d6e1;font-size:13px;max-width:570px;margin:0;line-height:1.8}.banner .eyebrow{color:#88d0e2}.banner-shape{position:absolute;right:-40px;bottom:-180px;height:400px;width:400px;border:55px solid #ffffff0a;border-radius:50%;box-shadow:0 0 0 70px #ffffff06,0 0 0 135px #ffffff03}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:34px}.stat{background:#fff;border:1px solid #e7edf2;border-radius:13px;padding:20px;display:flex;align-items:center;gap:14px;box-shadow:0 3px 12px #102a3e04}.stat-icon{color:#2b86a0;background:#eaf5f8;height:46px;width:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex:none}.stat strong{display:block;font-size:25px;margin:2px 0}.stat .muted{display:block}.sectiontop{display:flex;justify-content:space-between;align-items:center;margin:0 0 17px}.sectiontop h2{margin:0}.textbtn{border:0;background:transparent;color:#2d87a2;font-size:12px;font-weight:800;display:inline-flex;align-items:center;gap:6px;padding:8px}.textbtn:hover{text-decoration:underline}.coursegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.coursecard{background:#fff;border:1px solid #e6edf2;overflow:hidden;border-radius:14px;box-shadow:0 5px 16px #172e4207}.courseart{height:134px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;color:#d8f5ff}.courseart:before,.courseart:after{content:"";position:absolute;border:1px solid #ffffff22;border-radius:50%;width:280px;height:280px;left:-60px;top:-90px}.courseart:after{width:220px;height:220px;left:auto;right:-90px;top:30px}.courseart1{background:linear-gradient(125deg,#103b51,#1d7891)}.courseart2{background:linear-gradient(125deg,#122c4b,#2c537f)}.courseart3{background:linear-gradient(125deg,#173749,#376b77)}.courseartmark{background:#ffffff16;border:1px solid #ffffff28;border-radius:19px;padding:18px;z-index:1}.courseart>span{position:absolute;right:20px;top:14px;font-family:Manrope;font-weight:800;font-size:40px;opacity:.1}.coursebody{padding:23px}.coursebody .micro{color:#3191a8}.coursebody h3{font-size:17px;margin:8px 0}.coursebody p{font-size:12px;line-height:1.65;color:#7b8b9b;min-height:42px}.progressline{height:6px;border-radius:20px;background:#e9eff3;margin:20px 0 9px;overflow:hidden}.progressline span{display:block;height:100%;background:#399ab3;border-radius:20px}.coursemeta{display:flex;justify-content:space-between;color:#7b8b9b;font-size:11px;margin-bottom:18px}.btn{border:0;border-radius:9px;padding:12px 17px;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.btn.primary{background:#217c9b;color:#fff}.btn.primary:hover{background:#146481}.btn.outline{background:#fff;border:1px solid #d7e4e9;color:#376c82}.btn.outline:hover{background:#f0f8fa}.btn.danger{background:#fff0ee;color:#bc4a3d}.btn.full{width:100%}.btn.smallbtn{padding:8px 10px}.surface{background:#fff;border:1px solid #e5edf2;border-radius:14px;box-shadow:0 4px 15px #19314705}.pad,.tablepad{padding:25px}.tablepad{overflow:hidden}.back{border:0;background:transparent;display:flex;gap:8px;align-items:center;color:#3d839d;font-weight:800;font-size:12px;padding:0;margin-bottom:25px}.lessons{display:grid;gap:12px}.lessonrow{border:1px solid #e7eef2;background:#fff;border-radius:13px;text-align:left;padding:19px 22px;display:flex;align-items:center;gap:18px;width:100%}.lessonrow:hover:not(:disabled){border-color:#83c4d6;box-shadow:0 6px 17px #14384a0d}.lessonrow.locked{opacity:.62}.lessonnumber{height:46px;width:46px;background:#eaf4f8;color:#3c8caa;border-radius:11px;display:flex;align-items:center;justify-content:center;flex:none}.lessonnumber.done{background:#eaf8f1;color:#259b6e}.lessontext{flex:1;min-width:0}.lessontext h3{margin:5px 0;font-size:15px}.lessontext p{color:#8d9ba8;font-size:12px;margin:0}.lessonright{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.lessonright>span:first-child{display:flex;align-items:center;gap:5px;font-size:11px;color:#8b9bac}.status{display:inline-flex;align-items:center;justify-content:center;border-radius:20px;padding:5px 10px;font-size:10px;font-weight:800;white-space:nowrap}.status.approved{background:#e7f7ee;color:#259363}.status.available{background:#e7f3f9;color:#3586a7}.status.unavailable{background:#edf0f3;color:#8491a0}.lessonlayout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:start}.lessonmain{overflow:hidden}.videoarea{background:#071827;aspect-ratio:16/9}.videoarea iframe,.videoarea video{width:100%;height:100%;border:0}.lessonmain .pad{padding:26px}.lessonmain p{font-size:13px;line-height:1.65}.lessonmain .btn{margin-top:15px}.lessonaside{padding:23px}.lessonaside h3{margin-bottom:24px}.step{display:flex;gap:11px;margin:20px 0}.stepicon{background:#eaf5f8;border-radius:10px;padding:10px;color:#328fa8;align-self:flex-start}.step b{display:block;font-size:12px}.step span{display:block;color:#8997a4;font-size:11px;margin-top:6px}.step+.step{border-top:1px solid #edf1f4;padding-top:18px}.successline{display:flex;align-items:center;gap:7px;color:#239267;font-size:12px}.info{background:#f1f7f9;color:#557487;border-radius:10px;padding:12px;display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.5;margin:13px 0}.question{border:0;border-bottom:1px solid #e9eff2;margin:22px 0;padding:0 0 20px}.question legend{font-size:14px;font-weight:800;margin-bottom:14px}.option{display:flex;align-items:center;gap:10px;padding:12px 15px;border:1px solid #e3ebef;border-radius:9px;margin:8px 0;font-size:12px;cursor:pointer}.option.chosen{background:#ecf7fa;border-color:#65b4cc}.option input{accent-color:#277f9b}.examresult{text-align:center;padding:35px 12px}.resultnum{font-size:58px;font-weight:800}.examresult.pass .resultnum{color:#2b9871}.examresult.fail .resultnum{color:#b98734}.rowbuttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.examresult .rowbuttons{justify-content:center}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:19px;gap:15px}.ticket{border:1px solid #e5edf1;border-radius:12px;padding:20px;margin:15px 0}.tickethead{display:flex;justify-content:space-between;gap:15px}.tickethead h3{margin:6px 0 16px}.thread{display:flex;flex-direction:column;gap:9px}.bubble{padding:12px 15px;background:#f1f5f7;border-radius:11px;align-self:flex-start;max-width:85%}.bubble.own{background:#eaf6fa;align-self:flex-end}.bubble p{font-size:12px;line-height:1.6;margin:6px 0 0}.reply{display:flex;gap:8px;margin:14px 0}.reply input{flex:1;min-width:0}.privacy{background:#eaf5f8;color:#356f86;padding:16px;border-radius:10px;display:flex;align-items:center;gap:15px;font-size:12px}.privacy p{margin:5px 0 0}.prayer{border-bottom:1px solid #ebf0f2;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0}.prayer p{font-size:13px;line-height:1.7;margin:8px 0 0}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:18px}.bankinfo{display:flex;flex-direction:column;gap:6px;background:#f3f7f9;padding:20px;border-radius:10px;margin:18px 0}.bankinfo span{font-size:10px;letter-spacing:.1em;color:#8396a2}.bankinfo strong{font-size:14px;margin-bottom:11px}.offering{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #edf1f4}.offering>div{flex:1}.offering b,.offering span{display:block;font-size:11px}.offering>div span{color:#8c9aa7;margin-top:5px}.certificate{display:flex;align-items:center;gap:15px;padding:15px;border-bottom:1px solid #ebf1f4}.certificate>div{flex:1}.certificate h3{margin-bottom:4px}.certificate p{font-size:12px;margin:0}.empty{padding:65px 20px;text-align:center;color:#92a3af}.empty svg{color:#5f9aaf}.empty h3{color:#314c5d;margin:14px 0 8px}.empty p{font-size:12px;margin:0;line-height:1.6}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{color:#8b9bad;font-size:10px;letter-spacing:.08em;font-weight:800;background:#f5f8fa}th,td{padding:15px 13px;border-bottom:1px solid #edf1f3}td .iconbtn{color:#4c7f93}.searchbox{display:flex;align-items:center;gap:8px;background:#f5f8fa;padding:5px 9px;border:1px solid #e5ebef;border-radius:8px}.searchbox input{border:0;background:transparent;min-width:0;max-width:150px}.managecourse{margin-bottom:19px;padding:24px}.managetop{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-bottom:18px;border-bottom:1px solid #ebf0f4}.managetop h3{font-size:17px;margin:7px 0}.managetop p{margin:0}.manageclass{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #edf1f3}.manageclassdetail{flex:1}.manageclassdetail b{display:block;font-size:12px}.manageclassdetail span{display:block;margin-top:5px;color:#8c9daa;font-size:11px}.settingsform{max-width:650px}.settingsform h3{margin:0 0 25px}.settingsform hr{border:0;border-top:1px solid #edf1f3;margin:25px 0}.field{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:#3d5163;margin:0 0 19px}.field input,.field select,.field textarea,.reply input{width:100%;border:1px solid #dbe5eb;background:#fff;color:#23394b;padding:12px 13px;border-radius:9px;outline:none;font-size:13px}.field input:focus,.field textarea:focus,.field select:focus,.reply input:focus{border-color:#3998b4;box-shadow:0 0 0 3px #368da719}.field textarea{min-height:90px;resize:vertical}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checklabel{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:20px}.checklabel input{accent-color:#288ba7}.iconbtn{background:transparent;border:0;color:#718da0;display:inline-flex;align-items:center;justify-content:center;padding:7px;border-radius:8px}.iconbtn:hover{background:#edf4f7}.modalback{position:fixed;top:0;right:0;bottom:0;left:0;background:#061523a8;z-index:40;display:flex;align-items:center;justify-content:center;padding:16px}.modal{background:#fff;border-radius:16px;width:min(100%,590px);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 90px #0003}.modalhead{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e6edf0;padding:18px 23px}.modalhead h3{margin:0;font-size:17px}.modalbody{overflow:auto;padding:24px}.modalbody p{line-height:1.65}.questioneditor{border-bottom:1px solid #edf1f3;padding:13px 0}.questioneditor b,.questioneditor span{display:block;margin-bottom:6px;font-size:12px}.toast{position:fixed;right:25px;bottom:25px;background:#0d3746;color:#fff;padding:14px 18px;border-radius:10px;box-shadow:0 6px 25px #0b2b3b29;display:flex;align-items:center;gap:10px;font-size:12px;z-index:100}.certpreview{text-align:center;border:8px double #315f73;padding:24px 15px;margin-bottom:20px;background:#fafcfd}.certpreview img{width:65px;border-radius:50%;margin-bottom:10px}.certpreview>span{font-size:10px;letter-spacing:.25em;color:#3a869a}.certpreview h1{color:#20728d;font-size:28px}.certpreview h2{font-size:20px}.certpreview p{font-size:12px}.certpreview small{color:#7b8f9c}.loginpage{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:#fff}.loginvisual{background:radial-gradient(circle at 85% 18%,#14546a 0,transparent 38%),linear-gradient(140deg,#071624,#0c293d);color:#fff;padding:75px 10%;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.loginvisual>img{width:85px;border-radius:50%}.loginvisual h1{font-size:clamp(34px,4.8vw,60px);line-height:1.12;letter-spacing:-.05em;margin:18px 0}.loginvisual p{color:#a8c2d2;font-size:15px;max-width:420px;line-height:1.7}.login-footer{font-size:11px;color:#7897a8}.loginformwrap{display:flex;align-items:center;justify-content:center;padding:35px}.loginform{width:min(100%,430px)}.loginlogo{display:none}.loginform h2{font-size:31px;margin:11px 0}.loginform>p{margin-bottom:33px;font-size:13px}.loginform form{display:grid;gap:6px}.loginform form .btn{margin-top:6px}.demobox{background:#f3f8fa;padding:18px;border-radius:11px;margin:26px 0 15px;font-size:12px;color:#416477}.demobox p{line-height:1.7;margin:8px 0}.demobox small{font-size:10px;color:#8799a6}.error{color:#b44545;font-size:12px;background:#fff2f2;border-radius:8px;padding:9px}.sidebaroverlay{display:none}@media (max-width:1200px){.stats,.coursegrid{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.sidebar{position:fixed;left:0;top:0;transform:translate(-100%);transition:transform .25s ease}.sidebar.open{transform:translate(0)}.sidebaroverlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#05121fa3;z-index:19}.brand .iconbtn{display:inline-flex;margin-left:auto}.top-left>.iconbtn{display:inline-flex}.topbar{height:65px;padding:0 22px}.content{padding:25px 22px}.lessonlayout,.twocol{grid-template-columns:1fr}}@media (max-width:650px){.loginpage{grid-template-columns:1fr}.loginvisual{display:none}.loginformwrap{min-height:100vh;padding:30px 23px}.loginlogo{display:block;width:70px;border-radius:50%;margin-bottom:22px}.content{padding:22px 15px}.topbar{padding:0 14px}.bread{font-size:9px;letter-spacing:0}.role-pill{font-size:0;padding:8px}.role-pill svg{width:16px}.page-heading{margin-bottom:20px}.split{align-items:flex-start;flex-direction:column}.banner{padding:26px;min-height:190px}.banner h2{font-size:22px}.stats{gap:9px}.stat{padding:13px;gap:9px}.stat-icon{width:37px;height:37px}.stat strong{font-size:21px}.stat .small{font-size:10px}.stat .tiny{font-size:9px}.coursegrid{grid-template-columns:1fr;gap:13px}.courseart{height:112px}.coursebody{padding:18px}.lessonrow{padding:15px 12px;gap:10px}.lessonnumber{width:38px;height:38px}.lessontext h3{font-size:13px}.lessontext p{font-size:11px}.lessonright{display:none}.pad,.tablepad,.lessonmain .pad{padding:17px}.managetop{align-items:flex-start;flex-direction:column}.manageclass{flex-wrap:wrap}.manageclass .rowbuttons{margin-left:50px}.ticket{padding:13px}.toolbar{align-items:flex-start;flex-direction:column}.certificate{flex-wrap:wrap}.certificate .btn{width:100%}.formrow{grid-template-columns:1fr}.modalbody{padding:17px}.modalhead{padding:14px 17px}}@media print{body *{visibility:hidden!important}#cert-print,#cert-print *{visibility:visible!important}#cert-print{position:fixed;left:0;top:0;width:100%;height:auto;border:12px double #315f73;margin:0;padding:60px 30px}.modalback{background:#fff}}.portal-real{min-height:100vh;background:#f3f7fa;color:#143047}.portal-header{min-height:84px;background:#081c2f;color:#fff;display:flex;align-items:center;padding:12px clamp(16px,4vw,48px);gap:14px;flex-wrap:wrap}.portal-brand{display:flex;align-items:center;gap:12px;margin-right:auto}.portal-brand img{width:48px;height:48px;object-fit:contain}.portal-brand div{display:flex;flex-direction:column;gap:4px}.portal-brand span{font-size:12px;opacity:.72}.portal-layout{display:grid;grid-template-columns:240px minmax(0,1fr)}.portal-side{min-height:calc(100vh - 84px);background:#102a40;padding:20px 10px;display:flex;flex-direction:column;gap:5px}.portal-link{border:0;background:transparent;color:#d0e2ed;text-align:left;border-radius:10px;padding:12px 14px;display:flex;align-items:center;gap:10px;cursor:pointer;font:inherit}.portal-link:hover,.portal-link.active{background:#24506a;color:#fff}.portal-content{padding:clamp(16px,3vw,38px);max-width:1200px;width:100%;margin:0 auto}.portal-content .banner{margin-bottom:25px}.portal-content h2{margin:22px 0}.portal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.portal-tile{border:1px solid #d9e6ed;text-align:left;background:#fff;padding:25px;border-radius:16px;min-height:170px;display:flex;flex-direction:column;align-items:start;gap:14px;color:#16354b;font:inherit}.portal-tile span,.portal-tile small{font-size:13px;color:#687e8c}.portal-tile svg{color:#087c9c}.portal-tile:is(button){cursor:pointer}.portal-tile:is(button):hover{border-color:#48a6bb;box-shadow:0 5px 18px #0a2b431b}.portal-notice{margin-top:25px;display:flex;gap:14px;background:#e4f2f7;border:1px solid #b2d4e3;border-radius:14px;padding:18px;color:#164663}.portal-notice p{margin:7px 0 0;font-size:14px}.portal-header .btn.ghost{color:#fff;border-color:#49687c}@media (max-width:760px){.portal-layout{display:block}.portal-side{display:none;min-height:0}.portal-side.open{display:flex}.portal-brand strong{font-size:13px}.portal-brand span{font-size:11px}.portal-content{padding:16px}}.academic{max-width:1100px}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0 18px}.toolbar h2,.toolbar h3{margin:0;flex:1}.toolbar .btn{white-space:nowrap}.btn.light,.btn.ghost.light{color:#0d3a54;border:1px solid #d1e1e9;background:#fff}.btn.mini{padding:8px 10px;background:#e9f3f8;color:#13546e;border:1px solid #caddE7;border-radius:9px}.btn.danger{color:#a23939;background:#fff1f1;border-color:#f1cccc}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.school-card{min-height:220px}.school-card .actions{margin-top:auto}.edit-panel{background:#fff;border:1px solid #d4e2e9;border-radius:15px;padding:24px;margin:16px 0 22px;box-shadow:0 5px 16px #031a2e0a}.edit-panel.nested{background:#f5f9fb;padding:20px}.edit-panel h3{margin:0 0 16px}.edit-panel .field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;font-size:13px;font-weight:600;color:#34536a}.edit-panel input:not([type=checkbox]),.edit-panel textarea,.edit-panel select{width:100%;padding:11px;border:1px solid #cbdce6;border-radius:9px;background:#fff;color:#1c3345}.edit-panel textarea{min-height:70px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}.checkline{display:flex;align-items:center;gap:9px;margin-top:10px}.lesson-list{display:flex;flex-direction:column;gap:12px}.lesson-row{display:flex;gap:12px;align-items:center;border-radius:13px;border:1px solid #d8e4eb;background:#fff;padding:16px}.lesson-icon{background:#e9f5fa;color:#0e829e;padding:12px;border-radius:12px}.lesson-meta{flex:1;display:flex;flex-direction:column;gap:5px;min-width:0}.lesson-meta strong{font-size:14px}.lesson-meta span{font-size:12px;color:#667d8e}.lesson-detail{display:flex;flex-direction:column;gap:12px}.video-block{background:#071b2b;border-radius:14px;overflow:hidden}.video-block iframe,.video-block video{width:100%;aspect-ratio:16/9;display:block;border:0;background:#071b2b}.video-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;color:#fff;flex-wrap:wrap}.exam-panel{border:1px solid #d8e4eb;border-radius:14px;background:#fff;padding:20px}.exam-panel h3{display:flex;gap:8px;align-items:center}.question-preview{padding:16px 0;border:0;border-bottom:1px solid #e0e9ef;margin:0 0 10px;min-width:0}.question-preview p{font-size:13px;margin:6px 0 0 16px}.correct-answer{color:#078056;font-weight:700}.answer-option{display:flex;align-items:center;gap:10px;padding:10px;margin:7px 0;border:1px solid #dbe7ed;border-radius:9px;cursor:pointer}.success-note{background:#e4f7ed;color:#125c43;border:1px solid #a9d9c0;border-radius:11px;padding:14px;margin:14px 0}.success-note p{margin:5px 0}.portal-content>.error{margin:12px 0}.portal-content>.success-note{margin:12px 0}@media (max-width:700px){.form-grid{grid-template-columns:1fr}.edit-panel{padding:15px}.lesson-row{flex-wrap:wrap}.lesson-row .lesson-meta{flex-basis:calc(100% - 70px)}.video-footer{align-items:stretch}.video-footer .btn{width:100%}}.portal-header{gap:12px}.header-controls{display:flex;align-items:center;gap:10px;margin-left:auto}.portal-header .header-controls .btn{opacity:1!important;visibility:visible!important;min-height:42px;border:1px solid #87c8db!important;color:#fff!important;background:#225a76!important;box-shadow:0 2px 5px #0002}.portal-header .header-controls .header-logout{background:#fff!important;color:#073044!important;border-color:#fff!important}.portal-header .header-controls .btn:hover{filter:brightness(1.13);transform:translateY(-2px)}.btn,.portal-link,.portal-tile,.lesson-row,.tutor-ticket,.portal-side,.portal-content{transition:transform .22s ease,background-color .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease,opacity .22s ease}.btn:active{transform:scale(.97)}.portal-tile:hover{transform:translateY(-3px);box-shadow:0 9px 22px #142c4215}.portal-link:hover{transform:translate(3px)}.page-animated{animation:phase3Enter .3s ease-out both}@keyframes phase3Enter{0%{opacity:.2;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}.tutoring{display:grid;gap:14px}.tutor-compose,.tutor-thread{max-width:850px}.tutor-thread{background:#fff;border:1px solid #d8e6ef;padding:20px;border-radius:14px}.tutor-list{display:grid;gap:10px}.tutor-ticket{width:100%;text-align:left;border:1px solid #d9e5ee;border-radius:13px;background:#fff;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#123048}.tutor-ticket:hover{transform:translateY(-2px);border-color:#3a91ad;box-shadow:0 6px 18px #12293a10}.ticket-main{display:flex;flex-direction:column;gap:6px}.ticket-main span,.message-meta span{font-size:12px;color:#647e91}.ticket-filters{display:flex;gap:9px;flex-wrap:wrap}.ticket-state{border-radius:20px;padding:5px 10px;background:#e1f4eb;color:#176742;font-size:12px;font-weight:700}.ticket-state.closed{background:#e8eef3;color:#536a7d}.tutor-messages{display:grid;gap:12px;margin:18px 0}.tutor-message{background:#eef4f8;border-radius:12px;padding:14px;max-width:90%}.tutor-message.self{background:#e0f2f8;justify-self:end}.message-meta{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap;font-size:12px}.tutor-message p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;margin:10px 0 0}.tutor-thread .edit-panel{margin-top:20px}@media (max-width:760px){.portal-header{flex-wrap:wrap;align-items:center;gap:10px;padding:14px 15px!important;height:auto!important}.portal-brand{min-width:0;flex:1 1 100%}.portal-brand strong{font-size:13px}.header-controls{width:100%;justify-content:flex-start;margin:0}.portal-header .header-controls .btn{flex:1!important;min-height:46px!important;padding:11px!important;font-size:14px!important}.portal-content{padding-top:14px}.tutor-ticket{align-items:flex-start}.tutor-message{max-width:100%}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.phase4-section{display:grid;gap:12px}.phase4-section .edit-panel{max-width:100%;margin:6px 0}.phase4-bank{padding:22px;background:linear-gradient(130deg,#0a263b,#155571);border-radius:16px;color:#fff}.phase4-bank p{margin:9px 0;color:#e3f1f6}.phase4-list{display:grid;gap:10px}.phase4-list h3{margin:15px 0 0}.phase4-split,.phase4-row{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.phase4-split small{color:#6d8593}.phase4-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.phase4-row{background:#fff;border:1px solid #d3e3ed;border-radius:13px;padding:17px}.phase4-row p,.phase4-row small{color:#5d798b;font-size:12px}.phase4-row small{overflow-wrap:anywhere}.phase4-list .edit-panel{max-width:900px}.phase4-section .field{min-width:0}#cert-print{display:none}@media print{body *{visibility:hidden!important}#cert-print,#cert-print *{visibility:visible!important}#cert-print{display:flex!important;position:fixed;top:0;right:0;bottom:0;left:0;background:#fff;align-items:center;justify-content:center;flex-direction:column;border:10px double #1b5670;padding:45px;text-align:center;color:#12364c;gap:12px}#cert-print img{width:85px}#cert-print h1{font-size:32px}#cert-print h2{font-size:26px}#cert-print p{font-size:18px}#cert-print small{margin-top:20px}}@media (max-width:600px){.phase4-row .btn{width:100%}.phase4-row{align-items:stretch}.phase4-section .edit-panel{padding:16px}}.phase5-section{display:grid;gap:12px}.phase5-search{display:flex;flex-direction:column;gap:8px;max-width:460px;font-size:13px;font-weight:700}.phase5-search input{padding:13px;border-radius:10px;border:1px solid #bdd5e1;background:#fff;width:100%}.phase5-list{display:grid;gap:10px}.phase5-user{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #d5e5ed;border-radius:13px;background:#fff;padding:16px;transition:transform .22s ease,box-shadow .22s ease}.phase5-user:hover{transform:translateY(-2px);box-shadow:0 7px 18px #153c4b12}.phase5-userinfo{display:grid;gap:5px;min-width:0}.phase5-userinfo strong{font-size:15px}.phase5-userinfo span,.phase5-userinfo small{font-size:12px;color:#597588;overflow-wrap:anywhere}.phase5-user .actions{margin-top:0}.phase5-section .edit-panel{max-width:100%}@media (max-width:760px){.phase5-user{align-items:stretch;flex-direction:column}.phase5-user .actions{width:100%}.phase5-user .actions .btn{flex:1;min-width:110px;white-space:normal}}@media (prefers-reduced-motion:reduce){.phase5-user{transition:none}}.portal-real{min-height:100vh}.portal-layout{grid-template-columns:240px minmax(0,1fr)}.portal-header{min-height:77px}.portal-side{position:sticky;top:0;height:calc(100vh - 77px);min-height:0;overflow:hidden;padding:10px;z-index:20}.side-top-actions{padding:5px 5px 12px}.side-menu-button{width:100%;justify-content:flex-start;background:#215d7a;color:#fff;border:1px solid #6fb1ce}.side-menu-button:hover{background:#2b7596}.side-links{flex:1;overflow:auto;display:flex;flex-direction:column;gap:4px}.side-bottom-actions{border-top:1px solid #416179;padding:14px 5px 6px;margin-top:auto}.side-logout-button{width:100%;background:#fff;color:#0b2c45;justify-content:flex-start}.side-logout-button:hover{background:#d9f3ff}.portal-link,.side-menu-button,.side-logout-button{transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.portal-link:hover,.side-menu-button:hover,.side-logout-button:hover{transform:translate(2px)}.mobile-menu-toggle,.side-overlay{display:none}.password-field{display:flex;align-items:center;position:relative;width:100%}.password-field input{width:100%;padding-right:48px}.password-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:transparent;border:0;padding:9px;color:#235976;display:flex;align-items:center;justify-content:center}.password-eye:hover{color:#0083b0}.personal-read{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:8px 24px}.personal-read p{overflow-wrap:anywhere}.portal-content{animation:phase6-arrive .24s ease-out}@keyframes phase6-arrive{0%{opacity:.75;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (max-width:760px){.portal-layout{display:block}.portal-side{position:fixed;inset:0 auto 0 0;width:min(310px,85vw);height:100dvh;transform:translate(-105%);transition:transform .28s ease;z-index:42;box-shadow:10px 0 30px #051a2c40}.portal-side.open{transform:translate(0)}.side-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#001c2c80;z-index:41;border:0}.mobile-menu-toggle{display:flex;align-items:center;gap:9px;position:sticky;top:0;z-index:30;border:0;background:#175675;color:#fff;border-radius:0 0 10px;padding:12px 17px;font-weight:700}.portal-content{padding-top:15px}}@media (prefers-reduced-motion:reduce){.portal-content{animation:none}.portal-side,.portal-link,.side-menu-button,.side-logout-button{transition:none}}.portal-link-title{flex:1;min-width:0}.pending-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;margin-left:auto;border-radius:999px;background:#bce8f5;color:#08334a;font-size:12px;font-weight:800;line-height:1;flex-shrink:0;box-shadow:0 0 0 1px #6cbdd4}.portal-link.active .pending-badge{background:#fff;color:#12364a}@media (max-width:650px){.pending-badge{min-width:26px;height:26px}}@media (min-width:761px){.portal-layout{transition:grid-template-columns .28s ease}.sidebar-is-collapsed .portal-layout{grid-template-columns:72px minmax(0,1fr)}.sidebar-is-collapsed .portal-side{padding-inline:8px}.sidebar-is-collapsed .portal-link{justify-content:center;padding:13px 8px}.sidebar-is-collapsed .portal-link-title,.sidebar-is-collapsed .side-button-title{display:none}.sidebar-is-collapsed .side-menu-button,.sidebar-is-collapsed .side-logout-button{justify-content:center;font-size:0}.sidebar-is-collapsed .pending-badge{position:absolute;margin-left:35px;margin-top:-23px;min-width:18px;height:18px;font-size:10px}.sidebar-is-collapsed .portal-link{position:relative}.sidebar-is-collapsed .portal-link:hover{transform:none}}.bank-choose{max-width:520px;margin:14px 0!important;color:#e8f4fa!important}.bank-choose select{color:#163448;background:#fff}.phase4-bank .bank-choose span{color:#d5eef7}.phase4-row .btn{flex-shrink:0}@media (max-width:760px){.side-menu-button{min-height:48px}.portal-side.open{width:min(310px,85vw)}}@media (prefers-reduced-motion:reduce){.portal-layout{transition:none}}.entry-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0}.entry-tabs .btn{display:inline-flex;align-items:center;gap:8px}.entries-panel{max-width:100%!important}.entry-filters{display:grid;grid-template-columns:minmax(220px,2fr) repeat(2,minmax(125px,1fr));gap:12px;align-items:end}.entries-scroll{overflow-x:auto;max-width:100%;border:1px solid #d7e5ed;border-radius:12px}.entries-table{width:100%;border-collapse:collapse;min-width:900px;text-align:left;font-size:13px}.entries-table th{background:#10324a;color:#fff;padding:13px 10px;white-space:nowrap}.entries-table td{padding:12px 10px;border-bottom:1px solid #e1eaf0;vertical-align:middle}.entries-table tbody tr:hover{background:#f1f8fc}.entries-table td small{display:block;margin-top:4px;color:#597489;font-size:11px}.entry-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.entry-status{border-radius:20px;background:#e7f2f8;padding:5px 8px;color:#164b65;font-size:11px;font-weight:700}@media (max-width:740px){.entry-filters{grid-template-columns:1fr}.entry-tabs .btn{flex:1;justify-content:center;white-space:normal}}@media (prefers-reduced-motion:reduce){.entries-table tbody tr{transition:none}}.side-collapse-arrow{margin-left:auto;flex-shrink:0;transition:transform .2s ease}.sidebar-is-collapsed .side-collapse-arrow{display:none}@media (prefers-reduced-motion:reduce){.side-collapse-arrow{transition:none}}
