.sms-center { max-width: 1280px; margin: 0 auto; padding: 30px 32px 56px; color: var(--text-primary); }
.sms-header { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; padding:8px 0 26px; border-bottom:1px solid var(--border); }
.sms-header h2 { margin:6px 0 8px; font-size:30px; line-height:1.15; letter-spacing:0; }
.sms-header p { margin:0; color:var(--text-muted); font-size:14px; }
.sms-kicker, .sms-panel-heading span { color:#2dd4bf; font-size:11px; font-weight:700; letter-spacing:0; }
.sms-icon-button { width:36px; height:36px; border:1px solid var(--border); border-radius:6px; background:transparent; color:var(--text-primary); font-size:20px; cursor:pointer; }
.sms-icon-button:hover, .sms-order-actions button:hover, .sms-admin-actions button:hover { border-color:#2dd4bf; color:#2dd4bf; }
.sms-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin:20px 0; border:1px solid var(--border); background:var(--border); }
.sms-metrics div { background:var(--bg-card); padding:16px 18px; min-height:70px; }
.sms-metrics span { display:block; color:var(--text-muted); font-size:12px; }
.sms-metrics b { display:block; margin-top:4px; font-size:22px; }
.sms-layout { display:grid; grid-template-columns:minmax(300px,.85fr) minmax(420px,1.15fr); gap:18px; align-items:start; }
.sms-panel { background:var(--bg-card); border:1px solid var(--border); border-radius:6px; padding:20px; margin-top:18px; }
.sms-layout .sms-panel { margin-top:0; }
.sms-panel-heading { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; margin-bottom:18px; }
.sms-panel-heading h3 { margin:5px 0 0; font-size:17px; letter-spacing:0; }
.sms-count { display:inline-grid; min-width:26px; height:26px; place-items:center; border-radius:50%; background:rgba(45,212,191,.12); color:#2dd4bf; font-size:12px; }
.sms-provider-tabs { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:18px; }
.sms-provider { min-height:54px; border:1px solid var(--border); border-radius:5px; background:transparent; color:var(--text-primary); text-align:left; padding:10px 12px; cursor:pointer; font-weight:700; }
.sms-provider small { display:block; color:var(--text-muted); font-size:11px; font-weight:400; margin-top:3px; }
.sms-provider.active { border-color:#2dd4bf; background:rgba(45,212,191,.08); color:#2dd4bf; }
.sms-form { display:grid; gap:13px; }
.sms-form label { display:grid; gap:6px; color:var(--text-secondary); font-size:12px; }
.sms-form input, .sms-form select { width:100%; box-sizing:border-box; height:38px; border:1px solid var(--border); border-radius:4px; background:var(--bg-main); color:var(--text-primary); padding:0 10px; font:inherit; }
.sms-form input:focus, .sms-form select:focus { outline:none; border-color:#2dd4bf; }
.sms-form-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.sms-submit { width:100%; justify-content:center; margin-top:4px; }
.sms-order-list { display:grid; gap:10px; max-height:560px; overflow:auto; }
.sms-order { border:1px solid var(--border); border-radius:5px; padding:13px; background:rgba(255,255,255,.015); }
.sms-order-top, .sms-order-actions, .sms-order-meta { display:flex; gap:8px; justify-content:space-between; align-items:center; }
.sms-order-top strong { display:block; margin-top:3px; overflow-wrap:anywhere; font-size:14px; }
.sms-provider-label, .sms-order-meta, .sms-table small { color:var(--text-muted); font-size:11px; }
.sms-status { display:inline-block; border-radius:999px; padding:3px 8px; white-space:nowrap; font-size:11px; background:rgba(148,163,184,.15); color:#cbd5e1; }
.status-pending, .status-processing, .status-waiting, .status-wait_code { background:rgba(251,191,36,.12); color:#fbbf24; }
.status-approved, .status-received, .status-finished { background:rgba(45,212,191,.12); color:#2dd4bf; }
.status-rejected, .status-cancelled, .status-failed, .status-timeout { background:rgba(248,113,113,.12); color:#fca5a5; }
.sms-order-code { min-height:30px; padding:10px 0 5px; color:#f8fafc; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:20px; letter-spacing:0; }
.sms-order-code span { color:var(--text-muted); font-family:inherit; font-size:13px; }
.sms-order-meta { justify-content:flex-start; color:var(--text-muted); overflow-wrap:anywhere; }
.sms-order-actions { justify-content:flex-start; margin-top:12px; }
.sms-order-actions button, .sms-admin-actions button, .sms-table button { border:1px solid var(--border); border-radius:4px; background:transparent; color:var(--text-secondary); padding:5px 8px; font-size:12px; cursor:pointer; }
.sms-order-text { margin:8px 0 0; color:var(--text-secondary); font-size:12px; line-height:1.5; white-space:pre-wrap; overflow-wrap:anywhere; }
.sms-table-wrap { overflow:auto; }
.sms-table { width:100%; min-width:620px; border-collapse:collapse; font-size:12px; }
.sms-table th { color:var(--text-muted); text-align:left; font-weight:500; border-bottom:1px solid var(--border); padding:8px; white-space:nowrap; }
.sms-table td { border-bottom:1px solid rgba(255,255,255,.05); padding:10px 8px; vertical-align:top; color:var(--text-secondary); }
.sms-table td:last-child { white-space:nowrap; }
.sms-table small { display:block; max-width:180px; margin-top:4px; overflow-wrap:anywhere; }
.sms-table button + button { margin-left:5px; }
.sms-notice, .sms-admin-result { margin:0 0 18px; border-left:3px solid #60a5fa; background:rgba(96,165,250,.09); color:#bfdbfe; padding:10px 12px; font-size:13px; line-height:1.45; white-space:pre-wrap; overflow-wrap:anywhere; }
.sms-notice.success { border-color:#2dd4bf; background:rgba(45,212,191,.08); color:#99f6e4; }
.sms-notice.warning { border-color:#fbbf24; background:rgba(251,191,36,.08); color:#fde68a; }
.sms-admin-actions { display:flex; gap:7px; flex-wrap:wrap; }
.sms-empty { display:grid; justify-items:center; gap:8px; padding:52px 18px; text-align:center; color:var(--text-muted); }
.sms-empty strong { color:var(--text-primary); font-size:15px; }
.sms-empty span { max-width:300px; line-height:1.55; font-size:13px; }
.sms-empty.compact { padding:36px 16px; }
@media (max-width: 860px) { .sms-center { padding:22px 16px 42px; } .sms-layout { grid-template-columns:1fr; } .sms-header h2 { font-size:26px; } .sms-panel { padding:16px; } }
@media (max-width: 520px) { .sms-header { gap:12px; } .sms-metrics { grid-template-columns:1fr; } .sms-provider-tabs, .sms-form-row { grid-template-columns:1fr; } .sms-order-top { align-items:flex-start; } }
