.bc-classroom{--clr-bg:#f4f5f7;--clr-surface:#fff;--clr-surface-2:#f8f9fb;--clr-border:#e6e8ee;--clr-border-strong:#d4d7e0;--clr-text:#16181d;--clr-text-2:#5b6270;--clr-text-3:#64748b;--clr-accent:#059669;--clr-accent-strong:#047857;--clr-accent-soft:#ecfdf5;--clr-success:#059669;--clr-warning:#d97706;--clr-warning-strong:#b45309;--clr-warning-soft:#fffbeb;--clr-danger:#b91c1c;--clr-danger-soft:#fef2f2;--clr-violet:#7c3aed;--clr-violet-soft:#f5f3ff;--clr-info:#2563eb;--clr-info-soft:#eff6ff;--shadow-card:0 1px 3px #1018280d, 0 1px 2px #1018280a;--shadow-sheet:0 -12px 40px #1018282e;--radius-lg:20px;--radius-md:14px;--radius-sm:10px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.dark .bc-classroom{--clr-bg:#0f1117;--clr-surface:#171a22;--clr-surface-2:#1d212b;--clr-border:#262b38;--clr-border-strong:#333a4b;--clr-text:#f1f2f6;--clr-text-2:#a6adbb;--clr-text-3:#8b93a1;--clr-accent:#34d399;--clr-accent-strong:#10b981;--clr-accent-soft:#0d2b22;--clr-success:#34d399;--clr-warning:#fbbf24;--clr-warning-strong:#fbbf24;--clr-warning-soft:#2b220d;--clr-danger:#f87171;--clr-danger-soft:#2b1517;--clr-violet:#a78bfa;--clr-violet-soft:#1e1835;--clr-info:#93c5fd;--clr-info-soft:#15233f;--shadow-card:0 1px 3px #0006;--shadow-sheet:0 -12px 40px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.bc-classroom{background:var(--clr-bg);color:var(--clr-text);min-height:100%}.bc-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.bc-btn-primary{background:var(--clr-accent);color:#fff;border-radius:var(--radius-md);justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 20px;font-weight:700;transition:background .15s,transform 50ms;display:inline-flex}.bc-btn-primary:hover{background:var(--clr-accent-strong)}.bc-btn-primary:active{transform:scale(.98)}.bc-btn-primary:disabled{opacity:.5;cursor:not-allowed}.bc-btn-secondary{background:var(--clr-surface);color:var(--clr-text);border:1px solid var(--clr-border-strong);border-radius:var(--radius-md);justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-weight:600;display:inline-flex}.bc-chip{color:var(--clr-text-2);background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:999px;min-height:40px;padding:8px 16px;font-size:13px;font-weight:600}.bc-chip-active{background:var(--clr-accent-soft);color:var(--clr-accent-strong);border-color:#0000}.bc-input{border-radius:var(--radius-md);border:1px solid var(--clr-border-strong);background:var(--clr-surface);width:100%;min-height:48px;color:var(--clr-text);padding:0 14px;font-size:15px}.bc-input:focus{outline:2px solid var(--clr-accent);outline-offset:1px}.bc-textarea{resize:vertical;min-height:96px;padding:12px 14px}.bc-sheet-overlay{z-index:60;background:#10182873;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (min-width:768px){.bc-sheet-overlay{align-items:center;padding:24px}}.bc-sheet{background:var(--clr-surface);width:100%;max-width:560px;max-height:92dvh;box-shadow:var(--shadow-sheet);padding-bottom:env(safe-area-inset-bottom);border-radius:24px 24px 0 0;overflow-y:auto}@media (min-width:768px){.bc-sheet{border-radius:24px;max-height:88dvh}}.bc-row{border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;align-items:center;gap:12px;min-height:56px;padding:8px 12px;transition:background .12s,border-color .12s;display:flex}.bc-row:hover{background:var(--clr-surface-2)}.bc-row-selected{background:var(--clr-accent-soft);border-color:var(--clr-accent)}.bc-check{border:2px solid var(--clr-border-strong);background:var(--clr-surface);color:#fff;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.bc-check-on{background:var(--clr-accent);border-color:var(--clr-accent)}.bc-empty{text-align:center;padding:48px 20px}.bc-success-banner{background:var(--clr-accent-soft);border:1px solid var(--clr-accent);color:var(--clr-accent-strong);border-radius:var(--radius-md);padding:16px}.bc-error-banner{background:var(--clr-danger-soft);border:1px solid var(--clr-danger);color:var(--clr-danger);border-radius:var(--radius-md);padding:16px}.bc-classroom :focus-visible{outline:2px solid var(--clr-accent);outline-offset:2px}.bc-classroom.bc-student{--clr-accent:#7c3aed;--clr-accent-strong:#6d28d9;--clr-accent-soft:#f5f3ff;--clr-violet:#7c3aed;--clr-violet-soft:#f5f3ff}.dark .bc-classroom.bc-student{--clr-accent:#a78bfa;--clr-accent-strong:#8b5cf6;--clr-accent-soft:#1e1835;--clr-violet:#a78bfa;--clr-violet-soft:#1e1835}.bc-status{border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:12px;font-weight:700;display:inline-flex}.bc-status-belum{background:var(--clr-surface-2);color:var(--clr-text-2);border:1px solid var(--clr-border)}.bc-status-sedang{background:var(--clr-warning) / 15;color:var(--clr-warning)}.bc-status-kumpul{background:var(--clr-violet-soft);color:var(--clr-violet)}.bc-status-nilai{background:var(--clr-accent-soft);color:var(--clr-accent-strong)}.bc-class-tint-0{--class-accent:#7c3aed;--class-soft:#f5f3ff;--class-border:#ddd6fe}.bc-class-tint-1{--class-accent:#2563eb;--class-soft:#eff6ff;--class-border:#bfdbfe}.bc-class-tint-2{--class-accent:#059669;--class-soft:#ecfdf5;--class-border:#a7f3d0}.bc-class-tint-3{--class-accent:#ea580c;--class-soft:#fff7ed;--class-border:#fed7aa}.bc-class-tint-4{--class-accent:#e11d48;--class-soft:#fff1f2;--class-border:#fecdd3}.bc-class-tint-5{--class-accent:#4f46e5;--class-soft:#eef2ff;--class-border:#c7d2fe}.bc-class-tint-6{--class-accent:#0d9488;--class-soft:#f0fdfa;--class-border:#99f6e4}.bc-class-tint-7{--class-accent:#d97706;--class-soft:#fffbeb;--class-border:#fde68a}.dark .bc-class-tint-0{--class-accent:#a78bfa;--class-soft:#1e1835;--class-border:#3b2f63}.dark .bc-class-tint-1{--class-accent:#93c5fd;--class-soft:#15233f;--class-border:#2b4a75}.dark .bc-class-tint-2{--class-accent:#6ee7b7;--class-soft:#0d2b22;--class-border:#14532d}.dark .bc-class-tint-3{--class-accent:#fdba74;--class-soft:#2b1a0e;--class-border:#7c2d12}.dark .bc-class-tint-4{--class-accent:#fda4af;--class-soft:#2b1217;--class-border:#7f1d2d}.dark .bc-class-tint-5{--class-accent:#a5b4fc;--class-soft:#171d3f;--class-border:#3730a3}.dark .bc-class-tint-6{--class-accent:#5eead4;--class-soft:#0c2926;--class-border:#115e59}.dark .bc-class-tint-7{--class-accent:#fcd34d;--class-soft:#2b220d;--class-border:#713f12}.bc-class-header{background:linear-gradient(135deg, var(--class-soft), var(--clr-surface));border-bottom:1px solid var(--class-border)}.bc-class-code{letter-spacing:.14em;color:var(--class-accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:22px;font-weight:700}.dark .bc-class-code{color:var(--class-accent)}.bc-code-sheet{width:100%;max-width:440px}