/* Public source: existing --th-* theme tokens and approved native-dialog workflow. */
.after-sales-dialog { position:fixed; inset:0; margin:auto; width:min(760px,calc(100vw - 32px)); max-height:85dvh; padding:24px; border:1px solid var(--th-border); border-radius:18px; background:var(--th-bg); color:var(--th-text); overflow:auto; letter-spacing:0; }
.after-sales-dialog::backdrop { background:#0008; backdrop-filter:blur(4px); }
.after-sales-dialog header,.after-sales-dialog footer { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:0; background:none; border:0; width:auto; min-height:0; }
.after-sales-dialog footer { margin-top:20px; font-size:12px; color:var(--th-text-2); flex-wrap:wrap; }
.after-sales-dialog h2 { font-size:20px; font-weight:600; }
.after-sales-dialog h3 { font-size:15px; font-weight:600; margin-top:28px; }
.after-sales-dialog p { margin:14px 0; font-size:13px; line-height:1.65; }
.after-sales-dialog label { display:grid; gap:8px; margin:14px 0; font-size:13px; }
.after-sales-dialog input,.after-sales-dialog select,.after-sales-dialog textarea { border:1px solid var(--th-border); border-radius:8px; padding:10px; color:inherit; background:var(--th-surface-muted); max-width:100%; }
.after-sales-dialog textarea { width:100%; min-height:80px; }
.after-sales-dialog [data-actions] { display:flex; gap:10px; flex-wrap:wrap; margin-top:16px; }
.after-sales-dialog [data-actions] label { display:flex; align-items:center; flex-basis:100%; gap:10px; margin:0 0 8px; }
.after-sales-dialog input[type=checkbox] { width:18px; height:18px; flex-shrink:0; }
.after-sales-dialog button,.after-sales-dialog .btn-glass,.after-sales-dialog .btn-solid { display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:8px 14px; border:1px solid var(--th-border); border-radius:8px; font-size:13px; font-weight:500; line-height:1.3; background:var(--th-surface-muted); color:var(--th-text); box-shadow:none; transform:none; width:auto; height:auto; cursor:pointer; }
.after-sales-dialog button:disabled { opacity:.45; cursor:not-allowed; }
.after-sales-dialog .btn-solid { background:var(--th-accent); color:var(--th-bg); }
.after-sales-dialog button+button { margin-left:8px; }
.after-sales-dialog [data-actions] button+button { margin-left:0; }
.after-sales-dialog [data-error] { color:var(--th-danger); }
.after-sales-card { border:1px solid var(--th-border); border-radius:12px; padding:16px; margin:16px 0; }
.after-sales-card small { color:var(--th-text-2); }
.feishu-binding-dialog [hidden] { display:none !important; }
.feishu-binding-status { display:flex; align-items:center; gap:10px; min-height:48px; margin:18px 0; padding:12px 0; border-top:1px solid var(--th-border); border-bottom:1px solid var(--th-border); }
.feishu-binding-status span { color:var(--th-text-2); overflow-wrap:anywhere; }
.feishu-authorization { display:grid; justify-items:center; gap:14px; margin-top:18px; padding:18px 0; border-top:1px solid var(--th-border); }
.feishu-qr { width:236px; height:236px; display:grid; place-items:center; padding:8px; border:1px solid var(--th-border); border-radius:8px; background:#fff; }
.feishu-qr canvas { display:block; width:220px; height:220px; }
.feishu-candidate { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:12px; margin-top:18px; padding:16px 0; border-top:1px solid var(--th-border); border-bottom:1px solid var(--th-border); }
.feishu-candidate>strong { overflow-wrap:anywhere; }
.feishu-candidate .feishu-scope { grid-column:1 / -1; display:flex; align-items:center; gap:10px; margin:0; }
.feishu-candidate>[data-confirm-binding] { grid-column:1 / -1; justify-self:start; }
.feishu-binding-actions { display:flex; flex-wrap:wrap; gap:8px; }
.feishu-binding-actions button+button,.feishu-revoke-confirm button+button { margin-left:0; }
.feishu-revoke-confirm { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:14px; padding:14px 0; border-top:1px solid var(--th-border); border-bottom:1px solid var(--th-border); }
.feishu-revoke-confirm>div { display:flex; flex-wrap:wrap; gap:8px; }
.feishu-deliveries { margin-top:22px; padding-top:4px; border-top:1px solid var(--th-border); }
.feishu-deliveries h3 { margin-top:16px; }
.feishu-deliveries small { display:block; margin-top:8px; color:var(--th-text-2); overflow-wrap:anywhere; }
@media (max-width:640px) {
  .feishu-binding-dialog { width:calc(100vw - 20px); padding:18px; }
  .feishu-authorization [data-qr-wrap] { display:none; }
  .feishu-candidate { grid-template-columns:1fr; }
  .feishu-candidate>[data-confirm-binding] { grid-column:1; width:100%; }
  .feishu-revoke-confirm { align-items:stretch; flex-direction:column; }
  .feishu-revoke-confirm>div,.feishu-revoke-confirm button { width:100%; }
}
