/* DasGuard final PAPER terminal: last-loaded product truth and layout layer. */
:root {
  --paper-bg: #050914;
  --paper-surface: #09111f;
  --paper-surface-raised: #0d1728;
  --paper-border: #192842;
  --paper-border-strong: #294064;
  --paper-text: #e8eef8;
  --paper-muted: #8291aa;
  --paper-accent: #3984ff;
  --paper-positive: #10c981;
  --paper-warning: #f2b84b;
  --paper-danger: #ef5565;
}

html,
body {
  min-width: 0;
  background:
    linear-gradient(rgba(57, 132, 255, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(57, 132, 255, 0.025) 1px, transparent 1px),
    var(--paper-bg);
  background-size: 28px 28px;
  color: var(--paper-text);
  letter-spacing: 0;
}

body {
  font-family: "Sora", sans-serif;
}

.dg-header-bar {
  min-height: 58px;
  height: 58px;
  padding-inline: clamp(12px, 2vw, 28px);
  background: rgba(5, 9, 20, 0.96);
  border-bottom: 1px solid var(--paper-border);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22);
}

.dg-header-title {
  color: var(--paper-text);
  font-weight: 800;
}

.dg-header-status,
.dg-mob-sys-label {
  color: var(--paper-positive) !important;
}

.dg-product-mode-toggle {
  pointer-events: none;
}

.dg-product-mode-toggle .dg-mode-btn {
  min-width: 150px;
  border-color: rgba(242, 184, 75, 0.32) !important;
  background: rgba(242, 184, 75, 0.07) !important;
  color: var(--paper-warning) !important;
}

.container.dg-page-pad {
  width: 100%;
  max-width: 1920px;
  padding-inline: clamp(10px, 1.4vw, 22px);
}

.dg-grid-main {
  display: grid !important;
  grid-template-columns: minmax(230px, 260px) minmax(520px, 1fr) minmax(280px, 320px) !important;
  align-items: start;
  gap: 10px !important;
  padding-block: 10px 18px;
}

.dg-grid-left,
.dg-grid-center,
.dg-grid-right {
  min-width: 0;
  gap: 10px !important;
}

.dg-card,
.dg-strip-zone,
.dg-control-row,
.dg-coin-select-wrap,
.dg-sidebar-card,
.dg-chart-card,
#chartContainer {
  border-radius: 8px !important;
  border-color: var(--paper-border) !important;
  background-color: rgba(9, 17, 31, 0.94) !important;
  box-shadow: none !important;
}

.dg-card:hover,
.dg-sidebar-card:hover {
  border-color: var(--paper-border-strong) !important;
  transform: none !important;
}

.dg-grid-center .dg-coin-select-wrap {
  padding: 10px 12px !important;
}

.dg-final-market-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 9px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--paper-border);
  color: var(--paper-text);
  font-size: 11px;
  font-weight: 800;
}

.dg-final-market-heading small {
  color: var(--paper-muted);
  font-family: "JetBrains Mono", monospace;
  font-size: 7px;
  font-weight: 600;
}

body[data-dg-final-layout="desktop"] .dg-grid-left .dg-coin-select-v15 {
  display: block !important;
  padding: 12px !important;
}

body[data-dg-final-layout="desktop"] #majorCoinList {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 4px !important;
  max-height: 445px;
  overflow-y: auto;
  padding-right: 3px;
}

body[data-dg-final-layout="desktop"] #majorCoinList .dg-coin-row-break {
  display: none !important;
}

body[data-dg-final-layout="desktop"] #majorCoinList .dg-pill {
  width: 100%;
  min-height: 36px;
  justify-content: flex-start;
  gap: 9px;
  padding: 6px 10px !important;
  border-color: transparent !important;
  background: transparent !important;
}

body[data-dg-final-layout="desktop"] #majorCoinList .dg-pill:hover,
body[data-dg-final-layout="desktop"] #majorCoinList .dg-pill.active {
  border-color: rgba(57, 132, 255, 0.38) !important;
  background: rgba(57, 132, 255, 0.1) !important;
}

body[data-dg-final-layout="desktop"] .dg-grid-right #signalHeroWrap {
  width: 100%;
}

body[data-dg-final-layout="desktop"] .dg-grid-right #signalHeroWrap .dg-mob-signal-hero {
  display: none !important;
}

.dg-pill,
.dg-seg-btn,
.dg-action-item,
.dg-btn,
.dg-header-icon {
  min-height: 38px;
  border-radius: 7px !important;
}

.dg-pill.active,
.dg-seg-btn.active,
.dg-tf-active {
  color: #d9e9ff !important;
  border-color: rgba(57, 132, 255, 0.68) !important;
  background: rgba(57, 132, 255, 0.16) !important;
  box-shadow: inset 0 0 0 1px rgba(57, 132, 255, 0.12) !important;
}

#dgAlarmsCard .dg-sidebar-card {
  min-height: 112px;
}

#dgAlarmsCard .dg-action-dropdown-trigger {
  min-height: 38px;
}

#dgAlarmsCard .dg-action-item {
  width: 100%;
  justify-content: flex-start;
  padding-inline: 12px;
}

.dg-sidebar-card-title,
.dg-section-title,
.dg-toolbar-group-title {
  color: #a9b9d0 !important;
  letter-spacing: 0 !important;
}

.dg-mob-sig-prices,
.dg-strip-prices {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

#mobHeroPrice {
  white-space: nowrap !important;
  font-size: clamp(20px, 7vw, 26px) !important;
  letter-spacing: 0 !important;
}

.dg-mob-price-label,
.dg-strip-price-label {
  white-space: normal !important;
  overflow-wrap: anywhere;
  line-height: 1.25;
  letter-spacing: 0 !important;
}

.dg-chart-primary,
#chartContainer,
#tvChart {
  min-height: clamp(440px, 62vh, 720px) !important;
}

#dgAnalyticsCard {
  min-height: 190px;
}

#dgAnalyticsCard [data-dg-analytics-i18n="panelTitle"] {
  color: #77a9ff !important;
}

.dg-mobile-tabbar {
  background: rgba(5, 9, 20, 0.97) !important;
  border-top: 1px solid var(--paper-border) !important;
  padding-bottom: max(7px, env(safe-area-inset-bottom));
}

.dg-mobile-tab-btn {
  min-width: 44px;
  min-height: 44px;
}

:focus-visible {
  outline: 2px solid #77a9ff !important;
  outline-offset: 2px;
}

@media (max-width: 1180px) {
  .dg-grid-main {
    grid-template-columns: minmax(210px, 250px) minmax(480px, 1fr) !important;
  }

  .dg-grid-right {
    grid-column: 1 / -1;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  html,
  body {
    overflow-x: hidden !important;
  }

  .dg-header-bar,
  .container.dg-page-pad,
  .dg-grid-main {
    left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
  }

  .dg-header-nav.hidden.md\:flex {
    display: none !important;
  }

  .dg-mob-header-nav {
    display: flex !important;
  }

  .dg-grid-main {
    display: flex !important;
    flex-direction: column;
  }

  .dg-grid-left,
  .dg-grid-center,
  .dg-grid-right {
    width: 100%;
  }

  .dg-grid-right {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dg-final-market-heading {
    display: block !important;
    width: 100%;
    margin-bottom: 6px;
  }

  .dg-final-market-heading small {
    display: block !important;
    margin-top: 3px;
  }

  .dg-coin-select-v15 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  #majorCoinList {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: auto;
    overflow-y: hidden;
    max-height: none;
    overscroll-behavior-x: contain;
  }

  #majorCoinList .dg-coin-row-break {
    display: none !important;
  }

  #majorCoinList .dg-pill {
    flex: 0 0 auto;
  }
}

@media (max-width: 768px) {
  body {
    padding-bottom: calc(70px + env(safe-area-inset-bottom));
  }

  .news-ticker {
    display: none !important;
  }

  .dg-header-bar {
    top: 0 !important;
    min-height: 56px;
    height: 56px;
  }

  .container.dg-page-pad {
    padding-inline: 8px;
  }

  .dg-grid-main {
    display: flex !important;
    flex-direction: column;
    gap: 8px !important;
    padding-top: 8px;
  }

  .dg-grid-left,
  .dg-grid-center,
  .dg-grid-right {
    width: 100%;
  }

  .dg-grid-left {
    order: 1;
  }

  .dg-grid-center {
    order: 2;
  }

  .dg-grid-right {
    order: 3;
    display: flex !important;
    flex-direction: column;
  }

  .dg-chart-primary,
  #chartContainer,
  #tvChart {
    min-height: 360px !important;
    height: 52vh !important;
    max-height: 520px;
  }

  .dg-mob-sig-prices {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px;
  }

  .dg-mob-price-item {
    min-height: 62px;
    padding: 8px 6px !important;
  }

  .dg-mob-price-val {
    font-size: clamp(13px, 4vw, 18px) !important;
  }

  .dg-control-row {
    overflow: visible !important;
  }

  .dg-seg {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(44px, 1fr));
  }
}

@media (max-width: 360px) {
  .dg-header-title {
    font-size: 12px !important;
  }

  .dg-mob-price-label,
  .dg-strip-price-label {
    font-size: 8px !important;
  }

  .dg-chart-primary,
  #chartContainer,
  #tvChart {
    min-height: 320px !important;
  }
}
