:root{font-family:Tahoma,Arial,sans-serif;color:#132c49;background:#f3f6fa;font-size:16px;line-height:1.65;--navy:#102b4b;--blue:#126fc6;--orange:#ed842d;--line:#dce4ed;--muted:#66788b}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a.button{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;gap:.4rem;border:1px solid #cbd8e6;border-radius:8px;background:white;color:var(--navy);padding:.65rem .95rem;font-weight:700}button:hover,a.button:hover{border-color:var(--blue)}button:disabled{cursor:default;opacity:.55}.primary{background:var(--blue)!important;color:white!important;border-color:var(--blue)!important}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e7a13a;outline-offset:3px}.topbar{min-height:84px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;padding:.5rem 3.5%;gap:1rem}.brand{display:flex;align-items:center;gap:.7rem;font-size:1.35rem;direction:ltr}.brand img{object-fit:contain}.brand b{color:#ffa64d}.topbar nav{display:flex;gap:1.4rem;flex-wrap:wrap;font-size:.95rem}.topbar nav a[aria-current]{border-bottom:2px solid #f59545;padding-bottom:.3rem}main{max-width:1500px;margin:0 auto;padding:1.7rem 3.5% 4rem}.loading{padding:4rem;text-align:center}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap}h1{font-size:1.65rem;margin:.1rem 0 .4rem}h2{font-size:1.16rem;margin:0}h3{font-size:1.08rem}.sub,.muted{color:var(--muted)}.sub{margin:0;font-size:.95rem}.controls{display:flex;align-items:flex-end;gap:.7rem;flex-wrap:wrap}label.control{display:grid;gap:.25rem;font-size:.86rem;color:#52667d}select{max-width:360px;padding:.55rem .7rem;border:1px solid #cbd8e6;border-radius:7px;background:white;color:#183b60}.notice{border-right:4px solid var(--orange);padding:.8rem 1rem;background:#fff4e8;color:#603600;border-radius:7px;margin:1rem 0}.notice p{margin:.4rem 0}.unit-label{display:flex;justify-content:space-between;align-items:center;margin:1rem 0 .8rem;gap:.8rem}.unit-label h2{font-size:1.28rem}.tag{font-size:.8rem;padding:.25rem .7rem;border-radius:50px;background:#e9f1fa;color:#295176;white-space:nowrap}.unit-grid{display:grid;grid-template-columns:1fr 1fr .8fr;direction:ltr;border:1px solid var(--line);background:white;border-radius:14px;box-shadow:0 6px 24px #1f3a5710;overflow:hidden}.pane{direction:rtl;min-width:0;border-right:1px solid var(--line)}.pane:last-child{border:0}.pane-title{display:flex;align-items:center;gap:.75rem;padding:1.05rem 1.2rem;border-bottom:1px solid var(--line);background:#fbfcfe;min-height:88px}.section-icon{width:42px;height:42px;display:grid;place-items:center;color:var(--blue);background:#e8f2ff;border-radius:10px;font-size:1.4rem}.workbook .section-icon{color:#bc5900;background:#fff0de}.classes .section-icon{color:#177764;background:#e4f5ef}.pane-title small{display:block;color:var(--muted);font-size:.82rem;font-weight:normal;direction:ltr;text-align:right}.stats{padding:1.1rem 1.2rem;display:grid;grid-template-columns:1fr 1fr;gap:.7rem 1.4rem;direction:ltr}.metric{text-align:left;direction:ltr}.metric span{font-size:.79rem;color:var(--muted);display:block;direction:rtl;text-align:left}.big{font-size:2.2rem;font-weight:750;line-height:1.3;color:var(--navy)}.big small{font-size:.85rem;color:var(--muted);font-weight:normal}.progress{height:6px;background:#e6edf3;border-radius:20px;overflow:hidden;margin-top:.65rem}.progress i{display:block;height:100%;background:var(--blue);border-radius:20px}.workbook .progress i{background:var(--orange)}.detail{font-weight:600;font-size:.85rem}.grade-table{width:100%;border-collapse:collapse;direction:ltr;font-size:.86rem}.grade-table th,.grade-table td{padding:.75rem .4rem;border-top:1px solid var(--line);border-right:1px solid var(--line);text-align:center;vertical-align:middle}.grade-table th:first-child,.grade-table td:first-child{direction:rtl;text-align:right;width:31%;font-size:.82rem;padding-right:.7rem}.grade-table th{font-weight:600;background:#fafcfe;color:#49627b}.grade-table td:last-child{border-right:0}.grade-table button,.grade-table a.button{font-size:.82rem;padding:.4rem .45rem;width:100%;white-space:normal;line-height:1.5}.status-pill{display:inline-block;font-size:.78rem;background:#f0f3f6;color:#657789;padding:.2rem .5rem;border-radius:6px}.status-pill.done{background:#e4f4eb;color:#19704b}.status-pill.pending{background:#fff0da;color:#875400}.class-item{padding:1rem 1.2rem;border-bottom:1px solid var(--line)}.class-item:last-child{border:0}.class-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.6rem}.class-details{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;font-size:.85rem}.class-details span{display:block;color:var(--muted);font-size:.78rem}.class-item a.button{font-size:.85rem;margin-top:.8rem;width:100%}.unit-foot{color:var(--muted);font-size:.88rem;margin:1rem .2rem}.book-head{background:var(--navy);color:white;border-radius:14px;padding:1.6rem 2rem;display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:1rem 0 1.4rem}.book-head h1{font-size:1.7rem}.book-head .sub{color:#d1e2f4}.book-head strong{font-size:2.5rem;line-height:1.2}.book-head .progress{min-width:140px;background:#39516c}.book-head .progress i{background:#ffb365}.book-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:1.3rem;align-items:start}.book-nav{background:white;border:1px solid var(--line);border-radius:12px;padding:.8rem;position:sticky;top:1rem}.book-nav button{width:100%;border:0;justify-content:flex-start;font-weight:normal;margin-bottom:.25rem;padding:.75rem}.book-nav button.active{background:#eaf3ff;color:#0867ba;font-weight:bold}.book-nav small{display:block;border-top:1px solid var(--line);padding:.8rem .4rem;font-size:.84rem;color:var(--muted)}.book-page{background:white;border:1px solid var(--line);border-radius:12px;padding:1.5rem 1.8rem;min-height:400px}.page-kicker{font-size:.78rem;color:#a65613;letter-spacing:.05em;margin-bottom:.3rem}.question{margin:1.3rem 0;padding-top:1rem;border-top:1px solid var(--line)}.question p{margin:0 0 .7rem;font-weight:bold}.options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.option{padding:.65rem .8rem;border:1px solid #d6e0eb;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:.5rem;line-height:1.5;min-height:52px}.option:has(input:checked){border-color:var(--blue);background:#edf5ff}.option input{accent-color:var(--blue);width:18px;height:18px;flex-shrink:0}.english{direction:ltr;text-align:left;font-family:Arial,sans-serif;line-height:1.9;font-size:1.08rem;background:#eff5fb;border-radius:10px;padding:1.1rem}.actions{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin-top:1.5rem}.save-label{font-size:.85rem;color:var(--muted)}textarea{width:100%;min-height:125px;padding:.8rem;border:1px solid #c9d7e6;border-radius:9px;resize:vertical;line-height:1.8}input[type=number]{width:100%;padding:.5rem;border:1px solid #c9d7e6;border-radius:8px}.feedback{font-size:.85rem;color:#895000;background:#fff6e6;padding:.6rem .8rem;margin:.6rem 0;border-radius:7px}.feedback.correct{color:#17633e;background:#eaf6ef}.results{display:flex;gap:1rem;flex-wrap:wrap;margin:1rem 0}.result-card{background:#f1f6fc;border-radius:10px;padding:1rem;min-width:150px;flex:1}.result-card strong{display:block;font-size:1.9rem}.result-card span{font-size:.87rem;color:var(--muted)}.review-answer{white-space:pre-wrap;background:#f6f8fb;padding:1rem;border-radius:8px}.toast{position:fixed;bottom:1.5rem;left:50%;transform:translateX(-50%);max-width:90vw;background:#122e4e;color:white;padding:.8rem 1.2rem;border-radius:10px;box-shadow:0 4px 16px #0002;z-index:20}.error-panel{padding:2rem;background:white;border:1px solid #e7b7b7;border-radius:12px}.rubric{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.book-tools{display:flex;gap:.7rem}.book-tools button{font-size:.86rem}
@media(max-width:1100px){.unit-grid{grid-template-columns:1fr 1fr}.classes{grid-column:1/-1;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr)}.classes .pane-title{grid-column:1/-1;min-height:auto}.class-item{border-left:1px solid var(--line)}.book-layout{grid-template-columns:190px 1fr}}@media(max-width:700px){main{padding:1.2rem .8rem 3rem}.topbar{padding:.6rem 1rem;flex-wrap:wrap}.topbar nav{gap:1rem;font-size:.84rem}.brand img{width:48px;height:48px}.unit-grid{grid-template-columns:1fr}.pane{border-right:0;border-bottom:1px solid var(--line)}.classes{display:block}.pane-title{min-height:76px}.grade-table{font-size:.88rem}.grade-table td,.grade-table th{padding:.65rem .35rem}.book-layout{display:block}.book-nav{position:static;display:flex;overflow:auto;margin-bottom:1rem;padding:.4rem}.book-nav button{min-width:max-content;width:auto;margin:0;font-size:.85rem}.book-nav small{display:none}.book-page{padding:1.1rem}.book-head{padding:1.2rem;flex-wrap:wrap}.book-head h1{font-size:1.3rem}.options{grid-template-columns:1fr}.rubric{grid-template-columns:1fr}.controls{width:100%}.controls label{flex:1}.controls select{max-width:100%;width:100%}.page-head{gap:1rem}}
@media print{.topbar,.book-nav,.actions,.book-tools,.controls,.toast{display:none!important}body{background:white}.book-layout{display:block}.book-head{background:white;color:#132c49;border:1px solid #ccc}.book-page{border:0;padding:0}.question{break-inside:avoid}textarea{min-height:160px}.notice{display:none}}
