:root{--ink:#19324f;--muted:#52627a;--line:#cdddf2;--paper:#f5f9ff;--brand:#1765e8}
*{box-sizing:border-box}body.account-page{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.account-shell{max-width:1050px;margin:45px auto;padding:24px}.eyebrow{font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.account-page h1{font-size:clamp(28px,4vw,42px);line-height:1.2;margin:16px 0}.account-page h2{font-size:23px}
.account-page button,.account-page a.button,.account-bar button,.course-panel button{font:inherit;cursor:pointer;border:1px solid var(--line);border-radius:12px;padding:12px 18px;background:white;color:var(--ink);min-height:44px}
.account-page button:hover,.account-bar button:hover{border-color:var(--brand)}.account-page button:disabled{opacity:.6;cursor:wait}
.account-page .primary{background:var(--brand);color:white}.fixture-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:30px 0}
.fixture-card,.teacher-card{background:white;border:1px solid var(--line);border-radius:20px;padding:24px}
.fixture-card button{width:100%;margin-top:12px}.notice{padding:16px 20px;border-left:4px solid #a98740;background:#fff6df;border-radius:6px}
.muted{color:var(--muted)}.account-bar{background:#eaf3ff;border-bottom:1px solid var(--line);padding:12px 20px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font:14px/1.5 -apple-system,BlinkMacSystemFont,sans-serif;color:var(--ink)}
.account-bar strong{margin-right:auto}.account-bar button{padding:7px 12px;font-size:13px}.sync-detail{flex:1 1 100%;font-size:13px}.sync-detail:empty{display:none}
.course-panel{max-width:1400px;margin:16px auto;padding:14px 24px;font:14px/1.5 -apple-system,BlinkMacSystemFont,sans-serif}
.course-panel summary{cursor:pointer;font-weight:700}.course-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}
.course-row button{font-size:13px;min-width:100px}.course-panel p{color:var(--muted)}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat{background:#edf5ff;border-radius:12px;padding:16px}.stat b{display:block;font-size:28px}
.teacher-card{margin:24px 0}.teacher-card table{width:100%;border-collapse:collapse;font-size:14px}.teacher-card th,.teacher-card td{text-align:left;border-bottom:1px solid var(--line);padding:10px;vertical-align:top}
.table-scroll{overflow:auto}.weak-row{padding:10px 0;border-bottom:1px solid var(--line)}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
[hidden]{display:none!important}#account-modal{max-width:600px;border:1px solid var(--line);border-radius:18px;padding:24px}#account-modal::backdrop{background:#19324f80}
@media(max-width:600px){.fixture-grid{grid-template-columns:1fr}.account-shell{margin:12px auto;padding:16px}.stat-grid{grid-template-columns:repeat(2,1fr)}.account-bar{padding:10px}.account-bar strong{flex:1 1 100%}.course-panel{padding:12px}.teacher-card{padding:16px}}
.course-row{flex-wrap:wrap}.account-page input{font:inherit;padding:10px;border:1px solid var(--line);border-radius:8px;min-width:0;max-width:100%}.course-row input{flex:1 1 180px}.account-page label{max-width:100%}
.table-scroll table{min-width:600px}.table-hint{display:none}@media(max-width:600px){.table-hint{display:block}}

.auth-shell{max-width:620px}.auth-form{display:grid;gap:16px;margin:25px 0}.auth-form label{display:grid;gap:6px}.auth-form input{width:100%}.account-page a{color:var(--brand)}#invite-dialog{max-width:min(600px,94vw);border:1px solid var(--line);border-radius:18px;padding:24px}#invite-dialog textarea{width:100%;font:inherit;overflow-wrap:anywhere}#invite-dialog::backdrop{background:#19324f80}.toolbar>label{flex:1 1 200px}.toolbar input{width:100%}

.account-page :focus-visible,.account-bar :focus-visible,.course-panel :focus-visible{outline:3px solid #1765e8;outline-offset:3px}
