:root{--ink:#202124;--muted:#969ba3;--line:#e9ecef;--mint:#16bfae;--page:#f7f8f8;--white:#fff;--yellow:#ffc75a}*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--ink);font-family:"DM Sans",Arial,sans-serif}.app-shell{min-height:100vh;display:flex}.sidebar{width:292px;min-height:100vh;background:#fff;padding:32px 20px 28px;display:flex;flex-direction:column;box-shadow:1px 0 0 #eff0f0}.brand{display:flex;align-items:center;gap:17px;color:#20bba9;text-decoration:none;font:800 30px/1 "Nunito",sans-serif}.brand-mark{width:68px;height:68px;border-radius:12px;background:linear-gradient(145deg,#a7e9c1,#82d5ad);display:grid;place-items:center;color:#fff;font-size:31px;box-shadow:inset -8px -8px 0 #48b497}.side-nav{margin-top:60px;display:flex;flex-direction:column;gap:12px}.side-item{height:64px;border:0;background:transparent;border-radius:11px;text-align:left;padding:0 24px;display:flex;align-items:center;gap:15px;font:500 20px "DM Sans";color:#3b3e42;cursor:pointer}.side-item:hover,.side-item.active{background:#f0f0f0}.nav-icon{width:21px;color:#575d63;font-size:26px;line-height:1;text-align:center}.nav-divider{height:2px;background:#eff0f0;margin:6px 0}.plus-card{margin-top:auto;border-radius:22px;padding:25px 21px 20px;background:linear-gradient(145deg,#fff2d7,#ffe3a7);box-shadow:0 8px 19px #e6d7bf77}.plus-heading{font:800 27px "Nunito"}.plus-heading strong{background:#ffbb1f;border-radius:4px;padding:4px 7px;font:900 12px "DM Sans";vertical-align:middle;margin-left:7px}.plus-rule{height:2px;background:#f4c666;margin:20px 0}.plus-card p{font-size:14px;margin:13px 0;color:#4c4b45}.plus-card p::first-letter{color:#e9a819}.plus-card button{width:100%;border:0;border-radius:10px;background:#ffc553;padding:14px 15px;text-align:left;font:700 16px "DM Sans";cursor:pointer}.plus-card button span{float:right;font-size:24px;line-height:14px}.page{min-width:0;flex:1}.topbar{height:119px;background:#fff;border-bottom:2px solid #e7e9ea;display:flex;align-items:center;justify-content:space-between;padding:0 84px 0 53px}.topbar h1{font-size:32px;letter-spacing:-.7px}.profile{display:flex;align-items:center;gap:12px;padding:8px 23px 8px 9px;border:0;border-radius:44px;background:#fff;box-shadow:0 4px 15px #24242416;text-align:left;cursor:pointer}.profile small{display:block;color:#979797;font-size:14px}.profile b{font-size:16px}.avatar{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#8a633a,#eed095 48%,#5d402a);color:white;font-weight:bold;border:3px solid #fff}.content,.detail-view{max-width:1355px;margin:0 auto;padding:83px 72px 70px}.breadcrumb{color:#abb0b6;font-size:17px}.breadcrumb span{padding:0 8px}.breadcrumb b{color:#52565c}.subject-tabs{display:flex;gap:30px;margin:40px 0}.subject{border:2px solid #e7ebed;border-radius:30px;background:#fff;color:#52565c;padding:12px 31px;font:500 16px "DM Sans";cursor:pointer;min-width:108px}.subject.active{color:white;background:var(--mint);border-color:var(--mint);box-shadow:0 5px 10px #13bfae22}.intro h2{font-size:39px;line-height:1;margin:0 0 22px;letter-spacing:-1px}.intro p{font-size:19px;color:#969ba3;margin:0}.resource-tabs{margin-top:52px;border-bottom:3px solid #e1e5e6;display:flex;gap:35px}.resource-tab{color:#a1a8ad;border:0;background:transparent;padding:0 0 16px;font:500 16px "DM Sans";margin-bottom:-3px;cursor:pointer}.resource-tab.active{color:#41464b;border-bottom:3px solid var(--mint);font-weight:700}.panel-hint{color:#9aa0a5;margin:0 0 17px;font-size:14px}.panel{display:none;padding-top:23px}.panel.active{display:block}.accordion{display:grid;gap:17px}.tree-node{border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 2px 0 #edf0f0}.accordion-trigger{width:100%;height:78px;border:0;background:#fff;padding:0 32px;display:flex;align-items:center;justify-content:space-between;color:#33383d;font:600 20px "DM Sans";cursor:pointer}.chevron{font-size:26px;color:#999;transition:transform .2s}.tree-node.open>.accordion-trigger .chevron{transform:rotate(180deg)}.accordion-content{display:none;border-top:1px solid #eff1f1;padding:11px 16px 16px;background:#fff}.tree-node.open>.accordion-content{display:block}.level-2{margin:0 0 10px 22px;border:1px solid #e7eeee;box-shadow:none}.level-3{margin:0 0 0 22px;border:1px solid #e7eeee;box-shadow:none}.level-2 .accordion-trigger,.level-3 .accordion-trigger{height:64px;font-size:17px}.detail-link{width:100%;border:0;border-radius:12px;background:#f7fbfa;margin:8px 0 0;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;text-align:left;color:#2c3034;cursor:pointer}.detail-link b{display:block}.detail-link:hover,.question-link:hover{background:#e9f8f5}.question-subject{box-shadow:none;border:0;background:transparent;overflow:visible}.question-subject>.accordion-trigger{border-radius:18px;box-shadow:0 2px 0 #edf0f0}.question-subject>.accordion-content{border:0;padding:16px 0;background:transparent}.question-list{display:grid;gap:18px}.question-link{height:94px;border:0;border-radius:18px;background:#fff;padding:0 33px;display:flex;align-items:center;justify-content:space-between;text-align:left;color:#363b40;font:500 19px "DM Sans";box-shadow:0 2px 0 #edf0f0;cursor:pointer}.question-link span:last-child{font-size:26px;color:#a0a6a8}.detail-view{padding-top:72px}.back-button{border:0;background:transparent;color:#3b988d;font:600 16px "DM Sans";padding:0;cursor:pointer}.detail-card{margin-top:25px;max-width:780px;background:#fff;border-radius:24px;padding:48px 55px;box-shadow:0 6px 24px #18201e0d}.eyebrow{letter-spacing:1.4px;color:#21aa9b;font-size:12px;font-weight:700}.detail-card h2{font-size:40px;letter-spacing:-1px;margin:17px 0}.detail-card>p{font-size:18px;line-height:1.65;color:#747a80}.worked-example{margin:30px 0;padding:24px;border-radius:16px;background:#f2fbf9}.worked-example span{color:#1c9d90;font-size:12px;font-weight:700;letter-spacing:1px}.worked-example b{display:block;font-size:26px;margin:10px 0}.worked-example li{margin:8px 0;color:#596168}.check-button{border:0;border-radius:11px;background:#16bfae;color:#fff;padding:14px 20px;font:700 15px "DM Sans";cursor:pointer}.check-button span{font-size:20px;margin-left:13px}@media(max-width:850px){.sidebar{width:76px;padding:22px 9px}.brand>span:last-child,.side-item:not(.active){font-size:0}.brand-mark{width:52px;height:52px}.side-item{padding:0;justify-content:center}.plus-card{display:none}.topbar{padding:0 25px}.content,.detail-view{padding:45px 28px}.profile span:last-child{display:none}.subject-tabs{gap:9px;flex-wrap:wrap}.subject{min-width:auto;padding:10px 17px}.intro h2{font-size:34px}.question-link{font-size:16px;padding:0 20px}}
