/* ===================================
   GO-SHOWTIME 共通スタイル
   =================================== */

/* カラー変数・フォント */
:root {
  /* フォント（確定仕様） */
  --font-heading: 'UD デジタル 教科書体 NK-R', 'UDDigiKyokashoN-R', 'ヒラギノ丸ゴ ProN', 'Hiragino Maru Gothic ProN', sans-serif;
  --font-body: 'Meiryo', 'メイリオ', 'Hiragino Sans', 'ヒラギノ角ゴシック', sans-serif;
  
  /* カラー（確定仕様） */
  --color-primary: #F5841F;
  --color-primary-dark: #d97318;
  --color-primary-light: #ff9a3c;
  --color-bg: #fffaf0;
  --color-text: #1a1a1a;
  --color-text-light: #666;
  --color-white: #ffffff;
  --color-success: #2d8a56;
  --color-error: #c53030;
  --color-seat-highlight: #c96a0a;
  
  /* シャドウ */
  --shadow-soft: 0 2px 20px rgba(0, 0, 0, 0.08);
  --shadow-medium: 0 4px 30px rgba(0, 0, 0, 0.12);
  --shadow-strong: 0 8px 40px rgba(0, 0, 0, 0.16);
  
  /* 角丸 */
  --radius-small: 8px;
  --radius-medium: 16px;
  --radius-large: 24px;
}

/* リセット */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html, body {
  height: 100%;
  width: 100%;
  overflow: hidden;
}

body {
  font-family: var(--font-body);
  background: var(--color-bg);
  color: var(--color-text);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ===================================
   共通ボタン
   =================================== */
.btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 16px 32px;
  font-family: var(--font-body);
  font-size: 1.1em;
  font-weight: 600;
  border: none;
  border-radius: var(--radius-medium);
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.btn:active {
  transform: scale(0.98);
}

/* オレンジグラデーションボタン */
.btn-primary {
  color: var(--color-white);
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  box-shadow: 0 4px 20px rgba(245, 132, 31, 0.3);
}

.btn-secondary {
  color: var(--color-text);
  background: var(--color-bg);
  box-shadow: var(--shadow-soft);
}

.btn-print {
  color: var(--color-white);
  background: linear-gradient(135deg, var(--color-primary-light) 0%, var(--color-primary) 100%);
  box-shadow: 0 4px 20px rgba(245, 132, 31, 0.25);
}

/* ===================================
   共通アニメーション
   =================================== */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes fadeInDown {
  from { opacity: 0; transform: translateY(-20px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

@keyframes gentleFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

/* ===================================
   ユーティリティ
   =================================== */
.hidden {
  display: none !important;
}

.text-center {
  text-align: center;
}
