@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--green:#08a765;--green-dark:#087b4d;--ink:#171b1a;--muted:#737d78;--line:#e6ebe8;--bg:#f5f8f6;--white:#fff;--radius:18px;--shadow:0 12px 36px rgba(22,49,36,.07)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.topbar{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,5vw,72px);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px}.brand img{width:46px;height:46px;object-fit:contain;border-radius:10px;background:#111}.brand span{display:flex;flex-direction:column;line-height:1.2}.brand b{font:800 17px Manrope,sans-serif;letter-spacing:-.5px}.brand small{font-size:10px;letter-spacing:2px;color:var(--green);font-weight:700;margin-top:5px}.topnav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:700}.topnav a{color:#505a55}.topnav a:hover{color:var(--green)}.topnav .nav-logout{padding:9px 15px;border:1px solid var(--line);border-radius:10px}.menu-toggle{display:none;background:none;border:0;font-size:24px}.page-wrap{max-width:1200px;width:calc(100% - 40px);margin:34px auto 65px;min-height:calc(100vh - 190px)}.footer{display:flex;justify-content:space-between;padding:22px clamp(20px,5vw,72px);border-top:1px solid var(--line);background:#fff;color:var(--muted);font-size:12px}.eyebrow{color:var(--green);font-weight:800;font-size:11px;letter-spacing:1.6px;text-transform:uppercase}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 25px}.page-heading h1,.hero h1{font:800 clamp(27px,4vw,38px)/1.2 Manrope,sans-serif;letter-spacing:-1.4px;margin:7px 0}.page-heading p{margin:7px 0 0;color:var(--muted)}.hero{background:#111b16;color:#fff;border-radius:24px;padding:clamp(28px,5vw,54px);position:relative;overflow:hidden;margin-bottom:28px}.hero:after{content:'';position:absolute;width:320px;height:320px;border:60px solid rgba(8,167,101,.18);border-radius:50%;right:-90px;top:-140px}.hero h1{max-width:640px}.hero p{color:#c5d1ca;max-width:590px;margin:12px 0 22px}.hero .highlight{color:#42e49b}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:11px;background:var(--green);color:#fff;padding:11px 17px;font-weight:700;font-size:13px;cursor:pointer;transition:.2s}.btn:hover{background:var(--green-dark);transform:translateY(-1px)}.btn-light{background:#fff;color:#16251d}.btn-outline{background:transparent;border:1px solid var(--line);color:var(--ink)}.btn-small{padding:8px 12px;font-size:12px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:23px;box-shadow:var(--shadow)}.card h2,.card h3{font-family:Manrope,sans-serif;margin:0 0 9px;letter-spacing:-.4px}.card h2{font-size:19px}.card h3{font-size:16px}.muted{color:var(--muted)}.stat{display:flex;align-items:center;gap:15px}.stat-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#e8f8ef;color:var(--green-dark);font-size:22px}.stat strong{font:800 26px Manrope,sans-serif;display:block}.stat span{font-size:12px;color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:center;margin:30px 0 15px;gap:15px}.section-head h2{font:800 20px Manrope,sans-serif;margin:0}.course-card{display:flex;flex-direction:column;gap:12px}.course-top{display:flex;align-items:center;justify-content:space-between}.pill{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:800;background:#e7f8ef;color:#087b4d}.pill.gray{background:#eef1ef;color:#66716b}.course-card p{font-size:13px;color:var(--muted);margin:0}.course-card .btn{align-self:flex-start;margin-top:auto}.course-symbol{width:44px;height:44px;border-radius:13px;background:#eaf8f0;color:var(--green-dark);display:grid;place-items:center;font-size:20px}.auth-layout{min-height:70vh;display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.auth-aside{background:#111b16;color:white;padding:clamp(28px,5vw,60px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-aside:after{content:'';position:absolute;width:290px;height:290px;border:55px solid rgba(8,167,101,.24);border-radius:50%;bottom:-145px;right:-90px}.auth-aside img{width:84px;height:84px;object-fit:contain;background:#050505;border-radius:18px}.auth-aside h1{font:800 clamp(28px,4vw,42px)/1.16 Manrope,sans-serif;letter-spacing:-1.5px;max-width:400px}.auth-aside p{color:#c1ccc5;max-width:380px}.auth-form{padding:clamp(25px,5vw,60px);display:flex;flex-direction:column;justify-content:center}.auth-form h2{font:800 26px Manrope,sans-serif;margin:0}.auth-form>p{margin:5px 0 25px;color:var(--muted)}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field label{font-size:12px;font-weight:700;color:#3c4640}.field input,.field select,.field textarea,.search-input{width:100%;padding:12px 13px;border:1px solid #dfe6e1;border-radius:10px;background:#fff;outline:none;color:var(--ink)}.field input:focus,.field select:focus,.field textarea:focus,.search-input:focus{border-color:var(--green);box-shadow:0 0 0 3px #08a76518}.field small{font-size:11px;color:var(--muted)}.alert{padding:13px 16px;border-radius:12px;margin-bottom:18px;font-size:13px}.alert.success{background:#e6f8ed;color:#086b43}.alert.error{background:#fff0ee;color:#a33327}.alert.info{background:#eaf3ff;color:#225e9e}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:#fff}.table{width:100%;border-collapse:collapse;min-width:620px}.table th,.table td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);font-size:12px;vertical-align:middle}.table th{background:#f7faf8;color:#66716b;font-weight:800}.table tr:last-child td{border-bottom:0}.empty{padding:32px;text-align:center;color:var(--muted)}.form-card{max-width:800px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-grid .full{grid-column:1/-1}.result-panel{text-align:center;padding:40px 24px}.result-panel .result-icon{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;background:#e7f8ef;color:var(--green);font-size:30px}.result-panel h2{font:800 25px Manrope,sans-serif;margin:8px 0}.pdf-frame{width:100%;height:72vh;border:1px solid var(--line);border-radius:12px;background:#fff}.notice{background:#f0f8f3;border:1px solid #d9eee1;border-radius:12px;padding:15px;color:#315c44;font-size:13px}.admin-links{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.inline-form input,.inline-form select{padding:8px 10px;border:1px solid var(--line);border-radius:8px;max-width:220px}.small-text{font-size:12px}.divider{height:1px;background:var(--line);margin:20px 0}
@media(max-width:800px){.topbar{height:68px}.menu-toggle{display:block}.topnav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;padding:18px 22px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:16px}.topnav.open{display:flex}.page-wrap{width:calc(100% - 28px);margin:22px auto 45px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-layout{grid-template-columns:1fr}.auth-aside{min-height:230px;padding:27px}.auth-aside img{width:58px;height:58px}.auth-aside h1{font-size:28px;margin:24px 0 8px}.auth-aside p{margin:0}.auth-aside .aside-bottom{display:none}.footer{gap:8px;flex-wrap:wrap}.page-heading{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.grid,.grid-2,.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.card{padding:18px}.hero{border-radius:18px;padding:25px 21px}.hero h1{font-size:29px}.brand img{width:40px;height:40px}.brand b{font-size:15px}.page-heading h1{font-size:28px}.stat strong{font-size:23px}.footer{font-size:11px}.auth-form{padding:25px 21px}}
