:root {
  --dcc-ink: #07111f;
  --dcc-muted: #6f7b8e;
  --dcc-line: rgba(10, 27, 48, 0.11);
  --dcc-panel: #ffffff;
  --dcc-soft: #f3f6fa;
  --dcc-navy: #08111f;
  --dcc-navy-2: #10233c;
  --dcc-mint: #54f2c1;
  --dcc-aqua: #3fd8ff;
  --dcc-violet: #7c71ff;
  --dcc-danger: #ef5d68;
  --dcc-radius-xl: 34px;
  --dcc-radius-lg: 24px;
  --dcc-radius-md: 18px;
  --dcc-shadow: 0 24px 70px rgba(5, 17, 34, 0.14);
}

html,
body {
  width: 100%;
  min-height: 100%;
  margin: 0;
  overflow-x: hidden;
  background: #070f1c;
  -webkit-text-size-adjust: 100%;
}

body.dcc-game-standalone {
  font-family: Inter, Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--dcc-ink);
  overscroll-behavior-x: none;
  touch-action: pan-y;
}

body.dcc-game-standalone.admin-bar {
  min-height: calc(100% - 32px);
}

.dcc-game-standalone *,
.dcc-game-standalone *::before,
.dcc-game-standalone *::after {
  box-sizing: border-box;
  min-width: 0;
}

.dcc-game-standalone button,
.dcc-game-standalone input,
.dcc-game-standalone textarea,
.dcc-game-standalone select {
  font: inherit;
}

.dcc-game-standalone button,
.dcc-game-standalone a {
  -webkit-tap-highlight-color: transparent;
}

.dcc-game-standalone img,
.dcc-game-standalone svg {
  display: block;
  max-width: 100%;
}

.dcc-page-host {
  width: 100%;
  min-height: 100dvh;
  overflow-x: hidden;
}

.dcc-app-root {
  position: relative;
  width: 100%;
  max-width: 480px;
  min-height: 100dvh;
  margin: 0 auto;
  overflow-x: hidden;
  background: #f7f9fc;
  isolation: isolate;
}

.dcc-auth-root {
  color: #fff;
  background: linear-gradient(180deg, #07172f 0%, #111b4c 42%, #eef3fa 62%, #f7f9fc 100%);
}

.dcc-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.dcc-auth-screen {
  position: relative;
  min-height: 100dvh;
  padding: 0 0 max(28px, env(safe-area-inset-bottom));
  background:
    radial-gradient(circle at 50% 58%, rgba(124, 113, 255, .18), transparent 31%),
    linear-gradient(180deg, transparent 0 45%, #eef3fa 61%, #f7f9fc 100%);
}

.dcc-login-hero {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #0b1b42;
}

.dcc-login-hero-art {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 941 / 760;
  object-fit: cover;
  object-position: center top;
  user-select: none;
  -webkit-user-drag: none;
}

.dcc-auth-card {
  position: relative;
  z-index: 2;
  width: calc(100% - 42px);
  margin: -1px auto 0;
  padding: 30px 26px 24px;
  color: var(--dcc-ink);
  border: 1px solid rgba(255, 255, 255, .85);
  border-radius: 38px;
  background: rgba(255, 255, 255, .985);
  box-shadow: 0 30px 70px rgba(24, 38, 74, .20);
  backdrop-filter: blur(18px);
}

.dcc-auth-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background:
    radial-gradient(circle at 92% 8%, rgba(84, 242, 193, .08), transparent 24%),
    radial-gradient(circle at 8% 92%, rgba(124, 113, 255, .06), transparent 22%);
  pointer-events: none;
}

.dcc-card-heading .dcc-kicker,
.dcc-join-intro > span,
.dcc-stage-title span,
.dcc-profile-copy > span {
  color: #178d79;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .16em;
}

.dcc-card-heading .dcc-kicker {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 13px;
  border-radius: 999px;
  background: linear-gradient(135deg, #dffff4, #e8fbf7);
  box-shadow: inset 0 0 0 1px rgba(24, 142, 121, .06);
}

.dcc-card-heading h2 {
  margin: 15px 0 7px;
  color: #111a37;
  font-size: clamp(31px, 8vw, 38px);
  line-height: 1;
  letter-spacing: -.055em;
  font-weight: 950;
}

.dcc-card-heading p {
  margin: 0 0 27px;
  color: #7a8499;
  font-size: 14px;
  line-height: 1.55;
}

.dcc-form { display: grid; gap: 18px; }
.dcc-field { display: grid; gap: 9px; }
.dcc-field > span { color: #18223d; font-size: 13px; font-weight: 900; }
.dcc-field > span small { margin-left: 6px; color: #8490a2; font-size: 10px; }

.dcc-input-wrap {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 58px;
  border: 1px solid var(--dcc-line);
  border-radius: 17px;
  background: #f5f7fb;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease, transform .18s ease;
}

.dcc-input-wrap:focus-within {
  border-color: rgba(22, 151, 127, .5);
  background: #fff;
  box-shadow: 0 0 0 5px rgba(84, 242, 193, .13), 0 12px 30px rgba(17, 40, 71, .07);
}

.dcc-input-wrap > i {
  display: grid;
  place-items: center;
  width: 44px;
  color: #2b7a6c;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: -.04em;
}

.dcc-login-input-wrap {
  min-height: 70px;
  border-color: rgba(83, 103, 137, .16);
  border-radius: 24px;
  background: linear-gradient(180deg, #fbfcff, #f7f9fd);
  box-shadow: 0 10px 25px rgba(25, 43, 77, .055), inset 0 1px 0 rgba(255, 255, 255, .9);
}

.dcc-login-input-wrap:focus-within {
  transform: translateY(-1px);
}

.dcc-login-field-icon {
  flex: 0 0 auto;
  width: 52px !important;
  height: 52px;
  margin-left: 8px;
  border-radius: 18px;
}

.dcc-login-field-icon svg {
  width: 25px;
  height: 25px;
}

.dcc-login-field-icon-user {
  color: #278d7d !important;
  background: linear-gradient(145deg, #d8fff3, #c9f7e9);
}

.dcc-login-field-icon-lock {
  color: #704bdb !important;
  background: linear-gradient(145deg, #eee7ff, #e4dcff);
}

.dcc-input-wrap input,
.dcc-input-wrap select,
.dcc-input-wrap textarea {
  width: 100%;
  min-height: 56px;
  margin: 0;
  padding: 0 15px;
  color: var(--dcc-ink);
  border: 0;
  outline: 0;
  background: transparent;
  font-size: 15px;
}

.dcc-login-input-wrap input {
  min-height: 68px;
  padding-left: 16px;
  font-size: 16px;
  font-weight: 650;
}

.dcc-input-wrap input::placeholder { color: #aab3c3; font-weight: 500; }

.dcc-password-toggle {
  flex: 0 0 auto;
  height: 36px;
  margin-right: 8px;
  padding: 0 10px;
  color: #617084;
  border: 0;
  border-radius: 12px;
  background: #e8edf4;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}

.dcc-login-password-toggle {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin-right: 8px;
  padding: 0;
  color: #a2adbf;
  border-radius: 16px;
  background: transparent;
}

.dcc-login-password-toggle svg { width: 26px; height: 26px; }
.dcc-login-password-toggle .dcc-eye-closed { display: none; }
.dcc-login-password-toggle.is-visible .dcc-eye-open { display: none; }
.dcc-login-password-toggle.is-visible .dcc-eye-closed { display: block; }

.dcc-primary-button {
  width: 100%;
  min-height: 60px;
  margin-top: 4px;
  color: #061713;
  border: 0;
  border-radius: 19px;
  background: linear-gradient(135deg, var(--dcc-mint), #a5ffdd);
  box-shadow: 0 15px 30px rgba(53, 220, 171, .25);
  font-size: 15px;
  font-weight: 900;
  cursor: pointer;
}

.dcc-login-primary-button {
  position: relative;
  isolation: isolate;
  min-height: 70px;
  margin-top: 6px;
  overflow: hidden;
  border-radius: 25px;
  background: linear-gradient(100deg, #58efd0 0%, #79f2d5 52%, #55dfbd 100%);
  box-shadow: 0 18px 38px rgba(51, 218, 176, .30), inset 0 1px 0 rgba(255,255,255,.45);
  color: #0c2440;
  font-size: 17px;
  letter-spacing: -.02em;
}

.dcc-login-primary-button::before,
.dcc-login-primary-button::after {
  position: absolute;
  z-index: -1;
  color: rgba(255, 255, 255, .88);
  font-size: 22px;
  line-height: 1;
}

.dcc-login-primary-button::before { content: "✦"; left: 22px; top: 20px; }
.dcc-login-primary-button::after { content: "✧"; right: 22px; top: 21px; }
.dcc-login-primary-button:hover { transform: translateY(-1px); }
.dcc-primary-button:disabled { opacity: .68; cursor: wait; transform: none; }

.dcc-auth-links {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 24px;
  color: #858fa2;
  font-size: 13px;
}

.dcc-auth-links a,
.dcc-text-link {
  color: #12a486;
  font-weight: 950;
  text-decoration: none;
}

.dcc-auth-links a { display: inline-flex; align-items: center; gap: 5px; }
.dcc-auth-links a b { font-size: 21px; line-height: 1; font-weight: 500; }

.dcc-notice {
  margin: 0 0 16px;
  padding: 13px 14px;
  border-radius: 15px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
}
.dcc-notice-error { color: #8e2430; background: #fff0f2; border: 1px solid #ffd6db; }
.dcc-notice-success { color: #08664f; background: #e8fff7; border: 1px solid #c4f7e7; }

.dcc-join-root { background: #f5f7fb; }
.dcc-join-header {
  position: sticky;
  top: 0;
  z-index: 20;
  display: grid;
  grid-template-columns: 42px 1fr 42px;
  align-items: center;
  min-height: 72px;
  padding: max(10px, env(safe-area-inset-top)) 18px 10px;
  border-bottom: 1px solid rgba(8, 17, 31, .07);
  background: rgba(245,247,251,.88);
  backdrop-filter: blur(18px);
}
.dcc-join-header > div { display: flex; flex-direction: column; align-items: center; }
.dcc-join-header span { color: #728096; font-size: 9px; font-weight: 900; letter-spacing: .15em; }
.dcc-join-header strong { margin-top: 3px; font-size: 16px; }
.dcc-join-header > em { display: grid; place-items: center; width: 34px; height: 34px; color: #087f69; border-radius: 12px; background: #ddfff3; font-size: 11px; font-style: normal; font-weight: 900; }

.dcc-icon-button {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  padding: 0;
  color: var(--dcc-ink);
  border: 1px solid var(--dcc-line);
  border-radius: 14px;
  background: #fff;
  text-decoration: none;
  font-size: 19px;
  font-weight: 800;
}

.dcc-join-content { padding: 26px 18px 44px; }
.dcc-join-intro { padding: 5px 4px 25px; }
.dcc-join-intro h1 { max-width: 360px; margin: 9px 0 10px; font-size: clamp(28px, 8vw, 38px); line-height: 1.08; letter-spacing: -.05em; }
.dcc-join-intro p { margin: 0; color: var(--dcc-muted); font-size: 13px; line-height: 1.62; }
.dcc-join-form { gap: 18px; }

.dcc-form-section,
.dcc-terms-card,
.dcc-empty-card {
  padding: 21px 17px;
  border: 1px solid rgba(8,17,31,.06);
  border-radius: var(--dcc-radius-lg);
  background: #fff;
  box-shadow: 0 12px 38px rgba(11, 25, 42, .05);
}
.dcc-form-section { display: grid; gap: 15px; }
.dcc-section-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 2px; }
.dcc-section-heading > b { display: grid; place-items: center; width: 38px; height: 38px; color: #05745f; border-radius: 14px; background: #e2fff5; font-size: 11px; }
.dcc-section-heading > div { display: flex; flex-direction: column; gap: 3px; }
.dcc-section-heading strong { font-size: 15px; }
.dcc-section-heading span { color: #8a95a5; font-size: 11px; }
.dcc-field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; }

.dcc-avatar-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 10px; }
.dcc-avatar-option { position: relative; display: flex; flex-direction: column; align-items: center; padding: 10px 7px 9px; border: 1px solid var(--dcc-line); border-radius: 18px; background: #f7f9fc; cursor: pointer; }
.dcc-avatar-option input { position: absolute; opacity: 0; pointer-events: none; }
.dcc-avatar-image { display: grid; place-items: center; width: 68px; height: 68px; padding: 6px; border-radius: 22px; background: #e9eef5; overflow: hidden; }
.dcc-avatar-image img { width: 100%; height: 100%; object-fit: contain; }
.dcc-avatar-option strong { max-width: 100%; margin-top: 8px; font-size: 11px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dcc-avatar-option em { margin-top: 3px; color: #8a95a5; font-size: 9px; font-style: normal; font-weight: 800; }
.dcc-avatar-option input:checked + .dcc-avatar-image { box-shadow: 0 0 0 3px rgba(26,167,134,.32); background: #ddfff4; }
.dcc-avatar-option:has(input:checked) { border-color: #1aa786; background: #edfff9; box-shadow: 0 0 0 3px rgba(84,242,193,.18); }
.dcc-avatar-option:has(input:checked)::after { content: "✓"; position: absolute; top: 7px; right: 7px; display: grid; place-items: center; width: 20px; height: 20px; color: #fff; border-radius: 8px; background: #169477; font-size: 11px; font-weight: 900; }

.dcc-terms-card label { display: flex; align-items: flex-start; gap: 10px; color: #465366; font-size: 12px; line-height: 1.55; }
.dcc-terms-card input { flex: 0 0 auto; width: 18px; height: 18px; margin-top: 1px; accent-color: #158c73; }
.dcc-join-submit { margin-top: 0; }
.dcc-text-link { display: block; padding: 7px 0 0; text-align: center; font-size: 13px; }

.dcc-home-root { padding-bottom: 102px; background: #f4f7fb; }
.dcc-home-header {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 72px;
  padding: max(12px, env(safe-area-inset-top)) 18px 12px;
  border-bottom: 1px solid rgba(8,17,31,.06);
  background: rgba(244,247,251,.9);
  backdrop-filter: blur(18px);
}
.dcc-mini-brand { display: flex; align-items: center; gap: 10px; }
.dcc-mini-brand > span { display: grid; place-items: center; width: 40px; height: 40px; color: #071b15; border-radius: 15px; background: var(--dcc-mint); font-weight: 1000; }
.dcc-mini-brand > div { display: flex; flex-direction: column; gap: 2px; }
.dcc-mini-brand b { max-width: 255px; font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dcc-mini-brand em { color: #7f8b9c; font-size: 8px; font-style: normal; font-weight: 900; letter-spacing: .13em; }
.dcc-home-header form { margin: 0; }
.dcc-logout-button { cursor: pointer; }

.dcc-home-content { padding: 15px 18px 34px; }
.dcc-profile-hero {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 104px;
  min-height: 225px;
  padding: 25px 22px;
  color: #fff;
  border-radius: 32px;
  background:
    radial-gradient(circle at 84% 20%, rgba(84,242,193,.25), transparent 28%),
    linear-gradient(145deg, #07111f, #142b45 68%, #16384a);
  box-shadow: 0 24px 55px rgba(4,17,31,.18);
  overflow: hidden;
}
.dcc-profile-hero::before { content: ""; position: absolute; width: 190px; height: 190px; right: -90px; bottom: -100px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; box-shadow: 0 0 0 28px rgba(255,255,255,.025), 0 0 0 58px rgba(255,255,255,.018); }
.dcc-profile-copy { position: relative; z-index: 2; padding-top: 7px; }
.dcc-profile-copy h1 { margin: 10px 0 7px; font-size: 30px; letter-spacing: -.045em; }
.dcc-profile-copy p { margin: 0; color: rgba(255,255,255,.62); font-size: 12px; }
.dcc-profile-avatar { position: relative; z-index: 2; align-self: center; display: grid; place-items: center; width: 104px; height: 104px; padding: 8px; border: 1px solid rgba(255,255,255,.15); border-radius: 34px; background: rgba(255,255,255,.08); transform: rotate(4deg); }
.dcc-profile-avatar img { width: 90px; height: 90px; object-fit: contain; transform: rotate(-4deg); }
.dcc-profile-code { position: absolute; z-index: 2; left: 22px; right: 22px; bottom: 18px; display: flex; align-items: center; justify-content: space-between; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.1); }
.dcc-profile-code span { color: rgba(255,255,255,.48); font-size: 9px; font-weight: 900; letter-spacing: .14em; }
.dcc-profile-code strong { color: var(--dcc-mint); font-size: 13px; letter-spacing: .05em; }

.dcc-balance-panel {
  position: relative;
  margin-top: 14px;
  padding: 22px;
  border: 1px solid rgba(8,17,31,.06);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(11,25,42,.06);
}
.dcc-balance-main { display: grid; grid-template-columns: 1fr auto; align-items: end; column-gap: 8px; }
.dcc-balance-main > span { grid-column: 1 / -1; margin-bottom: 8px; color: #7f8a9a; font-size: 9px; font-weight: 900; letter-spacing: .13em; }
.dcc-balance-main strong { font-size: clamp(34px, 11vw, 48px); line-height: 1; letter-spacing: -.055em; overflow-wrap: anywhere; }
.dcc-balance-main em { padding-bottom: 5px; color: #11836c; font-size: 14px; font-style: normal; font-weight: 1000; }
.dcc-balance-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 18px; padding-top: 14px; border-top: 1px solid #edf0f4; }
.dcc-balance-meta span { display: flex; align-items: center; gap: 6px; color: #7f8a9a; font-size: 10px; font-weight: 800; }
.dcc-balance-meta span i { width: 7px; height: 7px; border-radius: 50%; background: #f0b34c; box-shadow: 0 0 0 4px #fff5dc; }
.dcc-balance-meta b { max-width: 58%; color: #5d6878; font-size: 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.dcc-stage-section,
.dcc-quick-section { margin-top: 26px; }
.dcc-stage-title { display: flex; align-items: end; justify-content: space-between; margin: 0 3px 13px; }
.dcc-stage-title h2 { margin: 4px 0 0; font-size: 21px; letter-spacing: -.035em; }
.dcc-stage-title > em { color: #9da6b3; font-size: 12px; font-style: normal; font-weight: 900; }
.dcc-stage-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.dcc-stage-grid article { display: flex; min-height: 110px; flex-direction: column; padding: 17px; border: 1px solid rgba(8,17,31,.06); border-radius: 22px; background: #fff; }
.dcc-stage-grid article b { color: #a0a8b4; font-size: 10px; }
.dcc-stage-grid article strong { margin-top: auto; font-size: 15px; }
.dcc-stage-grid article span { margin-top: 4px; color: #8993a2; font-size: 10px; }
.dcc-stage-grid article.is-active { color: #071b15; border-color: transparent; background: linear-gradient(145deg, var(--dcc-mint), #b6ffe4); }
.dcc-stage-grid article.is-active b,
.dcc-stage-grid article.is-active span { color: rgba(7,27,21,.58); }

.dcc-quick-list { display: grid; gap: 10px; }
.dcc-quick-list button { display: grid; grid-template-columns: 46px 1fr auto; align-items: center; gap: 12px; width: 100%; min-height: 76px; padding: 12px 15px; text-align: left; border: 1px solid rgba(8,17,31,.06); border-radius: 22px; background: #fff; opacity: 1; }
.dcc-quick-list button > i { display: grid; place-items: center; width: 46px; height: 46px; color: #08765f; border-radius: 16px; background: #e2fff5; font-style: normal; font-weight: 1000; }
.dcc-quick-list button > span { display: flex; flex-direction: column; gap: 4px; }
.dcc-quick-list button strong { font-size: 14px; }
.dcc-quick-list button em { color: #8a94a3; font-size: 10px; font-style: normal; }
.dcc-quick-list button > b { color: #98a1ae; font-size: 9px; }

.dcc-bottom-nav {
  position: fixed;
  z-index: 50;
  left: 50%;
  bottom: 0;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  width: min(100%, 480px);
  min-height: 78px;
  padding: 9px 10px max(9px, env(safe-area-inset-bottom));
  border-top: 1px solid rgba(8,17,31,.07);
  background: rgba(255,255,255,.94);
  backdrop-filter: blur(18px);
  transform: translateX(-50%);
}
.dcc-bottom-nav a,
.dcc-bottom-nav > span { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; color: #9aa3af; text-decoration: none; }
.dcc-bottom-nav i { font-size: 18px; font-style: normal; }
.dcc-bottom-nav span span,
.dcc-bottom-nav a span { font-size: 8px; font-weight: 900; letter-spacing: .08em; }
.dcc-bottom-nav .is-current { color: #0b7b65; }
.dcc-bottom-nav .dcc-nav-core { align-self: start; margin-top: -28px; }
.dcc-bottom-nav .dcc-nav-core i { display: grid; place-items: center; width: 54px; height: 54px; color: #071b15; border: 6px solid #f4f7fb; border-radius: 20px; background: var(--dcc-mint); box-shadow: 0 12px 24px rgba(35,190,143,.25); font-size: 20px; font-weight: 1000; }
.dcc-bottom-nav .dcc-nav-core span { color: #0b7b65; }

@media (max-width: 380px) {
  .dcc-auth-screen { padding-left: 16px; padding-right: 16px; }
  .dcc-auth-card { padding-left: 17px; padding-right: 17px; }
  .dcc-join-content,
  .dcc-home-content { padding-left: 14px; padding-right: 14px; }
  .dcc-field-grid { grid-template-columns: 1fr; }
  .dcc-avatar-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .dcc-profile-hero { grid-template-columns: 1fr 88px; padding-left: 18px; padding-right: 18px; }
  .dcc-profile-avatar { width: 88px; height: 88px; }
  .dcc-profile-avatar img { width: 76px; height: 76px; }
  .dcc-profile-code { left: 18px; right: 18px; }
}

@media (min-width: 481px) {
  .dcc-app-root { box-shadow: 0 0 0 1px rgba(255,255,255,.04), 0 40px 110px rgba(0,0,0,.32); }
}

@media (max-width: 782px) {
  body.dcc-game-standalone.admin-bar { padding-top: 46px; }
}

/* v0.2.0 · Join validation and center selection */
.dcc-id-check-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 92px;
  gap: 9px;
  width: 100%;
}

.dcc-id-check-button {
  min-height: 58px;
  padding: 0 12px;
  color: #0a735f;
  border: 1px solid rgba(10, 115, 95, .18);
  border-radius: 17px;
  background: #e2fff5;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
  cursor: pointer;
}

.dcc-id-check-button:disabled {
  opacity: .62;
  cursor: wait;
}

.dcc-field-status,
.dcc-field-help {
  display: block;
  color: #8a95a5;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.45;
}

.dcc-field-status.is-success { color: #08745d; }
.dcc-field-status.is-error { color: #b33a46; }
.dcc-field-status.is-loading { color: #6d68b8; }

.dcc-select-wrap select {
  padding-right: 42px;
  appearance: none;
  -webkit-appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, #6b7789 50%),
    linear-gradient(135deg, #6b7789 50%, transparent 50%);
  background-position:
    calc(100% - 20px) 25px,
    calc(100% - 14px) 25px;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
}

.dcc-select-wrap select:disabled {
  color: #9ba4b1;
  cursor: not-allowed;
}

@media (max-width: 340px) {
  .dcc-id-check-row { grid-template-columns: minmax(0, 1fr) 82px; }
  .dcc-id-check-button { padding: 0 8px; font-size: 11px; }
}

/* v0.4.0 · Referral link and ledger-based NFT / group status */
.dcc-referral-card {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) 64px;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
  padding: 15px;
  border: 1px solid rgba(8,17,31,.06);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(11,25,42,.05);
}
.dcc-referral-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  color: #08745f;
  border-radius: 16px;
  background: #e5fff6;
  font-size: 20px;
  font-weight: 1000;
}
.dcc-referral-copy { min-width: 0; }
.dcc-referral-copy strong { display: block; font-size: 14px; letter-spacing: -.02em; }
.dcc-referral-copy span { display: block; margin-top: 4px; color: #7e8999; font-size: 10px; line-height: 1.45; }
.dcc-copy-referral {
  display: flex;
  min-height: 54px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  padding: 6px;
  color: #fff;
  border: 0;
  border-radius: 17px;
  background: #0a7c66;
  font-size: 10px;
  font-weight: 900;
  cursor: pointer;
}
.dcc-copy-referral i { font-size: 16px; font-style: normal; }
.dcc-copy-referral:disabled { opacity: .78; cursor: wait; }
.dcc-copy-referral.is-copied { background: #132b43; }
.dcc-copy-referral.is-error { background: #9d3440; }

.dcc-ledger-section { margin-top: 26px; }
.dcc-ledger-panel {
  padding: 18px;
  color: #fff;
  border-radius: 28px;
  background:
    radial-gradient(circle at 88% 5%, rgba(84,242,193,.2), transparent 24%),
    linear-gradient(145deg, #0b6eaa, #0d88c9 62%, #166fa9);
  box-shadow: 0 18px 42px rgba(9,105,163,.2);
}
.dcc-volume-heading {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 1000;
  letter-spacing: .04em;
}
.dcc-volume-heading.is-personal { background: #55aa3c; }
.dcc-volume-heading.is-group { background: #7454bc; }
.dcc-ledger-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 67px;
  padding: 11px 2px;
}
.dcc-ledger-row > span { min-width: 0; }
.dcc-ledger-row strong { display: block; font-size: 13px; font-weight: 800; }
.dcc-ledger-row small { display: block; margin-top: 4px; color: rgba(255,255,255,.67); font-size: 9px; line-height: 1.4; }
.dcc-ledger-row > b { max-width: 175px; text-align: right; font-size: 15px; line-height: 1.3; overflow-wrap: anywhere; }
.dcc-ledger-divider { height: 1px; margin: 7px 0 16px; background: rgba(255,255,255,.15); }

@media (max-width: 360px) {
  .dcc-referral-card { grid-template-columns: 42px minmax(0, 1fr) 58px; gap: 9px; padding: 13px; }
  .dcc-referral-icon { width: 42px; height: 42px; }
  .dcc-copy-referral { min-height: 50px; }
  .dcc-ledger-row > b { max-width: 130px; font-size: 13px; }
}


/* v0.5.0 · Admin-managed home icon menu, banners, and bottom navigation */
.dcc-home-banner {
  width: 100%;
  aspect-ratio: 267 / 86;
  margin-top: 14px;
  border: 1px solid rgba(8,17,31,.06);
  border-radius: 22px;
  background: #e9eef5;
  box-shadow: 0 12px 30px rgba(11,25,42,.05);
  overflow: hidden;
}
.dcc-home-banner a,
.dcc-home-banner > img {
  display: block;
  width: 100%;
  height: 100%;
}
.dcc-home-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.dcc-home-menu-panel {
  margin-top: 14px;
  padding: 18px 12px 15px;
  border: 1px solid rgba(8,17,31,.06);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(11,25,42,.05);
}
.dcc-home-menu-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px 6px;
}
.dcc-home-menu-item {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  color: #182336;
  text-align: center;
  text-decoration: none;
}
.dcc-home-menu-icon {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  padding: 7px;
  border: 1px solid rgba(8,17,31,.06);
  border-radius: 20px;
  background: #f1f5fb;
  box-shadow: 0 8px 20px rgba(11,25,42,.06);
  overflow: hidden;
  font-style: normal;
}
.dcc-home-menu-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.dcc-home-menu-icon b {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: #08745f;
  border-radius: 14px;
  background: #dcfff3;
  font-size: 17px;
  font-weight: 1000;
}
.dcc-home-menu-item > strong {
  display: block;
  width: 100%;
  min-height: 28px;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.dcc-home-menu-item[href]:active .dcc-home-menu-icon {
  transform: scale(.96);
}

.dcc-bottom-nav {
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
}
.dcc-bottom-nav a,
.dcc-bottom-nav > span {
  min-width: 0;
}
.dcc-bottom-nav i {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  overflow: hidden;
}
.dcc-bottom-nav i img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.dcc-bottom-nav i b {
  color: currentColor;
  font-size: 14px;
  font-weight: 1000;
}
.dcc-bottom-nav .dcc-nav-core i {
  padding: 8px;
}
.dcc-bottom-nav .dcc-nav-core i img {
  width: 100%;
  height: 100%;
}
.dcc-bottom-nav .dcc-nav-core i b {
  color: #071b15;
  font-size: 20px;
}

@media (max-width: 350px) {
  .dcc-home-menu-panel { padding-left: 8px; padding-right: 8px; }
  .dcc-home-menu-grid { gap: 14px 3px; }
  .dcc-home-menu-icon { width: 48px; height: 48px; border-radius: 17px; }
  .dcc-home-menu-item > strong { font-size: 9px; }
}


/* v0.7.0 · MATCH event pages */
.dcc-match-root { background: #f6f8fc; }
.dcc-match-header {
  position: sticky;
  z-index: 30;
  top: 0;
  display: grid;
  grid-template-columns: 42px 1fr 48px;
  align-items: center;
  gap: 10px;
  min-height: 78px;
  padding: max(12px, env(safe-area-inset-top)) 18px 12px;
  border-bottom: 1px solid rgba(7,17,31,.07);
  background: rgba(247,249,252,.94);
  backdrop-filter: blur(18px);
}
.dcc-match-back {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  color: #087e6a;
  border-radius: 14px;
  background: #e9fff7;
  font-size: 22px;
  font-weight: 900;
  text-decoration: none;
}
.dcc-match-member { display: grid; gap: 3px; }
.dcc-match-member span { color: #178d78; font-size: 10px; font-weight: 900; letter-spacing: .13em; }
.dcc-match-member strong { font-size: 17px; letter-spacing: -.025em; }
.dcc-match-avatar { width: 46px; height: 46px; padding: 3px; border-radius: 17px; background: #e8edf5; overflow: hidden; }
.dcc-match-avatar img { width: 100%; height: 100%; border-radius: 14px; object-fit: cover; }
.dcc-match-content { padding: 24px 18px max(34px, env(safe-area-inset-bottom)); }
.dcc-match-intro span,
.dcc-match-section-title span,
.dcc-match-round-heading span,
.dcc-match-start-card > div > span,
.dcc-match-result-kicker { color: #078b74; font-size: 10px; font-weight: 1000; letter-spacing: .14em; }
.dcc-match-intro h1 { margin: 8px 0 8px; font-size: 34px; letter-spacing: -.055em; }
.dcc-match-intro p { margin: 0; color: var(--dcc-muted); font-size: 13px; line-height: 1.55; }
.dcc-match-assets { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin-top: 22px; }
.dcc-match-assets article { display: grid; min-height: 160px; padding: 20px 17px; border-radius: 26px; background: #fff; box-shadow: 0 14px 38px rgba(12,29,52,.07); }
.dcc-match-assets i { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 18px; color: #087e6a; border-radius: 15px; background: #dffff4; font-style: normal; font-weight: 1000; }
.dcc-match-assets article:nth-child(2) i { color: #1261a3; background: #e8f2ff; }
.dcc-match-assets span { color: #6d7889; font-size: 11px; }
.dcc-match-assets strong { margin-top: 5px; font-size: 23px; letter-spacing: -.04em; }
.dcc-match-assets small { align-self: end; margin-top: 10px; color: #9aa3b0; font-size: 10px; }
.dcc-match-status-card { display: grid; grid-template-columns: 42px 1fr; gap: 12px; margin-top: 18px; padding: 18px; border: 1px solid #ffd3d5; border-left: 4px solid #df4450; border-radius: 22px; background: #fff0f0; }
.dcc-match-status-card.is-open { border-color: #a9eddc; border-left-color: #0ca27e; background: #ecfff9; }
.dcc-match-status-icon { display: grid; place-items: center; width: 38px; height: 38px; color: #c83340; border-radius: 14px; background: rgba(255,255,255,.75); }
.dcc-match-status-card.is-open .dcc-match-status-icon { color: #078b70; }
.dcc-match-status-copy { display: grid; gap: 6px; }
.dcc-match-status-copy strong { font-size: 14px; line-height: 1.4; }
.dcc-match-status-copy span { color: #7f4b50; font-size: 11px; line-height: 1.5; }
.dcc-match-status-card.is-open .dcc-match-status-copy span { color: #317166; }
.dcc-match-start-card { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 18px; padding: 22px; color: #fff; border-radius: 28px; background: linear-gradient(135deg, #0a1728, #153a47); box-shadow: 0 18px 40px rgba(8,24,39,.2); }
.dcc-match-start-card > div { display: grid; gap: 5px; }
.dcc-match-start-card > div > strong { font-size: 23px; }
.dcc-match-start-card > div > small { color: rgba(255,255,255,.62); font-size: 10px; }
.dcc-match-start-button,
.dcc-match-state-button { flex: 0 0 auto; display: grid; place-items: center; min-width: 82px; min-height: 48px; padding: 0 16px; border-radius: 17px; font-size: 12px; font-weight: 1000; text-decoration: none; }
.dcc-match-start-button { color: #071b15; background: var(--dcc-mint); box-shadow: 0 0 0 6px rgba(84,242,193,.12); }
.dcc-match-state-button { color: rgba(255,255,255,.72); background: rgba(255,255,255,.1); }
.dcc-match-state-button.is-done { color: #86ffd9; }
.dcc-match-schedule { margin-top: 30px; }
.dcc-match-section-title h2 { margin: 6px 0 14px; font-size: 22px; letter-spacing: -.035em; }
.dcc-match-schedule-list { display: grid; gap: 8px; }
.dcc-match-schedule-row { display: grid; grid-template-columns: 1fr auto 50px; align-items: center; gap: 10px; padding: 14px 15px; border: 1px solid rgba(8,26,48,.07); border-radius: 17px; background: #fff; }
.dcc-match-schedule-row b { font-size: 12px; }
.dcc-match-schedule-row span { color: #687487; font-size: 11px; }
.dcc-match-schedule-row em { padding: 5px 7px; color: #8190a3; border-radius: 8px; background: #edf1f6; font-size: 8px; font-style: normal; font-weight: 900; text-align: center; }
.dcc-match-schedule-row.is-current { border-color: #71dfc5; background: #effff9; }
.dcc-match-schedule-row.is-current em { color: #087761; background: #bff7e7; }
.dcc-match-empty { padding: 30px 18px; color: #8792a3; border-radius: 22px; background: #fff; font-size: 12px; text-align: center; }
.dcc-match-round-heading { display: flex; align-items: end; justify-content: space-between; gap: 14px; }
.dcc-match-round-heading h1 { margin: 6px 0 4px; font-size: 30px; letter-spacing: -.045em; }
.dcc-match-round-heading p { margin: 0; color: #7a8595; font-size: 12px; }
.dcc-match-round-count { display: flex; align-items: baseline; padding: 12px 14px; border-radius: 18px; background: #e9fff7; }
.dcc-match-round-count strong { color: #08765f; font-size: 25px; }
.dcc-match-round-count span { color: #62a595; font-size: 11px; }
.dcc-match-guide { display: grid; gap: 4px; margin-top: 18px; padding: 15px 17px; border-radius: 18px; background: #fff; box-shadow: 0 10px 26px rgba(12,29,52,.06); }
.dcc-match-guide strong { font-size: 13px; }
.dcc-match-guide span { color: #7d8796; font-size: 10px; }
.dcc-match-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 11px 9px; margin-top: 18px; }
.dcc-match-card-grid > .dcc-match-card:last-child:nth-child(3n + 1) { grid-column: 2; }
.dcc-match-card { position: relative; min-width: 0; border: 1px solid #dce3ec; border-radius: 17px; background: #fff; box-shadow: 0 9px 22px rgba(10,27,48,.08); overflow: hidden; transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease; }
.dcc-match-card-form,
.dcc-match-card-button,
.dcc-match-card-reveal,
.dcc-match-card-locked { display: flex; flex-direction: column; width: 100%; height: 100%; min-height: 0; margin: 0; }
.dcc-match-card-button { padding: 0; color: inherit; border: 0; background: #fff; cursor: pointer; text-align: left; }
.dcc-match-card-button:active { transform: scale(.975); }
.dcc-match-card-button:focus-visible { outline: 3px solid rgba(15,180,143,.32); outline-offset: -3px; }
.dcc-match-card-face { position: relative; display: grid; flex: 0 0 auto; width: 100%; aspect-ratio: 1 / 1; place-items: center; align-content: center; gap: 4px; color: #a8ffdf; background: linear-gradient(145deg, #0c1a2e, #174754); overflow: hidden; }
.dcc-match-card-face::after { content: ''; position: absolute; inset: 5px; border: 1px solid rgba(255,255,255,.22); border-radius: 11px; pointer-events: none; }
.dcc-match-card-face img { width: 100%; height: 100%; object-fit: cover; }
.dcc-match-card-face.is-character::before { content: ''; position: absolute; z-index: 1; inset: 0 0 auto; height: 32%; background: linear-gradient(180deg, rgba(3,10,20,.36), transparent); pointer-events: none; }
.dcc-match-card-number { position: absolute; z-index: 2; top: 7px; left: 7px; padding: 4px 6px; color: #fff; border: 1px solid rgba(255,255,255,.28); border-radius: 8px; background: rgba(4,13,24,.48); backdrop-filter: blur(6px); font-size: 7px; font-weight: 1000; line-height: 1; letter-spacing: .06em; }
.dcc-match-card-info { display: grid; flex: 1 1 auto; min-width: 0; gap: 3px; padding: 8px 8px 7px; background: #fff; }
.dcc-match-card-info > small { color: #8a95a4; font-size: 6px; font-weight: 900; line-height: 1.2; letter-spacing: .08em; white-space: nowrap; }
.dcc-match-card-name { min-width: 0; color: #0a1728; font-size: 10px; font-weight: 1000; line-height: 1.3; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dcc-match-card-meta { display: flex; align-items: center; justify-content: space-between; gap: 4px; min-width: 0; margin-top: 2px; }
.dcc-match-card-meta > b { color: #7c8797; font-size: 7px; font-weight: 900; }
.dcc-match-card-meta > em { max-width: 70%; padding: 4px 6px; color: #087761; border-radius: 7px; background: #dff9ef; font-size: 6px; font-style: normal; font-weight: 1000; line-height: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dcc-match-card-face i { font-size: 26px; font-style: normal; font-weight: 1000; letter-spacing: -.08em; }
.dcc-match-card-face b { max-width: 82%; font-size: 9px; letter-spacing: .08em; text-align: center; }
.dcc-match-card-reveal,
.dcc-match-card-locked { position: relative; background: #fff; }
.dcc-match-card-face.is-front { background: #dfe5ed; }
.dcc-match-card-face.is-front i { color: #10233c; }
.dcc-match-card-face.is-front b { max-width: 80%; color: #10233c; text-align: center; letter-spacing: 0; }
.dcc-match-card.is-occupied { border-color: #e1e5eb; box-shadow: none; }
.dcc-match-card.is-occupied .dcc-match-card-face img { filter: grayscale(.6); opacity: .58; }
.dcc-match-card.is-occupied .dcc-match-card-info { background: #f5f7f9; }
.dcc-match-card.is-occupied .dcc-match-card-meta > em { color: #788392; background: #e7ebf0; }
.dcc-match-card.is-mine { border-color: #20bb94; box-shadow: 0 0 0 2px rgba(32,187,148,.16), 0 12px 26px rgba(10,91,72,.14); opacity: 1; }
.dcc-match-card.is-mine .dcc-match-card-meta > em { color: #08745e; background: #c9f6e7; }
.dcc-match-card.is-fail { border-color: #ef6c74; box-shadow: 0 0 0 2px rgba(239,108,116,.14), 0 12px 26px rgba(126,30,38,.12); }
.dcc-match-card.is-fail .dcc-match-card-meta > em { color: #b72d39; background: #ffe2e4; }
@media (hover: hover) and (pointer: fine) {
  .dcc-match-card:has(.dcc-match-card-button):hover { transform: translateY(-2px); border-color: #51cfaf; box-shadow: 0 14px 28px rgba(7,86,67,.14); }
}
@media (max-width: 369px) {
  .dcc-match-card-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 11px; }
  .dcc-match-card-grid > .dcc-match-card:last-child:nth-child(3n + 1) { grid-column: auto; }
  .dcc-match-card-info > small { font-size: 7px; }
  .dcc-match-card-name { font-size: 11px; }
  .dcc-match-card-meta > b, .dcc-match-card-meta > em { font-size: 7px; }
}
.dcc-match-back-link { display: grid; place-items: center; min-height: 52px; margin-top: 22px; color: #0a735f; border-radius: 18px; background: #e5fff6; font-size: 12px; font-weight: 900; text-decoration: none; }
.dcc-match-unavailable { display: grid; place-items: center; min-height: 430px; padding: 30px; text-align: center; }
.dcc-match-unavailable i { display: grid; place-items: center; width: 70px; height: 70px; color: #177f6d; border-radius: 26px; background: #dffff4; font-size: 28px; font-style: normal; }
.dcc-match-unavailable h1 { margin: 22px 0 8px; font-size: 24px; letter-spacing: -.04em; }
.dcc-match-unavailable p { margin: 0; color: #7d8796; font-size: 12px; }
.dcc-match-unavailable a { margin-top: 22px; padding: 15px 20px; color: #071b15; border-radius: 16px; background: var(--dcc-mint); font-size: 12px; font-weight: 900; text-decoration: none; }
.dcc-match-modal { position: fixed; z-index: 999; inset: 0; display: none; place-items: center; padding: 22px; }
.dcc-match-modal.is-visible { display: grid; }
.dcc-match-modal-backdrop { position: absolute; inset: 0; background: rgba(4,12,23,.76); backdrop-filter: blur(10px); }
.dcc-match-modal-panel { position: relative; z-index: 1; width: min(100%, 390px); padding: 28px 24px 22px; border-radius: 32px; background: #fff; box-shadow: 0 30px 80px rgba(0,0,0,.36); text-align: center; animation: dccMatchPop .32s ease both; }
@keyframes dccMatchPop { from { opacity: 0; transform: translateY(18px) scale(.94); } to { opacity: 1; transform: none; } }
.dcc-match-modal-panel.is-success { background: linear-gradient(180deg, #effff9, #fff 52%); }
.dcc-match-modal-panel.is-fail { background: linear-gradient(180deg, #fff0f0, #fff 52%); }
.dcc-match-modal-close { position: absolute; top: 12px; right: 12px; width: 34px; height: 34px; color: #5f6977; border: 0; border-radius: 12px; background: rgba(255,255,255,.85); font-size: 22px; }
.dcc-match-result-image { display: grid; place-items: center; width: 132px; height: 132px; margin: 15px auto 12px; border-radius: 38px; background: #dffbef; overflow: hidden; }
.dcc-match-modal-panel.is-fail .dcc-match-result-image { background: #ffe3e3; }
.dcc-match-result-image img { width: 100%; height: 100%; object-fit: cover; }
.dcc-match-result-image i { color: #088166; font-size: 58px; font-style: normal; font-weight: 1000; }
.dcc-match-modal-panel.is-fail .dcc-match-result-image i { color: #d84651; }
.dcc-match-result-card { width: 72px; height: 92px; margin: -48px auto 12px; padding: 4px; border-radius: 15px; background: #fff; box-shadow: 0 10px 24px rgba(9,25,42,.2); overflow: hidden; transform: rotate(5deg); }
.dcc-match-result-card img { width: 100%; height: 100%; border-radius: 11px; object-fit: cover; }
.dcc-match-modal-panel h2 { margin: 7px 0 8px; font-size: 28px; letter-spacing: -.045em; }
.dcc-match-modal-panel p { margin: 0; color: #687386; font-size: 13px; line-height: 1.55; }
.dcc-match-modal-panel small { display: block; margin-top: 10px; color: #9aa2ad; font-size: 10px; }
.dcc-match-result-confirm { width: 100%; min-height: 50px; margin-top: 20px; color: #071b15; border: 0; border-radius: 17px; background: var(--dcc-mint); font-size: 13px; font-weight: 1000; }
@media (max-width: 350px) {
  .dcc-match-assets { grid-template-columns: 1fr; }
  .dcc-match-schedule-row { grid-template-columns: 1fr auto; }
  .dcc-match-schedule-row em { display: none; }
}


/* v0.7.3: overlapping MATCH sets are independent rooms. */
.dcc-match-rooms { margin-top: 26px; }
.dcc-match-room-list { display: grid; gap: 11px; }
.dcc-match-room-card { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 8px 12px; padding: 17px; border: 1px solid #9cebd8; border-radius: 22px; background: linear-gradient(135deg, #effff9, #fff); box-shadow: 0 12px 28px rgba(10,61,48,.06); }
.dcc-match-room-card.is-done { border-color: #b7d9ee; background: linear-gradient(135deg, #f0f8ff, #fff); }
.dcc-match-room-number { grid-column: 1 / -1; color: #069477; font-size: 9px; font-weight: 1000; letter-spacing: .15em; }
.dcc-match-room-copy { display: grid; min-width: 0; gap: 5px; }
.dcc-match-room-copy strong { font-size: 17px; letter-spacing: -.03em; }
.dcc-match-room-copy span { color: #6d7888; font-size: 10px; }
.dcc-match-room-button { display: grid; place-items: center; min-width: 72px; min-height: 46px; padding: 0 13px; color: #071b15; border-radius: 15px; background: var(--dcc-mint); font-size: 11px; font-weight: 1000; text-decoration: none; }
.dcc-match-room-button.is-done { color: #08725f; background: #dff8ef; }
.dcc-match-room-button.is-disabled { min-width: 88px; color: #8b95a3; background: #edf1f5; text-align: center; }
.dcc-match-room-empty { display: grid; gap: 6px; padding: 24px 18px; border-radius: 22px; background: #fff; text-align: center; }
.dcc-match-room-empty strong { font-size: 14px; }
.dcc-match-room-empty span { color: #8792a3; font-size: 10px; }
.dcc-match-schedule-row { color: inherit; text-decoration: none; }
.dcc-match-schedule-row.is-current { cursor: pointer; }
@media (max-width: 350px) {
  .dcc-match-room-card { grid-template-columns: 1fr; }
  .dcc-match-room-button { width: 100%; }
}


/* v0.8.0 · separate DCC/USDT ledger and NFT ticket shop */
.dcc-balance-panel-usdt .dcc-balance-main em { color: #1476b8; }
.dcc-balance-panel-usdt .dcc-balance-meta span i { background: #38a8e8; box-shadow: 0 0 0 4px #e4f5ff; }
.dcc-match-assets.is-three { grid-template-columns: repeat(2, minmax(0,1fr)); }
.dcc-match-assets.is-three article:nth-child(3) { grid-column: 1 / -1; min-height: 128px; }
.dcc-match-assets.is-three article:nth-child(3) i { color: #176ba1; background: #e7f5ff; }
.dcc-match-result-finance { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; margin: 14px 0 2px; padding: 12px 14px; color: #086d59; border-radius: 14px; background: #e9fff7; font-size: 11px; }
.dcc-match-result-finance.is-fail { color: #a72c38; background: #fff0f1; }
.dcc-match-result-finance b { font-size: 12px; }
.dcc-match-result-finance span { font-weight: 900; }
.dcc-wallet-balance-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 22px; }
.dcc-wallet-balance-grid article { position: relative; display: grid; min-height: 132px; padding: 18px; border-radius: 24px; background: #fff; box-shadow: 0 14px 38px rgba(12,29,52,.07); overflow: hidden; }
.dcc-wallet-balance-grid article::after { content: ""; position: absolute; width: 88px; height: 88px; right: -34px; bottom: -36px; border-radius: 50%; background: #e9fff7; }
.dcc-wallet-balance-grid article:nth-child(2)::after { background: #e8f4ff; }
.dcc-wallet-balance-grid span { color: #7e8998; font-size: 9px; font-weight: 1000; letter-spacing: .1em; }
.dcc-wallet-balance-grid strong { align-self: end; margin-top: 17px; font-size: 26px; letter-spacing: -.05em; }
.dcc-wallet-balance-grid em { position: relative; z-index: 1; color: #07856e; font-size: 11px; font-style: normal; font-weight: 1000; }
.dcc-wallet-balance-grid article:nth-child(2) em { color: #1476b8; }
.dcc-ticket-owned-card { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 14px; padding: 18px; border-radius: 22px; background: linear-gradient(135deg,#0b2032,#12384a); color: #fff; }
.dcc-ticket-owned-card div { display: grid; gap: 4px; }
.dcc-ticket-owned-card span { color: rgba(255,255,255,.58); font-size: 10px; }
.dcc-ticket-owned-card strong { font-size: 23px; }
.dcc-ticket-owned-card a { display: grid; place-items: center; min-height: 42px; padding: 0 14px; color: #071b15; border-radius: 14px; background: var(--dcc-mint); font-size: 10px; font-weight: 1000; text-decoration: none; }
.dcc-ticket-purchase-grid { display: grid; gap: 14px; margin-top: 22px; }
.dcc-ticket-purchase-card { padding: 19px; border: 1px solid rgba(8,17,31,.06); border-radius: 25px; background: #fff; box-shadow: 0 14px 38px rgba(12,29,52,.06); }
.dcc-ticket-currency { display: flex; align-items: center; gap: 12px; }
.dcc-ticket-currency > i { display: grid; place-items: center; width: 48px; height: 48px; color: #087a65; border-radius: 17px; background: #dffff4; font-style: normal; font-weight: 1000; }
.dcc-ticket-purchase-card:nth-child(2) .dcc-ticket-currency > i { color: #176ba1; background: #e7f5ff; }
.dcc-ticket-currency div { display: grid; gap: 4px; }
.dcc-ticket-currency span { color: #7d8795; font-size: 10px; }
.dcc-ticket-currency strong { font-size: 17px; }
.dcc-ticket-buy-form { display: grid; gap: 10px; margin-top: 16px; }
.dcc-ticket-buy-form label { display: grid; gap: 6px; }
.dcc-ticket-buy-form label span { color: #5f6b7a; font-size: 10px; font-weight: 900; }
.dcc-ticket-buy-form input { width: 100%; min-height: 48px; padding: 0 14px; border: 1px solid #dce3eb; border-radius: 15px; background: #f7f9fc; font-size: 15px; }
.dcc-ticket-buy-form small { color: #818b99; font-size: 9px; line-height: 1.55; }
.dcc-ticket-buy-form button { min-height: 50px; color: #071b15; border: 0; border-radius: 16px; background: var(--dcc-mint); font-size: 12px; font-weight: 1000; }
.dcc-ticket-history { margin-top: 26px; }
.dcc-ticket-history-list { display: grid; gap: 8px; }
.dcc-ticket-history-list article { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px 15px; border-radius: 17px; background: #fff; }
.dcc-ticket-history-list article > div { display: grid; gap: 4px; }
.dcc-ticket-history-list strong { font-size: 12px; }
.dcc-ticket-history-list span { color: #8b95a3; font-size: 9px; }
.dcc-ticket-history-list b { color: #9a4650; font-size: 9px; }
.dcc-ticket-history-list b.is-available { color: #07836c; }
@media (max-width: 350px) {
  .dcc-wallet-balance-grid { grid-template-columns: 1fr; }
}

.dcc-match-room-button.is-buy { color: #fff; background: #1476b8; }


/* v0.9.0 · assets and internal DCC transfer */
.dcc-wallet-address-card { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:22px; padding:17px; border:1px solid rgba(8,17,31,.06); border-radius:22px; background:#fff; box-shadow:0 14px 38px rgba(12,29,52,.06); }
.dcc-wallet-address-card > div { display:grid; min-width:0; gap:6px; }
.dcc-wallet-address-card span { color:#7d8795; font-size:9px; font-weight:1000; letter-spacing:.1em; }
.dcc-wallet-address-card strong { overflow:hidden; color:#087a65; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.dcc-wallet-address-card button { flex:0 0 auto; min-width:62px; min-height:42px; color:#071b15; border:0; border-radius:14px; background:var(--dcc-mint); font-size:10px; font-weight:1000; }
.dcc-assets-balance-list { display:grid; gap:14px; margin-top:16px; }
.dcc-assets-balance-list article { display:grid; gap:16px; padding:22px; border-radius:27px; background:#fff; box-shadow:0 14px 38px rgba(12,29,52,.07); }
.dcc-assets-balance-list article > span { color:#7d8795; font-size:9px; font-weight:1000; letter-spacing:.12em; }
.dcc-assets-balance-list article > div { display:flex; align-items:flex-end; justify-content:space-between; gap:12px; }
.dcc-assets-balance-list strong { font-size:43px; line-height:1; letter-spacing:-.06em; }
.dcc-assets-balance-list em { color:#087a65; font-size:13px; font-style:normal; font-weight:1000; }
.dcc-assets-balance-list small { display:flex; align-items:center; gap:8px; padding-top:14px; color:#6d7888; border-top:1px solid #e7ebf0; font-size:10px; }
.dcc-assets-balance-list small i { width:9px; height:9px; border:3px solid #dffbed; border-radius:50%; background:#0fbc91; }
.dcc-assets-balance-list .is-usdt em { color:#1476b8; }
.dcc-assets-balance-list .is-usdt small i { border-color:#e0f3ff; background:#35a7ea; }
.dcc-assets-balance-list .is-ticket em { color:#7b4bd1; }
.dcc-assets-balance-list .is-ticket small i { border-color:#f0eaff; background:#8a5be2; }
.dcc-assets-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:16px; }
.dcc-assets-actions a { display:grid; place-items:center; min-height:54px; color:#1d2937; border-radius:17px; background:#fff; font-size:11px; font-weight:1000; text-decoration:none; box-shadow:0 10px 28px rgba(12,29,52,.05); }
.dcc-assets-actions a.is-primary { color:#071b15; background:var(--dcc-mint); }
.dcc-transfer-history { margin-top:28px; }
.dcc-transfer-history-list { display:grid; gap:9px; }
.dcc-transfer-history-list article { display:grid; grid-template-columns:42px 1fr auto; align-items:center; gap:10px; padding:14px; border-radius:18px; background:#fff; }
.dcc-transfer-history-list article > i { display:grid; place-items:center; width:38px; height:38px; color:#087a65; border-radius:13px; background:#e6fff6; font-style:normal; font-weight:1000; }
.dcc-transfer-history-list article > i.is-out { color:#b0404b; background:#fff0f1; }
.dcc-transfer-history-list article > div { display:grid; min-width:0; gap:4px; }
.dcc-transfer-history-list strong { font-size:11px; }
.dcc-transfer-history-list span { overflow:hidden; color:#8b95a3; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.dcc-transfer-history-list b { color:#087a65; font-size:10px; }
.dcc-transfer-history-list b.is-out { color:#b0404b; }
.dcc-transfer-balance { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:22px; padding:17px 18px; border-radius:18px; background:#fff; }
.dcc-transfer-balance span { color:#778393; font-size:10px; font-weight:900; }
.dcc-transfer-balance strong { font-size:16px; }
.dcc-wallet-search-form { margin-top:24px; padding:18px; border-radius:24px; background:#fff; }
.dcc-wallet-search-controls { display:grid; grid-template-columns:98px 1fr 62px; gap:7px; margin-top:13px; }
.dcc-wallet-search-controls select,.dcc-wallet-search-controls input { min-width:0; min-height:48px; padding:0 11px; border:1px solid #dbe2ea; border-radius:14px; background:#f7f9fc; font-size:11px; }
.dcc-wallet-search-controls button { min-height:48px; color:#fff; border:0; border-radius:14px; background:#086ca9; font-size:10px; font-weight:1000; }
.dcc-wallet-search-results { display:grid; gap:8px; margin-top:12px; }
.dcc-wallet-search-result { display:grid; grid-template-columns:1fr auto; align-items:center; gap:10px; width:100%; padding:15px; text-align:left; border:1px solid #dce3eb; border-radius:18px; background:#fff; }
.dcc-wallet-search-result.is-selected { border:2px solid #0877b8; background:#f2f9ff; }
.dcc-wallet-search-result > div { display:grid; min-width:0; gap:4px; }
.dcc-wallet-search-result strong { font-size:12px; }
.dcc-wallet-search-result span { color:#667281; font-size:9px; }
.dcc-wallet-search-result small { overflow:hidden; color:#7d8795; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.dcc-wallet-search-result i { color:#506070; font-size:24px; font-style:normal; }
.dcc-transfer-form { display:grid; gap:14px; margin-top:15px; padding:18px; border-radius:24px; background:#fff; }
.dcc-transfer-form label { display:grid; gap:7px; }
.dcc-transfer-form label span { color:#556170; font-size:10px; font-weight:1000; }
.dcc-transfer-form input { width:100%; min-height:52px; padding:0 14px; border:1px solid #dbe2ea; border-radius:15px; background:#f7f9fc; font-size:12px; }
.dcc-transfer-form input[name="recipient_address"] { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:9px; }
.dcc-selected-recipient { padding:11px 13px; color:#657181; border-radius:13px; background:#f1f4f8; font-size:9px; }
.dcc-transfer-form button { min-height:52px; color:#071b15; border:0; border-radius:16px; background:var(--dcc-mint); font-size:12px; font-weight:1000; }
.dcc-transfer-form > a { display:grid; place-items:center; min-height:48px; color:#526070; border-radius:16px; background:#edf1f5; font-size:11px; font-weight:900; text-decoration:none; }
@media (max-width:350px) {
  .dcc-wallet-search-controls { grid-template-columns:1fr; }
  .dcc-assets-actions { grid-template-columns:1fr; }
}

/* v0.10.0 · withdrawal and persistent bottom navigation */
.dcc-has-bottom-nav {
  padding-bottom: calc(104px + env(safe-area-inset-bottom));
}
.dcc-has-bottom-nav .dcc-match-content,
.dcc-has-bottom-nav .dcc-home-content {
  padding-bottom: 28px;
}
.dcc-bottom-nav {
  box-sizing: border-box;
  overflow: visible;
  box-shadow: 0 -10px 32px rgba(8, 25, 45, .08);
}
.dcc-withdraw-status {
  display: grid;
  grid-template-columns: 42px 1fr;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
  padding: 16px;
  border: 1px solid #ffcaca;
  border-left: 4px solid #e64b58;
  border-radius: 20px;
  background: #fff0f1;
}
.dcc-withdraw-status.is-open {
  border-color: #7ce8ca;
  border-left-color: #0fba91;
  background: #eafff8;
}
.dcc-withdraw-status > i {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  color: #d43e4b;
  border-radius: 14px;
  background: #fff;
  font-style: normal;
  font-weight: 1000;
}
.dcc-withdraw-status.is-open > i { color: #0a9675; }
.dcc-withdraw-status > div { display: grid; gap: 5px; }
.dcc-withdraw-status strong { font-size: 12px; }
.dcc-withdraw-status span { color: #7e8998; font-size: 9px; line-height: 1.5; }
.dcc-withdraw-fee-grid { display: grid; gap: 10px; margin-top: 16px; }
.dcc-withdraw-fee-grid article {
  display: grid;
  grid-template-columns: 42px 1fr;
  align-items: center;
  gap: 11px;
  padding: 14px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(12,29,52,.05);
}
.dcc-withdraw-fee-grid i {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  color: #087a65;
  border-radius: 14px;
  background: #e5fff6;
  font-style: normal;
  font-weight: 1000;
}
.dcc-withdraw-fee-grid div { display: grid; gap: 5px; }
.dcc-withdraw-fee-grid strong { font-size: 11px; }
.dcc-withdraw-fee-grid span { color: #7f8997; font-size: 9px; }
.dcc-transfer-form select {
  width: 100%;
  min-height: 52px;
  padding: 0 14px;
  color: #142131;
  border: 1px solid #dbe2ea;
  border-radius: 15px;
  background: #f7f9fc;
  font-size: 12px;
}
.dcc-withdraw-form button:disabled {
  color: #8b95a3;
  background: #e5e9ee;
  cursor: not-allowed;
}
.dcc-withdraw-warning {
  padding: 12px 13px;
  color: #875e16;
  border-radius: 14px;
  background: #fff7df;
  font-size: 9px;
  line-height: 1.55;
}
.dcc-withdraw-history { margin-top: 28px; }
.dcc-withdraw-history-list { display: grid; gap: 9px; }
.dcc-withdraw-history-list article {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 15px;
  border-radius: 18px;
  background: #fff;
}
.dcc-withdraw-history-list article > div { display: grid; min-width: 0; gap: 4px; }
.dcc-withdraw-history-list strong { font-size: 11px; }
.dcc-withdraw-history-list span,
.dcc-withdraw-history-list small {
  overflow: hidden;
  color: #8a94a2;
  font-size: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dcc-withdraw-history-list b {
  padding: 7px 9px;
  color: #a06a00;
  border-radius: 999px;
  background: #fff4d8;
  font-size: 8px;
  white-space: nowrap;
}
.dcc-withdraw-history-list b.is-approved { color: #1768a4; background: #e7f4ff; }
.dcc-withdraw-history-list b.is-completed { color: #087a65; background: #e5fff6; }
.dcc-withdraw-history-list b.is-rejected { color: #b13b48; background: #fff0f1; }
@media (max-width: 350px) {
  .dcc-bottom-nav { padding-left: 4px; padding-right: 4px; }
  .dcc-bottom-nav span span,
  .dcc-bottom-nav a span { font-size: 7px; }
}


/* v0.10.2 · Home-first quick menu and compact asset snapshot */
.dcc-home-menu-panel-top {
  margin-top: 0;
}
.dcc-home-asset-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}
.dcc-home-asset-item {
  position: relative;
  display: grid;
  min-width: 0;
  min-height: 88px;
  align-content: center;
  gap: 5px;
  padding: 13px 11px;
  color: #0b1728;
  border: 1px solid rgba(8,17,31,.06);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 10px 25px rgba(11,25,42,.05);
  text-decoration: none;
  overflow: hidden;
}
.dcc-home-asset-item::after {
  content: "";
  position: absolute;
  width: 50px;
  height: 50px;
  right: -23px;
  bottom: -25px;
  border-radius: 50%;
  background: #e5fff6;
}
.dcc-home-asset-item.is-usdt::after { background: #e7f5ff; }
.dcc-home-asset-item.is-ticket::after { background: #f1ebff; }
.dcc-home-asset-item span {
  position: relative;
  z-index: 1;
  color: #7f8998;
  font-size: 9px;
  font-weight: 1000;
  letter-spacing: .04em;
  white-space: nowrap;
}
.dcc-home-asset-item strong {
  position: relative;
  z-index: 1;
  min-width: 0;
  font-size: clamp(16px, 5vw, 21px);
  line-height: 1.05;
  letter-spacing: -.045em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.dcc-home-asset-item em {
  position: relative;
  z-index: 1;
  color: #07856e;
  font-size: 9px;
  font-style: normal;
  font-weight: 1000;
}
.dcc-home-asset-item.is-usdt em { color: #1476b8; }
.dcc-home-asset-item.is-ticket em { color: #7b4bd1; }
.dcc-home-asset-item:active { transform: scale(.98); }
.dcc-home-root .dcc-profile-hero { margin-top: 14px; }

@media (max-width: 359px) {
  .dcc-home-asset-summary { gap: 6px; }
  .dcc-home-asset-item { min-height: 82px; padding: 12px 8px; border-radius: 17px; }
  .dcc-home-asset-item strong { font-size: 16px; }
  .dcc-home-asset-item span,
  .dcc-home-asset-item em { font-size: 8px; }
}


/* v0.10.3 · Profile-first home order, resilient large balances, ticket NFT product visual */
.dcc-home-root .dcc-profile-hero {
  margin-top: 0;
  margin-bottom: 14px;
}
.dcc-home-root .dcc-profile-hero + .dcc-home-menu-panel-top {
  margin-top: 0;
}
.dcc-home-asset-item strong[data-fit-number] {
  display: block;
  width: 100%;
  max-width: 100%;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
  overflow: hidden;
  text-overflow: clip;
  white-space: nowrap;
  transition: font-size .12s ease;
}

.dcc-ticket-product-card {
  display: grid;
  grid-template-columns: minmax(112px, 42%) minmax(0, 1fr);
  gap: 15px;
  margin-top: 18px;
  padding: 14px;
  border: 1px solid rgba(8,17,31,.07);
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 14px 38px rgba(12,29,52,.07);
}
.dcc-ticket-product-image {
  position: relative;
  min-width: 0;
  aspect-ratio: 1 / 1;
  border-radius: 20px;
  background: #edf3f8;
  overflow: hidden;
}
.dcc-ticket-product-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.dcc-ticket-product-image span {
  position: absolute;
  left: 9px;
  bottom: 9px;
  padding: 5px 8px;
  color: #fff;
  border-radius: 999px;
  background: rgba(7,24,38,.78);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  font-size: 8px;
  font-weight: 1000;
  letter-spacing: .08em;
}
.dcc-ticket-product-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.dcc-ticket-product-copy > small {
  color: #00927a;
  font-size: 8px;
  font-weight: 1000;
  letter-spacing: .11em;
}
.dcc-ticket-product-copy h2 {
  margin: 7px 0 6px;
  color: #071526;
  font-size: 18px;
  line-height: 1.18;
  letter-spacing: -.04em;
}
.dcc-ticket-product-copy p {
  margin: 0;
  color: #788596;
  font-size: 9px;
  line-height: 1.55;
}
.dcc-ticket-product-copy > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 7px;
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid #edf0f4;
}
.dcc-ticket-product-copy b {
  color: #071526;
  font-size: 11px;
}
.dcc-ticket-product-copy em {
  color: #087f6b;
  font-size: 8px;
  font-style: normal;
  font-weight: 900;
  text-align: right;
}
@media (max-width: 359px) {
  .dcc-ticket-product-card { grid-template-columns: 105px minmax(0, 1fr); gap: 11px; padding: 11px; border-radius: 22px; }
  .dcc-ticket-product-image { border-radius: 17px; }
  .dcc-ticket-product-copy h2 { font-size: 15px; }
  .dcc-ticket-product-copy p { font-size: 8px; }
  .dcc-ticket-product-copy > div { align-items: flex-start; flex-direction: column; }
}


/* v0.11.0 · membership, notices, deposits, coin logos */
.dcc-ticket-currency i img,.dcc-coin-logo img{width:100%;height:100%;object-fit:contain;display:block}
.dcc-member-level-summary{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:14px;align-items:stretch;margin-bottom:18px;color:#fff;text-decoration:none}
.dcc-member-level-meta{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:15px;border:1px solid rgba(255,255,255,.18);border-radius:20px;background:rgba(255,255,255,.08)}
.dcc-member-level-meta span{display:flex;gap:9px;align-items:center;font-size:11px;font-weight:800}.dcc-member-level-meta b{min-width:42px;padding:3px 7px;border-radius:999px;background:rgba(255,255,255,.2);font-size:8px}
.dcc-member-level-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:104px;border:1px solid rgba(255,255,255,.18);border-radius:20px;background:rgba(255,255,255,.08);overflow:hidden}.dcc-member-level-badge img{width:100%;height:100%;object-fit:cover}.dcc-member-level-badge strong{font-size:22px}.dcc-member-level-badge small{margin-top:4px;font-size:9px;color:#d6efff}
.dcc-home-notice-link{display:flex;align-items:center;gap:10px;margin:14px 0;padding:14px 16px;border-radius:19px;background:#fff;color:#071526;text-decoration:none;box-shadow:0 10px 30px rgba(10,30,50,.06)}.dcc-home-notice-link span{padding:5px 8px;border-radius:999px;background:#e5fff7;color:#00866d;font-size:9px;font-weight:1000}.dcc-home-notice-link strong{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px}.dcc-home-notice-link i{font-style:normal}
.dcc-level-list{display:grid;gap:12px}.dcc-level-list article{position:relative;display:grid;grid-template-columns:80px minmax(0,1fr);gap:14px;align-items:center;padding:14px;border:1px solid #e6ebf1;border-radius:24px;background:#fff}.dcc-level-list article.is-current{border:2px solid #1cd6a9;box-shadow:0 12px 34px rgba(21,206,161,.13)}.dcc-level-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1;border-radius:20px;background:#edf4fa;overflow:hidden}.dcc-level-image img{width:100%;height:100%;object-fit:cover}.dcc-level-image strong{font-size:18px}.dcc-level-list span{font-size:8px;font-weight:1000;letter-spacing:.12em;color:#00967c}.dcc-level-list h2{margin:4px 0 2px;font-size:17px}.dcc-level-list b{font-size:11px;color:#536175}.dcc-level-list p{margin:5px 0 0;font-size:9px;color:#8792a1}.dcc-level-list em{position:absolute;right:12px;top:12px;padding:5px 8px;border-radius:999px;background:#dffff6;color:#00826b;font-size:8px;font-style:normal;font-weight:900}
.dcc-notice-list{display:grid;gap:10px}.dcc-notice-list>a{display:flex;align-items:center;gap:10px;padding:15px;border:1px solid #e8edf3;border-radius:20px;background:#fff;color:#071526;text-decoration:none}.dcc-notice-list>a div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;flex:1;min-width:0}.dcc-notice-list span{padding:4px 7px;border-radius:999px;background:#e6fff7;color:#00886f;font-size:8px;font-weight:900}.dcc-notice-list strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px}.dcc-notice-list small{font-size:8px;color:#8c97a6}.dcc-notice-detail{padding:20px;border-radius:24px;background:#fff}.dcc-notice-detail>span{font-size:9px;color:#8793a2}.dcc-notice-detail h2{margin:8px 0 18px;font-size:21px}.dcc-notice-detail div{font-size:12px;line-height:1.8;color:#3c4a5c}.dcc-notice-detail>a{display:inline-flex;margin-top:18px;padding:10px 14px;border-radius:14px;background:#0b9d80;color:#fff;text-decoration:none;font-size:10px;font-weight:900}
.dcc-deposit-methods{display:grid;gap:11px}.dcc-deposit-methods article{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border-radius:22px;background:#fff}.dcc-coin-logo{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:18px;background:#e3fff6;color:#008a70;font-size:18px;font-weight:1000;overflow:hidden}.dcc-deposit-methods span{display:block;font-size:8px;color:#7f8b9c}.dcc-deposit-methods strong{display:block;margin-top:4px;overflow:hidden;text-overflow:ellipsis;font-size:11px}.dcc-deposit-methods small{display:block;margin-top:4px;font-size:8px;color:#8490a0}.dcc-deposit-methods button{border:0;border-radius:13px;padding:10px;background:#0b9d80;color:#fff;font-size:9px;font-weight:900}.dcc-deposit-bonus{margin:18px 0}.dcc-deposit-bonus>div:last-child{display:flex;flex-wrap:wrap;gap:7px}.dcc-deposit-bonus>div:last-child span{padding:8px 10px;border-radius:13px;background:#fff;font-size:9px}.dcc-deposit-bonus b{color:#00987d}.dcc-deposit-history>div:last-child{display:grid;gap:9px}.dcc-deposit-history article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px;border-radius:18px;background:#fff}.dcc-deposit-history strong,.dcc-deposit-history span{display:block}.dcc-deposit-history strong{font-size:11px}.dcc-deposit-history span{margin-top:3px;font-size:8px;color:#8893a2}.dcc-deposit-history b{padding:5px 8px;border-radius:999px;background:#eef2f6;font-size:8px}.dcc-deposit-history b.is-approved{background:#dffff5;color:#00866d}.dcc-deposit-history b.is-rejected{background:#ffe7e9;color:#be3542}
@media(max-width:359px){.dcc-member-level-summary{grid-template-columns:minmax(0,1fr) 82px}.dcc-member-level-meta{padding:11px}.dcc-level-list article{grid-template-columns:68px minmax(0,1fr)}}


/* v0.12.0 · soft MZ refresh, USDT-only deposit, spacious notices */
.dcc-match-root {
  background:
    radial-gradient(circle at 100% 0, rgba(42,226,185,.10), transparent 28%),
    radial-gradient(circle at 0 22%, rgba(91,154,255,.08), transparent 24%),
    #f5f7fb;
}
.dcc-match-content { padding-bottom: 116px; }
.dcc-match-intro { margin-bottom: 24px; }
.dcc-match-intro h1 { font-size: 36px; line-height: 1.08; }
.dcc-match-intro p { max-width: 330px; font-size: 12px; line-height: 1.7; }
.dcc-match-header { border-bottom-color: rgba(8,17,31,.055); background: rgba(248,250,253,.92); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); }
.dcc-notice { margin: 12px 0 18px; padding: 14px 16px; border-radius: 20px; box-shadow: 0 10px 26px rgba(12,28,48,.05); }
.dcc-soft-form-card {
  display: grid;
  gap: 15px;
  margin-top: 16px;
  padding: 20px;
  border: 1px solid rgba(8,17,31,.055);
  border-radius: 30px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 18px 52px rgba(12,29,52,.075);
}
.dcc-soft-form-card label { display: grid; gap: 8px; }
.dcc-soft-form-card label > span { color: #172438; font-size: 10px; font-weight: 900; }
.dcc-soft-form-card label > span b { color: #07967d; }
.dcc-soft-form-card label > span small { color: #98a2b0; font-size: 8px; font-weight: 800; }
.dcc-soft-form-card input,
.dcc-soft-form-card select,
.dcc-soft-form-card textarea {
  width: 100%; min-width: 0; height: 54px; padding: 0 16px;
  border: 1px solid #e0e7ef; border-radius: 18px; outline: none;
  background: #f7f9fc; color: #0a1729; font-size: 12px;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.dcc-soft-form-card input:focus,
.dcc-soft-form-card select:focus,
.dcc-soft-form-card textarea:focus { border-color: #30d9b1; background: #fff; box-shadow: 0 0 0 4px rgba(48,217,177,.12); }
.dcc-soft-form-card > button { min-height: 56px; border: 0; border-radius: 19px; background: linear-gradient(135deg,#23dcb0,#3ce7c2); color: #06251e; font-size: 12px; font-weight: 1000; box-shadow: 0 13px 27px rgba(29,210,167,.20); }
.dcc-form-card-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 2px; }
.dcc-form-card-heading > span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 16px; background: #e3fff7; color: #008b73; font-size: 10px; font-weight: 1000; }
.dcc-form-card-heading strong,.dcc-form-card-heading small { display: block; }
.dcc-form-card-heading strong { font-size: 14px; }
.dcc-form-card-heading small { margin-top: 3px; color: #8a95a4; font-size: 9px; }
.dcc-deposit-intro { position: relative; padding-right: 72px; }
.dcc-deposit-intro::after { content: "↙"; position: absolute; right: 4px; top: 4px; display: grid; place-items: center; width: 55px; height: 55px; border-radius: 20px; background: #e3fff7; color: #008f76; font-size: 25px; font-weight: 1000; transform: rotate(-4deg); }
.dcc-deposit-wallet-card { margin-top: 4px; padding: 18px; border: 1px solid rgba(5,135,111,.10); border-radius: 28px; background: linear-gradient(145deg,#ffffff,#effff9); box-shadow: 0 18px 48px rgba(11,41,55,.07); }
.dcc-deposit-wallet-top { display: grid; grid-template-columns: 54px minmax(0,1fr) auto; align-items: center; gap: 12px; }
.dcc-deposit-wallet-top span,.dcc-deposit-wallet-top strong { display: block; }
.dcc-deposit-wallet-top span { color: #7d8998; font-size: 8px; font-weight: 900; }
.dcc-deposit-wallet-top strong { margin-top: 4px; font-size: 13px; }
.dcc-deposit-wallet-top em { padding: 6px 9px; border-radius: 999px; background: #dffff6; color: #00846c; font-size: 8px; font-style: normal; font-weight: 1000; }
.dcc-deposit-address { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 10px; margin-top: 15px; padding: 12px; border-radius: 18px; background: rgba(255,255,255,.84); }
.dcc-deposit-address code { overflow: hidden; color: #263448; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.dcc-deposit-address button { border: 0; padding: 10px 12px; border-radius: 13px; background: #0c9d82; color: #fff; font-size: 9px; font-weight: 1000; }
.dcc-deposit-wallet-card > p { margin: 12px 2px 0; color: #82909f; font-size: 8px; line-height: 1.55; }
.dcc-deposit-help { display: flex; gap: 9px; padding: 12px; border-radius: 16px; background: #f0fbf8; color: #587269; font-size: 9px; line-height: 1.55; }
.dcc-deposit-help i { display: grid; flex: 0 0 20px; place-items: center; height: 20px; border-radius: 50%; background: #26d8ad; color: #fff; font-style: normal; font-weight: 1000; }
.dcc-deposit-history { margin-top: 30px; }
.dcc-deposit-history > div:last-child { gap: 10px; }
.dcc-deposit-history article { padding: 15px 16px; border: 1px solid rgba(8,17,31,.045); border-radius: 20px; box-shadow: 0 9px 25px rgba(12,29,52,.045); }
.dcc-notice-intro { position: relative; margin-bottom: 30px; padding: 22px; border-radius: 30px; background: linear-gradient(135deg,#0d2238,#153d48); color: #fff; box-shadow: 0 20px 52px rgba(8,28,46,.16); overflow: hidden; }
.dcc-notice-intro::after { content: ""; position: absolute; right: -28px; bottom: -48px; width: 150px; height: 150px; border-radius: 50%; background: rgba(54,226,188,.16); }
.dcc-notice-intro span { color: #4ce0bd; }
.dcc-notice-intro h1 { color: #fff; }
.dcc-notice-intro p { color: #c7d5df; }
.dcc-notice-intro > div { position: absolute; z-index: 1; right: 22px; top: 22px; display: grid; place-items: center; width: 62px; height: 62px; border: 1px solid rgba(255,255,255,.12); border-radius: 22px; background: rgba(255,255,255,.08); }
.dcc-notice-intro > div b,.dcc-notice-intro > div small { display: block; text-align: center; }
.dcc-notice-intro > div b { font-size: 20px; }
.dcc-notice-intro > div small { color: #bcd0dc; font-size: 7px; }
.dcc-notice-list { gap: 13px; }
.dcc-notice-list > a { display: grid; grid-template-columns: 48px minmax(0,1fr) 20px; gap: 13px; min-height: 92px; padding: 16px; border: 1px solid rgba(8,17,31,.055); border-radius: 26px; background: rgba(255,255,255,.97); box-shadow: 0 13px 34px rgba(12,29,52,.06); transition: transform .16s ease, box-shadow .16s ease; }
.dcc-notice-list > a:active { transform: scale(.985); }
.dcc-notice-icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 17px; background: #e2fff7; color: #008b73; font-size: 14px; font-weight: 1000; }
.dcc-notice-copy { display: grid !important; grid-template-columns: auto minmax(0,1fr) !important; align-content: center; justify-content: start; gap: 5px 8px !important; }
.dcc-notice-copy span { justify-self: start; }
.dcc-notice-copy strong { grid-column: 1 / -1; font-size: 13px; }
.dcc-notice-copy small { grid-column: 1 / -1; font-size: 8px; }
.dcc-notice-list > a > i { color: #9ca7b4; font-size: 20px; }
.dcc-notice-detail { padding: 24px; border: 1px solid rgba(8,17,31,.05); border-radius: 30px; box-shadow: 0 18px 48px rgba(12,29,52,.065); }
.dcc-notice-detail-meta { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.dcc-notice-detail-meta span { padding: 6px 9px; border-radius: 999px; background: #e1fff7; color: #00866e; font-size: 8px; font-weight: 1000; }
.dcc-notice-detail-meta time { color: #8d98a6; font-size: 8px; }
.dcc-notice-detail h2 { margin: 18px 0 22px; font-size: 23px; line-height: 1.3; }
.dcc-notice-detail-body { padding-top: 20px; border-top: 1px solid #edf0f4; }
.dcc-match-result-finance.is-reward { color: #075b8e; background: #e9f6ff; }
@media (max-width: 359px) {
  .dcc-soft-form-card { padding: 16px; border-radius: 25px; }
  .dcc-notice-intro { padding: 19px; }
  .dcc-notice-intro > div { right: 17px; top: 17px; width: 55px; height: 55px; }
  .dcc-notice-list > a { grid-template-columns: 43px minmax(0,1fr) 16px; min-height: 84px; padding: 13px; border-radius: 22px; }
  .dcc-notice-icon { width: 43px; height: 43px; border-radius: 15px; }
}

/* v0.12.2 · configured MATCH logos and per-currency ticket purchase state */
.dcc-match-assets .dcc-match-asset-logo {
  padding: 5px;
  overflow: hidden;
}
.dcc-match-assets .dcc-match-asset-logo img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 11px;
  object-fit: contain;
}
.dcc-match-assets .dcc-match-asset-logo.is-ticket img { object-fit: cover; }
.dcc-match-assets .dcc-match-asset-logo.is-dcc { color: #1261a3; background: #e8f2ff; }
.dcc-match-assets .dcc-match-asset-logo.is-usdt { color: #087e6a; background: #dffff4; }

.dcc-ticket-purchase-card { position: relative; transition: opacity .2s ease, filter .2s ease, background .2s ease; }
.dcc-ticket-purchase-card.is-disabled {
  border-color: #d7dde5;
  background: linear-gradient(145deg, #edf0f4, #e4e8ee);
  box-shadow: none;
  filter: saturate(.4);
}
.dcc-ticket-purchase-card.is-disabled .dcc-ticket-currency { opacity: .72; }
.dcc-ticket-purchase-card.is-disabled .dcc-ticket-currency > i { background: #d8dee6; }
.dcc-ticket-currency { position: relative; }
.dcc-ticket-currency > div { min-width: 0; }
.dcc-ticket-ready-badge {
  flex: 0 0 auto;
  margin-left: auto;
  padding: 6px 9px;
  color: #66717f;
  border: 1px solid rgba(80,92,108,.12);
  border-radius: 999px;
  background: rgba(255,255,255,.66);
  font-size: 8px;
  font-weight: 1000;
  white-space: nowrap;
}
.dcc-ticket-disabled-copy {
  display: grid;
  gap: 6px;
  margin-top: 17px;
  padding-top: 15px;
  border-top: 1px solid rgba(87,99,114,.14);
}
.dcc-ticket-disabled-copy strong { color: #3e4856; font-size: 12px; }
.dcc-ticket-disabled-copy span { color: #77818f; font-size: 9px; line-height: 1.55; }
.dcc-ticket-disabled-copy button {
  min-height: 50px;
  margin-top: 5px;
  color: #8d96a2;
  border: 0;
  border-radius: 16px;
  background: #d5dbe3;
  font-size: 12px;
  font-weight: 1000;
  cursor: not-allowed;
}

@media (max-width: 380px) {
  .dcc-auth-screen { padding-left: 0; padding-right: 0; }
  .dcc-auth-card {
    width: calc(100% - 28px);
    padding: 26px 18px 22px;
    border-radius: 32px;
  }
  .dcc-card-heading h2 { font-size: 31px; }
  .dcc-card-heading p { font-size: 13px; margin-bottom: 22px; }
  .dcc-login-input-wrap { min-height: 64px; border-radius: 21px; }
  .dcc-login-input-wrap input { min-height: 62px; font-size: 15px; }
  .dcc-login-field-icon { width: 46px !important; height: 46px; border-radius: 16px; }
  .dcc-login-primary-button { min-height: 64px; border-radius: 22px; font-size: 16px; }
}

@media (min-width: 481px) {
  .dcc-auth-root { border-left: 1px solid rgba(255,255,255,.06); border-right: 1px solid rgba(255,255,255,.06); }
}

/* v0.15.0 · MATCH round participation redesign */
.dcc-v2-root{min-height:100vh;background:linear-gradient(180deg,#f5f9fd 0%,#eef3f8 100%);color:#071526}
.dcc-v2-header{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:44px minmax(0,1fr) 48px;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid rgba(10,30,50,.08);background:rgba(247,250,253,.94);backdrop-filter:blur(14px)}
.dcc-v2-header>a{display:grid;place-items:center;width:40px;height:40px;border-radius:14px;background:#dcfbf3;color:#057b67;text-decoration:none;font-size:20px;font-weight:900}
.dcc-v2-header>div{display:grid;gap:2px}.dcc-v2-header span{color:#008a72;font-size:10px;font-weight:900;letter-spacing:.14em}.dcc-v2-header strong{font-size:18px}.dcc-v2-header img{width:46px;height:46px;border-radius:16px;object-fit:cover;background:#e7edf5}
.dcc-v2-content{display:grid;gap:18px;padding:22px 16px 110px}
.dcc-v2-intro span,.dcc-v2-section-head span{display:block;color:#008a72;font-size:10px;font-weight:900;letter-spacing:.15em}.dcc-v2-intro h1{margin:8px 0 6px;font-size:34px;line-height:1.06}.dcc-v2-intro p{margin:0;color:#748195;line-height:1.55}
.dcc-v2-notice{padding:14px 16px;border:1px solid #91e9d5;border-radius:18px;background:#e8fff8;color:#076b59;font-weight:750;line-height:1.45}.dcc-v2-notice.is-error{border-color:#ffb6b6;background:#fff0f0;color:#aa2424}
.dcc-v2-assets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dcc-v2-assets article{min-width:0;padding:15px 12px;border:1px solid #e0e7ef;border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(12,33,55,.05)}.dcc-v2-assets span{display:block;color:#7b8797;font-size:10px;font-weight:800}.dcc-v2-assets strong{display:inline-block;margin-top:8px;font-size:24px;line-height:1}.dcc-v2-assets em{margin-left:3px;color:#008a72;font-size:11px;font-style:normal;font-weight:800}
.dcc-v2-section-head h2{margin:7px 0 0;font-size:23px}.dcc-v2-open-rounds,.dcc-v2-history{display:grid;gap:12px}.dcc-v2-round-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dcc-v2-round-tabs a{display:grid;gap:5px;padding:14px 15px;border:1px solid #e1e8ef;border-radius:18px;background:#fff;color:#0c1b2b;text-decoration:none}.dcc-v2-round-tabs a.is-active{border-color:#45ddbd;background:#eafff9;box-shadow:0 8px 22px rgba(0,161,129,.12)}.dcc-v2-round-tabs b{font-size:15px}.dcc-v2-round-tabs small{color:#728093}
.dcc-v2-empty{padding:22px;border:1px dashed #cbd5df;border-radius:20px;background:rgba(255,255,255,.7);color:#7a8795;text-align:center}
.dcc-v2-round-card{overflow:hidden;border:1px solid #dce5ed;border-radius:28px;background:#fff;box-shadow:0 16px 42px rgba(9,30,52,.08)}.dcc-v2-round-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:20px}.dcc-v2-round-card-head span{color:#008a72;font-size:10px;font-weight:900;letter-spacing:.13em}.dcc-v2-round-card-head h2{margin:7px 0 4px;font-size:26px}.dcc-v2-round-card-head p{margin:0;color:#7a8795}.dcc-v2-round-count{display:grid;gap:3px;min-width:92px;padding:12px;border-radius:17px;background:#e8fff8;text-align:right}.dcc-v2-round-count b{font-size:18px}.dcc-v2-round-count span{color:#55766f;font-size:11px;letter-spacing:0}
.dcc-v2-media{position:relative;aspect-ratio:16/10;background:linear-gradient(135deg,#0c2035,#134c5d);overflow:hidden}.dcc-v2-media-file{display:block;width:100%;height:100%;object-fit:cover}.dcc-v2-media-empty{display:grid;place-items:center;align-content:center;gap:8px;width:100%;height:100%;color:#fff;text-align:center}.dcc-v2-media-empty i{font-size:42px;color:#52ebc8}.dcc-v2-media-empty strong{font-size:24px}.dcc-v2-media-empty span{max-width:260px;color:#bdd3dc;font-size:12px;line-height:1.45}.dcc-v2-round-description{margin:0;padding:17px 20px;color:#667587;line-height:1.6}
.dcc-v2-entry-form{display:grid;gap:14px;padding:20px;border-top:1px solid #edf1f5;background:#fbfdff}.dcc-v2-entry-form label{display:grid;gap:8px}.dcc-v2-entry-form label>span{font-weight:850}.dcc-v2-entry-form input{width:100%;height:58px;padding:0 18px;border:1px solid #d4dfe8;border-radius:17px;background:#f3f6fa;font-size:20px;font-weight:800;box-sizing:border-box}.dcc-v2-entry-form small{color:#7a8797;line-height:1.5}.dcc-v2-entry-form button,.dcc-v2-entry-form>a{display:grid;place-items:center;min-height:58px;border:0;border-radius:18px;background:linear-gradient(135deg,#18dbb1,#62efd0);color:#071d22;text-decoration:none;font-size:16px;font-weight:900;box-shadow:0 12px 24px rgba(0,190,150,.18)}
.dcc-v2-waiting{display:flex;align-items:center;gap:14px;margin:0 20px 20px;padding:16px;border-radius:19px;background:#eafff9}.dcc-v2-waiting.is-pending{background:#fff5df}.dcc-v2-waiting i{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#fff;color:#008a72;font-style:normal;font-weight:900}.dcc-v2-waiting div{display:grid;gap:4px}.dcc-v2-waiting span{color:#687889;font-size:12px}
.dcc-v2-result-card{margin:0 20px 20px;padding:19px;border:1px solid #8fe7d3;border-radius:21px;background:linear-gradient(135deg,#eafff8,#f8fffd)}.dcc-v2-result-card>span{color:#008a72;font-size:10px;font-weight:900;letter-spacing:.13em}.dcc-v2-result-card h3{margin:7px 0 14px;font-size:21px}.dcc-v2-result-card>div{display:flex;flex-wrap:wrap;gap:7px}.dcc-v2-result-card b{padding:7px 9px;border-radius:999px;background:#fff}.dcc-v2-result-card b.is-success{color:#087c51}.dcc-v2-result-card b.is-fail{color:#c43d3d}.dcc-v2-result-card p{margin:14px 0 0;color:#667487;line-height:1.55}.dcc-v2-result-card p strong{color:#071526}
.dcc-v2-history-list{display:grid;gap:9px}.dcc-v2-history-list>a,.dcc-v2-ticket-history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;border:1px solid #e0e7ee;border-radius:18px;background:#fff;color:#091829;text-decoration:none}.dcc-v2-history-list div{display:grid;gap:4px}.dcc-v2-history-list span{color:#7b8795;font-size:11px}.dcc-v2-history-list b{font-size:12px}.dcc-v2-history-list b.is-wait{color:#a36e10}
.dcc-v2-ticket-product{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;align-items:center;padding:18px;border:1px solid #dfe7ee;border-radius:26px;background:linear-gradient(135deg,#fff,#effff9);box-shadow:0 14px 38px rgba(11,31,53,.06)}.dcc-v2-ticket-product img{width:120px;height:120px;border-radius:20px;object-fit:cover;background:#eaf0f5}.dcc-v2-ticket-product>div{display:grid;gap:6px}.dcc-v2-ticket-product span{color:#008a72;font-size:10px;font-weight:900;letter-spacing:.12em}.dcc-v2-ticket-product h2{margin:0;font-size:23px}.dcc-v2-ticket-product p{margin:0;color:#697889;line-height:1.45}.dcc-v2-ticket-product b{margin-top:3px;font-size:17px}
.dcc-v2-ticket-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dcc-v2-ticket-summary article{padding:15px 12px;border-radius:18px;background:#fff;border:1px solid #e1e8ef}.dcc-v2-ticket-summary span{display:block;color:#7a8795;font-size:10px;font-weight:800}.dcc-v2-ticket-summary strong{display:block;margin-top:8px;font-size:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dcc-v2-buy-card{display:grid;gap:18px;padding:20px;border-radius:26px;background:#fff;border:1px solid #dce5ed}.dcc-v2-buy-card>div>span{color:#008a72;font-size:10px;font-weight:900;letter-spacing:.12em}.dcc-v2-buy-card h2{margin:7px 0 5px}.dcc-v2-buy-card p{margin:0;color:#778596}.dcc-v2-buy-card form{display:grid;gap:12px}.dcc-v2-buy-card label{display:grid;gap:7px}.dcc-v2-buy-card input{height:56px;padding:0 16px;border:1px solid #d7e0e8;border-radius:16px;background:#f4f7fa;font-size:18px}.dcc-v2-buy-card button{height:56px;border:0;border-radius:17px;background:#4fe6c1;font-weight:900}.dcc-v2-buy-card.is-disabled{opacity:.72;background:#eef1f4}.dcc-v2-disabled-copy{padding:16px;border-radius:16px;background:#e1e5e9}.dcc-v2-disabled-copy strong,.dcc-v2-disabled-copy span{display:block}.dcc-v2-disabled-copy span{margin-top:5px;color:#687481}.dcc-v2-ticket-history-row div{display:grid;gap:4px}.dcc-v2-ticket-history-row span{color:#7c8897;font-size:11px}.dcc-v2-ticket-history-row>b{font-size:11px;text-align:right}
.dcc-assets-balance-list article.is-dnft small i{background:#8b5cf6}.dcc-assets-balance-list article.is-dnft em{color:#7c3aed}
@media(max-width:380px){.dcc-v2-assets strong{font-size:20px}.dcc-v2-ticket-product{grid-template-columns:96px minmax(0,1fr)}.dcc-v2-ticket-product img{width:96px;height:96px}.dcc-v2-round-tabs{grid-template-columns:1fr}.dcc-v2-history-list>a,.dcc-v2-ticket-history-row{align-items:flex-start;flex-direction:column}.dcc-v2-ticket-summary strong{font-size:17px}}
.dcc-home-asset-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.dcc-home-asset-item.is-dnft:after{background:#8b5cf6}.dcc-home-asset-item.is-dnft em{color:#7c3aed}@media(max-width:380px){.dcc-home-asset-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.15.1 · Compact asset figures and soft MZ-style MATCH round UI */
.dcc-home-asset-item strong[data-fit-number],
.dcc-assets-balance-list strong[data-fit-number] {
  max-width: 100%;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: clip;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
  letter-spacing: -.055em;
}
.dcc-assets-balance-list article > div { min-width: 0; }
.dcc-assets-balance-list strong[data-fit-number] { display: block; flex: 1 1 auto; width: 100%; }

.dcc-v2-root {
  --v2-ink: #08172a;
  --v2-mint: #45e8c2;
  --v2-mint-deep: #008d74;
  --v2-lavender: #9575ff;
  --v2-sky: #7bc8ff;
  background:
    radial-gradient(circle at 96% 5%, rgba(109,231,210,.26), transparent 28%),
    radial-gradient(circle at 3% 38%, rgba(136,184,255,.18), transparent 27%),
    linear-gradient(180deg,#f8fbff 0%,#eef4fa 100%);
}
.dcc-v2-content { gap: 20px; padding: 18px 16px 112px; }
.dcc-v2-header {
  border-bottom: 1px solid rgba(13,38,61,.06);
  background: rgba(250,252,255,.9);
  box-shadow: 0 8px 24px rgba(24,45,69,.04);
}
.dcc-v2-header>a { border-radius: 16px; background: linear-gradient(145deg,#e6fff8,#d7f7f1); box-shadow: inset 0 0 0 1px rgba(0,143,116,.05); }
.dcc-v2-header img { border: 4px solid #fff; border-radius: 18px; box-shadow: 0 8px 20px rgba(35,55,78,.12); }

.dcc-v2-intro {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0,1fr) 92px;
  align-items: center;
  gap: 14px;
  min-height: 150px;
  padding: 24px 22px;
  border: 1px solid rgba(97,141,177,.13);
  border-radius: 30px;
  background:
    radial-gradient(circle at 88% 20%, rgba(255,255,255,.78), transparent 27%),
    linear-gradient(135deg,#effff9 0%,#f5f1ff 55%,#edf7ff 100%);
  box-shadow: 0 18px 44px rgba(25,50,76,.08);
  overflow: hidden;
}
.dcc-v2-intro:before,
.dcc-v2-intro:after {
  content:"";
  position:absolute;
  border-radius:999px;
  filter: blur(.2px);
  pointer-events:none;
}
.dcc-v2-intro:before { width:100px;height:100px;right:-25px;bottom:-36px;background:rgba(91,227,197,.25); }
.dcc-v2-intro:after { width:66px;height:66px;left:-24px;top:-22px;background:rgba(149,117,255,.16); }
.dcc-v2-intro-copy { position: relative; z-index: 1; min-width: 0; }
.dcc-v2-intro h1 { margin: 8px 0 7px; font-size: clamp(30px,8.5vw,39px); line-height: 1.02; letter-spacing: -.055em; }
.dcc-v2-intro p { max-width: 300px; color: #66758a; font-size: 14px; }
.dcc-v2-intro-mark {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 82px;
  height: 82px;
  border: 7px solid rgba(255,255,255,.8);
  border-radius: 28px;
  background: linear-gradient(145deg,#55ebc9,#78d9ff);
  box-shadow: 0 14px 28px rgba(39,176,159,.18), inset 0 0 0 1px rgba(255,255,255,.38);
  transform: rotate(4deg);
}
.dcc-v2-intro-mark b { color:#07322d; font-size:32px; transform:rotate(-4deg); }
.dcc-v2-intro-mark i { position:absolute;top:-12px;right:-7px;color:#9674ff;font-size:24px;font-style:normal; }
.dcc-v2-intro-mark em { position:absolute;left:-11px;bottom:8px;width:22px;height:22px;border-radius:50%;background:#fff2a9;box-shadow:0 5px 14px rgba(98,73,0,.12); }

.dcc-v2-notice { border: 0; border-radius: 22px; background: linear-gradient(135deg,#eafff8,#f6fffc); box-shadow: inset 0 0 0 1px rgba(24,201,160,.32), 0 10px 24px rgba(20,137,110,.06); }
.dcc-v2-assets { gap: 9px; }
.dcc-v2-assets article {
  display: grid;
  grid-template-columns: 36px minmax(0,1fr);
  align-items: center;
  gap: 8px;
  min-height: 86px;
  padding: 13px 10px;
  border: 0;
  border-radius: 23px;
  background: rgba(255,255,255,.9);
  box-shadow: 0 13px 32px rgba(22,42,66,.07), inset 0 0 0 1px rgba(36,67,92,.06);
}
.dcc-v2-assets article>i {
  display:grid;place-items:center;width:36px;height:36px;border-radius:14px;
  background:#dcfff5;color:#047762;font-size:13px;font-style:normal;font-weight:1000;
}
.dcc-v2-assets article.is-reserved>i { background:#e9f5ff;color:#227ab4; }
.dcc-v2-assets article.is-dnft>i { background:#f0eaff;color:#7650cc; }
.dcc-v2-assets article>div { min-width:0; }
.dcc-v2-assets strong { font-size: clamp(20px,6vw,27px); }
.dcc-v2-assets span { white-space: nowrap; overflow:hidden; text-overflow:ellipsis; }

.dcc-v2-section-head { margin-top: 2px; padding: 0 3px; }
.dcc-v2-section-head h2 { font-size: 24px; letter-spacing: -.045em; }
.dcc-v2-round-tabs {
  display:flex;
  gap:9px;
  overflow-x:auto;
  padding:2px 2px 8px;
  scrollbar-width:none;
}
.dcc-v2-round-tabs::-webkit-scrollbar { display:none; }
.dcc-v2-round-tabs a {
  flex:0 0 auto;
  min-width:132px;
  padding:14px 16px;
  border:0;
  border-radius:20px;
  box-shadow:inset 0 0 0 1px rgba(47,79,105,.08),0 8px 20px rgba(25,45,67,.04);
}
.dcc-v2-round-tabs a.is-active { background:linear-gradient(135deg,#dffff5,#effffb);box-shadow:inset 0 0 0 1.5px #42dbba,0 12px 24px rgba(32,190,157,.13); }

.dcc-v2-round-card {
  padding: 10px;
  border: 0;
  border-radius: 32px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 20px 52px rgba(17,42,66,.11), inset 0 0 0 1px rgba(36,69,94,.07);
}
.dcc-v2-round-card-head { padding: 13px 12px 16px; }
.dcc-v2-round-card-head span { display:inline-flex;padding:5px 9px;border-radius:999px;background:#e8fff8;color:#04755f;letter-spacing:.06em; }
.dcc-v2-round-card-head h2 { font-size:28px;letter-spacing:-.05em; }
.dcc-v2-round-count { border-radius:20px;background:linear-gradient(145deg,#e5fff8,#f2fffc);text-align:center;box-shadow:inset 0 0 0 1px rgba(54,206,174,.14); }
.dcc-v2-media {
  margin: 0 2px;
  border-radius: 24px;
  background: linear-gradient(145deg,#102b43,#15566a);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.1);
}
.dcc-v2-media-file { border-radius:24px; }
.dcc-v2-media-empty { background:
  radial-gradient(circle at 75% 20%,rgba(92,232,202,.22),transparent 30%),
  linear-gradient(145deg,#10283f,#115165); }
.dcc-v2-media-empty i { display:grid;place-items:center;width:68px;height:68px;border-radius:24px;background:rgba(85,235,202,.15);font-size:32px;transform:rotate(8deg); }
.dcc-v2-round-description { margin:10px 2px 0;padding:15px 16px;border-radius:18px;background:#f5f8fb; }
.dcc-v2-entry-form { margin-top:10px;padding:18px 12px 12px;border:0;border-radius:0 0 24px 24px;background:transparent; }
.dcc-v2-entry-form label { padding:16px;border-radius:21px;background:#f5f8fb;box-shadow:inset 0 0 0 1px rgba(52,79,101,.06); }
.dcc-v2-entry-form input { height:58px;border:0;border-radius:17px;background:#fff;box-shadow:inset 0 0 0 1px #d9e3eb; }
.dcc-v2-entry-form button,.dcc-v2-entry-form>a { border-radius:20px;background:linear-gradient(135deg,#35dfb8,#72efd4);box-shadow:0 14px 28px rgba(34,194,160,.23); }
.dcc-v2-waiting { margin:10px 2px 2px;border-radius:21px; }
.dcc-v2-result-card { margin:10px 2px 2px;border:0;border-radius:23px;box-shadow:inset 0 0 0 1px rgba(27,191,154,.25); }
.dcc-v2-history-list>a { border:0;border-radius:21px;box-shadow:0 10px 25px rgba(18,38,60,.055),inset 0 0 0 1px rgba(38,67,91,.07); }

@media(max-width:390px){
  .dcc-v2-content{padding-left:12px;padding-right:12px}
  .dcc-v2-intro{grid-template-columns:minmax(0,1fr) 72px;padding:21px 18px;border-radius:26px}
  .dcc-v2-intro-mark{width:66px;height:66px;border-width:6px;border-radius:23px}
  .dcc-v2-intro-mark b{font-size:26px}
  .dcc-v2-assets article{grid-template-columns:30px minmax(0,1fr);padding:11px 8px;border-radius:19px}
  .dcc-v2-assets article>i{width:30px;height:30px;border-radius:11px;font-size:11px}
  .dcc-v2-assets span{font-size:8px}
  .dcc-v2-assets strong{font-size:20px}
  .dcc-v2-round-card{border-radius:27px}
}


/* v0.15.2 Level summary */
.dcc-level-current-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 22px;padding:18px;border:1px solid #cfeee6;border-radius:24px;background:linear-gradient(135deg,#effff9,#f5f2ff)}.dcc-level-current-summary>div{padding:14px;border-radius:18px;background:rgba(255,255,255,.8)}.dcc-level-current-summary span,.dcc-level-current-summary small{display:block;color:#718094}.dcc-level-current-summary strong{display:block;margin:5px 0;font-size:22px}.dcc-level-current-summary p{grid-column:1/-1;margin:0;padding:12px 14px;border-radius:14px;background:#fff;color:#087b68;font-weight:700}@media(max-width:380px){.dcc-level-current-summary{grid-template-columns:1fr}}


/* v0.16.3 · shared soft header + unified floating bottom navigation */
.dcc-app-header {
  isolation: isolate;
}

.dcc-home-header {
  min-height: 80px;
  padding: max(12px, env(safe-area-inset-top)) 17px 12px;
  border-bottom: 0;
  border-radius: 0 0 24px 24px;
  background:
    radial-gradient(circle at 9% 22%, rgba(86, 232, 198, .16), transparent 25%),
    linear-gradient(135deg, rgba(250,253,255,.98), rgba(244,250,255,.96));
  box-shadow: 0 10px 28px rgba(18, 41, 64, .065);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
.dcc-home-brand-v2 {
  display: flex;
  align-items: center;
  gap: 11px;
  color: inherit;
  text-decoration: none;
}
.dcc-home-brand-symbol {
  position: relative;
  display: grid;
  flex: 0 0 44px;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 16px;
  background: linear-gradient(145deg, #66eccd, #34d2b6);
  color: #073e35;
  box-shadow: 0 10px 22px rgba(42, 197, 166, .18), inset 0 0 0 1px rgba(3, 121, 100, .07);
  overflow: hidden;
}
.dcc-home-brand-symbol b {
  position: relative;
  z-index: 2;
  font-size: 16px;
  font-weight: 1000;
}
.dcc-home-brand-symbol::before {
  content: "";
  position: absolute;
  width: 28px;
  height: 28px;
  left: -11px;
  top: -11px;
  border-radius: 50%;
  background: rgba(255,255,255,.34);
}
.dcc-home-brand-symbol i {
  position: absolute;
  right: 5px;
  top: 5px;
  width: 7px;
  height: 7px;
  border-radius: 3px;
  background: #fff2a8;
  transform: rotate(45deg);
}
.dcc-home-brand-copy {
  display: grid;
  gap: 3px;
}
.dcc-home-brand-copy em {
  color: #0b8d77;
  font-size: 9px;
  font-style: normal;
  font-weight: 1000;
  letter-spacing: .13em;
}
.dcc-home-brand-copy strong {
  color: #0a192b;
  font-size: 17px;
  line-height: 1;
  letter-spacing: -.035em;
}
.dcc-home-header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.dcc-home-header-actions form { margin: 0; }
.dcc-home-header-avatar {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  padding: 3px;
  border: 1px solid rgba(55, 92, 120, .08);
  border-radius: 16px;
  background: linear-gradient(145deg, #f4f8fc, #e8f2f5);
  overflow: hidden;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.65);
}
.dcc-home-header-avatar img {
  width: 100%;
  height: 100%;
  border-radius: 13px;
  object-fit: cover;
}
.dcc-home-logout {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid rgba(30, 62, 87, .08);
  border-radius: 15px;
  background: rgba(255,255,255,.86);
  color: #5e6c7e;
  box-shadow: 0 7px 18px rgba(27, 54, 78, .055);
  cursor: pointer;
}
.dcc-home-logout svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.dcc-home-logout:active { transform: scale(.96); }

.dcc-match-header {
  grid-template-columns: 42px minmax(0, 1fr) 46px;
  min-height: 80px;
  padding: max(12px, env(safe-area-inset-top)) 17px 12px;
  border-bottom: 0;
  border-radius: 0 0 24px 24px;
  background:
    radial-gradient(circle at 92% 22%, rgba(112, 215, 255, .12), transparent 25%),
    linear-gradient(135deg, rgba(250,253,255,.98), rgba(244,250,255,.96));
  box-shadow: 0 10px 28px rgba(18, 41, 64, .065);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
.dcc-match-back {
  width: 40px;
  height: 40px;
  border: 1px solid rgba(37, 159, 132, .1);
  border-radius: 15px;
  background: linear-gradient(145deg, #e9fff8, #dcf9f2);
  box-shadow: 0 7px 17px rgba(29, 157, 132, .08);
}
.dcc-match-back svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: #07826d;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.dcc-match-member {
  gap: 3px;
  overflow: hidden;
}
.dcc-match-member span {
  overflow: hidden;
  color: #0a8c76;
  font-size: 9px;
  letter-spacing: .13em;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dcc-match-member strong {
  overflow: hidden;
  color: #0b1b2e;
  font-size: 17px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dcc-match-avatar {
  position: relative;
  width: 44px;
  height: 44px;
  padding: 3px;
  border: 1px solid rgba(67, 102, 129, .08);
  border-radius: 16px;
  background: linear-gradient(145deg, #f5f8fc, #e7f1f4);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.65);
}
.dcc-match-avatar img {
  border-radius: 13px;
}
.dcc-match-avatar i {
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 10px;
  height: 10px;
  border: 2px solid #f7fbfd;
  border-radius: 50%;
  background: #48dbb8;
  box-shadow: 0 3px 8px rgba(31, 173, 144, .2);
}

.dcc-has-bottom-nav {
  padding-bottom: calc(116px + env(safe-area-inset-bottom));
}
.dcc-bottom-nav {
  left: 50%;
  bottom: max(8px, env(safe-area-inset-bottom));
  width: min(calc(100% - 20px), 460px);
  min-height: 72px;
  padding: 8px 8px 7px;
  border: 1px solid rgba(30, 62, 87, .08);
  border-radius: 24px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 17px 42px rgba(10, 31, 52, .16), inset 0 0 0 1px rgba(255,255,255,.7);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}
.dcc-bottom-nav a,
.dcc-bottom-nav > span {
  position: relative;
  min-height: 55px;
  gap: 4px;
  border-radius: 17px;
  transition: transform .15s ease, background .15s ease, color .15s ease;
}
.dcc-bottom-nav a:active { transform: scale(.96); }
.dcc-bottom-nav i {
  display: grid;
  place-items: center;
  width: 31px;
  height: 31px;
  border-radius: 11px;
  color: currentColor;
  background: transparent;
}
.dcc-bottom-nav i svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.dcc-bottom-nav i b {
  font-size: 13px;
}
.dcc-bottom-nav a span,
.dcc-bottom-nav > span > span {
  font-size: 8px;
  letter-spacing: .02em;
}
.dcc-bottom-nav .is-current,
.dcc-bottom-nav .is-active {
  color: #07836d;
  background: linear-gradient(145deg, rgba(231,255,248,.88), rgba(244,255,252,.72));
}
.dcc-bottom-nav .is-current i,
.dcc-bottom-nav .is-active i {
  background: #dffff5;
  box-shadow: inset 0 0 0 1px rgba(34, 178, 145, .08);
}
.dcc-bottom-nav .dcc-nav-core {
  align-self: start;
  margin-top: -24px;
  background: transparent;
}
.dcc-bottom-nav .dcc-nav-core i {
  width: 55px;
  height: 55px;
  padding: 13px;
  border: 5px solid rgba(255,255,255,.96);
  border-radius: 19px;
  background: linear-gradient(145deg, #63eccb, #32d1b4);
  color: #063f35;
  box-shadow: 0 13px 25px rgba(35, 190, 157, .25), inset 0 0 0 1px rgba(8, 130, 108, .08);
}
.dcc-bottom-nav .dcc-nav-core i svg {
  width: 24px;
  height: 24px;
  stroke-width: 2;
}
.dcc-bottom-nav .dcc-nav-core span {
  margin-top: -1px;
  color: #087d69;
}

@media (max-width: 350px) {
  .dcc-home-header,
  .dcc-match-header { padding-left: 13px; padding-right: 13px; }
  .dcc-home-header-avatar { display: none; }
  .dcc-bottom-nav { width: calc(100% - 14px); padding-left: 5px; padding-right: 5px; }
  .dcc-bottom-nav a span,
  .dcc-bottom-nav > span > span { font-size: 7.5px; }
}


/* v0.16.4 · headerless authenticated pages + home bottom logout */
.dcc-home-root > .dcc-home-header,
.dcc-match-root > .dcc-match-header,
.dcc-v2-root > .dcc-v2-header,
.dcc-app-root > .dcc-app-header {
  display: none !important;
}

.dcc-home-root > .dcc-home-content {
  padding-top: max(18px, env(safe-area-inset-top));
}
.dcc-match-root > .dcc-match-content,
.dcc-v2-root > .dcc-v2-content {
  padding-top: max(18px, env(safe-area-inset-top));
}

.dcc-home-logout-form {
  margin: 18px 0 8px;
}
.dcc-home-logout-bottom {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 13px;
  width: 100%;
  min-height: 76px;
  padding: 13px 16px;
  border: 1px solid rgba(197, 73, 91, .10);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(255,255,255,.96), rgba(255,244,246,.92));
  color: #7e3441;
  box-shadow: 0 13px 32px rgba(36, 48, 66, .065), inset 0 0 0 1px rgba(255,255,255,.72);
  text-align: left;
  cursor: pointer;
}
.dcc-home-logout-bottom:active { transform: scale(.985); }
.dcc-home-logout-bottom > i {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 17px;
  background: linear-gradient(145deg, #fff1f3, #ffe5e9);
  color: #c54a5d;
}
.dcc-home-logout-bottom svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.dcc-home-logout-bottom > span {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.dcc-home-logout-bottom strong {
  color: #28161b;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: -.02em;
}
.dcc-home-logout-bottom small {
  overflow: hidden;
  color: #9a7580;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dcc-home-logout-bottom > b {
  color: #cf8090;
  font-size: 25px;
  font-weight: 400;
  text-align: center;
}

@media (max-width: 350px) {
  .dcc-home-root > .dcc-home-content,
  .dcc-match-root > .dcc-match-content,
  .dcc-v2-root > .dcc-v2-content {
    padding-top: max(13px, env(safe-area-inset-top));
  }
  .dcc-home-logout-bottom { grid-template-columns: 42px minmax(0, 1fr) 20px; padding-left: 13px; padding-right: 13px; }
  .dcc-home-logout-bottom > i { width: 42px; height: 42px; border-radius: 15px; }
}

/* v0.17.4 · required personal BSC/BEP-20 withdrawal address on join */
.dcc-wallet-address-field .dcc-input-wrap {
  box-shadow:inset 0 0 0 1px rgba(30,190,157,.13);
  background:linear-gradient(145deg,#f8fffd,#f7fbff);
}
.dcc-wallet-address-field .dcc-field-help {
  padding:10px 11px;
  border-radius:13px;
  background:#effbf7;
  color:#63788a;
  line-height:1.55;
}
.dcc-wallet-address-field .dcc-field-help strong { color:#07846e; }

/* v0.17.5 · fixed personal USDT withdrawal address */
.dcc-withdraw-fixed-address {
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid rgba(33, 191, 157, .18);
  border-radius: 18px;
  background: linear-gradient(145deg, #f4fffb, #f6f9ff);
}
.dcc-withdraw-fixed-address > span {
  color: #26394b;
  font-size: 10px;
  font-weight: 900;
}
.dcc-withdraw-fixed-address input[readonly] {
  width: 100%;
  min-height: 54px;
  padding: 0 14px;
  color: #123143;
  border: 1px solid #d8e9e6;
  border-radius: 15px;
  background: #fff;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.8);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 9px;
  letter-spacing: -.02em;
  cursor: not-allowed;
}
.dcc-withdraw-fixed-address small {
  color: #738493;
  font-size: 8.5px;
  line-height: 1.55;
}
.dcc-withdraw-fixed-address small strong { color: #087c68; }
.dcc-withdraw-dcc-address[hidden],
.dcc-withdraw-fixed-address[hidden] { display: none !important; }
.dcc-withdraw-warning.is-error {
  color: #ad3743;
  border: 1px solid #ffc8cd;
  background: #fff0f2;
}
