:root{--bg: #f7f8fa;--surface: #ffffff;--surface-2: #eef1f5;--text: #1a2230;--text-muted: #51607a;--border: #d6dbe4;--border-strong: #7e8799;--accent: #2f5fe0;--accent-contrast: #ffffff;--accent-weak: #e6edff;--danger: #c0362c;--c-customer: #177049;--c-competitor: #8a4d1d;--c-company: #2f5fe0;--c-strength: #177049;--c-weakness: #8a4d1d;--c-opportunity: #2f5fe0;--c-threat: #c0362c;--radius: 10px;--shadow: 0 1px 3px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .06);--focus: 0 0 0 3px rgba(47, 95, 224, .45);color-scheme:light}:root[data-theme=dark]{--bg: #0f141c;--surface: #18202b;--surface-2: #212c3a;--text: #eef2f8;--text-muted: #a7b4c7;--border: #2f3b4c;--border-strong: #6c7789;--accent: #7aa0ff;--accent-contrast: #0f141c;--accent-weak: #243152;--danger: #ff8a80;--c-customer: #5fcfa0;--c-competitor: #e0a36a;--c-company: #7aa0ff;--c-strength: #5fcfa0;--c-weakness: #e0a36a;--c-opportunity: #7aa0ff;--c-threat: #ff8a80;--shadow: 0 1px 3px rgba(0, 0, 0, .4);--focus: 0 0 0 3px rgba(122, 160, 255, .55);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Hiragino Sans,Noto Sans JP,Noto Sans KR,Noto Sans SC,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}button{font:inherit;cursor:pointer}input,textarea,select{font:inherit;color:inherit;border-color:var(--border-strong)!important}:focus-visible{outline:none;box-shadow:var(--focus);border-radius:6px}a{color:var(--accent)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:fixed;top:8px;left:8px;width:auto;height:auto;margin:0;padding:8px 14px;clip:auto;overflow:visible;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);z-index:200}
