/* AlgoCrux product design system refresh
   Shared visual language only: no feature logic or page content is changed. */
:root {
  --ac-canvas: #f4f6f5;
  --ac-canvas-soft: #edf2ef;
  --ac-paper: #ffffff;
  --ac-paper-muted: #f8fafd;
  --ac-ink: #1c2926;
  --ac-ink-soft: #354641;
  --ac-muted: #5e706a;
  --ac-line: #dce5e1;
  --ac-line-strong: #c7d5ce;
  --ac-brand: #397a68;
  --ac-brand-dark: #2b6656;
  --ac-brand-soft: #eaf3ef;
  --ac-aqua: #397a68;
  --ac-positive: #267154;
  --ac-warning: #94651e;
  --ac-danger: #ad3b47;
  --ac-shadow-sm: 0 2px 8px rgba(28, 41, 38, .045);
  --ac-shadow-md: 0 12px 34px rgba(28, 41, 38, .075);
  --ac-radius-sm: 9px;
  --ac-radius-md: 15px;
  --ac-radius-lg: 20px;
}

body.ac-design-system {
  --bg: var(--ac-canvas);
  --bg2: var(--ac-canvas-soft);
  --surface: var(--ac-paper);
  --surface2: var(--ac-paper-muted);
  --surface3: var(--ac-canvas-soft);
  --border: var(--ac-line);
  --border2: var(--ac-line-strong);
  --text: var(--ac-ink);
  --muted: var(--ac-muted);
  --muted2: #78879b;
  --accent: var(--ac-brand);
  --accent-bg: var(--ac-brand-soft);
  --accent-dim: #c6d3ff;
  --teal: var(--ac-aqua);
  --green: var(--ac-positive);
  --amber: #bb8218;
  --red: var(--ac-danger);
  --purple: #7652b8;
  --green-bg: #e9f7f0;
  --red-bg: #fff0f0;
  --amber-bg: #fff5df;
  --purple-bg: #f3effb;
  --teal-bg: #eaf4f2;
  background: var(--ac-canvas) !important;
  color: var(--ac-ink) !important;
  font-family: Outfit, "Aptos", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  line-height: 1.55;
}

.ac-design-system ::selection { background: #c9e1d6; color: #1c2926; }
.ac-design-system a { color: var(--ac-brand); text-underline-offset: 3px; }
.ac-design-system a:hover { color: var(--ac-brand-dark); }
.ac-design-system :focus-visible { outline: 3px solid rgba(57, 122, 104, .25) !important; outline-offset: 3px !important; }
.ac-design-system h1,.ac-design-system h2,.ac-design-system h3,.ac-design-system h4 { color: var(--ac-ink); letter-spacing: -.025em !important; line-height: 1.2; }
.ac-design-system h1 { font-size: clamp(2rem, 4vw, 3.25rem); font-weight: 760; }
.ac-design-system h2 { font-size: clamp(1.35rem, 2vw, 1.8rem); font-weight: 720; }
.ac-design-system h3 { font-size: 1.15rem; font-weight: 680; }
.ac-design-system p { line-height: 1.7; }

/* Global navigation: one consistent, calm workspace header. */
body.ac-unified.ac-design-system .ac-site-header { padding: 12px clamp(12px, 2.2vw, 28px) !important; }
body.ac-unified.ac-design-system .ac-site-header .ac-shell {
  max-width: 1600px !important;
  padding: 10px 20px !important;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid var(--ac-line) !important;
  border-radius: 18px !important;
  box-shadow: var(--ac-shadow-sm) !important;
  backdrop-filter: blur(16px) !important;
}
body.ac-design-system .ac-shell-top {
  display: grid !important;
  grid-template-columns: auto minmax(220px, 1fr) auto;
  grid-template-areas: "brand search account" "links links links";
  gap: 10px 22px !important;
  align-items: center;
}
.ac-design-system .ac-shell-brand { grid-area: brand; }
.ac-design-system .ac-global-search { grid-area: search; justify-self: end; width: min(100%, 340px); max-width: 340px; min-width: 210px; }
.ac-design-system .ac-account { grid-area: account; }
.ac-design-system .ac-shell-links { grid-area: links; width: 100%; justify-content: space-between !important; padding-top: 2px; border-top: 1px solid #edf1f6; }
.ac-design-system .ac-shell-brand { color: var(--ac-ink) !important; font-size: 15px !important; font-weight: 760 !important; }
.ac-design-system .ac-shell-brand img { border-radius: 8px !important; }
.ac-design-system .ac-shell-links { gap: clamp(8px, 1vw, 17px) !important; }
.ac-design-system .ac-shell-links a { color: var(--ac-muted) !important; font-size: 12px !important; font-weight: 560 !important; border-radius: 7px; }
.ac-design-system .ac-shell-links a:hover { color: var(--ac-brand-dark) !important; }
.ac-design-system .ac-shell-links a[aria-current=page] { color: var(--ac-brand-dark) !important; border-color: var(--ac-brand) !important; }
.ac-design-system .ac-global-search input { height: 38px !important; padding-inline: 14px !important; background: var(--ac-paper-muted) !important; border: 1px solid var(--ac-line) !important; border-radius: 11px !important; color: var(--ac-ink) !important; font-size: 12px !important; }
.ac-design-system .ac-account a { color: var(--ac-ink-soft) !important; }
.ac-design-system .ac-account button,.ac-design-system .ac-account .ac-signup,.ac-design-system .ac-account .btn { background: var(--ac-brand-soft) !important; border: 1px solid #d6e0ff !important; border-radius: 10px !important; color: var(--ac-brand-dark) !important; }
.ac-design-system .ac-site-header .search-results { background: var(--ac-paper) !important; border-color: var(--ac-line) !important; border-radius: 12px !important; box-shadow: var(--ac-shadow-md) !important; }
.ac-design-system .ac-site-header .search-results a { color: var(--ac-ink) !important; border-color: #edf1f6 !important; }
.ac-design-system .ac-site-header .search-results a:hover,.ac-design-system .ac-site-header .search-results a:focus { background: var(--ac-brand-soft) !important; }
.ac-design-system .ac-site-header .search-results .sr-desc { color: var(--ac-muted) !important; }
.ac-design-system .ac-ai-launcher { width: 54px !important; height: 54px !important; background: linear-gradient(145deg,#4869e7,#3153cf) !important; border: 1px solid #7990ef !important; box-shadow: 0 10px 25px rgba(49,83,207,.28) !important; }

/* Shared page frame and editorial hierarchy. */
.ac-design-system .ac-workspace,.ac-design-system #algorithms,.ac-design-system .container { max-width: 1320px !important; }
.ac-design-system .ac-workspace { padding-top: clamp(28px, 4vw, 52px) !important; }
.ac-design-system .hero:not(#main),.ac-design-system .cw-hero { padding-top: clamp(30px, 5vw, 60px) !important; padding-bottom: 30px !important; }
.ac-design-system .hero h1,.ac-design-system .cw-hero h1,.ac-design-system .ac-workspace h1 { color: var(--ac-ink) !important; letter-spacing: -.045em !important; }
.ac-design-system .eyebrow,.ac-design-system .classroom-eyebrow { color: var(--ac-brand) !important; font-weight: 720 !important; letter-spacing: .09em !important; }
.ac-design-system .lead,.ac-design-system .sub,.ac-design-system .ac-workspace p { color: var(--ac-muted); }

/* Surfaces and cards: crisp borders, quiet depth, consistent radii. */
.ac-design-system .ds-card,.ac-design-system .algo-card,.ac-design-system .feature-card,.ac-design-system .stat-card,
.ac-design-system .roadmap-card,.ac-design-system .plan-card,.ac-design-system .card,.ac-design-system .panel,
.ac-design-system .concept-card,.ac-design-system .notes,.ac-design-system .controls,.ac-design-system .cw-dash,
.ac-design-system .classroom-panel,.ac-design-system .classroom-card,.ac-design-system .classroom-work-item,
.ac-design-system .classroom-metric,.ac-design-system .classroom-report-card,.ac-design-system .classroom-report-drill,
.ac-design-system .classroom-ai-report,.ac-design-system .classroom-overall-progress {
  color: var(--ac-ink) !important;
  background: var(--ac-paper) !important;
  border: 1px solid var(--ac-line) !important;
  border-radius: var(--ac-radius-md) !important;
  box-shadow: var(--ac-shadow-sm) !important;
}
.ac-design-system .ds-card,.ac-design-system .algo-card,.ac-design-system .feature-card,.ac-design-system .roadmap-card,.ac-design-system .plan-card,.ac-design-system .card { padding: clamp(18px,2vw,26px) !important; }
.ac-design-system .ds-card:hover,.ac-design-system .algo-card:hover,.ac-design-system .feature-card:hover,.ac-design-system .roadmap-card:hover,.ac-design-system .card:hover { transform: translateY(-2px) !important; border-color: #b9c8ec !important; box-shadow: var(--ac-shadow-md) !important; }
.ac-design-system .algo-card h3,.ac-design-system .classroom-card h3 { color: var(--ac-brand-dark) !important; }
.ac-design-system .algo-card p,.ac-design-system .classroom-card small,.ac-design-system .classroom-muted { color: var(--ac-muted) !important; }
.ac-design-system .algo-grid,.ac-design-system .classroom-list,.ac-design-system .classroom-grid { gap: 16px !important; }
.ac-design-system .stat-card strong,.ac-design-system .classroom-metric strong { color: var(--ac-ink) !important; font-variant-numeric: tabular-nums; }

/* Buttons, segmented controls, and status tags. */
.ac-design-system button,.ac-design-system .btn,.ac-design-system .pill,.ac-design-system .tab,.ac-design-system .classroom-button,.ac-design-system .classroom-link-button { font-family: inherit; font-weight: 620; transition: background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease; }
.ac-design-system .btn-primary,.ac-design-system .classroom-button:not(.secondary) { color: #fff !important; background: var(--ac-brand) !important; border: 1px solid var(--ac-brand) !important; border-radius: 11px !important; box-shadow: 0 2px 7px rgba(28,41,38,.1) !important; }
.ac-design-system .btn-primary:hover,.ac-design-system .classroom-button:not(.secondary):hover { background: var(--ac-brand-dark) !important; box-shadow: 0 4px 10px rgba(28,41,38,.14) !important; transform: translateY(-1px); }
.ac-design-system .ac-command { color:#fff !important;background:var(--ac-brand) !important;border:1px solid var(--ac-brand) !important;border-radius:10px !important;box-shadow:0 2px 7px rgba(28,41,38,.1) !important; }
.ac-design-system .ac-command:hover { background:var(--ac-brand-dark) !important; }
.ac-design-system .ac-command.secondary { color:var(--ac-brand-dark) !important;background:var(--ac-brand-soft) !important;border-color:#d3defe !important; }
.ac-design-system .btn-secondary,.ac-design-system .btn-ghost,.ac-design-system .classroom-button.secondary { color: var(--ac-brand-dark) !important; background: var(--ac-brand-soft) !important; border: 1px solid #d3defe !important; border-radius: 11px !important; }
.ac-design-system .pill,.ac-design-system .tab,.ac-design-system .ac-path-tabs button,.ac-design-system .ac-check button { color: var(--ac-ink-soft); background: var(--ac-paper); border: 1px solid var(--ac-line); border-radius: 999px !important; }
.ac-design-system .pill.active,.ac-design-system .tab.active,.ac-design-system .ac-path-tabs button[aria-pressed=true] { color: var(--ac-brand-dark) !important; background: var(--ac-brand-soft) !important; border-color: #cbd8ff !important; }
body.ac-design-system.ac-home .pill { color: var(--ac-ink-soft) !important; background: #fff !important; border-color: var(--ac-line) !important; box-shadow: none !important; }
body.ac-design-system.ac-home .pill.active { color: var(--ac-brand-dark) !important; background: var(--ac-brand-soft) !important; border-color: #bdccfb !important; }
.ac-design-system .badge,.ac-design-system .pill-tag,.ac-design-system .classroom-badge { border-radius: 999px !important; }
.ac-design-system .lock-overlay .lock-label { background: #fff8e7 !important; color: #79500c !important; border-color: #ead39b !important; border-radius: 999px !important; }

/* Inputs, search, selection, and focus states. */
.ac-design-system input:not([type=checkbox]):not([type=radio]):not([type=range]),.ac-design-system select,.ac-design-system textarea {
  color: var(--ac-ink) !important; background: #fff !important; border: 1px solid var(--ac-line-strong) !important; border-radius: 10px !important; box-shadow: none !important;
}
.ac-design-system input::placeholder,.ac-design-system textarea::placeholder { color: #8996a8 !important; opacity: 1; }
.ac-design-system input:focus,.ac-design-system select:focus,.ac-design-system textarea:focus { border-color: #7891ec !important; outline: 3px solid rgba(54,87,214,.13) !important; }
.ac-design-system input[type=checkbox],.ac-design-system input[type=radio] { accent-color: var(--ac-brand); }
.ac-design-system label { color: var(--ac-ink-soft); }
.ac-design-system .nav-search,.ac-design-system .filter-row .nav-search { background: #fff !important; border-color: var(--ac-line) !important; border-radius: 13px !important; box-shadow: var(--ac-shadow-sm) !important; }
.ac-design-system .nav-search input { color: var(--ac-ink) !important; background: transparent !important; }
.ac-design-system .search-results { color: var(--ac-ink); background: #fff !important; border: 1px solid var(--ac-line) !important; border-radius: 14px !important; box-shadow: var(--ac-shadow-md) !important; }
.ac-design-system .search-results a { color: var(--ac-ink) !important; border-color: #edf1f6 !important; }
.ac-design-system .search-results a:hover,.ac-design-system .search-results a:focus { background: var(--ac-brand-soft) !important; }

/* Data, lesson content, quizzes, and progress states. */
.ac-design-system table { color: var(--ac-ink); border-collapse: separate; border-spacing: 0; }
.ac-design-system th { color: var(--ac-ink-soft); background: #f4f7fb; font-weight: 700; }
.ac-design-system th,.ac-design-system td { border-color: #e5ebf3 !important; }
.ac-design-system pre,.ac-design-system code { border-radius: 10px; }
.ac-design-system pre { box-shadow: inset 0 0 0 1px rgba(255,255,255,.06); }
.ac-design-system .ac-path-list li { border-color: var(--ac-line); }
.ac-design-system .ac-path-list button,.ac-design-system .ac-path-list select { border-radius: 10px !important; }
.ac-design-system .classroom-tabs { background: #fff; border-color: var(--ac-line); }
.ac-design-system .classroom-tabs button { color: var(--ac-muted); }
.ac-design-system .classroom-tabs button.active { color: var(--ac-brand-dark); border-color: var(--ac-brand); }
.ac-design-system .classroom-notice,.ac-design-system .ac-local-notice { color: #684b13 !important; background: #fff7e6 !important; border-color: #e2b44f !important; border-radius: 12px !important; }
.ac-design-system .classroom-success,.ac-design-system .success { color: var(--ac-positive) !important; }
.ac-design-system .classroom-late,.ac-design-system .error { color: var(--ac-danger) !important; }
.ac-design-system .classroom-quiz-question { background: #fff !important; border-color: var(--ac-line) !important; border-radius: 14px !important; }
.ac-design-system .classroom-quiz-question label { background: var(--ac-paper-muted); border-color: var(--ac-line); border-radius: 10px; }
.ac-design-system .classroom-caveat { border-color: var(--ac-line); }
.ac-design-system .quiz-card,.ac-design-system .quiz-suggestion-group { background:#fff !important;border-color:var(--ac-line) !important;border-radius:16px !important;box-shadow:var(--ac-shadow-sm) !important; }
.ac-design-system .quiz-option { color:var(--ac-ink-soft) !important;background:var(--ac-paper-muted) !important;border-color:var(--ac-line) !important;border-radius:10px !important; }
.ac-design-system .quiz-option:has(input:checked) { color:var(--ac-brand-dark) !important;background:var(--ac-brand-soft) !important;border-color:#b9c9f6 !important; }
.ac-design-system .quiz-option.correct { color:#075b43 !important;background:#eaf7f0 !important;border-color:#acd9c1 !important; }
.ac-design-system .quiz-option.incorrect { color:#922e38 !important;background:#fff0f0 !important;border-color:#edc5ca !important; }
.ac-design-system .quiz-feedback { color:var(--ac-ink-soft) !important;background:var(--ac-paper-muted) !important;border-radius:0 10px 10px 0; }
.ac-design-system .ac-segment { border-color:var(--ac-line) !important; }
.ac-design-system .ac-segment button { color:var(--ac-muted) !important; }
.ac-design-system .ac-segment button[aria-selected=true] { color:var(--ac-brand-dark) !important;border-color:var(--ac-brand) !important; }

/* Lessons have their own deep visualization styles; adapt the surrounding
   teaching workspace while leaving code samples and algorithm colors intact. */
body.ac-design-system.ac-lesson {
  --lesson-bg: var(--ac-canvas);
  --lesson-panel: var(--ac-paper);
  --lesson-panel-2: var(--ac-paper-muted);
  --lesson-border: var(--ac-line);
  --lesson-text: var(--ac-ink);
  --lesson-muted: var(--ac-muted);
  --lesson-blue: var(--ac-brand);
  --lesson-violet: #7652b8;
  --lesson-teal: var(--ac-aqua);
  color: var(--ac-ink) !important;
}
body.ac-design-system.ac-lesson .concept,body.ac-design-system.ac-lesson .concept-card,body.ac-design-system.ac-lesson .panel,body.ac-design-system.ac-lesson .cx-card,
body.ac-design-system.ac-lesson .complex-card,body.ac-design-system.ac-lesson .note-card,body.ac-design-system.ac-lesson .notes,
body.ac-design-system.ac-lesson .anim-panel,body.ac-design-system.ac-lesson .walkthrough,body.ac-design-system.ac-lesson .algo-test-box,
body.ac-design-system.ac-lesson .algo-custom-box,body.ac-design-system.ac-lesson .algo-complete {
  color: var(--ac-ink) !important;
  background: var(--ac-paper) !important;
  border-color: var(--ac-line) !important;
  box-shadow: var(--ac-shadow-sm) !important;
}
body.ac-design-system.ac-lesson .ac-practice,body.ac-design-system.ac-lesson .practice {
  color: var(--ac-ink-soft) !important;
  background: linear-gradient(120deg,#f0f4ff,#eff9f8) !important;
  border-color: var(--ac-line) !important;
  border-radius: 14px !important;
}
body.ac-design-system.ac-lesson .ac-practice-label { color: var(--ac-brand-dark) !important; }
body.ac-design-system.ac-lesson .ac-practice a { color: var(--ac-brand-dark) !important; border-color: #c2cff3 !important; }
body.ac-design-system.ac-lesson .lc-banner { color:var(--ac-ink-soft) !important;background:linear-gradient(120deg,#edf2ff,#edf8f7) !important;border:1px solid var(--ac-line) !important;border-radius:14px !important;box-shadow:var(--ac-shadow-sm) !important; }
body.ac-design-system.ac-lesson .lc-banner .lc-text,body.ac-design-system.ac-lesson .lc-banner .lc-text b { color:var(--ac-ink-soft) !important; }
body.ac-design-system.ac-lesson .lc-banner .lc-btn { color:#fff !important;background:var(--ac-brand) !important;border-color:var(--ac-brand) !important; }
body.ac-design-system.ac-lesson .concept h2,body.ac-design-system.ac-lesson .concept p { color:var(--ac-ink) !important; }
body.ac-design-system.ac-lesson .concept p { color:var(--ac-muted) !important; }
body.ac-design-system.ac-lesson .badge-row .badge { border-radius: 999px !important; }
body.ac-design-system.ac-lesson .badge.gfg { color:#3154b8 !important;background:#edf2ff !important;border-color:#d3defe !important; }
body.ac-design-system.ac-lesson .badge.px { color:#6949a7 !important;background:#f3effb !important;border-color:#e0d5f5 !important; }
body.ac-design-system.ac-lesson .badge.easy { color:#087a59 !important;background:#e9f7f0 !important;border-color:#c7ead8 !important; }
body.ac-design-system.ac-lesson .badge.medium { color:#8b5d0c !important;background:#fff5df !important;border-color:#f0ddb0 !important; }
body.ac-design-system.ac-lesson .badge.hard { color:#a32e3b !important;background:#fff0f0 !important;border-color:#f0cdd0 !important; }
body.ac-design-system.ac-lesson .section-label { color: var(--ac-muted) !important; }
body.ac-design-system.ac-lesson .controls,body.ac-design-system.ac-lesson .control-panel {
  color: var(--ac-ink) !important;background:#fff !important;border-color:var(--ac-line) !important;box-shadow:var(--ac-shadow-sm) !important;
}
body.ac-design-system.ac-lesson button,body.ac-design-system.ac-lesson .btn,body.ac-design-system.ac-lesson .mini-btn,body.ac-design-system.ac-lesson .copy-btn {
  color:var(--ac-ink-soft) !important;background:#f5f7fb !important;border-color:var(--ac-line-strong) !important;border-radius:9px !important;
}
body.ac-design-system.ac-lesson .primary,body.ac-design-system.ac-lesson .btn-primary { color:#fff !important;background:var(--ac-brand) !important;border-color:var(--ac-brand) !important; }
body.ac-design-system.ac-lesson .algo-complete { color:var(--ac-ink) !important;border-radius:15px !important; }
body.ac-design-system.ac-lesson .algo-complete .algo-state { color:var(--ac-muted) !important; }
body.ac-design-system.ac-lesson .algo-complete button { color:#fff !important;background:var(--ac-brand) !important;border-color:var(--ac-brand) !important; }
body.ac-design-system.ac-lesson .algo-test { color:var(--ac-ink-soft) !important;background:#f5f7fb !important;border-color:var(--ac-line) !important; }
body.ac-design-system.ac-lesson .algo-test.active { color:var(--ac-brand-dark) !important;background:var(--ac-brand-soft) !important;border-color:#bdccfb !important; }
body.ac-design-system.ac-lesson .notes textarea,body.ac-design-system.ac-lesson .ac-notepad textarea { color:var(--ac-ink) !important;background:#fff !important;border-color:var(--ac-line-strong) !important; }
body.ac-design-system.ac-lesson pre,body.ac-design-system.ac-lesson .code-block { color:#e8edf7 !important;background:#172033 !important;border-color:#26344f !important; }
body.ac-design-system.ac-lesson pre,body.ac-design-system.ac-lesson pre code,body.ac-design-system.ac-lesson .code-block,
body.ac-design-system.ac-lesson .code-section pre *{color:#e8edf7!important;text-shadow:none!important}
body.ac-design-system.ac-lesson pre .kw,body.ac-design-system.ac-lesson pre .keyword,body.ac-design-system.ac-lesson pre .tok-keyword{color:#93c5fd!important}
body.ac-design-system.ac-lesson pre .st,body.ac-design-system.ac-lesson pre .string,body.ac-design-system.ac-lesson pre .tok-string{color:#86efac!important}
body.ac-design-system.ac-lesson pre .comment,body.ac-design-system.ac-lesson pre .cm,body.ac-design-system.ac-lesson pre .tok-comment{color:#a8b3c7!important}
body.ac-design-system.ac-lesson pre .number,body.ac-design-system.ac-lesson pre .nu,body.ac-design-system.ac-lesson pre .tok-number{color:#fcd34d!important}
body.ac-design-system.ac-lesson pre .type,body.ac-design-system.ac-lesson pre .tok-type{color:#67e8f9!important}
body.ac-design-system.ac-lesson .code-section pre .kw,body.ac-design-system.ac-lesson .code-section pre .keyword{color:#93c5fd!important}
body.ac-design-system.ac-lesson .code-section pre .st,body.ac-design-system.ac-lesson .code-section pre .string{color:#86efac!important}
body.ac-design-system.ac-lesson .code-section pre .comment,body.ac-design-system.ac-lesson .code-section pre .cm{color:#a8b3c7!important}
body.ac-design-system.ac-lesson .code-section pre .type,body.ac-design-system.ac-lesson .code-section pre .tok-type{color:#67e8f9!important}
body.ac-design-system.ac-lesson .code-section,body.ac-design-system.ac-lesson .code-header { background:#fff !important;border-color:var(--ac-line) !important; }
body.ac-design-system.ac-lesson .code-header span { color:var(--ac-muted) !important; }
body.ac-design-system.ac-lesson .code-header .copy-btn { color:var(--ac-brand-dark) !important;background:var(--ac-brand-soft) !important;border-color:#d3defe !important; }
body.ac-design-system.ac-lesson .algo-complete strong { color:var(--ac-ink) !important; }
body.ac-design-system.ac-lesson .algo-input-status { color:var(--ac-muted) !important; }
body.ac-design-system.ac-lesson .algorithm-workspace {
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-areas: "tests" "animation" "iteration" !important;
  gap: 18px !important;
}

/* Keep algorithm canvases and code editors distinct from the surrounding UI. */
.ac-design-system canvas,.ac-design-system svg:not(.icon):not(.brand-mark),.ac-design-system .visualization,.ac-design-system .visualizer,.ac-design-system .graph-canvas { border-radius: 12px; }
.ac-design-system .graph-node,.ac-design-system .node { color: inherit; }
.ac-design-system .progress-bar,.ac-design-system progress { accent-color: var(--ac-brand); }

@media (max-width: 1100px) {
  .ac-design-system .ac-shell-links { gap: 10px !important; }
  .ac-design-system .ac-shell-links a { font-size: 11px !important; }
}
@media (max-width: 760px) {
  body.ac-unified.ac-design-system .ac-site-header { padding: 8px 8px !important; }
  body.ac-unified.ac-design-system .ac-site-header .ac-shell { padding: 10px 12px !important; border-radius: 14px !important; }
  .ac-design-system .ac-shell-top { grid-template-columns: minmax(0,1fr) auto; grid-template-areas: "brand account" "links links"; gap: 9px 12px !important; }
  .ac-design-system .ac-shell-links { justify-content: flex-start !important; padding-top: 7px; }
  .ac-design-system .ac-account { margin-left: auto; }
  .ac-design-system .ac-workspace { padding: 26px 16px 64px !important; }
  .ac-design-system #algorithms,.ac-design-system .container { padding-inline: 16px !important; }
  .ac-design-system .classroom-panel { padding: 18px !important; }
}
@media (max-width: 420px) {
  .ac-design-system .ac-shell-links { gap: 13px !important; }
  .ac-design-system .ac-shell-links a { font-size: 10px !important; }
  .ac-design-system .ac-account a,.ac-design-system .ac-account button { font-size: 11px !important; padding: 7px 9px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .ac-design-system *, .ac-design-system *::before, .ac-design-system *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Stitch-inspired finish: obsidian surfaces, focused cyan action color, and
   restrained depth that preserves long-session readability. */
body.ac-design-system {
  --ac-canvas: #090d16;
  --ac-canvas-soft: #0f131c;
  --ac-paper: #141923;
  --ac-paper-muted: #101620;
  --ac-ink: #f2f5fa;
  --ac-ink-soft: #d5deea;
  --ac-muted: #9aa8bb;
  --ac-line: rgba(225, 235, 245, .1);
  --ac-line-strong: rgba(225, 235, 245, .18);
  --ac-brand: #38d5dc;
  --ac-brand-dark: #80e6e8;
  --ac-brand-soft: rgba(24, 196, 204, .12);
  --ac-aqua: #4facfe;
  --ac-positive: #42d89b;
  --ac-warning: #f3b34b;
  --ac-danger: #fb7185;
  --ac-shadow-sm: 0 7px 22px rgba(0, 0, 0, .22);
  --ac-shadow-md: 0 20px 44px rgba(0, 0, 0, .34);
  background-color: var(--ac-canvas) !important;
  background-image: radial-gradient(ellipse at 50% -12%, rgba(0, 220, 230, .09), transparent 48%),
                    radial-gradient(ellipse at 100% 18%, rgba(79, 172, 254, .045), transparent 32%) !important;
  background-attachment: fixed;
}
.ac-design-system ::selection { background: rgba(0, 220, 230, .34); color: #f8fafc; }
.ac-design-system a:hover { color: var(--ac-brand-dark); }
.ac-design-system :focus-visible { outline-color: rgba(52, 115, 95, .34) !important; }
.ac-design-system .ac-site-header .ac-shell {
  border-color: rgba(216, 228, 221, .92) !important;
  box-shadow: 0 9px 30px rgba(28, 54, 42, .065) !important;
  backdrop-filter: blur(18px) saturate(1.12) !important;
}
.ac-design-system .ac-shell-links { border-color: #e7eee9 !important; }
.ac-design-system .ac-account button,.ac-design-system .ac-account .ac-signup,.ac-design-system .ac-account .btn,
.ac-design-system .btn-secondary,.ac-design-system .btn-ghost,.ac-design-system .classroom-button.secondary,
.ac-design-system .ac-command.secondary,.ac-design-system .ac-video-links a {
  border-color: #cfe0d5 !important;
}
.ac-design-system input:focus,.ac-design-system select:focus,.ac-design-system textarea:focus {
  border-color: var(--ac-brand) !important;
  outline: 3px solid rgba(52, 115, 95, .16) !important;
}
.ac-design-system .pill.active,.ac-design-system .tab.active,.ac-design-system .ac-path-tabs button[aria-pressed=true],
.ac-design-system .quiz-option:has(input:checked),.ac-design-system .ac-segment button[aria-selected=true] {
  border-color: #b7d4c2 !important;
}
.ac-design-system .ac-ai-launcher {
  background: linear-gradient(145deg, #42dce0, #1698a2) !important;
  border-color: rgba(0, 242, 254, .45) !important;
  color: #08131b !important;
  box-shadow: 0 9px 24px rgba(0, 220, 230, .2) !important;
}
.ac-design-system .ac-ai-launcher:hover { box-shadow: 0 13px 30px rgba(0, 220, 230, .28) !important; }
.ac-design-system .algo-card,.ac-design-system .feature-card,.ac-design-system .roadmap-card,
.ac-design-system .classroom-card,.ac-design-system .company-card,.ac-design-system .plan-card {
  transform-style: preserve-3d;
  backface-visibility: hidden;
  transition: transform 240ms cubic-bezier(.2,.75,.25,1), box-shadow 240ms ease, border-color 180ms ease !important;
}
.ac-design-system .algo-card:hover,.ac-design-system .feature-card:hover,.ac-design-system .roadmap-card:hover,
.ac-design-system .classroom-card:hover,.ac-design-system .company-card:hover,.ac-design-system .plan-card:hover {
  transform: perspective(900px) translateY(-4px) rotateX(.65deg) rotateY(-.45deg) !important;
  border-color: rgba(0, 220, 230, .32) !important;
  box-shadow: 0 18px 36px rgba(0, 0, 0, .32), 0 0 0 1px rgba(0, 220, 230, .06) !important;
}
.ac-design-system .algo-card h3,.ac-design-system .classroom-card h3 { transform: translateZ(5px); }
.ac-design-system .classroom-panel,.ac-design-system .classroom-overall-progress,
.ac-design-system .ai-settings,.ac-design-system .ai-chat,.ac-design-system .ai-animation {
  box-shadow: 0 5px 18px rgba(27, 55, 42, .045) !important;
}
.ac-design-system .ac-lesson-header,.ac-design-system .hero:not(#main),.ac-design-system .cw-hero {
  position: relative;
  isolation: isolate;
}
.ac-design-system .hero:not(#main)::after,.ac-design-system .cw-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: clamp(180px, 30vw, 390px);
  aspect-ratio: 1;
  right: clamp(12px, 8vw, 120px);
  top: 12%;
  border-radius: 50%;
  pointer-events: none;
  background: radial-gradient(circle at 35% 34%, rgba(0,242,254,.13), rgba(79,172,254,.075) 38%, rgba(0,220,230,.025) 68%, transparent 71%);
  filter: blur(2px);
  transform: translate3d(0,0,0);
  animation: ac-orbit-drift 12s ease-in-out infinite alternate;
}
.ac-design-system .ac-reveal { opacity: 0; transform: translate3d(0, 14px, 0); }
.ac-design-system .ac-reveal.ac-revealed { opacity: 1; transform: translate3d(0,0,0); transition: opacity 420ms ease, transform 520ms cubic-bezier(.2,.75,.25,1); }
@keyframes ac-orbit-drift {
  from { transform: translate3d(0,0,0) scale(.98); }
  to { transform: translate3d(10px,-8px,0) scale(1.025); }
}
@media (max-width: 760px) {
  .ac-design-system .hero:not(#main)::after,.ac-design-system .cw-hero::after { right: 2%; top: 16%; opacity: .55; }
  .ac-design-system .algo-card:hover,.ac-design-system .feature-card:hover,.ac-design-system .roadmap-card:hover,
  .ac-design-system .classroom-card:hover,.ac-design-system .company-card:hover,.ac-design-system .plan-card:hover {
    transform: translateY(-2px) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ac-design-system .hero:not(#main)::after,.ac-design-system .cw-hero::after { animation: none !important; }
  .ac-design-system .ac-reveal,.ac-design-system .ac-reveal.ac-revealed { opacity: 1; transform: none; transition: none !important; }
  .ac-design-system .algo-card:hover,.ac-design-system .feature-card:hover,.ac-design-system .roadmap-card:hover,
  .ac-design-system .classroom-card:hover,.ac-design-system .company-card:hover,.ac-design-system .plan-card:hover { transform: none !important; }
}

/* AI workspace: bring every settings, chat, and explanation surface onto the
   same light product canvas while retaining a distinct dark code editor. */
body.ac-design-system .ai-privacy,body.ac-design-system .ai-settings,body.ac-design-system .ai-chat,
body.ac-design-system .ai-animation,body.ac-design-system .ai-template,body.ac-design-system .ai-section-block {
  color:var(--ac-ink) !important;background:var(--ac-paper) !important;border:1px solid var(--ac-line) !important;
  border-radius:var(--ac-radius-md) !important;box-shadow:var(--ac-shadow-sm) !important;
}
body.ac-design-system .ai-privacy{border-left:4px solid var(--ac-brand) !important}
body.ac-design-system .ai-privacy p,body.ac-design-system .ai-settings p,body.ac-design-system .ai-chat-heading p,
body.ac-design-system .ai-animation p,body.ac-design-system .ai-template,body.ac-design-system .ai-section-block>p,
body.ac-design-system .ai-explanation-step p,body.ac-design-system .ai-test-case p{color:var(--ac-muted) !important}
body.ac-design-system .ai-providers a,body.ac-design-system .ai-template summary,body.ac-design-system .ai-section-block h3,
body.ac-design-system .ai-explanation-step h4,body.ac-design-system .ai-test-case h4{color:var(--ac-brand-dark) !important}
body.ac-design-system .ai-consent,body.ac-design-system .ai-welcome,body.ac-design-system .ai-message,
body.ac-design-system .ai-explanation-step,body.ac-design-system .ai-test-case{color:var(--ac-ink-soft) !important;background:var(--ac-paper-muted) !important;border-color:var(--ac-line) !important}
body.ac-design-system .ai-message.user{background:var(--ac-brand-soft) !important;border-color:#cfdaff !important}
body.ac-design-system .ai-consent small,body.ac-design-system .ai-welcome p,body.ac-design-system .ai-setting-status,
body.ac-design-system .ai-remember,body.ac-design-system .ai-remember small{color:var(--ac-muted) !important}
body.ac-design-system .ai-consent input,body.ac-design-system .ai-remember input{accent-color:var(--ac-brand)}
body.ac-design-system .ai-frame,body.ac-design-system .ai-frame-vars .ai-var{color:var(--ac-ink-soft) !important;background:#f5f7fb !important;border-color:var(--ac-line) !important}
body.ac-design-system .ai-frame-status strong,body.ac-design-system .ai-complexity strong,body.ac-design-system .ai-code-line{color:var(--ac-brand-dark) !important}
body.ac-design-system .ai-value{color:var(--ac-ink) !important;background:#fff !important;border-color:var(--ac-line-strong) !important}
body.ac-design-system .ai-value.highlight{color:#075b43 !important;background:#e9f7f0 !important;border-color:#92d0af !important}
body.ac-design-system .ai-code,body.ac-design-system .ai-template pre{color:#e8edf7 !important;background:#172033 !important;border-color:#26344f !important}
body.ac-design-system .ai-code{color:#e8edf7!important;caret-color:#fff;text-shadow:none!important}
body.ac-design-system .ai-code-header{color:var(--ac-ink-soft) !important;background:#f5f7fb !important;border-color:var(--ac-line) !important}
body.ac-design-system .ai-code-tabs{background:#f5f7fb !important;border-color:var(--ac-line) !important}
body.ac-design-system .ai-code-tab{color:var(--ac-ink-soft) !important;background:#fff !important;border-color:var(--ac-line) !important}
body.ac-design-system .ai-code-tab.active,body.ac-design-system .ai-code-tab:hover{color:var(--ac-brand-dark) !important;background:var(--ac-brand-soft) !important;border-color:#bdccfb !important}
body.ac-design-system .ai-video-links a{color:var(--ac-brand-dark) !important;background:var(--ac-brand-soft) !important;border-color:#d3defe !important}
body.ac-design-system .ai-status{color:var(--ac-positive) !important}
body.ac-design-system .ai-status.error{color:var(--ac-danger) !important}

/* Dashboard has a bespoke layout and inline legacy palette. This maps its
   existing components to the shared tokens without changing its behavior. */
body.ac-design-system #performanceDiagnostics,body.ac-design-system .progress-section,
body.ac-design-system .activity-list,body.ac-design-system .trend-panel,body.ac-design-system .difficulty-panel,
body.ac-design-system .performance-panel,body.ac-design-system .leetcode-panel{
  color:var(--ac-ink) !important;background:var(--ac-paper) !important;border-color:var(--ac-line) !important;
  border-radius:var(--ac-radius-md) !important;box-shadow:var(--ac-shadow-sm) !important
}
body.ac-design-system nav{color:var(--ac-ink) !important;background:rgba(255,255,255,.96) !important;border-color:var(--ac-line) !important;box-shadow:var(--ac-shadow-sm) !important}
body.ac-design-system nav.scrolled{background:rgba(255,255,255,.98) !important}
body.ac-design-system .brand,body.ac-design-system .navlinks a,body.ac-design-system .dash-link,
body.ac-design-system .user-info,body.ac-design-system .activity-title{color:var(--ac-ink) !important;text-shadow:none !important}
body.ac-design-system .navlinks a.current,body.ac-design-system .dash-link.current{color:var(--ac-brand-dark) !important}
body.ac-design-system .nav-search{background:#f8fafd !important;border-color:var(--ac-line) !important;color:var(--ac-muted) !important}
body.ac-design-system .nav-search input{color:var(--ac-ink) !important;background:transparent !important}
body.ac-design-system .logout-btn{color:#fff !important;background:var(--ac-brand) !important;border-color:var(--ac-brand) !important}
body.ac-design-system .welcome{color:var(--ac-ink) !important}
body.ac-design-system .subtitle,body.ac-design-system .stat-sub,body.ac-design-system .stat-label,
body.ac-design-system .progress-cat,body.ac-design-system .activity-time,body.ac-design-system .section-tag{color:var(--ac-muted) !important}
body.ac-design-system .stat-value.accent,body.ac-design-system .stat-value.teal,
body.ac-design-system .stat-value.amber,body.ac-design-system .stat-value.purple{color:var(--ac-brand-dark) !important}
body.ac-design-system .progress-bar-bg{background:#e8edf5 !important;box-shadow:none !important}
body.ac-design-system .progress-bar-fill{background:linear-gradient(90deg,var(--ac-brand),var(--ac-aqua)) !important;box-shadow:none !important}
body.ac-design-system .activity-item{border-color:var(--ac-line) !important}
body.ac-design-system .activity-item:hover{background:#f7f9fc !important}
body.ac-design-system .empty-state{color:var(--ac-muted) !important}
body.ac-design-system .tag-sort{color:#087a59 !important;background:#e9f7f0 !important}
body.ac-design-system .tag-array{color:var(--ac-brand-dark) !important;background:var(--ac-brand-soft) !important}
body.ac-design-system .tag-backtrack{color:#6949a7 !important;background:#f3effb !important}
body.ac-design-system .tag-dp{color:#8b5d0c !important;background:#fff5df !important}
body.ac-design-system .btn:not(.btn-primary){color:var(--ac-ink-soft) !important;background:#f5f7fb !important;border-color:var(--ac-line-strong) !important}
body.ac-design-system .btn-primary{color:#fff !important;background:var(--ac-brand) !important;box-shadow:0 3px 8px rgba(49,83,207,.14) !important}
body.ac-design-system .ac-lc-summary{border-color:var(--ac-line) !important}
body.ac-design-system .ac-lc-summary p{color:var(--ac-muted) !important}
body.ac-design-system .ac-lc-summary a{color:var(--ac-brand-dark) !important}
body.ac-design-system .ac-lc-ring{background:conic-gradient(var(--ac-brand) var(--solved-angle),#e4ebe7 0) !important}
body.ac-design-system .ac-lc-ring-inner{color:var(--ac-ink) !important;background:#f6f8f7 !important}
body.ac-design-system .ac-lc-ring small{color:var(--ac-muted) !important}
body.ac-design-system .ac-lc-breakdown progress{accent-color:var(--ac-brand) !important}
body.ac-design-system h1,body.ac-design-system h2,body.ac-design-system h3,body.ac-design-system h4,
body.ac-design-system .welcome,body.ac-design-system .ai-intro h1{font-family:Outfit,"Aptos",ui-sans-serif,system-ui,sans-serif !important}
body.ac-design-system.ac-auth-page .login-card,body.ac-design-system.ac-auth-page .register-card{
  color:var(--ac-ink) !important;background:var(--ac-paper) !important;border:1px solid var(--ac-line) !important;
  border-radius:20px !important;box-shadow:var(--ac-shadow-md) !important
}
body.ac-design-system.ac-auth-page .login-card::before,body.ac-design-system.ac-auth-page .register-card::before{display:none !important}
body.ac-design-system.ac-auth-page .login-card h2,body.ac-design-system.ac-auth-page .register-card h2{color:var(--ac-ink) !important}
body.ac-design-system.ac-auth-page .login-card .sub,body.ac-design-system.ac-auth-page .register-card .sub,
body.ac-design-system.ac-auth-page .login-card label,body.ac-design-system.ac-auth-page .register-card label{color:var(--ac-muted) !important}
body.ac-design-system.ac-auth-page .login-card .brand,body.ac-design-system.ac-auth-page .register-card .brand{color:var(--ac-ink) !important}
body.ac-design-system.ac-auth-page .login-card .brand .mark,body.ac-design-system.ac-auth-page .register-card .brand .mark{background:var(--ac-brand) !important;box-shadow:none !important}
body.ac-design-system.ac-auth-page .login-card .brand .mark::after,body.ac-design-system.ac-auth-page .register-card .brand .mark::after{background:var(--ac-paper) !important}
body.ac-design-system.ac-auth-page .login-card .btn-primary,body.ac-design-system.ac-auth-page .register-card .btn-primary{color:#fff !important;background:var(--ac-brand) !important;border-color:var(--ac-brand) !important;box-shadow:none !important}
body.ac-design-system.ac-auth-page .login-card .google-btn,body.ac-design-system.ac-auth-page .register-card .google-btn{color:var(--ac-ink-soft) !important;background:#f5f7f6 !important;border-color:var(--ac-line-strong) !important}
body.ac-design-system.ac-auth-page .login-card .footer,body.ac-design-system.ac-auth-page .register-card .footer,
body.ac-design-system.ac-auth-page .login-card .divider,body.ac-design-system.ac-auth-page .register-card .divider{color:var(--ac-muted) !important}
body.ac-design-system.ac-auth-page .login-card .footer a,body.ac-design-system.ac-auth-page .register-card .footer a,
body.ac-design-system.ac-auth-page .back-link{color:var(--ac-brand-dark) !important}
body.ac-design-system.ac-auth-page .error-msg{color:var(--ac-danger) !important;background:#fff0f1 !important;border-color:#efc9cd !important}
body.ac-design-system.ac-auth-page .success-msg{color:var(--ac-positive) !important;background:#edf7f1 !important;border-color:#c6e6d2 !important}

/* The class-performance URL is a focused report workspace; keep the page title
   and its report controls, but remove the consumer-facing classroom pitch. */
body.ac-design-system.classroom-performance-view .classroom-intro,
body.ac-design-system.classroom-performance-view .classroom-caveat{display:none !important}
body.ac-design-system.classroom-performance-view .classroom-page{max-width:1500px !important;padding-top:12px !important}
body.ac-design-system.classroom-performance-view .classroom-class-head{align-items:center}
body.ac-design-system.classroom-performance-view .classroom-report-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)) !important;gap:12px !important}
body.ac-design-system.classroom-performance-view .classroom-topic-report-card{min-height:130px;align-content:start;grid-template-columns:minmax(0,1fr) auto !important}
body.ac-design-system.classroom-performance-view .classroom-report-score{display:inline-flex;align-items:center;min-height:38px;padding:7px 12px;border-radius:999px;background:var(--ac-brand-soft);color:var(--ac-brand-dark);font-weight:750;font-variant-numeric:tabular-nums}
body.ac-design-system.classroom-performance-view .classroom-report-drill{margin-top:20px;padding:clamp(18px,2vw,26px) !important}
body.ac-design-system .classroom-performance-link{display:flex;align-items:center;gap:16px;margin:18px 0 6px;padding:20px 22px;color:var(--ac-ink) !important;text-decoration:none;background:linear-gradient(120deg,#edf5f1,#f5f8f6);border:1px solid #d3e2da;border-radius:16px;box-shadow:var(--ac-shadow-sm);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
body.ac-design-system .classroom-performance-link:hover{transform:translateY(-2px);border-color:#b4d0c2;box-shadow:var(--ac-shadow-md)}
body.ac-design-system .classroom-performance-link-icon{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:13px;color:#fff;background:var(--ac-brand);font-size:22px}
body.ac-design-system .classroom-performance-link strong,body.ac-design-system .classroom-performance-link small{display:block}
body.ac-design-system .classroom-performance-link strong{color:var(--ac-ink);font-size:16px}
body.ac-design-system .classroom-performance-link small{margin-top:3px;color:var(--ac-muted);font-size:13px}

/* Final dark-workspace mapping from the supplied Stitch reference. Keep all
   structure and behavior intact; only the shared visual treatment changes. */
body.ac-design-system {
  color-scheme: dark;
  color: #dfe7f2 !important;
  background-color: #090d16 !important;
  background-image: radial-gradient(ellipse at 50% -10%, rgba(0, 220, 230, .085), transparent 45%),
                    radial-gradient(ellipse at 96% 20%, rgba(79, 172, 254, .04), transparent 32%) !important;
}
body.ac-design-system h1,body.ac-design-system h2,body.ac-design-system h3,body.ac-design-system h4,
body.ac-design-system .welcome,body.ac-design-system .ai-intro h1 { color: #f2f5fa !important; }
body.ac-design-system .ac-site-header .ac-shell,body.ac-design-system nav {
  color: #dfe7f2 !important;
  background: rgba(10, 14, 23, .94) !important;
  border-color: rgba(220, 235, 245, .1) !important;
  box-shadow: 0 8px 28px rgba(0, 0, 0, .32) !important;
  backdrop-filter: blur(18px) saturate(1.1) !important;
}
body.ac-design-system .ac-shell-brand,body.ac-design-system .ac-account a,
body.ac-design-system .ac-shell-links a,body.ac-design-system .brand,
body.ac-design-system .navlinks a,body.ac-design-system .dash-link { color: #c8d2e0 !important; }
body.ac-design-system .ac-shell-links a[aria-current=page],body.ac-design-system .navlinks a.current,
body.ac-design-system .dash-link.current { color: #42dce0 !important; border-color: #24c5ce !important; }
body.ac-design-system .ac-global-search input,body.ac-design-system .nav-search,
body.ac-design-system .nav-search input {
  color: #eef3fa !important; background: #141923 !important;
  border-color: rgba(225,235,245,.12) !important;
}
body.ac-design-system .ac-site-header .search-results,body.ac-design-system .search-results {
  color: #dfe7f2 !important; background: #141923 !important; border-color: rgba(225,235,245,.12) !important;
}
body.ac-design-system .ac-site-header .search-results a,body.ac-design-system .search-results a { color: #e8eef7 !important; border-color: rgba(225,235,245,.08) !important; }
body.ac-design-system .ac-site-header .search-results a:hover,body.ac-design-system .search-results a:hover { background: rgba(0,220,230,.1) !important; }
body.ac-design-system :is(.ds-card,.algo-card,.feature-card,.stat-card,.roadmap-card,.plan-card,.card,.panel,
  .concept-card,.notes,.controls,.cw-dash,.classroom-panel,.classroom-card,.classroom-work-item,
  .classroom-metric,.classroom-report-card,.classroom-report-drill,.classroom-ai-report,.classroom-overall-progress,
  .ai-privacy,.ai-settings,.ai-chat,.ai-animation,.ai-template,.ai-section-block,.quiz-card,.quiz-suggestion-group,
  .progress-section,.activity-list,.trend-panel,.difficulty-panel,.performance-panel,.leetcode-panel,
  #performanceDiagnostics,.login-card,.register-card) {
  color: #dfe7f2 !important;
  background: rgba(19, 24, 35, .94) !important;
  border-color: rgba(220, 235, 245, .1) !important;
  box-shadow: 0 8px 26px rgba(0,0,0,.2) !important;
}
body.ac-design-system :is(.algo-card,.feature-card,.roadmap-card,.classroom-card,.company-card,.plan-card):hover {
  border-color: rgba(0,220,230,.34) !important;
  box-shadow: 0 18px 38px rgba(0,0,0,.34),0 0 18px rgba(0,220,230,.06) !important;
}
body.ac-design-system :is(.lead,.sub,.subtitle,.stat-sub,.stat-label,.progress-cat,.activity-time,
  .section-tag,.classroom-muted,.ai-chat-heading p,.ai-welcome p,.ai-privacy p,.ai-settings p,
  .ai-animation p,.ai-section-block>p,.ai-explanation-step p,.ai-test-case p) { color: #aab6c8 !important; }
body.ac-design-system a,body.ac-design-system .algo-card h3,body.ac-design-system .classroom-card h3,
body.ac-design-system .ai-providers a,body.ac-design-system .ai-template summary,
body.ac-design-system .ai-section-block h3,body.ac-design-system .ai-explanation-step h4,
body.ac-design-system .ai-test-case h4,body.ac-design-system .ac-lc-summary a { color: #55d9df !important; }
body.ac-design-system .btn:not(.btn-primary),body.ac-design-system .btn-secondary,body.ac-design-system .btn-ghost,
body.ac-design-system .classroom-button.secondary,body.ac-design-system .ac-command.secondary,
body.ac-design-system .pill,body.ac-design-system .tab,body.ac-design-system .classroom-tabs,
body.ac-design-system .ac-path-tabs button,body.ac-design-system .ac-check button,
body.ac-design-system .quiz-option,body.ac-design-system .classroom-quiz-question label {
  color: #d3dce8 !important; background: #1b2230 !important; border-color: rgba(225,235,245,.12) !important;
}
body.ac-design-system .btn-primary,body.ac-design-system .classroom-button:not(.secondary),
body.ac-design-system .ac-command,body.ac-design-system .logout-btn {
  color: #07151a !important; background: linear-gradient(135deg,#48dce0,#30c5d1) !important;
  border-color: rgba(0,242,254,.45) !important; box-shadow: 0 5px 18px rgba(0,220,230,.14) !important;
}
body.ac-design-system :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea),
body.ac-design-system .ai-frame,body.ac-design-system .ai-frame-vars .ai-var,
body.ac-design-system .ai-consent,body.ac-design-system .ai-welcome,body.ac-design-system .ai-message,
body.ac-design-system .ai-explanation-step,body.ac-design-system .ai-test-case {
  color: #e5ebf4 !important; background: #101620 !important; border-color: rgba(225,235,245,.13) !important;
}
body.ac-design-system input::placeholder,body.ac-design-system textarea::placeholder { color: #8291a6 !important; }
body.ac-design-system input:focus,body.ac-design-system select:focus,body.ac-design-system textarea:focus {
  border-color: #2ccbd4 !important; outline: 3px solid rgba(0,220,230,.18) !important;
}
body.ac-design-system .ai-message.user { color: #e8fcff !important; background: rgba(0,220,230,.12) !important; border-color: rgba(0,220,230,.22) !important; }
body.ac-design-system .ai-frame-status strong,body.ac-design-system .ai-complexity strong,
body.ac-design-system .ai-code-line { color: #54dce2 !important; }
body.ac-design-system .ai-value { color: #eef4fb !important; background: #1b2230 !important; border-color: rgba(225,235,245,.14) !important; }
body.ac-design-system .ai-value.highlight { color: #78edbd !important; background: rgba(16,185,129,.13) !important; border-color: rgba(16,185,129,.34) !important; }
body.ac-design-system .ai-code,body.ac-design-system .ai-template pre,
body.ac-design-system.ac-lesson pre,body.ac-design-system.ac-lesson .code-block,
body.ac-design-system.ac-lesson .code-section pre { color: #e8edf7 !important; background: #090e17 !important; border-color: rgba(225,235,245,.1) !important; }
body.ac-design-system .ai-code-header,body.ac-design-system .ai-code-tabs,
body.ac-design-system .ai-code-tab { color: #c7d2e1 !important; background: #171e2a !important; border-color: rgba(225,235,245,.1) !important; }
body.ac-design-system .ai-code-tab.active,body.ac-design-system .ai-code-tab:hover { color: #55d9df !important; background: rgba(0,220,230,.1) !important; border-color: rgba(0,220,230,.3) !important; }
body.ac-design-system table,body.ac-design-system th,body.ac-design-system td { color: #dbe4ef !important; border-color: rgba(225,235,245,.1) !important; }
body.ac-design-system th { background: #171e2a !important; }
body.ac-design-system .classroom-notice,body.ac-design-system .ac-local-notice { color: #f6d89b !important; background: rgba(245,158,11,.1) !important; border-color: rgba(245,158,11,.34) !important; }
body.ac-design-system .success,body.ac-design-system .classroom-success { color: #62d9a4 !important; }
body.ac-design-system .error,body.ac-design-system .classroom-late { color: #ff8594 !important; }
body.ac-design-system .progress-bar-bg { background: #252d3a !important; }
body.ac-design-system .progress-bar-fill { background: linear-gradient(90deg,#00c9d4,#4facfe) !important; }
body.ac-design-system .activity-item { border-color: rgba(225,235,245,.1) !important; }
body.ac-design-system .activity-item:hover { background: rgba(255,255,255,.035) !important; }
body.ac-design-system .classroom-performance-link { color: #dfe7f2 !important; background: linear-gradient(120deg,#151d2a,#121922) !important; border-color: rgba(0,220,230,.16) !important; }
body.ac-design-system .classroom-performance-link strong { color: #eef4fb !important; }
body.ac-design-system .classroom-performance-link small { color: #aab6c8 !important; }
body.ac-design-system .classroom-performance-link-icon { color: #07151a !important; background: #38d5dc !important; }
body.ac-design-system .ac-lc-ring-inner { color: #eef4fb !important; background: #111722 !important; }
body.ac-design-system .ac-lc-ring { background: conic-gradient(#34d5dc var(--solved-angle),#293240 0) !important; }
body.ac-design-system .ac-reveal { will-change: opacity,transform; }
body.ac-design-system .hero:not(#main)::after,body.ac-design-system .cw-hero::after {
  background: radial-gradient(circle at 35% 34%,rgba(0,242,254,.16),rgba(79,172,254,.08) 38%,rgba(127,108,255,.035) 68%,transparent 71%) !important;
}
/* Fix high-contrast controls and pills on pages whose older local rules use white. */
html body.ac-design-system.ac-home .pill,
html body.ac-design-system.ac-home .filter-pill,
html body.ac-design-system.ac-home .pattern-pill,
html body.ac-design-system.ac-home .diff-pill,
html body.ac-design-system.ac-home .tag-pill,
html body.ac-design-system.ac-home .search-wrap,
html body.ac-design-system.ac-home .search-box {
  color:#dbe5f2!important;background:#171e2a!important;border-color:rgba(225,235,245,.14)!important;
  box-shadow:none!important
}
html body.ac-design-system.ac-home .pill.active,
html body.ac-design-system.ac-home .filter-pill.active,
html body.ac-design-system.ac-home .pattern-pill.active,
html body.ac-design-system.ac-home .diff-pill.active {
  color:#64e5e8!important;background:rgba(0,220,230,.11)!important;border-color:rgba(0,220,230,.42)!important
}
html body.ac-design-system.ac-home .search-wrap input,
html body.ac-design-system.ac-home .search-box input{color:#eef4fb!important;background:#101620!important}
html body.ac-design-system :is(button,a,.algo-card,.feature-card,.company-card,.classroom-card,.plan-card){
  transition:color .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .2s ease,transform .2s cubic-bezier(.2,.75,.25,1)
}
html body.ac-design-system :is(.algo-card,.feature-card,.company-card,.classroom-card,.plan-card):hover{
  transform:translateY(-3px) perspective(900px) rotateX(.35deg);border-color:rgba(0,220,230,.4)!important
}
@media(prefers-reduced-motion:reduce){html body.ac-design-system :is(button,a,.algo-card,.feature-card,.company-card,.classroom-card,.plan-card){transition:none!important}html body.ac-design-system :is(.algo-card,.feature-card,.company-card,.classroom-card,.plan-card):hover{transform:none!important}}

/* Screenshot-matched palette: graphite surfaces, soft green accents, quiet borders. */
html body.ac-design-system{
  --ac-canvas:#111313;--ac-canvas-soft:#151819;--ac-paper:#181b20;--ac-paper-muted:#1c2026;
  --ac-ink:#e7e9ed;--ac-ink-soft:#d4d9dc;--ac-muted:#aab2b0;--ac-line:#2d3435;--ac-line-strong:#3a4542;
  --ac-brand:#68d4a5;--ac-brand-dark:#7ce0b4;--ac-brand-soft:rgba(104,212,165,.12);--ac-aqua:#68d4a5;
  --bg:#111313;--bg2:#151819;--surface:#181b20;--surface2:#1c2026;--surface3:#202427;
  --border:#2d3435;--border2:#3a4542;--text:#e7e9ed;--muted:#aab2b0;--muted2:#8f9a96;
  --accent:#68d4a5;--accent-bg:rgba(104,212,165,.12);--accent-dim:#283b33;--teal:#68d4a5;--green:#68d4a5;
  color:#e7e9ed!important;background-color:#111313!important;
  background-image:radial-gradient(ellipse at 52% -18%,rgba(104,212,165,.065),transparent 48%)!important
}
html body.ac-design-system .ac-site-header .ac-shell,html body.ac-design-system nav{
  color:#e7e9ed!important;background:rgba(22,24,25,.96)!important;border:1px solid #343a3a!important;
  box-shadow:0 12px 34px rgba(0,0,0,.32)!important;backdrop-filter:blur(18px)!important
}
html body.ac-unified.ac-design-system .ac-site-header .ac-shell{color:#e7e9ed!important;background:rgba(22,24,25,.96)!important;border-color:#343a3a!important;box-shadow:0 12px 34px rgba(0,0,0,.32)!important}
html body.ac-design-system :is(.ac-shell-brand,.ac-account a,.ac-shell-links a,.brand,.navlinks a,.dash-link){color:#68d4a5!important}
html body.ac-design-system :is(.ac-shell-links a[aria-current=page],.navlinks a.current,.dash-link.current){color:#a0efc6!important;border-color:#68d4a5!important}
html body.ac-design-system .ac-global-search input,html body.ac-design-system .nav-search{color:#e7e9ed!important;background:#111518!important;border-color:#343b3b!important}
html body.ac-design-system :is(.ds-card,.algo-card,.feature-card,.stat-card,.roadmap-card,.plan-card,.card,.panel,.concept-card,.notes,.controls,.cw-dash,.company-card,.classroom-panel,.classroom-card,.classroom-work-item,.classroom-metric,.classroom-report-card,.classroom-report-drill,.classroom-ai-report,.classroom-overall-progress,.ai-privacy,.ai-settings,.ai-chat,.ai-animation,.ai-template,.ai-section-block,.quiz-card,.quiz-suggestion-group,.progress-section,.activity-list,.trend-panel,.difficulty-panel,.performance-panel,.leetcode-panel,#performanceDiagnostics,.login-card,.register-card){
  color:#e2e6e5!important;background:linear-gradient(145deg,#1b1e24,#141619)!important;border-color:#2e3338!important;border-radius:22px!important;box-shadow:0 12px 28px rgba(0,0,0,.16)!important
}
html body.ac-design-system :is(.algo-card,.feature-card,.company-card,.classroom-card,.plan-card):hover{border-color:rgba(104,212,165,.45)!important;box-shadow:0 20px 42px rgba(0,0,0,.3),0 0 20px rgba(104,212,165,.055)!important}
html body.ac-design-system :is(a,.algo-card h3,.classroom-card h3,.ai-providers a,.ac-lc-summary a){color:#79ddb1!important}
html body.ac-design-system :is(.btn-primary,.classroom-button:not(.secondary),.ac-command,.logout-btn){color:#101714!important;background:linear-gradient(135deg,#72dfb2,#4fc894)!important;border-color:rgba(104,212,165,.5)!important;box-shadow:0 5px 18px rgba(72,196,139,.12)!important}
html body.ac-design-system :is(.btn:not(.btn-primary),.btn-secondary,.btn-ghost,.classroom-button.secondary,.ac-command.secondary,.pill,.tab,.classroom-tabs,.ac-path-tabs button,.ac-check button,.quiz-option,.classroom-quiz-question label){color:#d5dcda!important;background:#202428!important;border-color:#343b3c!important}
html body.ac-design-system :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){color:#e7e9ed!important;background:#111518!important;border-color:#343b3c!important}
html body.ac-design-system :is(input,select,textarea):focus{border-color:#68d4a5!important;outline:3px solid rgba(104,212,165,.16)!important}
html body.ac-design-system :is(.pill.active,.filter-pill.active,.pattern-pill.active,.diff-pill.active){color:#a0efc6!important;background:rgba(104,212,165,.12)!important;border-color:rgba(104,212,165,.46)!important}
html body.ac-design-system table,html body.ac-design-system th,html body.ac-design-system td{color:#dce2df!important;border-color:#303637!important}
html body.ac-design-system th{background:#202428!important}
html body.ac-design-system .progress-bar-bg{background:#303637!important}html body.ac-design-system .progress-bar-fill{background:linear-gradient(90deg,#4fc894,#8ae2b7)!important}
html body.ac-design-system .hero:not(#main)::after,html body.ac-design-system .cw-hero::after{background:radial-gradient(circle at 35% 34%,rgba(104,212,165,.13),rgba(104,212,165,.045) 44%,transparent 70%)!important}
/* Quiz history metrics read as one connected, divided summary strip. */
html body.ac-design-system #historyMetrics{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;overflow:hidden!important;border:1px solid #343b3c!important;border-radius:14px!important;background:#151819!important}
html body.ac-design-system #historyMetrics>div{min-width:0!important;padding:18px 16px!important;border:0!important;border-right:1px solid #343b3c!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
html body.ac-design-system #historyMetrics>div:last-child{border-right:0!important}
html body.ac-design-system #historyMetrics strong{color:#e7e9ed!important}
html body.ac-design-system #historyMetrics span{color:#aab2b0!important}
@media(max-width:640px){html body.ac-design-system #historyMetrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}html body.ac-design-system #historyMetrics>div:nth-child(2){border-right:0!important}html body.ac-design-system #historyMetrics>div:nth-child(-n+2){border-bottom:1px solid #343b3c!important}}
/* Ensure no legacy page wrapper or document canvas leaks a white background. */
html:has(body.ac-design-system),html body.ac-design-system{background-color:#111313!important;background-image:radial-gradient(ellipse at 52% -18%,rgba(104,212,165,.065),transparent 48%)!important}
html body.ac-design-system :is(main,.main-content,.content-container,.content-wrap,.main-container,.site-main,.ac-workspace,#root,#app){background-color:transparent!important;background-image:none!important}
/* Keep the original blue/teal brand; only the canvas and components change. */
html:has(body.ac-design-system),html body.ac-design-system{--ac-canvas:#090d16;--ac-canvas-soft:#0e1420;--ac-paper:#131923;--ac-paper-muted:#171e2a;--ac-ink:#e7edf6;--ac-ink-soft:#d2dce9;--ac-muted:#aab6c8;--ac-line:#293240;--ac-line-strong:#384454;--ac-brand:#42dce0;--ac-brand-dark:#62e3e6;--ac-brand-soft:rgba(0,220,230,.11);--ac-aqua:#42dce0;--bg:#090d16;--bg2:#0e1420;--surface:#131923;--surface2:#171e2a;--border:#293240;--border2:#384454;--text:#e7edf6;--muted:#aab6c8;--accent:#42dce0;--teal:#42dce0;background-color:#090d16!important;background-image:radial-gradient(ellipse at 50% -12%,rgba(0,220,230,.075),transparent 48%)!important;color:#e7edf6!important}
html body.ac-unified.ac-design-system .ac-site-header .ac-shell{color:#e7edf6!important;background:rgba(13,18,29,.96)!important;border-color:rgba(220,235,245,.12)!important}
html body.ac-design-system :is(.ac-shell-brand,.ac-account a,.ac-shell-links a,.brand,.navlinks a,.dash-link){color:#c8d2e0!important}
html body.ac-design-system :is(.ac-shell-links a[aria-current=page],.navlinks a.current,.dash-link.current){color:#62e3e6!important;border-color:#42dce0!important}
html body.ac-design-system :is(.ds-card,.algo-card,.feature-card,.stat-card,.roadmap-card,.plan-card,.card,.panel,.concept-card,.notes,.controls,.cw-dash,.company-card,.classroom-panel,.classroom-card,.classroom-work-item,.classroom-metric,.classroom-report-card,.classroom-report-drill,.classroom-ai-report,.classroom-overall-progress,.ai-privacy,.ai-settings,.ai-chat,.ai-animation,.ai-template,.ai-section-block,.quiz-card,.quiz-suggestion-group,.progress-section,.activity-list,.trend-panel,.difficulty-panel,.performance-panel,.leetcode-panel,#performanceDiagnostics,.login-card,.register-card){color:#dfe7f2!important;background:linear-gradient(145deg,#171e2a,#111722)!important;border-color:rgba(220,235,245,.12)!important}
html body.ac-design-system :is(a,.algo-card h3,.classroom-card h3,.ai-providers a,.ac-lc-summary a){color:#55d9df!important}
html body.ac-design-system :is(.btn-primary,.classroom-button:not(.secondary),.ac-command,.logout-btn){color:#07151a!important;background:linear-gradient(135deg,#48dce0,#30c5d1)!important;border-color:rgba(0,220,230,.4)!important}
html body.ac-design-system :is(.btn:not(.btn-primary),.btn-secondary,.btn-ghost,.classroom-button.secondary,.ac-command.secondary,.pill,.tab,.classroom-tabs,.ac-path-tabs button,.ac-check button,.quiz-option,.classroom-quiz-question label){color:#d3dce8!important;background:#1b2230!important;border-color:rgba(225,235,245,.12)!important}
html body.ac-design-system :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){color:#e5ebf4!important;background:#101620!important;border-color:rgba(225,235,245,.13)!important}
html body.ac-design-system :is(.pill.active,.filter-pill.active,.pattern-pill.active,.diff-pill.active){color:#64e5e8!important;background:rgba(0,220,230,.11)!important;border-color:rgba(0,220,230,.42)!important}
html body.ac-design-system #historyMetrics{background:#111722!important;border-color:#303a49!important}
html body.ac-design-system #historyMetrics>div{border-color:#303a49!important}
html body.ac-unified.ac-design-system :is(.nav-search,.search-wrap,.search-row,.search-bar,.search-container){color:#dfe7f2!important;background:#111722!important;border-color:#303a49!important;box-shadow:none!important}
html body.ac-unified.ac-design-system .nav-search input{color:#e7edf6!important;background:transparent!important}
