@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&display=swap";:root{--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:4px;--radius:6px;--radius-lg:10px;--radius-pill:999px;--frame-laptop:1440px;--viewport-min:1024px;--frame-mobile:390px;--grid-columns:12;--margin-laptop:80px;--margin-laptop-min:32px;--gutter-laptop:24px;--gutter-laptop-min:16px;--margin-mobile:16px;--touch-target:44px;--control-height:40px;--nav-height:64px;--content-max:1280px;--opacity-disabled:.5;--font-sans:Poppins, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}:root,[data-theme=student]{--primary:#8e44ad;--primary-hover:#7a3995;--primary-contrast:#ffffff;--primary-bg-subtle:#f3e5f5;--primary-text-emphasis:#6c2e87;--primary-border-subtle:#dcc0e3;--accent:#e83e8c;--accent-text:#b0256a;--accent-bg-subtle:#fce8f1;--success:#2e7d32;--success-contrast:#ffffff;--success-bg-subtle:#e7f3e8;--success-text-emphasis:#1e5b22;--success-border-subtle:#b7dbb9;--warning:#b26a00;--warning-contrast:#ffffff;--warning-bg-subtle:#fdf3e3;--warning-text-emphasis:#8a5300;--warning-border-subtle:#efcf9c;--danger:#b3261e;--danger-contrast:#ffffff;--danger-bg-subtle:#fbe9e7;--danger-text-emphasis:#8c1d17;--danger-border-subtle:#efb8b3;--info:#2d6aa3;--info-contrast:#ffffff;--info-bg-subtle:#e5eff8;--info-text-emphasis:#1d4f7e;--info-border-subtle:#b3cde6;--neutral-bg-subtle:#f1eef3;--neutral-text-emphasis:#4a4452;--neutral-border-subtle:#d9d2de;--body-color:#2a2230;--emphasis-color:#17121c;--secondary-color:#5e5566;--tertiary-color:#857c8d;--body-bg:#ffffff;--secondary-bg:#f7eff8;--tertiary-bg:#fff9fc;--border-color:#e8ddec;--control-border:#94879e;--link-color:var(--primary);--focus-ring-color:var(--primary);--scrim:#17121c80;--status-not-started-bg:var(--neutral-bg-subtle);--status-not-started-fg:var(--neutral-text-emphasis);--status-in-progress-bg:var(--info-bg-subtle);--status-in-progress-fg:var(--info-text-emphasis);--status-completed-bg:var(--success-bg-subtle);--status-completed-fg:var(--success-text-emphasis);--status-revisit-bg:var(--danger-bg-subtle);--status-revisit-fg:var(--danger-text-emphasis);--confidence-low-bg:var(--warning-bg-subtle);--confidence-low-fg:var(--warning-text-emphasis);--confidence-developing-bg:var(--info-bg-subtle);--confidence-developing-fg:var(--info-text-emphasis);--confidence-secure-bg:var(--success-bg-subtle);--confidence-secure-fg:var(--success-text-emphasis);--urgency-monitor-bg:var(--info-bg-subtle);--urgency-monitor-fg:var(--info-text-emphasis);--urgency-action-bg:var(--warning-bg-subtle);--urgency-action-fg:var(--warning-text-emphasis);--urgency-urgent-bg:var(--danger-bg-subtle);--urgency-urgent-fg:var(--danger-text-emphasis);--chart-1:#7b4fa6;--chart-2:#1f8a84;--chart-3:#b7791f;--chart-4:#3b6fb6;--chart-5:#c2477e;--chart-6:#5b6675;--shadow-sm:0 1px 2px rgba(42, 34, 48, .06);--shadow:0 6px 16px rgba(42, 34, 48, .1);--shadow-lg:0 16px 40px rgba(42, 34, 48, .16)}[data-theme=parent]{--primary:#2f5597;--primary-hover:#264a85;--primary-contrast:#ffffff;--primary-bg-subtle:#d9eaf7;--primary-text-emphasis:#1f3f73;--primary-border-subtle:#a9c6e6;--accent:#4f81bd;--accent-text:#2d6aa3;--accent-bg-subtle:#e6eff8;--success:#2e7d32;--success-contrast:#ffffff;--success-bg-subtle:#e7f3e8;--success-text-emphasis:#1e5b22;--success-border-subtle:#b7dbb9;--warning:#b26a00;--warning-contrast:#ffffff;--warning-bg-subtle:#fdf3e3;--warning-text-emphasis:#8a5300;--warning-border-subtle:#efcf9c;--danger:#b3261e;--danger-contrast:#ffffff;--danger-bg-subtle:#fbe9e7;--danger-text-emphasis:#8c1d17;--danger-border-subtle:#efb8b3;--info:#2d6aa3;--info-contrast:#ffffff;--info-bg-subtle:#e5eff8;--info-text-emphasis:#1d4f7e;--info-border-subtle:#b3cde6;--neutral-bg-subtle:#eef2f6;--neutral-text-emphasis:#3e4a5a;--neutral-border-subtle:#cfd8e2;--body-color:#1f2a3a;--emphasis-color:#0f1a2a;--secondary-color:#4f5b6b;--tertiary-color:#78849a;--body-bg:#ffffff;--secondary-bg:#eef4fa;--tertiary-bg:#f7fafe;--border-color:#d8e2ec;--control-border:#8191a5;--link-color:var(--primary);--focus-ring-color:var(--primary);--scrim:#0f1a2a80;--status-not-started-bg:var(--neutral-bg-subtle);--status-not-started-fg:var(--neutral-text-emphasis);--status-in-progress-bg:var(--info-bg-subtle);--status-in-progress-fg:var(--info-text-emphasis);--status-completed-bg:var(--success-bg-subtle);--status-completed-fg:var(--success-text-emphasis);--status-revisit-bg:var(--danger-bg-subtle);--status-revisit-fg:var(--danger-text-emphasis);--confidence-low-bg:var(--warning-bg-subtle);--confidence-low-fg:var(--warning-text-emphasis);--confidence-developing-bg:var(--info-bg-subtle);--confidence-developing-fg:var(--info-text-emphasis);--confidence-secure-bg:var(--success-bg-subtle);--confidence-secure-fg:var(--success-text-emphasis);--urgency-monitor-bg:var(--info-bg-subtle);--urgency-monitor-fg:var(--info-text-emphasis);--urgency-action-bg:var(--warning-bg-subtle);--urgency-action-fg:var(--warning-text-emphasis);--urgency-urgent-bg:var(--danger-bg-subtle);--urgency-urgent-fg:var(--danger-text-emphasis);--chart-1:#2f5597;--chart-2:#1f8a84;--chart-3:#b7791f;--chart-4:#8e44ad;--chart-5:#c2477e;--chart-6:#5b6675;--shadow-sm:0 1px 2px rgba(31, 42, 58, .06);--shadow:0 6px 16px rgba(31, 42, 58, .1);--shadow-lg:0 16px 40px rgba(31, 42, 58, .16)}*,*:before,*:after{box-sizing:border-box}body{margin:0;padding:16px;font-family:var(--font-sans);font-size:16px;line-height:24px;color:var(--body-color);background:var(--body-bg);-webkit-font-smoothing:antialiased}.bb-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.bb-icon{display:inline-block;flex-shrink:0;vertical-align:-.125em}.bb-eyebrow{font-size:12px;line-height:16px;font-weight:500;letter-spacing:.02em;color:var(--secondary-color)}.bb-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.bb-stack{display:flex;flex-direction:column;gap:12px}.bb-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--control-height);padding:8px 16px;font:500 14px/20px var(--font-sans);border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--body-color);cursor:pointer;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s}.bb-btn:focus-visible,.bb-btn.is-focus{outline:2px solid var(--focus-ring-color);outline-offset:2px}.bb-btn-sm{min-height:32px;padding:6px 12px;font-size:13px;line-height:18px}.bb-btn-lg{min-height:48px;padding:12px 24px;font-size:16px;line-height:24px}.bb-btn-block{display:flex;width:100%}.bb-btn-primary{background:var(--primary);border-color:var(--primary);color:var(--primary-contrast)}.bb-btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.bb-btn-secondary{background:var(--body-bg);border-color:var(--control-border);color:var(--body-color)}.bb-btn-secondary:hover{background:var(--secondary-bg)}.bb-btn-ghost{color:var(--link-color)}.bb-btn-ghost:hover{background:var(--primary-bg-subtle);color:var(--primary-text-emphasis)}.bb-btn-danger{background:var(--danger);border-color:var(--danger);color:var(--danger-contrast)}.bb-btn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}@media(pointer:coarse){.bb-btn{min-height:var(--touch-target)}}.bb-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font:500 12px/16px var(--font-sans);letter-spacing:.02em;border-radius:var(--radius-sm);border:1px solid}.bb-tone-neutral{background:var(--neutral-bg-subtle);color:var(--neutral-text-emphasis);border-color:var(--neutral-border-subtle)}.bb-tone-primary{background:var(--primary-bg-subtle);color:var(--primary-text-emphasis);border-color:var(--primary-border-subtle)}.bb-tone-accent{background:var(--accent-bg-subtle);color:var(--accent-text);border-color:var(--accent-bg-subtle)}.bb-tone-success{background:var(--success-bg-subtle);color:var(--success-text-emphasis);border-color:var(--success-border-subtle)}.bb-tone-warning{background:var(--warning-bg-subtle);color:var(--warning-text-emphasis);border-color:var(--warning-border-subtle)}.bb-tone-danger{background:var(--danger-bg-subtle);color:var(--danger-text-emphasis);border-color:var(--danger-border-subtle)}.bb-tone-info{background:var(--info-bg-subtle);color:var(--info-text-emphasis);border-color:var(--info-border-subtle)}.bb-chip{display:inline-flex;align-items:center;gap:6px;padding:2px 10px 2px 8px;font:500 13px/20px var(--font-sans);border-radius:var(--radius-pill);white-space:nowrap}.bb-chip-glyph{flex-shrink:0}.bb-chip-status-not-started{background:var(--status-not-started-bg);color:var(--status-not-started-fg)}.bb-chip-status-in-progress{background:var(--status-in-progress-bg);color:var(--status-in-progress-fg)}.bb-chip-status-completed{background:var(--status-completed-bg);color:var(--status-completed-fg)}.bb-chip-status-revisit{background:var(--status-revisit-bg);color:var(--status-revisit-fg)}.bb-chip-confidence-low{background:var(--confidence-low-bg);color:var(--confidence-low-fg)}.bb-chip-confidence-developing{background:var(--confidence-developing-bg);color:var(--confidence-developing-fg)}.bb-chip-confidence-secure{background:var(--confidence-secure-bg);color:var(--confidence-secure-fg)}.bb-chip-urgency-monitor{background:var(--urgency-monitor-bg);color:var(--urgency-monitor-fg)}.bb-chip-urgency-action{background:var(--urgency-action-bg);color:var(--urgency-action-fg)}.bb-chip-urgency-urgent{background:var(--urgency-urgent-bg);color:var(--urgency-urgent-fg)}.bb-alert{display:flex;gap:12px;align-items:flex-start;padding:12px 16px;border:1px solid;border-radius:var(--radius);font-size:14px;line-height:20px}.bb-alert-icon{margin-top:1px}.bb-alert-body{flex:1}.bb-alert-title{font-weight:600;margin-bottom:2px}.bb-alert-info{background:var(--info-bg-subtle);border-color:var(--info-border-subtle);color:var(--info-text-emphasis)}.bb-alert-success{background:var(--success-bg-subtle);border-color:var(--success-border-subtle);color:var(--success-text-emphasis)}.bb-alert-warning{background:var(--warning-bg-subtle);border-color:var(--warning-border-subtle);color:var(--warning-text-emphasis)}.bb-alert-danger{background:var(--danger-bg-subtle);border-color:var(--danger-border-subtle);color:var(--danger-text-emphasis)}.bb-progress-head{display:flex;justify-content:space-between;font-size:14px;line-height:20px;margin-bottom:6px;color:var(--body-color)}.bb-progress-val{font-weight:500;font-variant-numeric:tabular-nums}.bb-progress{height:8px;background:var(--secondary-bg);border-radius:var(--radius-pill);overflow:hidden}.bb-progress-bar{height:100%;border-radius:var(--radius-pill)}.bb-bar-primary{background:var(--primary)}.bb-bar-accent{background:var(--accent)}.bb-bar-success{background:var(--success)}.bb-card{background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.bb-card-tint{background:var(--primary-bg-subtle);border-color:var(--primary-border-subtle)}.bb-card-tint .bb-eyebrow{color:var(--primary-text-emphasis)}.bb-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 24px 0}.bb-card-title{margin:2px 0 0;font-size:20px;line-height:28px;font-weight:500;color:var(--emphasis-color)}.bb-card-body{padding:16px 24px 24px}.bb-card-foot{padding:12px 24px;border-top:1px solid var(--border-color);font-size:14px;color:var(--secondary-color)}.bb-stat{background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:16px 20px;min-width:160px}.bb-stat-label{font-size:12px;line-height:16px;font-weight:500;letter-spacing:.02em;color:var(--secondary-color)}.bb-stat-value{margin-top:4px;font-size:32px;line-height:40px;font-weight:500;color:var(--emphasis-color);font-variant-numeric:tabular-nums}.bb-stat-unit{font-size:16px;font-weight:400;color:var(--secondary-color);margin-left:4px}.bb-stat-detail{display:flex;align-items:center;gap:4px;margin-top:4px;font-size:13px;line-height:18px;color:var(--secondary-color)}.bb-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.bb-label{font-size:14px;line-height:20px;font-weight:500;color:var(--body-color)}.bb-req{color:var(--danger)}.bb-input{width:100%;min-height:var(--control-height);padding:8px 12px;font:400 16px/22px var(--font-sans);color:var(--body-color);background:var(--body-bg);border:1px solid var(--control-border);border-radius:var(--radius);transition:border-color .15s}textarea.bb-input{resize:vertical}.bb-input::placeholder{color:var(--tertiary-color)}.bb-input:focus,.bb-input.is-focus{outline:2px solid var(--focus-ring-color);outline-offset:1px;border-color:var(--focus-ring-color)}.bb-input.is-invalid{border-color:var(--danger);border-width:2px;padding:7px 11px}.bb-input:disabled{background:var(--neutral-bg-subtle);color:var(--tertiary-color)}.bb-msg{display:flex;gap:6px;align-items:center;font-size:13px;line-height:18px;color:var(--secondary-color)}.bb-msg-error{color:var(--danger)}.bb-ready{background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px 24px;max-width:520px}.bb-ready-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.bb-ready-count{font-size:13px;font-weight:500;color:var(--secondary-color);font-variant-numeric:tabular-nums}.bb-ready-list{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:4px}.bb-check{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:var(--radius);cursor:pointer;font-size:15px;line-height:22px}.bb-check:hover{background:var(--secondary-bg)}.bb-check input{position:absolute;opacity:0;width:1px;height:1px}.bb-check-box{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;border:1.5px solid var(--control-border);border-radius:var(--radius-sm);background:var(--body-bg);color:var(--primary-contrast)}.bb-check.is-on .bb-check-box{background:var(--primary);border-color:var(--primary)}.bb-check input:focus-visible+.bb-check-box{outline:2px solid var(--focus-ring-color);outline-offset:2px}.bb-ready-why{margin:8px 0 0;font-size:13px;line-height:18px;color:var(--secondary-color);text-align:center}.bb-timer{background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:24px}.bb-timer-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.bb-timer-state{white-space:nowrap}.bb-timer-state{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--primary-text-emphasis);background:var(--primary-bg-subtle);padding:2px 10px;border-radius:var(--radius-pill)}.bb-timer.is-paused .bb-timer-state{background:var(--neutral-bg-subtle);color:var(--neutral-text-emphasis)}.bb-timer.is-break .bb-timer-state{background:var(--info-bg-subtle);color:var(--info-text-emphasis)}.bb-timer.is-external .bb-timer-state{background:var(--accent-bg-subtle);color:var(--accent-text)}.bb-timer-ref{margin-top:12px;font-size:18px;line-height:28px;font-weight:500;color:var(--emphasis-color)}.bb-timer-figure{margin-top:12px;font-size:56px;line-height:64px;font-weight:300;color:var(--emphasis-color);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.bb-timer.is-paused .bb-timer-figure{color:var(--secondary-color)}.bb-timer-sub{font-size:14px;color:var(--secondary-color)}.bb-timer-bar{margin-top:16px}.bb-timer-meta{display:flex;align-items:center;gap:6px;margin-top:12px;font-size:13px;color:var(--success-text-emphasis)}.bb-timer-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.bb-flash{background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:24px 28px}.bb-flash-top{display:flex;justify-content:space-between;align-items:center}.bb-flash-q{margin:20px 0;font-size:20px;line-height:30px;font-weight:500;color:var(--emphasis-color)}.bb-flash-a{margin:0 0 20px;padding:16px;background:var(--secondary-bg);border-radius:var(--radius);font-size:18px;line-height:28px;color:var(--body-color)}.bb-flash-a .bb-eyebrow{margin-bottom:4px}.bb-flash-actions{display:flex;gap:8px;justify-content:flex-end}.bb-table-wrap{overflow-x:auto;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--body-bg)}.bb-table{width:100%;border-collapse:collapse;font-size:14px;line-height:20px}.bb-table th{position:sticky;top:0;text-align:left;font-weight:500;font-size:12px;letter-spacing:.02em;color:var(--secondary-color);background:var(--secondary-bg);padding:10px 16px;border-bottom:1px solid var(--border-color)}.bb-table td{padding:12px 16px;border-bottom:1px solid var(--border-color);vertical-align:middle}.bb-table tbody tr:last-child td{border-bottom:0}.bb-table tbody tr:hover td{background:var(--tertiary-bg)}.bb-nav{display:flex;align-items:center;gap:32px;min-height:var(--nav-height);padding:0 24px;background:var(--body-bg);border-bottom:1px solid var(--border-color)}.bb-wordmark{display:flex;align-items:baseline;gap:8px;font-size:18px;line-height:24px;font-weight:600;color:var(--primary);letter-spacing:-.01em}.bb-nav-role{font-size:12px;font-weight:500;color:var(--secondary-color);letter-spacing:.02em}.bb-nav-list{display:flex;gap:4px;list-style:none;margin:0;padding:0}.bb-nav-link{display:block;padding:20px 12px 18px;font-size:14px;font-weight:500;color:var(--secondary-color);text-decoration:none;border-bottom:2px solid transparent}.bb-nav-link:hover{color:var(--body-color)}.bb-nav-link.is-active{color:var(--primary-text-emphasis);border-bottom-color:var(--accent)}.bb-nav-end{margin-left:auto;display:flex;align-items:center;gap:12px}.bb-nav-user{font-size:14px;color:var(--secondary-color)}.bb-res{display:block;padding:16px 20px;background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);text-decoration:none;color:var(--body-color);max-width:520px;transition:border-color .15s}.bb-res:hover{border-color:var(--control-border)}.bb-res:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.bb-res.is-recommended{border-color:var(--primary-border-subtle)}.bb-res-top{display:flex;align-items:center;gap:8px}.bb-res-use{font-size:12px;font-weight:500;color:var(--secondary-color)}.bb-res-title{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:16px;line-height:24px;font-weight:500;color:var(--link-color)}.bb-res-detail{font-size:14px;line-height:20px;color:var(--body-color);margin-top:2px}.bb-res-meta{font-size:12px;line-height:16px;color:var(--secondary-color);margin-top:8px}.bb-res-why{margin-top:12px;padding:8px 12px;background:var(--primary-bg-subtle);color:var(--primary-text-emphasis);border-radius:var(--radius);font-size:13px;line-height:18px}.bb-int{padding:16px 20px;background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);max-width:560px}.bb-int-top{display:flex;align-items:center;gap:8px}.bb-int-type{font-size:12px;font-weight:500;color:var(--secondary-color)}.bb-int-title{margin:10px 0 4px;font-size:16px;line-height:24px;font-weight:600;color:var(--emphasis-color)}.bb-int-evidence{margin:0;font-size:14px;line-height:20px;color:var(--secondary-color)}.bb-int-actions{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:12px 0 0;font-size:14px;line-height:20px}.bb-int-actions dt{font-weight:500;color:var(--secondary-color)}.bb-int-actions dd{margin:0}.bb-int-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.bb-icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:36px;min-height:36px;padding:6px;border:0;border-radius:var(--radius);background:transparent;color:var(--secondary-color);font:500 14px/20px var(--font-sans);cursor:pointer}.bb-icon-btn:hover{background:var(--secondary-bg);color:var(--body-color)}.bb-icon-btn:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.bb-scrim{display:flex;align-items:center;justify-content:center;padding:32px;background:var(--scrim);min-height:100%}.bb-modal{width:100%;max-width:560px;background:var(--body-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.bb-modal-sm{max-width:420px}.bb-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px 0}.bb-modal-title{margin:0;font-size:20px;line-height:28px;font-weight:600;color:var(--emphasis-color)}.bb-modal-body{padding:12px 24px 20px;font-size:15px;line-height:22px}.bb-modal-text{margin:0 0 4px;color:var(--body-color)}.bb-modal-foot{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid var(--border-color)}.bb-countdown{display:flex;align-items:baseline;justify-content:space-between;margin-top:16px;padding:12px 16px;background:var(--secondary-bg);border-radius:var(--radius)}.bb-countdown-fig{font-size:28px;line-height:36px;font-weight:300;color:var(--emphasis-color);font-variant-numeric:tabular-nums}.bb-tab-list{display:flex;gap:4px;border-bottom:1px solid var(--border-color);overflow-x:auto}.bb-tab{display:inline-flex;align-items:center;gap:8px;padding:10px 14px 9px;margin-bottom:-1px;font:500 14px/20px var(--font-sans);color:var(--secondary-color);background:none;border:0;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap}.bb-tab:hover{color:var(--body-color)}.bb-tab.is-active{color:var(--primary-text-emphasis);border-bottom-color:var(--accent)}.bb-tab:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.bb-tab:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:-2px;border-radius:var(--radius-sm)}.bb-tab-count{min-width:20px;padding:0 6px;font-size:12px;line-height:18px;border-radius:var(--radius-pill);background:var(--neutral-bg-subtle);color:var(--neutral-text-emphasis);text-align:center}.bb-tab.is-active .bb-tab-count{background:var(--primary-bg-subtle);color:var(--primary-text-emphasis)}.bb-tab-panel{padding:16px 0 0;font-size:14px;line-height:20px}.bb-seg-wrap{display:flex;flex-direction:column;gap:6px}.bb-seg{display:inline-flex;padding:3px;gap:2px;background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:var(--radius);width:max-content}.bb-seg-opt{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:5px 14px;font:500 14px/20px var(--font-sans);color:var(--secondary-color);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer}.bb-seg-opt:hover{color:var(--body-color)}.bb-seg-opt.is-on{background:var(--body-bg);color:var(--primary-text-emphasis);border-color:var(--control-border);box-shadow:var(--shadow-sm)}.bb-seg-opt:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:1px}.bb-filters{display:flex;flex-direction:column;gap:10px}.bb-filters-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.bb-search{position:relative;display:flex;align-items:center;flex:1 1 220px;max-width:320px;color:var(--secondary-color)}.bb-search .bb-icon{position:absolute;left:12px}.bb-search-input{width:100%;min-height:var(--control-height);padding:8px 12px 8px 36px;font:400 14px/20px var(--font-sans);color:var(--body-color);background:var(--body-bg);border:1px solid var(--control-border);border-radius:var(--radius)}.bb-search-input:focus{outline:2px solid var(--focus-ring-color);outline-offset:1px}.bb-filter-select{width:auto;font-size:14px;padding-right:28px}.bb-filter-select.is-set{border-color:var(--primary);color:var(--primary-text-emphasis);background:var(--primary-bg-subtle)}.bb-filters-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px}.bb-filters-count{color:var(--secondary-color);margin-right:4px}.bb-filter-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 4px 2px 10px;font-weight:500;color:var(--primary-text-emphasis);background:var(--primary-bg-subtle);border:1px solid var(--primary-border-subtle);border-radius:var(--radius-pill)}.bb-filter-chip button{display:inline-flex;padding:3px;border:0;border-radius:var(--radius-pill);background:transparent;color:inherit;cursor:pointer}.bb-filter-chip button:hover{background:var(--body-bg)}.bb-toggle-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border-color)}.bb-toggle-text{flex:1;min-width:0}.bb-toggle-label{display:block;font-size:15px;line-height:22px;font-weight:500;color:var(--body-color);cursor:pointer}.bb-toggle-desc{font-size:13px;line-height:18px;color:var(--secondary-color)}.bb-toggle-state{font-size:13px;font-weight:500;color:var(--secondary-color);min-width:24px;text-align:right}.bb-switch{position:relative;flex-shrink:0;width:44px;height:24px;padding:0;border:1.5px solid var(--control-border);border-radius:var(--radius-pill);background:var(--secondary-bg);cursor:pointer;transition:background-color .15s,border-color .15s}.bb-switch-knob{position:absolute;top:2px;left:2px;width:17px;height:17px;border-radius:50%;background:var(--control-border);transition:transform .15s,background-color .15s}.bb-switch.is-on{background:var(--primary);border-color:var(--primary)}.bb-switch.is-on .bb-switch-knob{transform:translate(20px);background:var(--primary-contrast)}.bb-switch:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.bb-toggle-row.is-disabled{opacity:var(--opacity-disabled)}@media(pointer:coarse){.bb-toggle-row{min-height:var(--touch-target)}}.bb-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 24px;background:var(--body-bg);border:1px dashed var(--border-color);border-radius:var(--radius-lg);max-width:440px}.bb-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--neutral-bg-subtle);color:var(--neutral-text-emphasis)}.bb-empty-error{border-style:solid}.bb-empty-error .bb-empty-icon{background:var(--danger-bg-subtle);color:var(--danger-text-emphasis)}.bb-empty-unsupported .bb-empty-icon{background:var(--primary-bg-subtle);color:var(--primary-text-emphasis)}.bb-empty-title{margin:16px 0 4px;font-size:18px;line-height:26px;font-weight:600;color:var(--emphasis-color)}.bb-empty-body{margin:0;font-size:14px;line-height:20px;color:var(--secondary-color);max-width:340px}.bb-empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px}.bb-mhead-wrap{position:relative;width:100%;max-width:var(--frame-mobile);background:var(--tertiary-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.bb-mhead{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:8px;min-height:56px;padding:0 8px 0 16px;background:var(--body-bg);border-bottom:1px solid var(--border-color)}.bb-mhead .bb-wordmark{flex:1}.bb-mhead .bb-icon-btn{min-width:var(--touch-target);min-height:var(--touch-target)}.bb-mhead-back{margin-left:-8px;color:var(--link-color);padding-right:10px}.bb-mhead-title{flex:1;font-size:16px;line-height:24px;font-weight:600;color:var(--emphasis-color);text-align:center;margin-right:-36px}.bb-msheet{display:flex;flex-direction:column;padding:8px var(--margin-mobile) 16px;background:var(--body-bg);border-bottom:1px solid var(--border-color)}.bb-msheet-link{display:flex;align-items:center;justify-content:space-between;min-height:var(--touch-target);padding:10px 12px;font-size:16px;font-weight:500;color:var(--body-color);text-decoration:none;border-radius:var(--radius)}.bb-msheet-link .bb-icon{color:var(--tertiary-color)}.bb-msheet-link.is-active{background:var(--primary-bg-subtle);color:var(--primary-text-emphasis)}.bb-msheet-foot{display:flex;flex-direction:column;gap:12px;margin-top:12px;padding-top:16px;border-top:1px solid var(--border-color)}.bb-msheet-note{font-size:13px;line-height:18px;color:var(--secondary-color)}.bb-msheet-note-link{text-decoration:underline}.bb-toast{display:flex;align-items:center;gap:10px;width:max-content;max-width:420px;padding:10px 8px 10px 14px;font-size:14px;line-height:20px;background:var(--emphasis-color);color:var(--body-bg);border-radius:var(--radius);box-shadow:var(--shadow)}.bb-toast-msg{flex:1}.bb-toast-success .bb-toast-icon{color:var(--success-bg-subtle)}.bb-toast-danger{background:var(--danger-text-emphasis)}.bb-toast-info .bb-toast-icon{color:var(--info-bg-subtle)}.bb-toast-action{padding:4px 8px;font:600 14px/20px var(--font-sans);color:var(--body-bg);background:transparent;border:1px solid currentColor;border-radius:var(--radius-sm);cursor:pointer}.bb-toast .bb-toast-close{min-width:28px;min-height:28px;color:var(--body-bg)}.bb-toast .bb-toast-close:hover{background:transparent;color:var(--body-bg);opacity:.8}.bb-th-sort{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;font:inherit;color:inherit;letter-spacing:inherit;cursor:pointer}.bb-th-sort:hover,.bb-th-sort.is-sorted{color:var(--body-color)}.bb-th-sort:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px;border-radius:2px}.bb-sort-ind{font-size:12px;color:var(--tertiary-color)}.bb-th-sort.is-sorted .bb-sort-ind{color:var(--primary)}.bb-table.is-clickable tbody tr{cursor:pointer}.bb-table.is-clickable tbody tr:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:-2px}.bb-table-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font-size:13px;color:var(--secondary-color)}.bb-pager{display:flex;gap:4px}.bb-page{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 8px;font:500 13px/18px var(--font-sans);color:var(--body-color);background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius);cursor:pointer}.bb-page:hover{background:var(--secondary-bg)}.bb-page.is-current{background:var(--primary);border-color:var(--primary);color:var(--primary-contrast)}.bb-page:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.bb-page:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.bb-dayctx{display:flex;flex-wrap:wrap;align-items:center;gap:16px 32px;padding:16px 24px;background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.bb-dayctx-date{font-size:20px;line-height:28px;font-weight:600;color:var(--emphasis-color)}.bb-dayctx-items{display:flex;flex-wrap:wrap;gap:24px;flex:1}.bb-dayctx-item{display:flex;flex-direction:column;font-size:14px;line-height:20px;font-weight:500;color:var(--body-color)}.bb-dayplan{background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px 24px}.bb-dayplan-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}.bb-dayplan-total{font-size:13px;color:var(--secondary-color);font-variant-numeric:tabular-nums}.bb-dayplan-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.bb-block{display:flex;align-items:flex-start;gap:16px;padding:12px 16px;background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius)}.bb-block.is-current{background:var(--primary-bg-subtle);border-color:var(--primary-border-subtle)}.bb-block-time{display:flex;flex-direction:column;min-width:56px;font-size:14px;line-height:20px;font-weight:600;color:var(--emphasis-color);font-variant-numeric:tabular-nums}.bb-block-dur{font-size:12px;font-weight:400;color:var(--secondary-color)}.bb-block-main{flex:1;min-width:0}.bb-block-head{display:flex;align-items:center;gap:8px}.bb-block-subject{font-size:15px;line-height:22px;font-weight:600;color:var(--emphasis-color)}.bb-block-topic{font-size:14px;line-height:20px;color:var(--body-color)}.bb-block-purpose{color:var(--secondary-color)}.bb-block-reason{margin-top:4px;font-size:13px;line-height:18px;color:var(--secondary-color)}.bb-block.is-current .bb-block-reason{color:var(--primary-text-emphasis)}.bb-block-rest{background:transparent;border-style:dashed;padding:8px 16px}.bb-block-rest .bb-block-time{font-weight:500;color:var(--secondary-color)}.bb-block-rest-label{display:inline-flex;align-items:center;gap:6px;font-size:13px;line-height:20px;color:var(--secondary-color)}.bb-cap{max-width:560px}.bb-cap-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.bb-cap-fig{font-size:14px;font-weight:500;font-variant-numeric:tabular-nums}.bb-cap-track{position:relative;display:flex;gap:2px;height:12px;padding:0;background:var(--secondary-bg);border-radius:var(--radius-sm);overflow:visible}.bb-cap-seg{height:100%;background:var(--primary);border-radius:2px}.bb-cap.is-over .bb-cap-seg{background:var(--warning)}.bb-cap-limit{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--emphasis-color)}.bb-cap-legend{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:8px;font-size:12px;color:var(--secondary-color)}.bb-cap-msg,.bb-cap-ok{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:13px;line-height:18px}.bb-cap-msg{color:var(--warning-text-emphasis)}.bb-cap-ok{color:var(--success-text-emphasis)}.bb-exam{display:inline-flex;align-items:center;gap:12px;padding:12px 16px;background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.bb-exam-days{font-size:32px;line-height:36px;font-weight:500;color:var(--emphasis-color);font-variant-numeric:tabular-nums}.bb-exam-text{display:flex;flex-direction:column;font-size:13px;line-height:18px;color:var(--secondary-color)}.bb-exam-subject{font-size:15px;line-height:20px;font-weight:600;color:var(--emphasis-color)}.bb-exam.is-compact{padding:6px 12px;gap:8px;background:var(--primary-bg-subtle);border-color:var(--primary-border-subtle)}.bb-exam.is-compact .bb-exam-days{font-size:20px;line-height:24px;color:var(--primary-text-emphasis)}.bb-exam.is-compact .bb-exam-text{flex-direction:row;gap:4px;align-items:baseline;color:var(--primary-text-emphasis)}.bb-exam.is-compact .bb-exam-subject{font-size:14px;color:var(--primary-text-emphasis)}.bb-subject{display:flex;flex-direction:column;gap:12px;padding:20px;background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);text-decoration:none;color:var(--body-color);transition:border-color .15s}.bb-subject:hover{border-color:var(--control-border)}.bb-subject:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.bb-subject-head{display:flex;justify-content:space-between;align-items:center;color:var(--secondary-color)}.bb-subject-name{font-size:18px;line-height:26px;font-weight:600;color:var(--emphasis-color)}.bb-subject-foot{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--secondary-color)}.bb-subject-foot strong{color:var(--emphasis-color);font-weight:600}.bb-subject-exam{margin-left:auto}.bb-subject-note{font-size:12px;line-height:16px;color:var(--secondary-color);padding-top:8px;border-top:1px solid var(--border-color)}.bb-cb,.bb-radio{position:relative;display:flex;align-items:flex-start;gap:10px;padding:6px 0;font-size:15px;line-height:22px;color:var(--body-color);cursor:pointer}.bb-cb input,.bb-radio input{position:absolute;opacity:0;width:1px;height:1px}.bb-cb .bb-cb-box,.bb-ms-opt .bb-cb-box{margin-top:2px}.bb-cb-box{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;border:1.5px solid var(--control-border);border-radius:var(--radius-sm);background:var(--body-bg);color:var(--primary-contrast)}.bb-cb.is-on .bb-cb-box,.bb-ms-opt.is-on .bb-cb-box{background:var(--primary);border-color:var(--primary)}.bb-cb input:focus-visible+.bb-cb-box,.bb-radio input:focus-visible+.bb-radio-dot{outline:2px solid var(--focus-ring-color);outline-offset:2px}.bb-cb.is-disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.bb-cb-text{display:flex;flex-direction:column}.bb-cb-desc{font-size:13px;line-height:18px;color:var(--secondary-color)}.bb-rg{border:0;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:2px}.bb-rg legend{padding:0;margin-bottom:6px}.bb-rg.is-inline{flex-direction:row;flex-wrap:wrap;gap:4px 24px}.bb-rg.is-inline legend{width:100%}.bb-radio-dot{position:relative;width:18px;height:18px;margin-top:2px;flex-shrink:0;border:1.5px solid var(--control-border);border-radius:50%;background:var(--body-bg)}.bb-radio.is-on .bb-radio-dot{border-color:var(--primary)}.bb-radio.is-on .bb-radio-dot:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--primary)}.bb-ms{max-width:420px}.bb-ms-anchor{position:relative}.bb-ms-control{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:var(--control-height);padding:4px 4px 4px 8px;background:var(--body-bg);border:1px solid var(--control-border);border-radius:var(--radius)}.bb-ms-control.is-open{outline:2px solid var(--focus-ring-color);outline-offset:1px;border-color:var(--focus-ring-color)}.bb-ms-control.is-invalid{border:2px solid var(--danger)}.bb-ms-input{flex:1;min-width:80px;border:0;outline:0;padding:4px;font:400 15px/22px var(--font-sans);color:var(--body-color);background:transparent}.bb-ms-input::placeholder{color:var(--tertiary-color)}.bb-ms-toggle{min-width:32px;min-height:32px}.bb-ms-list{position:absolute;z-index:10;top:100%;left:0;right:0;margin:4px 0 0;padding:4px;list-style:none;max-height:220px;overflow:auto;background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow)}.bb-ms-opt{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;font-size:14px;line-height:20px;border-radius:var(--radius-sm);cursor:pointer}.bb-ms-opt:hover{background:var(--secondary-bg)}.bb-ms-empty{padding:8px 10px;font-size:14px;color:var(--secondary-color)}.bb-spinner-wrap{display:inline-flex;align-items:center;gap:10px}.bb-spinner{width:20px;height:20px;border:2px solid var(--primary-bg-subtle);border-top-color:var(--primary);border-radius:50%;animation:bb-spin 1s linear infinite}.bb-spinner.is-lg{width:32px;height:32px;border-width:3px}.bb-spinner-label{font-size:14px;color:var(--secondary-color)}@keyframes bb-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.bb-spinner{animation:none;border-color:var(--primary)}}.bb-skel-wrap{display:flex;flex-direction:column;gap:10px}.bb-skel{display:block;height:12px;border-radius:var(--radius-sm);background:var(--secondary-bg)}.bb-skel.is-sm{height:10px}.bb-skel.is-md{height:18px}.bb-skel.is-lg{height:28px}.bb-skel.is-pill{height:20px;border-radius:var(--radius-pill)}.bb-skel-card,.bb-skel-stat{padding:20px 24px;background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.bb-skel-stat{max-width:220px}.bb-skel-row{display:flex;align-items:center;gap:24px;padding:10px 0;border-bottom:1px solid var(--border-color)}.bb-stepper{display:flex;list-style:none;margin:0;padding:0;gap:0}.bb-step{flex:1;display:flex;align-items:flex-start;gap:10px;position:relative;padding-right:16px}.bb-step:not(:last-child):after{content:"";position:absolute;top:15px;left:42px;right:8px;height:2px;background:var(--border-color)}.bb-step.is-done:not(:last-child):after{background:var(--primary)}.bb-step-dot{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;font-size:14px;font-weight:600;border-radius:50%;border:2px solid var(--control-border);background:var(--body-bg);color:var(--secondary-color)}.bb-step.is-done .bb-step-dot{background:var(--primary);border-color:var(--primary);color:var(--primary-contrast)}.bb-step.is-current .bb-step-dot{border-color:var(--primary);color:var(--primary-text-emphasis);background:var(--primary-bg-subtle)}.bb-step.is-error .bb-step-dot{border-color:var(--danger);color:var(--danger-text-emphasis);background:var(--danger-bg-subtle)}.bb-step-text{display:flex;flex-direction:column;padding-top:5px;background:var(--body-bg);position:relative;z-index:1;padding-right:8px}.bb-step-label{font-size:14px;line-height:20px;font-weight:500;color:var(--emphasis-color)}.bb-step.is-todo .bb-step-label{color:var(--secondary-color)}.bb-step-state{font-size:12px;line-height:16px;color:var(--secondary-color)}.bb-step.is-error .bb-step-state{color:var(--danger)}.bb-drop{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 24px;text-align:center;background:var(--tertiary-bg);border:1.5px dashed var(--control-border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color .15s}.bb-drop:hover{border-color:var(--primary)}.bb-drop:focus-within{outline:2px solid var(--focus-ring-color);outline-offset:2px}.bb-drop-main{font-size:15px;color:var(--body-color)}.bb-drop-link{color:var(--link-color);font-weight:500;text-decoration:underline;text-underline-offset:2px}.bb-rot180{transform:rotate(180deg)}.bb-rot90{transform:rotate(90deg)}.bb-file{display:flex;align-items:center;gap:12px;padding:12px 8px 12px 16px;background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius)}.bb-file.is-error{background:var(--danger-bg-subtle);border-color:var(--danger-border-subtle)}.bb-file-icon{color:var(--secondary-color)}.bb-file.is-error .bb-file-icon{color:var(--danger-text-emphasis)}.bb-file-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.bb-file-name{font-size:14px;line-height:20px;font-weight:500;color:var(--emphasis-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bb-file-size{font-weight:400;color:var(--secondary-color)}.bb-msg-ok{color:var(--success-text-emphasis)}.bb-file.is-error .bb-msg-error{color:var(--danger-text-emphasis)}.bb-audit{list-style:none;margin:0;padding:0;max-width:560px}.bb-audit-item{position:relative;display:flex;gap:14px;padding-bottom:20px}.bb-audit-item:not(:last-child):before{content:"";position:absolute;left:5px;top:16px;bottom:0;width:2px;background:var(--border-color)}.bb-audit-dot{width:12px;height:12px;margin-top:5px;flex-shrink:0;border-radius:50%;border:2px solid var(--control-border);background:var(--body-bg)}.bb-audit-item.is-primary .bb-audit-dot{border-color:var(--primary);background:var(--primary)}.bb-audit-item.is-danger .bb-audit-dot{border-color:var(--danger);background:var(--danger)}.bb-audit-body{flex:1}.bb-audit-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.bb-audit-action{font-size:14px;line-height:20px;font-weight:600;color:var(--emphasis-color)}.bb-audit-at{font-size:12px;color:var(--secondary-color);white-space:nowrap;font-variant-numeric:tabular-nums}.bb-audit-actor{font-size:13px;line-height:18px;color:var(--secondary-color)}.bb-audit-change{display:inline-flex;align-items:center;gap:8px;margin-top:6px;padding:4px 10px;font-size:13px;background:var(--secondary-bg);border-radius:var(--radius-sm);color:var(--secondary-color)}.bb-audit-before{text-decoration:line-through}.bb-audit-after{font-weight:600;color:var(--emphasis-color)}.bb-audit-note{margin:6px 0 0;font-size:13px;line-height:18px;color:var(--body-color)}.bb-chart{margin:0;padding:20px 24px;background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);max-width:640px}.bb-chart-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.bb-chart-title{font-size:16px;line-height:24px;font-weight:600;color:var(--emphasis-color)}.bb-chart-sub{font-size:13px;line-height:18px;color:var(--secondary-color)}.bb-chart-foot{margin-top:12px;font-size:12px;line-height:16px;color:var(--secondary-color)}.bb-bars{display:flex;flex-direction:column;gap:8px}.bb-bar-row{display:grid;grid-template-columns:minmax(120px,30%) 1fr 48px;align-items:center;gap:12px;font-size:13px}.bb-bar-label{color:var(--body-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bb-bar-track{position:relative;height:14px;background:var(--secondary-bg);border-radius:var(--radius-sm)}.bb-bar-fill{display:block;height:100%;background:var(--primary);border-radius:var(--radius-sm)}.bb-bar-target{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--emphasis-color)}.bb-bar-val{text-align:right;font-weight:500;color:var(--emphasis-color);font-variant-numeric:tabular-nums}.bb-bar-key{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:12px;color:var(--secondary-color)}.bb-bar-key-line{display:inline-block;width:2px;height:12px;background:var(--emphasis-color)}.bb-trend{width:100%;height:auto;display:block;overflow:visible}.bb-grid{stroke:var(--border-color);stroke-width:1}.bb-axis{font:400 11px var(--font-sans);fill:var(--secondary-color)}.bb-target{stroke:var(--emphasis-color);stroke-width:1.5;stroke-dasharray:2 3}.bb-s1{stroke:var(--chart-1);color:var(--chart-1)}.bb-s2{stroke:var(--chart-2);color:var(--chart-2)}.bb-s3{stroke:var(--chart-3);color:var(--chart-3)}.bb-pt{fill:var(--body-bg);stroke:currentColor;stroke-width:2}.bb-pt-label{font:600 11px var(--font-sans);fill:var(--emphasis-color);stroke:none}.bb-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:8px;font-size:12px;color:var(--secondary-color)}.bb-legend-item{display:inline-flex;align-items:center;gap:6px}.bb-infotip{position:relative;display:inline-flex;align-items:center;gap:6px}.bb-infotip-btn{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;font:600 11px/1 var(--font-sans);color:var(--secondary-color);background:var(--body-bg);border:1px solid var(--control-border);border-radius:50%;cursor:pointer}.bb-infotip-btn:hover,.bb-infotip-btn[aria-expanded=true]{color:var(--primary-text-emphasis);border-color:var(--primary);background:var(--primary-bg-subtle)}.bb-infotip-btn:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.bb-pop{position:absolute;z-index:20;top:calc(100% + 8px);left:0;width:280px;padding:12px 14px;font-size:13px;line-height:18px;font-weight:400;color:var(--body-color);background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow)}.bb-pop-title{display:block;margin-bottom:4px;font-weight:600;color:var(--emphasis-color)}.bb-dd{position:relative;display:inline-block}.bb-dd-menu{position:absolute;z-index:20;top:calc(100% + 4px);left:0;min-width:200px;margin:0;padding:4px;list-style:none;background:var(--body-bg);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow)}.bb-dd-menu.is-right{left:auto;right:0}.bb-dd-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;font:400 14px/20px var(--font-sans);color:var(--body-color);background:none;border:0;border-radius:var(--radius-sm);text-align:left;cursor:pointer}.bb-dd-item:hover{background:var(--secondary-bg)}.bb-dd-item:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:-2px}.bb-dd-item.is-danger{color:var(--danger)}.bb-dd-item:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.bb-dd-divider{height:1px;margin:4px 0;background:var(--border-color)}.bb-crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:6px;list-style:none;margin:0;padding:0;font-size:13px;line-height:18px}.bb-crumbs li{display:inline-flex;align-items:center;gap:6px;color:var(--tertiary-color)}.bb-crumbs a{color:var(--link-color);text-decoration:none}.bb-crumbs a:hover{text-decoration:underline}.bb-crumbs [aria-current]{color:var(--secondary-color)}.bb-figure{margin:0}.bb-figure-media{display:flex;align-items:center;justify-content:center;background:var(--tertiary-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.bb-figure-media img{display:block;max-width:100%;height:auto}.bb-figure-missing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:160px;padding:24px;text-align:center;font-size:13px;color:var(--secondary-color);background:var(--neutral-bg-subtle);border:1px dashed var(--neutral-border-subtle);border-radius:var(--radius-lg)}.bb-figure-cap{display:flex;flex-direction:column;gap:2px;margin-top:8px;font-size:13px;line-height:18px;color:var(--body-color)}.bb-figure-src{font-size:12px;line-height:16px;color:var(--secondary-color)}.bb-acc{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--body-bg)}.bb-acc-item+.bb-acc-item{border-top:1px solid var(--border-color)}.bb-acc-h{margin:0}.bb-acc-btn{display:flex;align-items:center;gap:10px;width:100%;padding:14px 20px;font:500 15px/22px var(--font-sans);color:var(--emphasis-color);background:none;border:0;text-align:left;cursor:pointer}.bb-acc-btn:hover{background:var(--tertiary-bg)}.bb-acc-btn:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:-2px}.bb-acc-chev{color:var(--secondary-color);transition:transform .15s}.bb-acc-title{flex:1}.bb-acc-meta{font-size:12px;font-weight:400;color:var(--secondary-color)}.bb-acc-panel{padding:0 20px 16px 44px;font-size:14px;line-height:20px;color:var(--body-color)}.bb-reorder{list-style:none;margin:0;padding:0;max-width:560px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--body-bg)}.bb-reorder-item{display:flex;align-items:center;gap:12px;padding:8px 8px 8px 16px}.bb-reorder-item+.bb-reorder-item{border-top:1px solid var(--border-color)}.bb-reorder-n{width:20px;font-size:13px;font-weight:600;color:var(--secondary-color);font-variant-numeric:tabular-nums}.bb-reorder-text{flex:1;display:flex;flex-direction:column;font-size:14px;line-height:20px}.bb-reorder-btns{display:flex;gap:2px}.bb-icon-btn:disabled{opacity:.35;cursor:not-allowed}a.bb-icon-btn{text-decoration:none}body{padding:0;background:var(--tertiary-bg)}.shell{min-height:100vh;background:var(--tertiary-bg);color:var(--body-color)}.shell-main{max-width:var(--content-max);margin:0 auto;padding:var(--space-6) var(--margin-laptop-min)}.shell-title{margin:0 0 var(--space-5);font-size:32px;line-height:40px;font-weight:600;color:var(--emphasis-color)}@media(max-width:1023px){.shell-main{padding:var(--space-5) var(--margin-mobile)}}.laptop-required{min-height:100vh;box-sizing:border-box;padding:var(--space-6) var(--space-5);display:flex;flex-direction:column;justify-content:center;gap:var(--space-5);background:var(--tertiary-bg);color:var(--body-color)}.laptop-required-main{display:flex;flex-direction:column;gap:var(--space-4)}.laptop-required-note{margin:0;font-size:14px;line-height:20px;color:var(--secondary-color)}.auth{min-height:100vh;display:flex;flex-wrap:wrap;background:var(--tertiary-bg);color:var(--body-color)}.auth-brand{flex:1 1 420px;box-sizing:border-box;padding:48px 56px;display:flex;flex-direction:column;justify-content:space-between;gap:48px;background:var(--primary-bg-subtle);color:var(--primary-text-emphasis)}.auth-brand-copy{display:flex;flex-direction:column;gap:16px;max-width:460px}.auth-brand-lead{margin:0;font-size:32px;line-height:40px;font-weight:600;color:var(--emphasis-color)}.auth-brand-sub{margin:0;font-size:18px;line-height:28px}.auth-brand-note{margin:0;font-size:14px;line-height:20px;max-width:460px}.auth-main{flex:1.4 1 480px;box-sizing:border-box;padding:48px 32px;display:flex;align-items:center;justify-content:center}.auth-card{width:100%;max-width:400px;display:flex;flex-direction:column;gap:var(--space-5)}.auth-head{display:flex;flex-direction:column;gap:var(--space-2)}.auth-title{margin:0;font-size:32px;line-height:40px;font-weight:600;color:var(--emphasis-color)}.auth-intro{margin:0;font-size:14px;line-height:20px;color:var(--secondary-color)}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-actions{display:flex;flex-direction:column;gap:var(--space-2)}@media(max-width:719px){.auth{min-height:100dvh}.auth-brand{padding:var(--space-4) var(--margin-mobile);gap:var(--space-3);flex-basis:auto}.auth-brand-copy,.auth-brand-note{display:none}.auth-main{align-items:flex-start;padding:var(--space-5) var(--margin-mobile) 45vh}.auth-form .bb-input{scroll-margin-block:96px}}.settings{display:flex;flex-direction:column;gap:var(--space-5)}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4);margin-bottom:var(--space-4)}.settings-note{margin:var(--space-3) 0 0;font-size:14px;line-height:20px;color:var(--secondary-color)}.settings-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.settings-actions .settings-note{margin:0}.exam-list{display:flex;flex-direction:column;gap:var(--space-4)}.exam-group{margin:0;padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius)}.exam-legend{padding:0 var(--space-2);font-weight:500;color:var(--emphasis-color)}.exam-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-4)}.today-head{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-5)}.today-head .shell-title{margin:0}.today-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--space-5);align-items:start}.today-plan{display:flex;flex-direction:column;gap:var(--space-3)}.today-side{display:flex;flex-direction:column;gap:var(--space-4)}.today-note{margin:0;font-size:14px;line-height:20px;color:var(--secondary-color)}.today-next{display:flex;flex-direction:column;gap:2px;font-size:14px;line-height:20px;color:var(--secondary-color)}.today-next strong{font-size:16px;color:var(--emphasis-color)}.today-alt,.today-alt-body{display:flex;flex-direction:column;gap:var(--space-2)}.plan-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.plan-head .shell-title{margin:0 0 var(--space-2)}.plan-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--space-5);align-items:start}.plan-main,.plan-side{display:flex;flex-direction:column;gap:var(--space-5)}.plan-form{display:flex;flex-direction:column;gap:var(--space-2)}.plan-row{display:grid;gap:var(--space-4)}.plan-row-2{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-row-3{grid-template-columns:repeat(3,minmax(0,1fr))}.plan-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.plan-confirm{display:flex;flex-wrap:wrap;gap:var(--space-2)}.plan-main .bb-alert{margin-top:var(--space-3)}@media(max-width:1023px){.plan-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:599px){.plan-row-2,.plan-row-3{grid-template-columns:minmax(0,1fr)}}.session-head{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5)}.session-head .shell-title{margin:0}.session-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5);align-items:start}.session-col{display:flex;flex-direction:column;gap:var(--space-4)}.session-break{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.session-lead{margin:0;font-size:18px;line-height:28px;color:var(--body-color)}.session-total{margin:0 0 var(--space-2);font-size:56px;line-height:1.1;font-weight:300;font-variant-numeric:tabular-nums;color:var(--emphasis-color)}.session-facts{margin:0;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6)}.session-facts dt{font-size:12px;line-height:16px;font-weight:500;letter-spacing:.02em;color:var(--secondary-color)}.session-facts dd{margin:0;font-size:14px;line-height:20px;font-weight:500;color:var(--emphasis-color)}.session-head+.bb-alert,.shell-main>.bb-alert{margin-bottom:var(--space-4)}@media(max-width:1023px){.session-grid{grid-template-columns:minmax(0,1fr)}}.session-form{display:flex;flex-direction:column;gap:var(--space-4)}.outcome-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.outcome-recent{margin:var(--space-4) 0 0;padding-left:var(--space-5);color:var(--text-2);font-size:var(--text-sm)}.progress-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5)}@media(max-width:1279px){.progress-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:599px){.progress-grid{grid-template-columns:1fr}}.progress-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-5)}@media(max-width:899px){.progress-kpis{grid-template-columns:repeat(2,1fr)}}.progress-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-4);margin:var(--space-5) 0}.progress-filters .bb-field{min-width:160px}.progress-filter-actions{display:flex;gap:var(--space-3)}.topics-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-4) 0}.topics-add{display:grid;grid-template-columns:2fr 1fr auto;align-items:end;gap:var(--space-4)}@media(max-width:799px){.topics-add{grid-template-columns:1fr}}.topics-list{list-style:none;margin:0;padding:0}.topics-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color)}.topics-list li:last-child{border-bottom:0}.topics-list li.is-retired .topics-title{color:var(--secondary-color);text-decoration:line-through}.topics-title{font-weight:500}.topics-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.topics-edit{display:grid;grid-template-columns:2fr 1fr 100px auto;align-items:end;gap:var(--space-3);width:100%}@media(max-width:799px){.topics-edit{grid-template-columns:1fr}}.attention-list{list-style:none;margin:0;padding:0}.attention-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color)}.attention-list li:last-child{border-bottom:0}.attention-topic{font-weight:500}.overview-heading{font-size:var(--text-lg);margin:var(--space-6) 0 var(--space-4)}.content-heading{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.content-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--space-6);align-items:start;margin-top:var(--space-4)}.content-main,.content-side{display:flex;flex-direction:column;gap:var(--space-6)}@media(max-width:999px){.content-grid{grid-template-columns:1fr}}.content-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media(max-width:599px){.content-pair{grid-template-columns:1fr}}.content-mistake{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:var(--space-3);margin-bottom:var(--space-3)}@media(max-width:799px){.content-mistake{grid-template-columns:1fr}}.content-card-add,.content-card-edit{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4);width:100%}.content-actions{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4)}.content-missing{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2)}.content-audit{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.content-audit li{display:flex;flex-direction:column}.topic-objective{margin:0;font-size:18px;line-height:28px}.topic-text{display:flex;flex-direction:column;gap:var(--space-4);max-width:720px}.topic-text p{margin:0}.topic-list{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2)}.topic-figure{margin:0}.topic-figure img{max-width:100%;border-radius:var(--radius)}.topic-figure figcaption{font-size:14px;color:var(--secondary-color);margin-top:var(--space-2)}.topic-chips,.topic-head-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.topic-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-4)}.flash-stage{width:100%;max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-6)}.flash-card{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--body-bg);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4);min-height:220px}.flash-q{margin:0;font-size:24px;line-height:32px;font-weight:600}.flash-a{margin:0;font-size:18px;line-height:28px;padding-top:var(--space-4);border-top:1px solid var(--border-color)}.flash-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}
