.sms-body{
  margin:0;
  min-height:100vh;
  font-family:"Microsoft YaHei",Inter,system-ui,sans-serif;
  color:#1e1b4b;
  background:
    radial-gradient(circle at 12% 0,#ddd6fe 0,transparent 32%),
    linear-gradient(160deg,#f8fafc,#eef2ff 55%,#e0f2fe);
}
.sms-wrap{width:min(860px,calc(100% - 28px));margin:auto;padding:28px 0 56px}
.sms-hero{text-align:center;margin-bottom:22px}
.sms-logo{
  width:68px;height:68px;border-radius:22px;margin:0 auto 12px;
  display:grid;place-items:center;font-size:30px;
  background:linear-gradient(145deg,#818cf8,#4f46e5);
  box-shadow:0 16px 36px rgba(79,70,229,.28);color:#fff;
}
.sms-hero h1{margin:0 0 8px;font-size:28px}
.sms-hero p{margin:0 auto;max-width:620px;color:#64748b;line-height:1.7}
.sms-chips{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:14px}
.sms-chips span{
  background:#fff;border:1px solid #c7d2fe;border-radius:999px;
  padding:6px 12px;font-size:12px;color:#4338ca;font-weight:700;
}
.sms-card{
  background:rgba(255,255,255,.94);
  border:1px solid #c7d2fe;
  border-radius:22px;
  padding:22px 24px 24px;
  box-shadow:0 18px 40px rgba(79,70,229,.1);
  margin-bottom:16px;
}
.sms-card h2{margin:0 0 6px;font-size:20px}
.sms-desc,.sms-status,.sms-notice{color:#64748b;font-size:13px;line-height:1.7;margin:0 0 12px}
.sms-form{display:flex;gap:10px}
.sms-input,.sms-grid input{
  width:100%;border:1.5px solid #c7d2fe;border-radius:14px;
  padding:13px 14px;font:inherit;outline:none;background:#f8fafc;
}
.sms-input:focus,.sms-grid input:focus{border-color:#6366f1;box-shadow:0 0 0 4px rgba(99,102,241,.12);background:#fff}
.sms-input.mono,.sms-grid input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.sms-btn{
  border:0;border-radius:14px;padding:13px 18px;min-width:120px;
  background:linear-gradient(135deg,#818cf8,#4f46e5);color:#fff;
  font:inherit;font-weight:800;cursor:pointer;
  box-shadow:0 10px 22px rgba(79,70,229,.22);
}
.sms-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
.sms-btn.ghost{background:#fff;color:#4f46e5;border:1px solid #c7d2fe;box-shadow:none}
.sms-alert{display:none;padding:12px 14px;border-radius:12px;margin-bottom:14px;font-size:14px}
.sms-alert.show{display:block}
.sms-alert.ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857}
.sms-alert.warn{background:#fffbeb;border:1px solid #fde68a;color:#92400e}
.sms-alert.error{background:#fff1f2;border:1px solid #fecdd3;color:#be123c}
.sms-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:16px}
.sms-head p{margin:4px 0 0;color:#64748b;font-size:13px}
.sms-head-actions{display:flex;gap:8px;align-items:center}
.sms-badge{border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;background:#eef2ff;color:#4338ca}
.sms-badge.ok{background:#d1fae5;color:#047857}
.sms-badge.warn{background:#fef3c7;color:#a16207}
.sms-badge.danger{background:#fee2e2;color:#b91c1c}
.sms-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
.sms-grid label{display:block;font-size:12px;font-weight:800;color:#334155}
.sms-grid label.wide{grid-column:1/-1}
.sms-grid input{margin-top:6px}
.sms-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.sms-messages{border:1px dashed #c7d2fe;border-radius:16px;padding:16px;background:#f8fafc;min-height:86px}
.sms-messages.empty{color:#94a3b8;display:grid;place-items:center}
.sms-msg{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:12px 14px;margin-bottom:10px}
.sms-msg:last-child{margin-bottom:0}
.sms-msg strong{display:block;font-size:20px;letter-spacing:.04em;color:#4f46e5}
.sms-msg time,.sms-msg p{display:block;margin:6px 0 0;color:#64748b;font-size:13px;line-height:1.6}
@media (max-width:720px){
  .sms-form{display:block}
  .sms-btn{width:100%;margin-top:8px}
  .sms-grid{grid-template-columns:1fr}
  .sms-head{display:block}
  .sms-head-actions{margin-top:10px}
}
