.page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  padding: 24px 32px;
}

.top-bar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.top-bar-right {
  display: flex;
  align-items: center;
  gap: 20px;
}

.wallet-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 0;
  background: none;
  border: none;
  color: #222222;
}

.wallet-lock {
  font-size: 14px;
}

.menu-button {
  background: none;
  border: none;
  font-size: 22px;
  line-height: 1;
  padding: 0;
  color: #111111;
}
.main-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  margin-top: 96px;
  padding: 0 16px 40px;
}

.oro-logo-section {
  margin-bottom: 40px;
}

.oro-logo-text-main {
  font-size: 28px;
  letter-spacing: 0.08em;
  color: #9c9ca4;
  text-align: center;
}

/* -----------------------------
   ORO SLIDE PANELS (LEFT/RIGHT)
------------------------------*/
.oro-panel {
  display: none; 
  opacity: 0; 
  pointer-events: none;
  position: fixed;
  top: 0;
  width: 320px;
  height: 100vh;
  background: rgba(255,255,255,0.35);
  backdrop-filter: blur(18px);
  box-shadow: 0 0 30px rgba(0,0,0,0.12);
  transition: transform 0.35s ease;
  z-index: 2000;
}

.oro-panel.left {
  left: 0;
  transform: translateX(-100%);
}

.oro-panel.right {
  right: 0;
  transform: translateX(100%);
}

.oro-panel.open {
    display: block; 
    opacity: 1; 
    pointer-events: auto;
  transform: translateX(0);
}

/* -----------------------------
   ORO MODAL
------------------------------*/

.oro-modal.hidden {
  display: none !important;
  display: none !important;
  display: none;
}

.oro-modal-box {
  background: #fff;
  padding: 32px;
  border-radius: 18px;
  min-width: 320px;
  max-width: 480px;
  box-shadow: 0 20px 40px rgba(0,0,0,0.15);
}


/* -----------------------------
   ORO MODAL
------------------------------*/


/* ===== FIX: ハンバーガーを左寄せ、Wallet を右寄せ ===== */
.top-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;  /* ← 左右に分離 */
  width: 100%;
}

.top-bar-left {
  display: flex;
  align-items: center;
}

.top-bar-right {
  display: flex;
  align-items: center;
  gap: 20px;
}

/* ===========================
   ORO WALLET: OVERLAY & PANEL
   =========================== */


/* --- ORO PATCH: 接続前 Apple級 — ソリッド・速い挙動 --- */
.oro-wallet-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.42);
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.2s ease;
  z-index: 1900;
}

.oro-wallet-overlay.is-hidden {
  display: none;
  pointer-events: none;
  opacity: 0;
}

.oro-wallet-panel {
  position: fixed;
  top: 0;
  right: 0;
  height: 100vh;
  width: min(400px, 92vw);
  background: linear-gradient(180deg, #0a0a0c 0%, #0c0c0f 50%, #08080a 100%);
  box-shadow: -12px 0 32px rgba(0, 0, 0, 0.5);
  border-left: 1px solid rgba(255, 255, 255, 0.05);
  transform: translateX(100%);
  opacity: 0;
  transition: transform 0.22s cubic-bezier(0.32, 0.72, 0, 1), opacity 0.2s ease;
  z-index: 2000;
}
/* 極薄ノイズで塗りつぶし感を和らげる（2〜3%） */
.oro-wallet-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: 256px 256px;
  opacity: 0.025;
  pointer-events: none;
}

.oro-wallet-panel.is-hidden {
  display: none;
}

.oro-wallet-panel.is-open {
  transform: translateX(0);
  opacity: 1;
}

.oro-wallet-panel-inner {
  position: relative;
  z-index: 1;
  height: 100%;
  padding: 20px 20px calc(28px + env(safe-area-inset-bottom));
  display: flex;
  flex-direction: column;
  gap: 20px;
  color: #EDEFF5;
  font-size: 14px;
}

.wallet-preconnect-copy {
  padding: 12px 8px 16px;
  text-align: center;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}
.wallet-preconnect-title {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: rgba(245,245,247,0.98);
  line-height: 1.25;
}
.wallet-preconnect-sub {
  margin-top: 8px;
  font-size: 13px;
  font-weight: 400;
  color: rgba(245,245,247,0.78);
}
.wallet-preconnect-tags {
  margin-top: 12px;
  font-size: 11px;
  letter-spacing: 0.06em;
  color: rgba(245,245,247,0.48);
}


.wallet-close {
  margin-left: auto;
  border: none;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
  color: #EDEFF5;
  opacity: 0.9;
  transition: opacity 0.12s ease, background 0.12s ease;
  -webkit-tap-highlight-color: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.wallet-close:hover,
.wallet-close:active {
  opacity: 1;
  background: rgba(255,255,255,0.12);
}

/* --- 接続前ホーム: リード中央・ボタン幅広く下に並べる --- */
.oro-preconnect-home {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
}
.oro-preconnect-home .oro-preconnect-header {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 20px 20px 12px;
  flex-shrink: 0;
}
.oro-preconnect-home .oro-preconnect-lead {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 32px 28px 40px;
  font-size: 15px;
  line-height: 1.65;
  letter-spacing: 0.01em;
  text-align: center;
  max-width: 320px;
  margin-left: auto;
  margin-right: auto;
}
.oro-preconnect-home .oro-preconnect-lead-main {
  display: block;
  font-weight: 650;
  font-size: 17px;
  color: #EDEFF5;
  margin-bottom: 10px;
  letter-spacing: -0.02em;
}
.oro-preconnect-home .oro-preconnect-lead-sub {
  display: block;
  font-weight: 400;
  font-size: 13px;
  color: #9BA3AF;
  line-height: 1.55;
  margin-bottom: 14px;
}
.oro-preconnect-home .oro-preconnect-lead-tags {
  display: block;
  font-size: 11px;
  font-weight: 400;
  color: rgba(155,163,175,0.55);
  letter-spacing: 0.04em;
  line-height: 1.4;
}
.oro-preconnect-home .oro-preconnect-body {
  flex-shrink: 0;
  padding: 0 16px 28px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  box-sizing: border-box;
}
.oro-preconnect-home .oro-preconnect-row {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: none;
  padding: 18px 44px 18px 22px;
  border-radius: 14px;
  color: #EDEFF5;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.15s ease;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
}
/* 下2つ: テキストリンク風・フラット・枠はほぼ見えない・hoverでほんのり発光 */
.oro-preconnect-home .oro-preconnect-row:not(.oro-preconnect-row-primary) {
  background: transparent;
  border: 1px solid rgba(255,255,255,0.04);
}
.oro-preconnect-home .oro-preconnect-row:not(.oro-preconnect-row-primary):hover {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow: 0 0 14px rgba(255,255,255,0.06);
}
.oro-preconnect-home .oro-preconnect-row:not(.oro-preconnect-row-primary):active {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.06);
}
.oro-preconnect-home .oro-preconnect-chev {
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  color: #9BA3AF;
  font-weight: 600;
  font-size: 20px;
  margin-left: 0;
  flex-shrink: 0;
}
.oro-preconnect-home .oro-preconnect-row-primary {
  font-weight: 700;
  background: linear-gradient(135deg, #22306a 0%, #101836 100%) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06), 0 8px 24px rgba(0,0,0,0.4);
}
.oro-preconnect-home .oro-preconnect-row-primary:hover {
  background: linear-gradient(135deg, #2a3878 0%, #141d42 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 10px 28px rgba(0,0,0,0.45);
}
.oro-preconnect-home .oro-preconnect-row-primary .oro-preconnect-chev {
  color: rgba(255,255,255,0.85);
}

/* 接続前パネル: 戻る（‹ Back） */
.oro-preconnect-back {
  display: block;
  width: 100%;
  border: 0;
  background: transparent;
  padding: 12px 2px;
  font-weight: 800;
  font-size: 15px;
  text-align: left;
  color: #EDEFF5;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: opacity 0.12s ease;
}
.oro-preconnect-back:hover,
.oro-preconnect-back:active {
  opacity: 0.9;
}

/* --- Discover sheet: Apple-grade (Notifications-style) --- */
#oro-wallet-panel .oro-discover-sheet .oro-discover-body {
  padding: 24px 20px 28px;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-label {
  margin: 0 0 6px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(245,245,247,.5);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 6px;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-head .oro-discover-label {
  margin: 0;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-refresh {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 0;
  border-radius: 10px;
  background: rgba(255,255,255,.08);
  color: rgba(245,245,247,.9);
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: background 0.15s ease, opacity 0.15s ease;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-refresh:hover {
  background: rgba(255,255,255,.12);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-refresh:disabled,
#oro-wallet-panel .oro-discover-sheet .oro-discover-refresh[aria-busy="true"] {
  opacity: 0.6;
  cursor: not-allowed;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-desc {
  margin: 0 0 24px;
  font-size: 14px;
  line-height: 1.45;
  color: rgba(245,245,247,.78);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-cta {
  width: 100%;
  padding: 14px 20px;
  border-radius: 12px;
  border: 0;
  background: linear-gradient(135deg, #2a3878 0%, #141d42 100%);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.01em;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: filter 0.15s ease, box-shadow 0.15s ease;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 6px 20px rgba(0,0,0,.35);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-cta:hover {
  filter: brightness(1.06);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-cta:active {
  filter: brightness(0.96);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results {
  margin-top: 28px;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-card {
  padding: 16px 0;
  border-bottom: 1px solid rgba(255,255,255,.06);
  background: transparent;
  border-radius: 0;
  gap: 14px;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-card.oro-discover-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: opacity 0.12s ease;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-card.oro-discover-row:hover {
  opacity: 0.95;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-card.oro-discover-row:active {
  opacity: 0.85;
  background: rgba(255,255,255,.04);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-card.oro-discover-row .oro-discover-chev {
  flex-shrink: 0;
  margin-left: 10px;
  font-size: 16px;
  color: rgba(245,245,247,.72);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .oro-discover-connect-btn {
  flex-shrink: 0;
  margin-left: 10px;
  padding: 8px 14px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.08);
  color: #EDEFF5;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .oro-discover-connect-btn:hover {
  background: rgba(255,255,255,.12);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .oro-discover-connect-btn:active {
  opacity: 0.9;
}

/* Restore picker: row-clickable (Apple-grade, same as Discover) */
#oro-wallet-panel .oro-restore-picker .oro-restore-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 0;
  border-bottom: 1px solid rgba(255,255,255,.06);
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: opacity 0.12s ease, background 0.12s ease;
}
#oro-wallet-panel .oro-restore-picker .oro-restore-row:hover {
  opacity: 0.95;
}
#oro-wallet-panel .oro-restore-picker .oro-restore-row:active {
  opacity: 0.85;
  background: rgba(255,255,255,.04);
}
#oro-wallet-panel .oro-restore-picker .oro-restore-row .oro-discover-chev {
  flex-shrink: 0;
  margin-left: 10px;
  font-size: 16px;
  color: rgba(245,245,247,.72);
}

#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-card:last-of-type {
  border-bottom: 0;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-card-name {
  font-size: 15px;
  font-weight: 600;
  color: #EDEFF5;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-card-tag {
  font-size: 12px;
  color: rgba(245,245,247,.55);
  margin-top: 2px;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-button,
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-button-secondary {
  padding: 10px 18px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 600;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  color: #EDEFF5;
  transition: background 0.15s ease, border-color 0.15s ease;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-button:hover,
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-button-secondary:hover {
  background: rgba(255,255,255,.09);
  border-color: rgba(255,255,255,.18);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-button-primary {
  padding: 10px 18px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 600;
  background: linear-gradient(135deg, #2a3878 0%, #141d42 100%);
  border: 1px solid rgba(255,255,255,.12);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 4px 14px rgba(0,0,0,.3);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-help {
  margin-top: 10px;
  padding-top: 12px;
  border-top: 1px solid rgba(255,255,255,.05);
  font-size: 12px;
  line-height: 1.5;
  color: rgba(245,245,247,.65);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .wallet-details {
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 500;
  background: transparent;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 8px;
  color: rgba(245,245,247,.9);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .oro-discover-section-label {
  margin: 24px 0 10px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(245,245,247,.5);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .oro-discover-section-label:first-child {
  margin-top: 0;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .oro-discover-help {
  margin-bottom: 12px;
  font-size: 12px;
  line-height: 1.5;
  color: rgba(245,245,247,.65);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .oro-discover-footer {
  margin: 28px 0 0;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.05);
  font-size: 10px;
  letter-spacing: 0.03em;
  color: rgba(245,245,247,.38);
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-results .oro-discover-error {
  margin: 16px 0 0;
  padding: 12px 14px;
  font-size: 13px;
  line-height: 1.45;
  color: rgba(248,180,180,.95);
  background: rgba(180,60,60,.12);
  border-radius: 10px;
}
#oro-wallet-panel .oro-discover-sheet .oro-discover-status {
  font-size: 14px;
  color: rgba(245,245,247,.7);
}

.wallet-section {
  border-radius: 14px;
  padding: 14px 14px 12px;
  background: rgba(12, 12, 18, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.06);
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.wallet-section-title {
  font-size: 13px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #9fa3b3;
}

.wallet-section-text {
  font-size: 12px;
  color: #b8bccb;
}

.wallet-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.wallet-card-main {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.wallet-card-name {
  font-size: 14px;
  font-weight: 500;
}

.wallet-card-tag {
  font-size: 11px;
  color: #8f93a4;
}

.wallet-card-actions {
  display: flex;
  align-items: center;
  gap: 6px;
}

.wallet-button {
  border-radius: 999px;
  padding: 6px 14px;
  font-size: 12px;
  border: none;
  cursor: pointer;
  white-space: nowrap;
}

.wallet-button-primary {
  background: linear-gradient(135deg, #223a7b, #1a2745);
  color: #f5f6ff;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.45);
}

.wallet-button-secondary {
  background: rgba(255, 255, 255, 0.06);
  color: #f5f5f7;
}

.wallet-button-primary:hover,
.wallet-button-secondary:hover {
  filter: brightness(1.08);
}
.wallet-info {
  width: 22px;
  height: 22px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.38);
  background: transparent;
  color: #e0e2f0;
  font-size: 11px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0.8;
}

.wallet-info:hover {
  opacity: 1;
}

.wallet-info.wallet-details{width:auto;height:auto;padding:6px 10px;font-size:12px;border-radius:999px;opacity:.86;background:rgba(255,255,255,.06);}

.wallet-help {
  display: none;
  margin-top: 6px;
  font-size: 11px;
  color: #c6cad8;
  line-height: 1.5;
}

.wallet-help.is-open {
  display: block;
}

/* ===========================
   ORO WALLET CONFIRM MODAL
   =========================== */

}

.oro-modal-desc {
  color: #c8ccd9;
  font-size: 13px;
  line-height: 1.55;
  margin-bottom: 20px;
}

.oro-modal-walletname {
  font-size: 15px;
  color: #f5f5f7;
  margin-bottom: 16px;
}
.oro-modal-buttons {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.oro-btn-primary {
  padding: 10px 14px;
  text-align: center;
  border-radius: 999px;
  background: linear-gradient(135deg,#203560,#101a30);
  color: #fff;
  font-size: 14px;
  cursor: pointer;
  border: none;
}

.oro-btn-primary:hover {
  filter: brightness(1.08);
}

.oro-btn-cancel {
  padding: 8px 14px;
  text-align: center;
  border-radius: 999px;
 background: rgba(255,255,255,0.08);
  color: #d0d3dd;
  font-size: 13px;
  border: 1px solid rgba(255,255,255,0.15);
  cursor: pointer;
}

.oro-btn-cancel:hover {
  background: rgba(255,255,255,0.15);
}

/* 強制でモーダルを本来のサイズに戻す */

/* スライドパネルのスタイルがモーダルに影響しないように遮断 */
.oro-modal * {
  all: unset;
  display: revert;
  box-sizing: border-box;
  font-family: inherit;
}


/* ==== ORO LIGHT / CLEAN MODAL ==== */

.oro-modal-overlay {
  display: none !important;
  pointer-events: none !important;
  opacity: 0 !important;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.25);  /* 背景を軽く暗くするだけ */
  backdrop-filter: blur(4px);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9998;
}

/* モーダル本体：白・軽い透け感・高級感 */
  background: rgba(255,255,255,0.82);  /* 明るくて軽い透明感 */

.oro-modal h2,
.oro-modal-title {
  font-size: 1.18rem;
  font-weight: 800;
  color: rgba(245,245,247,0.96);
  text-shadow: 0 1px 0 rgba(0,0,0,0.45);
}

.oro-modal p {
  font-size: 0.95rem;
  color: #555; /* 読みやすい柔らかい色 */
  line-height: 1.5;
}

/* Primary（Connect） */
.oro-modal .btn-primary {
  background: #e8ecf7;
  color: #1f3b7a;
  border-radius: 14px;
  padding: 10px 18px;
  transition: all 0.25s ease;
}

.oro-modal .btn-primary:hover {
  background: #f0f4ff;
}

/* Secondary（Cancel） */
.oro-modal .btn-secondary {
  background: #f4f4f4;
  color: #666;
  border-radius: 14px;
  padding: 10px 18px;
}


/* ============================
    ORO SUPREME MODAL (Light)
   ============================ */

}

@keyframes modalPop {
  to {
    opacity: 1;
    transform: scale(1.0) translateY(0);
  }
}

/* タイトル */
.oro-modal-title {
  font-size: 1.22rem;
  font-weight: 600;
  letter-spacing: 0.2px;
  color: #1e1e1e;
}


/* 説明文 */
.oro-modal p {
  font-size: 0.96rem;
  color: #444;
  line-height: 1.55;
}

/* ボタン */
.oro-modal .btn-primary {
  padding: 10px 16px;
  border-radius: 14px;
  background: linear-gradient(
      to bottom,
      #e7ecfa,
      #d5def7
  );
  color: #1c2f60;
  font-weight: 600;
  transition: all 0.25s ease;
}

.oro-modal .btn-primary:hover {
  background: linear-gradient(
      to bottom,
      #eef3ff,
      #e1e8ff
  );
  box-shadow: 0 0 8px rgba(70,90,150,0.25);
}

.oro-modal .btn-secondary {
  padding: 10px 16px;
  border-radius: 14px;
  background: #f4f4f4;
  color: #666;
  transition: all 0.25s ease;
}

.oro-modal .btn-secondary:hover {
  background: #f8f8f8;
}

/* ORO PATCH 2025-12-10: wallet connect center modal (part1) — 接続前統一・ソリッド */
.oro-modal-overlay {
  transition: opacity 0.18s ease;
}
.oro-modal-overlay.is-open {
  display: flex !important;
  align-items: center;
  justify-content: center;
  pointer-events: auto !important;
  opacity: 1 !important;
  background: rgba(0,0,0,0.52);
  z-index: 2300;
}
.oro-modal {
  width: min(420px, 92vw);
  max-height: 80vh;
  border-radius: 20px;
  padding: 22px 24px 20px;
  background: #0c0c0e;
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow: 0 24px 48px rgba(0,0,0,0.6);
  display: flex;
  flex-direction: column;
  gap: 14px;
  color: #f5f5f7;
  transition: transform 0.2s cubic-bezier(0.32,0.72,0,1);
}
.oro-modal-header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
}
.oro-modal-title {
  font-size:1.05rem;
  letter-spacing:0.06em;
  text-transform:uppercase;
}
.oro-modal-sub {
  font-size:0.75rem;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:rgba(226,229,236,0.7);
}
/* ORO PATCH 2025-12-10: wallet connect center modal (part2) */
.oro-modal-body {
  font-size:0.85rem;
  line-height:1.5;
  color:rgba(230,233,244,0.92);
  margin-top:6px;
}
.oro-modal-actions {
  margin-top:12px;
  display:flex;
  gap:10px;
  justify-content:flex-end;
  flex-wrap:wrap;
}
.oro-modal-btn-primary,
.oro-modal-btn-ghost {
  border-radius:999px;
  padding:8px 16px;
  font-size:0.85rem;
  border:none;
  cursor:pointer;
  outline:none;
  white-space:nowrap;
}
.oro-modal-btn-primary {
  background: radial-gradient(circle at top left, #3552ff, #15226a);
  color:#f8f9ff;
  box-shadow:0 12px 30px rgba(14,32,120,0.9);
}
.oro-modal-btn-ghost {
  background:rgba(255,255,255,0.02);
  color:rgba(245,247,255,0.9);
}
@media (max-width:480px){
  .oro-modal { width:94vw; border-radius:16px; padding:18px 18px 16px; }
  .oro-modal-actions { justify-content:center; }
}
/* END ORO PATCH */

/* --- ORO WALLET: create panel details (2025-12-11) --- */
.wallet-section-create {
  margin-top: 2px;
}

.wallet-section-lead {
  margin-top: 4px;
  font-size: 13px;
  color: #d4d7e5;
}

.wallet-feature-list {
  margin: 10px 0 4px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.wallet-feature-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 11px;
  color: #c4c7d8;
}

.wallet-feature-dot {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: linear-gradient(135deg, #4e6bff, #9c6bff);
  margin-top: 5px;
  flex-shrink: 0;
}

.wallet-feature-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.wallet-feature-title {
  font-size: 11px;
  font-weight: 600;
  color: #f5f6ff;
}

.wallet-feature-desc {
  font-size: 11px;
  opacity: 0.85;
}

.wallet-section-footnote {
  margin-top: 8px;
  font-size: 10px;
  opacity: 0.75;
}
/* ORO 2025-12-11: wallet security mode step */
.wallet-section-security { margin-top: 4px; }
.wallet-card-choice { cursor: pointer; transition: box-shadow 0.16s ease, transform 0.12s ease, border-color 0.16s ease; }
.wallet-card-choice:hover { transform: translateY(-1px); box-shadow: 0 10px 28px rgba(0,0,0,0.55); border-color: rgba(111,132,255,0.9); }
.wallet-card-choice-selected { box-shadow: 0 12px 32px rgba(12,26,102,0.95); border-color: rgba(120,140,255,1); }
.wallet-card-pill { margin-top: 6px; align-self: flex-start; font-size: 10px; padding: 2px 8px; border-radius: 999px; background: linear-gradient(135deg,#2f49ff,#6b8bff); color: #f5f7ff; }
.wallet-card-pill-alt { background: linear-gradient(135deg,#5a3aff,#b86bff); }
.wallet-onboarding-actions { margin-top: 12px; display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.wallet-onboarding-actions .wallet-button-primary[disabled] { opacity: 0.45; box-shadow: none; cursor: default; }
/* ORO 2025-12-11: wallet security mode step */
.wallet-section-security { margin-top: 4px; }
.wallet-section-text-subtle { font-size: 12px; opacity: 0.85; }
.wallet-card-choice { cursor: pointer; transition: box-shadow 0.16s ease, transform 0.12s ease, border-color 0.16s ease; }
.wallet-card-choice:hover { transform: translateY(-1px); box-shadow: 0 10px 28px rgba(0,0,0,0.55); border-color: rgba(111,132,255,0.9); }
.wallet-card-choice-selected { box-shadow: 0 12px 32px rgba(12,26,102,0.95); border-color: rgba(120,140,255,1); }
.wallet-card-pill { margin-top: 6px; align-self: flex-start; font-size: 10px; padding: 2px 8px; border-radius: 999px; background: linear-gradient(135deg,#2f49ff,#6b8bff); color: #f5f7ff; }
.wallet-card-pill-alt { background: linear-gradient(135deg,#5a3aff,#b86bff); }
.wallet-onboarding-actions { margin-top: 12px; display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.wallet-onboarding-actions .wallet-button-primary[disabled] { opacity: 0.45; box-shadow: none; cursor: default; }
/* ORO 2025-12-11: wallet PIN / passphrase setup */
.wallet-section-pin,
.wallet-section-passphrase {
  margin-top: 4px;
}

.wallet-pin-wrapper {
  margin-top: 18px;
  display: flex;
  justify-content: center;
}

.wallet-pin-input {
  max-width: 220px;
  width: 100%;
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.6em;
  padding: 10px 16px;
  border-radius: 999px;
  border: none;
  outline: none;
  background: rgba(8, 12, 28, 0.85);
  color: #f5f7ff;
  box-shadow: 0 8px 26px rgba(0,0,0,0.65);
}
.wallet-pass-wrapper {
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.wallet-pass-input {
  width: 100%;
  padding: 10px 12px;
  border-radius: 14px;
  border: none;
  outline: none;
  background: rgba(8, 12, 28, 0.9);
  color: #f5f7ff;
  font-size: 13px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.55);
}

.wallet-error-text {
  margin-top: 8px;
  font-size: 11px;
  color: #ff9b9b;
}

.wallet-onboarding-actions .wallet-button-primary[disabled] {
  opacity: 0.45;
  box-shadow: none;
  cursor: default;
}
/* ORO 2025-12-11: wallet onboarding typography tweak */
.wallet-section-security .wallet-section-title,
.wallet-section-pin .wallet-section-title,
.wallet-section-passphrase .wallet-section-title {
  font-size: 16px;
  letter-spacing: 0.02em;
  text-transform: none;
  color: #e5e7ff;
}

.wallet-section-security .wallet-section-text,
.wallet-section-pin .wallet-section-text,
.wallet-section-passphrase .wallet-section-text,
.wallet-section-security .wallet-section-text-subtle,
.wallet-section-pin .wallet-section-text-subtle,
.wallet-section-passphrase .wallet-section-text-subtle {
  font-size: 13px;
  line-height: 1.5;
  color: #c5cae9;
}

.wallet-section-security .wallet-card-choice {
  margin-top: 12px;
  padding: 12px 14px;
}

.wallet-section-security .wallet-onboarding-actions {
  margin-top: 18px;
}
/* --- ORO PATCH 2025-12-28: ONBOARDING_BUTTONS_ONLY_V4 --- */
#oro-wallet-panel,.oro-wallet-panel{background:linear-gradient(180deg, #0a0a0c 0%, #0c0c0f 50%, #08080a 100%)!important;}
#oro-wallet-panel .oro-wallet-panel-inner,.oro-wallet-panel-inner{display:flex!important;flex-direction:column!important;height:100%!important;padding-bottom:calc(28px + env(safe-area-inset-bottom))!important;}
#oro-wallet-panel .wallet-section-new{margin-top:auto!important;}
#oro-wallet-panel .wallet-section-new,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing{background:transparent!important;border:0!important;padding:0!important;gap:0!important;}
#oro-wallet-panel .wallet-section-new .wallet-section-title,#oro-wallet-panel .wallet-section-new .wallet-section-text,#oro-wallet-panel .wallet-section-new .wallet-help,#oro-wallet-panel .wallet-section-new .wallet-info,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-section-title,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-section-text,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-help,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-info,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-card-main,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-card-name,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-card-tag{display:none!important;}
#oro-wallet-panel .wallet-section-new .wallet-card,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-card,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-card-choice{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;transform:none!important;}
#oro-wallet-panel .wallet-section-new .wallet-card-actions,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-card-actions{width:100%!important;display:flex!important;flex-direction:column!important;gap:12px!important;align-items:stretch!important;justify-content:flex-end!important;}
#oro-wallet-panel .wallet-section-new .wallet-button,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-button{width:100%!important;max-width:520px!important;height:58px!important;border-radius:18px!important;padding:0 18px!important;font-size:15.5px!important;font-weight:600!important;letter-spacing:.02em!important;line-height:1!important;border:1px solid rgba(255,255,255,.1)!important;background:rgba(255,255,255,.05)!important;color:#EDEFF5!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 20px rgba(0,0,0,.35)!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;text-rendering:geometricPrecision!important;}
#oro-wallet-panel .wallet-section-new .wallet-button-primary{background:linear-gradient(135deg,#22306a,#101836)!important;border:1px solid rgba(255,255,255,.12)!important;color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 24px rgba(0,0,0,.4)!important;}
#oro-wallet-panel .wallet-section-new .wallet-button:active,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-button:active{filter:brightness(.94)!important;}
@media (max-width: 480px){#oro-wallet-panel .wallet-section-new .wallet-button,#oro-wallet-panel .wallet-section-new:not([hidden])~.wallet-section-existing .wallet-button{max-width:100%!important;height:54px!important;border-radius:16px!important;font-size:15px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 8px 18px rgba(0,0,0,.45)!important;}}
/* --- END ORO PATCH ONBOARDING_BUTTONS_ONLY_V4 --- */

/* --- ORO PATCH: 接続前パネル全体でボタン・余白を統一 (Security / Create / Restore / Discover) --- */
#oro-wallet-panel .oro-wallet-panel-inner:not(.oro-connected) .wallet-button{
  width:100%!important;max-width:520px!important;height:52px!important;border-radius:18px!important;padding:0 18px!important;font-size:15px!important;font-weight:600!important;letter-spacing:.02em!important;line-height:1!important;border:1px solid rgba(255,255,255,.1)!important;background:rgba(255,255,255,.05)!important;color:#EDEFF5!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 20px rgba(0,0,0,.35)!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,sans-serif!important;-webkit-font-smoothing:antialiased!important;transition:filter .12s ease!important;
}
#oro-wallet-panel .oro-wallet-panel-inner:not(.oro-connected) .wallet-button-primary{background:linear-gradient(135deg,#22306a,#101836)!important;border:1px solid rgba(255,255,255,.12)!important;color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 24px rgba(0,0,0,.4)!important;}
#oro-wallet-panel .oro-wallet-panel-inner:not(.oro-connected) .wallet-button:active{filter:brightness(.94)!important;}
#oro-wallet-panel .oro-wallet-panel-inner:not(.oro-connected) .wallet-section{padding:16px 18px 14px!important;gap:12px!important;}
#oro-wallet-panel .oro-wallet-panel-inner:not(.oro-connected) .wallet-section-title{font-size:12px!important;letter-spacing:.06em!important;color:rgba(245,245,247,.55)!important;}
#oro-wallet-panel .oro-wallet-panel-inner:not(.oro-connected) .wallet-section-text{font-size:13px!important;color:rgba(245,245,247,.75)!important;line-height:1.45!important;}
#oro-wallet-panel .oro-wallet-panel-inner:not(.oro-connected) .wallet-card-name{font-size:15px!important;font-weight:600!important;}
#oro-wallet-panel .oro-wallet-panel-inner:not(.oro-connected) .wallet-card-tag{font-size:12px!important;color:rgba(245,245,247,.5)!important;}
#oro-wallet-panel .oro-wallet-panel-inner:not(.oro-connected) .wallet-onboarding-actions{gap:12px!important;margin-top:16px!important;}
@media (max-width: 480px){#oro-wallet-panel .oro-wallet-panel-inner:not(.oro-connected) .wallet-button{max-width:100%!important;height:50px!important;border-radius:14px!important;font-size:14px!important;}}

/* ORO PATCH: WCM_LOADING_DOTS_V1 BEGIN */
[data-oro-walletconnect].oro-wc-loading{cursor:wait;opacity:.92;white-space:nowrap;}
[data-oro-walletconnect].oro-wc-loading::after{
  content:"...";
  display:inline-block;
  width:1.6em;            /* 幅を固定してレイアウト揺れを完全停止 */
  overflow:hidden;
  vertical-align:baseline;
  clip-path:inset(0 1.6em 0 0);
  animation:oroWcDots 1.0s steps(4,end) infinite;
}
@keyframes oroWcDots{to{clip-path:inset(0 0 0 0);}}
/* ORO PATCH: WCM_LOADING_DOTS_V1 END */
/* ORO PATCH: WCM_MODAL_HARDEN_V2 BEGIN */
/* wcm-modal がDOMに残っても閉状態ではクリックを吸わない */
wcm-modal,w3m-modal{position:fixed!important;inset:0!important;z-index:2147483647!important;}
wcm-modal,w3m-modal{pointer-events:none!important;}
wcm-modal[open],wcm-modal[data-state*="open"],w3m-modal[open],w3m-modal[data-state*="open"]{pointer-events:auto!important;}
/* WalletConnect ボタンの“…”（レイアウト揺れゼロ） */
[data-oro-walletconnect].oro-wc-loading{cursor:wait;opacity:.92;white-space:nowrap;}
[data-oro-walletconnect].oro-wc-loading::after{content:"...";display:inline-block;width:1.6em;overflow:hidden;vertical-align:baseline;clip-path:inset(0 1.6em 0 0);animation:oroWcDots 1.0s steps(4,end) infinite;}
@keyframes oroWcDots{to{clip-path:inset(0 0 0 0);}}
/* ORO PATCH: WCM_MODAL_HARDEN_V2 END */

/* --- ORO PATCH: wallet overlay open state unify --- */
.oro-wallet-overlay.is-open {
  display: block;
  pointer-events: auto;
  opacity: 1;
}
/* --- END ORO PATCH --- */


/* --- ORO PATCH 2026-01-02: topbar wallet icon + font + skin --- */
:root{
  --oro-wallet-accent:#b8bdc7; /* silver */
  --oro-wallet-bg: rgba(240,242,245,.92);
  --oro-wallet-text:#1a365d;
  --oro-wallet-font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}
:root[data-oro-wallet-connected="1"][data-oro-wallet-skin="gold"]{
  --oro-wallet-accent:#d4af37; /* gold */
}
.top-bar .wallet-link{
  display:flex; align-items:center; gap:8px;
  padding:8px 14px; border-radius:999px;
  background:var(--oro-wallet-bg);
}
.top-bar .wallet-link .wallet-text{
  font-family:var(--oro-wallet-font);
  font-weight:800; letter-spacing:.2px;
  color:var(--oro-wallet-text);
}
.top-bar .wallet-link .oro-wallet-icon{
  /* DISABLED wallet-key size */ display:inline-block;
  background:var(--oro-wallet-accent);
  -webkit-mask:url("/ui/assets/wallet_key_mask.svg") center/contain no-repeat;
  mask:url("/ui/assets/wallet_key_mask.svg") center/contain no-repeat;
}
/* --- END ORO PATCH --- */


/* --- ORO PATCH 2026-01-02b: subtle border + separation --- */
.top-bar .wallet-link{
  border: 1px solid rgba(26,54,93,.14);
  box-shadow: 0 1px 10px rgba(0,0,0,.06);
  backdrop-filter: blur(6px);
}
.top-bar .wallet-link:hover{
  border-color: rgba(26,54,93,.22);
  box-shadow: 0 2px 14px rgba(0,0,0,.10);
}
.top-bar .wallet-link:active{
  transform: translateY(1px);
}
/* --- END ORO PATCH 2026-01-02b --- */


/* --- ORO PATCH 2026-01-02c: premium key + subtle frame --- */
:root{
  --oro-wallet-accent:#b8bdc7; /* key silver (always) */
  --oro-wallet-frame: rgba(26,54,93,.16);
  --oro-wallet-shadow: rgba(0,0,0,.08);
}
:root[data-oro-wallet-connected="1"][data-oro-wallet-skin="gold"]{
  --oro-wallet-frame: rgba(212,175,55,.38); /* gold frame only */
  --oro-wallet-shadow: rgba(212,175,55,.16);
}
.top-bar #wallet-button{
  border: 1px solid var(--oro-wallet-frame);
  box-shadow: 0 1px 10px var(--oro-wallet-shadow);
  backdrop-filter: blur(6px);
}
.top-bar #wallet-button:hover{
  box-shadow: 0 2px 14px rgba(0,0,0,.12);
}
.top-bar .oro-wallet-icon{
  /* DISABLED wallet-key size */
  color: var(--oro-wallet-accent);
  flex: 0 0 auto;
}
/* --- END ORO PATCH 2026-01-02c --- */
/* wallet key image (no effects) */
.top-bar .oro-wallet-icon{
  width:22px;
  height:auto;
  display:inline-block;
}
.wallet-btn{
  display:flex;
  align-items:center;
  gap:6px;
}
.wallet-btn .oro-wallet-icon{
  width:22px;
  height:auto;
}
.wallet-btn .wallet-label{
  font-weight:600;
}
/* antique heart key image */
.oro-wallet-key{
  width:24px;
  height:auto;
  vertical-align:middle;
  margin-right:6px;
}
/* antique heart key */
.oro-wallet-key{
  width:24px;
  height:auto;
  vertical-align:middle;
  margin-right:6px;
}
/* wallet key (safe fix) */
#wallet-button{
  display:flex;
  align-items:center;
  gap:6px;
}
#wallet-button .oro-wallet-key{
  width:22px;
  height:auto;
  flex-shrink:0;
}
/* wallet key image size */
.oro-wallet-key{
  width:26px;
  height:auto;
  vertical-align:middle;
  margin-right:6px;
}
/* FORCE wallet key size */
#wallet-button .oro-wallet-key,
.top-bar .oro-wallet-key,
.oro-wallet-key{
  width:26px !important;
  height:auto !important;
  max-width:none !important;
  vertical-align:middle;
  margin-right:6px;
}
/* FORCE wallet key size by height */
.oro-wallet-key{
  height:32px !important;
  width:auto !important;
  max-height:none !important;
  vertical-align:middle;
  margin-right:8px;
}
/* FORCE wallet key BIGGER */
.oro-wallet-key{
  height:60px !important;
  width:auto !important;
  max-height:none !important;
  vertical-align:middle;
  margin-right:10px;
}
/* FORCE wallet key BIGGER */
.oro-wallet-key{
  height:500px !important;
  width:auto !important;
  max-height:none !important;
  vertical-align:middle;
  margin-right:10px;
}
/* FINAL wallet key size */
.oro-wallet-key{
  height:40px !important;
  width:auto !important;
  display:inline-block !important;
}
/* UNLOCK wallet button height */
#wallet-button, .wallet-text, .top-bar{
  height:auto !important;
  line-height:normal !important;
  align-items:center !important;
}
/* HIDE original wallet icon completely */
#wallet-button svg,
#wallet-button .icon,
#wallet-button::before,
#wallet-button::after{
  display:none !important;
  background:none !important;
}
/* HARD HIDE wallet icon (force) */
#wallet-button img,
#wallet-button svg,
#wallet-button i,
#wallet-button .icon,
#wallet-button [class*="icon"],
#wallet-button::before,
#wallet-button::after{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  background:none !important;
  content:none !important;
}
/* Wallet text: make it crisp (targeted) */
#wallet-button .wallet-text{
  color:#1A365D;
  font-weight:700;
  letter-spacing:0.2px;
  text-rendering:geometricPrecision;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
/* GLOBAL text crispness (anti-blur) */
html, body, button, input, textarea, select, a, span, p, div {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: geometricPrecision;
}
/* prevent text blur from transforms */
.top-bar, #wallet-button, .wallet-text {
  transform: none !important;
  opacity: 1 !important;
  filter: none !important;
}
/* FINAL sharpen */
body{
  letter-spacing:0.15px;
}
button, .wallet-text{
  font-weight:700;
  color:#0F2A44;
}
/* ===== oro wallet panel rounding ===== */

/* パネル外枠 */
#oro-wallet-panel{
  border-radius:20px;
  overflow:hidden; /* 角丸を確実に効かせる */
}

/* 内側コンテナ */
#oro-wallet-panel .oro-wallet-panel-inner{
  border-radius:20px;
}

/* 各カード（Create / Discover / Restore） */
#oro-wallet-panel .wallet-card{
  border-radius:16px;
}

/* ボタンも統一して少し丸く */
#oro-wallet-panel .wallet-button{
  border-radius:12px;
}

/* 情報ボタン（i） */
#oro-wallet-panel .wallet-info{
  border-radius:999px;
}
/* ===== oro wallet panel: round LEFT only ===== */

/* パネル外枠：左だけ丸く */
#oro-wallet-panel{
  border-radius:20px 0 0 20px !important;
  overflow:hidden;
}

/* 内側も同じ */
#oro-wallet-panel .oro-wallet-panel-inner{
  border-radius:20px 0 0 20px !important;
}

/* カードは全面OK（そのまま丸） */
#oro-wallet-panel .wallet-card{
  border-radius:16px;
}

/* ボタンは丸 */
#oro-wallet-panel .wallet-button{
  border-radius:12px;
}
/* party popper: keep shape, just make it visible on dark bg */
.oro-party-popper{
  filter: invert(1) brightness(1.4) contrast(1.1);
}
#oro-wallet-congrats{
  position:fixed; inset:0; display:flex;
  align-items:center; justify-content:center;
  background:rgba(0,0,0,.55);
  opacity:0; pointer-events:none;
  transition:.18s; z-index:99999;
}
#oro-wallet-congrats.is-open{opacity:1}
.oro-wallet-congrats-card{
  background:rgba(18,18,22,.86);
  padding:22px; border-radius:18px;
  text-align:center;
}
.oro-wallet-congrats-icon{width:120px}
/* ORO_WALLET_CENTER_FONT */
#oro-wallet-panel .oro-wallet-panel-inner{font-family:system-ui,-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;}
#oro-wallet-panel .wallet-preconnect-copy{display:flex;flex:1;flex-direction:column;justify-content:center;align-items:center;text-align:center;}
#oro-wallet-panel .wallet-preconnect-title{font-size:18px;font-weight:600;color:rgba(245,245,247,.96);}
#oro-wallet-panel .wallet-preconnect-sub{margin-top:6px;font-size:12.5px;color:rgba(245,245,247,.78);}
#oro-wallet-panel .wallet-preconnect-tags{margin-top:10px;font-size:11px;letter-spacing:.08em;color:rgba(245,245,247,.48);}
#oro-wallet-panel .wallet-button{font-family:system-ui,-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;}


/* ORO PATCH 2026-01-09: bottom-back v1 */
.oro-bottom-actions{ margin-top:auto; }


/* ORO_MODAL_READABILITY_V1 */
.oro-modal{ background: rgba(10,10,14,0.96) !important; }
.oro-modal-title{
  color: rgba(245,245,247,0.96) !important;
  font-weight: 800 !important;
  text-shadow: 0 1px 0 rgba(0,0,0,0.55) !important;
}
.oro-modal-body{
  color: rgba(245,245,247,0.82) !important;
  text-shadow: 0 1px 0 rgba(0,0,0,0.45) !important;
}

