@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#243e36;background:#f6f7f3;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #c4a951;outline-offset:3px}button{border:0;background:transparent;color:inherit}a{color:#326953}aside{width:240px;background:#fff;border-right:1px solid #e3e8e1;position:fixed;inset:0 auto 0 0;padding:32px 22px;display:flex;flex-direction:column}.logo{font-family:Manrope;font-size:23px;font-weight:800;letter-spacing:-1px;display:flex;align-items:center;gap:10px}.mark{display:inline-grid;place-items:center;background:#285342;color:#fff;width:34px;height:34px;border-radius:10px;font-size:22px}.workspace{margin:38px 0 25px;padding:13px;background:#f5f7f3;border:1px solid #e8ece5;border-radius:9px;font-size:12px}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#85948c;font-weight:700;text-transform:uppercase}.nav{display:grid;gap:7px;margin-top:13px}.nav button{text-align:left;padding:13px 15px;border-radius:8px;color:#7a8981;display:flex;gap:13px}.nav button.active{background:#eaf1e8;color:#285342;font-weight:700}.side-bottom{margin-top:auto}.demo{font-size:11px;color:#8a7240;background:#fbf6e8;border:1px solid #ede1c4;padding:12px;border-radius:8px;line-height:1.6}.profile{display:flex;align-items:center;gap:11px;margin-top:20px;padding-top:20px;border-top:1px solid #edf0e9}.avatar{background:#e9ede2;border-radius:50%;width:35px;height:35px;display:inline-grid;place-items:center;font-size:12px;font-weight:bold}.profile small{display:block;color:#859188;margin-top:3px}.main{margin-left:240px}.topbar{height:83px;background:#ffffffb3;border-bottom:1px solid #e5e9e2;padding:0 42px;display:flex;align-items:center;justify-content:space-between}.topbar span{color:#89988e}.topbar b{font-weight:500;color:#2c4339}.top-actions{display:flex;align-items:center;gap:18px}.pill{border:1px solid #dde5da;background:#fff;padding:8px 12px;border-radius:6px;font-size:12px}.content{padding:36px 42px;max-width:1540px;margin:auto}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}h1{font-family:Manrope;font-size:30px;letter-spacing:-1px;margin:0 0 8px;font-weight:800}p{color:#7c8b81;line-height:1.6;margin:0}.primary{background:#2b5543;color:white;border-radius:7px;padding:12px 19px;font-weight:500}.primary:hover{background:#1e4132}.secondary{border:1px solid #dce3d8;border-radius:7px;padding:10px 15px;background:white}.hero{border-radius:12px;background:#e8eee1;min-height:210px;padding:30px 34px;display:flex;position:relative;overflow:hidden;align-items:center;border:1px solid #e0e7d9}.hero h2{font-family:Manrope;font-size:30px;font-weight:600;letter-spacing:-1px;max-width:430px;line-height:1.35;margin:12px 0}.hero p{max-width:390px;color:#71816d}.hero .eyebrow{color:#6e8566}.hero-art{position:absolute;right:25px;bottom:-10px;width:300px;height:220px}.book{position:absolute;width:140px;height:160px;border-radius:6px 16px 16px 6px;box-shadow:8px 12px 0 #244c3610;transform:rotate(-15deg);bottom:20px;left:70px;background:#38664b;border-left:10px solid #2a513c}.book:after{content:'BUILD\A WHAT’S NEXT';white-space:pre;position:absolute;top:30px;left:17px;color:#e7eccf;font:700 19px Manrope}.book.two{height:125px;width:110px;background:#c0cf99;left:165px;bottom:10px;transform:rotate(17deg);border-color:#a8bd82}.book.two:after{content:'✳';font-size:52px;left:22px;top:25px;color:#476044}.orbit{position:absolute;border:1px solid #bcc8aa;width:230px;height:180px;border-radius:50%;left:20px;top:10px;transform:rotate(-22deg)}.spark{position:absolute;left:30px;top:20px;font-size:45px;color:#92a472}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:23px 0 30px}.stat{border:1px solid #e2e7dd;border-radius:10px;background:#fff;padding:20px;display:flex;align-items:center;gap:17px}.stat-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:11px;background:#f0f3e9;font-size:20px}.stat strong{font-family:Manrope;font-size:25px;display:block}.stat small{color:#849083;font-size:12px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:28px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}h2{font-family:Manrope;font-size:18px;margin:0;letter-spacing:-.4px}.text-btn{color:#738a6b;font-size:12px}.courses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.course{padding:0;text-align:left;border:1px solid #dfe6da;background:#fff;border-radius:11px;overflow:hidden;transition:transform .2s}.course:hover{transform:translateY(-3px)}.course-cover{height:115px;position:relative;padding:20px;background:#dee7d4;overflow:hidden}.course-cover .subject{font-size:11px;letter-spacing:1.4px;font-weight:600}.course-cover .symbol{position:absolute;right:24px;bottom:-10px;font-family:Georgia;font-size:110px;line-height:1.2;opacity:.6;transform:rotate(-13deg)}.course:nth-child(2n) .course-cover{background:#eee5d4;color:#8c7655}.course:nth-child(3n) .course-cover{background:#e2e7ee;color:#63778c}.course:nth-child(4n) .course-cover{background:#e8e2ed;color:#8c769c}.course-body{padding:19px 20px}.course-body h3{font-family:Manrope;margin:0 0 7px;font-size:16px}.course-body p{font-size:12px}.course-footer{display:flex;justify-content:space-between;padding-top:17px;margin-top:16px;border-top:1px solid #edf0e8;font-size:11px;color:#8c978b}.badge{background:#eff4e8;color:#6f865a;border-radius:5px;padding:4px 7px;font-size:10px}.panel{background:#fff;border:1px solid #e2e7dd;border-radius:10px;padding:22px}.due{padding:18px 0;border-bottom:1px solid #edf0e9;display:flex;gap:13px}.due:last-child{border:0;padding-bottom:0}.date{background:#f6f7f2;border-radius:7px;width:40px;height:46px;flex-shrink:0;text-align:center;padding-top:7px;color:#66775e;font-size:10px}.date b{display:block;font-size:16px}.due h4{font-size:12px;line-height:1.5;margin:0 0 6px}.due p{font-size:11px}.note{margin-top:20px;background:#f0efe4;border-color:#e8e6d8}.note h3{font-size:14px;margin:12px 0 8px}.note p{font-size:12px;color:#93917b}.note .flower{font-size:30px;color:#9b9d78}.toolbar{display:flex;gap:12px;margin:20px 0}.search{padding:11px 15px;background:#fff;border:1px solid #dde5d9;border-radius:7px;min-width:240px;flex:1}.list{display:grid;gap:12px}.row{background:#fff;border:1px solid #e0e6dc;border-radius:9px;padding:20px;display:flex;align-items:center;gap:18px}.row .info{flex:1}.row h3{margin:0 0 6px;font-size:15px}.row small{color:#8b9788}.empty{padding:50px;background:white;text-align:center;border:1px dashed #cbd6c4;border-radius:12px;color:#7c8b73}.tabs{display:flex;gap:22px;border-bottom:1px solid #dae3d5;margin:24px 0}.tabs button{padding:12px 0;color:#8b9786}.tabs button.active{border-bottom:2px solid #325d43;color:#325d43}dialog{border:1px solid #dae3d3;border-radius:14px;width:min(560px,94vw);padding:30px;color:#2d4437;box-shadow:0 20px 90px #173d3130}dialog::backdrop{background:#1b342766;backdrop-filter:blur(3px)}dialog h2{font-size:22px;margin-bottom:10px}dialog p{font-size:13px;margin-bottom:20px}label{display:block;font-size:12px;font-weight:500;margin:17px 0 7px}input,textarea,select{width:100%;border:1px solid #d9e1d4;border-radius:6px;background:#fff;padding:11px;color:#2d4437}textarea{resize:vertical;min-height:120px}form .buttons{display:flex;gap:9px;justify-content:flex-end;margin-top:24px}.close{float:right;font-size:22px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#274d3c;color:white;max-width:90vw;padding:15px 24px;border-radius:9px;z-index:100;display:none}.error{color:#aa4a3d;font-size:12px;margin-top:15px;line-height:1.6}.prose{white-space:pre-wrap;line-height:1.8;color:#6b7b69;margin:22px 0}.banner{background:#faf1da;border:1px solid #ecdcb2;padding:12px 18px;border-radius:8px;margin-bottom:20px;font-size:12px;color:#806b37}.auth-footer{text-align:center;margin-top:20px;color:#7e8c76;font-size:12px}.auth-footer button{text-decoration:underline}.wide{grid-column:1/-1}.status{font-size:11px;background:#eaf1e2;padding:5px 9px;border-radius:6px}.muted{color:#89957e}.grade{margin-top:12px;color:#3b6847;font-size:12px}
@media(min-width:1450px){.content{padding-top:42px}.hero{min-height:230px}.course-cover{height:130px}}@media(max-width:1150px){aside{width:205px;padding:25px 16px}.main{margin-left:205px}.content{padding:28px}.topbar{padding:0 28px}.layout{grid-template-columns:1fr}.right{display:grid;grid-template-columns:1fr 1fr;gap:18px}.note{margin-top:0}.hero-art{right:-25px;opacity:.8}}@media(max-width:700px){aside{position:static;width:auto;padding:16px;border-right:0;border-bottom:1px solid #e1e6dd}.workspace,.side-bottom,aside>.eyebrow{display:none}.nav{display:flex;overflow:auto;gap:0}.nav button{white-space:nowrap;padding:11px}.main{margin:0}.topbar{height:60px;padding:0 18px}.top-actions{gap:8px}.top-actions .pill{font-size:10px}.content{padding:24px 18px}.heading{gap:12px;align-items:flex-start}h1{font-size:24px}.heading p{font-size:12px}.hero{padding:24px;min-height:210px}.hero h2{font-size:25px;max-width:220px}.hero p{max-width:220px;font-size:12px}.hero-art{right:-125px;opacity:.45}.stats{gap:8px}.stat{padding:12px;gap:8px}.stat-icon{display:none}.stat strong{font-size:21px}.stat small{font-size:10px}.courses,.right{grid-template-columns:1fr}.row{padding:16px;flex-wrap:wrap}.row .info{min-width:170px}.toolbar{flex-wrap:wrap}.search{min-width:0;width:100%}.topbar span{font-size:12px}}
