:root { --ink:#18233c; --muted:#69758d; --line:#dfe6f2; --blue:#3266ff; --blue-dark:#1d4ed8; --background:#f6f8fc; --success:#087a5a; --warn:#ab6400; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ink); background:var(--background); }
* { box-sizing:border-box; }
body { min-width:320px; min-height:100vh; margin:0; background:radial-gradient(circle at 12% -5%,#dce8ff 0,transparent 30rem),radial-gradient(circle at 100% 0,#e2f8f0 0,transparent 26rem),var(--background); }
button,input,select { font:inherit; } button { cursor:pointer; }
.page-shell { width:min(1080px,calc(100% - 40px)); margin:0 auto; padding:62px 0 72px; }
.hero { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px; }
.brand-mark { display:grid; width:48px; height:48px; place-items:center; border-radius:14px; color:white; background:linear-gradient(135deg,#356cff,#7b4dff); font-size:25px; font-weight:800; box-shadow:0 10px 28px rgb(50 102 255 / 24%); }
.eyebrow,.step { margin:0 0 5px; color:var(--blue); font-size:11px; font-weight:800; letter-spacing:.13em; }
h1,h2,p { margin-top:0; } h1 { margin-bottom:5px; font-size:clamp(28px,4vw,38px); letter-spacing:-.04em; } h2 { margin-bottom:0; font-size:20px; letter-spacing:-.025em; }
.intro { margin-bottom:0; color:var(--muted); font-size:15px; }
.connection-state,.count-badge { padding:8px 11px; border:1px solid var(--line); border-radius:999px; color:var(--muted); background:rgb(255 255 255 / 72%); font-size:12px; font-weight:700; white-space:nowrap; }
.connection-state.ready { border-color:#b8e4d7; color:var(--success); background:#f2fcf8; }.connection-state.missing,.connection-state.error { border-color:#ffd9a0; color:var(--warn); background:#fff9ed; }
.notice { display:flex; align-items:flex-start; gap:10px; margin:30px 0 16px; padding:12px 15px; border:1px solid #dbe5fc; border-radius:13px; color:#4b5b78; background:rgb(248 251 255 / 82%); font-size:13px; line-height:1.55; }.notice span { color:var(--blue); font-size:16px; }.notice p { margin:0; }
.payment-panel { margin-bottom:16px; padding:22px; border:1px solid #dbe5fc; border-radius:16px; background:rgb(255 255 255 / 84%); box-shadow:0 10px 30px rgb(31 55 100 / 5%); }.payment-panel-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }.payment-panel-heading h2 { font-size:18px; }.payment-panel-heading p:not(.step) { margin:7px 0 0; color:var(--muted); font-size:12px; line-height:1.5; }.payment-availability { flex:0 0 auto; padding:7px 10px; border:1px solid var(--line); border-radius:999px; color:var(--muted); background:#fff; font-size:11px; font-weight:800; white-space:nowrap; }.payment-availability.ready { border-color:#b8e4d7; color:var(--success); background:#f2fcf8; }.payment-availability.unavailable { border-color:#ffd9a0; color:var(--warn); background:#fff9ed; }.payment-status { margin:17px 0 0; color:var(--muted); font-size:12px; line-height:1.5; }.payment-status.success { color:var(--success); }.payment-status.error { color:#ad453e; }.payment-products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:18px; }.payment-products[hidden] { display:none; }.payment-product { display:grid; grid-template-columns:1fr auto; gap:12px; padding:16px; border:1px solid #dce5f4; border-radius:14px; background:linear-gradient(135deg,#fff,#fafcff); }.payment-product-copy { min-width:0; }.payment-product h3 { margin:0; color:#1f315b; font-size:15px; letter-spacing:-.02em; overflow-wrap:anywhere; }.payment-product p { margin:6px 0 0; color:var(--muted); font-size:11px; line-height:1.45; overflow-wrap:anywhere; }.payment-price { justify-self:end; color:#1d4ed8; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:14px; white-space:nowrap; }.payment-button { grid-column:1/-1; width:100%; min-height:38px; font-size:12px; }
.access-panel { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.8fr); align-items:end; gap:22px; margin-bottom:16px; padding:20px 22px; border:1px solid #dbe5fc; border-radius:16px; background:rgb(255 255 255 / 84%); box-shadow:0 10px 30px rgb(31 55 100 / 5%); }.access-panel h2 { font-size:18px; }.access-panel p:not(.step):not(.access-status) { margin:7px 0 0; color:var(--muted); font-size:12px; line-height:1.5; }.access-form label { display:block; margin-bottom:7px; color:#4d5c77; font-size:12px; font-weight:750; }.access-input-row { display:flex; gap:9px; }.access-input-row input { width:100%; min-width:0; height:42px; padding:0 12px; border:1px solid var(--line); border-radius:10px; outline:none; color:var(--ink); background:#fff; }.access-input-row input:focus { border-color:#7ba0ff; box-shadow:0 0 0 3px rgb(50 102 255 / 12%); }.access-input-row .primary-button { flex:0 0 auto; min-height:42px; white-space:nowrap; }.access-status { grid-column:1/-1; margin:0; color:var(--muted); font-size:12px; }.access-status.error { color:#ad453e; }.access-status.success { color:var(--success); }
.feedback { margin:0 0 16px; padding:11px 14px; border:1px solid #bde4d7; border-radius:12px; color:var(--success); background:#f2fcf8; font-size:13px; }.feedback.error { border-color:#ffd1cc; color:#ad453e; background:#fff6f5; }
.text-link { color:var(--blue); font-size:13px; font-weight:750; text-decoration:none; white-space:nowrap; }.text-link:hover { color:var(--blue-dark); text-decoration:underline; }.admin-shell { width:min(720px,calc(100% - 40px)); }.admin-panel { margin-top:22px; }.admin-copy { margin:-6px 0 20px; color:var(--muted); font-size:13px; line-height:1.6; }.stacked-form { display:grid; gap:18px; }.stacked-form input { width:100%; height:44px; padding:0 12px; border:1px solid var(--line); border-radius:10px; outline:none; color:var(--ink); background:#fff; }.stacked-form input:focus { border-color:#7ba0ff; box-shadow:0 0 0 3px rgb(50 102 255 / 12%); }.admin-result { margin-top:24px; padding:18px; border:1px solid #bde4d7; border-radius:14px; background:#f6fffb; }.admin-result[hidden] { display:none; }.result-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }.admin-result h2 { font-size:17px; }.admin-result p { margin:8px 0 13px; color:#547061; font-size:12px; line-height:1.5; }.secret-output { display:block; width:100%; overflow-wrap:anywhere; padding:13px; border:1px solid #c6e9db; border-radius:10px; color:#1f315b; background:#fff; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:13px; font-weight:700; line-height:1.5; }.secret-output:focus { outline:3px solid rgb(50 102 255 / 16%); }.result-actions { display:flex; gap:10px; margin-top:13px; }.result-actions button { flex:1; }.admin-result small { display:block; margin-top:12px; color:var(--muted); font-size:11px; line-height:1.5; }
.dashboard-grid { display:grid; grid-template-columns:minmax(260px,.66fr) minmax(0,1.34fr); gap:20px; align-items:start; }.dashboard-grid[hidden] { display:none; }
.panel { border:1px solid rgb(220 228 241 / 92%); border-radius:20px; padding:25px; background:rgb(255 255 255 / 88%); box-shadow:0 12px 36px rgb(31 55 100 / 6%); backdrop-filter:blur(12px); }
.panel-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:24px; }.numbers-heading { margin-bottom:16px; }
.text-button { padding:2px 0; border:0; color:var(--blue); background:transparent; font-size:13px; font-weight:750; }.text-button:hover { color:var(--blue-dark); }
label>span { display:block; margin-bottom:7px; color:#4d5c77; font-size:12px; font-weight:750; } select { width:100%; height:44px; padding:0 12px; border:1px solid var(--line); border-radius:10px; outline:none; color:var(--ink); background:#fff; } select:focus { border-color:#7ba0ff; box-shadow:0 0 0 3px rgb(50 102 255 / 12%); }
.request-hint { margin:16px 0 0; color:var(--muted); font-size:12px; line-height:1.55; }.request-button { width:100%; margin-top:24px; }
.primary-button,.secondary-button,.ghost-button { display:inline-flex; min-height:40px; align-items:center; justify-content:center; gap:8px; border-radius:10px; padding:0 14px; font-size:13px; font-weight:800; transition:transform .12s,box-shadow .12s,background .12s; }.primary-button { border:1px solid var(--blue); color:white; background:var(--blue); box-shadow:0 7px 16px rgb(50 102 255 / 20%); }.primary-button:hover { background:var(--blue-dark); transform:translateY(-1px); }.secondary-button { border:1px solid var(--blue); color:var(--blue); background:#fff; }.secondary-button:hover { background:#f1f5ff; }.ghost-button { border:1px solid #d4ddeb; color:#596783; background:#fff; }.ghost-button:hover { border-color:#9eafce; background:#f8faff; } button:disabled { cursor:not-allowed; opacity:.55; transform:none!important; }
.empty-state { display:grid; min-height:260px; place-items:center; align-content:center; padding:24px; border:1px dashed #ccd8ed; border-radius:15px; text-align:center; color:var(--muted); }.empty-state[hidden] { display:none; }.empty-state span { color:#849cff; font-size:31px; }.empty-state p { margin:10px 0 4px; color:#536380; font-size:15px; font-weight:750; }.empty-state small { font-size:12px; line-height:1.5; }
.number-list { display:grid; gap:12px; }.number-card { padding:16px; border:1px solid #dce5f4; border-radius:15px; background:linear-gradient(135deg,#fff,#fafcff); }.number-card-top,.phone-row,.code-row,.number-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; }.country-badge,.status-badge { display:inline-flex; align-items:center; min-height:24px; padding:0 8px; border-radius:999px; font-size:11px; font-weight:800; }.country-badge { color:#5266a3; background:#edf2ff; }.status-badge { color:#68758c; background:#f1f4f8; }.status-badge.received { color:#087a5a; background:#e8faf3; }.status-badge.released { color:#748196; background:#f0f2f5; }.phone-row { margin:15px 0 13px; }.phone-row strong { overflow:hidden; color:#1f315b; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:19px; letter-spacing:.02em; text-overflow:ellipsis; white-space:nowrap; }.copy-button { width:34px; height:34px; flex:0 0 34px; border:1px solid var(--line); border-radius:9px; color:#52637f; background:#fff; font-size:16px; }.copy-button:hover { border-color:#a6b6d4; color:var(--blue); }.code-row { padding:11px 0; border-top:1px solid #edf1f7; border-bottom:1px solid #edf1f7; color:#69758d; font-size:12px; }.code-row output { color:var(--blue-dark); font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:16px; font-weight:800; letter-spacing:.1em; }.number-actions { margin-top:13px; }.number-actions button { flex:1; }
.payment-return-shell { width:min(720px,calc(100% - 40px)); }.payment-return-hero { margin-bottom:26px; }.payment-result-card { padding:26px; border:1px solid #dbe5fc; border-radius:20px; background:rgb(255 255 255 / 90%); box-shadow:0 12px 36px rgb(31 55 100 / 6%); }.payment-result-card[data-state="success"] { border-color:#bde4d7; }.payment-result-card[data-state="failed"],.payment-result-card[data-state="unavailable"],.payment-result-card[data-state="error"] { border-color:#ffd9d4; }.payment-result-header { display:flex; align-items:flex-start; gap:15px; }.payment-result-icon { display:grid; width:42px; height:42px; flex:0 0 42px; place-items:center; border-radius:50%; color:#52637f; background:#eef2f7; font-size:22px; font-weight:850; }.payment-result-icon[data-state="success"] { color:var(--success); background:#e8faf3; }.payment-result-icon[data-state="failed"],.payment-result-icon[data-state="unavailable"],.payment-result-icon[data-state="error"] { color:#ad453e; background:#fff0ee; }.payment-result-status { margin:1px 0 4px; color:#68758c; font-size:12px; font-weight:800; }.payment-result-status[data-state="success"] { color:var(--success); }.payment-result-status[data-state="failed"],.payment-result-status[data-state="unavailable"],.payment-result-status[data-state="error"] { color:#ad453e; }.payment-result-header h2 { margin-bottom:5px; font-size:21px; }.payment-result-message { margin:0; color:var(--muted); font-size:13px; line-height:1.55; }.payment-order-details { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:23px 0 0; }.payment-order-detail { min-width:0; padding:11px 12px; border:1px solid #e4ebf6; border-radius:11px; background:#fbfcff; }.payment-order-detail dt { color:var(--muted); font-size:11px; font-weight:750; }.payment-order-detail dd { overflow:hidden; margin:5px 0 0; color:#26375d; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:12px; font-weight:750; text-overflow:ellipsis; white-space:nowrap; }.payment-access-key { display:grid; gap:12px; margin-top:22px; padding:17px; border:1px solid #bde4d7; border-radius:14px; background:#f6fffb; }.payment-access-key[hidden] { display:none; }.payment-access-key h3 { margin:0; font-size:16px; }.payment-access-key p:not(.step):not(.payment-copy-status) { margin:6px 0 0; color:#547061; font-size:12px; line-height:1.5; }.payment-copy-status { min-height:18px; margin:0; color:var(--success); font-size:12px; }.payment-result-actions { display:flex; gap:10px; margin-top:22px; }.payment-result-actions > * { flex:1; }.payment-result-actions a { text-decoration:none; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible { outline:3px solid rgb(50 102 255 / 28%); outline-offset:3px; }
@media (max-width:760px) { .page-shell { width:min(100% - 28px,620px); padding:30px 0 45px; }.hero { grid-template-columns:auto 1fr; }.connection-state { grid-column:1/-1; justify-self:start; }.payment-products { grid-template-columns:1fr; }.access-panel,.dashboard-grid { grid-template-columns:1fr; }.access-panel { gap:16px; }.panel { padding:20px; border-radius:16px; }.payment-return-shell { width:min(100% - 28px,620px); }.payment-result-card { padding:20px; border-radius:16px; }.payment-order-details { grid-template-columns:1fr; }.payment-result-actions,.result-actions { flex-direction:column; } }
@media (max-width:420px) { .hero { gap:13px; }.brand-mark { width:42px; height:42px; }.phone-row strong { font-size:16px; }.number-actions { gap:8px; }.number-actions button { padding:0 8px; font-size:12px; } }

.account-dashboard { margin-bottom:16px; }.account-dashboard[hidden] { display:none; }.account-dashboard-copy { margin:-8px 0 20px; color:var(--muted); font-size:13px; line-height:1.55; }.credential-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }.credential-item { min-width:0; padding:15px; border:1px solid #dce5f4; border-radius:14px; background:linear-gradient(135deg,#fff,#fafcff); }.credential-label { display:block; margin-bottom:8px; color:#69758d; font-size:11px; font-weight:800; }.credential-value { display:flex; align-items:center; gap:9px; }.credential-output { min-width:0; flex:1; overflow-wrap:anywhere; color:#1f315b; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:14px; font-weight:750; line-height:1.45; }.credential-output:focus { outline:3px solid rgb(50 102 255 / 16%); }

.admin-shell { width:min(1080px,calc(100% - 40px)); }.account-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }.account-fields[hidden] { display:none; }.result-badges { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }.key-type-badge,.key-status-badge { display:inline-flex; align-items:center; min-height:24px; padding:0 8px; border-radius:999px; color:#5266a3; background:#edf2ff; font-size:11px; font-weight:800; }.key-status-badge { color:var(--success); background:#e8faf3; }.key-status-badge.revoked { color:#748196; background:#f0f2f5; }.admin-list-heading { align-items:center; margin-bottom:18px; }.admin-list-heading .ghost-button { flex:0 0 auto; }.key-list-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }.key-list-section { min-width:0; padding:16px; border:1px solid #dce5f4; border-radius:15px; background:linear-gradient(135deg,#fff,#fafcff); }.key-list-title-row { display:flex; align-items:center; justify-content:space-between; gap:10px; }.key-list-title-row h3 { margin:0; color:#26375d; font-size:15px; letter-spacing:-.015em; }.key-list-empty { margin:14px 0 0; color:var(--muted); font-size:12px; }.key-list-empty[hidden] { display:none; }.managed-key-list { display:grid; gap:10px; margin-top:13px; }.managed-key-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; padding:13px; border:1px solid #e1e8f4; border-radius:12px; background:#fff; }.managed-key-header { display:flex; align-items:center; gap:7px; }.managed-key-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-column:1/-1; gap:8px; margin:0; }.managed-key-details div { min-width:0; }.managed-key-details dt { color:var(--muted); font-size:10px; font-weight:750; }.managed-key-details dd { overflow:hidden; margin:3px 0 0; color:#42516e; font-size:11px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }.revoke-key-button { align-self:start; min-height:32px; padding:0 10px; font-size:11px; white-space:nowrap; }

@media (max-width:760px) { .credential-list,.account-fields,.key-list-grid { grid-template-columns:1fr; }.admin-shell { width:min(100% - 28px,620px); }.admin-list-heading { align-items:flex-start; }.managed-key-details { grid-template-columns:1fr; }.managed-key-row { grid-template-columns:1fr; }.revoke-key-button { width:100%; }.result-badges { justify-content:flex-start; } }

/* 管理台：账号库存默认展示，按需切换到手机号验证码密钥。 */
.admin-management-heading { margin-bottom:18px; }
.management-tabs { display:flex; gap:7px; margin:-2px 0 24px; padding:5px; border:1px solid #e0e7f2; border-radius:12px; background:#f5f8fd; }
.management-tab { min-height:38px; flex:1; border:1px solid transparent; border-radius:8px; padding:0 12px; color:#61708b; background:transparent; font-size:13px; font-weight:800; }
.management-tab[aria-selected="true"] { border-color:#d4e0ff; color:#2457e8; background:#fff; box-shadow:0 2px 7px rgb(49 82 140 / 9%); }
.management-view[hidden] { display:none; }
.management-view-heading { margin-bottom:20px; }
.management-view-heading h3,.management-list h4,.admin-result h3 { margin:0; color:#26375d; font-size:17px; letter-spacing:-.02em; }
.management-view-heading p,.management-list-heading p { margin:7px 0 0; color:var(--muted); font-size:12px; line-height:1.55; }
.credential-entry-form { padding:18px; border:1px solid #dce5f4; border-radius:15px; background:linear-gradient(135deg,#fff,#fafcff); }
.credential-entry-form .request-button,.management-view > .stacked-form .request-button { margin-top:6px; }
.management-list { margin-top:28px; padding-top:24px; border-top:1px solid #e5ebf4; }
.management-list-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.account-list-controls { display:flex; align-items:flex-end; gap:10px; flex:0 0 auto; }
.account-status-filter { min-width:150px; }
.account-status-filter > span { margin-bottom:5px; font-size:10px; }
.account-status-filter select { height:34px; min-width:150px; padding:0 9px; font-size:12px; }
.compact-button { min-height:34px; flex:0 0 auto; padding:0 11px; font-size:12px; white-space:nowrap; }
.account-record-row .key-status-badge.unissued { color:#916000; background:#fff5df; }
.account-record-row .key-status-badge.issued { color:var(--success); background:#e8faf3; }
.account-record-row .key-status-badge.revoked { color:#748196; background:#f0f2f5; }
.issue-key-button { align-self:start; min-height:32px; padding:0 10px; font-size:11px; white-space:nowrap; }
.account-record-actions { display:flex; align-items:flex-start; gap:7px; align-self:start; }
.account-record-actions button { min-height:32px; padding:0 10px; font-size:11px; white-space:nowrap; }
.view-key-button { color:#2457e8; border-color:#cbd8ff; }
.account-password-reveal { display:flex; align-items:center; gap:10px; grid-column:1/-1; min-width:0; margin-top:1px; padding:10px 11px; border:1px solid #ffe0a8; border-radius:10px; background:#fffaf0; }
.account-password-reveal > span { flex:0 0 auto; color:#916000; font-size:11px; font-weight:800; }
.account-password-output { min-width:0; flex:1; overflow-wrap:anywhere; color:#5c430d; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:12px; font-weight:750; line-height:1.45; }
.copy-password-button { flex:0 0 auto; min-height:30px!important; padding:0 9px!important; color:#916000; border-color:#f0cf8b; font-size:11px!important; }

@media (max-width:760px) {
  .management-list-heading { align-items:flex-start; flex-direction:column; }
  .account-list-controls { width:100%; align-items:stretch; flex-direction:column; }
  .account-status-filter,.account-status-filter select { width:100%; }
  .compact-button { width:100%; }
  .issue-key-button { width:100%; }
  .account-record-actions { width:100%; flex-direction:column; }
  .account-record-actions button { width:100%; }
  .account-password-reveal { align-items:stretch; flex-wrap:wrap; }
  .account-password-output { flex-basis:calc(100% - 80px); }
  .copy-password-button { margin-left:auto; }
}

.payment-pricing { display:flex; flex-direction:column; align-items:flex-end; gap:7px; }
.payment-stock { color:#087443; background:#e7f8ee; border:1px solid #afe4c6; border-radius:6px; padding:4px 7px; font-size:12px; font-weight:700; white-space:nowrap; }
.product-editor-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:16px 0 24px; }
.product-editor { border:1px solid var(--line); padding:16px; border-radius:12px; min-width:0; }
.product-editor h4 { margin:0; }
.product-editor textarea { width:100%; min-height:72px; resize:vertical; border:1px solid var(--line); border-radius:8px; padding:10px; font:inherit; }
.product-editor .product-enabled { display:flex; align-items:center; gap:8px; }
.product-enabled input { width:auto; min-height:0; }
.list-pagination { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:12px; padding-top:16px; font-size:13px; color:var(--muted); }
.list-pagination label { display:flex; align-items:center; gap:6px; }
.list-pagination select { width:auto; }
@media(max-width:760px) { .product-editor-list { grid-template-columns:1fr; } }

/* Independent admin workspaces and compact task groups. */
.admin-shell { width:min(1180px,calc(100% - 40px)); }
#adminLoginPanel { max-width:540px; margin:32px auto; }
#adminManagementPanel { padding:0; overflow:hidden; }
.admin-workspace { display:grid; grid-template-columns:205px minmax(0,1fr); }
.admin-primary-nav { padding:25px 14px; background:#f6f8fc; border-right:1px solid var(--line); }
.admin-nav-label { margin:0 12px 16px; font-size:11px; font-weight:800; color:var(--muted); letter-spacing:.08em; }
.admin-nav-button { display:flex; flex-direction:column; gap:6px; text-align:left; width:100%; padding:15px 13px; margin-bottom:8px; border:1px solid transparent; border-radius:10px; background:transparent; color:#52617b; }
.admin-nav-button strong { font-size:15px; }.admin-nav-button span { font-size:11px; font-weight:400; }
.admin-nav-button[aria-selected="true"] { color:#2457e8; background:#fff; border-color:#d5e1ff; box-shadow:0 3px 10px #2457e80a; }
.admin-content { min-width:0; padding:28px; }
.admin-section[hidden] { display:none; }
.admin-section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:15px; margin-bottom:24px; }
.admin-section-heading h2 { font-size:24px; margin:0; }.admin-section-heading p:not(.step) { color:var(--muted); font-size:13px; margin:9px 0 0; line-height:1.6; }
.admin-info-note { padding:12px 15px; margin:0 0 24px; border-radius:9px; background:#f1f5ff; color:#52668f; font-size:12px; line-height:1.7; }
.admin-action-card { border:1px solid var(--line); border-radius:12px; margin:18px 0; background:#fbfcff; }
.admin-action-card summary { cursor:pointer; padding:16px; color:#26375d; font-size:14px; }
.admin-action-card summary span { display:block; margin:6px 0 0 17px; color:var(--muted); font-size:12px; font-weight:400; }
.admin-action-body { padding:0 18px 18px; }.admin-action-body .stacked-form { margin-top:14px; }
.admin-advanced { margin-top:24px; }.admin-advanced .management-list-heading { margin-bottom:16px; }
.admin-section .management-view-heading { margin-bottom:12px; }
.admin-section .management-list { margin-top:24px; }
.admin-section .account-list-controls { flex-wrap:wrap; }
.admin-section .product-editor-list { display:block; margin:0; }
.product-group + .product-group { margin-top:30px; }.product-group > h3 { font-size:16px; margin:0 0 14px; color:#26375d; }
.product-group-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.product-card-heading { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:4px; }
.product-card-heading h4 { font-size:14px; }.product-state { border-radius:6px; padding:4px 7px; font-size:11px; font-weight:700; }
.product-state.enabled { color:#087443; background:#e7f8ee; }.product-state.disabled { color:#68758c; background:#eef1f6; }
.product-save-feedback { min-height:18px; margin:0; color:#52668f; font-size:12px; }
.admin-nav-button:focus-visible,summary:focus-visible,textarea:focus-visible { outline:3px solid #3266ff47; outline-offset:3px; }
@media(max-width:760px) {
 .admin-shell { width:calc(100% - 28px); }.admin-workspace { grid-template-columns:1fr; }
 .admin-primary-nav { display:grid; grid-template-columns:1fr 1fr; gap:8px; border-right:0; border-bottom:1px solid var(--line); padding:12px; }
 .admin-nav-label { display:none; }.admin-nav-button { margin:0; padding:12px; }.admin-content { padding:20px 16px; }
 .admin-section-heading { flex-wrap:wrap; }.admin-section-heading h2 { font-size:21px; }.product-group-grid { grid-template-columns:1fr; }
}
