/* ============================================================
   EA管理サイト — 新しい見た目（2026-10-10 デザイン：運用ホーム）
   eva.css（旧サイトの土台）のあとに読み込み、body.migi で上書きする。
   色：背景 薄いグレー ／ 黒の帯 ／ 利益 緑 ／ 損失 赤 ／ 差し色 青〜水色〜ミント
   ============================================================ */
body.migi{
  --bg-page:#f3f5f7;
  --card:#ffffff;
  --ink:#16191f;
  --sub:#6b7280;
  --faint:#9aa1ab;
  --line:#e7ebef;
  --line-2:#d9dee4;
  --tint:#f6f8fa;
  --plus:#14b874;
  --plus-bg:#2fd68b;
  --minus:#ef3b4c;
  --blue:#1f6fe5;
  --blue-dk:#1556b8;
  --cyan:#2bc9e8;
  --mint:#3fe0b0;
  --yellow:#ffb400;
  --radius:18px;
  --num:'Inter','Noto Sans JP',sans-serif;

  /* 旧スタイルが使う色の変数も、新しい配色に差し替える（ポップアップや入力フォームに効く） */
  --bg:#ffffff;
  --panel:#ffffff;
  --panel-line:var(--line);
  --fg:var(--ink);
  --muted:var(--sub);
  --org:var(--blue);
  --pur:var(--blue);
  --pur-lock:var(--blue-dk);
  --amb:#b97f00;
  --blu:#1f6fe5;
  --grn:var(--plus);
  --red:var(--minus);
  --grid:transparent;
  --u1:#1f6fe5;
  --u2:#14b874;
  --u3:#17a6c9;
  --mono:'Inter','Noto Sans JP',sans-serif;
  --mincho:'Noto Sans JP',sans-serif;

  background:var(--bg-page);
  color:var(--ink);
  font-family:'Noto Sans JP','Inter',sans-serif;
  font-weight:500;
  line-height:1.7;
  cursor:auto;
}
body.migi *{ cursor:revert; }
body.migi a{ color:var(--blue); }
body.migi .eva-main{ max-width:none; width:100%; margin:0; padding:0; }
body.migi .wrap{ width:100%; max-width:1480px; margin:0 auto; padding-inline:32px; }
body.migi .m{ color:var(--minus); }
body.migi .p{ color:var(--plus); }

/* ---------- ヘッダー ---------- */
.site-head{ background:rgba(255,255,255,.92); backdrop-filter:saturate(1.4) blur(8px); border-bottom:1px solid var(--line); position:sticky; top:0; z-index:50; }
.site-head-in{ display:flex; align-items:center; gap:40px; min-height:66px; padding-inline:36px; max-width:1560px; margin:0 auto; }
.site-logo{ display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--ink) !important; flex:none; }
.site-logo-mark{ width:42px; height:34px; }
.site-logo-txt{ font-weight:900; font-size:1.35rem; letter-spacing:.02em; }
.site-logo-tag{ background:#e3f3ff; color:#3a86c8; font-size:.68rem; font-weight:700; padding:.15em .8em; border-radius:999px; margin-left:4px; }
.site-tabs{ display:flex; align-items:stretch; gap:6px; align-self:stretch; }
.site-tabs a{ display:flex; align-items:center; padding:0 14px; color:var(--ink) !important; font-weight:700; font-size:.95rem; text-decoration:none; position:relative; }
.site-tabs a:hover{ color:var(--blue) !important; }
.site-tabs a.is-on::after{ content:""; position:absolute; left:8px; right:8px; bottom:10px; height:3px; border-radius:3px; background:var(--ink); }
.site-me{ margin-left:auto; position:relative; border:0; background:none; padding:0; border-radius:50%; }
.site-me summary{ list-style:none; border:0; padding:0; outline:0; width:44px; height:44px; border-radius:50%; background:var(--ink); color:#fff; display:grid; place-items:center;
  font-family:var(--num); font-weight:700; font-size:.92rem; cursor:pointer; user-select:none; }
.site-me summary::-webkit-details-marker{ display:none; }
.site-me summary::before, .site-me summary::after{ content:none !important; display:none !important; }
.site-me summary:focus-visible{ outline:2px solid var(--blue); outline-offset:2px; }
.site-me-menu{ position:absolute; right:0; top:calc(100% + 8px); background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:0 12px 32px rgba(16,24,40,.12); padding:6px; min-width:160px; z-index:60; }
.site-me-menu a{ display:block; padding:.55em .9em; border-radius:8px; color:var(--ink) !important; font-weight:700; font-size:.9rem; text-decoration:none; }
.site-me-menu a:hover{ background:var(--tint); }
.site-nav{ display:flex; align-items:center; gap:22px; margin-left:auto; }
.site-nav a{ font-weight:700; font-size:.9rem; text-decoration:none; color:var(--ink) !important; }
.site-nav .site-nav-btn{ background:var(--ink); color:#fff !important; padding:.55em 1.2em; border-radius:999px; }

/* ---------- ホームの土台 ---------- */
.home{ display:flex; flex-direction:column; gap:18px; padding-bottom:18px; }
.home:first-of-type{ padding-top:0; }
.home-hello{ margin:26px 0 0; font-size:1.75rem; font-weight:900; letter-spacing:.02em; line-height:1.4; }
.home-notice{ padding-top:18px; }
.home.home-page{ padding-top:26px; } /* .home:first-of-type の 0 に負けないよう、2クラスで指定 */
.home-exp{ margin:-6px 4px 0; font-size:.8rem; color:var(--sub); text-align:right; }
.home-exp b{ color:var(--ink); }
.card{ background:var(--card); border-radius:var(--radius); padding:22px 24px; box-shadow:0 1px 2px rgba(16,24,40,.04); }
.card-head{ display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; }
.card-ttl{ margin:0; font-size:1.35rem; font-weight:900; letter-spacing:.02em; line-height:1.3; }
.money{ font-family:var(--num); font-weight:600; white-space:nowrap; font-variant-numeric:tabular-nums; }
.money small{ font-size:.62em; font-weight:600; margin-left:.1em; }
.money.is-plus{ color:var(--plus); }
.money.is-minus{ color:var(--minus); }
.money.is-none{ color:var(--faint); }

/* ---------- 今月の確定損益（黒い帯） ---------- */
.hero{ position:relative; overflow:hidden; background:#0b0c0e; color:#fff; border-radius:var(--radius); min-height:190px; display:flex; align-items:center; }
.hero-txt{ position:relative; z-index:2; padding:22px 28px; }
.hero-k{ margin:0; font-size:1rem; font-weight:700; }
.hero-v{ margin:0; line-height:1; }
.hero-v .money{ font-size:clamp(3rem, 6.4vw, 5rem); font-weight:600; letter-spacing:-.02em; color:#fff; }
.hero-v .money small{ font-size:.36em; margin-left:.25em; }
.hero-sub{ display:flex; align-items:center; gap:28px; margin-top:14px; flex-wrap:wrap; }
.hero-today{ margin:0; font-size:1rem; font-weight:700; display:flex; align-items:baseline; gap:12px; }
.hero-today .money{ font-size:1.75rem; color:#fff; }
.hero-run{ display:inline-flex; align-items:center; gap:10px; background:var(--plus-bg); color:#0b2e1f; font-weight:900; font-size:1rem; padding:.35em 1.1em; border-radius:999px; }
.hero-run i{ width:12px; height:12px; border-radius:50%; background:#0d7a4c; }
.hero-run.is-idle{ background:#2a2d33; color:#d5d9df; }
.hero-run.is-idle i{ background:#8a9099; }
/* 右側の飾り（ガラスのような丸い板が重なる） */
.hero-art{ position:absolute; inset:0 0 0 auto; width:min(48%, 700px); pointer-events:none; }
.hero-art b{ position:absolute; display:block; border-radius:50%; box-shadow:-18px 22px 40px rgba(0,0,0,.45), inset 10px 14px 22px rgba(255,255,255,.35), inset -16px -18px 30px rgba(0,0,0,.18); }
.hero-art b:nth-child(1){ width:420px; height:330px; right:-90px; top:-120px; background:linear-gradient(150deg,#38b6ff 0%,#1f6fe5 55%,#164fc6 100%); transform:rotate(-28deg); }
.hero-art b:nth-child(2){ width:330px; height:230px; right:120px; top:-70px; background:linear-gradient(140deg,#7fe9ff 0%,#2bc9e8 50%,#1488e0 100%); transform:rotate(-34deg); }
.hero-art b:nth-child(3){ width:300px; height:190px; right:260px; top:40px; background:linear-gradient(150deg,#8dffd6 0%,#3fe0b0 45%,#17b8a6 100%); transform:rotate(-24deg); }
.hero-art b:nth-child(4){ width:380px; height:250px; right:40px; bottom:-150px; background:linear-gradient(160deg,#4fd0ff 0%,#2a8cf0 60%,#1b5fd6 100%); transform:rotate(-20deg); }
.hero-art b:nth-child(5){ width:300px; height:200px; right:300px; bottom:-150px; background:linear-gradient(150deg,#6cf3c8 0%,#2fd6a0 50%,#1aa9b8 100%); transform:rotate(-14deg); }

body.migi .btn-main{ display:block; width:100%; background:var(--ink); color:#fff !important; border:0; border-radius:999px; padding:.75em 1em;
  font:inherit; font-weight:900; font-size:1.02rem; text-align:center; text-decoration:none; cursor:pointer; }
body.migi .btn-main:hover{ background:#000; }
body.migi .btn-main.is-off{ background:#e3e7ec; color:var(--sub) !important; cursor:default; }

/* ---------- お知らせ ---------- */
.notice{ margin:0 0 10px; padding:.8em 1em; border-radius:12px; font-weight:700; font-size:.92rem; border:1px solid; }
.notice.is-ok{ background:#e9fbf3; border-color:#a8ebcd; color:#0b6b43; }
.notice.is-ng{ background:#fff0f2; border-color:#f5b8c1; color:#b3203a; }

/* ---------- 利用中のEA（表） ---------- */
.et{ display:grid; grid-template-columns:minmax(150px,1.3fr) minmax(90px,1fr) minmax(100px,1.1fr) minmax(120px,1.3fr) minmax(420px,2fr); }
.et-row{ display:contents; }
.et-row > span{ display:flex; align-items:center; gap:10px; padding:9px 12px; border-bottom:1px solid var(--line); min-width:0; }
.et-row:last-child > span{ border-bottom:0; }
.et-hd > span{ font-size:.82rem; color:var(--sub); font-weight:700; padding-block:4px 10px; }
.et-num{ justify-content:flex-start; }
.et-num .money{ font-size:1.45rem; font-weight:500; }
.et-op{ justify-content:center; flex-wrap:wrap; }
.et-hd .et-op{ justify-content:center; }
.et-name{ font-family:var(--num); font-weight:600; font-size:1.2rem; white-space:nowrap; }
.et-pair{ font-family:var(--num); font-weight:500; font-size:1rem; color:#4b5260; letter-spacing:.02em; }
.et-st{ font-weight:700; font-size:1rem; color:var(--sub); }
.et-st i{ width:12px; height:12px; border-radius:50%; background:#9aa1ab; flex:none; }
.et-st.is-on{ color:var(--plus); }
.et-st.is-on i{ background:var(--plus); }
.et-st.is-none i{ background:transparent; border:2px solid var(--line-2); }
.et-st.is-locked, .et-st.is-sealed, .et-st.is-full{ color:var(--faint); }
.et-st.is-locked i, .et-st.is-sealed i, .et-st.is-full i{ background:var(--line-2); }
.op-btn{ background:#fff; color:var(--ink); border:1px solid var(--line-2); border-radius:999px; padding:.55em 2.2em; font:inherit; font-weight:700; font-size:.88rem; cursor:pointer; white-space:nowrap; box-shadow:0 1px 2px rgba(16,24,40,.06); }
.op-btn:hover{ background:var(--tint); }
.op-btn.is-fill{ background:var(--ink); color:#fff; border-color:var(--ink); padding-inline:1.6em; }
.op-btn.is-fill:hover{ background:#000; }
.op-btn.is-ghost{ color:var(--sub); }
body.migi .op-btn.is-fill{ color:#fff !important; text-decoration:none; }
.op-btn.is-off{ background:#eef1f4; border-color:#eef1f4; color:var(--faint); cursor:default; box-shadow:none; padding-inline:1.2em; }
.et-op{ gap:8px; flex-wrap:nowrap !important; }
.et-op .op-btn{ padding-inline:1.3em; }
@media (max-width:1280px){ .et-op{ flex-wrap:wrap !important; } }   /* 幅が足りないときはボタンを折り返す */
body.migi .et .op-btn.unit-config{ color:var(--ink); }   /* 旧スタイルのオレンジ文字を消す */
.op-form{ margin:0; }
.ea-empty{ color:var(--sub); margin:0; }

/* ---------- 損益カレンダー ---------- */
.hc-head{ display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:16px; margin-bottom:12px; }
.hc-month{ display:flex; align-items:center; gap:56px; }
.hc-month b{ font-family:var(--num); font-size:1.45rem; font-weight:600; letter-spacing:.02em; white-space:nowrap; }
.hc-arrow{ width:44px; height:44px; border-radius:50%; background:#fff; border:1px solid var(--line-2); display:grid; place-items:center; cursor:pointer; padding:0; }
.hc-arrow svg{ width:20px; height:20px; fill:none; stroke:var(--ink); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.hc-arrow:hover{ background:var(--tint); }
.hc-arrow:disabled{ opacity:.35; cursor:default; }
body.migi .cal-tabs{ display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; margin:0; padding:0; border:0; }
body.migi .cal-tab{ background:#fff; color:var(--ink); border:1px solid var(--line-2); border-radius:999px; padding:.45em 1.4em; font:inherit; font-family:var(--num); font-weight:600; font-size:.85rem; cursor:pointer; box-shadow:none; white-space:nowrap; }
body.migi .cal-tab:hover{ border-color:var(--ink); color:var(--ink); }
body.migi .cal-tab.is-active{ background:var(--ink); border-color:var(--ink); color:#fff; }
#dashCalBody.is-loading{ opacity:.5; transition:opacity .2s; }
.hc-grid{ display:grid; grid-template-columns:repeat(7, minmax(0, 1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.hc-w{ text-align:center; font-size:.85rem; font-weight:700; color:#4b5260; padding:2px 0 8px; border-right:1px solid transparent; }
.hc-grid .hc-w{ border:0; }
.hc-grid{ border:0; }
.hc-d{ min-height:46px; border-top:1px solid var(--line); border-left:1px solid var(--line); padding:6px 8px 6px 18px; position:relative; display:flex; align-items:center; justify-content:center; }
.hc-d:nth-child(7n){ border-right:1px solid var(--line); }
.hc-grid > .hc-d:nth-last-child(-n+7){ border-bottom:1px solid var(--line); }
.hc-d i{ position:absolute; left:18px; top:6px; font-style:normal; font-family:var(--num); font-weight:600; font-size:.8rem; color:#4b5260; }
.hc-d.is-today i{ color:#fff; background:var(--ink); border-radius:999px; padding:0 .45em; left:12px; }
.hc-amt{ font-family:var(--num); font-weight:500; font-size:1.1rem; padding-top:12px; white-space:nowrap; }
.hc-amt small{ font-size:.7em; margin-left:.05em; }
.hc-amt.is-plus{ color:var(--plus); }
.hc-amt.is-minus{ color:var(--minus); }
.hc-foot{ display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:14px; flex-wrap:wrap; }
.hc-legend{ margin:0; display:flex; gap:26px; font-size:.85rem; color:#4b5260; font-weight:700; }
.hc-legend span{ display:inline-flex; align-items:center; gap:8px; }
.hc-legend span::before{ content:""; width:14px; height:14px; border-radius:50%; background:var(--plus); }
.hc-legend span.is-minus::before{ background:#f66b78; }
.hc-total{ margin:0; display:flex; align-items:center; gap:18px; font-weight:700; font-size:.95rem; border-left:1px solid var(--line-2); padding-left:34px; }
.hc-total b{ font-family:var(--num); font-weight:600; font-size:1.9rem; line-height:1; color:var(--ink); }
.hc-total b.is-plus{ color:var(--plus); }
.hc-total b.is-minus{ color:var(--minus); }
.hc-total b small{ font-size:.6em; margin-left:.08em; }

/* ============================================================
   ポップアップ全体（ライセンス申請・設定・成績・EAの入れ方・VPSの用意・バックテスト・運用成績）
   旧スタイル（eva.css の .eacfg-* / .resm-* / .bm-* / .board-*）を、ホームと同じ見た目に塗り替える
   ============================================================ */
body.migi .eacfg-overlay, body.migi .resm-overlay{ background:rgba(16,20,28,.5); backdrop-filter:blur(3px); }
body.migi .eacfg-panel, body.migi .resm-panel{
  --unit-color:var(--ink);
  background:#fff; background-image:none; color:var(--ink); border:0; border-radius:20px;
  box-shadow:0 24px 60px rgba(16,24,40,.25); max-height:calc(100dvh - 2rem); }
body.migi .eacfg-panel::before, body.migi .eacfg-panel::after, body.migi .resm-panel::before, body.migi .resm-panel::after{ content:none; display:none; }
body.migi .eacfg-panel.is-spec{ width:min(560px, 100%); }
body.migi .eacfg-panel.is-manual{ width:min(760px, 100%); }
body.migi #eaConfig .eacfg-panel{ width:min(520px, 100%); }
body.migi #eaConfig .eacfg-body{ grid-template-columns:1fr; }
body.migi #eaConfig .eacfg-spec{ display:none; }   /* パラメータ設定だけを出す（成績は「成績を見る」で） */
/* 見出しの段 */
body.migi .eacfg-bar, body.migi .resm-bar{ background:#fff; border:0; border-bottom:1px solid var(--line); padding:18px 22px; gap:12px; position:sticky; top:0; z-index:2; }
body.migi .eacfg-tag{ display:none; }
body.migi .eacfg-title, body.migi .resm-title{ color:var(--ink); font-family:inherit; font-weight:900; font-size:1.15rem; letter-spacing:.01em; text-shadow:none; }
body.migi .eacfg-acc, body.migi .resm-acc{ margin-left:auto; color:var(--sub); font-family:var(--num); font-size:.85rem; }
body.migi .eacfg-x, body.migi .resm-x{ margin-left:auto; width:38px; height:38px; border-radius:50%; border:1px solid var(--line-2); background:#fff; color:var(--ink); font-size:1.15rem; line-height:1; }
body.migi .eacfg-acc + .eacfg-x, body.migi .resm-acc + .resm-x{ margin-left:8px; }
body.migi .eacfg-x:hover, body.migi .resm-x:hover{ background:var(--tint); }
/* 中身 */
body.migi .eacfg-body{ padding:20px 22px 22px; gap:22px; grid-template-columns:1fr 1.15fr; }
body.migi .eacfg-body.is-spec-body{ grid-template-columns:1fr; }
body.migi .eacfg-visual{ display:none; }
body.migi .resm-content{ padding:20px 22px 22px; }
body.migi .eacfg-col-hd{ font-family:inherit; font-size:1rem; font-weight:900; letter-spacing:0; color:var(--ink); border:0; padding:0; margin:0 0 12px; text-transform:none; background:none; }
body.migi .eacfg-col-hd::before, body.migi .eacfg-col-hd::after{ content:none; display:none; }
body.migi .eacfg-catch{ color:var(--sub); font-family:inherit; font-size:.9rem; }
body.migi .eacfg-stats{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
body.migi .eacfg-stat{ display:flex; flex-direction:column; align-items:flex-start; gap:2px; background:var(--tint); border:0; border-radius:14px; padding:12px 14px; box-shadow:none; }
body.migi .eacfg-stat::before, body.migi .eacfg-stat::after{ content:none; display:none; }
body.migi .eacfg-stat dt{ font-family:inherit; font-size:.76rem; font-weight:700; letter-spacing:0; color:var(--sub); }
body.migi .eacfg-stat dd{ font-family:var(--num); font-size:1.35rem; font-weight:700; color:var(--ink); text-shadow:none; }
body.migi .eacfg-spec-note{ font-size:.76rem; color:var(--sub); }
body.migi .mini-btn{ font-family:inherit; font-size:.85rem; font-weight:700; padding:.55em 1.2em; border:1px solid var(--line-2); border-radius:999px; background:#fff; color:var(--ink); }
body.migi .mini-btn:hover{ background:var(--tint); color:var(--ink); border-color:var(--line-2); }
/* 入力 */
body.migi .eacfg-row{ gap:6px; margin-bottom:14px; }
body.migi .eacfg-row > label{ font-size:.86rem; font-weight:700; color:var(--ink); letter-spacing:0; }
body.migi .eacfg-row > label small{ color:var(--sub); font-weight:500; }
body.migi .eacfg-row select, body.migi .eacfg-row input[type=number], body.migi .eacfg-row input[type=text]{
  width:100%; padding:.7em .9em; border:1px solid var(--line-2); border-radius:12px; background:#fff; color:var(--ink); font:inherit; font-family:var(--num); font-size:1rem; }
body.migi .eacfg-row select:focus, body.migi .eacfg-row input:focus{ outline:none; border-color:var(--ink); box-shadow:0 0 0 3px rgba(22,25,31,.08); }
body.migi .eacfg-dow{ gap:8px; }
body.migi .eacfg-dow label, body.migi .eacfg-gg label{ background:#fff; border:1px solid var(--line-2); border-radius:999px; padding:.4em .9em; color:var(--ink); font-weight:700; font-size:.88rem; }
body.migi .eacfg-dow label:has(input:checked), body.migi .eacfg-gg label:has(input:checked){ background:var(--ink); border-color:var(--ink); color:#fff; }
body.migi .eacfg-dow input, body.migi .eacfg-gg input[type=checkbox]{ accent-color:var(--plus); }
body.migi .eacfg-gg{ color:var(--ink); }
body.migi .eacfg-gg input[type=number]{ width:5.5rem; padding:.5em .7em; border:1px solid var(--line-2); border-radius:10px; font-family:var(--num); }
body.migi .eacfg-msg{ font-size:.86rem; color:var(--sub); }
body.migi .eacfg-msg.is-ok{ color:var(--plus); }
body.migi .eacfg-msg.is-err{ color:var(--minus); }
/* ボタン */
body.migi .eacfg-actions{ gap:10px; margin-top:6px; }
body.migi .eacfg-cancel, body.migi .eacfg-save{ border-radius:999px; padding:.75em 1.6em; font:inherit; font-weight:700; font-size:.95rem; }
body.migi .eacfg-cancel{ background:#fff; color:var(--ink); border:1px solid var(--line-2); }
body.migi .eacfg-cancel:hover{ background:var(--tint); }
body.migi .eacfg-save{ background:var(--ink); color:#fff; border:1px solid var(--ink); filter:none; }
body.migi .eacfg-save:hover{ background:#000; filter:none; }
body.migi .eacfg-save:disabled{ background:#d5dae0; border-color:#d5dae0; color:#fff; cursor:not-allowed; opacity:1; }
/* ライセンス申請 */
body.migi .board-warn{ background:#fff7e6; border:0; border-radius:14px; padding:14px 16px; margin:0 0 14px; }
body.migi .board-warn::before{ content:none; }
body.migi .board-warn-ttl{ font-family:inherit; font-size:.9rem; font-weight:900; letter-spacing:0; color:#9a5b00; }
body.migi .board-warn-body{ color:var(--ink); font-size:.92rem; }
body.migi .board-warn-body b{ color:var(--ink); font-family:inherit; }
body.migi .board-warn-note{ color:#6b5a3a; font-size:.8rem; }
body.migi .board-check{ background:var(--tint); border:1px solid transparent; border-radius:14px; padding:12px 14px; color:var(--ink); font-size:.9rem; }
body.migi .board-check:hover{ border-color:var(--line-2); }
body.migi .board-check b{ color:var(--ink); font-family:inherit; }
body.migi .board-check input{ accent-color:var(--plus); width:18px; height:18px; }
.board-nolink{ margin:0 0 14px; font-size:.86rem; color:var(--sub); }
.board-nolink a{ font-weight:700; }
/* EAの入れ方・VPSの用意 */
body.migi .bm-lead{ color:var(--ink); font-size:.95rem; }
body.migi .bm-lead b{ color:var(--ink); font-family:inherit; }
body.migi .bm-steps{ gap:10px; }
body.migi .bm-steps li{ background:var(--tint); border:0; border-radius:14px; padding:14px 16px; color:var(--ink); font-size:.92rem; line-height:1.8; }
body.migi .bm-steps b{ color:var(--ink); }
body.migi .bm-no{ display:inline-grid; place-items:center; width:26px; height:26px; border-radius:50%; background:var(--ink); color:#fff; font-family:var(--num); font-size:.8rem; margin-right:6px; vertical-align:1px; }
body.migi .bm-link{ border:1px solid var(--line-2); border-radius:999px; background:#fff; color:var(--ink) !important; font-weight:700; font-size:.85rem; padding:.45em 1.1em; margin:6px 6px 0 0; text-decoration:none; }
body.migi .bm-link:hover{ background:var(--tint); }
body.migi .bm-warn{ color:var(--minus); }
body.migi .bm-caution{ color:var(--minus); }
body.migi .bm-sublist li{ background:#fff; border-left:0; border-radius:10px; padding:6px 10px; }
body.migi .bm-fig, body.migi .bm-figs a{ border:1px solid var(--line); border-radius:12px; overflow:hidden; }
body.migi .bm-note{ color:var(--sub); font-size:.78rem; }
body.migi .sm-video{ background:#fff1f0; border:0; border-radius:14px; padding:12px 16px; }
body.migi .sm-video:hover{ background:#ffe4e1; }
body.migi .sm-video-txt b{ color:var(--ink); }
body.migi .sm-video-txt small{ color:var(--sub); }
body.migi .sm-cautions li{ background:#fff0f2; border:0; border-radius:12px; padding:10px 14px; color:var(--ink); font-size:.9rem; }
body.migi .sm-cautions b{ color:var(--minus); }
/* 運用成績・バックテスト */
body.migi .resm-loading{ color:var(--sub); }
body.migi #btmImg{ display:block; width:100%; border-radius:12px; }

/* ---------- ガイド（用意するもの・よくある質問） ---------- */
body.migi .brief-grid{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:14px; }
body.migi .brief-item{ background:var(--tint); border:0; border-radius:14px; padding:16px 18px; box-shadow:none; }
body.migi .brief-k{ font-family:inherit; font-size:.8rem; font-weight:700; color:var(--sub); letter-spacing:0; }
body.migi .brief-v{ font-weight:700; color:var(--ink); font-size:.98rem; }
body.migi .faq-grid{ display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:12px; }
body.migi .faq-item{ background:var(--tint); border:0; border-radius:14px; padding:16px 18px; box-shadow:none; }
body.migi .faq-q{ font-weight:700; color:var(--ink); font-family:inherit; }
body.migi .faq-a{ color:#4b5260; font-size:.92rem; }

/* ---------- 口座開設のページ ---------- */

.acc-hero{ background:#0b0c0e; color:#fff; padding:30px 32px; position:relative; overflow:hidden; }
.acc-hero::after{ content:""; position:absolute; right:-80px; top:-90px; width:300px; height:230px; border-radius:50%;
  background:linear-gradient(150deg,#8dffd6 0%,#3fe0b0 40%,#2bc9e8 70%,#1f6fe5 100%); transform:rotate(-28deg); opacity:.9; }
.acc-hero > *{ position:relative; z-index:1; }
.acc-kicker{ margin:0; font-size:.85rem; font-weight:700; color:var(--mint); }
.acc-ttl{ margin:2px 0 8px; font-size:2rem; font-weight:900; line-height:1.3; }
.acc-lead{ margin:0 0 18px; font-size:1rem; color:#d5d9df; }
.acc-lead b{ color:#fff; }
body.migi .acc-hero .btn-main{ display:inline-block; width:auto; background:#fff; color:var(--ink) !important; padding:.7em 1.6em; }
body.migi .acc-hero .btn-main:hover{ background:#e9edf1; }
.acc-types{ display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:12px; }
.acc-type{ background:var(--tint); border-radius:14px; padding:14px 18px; }
.acc-type-k{ margin:0; font-family:var(--num); font-weight:700; font-size:.82rem; color:var(--sub); letter-spacing:.04em; }
.acc-type-v{ margin:0; font-weight:900; font-size:1.25rem; }
.acc-note{ margin:0 0 12px; font-size:.9rem; color:#4b5260; }
.acc-warn{ margin:12px 0 0; font-size:.88rem; font-weight:700; color:var(--minus); }
.acc-steps{ list-style:none; margin:0; padding:0; counter-reset:none; }
.acc-steps > li{ position:relative; padding:0 0 26px 54px; }
.acc-steps > li:not(:last-child)::before{ content:""; position:absolute; left:17px; top:40px; bottom:4px; width:2px; background:var(--line); }
.acc-step-hd{ display:flex; align-items:center; gap:14px; margin-left:-54px; margin-bottom:6px; }
.acc-no{ flex:none; width:36px; height:36px; border-radius:50%; background:var(--ink); color:#fff; display:grid; place-items:center; font-family:var(--num); font-weight:700; }
.acc-step-hd h3{ margin:0; font-size:1.1rem; font-weight:900; }
.acc-steps p{ margin:0 0 8px; }
.acc-link{ font-weight:700; }
.acc-list{ margin:4px 0 10px; padding-left:1.2em; }
.acc-list li{ margin:2px 0; }
.acc-form{ margin:4px 0 0; display:grid; gap:0; border:1px solid var(--line); border-radius:12px; overflow:hidden; }
.acc-form > div{ display:grid; grid-template-columns:150px 1fr; border-top:1px solid var(--line); }
.acc-form > div:first-child{ border-top:0; }
.acc-form dt{ background:var(--tint); padding:10px 14px; font-size:.86rem; font-weight:700; color:var(--sub); }
.acc-form dd{ margin:0; padding:10px 14px; font-size:.92rem; }
.acc-em{ color:var(--minus); }
.acc-code{ font-family:var(--num); font-weight:700; background:#fff4d6; padding:.1em .5em; border-radius:6px; }
.acc-fig{ margin:10px 0 0; }
.acc-fig img{ display:block; width:100%; max-width:760px; border:1px solid var(--line); border-radius:12px; }
.acc-fig figcaption{ font-size:.78rem; color:var(--sub); margin-top:4px; }
.acc-next{ display:flex; align-items:center; justify-content:space-between; gap:24px; }
.acc-next p{ margin:6px 0 0; font-size:.92rem; color:#4b5260; }
body.migi .acc-next .btn-main{ width:auto; flex:none; padding-inline:1.8em; }

/* ---------- LINEで相談 ---------- */
.line-bar{ padding-block:8px 26px; }
.line-btn{ display:block; max-width:540px; margin:0 auto; background:#06c755; color:#fff !important; font-weight:900; font-size:1.2rem; text-align:center; text-decoration:none; padding:.7em 1em; border-radius:999px; }

/* ---------- フッター ---------- */
.site-foot{ background:transparent; color:var(--sub); padding-block:26px 30px; font-size:.78rem; text-align:center; border-top:1px solid var(--line); margin-top:10px; }
.site-foot p{ margin:0 0 8px; }
.site-foot a{ color:var(--ink) !important; margin:0 10px; }
.site-foot-copy{ opacity:.8; }

/* ---------- ログインなどの入力フォーム（旧スタイルの上書き） ---------- */
body.migi .auth-wrap{ padding:48px 24px; }
body.migi .auth-card{ background:#fff; border:0; border-radius:var(--radius); box-shadow:0 8px 30px rgba(16,24,40,.08); }
body.migi .auth-title{ color:var(--ink); font-family:inherit; font-weight:900; }
body.migi .auth-btn{ background:var(--ink); color:#fff; border:0; border-radius:999px; font-weight:700; box-shadow:none; }
body.migi .auth-btn:hover{ background:#000; }
body.migi input[type="text"], body.migi input[type="email"], body.migi input[type="password"], body.migi input[type="number"], body.migi select{
  background:#fff; color:var(--ink); border:1px solid var(--line-2); border-radius:10px; font-family:inherit; }

/* ---------- 旧サイトの演出を消す（にじむ文字・英字の飾りラベル） ---------- */
body.migi .glitch{ text-shadow:none !important; animation:none !important; }
body.migi .glitch::before, body.migi .glitch::after{ display:none !important; content:none !important; }
body.migi .auth-code{ display:none; }
body.migi .auth-title{ text-shadow:none; letter-spacing:.02em; }
body.migi .auth-form label, body.migi .auth-label{ color:var(--ink); font-weight:700; }
body.migi .auth-field > span, body.migi .auth-field label, body.migi .auth-field .auth-label{ color:var(--ink); font-weight:700; }

/* ---------- フッターは、画面の高さにかかわらず一番下に付ける ---------- */
body.migi{ min-height:100vh; min-height:100dvh; display:flex; flex-direction:column; }
body.migi .eva-main{ flex:1 0 auto; }
body.migi .site-foot{ flex:none; }

/* ============================================================
   幅が狭いとき
   ============================================================ */
@media (max-width:1100px){
  .et{ grid-template-columns:minmax(130px,1.2fr) minmax(80px,.9fr) minmax(90px,1fr) minmax(110px,1.2fr) minmax(400px,2fr); }
  .et-num .money{ font-size:1.2rem; }
  .op-btn{ padding-inline:1.2em; }
  .hc-month{ gap:24px; }
}
@media (max-width:900px){
  body.migi .wrap{ padding-inline:20px; }
  .site-head-in{ gap:16px; padding-inline:20px; flex-wrap:wrap; min-height:0; padding-block:10px 0; }
  .site-tabs{ order:3; flex:1 0 100%; overflow-x:auto; margin-inline:-20px; padding-inline:12px; scrollbar-width:none; }
  .site-tabs::-webkit-scrollbar{ display:none; }
  .site-tabs a{ padding:6px 12px 12px; white-space:nowrap; font-size:.9rem; }
  .site-tabs a.is-on::after{ bottom:4px; }
  /* 表 → EAごとのカード */
  .et{ display:flex; flex-direction:column; gap:12px; }
  .et-row{ position:relative; display:grid; grid-template-columns:1fr 1fr; gap:4px 14px; border:1px solid var(--line); border-radius:14px; padding:12px 14px; }
  .et-row.et-hd{ display:none; }
  .et-row > span{ border:0 !important; padding:4px 0; }
  .et-row .et-ea{ grid-column:1 / -1; }
  .et-row .et-pair{ grid-column:1 / -1; font-size:.85rem; color:var(--sub); padding:0 0 6px; margin-top:-8px; }
  .et-row .et-st{ position:absolute; right:14px; top:20px; padding:0; font-size:.9rem; }
  .et-row .et-num{ flex-direction:column; align-items:flex-start; gap:0; }
  .et-row .et-num::before{ content:attr(data-k); font-size:.74rem; color:var(--sub); font-weight:700; }
  .et-row .et-op{ grid-column:1 / -1; justify-content:stretch; }
  .et-row .et-op{ flex-wrap:wrap !important; }
  .et-row .et-op .op-btn, .et-row .et-op .op-form{ flex:1 1 auto; text-align:center; }
  .et-row .et-op .unit-dl, .et-row .et-op .op-btn.is-off{ flex-basis:100%; }
  .et-row .et-op .op-form .op-btn{ width:100%; }
  .hc-head{ grid-template-columns:1fr auto; }
  body.migi .cal-tabs{ grid-column:1 / -1; justify-content:flex-start; }
  body.migi .brief-grid, body.migi .faq-grid{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  body.migi .wrap{ padding-inline:14px; }
  body.migi .eacfg, body.migi .resm{ padding:8px; align-items:flex-end; }
  body.migi .eacfg-body{ grid-template-columns:1fr; padding:16px; }
  body.migi .eacfg-bar, body.migi .resm-bar{ padding:14px 16px; }
  body.migi .eacfg-actions{ flex-direction:column-reverse; }
  body.migi .eacfg-cancel, body.migi .eacfg-save{ width:100%; }
  .site-logo-txt{ font-size:1.15rem; }
  .site-logo-mark{ width:34px; height:28px; }
  .home{ gap:14px; }
  .home-hello{ font-size:1.3rem; margin-top:18px; }
  .home.home-page{ padding-top:18px; }
  .card{ padding:18px 16px; border-radius:16px; }
  .card-ttl{ font-size:1.15rem; }
  .hero{ min-height:0; border-radius:16px; }
  .hero-txt{ padding:20px 18px 22px; }
  .hero-v .money{ font-size:2.9rem; }
  .hero-today .money{ font-size:1.35rem; }
  .hero-sub{ gap:12px 18px; }
  .hero-run{ font-size:.88rem; }
  .hero-art{ width:100%; transform:scale(.42); transform-origin:right center; opacity:.9; }
  .hc-head{ grid-template-columns:1fr; gap:10px; }
  .hc-month{ justify-content:space-between; gap:8px; }
  .hc-month b{ font-size:1.15rem; }
  .hc-arrow{ width:38px; height:38px; }
  body.migi .cal-tabs{ flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; }
  body.migi .cal-tab{ padding:.4em 1em; }
  .hc-d{ min-height:52px; padding:16px 2px 4px; align-items:flex-end; }
  .hc-d i{ left:5px; top:3px; font-size:.68rem; }
  .hc-d.is-today i{ left:3px; }
  .hc-amt{ font-size:.66rem; padding-top:0; letter-spacing:-.02em; }
  .hc-amt small{ display:none; }
  .hc-foot{ flex-direction:column; align-items:stretch; }
  .hc-total{ border-left:0; padding-left:0; border-top:1px solid var(--line); padding-top:12px; justify-content:space-between; }
  .hc-total b{ font-size:1.5rem; }
  .acc-hero{ padding:24px 18px; }
  body.migi .acc-hero .btn-main{ display:block; width:100%; font-size:.95rem; padding-inline:1em; }
  .acc-ttl{ font-size:1.6rem; }
  .acc-hero::after{ width:200px; height:150px; right:-90px; top:-70px; }
  .acc-steps > li{ padding-left:0; }
  .acc-steps > li::before{ display:none; }
  .acc-step-hd{ margin-left:0; }
  .acc-form > div{ grid-template-columns:1fr; }
  .acc-form dt{ padding-bottom:4px; }
  .acc-next{ flex-direction:column; align-items:stretch; }
  body.migi .acc-next .btn-main{ width:100%; }
}

/* ============================================================
   世界観：転生系・導き（2026-10-11）
   夜明けの空の背景・光の粒・夜空と魔法陣のステータス画面・光の縁と四隅のかぎ・導きの光のボタン。
   ページの作りは変えず、見た目だけをここで重ねている（見本は /mock/home/）。
   ============================================================ */
body.migi{
  --glow:#45e7ff; --mint:#3fe0b0; --gold:#ffcf5a; --night:#070b1a; --night2:#0e1b3d;
  --magic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20200%20200%22%20fill%3D%22none%22%20stroke-linecap%3D%22round%22%3E%3Cg%20stroke%3D%22%2345e7ff%22%20stroke-opacity%3D%22.8%22%20stroke-width%3D%22.9%22%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%22100%22%20r%3D%2296%22%2F%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%22100%22%20r%3D%2288%22%2F%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%22100%22%20r%3D%2292%22%20stroke-dasharray%3D%221%205%22%20stroke-width%3D%222.2%22%2F%3E%3C%2Fg%3E%3Cg%20stroke%3D%22%233fe0b0%22%20stroke-opacity%3D%22.7%22%20stroke-width%3D%22.9%22%3E%3Cpath%20d%3D%22M100%2018%20L171%20141%20L29%20141%20Z%22%2F%3E%3Cpath%20d%3D%22M100%20182%20L29%2059%20L171%2059%20Z%22%2F%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%22100%22%20r%3D%2256%22%2F%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%22100%22%20r%3D%2250%22%20stroke-dasharray%3D%223%204%22%2F%3E%3C%2Fg%3E%3Cg%20stroke%3D%22%23ffcf5a%22%20stroke-opacity%3D%22.75%22%20stroke-width%3D%221%22%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%22100%22%20r%3D%2222%22%2F%3E%3Cpath%20d%3D%22M100%2070%20L100%20130%20M70%20100%20L130%20100%20M79%2079%20L121%20121%20M121%2079%20L79%20121%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  /* 四隅のかぎ（ステータス画面の枠）。.card などの ::before に使う */
  --corners:
    linear-gradient(var(--glow),var(--glow)) left top/16px 2px no-repeat, linear-gradient(var(--glow),var(--glow)) left top/2px 16px no-repeat,
    linear-gradient(var(--glow),var(--glow)) right bottom/16px 2px no-repeat, linear-gradient(var(--glow),var(--glow)) right bottom/2px 16px no-repeat;
  --corners4:
    linear-gradient(var(--glow),var(--glow)) left top/18px 2px no-repeat, linear-gradient(var(--glow),var(--glow)) left top/2px 18px no-repeat,
    linear-gradient(var(--glow),var(--glow)) right top/18px 2px no-repeat, linear-gradient(var(--glow),var(--glow)) right top/2px 18px no-repeat,
    linear-gradient(var(--glow),var(--glow)) left bottom/18px 2px no-repeat, linear-gradient(var(--glow),var(--glow)) left bottom/2px 18px no-repeat,
    linear-gradient(var(--glow),var(--glow)) right bottom/18px 2px no-repeat, linear-gradient(var(--glow),var(--glow)) right bottom/2px 18px no-repeat;
  --btn-light:linear-gradient(135deg, #0e1b3d, #1f6fe5);
  background:
    radial-gradient(1200px 600px at 50% -200px, rgba(69,231,255,.22), transparent 70%),
    radial-gradient(900px 500px at 100% 0, rgba(63,224,176,.12), transparent 70%),
    linear-gradient(180deg, #eef6fb 0%, #f3f5f7 420px);
  background-attachment:scroll;
}
/* 背景にゆっくり昇っていく光の粒 */
body.migi .eva-main{ position:relative; }
body.migi .eva-main::before{ content:""; position:fixed; inset:0; pointer-events:none; opacity:.7;
  background-image:
    radial-gradient(2px 2px at 10% 80%, #7ff0ff, transparent), radial-gradient(3px 3px at 25% 60%, #ffffff, transparent),
    radial-gradient(2px 2px at 40% 90%, #3fe0b0, transparent), radial-gradient(2px 2px at 62% 70%, #7ff0ff, transparent),
    radial-gradient(3px 3px at 78% 85%, #ffffff, transparent), radial-gradient(2px 2px at 90% 65%, #ffcf5a, transparent);
  animation:tsMotes 18s linear infinite; z-index:-1; }
@keyframes tsMotes{ from{ transform:translateY(20vh); opacity:0; } 15%{ opacity:.7; } 85%{ opacity:.5; } to{ transform:translateY(-60vh); opacity:0; } }
@keyframes tsSpin{ to{ transform:rotate(360deg); } }
@keyframes tsBlink{ 50%{ opacity:.35; } }

/* ---------- ヘッダー ---------- */
body.migi .site-head{ background:rgba(255,255,255,.75); }
body.migi .site-tabs a.is-on::after{ background:linear-gradient(90deg, var(--mint), var(--glow)); box-shadow:0 0 10px rgba(69,231,255,.9); }
body.migi .site-me summary{ background:linear-gradient(135deg, var(--night2), var(--night)); box-shadow:0 0 0 2px #fff, 0 0 0 3px rgba(69,231,255,.6); }
body.migi .site-nav .site-nav-btn{ background:var(--btn-light); box-shadow:0 0 14px rgba(69,231,255,.45); }

/* ---------- あいさつ ---------- */
body.migi .home-hello{ background:linear-gradient(90deg, #0e1b3d 0%, #1f6fe5 55%, #17a6c9 100%); -webkit-background-clip:text; background-clip:text; color:transparent; letter-spacing:.06em; }
body.migi .home-hello::before{ content:"✦ "; -webkit-text-fill-color:var(--glow); color:var(--glow); text-shadow:0 0 12px rgba(69,231,255,.9); }

/* ---------- 黒い帯（今月の確定損益・口座開設のはじめに）＝夜空のステータス画面＋魔法陣 ---------- */
body.migi .hero, body.migi .acc-hero{
  background:
    radial-gradient(1.5px 1.5px at 12% 20%, #fff, transparent), radial-gradient(1px 1px at 30% 70%, #cfefff, transparent),
    radial-gradient(1.5px 1.5px at 48% 30%, #fff, transparent), radial-gradient(1px 1px at 60% 80%, #cfefff, transparent),
    radial-gradient(600px 300px at 88% 50%, rgba(69,231,255,.28), transparent 60%),
    linear-gradient(120deg, var(--night) 0%, var(--night2) 100%);
  border:1px solid rgba(69,231,255,.45);
  box-shadow:0 0 0 1px rgba(69,231,255,.12) inset, 0 14px 40px rgba(14,27,61,.35);
}
body.migi .hero-art{ display:none; }
body.migi .hero::after, body.migi .acc-hero::after{ content:""; position:absolute; right:-50px; top:50%; width:380px; height:380px; margin-top:-190px;
  border-radius:0; background:var(--magic) center/contain no-repeat; opacity:1; transform:none;
  filter:drop-shadow(0 0 8px rgba(69,231,255,.6)); animation:tsSpin 60s linear infinite; }
body.migi .acc-hero::after{ width:300px; height:300px; margin-top:-150px; right:-70px; }
body.migi .hero::before, body.migi .acc-hero::before{ content:""; position:absolute; inset:10px; pointer-events:none; z-index:1; background:var(--corners4); opacity:.8; }
body.migi .hero-k{ color:var(--glow); letter-spacing:.12em; }
body.migi .hero-v .money{ text-shadow:0 0 24px rgba(69,231,255,.55); }
body.migi .hero-run{ background:linear-gradient(135deg, var(--mint), var(--glow)); color:#06243a; box-shadow:0 0 16px rgba(69,231,255,.6); }
body.migi .hero-run i{ background:#06243a; animation:tsBlink 1.6s ease-in-out infinite; }
body.migi .acc-kicker{ color:var(--glow); letter-spacing:.12em; }
body.migi .acc-ttl{ text-shadow:0 0 20px rgba(69,231,255,.5); }
body.migi .acc-hero .btn-main{ background:linear-gradient(135deg, var(--mint), var(--glow)); color:#06243a !important; box-shadow:0 0 18px rgba(69,231,255,.55); }
body.migi .acc-hero .btn-main:hover{ background:linear-gradient(135deg, #5df0c4, #7ff0ff); }

/* ---------- 白いカード：光の縁と四隅のかぎ ---------- */
body.migi .card:not(.acc-hero){ position:relative; background:rgba(255,255,255,.92); border:1px solid rgba(69,231,255,.35); box-shadow:0 10px 30px rgba(14,27,61,.06); }
body.migi .card:not(.hero):not(.acc-hero)::before{ content:""; position:absolute; inset:8px; pointer-events:none; background:var(--corners); opacity:.9; }
body.migi .card-ttl::before{ content:""; display:inline-block; width:10px; height:10px; margin-right:10px; transform:rotate(45deg); vertical-align:3px;
  background:linear-gradient(135deg, var(--mint), var(--glow)); box-shadow:0 0 8px rgba(69,231,255,.9); }

/* ---------- 利用中のEA ---------- */
body.migi .et-row:not(.et-hd):hover > span{ background:linear-gradient(90deg, rgba(69,231,255,.06), rgba(63,224,176,.06)); }
body.migi .et-name{ letter-spacing:.08em; }
body.migi .et-st.is-on{ color:#0d9a68; }
body.migi .et-st.is-on i{ background:var(--mint); box-shadow:0 0 0 4px rgba(63,224,176,.2), 0 0 10px rgba(63,224,176,.9); }
body.migi .op-btn:not(.is-fill):not(.is-off){ border-color:rgba(69,231,255,.45); }

/* ---------- いちばん押してほしいボタン＝導きの光 ---------- */
body.migi .op-btn.is-fill, body.migi .btn-main, body.migi .btn-fill, body.migi .eacfg-save, body.migi .auth-btn{
  background:var(--btn-light); border-color:transparent; color:#fff;
  box-shadow:0 0 0 1px rgba(69,231,255,.5) inset, 0 6px 18px rgba(31,111,229,.35); }
body.migi .op-btn.is-fill:hover, body.migi .btn-main:hover, body.migi .btn-fill:hover, body.migi .eacfg-save:hover, body.migi .auth-btn:hover{
  background:var(--btn-light); box-shadow:0 0 0 1px rgba(69,231,255,.8) inset, 0 0 22px rgba(69,231,255,.6); }
body.migi .eacfg-save:disabled{ background:#d5dae0; box-shadow:none; }

/* ---------- 口座開設のページ ---------- */
body.migi .acc-type{ background:linear-gradient(135deg, rgba(69,231,255,.08), rgba(63,224,176,.08)); border:1px solid rgba(69,231,255,.3); }
body.migi .acc-type-k{ color:#1f6fe5; letter-spacing:.12em; }
body.migi .acc-no{ background:linear-gradient(135deg, var(--night2), #1f6fe5); box-shadow:0 0 0 3px rgba(69,231,255,.2), 0 0 12px rgba(69,231,255,.6); }
body.migi .acc-steps > li:not(:last-child)::before{ background:linear-gradient(180deg, var(--glow), rgba(63,224,176,.25)); }
body.migi .acc-form{ border-color:rgba(69,231,255,.35); }
body.migi .acc-form dt{ background:rgba(69,231,255,.07); }
body.migi .acc-fig img{ border-color:rgba(69,231,255,.35); box-shadow:0 6px 18px rgba(14,27,61,.08); }

/* ---------- 損益カレンダー ---------- */
body.migi .cal-tab.is-active{ background:var(--btn-light); border-color:transparent; box-shadow:0 0 12px rgba(69,231,255,.5); }
body.migi .cal-tab:hover{ border-color:var(--glow); }
body.migi .hc-arrow{ border-color:rgba(69,231,255,.5); }
body.migi .hc-arrow:hover{ background:rgba(69,231,255,.08); box-shadow:0 0 10px rgba(69,231,255,.5); }
body.migi .hc-month b{ letter-spacing:.06em; }
body.migi .hc-d.is-today i{ background:var(--btn-light); box-shadow:0 0 10px rgba(69,231,255,.8); }
body.migi .hc-amt.is-plus{ text-shadow:0 0 10px rgba(20,184,116,.25); }
body.migi .hc-total b.is-plus{ text-shadow:0 0 14px rgba(20,184,116,.35); }

/* ---------- よくある質問 ---------- */
body.migi .brief-item, body.migi .faq-item{ background:linear-gradient(135deg, rgba(69,231,255,.06), rgba(63,224,176,.05)); border:1px solid rgba(69,231,255,.25); }
body.migi .brief-k{ color:#1f6fe5; }
body.migi .faq-q::before{ content:"◆"; margin-right:8px; color:var(--glow); text-shadow:0 0 8px rgba(69,231,255,.9); }

/* ---------- ポップアップ ---------- */
body.migi .eacfg-overlay, body.migi .resm-overlay{ background:rgba(7,11,26,.55); }
body.migi .eacfg-panel, body.migi .resm-panel{ border:1px solid rgba(69,231,255,.5); box-shadow:0 0 0 1px rgba(69,231,255,.12) inset, 0 24px 60px rgba(7,11,26,.35), 0 0 40px rgba(69,231,255,.18); }
body.migi .eacfg-bar, body.migi .resm-bar{ background:linear-gradient(90deg, rgba(69,231,255,.08), rgba(63,224,176,.05)), #fff; }
body.migi .eacfg-title::before, body.migi .resm-title::before{ content:"✦ "; color:var(--glow); text-shadow:0 0 8px rgba(69,231,255,.9); }
body.migi .eacfg-col-hd::before{ content:""; display:inline-block; width:8px; height:8px; margin-right:8px; transform:rotate(45deg); vertical-align:2px;
  background:linear-gradient(135deg, var(--mint), var(--glow)); }
body.migi .eacfg-stat{ background:linear-gradient(135deg, rgba(69,231,255,.08), rgba(63,224,176,.06)); }
body.migi .eacfg-dow label:has(input:checked), body.migi .eacfg-gg label:has(input:checked){ background:var(--btn-light); border-color:transparent; box-shadow:0 0 10px rgba(69,231,255,.45); }
body.migi .board-check{ background:rgba(69,231,255,.06); }

/* ---------- ログイン・会員登録・マイページ ---------- */
body.migi .auth-card{ position:relative; border:1px solid rgba(69,231,255,.45); box-shadow:0 0 0 1px rgba(69,231,255,.1) inset, 0 14px 40px rgba(14,27,61,.12), 0 0 40px rgba(69,231,255,.12); }
body.migi .auth-card::before{ content:""; position:absolute; inset:8px; pointer-events:none; background:var(--corners4); opacity:.85; }
body.migi .auth-card::after{ content:""; position:absolute; right:-60px; top:-60px; width:180px; height:180px; pointer-events:none;
  background:var(--magic) center/contain no-repeat; opacity:.35; animation:tsSpin 60s linear infinite; }
body.migi .auth-card{ overflow:hidden; }
body.migi .auth-title{ background:linear-gradient(90deg, #0e1b3d, #1f6fe5); -webkit-background-clip:text; background-clip:text; color:transparent; }
body.migi .auth-title::before{ content:"✦ "; -webkit-text-fill-color:var(--glow); color:var(--glow); }
body.migi .auth-form input:focus{ border-color:var(--glow); box-shadow:0 0 0 3px rgba(69,231,255,.25); outline:none; }

/* ---------- フッター ---------- */
body.migi .site-foot{ border-top-color:rgba(69,231,255,.3); }

/* ---------- よくある質問：1列・押すと答えが開く ---------- */
body.migi .faq-grid{ grid-template-columns:1fr; gap:10px; }
body.migi .faq-item{ padding:0; overflow:hidden; }
body.migi .faq-q{ list-style:none; cursor:pointer; display:flex; align-items:center; gap:10px; padding:16px 52px 16px 18px; position:relative; user-select:none; }
body.migi .faq-q::-webkit-details-marker{ display:none; }
body.migi .faq-q::after{ content:""; position:absolute; right:20px; top:50%; width:10px; height:10px; margin-top:-7px;
  border-right:2px solid var(--glow); border-bottom:2px solid var(--glow); transform:rotate(45deg); transition:transform .25s; }
body.migi .faq-item[open] > .faq-q::after{ transform:rotate(-135deg); margin-top:-2px; }
body.migi .faq-q:hover{ background:rgba(69,231,255,.06); }
body.migi .faq-a{ padding:0 18px 16px 42px; animation:faqOpen .25s ease; }
body.migi .faq-item[open]{ border-color:rgba(69,231,255,.6); box-shadow:0 0 14px rgba(69,231,255,.18); }
@keyframes faqOpen{ from{ opacity:0; transform:translateY(-4px); } to{ opacity:1; transform:none; } }
@media (max-width:640px){
  body.migi .hero::after{ width:240px; height:240px; margin-top:-120px; right:-80px; opacity:.6; }
  body.migi .acc-hero::after{ width:200px; height:200px; margin-top:-100px; right:-90px; opacity:.5; }
}
@media (prefers-reduced-motion:reduce){
  body.migi .eva-main::before{ animation:none; display:none; }
  body.migi .hero::after, body.migi .acc-hero::after, body.migi .auth-card::after, body.migi .hero-run i{ animation:none; }
}

/* ============================================================
   管理画面（/__DASHBOARD__/）2026-10-12
   会員側と同じ土台（白いカード・夜空の帯・水色の光）にそろえる。
   旧サイトの暗い配色（eva.css の .admin-mode …）を、ここで上書きしている。
   ============================================================ */
body.migi.admin-mode{ color:var(--ink); cursor:auto; }
body.migi.admin-mode .site-logo-tag.is-admin{ background:linear-gradient(135deg, var(--night2), #1f6fe5); color:#fff; letter-spacing:.12em; }
body.migi.admin-mode .site-head-in{ gap:28px; }
.adm-open{ margin-left:auto; flex:none; font-size:.85rem; font-weight:700; color:var(--ink) !important; text-decoration:none; padding:.5em 1.1em; border:1px solid rgba(69,231,255,.55); border-radius:999px; background:#fff; }
.adm-open:hover{ background:var(--tint); box-shadow:0 0 12px rgba(69,231,255,.45); }
body.migi.admin-mode .adm-main{ padding:0 0 40px; }
body.migi.admin-mode .auth-wrap{ display:block; min-height:0; padding:26px 32px 0; }
body.migi.admin-mode .admin-stack{ display:flex; flex-direction:column; gap:18px; width:100%; max-width:1180px; margin:0 auto; }
body.migi.admin-mode .admin-stack > *{ width:100%; margin:0; }

/* カード */
body.migi.admin-mode .auth-card{ max-width:none; padding:26px 28px; background:rgba(255,255,255,.94); border:1px solid rgba(69,231,255,.35); border-radius:var(--radius, 20px); box-shadow:0 10px 30px rgba(14,27,61,.06); overflow:visible; }
body.migi.admin-mode .auth-card::before{ border:0; background:var(--corners); inset:8px; opacity:.9; }
body.migi.admin-mode .auth-card::after{ display:none; }
body.migi.admin-mode .auth-card > *{ position:relative; }
body.migi.admin-mode .auth-title{ margin:0 0 10px; font-family:inherit; font-size:1.5rem; font-weight:900; letter-spacing:.02em; color:var(--ink); background:none; -webkit-text-fill-color:currentColor; }
body.migi.admin-mode .auth-title::before{ content:"◆"; margin-right:.5em; font-size:.6em; vertical-align:.25em; color:var(--glow); -webkit-text-fill-color:var(--glow); text-shadow:0 0 10px rgba(69,231,255,.9); }
body.migi.admin-mode .auth-code, .adm-sec-ttl{ display:block; margin:0 0 12px; font-family:inherit; font-size:1.15rem; font-weight:900; letter-spacing:.02em; color:var(--ink); text-transform:none; }
body.migi.admin-mode .auth-code::before, .adm-sec-ttl::before{ content:"◆"; margin-right:.5em; font-size:.6em; vertical-align:.2em; color:var(--glow); text-shadow:0 0 10px rgba(69,231,255,.9); }
body.migi.admin-mode .auth-code small{ font-family:var(--num); font-size:.75rem; font-weight:600; color:var(--sub); margin-left:.4em; }
body.migi.admin-mode .auth-lead{ margin:0 0 14px; font-size:.9rem; line-height:1.8; color:#4b5260; }
body.migi.admin-mode .auth-lead code{ font-family:var(--num); background:var(--tint); padding:.1em .4em; border-radius:6px; color:var(--ink); }
body.migi.admin-mode .auth-msg{ padding:12px 16px; border-radius:12px; font-size:.9rem; font-weight:700; border:1px solid rgba(69,231,255,.45); background:#eefbff; color:#0e4b6b; }
body.migi.admin-mode .auth-msg.is-error{ border-color:#f6b8be; background:#fff1f2; color:#b4232f; }
body.migi.admin-mode .auth-links{ border:0; padding:0; text-align:left; }
body.migi.admin-mode .auth-links a, body.migi.admin-mode .mini-link{ color:#1f6fe5; font-weight:700; font-size:.88rem; text-decoration:none; }
body.migi.admin-mode .auth-links a:hover, body.migi.admin-mode .mini-link:hover{ text-decoration:underline; }
body.migi.admin-mode a{ color:#1f6fe5; }
body.migi.admin-mode .mono{ font-family:var(--num); letter-spacing:.01em; }

/* 入力欄 */
body.migi.admin-mode .auth-form{ gap:14px; }
body.migi.admin-mode .auth-form + .auth-form{ margin-top:16px; padding-top:16px; border-top:1px dashed var(--line); }
body.migi.admin-mode .auth-field > span{ color:var(--ink); font-size:.82rem; font-weight:700; letter-spacing:0; }
body.migi.admin-mode .auth-field input, body.migi.admin-mode .auth-field textarea, body.migi.admin-mode .auth-field select,
body.migi.admin-mode .adm-search input, body.migi.admin-mode .fwd-userform select, body.migi.admin-mode .fwd-input{
  background:#fff; color:var(--ink); border:1px solid #cfd8e3; border-radius:12px; font-family:inherit; font-size:.95rem; padding:.7em .9em; box-shadow:none; }
body.migi.admin-mode .auth-field input:focus, body.migi.admin-mode .auth-field textarea:focus, body.migi.admin-mode .auth-field select:focus,
body.migi.admin-mode .adm-search input:focus, body.migi.admin-mode .fwd-userform select:focus, body.migi.admin-mode .fwd-input:focus{
  outline:0; border-color:var(--glow); box-shadow:0 0 0 3px rgba(69,231,255,.25); }
body.migi.admin-mode ::placeholder{ color:#a3acb8; }
body.migi.admin-mode .auth-check{ color:var(--ink); font-size:.9rem; font-weight:700; }
body.migi.admin-mode .auth-check input{ accent-color:#1f6fe5; width:18px; height:18px; }
body.migi.admin-mode .auth-btn{ width:auto; align-self:flex-start; padding:.75em 2em; }
body.migi.admin-mode .auth-form-inline{ align-items:flex-end; }
body.migi.admin-mode .auth-form-inline .auth-btn{ align-self:flex-end; white-space:nowrap; }
body.migi.admin-mode .mini-btn.danger{ border-color:#f1a7ae; color:#c42a37; background:#fff; }
body.migi.admin-mode .mini-btn.danger:hover{ background:#fff1f2; }

/* 管理トップ */
.adm-hero{ position:relative; overflow:hidden; padding:26px 32px; border-radius:var(--radius, 20px); color:#fff; border:1px solid rgba(69,231,255,.45);
  background:radial-gradient(120% 140% at 85% 0%, rgba(69,231,255,.28), transparent 55%), linear-gradient(120deg, var(--night) 0%, var(--night2) 100%);
  box-shadow:0 14px 40px rgba(14,27,61,.18); }
.adm-hero::before{ content:""; position:absolute; inset:10px; pointer-events:none; background:var(--corners4); opacity:.8; }
.adm-hero > *{ position:relative; }
.adm-hero-k{ margin:0; font-size:.8rem; font-weight:700; letter-spacing:.14em; color:var(--glow); }
.adm-hero-ttl{ margin:2px 0 6px; font-size:1.9rem; font-weight:900; text-shadow:0 0 20px rgba(69,231,255,.5); }
.adm-hero-lead{ margin:0; font-size:.92rem; color:#d5d9df; }
body.migi.admin-mode .adm-hub{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:12px; margin:0; }
body.migi.admin-mode .adm-hub-card{ display:flex; flex-direction:column; gap:4px; padding:16px 18px; border-radius:14px; text-decoration:none; color:var(--ink);
  background:linear-gradient(135deg, rgba(69,231,255,.08), rgba(63,224,176,.08)); border:1px solid rgba(69,231,255,.3); box-shadow:none; transition:box-shadow .15s, transform .15s, border-color .15s; }
body.migi.admin-mode .adm-hub-card:hover{ transform:translateY(-2px); border-color:var(--glow); box-shadow:0 8px 22px rgba(14,27,61,.1), 0 0 16px rgba(69,231,255,.35); }
body.migi.admin-mode .adm-hub-card h3{ margin:0; font-size:1rem; font-weight:900; color:var(--ink); font-family:inherit; letter-spacing:.02em; }
body.migi.admin-mode .adm-hub-count{ font-family:var(--num); font-size:1.05rem; font-weight:700; color:#1f6fe5; line-height:1.3; }
body.migi.admin-mode .adm-hub-card.is-num .adm-hub-count{ font-size:1.9rem; font-weight:800; color:var(--ink); }
body.migi.admin-mode .adm-hub-count small{ font-size:.8rem; font-weight:700; color:var(--sub); margin-left:.3em; }
body.migi.admin-mode .adm-hub-card p{ margin:0; font-size:.8rem; line-height:1.6; color:var(--sub); }

/* 検索・一覧・表 */
body.migi.admin-mode .adm-search{ display:flex; gap:10px; margin:0 0 14px; }
body.migi.admin-mode .adm-search input{ flex:1; min-width:0; }
body.migi.admin-mode .adm-search button{ flex:none; align-self:stretch; min-height:44px; font-family:inherit; font-weight:700; font-size:.9rem; padding:0 1.6em; border:0; border-radius:999px; color:#fff; cursor:pointer;
  background:linear-gradient(135deg, var(--night2), #1f6fe5); box-shadow:0 0 14px rgba(69,231,255,.4); }
body.migi.admin-mode .adm-search-clear{ align-self:center; font-size:.85rem; font-weight:700; }
body.migi.admin-mode .lic-list{ list-style:none; margin:0; padding:0; display:grid; gap:8px; }
body.migi.admin-mode .lic-list li{ background:#fff; border:1px solid var(--line); border-radius:12px; padding:0; }
body.migi.admin-mode .lic-list li > a, body.migi.admin-mode .lic-list li.act-row{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; padding:12px 16px; color:var(--ink); text-decoration:none; }
body.migi.admin-mode .lic-list li > a:hover{ background:var(--tint); border-radius:12px; }
body.migi.admin-mode .lic-acc{ font-weight:900; font-size:.98rem; color:var(--ink); }
body.migi.admin-mode .lic-name{ flex:1; min-width:0; font-size:.86rem; color:var(--sub); overflow:hidden; text-overflow:ellipsis; }
body.migi.admin-mode .lic-exp{ font-size:.82rem; color:var(--sub); }
body.migi.admin-mode .lic-badge, body.migi.admin-mode .fwd-badge{ display:inline-block; font-family:inherit; font-size:.72rem; font-weight:700; letter-spacing:.02em; padding:.2em .9em; border-radius:999px; border:0; background:#eef1f5; color:#5b6472; text-transform:none; }
body.migi.admin-mode .lic-badge.is-on{ background:#e3f8ee; color:#0f8f57; }
body.migi.admin-mode .lic-badge.is-off{ background:#ffe9eb; color:#c42a37; }
body.migi.admin-mode .act-ops{ display:flex; gap:8px; margin-left:auto; }
body.migi.admin-mode .mypage-info{ display:grid; grid-template-columns:max-content 1fr; gap:8px 20px; margin:0 0 18px; padding:14px 18px; border:1px solid var(--line); border-radius:12px; background:var(--tint); }
body.migi.admin-mode .mypage-info dt{ color:var(--sub); font-size:.8rem; font-weight:700; font-family:inherit; letter-spacing:0; }
body.migi.admin-mode .mypage-info dd{ margin:0; color:var(--ink); font-size:.92rem; font-weight:700; }
body.migi.admin-mode .ea-tabs, body.migi.admin-mode .fwd-tabs{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 12px; border:0; }
body.migi.admin-mode .ea-tab, body.migi.admin-mode .fwd-tab{ font-family:inherit; font-size:.85rem; font-weight:700; padding:.5em 1.2em; border-radius:999px; border:1px solid var(--line-2, #d6dde6); background:#fff; color:var(--ink); text-decoration:none; cursor:pointer; line-height:1.4; }
body.migi.admin-mode .ea-tab small, body.migi.admin-mode .fwd-tab small{ font-family:var(--num); font-size:.75rem; color:var(--sub); margin-left:.4em; }
body.migi.admin-mode .fwd-tab small{ display:block; margin:0; }
body.migi.admin-mode .ea-tab.is-active, body.migi.admin-mode .fwd-tab.is-active{ border-color:transparent; color:#fff; background:linear-gradient(135deg, var(--night2), #1f6fe5); box-shadow:0 0 12px rgba(69,231,255,.4); }
body.migi.admin-mode .ea-tab.is-active small, body.migi.admin-mode .fwd-tab.is-active small{ color:#cfe6ff; }
body.migi.admin-mode .admin-table-wrap{ overflow-x:auto; border:1px solid var(--line); border-radius:12px; background:#fff; }
body.migi.admin-mode .admin-table, body.migi.admin-mode .fwd-table{ width:100%; border-collapse:collapse; font-size:.9rem; }
body.migi.admin-mode .admin-table th, body.migi.admin-mode .fwd-table th{ text-align:left; padding:10px 14px; font-family:inherit; font-size:.76rem; font-weight:700; letter-spacing:.02em; color:var(--sub); background:var(--tint); border-bottom:1px solid var(--line); text-transform:none; }
body.migi.admin-mode .admin-table td, body.migi.admin-mode .fwd-table td{ padding:10px 14px; border-bottom:1px solid var(--line); color:var(--ink); vertical-align:middle; }
body.migi.admin-mode .admin-table tr:last-child td, body.migi.admin-mode .fwd-table tr:last-child td{ border-bottom:0; }
body.migi.admin-mode .admin-table td small{ display:block; color:var(--sub); font-size:.78rem; }
body.migi.admin-mode .admin-table td a{ font-weight:700; }

/* 会員詳細：使用可能なEA（チェック＋台数） */
.ent-list{ display:grid; gap:10px; }
.ent-item{ display:flex; align-items:center; flex-wrap:wrap; gap:10px 22px; padding:14px 18px; border:1px solid var(--line); border-radius:14px; background:#fff; transition:border-color .15s, background .15s; }
.ent-item.is-on{ border-color:rgba(69,231,255,.7); background:linear-gradient(135deg, rgba(69,231,255,.09), rgba(63,224,176,.09)); box-shadow:0 0 0 1px rgba(69,231,255,.15) inset; }
.ent-check{ display:flex; align-items:center; gap:12px; flex:1 1 200px; cursor:pointer; }
.ent-check input{ width:22px; height:22px; accent-color:#1f6fe5; flex:none; }
.ent-name{ font-size:1.1rem; font-weight:900; color:var(--ink); }
.ent-name small{ margin-left:.7em; font-family:var(--num); font-size:.8rem; font-weight:600; color:var(--sub); }
.ent-qty{ display:flex; align-items:center; gap:8px; font-size:.82rem; font-weight:700; color:var(--ink); }
.ent-qty input{ width:84px; font-family:var(--num); font-size:1rem; font-weight:700; text-align:right; padding:.5em .7em; border:1px solid #cfd8e3; border-radius:10px; background:#fff; color:var(--ink); }
.ent-qty input:disabled{ background:#f0f2f5; color:#a3acb8; }
.ent-qty input:focus{ outline:0; border-color:var(--glow); box-shadow:0 0 0 3px rgba(69,231,255,.25); }
.ent-used{ font-size:.8rem; color:var(--sub); }
.ent-used b{ font-family:var(--num); color:var(--ink); }
.ent-note{ flex:1 0 100%; font-size:.8rem; font-weight:700; color:#b4232f; }
body.migi.admin-mode .danger-zone{ border-color:#f6b8be; background:#fffafa; }
body.migi.admin-mode .danger-zone .auth-code::before{ color:#ef3b4c; text-shadow:none; }

/* 損益編集 */
body.migi.admin-mode .fwd-pick{ display:grid; gap:14px; }
body.migi.admin-mode .fwd-pick-h{ margin:0; font-size:1.15rem; font-weight:900; color:var(--ink); font-family:inherit; opacity:1; }
body.migi.admin-mode .fwd-pick-label{ display:block; margin:0 0 6px; font-family:inherit; font-size:.8rem; font-weight:700; color:var(--sub); letter-spacing:0; }
body.migi.admin-mode .fwd-pick-note, body.migi.admin-mode .fwd-pick-empty, body.migi.admin-mode .fwd-hint{ font-size:.82rem; color:var(--sub); }
body.migi.admin-mode .fwd-userform{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
body.migi.admin-mode .fwd-nav{ display:flex; align-items:center; justify-content:space-between; margin:0 0 14px; }
body.migi.admin-mode .fwd-nav a, body.migi.admin-mode .res-nav{ font-family:var(--num); font-size:.85rem; font-weight:700; padding:.45em 1.1em; border:1px solid var(--line-2, #d6dde6); border-radius:999px; background:#fff; color:var(--ink); text-decoration:none; }
body.migi.admin-mode .fwd-nav a:hover{ background:var(--tint); }
body.migi.admin-mode .fwd-date{ font-family:var(--num); font-weight:700; }
body.migi.admin-mode .fwd-date small{ display:inline; color:var(--sub); margin-left:.4em; font-weight:500; }
body.migi.admin-mode .fwd-table td.fwd-date, body.migi.admin-mode .fwd-date{ white-space:nowrap; }
body.migi.admin-mode .fwd-auto, body.migi.admin-mode .fwd-none{ color:var(--sub); }
body.migi.admin-mode .fwd-input{ width:150px; text-align:right; font-family:var(--num); padding:.45em .7em; }
body.migi.admin-mode .fwd-badge.is-ov{ background:#fff4d6; color:#9a6400; }
body.migi.admin-mode .fwd-badge.is-add{ background:#e3f3ff; color:#1f6fe5; }
body.migi.admin-mode .fwd-badge.is-fwd{ background:#e3f8ee; color:#0f8f57; }
body.migi.admin-mode .fwd-badge.is-user{ background:#eee9ff; color:#5b3fd0; }
body.migi.admin-mode .fwd-warn{ margin:0 0 12px; padding:10px 14px; border-radius:12px; background:#fff4d6; border:1px solid #f3d58a; color:#7a5200; font-size:.85rem; font-weight:700; }
body.migi.admin-mode .adm-foot{ margin-top:0; }

@media (max-width:900px){
  body.migi.admin-mode .auth-wrap{ padding:18px 14px 0; }
  body.migi.admin-mode .auth-card{ padding:20px 16px; }
  body.migi.admin-mode .adm-hub{ grid-template-columns:1fr; }
  .adm-hero{ padding:22px 18px; }
  .adm-hero-ttl{ font-size:1.5rem; }
  .adm-open{ order:2; margin-left:auto; font-size:.78rem; padding:.4em .9em; }
  body.migi.admin-mode .auth-form-inline{ flex-direction:column; align-items:stretch; }
  body.migi.admin-mode .auth-form-inline > *{ flex:none; }
  body.migi.admin-mode .auth-btn{ width:100%; }
  body.migi.admin-mode .lic-name{ flex:1 0 100%; order:5; }
  body.migi.admin-mode .act-ops{ margin-left:0; }
  .ent-item{ padding:12px 14px; }
  body.migi.admin-mode .fwd-userform select{ flex:1 1 100%; min-width:0; max-width:100%; }
}
/* 管理画面 ここまで */
