/* Independent teacher control center, scoped to authenticated dashboard */
.teacher-pro [hidden]{display:none!important}
.cc-panel{background:#fff;border:1px solid #e6ebf5;border-radius:20px;box-shadow:0 10px 30px #24375b0a;padding:26px;margin-top:22px;scroll-margin-top:18px}
.cc-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.cc-heading h2{font-size:1.34rem;color:#1d3053;margin:4px 0 7px}.cc-heading p{font-size:.79rem;line-height:1.9;color:#7889a3;margin:0;max-width:780px}.cc-status{min-width:110px;background:#f0f3ff;padding:14px 18px;text-align:center;border-radius:14px}.cc-status>span{font-size:1.35rem;font-weight:900;display:block;color:#5b64d8}.cc-status>small{font-size:.7rem;color:#8290ae}.cc-toolbar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.cc-toolbar label,.cc-select-label{font-size:.75rem;font-weight:750;color:#60718e;display:grid;gap:7px;min-width:195px;flex:1}.cc-toolbar input,.cc-toolbar select,.cc-select-label select{width:100%;min-height:43px;border:1px solid #dce4ef;border-radius:11px;background:#fff;padding:8px 12px;color:#23395a;font:inherit}.cc-toolbar button{align-self:end}.cc-safe{background:#f0faf7;border:1px solid #cbece2;border-radius:13px;padding:14px 17px;margin-bottom:20px}.cc-safe strong{color:#207966;font-size:.82rem}.cc-safe p{margin:6px 0 0;font-size:.74rem;color:#3e8573;line-height:1.8}.cc-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.cc-feature{border:1px solid #e8edf5;background:#fcfdff;border-radius:14px;padding:15px;display:flex;justify-content:space-between;align-items:center;gap:13px}.cc-feature-heading{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cc-feature-info strong{display:block;font-size:.82rem;color:#283b5b}.cc-feature-info p{font-size:.7rem;color:#8290a6;line-height:1.8;margin:5px 0}.cc-feature-info small{font-size:.63rem;color:#9ba7bb}.cc-switch{display:flex;position:relative;width:51px;min-width:51px;height:29px;cursor:pointer}.cc-switch input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}.cc-switch-visual{width:51px;height:29px;border-radius:30px;background:#c4cddd;position:relative;transition:background .15s}.cc-switch-visual:after{content:'';width:21px;height:21px;border-radius:50%;background:#fff;position:absolute;right:4px;top:4px;box-shadow:0 2px 7px #18234333;transition:transform .15s}.cc-switch input:checked+.cc-switch-visual{background:linear-gradient(95deg,#4479e6,#8b60d5)}.cc-switch input:checked+.cc-switch-visual:after{transform:translateX(-22px)}.cc-switch input:focus-visible+.cc-switch-visual{outline:3px solid #4b8eff;outline-offset:3px}.cc-switch input:disabled+.cc-switch-visual{opacity:.55;cursor:wait}.cc-badge{background:#eef0ff;padding:4px 9px;border-radius:999px;font-size:.65rem;font-weight:750;color:#6869c8}.cc-hint{font-size:.73rem;color:#8492aa;line-height:1.9;margin:14px 0 0}.cc-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px}.cc-kpis>div{border-radius:14px;background:#f6f8fd;text-align:center;padding:19px 8px}.cc-kpis strong{display:block;font-size:1.7rem;color:#435fd5}.cc-kpis span{font-size:.72rem;color:#8190a6}.cc-cols{display:grid;grid-template-columns:1fr 1fr;gap:17px}.cc-cols>div{border:1px solid #e7edf6;border-radius:15px;padding:18px}.cc-cols h3{margin:0 0 14px;font-size:.9rem;color:#304366}.cc-analytics{display:grid;gap:9px}.cc-analytic-row{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:12px;font-size:.73rem;color:#536783;border-bottom:1px solid #eff1f7;padding:8px 0}.cc-analytic-row:last-child{border:0}.cc-analytic-track{height:8px;background:#edf2f9;border-radius:7px;overflow:hidden}.cc-analytic-track span{display:block;height:100%;background:linear-gradient(90deg,#53aecf,#7068df)}.cc-actions{display:flex;justify-content:flex-end;margin-top:15px}.cc-warning{background:#fff4ed;color:#a85c33;padding:12px;border-radius:10px;font-size:.78rem}.cc-select-label{max-width:450px}.cc-diagnostic{background:#eef5ff;border-radius:12px;padding:15px;margin:18px 0;color:#3a557d;font-size:.8rem}.cc-detail-body{overflow:auto}.cc-detail-table{width:100%;border-collapse:collapse;min-width:700px;font-size:.75rem}.cc-detail-table th{padding:12px;text-align:right;background:#f5f7fc;color:#536581}.cc-detail-table td{padding:11px;border-bottom:1px solid #edf0f6;color:#49607d}.cc-audit-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #edf1f7;padding:12px 5px;color:#3c4d6e;font-size:.75rem}.cc-audit-row small{color:#98a6bd}.cc-enabled{color:#2a9a77}.cc-disabled{color:#b8677b}.cc-empty{text-align:center;color:#8c9aaf;font-size:.82rem;padding:15px}
@media(max-width:1150px){.cc-features{grid-template-columns:1fr}.cc-cols{grid-template-columns:1fr}}
@media(max-width:620px){.cc-panel{padding:17px}.cc-kpis{grid-template-columns:repeat(2,1fr)}.cc-heading{flex-direction:column;align-items:start}.cc-feature{padding:12px}.cc-analytic-row{grid-template-columns:1fr auto}.cc-analytic-track{grid-column:1/-1;grid-row:2}.cc-toolbar{display:grid}.cc-status{align-self:start}}
@media(prefers-reduced-motion:reduce){.cc-switch-visual,.cc-switch-visual:after{transition:none}}

.cc-subtitle{font-size:.9rem;color:#344562;margin:23px 0 8px}
.cc-range{display:grid;justify-items:center;gap:4px;min-width:150px}.cc-range input{width:150px;accent-color:#5b64d8;min-height:44px}.cc-range output{font-weight:800;color:#435fd5;font-size:.82rem}

.cc-feature.cc-feature-choice{flex-direction:column;align-items:stretch}
.cc-choices{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-start}
.cc-choices button{min-height:44px;padding:6px 14px;font-size:.85rem;border-radius:999px;border:1.5px solid #c9c2e8;background:#fff;color:#2b1e6b;font:inherit;font-weight:700;cursor:pointer}
.cc-choices button.on{background:#5a3fd0;border-color:#5a3fd0;color:#fff}
.cc-choices button:focus-visible{outline:3px solid #f2b630;outline-offset:2px}
.cc-choices button:disabled{opacity:.6;cursor:wait}
