*{box-sizing:border-box}body{margin:0;font-family:system-ui,"Noto Sans Telugu","Noto Sans Devanagari",sans-serif;color:#13294b;background:#f3f6fb}button,input,select{font:inherit}button,a,select{cursor:pointer}a{color:#17639a}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ffae29;outline-offset:2px}.layout{display:grid;grid-template-columns:258px minmax(0,1fr);min-height:100vh}aside{background:#101e39;color:#fff;padding:20px 15px;position:sticky;top:0;height:100vh;overflow:auto}.brand{display:flex;gap:12px;align-items:center}.brand img{width:56px;height:56px;border-radius:14px}.brand b{font-size:24px;letter-spacing:1px}.brand small{display:block;font-size:12px;color:#7ce4f1;font-weight:800;letter-spacing:1px}.slogan{font-size:12px;color:#aabbd4;margin:14px 4px 25px}nav{display:grid;gap:5px}nav button{border:0;background:transparent;text-align:left;color:#dce7f8;padding:13px;border-radius:11px;font-weight:600;width:100%}nav button.active,nav button:hover{background:#245f91;color:#fff}.aside-foot{margin-top:32px;font-size:12px;color:#a7b9d1}.aside-foot a{color:#7ce4f1}.main{min-width:0;display:flex;flex-direction:column}header{background:#fff;border-bottom:1px solid #dce6f1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 25px}header select{padding:10px;border:1px solid #c8d7e7;border-radius:10px;background:white}header label{font-size:13px}#mobileMenu{display:none;border:0;background:#e9f1fa;border-radius:9px;padding:10px}#view{width:min(1200px,100%);margin:0 auto;padding:26px;flex:1}.hero{background:linear-gradient(120deg,#122b57,#146b91);color:#fff;padding:30px;border-radius:20px;display:flex;gap:24px;align-items:center;justify-content:space-between}.hero img{width:120px;border-radius:20px}.hero h1{font-size:clamp(23px,3vw,36px);margin:0 0 8px}.hero p{margin:0;color:#e0f2fc;line-height:1.6}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:16px;margin-top:22px}.card,.panel{background:#fff;border:1px solid #dce6f1;border-radius:16px;padding:22px;box-shadow:0 5px 24px #10233e08}.card{display:flex;flex-direction:column;gap:10px}.card h3{margin:0;font-size:17px}.card p,.panel p{color:#53677f;line-height:1.65;margin:0}.card .pill{font-size:11px;font-weight:800;color:#15749c;text-transform:uppercase}.btn{border:0;background:#146b95;color:white;border-radius:10px;padding:11px 15px;font-weight:700;text-decoration:none;display:inline-block}.btn.secondary{background:#e8f0f8;color:#17365b}.card .btn{margin-top:auto;align-self:start}.toolbar{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.toolbar input,.toolbar select,.form input,.form textarea{padding:12px;border:1px solid #c8d7e7;border-radius:10px;max-width:100%;background:white}.toolbar input{flex:1;min-width:200px}.form{display:grid;gap:12px}.form label{display:grid;gap:5px;font-weight:650}.form textarea{min-height:85px}.panel{margin-top:20px}.panel h2{margin:0 0 13px}.steps{padding-left:25px;line-height:1.9}.steps li{margin:8px 0}.muted{color:#60758d;font-size:13px}.lesson-frame{width:100%;height:70vh;border:1px solid #d6e1ed;border-radius:12px;background:white}.preview{width:100%;max-width:720px;display:block;border:1px solid #dce6f1;border-radius:12px}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.note{background:#eaf3fa;border-radius:12px;padding:14px;color:#234567;margin-top:14px}.video{max-width:100%;width:760px;border-radius:14px;background:#111}.empty{padding:30px;text-align:center;color:#60758d}footer{text-align:center;padding:18px;color:#60758d;font-size:12px}footer a{color:inherit}@media(max-width:800px){.layout{display:block}aside{position:fixed;z-index:30;width:258px;transform:translateX(-110%);transition:transform .2s}aside.show{transform:none}#mobileMenu{display:block}#view{padding:15px}.hero{padding:22px}.hero img{width:80px}.two{grid-template-columns:1fr}header{padding:10px 15px}header label span{display:none}}
.chapter{border:1px solid #d7e2f0;border-radius:12px;margin:12px 0;background:#fff}.chapter summary{cursor:pointer;padding:16px;font-weight:700}.chapter-body{padding:0 16px 16px;line-height:1.65}.chapter-check{display:flex;gap:8px;align-items:center;margin-top:12px}.chapter-body .muted{font-size:.88rem}

.index-list ol{line-height:1.85;padding:8px 25px}.index-list .btn{margin:8px 18px 18px}.worked{background:#f0f7fc;border-left:4px solid #1484aa;padding:14px;margin:12px 0;border-radius:8px}.worked h4{margin:8px 0}.worked pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#12233c;color:#fff;padding:12px;border-radius:8px}.policy-paragraph{margin:0 0 18px!important}.grid>.panel{margin-top:0}.grid textarea{font:inherit;padding:12px;border:1px solid #c8d7e7;border-radius:10px}.grid label input{max-width:120px;padding:8px;border:1px solid #c8d7e7;border-radius:8px}
.footer-link{border:0;background:none;color:#17639a;text-decoration:underline;padding:2px;font-size:inherit}
/* Sequential, uncluttered navigation and lesson directory */
nav button{display:flex;align-items:center;min-height:43px;font-size:13px;border-bottom:1px solid #ffffff10}nav button.active{box-shadow:inset 3px 0 #66e0e9}.grid .card{min-height:170px}.card .pill{letter-spacing:.05em}.lesson-frame{height:min(74vh,820px)}@media(max-width:800px){nav button{min-height:48px}}

.detailed-guide{margin:16px 0;padding:16px;border:1px solid #c8d9ed;border-radius:12px;background:#f8fbff}.detailed-guide li{margin:9px 0;line-height:1.6}.detailed-guide pre{overflow:auto;white-space:pre-wrap;background:#102345;color:white;padding:14px;border-radius:8px}.result-preview{border:1px dashed #4c83ba;background:#eef6ff;padding:14px;border-radius:8px}.detailed-guide h4{margin:18px 0 8px}

/* Approved preview-inspired interface: consistent on desktop and mobile */
:root{--astra-navy:#0b1d48;--astra-blue:#075ee8;--astra-cyan:#32d9ed;--astra-gold:#ffc13d;--astra-paper:#f1f5ff}
body{background:var(--astra-paper);color:#11244c}
aside{background:linear-gradient(170deg,#07163a,#123779 95%);box-shadow:5px 0 24px #061c3a13}
.brand img{border:2px solid #2dd6ff;box-shadow:0 0 18px #0daafc66}
nav button{border:1px solid #ffffff14;transition:background .18s,transform .18s}
nav button.active,nav button:hover{background:linear-gradient(110deg,#065ae3,#2493ed);box-shadow:0 5px 15px #001d5944;transform:translateX(2px)}
header{box-shadow:0 4px 14px #0b2c5b0b;position:sticky;top:0;z-index:4}
#view{max-width:1280px}
.hero{background:linear-gradient(120deg,#08246c,#0b59da 60%,#8c27d5)!important;border-radius:20px!important;box-shadow:0 14px 30px #0b50b32b;color:white!important;padding:28px!important}
.hero *{color:inherit}
.card,.panel,.tile{border-radius:16px!important;box-shadow:0 5px 17px #0a2c6b0a}
button{transition:filter .16s}button:hover{filter:brightness(1.06)}
@media(max-width:760px){.layout{display:block}aside{z-index:10}#view{padding:14px}.hero{padding:19px!important}header{padding:10px 14px}nav button{min-height:44px}}

.level-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 18px}.level-tabs .active{background:#f6b935;color:#102344}.level-result{padding:14px;border:1px solid #d7e4f5;border-radius:12px;margin:9px 0;background:white;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.level-result strong{flex:1 1 220px}.level-result p{width:100%;margin:0;color:#47607b}.level-result .pill{font-size:12px}

/* Mobile-safe learning shortcuts: preserve Astra palette and typography. */
.astra-shortcuts{display:flex;flex-wrap:wrap;gap:8px;padding:12px 18px;background:#f0f5fd;border-bottom:1px solid #dce6f4;position:static;z-index:auto}
.astra-shortcuts a{display:inline-flex;align-items:center;justify-content:center;max-width:100%;min-height:38px;padding:8px 12px;border-radius:12px;background:#16468e;color:#fff;text-decoration:none;font:600 13px/1.35 system-ui,sans-serif;white-space:normal;text-align:center}
.astra-shortcuts a:hover,.astra-shortcuts a:focus-visible{background:#2459d4;outline-offset:2px}
@media(max-width:600px){.astra-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:10px}.astra-shortcuts a{font-size:12px;padding:9px 6px}.astra-shortcuts a:last-child:nth-child(odd){grid-column:1/-1}}
