/* ===========================================================
   アスカ文明 — 手書き風ラフ枠線 (人が雑に引いた線のイメージ)
   asuka2026.css の後に読み込む。不規則 border-radius で
   定規を使わず手で引いたような枠にする。
   =========================================================== */

/* ===========================================================
   シンプル3色パレット (紙 / 黒インク / ピンク)
   キラキラ(虹・グラデ・発光・装飾アニメ)を排除
   =========================================================== */
:root{
  /* 既存の色変数を3色に集約 */
  --c-bg:#f6f3ea;        /* 紙 */
  --c-pink:#e8456e;      /* 唯一のアクセント (落ち着いたピンク) */
  --c-yellow:#e8456e;    /* → アクセントに統合 */
  --c-blue:#222;         /* → 黒インクに統合 */
  --c-purple:#222;       /* → 黒インクに統合 */
  --c-dark:#222;
  --c-text:#222;
  --c-line:#222;
  --grad-rainbow:#e8456e;   /* 虹 → 単色 */
}

/* 装飾的な浮遊背景を非表示 */
.asuka-bg{ display:none !important; }

/* ロゴ・見出しの虹グラデ文字 → 単色 (発光も除去) */
.asuka-gheader .brand span,
.warpzone h2,
.panel .fortune{
  background:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-fill-color:currentColor !important;
  color:var(--c-dark) !important;
  animation:none !important;
  filter:none !important;
}
.warpzone h2{ color:var(--c-pink) !important; }

/* タイトルの白/黒ドロップシャドウ除去 */
.asuka-title h1{ filter:none !important; }

/* 文字の発光(うっすら黄色等の text-shadow)を除去 */
.asuka-title h1, .asuka-page h1, .asuka-page h2, .asuka-page h3,
.asuka-panel h2, .todayChara h3, .todayChara .stars,
.asuka-h1, .asuka-h2{
  text-shadow:none !important;
}

/* ティッカー: 紙地に黒文字 (読みやすく・虹なし) */
.asuka-ticker{ background:#f6f3ea !important; color:#222 !important;
  border-bottom:2px solid #222 !important; }
.asuka-ticker .t b{ color:var(--c-pink) !important; }

/* パネル見出しの色を統一 */
.asuka-panel h2{ background:var(--c-dark) !important; color:#fff !important; }
.asuka-panel h2.pink{ background:var(--c-pink) !important; color:#fff !important; }

/* ボタンの色バリエーションを統一 (黄/青/紫 → アクセント or 黒) */
.asuka-btn.yellow,.asuka-btn.blue{ background:var(--c-pink) !important; color:#fff !important; }
.asuka-btn.dark{ background:var(--c-dark) !important; color:#fff !important; }

/* ワープゾーン: 虹アニメ背景 → 紙＋枠 */
.warpzone{ background:#fff !important; border:3px solid var(--c-dark) !important;
  box-shadow:6px 6px 0 var(--c-dark) !important; animation:none !important; }
.warpzone .inner{ background:#fff !important; }

/* home の3カラム panel を単色化 */
.panel, .panel.hakase, .panel.art, .panel.kuji{
  background:#fff !important; transform:none !important;
}
.panel .fortune{ color:var(--c-pink) !important; }

/* 本日のキャラ: 黒地ゴールド発光 → 紙＋枠のシンプル箱 */
.todayChara{ background:#fff !important; color:var(--c-dark) !important;
  border:3px solid var(--c-dark) !important; box-shadow:6px 6px 0 var(--c-dark) !important;
  transform:none !important; }
.todayChara::before{ display:none !important; }
.todayChara .label{ background:var(--c-pink) !important; color:#fff !important; }
.todayChara h3, .todayChara .stars, .todayChara .stat b{ color:var(--c-pink) !important; }
.todayChara img{ filter:none !important; border-color:var(--c-dark) !important; }
.todayChara .stat{ border-color:var(--c-dark) !important; background:#f6f3ea !important; color:var(--c-dark) !important; }

/* インライン・グラデ背景のカード (ゲーム等) を紙＋枠に */
.asuka-grid a.asuka-panel[style]{
  background:#fff !important; color:var(--c-dark) !important;
  border:3px solid var(--c-dark) !important;
}
.asuka-grid a.asuka-panel[style] h2{ color:var(--c-dark) !important; background:none !important; }

/* インラインのカラー発光 (drop-shadow / glow) を一掃 */
[style*="drop-shadow"]{ filter:none !important; }
.quest-stage, .race-stage{ box-shadow:6px 6px 0 var(--c-dark) !important; }

:root{
  --sk-1: 16px 30px 22px 34px / 34px 20px 28px 18px;
  --sk-2: 30px 14px 28px 18px / 18px 32px 16px 30px;
  --sk-3: 22px 36px 14px 28px / 28px 16px 34px 20px;
  --sk-4: 34px 18px 30px 14px / 16px 30px 20px 32px;
  --font-hand: "Mochiy Pop One","Sawarabi Gothic","Hiragino Maru Gothic ProN","ヒラギノ丸ゴ ProN",sans-serif;
  --font-hand-bold: "Mochiy Pop One","Sawarabi Gothic","Hiragino Maru Gothic ProN",sans-serif;
}

/* ===== 手書き風フォント ===== */
body.asuka{
  font-family: var(--font-hand) !important;
  letter-spacing: .01em;
}
/* 見出し・タイトル・ボタンは少し勢いのある手書き */
body.asuka h1, body.asuka h2, body.asuka h3,
.asuka-title h1, .asuka-h1, .asuka-btn, .asuka-program-btn,
.warpzone h2, .panel h3, .todayChara h3{
  font-family: var(--font-hand-bold) !important;
}
/* フォーム要素も継承 */
body.asuka input, body.asuka textarea, body.asuka select, body.asuka button{
  font-family: var(--font-hand) !important;
}
/* ゲームのHUD等、数字主体のモノスペースは可読性優先で据え置き */
.race-hud, .race-hud *, .quest-wrap .quest-help,
#raceCanvas, #questCanvas{
  font-family: 'Courier New', monospace !important;
}

/* 枠を持つ主要コンポーネントをラフな角に */
.asuka-panel,
.asuka-charaCard,
.infobar,
.warpzone,
.warpzone .inner,
.panel,
.todayChara,
.cornerCard,
.illust-article,
.quest-stage,
.race-stage,
.storyboard .sb-cap,
.storyboard .sb-hero img,
.asuka-card,
.asuka-breadcrumb{
  border-radius: var(--sk-1) !important;
}

/* グリッド内のカードは隣同士で形を変えて、手描きのばらつきを出す */
.asuka-grid > *:nth-child(2n){ border-radius: var(--sk-2) !important; }
.asuka-grid > *:nth-child(3n){ border-radius: var(--sk-3) !important; }
.asuka-grid > *:nth-child(4n){ border-radius: var(--sk-4) !important; }
.asuka-panel:nth-of-type(2n){ border-radius: var(--sk-3) !important; }
.asuka-panel:nth-of-type(3n){ border-radius: var(--sk-2) !important; }

/* ボタン・小物はやや控えめのラフ角 */
.asuka-btn,
.asuka-tag,
.asuka-chip,
.asuka-pill,
button.asuka-btn{
  border-radius: 13px 20px 15px 22px / 20px 14px 21px 15px !important;
}
.asuka-btn:nth-of-type(2n){ border-radius: 20px 13px 21px 15px / 14px 22px 15px 20px !important; }

/* キャラ画像など丸/角丸の画像も少しいびつに */
.asuka-charaCard img,
.cornerCard img{
  border-radius: 14px 22px 16px 20px / 20px 15px 22px 14px !important;
}

/* ヘッダーの「プログラミング教室」ボタンも手描き角に */
.asuka-program-btn{
  border-radius: 18px 26px 16px 24px / 24px 16px 26px 18px !important;
}

/* ごく僅かに傾けて「雑に置いた」風 (大きなパネルのみ・レイアウトは崩さない) */
.warpzone{ transform: rotate(-0.5deg); }
.todayChara{ transform: rotate(0.3deg); }

@media (prefers-reduced-motion: reduce){
  .warpzone, .todayChara{ transform: none; }
}
