*{box-sizing:border-box}:root{--green:#0c6338;--deep:#073d25;--mint:#eaf6ee;--bg:#f5f8f6;--line:#dce8e0;--text:#17231c;--muted:#6b786f;--gold:#d79a22}
body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}button{font:inherit;cursor:pointer}
header{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 22px;position:sticky;top:0;z-index:10}
.brand{display:flex;align-items:center;gap:12px}.logo{width:42px;height:42px;border-radius:12px;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:900}.brand b{font-size:20px;color:var(--deep)}.brand small{display:block;color:var(--muted);margin-top:2px}.top{display:flex;gap:8px}.top button{border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 12px}
.shell{display:grid;grid-template-columns:280px 1fr;min-height:calc(100vh - 72px)}aside{background:var(--deep);color:#fff;padding:18px 12px}.profile{padding:15px;border-radius:14px;background:#ffffff12;margin-bottom:15px}.profile small{opacity:.7}.label{font-size:10px;letter-spacing:1.2px;font-weight:900;opacity:.48;margin:18px 10px 6px}.nav{padding:11px 12px;border-radius:10px;margin:3px 0;display:flex;gap:10px;align-items:center;cursor:pointer}.nav:hover,.nav.active{background:#ffffff18}.nav span:first-child{width:20px}.nav.sub{padding-left:42px;font-size:14px}
main{padding:22px 26px;max-width:1500px;width:100%}#crumb{font-size:13px;color:var(--muted);margin-bottom:13px}.hero{background:linear-gradient(120deg,#fff,#e9f6ed);border:1px solid var(--line);border-radius:18px;padding:22px;margin-bottom:16px}.hero h1{margin:0;color:var(--deep);font-size:27px}.hero p{margin:7px 0 0;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}.metric strong{font-size:28px;color:var(--green)}.metric small{display:block;color:var(--muted);margin-top:5px}
.panel{background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:15px}.panelHead{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.panelBody{padding:17px}.toolbar{display:flex;gap:8px;flex-wrap:wrap}.btn{border:0;border-radius:9px;padding:9px 12px;font-weight:800;background:var(--green);color:#fff}.btn.light{background:var(--mint);color:var(--green)}.btn.white{background:#fff;color:var(--green);border:1px solid var(--line)}.btn.danger{background:#feeae7;color:#a3261c}
.gradeTabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:15px}.gradeTab{background:#fff;border:1px solid var(--line);padding:14px;border-radius:13px;text-align:left}.gradeTab.active{background:var(--green);color:#fff}.gradeTab b{font-size:18px}.gradeTab small{display:block;margin-top:3px;opacity:.75}
.filters{display:grid;grid-template-columns:1.1fr 1.5fr 1.5fr .8fr;gap:9px;margin-bottom:14px}.filters select,.filters input,.field input,.field select,.field textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff}
.topic{border:1px solid var(--line);border-radius:13px;margin:9px 0;overflow:hidden}.topicHead{padding:13px 15px;background:#f8fbf9;font-weight:900;color:var(--deep);display:flex;justify-content:space-between}.lesson{padding:13px 15px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.lesson p{margin:4px 0;color:var(--muted);font-size:14px}.badge{display:inline-block;padding:4px 8px;border-radius:99px;background:var(--mint);color:var(--green);font-size:11px;font-weight:900}.badge.draft{background:#f2f2f2;color:#777}.split{display:grid;grid-template-columns:1fr 1fr;gap:14px}.assessment{border-left:4px solid var(--green)}.tree{padding:7px 0}.tree div{padding:8px 12px;border-radius:8px}.tree .lv2{margin-left:18px}.tree .lv3{margin-left:36px;color:var(--muted)}
.aiBox{background:#f6f7ff;border:1px solid #d9ddff;border-radius:14px;padding:16px}.aiBox b{color:#3b4698}.flow{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.step{background:#fff;border:1px solid var(--line);padding:13px;border-radius:12px;text-align:center}.step b{display:block;color:var(--green);margin-bottom:5px}
.modal{position:fixed;inset:0;background:#0008;display:grid;place-items:center;padding:20px;z-index:50}.hidden{display:none}.dialog{background:#fff;width:min(900px,96vw);max-height:90vh;overflow:auto;border-radius:18px;padding:23px;position:relative}.close{position:absolute;right:13px;top:13px;border:0;background:#eee;border-radius:8px;padding:6px 10px}.field{margin:11px 0}.field label{display:block;font-weight:800;font-size:13px;margin-bottom:5px}.typeCards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.typeCard{border:1px solid var(--line);border-radius:13px;padding:15px}.typeCard strong{color:var(--green)}
@media(max-width:950px){.shell{grid-template-columns:1fr}aside{display:none}.cards{grid-template-columns:repeat(2,1fr)}.filters,.flow{grid-template-columns:1fr 1fr}}@media(max-width:600px){main{padding:14px}.cards,.split,.gradeTabs,.typeCards,.filters,.flow{grid-template-columns:1fr}.lesson{grid-template-columns:1fr}}
.lessonHero{background:linear-gradient(120deg,#f5fff8,#e7f5eb);border:1px solid var(--line);border-radius:15px;padding:18px;margin:4px 0 15px;display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.lessonHero h2{margin:9px 0 5px;color:var(--deep)}.lessonHero p{color:var(--muted);margin:0}.lessonStatus{font-size:11px;font-weight:900;color:var(--green);background:#fff;border:1px solid var(--line);border-radius:99px;padding:7px 10px;white-space:nowrap}
.detailGrid{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:14px}.contentSection{border:1px solid var(--line);border-radius:13px;padding:15px 17px;margin-bottom:12px;background:#fff}.contentSection h3{color:var(--deep);margin:0 0 10px}.contentSection p,.contentSection li{line-height:1.62}.contentSection li{margin:5px 0}.knowledgeBlock{padding:12px 0;border-top:1px dashed var(--line)}.knowledgeBlock:first-of-type{border-top:0}.knowledgeBlock h3{font-size:16px}.warm{background:#fffaf0;border-color:#f0dfb5}.remember{background:#eff8f1;border-color:#cce5d3}.apply{background:#f8fbf4}.aiLearn{background:#f6f7ff;border-color:#d8dcff}.qa{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:8px 0;background:#fbfdfb}.qa summary{font-weight:800;cursor:pointer}.qa p{margin:9px 0 2px}.detailAside{display:block!important;background:transparent;color:inherit;padding:0}.miniCard{background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px;margin-bottom:10px}.miniCard b{font-size:11px;color:var(--green);letter-spacing:.7px}.miniCard p{font-size:13px;line-height:1.55;color:var(--muted)}
@media(max-width:800px){.detailGrid{grid-template-columns:1fr}.detailAside{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}.lessonHero{display:block}.lessonStatus{display:inline-block;margin-top:10px}}@media(max-width:520px){.detailAside{grid-template-columns:1fr}}
