/* ==========================================================================
   BLT 2026 — テーマCSS（イベント > リリース > Web設定 > CSS）
   イベント配下の全モジュールページ（ブース一覧・タイムテーブル・マイページ等）に効く。
   LP固有のレイアウトはHTMLモジュール側に置き、ここはパレット層だけに留める。
   ========================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Roboto:wght@400;700&display=swap");

:root{
  --blt-bg:#05060A;
  --blt-surface:#161A20;
  --blt-surface-2:rgba(255,255,255,.06);
  --blt-line:rgba(255,255,255,.12);
  --blt-fg:#ffffff;
  --blt-fg-70:rgba(255,255,255,.72);
  --blt-fg-50:rgba(255,255,255,.5);
  --blt-cyan:#22D3EE;
  --blt-orange:#FF8800;
}

body{
  background:var(--blt-bg);
  color:var(--blt-fg);
  font-family:"Noto Sans JP",system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;
}

/* --- 面：白い矩形をダークサーフェスへ --- */
.bg-white{background-color:var(--blt-surface)}

/* --- パレット層：ダーク基調で足りていない既定色をまとめて反転（BLT追記） --- */
/* 会員導線・マイページ配下は素の明暗前提のクラスが多く、個別に追うと必ず取りこぼす。
   **面・文字・罫線の3系統をクラス単位でまとめて反転**しておく。
   Tailwind v4 は @theme の値をユーティリティに焼き込むため、変数ではなくクラスを上書きする。 */

/* --- 面（明るい地）--- */
.bg-gray-50,
.bg-gray-100{background-color:rgba(255,255,255,.04)}
.bg-gray-200,
.bg-gray-300{background-color:rgba(255,255,255,.08)}
.bg-background{background-color:var(--blt-bg)}
.bg-card{background-color:var(--blt-surface)}

/* --- 文字（黒前提）--- */
.text-black,
.text-foreground,
.text-gray-900,
.text-gray-800{color:var(--blt-fg)}
.text-gray-700,
.text-gray-600{color:var(--blt-fg-70)}
.text-gray-500,
.text-gray-400{color:var(--blt-fg-50)}

/* --- 罫線 --- */
.border-black,
.border-border,
.border-gray-300,
.border-gray-200,
.border-gray-100{border-color:var(--blt-line)}
.bg-border{background-color:var(--blt-line)}

/* --- イベント既定色（青）を BLT のオレンジへ --- */
.text-login-primary,
.text-event-primary{color:var(--blt-orange)}
.border-login-primary{border-color:var(--blt-orange)}
.ring-login-primary,
.ring-event-primary{--tw-ring-color:var(--blt-orange)}

/* --- 黒地に黒を置いている箇所（オーバーレイ等）は触らない。
       .bg-black / .text-white / .border-white は元々ダーク向けなのでそのまま --- */


/* --- 面：ページ地（BLT追記: reset/register/login 等の白地） --- */
/* Tailwind v4 は @theme の値をユーティリティに焼き込むため、--color-portal-bg 等を
   差し替えても効かない。クラス自体を上書きする。任意値クラスはドットを含むのでエスケープする。 */
.bg-portal-bg,
.bg-login-bg,
.bg-\[\#ececec\],
.bg-\[\#f8f8f8\]{background-color:var(--blt-bg)}
.bg-muted,
.bg-gray-50{background-color:rgba(255,255,255,.05)}
/* スケルトンのプレースホルダー */
.bg-gray-200{background-color:rgba(255,255,255,.08)}

[class*="shadow-"]{box-shadow:none}

/* --- 文字・罫線：黒前提のトークンを反転 --- */
[class*="text-black"]{color:var(--blt-fg-70)}
[class*="border-black"]{border-color:var(--blt-line)}

/* --- 標準ヘッダー：LPのヘッダーと同じ質感に --- */
.event-header{
  background:rgba(5,6,10,.92);
  border-bottom:1px solid var(--blt-line);
  box-shadow:none;
  backdrop-filter:blur(16px);
}
.event-header a,
.event-header span{color:var(--blt-fg-70)}

/* --- モジュールページ共通の枠 --- */
.module-content-layout{background:transparent}
.module-content-layout__back-link a{color:var(--blt-fg-50)}
.module-content-layout__back-link a:hover{color:var(--blt-fg)}

/* --- ブース一覧（登壇者一覧として使用）--- */
.booth-widget-list-item__chip,
[class*="__chip"]{background:rgba(255,136,0,.14)}
[class*="__chip-text"]{color:#FFC073}

/* --- 登壇者詳細（ブース詳細）------------------------------------------- */
/* 写真は本文幅いっぱいに伸ばさず、正方形で見せる */
.event-booth-detail-content__image{max-width:420px;margin:0 auto}
.event-booth-detail-content__image img{max-width:420px;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;
  object-position:center 25%;border-radius:16px;display:block;margin:0 auto}

/* 冠（キャッチコピー）・シノプシス・キーワード */
.blt-spk-kanmuri{margin:0 0 10px;font-size:13px;letter-spacing:.16em;color:var(--blt-orange);font-weight:700}
.blt-spk-synopsis{margin:0;font-size:22px;line-height:1.75;font-weight:700;color:var(--blt-fg);text-wrap:pretty}
.blt-spk-vp{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0}
.blt-spk-vp li{display:inline-flex;align-items:center;height:26px;padding:0 12px;
  border:1px solid rgba(125,233,247,.6);border-radius:4px;font-size:12px;color:var(--blt-cyan-lt,#7DE9F7)}

/* --- 詳細ページのブロック見出し（標準は水色帯）を LP のセクション見出しに寄せる --- */
.booth-block__label{
  background:transparent;color:var(--blt-cyan);
  font-family:Roboto,"Noto Sans JP",sans-serif;font-size:12px;letter-spacing:.24em;font-weight:700;
  text-align:left;padding:0 0 10px;margin:32px 0 16px;border-bottom:1px solid var(--blt-line)}
/* text ブロック（やってきたこと）*/
.booth-block-text__item{margin:0 0 18px}
.booth-block-text__title{font-size:16px;font-weight:700;color:var(--blt-fg)}
.booth-block-text__content{font-size:14px;line-height:1.95;color:var(--blt-fg-70)}
/* リンク */
.booth-block-text-link a{color:var(--blt-cyan);text-underline-offset:3px}
/* 本文まわりの幅を LP のコンテンツ幅に合わせる */
.event-booth-detail-content{max-width:920px}

/* --- 登録・完了画面のワーディング用（event-users スコープ対応後に効く）------- */
.blt-reg-lead{font-size:16px;font-weight:700;line-height:1.9;margin:0 0 16px}
.blt-reg-note{font-size:14px;line-height:1.9;color:var(--blt-fg-70);margin:0 0 12px}
.blt-done-lead{font-size:20px;font-weight:700;line-height:1.8;margin:0 0 14px}
.blt-done-note{font-size:14px;line-height:1.9;color:var(--blt-fg-70);margin:0 0 10px}

/* ==========================================================================
   会員導線（event-users スコープ / app-web #1441 以降）
   ログイン・新規登録・登録完了・マイページ。LPと同じ黒基調に揃える。
   ========================================================================== */

/* --- 面：ページ地とカード --- */
.register-layout,
.login-layout{background:var(--blt-bg)}
.register-layout__card,
.login-layout__card{
  background:var(--blt-surface);
  border:1px solid var(--blt-line);
  border-radius:16px;
  overflow:hidden}
/* 左の説明パネルは同じ黒の中でわずかに持ち上げ、罫線で分ける */
.register-layout__left,
.login-layout__left{
  background:rgba(255,255,255,.03);
  border-right:1px solid var(--blt-line)}

/* --- 見出し・説明 --- */
.register-title__heading,
.login-title__heading{
  font-family:Roboto,"Noto Sans JP",sans-serif;
  font-size:32px;line-height:1.35;font-weight:700;color:var(--blt-fg);
  margin:0 0 24px}
.register-title__description,
.login-title__description{color:var(--blt-fg-70)}

/* --- フォーム部品 --- */
.form__label{color:var(--blt-fg-70);font-size:13px;letter-spacing:.04em;font-weight:700}
.input,
input.border-input{
  background:rgba(255,255,255,.06);
  border:1px solid var(--blt-line);
  border-radius:8px;
  color:var(--blt-fg)}
.input::placeholder{color:var(--blt-fg-50)}
.input:focus,
.input:focus-visible{
  border-color:var(--blt-cyan);
  outline:none;
  box-shadow:0 0 0 3px rgba(34,211,238,.22)}
.password-field__input-wrap{background:transparent}

/* 必須マーク：既定の赤はBLTのトーンに無いのでオレンジへ */
.register-input-email__required,
.password-field__required,
[class$="__required"]{color:var(--blt-orange)}

/* --- 送信ボタン --- */
.register-form__submit,
.login-form__submit,
.reset-account-form__submit,
.button--default.bg-login-primary{
  background:var(--blt-orange);
  border:none;border-radius:8px;
  color:#05060A;font-weight:700;letter-spacing:.04em}
.register-form__submit:hover,
.login-form__submit:hover,
.reset-account-form__submit:hover{background:#FF9E2E}
.register-form__submit:disabled,
.login-form__submit:disabled,
.reset-account-form__submit:disabled{
  background:rgba(255,136,0,.28);color:rgba(5,6,10,.55);cursor:not-allowed}

/* --- リンク・言語切替 --- */
.register-form__login-link a,
.login-form__register-link a,
.register-form__login-link button,
a[class*="link"]{color:var(--blt-cyan);text-underline-offset:3px}
.button--ghost{color:var(--blt-fg-70)}
.button--ghost:hover{color:var(--blt-fg);background:rgba(255,255,255,.06)}

/* --- ログイン固有：外部ログインは主導線と競わせずアウトライン扱いに --- */
.login-form__other-service,
.button--default.bg-login-external{
  background:transparent;
  border:1px solid var(--blt-line);
  color:var(--blt-fg);
  border-radius:8px;font-weight:700}
.login-form__other-service:hover,
.button--default.bg-login-external:hover{background:rgba(255,255,255,.08)}

/* 既定の青リンクはBLTのシアンへ */
a[class*="text-blue-"]{color:var(--blt-cyan)}

/* リード文の色（親の text-muted-foreground を継承して沈むのを防ぐ）*/
.login-page-content__description,
.register-title__description{color:var(--blt-fg-70)}
.blt-reg-lead,
.blt-done-lead{color:var(--blt-fg)}

/* 未入力時の送信ボタンは彩度を落として「まだ押せない」ことだけ伝える */
/* --- マイページ ----------------------------------------------------------- */
/* イベント既定のプライマリ（青）をBLTのオレンジへ。見出しのアクセントバー等も含む */
.bg-login-primary{background-color:var(--blt-orange)}

.mypage-layout__title-area{background:var(--blt-surface);border-bottom:1px solid var(--blt-line)}
.mypage-layout__contents-area{background:var(--blt-bg)}
.mypage-title__heading{color:var(--blt-fg)}

/* 下層ページのSP見出し（ログイン情報・会員情報など）。製品側は bg-white 固定で、
   アイコンも明るい地向けの黒いSVGなので、面を落として画像は反転させる。 */
.mypage-sp-title{
  background:var(--blt-surface);
  border:1px solid var(--blt-line);
  border-radius:12px}
.mypage-sp-title__heading{color:var(--blt-fg)}
.mypage-sp-title__back{color:var(--blt-orange)}
.mypage-sp-title img{filter:invert(1) opacity(.8)}

/* 会員QR：当日の主導線なのでオレンジの枠線ボタンに */
.mypage-qr-overlay__trigger{
  color:var(--blt-orange);
  border-color:var(--blt-orange);
  border-radius:8px;font-weight:700}
.mypage-qr-overlay__trigger-label{color:var(--blt-orange)}
.mypage-qr-overlay__trigger:hover{background:rgba(255,136,0,.12)}

/* QRスキャナーのフローティングボタン（マイページTOPのみ表示）。
   製品側が bg-white 固定なので黒地だと白丸が浮く。面と枠をテーマに合わせる。 */
.mypage-qr-scanner__button{
  background:var(--blt-surface-hi);
  border-color:var(--blt-orange);
  box-shadow:0 6px 18px rgba(0,0,0,.45)}
.mypage-qr-scanner__button:hover{background:rgba(255,136,0,.16)}
.mypage-qr-scanner__button-label{color:var(--blt-orange)}
.mypage-qr-scanner__button img{filter:saturate(3.6) hue-rotate(192deg) brightness(1.4)}

/* サイドメニュー：既定の #444 は黒地で沈むため反転 */
.mypage-sidebar-nav__title{color:var(--blt-fg-50);letter-spacing:.12em}
.mypage-sidebar-nav__link,
.mypage-sidebar-nav__label,
.mypage-sidebar-nav__logout{color:var(--blt-fg-70)}
.mypage-sidebar-nav__link:hover,
.mypage-sidebar-nav__logout:hover{color:var(--blt-fg)}
.mypage-sidebar-nav__divider{border-color:var(--blt-line)}
/* 区切り線は li ではなく中の hr が border-gray-200 を持つので、hr を直接指定する */
.mypage-sidebar-nav__divider hr{border-color:var(--blt-line)}
/* hover:bg-black/5 は黒地では見えないので明るい面に差し替える */
.mypage-sidebar-nav__link:hover,
.mypage-sidebar-nav__logout:hover{background:rgba(255,255,255,.08)}
/* SP（850px以下）では製品側が max-[850px]:bg-white でカード状に白くする。
   黒基調だと白い帯になってしまうため、サーフェス色のカードに置き換える。 */
@media (max-width:850px){
  .mypage-sidebar-nav__link,
  .mypage-sidebar-nav__logout{
    background:var(--blt-surface);
    border:1px solid var(--blt-line);
    border-radius:12px}
}

/* カード */
.mypage-top-cards__item{
  background:var(--blt-surface);
  border:1px solid var(--blt-line);
  border-radius:12px}
.mypage-top-cards__item:hover{border-color:rgba(255,136,0,.45)}
.mypage-top-cards__title{color:var(--blt-fg)}
.mypage-top-cards__message{color:var(--blt-fg-50)}
/* アイコンは画像アセットなので色指定が効かない。青→オレンジへ色相だけ回す */
.mypage-top-cards__icon{filter:saturate(3.6) hue-rotate(192deg) brightness(1.4)}

/* --- イベント既定のプライマリ色トークンごと差し替える --------------------
   app-web は --color-event-primary(#06f) を text-/border-/bg-event-primary で
   参照している。トークンを1つ差し替えれば個別クラスを追わずに全体が揃う。 */
:root{--color-event-primary:#FF8800}

/* アイコンは画像アセットなので currentColor が効かない。
   青系（#06f）は色相を回し、黒系（#444）は反転して黒地で見えるようにする。 */
.mypage-qr-overlay__trigger img{filter:saturate(3.6) hue-rotate(192deg) brightness(1.4)}
.mypage-sidebar-nav__link img,
.mypage-sidebar-nav__logout img{filter:invert(1) opacity(.72)}
.mypage-sidebar-nav__link:hover img,
.mypage-sidebar-nav__logout:hover img{filter:invert(1) opacity(1)}

/* Tailwind v4 は border-event-primary 等の値をビルド時に焼き込むため、
   --color-event-primary の差し替えが届かない。実体のある箇所は明示的に指定する。 */
/* マイページのテーマ色は app-web の定数（shared/const/color.ts の event.base=#0066FF）が
   インラインstyleで出力される。イベントのカラー設定を見ていないため設定側では変えられず、
   インラインを上回れるのは !important だけ。インライン値を持つ要素だけを狙って置換する。 */
:root{--color-mypage-menu:rgba(255,255,255,.72)}
[style*="#0066FF"],
[style*="#0066ff"]{color:var(--blt-orange)!important;border-color:var(--blt-orange)!important}
/* インラインは rgb() 形式で出る箇所もある（トップへ戻るボタン等） */
[style*="rgb(0, 102, 255)"]{background-color:var(--blt-orange)!important;border-color:var(--blt-orange)!important}

/* --- 登壇者一覧（ブースモジュール）の既定色 ------------------------------- */
/* 絞り込みバー：既定はベタ塗りの青。黒基調では強すぎるので面を落としオレンジを差し色に */
.event-booth-search-panel__toggle{
  background:rgba(255,255,255,.06);
  border:1px solid var(--blt-line);
  border-radius:8px;
  color:var(--blt-fg)}
.event-booth-search-panel__toggle:hover{background:rgba(255,255,255,.1)}
.event-booth-search-panel__toggle-icon{color:var(--blt-orange)}
.event-booth-search-panel__filter-button-label{color:var(--blt-orange)}

/* 表示切替：非選択は沈め、選択中だけオレンジ */
.booth-display-toggle__button{color:var(--blt-fg-50)}
.booth-display-toggle__button[aria-pressed="true"]{color:var(--blt-orange)}

/* お気に入り（気になる登壇者） */
.booth-favorite-button svg{fill:var(--blt-orange);color:var(--blt-orange)}

/* アウトラインボタン */
.button--outline{color:var(--blt-orange);border-color:var(--blt-orange);background:transparent}
.button--outline:hover{background:rgba(255,136,0,.12)}

/* --- Tailwind v4 は @theme の値をユーティリティに焼き込むため、
       --color-event-primary の差し替えではなくクラス自体を上書きする --------- */
.bg-event-primary{background-color:var(--blt-orange)}
.text-event-primary{color:var(--blt-orange)}
.border-event-primary{border-color:var(--blt-orange)}
button.bg-event-primary,
a.bg-event-primary{color:#05060A;font-weight:700}
.bg-event-primary:hover{background-color:#FF9E2E}

/* --- 会員情報 ------------------------------------------------------------- */
.member-profile-view__card{background:var(--blt-surface);border:1px solid var(--blt-line);border-radius:12px}
.member-profile-view-item__label{color:var(--blt-fg-50)}
.member-profile-view-item__value{color:var(--blt-fg)}
.member-profile-view__item{border-color:var(--blt-line)}

/* ==========================================================================
   フォーム部品とオーバーレイ（shadcn/ui 系）
   .input 以外の select / textarea は白地のまま残り、文字色だけ白を継承して
   「白地に白文字」になる。面と文字をまとめてダークへ。
   ========================================================================== */
.textarea,
.select__trigger,
.select-field__trigger,
.register-profile-form__select{
  background:rgba(255,255,255,.06);
  border:1px solid var(--blt-line);
  border-radius:8px;
  color:var(--blt-fg)}
.textarea::placeholder,
.select__trigger [data-placeholder],
.select__trigger span[data-placeholder]{color:var(--blt-fg-50)}
.textarea:focus,
.select__trigger:focus-visible{
  border-color:var(--blt-cyan);outline:none;box-shadow:0 0 0 3px rgba(34,211,238,.22)}

/* 選択肢のポップオーバー */
.select__content,
.select-field__content,
[class*="dropdown-menu__content"],
[class*="popover__content"],
[class*="command__list"]{
  background:var(--blt-surface);
  border:1px solid var(--blt-line);
  border-radius:10px;
  color:var(--blt-fg);
  box-shadow:0 16px 40px rgba(0,0,0,.6)}
.select__viewport{background:transparent}
.select__item,
.select-field__item,
[class*="dropdown-menu__item"]{color:var(--blt-fg-70);border-radius:6px}
.select__item:hover,
.select__item[data-highlighted],
.select-field__item[data-highlighted],
[class*="dropdown-menu__item"][data-highlighted]{
  background:rgba(255,136,0,.16);color:var(--blt-fg)}
.select__item[data-state="checked"]{color:var(--blt-orange)}
.select__item-indicator{color:var(--blt-orange)}
/* ヘッダーのハンバーガーメニュー：通常のモジュール項目だけラベルに text-popover-foreground
   （＝明るい地前提の暗い色）が付くため、Live!ホームや登壇者だけ黒く沈む。
   Tailwind v4 は @theme の値をクラスへ焼き込むので、変数ではなくラベル側を直接上書きする。 */
[class*="__mobile-nav-item-label"]{color:var(--blt-fg-70)}
[class*="__mobile-nav-item"][data-highlighted] [class*="__mobile-nav-item-label"]{color:var(--blt-fg)}

/* ダイアログ */
[class*="dialog__content"],
[class*="alert-dialog__content"]{
  background:var(--blt-surface);
  border:1px solid var(--blt-line);
  border-radius:14px;
  color:var(--blt-fg)}
[class*="dialog__overlay"],
[class*="alert-dialog__overlay"]{background:rgba(5,6,10,.72)}
[class*="dialog__title"],
[class*="alert-dialog__title"]{color:var(--blt-fg)}
[class*="dialog__description"],
[class*="alert-dialog__description"]{color:var(--blt-fg-70)}

/* 必須マーク（プロフィールフォーム側の別クラス）*/
.register-profile-form__required{color:var(--blt-orange)}

/* フォーカスリングの余白色が白のままだと、黒地では白フチのように見える */
*{--tw-ring-offset-color:var(--blt-bg)}
[class*="dialog__content"] *,
[class*="alert-dialog__content"] *{--tw-ring-offset-color:var(--blt-surface)}
/* ==========================================================================
   app-web にハードコードされた固定色のダーク写像
   Tailwind の任意値（bg-[#f8f8f8] 等）はテーマ変数を経由しないため、
   クラス名そのものを属性セレクタで拾って黒基調へ写像する。
   ソース（src/**）を走査して機械的に生成。
   ========================================================================== */
/* 明るい面（26件）*/
[class*="bg-[#EBF4FF]"],
[class*="bg-[#d5d5d5]"],
[class*="bg-[#d6d6d6]"],
[class*="bg-[#ddd]"],
[class*="bg-[#dddddd]"],
[class*="bg-[#dedede]"],
[class*="bg-[#dfecff]"],
[class*="bg-[#e0e0e0]"],
[class*="bg-[#e3e5e5]"],
[class*="bg-[#e3f2fd]"],
[class*="bg-[#e5e5e5]"],
[class*="bg-[#e6e6e6]"],
[class*="bg-[#e8f4ff]"],
[class*="bg-[#ececec]"],
[class*="bg-[#edeef4]"],
[class*="bg-[#eef2fa]"],
[class*="bg-[#f0f4f9]"],
[class*="bg-[#f0f7ff]"],
[class*="bg-[#f2f4f5]"],
[class*="bg-[#f4f4f4]"],
[class*="bg-[#f4f9ff]"],
[class*="bg-[#f5f5f5]"],
[class*="bg-[#f7f9fa]"],
[class*="bg-[#f8f8f8]"],
[class*="bg-[#fafafa]"],
[class*="bg-[#ffdcab]"]{background-color:rgba(255,255,255,.06)}


/* 中間の面（2件）*/
[class*="bg-[#bdbdbd]"],
[class*="bg-[#c4c4c4]"]{background-color:rgba(255,255,255,.10)}


/* 青い面 → オレンジ（12件）*/
[class*="bg-[#0052cc]"],
[class*="bg-[#0055DD]"],
[class*="bg-[#0055dd]"],
[class*="bg-[#0066FF]"],
[class*="bg-[#0066dd]"],
[class*="bg-[#0066ff]"],
[class*="bg-[#0077ff]"],
[class*="bg-[#0e68df]"],
[class*="bg-[#1677ff]"],
[class*="bg-[#1f8aff]"],
[class*="bg-[#2196f3]"],
[class*="bg-[#264d93]"]{background-color:var(--blt-orange);color:#05060A}


/* 暗い文字 → 反転（23件）*/
[class*="text-[#202325]"],
[class*="text-[#333]"],
[class*="text-[#404446]"],
[class*="text-[#424242]"],
[class*="text-[#444444]"],
[class*="text-[#444]"],
[class*="text-[#466f27]"],
[class*="text-[#516682]"],
[class*="text-[#606060]"],
[class*="text-[#666666]"],
[class*="text-[#666]"],
[class*="text-[#6c7072]"],
[class*="text-[#707070]"],
[class*="text-[#72777a]"],
[class*="text-[#757575]"],
[class*="text-[#808080]"],
[class*="text-[#868686]"],
[class*="text-[#888]"],
[class*="text-[#d01000]"],
[class*="text-[#d32f2f]"],
[class*="text-[#ef6c00]"],
[class*="text-[#f00]"],
[class*="text-[#ff0000]"]{color:var(--blt-fg-70)}


/* 青い文字 → オレンジ（7件）*/
[class*="text-[#0044cc]"],
[class*="text-[#0066FF]"],
[class*="text-[#0066ff]"],
[class*="text-[#0077ff]"],
[class*="text-[#1166fb]"],
[class*="text-[#1976d2]"],
[class*="text-[#2196f3]"]{color:var(--blt-orange)}


/* 明るい罫線（12件）*/
[class*="border-[#ccc]"],
[class*="border-[#cdcfd0]"],
[class*="border-[#d1daeb]"],
[class*="border-[#d2d2d2]"],
[class*="border-[#d6d6d6]"],
[class*="border-[#ddd]"],
[class*="border-[#dddddd]"],
[class*="border-[#e0e0e0]"],
[class*="border-[#e3e5e5]"],
[class*="border-[#e5e5e5]"],
[class*="border-[#e7eaf1]"],
[class*="border-[#f2f4f5]"]{border-color:var(--blt-line)}


/* 青い罫線 → オレンジ（6件）*/
[class*="border-[#0066FF]"],
[class*="border-[#0066ff]"],
[class*="border-[#0077ff]"],
[class*="border-[#1f8aff]"],
[class*="border-[#2196f3]"],
[class*="border-[#82b1ff]"]{border-color:var(--blt-orange)}


/* Tailwind の暗いグレー文字も黒地では沈む */
[class*="text-gray-6"],[class*="text-gray-7"],[class*="text-gray-8"],[class*="text-gray-9"],
[class*="text-neutral-6"],[class*="text-neutral-7"],[class*="text-neutral-8"],
[class*="text-slate-6"],[class*="text-slate-7"],[class*="text-slate-8"],
.text-muted-foreground{color:var(--blt-fg-70)}

/* QRは白の余白（クワイエットゾーン）が無いと読み取れない。ここだけは白を守る */
.mypage-qr-overlay__qr-frame,
.mypage-qr-overlay__ar-grid{background:#FFFFFF}

/* 未入力時の送信ボタン：オレンジを薄めると黒地では茶色く濁るため、無彩色で「押せない」を示す */
.register-form__submit:disabled,
.login-form__submit:disabled,
.reset-account-form__submit:disabled,
button.bg-event-primary:disabled,
button.bg-login-primary:disabled{
  background:rgba(255,255,255,.08);color:var(--blt-fg-50)}

/* SP：左右2カラムが縦積みになるので、区切りは下罫線に */
@media (max-width:768px){
  .register-layout__left,
  .login-layout__left{border-right:none;border-bottom:1px solid var(--blt-line)}
}

/* --- 気になる登壇者一覧の列見出し -----------------------------------------
   app-web は商談予約用のキー MY_PAGE_RESERVATION_INFO_BOOTH（＝「ブース名」）を
   お気に入り一覧の見出しに流用している。ブースを登壇者として使う本イベントでは
   文言が合わないため、表示だけ差し替える。
   （読み上げ上は元の「ブース名」が残る。恒久対応は製品側でのキー分離） */
.favorite-booth-list__header-title{font-size:0}
.favorite-booth-list__header-title::after{
  content:"登壇者";font-size:14px;font-weight:600;color:var(--blt-fg-70)}
.favorite-booth-list{background:var(--blt-surface);border:1px solid var(--blt-line)}
.favorite-booth-list__header-row{border-bottom-color:var(--blt-orange)}

/* --- タイムテーブル（モジュールページ）--------------------------------------
   絞り込みバーは既定でプライマリ色のベタ塗り。ブース側と同じ
   「面を落としてオレンジを差し色」に揃える。 */
.timetable-search-bar__toggle{
  background:rgba(255,255,255,.06);
  border:1px solid var(--blt-line);
  border-radius:8px;
  color:var(--blt-fg)}
.timetable-search-bar__toggle:hover{background:rgba(255,255,255,.1)}
.timetable-search-bar__toggle-icon{color:var(--blt-orange)}
.timetable-search-bar__toggle-icon-text{color:var(--blt-orange)}
.timetable-search-bar__panel,
.timetable-search-bar__panel-inner{
  background:var(--blt-surface);
  border:1px solid var(--blt-line);
  border-radius:10px}
.timetable-list-title{color:var(--blt-fg)}
.timetable-back-link__text{color:var(--blt-fg-50)}
.timetable-back-link:hover .timetable-back-link__text{color:var(--blt-fg)}
.timetable-page-controller{background:transparent}

/* トップへ戻るボタン（既定は #0066FF のベタ塗り） */
.top-button{background-color:var(--blt-orange)!important;color:#05060A}
.top-button:hover{background-color:#FF9E2E}

/* --- 同意チェックボックス（BLT追記） --- */
/* shadcn の .checkbox は border-primary（ほぼ黒）なので黒地では枠が見えない。
   クラス自体を上書きする（@theme の値はユーティリティに焼き込まれるため）。 */
.checkbox{border-color:var(--blt-line);background:rgba(255,255,255,.06)}
.checkbox:hover{border-color:rgba(255,255,255,.3)}
.checkbox[data-state="checked"]{background:var(--blt-orange);border-color:var(--blt-orange);color:#05060A}
/* 規約・プライバシーへのリンク */
.register-terms-agreement a,
.login-terms-agreement a{color:var(--blt-cyan);text-underline-offset:3px}

/* --- 規約・プライバシー本文ページ（BLT追記） --- */
/* /users/terms・/users/privacy-policy。既定は白地・黒文字の素の文書ページで、
   __content が color を黒に戻すためテーマのダーク配色から外れる。
   規約は .terms__*、プライバシーは .privacy-policy__* と**別クラス**なので両方に当てる。 */
.terms, .terms-content,
.privacy-policy, .privacy-policy-content{background:var(--blt-bg)}
.terms__card, .privacy-policy__card{
  max-width:820px;margin:0 auto;
  padding:56px 56px 48px;
  background:var(--blt-surface);
  border:1px solid var(--blt-line);
  border-radius:16px;
  color:var(--blt-fg-70)}
/* h1 はインラインで font-size:1.2rem が入るので !important でないと勝てない */
.terms__card h1, .privacy-policy__card h1{
  font-size:32px!important;line-height:1.35;font-weight:700;color:var(--blt-fg);
  margin:0 0 8px;padding:0 0 20px;border-bottom:1px solid var(--blt-line)}
.terms__content, .privacy-policy__content, .richtext__container{color:var(--blt-fg-70)}

/* 条・節の見出し */
.terms__card .fr-view h3, .privacy-policy__card .fr-view h3{
  position:relative;
  margin:40px 0 14px;padding:0 0 0 14px;
  font-size:17px;line-height:1.6;font-weight:700;color:var(--blt-fg)}
.terms__card .fr-view h3::before, .privacy-policy__card .fr-view h3::before{
  content:"";position:absolute;left:0;top:.3em;bottom:.3em;width:3px;
  border-radius:2px;background:var(--blt-orange)}
.terms__card .fr-view p, .privacy-policy__card .fr-view p{
  margin:0 0 14px;padding:0;
  font-size:15px;line-height:1.95;color:var(--blt-fg-70);text-wrap:pretty}
.terms__card .fr-view a, .privacy-policy__card .fr-view a{color:var(--blt-cyan);text-underline-offset:3px}

/* 前文：オレンジの罫線で本文と区別する */
.terms__card .fr-view .blt-terms-lead, .privacy-policy__card .fr-view .blt-terms-lead{
  margin:24px 0 8px;padding:0 0 0 18px;
  border-left:2px solid var(--blt-orange);
  font-size:16px;line-height:1.95;color:rgba(255,255,255,.82)}
/* 制定日・更新日 */
.terms__card .fr-view .blt-terms-foot, .privacy-policy__card .fr-view .blt-terms-foot{
  margin:44px 0 0;padding:20px 0 0;
  border-top:1px solid var(--blt-line);
  font-size:13px;line-height:1.9;color:var(--blt-fg-50)}

@media (max-width:768px){
  .terms__card, .privacy-policy__card{padding:32px 20px 28px;border-radius:12px;border-left:none;border-right:none}
  .terms__card h1, .privacy-policy__card h1{font-size:22px!important;padding-bottom:16px}
  .terms__card .fr-view h3, .privacy-policy__card .fr-view h3{margin:28px 0 10px;font-size:16px}
  .terms__card .fr-view p, .privacy-policy__card .fr-view p{font-size:14px}
  .terms__card .fr-view .blt-terms-lead, .privacy-policy__card .fr-view .blt-terms-lead{font-size:15px;padding-left:14px}
}
