/* DEVNOOD V39 — final UI alignment layer
   Frontend only. Keeps existing API/database logic intact.
   Purpose: one consistent macOS-like dark/blue system, centered desktop windows,
   compact responsive modals, and reliable primary/save buttons. */

:root{
  --dn39-bg:#07090d;
  --dn39-bg-2:#0b0e14;
  --dn39-panel:#171a20;
  --dn39-panel-2:#1d2028;
  --dn39-panel-3:#11141a;
  --dn39-line:rgba(255,255,255,.085);
  --dn39-line-soft:rgba(255,255,255,.055);
  --dn39-text:#f5f7fb;
  --dn39-muted:#8b93a3;
  --dn39-muted-2:#697180;
  --dn39-blue:#0a84ff;
  --dn39-blue-2:#0877e8;
  --dn39-blue-soft:rgba(10,132,255,.12);
  --dn39-green:#30d158;
  --dn39-red:#ff453a;
  --dn39-amber:#ff9f0a;
  --dn39-radius-window:20px;
  --dn39-radius-card:15px;
  --dn39-shadow-window:0 34px 100px -30px rgba(0,0,0,.86),0 0 0 1px rgba(255,255,255,.015) inset;
}

html,body{min-height:100%;}
body.macos-ui{
  background:
    radial-gradient(circle at 84% 4%,rgba(10,132,255,.09),transparent 29%),
    radial-gradient(circle at 10% 96%,rgba(99,102,241,.055),transparent 30%),
    linear-gradient(145deg,var(--dn39-bg),var(--dn39-bg-2) 54%,#06080c)!important;
  background-attachment:fixed!important;
  color:var(--dn39-text)!important;
}

/* -------- Shared modal geometry -------- */
body.macos-ui [data-modal]{
  padding:clamp(10px,2.2vw,22px)!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:rgba(2,4,8,.78)!important;
}
body.macos-ui [data-modal] > [data-modal-content]{
  margin:auto!important;
  max-height:calc(100dvh - clamp(20px,4.4vw,44px))!important;
  border:1px solid var(--dn39-line)!important;
  border-radius:var(--dn39-radius-window)!important;
  background:linear-gradient(180deg,rgba(29,32,40,.985),rgba(20,23,29,.99))!important;
  box-shadow:var(--dn39-shadow-window)!important;
}
body.macos-ui [data-modal] .macos-modal-body,
body.macos-ui [data-modal] .overflow-y-auto{
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.18) transparent;
}
body.macos-ui [data-modal] .macos-modal-body::-webkit-scrollbar,
body.macos-ui [data-modal] .overflow-y-auto::-webkit-scrollbar{width:6px;height:6px}
body.macos-ui [data-modal] .macos-modal-body::-webkit-scrollbar-thumb,
body.macos-ui [data-modal] .overflow-y-auto::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:999px}

/* macOS title bars: deterministic spacing and no crowding */
body.macos-ui [data-modal-content] > .macos-titlebar,
body.macos-ui [data-modal-content] > [class*="macos-titlebar-"]{
  min-height:58px!important;
  padding:0 14px!important;
  gap:12px!important;
  background:linear-gradient(180deg,#292c34,#22252c)!important;
  border-bottom:1px solid var(--dn39-line-soft)!important;
}
body.macos-ui .macos-window-controls,
body.macos-ui .macos-traffic-lights{gap:6px!important;flex:0 0 auto!important}
body.macos-ui .macos-window-controls span,
body.macos-ui .macos-traffic-lights span{width:10px!important;height:10px!important}
body.macos-ui .macos-title-content,
body.macos-ui .macos-title-slot{min-width:0!important;overflow:hidden!important}
body.macos-ui [data-modal] button[onclick*="closeModal"],
body.macos-ui [data-modal] .modal-close,
body.macos-ui [data-modal] .app-settings-close{
  flex:0 0 auto!important;
}

/* -------- Reliable buttons / save button bugfix -------- */
body.macos-ui button[onclick*="save" i],
body.macos-ui button[type="submit"].macos-save-button,
body.macos-ui #settingsForm button[type="submit"],
body.macos-ui #appSettingsModal .app-action-btn.primary,
body.macos-ui #freekeyModal button[onclick*="saveFreeKeySettings"],
body.macos-ui #downloadModal button[onclick*="saveDownloadSettings"],
body.macos-ui #hwidResetModal button[onclick*="saveHwidCooldown"],
body.macos-ui #hwidResetModal button[onclick*="saveDeviceResetSettings"],
body.macos-ui #hwidResetModal button[onclick*="saveAdSettings"]{
  color:#fff!important;
  background:linear-gradient(180deg,#168cff 0%,#0877e8 100%)!important;
  border:1px solid rgba(85,171,255,.56)!important;
  box-shadow:0 10px 26px rgba(10,132,255,.16),inset 0 1px 0 rgba(255,255,255,.15)!important;
  text-shadow:none!important;
}
body.macos-ui button[onclick*="save" i]:hover,
body.macos-ui #settingsForm button[type="submit"]:hover,
body.macos-ui #appSettingsModal .app-action-btn.primary:hover{
  filter:brightness(1.06)!important;
  transform:translateY(-1px)!important;
}
body.macos-ui button[onclick*="save" i]:disabled{opacity:.6!important;filter:none!important;transform:none!important}

/* -------- Web settings -------- */
body.macos-ui #settingsModal .settings-panel{
  width:min(94vw,900px)!important;
  max-height:min(88dvh,840px)!important;
  border-radius:20px!important;
}
body.macos-ui #settingsModal .settings-head{
  min-height:62px!important;
  padding:10px 16px!important;
  background:linear-gradient(180deg,#292c34,#22252c)!important;
  border-bottom:1px solid var(--dn39-line-soft)!important;
}
body.macos-ui #settingsModal .settings-tabs{
  margin:12px 16px 0!important;
  padding:4px!important;
  gap:5px!important;
  border:1px solid var(--dn39-line-soft)!important;
  border-radius:13px!important;
  background:#0e1117!important;
}
body.macos-ui #settingsModal .settings-tab-btn{min-height:40px!important;border-radius:10px!important;color:#929aa8!important}
body.macos-ui #settingsModal .settings-tab-btn.active{
  color:#fff!important;
  background:linear-gradient(180deg,#168cff,#0877e8)!important;
  border-color:rgba(85,171,255,.35)!important;
  box-shadow:0 8px 22px rgba(10,132,255,.14)!important;
}
body.macos-ui #settingsModal #settingsForm{
  padding:14px 16px 18px!important;
  max-height:calc(88dvh - 122px)!important;
}
body.macos-ui #settingsModal #settingsForm .mb-4,
body.macos-ui #settingsModal #settingsForm .p-3.rounded-xl{
  background:linear-gradient(180deg,rgba(31,34,42,.92),rgba(20,23,29,.96))!important;
  border:1px solid var(--dn39-line)!important;
  border-radius:15px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}
body.macos-ui #settingsModal #settingsForm button[type="submit"]{
  min-height:46px!important;
  border-radius:12px!important;
  position:sticky!important;
  bottom:0!important;
  z-index:6!important;
}

/* -------- App settings -------- */
body.macos-ui #appSettingsModal .app-settings-panel{
  width:min(94vw,860px)!important;
  max-height:min(88dvh,850px)!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#1e2128,#171a20)!important;
}
body.macos-ui #appSettingsModal .app-settings-head{
  min-height:64px!important;
  padding:10px 16px!important;
  background:linear-gradient(180deg,#292c34,#22252c)!important;
  border-bottom:1px solid var(--dn39-line-soft)!important;
}
body.macos-ui #appSettingsModal .app-settings-title-icon{
  width:34px!important;height:34px!important;border-radius:11px!important;
  color:#74bdff!important;background:rgba(10,132,255,.13)!important;border-color:rgba(10,132,255,.22)!important;
}
body.macos-ui #appSettingsModal .app-settings-tabs{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  margin:12px 16px 0!important;
  gap:6px!important;
  padding:4px!important;
  border:1px solid var(--dn39-line-soft)!important;
  border-radius:13px!important;
  background:#0e1117!important;
}
body.macos-ui #appSettingsModal .app-settings-tab-btn,
body.macos-ui #appSettingsModal .app-settings-tab-btn:nth-child(3){
  grid-column:auto!important;
  min-height:42px!important;
  border-radius:10px!important;
  border-color:transparent!important;
  background:transparent!important;
  color:#929aa8!important;
}
body.macos-ui #appSettingsModal .app-settings-tab-btn.active{
  color:#fff!important;
  background:linear-gradient(180deg,#168cff,#0877e8)!important;
  border-color:rgba(85,171,255,.36)!important;
  box-shadow:0 8px 22px rgba(10,132,255,.14)!important;
}
body.macos-ui #appSettingsModal .app-settings-body{padding:14px 16px 16px!important}
body.macos-ui #appSettingsModal .app-settings-section{
  padding:14px!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,rgba(31,34,42,.93),rgba(20,23,29,.96))!important;
  border:1px solid var(--dn39-line)!important;
}
body.macos-ui #appSettingsModal .app-input,
body.macos-ui #appSettingsModal .app-select{
  min-height:42px!important;border-radius:11px!important;background:#101319!important;border-color:var(--dn39-line)!important;
}
body.macos-ui #appSettingsModal .app-settings-actions{
  grid-template-columns:1fr!important;
  margin:14px -16px -16px!important;
  padding:12px 16px calc(12px + env(safe-area-inset-bottom))!important;
  background:linear-gradient(180deg,rgba(23,26,32,.80),rgba(23,26,32,.99))!important;
}
body.macos-ui #appSettingsModal .app-action-btn.primary{width:100%!important;min-height:46px!important;border-radius:12px!important}

/* -------- IP Rules -------- */
body.macos-ui #ipRulesModal > [data-modal-content]{
  width:min(94vw,720px)!important;
  max-width:720px!important;
  padding:0!important;
  overflow:hidden!important;
}
body.macos-ui #ipRulesModal [data-modal-content] > .macos-titlebar{
  margin:0!important;
  min-height:58px!important;
}
body.macos-ui #ipRulesModal [data-modal-content] > .mb-4,
body.macos-ui #ipRulesModal [data-modal-content] > .flex.flex-col.md\:flex-row{
  margin:0!important;
}
body.macos-ui #ipRulesModal [data-modal-content] > .flex.flex-col.md\:flex-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 150px 104px!important;
  gap:8px!important;
  padding:14px 16px!important;
  background:rgba(255,255,255,.01)!important;
  border-bottom:1px solid var(--dn39-line-soft)!important;
}
body.macos-ui #ipRulesModal #ip-address,
body.macos-ui #ipRulesModal #ip-type{
  width:100%!important;min-width:0!important;min-height:42px!important;border-radius:11px!important;background:#101319!important;
}
body.macos-ui #ipRulesModal button[onclick*="addIpRule"]{
  width:104px!important;min-width:104px!important;min-height:42px!important;padding:0 14px!important;border-radius:11px!important;
  white-space:nowrap!important;line-height:1!important;
  color:#fff!important;background:linear-gradient(180deg,#168cff,#0877e8)!important;border:1px solid rgba(85,171,255,.5)!important;
}
body.macos-ui #ipRulesModal #ipRulesContainer{
  min-height:150px!important;max-height:min(52dvh,420px)!important;padding:14px 16px 16px!important;margin:0!important;
}
body.macos-ui #ipRulesModal #ipRulesContainer > *{
  padding:11px 12px!important;border-radius:13px!important;background:#13171e!important;border:1px solid var(--dn39-line-soft)!important;
}

/* -------- HWID / Public -------- */
body.macos-ui #hwidResetModal > [data-modal-content]{
  width:min(94vw,1080px)!important;
  max-width:1080px!important;
  max-height:min(88dvh,850px)!important;
  border-radius:20px!important;
}
body.macos-ui #hwidResetModal > [data-modal-content] > :first-child{
  min-height:60px!important;padding:10px 16px!important;background:linear-gradient(180deg,#292c34,#22252c)!important;border-bottom:1px solid var(--dn39-line-soft)!important;
}
body.macos-ui #hwidResetModal > [data-modal-content] > .p-6{
  padding:14px!important;max-height:calc(88dvh - 60px)!important;
}
body.macos-ui #hwidResetModal .grid.xl\:grid-cols-\[1\.2fr_0\.8fr\]{grid-template-columns:minmax(0,1.16fr) minmax(320px,.84fr)!important;gap:14px!important}
body.macos-ui #hwidResetModal section{
  border-radius:15px!important;
  border-color:var(--dn39-line)!important;
  background:linear-gradient(180deg,rgba(31,34,42,.93),rgba(20,23,29,.96))!important;
}
body.macos-ui #hwidResetModal section > .p-5{padding:14px!important}
body.macos-ui #hwidResetModal input,
body.macos-ui #hwidResetModal textarea,
body.macos-ui #hwidResetModal select{border-radius:11px!important;background:#101319!important}
body.macos-ui #hwidResetModal button[onclick*="save"]{min-height:42px!important;border-radius:11px!important}

/* -------- Free key -------- */
body.macos-ui #freekeyModal > [data-modal-content]{
  width:min(94vw,1080px)!important;
  max-width:1080px!important;
  max-height:min(88dvh,850px)!important;
  border-radius:20px!important;
}
body.macos-ui #freekeyModal > [data-modal-content] > :first-child{
  min-height:60px!important;padding:10px 16px!important;background:linear-gradient(180deg,#292c34,#22252c)!important;border-bottom:1px solid var(--dn39-line-soft)!important;
}
body.macos-ui #freekeyModal > [data-modal-content] > .p-6{
  padding:14px!important;max-height:calc(88dvh - 60px)!important;gap:14px!important;
}
body.macos-ui #freekeyModal #freekey-overview{gap:9px!important}
body.macos-ui #freekeyModal #freekey-overview > div{
  padding:13px!important;border-radius:14px!important;background:linear-gradient(180deg,#1e222a,#171a20)!important;border-color:var(--dn39-line)!important;
}
body.macos-ui #freekeyModal #freekey-overview .text-3xl{font-size:1.45rem!important;line-height:1.1!important}
body.macos-ui #freekeyModal .grid.xl\:grid-cols-\[1\.12fr_0\.88fr\]{grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr)!important;gap:14px!important}
body.macos-ui #freekeyModal section{
  border-radius:15px!important;border-color:var(--dn39-line)!important;background:linear-gradient(180deg,rgba(31,34,42,.93),rgba(20,23,29,.96))!important;
}
body.macos-ui #freekeyModal section > .p-5{padding:14px!important}
body.macos-ui #freekeyModal input,
body.macos-ui #freekeyModal textarea,
body.macos-ui #freekeyModal select{border-radius:11px!important;background:#101319!important}
body.macos-ui #freekeyModal button[onclick*="saveFreeKeySettings"]{
  width:min(100%,260px)!important;min-height:46px!important;border-radius:12px!important;margin-left:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;
}

/* -------- Download manager -------- */
body.macos-ui #downloadModal > [data-modal-content]{
  width:min(94vw,800px)!important;
  max-width:800px!important;
  max-height:min(88dvh,850px)!important;
  border-radius:20px!important;
  display:flex!important;flex-direction:column!important;
}
body.macos-ui #downloadModal > [data-modal-content] > :first-child{
  min-height:60px!important;padding:10px 16px!important;background:linear-gradient(180deg,#292c34,#22252c)!important;border-bottom:1px solid var(--dn39-line-soft)!important;
}
body.macos-ui #downloadModal > [data-modal-content] > .p-6.overflow-y-auto{
  padding:14px 16px 16px!important;max-height:none!important;flex:1 1 auto!important;min-height:0!important;gap:12px!important;
}
body.macos-ui #downloadModal .grid.grid-cols-2.gap-3{gap:9px!important}
body.macos-ui #downloadModal .p-4.rounded-xl{
  padding:12px!important;border-radius:14px!important;background:linear-gradient(180deg,#1e222a,#171a20)!important;border:1px solid var(--dn39-line)!important;
}
body.macos-ui #downloadModal input,
body.macos-ui #downloadModal textarea{border-radius:11px!important;background:#101319!important}
body.macos-ui #downloadModal a[href="/download"]{
  min-height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:11px!important;
  color:#82c2ff!important;background:rgba(10,132,255,.10)!important;border:1px solid rgba(10,132,255,.18)!important;
}
body.macos-ui #downloadModal button[onclick*="saveDownloadSettings"]{
  min-height:46px!important;border-radius:12px!important;position:sticky!important;bottom:0!important;z-index:10!important;
}

/* -------- Auction -------- */
body.macos-ui #auctionModal .auction-shell{
  width:min(94vw,1100px)!important;
  max-width:1100px!important;
  max-height:min(88dvh,860px)!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#1d2027,#15181e)!important;
  border:1px solid var(--dn39-line)!important;
  box-shadow:var(--dn39-shadow-window)!important;
}
body.macos-ui #auctionModal .auction-header{
  min-height:62px!important;padding:10px 16px!important;background:linear-gradient(180deg,#292c34,#22252c)!important;border-bottom:1px solid var(--dn39-line-soft)!important;
}
body.macos-ui #auctionModal .auction-header-icon{
  width:36px!important;height:36px!important;border-radius:11px!important;color:#74bdff!important;background:rgba(10,132,255,.13)!important;border:1px solid rgba(10,132,255,.22)!important;box-shadow:none!important;
}
body.macos-ui #auctionModal .auction-body{padding:14px!important;max-height:calc(88dvh - 62px)!important;gap:12px!important}
body.macos-ui #auctionModal .auction-card{border-radius:14px!important;background:linear-gradient(180deg,#1e222a,#171a20)!important;border-color:var(--dn39-line)!important}
body.macos-ui #auctionModal .auction-body > section:first-child{gap:8px!important}
body.macos-ui #auctionModal .auction-body > section:first-child .auction-card{padding:12px!important}
body.macos-ui #auctionModal .auction-primary{
  color:#fff!important;background:linear-gradient(180deg,#168cff,#0877e8)!important;border:1px solid rgba(85,171,255,.50)!important;box-shadow:0 10px 24px rgba(10,132,255,.15)!important;border-radius:11px!important;
}
body.macos-ui #auctionModal .auction-tab.active,
body.macos-ui #auctionModal .auction-quick-chip.active{
  color:#fff!important;background:rgba(10,132,255,.14)!important;border-color:rgba(10,132,255,.38)!important;box-shadow:none!important;
}
body.macos-ui #auctionModal .auction-input,
body.macos-ui #auctionModal .auction-select,
body.macos-ui #auctionModal .auction-textarea{border-radius:11px!important;background:#101319!important;border-color:var(--dn39-line)!important}
body.macos-ui #auctionModal .auction-savebar{
  border-radius:14px!important;border-color:rgba(10,132,255,.18)!important;background:rgba(18,22,29,.96)!important;
}

/* -------- Standalone public pages: centered and full-height background -------- */
body.macos-ui.macos-page-download,
body.macos-ui.macos-page-redeem,
body.macos-ui.macos-page-reset{
  min-height:100dvh!important;
  width:100%!important;
  padding:clamp(18px,4vh,46px) clamp(12px,2.4vw,28px)!important;
  display:grid!important;
  place-items:center!important;
  align-content:center!important;
  overflow-x:hidden!important;
  background:
    radial-gradient(circle at 82% 8%,rgba(10,132,255,.10),transparent 28%),
    radial-gradient(circle at 12% 92%,rgba(99,102,241,.06),transparent 31%),
    linear-gradient(145deg,#07090d,#0b0e14 55%,#06080c)!important;
}
body.macos-ui.macos-page-download .shell.macos-top-window,
body.macos-ui.macos-page-redeem .macos-window,
body.macos-ui.macos-page-reset .macos-window{
  margin:0 auto!important;
  width:min(100%,860px)!important;
  max-width:860px!important;
  border-radius:20px!important;
  border:1px solid var(--dn39-line)!important;
  background:linear-gradient(180deg,#1d2027,#15181e)!important;
  box-shadow:var(--dn39-shadow-window)!important;
}
body.macos-ui.macos-page-download .shell.macos-top-window::after,
body.macos-ui.macos-page-redeem .macos-window::after,
body.macos-ui.macos-page-reset .macos-window::after{background:var(--dn39-line-soft)!important}

/* Download public page */
body.macos-ui.macos-page-download .shell.macos-top-window{max-width:860px!important}
body.macos-ui.macos-page-download .shell.macos-top-window .hero{
  padding:64px 24px 22px!important;
  background:linear-gradient(180deg,#242832,#1b1e25)!important;
  border-bottom:1px solid var(--dn39-line-soft)!important;
}
body.macos-ui.macos-page-download .app-icon{
  width:70px!important;height:70px!important;border-radius:20px!important;margin-bottom:14px!important;font-size:28px!important;
  background:rgba(10,132,255,.14)!important;color:#76b8ff!important;border:1px solid rgba(10,132,255,.20)!important;
}
body.macos-ui.macos-page-download h1{font-size:clamp(24px,3vw,31px)!important}
body.macos-ui.macos-page-download .body{padding:18px!important}
body.macos-ui.macos-page-download .single,
body.macos-ui.macos-page-download .game-card{padding:15px!important;border-radius:14px!important;background:#181c23!important;border-color:var(--dn39-line)!important}
body.macos-ui.macos-page-download .btn{min-height:44px!important;border-radius:11px!important;background:linear-gradient(180deg,#168cff,#0877e8)!important;border:1px solid rgba(85,171,255,.50)!important}
body.macos-ui.macos-page-download .footer{padding:13px 18px!important;background:#181b21!important}

/* Redeem / reset public page */
body.macos-ui.macos-page-redeem .macos-window,
body.macos-ui.macos-page-reset .macos-window{max-width:700px!important}
body.macos-ui.macos-page-redeem .titlebar,
body.macos-ui.macos-page-reset .titlebar{
  min-height:58px!important;padding:0 16px!important;background:linear-gradient(180deg,#292c34,#22252c)!important;border-bottom:1px solid var(--dn39-line-soft)!important;
}
body.macos-ui.macos-page-redeem .window-content,
body.macos-ui.macos-page-reset .window-content{padding:16px 18px 18px!important}
body.macos-ui.macos-page-redeem .tab-switcher,
body.macos-ui.macos-page-reset .tab-switcher{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;padding:4px!important;margin-bottom:14px!important;border-radius:12px!important;background:#0e1117!important;border:1px solid var(--dn39-line-soft)!important;
}
body.macos-ui.macos-page-redeem .tab-link,
body.macos-ui.macos-page-reset .tab-link{min-height:40px!important;border-radius:9px!important;display:flex!important;align-items:center!important;justify-content:center!important}
body.macos-ui.macos-page-redeem .tab-link.active,
body.macos-ui.macos-page-reset .tab-link.active{color:#fff!important;background:linear-gradient(180deg,#168cff,#0877e8)!important}
body.macos-ui.macos-page-redeem .header,
body.macos-ui.macos-page-reset .header{padding:0 0 14px!important;background:transparent!important}
body.macos-ui.macos-page-redeem .header-icon,
body.macos-ui.macos-page-reset .header-icon{width:46px!important;height:46px!important;border-radius:13px!important;margin-bottom:10px!important}
body.macos-ui.macos-page-redeem .form-group,
body.macos-ui.macos-page-reset .form-group{margin-bottom:12px!important}
body.macos-ui.macos-page-redeem input,
body.macos-ui.macos-page-reset input{min-height:44px!important;border-radius:11px!important;background:#101319!important;border:1px solid var(--dn39-line)!important}
body.macos-ui.macos-page-redeem .btn-primary,
body.macos-ui.macos-page-reset .btn-primary{min-height:46px!important;border-radius:11px!important;background:linear-gradient(180deg,#168cff,#0877e8)!important;border:1px solid rgba(85,171,255,.50)!important}
body.macos-ui.macos-page-redeem .window-footer,
body.macos-ui.macos-page-reset .window-footer{padding:12px 16px!important;background:#181b21!important}

/* -------- Mobile -------- */
@media(max-width:767px){
  body.macos-ui [data-modal]{padding:7px!important;align-items:center!important;justify-content:center!important}
  body.macos-ui [data-modal] > [data-modal-content]{width:calc(100vw - 14px)!important;max-width:calc(100vw - 14px)!important;max-height:calc(100dvh - 14px)!important;border-radius:17px!important}

  body.macos-ui #settingsModal .settings-panel,
  body.macos-ui #appSettingsModal .app-settings-panel,
  body.macos-ui #hwidResetModal > [data-modal-content],
  body.macos-ui #freekeyModal > [data-modal-content],
  body.macos-ui #downloadModal > [data-modal-content],
  body.macos-ui #auctionModal .auction-shell{
    width:calc(100vw - 14px)!important;max-width:calc(100vw - 14px)!important;max-height:calc(100dvh - 14px)!important;border-radius:17px!important;
  }

  body.macos-ui #appSettingsModal .app-settings-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.macos-ui #appSettingsModal .app-settings-tab-btn:nth-child(3){grid-column:1/-1!important}
  body.macos-ui #appSettingsModal .app-settings-head{grid-template-columns:48px minmax(0,1fr) 38px!important;padding:9px 10px!important;gap:7px!important}
  body.macos-ui #appSettingsModal .app-settings-title p{display:none!important}

  body.macos-ui #ipRulesModal [data-modal-content] > .flex.flex-col.md\:flex-row{
    grid-template-columns:minmax(0,1fr) 112px!important;padding:11px!important;gap:7px!important;
  }
  body.macos-ui #ipRulesModal #ip-address{grid-column:1/-1!important}
  body.macos-ui #ipRulesModal button[onclick*="addIpRule"]{width:100%!important;min-width:0!important}
  body.macos-ui #ipRulesModal #ipRulesContainer{padding:11px!important}

  body.macos-ui #hwidResetModal > [data-modal-content] > .p-6,
  body.macos-ui #freekeyModal > [data-modal-content] > .p-6{padding:10px!important;max-height:calc(100dvh - 72px)!important}
  body.macos-ui #hwidResetModal .grid.xl\:grid-cols-\[1\.2fr_0\.8fr\],
  body.macos-ui #freekeyModal .grid.xl\:grid-cols-\[1\.12fr_0\.88fr\]{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
  body.macos-ui #freekeyModal #freekey-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.macos-ui #freekeyModal button[onclick*="saveFreeKeySettings"]{width:100%!important}

  body.macos-ui #downloadModal > [data-modal-content] > .p-6.overflow-y-auto{padding:10px!important}
  body.macos-ui #downloadModal .grid.grid-cols-2.gap-3{grid-template-columns:minmax(0,1fr)!important}

  body.macos-ui #auctionModal .auction-body{padding:10px!important;max-height:calc(100dvh - 72px)!important}
  body.macos-ui #auctionModal .auction-body > section:first-child{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.macos-ui #auctionModal .auction-body > section:first-child > :last-child{grid-column:1/-1!important}

  body.macos-ui.macos-page-download,
  body.macos-ui.macos-page-redeem,
  body.macos-ui.macos-page-reset{padding:10px!important;align-content:center!important}
  body.macos-ui.macos-page-download .shell.macos-top-window,
  body.macos-ui.macos-page-redeem .macos-window,
  body.macos-ui.macos-page-reset .macos-window{width:100%!important;max-width:100%!important;border-radius:17px!important}
  body.macos-ui.macos-page-download .shell.macos-top-window .hero{padding:62px 16px 18px!important}
  body.macos-ui.macos-page-download .body{padding:12px!important}
  body.macos-ui.macos-page-redeem .window-content,
  body.macos-ui.macos-page-reset .window-content{padding:12px!important}
}

@media(max-width:390px){
  body.macos-ui #freekeyModal #freekey-overview{grid-template-columns:minmax(0,1fr)!important}
  body.macos-ui #settingsModal .settings-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.macos-ui.macos-page-redeem .tab-switcher,
  body.macos-ui.macos-page-reset .tab-switcher{grid-template-columns:minmax(0,1fr)!important}
}

@media(prefers-reduced-motion:reduce){
  body.macos-ui *,body.macos-ui *::before,body.macos-ui *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* ============================================================
   DEVNOOD V40 PATCH — cache / free-key / download manager polish
   Frontend-only. No API/database behavior changed.
   ============================================================ */

/* Cache: the Redis save action is always a blue primary action. */
body.macos-ui #cacheModal button[onclick*="saveRedisConfig"]{
  min-height:42px!important;
  color:#fff!important;
  background:linear-gradient(180deg,#1992ff 0%,#0877e8 100%)!important;
  border:1px solid rgba(91,177,255,.62)!important;
  border-radius:11px!important;
  box-shadow:0 10px 24px rgba(10,132,255,.20),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
body.macos-ui #cacheModal button[onclick*="saveRedisConfig"]:hover{
  background:linear-gradient(180deg,#35a0ff 0%,#0d82f2 100%)!important;
  filter:none!important;
}

/* Standalone Free Key: same desktop width family as reset-devices, true full-page bg and vertical centering. */
html{background:#07090d;}
body.macos-ui.macos-page-freekey{
  width:100%!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  margin:0!important;
  padding:clamp(18px,4vh,46px) clamp(12px,2.4vw,28px)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  overflow-x:hidden!important;
  background:
    radial-gradient(circle at 82% 8%,rgba(10,132,255,.13),transparent 30%),
    radial-gradient(circle at 12% 92%,rgba(99,102,241,.08),transparent 32%),
    linear-gradient(145deg,#07090d,#0b1019 54%,#06080c)!important;
  background-attachment:fixed!important;
}
body.macos-ui.macos-page-freekey::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(115deg,transparent 7%,rgba(10,132,255,.08) 7.15%,transparent 7.5%,transparent 87%,rgba(10,132,255,.07) 87.15%,transparent 87.5%),
    radial-gradient(circle at 18% 30%,rgba(47,132,255,.14) 0 2px,transparent 3px),
    radial-gradient(circle at 78% 24%,rgba(47,132,255,.10) 0 2px,transparent 3px);
  opacity:.82;
}
body.macos-ui.macos-page-freekey .ad-slot{flex:0 0 auto!important;max-width:700px!important}
body.macos-ui.macos-page-freekey .macos-window{
  width:min(100%,700px)!important;
  max-width:700px!important;
  margin:0 auto!important;
  border-radius:20px!important;
  border:1px solid rgba(88,171,255,.24)!important;
  background:linear-gradient(180deg,rgba(28,32,40,.985),rgba(18,21,27,.995))!important;
  box-shadow:0 36px 110px -34px rgba(0,0,0,.9),0 0 34px rgba(10,132,255,.06)!important;
  overflow:hidden!important;
}
body.macos-ui.macos-page-freekey .titlebar{
  min-height:58px!important;
  height:58px!important;
  padding:0 16px!important;
  background:linear-gradient(180deg,#292d36,#22262e)!important;
  border-bottom:1px solid rgba(255,255,255,.065)!important;
}
body.macos-ui.macos-page-freekey .window-content{
  width:100%!important;
  padding:18px 20px 20px!important;
  background:linear-gradient(180deg,rgba(26,30,38,.98),rgba(20,23,29,.99))!important;
}
body.macos-ui.macos-page-freekey .header{
  margin:0 0 16px!important;
  padding:14px 12px!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,rgba(18,39,65,.42),rgba(17,26,39,.24))!important;
}
body.macos-ui.macos-page-freekey .header-icon{
  width:52px!important;height:52px!important;border-radius:15px!important;margin-bottom:10px!important;
  color:#fff!important;background:rgba(10,132,255,.15)!important;border:1px solid rgba(58,156,255,.35)!important;
  box-shadow:0 14px 28px rgba(10,132,255,.12)!important;
}
body.macos-ui.macos-page-freekey .header h1{font-size:24px!important;line-height:1.15!important}
body.macos-ui.macos-page-freekey .header p{color:#9aa4b3!important}
body.macos-ui.macos-page-freekey .status-card{
  margin-bottom:18px!important;padding:12px!important;border-radius:14px!important;
  border:1px solid rgba(255,255,255,.085)!important;background:rgba(19,23,30,.92)!important;
}
body.macos-ui.macos-page-freekey .mini-stat{
  background:#12161c!important;border:1px solid rgba(255,255,255,.075)!important;border-radius:11px!important;
}
body.macos-ui.macos-page-freekey .section-no{background:linear-gradient(180deg,#168cff,#0877e8)!important;box-shadow:0 7px 18px rgba(10,132,255,.2)!important}
body.macos-ui.macos-page-freekey .telegram-domain-help{
  border-radius:11px!important;background:rgba(10,132,255,.08)!important;border-color:rgba(10,132,255,.23)!important;
}
body.macos-ui.macos-page-freekey .btn-primary{
  color:#fff!important;background:linear-gradient(180deg,#168cff,#0877e8)!important;border:1px solid rgba(85,171,255,.5)!important;
  box-shadow:0 10px 24px rgba(10,132,255,.18)!important;
}
body.macos-ui.macos-page-freekey .window-footer{
  padding:12px 16px!important;background:#181b21!important;border-top:1px solid rgba(255,255,255,.06)!important;
}
body.macos-ui.macos-page-freekey .window-footer a{color:#aab4c4!important}
body.macos-ui.macos-page-freekey .window-footer a:hover{color:#6db6ff!important}

/* Download Manager V40 */
body.macos-ui #downloadModal > [data-modal-content].dn-download-modal{
  width:min(94vw,860px)!important;
  max-width:860px!important;
  max-height:min(90dvh,900px)!important;
  border:1px solid rgba(65,154,255,.24)!important;
  background:linear-gradient(180deg,rgba(24,30,40,.99),rgba(15,19,26,.995))!important;
  box-shadow:0 36px 120px -34px rgba(0,0,0,.92),0 0 38px rgba(10,132,255,.06)!important;
}
body.macos-ui #downloadModal .dn-download-head{
  min-height:60px!important;padding:11px 17px!important;
  background:linear-gradient(180deg,#252b35,#1c222b)!important;
  border-bottom:1px solid rgba(255,255,255,.065)!important;
}
body.macos-ui #downloadModal .dn-download-head h3{font-size:16px!important;letter-spacing:-.01em!important}
body.macos-ui #downloadModal .dn-download-head > div > button{
  width:36px!important;height:36px!important;border-radius:11px!important;
  background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.07)!important;
}
body.macos-ui #downloadModal .dn-download-body{
  padding:14px 16px 16px!important;
  gap:12px!important;
  max-height:calc(min(90dvh,900px) - 60px)!important;
  background:linear-gradient(180deg,rgba(13,18,26,.20),rgba(8,11,16,.08))!important;
}
body.macos-ui #downloadModal .dn-download-stats{gap:10px!important}
body.macos-ui #downloadModal .dn-download-stat{
  min-height:78px!important;padding:13px 16px!important;border-radius:15px!important;text-align:left!important;
  display:flex!important;flex-direction:column!important;justify-content:center!important;
  background:linear-gradient(145deg,rgba(16,37,64,.75),rgba(20,27,38,.9))!important;
  border:1px solid rgba(49,141,255,.22)!important;
}
body.macos-ui #downloadModal .dn-download-stat-green{
  background:linear-gradient(145deg,rgba(13,56,49,.55),rgba(20,27,38,.9))!important;
  border-color:rgba(48,209,88,.18)!important;
}
body.macos-ui #downloadModal .dn-download-stat .text-2xl{font-size:1.45rem!important;line-height:1.1!important}
body.macos-ui #downloadModal .dn-download-stat .text-xs{margin-top:5px!important;color:#a1a9b7!important}
body.macos-ui #downloadModal .dn-download-enable,
body.macos-ui #downloadModal .dn-download-section{
  padding:14px!important;border-radius:15px!important;
  background:linear-gradient(180deg,rgba(28,34,44,.94),rgba(18,23,31,.97))!important;
  border:1px solid rgba(255,255,255,.075)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
body.macos-ui #downloadModal .dn-download-enable{min-height:64px!important}
body.macos-ui #downloadModal .dn-download-source > h4,
body.macos-ui #downloadModal .dn-game-files h4,
body.macos-ui #downloadModal .dn-upload-game h4,
body.macos-ui #downloadModal .dn-version-info h4{font-size:14px!important}
body.macos-ui #downloadModal .dn-source-card{
  min-height:62px!important;border-radius:12px!important;background:#11161e!important;border:1px solid rgba(255,255,255,.085)!important;
}
body.macos-ui #downloadModal .dn-source-card:hover{border-color:rgba(10,132,255,.38)!important;background:#131b26!important}
body.macos-ui #downloadModal #dl-source-local-label.border-blue-500,
body.macos-ui #downloadModal #dl-source-r2-label.border-blue-500{
  border-color:#168cff!important;background:linear-gradient(180deg,rgba(10,132,255,.13),rgba(10,132,255,.055))!important;
  box-shadow:0 0 0 1px rgba(10,132,255,.10) inset!important;
}
body.macos-ui #downloadModal .dn-game-file-row{
  padding:10px!important;border-radius:13px!important;background:#11161d!important;border-color:rgba(255,255,255,.075)!important;
}
body.macos-ui #downloadModal .dn-game-file-main{align-items:center!important}
body.macos-ui #downloadModal .dn-game-thumb{
  width:72px!important;height:48px!important;min-width:72px!important;border-radius:10px!important;overflow:hidden!important;
  border:1px solid rgba(75,155,255,.2)!important;background:#0c1118!important;
}
body.macos-ui #downloadModal .dn-game-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
body.macos-ui #downloadModal .dn-game-file-info{flex:1 1 auto!important}
body.macos-ui #downloadModal .dn-upload-game [onclick*="apk-file"]{
  padding:18px!important;border-radius:13px!important;border-color:rgba(63,148,255,.22)!important;
  background:linear-gradient(180deg,rgba(10,132,255,.055),rgba(10,132,255,.02))!important;
}
body.macos-ui #downloadModal .dn-upload-game [onclick*="apk-file"]:hover{border-color:rgba(63,148,255,.55)!important;background:rgba(10,132,255,.075)!important}
body.macos-ui #downloadModal input,
body.macos-ui #downloadModal textarea{
  min-height:40px!important;background:#0f141b!important;border-color:rgba(255,255,255,.085)!important;
}
body.macos-ui #downloadModal textarea{min-height:68px!important}
body.macos-ui #downloadModal .dn-download-preview{
  min-height:40px!important;border-radius:11px!important;display:flex!important;align-items:center!important;justify-content:center!important;
  color:#87c3ff!important;background:rgba(10,132,255,.07)!important;border:1px solid rgba(10,132,255,.15)!important;
}
body.macos-ui #downloadModal .dn-download-save,
body.macos-ui #downloadModal button[onclick*="saveDownloadSettings"]{
  min-height:48px!important;border-radius:12px!important;color:#fff!important;
  background:linear-gradient(180deg,#1992ff 0%,#0877e8 100%)!important;
  border:1px solid rgba(91,177,255,.62)!important;
  box-shadow:0 12px 28px rgba(10,132,255,.22),inset 0 1px 0 rgba(255,255,255,.18)!important;
  position:sticky!important;bottom:0!important;z-index:20!important;
}

/* Public download page: RoV cover + compact premium card. */
body.macos-ui.macos-page-download{
  min-height:100vh!important;min-height:100dvh!important;
  background:
    radial-gradient(circle at 82% 12%,rgba(10,132,255,.15),transparent 30%),
    radial-gradient(circle at 16% 88%,rgba(64,93,255,.09),transparent 33%),
    linear-gradient(145deg,#05080d,#0a111c 55%,#05070b)!important;
}
body.macos-ui.macos-page-download .shell.macos-top-window,
body.macos-ui.macos-page-download .shell{
  width:min(100%,760px)!important;max-width:760px!important;
  border-color:rgba(71,160,255,.24)!important;
  background:linear-gradient(180deg,rgba(25,31,41,.99),rgba(14,18,25,.995))!important;
  box-shadow:0 38px 120px -34px rgba(0,0,0,.92),0 0 38px rgba(10,132,255,.06)!important;
}
body.macos-ui.macos-page-download .hero{
  padding:64px 24px 22px!important;
  background:linear-gradient(180deg,rgba(32,39,51,.98),rgba(21,26,34,.98))!important;
}
body.macos-ui.macos-page-download .game-cover{
  width:100%!important;aspect-ratio:1200/384!important;margin:0 0 14px!important;border-radius:13px!important;overflow:hidden!important;
  border:1px solid rgba(82,166,255,.24)!important;background:#0b1018!important;box-shadow:0 12px 30px rgba(0,0,0,.25)!important;
}
body.macos-ui.macos-page-download .game-cover img{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important}
body.macos-ui.macos-page-download .game-cover-small{aspect-ratio:1200/384!important;margin-bottom:12px!important}
body.macos-ui.macos-page-download .single,
body.macos-ui.macos-page-download .game-card{
  background:linear-gradient(180deg,#171d26,#11161d)!important;border:1px solid rgba(255,255,255,.08)!important;
}
body.macos-ui.macos-page-download .game-title{font-size:17px!important;color:#fff!important}
body.macos-ui.macos-page-download .pill{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.095)!important}
body.macos-ui.macos-page-download .btn{
  margin-top:14px!important;min-height:48px!important;font-size:15px!important;border-radius:12px!important;
  background:linear-gradient(180deg,#1992ff 0%,#0877e8 100%)!important;
  box-shadow:0 12px 28px rgba(10,132,255,.20),inset 0 1px 0 rgba(255,255,255,.17)!important;
}

@media(max-width:767px){
  body.macos-ui.macos-page-freekey{
    min-height:100dvh!important;padding:10px!important;justify-content:flex-start!important;overflow-y:auto!important;
  }
  body.macos-ui.macos-page-freekey .macos-window{width:100%!important;max-width:100%!important;margin:8px auto!important;border-radius:17px!important}
  body.macos-ui.macos-page-freekey .window-content{padding:12px!important}
  body.macos-ui.macos-page-freekey .status-grid{grid-template-columns:1fr!important}

  body.macos-ui #downloadModal > [data-modal-content].dn-download-modal{width:calc(100vw - 14px)!important;max-width:calc(100vw - 14px)!important;max-height:calc(100dvh - 14px)!important}
  body.macos-ui #downloadModal .dn-download-body{padding:10px!important;max-height:calc(100dvh - 72px)!important}
  body.macos-ui #downloadModal .dn-download-stats{grid-template-columns:1fr 1fr!important}
  body.macos-ui #downloadModal .dn-download-source .grid.grid-cols-2.gap-3{grid-template-columns:1fr!important}
  body.macos-ui #downloadModal .dn-upload-game .grid.grid-cols-2.gap-3{grid-template-columns:1fr!important}
  body.macos-ui #downloadModal .dn-game-thumb{width:62px!important;height:42px!important;min-width:62px!important}

  body.macos-ui.macos-page-download .shell{width:100%!important;max-width:100%!important}
  body.macos-ui.macos-page-download .body{padding:12px!important}
}
