
/* Solon design tokens. Legacy aliases keep the existing dialogs and section picker consistent. */
:root {
  --text: #1d1d1f; --text-2: #424245; --text-3: #6e6e73; --text-4: #8e8e93;
  --bg: #ffffff; --fill: #f2f2f5; --fill-2: rgba(0,0,0,0.045);
  --hairline: rgba(0,0,0,0.07); --grid-line: #f0f0f3;
  --accent-text: #0066cc; --accent-tint: rgba(0,113,227,0.10); --imsg-blue: #0a7cff;
  --ok: #248a3d; --ok-dot: #34c759; --warn: #b25000; --warn-dot: #ff9500; --bad: #d70015;
  --glass-bg: rgba(248,248,250,0.74); --glass-filter: blur(28px) saturate(180%);
  --ease-panel: cubic-bezier(0.32,0.72,0,1);
  --ease-spring: cubic-bezier(0.34,1.56,0.64,1);
  --ease-appear: cubic-bezier(0.34,1.4,0.64,1);
  --chat-width: 720px;
  --gray-50:  #f9f9f9;
  --gray-100: #f2f4f4;
  --gray-150: #ebeeef;
  --gray-200: #e4e9ea;
  --gray-300: #dde4e5;
  --gray-500: #adb3b4;
  --gray-700: #757c7d;
  --gray-800: #5a6061;
  --gray-850: #2d3435;
  --gray-900: #1a1f20;
  --gray-950: #0c0f0f;
  --bg-app: #ececf0;
  --bg-shell: #f5f5f7;
  --bg-panel: #ffffff;
  --bg-panel-2: #f2f2f5;
  --bg-elevated: #e9e9ed;
  --bg-hover: #f2f2f5;
  --border-subtle: rgba(0,0,0,0.045);
  --border-default: rgba(0,0,0,0.07);
  --border-strong: rgba(0,0,0,0.14);
  --text-primary: #1d1d1f;
  --text-secondary: #424245;
  --text-tertiary: #69696e;
  --text-muted: #69696e;
  --text-disabled: #8e8e93;
  --overlay-soft:    rgba(45, 52, 53, 0.04);
  --overlay-medium:  rgba(45, 52, 53, 0.08);
  --overlay-strong:  rgba(45, 52, 53, 0.14);
  --accent: #0071e3;
  --accent-soft: rgba(0,113,227,0.10);
  --accent-medium: rgba(0,113,227,0.20);
  --accent-strong: #0066cc;
  --accent-container: #e5f0ff;
  --on-accent-container: #0066cc;
  --success: #248a3d;
  --success-soft: rgba(46, 125, 82, 0.10);
  --warning: #b25000;
  --warning-soft: rgba(180, 83, 9, 0.10);
  --danger: #d70015;
  --danger-soft:  rgba(159, 64, 61, 0.10);
  --rmp-positive:    #16a34a;
  --rmp-mixed:       #eab308;
  --rmp-mixed-text:  #1a1300;
  --rmp-negative:    #dc2626;
  --cat-core:           #3b82f6;
  --cat-core-soft:      rgba(59, 130, 246, 0.10);
  --cat-practical:      #10b981;
  --cat-practical-soft: rgba(16, 185, 129, 0.10);
  --cat-career:         #f59e0b;
  --cat-career-soft:    rgba(245, 158, 11, 0.12);
  --cat-advanced:       #8b5cf6;
  --cat-advanced-soft:  rgba(139, 92, 246, 0.10);
  --cat-elective:       #6b7280;
  --cat-elective-soft:  rgba(107, 114, 128, 0.10);
  --course-1: #424245;  --course-1s: #f2f2f5;
  --course-2: #424245;  --course-2s: #f2f2f5;
  --course-3: #424245;  --course-3s: #f2f2f5;
  --course-4: #424245;  --course-4s: #f2f2f5;
  --course-5: #424245;  --course-5s: #f2f2f5;
  --course-6: #424245;  --course-6s: #f2f2f5;
  --space-1:  4px;
  --space-2:  8px;
  --space-3:  12px;
  --space-4:  16px;
  --space-5:  20px;
  --space-6:  24px;
  --space-8:  32px;
  --space-10: 40px;
  --space-12: 48px;
  --font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", "PingFang SC", "Noto Sans SC", sans-serif;
  --font-mono: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
  --text-title:    32px;
  --text-h1:       18px;
  --text-h2:       16px;
  --text-body:     16px;
  --text-secondary-size: 14px;
  --text-label:    13px;
  --text-micro:    12px;
  --weight-regular:  400;
  --weight-medium:   500;
  --weight-semibold: 600;
  --leading-tight:   1.2;
  --leading-snug:    1.3;
  --leading-normal:  1.5;
  --leading-relaxed: 1.6;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 10px;
  --shadow-soft:  0 1px 2px rgba(45, 52, 53, 0.05);
  --shadow-panel: 0 8px 24px rgba(45, 52, 53, 0.12);
  --transition: 160ms ease;
  --transition-slow: 240ms ease;
  --sched-default: min(820px, calc(100vw - 560px));
  --sched-min: 0px;
  --sched-max: 820px;
}
