@layer ui {
  body * { font-variant:normal!important; font-family:var(--ui-font)!important; text-shadow:none!important; }
  body { font-family:var(--ui-font)!important; color:var(--ui-text)!important; background:var(--ui-bg-00)!important; }
  button,input,select,textarea,h1,h2,h3,h4,p,small,label,.small,.hint,.sub,[class*="Title"],[class*="Label"] {
    font-family:var(--ui-font)!important; text-shadow:none!important; letter-spacing:normal!important;
  }
  h1,h2 { font-size:var(--ui-title)!important; color:var(--ui-text)!important; line-height:1.25!important; }
  h3,h4 { font-size:var(--ui-section)!important; line-height:1.3!important; }
  p,.hint,.small,.sub,small { font-size:var(--ui-label)!important; line-height:1.5!important; color:var(--ui-text-secondary)!important; }
  .sub { display:block!important; }
  .section-title,.menuPanelTitle,.audioTitle,.graphicsTitle { color:var(--ui-text-secondary)!important; font-size:var(--ui-label)!important; font-weight:650!important; letter-spacing:.06em!important; }
  button,[role="button"] { touch-action:manipulation; }
  button,.ui-button {
    border:var(--ui-border-thin) solid var(--ui-border)!important; border-image:none!important;
    border-radius:var(--ui-radius-1)!important; background:var(--ui-surface-02)!important;
    color:var(--ui-text)!important; font-size:var(--ui-label)!important; font-weight:600!important;
    min-height:2.5rem; padding:var(--ui-space-2) var(--ui-space-3)!important;
    line-height:1.25!important; text-transform:none!important; white-space:normal!important;
    box-shadow:none!important; filter:none!important; animation:none!important;
    transition:background-color var(--ui-fast),border-color var(--ui-fast),opacity var(--ui-fast)!important;
    overflow-wrap:anywhere; cursor:pointer;
  }
  button::before,button::after { background-image:none!important; box-shadow:none!important; animation:none!important; }
  button:hover:not(:disabled):not([aria-disabled="true"]) { background:var(--ui-surface-03)!important; border-color:var(--ui-text-secondary)!important; }
  button:active:not(:disabled) { background:var(--ui-bg-01)!important; border-color:var(--ui-accent)!important; }
  :is(button,a,input,select,textarea,[tabindex]):focus-visible { outline:2px solid var(--ui-accent)!important; outline-offset:3px!important; }
  button.primary,.ui-primary,#playBtn,#authSubmitBtn,#loginSplashEnterBtn,#saveDeckBtn,#startFromDeckBtn,.preConfirm {
    background:var(--ui-action)!important; color:var(--ui-text)!important; border-color:var(--ui-border-active)!important;
  }
  button.primary:hover:not(:disabled),.ui-primary:hover:not(:disabled),#playBtn:hover { background:var(--ui-action-hover)!important; }
  button.danger,.ui-danger { background:var(--ui-danger-bg)!important; color:var(--ui-danger)!important; border-color:var(--ui-danger)!important; }
  button:disabled,[role="button"][aria-disabled="true"],button.disabled {
    color:var(--ui-text-disabled)!important; background:var(--ui-bg-01)!important;
    border-color:var(--ui-border)!important; cursor:not-allowed!important; opacity:.65!important; box-shadow:none!important;
  }
  button.active,button.selected,[role="tab"][aria-selected="true"] {
    border-color:var(--ui-accent)!important; box-shadow:inset 0 -3px 0 var(--ui-accent)!important; background:var(--ui-surface-03)!important;
  }
  .locked,[data-ui-state="locked"] { border-style:dashed!important; }
  input:not([type="range"]):not([type="checkbox"]),select,textarea {
    border:1px solid var(--ui-border)!important; border-radius:var(--ui-radius-1)!important;
    background:var(--ui-bg-01)!important; color:var(--ui-text)!important;
    font-size:var(--ui-body)!important; min-height:2.5rem; padding:var(--ui-space-2) var(--ui-space-3)!important; max-width:100%;
  }
  input::placeholder,textarea::placeholder { color:var(--ui-text-disabled)!important; }
  input[type="range"],input[type="checkbox"] { accent-color:var(--ui-accent)!important; }
  [aria-invalid="true"] { border-color:var(--ui-danger)!important; }
  .panel,.panelWindow,.menuPanel,.deckItem,.shopItem,.selectedDeckMini,.deckPickerCard,.accountPanel,.box,.configRow,.profileBox,.deckInspector,.deckCardDetailPanel,
  .deckCollectionSide,.deckForgeSelectedPanel,.deckForgeCollectionPanel,.deckCountCard,.onlineLobbyCard,
  .rewardStat,.rewardAccountXpCard,.rankProgressCard,.weeklyDayCard,.shopCard,.slotCard,.deckLibraryCard,
  .globalChatPanel,.globalChatHeader,.enchantPanel,.enchantCardMini,.cardInfoPopup {
    border:1px solid var(--ui-border)!important; border-image:none!important; border-radius:var(--ui-radius-2)!important;
    background:var(--ui-surface-01)!important; color:var(--ui-text)!important;
    box-shadow:none!important; backdrop-filter:none!important; -webkit-backdrop-filter:none!important;
  }
  .box .box,.panel .box { border:0!important; border-top:1px solid var(--ui-border)!important; background:transparent!important; }
  .card,.slotCard,.deckLibraryCard,.shopCard,.enchantCardMini,.playChoiceCard {
    border:1px solid var(--ui-border)!important; border-radius:var(--ui-radius-2)!important;
    background:var(--ui-surface-01)!important; box-shadow:none!important; color:var(--ui-text)!important;
    transition:border-color var(--ui-fast),background-color var(--ui-fast)!important;
  }
  :is(.card,.slotCard,.deckLibraryCard,.shopCard,.enchantCardMini).selected,
  :is(.card,.slotCard,.deckLibraryCard,.shopCard,.enchantCardMini).active {
    border:2px solid var(--ui-accent)!important; box-shadow:inset 0 -3px var(--ui-accent)!important; background:var(--ui-surface-03)!important;
  }
  .card.selected::after { content:'Selecionada'!important; position:static!important; display:block!important; color:var(--ui-accent)!important; font:600 var(--ui-micro) var(--ui-font)!important; background:none!important; }
  .card.disabled { opacity:.65!important; filter:none!important; border-style:dashed!important; }
  .cardLevelBadge { border:1px solid var(--ui-border)!important; border-radius:var(--ui-radius-1)!important; background:var(--ui-bg-01)!important; box-shadow:none!important; color:var(--ui-text-secondary)!important; font-size:var(--ui-caption)!important; }
  .deckItem [data-enchant-card] { background:var(--ui-surface-02)!important; border-color:var(--ui-border)!important; }
  .cardPreview { border-radius:var(--ui-radius-1)!important; box-shadow:none!important; }
  .bar,.rankProgressBar,.menuProfileLevelBar,.rewardAccountSlider { background:var(--ui-bg-00)!important; height:.375rem!important; border:0!important; border-radius:0!important; }
  .bar>span,.rankProgressBar>span,.menuProfileLevelBar>span,.rewardAccountSlider>span { background:var(--ui-accent)!important; box-shadow:none!important; }
  .bar.enemy>span { background:var(--ui-danger)!important; }
  .pill,.qualityBadge,.weeklyBadge,.choiceTag,.badge { background:var(--ui-bg-01)!important; border:1px solid var(--ui-border)!important; border-radius:var(--ui-radius-1)!important; color:var(--ui-text-secondary)!important; }
  .settingsTabs,.rewardTabs,.logTabs,.deckMainTabs,.accountTabs { gap:var(--ui-space-2)!important; border-bottom:1px solid var(--ui-border)!important; padding-bottom:var(--ui-space-2)!important; flex-wrap:wrap; }
  .settingsTabs button,.rewardTabs button,.deckMainTabs button,.logTabs button,.accountTabs button { background:transparent!important; }
  .statusOk { color:var(--ui-success)!important; }
  .statusWarn { color:var(--ui-warning)!important; }
  .statusError { color:var(--ui-danger)!important; }
  .ui-status { display:flex; align-items:baseline; flex-wrap:wrap; gap:var(--ui-space-2); }
  .ui-status strong { color:var(--ui-accent); font-size:var(--ui-section); }
  .ui-status span { color:var(--ui-text-secondary); font-size:var(--ui-label); }
  .ui-empty { padding:var(--ui-space-4); color:var(--ui-text-secondary); font-size:var(--ui-label); }
  .ui-facts { display:grid; grid-template-columns:1fr auto; gap:var(--ui-space-1) var(--ui-space-3); margin:var(--ui-space-2) 0; font-size:var(--ui-label); }
  .ui-facts dt { color:var(--ui-text-secondary); } .ui-facts dd { margin:0; font-variant-numeric:tabular-nums; }
  .ui-sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip-path:inset(50%)!important; white-space:nowrap!important; }
  .hidden,[hidden] { display:none!important; }
  @media (prefers-reduced-motion:reduce) {
    *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; scroll-behavior:auto!important; }
  }
}
