/**
 * Akilaco design tokens — see docs/design.md (Precision Rich IT)
 */
:root {
	--akilaco-ink: #1d1d1f;
	--akilaco-text: #1e293b;
	--akilaco-text-muted: #64748b;
	--akilaco-surface: #ffffff;
	--akilaco-parchment: #f5f5f7;
	--akilaco-surface-subtle: #f8fafc;
	--akilaco-slate-ink: #1e293b;
	--akilaco-border: #e2e8f0;
	--akilaco-input-border: #94a3b8;
	--akilaco-input-border-hover: #64748b;
	--akilaco-input-bg: #ffffff;
	--akilaco-input-focus-ring: rgba(0, 102, 204, 0.18);
	--akilaco-table-border: #cbd5e1;
	--akilaco-hairline: #e0e0e0;
	--akilaco-link: #0066cc;
	--akilaco-primary: #0066cc;
	--akilaco-primary-dark: #0055aa;
	--akilaco-primary-darker: #1e3a5f;
	--akilaco-primary-on-dark: #2997ff;
	--akilaco-on-emphasis: #ffffff;
	--akilaco-accent: #0ea5e9;
	--akilaco-radius-sm: 8px;
	--akilaco-radius: 12px;
	--akilaco-radius-lg: 16px;
	--akilaco-radius-pill: 9999px;
	--akilaco-radius-story: 28px;
	--akilaco-container-editorial: 1120px;
	--akilaco-container: 1280px;
	--akilaco-shadow-sm: 0 4px 16px rgba(15, 23, 42, 0.06);
	--akilaco-shadow-md: 0 8px 32px rgba(30, 64, 175, 0.12);
	--akilaco-shadow-media: 0 16px 48px rgba(15, 23, 42, 0.12);
	--akilaco-gradient-hero: linear-gradient(135deg, #2f3d52 0%, #3d5168 55%, #5c6f85 100%);
	--akilaco-gradient-cta: linear-gradient(135deg, #334155 0%, #475569 55%, #64748b 100%);
	--akilaco-gradient-stats: linear-gradient(160deg, #1e293b 0%, #334155 55%, #3d5168 100%);
	--akilaco-gradient-contact: linear-gradient(145deg, #1e293b 0%, #334155 60%, #3d5168 100%);
	--akilaco-masthead-stuck: rgba(255, 255, 255, 0.97);
	--akilaco-on-dark-muted: rgba(226, 232, 240, 0.88);
	--akilaco-on-dark-border: rgba(255, 255, 255, 0.08);
	--akilaco-alert-bg: #fff8e6;
	--akilaco-alert-border: #f0d78c;
	--akilaco-alert-fg: #1e293b;
	--akilaco-notice-success-bg: #e6f4ea;
	--akilaco-notice-success-fg: #1e7e34;
	--akilaco-notice-error-bg: #fdecea;
	--akilaco-notice-error-fg: #b42318;
	--akilaco-font-sans: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", system-ui, -apple-system, sans-serif;
	color-scheme: light;
}

/* Restrained slate dark — docs/design.md §4.1.1 */
html[data-theme="dark"],
html.akilaco-theme-dark {
	--akilaco-ink: #f1f5f9;
	--akilaco-text: #e2e8f0;
	--akilaco-text-muted: #94a3b8;
	--akilaco-surface: #0f172a;
	--akilaco-parchment: #1e293b;
	--akilaco-surface-subtle: #1e293b;
	--akilaco-slate-ink: #334155;
	--akilaco-border: #334155;
	--akilaco-input-border: #94a3b8;
	--akilaco-input-border-hover: #cbd5e1;
	--akilaco-input-bg: #0f172a;
	--akilaco-input-focus-ring: rgba(41, 151, 255, 0.22);
	--akilaco-hairline: #334155;
	--akilaco-link: #2997ff;
	--akilaco-primary: #2997ff;
	--akilaco-primary-dark: #1d7fd6;
	--akilaco-primary-darker: #1e3a5f;
	--akilaco-primary-on-dark: #2997ff;
	--akilaco-on-emphasis: #ffffff;
	--akilaco-accent: #38bdf8;
	--akilaco-shadow-sm: 0 4px 16px rgba(0, 0, 0, 0.28);
	--akilaco-shadow-md: 0 8px 32px rgba(0, 0, 0, 0.35);
	--akilaco-shadow-media: 0 16px 48px rgba(0, 0, 0, 0.4);
	--akilaco-gradient-hero: linear-gradient(135deg, #334155 0%, #475569 55%, #64748b 100%);
	--akilaco-gradient-cta: linear-gradient(135deg, #334155 0%, #475569 55%, #5c6f85 100%);
	--akilaco-gradient-stats: linear-gradient(160deg, #334155 0%, #3d5168 55%, #475569 100%);
	--akilaco-gradient-contact: linear-gradient(145deg, #334155 0%, #3d5168 60%, #475569 100%);
	--akilaco-masthead-stuck: rgba(15, 23, 42, 0.92);
	--akilaco-on-dark-muted: rgba(226, 232, 240, 0.88);
	--akilaco-on-dark-border: rgba(255, 255, 255, 0.12);
	--akilaco-alert-bg: #1e293b;
	--akilaco-alert-border: #334155;
	--akilaco-alert-fg: #e2e8f0;
	--akilaco-notice-success-bg: rgba(34, 197, 94, 0.15);
	--akilaco-notice-success-fg: #86efac;
	--akilaco-notice-error-bg: rgba(239, 68, 68, 0.15);
	--akilaco-notice-error-fg: #fca5a5;
	color-scheme: dark;
}
