.store-material-center {
  display: grid;
  gap: 14px;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  padding: 14px;
  overflow-x: hidden;
  background: #0c171d;
  color: #edf5f6;
  box-sizing: border-box;
}
.store-material-center *, .store-material-center *::before, .store-material-center *::after { box-sizing: border-box; }
.store-material-center > section, .store-assistant-category-content > section, .store-assistant-head { min-width: 0; border: 1px solid #34505a; border-radius: 14px; background: #13232a; box-shadow: 0 8px 24px #0003; }
.store-assistant-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 17px; }
.store-assistant-head > div { display: grid; gap: 5px; min-width: 0; }
.store-assistant-head strong { font-size: 24px; }
.store-assistant-head span, .section-head span { color: #9eb2b8; }
.store-assistant-workspace { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; min-width: 0; align-items: start; }
.store-assistant-category-rail { position: sticky; top: 12px; z-index: 5; display: grid; gap: 6px; min-width: 0; max-height: calc(100vh - 24px); padding: 9px; overflow-y: auto; border: 1px solid #3f6871; border-radius: 12px; background: linear-gradient(180deg, #17363c, #112a30); box-shadow: inset 0 0 0 1px #224a52, 0 8px 24px #0004; }
.store-assistant-category-rail button { width: auto; justify-self: start; min-height: 42px; padding: 8px 12px; text-align: center; white-space: nowrap; }
.store-assistant-category-rail button[aria-selected="true"] { background: linear-gradient(#c38121, #915a0d); border-color: #e3aa55; color: #fff7dd; box-shadow: inset 4px 0 #ffd479, 0 2px 0 #071014; }
.store-assistant-category-content { display: grid; gap: 10px; min-width: 0; }
.store-assistant-category-content > section { padding: 14px; scroll-margin-top: 12px; }
.store-assistant-category-content > section[hidden] { display: none !important; }
.store-assistant-embedded-section { padding: 0 !important; overflow: hidden; }
.store-assistant-embedded-host { width: 100%; min-width: 0; min-height: 0; }
.store-assistant-embedded-panel { width: 100%; height: calc(100vh - 108px); min-height: 680px; }
.store-assistant-embedded-panel.hidden { display: grid !important; }
.store-assistant-embedded-editor .ticket-collage-dialog.is-store-assistant-embedded { position: relative; inset: auto; display: block; width: 100%; height: calc(100vh - 108px); min-height: 680px; max-width: none; max-height: none; margin: 0; border: 0; border-radius: 0; }
.store-assistant-embedded-editor .ticket-collage-dialog.is-store-assistant-embedded::backdrop { display: none; }
.store-material-center button { min-width: 0; max-width: 100%; border: 1px solid #587984; border-radius: 8px; padding: 9px 12px; overflow: hidden; background: linear-gradient(#27434c, #1b333b); color: #f5fbfc; font: inherit; font-weight: 700; line-height: 1.2; text-overflow: ellipsis; cursor: pointer; box-shadow: 0 2px 0 #071014; }
.store-material-center button:hover { filter: brightness(1.22); }
.store-material-center button:active { transform: translateY(1px); box-shadow: none; }
.store-material-center .primary { background: linear-gradient(#c38121, #915a0d); border-color: #d99c43; color: #fff7dd; }
.store-material-center > section { padding: 14px; scroll-margin-top: 12px; }
.section-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; margin-bottom: 10px; }
.section-head > div { display: flex; align-items: center; gap: 10px; min-width: 0; }
.section-head strong { font-size: 19px; }
.section-head input { min-width: 240px; max-width: 100%; border: 1px solid #49616a; border-radius: 8px; padding: 10px; background: #081218; color: #fff; }
.material-tabs { display: flex; gap: 6px; max-width: 100%; overflow-x: auto; padding-bottom: 9px; }
.material-tabs button { flex: 0 0 auto; white-space: nowrap; }
.material-tabs button[aria-pressed="true"] { background: linear-gradient(#247582, #18535d); border-color: #52a8b3; }
.copy-grid, .picture-grid, .material-results { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; width: 100%; min-width: 0; }
.emoji-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; width: 100%; min-width: 0; }
.emoji-grid article { display: grid; align-content: start; gap: 6px; min-width: 0; padding: 8px; overflow: hidden; border: 1px solid #304a53; border-radius: 11px; background: #0f1c22; }
.emoji-picture { display: grid !important; gap: 4px; width: 100%; padding: 0 0 7px !important; overflow: hidden; border-color: #38535d !important; background: linear-gradient(145deg, #eef5f3, #d8e8e5) !important; color: #173138 !important; box-shadow: none !important; text-align: center; }
.emoji-picture img { display: block; width: 100%; aspect-ratio: 1; object-fit: contain; background: linear-gradient(45deg, #edf3f2 25%, #e4ecea 25%, #e4ecea 50%, #edf3f2 50%, #edf3f2 75%, #e4ecea 75%); background-size: 18px 18px; }
.emoji-picture strong, .emoji-picture small { display: block; min-width: 0; padding: 0 5px; overflow-wrap: anywhere; }
.emoji-picture strong { font-size: 15px; }
.emoji-picture small { min-height: 32px; color: #567078; font-size: 11px; line-height: 1.35; }
.emoji-grid article > .primary { width: 100%; padding: 7px 4px; font-size: 12px; }
[data-emoji-tabs] { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); overflow: visible; }
[data-emoji-tabs] button { width: 100%; white-space: normal; }
.copy-grid article, .picture-grid article, .material-results article { display: grid; align-content: start; gap: 9px; width: 100%; min-width: 0; max-width: 100%; border: 1px solid #304a53; border-radius: 11px; padding: 11px; overflow: hidden; background: #0f1c22; }
.copy-grid p, .material-results p { margin: 0; line-height: 1.65; white-space: pre-wrap; overflow-wrap: anywhere; }
.copy-grid article > button { justify-self: start; margin-top: auto; }
.picture-grid article > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 7px; min-width: 0; }
.picture { display: grid !important; width: 100%; min-width: 0; max-width: 100%; padding: 0 !important; overflow: hidden; background: #061015 !important; border-color: #3b5963 !important; text-align: left; box-shadow: none !important; }
.picture img { display: block; width: 100%; min-width: 0; max-width: 100%; height: 390px; object-fit: contain; background: #050b0e; }
.picture span { display: grid; gap: 3px; min-width: 0; padding: 10px; }
.picture strong { min-width: 0; overflow-wrap: anywhere; font-size: 17px; }
.picture small { min-width: 0; color: #9fb1b7; line-height: 1.45; overflow-wrap: anywhere; }
.material-ai { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; min-width: 0; }
.material-ai label { display: grid; gap: 5px; min-width: 0; color: #adbec3; font-weight: 700; }
.material-ai .wide { grid-column: span 2; }
.material-ai input, .material-ai select, .inline-editor input, .inline-editor textarea { width: 100%; min-width: 0; border: 1px solid #49616a; border-radius: 8px; padding: 9px; background: #081218; color: #fff; }
.material-ai output { grid-column: 1 / -1; color: #b9c7cb; }
.material-results { margin-top: 12px; }
.material-preview { width: min(94vw, 900px); max-height: 94vh; border: 1px solid #50717a; border-radius: 14px; padding: 12px; background: #071117; color: #fff; }
.material-preview::backdrop, .inline-editor::backdrop { background: #000d; }
.material-preview img { display: block; width: 100%; max-height: 82vh; object-fit: contain; background: #03080a; }
.material-preview strong { display: block; padding: 9px; text-align: center; }
.material-preview > button { position: sticky; top: 0; float: right; z-index: 2; }
.inline-editor { width: min(96vw, 1380px); height: min(94vh, 960px); border: 1px solid #50717a; border-radius: 14px; padding: 0; background: #081218; color: #fff; }
.inline-editor > header { display: flex; justify-content: space-between; align-items: center; padding: 12px 16px; border-bottom: 1px solid #304952; background: #12252c; }
.inline-editor > header > div { display: grid; gap: 3px; }
.inline-editor > header strong { font-size: 20px; }
.inline-editor > header span { color: #a8bac0; }
.editor-body { display: grid; grid-template-columns: 300px minmax(0, 1fr); height: calc(100% - 68px); }
.editor-controls { display: grid; align-content: start; gap: 10px; padding: 13px; overflow: auto; border-right: 1px solid #304952; }
.editor-controls label { display: grid; gap: 5px; color: #b9c8cc; font-weight: 700; }
.editor-controls output { line-height: 1.5; color: #ffd777; }
.editor-stage { min-width: 0; overflow: auto; padding: 14px; text-align: center; background: #050a0d; }
.editor-stage canvas { width: min(100%, 720px); height: auto; box-shadow: 0 12px 35px #000; touch-action: none; }
@media (max-width: 1000px) {
  .copy-grid, .picture-grid, .material-results { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .emoji-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .material-ai { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .store-material-center { padding: 7px; gap: 9px; }
  .store-assistant-head, .section-head { align-items: stretch; flex-direction: column; }
  .store-assistant-head { position: static; grid-column: 1; grid-row: auto; }
  .store-assistant-workspace { grid-template-columns: minmax(0, 1fr); }
  /* 手机端分类导航横排(白天版本样式:渐变横滑条+基础左插条选中态),浏览器窄屏生效;App内由下方native-app-shell横排规则接管 */
  .store-assistant-category-rail { position: relative; top: auto; z-index: 20; display: flex; gap: 4px; width: 100%; height: 44px; max-height: none; margin: 0; padding: 5px; overflow-x: auto; overflow-y: hidden; border-radius: 8px; background: linear-gradient(90deg, #17363c, #112a30); scrollbar-width: thin; }
  .store-assistant-category-rail button { flex: 0 0 auto; width: auto; min-height: 34px; padding: 6px 9px; white-space: nowrap; text-align: center; font-size: 12px; }
  .store-assistant-embedded-host > .mobile-screen.store-assistant-embedded-panel { display: block; }
  .store-assistant-head nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .store-material-center > section { grid-column: 1; }
  .section-head > div { align-items: flex-start; flex-direction: column; }
  .section-head input { min-width: 0; width: 100%; }
  .copy-grid, .picture-grid, .material-results, .material-ai { grid-template-columns: minmax(0, 1fr); }
  .emoji-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; }
  .emoji-grid article { padding: 4px; gap: 4px; border-radius: 7px; }
  .emoji-picture strong { font-size: 13px; }
  .emoji-picture small { min-height: 29px; font-size: 10px; }
  [data-emoji-tabs] { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; }
  [data-emoji-tabs] button { height: 34px; padding: 4px 2px; font-size: 11px; }
  .material-ai .wide { grid-column: auto; }
  .picture img { height: auto; max-height: none; }
  .inline-editor { width: 100vw; height: 100vh; max-height: none; border: 0; border-radius: 0; }
  .editor-body { grid-template-columns: minmax(0, 1fr); height: calc(100% - 62px); overflow: auto; }
  .editor-controls { border-right: 0; border-bottom: 1px solid #304952; overflow: visible; }
  .editor-stage { overflow: visible; }
  .editor-stage canvas { width: 100%; }
}
body.native-app-shell #screen-material-tool, body.native-app-shell #screen-ai-copy, body.native-app-shell #screen-material-tool .store-material-center, body.native-app-shell #screen-ai-copy .store-material-center { width: 100% !important; min-width: 0 !important; max-width: 100% !important; overflow-x: hidden !important; }
body.native-app-shell #screen-material-tool .store-material-center, body.native-app-shell #screen-ai-copy .store-material-center { padding: 6px; gap: 7px; }
body.native-app-shell #screen-material-tool .store-assistant-head, body.native-app-shell #screen-material-tool .section-head, body.native-app-shell #screen-ai-copy .store-assistant-head, body.native-app-shell #screen-ai-copy .section-head { align-items: stretch; flex-direction: column; gap: 7px; }
body.native-app-shell #screen-material-tool .store-assistant-head, body.native-app-shell #screen-ai-copy .store-assistant-head, body.native-app-shell #screen-material-tool .store-material-center > section, body.native-app-shell #screen-ai-copy .store-material-center > section, body.native-app-shell #screen-material-tool .store-assistant-category-content > section, body.native-app-shell #screen-ai-copy .store-assistant-category-content > section { padding: 8px; border-radius: 10px; }
body.native-app-shell #screen-material-tool .store-assistant-head strong, body.native-app-shell #screen-ai-copy .store-assistant-head strong { font-size: 20px; }
body.native-app-shell #screen-material-tool .store-assistant-workspace, body.native-app-shell #screen-ai-copy .store-assistant-workspace { display: block; min-width: 0; }
body.native-app-shell #screen-material-tool .store-assistant-category-rail, body.native-app-shell #screen-ai-copy .store-assistant-category-rail { position: sticky; top: 0; z-index: 20; display: flex; gap: 4px; width: 100%; max-height: none; margin-bottom: 1px; padding: 4px; overflow-x: auto; overflow-y: hidden; border: 0; border-radius: 0; background: linear-gradient(90deg, #17363c, #112a30); box-shadow: none; }
body.native-app-shell #screen-material-tool .store-assistant-category-rail button, body.native-app-shell #screen-ai-copy .store-assistant-category-rail button { flex: 0 0 auto; width: auto; height: 34px; min-height: 34px; padding: 5px 8px; font-size: 12px; white-space: nowrap; text-align: center; }
body.native-app-shell #screen-material-tool .copy-grid, body.native-app-shell #screen-material-tool .picture-grid, body.native-app-shell #screen-material-tool .material-results, body.native-app-shell #screen-material-tool .material-ai, body.native-app-shell #screen-ai-copy .copy-grid, body.native-app-shell #screen-ai-copy .picture-grid, body.native-app-shell #screen-ai-copy .material-results, body.native-app-shell #screen-ai-copy .material-ai { grid-template-columns: minmax(0, 1fr) !important; width: 100% !important; min-width: 0 !important; max-width: 100% !important; overflow-x: hidden !important; }
body.native-app-shell #screen-material-tool .emoji-grid, body.native-app-shell #screen-ai-copy .emoji-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; width: 100% !important; min-width: 0 !important; max-width: 100% !important; overflow-x: hidden !important; }
body.native-app-shell #screen-material-tool .copy-grid article, body.native-app-shell #screen-material-tool .picture-grid article, body.native-app-shell #screen-material-tool .material-results article, body.native-app-shell #screen-ai-copy .copy-grid article, body.native-app-shell #screen-ai-copy .picture-grid article, body.native-app-shell #screen-ai-copy .material-results article { width: 100% !important; min-width: 0 !important; max-width: 100% !important; padding: 7px; gap: 6px; }
body.native-app-shell #screen-material-tool .picture, body.native-app-shell #screen-material-tool .picture img, body.native-app-shell #screen-ai-copy .picture, body.native-app-shell #screen-ai-copy .picture img { width: 100% !important; min-width: 0 !important; max-width: 100% !important; height: auto; }
body.native-app-shell #screen-material-tool .picture-grid article > div, body.native-app-shell #screen-ai-copy .picture-grid article > div { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px; }
body.native-app-shell #screen-material-tool .picture-grid article > div button, body.native-app-shell #screen-ai-copy .picture-grid article > div button { width: 100%; height: 36px; padding: 5px 3px; font-size: 12px; white-space: nowrap; }
body.native-app-shell #screen-material-tool .section-head > div, body.native-app-shell #screen-ai-copy .section-head > div { align-items: flex-start; flex-direction: column; gap: 2px; }
body.native-app-shell #screen-material-tool .section-head input, body.native-app-shell #screen-ai-copy .section-head input { width: 100%; min-width: 0; height: 36px; padding: 6px 8px; }
body.native-app-shell #screen-material-tool .material-ai .wide, body.native-app-shell #screen-ai-copy .material-ai .wide { grid-column: auto; }
body.native-app-shell:has(#screen-material-tool.is-active) .mobile-main,
body.native-app-shell:has(#screen-ai-copy.is-active) .mobile-main { padding-left: 0 !important; padding-right: 0 !important; }
body.native-app-shell #screen-material-tool .store-material-center,
body.native-app-shell #screen-ai-copy .store-material-center { padding: 0 !important; gap: 1px !important; background: #0c171d; }

/* 批TGW-DEV318：店主助手内部左侧工具栏按键约为全局“店主助手”入口的九成高度，避免工具栏过高挤占工作区。 */
@media (min-width: 601px) {
  /* 批TGWDEV489：九项店主助手列表共用固定左列，功能内容独立滚动，联盟合买也保留切换入口。 */
  #view-materials.store-material-center { min-height: 0; grid-template-rows: minmax(0, 1fr); overflow: hidden; }
  #view-materials .store-assistant-workspace { height: 100%; min-height: 0; align-items: start; }
  #view-materials .store-assistant-category-rail { position: relative; top: 0; max-height: 100%; }
  #view-materials .store-assistant-category-rail button { width: 100%; justify-self: stretch; }
  #view-materials .store-assistant-category-content { height: 100%; min-height: 0; overflow: auto; align-content: start; }
  /* BUG-20261018-TGWAPP-006：营销页按内容增高，不能被 grid 缩小后 hidden 裁掉底部；滚动由内容列承接。 */
  #view-materials .store-assistant-embedded-section[data-section="marketing"] { overflow: visible; }
  /* 批TGWAPPDEV094：仅专业营销双列布局占满可用高度，不再让 iframe 撑出外层滚动条。 */
  #view-materials.store-assistant-marketing-fixed[data-active-assistant-category="marketing"] .store-assistant-category-content { overflow:hidden; grid-template-rows:minmax(0,1fr); align-content:stretch; }
  #view-materials.store-assistant-marketing-fixed[data-active-assistant-category="marketing"] [data-section="marketing"],
  #view-materials.store-assistant-marketing-fixed[data-active-assistant-category="marketing"] [data-assistant-host="marketing"] { height:100%; min-height:0; overflow:hidden; }
  #view-materials.store-assistant-marketing-fixed[data-active-assistant-category="marketing"] iframe[data-marketing-studio-frame] { height:100% !important; min-height:0; }
  /* 批TGWDEV669：嵌入拼图使用内容区实际高度。旧vh/680px使隐藏外层在画布获焦时滚动并裁掉顶栏。 */
  #view-materials .store-assistant-embedded-editor,
  #view-materials .store-assistant-embedded-editor > .store-assistant-embedded-host { height: 100%; min-height: 0; }
  #view-materials .store-assistant-embedded-editor .ticket-collage-dialog.is-store-assistant-embedded { height: 100%; min-height: 0; }
  /* 彩店管理旧高度只扣顶栏，未扣全局导航；嵌入后沿用店主助手的实际可用高度。 */
  #view-materials.store-material-center:has(.store-assistant-embedded-section[data-section="stores"]:not([hidden]) .store-assistant-embedded-panel) { height: 100% !important; max-height: 100% !important; }
  .store-assistant-category-rail button {
    height: 40px;
    min-height: 40px;
    padding: 6px 8px;
    line-height: 1.15;
  }
}

/* 模式切换仅属于手机版 App；电脑版保持原有合买结构。 */
.alliance-mobile-mode-tabs { display: none; }
/* App 联盟合买专用布局：先显示联盟店/本店合买切换，再显示唯一一组彩种横向滑动栏。
   仅限定 native-app-shell，不改变电脑版合买界面。 */
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-screenshot-header,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-screenshot-header { display: block; width: 100%; min-width: 0; border: 0; border-radius: 0; background: #10262d; color: #eef8f9; overflow: hidden; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-lottery-tabs,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-lottery-tabs { display: flex; align-items: stretch; gap: 4px; width: 100%; min-height: 45px; padding: 5px 6px; box-sizing: border-box; overflow-x: auto; overflow-y: hidden; scrollbar-width: thin; background: linear-gradient(90deg, #173b43, #102a31); border-bottom: 1px solid #3c626b; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-lottery-tabs button,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-lottery-tabs button { display: flex; flex: 0 0 auto; align-items: center; justify-content: center; width: auto; min-width: 88px; height: 35px; min-height: 35px; padding: 5px 12px; border: 1px solid #587984; border-radius: 8px; background: linear-gradient(#27434c, #1b333b); color: #f5fbfc; font-size: 14px; font-weight: 800; white-space: nowrap; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-lottery-tabs button.is-active,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-lottery-tabs button.is-active { border-color: #ffd76a; background: linear-gradient(#c38121, #915a0d); color: #fff7dd; box-shadow: inset 0 -3px 0 #ffe5a0; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-lottery-tabs [data-alliance-lottery-side="own"],
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-lottery-tabs [data-alliance-lottery-side="own"] { display: none !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-mobile-mode-tabs,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-mobile-mode-tabs { display: flex; align-items: stretch; gap: 6px; width: 100%; min-height: 45px; padding: 5px 6px; box-sizing: border-box; background: #0c1b21; border-bottom: 1px solid #34505a; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-mobile-mode-tabs button,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-mobile-mode-tabs button { flex: 1 1 0; min-width: 0; height: 35px; min-height: 35px; padding: 5px 8px; border: 1px solid #587984; border-radius: 8px; background: linear-gradient(#27434c, #1b333b); color: #d7e6e8; font-size: 15px; font-weight: 900; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-mobile-mode-tabs button.is-active,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-mobile-mode-tabs button.is-active { border-color: #ffd76a; background: linear-gradient(#c38121, #915a0d); color: #fff7dd; box-shadow: inset 0 -3px 0 #ffe5a0; }
body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="alliance"] .store-alliance-buy-own,
body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="alliance"] .store-alliance-buy-shareholders,
body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="alliance"] .store-alliance-buy-alliance-detail,
body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="own"] .store-alliance-buy-public,
body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="own"] .store-alliance-buy-alliance-detail,
body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="alliance-detail"] .store-alliance-buy-public,
body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="alliance-detail"] .store-alliance-buy-own,
body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="alliance-detail"] .store-alliance-buy-shareholders,
body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="alliance"] .store-alliance-buy-own,
body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="alliance"] .store-alliance-buy-shareholders,
body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="alliance"] .store-alliance-buy-alliance-detail,
body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="own"] .store-alliance-buy-public,
body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="own"] .store-alliance-buy-alliance-detail,
body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="alliance-detail"] .store-alliance-buy-public,
body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="alliance-detail"] .store-alliance-buy-own,
body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="alliance-detail"] .store-alliance-buy-shareholders { display: none !important; }
/* App 点击合买卡片后进入当前项目整屏登记视图，隐藏操作提示并让卡片与登记表铺满宽度。 */
body.native-app-shell #screen-material-tool .store-alliance-buy.alliance-project-focused .alliance-screenshot-master,
body.native-app-shell #screen-ai-copy .store-alliance-buy.alliance-project-focused .alliance-screenshot-master { grid-template-columns: minmax(0, 1fr); }
body.native-app-shell #screen-material-tool .store-alliance-buy.alliance-project-focused .alliance-buy-project-list-hint,
body.native-app-shell #screen-ai-copy .store-alliance-buy.alliance-project-focused .alliance-buy-project-list-hint { display: none !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy.alliance-project-focused .alliance-buy-project-list-body .alliance-buy-project-item:not(.is-active),
body.native-app-shell #screen-ai-copy .store-alliance-buy.alliance-project-focused .alliance-buy-project-list-body .alliance-buy-project-item:not(.is-active) { display: none !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy.alliance-project-focused .alliance-buy-project-list,
body.native-app-shell #screen-ai-copy .store-alliance-buy.alliance-project-focused .alliance-buy-project-list,
body.native-app-shell #screen-material-tool .store-alliance-buy.alliance-project-focused .alliance-master-table-shell,
body.native-app-shell #screen-ai-copy .store-alliance-buy.alliance-project-focused .alliance-master-table-shell { width: 100%; }
/* App 端只保留顶部唯一一组彩种导航；主表中的公开/本店重复按钮仅用于桌面端。 */
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-lottery-buttons[data-alliance-master-public],
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-lottery-buttons[data-alliance-master-own],
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-lottery-buttons[data-alliance-master-public],
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-lottery-buttons[data-alliance-master-own] { display: none !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-ticket-band,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-ticket-band { padding: 7px 8px; font-size: 12px; line-height: 1.4; }
/* 手机App店主助手/AI文案:内容不足一屏时深色背景仍填满可视区,避免下方露出近白页面底色(58顶栏+64底部导航+12*2滚动区内边距) */
body.native-app-shell #screen-material-tool .store-material-center,
body.native-app-shell #screen-ai-copy .store-material-center { min-height: calc(100vh - 146px); min-height: calc(100dvh - 146px); }
body.native-app-shell #screen-material-tool .store-assistant-head,
body.native-app-shell #screen-ai-copy .store-assistant-head,
body.native-app-shell #screen-material-tool .store-material-center > section,
body.native-app-shell #screen-ai-copy .store-material-center > section,
body.native-app-shell #screen-material-tool .store-assistant-category-content > section,
body.native-app-shell #screen-ai-copy .store-assistant-category-content > section,
body.native-app-shell #screen-material-tool .copy-grid article,
body.native-app-shell #screen-ai-copy .copy-grid article,
body.native-app-shell #screen-material-tool .picture-grid article,
body.native-app-shell #screen-ai-copy .picture-grid article,
body.native-app-shell #screen-material-tool .material-results article,
body.native-app-shell #screen-ai-copy .material-results article,
body.native-app-shell #screen-material-tool .emoji-grid article,
body.native-app-shell #screen-ai-copy .emoji-grid article { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
body.native-app-shell #screen-material-tool .store-material-center > section,
body.native-app-shell #screen-ai-copy .store-material-center > section,
body.native-app-shell #screen-material-tool .store-assistant-category-content > section,
body.native-app-shell #screen-ai-copy .store-assistant-category-content > section { border-top: 1px solid #263d45 !important; }
body.native-app-shell #screen-material-tool .copy-grid article,
body.native-app-shell #screen-ai-copy .copy-grid article,
body.native-app-shell #screen-material-tool .picture-grid article,
body.native-app-shell #screen-ai-copy .picture-grid article,
body.native-app-shell #screen-material-tool .material-results article,
body.native-app-shell #screen-ai-copy .material-results article,
body.native-app-shell #screen-material-tool .emoji-grid article,
body.native-app-shell #screen-ai-copy .emoji-grid article { border-bottom: 1px solid #263d45 !important; }
.store-assistant-embedded-host iframe{width:100%;min-height:760px;border:0;border-radius:10px;background:#fff}
.store-assistant-embedded-host iframe{height:calc(100vh - 120px);min-height:620px;overflow:hidden;display:block}
@media (min-width: 901px) {
  /* 联盟合买截图式布局：顶部彩种带 + 出票信息带 + 中央合买彩票凭证区。 */
  .store-alliance-buy .alliance-screenshot-header { grid-column: 1 / -1; min-width: 0; border: 1px solid #263d45; border-radius: 8px; overflow: hidden; background: #f2f2f2; color: #111; }
  .store-alliance-buy .alliance-lottery-tabs { display: grid; grid-template-columns: repeat(16, minmax(0, 1fr)); min-height: 38px; background: #35bdb8; border-bottom: 1px solid #263d45; }
  .store-alliance-buy .alliance-lottery-tabs button { display: flex; align-items: center; justify-content: center; min-width: 0; padding: 5px 4px; border: 0; border-right: 1px solid rgba(0,0,0,.45); border-radius: 0; background: #35bdb8; color: #062f31; font-size: 13px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: pointer; }
  .store-alliance-buy .alliance-lottery-tabs button:hover { background: #65d5ce; }
  .store-alliance-buy .alliance-lottery-tabs button.is-active { background: #0e827f; color: #fff; box-shadow: inset 0 -3px 0 #ffd76a; }
  /* 截图中的最终统计表不显示彩种统计行和分区标题，彩种筛选不占用表格高度。 */
  .store-alliance-buy .alliance-lottery-tabs { display: grid; }
  .store-alliance-buy-public > h3,
  .store-alliance-buy-own > h3,
  .store-alliance-buy-shareholders > h3 { display: none; }
  .store-alliance-buy.alliance-screenshot-mode > .alliance-screenshot-header,
  .store-alliance-buy.alliance-screenshot-mode > .alliance-ticket-upload,
  .store-alliance-buy.alliance-screenshot-mode > .store-alliance-buy-form { display: none; }
  .store-alliance-buy.alliance-screenshot-mode > .alliance-screenshot-master { grid-column: 1 / -1; }
  .store-alliance-buy.alliance-screenshot-mode > .section-head,
  .store-alliance-buy.alliance-screenshot-mode > .store-alliance-buy-help { display: none; }
  /* 截图布局：左侧固定合买项目列表，右侧为当前选中项目的登记表。
     两块同屏显示，表格可压缩但不产生横向滚动。 */
  .alliance-screenshot-master { display: grid; grid-template-columns: minmax(145px, 12%) minmax(0, 1fr); gap: 6px; width: 100%; min-width: 0; box-sizing: border-box; overflow: hidden; }
  .alliance-history-toolbar { position: sticky; top: 0; z-index: 4; display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 34px; padding: 3px 6px; box-sizing: border-box; background: #d8efed; border: 1px solid #2a7776; border-radius: 5px; color: #164b4a; white-space: nowrap; overflow: hidden; }
  .alliance-history-toolbar button { flex: 0 0 auto; min-height: 28px; padding: 3px 12px; border: 1px solid #1d6f8f; border-radius: 4px; background: #1d6f8f; color: #fff; font-size: 13px; font-weight: 800; cursor: pointer; white-space: nowrap; }
  .alliance-history-toolbar button:hover { background: #155872; }
  .alliance-buy-project-list { min-width: 0; border: 1px solid #263d45; border-radius: 6px; background: #e8f3f1; color: #123b3a; overflow: hidden; }
  .alliance-buy-project-list-title { padding: 7px 6px 3px; background: #39bdb8; color: #073b3a; font-size: 15px; line-height: 1.15; font-weight: 900; text-align: center; }
  .alliance-buy-project-list-hint { padding: 3px 6px 6px; background: #bcebe7; color: #225a58; font-size: 11px; line-height: 1.3; text-align: center; white-space: normal; }
  .alliance-buy-project-list-body { display: flex; flex-direction: column; gap: 4px; padding: 5px; max-height: none; overflow-y: visible; overflow-x: visible; }
  .alliance-buy-project-item { display: flex; flex-direction: column; align-items: stretch; gap: 3px; width: 100%; min-width: 0; padding: 8px 7px; border: 1px solid #579694; border-radius: 5px; background: #f4fffe; color: #123b3a !important; text-align: left; cursor: pointer; text-shadow: none; }
  .alliance-buy-project-item .project-current-meta { display: block; margin: 1px -2px 0; padding: 2px 4px; border-radius: 3px; background: rgba(12, 92, 90, .14); color: inherit !important; font-size: 12px; line-height: 1.2; font-weight: 900; opacity: .95; }
  .alliance-buy-project-item .project-current-round { display: block; font-size: 11px; line-height: 1.2; font-weight: 800; opacity: .82; }
  .alliance-buy-project-item:hover { background: #d0f4f0; color: #082b2a !important; }
  .alliance-buy-project-item.is-active { border: 2px solid #e59a00; background: #ffd45a; color: #241800 !important; box-shadow: inset 0 0 0 1px #fff1a8, 0 1px 2px rgba(0,0,0,.24); }
  /* 当前门店已有股份时用红色醒目标记；卖完但尚未结算则使用最淡灰色并停止点击参与。 */
  .alliance-buy-project-item.is-participating,
  .alliance-buy-project-item.is-participating.is-active { border-color: #b71818; background: #e53935; color: #fff !important; box-shadow: inset 0 0 0 1px #ffb3b0, 0 1px 2px rgba(0,0,0,.28); }
  .alliance-buy-project-item.is-participating:hover { background: #c62828; color: #fff !important; }
  /* 每个发起店主的合买卡片使用稳定的颜色编号；选中状态仍由金黄色高亮，
     售罄状态仍由灰色表达，避免不同店主的项目被误认为同一张合买单。 */
  .alliance-buy-project-item.is-project-color-0:not(.is-active):not(.is-sold-out) { border-color: #9b3b2f; background: #f2b29a; color: #4b1d16 !important; }
  .alliance-buy-project-item.is-project-color-1:not(.is-active):not(.is-sold-out) { border-color: #23639c; background: #a9d6f5; color: #123452 !important; }
  .alliance-buy-project-item.is-project-color-2:not(.is-active):not(.is-sold-out) { border-color: #176b68; background: #9ddbd4; color: #103f3d !important; }
  .alliance-buy-project-item.is-project-color-3:not(.is-active):not(.is-sold-out) { border-color: #7950a3; background: #d6b9ed; color: #321b49 !important; }
  .alliance-buy-project-item.is-project-color-0:not(.is-active):not(.is-sold-out):hover { background: #e99c81; }
  .alliance-buy-project-item.is-project-color-1:not(.is-active):not(.is-sold-out):hover { background: #8fc5eb; }
  .alliance-buy-project-item.is-project-color-2:not(.is-active):not(.is-sold-out):hover { background: #7ccbc2; }
  .alliance-buy-project-item.is-project-color-3:not(.is-active):not(.is-sold-out):hover { background: #c49add; }
  .alliance-buy-project-item.is-sold-out,
  .alliance-buy-project-item.is-sold-out:hover { border-color: #d7d7d7; background: #f3f3f3; color: #a4a4a4 !important; box-shadow: none; }
  .alliance-buy-project-item.is-own-store { border-color: #aeb8ba; background: #e5e9e9; color: #687276 !important; box-shadow: inset 0 0 0 1px #f8faf9, 0 1px 2px rgba(0,0,0,.16); }
  .alliance-buy-project-item.is-own-store.is-active { border-color: #dc9a00; background: #ffd45a; color: #241800 !important; box-shadow: inset 0 0 0 1px #fff1a8, 0 2px 3px rgba(0,0,0,.25); }
  .alliance-buy-project-item.is-own-store:hover { border-color: #7a9998; background: #cbdedd; color: #173f3d !important; }
  /* 未点亮项目仍必须清楚显示店号、出票、已售和剩余信息；灰色只表示状态，不降低可读性。 */
  .alliance-buy-project-item.is-sold-out:not(.is-participating),
  .alliance-buy-project-item.is-own-store:not(.is-active) { border-color: #91a6a8 !important; background: #53666b !important; color: #f4fbfb !important; opacity: 1 !important; text-shadow: 0 1px 0 #26383b; box-shadow: inset 0 0 0 1px rgba(255,255,255,.16), 0 1px 2px rgba(0,0,0,.24); }
  .alliance-buy-project-item.is-sold-out:not(.is-participating):hover,
  .alliance-buy-project-item.is-own-store:not(.is-active):hover { border-color: #b8cdce !important; background: #647a7e !important; color: #fff !important; }
  .alliance-buy-project-item strong { display: block; overflow: visible; text-overflow: clip; white-space: normal; overflow-wrap: anywhere; word-break: break-word; color: inherit !important; font-size: 14px; line-height: 1.25; font-weight: 900; }
  .alliance-buy-project-item span, .alliance-buy-project-item small { display: block; overflow: visible; text-overflow: clip; white-space: normal; overflow-wrap: anywhere; word-break: break-word; color: inherit !important; font-size: 12px; line-height: 1.3; font-weight: 800; }
  .alliance-buy-project-item .project-remaining { margin: 1px -2px; padding: 2px 4px; border-radius: 3px; background: rgba(255, 242, 165, .72); color: #5b2b00 !important; font-weight: 900; }
  .alliance-buy-project-item .project-own-settlement { margin: 1px -2px; padding: 2px 4px; border-radius: 3px; background: rgba(191, 238, 210, .9); color: #145c2a !important; font-weight: 900; }
  .alliance-buy-project-item .project-history-link { margin-top: 2px; padding: 2px 4px; border: 1px solid currentColor; border-radius: 3px; text-align: center; cursor: pointer; }
  .alliance-buy-project-item .project-history-link:hover { background: rgba(255,255,255,.35); }
  .alliance-master-table-shell { min-width: 0; width: 100%; overflow: hidden; }
  /* 表底色必须是深色:彩种行与信息行之间有一段三层(行组/行/单元格)背景都不画、只露表格底色的缝
     (Chromium 塌陷边框绘制怪癖),白底时会像一条突兀白横条(2026-09-02 用户报)。
     设计意图是两行"隔开一点点距离"→ 表底改深色 #0d1117 让缝成为有意分隔条;数据行单元格下方显式补白底。 */
  .alliance-master-table { width: 100%; table-layout: fixed; border-collapse: collapse; background: #0d1117; color: #222; border: 1px solid #222; }
  .alliance-master-table tbody td { background: #fff; }
  .alliance-master-table th, .alliance-master-table td { height: 22px; padding: 2px 5px; border: 1px solid #333; text-align: center; vertical-align: middle; font-size: 13px; line-height: 1.2; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .alliance-master-table .alliance-col-1, .alliance-master-table .alliance-col-9 { width: 5.2%; }
  .alliance-master-table .alliance-col-2, .alliance-master-table .alliance-col-10 { width: 6.2%; }
  .alliance-master-table .alliance-col-3, .alliance-master-table .alliance-col-11 { width: 5.2%; }
  .alliance-master-table .alliance-col-4, .alliance-master-table .alliance-col-12 { width: 5.4%; }
  .alliance-master-table .alliance-col-5, .alliance-master-table .alliance-col-13 { width: 5.5%; }
  .alliance-master-table .alliance-col-6, .alliance-master-table .alliance-col-14 { width: 5.4%; }
  .alliance-master-table .alliance-col-7, .alliance-master-table .alliance-col-15 { width: 5.4%; }
  .alliance-master-table .alliance-col-8, .alliance-master-table .alliance-col-16 { width: 5.4%; }
  .alliance-master-table .alliance-col-17, .alliance-master-table .alliance-col-18, .alliance-master-table .alliance-col-19 { width: 5.3%; }
  .alliance-master-table thead .alliance-master-lottery-row th { height: 38px; padding: 0; background: #39bdb8; }
  .alliance-master-lottery-buttons { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 31px; min-height: 62px; height: 100%; }
  .alliance-master-lottery-buttons button { border: 0; border-right: 1px solid #333; border-radius: 0; background: #39bdb8; color: #073b3a; font-size: 12px; line-height: 1.1; font-weight: 800; cursor: pointer; white-space: normal; overflow: visible; text-overflow: clip; word-break: keep-all; letter-spacing: -.55px; padding: 2px 1px; }
  .alliance-master-lottery-buttons button:hover { background: #15928e; color: #fff; }
  .alliance-master-lottery-buttons button.is-active { background: #0b6866; color: #fff; box-shadow: inset 0 -4px 0 #ffd21f, inset 0 0 0 2px #ffe56a; text-shadow: 0 1px 0 #004443; }
  .alliance-master-lottery-buttons button,
  .alliance-master-table .alliance-copy-register button,
  .alliance-master-table .alliance-owner-register-cell button { border-bottom: 3px solid rgba(0,0,0,.28); box-shadow: 0 2px 0 rgba(0,0,0,.24); transform: translateY(-1px); transition: transform .12s ease, box-shadow .12s ease, background-color .12s ease; }
  .alliance-master-lottery-buttons button:hover,
  .alliance-master-table .alliance-copy-register button:hover,
  .alliance-master-table .alliance-owner-register-cell button:hover { transform: translateY(-2px); box-shadow: 0 4px 0 rgba(0,0,0,.22); }
  .alliance-master-lottery-buttons button:active,
  .alliance-master-table .alliance-copy-register button:active,
  .alliance-master-table .alliance-owner-register-cell button:active { transform: translateY(1px); box-shadow: 0 0 0 rgba(0,0,0,0); }
  .alliance-master-table .alliance-master-info-row th { background: #f1bd93; color: #3c180f; font-weight: 800; }
  .alliance-master-table .alliance-master-info-row td { background: #f6c49d; color: #1b1715; font-weight: 800; }
  .alliance-master-table .alliance-master-info-row input { width: 100%; min-width: 0; box-sizing: border-box; border: 1px solid #c6c2a8; border-radius: 3px; padding: 3px 4px; background: #fffef1; color: #1c1613; font-size: 13px; font-weight: 800; text-align: center; }
  .alliance-master-table .alliance-master-lock-cell { padding: 0; background: #f6c49d; }
  .alliance-master-table .alliance-master-lock-cell button { width: 100%; height: 100%; border: 0; border-radius: 0; background: #fa0509; color: #fff; font-size: 15px; font-weight: 900; cursor: pointer; }
  .alliance-master-table .alliance-master-lock-cell button.is-locked { background: #7b1114; color: #ffd86a; }
  .alliance-master-table .alliance-master-column-header th { height: 34px; background: #fa0509; color: #ffe896; font-weight: 900; }
  .alliance-master-table .alliance-final-pay-cell { font-weight: 900; }
  .alliance-master-table .alliance-final-pay-cell.has-final-pay { background: #d9f1df !important; color: #176b36; }
  .alliance-master-table .alliance-final-pay-cell.no-final-pay { background: #fff0d6 !important; color: #8b5a12; }
  .alliance-master-table .alliance-owner-register-cell { padding: 0; background: #f3a21b !important; }
  .alliance-master-table .alliance-owner-register-cell button { width: 100%; height: 100%; border: 0; border-radius: 0; background: #1d6f8f; color: #fff6b0; font-size: 13px; font-weight: 900; cursor: pointer; transition: background-color .12s ease, color .12s ease, box-shadow .12s ease; }
  .alliance-master-table .alliance-owner-register-cell button:hover,
  .alliance-master-table .alliance-owner-register-cell button.is-active { background: #ffd21f; color: #5a1d00; box-shadow: inset 0 0 0 2px #fff3a1; }
  .alliance-master-table .alliance-master-data-row td { height: 30px !important; box-sizing: border-box; background: #efefef; }
  .alliance-master-table .alliance-master-data-row .alliance-customer-link { display: inline-flex; align-items: center; justify-content: center; width: auto; min-width: 34px; height: 26px; min-height: 26px; box-sizing: border-box; padding: 2px 8px; border: 1px solid #587984; border-radius: 7px; background: linear-gradient(#27434c, #1b333b); color: #f5fbfc; line-height: 1; text-decoration: none; box-shadow: 0 2px 0 #071014; }
  .alliance-master-table .alliance-master-data-row .alliance-customer-link:hover { background: linear-gradient(#3a6470, #244a56); box-shadow: 0 3px 0 #071014; transform: translateY(-1px); }
  .alliance-master-table .alliance-remaining-cell { padding: 1px 3px; background: #e8f4d8; }
  .alliance-master-table .alliance-remaining-input { width: 100%; min-width: 0; box-sizing: border-box; border: 1px solid #8aa56a; border-radius: 3px; padding: 2px 3px; background: #f7ffe9; color: #244214; font: inherit; font-weight: 800; text-align: center; }
  .alliance-master-table .alliance-remaining-input:read-only { cursor: default; }
  .alliance-master-table .alliance-settled-button { display: inline-block; height: 22px; min-height: 0; border: 0; border-radius: 3px; padding: 1px 5px; background: #f20d12; color: #fff4a7; font-size: 11px; line-height: 1; font-weight: 900; vertical-align: middle; cursor: pointer; }
  .alliance-master-table .alliance-collect-button, .alliance-master-table .alliance-profit-share-button { display: inline-block; height: 22px; min-height: 0; border: 0; border-radius: 3px; padding: 1px 4px; background: #f20d12; color: #fff4a7; font-size: 11px; line-height: 1; font-weight: 900; vertical-align: middle; cursor: pointer; }
  .alliance-master-table .alliance-profit-cell { white-space: nowrap; overflow: visible; }
  .alliance-master-table .alliance-profit-share-button { margin-left: 2px; padding: 1px 3px; font-size: 10px; }
  .alliance-master-table .alliance-collect-button.is-collected { background: #278c54; color: #fff; }
  .alliance-master-table .alliance-master-data-row:nth-child(odd) td { background: #d9d9d9; }
  /* 联盟合买区使用浅色底，本店统计区保留更深的中性底，避免两区混淆。 */
  .alliance-master-table .alliance-master-data-row td:nth-child(-n+5) { background: #e8f3f1; }
  .alliance-master-table .alliance-master-data-row:nth-child(odd) td:nth-child(-n+5) { background: #dcebe8; }
  .alliance-master-table .alliance-master-data-row td:nth-child(n+6) { background: #f0f0f0; }
  .alliance-master-table .alliance-master-data-row:nth-child(odd) td:nth-child(n+6) { background: #dedede; }
  .alliance-master-table .alliance-master-data-row:hover td { background: #fff1b8 !important; }
  .alliance-master-lottery-buttons[data-alliance-master-public] button { background: #8ed8d4; color: #174f4d; }
  .alliance-master-lottery-buttons[data-alliance-master-public] button:hover { background: #6fc6c1; color: #123d3b; }
  .alliance-master-lottery-buttons[data-alliance-master-public] button.is-active { background: #4ba9a5; color: #fff; }
  .alliance-master-lottery-buttons[data-alliance-master-own] { grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 31px; min-height: 62px; }
  .alliance-master-lottery-buttons[data-alliance-master-own] button { white-space: normal; font-size: 11px; letter-spacing: -0.75px; }
  /* 彩种导航按截图保持两行并排：每格高度在原 31px 基础上增加约 20%，
     行/列使用独立间隙和边框，避免看起来像一整块色带。 */
  .alliance-master-table thead .alliance-master-lottery-row th { height: 74px; padding: 2px; background: #218f8d !important; }
  .alliance-master-lottery-buttons { grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: repeat(2, 37px); grid-auto-rows: 37px; gap: 3px; min-height: 74px; height: 74px; padding: 3px; box-sizing: border-box; background: #126b69; border: 2px solid #0a4948; border-radius: 4px; }
  .alliance-master-lottery-buttons button { min-width: 0; min-height: 37px; height: 37px; box-sizing: border-box; padding: 3px 2px; border: 1px solid #176f75 !important; border-radius: 4px !important; background: linear-gradient(#63d1cc, #2aa7a3) !important; color: #083b3a !important; font-size: 12px !important; line-height: 1.15; letter-spacing: 0 !important; white-space: normal; word-break: keep-all; overflow: visible; text-overflow: clip; box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 3px 0 rgba(0,0,0,.38) !important; transform: translateY(-1px); }
  .alliance-master-lottery-buttons button:hover { background: linear-gradient(#8ae3de, #40bbb6) !important; color: #042d2c !important; filter: brightness(1.08); transform: translateY(-2px); box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 4px 0 rgba(0,0,0,.36) !important; }
  .alliance-master-lottery-buttons button:active { transform: translateY(1px); box-shadow: inset 0 1px 0 rgba(255,255,255,.55), 0 0 0 rgba(0,0,0,0) !important; }
  .alliance-master-lottery-buttons .alliance-current-lottery-label { display: flex; align-items: center; justify-content: center; min-width: 0; min-height: 37px; height: 37px; box-sizing: border-box; padding: 3px 2px; border: 1px solid #176f75; border-radius: 4px; background: #d7f1ed; color: #174f4d; font-size: 12px; line-height: 1.15; font-weight: 900; white-space: normal; word-break: keep-all; }
  .alliance-master-lottery-buttons .alliance-current-lottery-placeholder { display: block; min-width: 0; min-height: 37px; height: 37px; }
  .alliance-master-lottery-buttons .alliance-master-rate-inline.is-in-public-nav { grid-column: 4; grid-row: 1 / span 2; min-width: 0; min-height: 68px; height: 68px; padding: 4px 3px; box-sizing: border-box; border: 1px solid #176f75; border-radius: 4px; background: #d7f1ed; }
  .alliance-master-lottery-buttons .alliance-master-rate-inline.is-in-public-nav { display: grid; grid-template-columns: auto minmax(0, 1fr); grid-template-rows: 1fr 1fr; align-items: center; gap: 3px; }
  .alliance-master-lottery-buttons .alliance-master-rate-inline.is-in-public-nav > span { display: block; min-width: 0; font-size: 10px; text-align: left; }
  .alliance-master-lottery-buttons .alliance-master-rate-inline.is-in-public-nav > input { width: 100%; }
  .alliance-master-lottery-buttons .alliance-master-rate-inline.is-in-public-nav > button { grid-column: 1 / -1; grid-row: 2; width: 100%; min-height: 31px; height: 31px; box-sizing: border-box; padding: 3px 2px; border: 1px solid #a82929 !important; border-radius: 4px !important; background: linear-gradient(#ff7777, #d72b36) !important; color: #fff7d0 !important; font-size: 12px !important; line-height: 1.15; font-weight: 900; box-shadow: inset 0 1px 0 rgba(255,255,255,.62), 0 3px 0 rgba(0,0,0,.38) !important; transform: translateY(-1px); }
  .alliance-master-lottery-buttons .alliance-master-rate-inline.is-in-public-nav > button:hover { background: linear-gradient(#ff9999, #e23d49) !important; filter: brightness(1.06); transform: translateY(-2px); box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 4px 0 rgba(0,0,0,.34) !important; }
  .alliance-master-lottery-buttons .alliance-master-rate-inline.is-in-public-nav > button:active { transform: translateY(1px); box-shadow: inset 0 1px 0 rgba(255,255,255,.45), 0 0 0 rgba(0,0,0,0) !important; }
  .alliance-master-lottery-buttons .alliance-master-rate-inline.is-in-public-nav > button.is-locked { background: linear-gradient(#8f4b50, #682328) !important; border-color: #6a252a !important; color: #ffe082 !important; }
  .alliance-master-lottery-buttons button.is-active { background: linear-gradient(#ffe36a, #f4ae14) !important; color: #4b2100 !important; border-color: #fff0a2 !important; box-shadow: inset 0 -5px 0 #e17c00, inset 0 0 0 2px #fff5ad, 0 3px 0 rgba(0,0,0,.45) !important; text-shadow: 0 1px 0 #fff3ad; transform: translateY(-2px); }
  .alliance-master-lottery-buttons[data-alliance-master-public] { background: #0c7774; }
  .alliance-master-lottery-buttons[data-alliance-master-own] { background: #147f7c; }
  .alliance-master-lottery-buttons[data-alliance-master-public] button.is-active,
  .alliance-master-lottery-buttons[data-alliance-master-own] button.is-active { background: linear-gradient(#ffe36a, #f4ae14) !important; color: #4b2100 !important; }
  .alliance-master-table .alliance-master-upload { height: 150px; background: #fff !important; color: #69747a; font-size: 16px; font-weight: 800; }
  .alliance-master-table .alliance-master-upload label { display: flex; align-items: center; justify-content: center; gap: 6px; cursor: pointer; }
  .alliance-master-table .alliance-master-upload input[type=file] { width: 1px; height: 1px; opacity: 0; position: absolute; }
  .alliance-master-table .alliance-master-upload img { display: block; max-width: 92%; max-height: 110px; margin: 7px auto 0; object-fit: contain; }
  .alliance-master-table .alliance-master-own-upload { min-height: 150px; background: #fff !important; color: #69747a; font-size: 13px; font-weight: 800; }
  .alliance-master-table .alliance-master-own-upload label { display: flex; align-items: center; justify-content: center; cursor: pointer; }
  .alliance-master-table .alliance-master-own-upload input[type=file] { width: 1px; height: 1px; opacity: 0; position: absolute; }
  .alliance-master-table .alliance-master-own-upload img { display: block; max-width: 92%; max-height: 110px; margin: 7px auto 0; object-fit: contain; }
  .alliance-master-table .alliance-master-upload-top { height: 94px; padding: 4px 6px; background: #39bdb8 !important; color: #073b3a; text-align: center; vertical-align: middle; cursor: pointer; }
  .alliance-master-upload-split { display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, 1.35fr); gap: 6px; width: 100%; height: 100%; align-items: stretch; }
  .alliance-master-upload-split.is-upload-expanded { grid-template-columns: minmax(0, 1fr); }
  .alliance-master-rate-inline, .alliance-master-upload-inline { display: flex; flex-direction: column; align-items: stretch; justify-content: center; gap: 3px; min-width: 0; }
  .alliance-master-rate-inline > span { display: block; color: #073b3a; font-size: 12px; font-weight: 900; line-height: 1.1; white-space: nowrap; }
  .alliance-master-rate-inline > input { width: 100%; min-width: 0; box-sizing: border-box; border: 1px solid #8b6a55; border-radius: 3px; padding: 3px 4px; background: #fff5eb; color: #1c1613; font-size: 13px; font-weight: 800; text-align: center; }
  .alliance-master-rate-inline > button { width: 60%; min-width: 0; align-self: center; height: 22px; min-height: 22px; padding: 1px 4px; border: 0; border-radius: 3px; background: #fa0509; color: #fff; font-size: 12px; line-height: 1; font-weight: 900; cursor: pointer; box-shadow: 0 2px 0 rgba(0,0,0,.3); }
  .alliance-master-rate-inline > button:hover { filter: brightness(1.12); transform: translateY(-1px); box-shadow: 0 3px 0 rgba(0,0,0,.26); }
  .alliance-master-rate-inline > button.is-locked { background: #7b1114; color: #ffd86a; }
  .alliance-master-rate-inline > small[data-master-action-status] { min-height: 14px; color: #b9c7cb; font-size: 10px; line-height: 1.25; text-align: center; }
  .alliance-master-rate-inline > small[data-master-action-status].is-error { color: #ff7777; font-weight: 800; }
  .alliance-master-upload-inline label { display: flex; align-items: center; justify-content: center; gap: 3px; width: 100%; height: 36px; border: 1px dashed #0b6866; border-radius: 4px; background: #bcebe7; color: #073b3a; cursor: pointer; font-size: 13px; font-weight: 900; box-sizing: border-box; white-space: nowrap; }
  .alliance-master-upload-inline > button { display: block; width: 100%; min-height: 23px; margin: 2px 0 0; border: 0; border-radius: 4px; color: #fff; font-size: 11px; font-weight: 900; cursor: pointer; white-space: nowrap; box-shadow: 0 1px 2px rgba(0,0,0,.22); }
  .alliance-master-upload-inline > button[data-master-ticket-open] { background: #ff9800; color: #321600; }
  .alliance-master-upload-inline > button[data-master-ticket-open]:hover, .alliance-master-upload-inline > button[data-master-ticket-open]:focus-visible { background: #ffc107; outline: 2px solid #fff; outline-offset: 1px; }
  .alliance-master-upload-inline > button[data-alliance-delete-ticket] { background: #c62828; }
  .alliance-master-upload-inline > button[data-alliance-delete-ticket]:hover, .alliance-master-upload-inline > button[data-alliance-delete-ticket]:focus-visible { background: #a91f1f; outline: 2px solid #ffe082; outline-offset: 1px; }
  .alliance-master-upload-inline > button:disabled { background: #7b1114; color: #ffd86a; cursor: not-allowed; opacity: .9; }
  .alliance-master-upload-inline > label.is-locked { background: #d7dfe0; border-color: #718083; color: #586568; cursor: not-allowed; opacity: .85; }
  .alliance-master-upload-inline > img[data-master-ticket-preview] { display: block; width: 100%; height: 36px; min-height: 0; margin: 1px 0; border: 2px solid #ff2d00; border-radius: 4px; background: #ffe45c; object-fit: contain; cursor: pointer; box-shadow: 0 0 0 2px #fff, 0 0 8px rgba(255,45,0,.85); }
  .alliance-master-upload-inline > img[data-master-ticket-preview][hidden] { display: none; }
  .alliance-master-upload-top label { display: flex; align-items: center; justify-content: center; gap: 5px; width: 100%; height: 36px; border: 1px dashed #0b6866; border-radius: 4px; background: #bcebe7; color: #073b3a; cursor: pointer; font-size: 15px; font-weight: 900; box-sizing: border-box; }
  .alliance-master-upload-top input[type=file], .alliance-own-ticket-replace input[type=file] { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
  .alliance-master-upload-top > button, .alliance-master-upload .alliance-ticket-delete-button, .alliance-master-own-upload .alliance-ticket-delete-button { display: block; width: 100%; min-height: 22px; margin: 2px 0 0; border: 0; border-radius: 3px; background: #c62828; color: #fff; font-size: 11px; font-weight: 800; cursor: pointer; }
  .alliance-master-table .alliance-ticket-image-button { display: block; width: 100%; min-height: 96px; padding: 0; border: 0; background: transparent; cursor: zoom-in; }
  .alliance-master-table .alliance-ticket-image-button img { display: block; max-width: 92%; max-height: 110px; margin: 4px auto; object-fit: contain; }
  .alliance-master-table .alliance-ticket-empty { display: block; margin: 38px 0 8px; color: #7b858c; font-size: 13px; font-weight: 800; }
  .alliance-master-table .alliance-own-ticket-replace { display: block; margin: 3px 0; color: #1d6f8f; font-size: 11px; font-weight: 800; cursor: pointer; }
  .alliance-ticket-preview-dialog[open] { display: block !important; position: fixed !important; inset: 5% auto auto 50% !important; z-index: 2147483000 !important; transform: translateX(-50%) !important; width: min(92vw, 1100px) !important; max-width: 1100px !important; max-height: 90vh; margin: 0 !important; padding: 0 !important; border: 2px solid #1d6f8f; border-radius: 10px; background: #fff; box-shadow: 0 16px 60px #0009; overflow: auto; }
  .alliance-ticket-preview-shell { display: grid; gap: 6px; padding: 10px; min-width: 0; }
  .alliance-ticket-preview-shell header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; color: #1d6f8f; font-size: 16px; }
  .alliance-ticket-preview-tools { display: inline-flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 5px; }
  .alliance-ticket-preview-shell header button { width: auto; min-width: 72px; height: 32px; padding: 3px 10px; border: 1px solid #1d6f8f; border-radius: 6px; background: #e8f4f7; color: #1d6f8f; font-size: 14px; line-height: 1; font-weight: 900; cursor: pointer; white-space: nowrap; }
  .alliance-ticket-preview-shell header button:hover { background: #c8e6ec; }
  .alliance-ticket-preview-shell header button[data-alliance-ticket-preview-close] { min-width: 72px; height: 34px; border-radius: 6px; background: #1d6f8f; color: #fff; font-size: 14px; }
  .alliance-ticket-preview-viewport { width: 100%; max-width: 100%; height: min(78vh, 760px); min-height: 240px; overflow: auto; display: block; background: #f5f7f8; overscroll-behavior: contain; cursor: grab; }
  .alliance-ticket-preview-viewport.is-panning { cursor: grabbing; user-select: none; }
  .alliance-ticket-preview-stage { display: flex; justify-content: center; align-items: flex-start; width: max-content; min-width: 100%; min-height: 100%; margin: 0 auto; }
  .alliance-ticket-preview-shell img { display: block; max-width: none; max-height: none; width: auto; height: auto; margin: 0; object-fit: contain; transform-origin: top left; transition: width .15s ease, height .15s ease; }
  .alliance-master-table .alliance-copy-register { background: #39bdb8 !important; padding: 0; }
  .alliance-master-table .alliance-copy-register button { width: 50%; height: calc(100% - 4px); margin: 2px 0; border: 1px solid #176f75; border-radius: 5px; background: linear-gradient(#66d8d1, #2da9aa); color: #073b3a; font-size: 14px; font-weight: 900; cursor: pointer; box-shadow: 0 3px 0 rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.55); transform: translateY(-1px); transition: transform .12s ease, box-shadow .12s ease, filter .12s ease; }
  .alliance-master-table .alliance-copy-register button:hover { filter: brightness(1.12); transform: translateY(-2px); box-shadow: 0 5px 0 rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.65); }
  .alliance-master-table .alliance-copy-register button:active { transform: translateY(1px); box-shadow: 0 0 0 rgba(0,0,0,.2), inset 0 1px 0 rgba(0,0,0,.15); }
  /* 主表实际为12列；左侧联盟合买约占45%，右侧本店统计约占55%，两区仍铺满整行。 */
  .alliance-master-table .alliance-col-1 { width: 7.12%; }
  .alliance-master-table .alliance-col-2 { width: 8.49%; }
  .alliance-master-table .alliance-col-3 { width: 7.12%; }
  .alliance-master-table .alliance-col-4 { width: 7.40%; }
  .alliance-master-table .alliance-col-5 { width: 7.53%; }
  .alliance-master-table .alliance-col-6 { width: 7.40%; }
  .alliance-master-table .alliance-col-7 { width: 9.04%; }
  .alliance-master-table .alliance-col-8 { width: 9.04%; }
  .alliance-master-table .alliance-col-9 { width: 8.73%; }
  .alliance-master-table .alliance-col-10 { width: 10.38%; }
  .alliance-master-table .alliance-col-11 { width: 8.73%; }
  .alliance-master-table .alliance-col-12 { width: 9.02%; }
  /* 删除“应支付”和“奖金分红”后剩余十列重新均分，保持整行铺满屏幕。 */
  .alliance-master-table .alliance-col-1 { width: 10%; }
  .alliance-master-table .alliance-col-2 { width: 10%; }
  .alliance-master-table .alliance-col-3 { width: 10%; }
  .alliance-master-table .alliance-col-4 { width: 10%; }
  .alliance-master-table .alliance-col-5 { width: 10%; }
  .alliance-master-table .alliance-col-6 { width: 10%; }
  .alliance-master-table .alliance-col-7 { width: 10%; }
  .alliance-master-table .alliance-col-8 { width: 10%; }
  .alliance-master-table .alliance-col-9 { width: 10%; }
  .alliance-master-table .alliance-col-10 { width: 10%; }
  /* TGWDEV491: 11点锁定后仍完整可读；不能让标签把数值压成30px窄框。 */
  .alliance-master-lottery-buttons .alliance-master-rate-inline.is-in-public-nav { grid-template-columns: minmax(0, 1fr); grid-template-rows: 12px 24px 28px; height: 78px; min-height: 78px; gap: 2px; }
  .alliance-master-lottery-buttons .alliance-master-rate-inline.is-in-public-nav > span { grid-column: 1; grid-row: 1; white-space: nowrap; line-height: 1.1; text-align: center; }
  .alliance-master-lottery-buttons .alliance-master-rate-inline.is-in-public-nav > input { grid-column: 1; grid-row: 2; justify-self: center; width: 48px; min-width: 48px; height: 24px; padding: 2px; appearance: textfield; }
  .alliance-master-lottery-buttons .alliance-master-rate-inline.is-in-public-nav > button { grid-row: 3; height: 28px; min-height: 28px; }
  .alliance-master-rate-inline > input::-webkit-inner-spin-button, .alliance-master-rate-inline > input::-webkit-outer-spin-button { appearance: none; margin: 0; }
  .alliance-master-rate-inline > small:empty { display: none; }
  .alliance-master-table.alliance-split-settlements col { width: 9%; }
  .alliance-master-table.alliance-split-settlements .alliance-col-6 { width: 12%; }
  .alliance-master-table.alliance-split-settlements .alliance-col-7 { width: 7%; }
  .alliance-master-table.alliance-split-settlements .alliance-col-9 { width: 11%; }
  .alliance-master-table.alliance-split-settlements .alliance-col-11 { width: 7%; }
  .alliance-settlement-done { color: #147641; font-weight: 800; font-size: 11px; }
  .alliance-split-settlements .alliance-settled-button,
  .alliance-split-settlements .alliance-collect-button,
  .alliance-split-settlements .alliance-profit-share-button { font-size: 11px !important; padding: 4px 2px !important; height: auto !important; min-height: 32px; white-space: normal !important; line-height: 1.2 !important; text-overflow: clip !important; }
  .alliance-split-settlements input[data-master-control="ticketStore"] { font-size: 12px; padding-inline: 3px; }
  .alliance-split-settlements .alliance-master-data-row td:nth-child(6),
  .alliance-split-settlements .alliance-master-column-header th:nth-child(6) { border-left: 3px solid #208d93; }
  .alliance-master-table th, .alliance-master-table td { white-space: nowrap; overflow: hidden; text-overflow: clip; }
  .store-alliance-buy .alliance-ticket-band { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); min-height: 42px; background: #f3c39e; border-bottom: 1px solid #263d45; }
  .store-alliance-buy .alliance-ticket-band > span { display: flex; align-items: center; justify-content: center; min-width: 0; padding: 6px 5px; border-right: 1px solid rgba(0,0,0,.4); color: #5b1f12; font-size: 13px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .store-alliance-buy .alliance-ticket-band .ticket-label { color: #5b1f12; }
  .store-alliance-buy .alliance-ticket-band .ticket-value { color: #171717; }
  .store-alliance-buy .alliance-ticket-upload { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr minmax(260px, 2fr) 1fr; align-items: center; gap: 8px; min-height: 66px; margin: 0; padding: 10px 14px; border: 1px dashed #73818a; border-radius: 8px; background: #fff; color: #59636a; text-align: center; cursor: pointer; }
  .store-alliance-buy .alliance-ticket-upload > span { grid-column: 2; font-size: 16px; font-weight: 800; }
  .store-alliance-buy .alliance-ticket-upload small { grid-column: 2; color: #7b858c; font-size: 11px; font-weight: 500; }
  .store-alliance-buy .alliance-ticket-upload input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
  .store-alliance-buy { min-width: 0; max-width: 100%; overflow-x: hidden; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; }
  .store-alliance-buy > .section-head, .store-alliance-buy > .store-alliance-buy-help, .store-alliance-buy > .store-alliance-buy-form { grid-column: 1 / -1; }
  .store-alliance-buy-public, .store-alliance-buy-own, .store-alliance-buy-shareholders { min-width: 0; }
  .store-alliance-buy-form > .store-alliance-buy-public, .store-alliance-buy-form > .store-alliance-buy-own { grid-column: span 1; }
  .store-alliance-buy-form > .store-alliance-buy-shareholders { grid-column: 1 / -1; }
  .store-alliance-buy-shareholders { grid-column: 1 / -1; }
  .store-alliance-buy-help { margin: -3px 0 12px; color: #a9bec4; line-height: 1.55; }
  .store-alliance-buy-form { display: contents; }
  .store-alliance-buy-form fieldset { display: grid; gap: 8px 10px; min-width: 0; margin: 0 0 8px; padding: 0; border: 0; border-radius: 0; }
  .store-alliance-buy-public-fields { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .store-alliance-buy-own-fields { grid-template-columns: minmax(0, 1.35fr) repeat(4, minmax(0, 1fr)); }
  .store-alliance-buy-form fieldset legend { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 0; margin-bottom: 2px; color: #ffd777; font-weight: 800; }
  .store-alliance-buy-form .alliance-lock-toggle { display: inline-flex; align-items: center; gap: 5px; min-width: 0; padding: 4px 7px; border: 1px solid #82652a; border-radius: 7px; background: rgba(255, 215, 119, .1); color: #ffe39a; font-size: 11px; line-height: 1.2; white-space: nowrap; overflow: hidden; }
  .store-alliance-buy-form .alliance-lock-toggle input { width: auto; margin: 0; accent-color: #f0ad32; }
  .store-alliance-buy-form .alliance-open-entry { grid-column: span 1; align-self: center; justify-self: stretch; min-width: 128px; padding: 10px 22px; border: 1px solid #8d98a0; border-radius: 8px; background: #626b73; color: #fff; font-size: 15px; font-weight: 800; white-space: nowrap; cursor: pointer; }
  .store-alliance-buy-form .alliance-open-entry:hover { background: #77828a; }
  /* 登记窗口使用强制可见的内嵌面板，兼容桌面 Edge/WebView；点击登记按钮后不会因 dialog.showModal 不支持而无反应。 */
  .alliance-entry-dialog[open] { display: block !important; position: fixed !important; z-index: 100000 !important; inset: 10% auto auto 50% !important; transform: translateX(-50%) !important; width: min(92vw, 560px) !important; max-width: 560px !important; max-height: 80vh; margin: 0 !important; padding: 0 !important; border: 2px solid #1d6f8f; border-radius: 12px; background: #fff; color: #222; box-shadow: 0 16px 60px rgba(0,0,0,.38); overflow: auto; }
  .alliance-entry-dialog::backdrop { background: rgba(0,0,0,.42); }
  .alliance-entry-dialog form { display: grid; gap: 12px; padding: 22px; }
  .alliance-entry-dialog h3 { margin: 0 0 4px; color: #1d6f8f; font-size: 20px; }
  .alliance-entry-dialog label { display: grid; grid-template-columns: 110px 1fr; align-items: center; gap: 8px; font-weight: 700; }
  .alliance-entry-dialog input, .alliance-entry-dialog select { min-width: 0; box-sizing: border-box; padding: 8px 9px; border: 1px solid #aab4ba; border-radius: 6px; font-size: 15px; color: #222; background: #fff; }
  .alliance-entry-dialog form > div { display: flex; justify-content: flex-end; gap: 10px; margin-top: 4px; }
  .alliance-entry-dialog button { padding: 8px 18px; border: 1px solid #9aa4ab; border-radius: 6px; background: #eef2f4; color: #263238; font-weight: 800; cursor: pointer; }
  .alliance-entry-dialog button.primary { border-color: #1d6f8f; background: #1d6f8f; color: #fff; }
  .alliance-entry-dialog [data-entry-status].alliance-entry-status-error { display: block; margin: 0; padding: 10px 12px; border: 2px solid #e53935; border-radius: 7px; background: #fff0f0; color: #d20f0f !important; font-size: 16px; line-height: 1.35; font-weight: 900; text-align: left; }
  .alliance-customer-detail-dialog[open] { display: block !important; position: fixed !important; z-index: 100001 !important; inset: 6% auto auto 50% !important; transform: translateX(-50%) !important; width: min(96vw, 1120px) !important; max-width: 1120px !important; max-height: 86vh; margin: 0 !important; padding: 0 !important; border: 2px solid #1d6f8f; border-radius: 12px; background: #fff; color: #222; box-shadow: 0 16px 60px rgba(0,0,0,.4); overflow: auto; }
  .alliance-customer-detail-shell { padding: 18px 20px 22px; }
  .alliance-customer-detail-shell > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
  .alliance-customer-detail-shell h3 { margin: 0; color: #1d6f8f; font-size: 21px; }
  .alliance-customer-detail-shell [data-customer-detail-close] { border: 0; border-radius: 5px; padding: 5px 11px; background: #e9eef0; color: #27343a; font-size: 19px; cursor: pointer; }
  .alliance-customer-summary { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin-bottom: 12px; }
  .alliance-customer-summary span { padding: 10px 8px; border: 1px solid #cbd5d9; border-radius: 7px; background: #f0f4f5; text-align: center; font-size: 13px; font-weight: 700; }
  .alliance-customer-summary b { display: block; margin-top: 3px; color: #145b73; font-size: 17px; }
  .alliance-customer-summary .unpaid { background: #fff0e7; border-color: #e7b48f; }
  .alliance-customer-summary .unpaid b { color: #c24d16; }
  .alliance-customer-summary .profit { background: #eaf7ec; border-color: #aad0ad; }
  .alliance-customer-summary .profit b { color: #237437; }
  .alliance-customer-recent { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 6px; font-weight: 700; }
  .alliance-customer-recent input { width: 64px; padding: 5px; border: 1px solid #aab4ba; border-radius: 5px; text-align: center; }
  .alliance-customer-recent-summary { margin-bottom: 10px; color: #58666d; font-size: 13px; }
  .alliance-customer-history-wrap { overflow-x: hidden; overflow-y: auto; border: 1px solid #c8d1d5; }
  .alliance-customer-history-wrap table { width: 100%; min-width: 0; table-layout: fixed; border-collapse: collapse; }
  .alliance-customer-history-wrap th, .alliance-customer-history-wrap td { padding: 7px 8px; border: 1px solid #c8d1d5; text-align: center; white-space: normal; overflow-wrap: anywhere; word-break: break-word; font-size: 13px; }
  .alliance-customer-history-wrap tbody tr { height: 58px; }
  .alliance-customer-history-wrap tbody td { height: 58px; box-sizing: border-box; vertical-align: middle; }
  .alliance-customer-history-wrap th { background: #1d6f8f; color: #fff; }
  .alliance-customer-history-wrap tr:nth-child(even) td { background: #f2f5f6; }
  .alliance-customer-history-wrap td.unpaid { color: #c24d16; font-weight: 800; }
  .alliance-customer-history-wrap td.paid { color: #237437; font-weight: 800; }
  .alliance-customer-link { border: 0; padding: 2px 5px; border-radius: 4px; background: transparent; color: #145b73; font: inherit; font-weight: 800; text-decoration: underline; cursor: pointer; }
  .alliance-customer-link:hover { background: #d9eef5; }
  .alliance-customer-history-wrap [data-customer-adjust], .alliance-customer-history-wrap [data-customer-cancel] { margin: 2px; padding: 4px 7px; border: 1px solid #7d969f; border-radius: 4px; background: #eef4f5; color: #20424e; font-size: 12px; font-weight: 700; cursor: pointer; }
  .alliance-customer-history-wrap [data-customer-adjust]:hover { background: #d8edf5; }
  .alliance-customer-history-wrap [data-customer-cancel] { border-color: #d18a78; background: #fff0eb; color: #a43e26; }
  .alliance-customer-history-wrap [data-customer-cancel]:hover { background: #ffdcd2; }
  .alliance-customer-history-wrap .customer-adjust-cell,
  .alliance-customer-history-wrap .customer-cancel-cell { width: 10%; padding: 5px; }
  .alliance-customer-history-wrap .customer-adjust-cell button,
  .alliance-customer-history-wrap .customer-cancel-cell button { display: block; width: 100%; min-height: 34px; box-sizing: border-box; margin: 0; padding: 4px 3px; }
  .alliance-project-history-dialog[open] { display: block !important; position: fixed !important; z-index: 100002 !important; inset: 6% auto auto 50% !important; transform: translateX(-50%) !important; width: min(96vw, 1180px) !important; max-width: 1180px !important; max-height: 86vh; margin: 0 !important; padding: 0 !important; border: 2px solid #1d6f8f; border-radius: 12px; background: #fff; color: #222; box-shadow: 0 16px 60px rgba(0,0,0,.4); overflow: auto; }
  .alliance-project-history-dialog::backdrop { background: rgba(0,0,0,.42); }
  .alliance-launch-confirm-dialog[open] { display: block !important; position: fixed !important; z-index: 100004 !important; inset: 50% auto auto 50% !important; transform: translate(-50%, -50%) !important; width: min(92vw, 460px) !important; margin: 0 !important; padding: 0 !important; border: 2px solid #1d6f8f; border-radius: 14px; background: #fff; color: #20333a; box-shadow: 0 18px 70px rgba(0,0,0,.48); overflow: hidden; }
  .alliance-launch-confirm-dialog::backdrop { background: rgba(0,0,0,.48); }
  .alliance-mobile-register-prompt-dialog[open] { display: block !important; position: fixed !important; z-index: 100005 !important; inset: 50% auto auto 50% !important; transform: translate(-50%, -50%) !important; width: min(92vw, 440px) !important; margin: 0 !important; padding: 0 !important; border: 2px solid #1d6f8f; border-radius: 14px; background: #fff; color: #20333a; box-shadow: 0 18px 70px rgba(0,0,0,.48); overflow: hidden; }
  .alliance-mobile-register-prompt-dialog::backdrop { background: rgba(0,0,0,.48); }
  .alliance-mobile-register-prompt-card header { display: flex; align-items: center; justify-content: space-between; padding: 14px 18px; background: #1d6f8f; color: #fff; }
  .alliance-mobile-register-prompt-card header strong { font-size: 19px; }
  .alliance-mobile-register-prompt-card header button { border: 0; background: transparent; color: #fff; font-size: 26px; line-height: 1; cursor: pointer; }
  .alliance-mobile-register-prompt-card > p { min-height: 64px; margin: 18px 20px 12px; color: #49616a; font-size: 16px; line-height: 1.55; white-space: pre-line; }
  .alliance-mobile-register-prompt-card > div { display: flex; justify-content: flex-end; gap: 10px; padding: 12px 20px 18px; }
  .alliance-mobile-register-prompt-card > div button { min-width: 90px; padding: 9px 16px; border: 1px solid #abcbd4; border-radius: 6px; background: #eef6f8; color: #21434d; font-weight: 800; cursor: pointer; }
  .alliance-mobile-register-prompt-card > div button.primary { border-color: #1d6f8f; background: #1d6f8f; color: #fff; }
  .alliance-launch-confirm-card header { display: flex; align-items: center; justify-content: space-between; padding: 14px 18px; background: #1d6f8f; color: #fff; }
  .alliance-launch-confirm-card header strong { font-size: 19px; }
  .alliance-launch-confirm-card header button { border: 0; background: transparent; color: #fff; font-size: 26px; line-height: 1; cursor: pointer; }
  .alliance-launch-confirm-card > p { margin: 18px 20px 12px; color: #49616a; font-size: 14px; }
  .alliance-launch-confirm-card dl { margin: 0 20px 18px; border: 1px solid #c8dfe5; border-radius: 8px; overflow: hidden; }
  .alliance-launch-confirm-card dl div { display: flex; justify-content: space-between; gap: 18px; padding: 10px 12px; background: #f5fafb; border-bottom: 1px solid #dbe9ed; }
  .alliance-launch-confirm-card dl div:last-child { border-bottom: 0; }
  .alliance-launch-confirm-card dt { color: #49616a; font-weight: 700; }
  .alliance-launch-confirm-card dd { margin: 0; color: #142b34; font-weight: 800; text-align: right; }
  .alliance-launch-confirm-actions { display: flex; justify-content: flex-end; gap: 10px; padding: 12px 20px 18px; }
  .alliance-launch-confirm-actions button { min-width: 90px; padding: 9px 16px; border: 1px solid #abcbd4; border-radius: 6px; background: #eef6f8; color: #21434d; font-weight: 800; cursor: pointer; }
  .alliance-launch-confirm-actions button.primary { border-color: #1d6f8f; background: #1d6f8f; color: #fff; }
  .alliance-launch-confirm-actions button:hover { filter: brightness(.96); }
  .alliance-project-history-shell { padding: 18px; }
  .alliance-project-history-shell header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: -18px -18px 14px; padding: 12px 16px; background: #1d6f8f; color: #fff; }
  .alliance-project-history-shell h3 { margin: 0; font-size: 20px; }
  .alliance-project-history-shell header button { border: 0; background: transparent; color: #fff; font-size: 26px; cursor: pointer; }
  .alliance-global-history-filters { display: flex; flex-wrap: wrap; align-items: end; gap: 10px 12px; margin-bottom: 12px; padding: 10px 12px; background: #f7fbfc; border: 1px solid #c8dfe5; border-radius: 7px; }
  .alliance-global-history-filters label { display: inline-flex; flex-direction: column; gap: 4px; color: #34515b; font-size: 13px; font-weight: 700; }
  .alliance-global-history-filters input[type="date"], .alliance-global-history-filters input[type="search"] { min-width: 150px; height: 32px; padding: 4px 8px; border: 1px solid #aac8d0; border-radius: 5px; background: #fff; color: #21353b; font: inherit; font-weight: 500; }
  .alliance-global-history-filters input[type="search"] { min-width: 210px; }
  .alliance-global-history-own-filter { flex-direction: row !important; align-items: center; gap: 6px !important; height: 32px; padding: 0 4px; white-space: nowrap; }
  .alliance-global-history-own-filter input { width: 16px; height: 16px; margin: 0; accent-color: #1d6f8f; }
  .alliance-global-history-filters > button { height: 32px; padding: 4px 12px; border: 1px solid #1d6f8f; border-radius: 5px; background: #1d6f8f; color: #fff; font-weight: 700; cursor: pointer; }
  .alliance-global-history-filters > button:hover { background: #155872; }
  .alliance-project-history-summary { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-bottom: 14px; padding: 10px 12px; background: #eef6f8; border: 1px solid #c8dfe5; border-radius: 7px; font-size: 14px; }
  .alliance-project-history-summary .profit { color: #a43e26; }
  .alliance-project-history-wrap { overflow: auto; border: 1px solid #c8d1d5; }
  .alliance-project-history-wrap table { width: 100%; min-width: 800px; border-collapse: collapse; table-layout: fixed; }
  .alliance-project-history-wrap th, .alliance-project-history-wrap td { padding: 8px 7px; border: 1px solid #c8d1d5; text-align: center; font-size: 13px; white-space: nowrap; }
  .alliance-project-history-wrap th { background: #1d6f8f; color: #fff; }
  .alliance-project-history-wrap tbody tr:nth-child(even) td { background: #f2f5f6; }
  .alliance-project-history-wrap tbody tr.project-history-own-row td { background: #e2f4e8; }
  .alliance-project-history-wrap tbody tr.project-history-own-row:nth-child(even) td { background: #d3ebdc; }
  .alliance-project-history-wrap tbody tr.project-history-unsettled-row td { background: #fff1c7; color: #744d00; }
  .alliance-project-history-wrap tbody tr.project-history-own-row.project-history-unsettled-row td { background: #dff0b9; color: #3f5e16; }
  .alliance-project-history-wrap [data-project-undividend] { padding: 4px 6px; border: 1px solid #c86b55; border-radius: 4px; background: #fff0eb; color: #a43e26; font-size: 12px; font-weight: 800; cursor: pointer; }
  .alliance-project-history-wrap [data-project-undividend]:hover { background: #ffdcd2; }
  .alliance-history-party-button { min-width: 76px; padding: 4px 8px; border: 1px solid #1d6f8f; border-radius: 4px; background: #e8f4f7; color: #155872; font-size: 12px; font-weight: 800; cursor: pointer; }
  .alliance-history-party-button:hover { background: #cceaf0; }
  .alliance-history-party-dialog[open] { display: block !important; position: fixed !important; z-index: 100003 !important; inset: 18% auto auto 50% !important; transform: translateX(-50%) !important; width: min(92vw, 420px) !important; max-width: 420px; margin: 0 !important; padding: 0 !important; border: 2px solid #1d6f8f; border-radius: 10px; background: #fff; color: #222; box-shadow: 0 16px 50px rgba(0,0,0,.38); }
  .alliance-history-party-dialog::backdrop { background: rgba(0,0,0,.38); }
  .alliance-history-party-shell header { display: flex; align-items: center; justify-content: space-between; padding: 10px 14px; background: #1d6f8f; color: #fff; }
  .alliance-history-party-shell h3 { margin: 0; font-size: 18px; }
  .alliance-history-party-shell header button { border: 0; background: transparent; color: #fff; font-size: 24px; cursor: pointer; }
  .alliance-history-party-shell [data-history-party-body] { padding: 14px 18px 18px; font-size: 15px; }
  .alliance-history-party-shell [data-history-party-body] p { margin: 0 0 8px; }
  .alliance-history-party-shell [data-history-party-body] ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(90px, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
  .alliance-history-party-shell [data-history-party-body] li { padding: 8px; border: 1px solid #c8dfe5; border-radius: 5px; background: #eef6f8; text-align: center; font-weight: 800; }
  .alliance-buy-project-item.is-own-launch-slot { border: 2px dashed #d79a1c; background: linear-gradient(145deg, #fff0b9, #ffd86b); color: #573700; }
  .alliance-buy-project-item.is-own-launch-slot strong { color: #573700; }
  .alliance-buy-project-item.is-own-launch-slot .project-launch-entry { display: block; margin-top: 4px; padding: 5px 7px; border-radius: 5px; background: #fff8d7; color: #9a5c00; font-weight: 900; text-align: center; }
  @media (max-width: 700px) { .alliance-customer-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } .alliance-customer-detail-shell { padding: 14px 12px 16px; } }
  .store-alliance-buy-form .owner-amount-field { grid-column: span 1; }
  .store-alliance-buy-form .owner-amount-field input { flex: 0 0 50%; width: 50%; max-width: 50%; }
  .store-alliance-buy-form .alliance-calculated-hidden { display: none; }
  .store-alliance-buy-own-fields > button { grid-column: span 1; justify-self: stretch; }
  .store-alliance-buy-own-fields > output { display: none; }
  .store-alliance-buy-table .alliance-header-fields { padding: 8px 10px; text-align: left; vertical-align: top; white-space: normal; }
  .store-alliance-buy-table .alliance-header-fields fieldset { width: 100%; box-sizing: border-box; }
  .store-alliance-buy-table thead tr:first-child th.alliance-header-fields { background: #16343d; }
  .store-alliance-buy-table thead tr:nth-child(2) th { background: #10262d; }
  .store-alliance-buy-table thead tr:first-child th { background: #16343d; color: #ffd777; text-align: center; font-size: 14px; }
  .store-alliance-buy-form label { display: flex; align-items: center; gap: 5px; min-width: 0; color: #adbec3; font-weight: 700; font-size: 12px; line-height: 1.2; white-space: nowrap; }
  .store-alliance-buy-form input, .store-alliance-buy-form select { flex: 0 1 72%; width: 72%; max-width: 72%; min-width: 0; border: 1px solid #49616a; border-radius: 7px; padding: 7px 8px; background: #081218; color: #fff; }
  .store-alliance-buy-own-fields input,
  .store-alliance-buy-own-fields select { flex: 1 1 auto; width: auto; max-width: none; height: 36px; min-height: 36px; box-sizing: border-box; }
  .store-alliance-buy-own-fields label { min-height: 36px; }
  .store-alliance-buy-own-fields > label:first-of-type input { min-width: 118px; }
  .store-alliance-buy-form fieldset > label:not(.alliance-lock-toggle) { height: 36px; box-sizing: border-box; }
  .store-alliance-buy-public-fields label:not(.alliance-lock-toggle) input,
  .store-alliance-buy-public-fields label:not(.alliance-lock-toggle) select { flex: 1 1 auto; width: auto; max-width: none; }
  .store-alliance-buy-public-fields label.ticket-total-field input,
  .store-alliance-buy-public-fields label.prize-total-field input,
  .store-alliance-buy-public-fields label.settlement-rate-field input { flex: 1 1 auto; width: auto; max-width: none; }
  .store-alliance-buy-public-fields.is-entry-focused { outline: 2px solid #8d98a0; outline-offset: 4px; border-radius: 8px; }
  .store-alliance-buy-public-fields .alliance-lock-toggle input { flex: 0 0 auto; width: auto; max-width: none; }
  .store-alliance-buy-form output { grid-column: span 3; align-self: center; color: #b9c7cb; }
  .store-alliance-buy-form [data-alliance-lock] { grid-column: 1 / -1; color: #ffd777; }
  .store-alliance-buy-form input:disabled, .store-alliance-buy-form select:disabled { cursor: not-allowed; opacity: .58; border-color: #67757a; }
  .store-alliance-buy-table-wrap { width: 100%; min-width: 0; margin-top: 14px; overflow: hidden; border: 1px solid #304a53; border-radius: 10px; }
  .store-alliance-buy-table { width: 100%; min-width: 0; table-layout: fixed; border-collapse: collapse; }
  .store-alliance-buy-table th, .store-alliance-buy-table td { min-width: 0; padding: 7px 5px; border-bottom: 1px solid #263d45; text-align: left; white-space: normal; overflow-wrap: anywhere; word-break: break-word; font-size: 12px; line-height: 1.35; }
  .store-alliance-buy-table th { color: #ffd777; background: #10262d; }
  .store-alliance-buy-table td { color: #e7eef0; }
  .store-alliance-buy-table td button { display: inline-block; max-width: 100%; margin: 2px 3px 2px 0; padding: 4px 5px; font-size: 11px; white-space: normal; }
  /* 两张合买表使用不同底色，便于一眼区分公开汇总与本店明细。 */
  .store-alliance-buy-public .store-alliance-buy-table-wrap { background: #26343a; border-color: #71838b; }
  .store-alliance-buy-public .store-alliance-buy-table thead tr:first-child th.alliance-header-fields { background: #536770; }
  .store-alliance-buy-public .store-alliance-buy-table thead tr:nth-child(2) th { background: #465860; }
  .store-alliance-buy-public .store-alliance-buy-table tbody tr:nth-child(even) { background: #2d3b41; }
  .store-alliance-buy-own .store-alliance-buy-table-wrap { background: #302c35; border-color: #827b88; }
  .store-alliance-buy-own .store-alliance-buy-table thead tr:first-child th.alliance-header-fields { background: #665d6e; }
  .store-alliance-buy-own .store-alliance-buy-table thead tr:nth-child(2) th { background: #514a59; }
  .store-alliance-buy-public .store-alliance-buy-table thead tr:nth-child(2) th,
  .store-alliance-buy-own .store-alliance-buy-table thead tr:nth-child(2) th { background: #f20d12; color: #fff; border-color: #7f0000; font-weight: 900; }
  .store-alliance-buy-own .store-alliance-buy-table tbody tr:nth-child(even) { background: #3a3540; }
  .store-alliance-buy-public .store-alliance-buy-table thead tr:nth-child(2) th,
  .store-alliance-buy-own .store-alliance-buy-table thead tr:nth-child(2) th { height: 54px; min-height: 54px; box-sizing: border-box; padding-top: 8px; padding-bottom: 8px; vertical-align: middle; }
  .store-alliance-buy-public .store-alliance-buy-table tbody td:hover { background: #68757c; transition: background .15s ease; }
  .store-alliance-buy-own .store-alliance-buy-table tbody td:hover { background: #716b76; transition: background .15s ease; }
  .store-alliance-buy-public .store-alliance-buy-table tbody td.alliance-funds-cell { background: #334149; color: #fff4c8; font-weight: 800; }
  .store-alliance-buy-public .store-alliance-buy-table tbody td.alliance-remaining-cell { background: #3d3a40; color: #ffe2a4; font-weight: 800; }
  .store-alliance-buy-public .store-alliance-buy-table tbody td.alliance-funds-cell:hover,
  .store-alliance-buy-public .store-alliance-buy-table tbody td.alliance-remaining-cell:hover { background: #68757c; }
  .store-alliance-buy-public .store-alliance-buy-table tbody td,
  .store-alliance-buy-own .store-alliance-buy-table tbody td { height: 36px; box-sizing: border-box; padding-top: 0; padding-bottom: 0; vertical-align: middle; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .store-alliance-buy-public .store-alliance-buy-table tbody td:last-child,
  .store-alliance-buy-own .store-alliance-buy-table tbody td:last-child { overflow: visible; text-overflow: clip; }
  .store-alliance-buy-own .alliance-owner-total { display: block; margin-top: 7px; padding: 7px 9px; color: #f3d58a; font-weight: 800; }
  .store-alliance-buy-form [data-alliance-status] { display: block; color: #b9c7cb !important; background: transparent; border: 0; border-radius: 0; padding: 0; font-size: 13px; font-weight: 400; line-height: 1.45; }
  .store-alliance-buy-form [data-alliance-status].alliance-status-error { color: #ff4d4f !important; background: #35171a; border: 1px solid #b83b43; border-radius: 6px; padding: 7px 9px; font-size: 15px; font-weight: 800; }
  @media (max-width: 980px) {
    .store-alliance-buy { display: block; }
    .store-alliance-buy-public, .store-alliance-buy-own, .store-alliance-buy-shareholders { margin-top: 14px; }
    .store-alliance-buy-form fieldset { grid-column: 1 / -1; }
  }
}

/* 窄屏仍保持同一页面，列表与统计表上下排列，避免内容被挤出可视区域。 */
@media (max-width: 900px) {
  .alliance-screenshot-master { grid-template-columns: minmax(0, 1fr); overflow: visible; }
  .alliance-buy-project-list-body { max-height: none; overflow-y: visible; overflow-x: visible; }
  .alliance-master-table-shell { width: 100%; overflow-x: hidden; }
  .alliance-master-table th, .alliance-master-table td { padding-left: 2px; padding-right: 2px; font-size: 11px; }
  .alliance-master-lottery-buttons button { font-size: 10px; letter-spacing: -0.6px; }
  .alliance-master-lottery-buttons button { font-size: 11px !important; letter-spacing: 0 !important; line-height: 1.1; }
}

.alliance-master-table .alliance-master-info-row > td > input[data-master-control="ticketStore"],
.alliance-master-table .alliance-master-info-row > td > input[data-master-control="ticketTotal"],
.alliance-master-table .alliance-master-info-row > td > input[data-master-control="prizeTotal"] {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: #FFFFFF !important;
}

.alliance-mobile-ticket-fields input[data-master-control="ticketStore"],
.alliance-mobile-ticket-fields input[data-master-control="ticketTotal"],
.alliance-mobile-ticket-fields input[data-master-control="prizeTotal"] {
  background: #FFFFFF !important;
}

.alliance-master-table .alliance-master-lottery-row + .alliance-master-info-row > th,
.alliance-master-table .alliance-master-lottery-row + .alliance-master-info-row > td {
  border-top: 10px solid transparent !important;
  background-clip: padding-box !important;
}

/* App 联盟合买专用视觉与登记控件。
   桌面端原有样式位于 min-width:901px；这里补齐 App/WebView 的完整规则，
   所有选择器均限定 native-app-shell，电脑版布局和颜色不受影响。 */
body.native-app-shell #screen-material-tool .store-alliance-buy,
body.native-app-shell #screen-ai-copy .store-alliance-buy {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  display: block !important;
  padding: 0 !important;
  overflow: visible !important;
  background: #0c1c23 !important;
  color: #eef8fa !important;
}
body.native-app-shell #screen-material-tool .store-alliance-buy > *,
body.native-app-shell #screen-ai-copy .store-alliance-buy > * { min-width: 0; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-screenshot-master,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-screenshot-master {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
}
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-list,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-list {
  width: 100% !important;
  border: 1px solid #35616b !important;
  border-radius: 8px !important;
  background: #102a32 !important;
  color: #eaf8f8 !important;
  overflow: hidden !important;
}
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-list-title,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-list-title {
  padding: 9px 8px !important;
  background: #19515b !important;
  color: #fff4bd !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  text-align: center !important;
}
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-list-hint,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-list-hint {
  padding: 7px 8px !important;
  background: #173640 !important;
  color: #c7e8e8 !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  text-align: center !important;
}
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-list-body,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-list-body {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 6px !important;
  width: 100% !important;
  padding: 7px !important;
  max-height: none !important;
  overflow: visible !important;
}
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item {
  display: flex !important;
  width: 100% !important;
  min-height: 0 !important;
  padding: 10px 9px !important;
  gap: 4px !important;
  border: 2px solid #4d8b93 !important;
  border-radius: 8px !important;
  background: #e9f7f5 !important;
  color: #123b3a !important;
  text-align: left !important;
  text-shadow: none !important;
  box-shadow: 0 2px 0 rgba(0,0,0,.28) !important;
  cursor: pointer !important;
  -webkit-tap-highlight-color: rgba(255,215,106,.35);
}
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item:hover,
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item:focus-visible,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item:hover,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item:focus-visible { background: #d1f0ec !important; color: #092d2d !important; outline: 2px solid #ffd76a !important; outline-offset: 1px; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item.is-active,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item.is-active {
  border-color: #d89400 !important;
  background: #ffd45a !important;
  color: #2a1b00 !important;
  box-shadow: inset 0 0 0 1px #fff0a2, 0 3px 0 rgba(0,0,0,.3) !important;
}
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item.is-participating,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item.is-participating { border-color: #b51f25 !important; background: #d9363e !important; color: #fff !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item.is-sold-out:not(.is-participating),
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item.is-sold-out:not(.is-participating) { border-color: #718187 !important; background: #4e6269 !important; color: #f4fbfc !important; opacity: 1 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item strong,
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item span,
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item small,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item strong,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item span,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item small { color: inherit !important; overflow-wrap: anywhere !important; white-space: normal !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item strong,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item strong { font-size: 15px !important; line-height: 1.3 !important; font-weight: 900 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item span,
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item small,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item span,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item small { font-size: 12px !important; line-height: 1.35 !important; font-weight: 800 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item .project-remaining,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item .project-remaining { padding: 4px 6px !important; border-radius: 4px !important; background: #fff0a8 !important; color: #633500 !important; font-weight: 900 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item .project-own-participation,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item .project-own-participation { padding: 4px 6px !important; border-radius: 4px !important; background: #d5f3dd !important; color: #145c2a !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item .project-own-settlement,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item .project-own-settlement { padding: 4px 6px !important; border-radius: 4px !important; background: #d9eaff !important; color: #164b85 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item .project-history-link,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item .project-history-link { border: 1px solid currentColor !important; border-radius: 4px !important; padding: 4px 6px !important; text-align: center !important; }

body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table-shell,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table-shell { width: 100% !important; overflow-x: auto !important; border: 1px solid #355d68 !important; border-radius: 8px !important; background: #152b33 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table { width: 100% !important; min-width: 720px !important; border-collapse: collapse !important; table-layout: fixed !important; color: #effbfc !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table th,
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table td,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table th,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table td { border: 1px solid #52717a !important; padding: 7px 5px !important; min-width: 0 !important; white-space: normal !important; overflow-wrap: anywhere !important; word-break: break-word !important; text-align: center !important; vertical-align: middle !important; font-size: 12px !important; line-height: 1.35 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead th,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead th { background: #173d47 !important; color: #fff2ad !important; font-weight: 900 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-column-header th,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-column-header th { background: #a9272d !important; color: #fff !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table tbody td,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table tbody td { background: #203841 !important; color: #f2fbfc !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table tbody tr:nth-child(even) td,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table tbody tr:nth-child(even) td { background: #263f48 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table tbody tr:hover td,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table tbody tr:hover td { background: #3a5961 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table .alliance-customer-link,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table .alliance-customer-link { display: inline-flex !important; align-items: center !important; justify-content: center !important; min-height: 32px !important; padding: 5px 8px !important; border: 1px solid #8bcbd0 !important; border-radius: 6px !important; background: #246c78 !important; color: #fff !important; text-decoration: none !important; font-weight: 900 !important; cursor: pointer !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table .alliance-copy-register,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table .alliance-copy-register { background: #1c5661 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table .alliance-copy-register button,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table .alliance-copy-register button { width: 100% !important; min-height: 38px !important; padding: 7px 8px !important; border: 1px solid #68c8cf !important; border-radius: 6px !important; background: #278da0 !important; color: #fff !important; font-size: 13px !important; font-weight: 900 !important; cursor: pointer !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table .alliance-owner-register-cell,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table .alliance-owner-register-cell { background: #7e4c13 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table .alliance-owner-register-cell button,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table .alliance-owner-register-cell button { width: 100% !important; min-height: 40px !important; padding: 7px 6px !important; border: 1px solid #ffd86a !important; border-radius: 6px !important; background: #e39a20 !important; color: #2d1a00 !important; font-size: 13px !important; font-weight: 900 !important; cursor: pointer !important; white-space: nowrap !important; overflow-wrap: normal !important; word-break: keep-all !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table .alliance-owner-register-cell button:active,
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table .alliance-owner-register-cell button.is-active,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table .alliance-owner-register-cell button:active,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table .alliance-owner-register-cell button.is-active { background: #ffd45a !important; color: #2a1b00 !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table .alliance-collect-button,
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table .alliance-profit-share-button,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table .alliance-collect-button,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table .alliance-profit-share-button { min-height: 32px !important; padding: 5px 7px !important; border: 1px solid #ffb4b4 !important; border-radius: 6px !important; background: #c52d35 !important; color: #fff !important; font-size: 12px !important; font-weight: 900 !important; cursor: pointer !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table .alliance-collect-button.is-collected,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table .alliance-collect-button.is-collected { border-color: #a9f0bd !important; background: #27844e !important; color: #fff !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table button:disabled,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table button:disabled { border-color: #607178 !important; background: #4b5b60 !important; color: #b9c5c8 !important; opacity: .8 !important; cursor: not-allowed !important; }

/* App 登记弹窗在任何 CSS viewport 下都必须可见、可滚动、可填写。 */
body.native-app-shell #screen-material-tool .alliance-entry-dialog[open],
body.native-app-shell #screen-ai-copy .alliance-entry-dialog[open] { display: block !important; position: fixed !important; z-index: 2147483000 !important; inset: 5% 3% auto !important; transform: none !important; width: auto !important; max-width: none !important; max-height: 90vh !important; margin: 0 !important; padding: 0 !important; border: 2px solid #4eaab7 !important; border-radius: 12px !important; background: #10262e !important; color: #f4fbfc !important; box-shadow: 0 18px 70px rgba(0,0,0,.65) !important; overflow: auto !important; }
body.native-app-shell #screen-material-tool .alliance-mobile-register-prompt-dialog[open],
body.native-app-shell #screen-ai-copy .alliance-mobile-register-prompt-dialog[open] { display: block !important; position: fixed !important; z-index: 2147483001 !important; inset: 50% 5% auto !important; transform: translateY(-50%) !important; width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; border: 2px solid #4eaab7 !important; border-radius: 12px !important; background: #10262e !important; color: #f4fbfc !important; box-shadow: 0 18px 70px rgba(0,0,0,.65) !important; overflow: hidden !important; }
body.native-app-shell #screen-material-tool .alliance-mobile-register-prompt-dialog::backdrop,
body.native-app-shell #screen-ai-copy .alliance-mobile-register-prompt-dialog::backdrop { background: rgba(0,12,18,.72) !important; }
body.native-app-shell #screen-material-tool .alliance-mobile-register-prompt-card header,
body.native-app-shell #screen-ai-copy .alliance-mobile-register-prompt-card header { padding: 14px 16px !important; background: #1b5965 !important; color: #ffe08a !important; }
body.native-app-shell #screen-material-tool .alliance-mobile-register-prompt-card > p,
body.native-app-shell #screen-ai-copy .alliance-mobile-register-prompt-card > p { margin: 18px 16px 12px !important; color: #e1f4f5 !important; font-size: 16px !important; }
body.native-app-shell #screen-material-tool .alliance-mobile-register-prompt-card > div,
body.native-app-shell #screen-ai-copy .alliance-mobile-register-prompt-card > div { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 9px !important; padding: 12px 16px 16px !important; }
body.native-app-shell #screen-material-tool .alliance-mobile-register-prompt-card > div button,
body.native-app-shell #screen-ai-copy .alliance-mobile-register-prompt-card > div button { min-height: 42px !important; padding: 8px 12px !important; border: 1px solid #668087 !important; border-radius: 7px !important; background: #344f58 !important; color: #effbfc !important; font-size: 15px !important; font-weight: 900 !important; }
body.native-app-shell #screen-material-tool .alliance-mobile-register-prompt-card > div button.primary,
body.native-app-shell #screen-ai-copy .alliance-mobile-register-prompt-card > div button.primary { border-color: #8cd8dd !important; background: #238b99 !important; color: #fff !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog::backdrop,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog::backdrop { background: rgba(0,12,18,.72) !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog form,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog form { display: grid !important; gap: 11px !important; padding: 16px !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog h3,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog h3 { margin: 0 !important; padding-bottom: 8px !important; border-bottom: 1px solid #3f707a !important; color: #ffe08a !important; font-size: 20px !important; font-weight: 900 !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog label,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog label { display: grid !important; grid-template-columns: minmax(82px, 30%) minmax(0, 1fr) !important; align-items: center !important; gap: 8px !important; color: #d8eef0 !important; font-size: 14px !important; font-weight: 800 !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog input,
body.native-app-shell #screen-material-tool .alliance-entry-dialog select,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog input,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog select { width: 100% !important; min-width: 0 !important; min-height: 42px !important; padding: 8px 10px !important; border: 1px solid #6a9aa3 !important; border-radius: 7px !important; background: #f8ffff !important; color: #142f35 !important; font-size: 16px !important; font-weight: 700 !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog input:focus,
body.native-app-shell #screen-material-tool .alliance-entry-dialog select:focus,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog input:focus,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog select:focus { border-color: #ffd45a !important; outline: 2px solid rgba(255,212,90,.45) !important; outline-offset: 1px !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog [data-entry-status],
body.native-app-shell #screen-ai-copy .alliance-entry-dialog [data-entry-status] { display: block !important; min-height: 24px !important; padding: 7px 9px !important; border-radius: 6px !important; background: #183b45 !important; color: #dff9fa !important; font-size: 14px !important; line-height: 1.4 !important; font-weight: 700 !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog [data-entry-status].alliance-entry-status-error,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog [data-entry-status].alliance-entry-status-error { border: 1px solid #ff767d !important; background: #542329 !important; color: #fff1f1 !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog form > div,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog form > div { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 9px !important; margin-top: 2px !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog button,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog button { min-height: 42px !important; padding: 8px 12px !important; border: 1px solid #668087 !important; border-radius: 7px !important; background: #344f58 !important; color: #effbfc !important; font-size: 15px !important; font-weight: 900 !important; cursor: pointer !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog button.primary,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog button.primary { border-color: #8cd8dd !important; background: #238b99 !important; color: #fff !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog button.primary:not(:disabled):active,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog button.primary:not(:disabled):active { background: #1a6f7a !important; }
body.native-app-shell #screen-material-tool .alliance-entry-dialog button:disabled,
body.native-app-shell #screen-ai-copy .alliance-entry-dialog button:disabled { border-color: #6b4f54 !important; background: #5a4146 !important; color: #f2c4c7 !important; opacity: 1 !important; cursor: not-allowed !important; }

.alliance-buy-project-item.is-finance-empty,
.alliance-buy-project-item.is-finance-empty:hover,
.alliance-buy-project-item.is-finance-empty.is-active,
.alliance-buy-project-item.is-finance-empty.is-participating { border-color: #718187 !important; background: #4e6269 !important; color: #f4fbfc !important; opacity: .9 !important; box-shadow: inset 0 0 0 1px rgba(255,255,255,.12), 0 1px 2px rgba(0,0,0,.24) !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item.is-finance-empty,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item.is-finance-empty,
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item.is-finance-empty:hover,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item.is-finance-empty:hover,
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item.is-finance-empty.is-active,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item.is-finance-empty.is-active,
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item.is-finance-empty.is-participating,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item.is-finance-empty.is-participating { border-color: #718187 !important; background: #4e6269 !important; color: #f4fbfc !important; opacity: .9 !important; box-shadow: inset 0 0 0 1px rgba(255,255,255,.12), 0 1px 2px rgba(0,0,0,.24) !important; }
.alliance-buy-project-item.is-finance-empty .project-remaining,
.alliance-buy-project-item.is-finance-empty .project-launch-entry { background: rgba(31,45,49,.72) !important; color: #d5e0e2 !important; }
.alliance-mobile-ticket-fields { display: none; }

@media (max-width: 900px) {
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-mobile-mode-tabs [data-alliance-view-ticket],
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-mobile-mode-tabs [data-alliance-view-ticket] { white-space: nowrap !important; font-size: 13px !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy > .store-alliance-buy-form,
  body.native-app-shell #screen-ai-copy .store-alliance-buy > .store-alliance-buy-form,
  body.native-app-shell #screen-material-tool .store-alliance-buy > .store-alliance-buy-public,
  body.native-app-shell #screen-ai-copy .store-alliance-buy > .store-alliance-buy-public,
  body.native-app-shell #screen-material-tool .store-alliance-buy > .store-alliance-buy-own,
  body.native-app-shell #screen-ai-copy .store-alliance-buy > .store-alliance-buy-own,
  body.native-app-shell #screen-material-tool .store-alliance-buy > .store-alliance-buy-shareholders,
  body.native-app-shell #screen-ai-copy .store-alliance-buy > .store-alliance-buy-shareholders { display: none !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy > .section-head,
  body.native-app-shell #screen-ai-copy .store-alliance-buy > .section-head,
  body.native-app-shell #screen-material-tool .store-alliance-buy > .store-alliance-buy-help,
  body.native-app-shell #screen-ai-copy .store-alliance-buy > .store-alliance-buy-help,
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-ticket-band,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-ticket-band,
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-ticket-upload,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-ticket-upload { display: none !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-list-body,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-list-body {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-buy-project-item,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-buy-project-item {
    flex-direction: column !important;
    align-items: stretch !important;
    height: 100% !important;
    box-sizing: border-box !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy:not(.alliance-project-focused) .alliance-master-table-shell,
  body.native-app-shell #screen-ai-copy .store-alliance-buy:not(.alliance-project-focused) .alliance-master-table-shell { display: none !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy.alliance-project-focused .alliance-buy-project-list,
  body.native-app-shell #screen-ai-copy .store-alliance-buy.alliance-project-focused .alliance-buy-project-list { display: none !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .store-alliance-buy-form,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .store-alliance-buy-form {
    display: none !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 8px !important;
    background: #0c1c23 !important;
    color: #eef8fa !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .store-alliance-buy-form fieldset,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .store-alliance-buy-form fieldset {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 8px !important;
    padding: 8px !important;
    border: 1px solid #52717a !important;
    border-radius: 6px !important;
    background: #102a32 !important;
    color: #eef8fa !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .store-alliance-buy-form fieldset legend,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .store-alliance-buy-form fieldset legend {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 5px 8px !important;
    width: auto !important;
    max-width: 100% !important;
    padding: 0 4px !important;
    color: #ffe08a !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 900 !important;
    white-space: normal !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .store-alliance-buy-form fieldset > label:not(.alliance-lock-toggle),
  body.native-app-shell #screen-ai-copy .store-alliance-buy .store-alliance-buy-form fieldset > label:not(.alliance-lock-toggle) {
    display: grid !important;
    grid-template-columns: minmax(82px, .85fr) minmax(0, 1.35fr) !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 34px !important;
    margin: 4px 0 !important;
    color: #d8eef0 !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .store-alliance-buy-form fieldset > label:not(.alliance-lock-toggle) input,
  body.native-app-shell #screen-material-tool .store-alliance-buy .store-alliance-buy-form fieldset > label:not(.alliance-lock-toggle) select,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .store-alliance-buy-form fieldset > label:not(.alliance-lock-toggle) input,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .store-alliance-buy-form fieldset > label:not(.alliance-lock-toggle) select {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 5px 7px !important;
    border: 1px solid #6a9aa3 !important;
    border-radius: 5px !important;
    background: #f5fbfc !important;
    color: #14343b !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .store-alliance-buy-form .alliance-lock-toggle,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .store-alliance-buy-form .alliance-lock-toggle {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    min-height: 24px !important;
    margin: 0 !important;
    color: #e9f6f7 !important;
    font-size: 11px !important;
    white-space: nowrap !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .store-alliance-buy-form .alliance-lock-toggle input,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .store-alliance-buy-form .alliance-lock-toggle input {
    width: 16px !important;
    height: 16px !important;
    min-height: 16px !important;
    margin: 0 !important;
    accent-color: #e6a929;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .store-alliance-buy-form fieldset > button,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .store-alliance-buy-form fieldset > button {
    display: block !important;
    width: min(100%, 220px) !important;
    min-height: 36px !important;
    margin: 7px auto 2px !important;
    padding: 6px 10px !important;
    font-size: 14px !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .store-alliance-buy-form [data-alliance-lock],
  body.native-app-shell #screen-material-tool .store-alliance-buy .store-alliance-buy-form [data-alliance-status],
  body.native-app-shell #screen-ai-copy .store-alliance-buy .store-alliance-buy-form [data-alliance-lock],
  body.native-app-shell #screen-ai-copy .store-alliance-buy .store-alliance-buy-form [data-alliance-status] {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 5px 0 0 !important;
    color: #bcd5d9 !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    white-space: normal !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table-shell,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table-shell {
    display: none !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-lottery-row,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-lottery-row,
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row { display: none !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-mobile-ticket-fields { display: none !important; }
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-mobile-ticket-fields { display: none !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="own"] .alliance-mobile-ticket-fields,
  body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="own"] .alliance-mobile-ticket-fields { display: grid !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="own"] > .store-alliance-buy-own,
  body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="own"] > .store-alliance-buy-own { display: block !important; width: 100% !important; min-width: 0 !important; margin: 0 !important; padding: 8px !important; box-sizing: border-box !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-lottery-row[hidden],
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-lottery-row[hidden] { display: none !important; }
body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-mobile-ticket-fields,
body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-mobile-ticket-fields {
    display: grid !important;
    grid-column: 1 / -1 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    padding: 8px 6px !important;
    background: #173842 !important;
    border-top: 1px solid #52717a !important;
    border-bottom: 1px solid #52717a !important;
  }

  body.native-app-shell #screen-material-tool .alliance-project-history-dialog[open],
  body.native-app-shell #screen-ai-copy .alliance-project-history-dialog[open] {
    width: 96vw !important;
    max-width: 96vw !important;
    max-height: 92vh !important;
    overflow: auto !important;
  }
  body.native-app-shell #screen-material-tool .alliance-project-history-wrap,
  body.native-app-shell #screen-ai-copy .alliance-project-history-wrap {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    -webkit-overflow-scrolling: touch;
  }
  body.native-app-shell #screen-material-tool .alliance-project-history-wrap table,
  body.native-app-shell #screen-ai-copy .alliance-project-history-wrap table {
    display: table !important;
    width: 980px !important;
    min-width: 980px !important;
    max-width: none !important;
    table-layout: auto !important;
    border-collapse: collapse !important;
    writing-mode: horizontal-tb !important;
  }
  body.native-app-shell #screen-material-tool .alliance-project-history-wrap table thead,
  body.native-app-shell #screen-material-tool .alliance-project-history-wrap table tbody,
  body.native-app-shell #screen-ai-copy .alliance-project-history-wrap table thead,
  body.native-app-shell #screen-ai-copy .alliance-project-history-wrap table tbody { display: table-row-group !important; writing-mode: horizontal-tb !important; }
  body.native-app-shell #screen-material-tool .alliance-project-history-wrap table thead { display: table-header-group !important; }
  body.native-app-shell #screen-ai-copy .alliance-project-history-wrap table thead { display: table-header-group !important; }
  body.native-app-shell #screen-material-tool .alliance-project-history-wrap table tr,
  body.native-app-shell #screen-ai-copy .alliance-project-history-wrap table tr { display: table-row !important; writing-mode: horizontal-tb !important; }
  body.native-app-shell #screen-material-tool .alliance-project-history-wrap table th,
  body.native-app-shell #screen-material-tool .alliance-project-history-wrap table td,
  body.native-app-shell #screen-ai-copy .alliance-project-history-wrap table th,
  body.native-app-shell #screen-ai-copy .alliance-project-history-wrap table td { display: table-cell !important; }
  body.native-app-shell #screen-material-tool .alliance-project-history-wrap th,
  body.native-app-shell #screen-material-tool .alliance-project-history-wrap td,
  body.native-app-shell #screen-ai-copy .alliance-project-history-wrap th,
  body.native-app-shell #screen-ai-copy .alliance-project-history-wrap td {
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    height: 42px !important;
    padding: 8px 7px !important;
    vertical-align: middle !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="own"] > .store-alliance-buy-own .store-alliance-buy-table-wrap,
  body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="own"] > .store-alliance-buy-own .store-alliance-buy-table-wrap {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="own"] > .store-alliance-buy-own .store-alliance-buy-table,
  body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="own"] > .store-alliance-buy-own .store-alliance-buy-table {
    width: 980px !important;
    min-width: 980px !important;
    table-layout: fixed !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="own"] > .store-alliance-buy-own .store-alliance-buy-table th,
  body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-alliance-mode="own"] > .store-alliance-buy-own .store-alliance-buy-table td,
  body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="own"] > .store-alliance-buy-own .store-alliance-buy-table th,
  body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-alliance-mode="own"] > .store-alliance-buy-own .store-alliance-buy-table td {
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    height: 42px !important;
    padding: 7px 8px !important;
    vertical-align: middle !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-mobile-ticket-fields label,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-mobile-ticket-fields label { display: grid !important; grid-template-columns: 1fr !important; gap: 4px !important; min-width: 0 !important; color: #ffe99b !important; font-size: 12px !important; font-weight: 900 !important; text-align: center !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-mobile-ticket-fields input,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-mobile-ticket-fields input { width: 100% !important; min-width: 0 !important; height: 36px !important; box-sizing: border-box !important; padding: 5px 6px !important; border: 1px solid #7998a0 !important; border-radius: 5px !important; background: #fffef1 !important; color: #1b1715 !important; font-size: 14px !important; font-weight: 800 !important; text-align: center !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-mobile-ticket-fields [data-mobile-launch],
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-mobile-ticket-fields [data-mobile-launch] { display: none !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy[data-mobile-launch-requested="true"] .alliance-mobile-ticket-fields [data-mobile-launch],
  body.native-app-shell #screen-ai-copy .store-alliance-buy[data-mobile-launch-requested="true"] .alliance-mobile-ticket-fields [data-mobile-launch] { display: block !important; grid-column: 1 / -1 !important; width: min(100%, 260px) !important; min-height: 42px !important; margin: 4px auto 0 !important; border: 1px solid #ffe08a !important; border-radius: 8px !important; background: linear-gradient(#efb52c, #c87a05) !important; color: #fff !important; font-size: 16px !important; font-weight: 900 !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table {
    width: max(100%, 620px) !important;
    min-width: 620px !important;
    table-layout: fixed !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table th,
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table td,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table th,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table td {
    padding: 5px 3px !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: auto minmax(38px, auto) auto !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > th,
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > td,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > th,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > td {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > th:nth-child(1),
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > th:nth-child(1) { grid-column: 1; grid-row: 1; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > td:nth-child(2),
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > td:nth-child(2) { grid-column: 1; grid-row: 2; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > th:nth-child(3),
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > th:nth-child(3) { grid-column: 2; grid-row: 1; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > td:nth-child(4),
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > td:nth-child(4) { grid-column: 2; grid-row: 2; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > th:nth-child(5),
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > th:nth-child(5) { grid-column: 3; grid-row: 1; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > td:nth-child(6),
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > td:nth-child(6) { grid-column: 3; grid-row: 2; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > .alliance-copy-register,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > .alliance-copy-register { grid-column: 1 / -1 !important; grid-row: 3 !important; display: flex !important; gap: 6px !important; }
  body.native-app-shell #screen-material-tool .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > .alliance-copy-register button,
  body.native-app-shell #screen-ai-copy .store-alliance-buy .alliance-master-table thead tr.alliance-master-info-row > .alliance-copy-register button { flex: 1 1 0 !important; min-width: 0 !important; white-space: nowrap !important; }
}

/* 原生图片编辑器面板（新版APP专属） */
.native-image-editor-panel { display: grid; gap: 14px; padding: 16px; border: 1px solid #34505a; border-radius: 14px; background: #13232a; box-shadow: 0 8px 24px #0003; }
.native-editor-intro { display: grid; gap: 5px; }
.native-editor-intro strong { font-size: 19px; }
.native-editor-intro span { color: #9eb2b8; font-size: 13px; line-height: 1.5; }
.native-editor-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.native-editor-preview { display: block; max-width: 100%; max-height: 420px; border: 1px solid #3f6871; border-radius: 10px; object-fit: contain; background: #081218; }
.native-editor-preview[hidden] { display: none; }
.native-editor-status { color: #9eb2b8; font-size: 13px; }
.native-editor-file { position: fixed; left: 0; top: 0; width: 1px; height: 1px; opacity: .01; pointer-events: none; }

/* 批TGWDEV693 / BUG007：表情编辑独立两列，不再继承整行预览/长色条样式。 */
[data-emoji-editor].material-emoji-editor {
  box-sizing: border-box; width: min(1000px, calc(100vw - 32px)); max-width: calc(100vw - 32px);
  max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); margin: auto; padding: 0; overflow: hidden;
}
[data-emoji-editor].material-emoji-editor[open] { display: flex; }
.material-emoji-editor > form { display: flex; flex-direction: column; min-width: 0; width: 100%; max-height: inherit; margin: 0; }
.material-emoji-editor .emoji-editor-header { display: flex; align-items: center; justify-content: space-between; flex: 0 0 auto; padding: 12px 16px; border-bottom: 1px solid #304a53; }
.material-emoji-editor .emoji-editor-header strong { padding: 0; font-size: 18px; text-align: left; }
.material-emoji-editor button { min-height: 36px; padding: 6px 12px; font-size: 14px; }
.material-emoji-editor .emoji-editor-body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 380px); align-items: start; gap: 20px; padding: 16px; min-height: 0; overflow: auto; }
.material-emoji-editor .emoji-editor-preview { display: grid; justify-items: center; gap: 8px; min-width: 0; }
.material-emoji-editor [data-ee-stage] { width: min(100%, 440px, calc(100vh - 244px)); width: min(100%, 440px, calc(100dvh - 244px)); aspect-ratio: 1; border-radius: 10px; background: #fff; touch-action: none; }
.material-emoji-editor [data-ee-stage] svg { display: block; width: 100%; height: auto; max-width: 100%; max-height: none; border-radius: inherit; }
.material-emoji-editor [data-ee-stage] [data-ee]:focus-visible { outline: 3px solid #2786d8; outline-offset: 2px; }
.material-emoji-editor .emoji-editor-preview p { margin: 0; max-width: 440px; color: #aabfc6; font-size: 12px; line-height: 1.5; text-align: center; }
.material-emoji-editor .emoji-editor-settings { min-width: 0; }
.material-emoji-editor [data-ee-controls] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.material-emoji-editor [data-ee-controls] label { display: grid; align-content: start; gap: 5px; min-width: 0; color: #b8cbd1; font-size: 13px; font-weight: 600; }
.material-emoji-editor .emoji-editor-wide { grid-column: 1 / -1; }
.material-emoji-editor [data-ee-controls] input, .material-emoji-editor [data-ee-controls] select { box-sizing: border-box; width: 100%; min-width: 0; height: 36px; padding: 6px 8px; border: 1px solid #49616a; border-radius: 7px; background: #081218; color: #edf5f6; font: inherit; }
.material-emoji-editor [data-ee-controls] .emoji-editor-color { display: flex; align-items: center; gap: 10px; }
.material-emoji-editor [data-ee-controls] input[type="color"] { flex: 0 0 48px; width: 48px; height: 34px; padding: 3px; cursor: pointer; }
.material-emoji-editor input:focus-visible, .material-emoji-editor select:focus-visible, .material-emoji-editor button:focus-visible { outline: 2px solid #79c9d7; outline-offset: 2px; }
.material-emoji-editor .emoji-editor-actions { display: flex; justify-content: space-between; align-items: center; flex: 0 0 auto; gap: 12px; padding: 12px 16px; border-top: 1px solid #304a53; }
.material-emoji-editor .emoji-editor-actions output { color: #aabfc6; font-size: 12px; line-height: 1.5; }
.material-emoji-editor .emoji-editor-actions > div { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
@media (max-width: 720px) {
  [data-emoji-editor].material-emoji-editor { width: calc(100vw - 16px); max-width: calc(100vw - 16px); max-height: calc(100vh - 16px); max-height: calc(100dvh - 16px); }
  .material-emoji-editor .emoji-editor-body { grid-template-columns: minmax(0, 1fr); gap: 14px; padding: 12px; }
  .material-emoji-editor [data-ee-stage] { width: min(100%, 340px); }
  .material-emoji-editor .emoji-editor-actions { align-items: flex-start; flex-direction: column; gap: 6px; padding: 10px 12px; }
  .material-emoji-editor .emoji-editor-actions > div { width: 100%; }
  .material-emoji-editor .emoji-editor-actions button { flex: 1; padding: 6px 8px; }
  .material-emoji-editor button, .material-emoji-editor [data-ee-controls] input, .material-emoji-editor [data-ee-controls] select { min-height: 40px; }
}
