/* 适配层：浅色主题补丁、低配模式、大字模式、横屏、安全区、设置页滑块（#37 #50 #51 #53） */
:root[data-theme="light"] .quick{background:linear-gradient(180deg,#f0c068,#d9a032);color:#2a1c04}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]) .quick{background:linear-gradient(180deg,#f0c068,#d9a032);color:#2a1c04}}

/* 设置页：音量滑块与下拉 */
.vol{display:grid;grid-template-columns:4.5em minmax(0,1fr) 3em;align-items:center;gap:10px;padding:7px 0;font-size:14px}
.vol output{text-align:right;font-variant-numeric:tabular-nums;color:var(--mist);font-size:13px}
.vol input[type=range]{width:100%;accent-color:var(--brass);min-width:0}
.field select{font:600 14px var(--f-ui);padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:rgba(var(--shade),.3);color:var(--text);min-width:0;max-width:100%}
.lowfx-tip{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:65;display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center;max-width:min(92vw,440px);padding:10px 14px;border-radius:14px;background:var(--bar-bg);border:1px solid var(--line);color:var(--text);font-size:13px;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.lowfx-tip button{padding:5px 12px;font-size:13px;min-width:0}

/* 低配模式：没有动画、过渡、阴影模糊 */
body.lowfx *,body.lowfx *::before,body.lowfx *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
body.lowfx .flash{display:none}
body.lowfx .tabbar{backdrop-filter:none;-webkit-backdrop-filter:none}
body.lowfx .announce.go{opacity:1}

/* 大字模式 */
html[data-big]{--cw:clamp(54px,11vw,84px);--sw:clamp(36px,7.4vw,50px)}
html[data-big] #view-home,html[data-big] #view-page{zoom:1.18}
html[data-big] .app{font-size:112%}
html[data-big] .nm,html[data-big] .stakes,html[data-big] .me,html[data-big] .status{font-size:15px}

/* iOS 安全区 */
body{margin:0}
.app{padding-top:max(10px,env(safe-area-inset-top,0px));padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}
.overlay{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-top:max(16px,env(safe-area-inset-top,0px));padding-bottom:max(16px,env(safe-area-inset-bottom,0px))}
.tabbar{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}
.gtoast{bottom:calc(88px + env(safe-area-inset-bottom,0px))}

/* 横屏手机：对手在左右、手牌一行、顶栏压缩 */
@media (max-height:500px) and (orientation:landscape){
  :root{--cw:clamp(32px,5.4vw,42px);--sw:20px}
  html[data-big]{--cw:clamp(38px,6.2vw,50px)}
  .app{min-height:0;gap:3px;padding-top:max(4px,env(safe-area-inset-top,0px));padding-bottom:max(4px,env(safe-area-inset-bottom,0px))}
  .top{gap:6px}.top h1{display:none}
  .icon{width:30px;height:30px}.top .ghost{padding:4px 10px}
  .tk{padding:0;flex-direction:row;justify-content:center;gap:3px}.tk span{font-size:10px}.tk b{font-size:11px}
  .table{gap:6px;grid-template-columns:auto minmax(0,1fr) auto}
  .seat{width:58px;gap:2px;padding-top:0}
  .ava{width:32px;height:32px;font-size:18px}
  .back{width:26px;height:36px}
  .stack b{font-size:14px}
  .nm{font-size:12px}
  .well{gap:2px}.dipai .cap{font-size:11px}.out{min-height:calc(var(--sw)*1.4 + 2px)}.toast{bottom:calc(var(--sw)*1.4 + 8px)}
  .outs{grid-template-columns:1fr 1fr;gap:4px}
  .status{min-height:14px;font-size:12px}
  .mebar{min-height:0;flex-wrap:nowrap}
  .me .ava{width:26px;height:26px;font-size:15px}
  .actions button{padding:5px 14px;font-size:14px}
  .hand{height:calc(var(--cw)*1.4 + 14px)}
  #hand .card.sel{transform:translateY(-10px)}
  .announce{font-size:clamp(30px,8vh,48px)}
  .panel.wide{max-height:calc(100dvh - 16px)}
  .overlay{padding-top:8px;padding-bottom:8px}
  .home{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}
}
