/* Xcrea — メインスタイルシート */

/* === リセット・基本設定 === */
* { margin: 0; padding: 0; box-sizing: border-box; }
html, body, #root { height: 100%; width: 100%; overflow: hidden; }

/* === フォント === */
* { font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
select { font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
input { font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
textarea { font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }

/* === 選択・スクロールバー === */
::selection { background: rgba(0,172,193,0.15); }
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.12); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(0,0,0,0.2); }

/* === アニメーション === */
@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
@keyframes xcrea-spin { to { transform: rotate(360deg); } }
@keyframes xcrea-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes pulse { 0%, 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(239,68,68,0.4); } 50% { opacity: 0.8; box-shadow: 0 0 0 4px rgba(239,68,68,0.15); } }
@keyframes shimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }

/* === スプラッシュ画面 === */
#xcrea-splash { display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:#ffffff;color:#334155;font-family:'Inter',system-ui,sans-serif;animation:xcrea-fade 0.3s ease; }
#xcrea-splash .logo { margin-bottom:24px; }
#xcrea-splash .logo img { width:100px;height:auto; }
#xcrea-splash .spinner { width:28px;height:28px;border:3px solid #e2e8f0;border-top-color:#0ea5e9;border-radius:50%;animation:xcrea-spin 0.7s linear infinite; }
#xcrea-splash .msg { margin-top:16px;font-size:13px;color:#94a3b8; }
