/* SMS2API console visual layer, scoped to its mount point. */
#sms2apiConsole { min-width:0; }
#sms2apiConsole .sms2api-console { display:grid; gap:18px; max-width:1480px; color:var(--ink,#172235); }
#sms2apiConsole .sms2api-hero { display:flex; align-items:center; justify-content:space-between; gap:22px; padding:26px 30px; border:1px solid var(--rule,#dfe6ef); border-radius:var(--radius-lg,16px); background:linear-gradient(135deg,#fff,#fff7f8); box-shadow:var(--shadow-card,0 1px 2px #17223508); }
#sms2apiConsole .sms2api-eyebrow,#sms2apiConsole .sms2api-kicker { display:block; color:var(--accent,#b62335); font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
#sms2apiConsole h1,#sms2apiConsole h2,#sms2apiConsole h3,#sms2apiConsole p { margin:0; }
#sms2apiConsole h1 { margin-top:5px; font-size:clamp(24px,3vw,34px); letter-spacing:-.03em; } #sms2apiConsole .sms2api-hero p { margin-top:8px; color:var(--ink-soft,#52617a); }
#sms2apiConsole .sms2api-hero-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
#sms2apiConsole .sms2api-button { min-height:36px; display:inline-flex; align-items:center; justify-content:center; border:1px solid transparent; border-radius:9px; padding:0 14px; font-size:12px; font-weight:600; cursor:pointer; text-decoration:none; }
#sms2apiConsole .sms2api-button:focus-visible,#sms2apiConsole input:focus-visible,#sms2apiConsole select:focus-visible { outline:3px solid var(--focus-ring,#b6233530); outline-offset:2px; }
#sms2apiConsole .sms2api-button:disabled { cursor:not-allowed; opacity:.48; } #sms2apiConsole .sms2api-button-primary { color:#fff; background:var(--accent,#b62335); border-color:var(--accent,#b62335); } #sms2apiConsole .sms2api-button-primary:hover:not(:disabled) { background:var(--accent-strong,#951b2b); }
#sms2apiConsole .sms2api-button-ghost,#sms2apiConsole .sms2api-button-light { color:var(--ink-soft,#52617a); background:#fff; border-color:var(--rule,#dfe6ef); } #sms2apiConsole .sms2api-button-light:hover:not(:disabled),#sms2apiConsole .sms2api-button-ghost:hover { color:var(--accent,#b62335); border-color:#e6b9c0; background:#fffafa; }
#sms2apiConsole .sms2api-button-small { min-height:29px; padding:0 10px; font-size:11px; }
#sms2apiConsole .sms2api-status { display:flex; align-items:center; justify-content:space-between; gap:22px; padding:20px 24px; border:1px solid var(--rule,#dfe6ef); border-radius:var(--radius-lg,16px); background:#fff; }
#sms2apiConsole .sms2api-status-main { display:flex; align-items:center; gap:13px; min-width:0; } #sms2apiConsole .sms2api-status-icon { display:grid; place-items:center; width:38px; height:38px; flex:0 0 auto; border-radius:12px; background:var(--danger-soft,#fff0f3); color:var(--danger,#c7354b); font-size:18px; font-weight:800; } #sms2apiConsole .sms2api-status-icon.is-good { background:var(--good-soft,#edf9f3); color:var(--good,#18845c); }
#sms2apiConsole .sms2api-status h2 { margin-top:3px; font-size:17px; } #sms2apiConsole .sms2api-status p { margin-top:4px; color:var(--ink-soft,#52617a); font-size:12px; } #sms2apiConsole .sms2api-status-facts { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:20px; } #sms2apiConsole .sms2api-status-facts div { display:grid; gap:4px; min-width:110px; } #sms2apiConsole .sms2api-status-facts small { color:var(--ink-faint,#8290a5); font-size:11px; } #sms2apiConsole code { color:var(--ink-soft,#52617a); font-size:11px; }
#sms2apiConsole .sms2api-badge { display:inline-flex; width:max-content; min-height:22px; align-items:center; padding:0 8px; border-radius:999px; background:#f3f5f8; color:var(--ink-soft,#52617a); font-size:11px; font-weight:700; } #sms2apiConsole .sms2api-badge-good { color:var(--good,#18845c); background:var(--good-soft,#edf9f3); } #sms2apiConsole .sms2api-badge-warn { color:var(--warn,#a86a16); background:var(--warn-soft,#fff7e8); } #sms2apiConsole .sms2api-badge-bad { color:var(--danger,#c7354b); background:var(--danger-soft,#fff0f3); }
#sms2apiConsole .sms2api-callout { display:flex; align-items:flex-start; gap:10px; padding:13px 16px; border-radius:11px; font-size:12px; } #sms2apiConsole .sms2api-callout-info { color:var(--ink-soft,#52617a); border:1px solid #d8e4f5; background:#f5f8fd; } #sms2apiConsole .sms2api-callout-warn { color:#805719; border:1px solid #f2dfb7; background:var(--warn-soft,#fff7e8); }
#sms2apiConsole .sms2api-panel { min-width:0; padding:24px; border:1px solid var(--rule,#dfe6ef); border-radius:var(--radius-lg,16px); background:#fff; box-shadow:var(--shadow-card,0 1px 2px #17223508); } #sms2apiConsole .sms2api-panel-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; } #sms2apiConsole .sms2api-panel-heading h2 { margin-top:3px; font-size:19px; } #sms2apiConsole .sms2api-panel-heading>span { color:var(--ink-faint,#8290a5); font-size:11px; }
#sms2apiConsole .sms2api-tabs { display:flex; gap:4px; overflow:auto; margin:20px 0 14px; border-bottom:1px solid var(--rule-soft,#edf1f6); } #sms2apiConsole .sms2api-tab { flex:0 0 auto; padding:10px 12px; border:0; border-bottom:2px solid transparent; background:transparent; color:var(--ink-soft,#52617a); cursor:pointer; font-size:12px; font-weight:600; } #sms2apiConsole .sms2api-tab:hover,#sms2apiConsole .sms2api-tab.is-active { color:var(--accent,#b62335); border-bottom-color:var(--accent,#b62335); }
#sms2apiConsole .sms2api-toolbar { display:flex; align-items:center; gap:8px; margin-bottom:10px; } #sms2apiConsole .sms2api-search { flex:1 1 280px; } #sms2apiConsole input,#sms2apiConsole select { width:100%; min-height:37px; padding:0 11px; border:1px solid var(--rule,#dfe6ef); border-radius:9px; background:#fff; color:var(--ink,#172235); font-size:12px; } #sms2apiConsole .sms2api-toolbar select { width:132px; }
#sms2apiConsole .sms2api-filters { display:flex; align-items:flex-end; gap:8px; margin-bottom:12px; padding:12px; border:1px solid var(--rule-soft,#edf1f6); border-radius:10px; background:var(--surface-muted,#f7f9fc); } #sms2apiConsole .sms2api-filters label,#sms2apiConsole .sms2api-modal-body>label { display:grid; flex:1 1 180px; gap:4px; color:var(--ink-soft,#52617a); font-size:11px; font-weight:600; }
#sms2apiConsole .sms2api-table-wrap { min-height:130px; overflow:auto; border:1px solid var(--rule,#dfe6ef); border-radius:11px; } #sms2apiConsole .sms2api-table { width:100%; min-width:720px; border-collapse:collapse; text-align:left; } #sms2apiConsole .sms2api-table th { background:#f7f9fc; color:var(--ink-soft,#52617a); font-size:11px; font-weight:700; white-space:nowrap; } #sms2apiConsole .sms2api-table td,#sms2apiConsole .sms2api-table th { padding:12px 13px; border-bottom:1px solid var(--rule-soft,#edf1f6); vertical-align:middle; } #sms2apiConsole .sms2api-table tbody tr:last-child td { border-bottom:0; } #sms2apiConsole .sms2api-table tbody tr:hover { background:#fffafb; }
#sms2apiConsole .sms2api-selection,#sms2apiConsole .sms2api-pagination { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:14px; color:var(--ink-faint,#8290a5); font-size:11px; } #sms2apiConsole .sms2api-pagination>div,#sms2apiConsole .sms2api-modal-actions { display:flex; gap:7px; } #sms2apiConsole .sms2api-empty { display:grid; place-content:center; justify-items:center; gap:7px; min-height:210px; color:var(--ink-soft,#52617a); text-align:center; } #sms2apiConsole .sms2api-empty strong { color:var(--ink,#172235); } #sms2apiConsole .sms2api-empty p { max-width:400px; font-size:12px; }
#sms2apiConsole .sms2api-loading { display:flex; justify-content:center; align-items:center; gap:8px; min-height:190px; } #sms2apiConsole .sms2api-loading i { width:8px; height:8px; border-radius:50%; background:var(--accent,#b62335); animation:sms2api-pulse 1s ease-in-out infinite; } #sms2apiConsole .sms2api-loading i:nth-child(2) { animation-delay:.12s; } #sms2apiConsole .sms2api-loading i:nth-child(3) { animation-delay:.24s; } @keyframes sms2api-pulse { 0%,100%{opacity:.25;transform:translateY(0)} 50%{opacity:1;transform:translateY(-3px)} }
#sms2apiConsole .sms2api-guide { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:16px; } #sms2apiConsole .sms2api-guide article { padding:15px; border:1px solid var(--rule-soft,#edf1f6); border-radius:11px; background:var(--surface-muted,#f7f9fc); } #sms2apiConsole .sms2api-guide p { margin-top:5px; color:var(--ink-soft,#52617a); font-size:12px; }
#sms2apiConsole .sms2api-modal-layer { position:fixed; z-index:100; inset:0; display:grid; place-items:center; padding:18px; background:#17223566; } #sms2apiConsole .sms2api-modal-layer[hidden] { display:none; } #sms2apiConsole .sms2api-modal { width:min(560px,100%); max-height:90vh; overflow:auto; border-radius:16px; background:#fff; box-shadow:0 24px 70px #17223542; } #sms2apiConsole .sms2api-modal-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:21px 24px 15px; border-bottom:1px solid var(--rule-soft,#edf1f6); } #sms2apiConsole .sms2api-modal-head h2 { font-size:19px; } #sms2apiConsole .sms2api-modal-close { width:31px; height:31px; border:1px solid var(--rule,#dfe6ef); border-radius:8px; background:#fff; color:var(--ink-soft,#52617a); cursor:pointer; font-size:20px; } #sms2apiConsole .sms2api-modal-body { display:grid; gap:15px; padding:21px 24px 24px; }
#sms2apiConsole .sms2api-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; } #sms2apiConsole .sms2api-form-grid label { display:grid; gap:5px; color:var(--ink-soft,#52617a); font-size:11px; font-weight:600; } #sms2apiConsole .sms2api-form-grid label:first-child { grid-column:1/-1; } #sms2apiConsole .sms2api-modal-note { padding:11px 12px; border-radius:9px; background:var(--surface-muted,#f7f9fc); color:var(--ink-soft,#52617a); font-size:12px; } #sms2apiConsole .sms2api-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; } #sms2apiConsole .sms2api-summary div { display:grid; gap:3px; padding:11px 12px; border:1px solid var(--rule-soft,#edf1f6); border-radius:9px; } #sms2apiConsole .sms2api-summary small { color:var(--ink-faint,#8290a5); } #sms2apiConsole .sms2api-summary strong { font-size:16px; } #sms2apiConsole .sms2api-confirm { display:flex!important; flex-direction:row; align-items:flex-start; gap:8px; color:var(--ink,#172235); font-size:12px; } #sms2apiConsole .sms2api-confirm input { width:16px; min-height:16px; }
#sms2apiConsole .sms2api-inline-error { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 13px; border:1px solid #f1c8cf; border-radius:9px; background:var(--danger-soft,#fff0f3); color:#a52d42; font-size:12px; } #sms2apiConsole .sms2api-receipt { display:grid; justify-items:center; gap:8px; padding:8px 0; text-align:center; } #sms2apiConsole .sms2api-receipt p { color:var(--ink-soft,#52617a); font-size:12px; }
#sms2apiConsole .sr-only { position:absolute; width:1px; height:1px; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
@media (max-width:900px) { #sms2apiConsole .sms2api-hero,#sms2apiConsole .sms2api-status { align-items:stretch; flex-direction:column; } #sms2apiConsole .sms2api-hero-actions,#sms2apiConsole .sms2api-status-facts { justify-content:flex-start; } #sms2apiConsole .sms2api-guide { grid-template-columns:1fr; } }
@media (max-width:620px) { #sms2apiConsole .sms2api-hero,#sms2apiConsole .sms2api-panel { padding:17px 14px; border-radius:12px; } #sms2apiConsole .sms2api-toolbar,#sms2apiConsole .sms2api-filters { align-items:stretch; flex-direction:column; } #sms2apiConsole .sms2api-toolbar select { width:100%; } #sms2apiConsole .sms2api-toolbar .sms2api-button { width:100%; } #sms2apiConsole .sms2api-form-grid,#sms2apiConsole .sms2api-summary { grid-template-columns:1fr; } #sms2apiConsole .sms2api-form-grid label:first-child { grid-column:auto; } }
@media (prefers-reduced-motion:reduce) { #sms2apiConsole * { animation-duration:.001ms!important; transition-duration:.001ms!important; } }
