:root{
    --sk-primary:#0F8A5F;
    --sk-primary-dark:#075E45;
    --sk-gold:#D9A441;
    --sk-cream:#FFF8EA;
    --sk-bg:#F6FBF7;
    --sk-card:#FFFFFF;
    --sk-text:#172B2A;
    --sk-muted:#667978;
    --sk-border:rgba(15,138,95,.14);
    --sk-shadow:0 22px 70px rgba(15,94,69,.10);
    --sk-radius:26px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--sk-bg);color:var(--sk-text)}
a{color:inherit}
.sk-public-body{background:linear-gradient(135deg,#F7FCF8 0%,#FFF8EA 55%,#F3FBF8 100%)}
.sk-container{width:min(1180px,calc(100% - 36px));margin:0 auto}
.sk-public-nav{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.78);backdrop-filter:blur(18px);border-bottom:1px solid var(--sk-border)}
.sk-public-nav-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.sk-brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.sk-brand-logo{width:46px;height:46px;border-radius:16px;background:linear-gradient(135deg,var(--sk-primary),var(--sk-primary-dark));color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:0 14px 30px rgba(15,138,95,.22)}
.sk-brand strong{display:block;font-size:18px;color:var(--sk-primary-dark);letter-spacing:-.02em}
.sk-brand small{display:block;color:var(--sk-muted);font-weight:700;font-size:12px;margin-top:1px}
.sk-public-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sk-btn{border:0;border-radius:16px;padding:13px 18px;font-weight:850;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:.2s ease;font-size:14px}
.sk-btn:hover{transform:translateY(-1px)}
.sk-btn-primary{background:var(--sk-primary);color:#fff;box-shadow:0 16px 34px rgba(15,138,95,.22)}
.sk-btn-gold{background:var(--sk-gold);color:#2E240A;box-shadow:0 16px 34px rgba(217,164,65,.22)}
.sk-btn-soft{background:#fff;color:var(--sk-primary-dark);border:1px solid var(--sk-border)}
.sk-btn-ghost{background:rgba(15,138,95,.08);color:var(--sk-primary-dark)}
.sk-hero{padding:74px 0 52px;position:relative;overflow:hidden}
.sk-hero:before{content:"";position:absolute;inset:40px auto auto -120px;width:360px;height:360px;background:rgba(15,138,95,.10);border-radius:999px;filter:blur(20px)}
.sk-hero:after{content:"";position:absolute;right:-120px;top:80px;width:420px;height:420px;background:rgba(217,164,65,.12);border-radius:999px;filter:blur(24px)}
.sk-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}
.sk-eyebrow{margin:0 0 12px;color:var(--sk-primary);font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.13em}
.sk-hero h1{font-size:clamp(42px,6vw,72px);line-height:.98;letter-spacing:-.06em;margin:0 0 22px;color:var(--sk-primary-dark)}
.sk-hero p{font-size:18px;line-height:1.75;color:var(--sk-muted);margin:0 0 28px;max-width:720px}
.sk-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.sk-trust-row{display:flex;gap:10px;flex-wrap:wrap;color:var(--sk-muted);font-weight:750;font-size:13px}
.sk-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;background:#fff;border:1px solid var(--sk-border)}
.sk-hero-card{background:rgba(255,255,255,.82);backdrop-filter:blur(16px);border:1px solid var(--sk-border);box-shadow:var(--sk-shadow);border-radius:34px;padding:22px;position:relative}
.sk-dashboard-mock{border-radius:28px;background:linear-gradient(180deg,#fff,#F8FFFB);padding:22px;border:1px solid var(--sk-border)}
.sk-mock-header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}
.sk-mock-header h3{margin:0;color:var(--sk-primary-dark);font-size:22px;letter-spacing:-.03em}
.sk-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;white-space:nowrap}
.sk-badge-soft{background:rgba(15,138,95,.09);color:var(--sk-primary-dark)}
.sk-badge-gold{background:#FFF1C7;color:#7A5708}
.sk-progress{height:12px;background:#E8F2ED;border-radius:999px;overflow:hidden;margin:10px 0 18px}
.sk-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--sk-primary),#35B883);border-radius:999px}
.sk-mock-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.sk-mini-card{background:#fff;border:1px solid var(--sk-border);border-radius:20px;padding:16px;box-shadow:0 12px 34px rgba(15,94,69,.06)}
.sk-mini-card strong{display:block;color:var(--sk-primary-dark);font-size:18px;margin-bottom:5px}
.sk-mini-card small{color:var(--sk-muted);font-weight:700}
.sk-section{padding:58px 0}
.sk-section-title{max-width:760px;margin-bottom:26px}
.sk-section-title h2{font-size:clamp(30px,4vw,46px);line-height:1.08;letter-spacing:-.04em;color:var(--sk-primary-dark);margin:0 0 12px}
.sk-section-title p{margin:0;color:var(--sk-muted);font-size:17px;line-height:1.65}
.sk-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.sk-feature-card{background:#fff;border:1px solid var(--sk-border);border-radius:var(--sk-radius);padding:24px;box-shadow:0 18px 52px rgba(15,94,69,.07)}
.sk-feature-card .icon{font-size:28px;margin-bottom:14px}
.sk-feature-card h3{margin:0 0 8px;color:var(--sk-primary-dark);font-size:20px;letter-spacing:-.02em}
.sk-feature-card p{margin:0;color:var(--sk-muted);line-height:1.65}
.sk-footer{padding:36px 0;color:var(--sk-muted);font-weight:700;text-align:center}
.sk-auth-wrap{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:linear-gradient(135deg,#F5FCF8,#FFF8EA)}
.sk-auth-panel{padding:44px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.sk-auth-panel:before{content:"";position:absolute;width:360px;height:360px;border-radius:999px;background:rgba(15,138,95,.12);left:-120px;top:-100px;filter:blur(16px)}
.sk-auth-copy{position:relative;z-index:1;max-width:650px}
.sk-auth-copy h1{font-size:clamp(38px,5vw,64px);line-height:1;letter-spacing:-.06em;color:var(--sk-primary-dark);margin:22px 0 18px}
.sk-auth-copy p{color:var(--sk-muted);font-size:18px;line-height:1.7;margin:0}
.sk-auth-card-wrap{display:flex;align-items:center;justify-content:center;padding:28px}
.sk-auth-card{width:min(460px,100%);background:#fff;border:1px solid var(--sk-border);border-radius:32px;padding:30px;box-shadow:var(--sk-shadow)}
.sk-auth-card h2{margin:0 0 8px;color:var(--sk-primary-dark);font-size:30px;letter-spacing:-.04em}
.sk-auth-card p{margin:0 0 22px;color:var(--sk-muted);line-height:1.55}
.sk-form-group{margin-bottom:15px}
.sk-form-group label{display:block;font-weight:850;margin-bottom:7px;color:#24413F;font-size:14px}
.sk-input{width:100%;border:1px solid rgba(15,94,69,.16);border-radius:16px;padding:14px 15px;font:inherit;background:#FBFEFC;color:var(--sk-text);outline:none;transition:.2s ease}
.sk-input:focus{border-color:var(--sk-primary);box-shadow:0 0 0 4px rgba(15,138,95,.10);background:#fff}
.sk-form-note{font-size:13px;color:var(--sk-muted);line-height:1.55;margin-top:12px;text-align:center}
.sk-alert{border-radius:18px;padding:14px 16px;margin-bottom:16px;font-weight:800;line-height:1.5}
.sk-alert-success{background:#EAF8F1;color:#075E45;border:1px solid rgba(15,138,95,.18)}
.sk-alert-error{background:#FFF0F0;color:#A72C2C;border:1px solid rgba(167,44,44,.16)}
.sk-app{display:grid;grid-template-columns:280px 1fr;min-height:100vh;background:var(--sk-bg)}
.sk-sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid var(--sk-border);padding:22px;display:flex;flex-direction:column;gap:18px;z-index:20}
.sk-nav{display:flex;flex-direction:column;gap:7px}
.sk-nav a{display:flex;align-items:center;gap:10px;padding:12px 13px;border-radius:16px;text-decoration:none;color:#496261;font-weight:820;transition:.2s ease}
.sk-nav a:hover,.sk-nav a.active{background:rgba(15,138,95,.10);color:var(--sk-primary-dark)}
.sk-sidebar-card{margin-top:auto;background:linear-gradient(135deg,#0F8A5F,#075E45);color:#fff;border-radius:24px;padding:18px;box-shadow:0 18px 42px rgba(15,94,69,.18)}
.sk-sidebar-card strong{display:block;margin-bottom:8px}
.sk-sidebar-card p{margin:0;color:rgba(255,255,255,.82);font-size:13px;line-height:1.55}
.sk-main{padding:24px;min-width:0}
.sk-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;background:rgba(255,255,255,.72);backdrop-filter:blur(16px);border:1px solid var(--sk-border);border-radius:28px;padding:18px 20px;box-shadow:0 16px 42px rgba(15,94,69,.06)}
.sk-topbar h1{margin:0;color:var(--sk-primary-dark);letter-spacing:-.04em;font-size:30px}
.sk-menu-btn{display:none;border:0;background:rgba(15,138,95,.1);color:var(--sk-primary-dark);border-radius:14px;width:42px;height:42px;font-size:22px;font-weight:900}
.sk-user-pill{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--sk-border);padding:10px 12px;border-radius:999px;font-weight:850;color:var(--sk-primary-dark)}
.sk-user-pill a{color:#B34C2D;text-decoration:none;font-size:13px}
.sk-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}
.sk-stat-card{background:#fff;border:1px solid var(--sk-border);border-radius:24px;padding:20px;box-shadow:0 16px 44px rgba(15,94,69,.06)}
.sk-stat-card small{display:block;color:var(--sk-muted);font-weight:850;margin-bottom:9px}
.sk-stat-card strong{font-size:34px;color:var(--sk-primary-dark);letter-spacing:-.04em}
.sk-content-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.sk-card{background:#fff;border:1px solid var(--sk-border);border-radius:26px;padding:22px;box-shadow:0 18px 52px rgba(15,94,69,.06)}
.sk-card h2,.sk-card h3{margin:0 0 12px;color:var(--sk-primary-dark);letter-spacing:-.03em}.sk-card p{color:var(--sk-muted);line-height:1.65}.sk-action-list{display:grid;gap:10px}.sk-action-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--sk-border);background:#FBFEFC;border-radius:18px;padding:14px;text-decoration:none}.sk-action-item strong{color:var(--sk-primary-dark)}.sk-action-item small{display:block;color:var(--sk-muted);font-weight:700;margin-top:3px}
.sk-table{width:100%;border-collapse:separate;border-spacing:0 10px}.sk-table th{text-align:left;color:var(--sk-muted);font-size:13px;padding:0 12px}.sk-table td{background:#FBFEFC;border-top:1px solid var(--sk-border);border-bottom:1px solid var(--sk-border);padding:14px 12px;font-weight:720}.sk-table td:first-child{border-left:1px solid var(--sk-border);border-radius:16px 0 0 16px}.sk-table td:last-child{border-right:1px solid var(--sk-border);border-radius:0 16px 16px 0}
@media(max-width:980px){.sk-hero-grid,.sk-auth-wrap,.sk-content-grid{grid-template-columns:1fr}.sk-feature-grid,.sk-stats-grid{grid-template-columns:repeat(2,1fr)}.sk-auth-panel{padding:30px}.sk-public-links .hide-mobile{display:none}.sk-app{grid-template-columns:1fr}.sk-sidebar{position:fixed;left:-310px;transition:.25s ease;width:280px}.sk-sidebar.open{left:0}.sk-menu-btn{display:inline-grid;place-items:center}.sk-main{padding:16px}.sk-topbar{align-items:flex-start}.sk-user-pill{display:none}}
@media(max-width:620px){.sk-container{width:min(100% - 24px,1180px)}.sk-hero{padding:42px 0}.sk-hero h1{font-size:42px}.sk-mock-grid,.sk-feature-grid,.sk-stats-grid{grid-template-columns:1fr}.sk-public-nav-inner{height:auto;padding:14px 0}.sk-public-links{justify-content:flex-end}.sk-auth-card{padding:24px;border-radius:26px}.sk-auth-card-wrap{padding:18px}.sk-topbar h1{font-size:24px}}

/* Step 4: Parent student management */
.sk-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.sk-form-stack{display:grid;gap:14px;margin-top:18px}
.sk-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.sk-muted-inline,.sk-muted-text{color:var(--sk-muted);font-weight:700;font-size:13px}.sk-muted-text{line-height:1.6}
.sk-empty-state{display:grid;place-items:center;text-align:center;gap:8px;padding:28px;border:1px dashed var(--sk-border);border-radius:24px;background:#FBFEFC}.sk-empty-state div{font-size:36px}.sk-empty-state strong{color:var(--sk-primary-dark);font-size:18px}.sk-empty-state p{margin:0 0 8px;color:var(--sk-muted)}
.sk-child-list{display:grid;gap:10px}.sk-child-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;text-decoration:none;background:#FBFEFC;border:1px solid var(--sk-border);border-radius:20px;padding:13px}.sk-child-row strong{display:block;color:var(--sk-primary-dark)}.sk-child-row small{display:block;color:var(--sk-muted);font-weight:760;margin-top:3px;text-transform:capitalize}
.sk-avatar-soft{width:42px;height:42px;border-radius:16px;background:linear-gradient(135deg,rgba(15,138,95,.12),rgba(217,164,65,.20));color:var(--sk-primary-dark);display:inline-grid;place-items:center;font-weight:950;border:1px solid var(--sk-border)}.sk-avatar-lg{width:58px;height:58px;border-radius:20px;font-size:24px}.sk-avatar-xl{width:76px;height:76px;border-radius:26px;font-size:34px}
.sk-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sk-student-card{border:1px solid var(--sk-border);border-radius:24px;background:#FBFEFC;padding:18px;display:grid;gap:14px}.sk-student-top{display:flex;align-items:center;gap:14px}.sk-student-top h3,.sk-student-top h2{margin:0;color:var(--sk-primary-dark);letter-spacing:-.03em}.sk-student-top p{margin:4px 0 0;color:var(--sk-muted);font-weight:760;text-transform:capitalize}.sk-chip-row{display:flex;gap:8px;flex-wrap:wrap;text-transform:capitalize}
.sk-login-box{border:1px solid var(--sk-border);border-radius:24px;background:linear-gradient(135deg,#FBFEFC,#FFF8EA);padding:16px}.sk-login-box p{margin:8px 0 0;color:var(--sk-muted);font-size:13px}.sk-checkbox-line{display:flex!important;align-items:center;gap:10px;margin:0!important;font-weight:900!important;color:var(--sk-primary-dark)!important}.sk-checkbox-line input{width:18px;height:18px;accent-color:var(--sk-primary)}.sk-student-login-fields{margin-top:14px}
.sk-big-meter{display:grid;gap:2px;margin:16px 0}.sk-big-meter strong{font-size:44px;color:var(--sk-primary-dark);letter-spacing:-.05em}.sk-big-meter span{color:var(--sk-muted);font-weight:850}
.sk-profile-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(135deg,#fff,#F2FBF6);border:1px solid var(--sk-border);border-radius:30px;padding:22px;margin-bottom:20px;box-shadow:0 18px 52px rgba(15,94,69,.06)}
.sk-path-list{display:grid;gap:10px;margin-top:14px}.sk-path-list div{display:grid;grid-template-columns:auto 1fr;column-gap:12px;row-gap:2px;align-items:center;background:#FBFEFC;border:1px solid var(--sk-border);border-radius:18px;padding:13px}.sk-path-list span{grid-row:1/3;width:34px;height:34px;border-radius:13px;display:grid;place-items:center;background:rgba(15,138,95,.10);color:var(--sk-primary-dark);font-weight:950}.sk-path-list strong{color:var(--sk-primary-dark)}.sk-path-list small{color:var(--sk-muted);font-weight:760}.sk-path-list.compact div{padding:11px}.sk-path-list.compact span{width:30px;height:30px;border-radius:11px}
@media(max-width:980px){.sk-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sk-card-head,.sk-profile-hero{flex-direction:column;align-items:stretch}.sk-card-head .sk-btn,.sk-profile-hero .sk-btn{width:100%}}
@media(max-width:620px){.sk-form-row,.sk-profile-grid{grid-template-columns:1fr}.sk-student-top{align-items:flex-start}.sk-avatar-xl{width:62px;height:62px;border-radius:22px;font-size:28px}}

/* Step 5: Syllabus + Student Learning Explorer */
.mt-20{margin-top:20px}
.sk-info-panel{background:#FBFEFC;border:1px solid var(--sk-border);border-radius:20px;padding:16px;color:var(--sk-muted);line-height:1.8;margin:18px 0}.sk-info-panel strong{color:var(--sk-primary-dark)}
.sk-filter-row{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin:14px 0 18px}.sk-filter-card{grid-template-columns:1fr auto;margin-bottom:18px}.sk-topic-table-wrap{overflow:auto}.sk-form-row.single{grid-template-columns:1fr 1fr}
.sk-hero-card-mini{margin-bottom:18px;background:linear-gradient(135deg,#fff,#F2FBF6)}.sk-hero-card-mini h2{font-size:clamp(26px,3vw,38px);letter-spacing:-.05em}.sk-hero-card-mini p{max-width:820px}
.sk-year-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.sk-year-card{background:#fff;border:1px solid var(--sk-border);border-radius:26px;padding:20px;text-decoration:none;box-shadow:0 18px 52px rgba(15,94,69,.06);display:grid;gap:10px;transition:.2s ease;min-height:210px}.sk-year-card:hover{transform:translateY(-3px);box-shadow:0 24px 68px rgba(15,94,69,.10)}.sk-year-card.featured{background:linear-gradient(135deg,#0F8A5F,#075E45);color:#fff;border-color:transparent}.sk-year-card.featured h3,.sk-year-card.featured strong,.sk-year-card.featured p{color:#fff}.sk-year-card h3{margin:6px 0 0;color:var(--sk-primary-dark);font-size:22px;letter-spacing:-.04em}.sk-year-card p{margin:0;color:var(--sk-muted);font-weight:780}.sk-year-pill{display:inline-flex;align-items:center;width:max-content;padding:7px 11px;border-radius:999px;background:#FFF8EA;color:#8A650F;font-weight:950;font-size:13px}.sk-year-card.featured .sk-year-pill{background:rgba(255,255,255,.18);color:#fff}.sk-progress-track{height:9px;border-radius:999px;background:rgba(15,138,95,.10);overflow:hidden}.sk-progress-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--sk-primary),var(--sk-gold))}.sk-year-card.featured .sk-progress-track{background:rgba(255,255,255,.20)}.sk-year-card.featured .sk-progress-track span{background:#fff}
.sk-focus-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.sk-focus-card{background:#fff;border:1px solid var(--sk-border);border-radius:26px;padding:20px;text-decoration:none;box-shadow:0 18px 52px rgba(15,94,69,.06);display:grid;gap:10px;transition:.2s ease;min-height:220px}.sk-focus-card:hover{transform:translateY(-3px);box-shadow:0 24px 68px rgba(15,94,69,.10)}.sk-focus-card>span{font-size:34px}.sk-focus-card h3{margin:0;color:var(--sk-primary-dark);font-size:22px;letter-spacing:-.04em}.sk-focus-card p{margin:0;color:var(--sk-muted);line-height:1.55;font-weight:720}.sk-focus-card strong{color:var(--sk-primary-dark)}.sk-focus-card.gold{background:linear-gradient(135deg,#FFF8EA,#fff)}.sk-focus-card.featured{background:linear-gradient(135deg,#0F8A5F,#075E45);color:#fff;border-color:transparent}.sk-focus-card.featured h3,.sk-focus-card.featured p,.sk-focus-card.featured strong{color:#fff}
.sk-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sk-topic-card{background:#fff;border:1px solid var(--sk-border);border-radius:24px;padding:18px;text-decoration:none;box-shadow:0 18px 52px rgba(15,94,69,.06);display:grid;gap:12px;transition:.2s ease}.sk-topic-card:hover{transform:translateY(-3px);box-shadow:0 24px 68px rgba(15,94,69,.10)}.sk-topic-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.sk-subject-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,rgba(15,138,95,.12),rgba(217,164,65,.20));border:1px solid var(--sk-border)}.sk-topic-card h3{margin:0;color:var(--sk-primary-dark);letter-spacing:-.035em}.sk-topic-card p{margin:0;color:var(--sk-muted);font-weight:760;text-transform:capitalize}.sk-mini-meta{display:flex;gap:7px;flex-wrap:wrap}.sk-mini-meta span{font-size:12px;font-weight:900;color:var(--sk-muted);background:#FBFEFC;border:1px solid var(--sk-border);border-radius:999px;padding:6px 9px}.sk-topic-card strong{color:var(--sk-primary-dark)}
.sk-topic-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#fff,#F2FBF6);border:1px solid var(--sk-border);border-radius:30px;padding:24px;margin-bottom:20px;box-shadow:0 18px 52px rgba(15,94,69,.06)}.sk-topic-hero h2{margin:0 0 10px;color:var(--sk-primary-dark);font-size:clamp(30px,4vw,48px);letter-spacing:-.06em}.sk-topic-hero p{margin:0 0 14px;color:var(--sk-muted);line-height:1.65;max-width:760px}
@media(max-width:1100px){.sk-year-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sk-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sk-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.sk-year-grid,.sk-focus-grid,.sk-topic-grid{grid-template-columns:1fr}.sk-filter-row,.sk-filter-card,.sk-form-row.single{grid-template-columns:1fr}.sk-topic-hero{flex-direction:column}.sk-topic-hero .sk-btn{width:100%}}

/* Step 6: Lesson + Question Bank + Quiz */
.sk-topic-actions,.sk-result-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.sk-btn.disabled{opacity:.55;pointer-events:none}.compact-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.sk-options-wrap{display:grid;gap:0}.sk-lesson-reader{max-width:980px;margin:0 auto;display:grid;gap:16px}.sk-lesson-block{background:#fff;border:1px solid var(--sk-border);border-radius:30px;padding:26px;box-shadow:0 18px 52px rgba(15,94,69,.06)}.sk-lesson-block h3{margin:0 0 12px;color:var(--sk-primary-dark);font-size:22px;letter-spacing:-.035em}.sk-lesson-content{font-size:17px;line-height:1.85;color:#28413f;font-weight:650}.sk-lesson-block img{max-width:100%;border-radius:22px;border:1px solid var(--sk-border)}.sk-next-step-card{text-align:center}.sk-next-step-card p{max-width:640px;margin:0 auto 16px}.sk-quiz-form{display:grid;gap:16px}.sk-quiz-card{background:#fff;border:1px solid var(--sk-border);border-radius:28px;padding:22px;box-shadow:0 18px 52px rgba(15,94,69,.06)}.sk-question-number{display:inline-flex;padding:7px 11px;border-radius:999px;background:#FFF8EA;color:#8A650F;font-weight:950;font-size:13px;margin-bottom:12px}.sk-quiz-card h3{margin:0 0 16px;color:var(--sk-primary-dark);line-height:1.45}.sk-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sk-answer-option{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;background:#FBFEFC;border:1px solid var(--sk-border);border-radius:18px;padding:14px;cursor:pointer;transition:.2s ease}.sk-answer-option:hover{background:#fff;box-shadow:0 12px 30px rgba(15,94,69,.06);transform:translateY(-1px)}.sk-answer-option input{width:18px;height:18px;accent-color:var(--sk-primary)}.sk-answer-option span{width:30px;height:30px;border-radius:12px;background:rgba(15,138,95,.10);color:var(--sk-primary-dark);display:grid;place-items:center;font-weight:950}.sk-answer-option strong{line-height:1.45}.sk-submit-card{text-align:center}.sk-submit-card p{max-width:620px;margin:0 auto 16px}.sk-result-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#0F8A5F,#075E45);border-radius:32px;padding:28px;margin-bottom:20px;color:#fff;box-shadow:0 24px 70px rgba(15,94,69,.18)}.sk-result-hero .sk-eyebrow,.sk-result-hero p,.sk-result-hero h2{color:#fff}.sk-result-hero h2{font-size:clamp(54px,8vw,96px);line-height:.9;margin:0 0 10px;letter-spacing:-.08em}.sk-result-hero p{margin:0 0 14px;font-weight:750}.sk-result-hero .sk-badge-soft{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.25)}.sk-review-list{display:grid;gap:14px;margin-top:14px}.sk-review-item{border:1px solid var(--sk-border);border-radius:24px;background:#FBFEFC;padding:18px}.sk-review-item.correct{border-color:rgba(15,138,95,.24);background:#F1FBF5}.sk-review-item.wrong{border-color:rgba(167,44,44,.18);background:#FFF8F8}.sk-review-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.sk-review-top strong{color:var(--sk-primary-dark)}.sk-answer-review-box{display:grid;gap:4px;border:1px solid var(--sk-border);background:#fff;border-radius:18px;padding:12px;margin-top:10px}.sk-answer-review-box span{color:var(--sk-muted);font-weight:850;font-size:13px}.sk-answer-review-box.correct-answer{background:#F2FBF6}.sk-explanation{background:#fff;border-radius:18px;padding:12px;margin:10px 0 0!important;color:#2d4745!important;line-height:1.6}.sk-badge-danger{background:#FFF0F0;color:#A72C2C;border:1px solid rgba(167,44,44,.16)}.sk-mini-attempt-list{display:grid;gap:9px;margin-top:12px}.sk-mini-attempt-list a{display:flex;align-items:center;justify-content:space-between;text-decoration:none;border:1px solid var(--sk-border);background:#FBFEFC;border-radius:16px;padding:10px 12px}.sk-mini-attempt-list strong{color:var(--sk-primary-dark)}.sk-mini-attempt-list span{color:var(--sk-muted);font-size:13px;font-weight:800}
@media(max-width:720px){.sk-topic-actions,.sk-result-actions{width:100%;justify-content:stretch}.sk-topic-actions .sk-btn,.sk-result-actions .sk-btn{width:100%}.sk-answer-grid{grid-template-columns:1fr}.sk-result-hero{flex-direction:column;align-items:stretch}.compact-stats{grid-template-columns:1fr}}

/* Step 7: Diagnostic + Trial + Readiness Score */
.mt-10{margin-top:10px}.sk-action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.sk-action-item.static{cursor:default}.sk-action-item.static:hover{transform:none;box-shadow:none}
.sk-dashboard-hero-v7{background:linear-gradient(135deg,#fff,#F0FBF5 58%,#FFF8EA)}.sk-hero-actions-vertical{display:flex;flex-direction:column;gap:10px;align-items:stretch;min-width:190px}.sk-alert-card-v7{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#FFF8EA,#fff);border-color:rgba(217,164,65,.28)}.sk-alert-card-v7 h3{margin:0 0 8px;color:var(--sk-primary-dark);font-size:24px;letter-spacing:-.04em}.sk-alert-card-v7 p{margin:0;color:var(--sk-muted);line-height:1.6}
.sk-diagnostic-hero{background:linear-gradient(135deg,#fff,#F2FBF6 62%,#FFF8EA)}.sk-trial-hero{background:linear-gradient(135deg,#075E45,#0F8A5F 62%,#D9A441)}.sk-readiness-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(135deg,#0F8A5F,#075E45);border-radius:34px;padding:30px;margin-bottom:20px;color:#fff;box-shadow:0 24px 70px rgba(15,94,69,.20);overflow:hidden;position:relative}.sk-readiness-hero:after{content:"";position:absolute;right:-80px;top:-120px;width:310px;height:310px;border-radius:999px;background:rgba(255,255,255,.10)}.sk-readiness-hero>div{position:relative;z-index:1}.sk-readiness-hero .sk-eyebrow,.sk-readiness-hero h2,.sk-readiness-hero p{color:#fff}.sk-readiness-hero h2{font-size:clamp(64px,10vw,116px);line-height:.86;margin:0 0 14px;letter-spacing:-.08em}.sk-readiness-hero p{font-weight:740;line-height:1.7;max-width:760px}.sk-readiness-hero .sk-badge-soft{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.22)}
.sk-readiness-ring{--score:0;width:150px;height:150px;border-radius:999px;background:conic-gradient(#fff calc(var(--score)*1%), rgba(255,255,255,.20) 0);display:grid;place-items:center;box-shadow:inset 0 0 0 12px rgba(255,255,255,.10);flex:0 0 auto}.sk-readiness-ring span{width:104px;height:104px;border-radius:999px;background:rgba(7,94,69,.92);display:grid;place-items:center;font-size:30px;font-weight:950;color:#fff;border:1px solid rgba(255,255,255,.25)}
.sk-subject-bars{display:grid;gap:14px}.sk-subject-bar{display:grid;gap:8px}.sk-subject-bar div{display:flex;align-items:center;justify-content:space-between;gap:12px}.sk-subject-bar strong{color:var(--sk-primary-dark)}.sk-subject-bar span{font-weight:900;color:var(--sk-muted)}.sk-subject-bar em{display:block;height:11px;border-radius:999px;background:#E8F2ED;overflow:hidden}.sk-subject-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--sk-primary),var(--sk-gold))}.sk-progress-child-card .sk-progress-track{margin:2px 0}
@media(max-width:820px){.sk-readiness-hero,.sk-alert-card-v7{flex-direction:column;align-items:stretch}.sk-readiness-ring{align-self:center}.sk-hero-actions-vertical{width:100%}.sk-hero-actions-vertical .sk-btn{width:100%}}


/* Step 8: School Bulk, Teacher Class Management & Assignments */
.sk-school-hero{background:linear-gradient(135deg,#fff,#F2FBF6 62%,#FFF8EA);border:1px solid var(--sk-border);border-radius:32px;padding:26px;margin-bottom:20px;box-shadow:0 18px 52px rgba(15,94,69,.06);display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.sk-school-hero h2{margin:0 0 10px;color:var(--sk-primary-dark);font-size:clamp(30px,4vw,48px);letter-spacing:-.06em}.sk-school-hero p{margin:0;color:var(--sk-muted);line-height:1.65;max-width:760px}.sk-school-hero .sk-btn{flex:0 0 auto}
.sk-school-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sk-school-card{background:#fff;border:1px solid var(--sk-border);border-radius:26px;padding:20px;box-shadow:0 18px 52px rgba(15,94,69,.06)}.sk-school-card h3{margin:0 0 8px;color:var(--sk-primary-dark);letter-spacing:-.04em}.sk-school-card p{margin:0 0 12px;color:var(--sk-muted);line-height:1.55}.sk-school-card .sk-mini-meta{margin-top:10px}
.sk-section-spacer{height:18px}.sk-table-wrap{overflow:auto}.sk-table .small{font-size:13px;color:var(--sk-muted);font-weight:800}.sk-inline-actions{display:flex;gap:8px;flex-wrap:wrap}.sk-btn-xs{padding:9px 11px;border-radius:12px;font-size:12px}.sk-help-card{background:linear-gradient(135deg,#075E45,#0F8A5F);color:#fff}.sk-help-card h3,.sk-help-card p{color:#fff}.sk-help-card p{opacity:.86}.sk-assignment-list{display:grid;gap:12px}.sk-assignment-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid var(--sk-border);background:#FBFEFC;border-radius:22px;padding:16px;text-decoration:none}.sk-assignment-row strong{display:block;color:var(--sk-primary-dark);font-size:17px}.sk-assignment-row small{display:block;color:var(--sk-muted);font-weight:800;margin-top:5px}.sk-assignment-row:hover{background:#fff;box-shadow:0 18px 46px rgba(15,94,69,.07)}
.sk-report-card{display:grid;gap:12px}.sk-report-student{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border:1px solid var(--sk-border);background:#FBFEFC;border-radius:20px;padding:14px}.sk-report-student strong{color:var(--sk-primary-dark)}.sk-report-student small{display:block;color:var(--sk-muted);font-weight:800;margin-top:4px}.sk-score-pill{min-width:70px;text-align:center;border-radius:999px;padding:9px 12px;background:rgba(15,138,95,.10);color:var(--sk-primary-dark);font-weight:950}.sk-score-pill.warn{background:#FFF1C7;color:#7A5708}.sk-score-pill.danger{background:#FFF0F0;color:#A72C2C}.sk-student-create-box{border:1px solid var(--sk-border);border-radius:24px;background:#FBFEFC;padding:16px;margin-top:14px}.sk-student-create-box h3{margin:0 0 10px;color:var(--sk-primary-dark)}
@media(max-width:980px){.sk-school-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sk-school-hero{flex-direction:column}.sk-school-hero .sk-btn{width:100%}}
@media(max-width:680px){.sk-school-grid{grid-template-columns:1fr}.sk-assignment-row,.sk-report-student{grid-template-columns:1fr}.sk-inline-actions .sk-btn{width:100%}}


/* Step 11: Plans, Pricing & Subscription Management */
.sk-pricing-hero{background:linear-gradient(135deg,#fff,#F0FBF5 62%,#FFF8EA);border:1px solid var(--sk-border);border-radius:34px;padding:30px;margin-bottom:22px;box-shadow:0 18px 52px rgba(15,94,69,.06);display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.sk-pricing-hero h2{margin:0 0 10px;color:var(--sk-primary-dark);font-size:clamp(32px,5vw,54px);letter-spacing:-.06em;line-height:1}.sk-pricing-hero p{margin:0;color:var(--sk-muted);line-height:1.7;max-width:760px}.sk-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.sk-price-card{position:relative;background:#fff;border:1px solid var(--sk-border);border-radius:30px;padding:24px;box-shadow:0 18px 52px rgba(15,94,69,.06);display:flex;flex-direction:column;gap:14px}.sk-price-card.featured{border-color:rgba(217,164,65,.48);box-shadow:0 26px 72px rgba(217,164,65,.14)}.sk-price-card h3{margin:0;color:var(--sk-primary-dark);font-size:24px;letter-spacing:-.04em}.sk-price-card p{margin:0;color:var(--sk-muted);line-height:1.62}.sk-price-amount{font-size:38px;font-weight:950;color:var(--sk-primary-dark);letter-spacing:-.06em;line-height:1}.sk-price-amount small{font-size:14px;color:var(--sk-muted);letter-spacing:0;font-weight:850}.sk-feature-list{display:grid;gap:9px;margin:4px 0 0;padding:0;list-style:none}.sk-feature-list li{display:flex;gap:9px;align-items:flex-start;color:#304946;font-weight:760;line-height:1.45}.sk-feature-list li:before{content:'✓';display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:999px;background:rgba(15,138,95,.10);color:var(--sk-primary-dark);font-weight:950}.sk-plan-meta{display:flex;gap:8px;flex-wrap:wrap}.sk-plan-meta span{border:1px solid var(--sk-border);background:#FBFEFC;border-radius:999px;padding:7px 10px;color:var(--sk-muted);font-size:12px;font-weight:900}.sk-billing-card{background:linear-gradient(135deg,#075E45,#0F8A5F);color:#fff}.sk-billing-card h2,.sk-billing-card h3,.sk-billing-card p,.sk-billing-card small{color:#fff}.sk-billing-card p,.sk-billing-card small{opacity:.86}.sk-usage-bars{display:grid;gap:13px}.sk-usage-row strong{display:flex;justify-content:space-between;gap:10px;color:var(--sk-primary-dark);font-size:14px;margin-bottom:7px}.sk-usage-track{height:10px;border-radius:999px;background:#E8F2ED;overflow:hidden}.sk-usage-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--sk-primary),var(--sk-gold))}.sk-plan-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sk-subscription-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid var(--sk-border);background:#FBFEFC;border-radius:22px;padding:16px}.sk-subscription-row strong{display:block;color:var(--sk-primary-dark);font-size:16px}.sk-subscription-row small{display:block;color:var(--sk-muted);font-weight:800;margin-top:4px}.sk-public-pricing{padding:70px 0}.sk-public-price-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.sk-public-price-card{background:rgba(255,255,255,.90);border:1px solid var(--sk-border);border-radius:30px;padding:24px;box-shadow:0 18px 52px rgba(15,94,69,.07);display:flex;flex-direction:column;gap:14px}.sk-public-price-card.featured{border-color:rgba(217,164,65,.5);transform:translateY(-8px)}
@media(max-width:1100px){.sk-public-price-grid,.sk-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sk-pricing-hero{flex-direction:column}.sk-pricing-hero .sk-btn{width:100%}}
@media(max-width:720px){.sk-public-price-grid,.sk-price-grid,.sk-plan-form-grid{grid-template-columns:1fr}.sk-subscription-row{grid-template-columns:1fr}.sk-public-price-card.featured{transform:none}}

/* Step 13: Glassmorphism UI/UX Polish */
:root{
    --sk-primary:#0f8a5f;
    --sk-primary-dark:#0b5f47;
    --sk-primary-soft:#b7ffde;
    --sk-accent:#7d5cff;
    --sk-gold:#d9a441;
    --sk-bg:#081311;
    --sk-bg-alt:#0d1c19;
    --sk-surface:rgba(10, 26, 22, .58);
    --sk-surface-strong:rgba(10, 26, 22, .82);
    --sk-surface-soft:rgba(255,255,255,.08);
    --sk-card:rgba(255,255,255,.08);
    --sk-text:#eefaf5;
    --sk-muted:rgba(231, 247, 241, .72);
    --sk-border:rgba(255,255,255,.12);
    --sk-shadow:0 20px 70px rgba(0,0,0,.28);
    --sk-radius:28px;
}
body{
    min-height:100vh;
    background:
        radial-gradient(circle at 10% 20%, rgba(16,178,132,.18), transparent 24%),
        radial-gradient(circle at 85% 10%, rgba(125,92,255,.18), transparent 28%),
        radial-gradient(circle at 90% 80%, rgba(0,255,170,.10), transparent 20%),
        linear-gradient(135deg,#040909 0%,#0b1715 45%,#071110 100%);
    color:var(--sk-text);
}
body.sk-lock-scroll{overflow:hidden}
a{text-decoration:none}
.sk-public-body{background:
        radial-gradient(circle at 15% 10%, rgba(16,178,132,.16), transparent 30%),
        radial-gradient(circle at 80% 0%, rgba(125,92,255,.16), transparent 28%),
        linear-gradient(135deg,#040909 0%,#0b1715 50%,#071110 100%)}
.sk-container{position:relative;z-index:1}
.sk-public-nav{position:sticky;top:0;z-index:20;background:rgba(8,15,14,.54);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.08)}
.sk-public-nav-inner{min-height:82px}
.sk-brand-logo{background:linear-gradient(135deg,#11a779,#0b5f47 65%, #8b5cf6);box-shadow:0 10px 30px rgba(15,138,95,.26);border:1px solid rgba(255,255,255,.12)}
.sk-brand strong{color:#fff}
.sk-brand small{color:rgba(236,249,243,.7)}
.sk-btn{border-radius:18px;padding:13px 18px;font-weight:800;letter-spacing:.01em;border:1px solid transparent}
.sk-btn-primary{background:linear-gradient(135deg,#11a779,#0b5f47);color:#fff;box-shadow:0 14px 28px rgba(17,167,121,.26)}
.sk-btn-gold{background:linear-gradient(135deg,#f2ce77,#d8a036);color:#2f2207;box-shadow:0 14px 28px rgba(217,164,65,.24)}
.sk-btn-soft{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.1);color:#fff;backdrop-filter:blur(14px)}
.sk-btn-ghost{background:rgba(17,167,121,.12);border-color:rgba(17,167,121,.16);color:#dcfff2}
.sk-btn-block{width:100%}
.sk-hero-card,.sk-feature-card,.sk-card,.sk-stat-card,.sk-year-card,.sk-focus-card,.sk-topic-card,.sk-school-card,.sk-price-card,.sk-public-price-card,.sk-auth-card,.sk-mini-card,.sk-year-card,.sk-lesson-block,.sk-pricing-hero,.sk-school-hero,.sk-topic-hero,.sk-readiness-hero,.sk-empty-state,.sk-assignment-row,.sk-subscription-row,.sk-report-student,.sk-child-row,.sk-action-item,.sk-topic-item,.sk-quiz-card,.sk-answer-card,.sk-question-card,.sk-report-card,.sk-student-card,.sk-profile-card,.sk-school-card,.sk-billing-card,.sk-student-create-box,.sk-info-panel,.sk-help-card,.sk-dashboard-mock,.sk-alert-card-v7{
    background:rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.1) !important;
    box-shadow:var(--sk-shadow) !important;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
}
.sk-billing-card,.sk-help-card,.sk-readiness-hero,.sk-year-card.featured,.sk-focus-card.featured{
    background:linear-gradient(135deg,rgba(17,167,121,.84),rgba(11,95,71,.84),rgba(125,92,255,.5)) !important;
    border-color:rgba(255,255,255,.12) !important;
}
.sk-section-title h2,.sk-section-title p,.sk-hero h1,.sk-hero p,.sk-mock-header h3,.sk-mini-card strong,.sk-feature-card h3,
.sk-feature-card p,.sk-card h2,.sk-card h3,.sk-card p,.sk-stat-card strong,.sk-stat-card small,.sk-action-item strong,
.sk-action-item small,.sk-school-hero h2,.sk-school-hero p,.sk-pricing-hero h2,.sk-pricing-hero p,.sk-price-card h3,
.sk-price-card p,.sk-price-amount,.sk-profile-hero h2,.sk-profile-hero p,.sk-topic-hero h2,.sk-topic-hero p,
.sk-school-card h3,.sk-school-card p,.sk-subscription-row strong,.sk-subscription-row small,.sk-topic-card h3,
.sk-topic-card p,.sk-topic-card strong,.sk-mini-meta span,.sk-path-list strong,.sk-path-list small,.sk-year-card h3,
.sk-year-card p,.sk-focus-card h3,.sk-focus-card p,.sk-focus-card strong,.sk-subject-bar strong,.sk-subject-bar span,
.sk-lesson-block h3,.sk-lesson-content,.sk-empty-state strong,.sk-empty-state p,.sk-report-student strong,.sk-report-student small,
.sk-assignment-row strong,.sk-assignment-row small,.sk-auth-card h2,.sk-auth-card p,.sk-form-group label,.sk-form-note,
.sk-auth-copy h1,.sk-auth-copy p,.sk-child-row strong,.sk-child-row small,.sk-child-list strong,.sk-child-list small,
.sk-readiness-hero h2,.sk-readiness-hero p,.sk-readiness-hero .sk-eyebrow,.sk-sidebar-card strong,.sk-sidebar-card p{
    color:#ecfaf5 !important;
}
.sk-card p,.sk-feature-card p,.sk-section-title p,.sk-hero p,.sk-auth-copy p,.sk-form-note,
.sk-action-item small,.sk-child-row small,.sk-empty-state p,.sk-price-card p,.sk-school-card p,
.sk-subscription-row small,.sk-report-student small,.sk-assignment-row small,.sk-topic-card p,
.sk-year-card p,.sk-focus-card p,.sk-mini-meta span,.sk-mini-card small,.sk-badge small,.sk-sidebar-card p{
    color:rgba(236,250,245,.72) !important;
}
.sk-pill,.sk-plan-meta span,.sk-mini-meta span,.sk-badge,.sk-score-pill,.sk-year-pill,.sk-score,
.sk-chip-row .sk-badge,.sk-user-pill,.sk-user-avatar,.sk-nav a,.sk-sidebar-card,.sk-usage-track,
.sk-progress-track,.sk-progress,.sk-readiness-ring span,.sk-auth-kicker,.sk-sidebar-label,
 .sk-input-wrap,.sk-path-list div,.sk-report-student,.sk-assignment-row,.sk-subscription-row{
    backdrop-filter:blur(14px);
}
.sk-app-shell{position:relative;min-height:100vh;overflow:hidden}
.sk-orb{position:fixed;border-radius:999px;filter:blur(70px);pointer-events:none;opacity:.7;z-index:0}
.sk-orb-one{width:280px;height:280px;left:-70px;top:90px;background:rgba(14,181,130,.24)}
.sk-orb-two{width:360px;height:360px;right:-120px;top:-60px;background:rgba(125,92,255,.22)}
.sk-orb-three{width:260px;height:260px;right:18%;bottom:4%;background:rgba(0,255,166,.12)}
.sk-app{position:relative;z-index:1;display:grid;grid-template-columns:310px minmax(0,1fr);min-height:100vh;background:transparent}
.sk-sidebar{position:sticky;top:0;height:100vh;padding:18px 18px 18px 22px;background:rgba(9,22,19,.66);border-right:1px solid rgba(255,255,255,.08);backdrop-filter:blur(20px)}
.sk-sidebar-scroll{height:100%;display:flex;flex-direction:column;gap:18px;overflow:auto;padding-right:4px}
.sk-sidebar-section{display:grid;gap:12px}
.sk-sidebar-label{font-size:11px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:rgba(220,255,242,.55);padding:0 10px}
.sk-nav{display:grid;gap:8px}
.sk-nav a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;border:1px solid transparent;background:transparent;color:#e8faf3;font-weight:800;transition:.22s ease}
.sk-nav a:hover{transform:translateX(2px);background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.08)}
.sk-nav a.active{background:linear-gradient(135deg,rgba(17,167,121,.28),rgba(125,92,255,.18));border-color:rgba(255,255,255,.1);box-shadow:0 12px 28px rgba(0,0,0,.18)}
.sk-nav-icon{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);color:#b8ffe0;flex:0 0 auto}
.sk-nav-icon svg{width:18px;height:18px;display:block;fill:currentColor}
.sk-nav-text{flex:1;min-width:0}
.sk-sidebar-card{margin-top:auto;padding:18px;border-radius:24px;background:linear-gradient(135deg,rgba(17,167,121,.34),rgba(125,92,255,.18)) !important}
.sk-sidebar-card-icon{width:42px;height:42px;border-radius:16px;display:grid;place-items:center;margin-bottom:12px;background:rgba(255,255,255,.12);color:#fff;font-size:18px}
.sk-main{padding:24px 24px 28px;min-width:0}
.sk-topbar{position:sticky;top:18px;z-index:15;background:rgba(9,22,19,.62);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(18px);padding:16px 18px;border-radius:26px;box-shadow:var(--sk-shadow)}
.sk-topbar-left{display:flex;align-items:center;gap:16px;min-width:0}
.sk-topbar h1{font-size:clamp(28px,3vw,42px);color:#fff;margin-top:2px}
.sk-eyebrow{color:#7df7c9;font-weight:900;letter-spacing:.18em}
.sk-menu-btn{display:none;width:46px;height:46px;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.08);padding:0;gap:4px;align-content:center;justify-items:center}
.sk-menu-btn span{display:block;width:18px;height:2px;border-radius:2px;background:#fff}
.sk-user-pill{display:flex;align-items:center;gap:12px;padding:8px 10px 8px 8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:999px}
.sk-user-avatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#11a779,#8b5cf6);font-size:13px;font-weight:900;color:#fff;border:1px solid rgba(255,255,255,.12)}
.sk-user-meta{display:grid;line-height:1.2}
.sk-user-meta strong{font-size:13px;color:#fff}
.sk-user-meta small{font-size:11px;color:rgba(236,250,245,.66)}
.sk-user-pill a{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);color:#fff;font-weight:800}
.sk-user-pill a:hover{background:rgba(255,255,255,.14)}
.sk-sidebar-backdrop{display:none;position:fixed;inset:0;background:rgba(4,8,8,.55);border:0;padding:0;z-index:18}
.sk-stats-grid,.sk-public-price-grid,.sk-feature-grid,.sk-mock-grid,.sk-content-grid,.sk-school-grid,.sk-topic-grid,.sk-focus-grid,.sk-year-grid,.sk-price-grid{gap:18px}
.sk-stat-card{padding:20px 22px;border-radius:26px}
.sk-stat-card small{font-size:13px;font-weight:800;opacity:.76}
.sk-stat-card strong{font-size:40px;line-height:1.02;letter-spacing:-.05em}
.sk-card,.sk-hero-card,.sk-pricing-hero,.sk-school-hero,.sk-topic-hero,.sk-readiness-hero,.sk-lesson-block{border-radius:30px;padding:24px}
.sk-card-head h2{font-size:clamp(24px,2.6vw,36px);line-height:1.08}
.sk-action-list{gap:12px}
.sk-action-item{padding:16px 18px;border-radius:20px;align-items:center}
.sk-action-item:hover,.sk-child-row:hover,.sk-assignment-row:hover,.sk-report-student:hover,.sk-topic-card:hover,.sk-focus-card:hover,.sk-year-card:hover{transform:translateY(-2px);background:rgba(255,255,255,.1) !important}
.sk-child-list{display:grid;gap:12px}
.sk-child-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px 16px;border-radius:20px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06)}
.sk-avatar-soft{background:linear-gradient(135deg,rgba(17,167,121,.36),rgba(125,92,255,.24));border:1px solid rgba(255,255,255,.1);color:#fff;box-shadow:none}
.sk-empty-state{padding:26px;border-radius:28px;background:rgba(255,255,255,.06) !important}
.sk-empty-state > div:first-child{font-size:40px}
.sk-alert{padding:15px 18px;border-radius:20px;margin-bottom:18px;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(16px)}
.sk-alert-success{background:rgba(17,167,121,.18);color:#d5fff1}
.sk-alert-error{background:rgba(255,91,91,.14);color:#ffe7e7}
.sk-input{border-radius:16px;padding:14px 15px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#fff}
.sk-input::placeholder{color:rgba(236,250,245,.4)}
.sk-input:focus{background:rgba(255,255,255,.1);border-color:rgba(125,247,201,.58);box-shadow:0 0 0 4px rgba(17,167,121,.12)}
.sk-table-wrap,.sk-topic-table-wrap{border-radius:22px;overflow:auto;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04)}
.table,.sk-table{width:100%;border-collapse:collapse}
.table th,.table td,.sk-table th,.sk-table td{border-bottom:1px solid rgba(255,255,255,.08);color:#edf8f3;padding:14px 12px}
.table th,.sk-table th{color:#a6ddca;font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.sk-profile-hero,.sk-school-hero,.sk-pricing-hero,.sk-topic-hero{background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.06)) !important}
.sk-chip-row,.sk-plan-meta,.sk-mini-meta,.sk-inline-actions,.sk-topic-actions,.sk-result-actions,.sk-hero-actions,.sk-hero-actions-vertical{gap:10px}
.sk-chip-row .sk-badge,.sk-badge,.sk-score-pill,.sk-year-pill,.sk-plan-meta span,.sk-mini-meta span{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.08)}
.sk-progress,.sk-progress-track,.sk-usage-track{background:rgba(255,255,255,.12)}
.sk-progress span,.sk-progress-track span,.sk-usage-track span,.sk-subject-bar i{background:linear-gradient(90deg,#12bc85,#3ccdb0,#b8ffdb)}
.sk-readiness-ring{background:conic-gradient(#dcfff1 calc(var(--score)*1%), rgba(255,255,255,.16) 0)}
.sk-readiness-ring span{background:rgba(9,22,19,.82)}
.sk-path-list div{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.sk-path-list span{background:linear-gradient(135deg,rgba(17,167,121,.32),rgba(125,92,255,.24));color:#fff}
.sk-auth-page{overflow-x:hidden}
.sk-auth-scene{position:relative;min-height:100vh;overflow:hidden;padding:24px}
.sk-auth-wave{position:absolute;inset:auto;pointer-events:none;opacity:.55;filter:blur(.2px)}
.sk-auth-wave-one{width:620px;height:620px;right:-120px;top:-80px;background:radial-gradient(circle at 30% 30%, rgba(143,85,255,.54), transparent 40%), radial-gradient(circle at 65% 65%, rgba(0,255,176,.34), transparent 28%)}
.sk-auth-wave-two{width:520px;height:520px;left:-140px;bottom:-180px;background:radial-gradient(circle at 50% 45%, rgba(255,90,123,.34), transparent 26%), radial-gradient(circle at 25% 35%, rgba(195,255,201,.24), transparent 30%)}
.sk-auth-wrap-polished{position:relative;z-index:1;grid-template-columns:1.05fr .95fr;gap:28px;max-width:1280px;margin:0 auto;background:transparent;min-height:calc(100vh - 48px)}
.sk-auth-panel-glow{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:34px;backdrop-filter:blur(18px);box-shadow:var(--sk-shadow)}
.sk-auth-panel:before{display:none}
.sk-auth-kicker{display:inline-flex;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);color:#9cf8d3;font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;margin:22px 0 10px}
.sk-auth-bullet-list{display:grid;gap:12px;margin-top:26px;max-width:620px}
.sk-auth-bullet-list div{display:grid;grid-template-columns:auto 1fr;gap:12px 14px;padding:14px 16px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.sk-auth-bullet-list span{grid-row:1/3;width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(17,167,121,.42),rgba(125,92,255,.3));color:#fff;font-weight:900}
.sk-auth-bullet-list strong{color:#fff}
.sk-auth-bullet-list small{color:rgba(236,250,245,.72);font-size:13px}
.sk-auth-card-wrap{display:flex;align-items:center;justify-content:center;padding:0}
.sk-auth-card-glass{position:relative;width:min(470px,100%);background:rgba(255,255,255,.08) !important;border:1px solid rgba(255,255,255,.14) !important;border-radius:34px;padding:30px;box-shadow:0 26px 80px rgba(0,0,0,.32) !important;backdrop-filter:blur(20px)}
.sk-auth-card-glass:before{content:"";position:absolute;inset:auto 36px 16px 36px;height:120px;background:radial-gradient(circle at center, rgba(16,255,184,.2), transparent 68%);filter:blur(12px);pointer-events:none}
.sk-auth-card-head{position:relative;z-index:1;margin-bottom:16px}
.sk-auth-form{position:relative;z-index:1}
.sk-input-wrap{display:flex;align-items:center;gap:12px;padding:0 14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:18px}
.sk-input-wrap:focus-within{border-color:rgba(125,247,201,.58);box-shadow:0 0 0 4px rgba(17,167,121,.12)}
.sk-input-wrap .sk-input{border:0;background:transparent;box-shadow:none;padding-left:0}
.sk-input-wrap .sk-input:focus{box-shadow:none}
.sk-input-icon{color:rgba(236,250,245,.72);font-weight:900;display:inline-flex;align-items:center;justify-content:center;width:18px;flex:0 0 18px}
.sk-auth-mini-links{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:16px;position:relative;z-index:1;font-size:14px;color:rgba(236,250,245,.68)}
.sk-auth-mini-links a{color:#95ffd9;font-weight:800}
@media(max-width:1180px){
    .sk-app{grid-template-columns:286px minmax(0,1fr)}
}
@media(max-width:980px){
    .sk-app{grid-template-columns:1fr}
    .sk-sidebar{position:fixed;left:-320px;top:0;width:300px;transition:left .24s ease;z-index:19}
    .sk-sidebar.open{left:0}
    .sk-app-shell.sidebar-open .sk-sidebar-backdrop{display:block}
    .sk-menu-btn{display:grid}
    .sk-main{padding:18px}
    .sk-user-pill{display:none}
    .sk-topbar{top:14px}
    .sk-auth-wrap-polished{grid-template-columns:1fr;min-height:auto}
    .sk-auth-panel{padding:28px}
    .sk-auth-card-wrap{padding:0 0 22px}
}
@media(max-width:720px){
    .sk-main{padding:16px}
    .sk-topbar{padding:15px 16px;border-radius:22px}
    .sk-topbar h1{font-size:26px}
    .sk-card,.sk-hero-card,.sk-pricing-hero,.sk-school-hero,.sk-topic-hero,.sk-readiness-hero,.sk-lesson-block,.sk-auth-card-glass{padding:20px}
    .sk-stats-grid,.sk-content-grid,.sk-feature-grid,.sk-public-price-grid,.sk-price-grid,.sk-school-grid,.sk-topic-grid,.sk-focus-grid,.sk-year-grid,.sk-mock-grid{grid-template-columns:1fr !important}
    .sk-auth-scene{padding:16px}
    .sk-auth-mini-links{flex-direction:column;align-items:flex-start}
    .sk-nav-icon{width:36px;height:36px}
}

/* Step 13B: Landing + Dashboard Premium Polish */
.sk-dashboard-hero{
    position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;align-items:stretch;
    margin-bottom:22px;padding:28px;border-radius:34px;
    background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.055)) !important;
    border:1px solid rgba(255,255,255,.12);box-shadow:var(--sk-shadow);backdrop-filter:blur(20px)
}
.sk-dashboard-hero:before{content:"";position:absolute;width:420px;height:420px;right:-150px;top:-180px;background:radial-gradient(circle,rgba(125,92,255,.35),transparent 65%);filter:blur(8px);pointer-events:none}
.sk-dashboard-hero:after{content:"";position:absolute;width:330px;height:330px;left:-130px;bottom:-160px;background:radial-gradient(circle,rgba(17,167,121,.28),transparent 68%);filter:blur(10px);pointer-events:none}
.sk-dashboard-hero>*{position:relative;z-index:1}.sk-dashboard-hero h2{margin:0 0 12px;color:#fff;font-size:clamp(30px,4vw,54px);line-height:1;letter-spacing:-.06em}.sk-dashboard-hero p{max-width:780px;color:rgba(236,250,245,.76);line-height:1.7;margin:0 0 18px}
.sk-glass-orbit-card{display:flex;flex-direction:column;justify-content:flex-end;min-height:210px;border-radius:30px;padding:22px;background:linear-gradient(135deg,rgba(17,167,121,.22),rgba(125,92,255,.18));border:1px solid rgba(255,255,255,.12);box-shadow:0 24px 70px rgba(0,0,0,.24);backdrop-filter:blur(18px)}
.sk-glass-orbit-card strong{font-size:26px;line-height:1.1;color:#fff;letter-spacing:-.04em}.sk-glass-orbit-card small{display:block;margin-top:10px;color:rgba(236,250,245,.72);font-weight:750;line-height:1.5}.sk-orbit-label{display:inline-flex;width:max-content;margin-bottom:auto;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1);color:#9df8d3;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:950}
.sk-stat-premium{position:relative;overflow:hidden}.sk-stat-premium:after{content:"";position:absolute;right:-38px;top:-42px;width:120px;height:120px;border-radius:999px;background:rgba(17,167,121,.14);filter:blur(4px)}.sk-stat-premium span{display:block;margin-top:8px;font-size:12px;color:rgba(236,250,245,.56);font-weight:850;position:relative;z-index:1}.sk-stat-premium small,.sk-stat-premium strong{position:relative;z-index:1}
.sk-review-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.sk-review-metrics div{padding:18px;border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}.sk-review-metrics strong{display:block;color:#fff;font-size:40px;line-height:1;letter-spacing:-.06em}.sk-review-metrics span{display:block;margin-top:7px;color:rgba(236,250,245,.7);font-weight:850;font-size:13px}
.sk-action-list-polished .sk-action-item{background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.04)) !important}.sk-action-list-polished .sk-action-item:hover{border-color:rgba(125,247,201,.26)!important;box-shadow:0 22px 58px rgba(0,0,0,.24)!important}
.sk-landing-hero{min-height:calc(100vh - 84px);display:flex;align-items:center;padding:86px 0 70px}.sk-landing-hero h1{max-width:850px}.sk-landing-mock-card{position:relative}.sk-landing-mock-card:before{content:"";position:absolute;inset:26px;transform:translate(22px,22px);border-radius:34px;background:rgba(17,167,121,.14);filter:blur(22px);z-index:-1}.sk-premium-mock{min-height:440px;display:flex;flex-direction:column;justify-content:center;gap:14px;background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.045)) !important}.sk-mini-path{display:grid;gap:10px;margin-top:8px}.sk-mini-path span{display:block;height:12px;border-radius:999px;background:linear-gradient(90deg,rgba(17,167,121,.5),rgba(125,92,255,.32));border:1px solid rgba(255,255,255,.06)}.sk-mini-path span:nth-child(2){width:74%}.sk-mini-path span:nth-child(3){width:52%}
.sk-feature-mark{width:52px;height:52px;border-radius:20px;display:grid;place-items:center;margin-bottom:16px;background:linear-gradient(135deg,rgba(17,167,121,.36),rgba(125,92,255,.26));border:1px solid rgba(255,255,255,.1);color:#fff;font-weight:950;letter-spacing:-.04em}.sk-glass-cta{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:30px;border-radius:34px;background:linear-gradient(135deg,rgba(17,167,121,.22),rgba(125,92,255,.16));border:1px solid rgba(255,255,255,.12);box-shadow:var(--sk-shadow);backdrop-filter:blur(18px)}.sk-glass-cta h2{margin:0 0 10px;color:#fff;font-size:clamp(28px,4vw,48px);line-height:1.05;letter-spacing:-.06em}.sk-glass-cta p{margin:0;max-width:780px;color:rgba(236,250,245,.75);line-height:1.65}
.sk-footer{border-top:1px solid rgba(255,255,255,.08);background:rgba(5,10,10,.32);color:rgba(236,250,245,.6)}
@media(max-width:980px){.sk-dashboard-hero{grid-template-columns:1fr}.sk-glass-orbit-card{min-height:160px}.sk-glass-cta{flex-direction:column;align-items:flex-start}.sk-glass-cta .sk-btn{width:100%}}
@media(max-width:620px){.sk-dashboard-hero{padding:22px;border-radius:28px}.sk-dashboard-hero h2{font-size:32px}.sk-review-metrics{grid-template-columns:1fr}.sk-landing-hero{padding:50px 0}.sk-glass-cta{padding:22px;border-radius:28px}}



/* =========================================================
   Step 13B: Clean Calibri Glass UI Polish
   - Calibri font
   - cleaner spacing
   - softer professional light glass theme
   - hidden sidebar scrollbar
   - compact menu
   ========================================================= */

:root{
    --sk-primary:#0F8A5F !important;
    --sk-primary-dark:#075E45 !important;
    --sk-primary-soft:#E0F6EE !important;
    --sk-accent:#5D6FE8 !important;
    --sk-gold:#D9A441 !important;
    --sk-cream:#FFF8EA !important;
    --sk-bg:#EDF7F3 !important;
    --sk-bg-alt:#E5F2EC !important;
    --sk-card:rgba(255,255,255,.78) !important;
    --sk-surface:rgba(255,255,255,.72) !important;
    --sk-surface-strong:rgba(255,255,255,.92) !important;
    --sk-surface-soft:rgba(15,138,95,.06) !important;
    --sk-text:#133431 !important;
    --sk-muted:#5D7470 !important;
    --sk-border:rgba(15,94,69,.14) !important;
    --sk-shadow:0 18px 44px rgba(15,94,69,.10) !important;
    --sk-radius:24px !important;
}

*{
    scrollbar-width:thin;
    scrollbar-color:rgba(15,138,95,.28) transparent;
}

html, body{
    font-family:Calibri,"Segoe UI",Arial,sans-serif !important;
    font-size:15px !important;
    color:var(--sk-text) !important;
}

body{
    background:
        radial-gradient(circle at 12% 10%, rgba(15,138,95,.14), transparent 28%),
        radial-gradient(circle at 85% 0%, rgba(217,164,65,.12), transparent 26%),
        radial-gradient(circle at 90% 92%, rgba(93,111,232,.10), transparent 26%),
        linear-gradient(135deg,#F7FCFA 0%,#ECF7F2 50%,#F9F4E8 100%) !important;
}

body.sk-public-body{
    background:
        radial-gradient(circle at 12% 10%, rgba(15,138,95,.15), transparent 28%),
        radial-gradient(circle at 80% 0%, rgba(93,111,232,.10), transparent 28%),
        linear-gradient(135deg,#F7FCFA 0%,#ECF7F2 55%,#FFF8EA 100%) !important;
}

/* Hide ugly white sidebar scrollbar */
.sk-sidebar,
.sk-sidebar-scroll{
    scrollbar-width:none !important;
}
.sk-sidebar::-webkit-scrollbar,
.sk-sidebar-scroll::-webkit-scrollbar{
    width:0 !important;
    height:0 !important;
    display:none !important;
}

/* App shell layout */
.sk-app-shell{
    background:transparent !important;
}

.sk-app{
    grid-template-columns:270px minmax(0,1fr) !important;
    background:transparent !important;
}

.sk-sidebar{
    padding:18px 14px 18px 16px !important;
    background:rgba(255,255,255,.70) !important;
    border-right:1px solid rgba(15,94,69,.12) !important;
    box-shadow:14px 0 40px rgba(15,94,69,.06) !important;
    backdrop-filter:blur(22px) saturate(130%) !important;
    -webkit-backdrop-filter:blur(22px) saturate(130%) !important;
}

.sk-sidebar-scroll{
    gap:14px !important;
    padding-right:0 !important;
    overflow-y:auto !important;
}

.sk-main{
    padding:22px 26px 30px !important;
}

/* Brand */
.sk-brand{
    gap:10px !important;
    padding:0 4px !important;
}

.sk-brand-logo{
    width:42px !important;
    height:42px !important;
    border-radius:14px !important;
    background:linear-gradient(135deg,#12A875,#075E45) !important;
    color:#fff !important;
    box-shadow:0 12px 28px rgba(15,138,95,.22) !important;
}

.sk-brand strong{
    color:#075E45 !important;
    font-size:17px !important;
    letter-spacing:-.02em !important;
}

.sk-brand small{
    color:#607773 !important;
    font-size:11px !important;
    font-weight:700 !important;
}

/* Sidebar menu */
.sk-sidebar-label{
    color:#7B928E !important;
    font-size:10px !important;
    letter-spacing:.14em !important;
    padding:0 8px !important;
}

.sk-nav{
    gap:6px !important;
}

.sk-nav a{
    min-height:44px !important;
    padding:9px 10px !important;
    border-radius:15px !important;
    background:transparent !important;
    border:1px solid transparent !important;
    color:#244541 !important;
    font-size:14px !important;
    font-weight:700 !important;
    box-shadow:none !important;
}

.sk-nav a:hover{
    transform:none !important;
    background:rgba(15,138,95,.07) !important;
    border-color:rgba(15,138,95,.10) !important;
}

.sk-nav a.active{
    background:linear-gradient(135deg,rgba(15,138,95,.16),rgba(217,164,65,.10)) !important;
    border-color:rgba(15,138,95,.16) !important;
    color:#075E45 !important;
    box-shadow:none !important;
}

.sk-nav-icon{
    width:32px !important;
    height:32px !important;
    border-radius:12px !important;
    background:#F4FBF8 !important;
    border:1px solid rgba(15,94,69,.10) !important;
    color:#0F8A5F !important;
}

.sk-nav a.active .sk-nav-icon{
    background:#0F8A5F !important;
    color:#fff !important;
}

.sk-nav-icon svg{
    width:16px !important;
    height:16px !important;
}

.sk-sidebar-card{
    margin-top:auto !important;
    background:linear-gradient(135deg,#0F8A5F,#075E45) !important;
    border:0 !important;
    box-shadow:0 16px 34px rgba(15,94,69,.18) !important;
    padding:16px !important;
    border-radius:20px !important;
}

.sk-sidebar-card strong{
    color:#fff !important;
    font-size:14px !important;
}

.sk-sidebar-card p{
    color:rgba(255,255,255,.82) !important;
    font-size:12px !important;
    line-height:1.45 !important;
}

/* Topbar */
.sk-topbar{
    top:14px !important;
    margin-bottom:18px !important;
    padding:14px 16px !important;
    border-radius:22px !important;
    background:rgba(255,255,255,.76) !important;
    border:1px solid rgba(15,94,69,.13) !important;
    box-shadow:0 16px 34px rgba(15,94,69,.08) !important;
    backdrop-filter:blur(18px) saturate(135%) !important;
    -webkit-backdrop-filter:blur(18px) saturate(135%) !important;
}

.sk-topbar h1{
    color:#0B3C34 !important;
    font-size:30px !important;
    line-height:1.1 !important;
    letter-spacing:-.03em !important;
}

.sk-eyebrow{
    color:#0F8A5F !important;
    font-size:11px !important;
    letter-spacing:.14em !important;
    font-weight:900 !important;
}

.sk-user-pill{
    background:rgba(255,255,255,.82) !important;
    border:1px solid rgba(15,94,69,.12) !important;
    box-shadow:none !important;
}

.sk-user-avatar{
    background:linear-gradient(135deg,#0F8A5F,#5D6FE8) !important;
    color:#fff !important;
}

.sk-user-meta strong{
    color:#103834 !important;
}

.sk-user-meta small{
    color:#718682 !important;
}

.sk-user-pill a{
    background:#F1F8F5 !important;
    color:#075E45 !important;
    border:1px solid rgba(15,94,69,.12) !important;
}

/* Cards and sections */
.sk-card,
.sk-stat-card,
.sk-hero-card,
.sk-dashboard-hero,
.sk-admin-hero,
.sk-school-hero,
.sk-pricing-hero,
.sk-topic-hero,
.sk-profile-hero,
.sk-glass-orbit-card,
.sk-review-metrics div,
.sk-action-item,
.sk-table-wrap,
.sk-topic-table-wrap,
.sk-empty-state,
.sk-child-row,
.sk-assignment-row,
.sk-subscription-row,
.sk-report-student,
.sk-price-card,
.sk-public-price-card,
.sk-feature-card,
.sk-year-card,
.sk-focus-card,
.sk-topic-card,
.sk-mini-card,
.sk-dashboard-mock,
.sk-lesson-block{
    background:rgba(255,255,255,.76) !important;
    border:1px solid rgba(15,94,69,.13) !important;
    box-shadow:0 16px 38px rgba(15,94,69,.08) !important;
    backdrop-filter:blur(18px) saturate(125%) !important;
    -webkit-backdrop-filter:blur(18px) saturate(125%) !important;
    color:#143431 !important;
}

.sk-dashboard-hero,
.sk-admin-hero,
.sk-profile-hero,
.sk-school-hero,
.sk-pricing-hero,
.sk-topic-hero{
    padding:24px !important;
    border-radius:24px !important;
    margin-bottom:18px !important;
    background:
        linear-gradient(135deg,rgba(255,255,255,.82),rgba(255,255,255,.58)),
        radial-gradient(circle at 15% 20%,rgba(15,138,95,.12),transparent 30%),
        radial-gradient(circle at 90% 10%,rgba(93,111,232,.10),transparent 32%) !important;
}

.sk-dashboard-hero h2,
.sk-admin-hero h2,
.sk-profile-hero h2,
.sk-school-hero h2,
.sk-pricing-hero h2,
.sk-topic-hero h2{
    color:#103834 !important;
    font-size:clamp(30px,4vw,46px) !important;
    line-height:1.08 !important;
    letter-spacing:-.045em !important;
    margin:0 0 12px !important;
}

.sk-dashboard-hero p,
.sk-admin-hero p,
.sk-profile-hero p,
.sk-school-hero p,
.sk-pricing-hero p,
.sk-topic-hero p,
.sk-card p{
    color:#617773 !important;
    line-height:1.55 !important;
    font-size:15px !important;
}

.sk-card{
    padding:22px !important;
    border-radius:24px !important;
}

.sk-card h2,
.sk-card h3{
    color:#103834 !important;
    letter-spacing:-.025em !important;
}

.sk-card h2{
    font-size:28px !important;
}

.sk-card h3{
    font-size:21px !important;
}

/* Stats */
.sk-stats-grid{
    gap:14px !important;
    margin-bottom:16px !important;
}

.sk-stat-card{
    padding:18px !important;
    border-radius:22px !important;
    min-height:120px !important;
}

.sk-stat-card small{
    color:#607773 !important;
    font-size:12px !important;
    font-weight:800 !important;
}

.sk-stat-card strong{
    color:#103834 !important;
    font-size:34px !important;
    line-height:1 !important;
    margin:8px 0 4px !important;
}

.sk-stat-card span{
    color:#6C827E !important;
    font-size:12px !important;
    font-weight:700 !important;
}

/* Hero orbit card */
.sk-glass-orbit-card{
    min-width:230px !important;
    max-width:280px !important;
    padding:22px !important;
    border-radius:24px !important;
    background:linear-gradient(135deg,rgba(15,138,95,.13),rgba(93,111,232,.10),rgba(255,255,255,.75)) !important;
}

.sk-glass-orbit-card strong{
    color:#103834 !important;
    font-size:23px !important;
    line-height:1.08 !important;
}

.sk-glass-orbit-card small,
.sk-orbit-label{
    color:#607773 !important;
}

/* Actions */
.sk-action-list{
    gap:10px !important;
}

.sk-action-item{
    padding:14px 16px !important;
    border-radius:18px !important;
    background:#F8FCFA !important;
    box-shadow:none !important;
}

.sk-action-item:hover{
    background:#EFF8F4 !important;
    transform:none !important;
}

.sk-action-item strong{
    color:#103834 !important;
    font-size:15px !important;
}

.sk-action-item small{
    color:#6C827E !important;
    font-size:12px !important;
}

/* Buttons */
.sk-btn{
    border-radius:14px !important;
    padding:12px 16px !important;
    font-size:14px !important;
    font-weight:800 !important;
    box-shadow:none !important;
}

.sk-btn-primary{
    background:linear-gradient(135deg,#0F8A5F,#087050) !important;
    color:#fff !important;
}

.sk-btn-soft,
.sk-btn-ghost{
    background:#F2FAF6 !important;
    color:#075E45 !important;
    border:1px solid rgba(15,94,69,.12) !important;
}

.sk-btn-gold{
    background:linear-gradient(135deg,#F3D37C,#D9A441) !important;
    color:#3A2A09 !important;
}

/* Forms */
.sk-input,
select.sk-input,
textarea.sk-input{
    background:#FFFFFF !important;
    color:#173A36 !important;
    border:1px solid rgba(15,94,69,.16) !important;
    border-radius:14px !important;
}

.sk-input::placeholder{
    color:#9AADAA !important;
}

.sk-form-group label{
    color:#234C46 !important;
    font-size:13px !important;
}

/* Table */
.sk-table th,
.sk-table td,
.table th,
.table td{
    color:#183C38 !important;
    border-bottom:1px solid rgba(15,94,69,.10) !important;
}

.sk-table th,
.table th{
    color:#607773 !important;
    background:rgba(15,138,95,.045) !important;
}

/* Auth pages clean glass */
.sk-auth-scene{
    background:
        radial-gradient(circle at 8% 20%,rgba(15,138,95,.18),transparent 30%),
        radial-gradient(circle at 88% 12%,rgba(93,111,232,.12),transparent 28%),
        linear-gradient(135deg,#F7FCFA,#ECF7F2 55%,#FFF8EA) !important;
}

.sk-auth-panel-glow,
.sk-auth-card-glass{
    background:rgba(255,255,255,.66) !important;
    border:1px solid rgba(15,94,69,.13) !important;
    box-shadow:0 22px 54px rgba(15,94,69,.12) !important;
}

.sk-auth-copy h1,
.sk-auth-card h2{
    color:#103834 !important;
}

.sk-auth-copy p,
.sk-auth-card p,
.sk-auth-mini-links,
.sk-auth-bullet-list small{
    color:#617773 !important;
}

.sk-auth-bullet-list div,
.sk-input-wrap{
    background:#FFFFFF !important;
    border:1px solid rgba(15,94,69,.12) !important;
}

.sk-auth-bullet-list strong{
    color:#103834 !important;
}

.sk-auth-kicker{
    color:#075E45 !important;
    background:#E7F6EF !important;
    border-color:rgba(15,94,69,.12) !important;
}

/* Alerts */
.sk-alert-success{
    background:#DDF8EB !important;
    color:#075E45 !important;
    border:1px solid rgba(15,138,95,.18) !important;
}

.sk-alert-error{
    background:#FFF0F0 !important;
    color:#9E2727 !important;
    border:1px solid rgba(158,39,39,.16) !important;
}

/* Text consistency overrides from earlier dark patch */
.sk-section-title h2,
.sk-section-title p,
.sk-hero h1,
.sk-hero p,
.sk-mock-header h3,
.sk-mini-card strong,
.sk-feature-card h3,
.sk-feature-card p,
.sk-card h2,
.sk-card h3,
.sk-card p,
.sk-stat-card strong,
.sk-stat-card small,
.sk-action-item strong,
.sk-action-item small,
.sk-school-hero h2,
.sk-school-hero p,
.sk-pricing-hero h2,
.sk-pricing-hero p,
.sk-price-card h3,
.sk-price-card p,
.sk-price-amount,
.sk-profile-hero h2,
.sk-profile-hero p,
.sk-topic-hero h2,
.sk-topic-hero p,
.sk-school-card h3,
.sk-school-card p,
.sk-subscription-row strong,
.sk-subscription-row small,
.sk-topic-card h3,
.sk-topic-card p,
.sk-topic-card strong,
.sk-mini-meta span,
.sk-path-list strong,
.sk-path-list small,
.sk-year-card h3,
.sk-year-card p,
.sk-focus-card h3,
.sk-focus-card p,
.sk-focus-card strong,
.sk-subject-bar strong,
.sk-subject-bar span,
.sk-lesson-block h3,
.sk-lesson-content,
.sk-empty-state strong,
.sk-empty-state p,
.sk-report-student strong,
.sk-report-student small,
.sk-assignment-row strong,
.sk-assignment-row small,
.sk-auth-card h2,
.sk-auth-card p,
.sk-form-group label,
.sk-form-note,
.sk-auth-copy h1,
.sk-auth-copy p,
.sk-child-row strong,
.sk-child-row small,
.sk-child-list strong,
.sk-child-list small{
    color:var(--sk-text) !important;
}

.sk-card p,
.sk-feature-card p,
.sk-section-title p,
.sk-hero p,
.sk-auth-copy p,
.sk-form-note,
.sk-action-item small,
.sk-child-row small,
.sk-empty-state p,
.sk-price-card p,
.sk-school-card p,
.sk-subscription-row small,
.sk-report-student small,
.sk-assignment-row small,
.sk-topic-card p,
.sk-year-card p,
.sk-focus-card p,
.sk-mini-meta span,
.sk-mini-card small{
    color:var(--sk-muted) !important;
}

/* Public landing */
.sk-public-nav{
    background:rgba(255,255,255,.74) !important;
    border-bottom:1px solid rgba(15,94,69,.12) !important;
}

.sk-footer{
    color:#617773 !important;
}

/* Mobile */
@media(max-width:980px){
    .sk-app{
        grid-template-columns:1fr !important;
    }

    .sk-sidebar{
        width:278px !important;
        left:-300px !important;
        background:rgba(255,255,255,.92) !important;
    }

    .sk-sidebar.open{
        left:0 !important;
    }

    .sk-menu-btn{
        display:grid !important;
        background:#F2FAF6 !important;
        border:1px solid rgba(15,94,69,.12) !important;
    }

    .sk-menu-btn span{
        background:#075E45 !important;
    }
}

@media(max-width:720px){
    .sk-main{
        padding:14px !important;
    }

    .sk-topbar h1{
        font-size:24px !important;
    }

    .sk-dashboard-hero h2,
    .sk-admin-hero h2,
    .sk-profile-hero h2,
    .sk-school-hero h2,
    .sk-pricing-hero h2,
    .sk-topic-hero h2{
        font-size:30px !important;
    }

    .sk-card{
        padding:18px !important;
    }
}

/* =========================================================
   Step 13D: Calibri Clean + Fixed Sidebar Combined Fix
   Fix: previous fixed-sidebar patch overwrote Calibri clean theme.
   This block re-locks Calibri/light clean theme AND keeps sidebar static.
   ========================================================= */

:root{
    --sk-primary:#0F8A5F !important;
    --sk-primary-dark:#075E45 !important;
    --sk-primary-soft:#E0F6EE !important;
    --sk-accent:#5D6FE8 !important;
    --sk-gold:#D9A441 !important;
    --sk-cream:#FFF8EA !important;
    --sk-bg:#EDF7F3 !important;
    --sk-bg-alt:#E5F2EC !important;
    --sk-card:rgba(255,255,255,.78) !important;
    --sk-surface:rgba(255,255,255,.72) !important;
    --sk-surface-strong:rgba(255,255,255,.92) !important;
    --sk-surface-soft:rgba(15,138,95,.06) !important;
    --sk-text:#133431 !important;
    --sk-muted:#5D7470 !important;
    --sk-border:rgba(15,94,69,.14) !important;
    --sk-shadow:0 18px 44px rgba(15,94,69,.10) !important;
    --sk-radius:24px !important;
}

html, body{
    font-family:Calibri,"Segoe UI",Arial,sans-serif !important;
    font-size:15px !important;
    color:var(--sk-text) !important;
}

body{
    background:
        radial-gradient(circle at 12% 10%, rgba(15,138,95,.14), transparent 28%),
        radial-gradient(circle at 85% 0%, rgba(217,164,65,.12), transparent 26%),
        radial-gradient(circle at 90% 92%, rgba(93,111,232,.10), transparent 26%),
        linear-gradient(135deg,#F7FCFA 0%,#ECF7F2 50%,#F9F4E8 100%) !important;
}

.sk-app{
    grid-template-columns:270px minmax(0,1fr) !important;
    background:transparent !important;
}

.sk-sidebar{
    padding:18px 14px 18px 16px !important;
    background:rgba(255,255,255,.72) !important;
    border-right:1px solid rgba(15,94,69,.12) !important;
    box-shadow:14px 0 40px rgba(15,94,69,.06) !important;
    backdrop-filter:blur(22px) saturate(130%) !important;
    -webkit-backdrop-filter:blur(22px) saturate(130%) !important;
}

.sk-sidebar,
.sk-sidebar-scroll{
    scrollbar-width:none !important;
}
.sk-sidebar::-webkit-scrollbar,
.sk-sidebar-scroll::-webkit-scrollbar{
    width:0 !important;
    height:0 !important;
    display:none !important;
}

.sk-sidebar-scroll{
    gap:14px !important;
    padding-right:0 !important;
    overflow-y:auto !important;
}

.sk-brand-logo{
    width:42px !important;
    height:42px !important;
    border-radius:14px !important;
    background:linear-gradient(135deg,#12A875,#075E45) !important;
    color:#fff !important;
    box-shadow:0 12px 28px rgba(15,138,95,.22) !important;
}
.sk-brand strong{color:#075E45 !important;font-size:17px !important;}
.sk-brand small{color:#607773 !important;font-size:11px !important;font-weight:700 !important;}

.sk-sidebar-label{
    color:#7B928E !important;
    font-size:10px !important;
    letter-spacing:.14em !important;
    padding:0 8px !important;
}

.sk-nav{gap:6px !important;}
.sk-nav a{
    min-height:44px !important;
    padding:9px 10px !important;
    border-radius:15px !important;
    background:transparent !important;
    border:1px solid transparent !important;
    color:#244541 !important;
    font-size:14px !important;
    font-weight:700 !important;
    box-shadow:none !important;
}
.sk-nav a:hover{
    transform:none !important;
    background:rgba(15,138,95,.07) !important;
    border-color:rgba(15,138,95,.10) !important;
}
.sk-nav a.active{
    background:linear-gradient(135deg,rgba(15,138,95,.16),rgba(217,164,65,.10)) !important;
    border-color:rgba(15,138,95,.16) !important;
    color:#075E45 !important;
    box-shadow:none !important;
}
.sk-nav-icon{
    width:32px !important;
    height:32px !important;
    border-radius:12px !important;
    background:#F4FBF8 !important;
    border:1px solid rgba(15,94,69,.10) !important;
    color:#0F8A5F !important;
}
.sk-nav a.active .sk-nav-icon{
    background:#0F8A5F !important;
    color:#fff !important;
}
.sk-nav-icon svg{width:16px !important;height:16px !important;}

.sk-sidebar-card{
    margin-top:auto !important;
    background:linear-gradient(135deg,#0F8A5F,#075E45) !important;
    border:0 !important;
    box-shadow:0 16px 34px rgba(15,94,69,.18) !important;
    padding:16px !important;
    border-radius:20px !important;
}
.sk-sidebar-card strong{color:#fff !important;font-size:14px !important;}
.sk-sidebar-card p{color:rgba(255,255,255,.82) !important;font-size:12px !important;line-height:1.45 !important;}

.sk-topbar{
    top:14px !important;
    margin-bottom:18px !important;
    padding:14px 16px !important;
    border-radius:22px !important;
    background:rgba(255,255,255,.78) !important;
    border:1px solid rgba(15,94,69,.13) !important;
    box-shadow:0 16px 34px rgba(15,94,69,.08) !important;
    backdrop-filter:blur(18px) saturate(135%) !important;
    -webkit-backdrop-filter:blur(18px) saturate(135%) !important;
}
.sk-topbar h1{
    color:#0B3C34 !important;
    font-size:30px !important;
    line-height:1.1 !important;
    letter-spacing:-.03em !important;
}
.sk-eyebrow{
    color:#0F8A5F !important;
    font-size:11px !important;
    letter-spacing:.14em !important;
    font-weight:900 !important;
}

.sk-user-pill{
    background:rgba(255,255,255,.84) !important;
    border:1px solid rgba(15,94,69,.12) !important;
    box-shadow:none !important;
}
.sk-user-avatar{background:linear-gradient(135deg,#0F8A5F,#5D6FE8) !important;color:#fff !important;}
.sk-user-meta strong{color:#103834 !important;}
.sk-user-meta small{color:#718682 !important;}
.sk-user-pill a{
    background:#F1F8F5 !important;
    color:#075E45 !important;
    border:1px solid rgba(15,94,69,.12) !important;
}

.sk-card,
.sk-stat-card,
.sk-hero-card,
.sk-dashboard-hero,
.sk-admin-hero,
.sk-school-hero,
.sk-pricing-hero,
.sk-topic-hero,
.sk-profile-hero,
.sk-glass-orbit-card,
.sk-review-metrics div,
.sk-action-item,
.sk-table-wrap,
.sk-topic-table-wrap,
.sk-empty-state,
.sk-child-row,
.sk-assignment-row,
.sk-subscription-row,
.sk-report-student,
.sk-price-card,
.sk-public-price-card,
.sk-feature-card,
.sk-year-card,
.sk-focus-card,
.sk-topic-card,
.sk-mini-card,
.sk-dashboard-mock,
.sk-lesson-block{
    background:rgba(255,255,255,.78) !important;
    border:1px solid rgba(15,94,69,.13) !important;
    box-shadow:0 16px 38px rgba(15,94,69,.08) !important;
    backdrop-filter:blur(18px) saturate(125%) !important;
    -webkit-backdrop-filter:blur(18px) saturate(125%) !important;
    color:#143431 !important;
}

.sk-dashboard-hero,
.sk-admin-hero,
.sk-profile-hero,
.sk-school-hero,
.sk-pricing-hero,
.sk-topic-hero{
    padding:24px !important;
    border-radius:24px !important;
    margin-bottom:18px !important;
    background:
        linear-gradient(135deg,rgba(255,255,255,.84),rgba(255,255,255,.60)),
        radial-gradient(circle at 15% 20%,rgba(15,138,95,.12),transparent 30%),
        radial-gradient(circle at 90% 10%,rgba(93,111,232,.10),transparent 32%) !important;
}

.sk-dashboard-hero h2,
.sk-admin-hero h2,
.sk-profile-hero h2,
.sk-school-hero h2,
.sk-pricing-hero h2,
.sk-topic-hero h2{
    color:#103834 !important;
    font-size:clamp(30px,4vw,46px) !important;
    line-height:1.08 !important;
    letter-spacing:-.045em !important;
    margin:0 0 12px !important;
}

.sk-dashboard-hero p,
.sk-admin-hero p,
.sk-profile-hero p,
.sk-school-hero p,
.sk-pricing-hero p,
.sk-topic-hero p,
.sk-card p{
    color:#617773 !important;
    line-height:1.55 !important;
    font-size:15px !important;
}

.sk-card{padding:22px !important;border-radius:24px !important;}
.sk-card h2,.sk-card h3{color:#103834 !important;letter-spacing:-.025em !important;}
.sk-card h2{font-size:28px !important;}
.sk-card h3{font-size:21px !important;}

.sk-stat-card{
    padding:18px !important;
    border-radius:22px !important;
    min-height:120px !important;
}
.sk-stat-card small{color:#607773 !important;font-size:12px !important;font-weight:800 !important;}
.sk-stat-card strong{color:#103834 !important;font-size:34px !important;line-height:1 !important;margin:8px 0 4px !important;}
.sk-stat-card span{color:#6C827E !important;font-size:12px !important;font-weight:700 !important;}

.sk-action-item{
    padding:14px 16px !important;
    border-radius:18px !important;
    background:#F8FCFA !important;
    box-shadow:none !important;
}
.sk-action-item:hover{background:#EFF8F4 !important;transform:none !important;}
.sk-action-item strong{color:#103834 !important;font-size:15px !important;}
.sk-action-item small{color:#6C827E !important;font-size:12px !important;}

.sk-btn{
    border-radius:14px !important;
    padding:12px 16px !important;
    font-size:14px !important;
    font-weight:800 !important;
    box-shadow:none !important;
}
.sk-btn-primary{background:linear-gradient(135deg,#0F8A5F,#087050) !important;color:#fff !important;}
.sk-btn-soft,.sk-btn-ghost{background:#F2FAF6 !important;color:#075E45 !important;border:1px solid rgba(15,94,69,.12) !important;}
.sk-btn-gold{background:linear-gradient(135deg,#F3D37C,#D9A441) !important;color:#3A2A09 !important;}

.sk-input, select.sk-input, textarea.sk-input{
    background:#FFFFFF !important;
    color:#173A36 !important;
    border:1px solid rgba(15,94,69,.16) !important;
    border-radius:14px !important;
}
.sk-input::placeholder{color:#9AADAA !important;}
.sk-form-group label{color:#234C46 !important;font-size:13px !important;}

.sk-table th,.sk-table td,.table th,.table td{
    color:#183C38 !important;
    border-bottom:1px solid rgba(15,94,69,.10) !important;
}
.sk-table th,.table th{
    color:#607773 !important;
    background:rgba(15,138,95,.045) !important;
}

.sk-alert-success{
    background:#DDF8EB !important;
    color:#075E45 !important;
    border:1px solid rgba(15,138,95,.18) !important;
}
.sk-alert-error{
    background:#FFF0F0 !important;
    color:#9E2727 !important;
    border:1px solid rgba(158,39,39,.16) !important;
}

/* text reset from dark version */
.sk-section-title h2,.sk-hero h1,.sk-mock-header h3,.sk-mini-card strong,.sk-feature-card h3,
.sk-card h2,.sk-card h3,.sk-stat-card strong,.sk-action-item strong,.sk-price-amount,
.sk-school-card h3,.sk-topic-card h3,.sk-topic-card strong,.sk-path-list strong,.sk-year-card h3,
.sk-focus-card h3,.sk-focus-card strong,.sk-lesson-block h3,.sk-empty-state strong,
.sk-report-student strong,.sk-assignment-row strong,.sk-auth-card h2,.sk-auth-copy h1,
.sk-child-row strong,.sk-child-list strong{
    color:var(--sk-text) !important;
}
.sk-section-title p,.sk-hero p,.sk-mini-card small,.sk-feature-card p,.sk-card p,
.sk-action-item small,.sk-school-card p,.sk-subscription-row small,.sk-topic-card p,
.sk-year-card p,.sk-focus-card p,.sk-mini-meta span,.sk-empty-state p,.sk-report-student small,
.sk-assignment-row small,.sk-auth-card p,.sk-form-note,.sk-auth-copy p,.sk-child-row small{
    color:var(--sk-muted) !important;
}

/* Keep sidebar static; only main/page content scrolls */
@media (min-width: 981px){
    html, body{
        height:100% !important;
        overflow:hidden !important;
    }

    .sk-app-shell{
        height:100vh !important;
        min-height:100vh !important;
        overflow:hidden !important;
    }

    .sk-app{
        height:100vh !important;
        min-height:100vh !important;
        overflow:hidden !important;
        align-items:stretch !important;
    }

    .sk-sidebar{
        position:sticky !important;
        top:0 !important;
        height:100vh !important;
        align-self:start !important;
    }

    .sk-main{
        height:100vh !important;
        overflow-y:auto !important;
        overflow-x:hidden !important;
        padding-bottom:36px !important;
        scrollbar-width:thin !important;
        scrollbar-color:rgba(15,138,95,.24) transparent !important;
    }

    .sk-main::-webkit-scrollbar{
        width:10px !important;
    }

    .sk-main::-webkit-scrollbar-track{
        background:transparent !important;
    }

    .sk-main::-webkit-scrollbar-thumb{
        background:rgba(15,138,95,.24) !important;
        border-radius:999px !important;
        border:2px solid transparent !important;
        background-clip:padding-box !important;
    }
}

@media(max-width:980px){
    .sk-app{grid-template-columns:1fr !important;}

    .sk-sidebar{
        width:278px !important;
        left:-300px !important;
        background:rgba(255,255,255,.92) !important;
    }

    .sk-sidebar.open{left:0 !important;}

    .sk-menu-btn{
        display:grid !important;
        background:#F2FAF6 !important;
        border:1px solid rgba(15,94,69,.12) !important;
    }

    .sk-menu-btn span{background:#075E45 !important;}
}

@media(max-width:720px){
    .sk-main{padding:14px !important;}
    .sk-topbar h1{font-size:24px !important;}
    .sk-dashboard-hero h2,.sk-admin-hero h2,.sk-profile-hero h2,.sk-school-hero h2,.sk-pricing-hero h2,.sk-topic-hero h2{
        font-size:30px !important;
    }
    .sk-card{padding:18px !important;}
}



/* =========================================================
   Step 13E: Login/Register Clean Professional Layout
   Fix: previous auth layout was too wide/imbalanced.
   ========================================================= */

body.sk-auth-page{
    min-height:100vh !important;
    overflow:auto !important;
    font-family:Calibri,"Segoe UI",Arial,sans-serif !important;
    background:
        radial-gradient(circle at 12% 18%, rgba(15,138,95,.16), transparent 24%),
        radial-gradient(circle at 78% 18%, rgba(93,111,232,.12), transparent 25%),
        radial-gradient(circle at 88% 86%, rgba(217,164,65,.10), transparent 24%),
        linear-gradient(135deg,#F7FCFA 0%,#EEF8F3 55%,#FFF8EA 100%) !important;
}

.sk-auth-scene{
    min-height:100vh !important;
    padding:28px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:auto !important;
    background:transparent !important;
}

.sk-auth-wave{
    opacity:.26 !important;
    filter:blur(18px) !important;
}

.sk-auth-wrap-polished{
    width:min(1120px,100%) !important;
    min-height:auto !important;
    display:grid !important;
    grid-template-columns:minmax(0,1.02fr) minmax(390px,.78fr) !important;
    gap:22px !important;
    align-items:stretch !important;
    margin:0 auto !important;
    background:transparent !important;
}

.sk-auth-panel-glow{
    min-height:620px !important;
    padding:34px !important;
    border-radius:30px !important;
    background:rgba(255,255,255,.74) !important;
    border:1px solid rgba(15,94,69,.14) !important;
    box-shadow:0 20px 54px rgba(15,94,69,.10) !important;
    backdrop-filter:blur(18px) saturate(125%) !important;
    -webkit-backdrop-filter:blur(18px) saturate(125%) !important;
}

.sk-auth-copy{
    max-width:620px !important;
    height:100% !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
}

.sk-auth-copy .sk-brand{
    margin-bottom:28px !important;
}

.sk-auth-kicker{
    width:max-content !important;
    max-width:100% !important;
    margin:0 0 18px !important;
    padding:8px 14px !important;
    border-radius:999px !important;
    background:#E8F7F0 !important;
    border:1px solid rgba(15,94,69,.12) !important;
    color:#075E45 !important;
    font-size:11px !important;
    letter-spacing:.16em !important;
    white-space:normal !important;
}

.sk-auth-copy h1{
    max-width:560px !important;
    margin:0 0 16px !important;
    color:#103834 !important;
    font-size:clamp(38px,4.4vw,58px) !important;
    line-height:1.02 !important;
    letter-spacing:-.055em !important;
}

.sk-auth-copy p{
    max-width:560px !important;
    margin:0 !important;
    color:#607773 !important;
    font-size:17px !important;
    line-height:1.65 !important;
}

.sk-auth-bullet-list{
    margin-top:28px !important;
    max-width:560px !important;
    gap:10px !important;
}

.sk-auth-bullet-list div{
    min-height:70px !important;
    padding:14px 16px !important;
    border-radius:18px !important;
    background:rgba(255,255,255,.78) !important;
    border:1px solid rgba(15,94,69,.12) !important;
    box-shadow:none !important;
}

.sk-auth-bullet-list span{
    width:34px !important;
    height:34px !important;
    border-radius:12px !important;
    background:linear-gradient(135deg,#BFEBDD,#C9D8FF) !important;
    color:#fff !important;
    font-size:17px !important;
}

.sk-auth-bullet-list strong{
    color:#103834 !important;
    font-size:15px !important;
}

.sk-auth-bullet-list small{
    color:#6A7E7A !important;
    font-size:13px !important;
    line-height:1.35 !important;
}

.sk-auth-card-wrap{
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
}

.sk-auth-card-glass{
    width:100% !important;
    max-width:430px !important;
    min-height:auto !important;
    padding:30px !important;
    border-radius:28px !important;
    background:rgba(255,255,255,.82) !important;
    border:1px solid rgba(15,94,69,.14) !important;
    box-shadow:0 24px 60px rgba(15,94,69,.13) !important;
    backdrop-filter:blur(18px) saturate(125%) !important;
    -webkit-backdrop-filter:blur(18px) saturate(125%) !important;
}

.sk-auth-card-glass:before{
    display:none !important;
}

.sk-auth-card-head{
    margin-bottom:22px !important;
}

.sk-auth-card h2{
    margin:0 0 8px !important;
    color:#103834 !important;
    font-size:34px !important;
    line-height:1.1 !important;
    letter-spacing:-.04em !important;
}

.sk-auth-card p{
    margin:0 !important;
    color:#607773 !important;
    font-size:15px !important;
    line-height:1.55 !important;
}

.sk-auth-form{
    display:grid !important;
    gap:14px !important;
}

.sk-auth-form .sk-form-group{
    margin:0 !important;
}

.sk-auth-form label{
    color:#214A44 !important;
    font-size:13px !important;
    font-weight:800 !important;
    margin-bottom:8px !important;
}

.sk-input-wrap{
    height:52px !important;
    padding:0 14px !important;
    border-radius:17px !important;
    background:#FFFFFF !important;
    border:1px solid rgba(15,94,69,.15) !important;
    box-shadow:0 8px 18px rgba(15,94,69,.035) !important;
}

.sk-input-wrap:focus-within{
    border-color:rgba(15,138,95,.45) !important;
    box-shadow:0 0 0 4px rgba(15,138,95,.09) !important;
}

.sk-input-icon{
    color:#A6BBB6 !important;
    font-size:13px !important;
}

.sk-input-wrap .sk-input{
    height:50px !important;
    color:#143431 !important;
    font-size:15px !important;
}

.sk-auth-form .sk-btn-primary{
    height:52px !important;
    margin-top:2px !important;
    border-radius:17px !important;
    font-size:16px !important;
    letter-spacing:.01em !important;
    background:linear-gradient(135deg,#0F8A5F,#087050) !important;
    box-shadow:0 14px 26px rgba(15,138,95,.18) !important;
}

.sk-auth-mini-links{
    margin-top:18px !important;
    padding-top:16px !important;
    border-top:1px solid rgba(15,94,69,.10) !important;
    color:#607773 !important;
    font-size:14px !important;
}

.sk-auth-mini-links a{
    color:#0F8A5F !important;
    font-weight:800 !important;
}

.sk-auth-page .sk-alert{
    margin-bottom:16px !important;
}

/* Compact register form slightly */
body.sk-auth-page .sk-auth-card-glass form[action$="register.php"]{
    gap:11px !important;
}

body.sk-auth-page .sk-auth-card-glass form[action$="register.php"] .sk-input-wrap{
    height:48px !important;
}

body.sk-auth-page .sk-auth-card-glass form[action$="register.php"] .sk-input{
    height:46px !important;
}

@media(max-width:1050px){
    .sk-auth-wrap-polished{
        grid-template-columns:1fr !important;
        max-width:720px !important;
        gap:18px !important;
    }

    .sk-auth-panel-glow{
        min-height:auto !important;
    }

    .sk-auth-copy{
        justify-content:flex-start !important;
    }

    .sk-auth-bullet-list{
        grid-template-columns:1fr !important;
    }

    .sk-auth-card-glass{
        max-width:100% !important;
    }
}

@media(max-width:620px){
    .sk-auth-scene{
        padding:14px !important;
        align-items:flex-start !important;
    }

    .sk-auth-panel-glow,
    .sk-auth-card-glass{
        padding:22px !important;
        border-radius:24px !important;
    }

    .sk-auth-copy h1{
        font-size:36px !important;
    }

    .sk-auth-card h2{
        font-size:30px !important;
    }

    .sk-auth-bullet-list div{
        grid-template-columns:auto 1fr !important;
    }

    .sk-auth-mini-links{
        flex-direction:column !important;
        align-items:flex-start !important;
    }
}

/* SmartKafa Interactive Practice Engine v1 */
.sk-field-hint{font-size:12px;color:var(--sk-muted);font-weight:800}.sk-mini-file-input{margin-top:8px;padding:10px 12px!important;font-size:12px}.sk-interactive-builder{border:1px dashed rgba(15,138,95,.24);background:rgba(241,251,245,.72);border-radius:22px;padding:14px}.sk-pair-row{margin-bottom:10px}.sk-interactive-hero{background:linear-gradient(135deg,rgba(15,138,95,.94),rgba(7,94,69,.9)),radial-gradient(circle at top right,rgba(244,186,76,.25),transparent 34%)!important;color:#fff}.sk-interactive-hero h2,.sk-interactive-hero p,.sk-interactive-hero .sk-eyebrow{color:#fff}.sk-quiz-progress-card{position:sticky;top:88px;z-index:10;background:rgba(255,255,255,.88);border:1px solid var(--sk-border);box-shadow:0 18px 52px rgba(15,94,69,.08);border-radius:24px;padding:14px 16px;backdrop-filter:blur(16px)}.sk-quiz-progress-text{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.sk-quiz-progress-text strong{color:var(--sk-primary-dark)}.sk-quiz-progress-text small{color:var(--sk-muted);font-weight:800}.sk-quiz-progress-bar{height:10px;border-radius:999px;background:rgba(15,138,95,.11);overflow:hidden}.sk-quiz-progress-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--sk-primary),#F4BA4C);border-radius:999px;transition:.25s ease}.sk-quiz-form.is-enhanced .sk-quiz-card{display:none}.sk-quiz-form.is-enhanced .sk-quiz-card.is-active{display:block;animation:skQuizIn .22s ease both}@keyframes skQuizIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sk-question-media{margin:0 0 18px}.sk-question-media img{display:block;max-width:100%;max-height:380px;object-fit:cover;border-radius:24px;border:1px solid var(--sk-border);box-shadow:0 14px 34px rgba(15,94,69,.08)}.sk-review-media img{max-height:260px}.sk-option-media{display:block;width:100%;max-height:170px;object-fit:cover;border-radius:16px;margin-bottom:10px;border:1px solid var(--sk-border)}.sk-answer-option:has(input:checked){border-color:rgba(15,138,95,.55);background:#F1FBF5;box-shadow:0 14px 38px rgba(15,94,69,.1)}.sk-quiz-nav-card{display:flex;justify-content:space-between;align-items:center;gap:12px;background:rgba(255,255,255,.88);border:1px solid var(--sk-border);border-radius:24px;padding:14px;box-shadow:0 18px 52px rgba(15,94,69,.07);position:sticky;bottom:18px;z-index:12;backdrop-filter:blur(16px)}.sk-quiz-card-warning{color:#A72C2C!important;background:#FFF0F0;border:1px solid rgba(167,44,44,.15);border-radius:14px;padding:10px 12px;margin:14px 0 0!important;font-weight:850}.sk-draggable-bank{display:flex;flex-wrap:wrap;gap:10px;padding:14px;border-radius:22px;background:#FBFEFC;border:1px solid var(--sk-border);min-height:68px}.sk-drag-chip{border:1px solid rgba(15,138,95,.22);background:#fff;border-radius:999px;padding:10px 14px;font-weight:950;color:var(--sk-primary-dark);cursor:grab;box-shadow:0 10px 26px rgba(15,94,69,.06);transition:.18s ease}.sk-drag-chip:hover,.sk-drag-chip.is-selected{transform:translateY(-1px);background:#F1FBF5;border-color:rgba(15,138,95,.5)}.sk-matching-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,.8fr);gap:16px}.sk-matching-pairs{display:grid;gap:12px}.sk-match-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:12px;align-items:center}.sk-match-left{background:linear-gradient(135deg,#F1FBF5,#fff);border:1px solid var(--sk-border);border-radius:18px;padding:14px;font-weight:950;color:var(--sk-primary-dark)}.sk-match-drop,.sk-word-drop{min-height:58px;display:flex;align-items:center;justify-content:center;text-align:center;border:2px dashed rgba(15,138,95,.28);background:#fff;border-radius:18px;padding:10px;color:var(--sk-muted);font-weight:850;transition:.18s ease}.sk-match-drop.is-over,.sk-word-drop.is-over{background:#F1FBF5;border-color:var(--sk-primary)}.sk-match-drop .sk-drag-chip{width:100%;white-space:normal;cursor:pointer}.sk-word-bank-area{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;margin-bottom:12px}.sk-word-drop strong{font-size:18px;color:var(--sk-primary-dark)}.sk-btn-sm{padding:10px 14px!important;font-size:13px!important}.sk-order-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.sk-order-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#FBFEFC;border:1px solid var(--sk-border);border-radius:18px;padding:13px 14px;cursor:grab;box-shadow:0 10px 24px rgba(15,94,69,.04)}.sk-order-list li.is-dragging{opacity:.55}.sk-order-list li span{font-weight:950;color:var(--sk-primary-dark);line-height:1.45}.sk-order-list li div{display:flex;gap:6px}.sk-order-list button{width:34px;height:34px;border:1px solid var(--sk-border);background:#fff;border-radius:12px;font-weight:950;color:var(--sk-primary-dark);cursor:pointer}.sk-answer-review-long strong{line-height:1.65;display:block;white-space:normal}
@media(max-width:780px){.sk-quiz-progress-card{top:74px}.sk-quiz-progress-text{align-items:flex-start;flex-direction:column}.sk-matching-layout{grid-template-columns:1fr}.sk-match-row{grid-template-columns:1fr}.sk-word-bank-area{grid-template-columns:1fr}.sk-quiz-nav-card{left:12px;right:12px;bottom:12px}.sk-quiz-nav-card .sk-btn{flex:1}.sk-draggable-bank{gap:8px}.sk-drag-chip{width:100%;white-space:normal}.sk-question-media img{max-height:280px}}

/* SmartKafa Interactive Practice Engine v2 */
.sk-option-builder-row{padding:12px;border:1px solid rgba(15,138,95,.10);border-radius:18px;background:rgba(255,255,255,.72);margin-bottom:10px}.sk-option-builder-row label{display:block;margin-bottom:8px}.sk-result-hero-v2{background:linear-gradient(135deg,rgba(15,138,95,.96),rgba(7,94,69,.92)),radial-gradient(circle at top right,rgba(244,186,76,.32),transparent 35%)!important;color:#fff}.sk-result-hero-v2 h2,.sk-result-hero-v2 p,.sk-result-hero-v2 .sk-eyebrow{color:#fff}.sk-result-hero-v2 .sk-btn-soft{background:rgba(255,255,255,.16)!important;color:#fff!important;border-color:rgba(255,255,255,.26)!important}.sk-badge-unlocked-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:18px;align-items:center;background:linear-gradient(135deg,#fffdf5,#f1fbf5)!important;border-color:rgba(244,186,76,.28)!important}.sk-badge-unlocked-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.sk-badge-mini{padding:14px;border-radius:20px;background:#fff;border:1px solid rgba(15,138,95,.12);box-shadow:0 12px 30px rgba(15,94,69,.07);display:grid;gap:5px}.sk-badge-mini span{font-size:30px}.sk-badge-mini strong{color:var(--sk-primary-dark);font-weight:950}.sk-badge-mini small{color:var(--sk-muted);line-height:1.35}.sk-badges-hero{background:linear-gradient(135deg,#f1fbf5,#fffaf0)!important}.sk-badge-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.sk-badge-card{position:relative;overflow:hidden;padding:20px;border-radius:24px;border:1px solid var(--sk-border);background:#fff;box-shadow:0 14px 34px rgba(15,94,69,.06);min-height:200px;display:flex;flex-direction:column;gap:9px}.sk-badge-card:before{content:"";position:absolute;inset:auto -30px -45px auto;width:110px;height:110px;border-radius:999px;background:rgba(15,138,95,.08)}.sk-badge-card span{font-size:42px;line-height:1}.sk-badge-card strong{font-size:18px;color:var(--sk-primary-dark);font-weight:950}.sk-badge-card p{margin:0;color:var(--sk-muted);font-size:14px;line-height:1.45}.sk-badge-card small{margin-top:auto;color:var(--sk-primary);font-weight:850}.sk-badge-card.is-locked{filter:grayscale(.75);opacity:.62;background:#fbfbfb}.sk-badge-card.is-locked small{color:#8a9694}.sk-badge-card.is-earned{border-color:rgba(15,138,95,.25);background:linear-gradient(135deg,#fff,#f1fbf5)}.sk-quiz-form.is-enhanced{display:block}.sk-quiz-form.is-enhanced .sk-quiz-card{margin-top:18px}.sk-answer-option{cursor:pointer}.sk-answer-option input{accent-color:var(--sk-primary)}.sk-review-item.correct{border-color:rgba(15,138,95,.25)!important}.sk-review-item.wrong{border-color:rgba(196,71,71,.24)!important}.sk-answer-review-box.correct-answer{background:#f1fbf5!important;border-color:rgba(15,138,95,.18)!important}.sk-interactive-builder h4{margin:0 0 6px;color:var(--sk-primary-dark);font-size:16px}.sk-interactive-builder .sk-muted-text{margin:0 0 12px}.sk-question-number{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:#f1fbf5;color:var(--sk-primary-dark);font-weight:900;font-size:13px;margin-bottom:12px}.sk-quiz-card h3{margin-top:0;font-size:24px;line-height:1.35;color:var(--sk-primary-dark)}.sk-quiz-card .sk-answer-grid{margin-top:14px}.sk-draggable-bank .sk-drag-chip{user-select:none}.sk-word-drop span,.sk-match-drop span{color:#8aa09b}.sk-order-list{counter-reset:skorder}.sk-order-list li:before{counter-increment:skorder;content:counter(skorder);width:32px;height:32px;border-radius:12px;background:#f1fbf5;color:var(--sk-primary-dark);display:grid;place-items:center;font-weight:950;flex:0 0 auto}.sk-order-list li span{flex:1}.sk-order-list button:hover{background:#f1fbf5}.sk-field-hint{opacity:.8}.mt-10{margin-top:10px!important}.mt-20{margin-top:20px!important}@media(max-width:780px){.sk-badge-unlocked-card{grid-template-columns:1fr}.sk-badge-gallery{grid-template-columns:1fr}.sk-quiz-card h3{font-size:21px}.sk-result-actions{width:100%}.sk-result-actions .sk-btn{width:100%;justify-content:center}}

/* Hafazan & Amali Module v1 */
.sk-ha-hero {
    align-items: center;
    gap: 24px;
    margin-bottom: 18px;
}
.sk-ha-score-circle {
    width: 128px;
    height: 128px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    text-align: center;
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(255,255,255,.82);
    box-shadow: 0 20px 50px rgba(15, 23, 42, .12);
    flex: 0 0 auto;
}
.sk-ha-score-circle strong {
    display: block;
    font-size: 30px;
    line-height: 1;
    color: #0f766e;
}
.sk-ha-score-circle span {
    display: block;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #64748b;
    margin-top: 6px;
}
.sk-ha-list {
    display: grid;
    gap: 18px;
}
.sk-ha-card {
    overflow: hidden;
}
.sk-ha-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
}
.sk-ha-card-head h3 {
    margin: 4px 0 6px;
}
.sk-muted {
    color: #64748b;
}
.sk-progress-wrap {
    display: grid;
    gap: 8px;
    margin: 14px 0;
}
.sk-progress-bar {
    height: 11px;
    border-radius: 999px;
    overflow: hidden;
    background: rgba(15, 23, 42, .08);
}
.sk-progress-bar span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #0f766e, #22c55e);
}
.sk-ha-review-box {
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(15, 118, 110, .08);
    border: 1px solid rgba(15, 118, 110, .14);
    margin: 14px 0;
}
.sk-ha-review-box p {
    margin: 6px 0 0;
}
.sk-ha-form,
.sk-review-form {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid rgba(148, 163, 184, .25);
}
.sk-amali-steps {
    display: grid;
    gap: 10px;
    margin: 12px 0;
}
.sk-amali-step {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 14px;
    border-radius: 16px;
    background: rgba(248, 250, 252, .86);
    border: 1px solid rgba(148, 163, 184, .25);
    cursor: pointer;
}
.sk-amali-step input {
    margin-top: 4px;
    transform: scale(1.15);
}
.sk-amali-step strong,
.sk-amali-step small {
    display: block;
}
.sk-amali-step small {
    color: #64748b;
    margin-top: 4px;
}
.sk-amali-step.is-done {
    background: rgba(34, 197, 94, .10);
    border-color: rgba(34, 197, 94, .22);
}
.sk-step-dot {
    width: 28px;
    height: 28px;
    display: inline-grid;
    place-items: center;
    border-radius: 999px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .12);
    font-weight: 900;
    color: #0f766e;
    flex: 0 0 auto;
}
.sk-form-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.sk-inline-select {
    min-width: min(320px, 100%);
}
.sk-inline-form {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.sk-input-small {
    min-width: 130px;
    padding: 9px 10px;
}
.sk-check-line {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
}
.sk-table-wrap {
    overflow-x: auto;
}
.sk-table {
    width: 100%;
    border-collapse: collapse;
}
.sk-table th,
.sk-table td {
    padding: 13px 12px;
    border-bottom: 1px solid rgba(148, 163, 184, .22);
    text-align: left;
    vertical-align: top;
}
.sk-table th {
    color: #475569;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.sk-mb-4 {
    margin-bottom: 18px;
}

@media (max-width: 860px) {
    .sk-ha-card-head,
    .sk-ha-hero {
        flex-direction: column;
        align-items: stretch;
    }
    .sk-ha-score-circle {
        width: 100%;
        height: auto;
        min-height: 92px;
        border-radius: 24px;
    }
    .sk-form-grid-3 {
        grid-template-columns: 1fr;
    }
    .sk-inline-form {
        align-items: stretch;
    }
    .sk-inline-form .sk-input,
    .sk-inline-form .sk-btn {
        width: 100%;
    }
}

/* SmartKafa Hafazan & Amali v2 */
.sk-recording-box{
    margin:18px 0;
    padding:16px;
    border:1px solid rgba(15,138,95,.16);
    border-radius:24px;
    background:linear-gradient(135deg,rgba(241,251,245,.92),rgba(255,255,255,.94));
    box-shadow:0 14px 34px rgba(15,94,69,.06);
    display:grid;
    gap:12px;
}
.sk-recording-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
}
.sk-recording-head strong{
    display:block;
    color:var(--sk-primary-dark);
    font-weight:950;
}
.sk-recording-head small{
    display:block;
    color:var(--sk-muted);
    font-size:12px;
    font-weight:800;
    margin-top:3px;
    line-height:1.4;
}
.sk-recorder-controls{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}
.sk-recorder-preview audio,
.sk-audio-review-card audio{
    width:100%;
    display:block;
}
.sk-recorder-status{
    margin:0;
    font-size:13px;
    font-weight:850;
    color:var(--sk-muted);
}
.sk-recorder-status.is-recording{color:#A46400;}
.sk-recorder-status.is-success{color:var(--sk-primary-dark);}
.sk-recorder-status.is-error{color:#A72C2C;}
.sk-recorder-status.is-warning{color:#8B6B13;}
.sk-upload-audio-form{
    display:grid;
    gap:10px;
    padding-top:12px;
    border-top:1px dashed rgba(15,138,95,.18);
}
.sk-upload-audio-form label{
    color:var(--sk-primary-dark);
    font-weight:950;
}
.sk-audio-review-card{
    display:grid;
    gap:10px;
    padding:14px;
    border:1px solid rgba(15,138,95,.14);
    border-radius:20px;
    background:#fff;
    box-shadow:0 10px 26px rgba(15,94,69,.05);
}
.sk-audio-review-card small{
    color:var(--sk-muted);
    font-weight:800;
}
.sk-audio-review-card p{
    margin:0;
}
.sk-review-audio-card{
    margin:14px 0;
    background:linear-gradient(135deg,#fff,#f8fffb);
}
.sk-audio-empty-card{
    margin:14px 0;
    padding:13px 14px;
    border-radius:18px;
    background:#fffaf0;
    border:1px dashed rgba(244,186,76,.38);
    color:#8B6B13;
    font-weight:850;
}
@media(max-width:780px){
    .sk-recording-head,
    .sk-recorder-controls{
        flex-direction:column;
        align-items:stretch;
    }
    .sk-recorder-controls .sk-btn{
        width:100%;
    }
}

/* SmartKafa Readiness Dashboard v1 */
.sk-readiness-dashboard-hero{display:grid;grid-template-columns:1fr 260px;gap:22px;align-items:stretch;margin-bottom:20px;padding:26px;border-radius:34px;background:linear-gradient(135deg,rgba(17,167,121,.84),rgba(11,95,71,.84),rgba(125,92,255,.42)) !important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:var(--sk-shadow)!important;backdrop-filter:blur(18px);overflow:hidden;position:relative}.sk-readiness-dashboard-hero:before{content:"";position:absolute;right:-90px;top:-120px;width:320px;height:320px;border-radius:999px;background:rgba(255,255,255,.11)}.sk-rd-hero-copy,.sk-rd-score-card{position:relative;z-index:1}.sk-rd-hero-copy h2{margin:0 0 10px;color:#fff;font-size:clamp(30px,5vw,56px);line-height:.98;letter-spacing:-.07em}.sk-rd-hero-copy p{margin:0;color:rgba(255,255,255,.84);line-height:1.7;max-width:860px;font-weight:720}.sk-rd-hero-copy .sk-eyebrow{color:rgba(255,255,255,.72)}.sk-rd-score-card{display:grid;gap:12px;align-content:center;justify-items:center;padding:18px;border-radius:28px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14)}.sk-rd-score-card small{color:rgba(255,255,255,.74);font-weight:900;text-align:center}.sk-rd-ring-lg{width:168px;height:168px}.sk-rd-ring-lg span{width:114px;height:114px;font-size:32px}.sk-rd-mission-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:20px;border-radius:28px;background:linear-gradient(135deg,rgba(242,206,119,.16),rgba(255,255,255,.08));border:1px solid rgba(255,255,255,.12);box-shadow:var(--sk-shadow);backdrop-filter:blur(18px)}.sk-rd-mission-card h3{margin:0 0 6px;color:#fff;font-size:24px;letter-spacing:-.04em}.sk-rd-mission-card p{margin:0;color:var(--sk-muted);line-height:1.65}.sk-rd-alert{margin-bottom:18px}.sk-rd-stats-grid{margin-bottom:18px}.sk-rd-component-card{margin-bottom:20px}.sk-rd-component-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.sk-rd-component-grid.compact{grid-template-columns:repeat(5,minmax(0,1fr))}.sk-rd-component{display:grid;gap:10px;padding:16px;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);text-decoration:none;color:inherit}.sk-rd-component:hover{transform:translateY(-2px);background:rgba(255,255,255,.10)}.sk-rd-component.static:hover{transform:none}.sk-rd-component div{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.sk-rd-component strong{color:#fff;letter-spacing:-.02em}.sk-rd-component small{color:var(--sk-muted);font-weight:850}.sk-rd-component>span{font-size:28px;font-weight:950;color:#fff;letter-spacing:-.05em}.sk-rd-component p{margin:0;color:var(--sk-muted);font-size:13px;line-height:1.45}.sk-rd-component em,.sk-rd-practical-card em{display:block;height:9px;border-radius:999px;background:rgba(255,255,255,.10);overflow:hidden}.sk-rd-component em i,.sk-rd-practical-card em i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--sk-primary),var(--sk-gold))}.sk-rd-focus-list{display:grid;gap:10px}.sk-rd-focus-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px;border-radius:20px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);text-decoration:none}.sk-rd-focus-row strong{display:block;color:#fff}.sk-rd-focus-row small{display:block;margin-top:4px;color:var(--sk-muted);font-weight:800}.sk-rd-focus-row b{color:#dcfff2;white-space:nowrap}.sk-rd-practical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sk-rd-practical-card{display:grid;gap:8px;padding:16px;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);text-decoration:none}.sk-rd-practical-card strong{color:#fff;font-size:17px}.sk-rd-practical-card span{font-size:34px;line-height:1;font-weight:950;color:#fff;letter-spacing:-.06em}.sk-rd-practical-card small{color:var(--sk-muted);font-weight:850;line-height:1.4}.sk-rd-quick-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.sk-empty-compact{padding:18px!important}.sk-rd-badge-list{display:grid;gap:10px}.sk-rd-badge-row{display:flex;gap:12px;align-items:flex-start;padding:13px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10)}.sk-rd-badge-row>span{font-size:24px}.sk-rd-badge-row strong{display:block;color:#fff}.sk-rd-badge-row small{display:block;margin-top:3px;color:var(--sk-muted);line-height:1.45}.sk-parent-child-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sk-parent-child-card{display:grid;gap:11px;padding:17px;border-radius:24px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);text-decoration:none}.sk-parent-child-card h3{margin:0;color:#fff;font-size:22px;letter-spacing:-.04em}.sk-parent-child-card p{margin:0;color:var(--sk-muted)}.sk-parent-child-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.sk-rd-card-mission{display:block;color:rgba(255,255,255,.78);font-weight:850;line-height:1.45}.sk-parent-progress-stack{display:grid;gap:18px}.sk-parent-progress-card{display:grid;gap:18px}.sk-parent-progress-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.sk-rd-parent-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sk-rd-parent-detail-grid.single{grid-template-columns:repeat(2,minmax(0,1fr))}.sk-rd-parent-detail-grid>div{padding:16px;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10)}.sk-rd-parent-detail-grid h3{margin:0 0 7px;color:#fff}.sk-rd-parent-detail-grid p{margin:0 0 12px;color:var(--sk-muted);line-height:1.55}.sk-teacher-rd-hero .sk-rd-hero-copy h2,.sk-parent-rd-hero .sk-rd-hero-copy h2{font-size:clamp(30px,4vw,48px)}.sk-rd-teacher-row{display:grid;gap:12px;padding:14px;border-radius:24px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);margin-bottom:12px}.sk-rd-teacher-components{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.sk-rd-teacher-components span{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08)}.sk-rd-teacher-components b{color:#fff;font-size:12px}.sk-rd-teacher-components em{font-style:normal;color:var(--sk-muted);font-weight:950}.sk-rd-teacher-actions{display:flex;gap:8px;flex-wrap:wrap}.sk-mini-attempt-list a span{color:var(--sk-muted)}.sk-subject-bar em{background:rgba(255,255,255,.10)!important}.sk-subject-bar em i{background:linear-gradient(90deg,var(--sk-primary),var(--sk-gold))!important}.mt-20{margin-top:20px}
@media(max-width:1180px){.sk-rd-component-grid,.sk-rd-component-grid.compact,.sk-rd-teacher-components{grid-template-columns:repeat(2,minmax(0,1fr))}.sk-readiness-dashboard-hero{grid-template-columns:1fr}.sk-rd-score-card{justify-items:start}.sk-rd-ring-lg{align-self:start}.sk-parent-child-cards{grid-template-columns:1fr}}
@media(max-width:760px){.sk-readiness-dashboard-hero,.sk-rd-mission-card,.sk-parent-progress-head{display:flex;flex-direction:column;align-items:stretch}.sk-rd-score-card{justify-items:center}.sk-rd-component-grid,.sk-rd-component-grid.compact,.sk-rd-practical-grid,.sk-rd-parent-detail-grid,.sk-rd-parent-detail-grid.single,.sk-rd-teacher-components{grid-template-columns:1fr}.sk-rd-mission-card .sk-btn,.sk-rd-quick-actions .sk-btn{width:100%}.sk-rd-focus-row{flex-direction:column;align-items:flex-start}.sk-rd-hero-copy h2{font-size:34px}.sk-rd-component div{display:grid}.sk-rd-teacher-actions .sk-btn{width:100%}}

/* SmartKafa Intervention & Export Report v1 */
.sk-intervention-hero .sk-rd-score-card{align-content:center}.sk-intervention-big{font-size:70px;line-height:.9;color:#fff;letter-spacing:-.08em}.sk-intervention-topic-list,.sk-intervention-student-list{display:grid;gap:14px}.sk-intervention-topic-card,.sk-intervention-student-card{display:grid;gap:12px;padding:16px;border-radius:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);box-shadow:0 16px 36px rgba(15,23,42,.08)}.sk-intervention-topic-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.sk-intervention-topic-head strong{display:block;color:#fff;font-size:18px;letter-spacing:-.03em}.sk-intervention-topic-head small{display:block;color:var(--sk-muted);font-weight:850;line-height:1.45;margin-top:4px}.sk-student-chip-row{display:flex;flex-wrap:wrap;gap:8px}.sk-student-chip-row span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);color:rgba(255,255,255,.82);font-size:12px;font-weight:850}.sk-student-chip-row b{color:#fff}.sk-student-chip-row.mini span{padding:6px 9px;font-size:11px}.sk-intervention-form{display:grid;grid-template-columns:1.3fr 1.4fr 150px auto;gap:10px;align-items:center;padding-top:12px;border-top:1px dashed rgba(255,255,255,.12)}.sk-muted-note{display:block;color:var(--sk-muted);font-weight:820;line-height:1.45}.sk-report-student{display:flex;align-items:center;gap:12px}.sk-report-student>span:nth-child(2){flex:1;min-width:0}.sk-report-student strong{display:block;color:#fff}.sk-report-student small{display:block;color:var(--sk-muted);font-weight:800;margin-top:3px;line-height:1.4}.sk-avatar-soft{width:42px;height:42px;border-radius:999px;display:inline-grid;place-items:center;background:linear-gradient(135deg,rgba(17,167,121,.22),rgba(242,206,119,.18));border:1px solid rgba(255,255,255,.12);font-weight:950;color:#fff;flex:0 0 auto}.sk-score-pill{display:inline-flex;align-items:center;justify-content:center;min-width:62px;padding:8px 10px;border-radius:999px;background:rgba(17,167,121,.16);color:#dcfff2;font-weight:950}.sk-score-pill.warn{background:rgba(242,206,119,.16);color:#ffe8a6}.sk-score-pill.danger{background:rgba(239,68,68,.14);color:#fecaca}.sk-filter-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.sk-filter-row .sk-input{max-width:360px}@media(max-width:980px){.sk-intervention-form{grid-template-columns:1fr}.sk-intervention-form .sk-btn{width:100%}.sk-intervention-topic-head,.sk-report-student{align-items:flex-start;flex-direction:column}.sk-filter-row .sk-input,.sk-filter-row .sk-btn{width:100%;max-width:100%}.sk-intervention-big{font-size:52px}}

/* =========================================================
   SmartKafa UI Compact Density v1
   Tujuan: kecilkan header/hero/stat/card supaya page tak makan ruang,
   tanpa ubah flow, DB, query atau struktur PHP sedia ada.
   ========================================================= */

.sk-app .sk-main{
    padding:18px 22px 24px !important;
}

/* Compact topbar */
.sk-app .sk-topbar{
    top:10px !important;
    min-height:60px !important;
    margin-bottom:14px !important;
    padding:10px 14px !important;
    border-radius:18px !important;
    box-shadow:0 10px 26px rgba(15,94,69,.07) !important;
}

.sk-app .sk-topbar-left{
    gap:11px !important;
}

.sk-app .sk-topbar .sk-eyebrow,
.sk-app .sk-eyebrow{
    margin:0 0 3px !important;
    font-size:10px !important;
    line-height:1.1 !important;
    letter-spacing:.13em !important;
}

.sk-app .sk-topbar h1{
    font-size:clamp(22px,1.7vw,26px) !important;
    line-height:1.1 !important;
    letter-spacing:-.025em !important;
    margin:0 !important;
}

.sk-app .sk-user-pill{
    gap:9px !important;
    padding:6px 8px 6px 6px !important;
}

.sk-app .sk-user-avatar{
    width:36px !important;
    height:36px !important;
    border-radius:12px !important;
    font-size:12px !important;
}

.sk-app .sk-user-meta strong{
    font-size:12px !important;
}

.sk-app .sk-user-meta small{
    font-size:10px !important;
}

.sk-app .sk-user-pill a{
    padding:8px 11px !important;
    font-size:12px !important;
}

/* Compact global cards */
.sk-app .sk-card,
.sk-app .sk-lesson-block,
.sk-app .sk-quiz-card,
.sk-app .sk-answer-card,
.sk-app .sk-question-card,
.sk-app .sk-report-card,
.sk-app .sk-student-card,
.sk-app .sk-profile-card,
.sk-app .sk-school-card,
.sk-app .sk-price-card,
.sk-app .sk-public-price-card,
.sk-app .sk-feature-card,
.sk-app .sk-child-row,
.sk-app .sk-assignment-row,
.sk-app .sk-subscription-row,
.sk-app .sk-report-student,
.sk-app .sk-table-wrap,
.sk-app .sk-topic-table-wrap,
.sk-app .sk-empty-state{
    border-radius:20px !important;
    box-shadow:0 10px 28px rgba(15,94,69,.065) !important;
}

.sk-app .sk-card{
    padding:18px !important;
}

.sk-app .sk-card-head{
    gap:12px !important;
    margin-bottom:10px !important;
}

.sk-app .sk-card h2,
.sk-app .sk-card-head h2{
    font-size:clamp(20px,1.8vw,24px) !important;
    line-height:1.16 !important;
    margin:0 0 6px !important;
    letter-spacing:-.025em !important;
}

.sk-app .sk-card h3{
    font-size:18px !important;
    line-height:1.2 !important;
    margin:0 0 8px !important;
}

.sk-app .sk-card p{
    font-size:14px !important;
    line-height:1.48 !important;
}

/* Compact page hero/banner blocks */
.sk-app .sk-dashboard-hero,
.sk-app .sk-admin-hero,
.sk-app .sk-profile-hero,
.sk-app .sk-school-hero,
.sk-app .sk-pricing-hero,
.sk-app .sk-topic-hero,
.sk-app .sk-hero-card-mini{
    min-height:auto !important;
    padding:16px 18px !important;
    border-radius:20px !important;
    margin-bottom:14px !important;
    gap:14px !important;
}

.sk-app .sk-dashboard-hero h2,
.sk-app .sk-admin-hero h2,
.sk-app .sk-profile-hero h2,
.sk-app .sk-school-hero h2,
.sk-app .sk-pricing-hero h2,
.sk-app .sk-topic-hero h2,
.sk-app .sk-hero-card-mini h2{
    font-size:clamp(22px,2vw,30px) !important;
    line-height:1.12 !important;
    letter-spacing:-.035em !important;
    margin:0 0 7px !important;
}

.sk-app .sk-dashboard-hero p,
.sk-app .sk-admin-hero p,
.sk-app .sk-profile-hero p,
.sk-app .sk-school-hero p,
.sk-app .sk-pricing-hero p,
.sk-app .sk-topic-hero p,
.sk-app .sk-hero-card-mini p{
    font-size:14px !important;
    line-height:1.48 !important;
    margin:0 !important;
    max-width:900px !important;
}

/* Student/Parent/Teacher readiness hero: previously too tall */
.sk-app .sk-readiness-dashboard-hero{
    grid-template-columns:minmax(0,1fr) 205px !important;
    align-items:center !important;
    gap:16px !important;
    min-height:0 !important;
    padding:18px 20px !important;
    border-radius:22px !important;
    margin-bottom:14px !important;
    box-shadow:0 14px 34px rgba(15,94,69,.11) !important;
}

.sk-app .sk-readiness-dashboard-hero:before{
    width:220px !important;
    height:220px !important;
    right:-70px !important;
    top:-90px !important;
}

.sk-app .sk-rd-hero-copy h2{
    font-size:clamp(28px,3vw,38px) !important;
    line-height:1.02 !important;
    letter-spacing:-.045em !important;
    margin:0 0 8px !important;
}

.sk-app .sk-rd-hero-copy p{
    font-size:14px !important;
    line-height:1.45 !important;
    max-width:780px !important;
    margin:0 !important;
}

.sk-app .sk-rd-hero-copy .sk-chip-row{
    gap:7px !important;
    margin-top:10px !important;
}

.sk-app .sk-badge,
.sk-app .sk-score-pill,
.sk-app .sk-year-pill,
.sk-app .sk-plan-meta span,
.sk-app .sk-mini-meta span{
    padding:5px 9px !important;
    font-size:11px !important;
    line-height:1.2 !important;
}

.sk-app .sk-rd-score-card{
    gap:8px !important;
    padding:12px !important;
    border-radius:18px !important;
}

.sk-app .sk-rd-ring-lg{
    width:118px !important;
    height:118px !important;
}

.sk-app .sk-rd-ring-lg span{
    width:78px !important;
    height:78px !important;
    font-size:24px !important;
}

.sk-app .sk-rd-score-card small{
    font-size:11px !important;
    line-height:1.25 !important;
}

.sk-app .sk-rd-score-card .sk-btn{
    min-height:38px !important;
    padding:9px 12px !important;
    font-size:13px !important;
}

/* Mission/alert cards */
.sk-app .sk-rd-mission-card,
.sk-app .sk-alert-card-v7{
    margin-bottom:14px !important;
    padding:14px 16px !important;
    border-radius:20px !important;
    background:rgba(255,255,255,.76) !important;
    border:1px solid rgba(15,94,69,.13) !important;
    box-shadow:0 10px 28px rgba(15,94,69,.065) !important;
}

.sk-app .sk-rd-mission-card h3,
.sk-app .sk-alert-card-v7 h3{
    color:#103834 !important;
    font-size:clamp(18px,1.7vw,22px) !important;
    line-height:1.15 !important;
    margin:0 0 5px !important;
}

.sk-app .sk-rd-mission-card p,
.sk-app .sk-alert-card-v7 p{
    color:#617773 !important;
    font-size:14px !important;
    line-height:1.45 !important;
    margin:0 !important;
}

/* Compact stat boxes */
.sk-app .sk-stats-grid,
.sk-app .sk-rd-stats-grid{
    gap:12px !important;
    margin-bottom:14px !important;
}

.sk-app .sk-stat-card,
.sk-app .sk-card.sk-stat-card{
    min-height:84px !important;
    padding:13px 15px !important;
    border-radius:18px !important;
    display:grid !important;
    align-content:center !important;
    gap:5px !important;
}

.sk-app .sk-stat-card small,
.sk-app .sk-stat-card span{
    display:block !important;
    color:#607773 !important;
    font-size:12px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    margin:0 !important;
}

.sk-app .sk-stat-card strong{
    display:block !important;
    color:#103834 !important;
    font-size:clamp(24px,2.1vw,30px) !important;
    line-height:1 !important;
    letter-spacing:-.035em !important;
    margin:0 !important;
}

/* Compact learning/focus cards */
.sk-app .sk-year-card,
.sk-app .sk-focus-card,
.sk-app .sk-topic-card,
.sk-app .sk-badge-card,
.sk-app .sk-parent-child-card{
    min-height:auto !important;
    padding:15px !important;
    border-radius:18px !important;
    gap:8px !important;
    box-shadow:0 10px 28px rgba(15,94,69,.065) !important;
}

.sk-app .sk-year-card,
.sk-app .sk-focus-card{
    min-height:156px !important;
}

.sk-app .sk-focus-card > span{
    font-size:28px !important;
    line-height:1 !important;
}

.sk-app .sk-year-card h3,
.sk-app .sk-focus-card h3,
.sk-app .sk-topic-card h3,
.sk-app .sk-parent-child-card h3{
    color:#103834 !important;
    font-size:18px !important;
    line-height:1.2 !important;
    margin:0 !important;
}

.sk-app .sk-year-card p,
.sk-app .sk-focus-card p,
.sk-app .sk-topic-card p,
.sk-app .sk-parent-child-card p{
    color:#617773 !important;
    font-size:13px !important;
    line-height:1.42 !important;
}

/* Readiness internal cards should stay readable in light theme */
.sk-app .sk-rd-component,
.sk-app .sk-rd-focus-row,
.sk-app .sk-rd-practical-card,
.sk-app .sk-rd-badge-row,
.sk-app .sk-parent-child-card,
.sk-app .sk-rd-parent-detail-grid > div,
.sk-app .sk-rd-teacher-row,
.sk-app .sk-rd-teacher-components span,
.sk-app .sk-intervention-topic-card,
.sk-app .sk-intervention-student-card{
    background:rgba(255,255,255,.72) !important;
    border:1px solid rgba(15,94,69,.12) !important;
    border-radius:16px !important;
    box-shadow:none !important;
}

.sk-app .sk-rd-component{
    padding:12px !important;
    gap:7px !important;
}

.sk-app .sk-rd-component strong,
.sk-app .sk-rd-focus-row strong,
.sk-app .sk-rd-practical-card strong,
.sk-app .sk-rd-badge-row strong,
.sk-app .sk-rd-parent-detail-grid h3,
.sk-app .sk-rd-teacher-components b,
.sk-app .sk-intervention-topic-head strong,
.sk-app .sk-report-student strong{
    color:#103834 !important;
}

.sk-app .sk-rd-component small,
.sk-app .sk-rd-component p,
.sk-app .sk-rd-focus-row small,
.sk-app .sk-rd-practical-card small,
.sk-app .sk-rd-badge-row small,
.sk-app .sk-rd-parent-detail-grid p,
.sk-app .sk-rd-teacher-components em,
.sk-app .sk-intervention-topic-head small,
.sk-app .sk-report-student small,
.sk-app .sk-muted-note{
    color:#617773 !important;
}

.sk-app .sk-rd-component > span,
.sk-app .sk-rd-practical-card span,
.sk-app .sk-rd-focus-row b{
    color:#0F8A5F !important;
    font-size:22px !important;
}

.sk-app .sk-rd-component em,
.sk-app .sk-rd-practical-card em,
.sk-app .sk-subject-bar em{
    background:rgba(15,138,95,.11) !important;
}

.sk-app .sk-rd-component-grid,
.sk-app .sk-rd-practical-grid,
.sk-app .sk-rd-teacher-components,
.sk-app .sk-rd-parent-detail-grid{
    gap:10px !important;
}

/* Hafazan / Amali top hero and score */
.sk-app .sk-ha-hero{
    padding:16px 18px !important;
    gap:16px !important;
    align-items:center !important;
}

.sk-app .sk-ha-score-circle{
    width:96px !important;
    height:96px !important;
    min-height:96px !important;
    border-radius:28px !important;
    box-shadow:0 10px 26px rgba(15,94,69,.08) !important;
}

.sk-app .sk-ha-score-circle strong{
    font-size:24px !important;
}

.sk-app .sk-ha-score-circle span{
    font-size:10px !important;
    letter-spacing:.10em !important;
}

.sk-app .sk-ha-list{
    gap:14px !important;
}

.sk-app .sk-ha-card-head{
    gap:12px !important;
    margin-bottom:10px !important;
}

/* Quiz/result pages */
.sk-app .sk-result-hero,
.sk-app .sk-result-hero-v2,
.sk-app .sk-trial-hero{
    padding:18px 20px !important;
    border-radius:22px !important;
    margin-bottom:14px !important;
    min-height:auto !important;
}

.sk-app .sk-result-hero h2,
.sk-app .sk-result-hero-v2 h2,
.sk-app .sk-trial-hero h2{
    font-size:clamp(30px,4vw,42px) !important;
    line-height:1.03 !important;
    margin:0 0 8px !important;
}

.sk-app .sk-quiz-card{
    padding:18px !important;
    border-radius:20px !important;
}

.sk-app .sk-quiz-card h3{
    font-size:20px !important;
    line-height:1.3 !important;
}

/* Slightly denser sidebar without changing menu flow */
.sk-app .sk-sidebar{
    padding:14px 12px 14px 14px !important;
}

.sk-app .sk-sidebar-scroll{
    gap:12px !important;
}

.sk-app .sk-brand-logo{
    width:38px !important;
    height:38px !important;
    border-radius:13px !important;
}

.sk-app .sk-brand strong{
    font-size:16px !important;
}

.sk-app .sk-brand small{
    font-size:10px !important;
}

.sk-app .sk-nav{
    gap:5px !important;
}

.sk-app .sk-nav a{
    min-height:40px !important;
    padding:7px 9px !important;
    border-radius:13px !important;
    font-size:13px !important;
}

.sk-app .sk-nav-icon{
    width:30px !important;
    height:30px !important;
    border-radius:11px !important;
}

.sk-app .sk-nav-icon svg{
    width:15px !important;
    height:15px !important;
}

.sk-app .sk-sidebar-card{
    padding:13px !important;
    border-radius:18px !important;
}

.sk-app .sk-sidebar-card-icon{
    width:34px !important;
    height:34px !important;
    border-radius:13px !important;
    margin-bottom:9px !important;
}

/* Density for tables/forms/buttons */
.sk-app .sk-btn{
    min-height:38px !important;
    padding:9px 13px !important;
    border-radius:12px !important;
    font-size:13px !important;
}

.sk-app .sk-input,
.sk-app select.sk-input,
.sk-app textarea.sk-input{
    padding:11px 12px !important;
    border-radius:12px !important;
    font-size:14px !important;
}

.sk-app .sk-table th,
.sk-app .sk-table td,
.sk-app .table th,
.sk-app .table td{
    padding:10px 11px !important;
}

@media (min-width:981px){
    .sk-app .sk-main{
        padding-bottom:28px !important;
    }
}

@media (max-width:1180px){
    .sk-app .sk-readiness-dashboard-hero{
        grid-template-columns:1fr !important;
    }

    .sk-app .sk-rd-score-card{
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
    }
}

@media (max-width:980px){
    .sk-app .sk-main{
        padding:14px !important;
    }

    .sk-app .sk-topbar{
        top:8px !important;
        border-radius:16px !important;
    }

    .sk-app .sk-user-pill{
        display:none !important;
    }
}

@media (max-width:720px){
    .sk-app .sk-topbar{
        min-height:56px !important;
        padding:9px 12px !important;
        margin-bottom:12px !important;
    }

    .sk-app .sk-topbar h1{
        font-size:21px !important;
    }

    .sk-app .sk-dashboard-hero,
    .sk-app .sk-admin-hero,
    .sk-app .sk-profile-hero,
    .sk-app .sk-school-hero,
    .sk-app .sk-pricing-hero,
    .sk-app .sk-topic-hero,
    .sk-app .sk-hero-card-mini,
    .sk-app .sk-readiness-dashboard-hero{
        padding:14px !important;
        border-radius:18px !important;
    }

    .sk-app .sk-rd-hero-copy h2{
        font-size:28px !important;
    }

    .sk-app .sk-rd-score-card{
        display:grid !important;
        justify-items:center !important;
    }

    .sk-app .sk-stats-grid,
    .sk-app .sk-rd-stats-grid,
    .sk-app .sk-year-grid,
    .sk-app .sk-focus-grid,
    .sk-app .sk-topic-grid{
        grid-template-columns:1fr !important;
    }
}

/* =========================================================
   SmartKafa UI Contrast Fix v2
   Tujuan: pastikan semua tulisan jelas — light card guna dark text,
   dark/gradient card guna white text. Tiada perubahan flow/DB/PHP logic.
   ========================================================= */
:root{
    --sk-readable-text:#103834;
    --sk-readable-title:#073b33;
    --sk-readable-muted:#5f7672;
    --sk-readable-soft:#ecfaf5;
    --sk-readable-soft-muted:rgba(255,255,255,.82);
    --sk-light-surface:rgba(255,255,255,.86);
    --sk-light-surface-strong:#ffffff;
    --sk-light-border:rgba(15,94,69,.13);
}

.sk-app,
.sk-app .sk-main{
    color:var(--sk-readable-text) !important;
}

/* Base readable text inside the application */
.sk-app h1,
.sk-app h2,
.sk-app h3,
.sk-app h4,
.sk-app h5,
.sk-app h6,
.sk-app strong,
.sk-app b,
.sk-app label,
.sk-app th,
.sk-app .sk-title,
.sk-app .sk-card-head h2,
.sk-app .sk-card-head h3{
    color:var(--sk-readable-title) !important;
}

.sk-app p,
.sk-app small,
.sk-app .sk-muted,
.sk-app .sk-muted-text,
.sk-app .sk-muted-note,
.sk-app .sk-form-note,
.sk-app .sk-field-hint,
.sk-app td,
.sk-app li{
    color:var(--sk-readable-muted) !important;
}

.sk-app .sk-eyebrow,
.sk-app .sk-kicker,
.sk-app .sk-sidebar-label{
    color:#0f8a5f !important;
}

/* Light surfaces: force dark readable text */
.sk-app .sk-topbar,
.sk-app .sk-card,
.sk-app .sk-stat-card,
.sk-app .sk-profile-hero,
.sk-app .sk-school-hero,
.sk-app .sk-pricing-hero,
.sk-app .sk-topic-hero,
.sk-app .sk-hero-card-mini,
.sk-app .sk-alert-card-v7,
.sk-app .sk-rd-mission-card,
.sk-app .sk-year-card:not(.featured),
.sk-app .sk-focus-card:not(.featured),
.sk-app .sk-topic-card,
.sk-app .sk-badge-card,
.sk-app .sk-badge-mini,
.sk-app .sk-badge-unlocked-card,
.sk-app .sk-parent-child-card,
.sk-app .sk-child-row,
.sk-app .sk-action-item,
.sk-app .sk-assignment-row,
.sk-app .sk-report-student,
.sk-app .sk-subscription-row,
.sk-app .sk-school-card,
.sk-app .sk-price-card:not(.sk-billing-card),
.sk-app .sk-filter-card,
.sk-app .sk-filter-row,
.sk-app .sk-lesson-block,
.sk-app .sk-quiz-card,
.sk-app .sk-answer-card,
.sk-app .sk-question-card,
.sk-app .sk-review-item,
.sk-app .sk-answer-review-box,
.sk-app .sk-empty-state,
.sk-app .sk-info-panel,
.sk-app .sk-student-card,
.sk-app .sk-profile-card,
.sk-app .sk-student-create-box,
.sk-app .sk-rd-component,
.sk-app .sk-rd-focus-row,
.sk-app .sk-rd-practical-card,
.sk-app .sk-rd-badge-row,
.sk-app .sk-rd-parent-detail-grid > div,
.sk-app .sk-rd-teacher-row,
.sk-app .sk-rd-teacher-components span,
.sk-app .sk-intervention-topic-card,
.sk-app .sk-intervention-student-card,
.sk-app .sk-ha-card,
.sk-app .sk-ha-score-circle,
.sk-app .sk-audio-review-card,
.sk-app .sk-review-audio-card,
.sk-app .sk-audio-empty-card,
.sk-app .sk-ha-review-box,
.sk-app .sk-amali-step,
.sk-app .sk-draggable-bank,
.sk-app .sk-match-left,
.sk-app .sk-match-drop,
.sk-app .sk-word-drop,
.sk-app .sk-order-list li,
.sk-app .sk-quiz-progress-card,
.sk-app .sk-quiz-nav-card,
.sk-app .sk-path-list div{
    color:var(--sk-readable-text) !important;
}

.sk-app .sk-card h1,
.sk-app .sk-card h2,
.sk-app .sk-card h3,
.sk-app .sk-card h4,
.sk-app .sk-card strong,
.sk-app .sk-stat-card strong,
.sk-app .sk-profile-hero h2,
.sk-app .sk-school-hero h2,
.sk-app .sk-pricing-hero h2,
.sk-app .sk-topic-hero h2,
.sk-app .sk-hero-card-mini h2,
.sk-app .sk-alert-card-v7 h3,
.sk-app .sk-rd-mission-card h3,
.sk-app .sk-year-card:not(.featured) h3,
.sk-app .sk-year-card:not(.featured) strong,
.sk-app .sk-focus-card:not(.featured) h3,
.sk-app .sk-focus-card:not(.featured) strong,
.sk-app .sk-topic-card h3,
.sk-app .sk-topic-card strong,
.sk-app .sk-parent-child-card h3,
.sk-app .sk-parent-child-card strong,
.sk-app .sk-rd-component strong,
.sk-app .sk-rd-focus-row strong,
.sk-app .sk-rd-practical-card strong,
.sk-app .sk-rd-badge-row strong,
.sk-app .sk-rd-parent-detail-grid h3,
.sk-app .sk-rd-teacher-components b,
.sk-app .sk-intervention-topic-head strong,
.sk-app .sk-report-student strong,
.sk-app .sk-assignment-row strong,
.sk-app .sk-child-row strong,
.sk-app .sk-action-item strong,
.sk-app .sk-lesson-block h3,
.sk-app .sk-lesson-content,
.sk-app .sk-quiz-card h3,
.sk-app .sk-answer-option strong,
.sk-app .sk-review-top strong,
.sk-app .sk-answer-review-box strong,
.sk-app .sk-ha-card h3,
.sk-app .sk-ha-review-box strong,
.sk-app .sk-amali-step strong,
.sk-app .sk-path-list strong,
.sk-app .sk-mini-attempt-list strong,
.sk-app .sk-table td strong,
.sk-app .sk-order-list li span,
.sk-app .sk-word-drop strong{
    color:var(--sk-readable-title) !important;
}

.sk-app .sk-card p,
.sk-app .sk-card small,
.sk-app .sk-stat-card small,
.sk-app .sk-stat-card span,
.sk-app .sk-profile-hero p,
.sk-app .sk-school-hero p,
.sk-app .sk-pricing-hero p,
.sk-app .sk-topic-hero p,
.sk-app .sk-hero-card-mini p,
.sk-app .sk-alert-card-v7 p,
.sk-app .sk-rd-mission-card p,
.sk-app .sk-year-card:not(.featured) p,
.sk-app .sk-focus-card:not(.featured) p,
.sk-app .sk-topic-card p,
.sk-app .sk-parent-child-card p,
.sk-app .sk-rd-component small,
.sk-app .sk-rd-component p,
.sk-app .sk-rd-focus-row small,
.sk-app .sk-rd-practical-card small,
.sk-app .sk-rd-badge-row small,
.sk-app .sk-rd-parent-detail-grid p,
.sk-app .sk-rd-teacher-components em,
.sk-app .sk-intervention-topic-head small,
.sk-app .sk-report-student small,
.sk-app .sk-assignment-row small,
.sk-app .sk-child-row small,
.sk-app .sk-action-item small,
.sk-app .sk-answer-review-box span,
.sk-app .sk-ha-card p,
.sk-app .sk-ha-card small,
.sk-app .sk-ha-review-box p,
.sk-app .sk-amali-step small,
.sk-app .sk-path-list small,
.sk-app .sk-mini-attempt-list span,
.sk-app .sk-table .small{
    color:var(--sk-readable-muted) !important;
}

/* Light backgrounds that were previously too transparent/dark-glass */
.sk-app .sk-card,
.sk-app .sk-stat-card,
.sk-app .sk-profile-hero,
.sk-app .sk-school-hero,
.sk-app .sk-pricing-hero,
.sk-app .sk-topic-hero,
.sk-app .sk-hero-card-mini,
.sk-app .sk-year-card:not(.featured),
.sk-app .sk-focus-card:not(.featured),
.sk-app .sk-topic-card,
.sk-app .sk-badge-card,
.sk-app .sk-badge-mini,
.sk-app .sk-parent-child-card,
.sk-app .sk-child-row,
.sk-app .sk-action-item,
.sk-app .sk-assignment-row,
.sk-app .sk-report-student,
.sk-app .sk-subscription-row,
.sk-app .sk-lesson-block,
.sk-app .sk-quiz-card,
.sk-app .sk-answer-card,
.sk-app .sk-question-card,
.sk-app .sk-empty-state,
.sk-app .sk-info-panel,
.sk-app .sk-student-card,
.sk-app .sk-profile-card,
.sk-app .sk-ha-card,
.sk-app .sk-rd-component,
.sk-app .sk-rd-focus-row,
.sk-app .sk-rd-practical-card,
.sk-app .sk-rd-badge-row,
.sk-app .sk-rd-parent-detail-grid > div,
.sk-app .sk-rd-teacher-row,
.sk-app .sk-rd-teacher-components span,
.sk-app .sk-intervention-topic-card,
.sk-app .sk-intervention-student-card{
    background:var(--sk-light-surface) !important;
    border-color:var(--sk-light-border) !important;
}

/* Dark/gradient surfaces: force white readable text */
.sk-app .sk-dashboard-hero,
.sk-app .sk-readiness-dashboard-hero,
.sk-app .sk-interactive-hero,
.sk-app .sk-intervention-hero,
.sk-app .sk-result-hero,
.sk-app .sk-result-hero-v2,
.sk-app .sk-trial-hero,
.sk-app .sk-billing-card,
.sk-app .sk-help-card,
.sk-app .sk-sidebar-card,
.sk-app .sk-glass-orbit-card,
.sk-app .sk-glass-cta,
.sk-app .sk-year-card.featured,
.sk-app .sk-focus-card.featured{
    color:#ffffff !important;
}

.sk-app .sk-dashboard-hero h1,
.sk-app .sk-dashboard-hero h2,
.sk-app .sk-dashboard-hero h3,
.sk-app .sk-dashboard-hero h4,
.sk-app .sk-dashboard-hero strong,
.sk-app .sk-dashboard-hero b,
.sk-app .sk-dashboard-hero a:not(.sk-btn),
.sk-app .sk-readiness-dashboard-hero h1,
.sk-app .sk-readiness-dashboard-hero h2,
.sk-app .sk-readiness-dashboard-hero h3,
.sk-app .sk-readiness-dashboard-hero h4,
.sk-app .sk-readiness-dashboard-hero strong,
.sk-app .sk-readiness-dashboard-hero b,
.sk-app .sk-readiness-dashboard-hero a:not(.sk-btn),
.sk-app .sk-interactive-hero h1,
.sk-app .sk-interactive-hero h2,
.sk-app .sk-interactive-hero h3,
.sk-app .sk-interactive-hero strong,
.sk-app .sk-intervention-hero h1,
.sk-app .sk-intervention-hero h2,
.sk-app .sk-intervention-hero h3,
.sk-app .sk-intervention-hero strong,
.sk-app .sk-result-hero h1,
.sk-app .sk-result-hero h2,
.sk-app .sk-result-hero h3,
.sk-app .sk-result-hero strong,
.sk-app .sk-result-hero-v2 h1,
.sk-app .sk-result-hero-v2 h2,
.sk-app .sk-result-hero-v2 h3,
.sk-app .sk-result-hero-v2 strong,
.sk-app .sk-trial-hero h1,
.sk-app .sk-trial-hero h2,
.sk-app .sk-trial-hero h3,
.sk-app .sk-trial-hero strong,
.sk-app .sk-billing-card h1,
.sk-app .sk-billing-card h2,
.sk-app .sk-billing-card h3,
.sk-app .sk-billing-card strong,
.sk-app .sk-help-card h1,
.sk-app .sk-help-card h2,
.sk-app .sk-help-card h3,
.sk-app .sk-help-card strong,
.sk-app .sk-sidebar-card strong,
.sk-app .sk-glass-orbit-card strong,
.sk-app .sk-glass-cta h2,
.sk-app .sk-glass-cta strong,
.sk-app .sk-year-card.featured h3,
.sk-app .sk-year-card.featured strong,
.sk-app .sk-focus-card.featured h3,
.sk-app .sk-focus-card.featured strong,
.sk-app .sk-year-card.featured > span,
.sk-app .sk-focus-card.featured > span,
.sk-app .sk-rd-score-card small{
    color:#ffffff !important;
}

.sk-app .sk-dashboard-hero p,
.sk-app .sk-dashboard-hero small,
.sk-app .sk-dashboard-hero .sk-eyebrow,
.sk-app .sk-readiness-dashboard-hero p,
.sk-app .sk-readiness-dashboard-hero small,
.sk-app .sk-readiness-dashboard-hero .sk-eyebrow,
.sk-app .sk-interactive-hero p,
.sk-app .sk-interactive-hero small,
.sk-app .sk-interactive-hero .sk-eyebrow,
.sk-app .sk-intervention-hero p,
.sk-app .sk-intervention-hero small,
.sk-app .sk-intervention-hero .sk-eyebrow,
.sk-app .sk-result-hero p,
.sk-app .sk-result-hero small,
.sk-app .sk-result-hero .sk-eyebrow,
.sk-app .sk-result-hero-v2 p,
.sk-app .sk-result-hero-v2 small,
.sk-app .sk-result-hero-v2 .sk-eyebrow,
.sk-app .sk-trial-hero p,
.sk-app .sk-trial-hero small,
.sk-app .sk-trial-hero .sk-eyebrow,
.sk-app .sk-billing-card p,
.sk-app .sk-billing-card small,
.sk-app .sk-help-card p,
.sk-app .sk-help-card small,
.sk-app .sk-sidebar-card p,
.sk-app .sk-glass-orbit-card small,
.sk-app .sk-glass-cta p,
.sk-app .sk-year-card.featured p,
.sk-app .sk-focus-card.featured p{
    color:var(--sk-readable-soft-muted) !important;
}

.sk-app .sk-readiness-dashboard-hero .sk-badge,
.sk-app .sk-dashboard-hero .sk-badge,
.sk-app .sk-interactive-hero .sk-badge,
.sk-app .sk-intervention-hero .sk-badge,
.sk-app .sk-result-hero .sk-badge,
.sk-app .sk-result-hero-v2 .sk-badge,
.sk-app .sk-trial-hero .sk-badge{
    background:rgba(255,255,255,.16) !important;
    border-color:rgba(255,255,255,.24) !important;
    color:#ffffff !important;
}

/* Buttons / badges: keep contrast consistent */
.sk-app .sk-btn-primary{
    background:#0f8a5f !important;
    color:#ffffff !important;
    border-color:rgba(15,138,95,.25) !important;
}

.sk-app .sk-btn-primary:hover{
    background:#0b7852 !important;
    color:#ffffff !important;
}

.sk-app .sk-btn-gold{
    background:#d9a441 !important;
    color:#2e240a !important;
    border-color:rgba(217,164,65,.35) !important;
}

.sk-app .sk-btn-soft,
.sk-app .sk-btn-ghost{
    background:rgba(255,255,255,.88) !important;
    color:#075e45 !important;
    border-color:rgba(15,94,69,.16) !important;
}

.sk-app .sk-dashboard-hero .sk-btn-soft,
.sk-app .sk-readiness-dashboard-hero .sk-btn-soft,
.sk-app .sk-interactive-hero .sk-btn-soft,
.sk-app .sk-intervention-hero .sk-btn-soft,
.sk-app .sk-result-hero .sk-btn-soft,
.sk-app .sk-result-hero-v2 .sk-btn-soft,
.sk-app .sk-trial-hero .sk-btn-soft,
.sk-app .sk-billing-card .sk-btn-soft,
.sk-app .sk-help-card .sk-btn-soft,
.sk-app .sk-sidebar-card .sk-btn-soft,
.sk-app .sk-glass-cta .sk-btn-soft{
    background:rgba(255,255,255,.16) !important;
    color:#ffffff !important;
    border-color:rgba(255,255,255,.26) !important;
}

.sk-app .sk-badge,
.sk-app .sk-badge-soft,
.sk-app .sk-score-pill,
.sk-app .sk-year-pill,
.sk-app .sk-plan-meta span,
.sk-app .sk-mini-meta span{
    background:#f1fbf5 !important;
    color:#075e45 !important;
    border-color:rgba(15,94,69,.14) !important;
}

.sk-app .sk-badge-gold,
.sk-app .sk-score-pill.warn{
    background:#fff1c7 !important;
    color:#7a5708 !important;
    border-color:rgba(217,164,65,.28) !important;
}

.sk-app .sk-score-pill.danger,
.sk-app .sk-badge-danger{
    background:#fff0f0 !important;
    color:#a72c2c !important;
    border-color:rgba(167,44,44,.18) !important;
}

.sk-app .sk-year-card.featured .sk-year-pill,
.sk-app .sk-focus-card.featured .sk-badge,
.sk-app .sk-dashboard-hero .sk-score-pill,
.sk-app .sk-readiness-dashboard-hero .sk-score-pill,
.sk-app .sk-intervention-hero .sk-score-pill{
    background:rgba(255,255,255,.18) !important;
    color:#ffffff !important;
    border-color:rgba(255,255,255,.24) !important;
}

/* Forms, tables and interactive quiz items */
.sk-app .sk-input,
.sk-app select.sk-input,
.sk-app textarea.sk-input,
.sk-app .sk-input-wrap{
    background:#ffffff !important;
    color:var(--sk-readable-title) !important;
    border-color:rgba(15,94,69,.18) !important;
}

.sk-app .sk-input::placeholder,
.sk-app textarea.sk-input::placeholder{
    color:#8aa09b !important;
}

.sk-app .sk-input-wrap .sk-input{
    background:transparent !important;
}

.sk-app .sk-input-icon{
    color:#0f8a5f !important;
}

.sk-app .sk-table-wrap,
.sk-app .sk-topic-table-wrap{
    background:rgba(255,255,255,.76) !important;
    border-color:rgba(15,94,69,.12) !important;
}

.sk-app .sk-table th,
.sk-app .table th{
    color:#607773 !important;
}

.sk-app .sk-table td,
.sk-app .table td{
    color:#103834 !important;
    background:#fbfefc !important;
    border-color:rgba(15,94,69,.12) !important;
}

.sk-app .sk-answer-option,
.sk-app .sk-option-builder-row,
.sk-app .sk-drag-chip{
    background:#ffffff !important;
    color:#103834 !important;
    border-color:rgba(15,94,69,.16) !important;
}

.sk-app .sk-answer-option span,
.sk-app .sk-question-number,
.sk-app .sk-order-list li:before,
.sk-app .sk-step-dot{
    background:#f1fbf5 !important;
    color:#075e45 !important;
}

.sk-app .sk-answer-option:has(input:checked),
.sk-app .sk-drag-chip.is-selected,
.sk-app .sk-amali-step.is-done{
    background:#f1fbf5 !important;
    border-color:rgba(15,138,95,.45) !important;
}

/* Sidebar and account pill readability */
.sk-app .sk-sidebar,
.sk-app .sk-topbar,
.sk-app .sk-user-pill{
    color:#103834 !important;
}

.sk-app .sk-sidebar .sk-brand strong,
.sk-app .sk-sidebar .sk-nav a,
.sk-app .sk-sidebar .sk-nav-text,
.sk-app .sk-user-pill strong,
.sk-app .sk-user-pill b{
    color:#103834 !important;
}

.sk-app .sk-sidebar .sk-brand small,
.sk-app .sk-user-pill small{
    color:#607773 !important;
}

.sk-app .sk-sidebar .sk-nav a.active,
.sk-app .sk-sidebar .sk-nav a:hover{
    color:#075e45 !important;
}

/* Prevent SVG/icons from inheriting bad text colors */
.sk-app svg,
.sk-app .sk-nav-icon svg{
    color:inherit !important;
}

/* Any inline-muted utility should never become white on light cards */
.sk-app .sk-muted-inline,
.sk-app .sk-note{
    color:var(--sk-readable-muted) !important;
}

/* =========================================================
   SmartKafa UI Contrast Fix v3
   Tujuan: tulisan jelas ikut permukaan.
   - Kad / kawasan cerah = tulisan gelap.
   - Kawasan gelap / gradient = tulisan putih.
   Patch ini hanya CSS. Tiada perubahan flow, DB atau logic PHP.
   ========================================================= */
:root{
    --sk-v3-title:#073b33;
    --sk-v3-text:#123d37;
    --sk-v3-muted:#5d7671;
    --sk-v3-soft:#eefaf5;
    --sk-v3-soft-muted:rgba(255,255,255,.84);
    --sk-v3-light-bg:rgba(255,255,255,.90);
    --sk-v3-light-bg-strong:#ffffff;
    --sk-v3-light-border:rgba(15,94,69,.14);
}

/* Base page text */
.sk-app,
.sk-app .sk-main,
body:not(.sk-public-body) .sk-page{
    color:var(--sk-v3-text) !important;
}

/* =========================================================
   LIGHT SURFACES
   ========================================================= */
.sk-app .sk-topbar,
.sk-app .sk-user-pill,
.sk-app .sk-card,
.sk-app .sk-section-card,
.sk-app .sk-stat-card,
.sk-app .sk-hero-card,
.sk-app .sk-dashboard-hero,
.sk-app .sk-dashboard-hero-v7,
.sk-app .sk-admin-hero,
.sk-app .sk-profile-hero,
.sk-app .sk-school-hero,
.sk-app .sk-pricing-hero,
.sk-app .sk-topic-hero,
.sk-app .sk-diagnostic-hero,
.sk-app .sk-badges-hero,
.sk-app .sk-hero-card-mini,
.sk-app .sk-alert-card-v7,
.sk-app .sk-rd-mission-card,
.sk-app .sk-review-metrics div,
.sk-app .sk-table-wrap,
.sk-app .sk-topic-table-wrap,
.sk-app .sk-empty-state,
.sk-app .sk-action-item,
.sk-app .sk-child-row,
.sk-app .sk-assignment-row,
.sk-app .sk-subscription-row,
.sk-app .sk-report-student,
.sk-app .sk-school-card,
.sk-app .sk-price-card:not(.sk-billing-card),
.sk-app .sk-public-price-card,
.sk-app .sk-feature-card,
.sk-app .sk-year-card:not(.featured),
.sk-app .sk-focus-card:not(.featured),
.sk-app .sk-topic-card,
.sk-app .sk-mini-card,
.sk-app .sk-dashboard-mock,
.sk-app .sk-lesson-block,
.sk-app .sk-quiz-card,
.sk-app .sk-answer-card,
.sk-app .sk-question-card,
.sk-app .sk-review-item,
.sk-app .sk-answer-review-box,
.sk-app .sk-explanation,
.sk-app .sk-report-card,
.sk-app .sk-student-card,
.sk-app .sk-profile-card,
.sk-app .sk-student-create-box,
.sk-app .sk-info-panel,
.sk-app .sk-filter-card,
.sk-app .sk-filter-row,
.sk-app .sk-badge-card,
.sk-app .sk-badge-mini,
.sk-app .sk-badge-unlocked-card,
.sk-app .sk-ha-card,
.sk-app .sk-ha-score-circle,
.sk-app .sk-audio-review-card,
.sk-app .sk-review-audio-card,
.sk-app .sk-audio-empty-card,
.sk-app .sk-ha-review-box,
.sk-app .sk-amali-step,
.sk-app .sk-draggable-bank,
.sk-app .sk-match-left,
.sk-app .sk-match-drop,
.sk-app .sk-word-drop,
.sk-app .sk-order-list li,
.sk-app .sk-quiz-progress-card,
.sk-app .sk-quiz-nav-card,
.sk-app .sk-path-list div,
.sk-app .sk-rd-component,
.sk-app .sk-rd-focus-row,
.sk-app .sk-rd-practical-card,
.sk-app .sk-rd-badge-row,
.sk-app .sk-parent-child-card,
.sk-app .sk-rd-parent-detail-grid > div,
.sk-app .sk-rd-teacher-row,
.sk-app .sk-rd-teacher-components span,
.sk-app .sk-intervention-topic-card,
.sk-app .sk-intervention-student-card,
body:not(.sk-public-body) .sk-page,
body:not(.sk-public-body) .sk-head,
body:not(.sk-public-body) .sk-card,
body:not(.sk-public-body) .sk-box,
body:not(.sk-public-body) .sk-note{
    color:var(--sk-v3-text) !important;
}

/* Force readable dark text on headings/important text inside light blocks */
.sk-app :is(.sk-topbar,.sk-user-pill,.sk-card,.sk-section-card,.sk-stat-card,.sk-dashboard-hero,.sk-dashboard-hero-v7,.sk-admin-hero,.sk-profile-hero,.sk-school-hero,.sk-pricing-hero,.sk-topic-hero,.sk-diagnostic-hero,.sk-badges-hero,.sk-hero-card-mini,.sk-alert-card-v7,.sk-rd-mission-card,.sk-review-metrics div,.sk-table-wrap,.sk-topic-table-wrap,.sk-empty-state,.sk-action-item,.sk-child-row,.sk-assignment-row,.sk-subscription-row,.sk-report-student,.sk-school-card,.sk-price-card:not(.sk-billing-card),.sk-public-price-card,.sk-feature-card,.sk-year-card:not(.featured),.sk-focus-card:not(.featured),.sk-topic-card,.sk-mini-card,.sk-dashboard-mock,.sk-lesson-block,.sk-quiz-card,.sk-answer-card,.sk-question-card,.sk-review-item,.sk-answer-review-box,.sk-explanation,.sk-report-card,.sk-student-card,.sk-profile-card,.sk-student-create-box,.sk-info-panel,.sk-filter-card,.sk-filter-row,.sk-badge-card,.sk-badge-mini,.sk-badge-unlocked-card,.sk-ha-card,.sk-ha-score-circle,.sk-audio-review-card,.sk-review-audio-card,.sk-audio-empty-card,.sk-ha-review-box,.sk-amali-step,.sk-draggable-bank,.sk-match-left,.sk-match-drop,.sk-word-drop,.sk-order-list li,.sk-quiz-progress-card,.sk-quiz-nav-card,.sk-path-list div,.sk-rd-component,.sk-rd-focus-row,.sk-rd-practical-card,.sk-rd-badge-row,.sk-parent-child-card,.sk-rd-parent-detail-grid > div,.sk-rd-teacher-row,.sk-rd-teacher-components span,.sk-intervention-topic-card,.sk-intervention-student-card) :is(h1,h2,h3,h4,h5,h6,strong,b,label,summary,.sk-title,.sk-card-head h2,.sk-card-head h3,.sk-lesson-content,.sk-price-amount,.sk-review-top strong,.sk-answer-option strong,.sk-order-list li span,.sk-word-drop strong,.text-white,.text-light,[style*="color:#fff"],[style*="color: #fff"],[style*="color:white"],[style*="color: white"],[style*="color:#ffffff"],[style*="color: #ffffff"]),
body:not(.sk-public-body) :is(.sk-page,.sk-head,.sk-card,.sk-box,.sk-note) :is(h1,h2,h3,h4,h5,h6,strong,b,label,summary,.sk-title,.text-white,.text-light,[style*="color:#fff"],[style*="color: #fff"],[style*="color:white"],[style*="color: white"],[style*="color:#ffffff"],[style*="color: #ffffff"]){
    color:var(--sk-v3-title) !important;
}

/* Muted text inside light blocks */
.sk-app :is(.sk-topbar,.sk-user-pill,.sk-card,.sk-section-card,.sk-stat-card,.sk-dashboard-hero,.sk-dashboard-hero-v7,.sk-admin-hero,.sk-profile-hero,.sk-school-hero,.sk-pricing-hero,.sk-topic-hero,.sk-diagnostic-hero,.sk-badges-hero,.sk-hero-card-mini,.sk-alert-card-v7,.sk-rd-mission-card,.sk-review-metrics div,.sk-table-wrap,.sk-topic-table-wrap,.sk-empty-state,.sk-action-item,.sk-child-row,.sk-assignment-row,.sk-subscription-row,.sk-report-student,.sk-school-card,.sk-price-card:not(.sk-billing-card),.sk-public-price-card,.sk-feature-card,.sk-year-card:not(.featured),.sk-focus-card:not(.featured),.sk-topic-card,.sk-mini-card,.sk-dashboard-mock,.sk-lesson-block,.sk-quiz-card,.sk-answer-card,.sk-question-card,.sk-review-item,.sk-answer-review-box,.sk-explanation,.sk-report-card,.sk-student-card,.sk-profile-card,.sk-student-create-box,.sk-info-panel,.sk-filter-card,.sk-filter-row,.sk-badge-card,.sk-badge-mini,.sk-badge-unlocked-card,.sk-ha-card,.sk-ha-score-circle,.sk-audio-review-card,.sk-review-audio-card,.sk-audio-empty-card,.sk-ha-review-box,.sk-amali-step,.sk-draggable-bank,.sk-match-left,.sk-match-drop,.sk-word-drop,.sk-order-list li,.sk-quiz-progress-card,.sk-quiz-nav-card,.sk-path-list div,.sk-rd-component,.sk-rd-focus-row,.sk-rd-practical-card,.sk-rd-badge-row,.sk-parent-child-card,.sk-rd-parent-detail-grid > div,.sk-rd-teacher-row,.sk-rd-teacher-components span,.sk-intervention-topic-card,.sk-intervention-student-card) :is(p,small,li,td,th,.sk-muted,.sk-muted-text,.sk-muted-note,.sk-form-note,.sk-field-hint,.sk-note,.small,.text-muted),
body:not(.sk-public-body) :is(.sk-page,.sk-head,.sk-card,.sk-box,.sk-note) :is(p,small,li,td,th,.sk-muted,.sk-muted-text,.sk-muted-note,.sk-form-note,.sk-field-hint,.small,.text-muted){
    color:var(--sk-v3-muted) !important;
}

/* Make known light surfaces actually light after previous dark/glass rules */
.sk-app .sk-dashboard-hero,
.sk-app .sk-dashboard-hero-v7,
.sk-app .sk-admin-hero,
.sk-app .sk-profile-hero,
.sk-app .sk-school-hero,
.sk-app .sk-pricing-hero,
.sk-app .sk-topic-hero,
.sk-app .sk-diagnostic-hero,
.sk-app .sk-badges-hero,
.sk-app .sk-hero-card-mini,
.sk-app .sk-card,
.sk-app .sk-section-card,
.sk-app .sk-stat-card,
.sk-app .sk-alert-card-v7,
.sk-app .sk-rd-mission-card,
.sk-app .sk-year-card:not(.featured),
.sk-app .sk-focus-card:not(.featured),
.sk-app .sk-topic-card,
.sk-app .sk-lesson-block,
.sk-app .sk-quiz-card,
.sk-app .sk-answer-card,
.sk-app .sk-question-card,
.sk-app .sk-review-item,
.sk-app .sk-answer-review-box,
.sk-app .sk-ha-card,
.sk-app .sk-rd-component,
.sk-app .sk-rd-focus-row,
.sk-app .sk-rd-practical-card,
.sk-app .sk-rd-badge-row,
.sk-app .sk-parent-child-card,
.sk-app .sk-rd-parent-detail-grid > div,
.sk-app .sk-rd-teacher-row,
.sk-app .sk-rd-teacher-components span,
.sk-app .sk-intervention-topic-card,
.sk-app .sk-intervention-student-card{
    background:var(--sk-v3-light-bg) !important;
    border-color:var(--sk-v3-light-border) !important;
}

.sk-app .sk-topbar,
.sk-app .sk-user-pill,
.sk-app .sk-table td,
.sk-app .sk-table th,
.sk-app .table td,
.sk-app .table th,
.sk-app .sk-input,
.sk-app select.sk-input,
.sk-app textarea.sk-input,
.sk-app .sk-input-wrap,
body:not(.sk-public-body) .sk-input,
body:not(.sk-public-body) input,
body:not(.sk-public-body) select,
body:not(.sk-public-body) textarea{
    background:var(--sk-v3-light-bg-strong) !important;
    color:var(--sk-v3-title) !important;
    border-color:var(--sk-v3-light-border) !important;
}

.sk-app .sk-eyebrow,
.sk-app .sk-kicker,
.sk-app .sk-sidebar-label,
body:not(.sk-public-body) .sk-pill:not(.sk-badge){
    color:#0f8a5f !important;
}

/* =========================================================
   DARK / GRADIENT SURFACES
   ========================================================= */
.sk-app .sk-readiness-hero,
.sk-app .sk-readiness-dashboard-hero,
.sk-app .sk-interactive-hero,
.sk-app .sk-intervention-hero,
.sk-app .sk-result-hero,
.sk-app .sk-result-hero-v2,
.sk-app .sk-trial-hero,
.sk-app .sk-billing-card,
.sk-app .sk-help-card,
.sk-app .sk-sidebar-card,
.sk-app .sk-glass-orbit-card,
.sk-app .sk-glass-cta,
.sk-app .sk-year-card.featured,
.sk-app .sk-focus-card.featured{
    color:#ffffff !important;
}

.sk-app :is(.sk-readiness-hero,.sk-readiness-dashboard-hero,.sk-interactive-hero,.sk-intervention-hero,.sk-result-hero,.sk-result-hero-v2,.sk-trial-hero,.sk-billing-card,.sk-help-card,.sk-sidebar-card,.sk-glass-orbit-card,.sk-glass-cta,.sk-year-card.featured,.sk-focus-card.featured) :is(h1,h2,h3,h4,h5,h6,strong,b,label,summary,a:not(.sk-btn),.sk-title,.sk-eyebrow,.sk-kicker,.text-dark,.text-muted,[style*="color:#0"],[style*="color: #0"],[style*="color:var(--sk-primary-dark)"],[style*="color: var(--sk-primary-dark)"]){
    color:#ffffff !important;
}

.sk-app :is(.sk-readiness-hero,.sk-readiness-dashboard-hero,.sk-interactive-hero,.sk-intervention-hero,.sk-result-hero,.sk-result-hero-v2,.sk-trial-hero,.sk-billing-card,.sk-help-card,.sk-sidebar-card,.sk-glass-orbit-card,.sk-glass-cta,.sk-year-card.featured,.sk-focus-card.featured) :is(p,small,li,.sk-muted,.sk-muted-text,.sk-muted-note,.sk-form-note,.sk-field-hint,.small){
    color:var(--sk-v3-soft-muted) !important;
}

.sk-app :is(.sk-readiness-hero,.sk-readiness-dashboard-hero,.sk-interactive-hero,.sk-intervention-hero,.sk-result-hero,.sk-result-hero-v2,.sk-trial-hero,.sk-billing-card,.sk-help-card,.sk-sidebar-card,.sk-glass-orbit-card,.sk-glass-cta,.sk-year-card.featured,.sk-focus-card.featured) :is(.sk-badge,.sk-badge-soft,.sk-score-pill,.sk-year-pill,.sk-plan-meta span,.sk-mini-meta span){
    background:rgba(255,255,255,.16) !important;
    color:#ffffff !important;
    border-color:rgba(255,255,255,.26) !important;
}

.sk-app :is(.sk-readiness-hero,.sk-readiness-dashboard-hero,.sk-interactive-hero,.sk-intervention-hero,.sk-result-hero,.sk-result-hero-v2,.sk-trial-hero,.sk-billing-card,.sk-help-card,.sk-sidebar-card,.sk-glass-orbit-card,.sk-glass-cta) .sk-btn-soft,
.sk-app :is(.sk-readiness-hero,.sk-readiness-dashboard-hero,.sk-interactive-hero,.sk-intervention-hero,.sk-result-hero,.sk-result-hero-v2,.sk-trial-hero,.sk-billing-card,.sk-help-card,.sk-sidebar-card,.sk-glass-orbit-card,.sk-glass-cta) .sk-btn-ghost{
    background:rgba(255,255,255,.16) !important;
    color:#ffffff !important;
    border-color:rgba(255,255,255,.28) !important;
}

/* Keep normal buttons/badges readable everywhere */
.sk-app .sk-btn-primary,
body:not(.sk-public-body) .sk-btn:not(.sk-btn2):not(.secondary):not(.reject){
    background:#0f8a5f !important;
    color:#ffffff !important;
    border-color:rgba(15,138,95,.28) !important;
}

.sk-app .sk-btn-gold,
.sk-app .sk-btn2,
body:not(.sk-public-body) .sk-btn2,
body:not(.sk-public-body) .secondary{
    background:#fff1c7 !important;
    color:#6f4f07 !important;
    border-color:rgba(217,164,65,.32) !important;
}

.sk-app .sk-badge:not(.sk-badge-danger):not(.sk-badge-gold),
.sk-app .sk-badge-soft,
.sk-app .sk-score-pill:not(.warn):not(.danger),
.sk-app .sk-year-pill,
.sk-app .sk-plan-meta span,
.sk-app .sk-mini-meta span{
    background:#f1fbf5 !important;
    color:#075e45 !important;
    border-color:rgba(15,94,69,.14) !important;
}

.sk-app .sk-badge-gold,
.sk-app .sk-score-pill.warn,
body:not(.sk-public-body) .pending,
body:not(.sk-public-body) .trialing{
    background:#fff1c7 !important;
    color:#7a5708 !important;
    border-color:rgba(217,164,65,.28) !important;
}

.sk-app .sk-score-pill.danger,
.sk-app .sk-badge-danger,
body:not(.sk-public-body) .rejected,
body:not(.sk-public-body) .reject{
    background:#fff0f0 !important;
    color:#a72c2c !important;
    border-color:rgba(167,44,44,.18) !important;
}

body:not(.sk-public-body) .approved,
body:not(.sk-public-body) .active{
    background:#ecfdf5 !important;
    color:#047857 !important;
}

body:not(.sk-public-body) .submitted{
    background:#eff6ff !important;
    color:#1d4ed8 !important;
}

/* Sidebar and icon fixes */
.sk-app .sk-sidebar,
.sk-app .sk-sidebar .sk-brand strong,
.sk-app .sk-sidebar .sk-nav a,
.sk-app .sk-sidebar .sk-nav-text,
.sk-app .sk-user-pill strong,
.sk-app .sk-user-pill b{
    color:var(--sk-v3-title) !important;
}

.sk-app .sk-sidebar .sk-brand small,
.sk-app .sk-user-pill small{
    color:var(--sk-v3-muted) !important;
}

.sk-app .sk-sidebar-card,
.sk-app .sk-sidebar-card strong,
.sk-app .sk-sidebar-card p,
.sk-app .sk-sidebar-card .sk-sidebar-card-icon{
    color:#ffffff !important;
}

.sk-app .sk-nav-icon,
.sk-app .sk-avatar-soft,
.sk-app .sk-user-avatar{
    color:#ffffff !important;
}

.sk-app svg,
.sk-app .sk-nav-icon svg{
    color:inherit !important;
    fill:currentColor !important;
}

/* Small helper classes that often caused invisible text */
.sk-app .sk-muted-inline,
.sk-app .sk-note,
.sk-app .text-muted{
    color:var(--sk-v3-muted) !important;
}

.sk-app .sk-alert-success,
body:not(.sk-public-body) .sk-success{
    background:#ecfdf5 !important;
    color:#065f46 !important;
    border-color:#bbf7d0 !important;
}

.sk-app .sk-alert-error,
body:not(.sk-public-body) .sk-error{
    background:#fff0f0 !important;
    color:#991b1b !important;
    border-color:#fecaca !important;
}

/* End SmartKafa UI Contrast Fix v3 */
/* =========================================================
   SmartKafa Sidebar Icon Visibility Fix v4
   Tujuan: ikon menu sidebar jelas selepas contrast patch.
   - Menu biasa: ikon hijau atas kotak cerah.
   - Menu aktif/hover: ikon putih atas kotak hijau.
   Patch ini hanya CSS. Tiada perubahan flow, DB atau logic PHP.
   ========================================================= */
.sk-app .sk-sidebar .sk-nav a .sk-nav-icon{
    width:30px !important;
    height:30px !important;
    border-radius:11px !important;
    display:grid !important;
    place-items:center !important;
    flex:0 0 30px !important;
    opacity:1 !important;
    background:#eefaf5 !important;
    border:1px solid rgba(15,94,69,.16) !important;
    color:#0f8a5f !important;
    box-shadow:0 6px 14px rgba(15,94,69,.06) !important;
}

.sk-app .sk-sidebar .sk-nav a .sk-nav-icon svg{
    width:15px !important;
    height:15px !important;
    display:block !important;
    opacity:1 !important;
    color:inherit !important;
    fill:currentColor !important;
    stroke:none !important;
}

.sk-app .sk-sidebar .sk-nav a .sk-nav-icon svg *,
.sk-app .sk-sidebar .sk-nav a .sk-nav-icon path{
    opacity:1 !important;
    fill:currentColor !important;
}

.sk-app .sk-sidebar .sk-nav a.active .sk-nav-icon,
.sk-app .sk-sidebar .sk-nav a:hover .sk-nav-icon,
.sk-app .sk-sidebar .sk-nav a:focus-visible .sk-nav-icon{
    background:#0f8a5f !important;
    border-color:#0f8a5f !important;
    color:#ffffff !important;
    box-shadow:0 8px 18px rgba(15,138,95,.22) !important;
}

.sk-app .sk-sidebar .sk-nav a.active .sk-nav-icon svg,
.sk-app .sk-sidebar .sk-nav a:hover .sk-nav-icon svg,
.sk-app .sk-sidebar .sk-nav a:focus-visible .sk-nav-icon svg,
.sk-app .sk-sidebar .sk-nav a.active .sk-nav-icon svg *,
.sk-app .sk-sidebar .sk-nav a:hover .sk-nav-icon svg *,
.sk-app .sk-sidebar .sk-nav a:focus-visible .sk-nav-icon svg *{
    color:#ffffff !important;
    fill:#ffffff !important;
    opacity:1 !important;
}

/* Pastikan rule global v3 tidak jadikan ikon sidebar putih atas background cerah */
.sk-app .sk-sidebar .sk-nav a:not(.active):not(:hover):not(:focus-visible) .sk-nav-icon,
.sk-app .sk-sidebar .sk-nav a:not(.active):not(:hover):not(:focus-visible) .sk-nav-icon svg,
.sk-app .sk-sidebar .sk-nav a:not(.active):not(:hover):not(:focus-visible) .sk-nav-icon svg *{
    color:#0f8a5f !important;
    fill:#0f8a5f !important;
    opacity:1 !important;
}

/* End SmartKafa Sidebar Icon Visibility Fix v4 */

/* =========================================================
   SmartKafa Demo Repair v1 - Responsive Safety
   Tujuan: elak table/kad pecah di mobile semasa demo client.
   ========================================================= */
.sk-app .sk-table-wrap,
.sk-page .sk-table-wrap{
    width:100% !important;
    max-width:100% !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
}

.sk-app table.sk-table,
.sk-page table.sk-table{
    max-width:100% !important;
}

@media (max-width: 760px){
    .sk-app .sk-card,
    .sk-page .sk-card{
        max-width:100% !important;
        overflow-x:auto !important;
    }
    .sk-app .sk-table th,
    .sk-app .sk-table td,
    .sk-page .sk-table th,
    .sk-page .sk-table td{
        white-space:nowrap !important;
    }
    .sk-app .sk-user-meta{
        display:none !important;
    }
}

/* End SmartKafa Demo Repair v1 */


/* =========================================================
   SmartKafa Mobile Sidebar + Calibri Polish Fix v3
   Tujuan:
   1) Pastikan font UI betul-betul guna Calibri.
   2) Kurangkan font terlalu berat/rapat supaya spacing nampak kemas.
   3) Fix mobile sidebar gelap/terkunci: backdrop tidak lagi cover menu.
   ========================================================= */
:root{
    --sk-font-ui: Calibri, "Segoe UI", Arial, sans-serif;
}

html,
body,
button,
input,
select,
textarea,
.sk-app,
.sk-page,
.sk-public-body{
    font-family:var(--sk-font-ui) !important;
    font-kerning:normal;
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}

body{
    font-size:15px !important;
    line-height:1.45 !important;
    letter-spacing:0 !important;
}

.sk-app :is(h1,h2,h3,h4,h5,h6),
.sk-page :is(h1,h2,h3,h4,h5,h6){
    font-family:var(--sk-font-ui) !important;
    font-weight:700 !important;
    letter-spacing:-.018em !important;
    line-height:1.12 !important;
}

.sk-topbar h1{
    font-size:clamp(26px,2.45vw,36px) !important;
    font-weight:700 !important;
    letter-spacing:-.02em !important;
}

.sk-eyebrow,
.sk-sidebar-label,
.table th,
.sk-table th{
    letter-spacing:.09em !important;
}

.sk-nav a{
    font-family:var(--sk-font-ui) !important;
    font-size:14px !important;
    font-weight:700 !important;
    line-height:1.25 !important;
    letter-spacing:0 !important;
}

.sk-nav-text{
    overflow:hidden;
    text-overflow:ellipsis;
}

.sk-card p,
.sk-action-item small,
.sk-stat-card small,
.sk-sidebar-card p,
.sk-user-meta small,
.sk-muted,
.sk-muted-text,
.sk-form-note{
    font-weight:400 !important;
    line-height:1.5 !important;
    letter-spacing:0 !important;
}

.sk-btn,
.sk-btn-primary,
.sk-btn-soft,
.sk-btn-ghost,
button,
a{
    letter-spacing:0 !important;
}

/* Sidebar layering fix: parent .sk-app cannot sit below backdrop */
.sk-app{
    z-index:auto !important;
}

.sk-sidebar-backdrop{
    z-index:80 !important;
    background:rgba(3,9,8,.42) !important;
    backdrop-filter:blur(2px) !important;
    -webkit-backdrop-filter:blur(2px) !important;
}

.sk-sidebar{
    z-index:90 !important;
}

.sk-sidebar-head{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
}

.sk-sidebar-head .sk-brand{
    min-width:0 !important;
    flex:1 1 auto !important;
}

.sk-sidebar-close{
    display:none;
    width:40px;
    height:40px;
    border:1px solid rgba(15,94,69,.14);
    border-radius:14px;
    background:#F2FAF6;
    color:#075E45;
    font:700 28px/1 var(--sk-font-ui);
    cursor:pointer;
    place-items:center;
    flex:0 0 auto;
}

body.sk-lock-scroll{
    overflow:hidden !important;
}

@media(max-width:980px){
    .sk-app-shell{
        overflow-x:hidden !important;
    }

    .sk-sidebar{
        position:fixed !important;
        top:0 !important;
        left:0 !important;
        width:min(86vw,300px) !important;
        max-width:300px !important;
        height:100vh !important;
        height:100dvh !important;
        transform:translateX(-106%) !important;
        transition:transform .22s ease !important;
        background:rgba(255,255,255,.96) !important;
        border-right:1px solid rgba(15,94,69,.14) !important;
        box-shadow:18px 0 55px rgba(0,0,0,.18) !important;
        overflow:hidden !important;
        will-change:transform;
    }

    .sk-sidebar.open{
        left:0 !important;
        transform:translateX(0) !important;
    }

    .sk-sidebar-scroll{
        height:100% !important;
        max-height:100dvh !important;
        overflow-y:auto !important;
        -webkit-overflow-scrolling:touch !important;
        padding-bottom:18px !important;
    }

    .sk-app-shell.sidebar-open .sk-sidebar-backdrop{
        display:block !important;
        pointer-events:auto !important;
    }

    .sk-sidebar-close{
        display:grid !important;
    }

    .sk-main{
        width:100% !important;
        max-width:100vw !important;
        padding:14px !important;
    }

    .sk-topbar{
        position:relative !important;
        top:auto !important;
        margin-bottom:14px !important;
        border-radius:20px !important;
        padding:13px 14px !important;
    }

    .sk-topbar h1{
        font-size:23px !important;
    }

    .sk-menu-btn{
        width:42px !important;
        height:42px !important;
        flex:0 0 42px !important;
    }

    .sk-card,
    .sk-stat-card,
    .sk-admin-hero,
    .sk-dashboard-hero,
    .sk-pricing-hero,
    .sk-topic-hero,
    .sk-school-hero,
    .sk-readiness-hero{
        border-radius:22px !important;
        padding:18px !important;
    }
}

@media(min-width:981px){
    .sk-sidebar{
        transform:none !important;
    }
    .sk-sidebar-backdrop,
    .sk-sidebar-close{
        display:none !important;
    }
    body.sk-lock-scroll{
        overflow:auto !important;
    }
}

@media(max-width:640px){
    body{
        font-size:14.5px !important;
    }

    .sk-stats-grid,
    .sk-content-grid,
    .sk-admin-grid,
    .sk-price-grid,
    .sk-feature-grid,
    .sk-topic-grid,
    .sk-year-grid,
    .sk-focus-grid{
        grid-template-columns:1fr !important;
        gap:12px !important;
    }

    .sk-nav a{
        padding:11px 12px !important;
    }

    .sk-nav-icon{
        width:36px !important;
        height:36px !important;
        border-radius:13px !important;
    }
}

/* End SmartKafa Mobile Sidebar + Calibri Polish Fix v3 */

/* =========================================================
   SmartKafa Login Modern Glass Patch v5
   Scope: login.php only via body.sk-login-modern-v5
   ========================================================= */
body.sk-login-modern-v5{
    --sk-login-green:#19d796;
    --sk-login-green-2:#0fb97f;
    --sk-login-deep:#00291d;
    --sk-login-deeper:#00130f;
    --sk-login-text:#f4fffb;
    --sk-login-muted:rgba(235,255,248,.72);
    min-height:100vh !important;
    margin:0 !important;
    overflow-x:hidden !important;
    font-family:Calibri,"Segoe UI",Arial,sans-serif !important;
    background:
        radial-gradient(circle at 14% 18%, rgba(30,231,160,.20), transparent 18%),
        radial-gradient(circle at 85% 22%, rgba(34,242,169,.12), transparent 20%),
        linear-gradient(135deg,#001611 0%,#00291d 48%,#00100c 100%) !important;
    color:var(--sk-login-text) !important;
}

body.sk-login-modern-v5 .sk-login-modern-scene{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:34px 18px;
    overflow:hidden;
    isolation:isolate;
}

body.sk-login-modern-v5 .sk-login-modern-scene:before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-4;
    background:
        radial-gradient(circle at center, rgba(255,255,255,.04), transparent 38%),
        linear-gradient(135deg,rgba(0,0,0,.08),rgba(0,0,0,.34));
}

body.sk-login-modern-v5 .sk-login-modern-scene:after{
    content:"";
    position:absolute;
    inset:-40px;
    z-index:-3;
    opacity:.34;
    background-image:
        linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
    background-size:82px 82px;
    mask-image:radial-gradient(circle at center, black 0%, transparent 70%);
}

body.sk-login-modern-v5 .sk-login-orb{
    position:absolute;
    z-index:-2;
    border-radius:999px;
    background:
        radial-gradient(circle at 32% 28%, rgba(205,255,232,.92), rgba(38,230,158,.82) 32%, rgba(13,154,105,.62) 68%, rgba(13,154,105,.08) 100%);
    box-shadow:
        inset -28px -30px 60px rgba(0,72,47,.26),
        0 0 42px rgba(21,225,152,.46),
        0 30px 90px rgba(0,0,0,.22);
    filter:saturate(118%);
    pointer-events:none;
}

body.sk-login-modern-v5 .sk-login-orb-one{width:132px;height:132px;left:10%;top:18%;filter:blur(5px) saturate(118%);opacity:.84;}
body.sk-login-modern-v5 .sk-login-orb-two{width:250px;height:250px;left:18%;bottom:14%;opacity:.92;}
body.sk-login-modern-v5 .sk-login-orb-three{width:290px;height:290px;right:23%;top:9%;opacity:.90;}
body.sk-login-modern-v5 .sk-login-orb-four{width:142px;height:142px;right:21%;bottom:13%;opacity:.95;}
body.sk-login-modern-v5 .sk-login-orb-five{width:126px;height:126px;right:9%;top:48%;filter:blur(4px) saturate(118%);opacity:.72;}

body.sk-login-modern-v5 .sk-login-modern-wrap{
    position:relative;
    z-index:1;
    width:min(430px, calc(100vw - 34px));
    display:grid;
    justify-items:center;
    gap:18px;
}

body.sk-login-modern-v5 .sk-login-brand{
    display:flex;
    align-items:center;
    gap:12px;
    text-decoration:none;
    color:#fff;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.14);
    border-radius:999px;
    padding:10px 14px 10px 10px;
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
    box-shadow:0 16px 46px rgba(0,0,0,.18);
}

body.sk-login-modern-v5 .sk-login-brand-logo{
    width:42px;
    height:42px;
    border-radius:15px;
    display:grid;
    place-items:center;
    color:#fff;
    font-weight:700;
    background:linear-gradient(135deg,#18db99,#086447);
    box-shadow:0 0 28px rgba(25,215,150,.38);
}

body.sk-login-modern-v5 .sk-login-brand strong{
    display:block;
    color:#fff;
    font-size:16px;
    line-height:1.05;
    letter-spacing:0;
}

body.sk-login-modern-v5 .sk-login-brand small{
    display:block;
    color:rgba(235,255,248,.72);
    font-size:11px;
    margin-top:3px;
    letter-spacing:.01em;
}

body.sk-login-modern-v5 .sk-login-glass-card{
    position:relative;
    width:100%;
    min-height:480px;
    padding:44px 42px 34px;
    border-radius:24px;
    overflow:hidden;
    background:linear-gradient(145deg, rgba(255,255,255,.115), rgba(255,255,255,.045)) !important;
    border:1px solid rgba(255,255,255,.18) !important;
    box-shadow:
        0 34px 95px rgba(0,0,0,.34),
        inset 0 1px 0 rgba(255,255,255,.12),
        inset 0 -1px 0 rgba(255,255,255,.045) !important;
    backdrop-filter:blur(24px) saturate(135%);
    -webkit-backdrop-filter:blur(24px) saturate(135%);
}

body.sk-login-modern-v5 .sk-login-glass-card:before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(circle at 78% 4%, rgba(49,242,172,.24), transparent 25%),
        radial-gradient(circle at 18% 94%, rgba(49,242,172,.14), transparent 30%),
        linear-gradient(90deg, rgba(255,255,255,.07), transparent 36%, rgba(255,255,255,.035));
}

body.sk-login-modern-v5 .sk-login-card-glow{
    position:absolute;
    width:240px;
    height:240px;
    right:-86px;
    top:-86px;
    border-radius:999px;
    background:rgba(39,233,163,.16);
    filter:blur(24px);
    pointer-events:none;
}

body.sk-login-modern-v5 .sk-login-card-head,
body.sk-login-modern-v5 .sk-login-form,
body.sk-login-modern-v5 .sk-login-links,
body.sk-login-modern-v5 .sk-alert{
    position:relative;
    z-index:1;
}

body.sk-login-modern-v5 .sk-login-card-head{
    text-align:center;
    margin-bottom:26px;
}

body.sk-login-modern-v5 .sk-login-secure{
    margin:0 0 12px !important;
    color:rgba(229,255,246,.76) !important;
    font-size:12px !important;
    font-weight:700 !important;
    text-transform:uppercase;
    letter-spacing:.14em !important;
}

body.sk-login-modern-v5 .sk-login-card-head h1{
    margin:0 0 9px !important;
    color:#ffffff !important;
    font-family:Calibri,"Segoe UI",Arial,sans-serif !important;
    font-size:36px !important;
    line-height:1 !important;
    font-weight:400 !important;
    letter-spacing:.055em !important;
}

body.sk-login-modern-v5 .sk-login-card-head p{
    width:min(310px,100%);
    margin:0 auto !important;
    color:var(--sk-login-muted) !important;
    font-size:14px !important;
    line-height:1.45 !important;
    font-weight:400 !important;
}

body.sk-login-modern-v5 .sk-login-form{
    display:grid;
    gap:16px;
}

body.sk-login-modern-v5 .sk-login-field label{
    display:block;
    color:rgba(235,255,248,.82) !important;
    font-size:13px !important;
    font-weight:400 !important;
    margin:0 0 8px !important;
}

body.sk-login-modern-v5 .sk-login-input-wrap{
    height:48px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:0 15px;
    border-radius:9px;
    background:rgba(34,222,154,.28) !important;
    border:1px solid rgba(117,255,207,.18) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08),
        0 10px 22px rgba(0,0,0,.08);
    transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

body.sk-login-modern-v5 .sk-login-input-wrap:focus-within{
    background:rgba(40,238,166,.34) !important;
    border-color:rgba(153,255,219,.44) !important;
    box-shadow:
        0 0 0 4px rgba(34,222,154,.12),
        0 12px 26px rgba(0,0,0,.10);
}

body.sk-login-modern-v5 .sk-login-input-icon{
    width:18px;
    color:rgba(235,255,248,.62);
    font-size:12px;
    text-align:center;
    flex:0 0 auto;
}

body.sk-login-modern-v5 .sk-login-input-wrap input{
    width:100%;
    min-width:0;
    height:46px;
    border:0 !important;
    outline:0 !important;
    background:transparent !important;
    color:#ffffff !important;
    font:400 15px/1.2 Calibri,"Segoe UI",Arial,sans-serif !important;
    padding:0 !important;
    box-shadow:none !important;
}

body.sk-login-modern-v5 .sk-login-input-wrap input::placeholder{
    color:rgba(235,255,248,.48) !important;
}

body.sk-login-modern-v5 input:-webkit-autofill,
body.sk-login-modern-v5 input:-webkit-autofill:hover,
body.sk-login-modern-v5 input:-webkit-autofill:focus{
    -webkit-text-fill-color:#ffffff !important;
    box-shadow:0 0 0 1000px rgba(34,222,154,.32) inset !important;
    transition:background-color 9999s ease-in-out 0s;
}

body.sk-login-modern-v5 .sk-login-submit{
    width:min(210px,100%);
    height:56px;
    margin:8px auto 0;
    border:0;
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    color:#ffffff;
    font:400 20px/1 Calibri,"Segoe UI",Arial,sans-serif;
    background:linear-gradient(135deg,#28e6a4 0%,#0ca56f 100%);
    box-shadow:
        0 22px 42px rgba(15,185,127,.28),
        inset 0 1px 0 rgba(255,255,255,.24);
    transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

body.sk-login-modern-v5 .sk-login-submit:hover{
    transform:translateY(-2px);
    filter:saturate(110%);
    box-shadow:
        0 28px 50px rgba(15,185,127,.34),
        inset 0 1px 0 rgba(255,255,255,.28);
}

body.sk-login-modern-v5 .sk-login-submit:active{
    transform:translateY(0);
}

body.sk-login-modern-v5 .sk-login-links{
    margin-top:22px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:18px;
    flex-wrap:wrap;
    color:rgba(235,255,248,.74);
    font-size:13px;
    font-weight:400;
}

body.sk-login-modern-v5 .sk-login-links a{
    color:#43f0af !important;
    font-weight:400 !important;
    text-decoration:none;
}

body.sk-login-modern-v5 .sk-login-links a:hover{
    text-decoration:underline;
}

body.sk-login-modern-v5 .sk-login-footnote{
    max-width:390px;
    margin:0;
    color:rgba(235,255,248,.64);
    text-align:center;
    font-size:13px;
    line-height:1.45;
    text-shadow:0 1px 20px rgba(0,0,0,.22);
}

body.sk-login-modern-v5 .sk-alert{
    border-radius:14px !important;
    padding:12px 14px !important;
    margin:0 0 16px !important;
    font-weight:400 !important;
    font-size:14px !important;
    backdrop-filter:blur(14px);
}

body.sk-login-modern-v5 .sk-alert-error{
    background:rgba(255,92,92,.14) !important;
    color:#ffe8e8 !important;
    border:1px solid rgba(255,150,150,.28) !important;
}

body.sk-login-modern-v5 .sk-alert-success{
    background:rgba(40,230,164,.14) !important;
    color:#e8fff6 !important;
    border:1px solid rgba(127,255,209,.26) !important;
}

@media(max-width:720px){
    body.sk-login-modern-v5 .sk-login-modern-scene{
        padding:22px 14px;
        align-items:center;
    }

    body.sk-login-modern-v5 .sk-login-modern-wrap{
        width:min(390px, calc(100vw - 28px));
        gap:14px;
    }

    body.sk-login-modern-v5 .sk-login-glass-card{
        min-height:auto;
        padding:34px 24px 28px;
        border-radius:22px;
    }

    body.sk-login-modern-v5 .sk-login-card-head h1{
        font-size:32px !important;
    }

    body.sk-login-modern-v5 .sk-login-submit{
        width:190px;
        height:52px;
        font-size:18px;
    }

    body.sk-login-modern-v5 .sk-login-orb-one{width:102px;height:102px;left:-22px;top:10%;}
    body.sk-login-modern-v5 .sk-login-orb-two{width:182px;height:182px;left:-44px;bottom:16%;}
    body.sk-login-modern-v5 .sk-login-orb-three{width:205px;height:205px;right:-54px;top:10%;}
    body.sk-login-modern-v5 .sk-login-orb-four{width:116px;height:116px;right:8%;bottom:8%;}
    body.sk-login-modern-v5 .sk-login-orb-five{display:none;}
}

@media(max-width:420px){
    body.sk-login-modern-v5 .sk-login-brand{
        transform:scale(.94);
    }

    body.sk-login-modern-v5 .sk-login-glass-card{
        padding:30px 20px 24px;
    }

    body.sk-login-modern-v5 .sk-login-links{
        gap:10px;
        flex-direction:column;
    }
}
/* End SmartKafa Login Modern Glass Patch v5 */


/* SmartKafa production readiness patch v1.1 */
.sk-nav-heading{padding:18px 14px 7px;color:rgba(232,255,247,.52);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.sk-sidebar-account{display:none;margin:18px 10px 0;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.06);grid-template-columns:auto 1fr;gap:10px;align-items:center;color:#fff}
.sk-sidebar-account small{display:block;color:rgba(255,255,255,.65);font-size:11px;margin-top:2px}.sk-sidebar-account>a{grid-column:1/-1;color:#fff;text-decoration:none;font-weight:800;font-size:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.1)}
.sk-main,.sk-main>*{min-width:0}.sk-card,.sk-content-grid>*,.sk-stats-grid>*,.sk-form-row>*,.sk-form-grid-3>*{min-width:0}
img,video,audio,iframe,svg{max-width:100%}.sk-table-wrap,.sk-topic-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.sk-table{min-width:680px}.sk-table-link{font-weight:800;text-decoration:none;color:var(--sk-primary,#0f8a5f);white-space:nowrap}
.sk-billing-hero{align-items:center}.sk-billing-current{margin-bottom:20px}.sk-billing-summary-grid,.sk-checkout-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.sk-billing-summary-grid>div,.sk-checkout-summary>div{padding:16px;border-radius:16px;background:#f7fbf9;border:1px solid rgba(15,138,95,.12)}.sk-billing-summary-grid small,.sk-checkout-summary small{display:block;color:var(--sk-muted);margin-bottom:6px}.sk-billing-summary-grid strong,.sk-checkout-summary strong{color:var(--sk-dark,#075e45);font-size:17px}
.sk-billing-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:20px 0}.sk-billing-plan-card{display:flex;flex-direction:column}.sk-billing-plan-card h3{font-size:22px;margin:0}.sk-billing-price{font-size:32px;font-weight:900;color:var(--sk-primary,#0f8a5f);margin:18px 0 4px}.sk-billing-price small{font-size:13px;color:var(--sk-muted);margin-left:4px}.sk-billing-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:16px}.sk-billing-actions .sk-btn{flex:1;text-align:center;white-space:nowrap}
.sk-checkout-card{max-width:860px;margin:0 auto}.sk-checkout-card>h2{font-size:32px;margin:5px 0 8px}.sk-checkout-summary{margin:22px 0}.sk-checkout-total{background:#eefbf5!important}.sk-checkout-total strong{font-size:25px!important;color:var(--sk-primary,#0f8a5f)!important}.sk-checkout-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.sk-back-link{display:inline-block;color:var(--sk-muted);font-weight:800;text-decoration:none;margin-bottom:20px}.sk-demo-notice{padding:14px 16px;border-radius:14px;background:#fff8e7;border:1px solid #f4d78a;color:#73560d;margin:18px 0}
.sk-pricing-page{min-height:calc(100vh - 80px);padding:64px 0 72px;background:linear-gradient(145deg,#f5fbf8,#fffaf0)}.sk-pricing-hero{text-align:center;max-width:780px}.sk-pricing-hero h1{font-size:clamp(36px,6vw,58px);color:#075e45;margin:16px 0}.sk-pricing-hero p{color:#61706f;line-height:1.75}.sk-pricing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:34px}.sk-pricing-card{background:#fff;border:1px solid rgba(15,138,95,.14);border-radius:24px;padding:24px;box-shadow:0 18px 50px rgba(15,138,95,.08);display:flex;flex-direction:column}.sk-pricing-card h2{color:#075e45;margin:0}.sk-pricing-value{font-size:31px;font-weight:900;color:#0f8a5f;margin:18px 0 4px}.sk-pricing-value small{font-size:12px;color:#61706f}.sk-pricing-card ul{padding-left:20px;line-height:1.9;color:#536362;flex:1}
.sk-demo-page{padding:70px 0 90px;background:linear-gradient(145deg,#f5fbf8,#fffaf0);min-height:calc(100vh - 80px)}.sk-demo-hero{text-align:center;max-width:850px}.sk-demo-hero h1{font-size:clamp(38px,6vw,64px);line-height:1.05;color:#075e45;margin:17px 0}.sk-demo-hero>p{font-size:18px;line-height:1.75;color:#61706f}.sk-demo-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:25px}.sk-demo-role-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:52px}.sk-demo-role-grid article{background:#fff;border:1px solid rgba(15,138,95,.14);border-radius:24px;padding:24px;box-shadow:0 18px 45px rgba(15,138,95,.07)}.sk-demo-role-grid article>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#eafaf3;color:#0f8a5f;font-weight:900}.sk-demo-role-grid h2{color:#075e45;margin:17px 0 8px}.sk-demo-role-grid p{color:#61706f;line-height:1.65;margin:0}.sk-demo-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:30px;border:1px solid rgba(15,138,95,.14);border-radius:22px;overflow:hidden;background:rgba(15,138,95,.14)}.sk-demo-flow>div{display:flex;gap:14px;padding:20px;background:#fff}.sk-demo-flow strong{color:#0f8a5f;font-size:22px}.sk-demo-flow b,.sk-demo-flow small{display:block}.sk-demo-flow b{color:#075e45}.sk-demo-flow small{color:#61706f;margin-top:5px;line-height:1.45}
@media(max-width:1100px){.sk-billing-plan-grid,.sk-pricing-grid,.sk-demo-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sk-demo-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.sk-sidebar-account{display:grid}.sk-user-pill{display:none!important}.sk-billing-summary-grid,.sk-checkout-summary{grid-template-columns:1fr}.sk-billing-hero{align-items:flex-start}.sk-billing-hero>.sk-btn{width:100%;text-align:center}.sk-public-nav-inner{gap:10px}.sk-public-links{gap:7px}.sk-public-login-link,.sk-public-start-link{padding:10px 12px!important;font-size:12px!important}.sk-brand-public small{display:none}}
@media(max-width:620px){.sk-billing-plan-grid,.sk-pricing-grid,.sk-demo-role-grid,.sk-demo-flow{grid-template-columns:1fr}.sk-pricing-page,.sk-demo-page{padding-top:42px}.sk-demo-hero>p{font-size:16px}.sk-checkout-actions,.sk-billing-actions{flex-direction:column}.sk-checkout-actions .sk-btn,.sk-billing-actions .sk-btn{width:100%;text-align:center}.sk-table{font-size:13px}.sk-topbar h1{font-size:21px}.sk-public-login-link{background:transparent!important;border:0!important;padding:8px 5px!important}.sk-public-start-link{padding:9px 10px!important}.sk-brand-public strong{font-size:17px}.sk-brand-logo{width:38px;height:38px}}
/* End production readiness patch */

/* SmartKafa global sidebar heading contrast hotfix v1.2 */
.sk-app .sk-sidebar .sk-nav-heading{
    display:block !important;
    padding:18px 10px 7px !important;
    color:#0B7653 !important;
    opacity:1 !important;
    font-family:var(--sk-font-ui, Arial, sans-serif) !important;
    font-size:10px !important;
    font-weight:900 !important;
    line-height:1.35 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    text-shadow:none !important;
    -webkit-text-fill-color:#0B7653 !important;
}

@media(max-width:820px){
    .sk-app .sk-sidebar .sk-nav-heading{
        color:#075E45 !important;
        -webkit-text-fill-color:#075E45 !important;
        font-size:10px !important;
    }
}
/* End SmartKafa global sidebar heading contrast hotfix v1.2 */
