.weidian-sync-dialog{
  width:min(980px,calc(100vw - 32px));max-width:980px;max-height:calc(100dvh - 32px);
  margin:auto;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:14px;
  background:var(--surface,#fff);color:var(--text,#172033);
}
:root [data-weidian-sync-open].hidden{display:none!important}
.weidian-sync-dialog[open]{display:flex;flex-direction:column}
.weidian-sync-dialog>header,.weidian-sync-dialog>footer{
  display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--surface,#fff);flex:none;
}
.weidian-sync-dialog>header{justify-content:space-between;border-bottom:1px solid var(--line)}
.weidian-sync-dialog h2{margin:0;font-size:20px;line-height:1.5}
.weidian-sync-dialog header p{margin:4px 0 0;color:var(--text-2,#5f6b7a);font-size:13px;line-height:1.6}
.weidian-sync-dialog>header button{flex:none;min-width:44px;min-height:44px;padding:8px;font-size:22px}
.weidian-sync-body{min-height:0;overflow:auto;padding:16px 20px;scroll-padding-block:8px;overscroll-behavior:contain}
#weidianSyncSummary{margin:0 0 16px;color:var(--text-2,#5f6b7a);font-size:14px;line-height:1.6}
.weidian-sync-account{margin:0 0 18px;border:1px solid var(--line);border-radius:10px;background:var(--surface,#fff)}
.weidian-sync-account:last-child{margin-bottom:0}
.weidian-sync-account>header{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;padding:14px 16px;border-bottom:1px solid var(--line)}
.weidian-sync-account h3{margin:0;font-size:16px;line-height:1.5}
.weidian-sync-status{margin:0;color:var(--text-2,#5f6b7a);font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.weidian-sync-mappings{margin:0;padding:0;border:0;min-width:0}
.weidian-sync-mapping{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:12px 16px;padding:16px;border-bottom:1px solid var(--line)}
.weidian-sync-mapping h4{grid-column:1/-1;margin:0;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.weidian-sync-dialog label{display:flex;min-width:0;flex-direction:column;gap:8px;color:var(--text-2,#5f6b7a);font-size:13px;line-height:1.5}
.weidian-sync-dialog :is(select,input[type=date]){
  box-sizing:border-box;width:100%;min-width:0;min-height:44px;border:1px solid var(--line-dark,#cbd5e1);
  border-radius:7px;padding:8px 12px;background:var(--surface,#fff);color:var(--text,#172033);font:inherit;
  --ui-arrow-inset:18px;--ui-arrow-space:48px;
}
.weidian-sync-dialog label.weidian-sync-enabled{grid-column:1/-1;flex-direction:row;align-items:center;gap:10px;min-height:44px;color:var(--text,#172033);width:fit-content}
.weidian-sync-enabled input{flex:none;width:18px;height:18px;margin:0}
.weidian-sync-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:12px 16px}
.weidian-sync-dialog :is(button,select,input):focus-visible{outline:2px solid var(--ui-focus,#304fc0);outline-offset:2px}
.weidian-sync-dialog button{min-height:44px}
.weidian-sync-error{flex-basis:100%;margin:0;color:#a33d4b;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.weidian-sync-dialog>footer{justify-content:flex-end;flex-wrap:wrap;border-top:1px solid var(--line);padding-bottom:max(16px,env(safe-area-inset-bottom))}
.weidian-sync-pending{margin:0;padding:0 16px 14px;font-size:13px;color:#a33d4b;line-height:1.6}
.weidian-sync-dialog :disabled{cursor:not-allowed;opacity:1}
.weidian-sync-dialog fieldset:disabled :is(select,input[type=date]){background:var(--surface-subtle,#f8f9fb);color:#5f6b7a}
.weidian-sync-dialog button.primary:disabled{background:#e4e9f1!important;color:#5a6678!important;border-color:#cbd5e1!important;box-shadow:none}
@media(max-width:900px){
  #mobileOrderTools:has([data-weidian-sync-open]:not(.hidden)){grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  .weidian-sync-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:12px}
  .weidian-sync-dialog>header,.weidian-sync-dialog>footer{padding:12px 14px}
  .weidian-sync-dialog>header{gap:10px;align-items:flex-start}
  .weidian-sync-body{padding:14px}
  .weidian-sync-dialog h2{font-size:18px}
  .weidian-sync-mapping{grid-template-columns:minmax(0,1fr);padding:14px;gap:14px}
  .weidian-sync-dialog :is(select,input[type=date]){font-size:16px}
  .weidian-sync-dialog>footer{padding-bottom:max(12px,env(safe-area-inset-bottom))}
}
