/* «پایه‌ها» — grade pages with their own classes. */
.gc-page{--gc-ink:var(--ink,#1d3440);--gc-muted:var(--muted,#64808c);--gc-line:var(--line,#dbe6ea);--gc-soft:var(--soft,#f5f8f9);--gc-paper:var(--white,#fff);--gc-accent:#0c8878;--gc-warn:#b26a00;color:var(--gc-ink);display:grid;gap:16px}
.gc-page.is-busy{opacity:.7;pointer-events:none}
.gc-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 20px;border:1px solid var(--gc-line);border-radius:16px;background:var(--gc-paper)}
.gc-head h2{margin:0 0 6px;font-size:22px;font-weight:900}
.gc-head p{margin:0;max-width:70ch;font-size:13px;line-height:1.9;color:var(--gc-muted)}
.gc-year{display:grid;gap:6px;font-size:12px;color:var(--gc-muted)}
.gc-year select,.gc-page select,.gc-page input{font:inherit;font-size:13px;min-height:38px;padding:6px 10px;border:1px solid var(--gc-line);border-radius:10px;background:var(--gc-paper);color:var(--gc-ink)}
.gc-alert:empty{display:none}
.gc-alert{padding:10px 14px;border-radius:10px;font-size:13px;font-weight:700}
.gc-alert.is-ok{background:#e7f6f0;color:#13684f}
.gc-alert.is-info{background:#eef4f7;color:#355766}
.gc-alert.is-error{background:#fdecec;color:#a12828}
.gc-muted{color:var(--gc-muted);font-size:13px;margin:6px 0}
.gc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.gc-grade-card{display:grid;gap:8px;text-align:right;padding:18px;border:1px solid var(--gc-line);border-radius:14px;background:var(--gc-paper);color:inherit;font:inherit;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.gc-grade-card:hover,.gc-grade-card:focus-visible{border-color:var(--gc-accent);box-shadow:0 6px 18px -12px rgba(12,136,120,.6);outline:0}
.gc-grade-title{font-size:17px;font-weight:900}
.gc-grade-meta{font-size:13px;color:var(--gc-muted)}
.gc-badge{justify-self:start;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:#e7f6f0;color:#13684f}
.gc-badge.is-warn{background:#fff3df;color:var(--gc-warn)}
.gc-inline-form{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 16px;border:1px dashed var(--gc-line);border-radius:14px;background:var(--gc-paper)}
.gc-inline-form input{flex:1;min-width:220px}
.gc-btn{font:inherit;font-size:13px;font-weight:800;min-height:38px;padding:7px 16px;border-radius:10px;border:1px solid var(--gc-line);background:var(--gc-paper);color:var(--gc-ink);cursor:pointer}
.gc-btn:hover{border-color:var(--gc-accent)}
.gc-btn.is-primary{background:var(--gc-accent);border-color:var(--gc-accent);color:#fff}
.gc-btn.is-quiet{background:var(--gc-soft)}
.gc-link{font:inherit;font-size:12px;font-weight:700;border:0;background:none;color:var(--gc-accent);cursor:pointer;padding:4px 6px}
.gc-link.is-danger{color:#b42727}
.gc-grade-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:16px 18px;border:1px solid var(--gc-line);border-radius:14px;background:var(--gc-paper)}
.gc-grade-head h3{margin:0;font-size:20px;font-weight:900}
.gc-back{font:inherit;font-size:13px;font-weight:700;border:1px solid var(--gc-line);border-radius:10px;background:var(--gc-soft);padding:6px 12px;cursor:pointer;color:var(--gc-ink)}
.gc-stats{display:flex;gap:16px;margin-inline-start:auto;font-size:13px;color:var(--gc-muted)}
.gc-stats b{font-size:17px;color:var(--gc-ink);margin-left:4px}
.gc-stats .is-warn,.gc-stats .is-warn b{color:var(--gc-warn)}
.gc-tools{display:flex;gap:10px;flex-wrap:wrap}
.gc-panel{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:14px 16px;border:1px solid var(--gc-line);border-radius:14px;background:var(--gc-soft)}
.gc-panel[hidden]{display:none}
.gc-panel p{flex-basis:100%;margin:0;font-size:13px}
.gc-panel label{display:grid;gap:5px;font-size:12px;color:var(--gc-muted)}
.gc-plan-names{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;color:var(--gc-muted)}
.gc-plan-names input{width:110px}
.gc-box{border:1px solid var(--gc-line);border-radius:14px;background:var(--gc-paper);overflow:hidden}
.gc-box header{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--gc-line);background:var(--gc-soft)}
.gc-box h4{margin:0;font-size:15px;font-weight:900}
.gc-box.is-warn{border-color:#f1d29c}
.gc-box.is-warn header{background:#fff7e8;color:var(--gc-warn)}
.gc-box > .gc-muted{padding:8px 16px}
.gc-cap{font-size:12px;color:var(--gc-muted)}
.gc-cap.is-full{color:#b42727;font-weight:700}
.gc-class-tools{margin-inline-start:auto}
.gc-classes{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
.gc-ok{margin:0;padding:10px 14px;border-radius:10px;background:#e7f6f0;color:#13684f;font-size:13px;font-weight:700}
.gc-empty{display:grid;gap:6px;padding:28px;text-align:center;border:1px dashed var(--gc-line);border-radius:14px;color:var(--gc-muted);font-size:13px}
.gc-empty strong{color:var(--gc-ink);font-size:15px}
.gc-students{list-style:none;margin:0;padding:4px 0;counter-reset:gc}
.gc-students li{display:flex;align-items:center;gap:10px;padding:8px 16px;border-top:1px solid var(--gc-soft);font-size:14px;counter-increment:gc}
.gc-students li:first-child{border-top:0}
.gc-students li::before{content:counter(gc,persian);min-width:22px;color:var(--gc-muted);font-size:12px}
.gc-name{font-weight:700}
.gc-code{font-size:12px;color:var(--gc-muted)}
.gc-row-tools{display:flex;align-items:center;gap:6px;margin-inline-start:auto}
.gc-row-tools select{min-height:32px;font-size:12px;padding:3px 8px}
@media(max-width:700px){.gc-stats{margin:0;width:100%}.gc-students li{flex-wrap:wrap}.gc-row-tools{margin:0;width:100%}}
.gc-page [data-gc-body]{display:grid;gap:14px}
.gc-plan-note:empty{display:none}.gc-plan-note{color:#13684f;font-weight:700}
.gc-badge.is-muted{background:var(--gc-soft);color:var(--gc-muted)}
