:root{--ink:#1d1d1f;--muted:#6e6e73;--green:#0071e3;--bg:#f5f5f7;--line:#e4e7ec;--gold:#64748b}
body{font:14px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}
a{text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{border-radius:8px;transition:border-color .16s,background .16s}button{font-weight:500}button:hover{background:#f0f6ff;border-color:#a8c9ef}button.primary{background:#0071e3;border-color:#0071e3}button.primary:hover{background:#0062c5}button:disabled{opacity:.45;cursor:not-allowed}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid #0071e326;outline-offset:2px;border-color:#0071e3}button[hidden]{display:none}
header{background:#fff;color:var(--ink);padding:0 24px;border-bottom:1px solid var(--line)}.header-inner{max-width:1280px;margin:auto}.site-nav{height:64px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0f0f2}.site-nav>a:last-child{font-size:13px;color:var(--muted)}.brand{font-size:18px;font-weight:700;color:#1d1d1f;letter-spacing:-.5px}.brand span{font-weight:400;color:#6e6e73;margin-left:8px}.page-heading{display:flex;justify-content:space-between;align-items:center;padding:28px 0 30px}.page-heading small{font-size:10px;letter-spacing:2px;color:#0071e3;font-weight:650}h1{font-size:30px;font-weight:650;letter-spacing:-1px;margin:5px 0 4px}header p{font-size:13px;color:var(--muted)}.trial-tag{padding:4px 10px;border:1px solid #cce1fa;border-radius:6px;color:#0071e3;background:#f1f7ff;font-size:12px}
.wrap{max-width:1328px;padding:24px 24px 40px}.toolbar{margin:0;box-shadow:none;border-radius:12px;padding:18px 20px;gap:10px 14px}.toolbar label{margin-bottom:5px;font-size:11px}.toolbar input,.toolbar select{background:#fafbfc}.save{color:#6e6e73;font-size:11px}.panel{border-radius:12px;padding:20px;box-shadow:none}.sync-panel{margin:12px 0 0;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 20px;background:#fff}.sync-info{display:flex;align-items:center;gap:16px}.sync-info strong{font-size:13px;white-space:nowrap}.sync-info p{margin:0;font-size:12px;color:var(--muted)}.sync-actions{display:flex;gap:8px;flex-wrap:wrap}.sync-actions button{font-size:12px;padding:7px 12px}#cloud-versions:empty{display:none}#cloud-versions{width:100%}
.stats{gap:14px;margin:20px 0}.stat{border-radius:12px;padding:20px 22px;position:relative}.stat:first-child{background:#eef5ff;border-color:#dce9fa}.stat strong{font-size:32px;letter-spacing:-1px;font-weight:650;color:#1d1d1f}.stat:first-child strong{color:#0071e3}.stat span{font-size:12px}.main{grid-template-columns:280px minmax(0,1fr);gap:20px}h2{font-size:16px;font-weight:650}h3{font-weight:600}.rule{padding:13px 0}.bar{height:5px;background:#edf0f5}.flag{color:#526075;background:#f1f4f8;padding:4px 8px}.warn{color:#866020;background:#fff8e9;border:1px solid #f1e3c9}.sub{line-height:1.7}.workspace{margin:0 0 12px;border:1px solid var(--line);border-radius:12px;background:#fff}.workspace>summary{padding:16px 20px;font-size:14px;color:#424245}.workspace[open]>summary{border-bottom:1px solid var(--line)}.workspace>.panel{border:0;margin:0;border-radius:0 0 12px 12px}.side button{font-size:12px;margin-bottom:12px}.filters{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px;gap:8px}.filters input,.filters select{border-color:transparent;background:#f5f5f7;font-size:13px}.course{border-radius:10px;padding:18px;background:#fff}.course.passed{border-left:3px solid #0071e3}.course.planned,.course.taking{border-left:3px solid #94a3b8}.course h3{font-size:15px;line-height:1.5}.code{color:#0071e3;letter-spacing:.6px;font-weight:600}.orig{color:#85858c}.course .controls{gap:6px}.controls select{background:#fafbfc}.eng-box.active{background:#eef5ff;border-color:#0071e3}.eng-step{background:#fafbfc}.english-table th{color:#6e6e73;font-size:12px}.english-table td,.english-table th{padding:10px 6px}footer{padding-top:18px;border-top:1px solid var(--line);font-size:11px}.toast{background:#1d1d1f;border-radius:8px;font-size:13px}
@media(max-width:950px){.main{grid-template-columns:1fr}.side{grid-template-columns:1fr 1fr}.sync-info{flex-wrap:wrap;gap:4px 12px}}
@media(max-width:650px){header{padding:0 16px}.site-nav{height:54px}.page-heading{padding:23px 0}h1{font-size:25px}.wrap{padding:16px 12px 28px}.toolbar{padding:14px;gap:10px}.toolbar>div:has(#name),.toolbar>div:has(#program){flex:1;min-width:130px}.toolbar #name,.toolbar #program{width:100%!important}.toolbar input,.toolbar select{font-size:13px}.toolbar>button{font-size:12px;padding:7px 10px}.sync-panel{padding:14px;gap:12px}.sync-info{display:block}.sync-info p{margin-top:3px}.sync-actions{width:100%}.sync-actions button{flex:1;white-space:nowrap}.stats{gap:10px;margin:16px 0}.stat{padding:15px}.stat strong{font-size:28px}.stat span{font-size:11px}.side,.courses{grid-template-columns:1fr}.panel{padding:16px}.workspace>.panel{padding:14px}.filters input{min-width:100%;}.filters select{flex:1;min-width:0}.row{flex-wrap:wrap}footer{display:flex;flex-direction:column;gap:12px}footer button{align-self:flex-start}}
@media print{.site-nav,.sync-panel,.trial-tag{display:none}header{border:0}.page-heading{padding:0}.wrap{padding:0}.workspace:not([open]){display:none}.stat:first-child{background:white}}
