
:root {
  --s360-color-bg: #f6f7f7;
  --s360-color-surface: #ffffff;
  --s360-color-surface-muted: #fbfbfc;
  --s360-color-border: #dcdcde;
  --s360-color-border-soft: #e7e7e9;
  --s360-color-text: #1d2327;
  --s360-color-text-muted: #646970;
  --s360-color-text-soft: #50575e;
  --s360-color-primary: #2271b1;
  --s360-color-primary-hover: #135e96;
  --s360-color-success: #00a32a;
  --s360-color-warning: #b26200;
  --s360-color-danger: #b32d2e;

  --s360-space-2xs: 4px;
  --s360-space-xs: 8px;
  --s360-space-sm: 12px;
  --s360-space-md: 16px;
  --s360-space-lg: 24px;
  --s360-space-xl: 32px;

  --s360-radius-sm: 6px;
  --s360-radius-md: 8px;
  --s360-radius-lg: 10px;

  --s360-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04);
  --s360-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.06);

  --s360-font-size-xs: 12px;
  --s360-font-size-sm: 13px;
  --s360-font-size-md: 14px;
  --s360-font-size-lg: 16px;
  --s360-font-size-xl: 20px;
  --s360-font-weight-medium: 500;
  --s360-font-weight-semibold: 600;
  --s360-font-weight-bold: 700;

  --s360-line-height: 1.5;

  --s360-color-bg-main: var(--s360-color-bg);

  --s360-color-white: #ffffff;
  --s360-color-black-soft: #0f172a;
  --s360-color-surface-legacy: #fbfdff;
  --s360-color-surface-code: #f5f5f5;
  --s360-color-surface-warning-soft: #fff8e5;
  --s360-color-surface-warning-alt: #fffaf0;
  --s360-color-surface-info-soft: #eef6ff;
  --s360-color-surface-info-alt: #f5f9ff;
  --s360-color-surface-success-soft: #edfaef;
  --s360-color-surface-success-alt: #e6f9f0;
  --s360-color-surface-danger-soft: #fde8e8;
  --s360-color-surface-accent-soft: #e6f0ff;
  --s360-color-border-legacy: #dbe3ea;
  --s360-color-border-legacy-soft: #d7dee6;
  --s360-color-border-legacy-muted: #e3e8ee;
  --s360-color-border-legacy-divider: #e6ebf0;
  --s360-color-text-legacy-muted: #64748b;
  --s360-color-success-deep: #0a7a2f;
  --s360-color-success-chip: #047857;
  --s360-color-warning-deep: #8a5a00;
  --s360-color-warning-chip: #c2410c;
  --s360-color-info-chip: #0b57d0;
  --s360-color-info-link: #175cd3;
  --s360-color-bg-subtle: #f8fafc;
  --s360-color-bg-soft: #f8fbff;
  --s360-color-surface-raised: #ffffff;
  --s360-color-surface-alt: #f7f9fc;
  --s360-color-surface-contrast: #f9fafb;
  --s360-color-border-strong: #cbd5e1;
  --s360-color-border-muted: #e2e8f0;
  --s360-color-border-subtle: #e5e7eb;
  --s360-color-border-soft-alt: #dbe3ee;
  --s360-color-border-accent-soft: #dbeafe;
  --s360-color-border-accent: #93c5fd;
  --s360-color-border-info: #bfdbfe;
  --s360-color-border-warning: #fde68a;
  --s360-color-border-warning-strong: #fcd34d;
  --s360-color-border-success: #bbf7d0;
  --s360-color-border-success-strong: #86efac;
  --s360-color-border-danger: #fecaca;
  --s360-color-border-danger-strong: #fca5a5;

  --s360-color-border-divider: #eef2f7;
  --s360-color-text-subtle: #5b6b7f;
  --s360-color-info-strong: #1e3a8a;
  --s360-color-warning-strong: #92400e;
  --s360-color-warning-tint: #fef3c7;
  --s360-color-success-strong: #166534;
  --s360-color-success-tint: #dcfce7;
  --s360-color-danger-strong: #b91c1c;
  --s360-color-danger-ink: #991b1b;
  --s360-color-danger-tint: #fee2e2;
  --s360-color-text-heading: #0f172a;
  --s360-color-text-strong: #111827;
  --s360-color-text-body: #374151;
  --s360-color-text-secondary: #475569;
  --s360-color-text-tertiary: #64748b;
  --s360-color-text-quaternary: #6b7280;
  --s360-color-text-placeholder: #94a3b8;
  --s360-color-text-label: #334155;
  --s360-color-primary-strong: #1d4ed8;
  --s360-color-primary-hover-strong: #3730a3;
  --s360-color-primary-soft: #eef2ff;
  --s360-color-primary-soft-border: #c7d2fe;
  --s360-color-primary-chip: #4338ca;
  --s360-color-info-bg: #eff6ff;
  --s360-color-info-surface: #f8fbff;
  --s360-color-info-surface-alt: #f9fbff;
  --s360-color-warning-bg: #fffbeb;
  --s360-color-warning-surface: #fffdf4;
  --s360-color-success-bg: #f0fdf4;
  --s360-color-success-surface: #ecfdf5;
  --s360-color-danger-bg: #fef2f2;
  --s360-color-neutral-bg: #e5e7eb;
  --s360-color-neutral-surface: #fcfdff;
  --s360-color-neutral-border: #d1d5db;
  --s360-shadow-lg: 0 10px 26px rgba(15, 23, 42, 0.04);
  --s360-shadow-xl: 0 10px 28px rgba(15, 23, 42, 0.05);
  --s360-shadow-soft: 0 8px 24px rgba(15, 23, 42, 0.04);
  --s360-shadow-floating: 0 6px 18px rgba(15, 23, 42, 0.08);
  --s360-shadow-accent: 0 12px 30px rgba(37, 99, 235, 0.06);
  --s360-shadow-inset-sm: inset 0 1px 2px rgba(15, 23, 42, 0.04);
  --s360-shadow-inset-highlight: inset 0 1px 0 rgba(255, 255, 255, 0.6);
  --s360-radius-xl: 12px;
  --s360-radius-2xl: 14px;
  --s360-radius-3xl: 16px;
  --s360-space-2xl: 48px;
  --s360-control-height-sm: 36px;
  --s360-control-height-md: 40px;
  --s360-control-height-lg: 44px;
  --s360-control-padding-x: 12px;
  --s360-control-padding-y: 10px;
  --s360-control-radius: var(--s360-radius-lg);
  --s360-control-border-width: 1px;
  --s360-form-field-gap: 6px;
  --s360-form-row-gap: var(--s360-space-md);
  --s360-form-stack-gap: var(--s360-space-sm);
  --s360-form-help-gap: 4px;
  --s360-form-actions-gap: 10px;
  --s360-form-section-gap: var(--s360-space-lg);
  --s360-color-input-bg: var(--s360-color-surface-raised);
  --s360-color-input-border: var(--s360-color-border-strong);
  --s360-color-input-border-hover: var(--s360-color-border-accent);
  --s360-color-input-border-focus: var(--s360-color-primary-strong);
  --s360-color-input-text: var(--s360-color-text-heading);
  --s360-color-input-placeholder: var(--s360-color-text-placeholder);
  --s360-color-input-disabled-bg: var(--s360-color-surface-contrast);
  --s360-color-input-disabled-border: var(--s360-color-border-muted);
  --s360-color-input-disabled-text: var(--s360-color-text-tertiary);
  --s360-color-form-label: var(--s360-color-text-label);
  --s360-color-form-help: var(--s360-color-text-tertiary);
  --s360-color-form-error: var(--s360-color-danger-ink);
  --s360-color-form-error-bg: var(--s360-color-danger-bg);
  --s360-color-form-error-border: var(--s360-color-border-danger);
  --s360-color-form-read-bg: var(--s360-color-bg-subtle);
  --s360-color-form-read-border: var(--s360-color-border-muted);
  --s360-shadow-input: var(--s360-shadow-inset-sm);
  --s360-shadow-input-focus: var(--s360-focus-ring);
  --s360-focus-ring: 0 0 0 3px rgba(59, 130, 246, 0.12);
  --s360-layout-content-max: 1600px;
  --s360-layout-content-max-narrow: 1360px;
  --s360-layout-page-gap: var(--s360-space-lg);
  --s360-layout-section-gap: var(--s360-space-md);
  --s360-layout-panel-gap: var(--s360-space-md);
  --s360-layout-cluster-gap: var(--s360-space-sm);
  --s360-layout-grid-gap: var(--s360-space-md);
  --s360-layout-grid-gap-lg: var(--s360-space-lg);
  --s360-layout-sidebar-gap: var(--s360-space-lg);
  --s360-layout-density-compact: 10px;
  --s360-layout-density-comfy: 14px;
  --s360-component-card-padding: 20px;
  --s360-component-card-padding-compact: 16px;
  --s360-component-card-padding-tight: 14px;
  --s360-component-card-header-gap: 14px;
  --s360-component-card-body-gap: 12px;
  --s360-component-card-footer-gap: 14px;
  --s360-component-card-footer-padding-top: 14px;
  --s360-component-button-gap: 6px;
  --s360-component-button-padding-y: 8px;
  --s360-component-button-padding-x: 12px;
  --s360-component-button-padding-x-lg: 14px;
  --s360-component-badge-padding-y: 5px;
  --s360-component-badge-padding-x: 10px;
  --s360-component-chip-padding-y: 4px;
  --s360-component-chip-padding-x: 10px;
  --s360-component-alert-padding-y: 12px;
  --s360-component-alert-padding-x: 14px;
  --s360-component-empty-state-padding: 18px;
  --s360-component-stat-padding: 14px;
  --s360-component-workflow-padding-y: 14px;
  --s360-component-workflow-padding-x: 16px;
  --s360-component-toolbar-gap: 8px;
  --s360-component-inline-meta-gap: 10px;
  --s360-component-pill-radius: 999px;
  --s360-component-button-shadow-hover: var(--s360-shadow-floating);
  --s360-component-button-shadow-focus: var(--s360-focus-ring);
  --s360-component-card-border: 1px solid var(--s360-color-border);
  --s360-component-divider: 1px solid var(--s360-color-border-divider);
  --s360-profile-shell-bg: linear-gradient(180deg,var(--s360-color-bg-soft) 0%,var(--s360-color-surface-raised) 18%,var(--s360-color-surface-raised) 100%);
  --s360-profile-shell-accent-border: var(--s360-color-border-accent-soft);
  --s360-profile-shell-shadow: var(--s360-shadow-soft);
  --s360-profile-header-avatar-size: 60px;
  --s360-profile-header-name-size: 24px;
  --s360-profile-header-subtitle-size: 14px;
  --s360-profile-header-meta-min-width: 220px;
  --s360-profile-header-gap: var(--s360-space-lg);
  --s360-profile-header-actions-gap: var(--s360-space-xs);
  --s360-profile-overview-gap: var(--s360-space-md);
  --s360-profile-section-gap: var(--s360-space-lg);
  --s360-profile-stat-min-height: 108px;
  --s360-profile-stat-padding: var(--s360-space-md);
  --s360-profile-tabs-padding: var(--s360-space-lg);
  --s360-profile-tabs-nav-shadow: var(--s360-shadow-soft);
  --s360-profile-tabs-surface: linear-gradient(180deg,var(--s360-color-surface-raised) 0%,var(--s360-color-bg-subtle) 100%);
  --s360-profile-tabs-border: var(--s360-color-border-soft-alt);
  --s360-profile-section-card-padding: var(--s360-component-card-padding);
  --s360-profile-section-card-border: var(--s360-color-border-muted);
  --s360-profile-section-card-bg: var(--s360-color-surface-raised);
  --s360-profile-inline-meta-bg: var(--s360-color-bg-subtle);
  --s360-profile-inline-meta-border: var(--s360-color-border-subtle);
  --s360-profile-inline-meta-text: var(--s360-color-text-secondary);
  --s360-profile-panel-divider: var(--s360-color-border-divider);


  --s360-admissions-hero-bg: linear-gradient(180deg, var(--s360-color-surface-raised) 0%, var(--s360-color-bg-soft) 100%);
  --s360-admissions-hero-border: var(--s360-color-border-soft-alt);
  --s360-admissions-panel-bg: var(--s360-color-surface-raised);
  --s360-admissions-panel-muted-bg: var(--s360-color-bg-subtle);
  --s360-admissions-panel-border: var(--s360-color-border-muted);
  --s360-admissions-panel-shadow: var(--s360-shadow-soft);
  --s360-admissions-chip-bg: var(--s360-color-bg-subtle);
  --s360-admissions-chip-text: var(--s360-color-text-secondary);
  --s360-admissions-chip-border: var(--s360-color-border-subtle);
  --s360-admissions-status-strip-bg: linear-gradient(180deg, var(--s360-color-info-surface-alt) 0%, var(--s360-color-surface-raised) 100%);
  --s360-admissions-status-strip-border: var(--s360-color-border-accent-soft);
  --s360-builder-panel-bg: var(--s360-color-surface-raised);
  --s360-builder-panel-muted-bg: var(--s360-color-bg-subtle);
  --s360-builder-panel-border: var(--s360-color-border-muted);
  --s360-builder-panel-shadow: var(--s360-shadow-soft);
  --s360-builder-toolbar-bg: var(--s360-color-bg-soft);
  --s360-builder-toolbar-border: var(--s360-color-border-accent-soft);
  --s360-builder-dropzone-bg: var(--s360-color-info-surface);
  --s360-builder-dropzone-border: var(--s360-color-border-accent);
  --s360-builder-empty-bg: var(--s360-color-surface-contrast);
  --s360-builder-empty-border: var(--s360-color-border-muted);
  --s360-builder-tab-bg: var(--s360-color-surface-raised);
  --s360-builder-tab-active-bg: var(--s360-color-primary-soft);
  --s360-builder-tab-border: var(--s360-color-border-muted);
  --s360-builder-tab-active-border: var(--s360-color-primary-soft-border);
  --s360-builder-tab-active-text: var(--s360-color-primary-chip);
  --s360-builder-modal-backdrop: rgba(15, 23, 42, 0.45);
  --s360-builder-modal-header-bg: linear-gradient(180deg, var(--s360-color-surface-raised) 0%, var(--s360-color-bg-soft) 100%);
  --s360-builder-modal-shadow: 0 24px 60px rgba(15, 23, 42, 0.22);
  --s360-builder-field-meta: var(--s360-color-text-tertiary);
  --s360-builder-section-gap: var(--s360-space-md);
  --s360-builder-field-gap: var(--s360-space-xs);
  --s360-builder-card-padding: var(--s360-component-card-padding-compact);
  --s360-builder-toolbar-padding: var(--s360-space-sm);
  --s360-admissions-workspace-gap: var(--s360-space-lg);

  --s360-secondary-panel-bg: var(--s360-color-surface-raised);
  --s360-secondary-panel-muted-bg: var(--s360-color-bg-subtle);
  --s360-secondary-panel-border: var(--s360-color-border-muted);
  --s360-secondary-panel-shadow: var(--s360-shadow-soft);
  --s360-secondary-toolbar-bg: linear-gradient(180deg, var(--s360-color-surface-raised) 0%, var(--s360-color-bg-soft) 100%);
  --s360-secondary-toolbar-border: var(--s360-color-border-soft-alt);
  --s360-secondary-tabs-bg: linear-gradient(180deg, var(--s360-color-surface-raised) 0%, var(--s360-color-bg-subtle) 100%);
  --s360-secondary-tabs-border: var(--s360-color-border-soft-alt);
  --s360-secondary-chip-bg: var(--s360-color-neutral-bg);
  --s360-secondary-chip-border: var(--s360-color-border-subtle);
  --s360-secondary-chip-text: var(--s360-color-text-secondary);
  --s360-secondary-code-bg: var(--s360-color-bg-subtle);
  --s360-secondary-code-border: var(--s360-color-border-muted);
  --s360-secondary-callout-bg: var(--s360-color-info-surface);
  --s360-secondary-callout-border: var(--s360-color-border-accent-soft);
  --s360-secondary-callout-text: var(--s360-color-text-secondary);
  --s360-secondary-list-divider: var(--s360-color-border-divider);
  --s360-secondary-stat-bg: linear-gradient(180deg, var(--s360-color-surface-raised) 0%, var(--s360-color-bg-subtle) 100%);
  --s360-secondary-stat-border: var(--s360-color-border-muted);
  --s360-secondary-page-gap: var(--s360-space-lg);
  --s360-secondary-section-gap: var(--s360-space-md);

  --s360-table-toolbar-padding-y: 12px;
  --s360-table-toolbar-padding-x: 14px;
  --s360-table-toolbar-gap: 12px;
  --s360-table-meta-gap-x: 10px;
  --s360-table-meta-gap-y: 8px;
  --s360-table-cell-padding-y: 12px;
  --s360-table-cell-padding-x: 14px;
  --s360-table-cell-padding-compact-y: 10px;
  --s360-table-cell-padding-compact-x: 12px;
  --s360-table-row-min-height: 44px;
  --s360-table-search-min-width: 320px;
  --s360-table-toolbar-search-max-width: 420px;
  --s360-table-actions-gap: 8px;
  --s360-table-filter-gap: 8px;
  --s360-table-border-width: 1px;
  --s360-table-radius: var(--s360-radius-3xl);
  --s360-table-header-bg: var(--s360-color-bg-subtle);
  --s360-table-header-text: var(--s360-color-text-label);
  --s360-table-row-hover-bg: var(--s360-color-bg-soft);
  --s360-table-row-striped-bg: var(--s360-color-neutral-surface);
  --s360-table-toolbar-bg: linear-gradient(180deg,var(--s360-color-surface-raised) 0%,var(--s360-color-bg-subtle) 100%);
  --s360-table-shadow: var(--s360-shadow-soft);
  --s360-table-tablenav-bg: var(--s360-color-surface-alt);
  --s360-table-tablenav-border: var(--s360-color-border-muted);
  --s360-table-empty-padding-y: 16px;
  --s360-table-empty-padding-x: 14px;
  --s360-table-empty-text: var(--s360-color-text-tertiary);


  --s360-motion-fast: 0.12s;
  --s360-motion-base: 0.18s;
  --s360-motion-slow: 0.24s;
  --s360-ease-standard: ease;
  --s360-ease-emphasized: cubic-bezier(.2,.8,.2,1);
  --s360-interactive-outline-offset: 2px;
  --s360-color-focus-outline: var(--s360-color-primary-strong);
  --s360-color-link: var(--s360-color-primary-strong);
  --s360-color-link-hover: var(--s360-color-primary-hover-strong);
  --s360-color-selection-bg: var(--s360-color-primary-soft-border);
  --s360-color-selection-text: var(--s360-color-text-heading);
  --s360-color-disabled-surface: var(--s360-color-surface-contrast);
  --s360-color-disabled-border: var(--s360-color-border-muted);
  --s360-color-disabled-text: var(--s360-color-text-tertiary);
  --s360-color-readonly-surface: var(--s360-color-bg-subtle);
  --s360-color-readonly-border: var(--s360-color-border-subtle);
  --s360-color-loading-surface: var(--s360-color-neutral-surface);
  --s360-color-loading-stripe: var(--s360-color-border-subtle);
  --s360-color-overlay-scrim: rgba(15, 23, 42, 0.12);
  --s360-touch-target-min: 36px;
  --s360-content-max-readable: 72ch;
  --s360-overflow-wrap: anywhere;
}

