/* XinXin 14 · Application components. All surfaces use the same system. */
body.app-body .wrap.app-frame {max-width:1580px;padding:18px clamp(14px,2.4vw,34px) 28px}
body.app-body .topbar {top:12px;min-height:70px;margin:0 0 22px;padding:12px 18px;gap:20px;border:1px solid rgba(222,230,242,.94)!important;border-radius:var(--v14-r-lg)!important;background:rgba(255,255,255,.9)!important;box-shadow:var(--v14-shadow-sm)!important;backdrop-filter:blur(22px) saturate(1.25)}
body.app-body .topbar .brand {gap:12px}
body.app-body .brand-mark {width:43px;height:43px;border-radius:14px;background:linear-gradient(145deg,#3451aa,#6682ed 78%);box-shadow:0 6px 18px rgba(65,89,189,.20)!important;font-size:18px;font-weight:800}
body.app-body .brand-copy {display:grid;gap:0;line-height:1.3}
body.app-body .brand-copy strong {font-size:17px;font-weight:820;letter-spacing:-.05em;color:var(--v14-ink)}
body.app-body .brand-copy b {font-size:10px;font-weight:650;letter-spacing:.04em;color:var(--v14-subtle)}
body.app-body .topbar-center {gap:10px}
body.app-body .topbar-status {border-color:#dcefe7!important;background:#f2fbf7!important;color:#23846b!important;font-weight:740;box-shadow:none!important;padding:8px 13px;font-size:11px}
body.app-body .live-dot {width:7px;height:7px;background:#25ad8b;box-shadow:0 0 0 4px rgba(37,173,139,.095)}
body.app-body .endpoint-mini {background:var(--v14-surface-soft)!important;border-color:var(--v14-edge)!important;box-shadow:none!important;padding:8px 12px;border-radius:12px!important}
body.app-body .endpoint-mini code {max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:var(--v14-body)}
body.app-body .navlinks {gap:7px}
body.app-body .nav-text {border:1px solid transparent;padding:10px 12px;font-size:12px;color:var(--v14-body)!important;font-weight:680;border-radius:11px}
body.app-body .nav-text:hover {background:var(--v14-accent-soft);border-color:#e5eaff;color:var(--v14-accent-ink)!important}
body.app-body .footer {margin-top:30px;color:#94a0ae;font-size:11px;display:flex;justify-content:center;flex-wrap:wrap;gap:10px}
body.app-body .footer code {color:#7f8ea5}
body.app-body .page-main {min-height:65vh}
body.app-body .desktop-command-head {display:none!important} /* remove repeated giant headers on every module */
body.app-body .mobile-console-head {display:none!important}
/* Workbench anatomy */
body.app-body :is(.user-console-shell,.admin-shell-v6).console-shell {display:grid!important;grid-template-columns:255px minmax(0,1fr)!important;align-items:start!important;gap:22px!important;max-width:100%!important;margin:0 auto!important}
body.app-body :is(.user-page-sidebar,.admin-sidebar-v6).console-sidebar {position:sticky!important;top:103px!important;min-width:0;max-width:100%;max-height:calc(100dvh - 115px);overflow-y:auto;overflow-x:hidden;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;margin:0!important;padding:15px 11px 17px!important;background:rgba(255,255,255,.94)!important;border:1px solid var(--v14-edge)!important;border-radius:var(--v14-r-lg)!important;box-shadow:var(--v14-shadow-sm)!important;scrollbar-width:thin;scrollbar-color:#d7dfed transparent}
body.app-body .user-sidebar-section {display:block!important;margin:0!important}
body.app-body .user-sidebar-card {display:flex!important;align-items:center;gap:10px;min-width:0;padding:12px 10px 17px!important;margin:0 0 6px!important;border-bottom:1px solid var(--v14-edge)!important;background:transparent!important;border-radius:0!important;box-shadow:none!important}
body.app-body .user-sidebar-avatar {width:39px;height:39px;border-radius:14px;background:#e8edff!important;color:#5266c2!important;box-shadow:none!important;flex:0 0 39px}
body.app-body .user-sidebar-copy {min-width:0;flex:1}
body.app-body .user-sidebar-copy strong {color:var(--v14-ink)!important;font-size:13px}
body.app-body .user-sidebar-copy small {color:var(--v14-subtle)!important;font-size:10px}
body.app-body .user-sidebar-balance {color:#3653b6!important;font-size:12px;white-space:nowrap}
body.app-body .sidebar-brand-panel {display:flex!important;gap:12px;align-items:center;border-bottom:1px solid var(--v14-edge)!important;background:transparent!important;padding:9px 10px 16px!important;margin-bottom:5px!important}
body.app-body .sidebar-brand-mark {display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:linear-gradient(150deg,#4059bc,#6b85e8);color:white;font-weight:800;box-shadow:none!important;flex:0 0 40px}
body.app-body .sidebar-brand-panel strong {color:var(--v14-ink)!important;font-size:13px}
body.app-body .sidebar-brand-panel small {color:var(--v14-subtle)!important;font-size:10px}
body.app-body .side-title {display:block!important;margin:20px 13px 7px!important;padding:0!important;font-size:10px!important;line-height:1.4;font-weight:750!important;letter-spacing:.11em!important;color:#96a2b4!important}
body.app-body .side-link {min-width:0;min-height:45px;display:flex;align-items:center;gap:11px;margin:2px 0!important;padding:9px 10px!important;border:1px solid transparent!important;border-radius:var(--v14-r-sm)!important;background:transparent!important;color:#56657a!important;font-size:12px!important;font-weight:680!important;box-shadow:none!important;transition:background var(--v14-fast) ease,color var(--v14-fast) ease,transform var(--v14-fast) ease!important}
body.app-body .side-link:hover {transform:translateX(2px);color:var(--v14-accent-ink)!important;background:#f5f7fc!important;border-color:#edf0f8!important}
body.app-body .side-link.active {color:#354da3!important;background:#edf1ff!important;border-color:#e1e8ff!important;box-shadow:inset 3px 0 0 #6379e8!important}
body.app-body .side-link span {display:grid!important;place-items:center!important;flex:0 0 29px;min-width:29px!important;height:29px!important;padding:0!important;border-radius:9px!important;background:#f1f4f9!important;color:#8290a5!important;font-size:10px!important;letter-spacing:0!important;font-weight:780!important;border:1px solid #ecf0f7!important}
body.app-body .side-link.active span {background:#dfe7ff!important;color:#3a58bd!important;border-color:#d7e0ff!important}
body.app-body .side-link em {font-size:12px!important;color:inherit!important;font-style:normal!important;letter-spacing:0!important}
body.app-body .side-link small {display:none!important}
body.app-body .sidebar-endpoint {margin-top:22px!important;padding:14px!important;min-width:0;overflow:hidden;background:var(--v14-surface-soft)!important;border:1px solid var(--v14-edge)!important;border-radius:var(--v14-r-md)!important;box-shadow:none!important}
body.app-body .sidebar-endpoint :is(small,b) {color:var(--v14-subtle)!important;font-weight:560!important;line-height:1.5}
body.app-body .sidebar-endpoint code {color:#4260b0!important;font-size:10px;overflow-wrap:anywhere}
body.app-body :is(.user-page-content,.admin-content-v6).multipage-content {display:grid!important;gap:18px!important;width:100%!important;padding:0!important;margin:0!important;min-width:0!important;max-width:100%!important}
body.app-body .workspace-hero-card {display:flex!important;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px!important;margin:0!important;padding:23px 26px!important;min-width:0;border:1px solid var(--v14-edge)!important;border-radius:var(--v14-r-lg)!important;background:#fff!important;box-shadow:var(--v14-shadow-sm)!important}
body.app-body .workspace-hero-card > div:first-child {min-width:0;flex:1 1 360px}
body.app-body .workspace-hero-card .page-breadcrumb {display:flex;align-items:center;gap:8px;color:var(--v14-subtle)!important;font-size:11px;font-weight:600}
body.app-body .workspace-hero-card .page-breadcrumb strong {color:#687ca0!important;font-weight:690}
body.app-body .workspace-hero-card h2 {margin:6px 0 5px;color:#263754!important;font-size:clamp(22px,2vw,28px)!important;font-weight:820!important;letter-spacing:-.035em;line-height:1.3}
body.app-body .workspace-hero-card p {max-width:67ch;color:var(--v14-subtle)!important;font-size:12px!important;line-height:1.8!important;margin:0!important}
body.app-body .workspace-hero-actions {display:flex;flex-wrap:wrap;gap:7px;max-width:100%}
body.app-body .pill-link {min-height:37px!important;padding:8px 12px!important;border:1px solid var(--v14-edge)!important;border-radius:10px!important;background:#fafbfe!important;color:#5b6d8a!important;font-size:11px!important;font-weight:690!important;box-shadow:none!important}
body.app-body .pill-link:hover {background:#edf1ff!important;color:#3d54b0!important;border-color:#dbe3ff!important}
/* Cards, sections, status */
body.app-body :is(.card,.module-card,.overview-story-card,.route-panel,.shop-product,.public-model-card,.home-pool-card) {border:1px solid var(--v14-edge)!important;border-radius:var(--v14-r-lg)!important;background:var(--v14-surface)!important;box-shadow:var(--v14-shadow-sm)!important;max-width:100%;min-width:0;transition:border-color var(--v14-smooth) ease,box-shadow var(--v14-smooth) ease,transform var(--v14-smooth) var(--v14-ease)!important}
body.app-body :is(.card,.module-card):hover {border-color:#d6e0f0!important}
body.app-body :is(.module-card,.card) {padding:clamp(16px,1.9vw,24px)!important}
body.app-body .module-section {display:grid;gap:18px;min-width:0;max-width:100%;animation:none!important}
body.app-body .module-heading {display:flex;justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;max-width:100%;margin:0 0 20px!important}
body.app-body .module-heading > div:first-child {min-width:0}
body.app-body :is(.module-heading,.section-heading) .eyebrow,body.app-body .eyebrow {color:#768dc1!important;font-size:10px!important;letter-spacing:.12em!important;font-weight:810!important;text-transform:uppercase}
body.app-body .module-heading h2 {font-size:clamp(17px,1.45vw,21px)!important;color:#273957!important;font-weight:790!important;letter-spacing:-.025em;margin:4px 0 7px!important;line-height:1.35!important}
body.app-body .module-heading p {font-size:12px!important;line-height:1.7!important;color:var(--v14-subtle)!important;max-width:72ch!important;margin:0!important}
body.app-body .badge {border:1px solid #e0e6fd!important;background:#f1f4ff!important;color:#4c63b1!important;border-radius:99px!important;padding:5px 10px!important;font-size:10px!important;font-weight:750!important;box-shadow:none!important}
body.app-body .badge.ok,body.app-body .status-pill.success {background:#eaf8f3!important;color:#197e65!important;border-color:#cbeddd!important}
body.app-body .badge.warn {background:#fff8e9!important;color:#a1712b!important;border-color:#f5e8cc!important}
body.app-body .badge.off,body.app-body .status-pill {background:#f2f5fa!important;color:#7d8ba0!important;border-color:#e5eaf1!important}
body.app-body .notice {display:flex;align-items:center;gap:10px;padding:13px 17px!important;border-radius:var(--v14-r-md)!important;font-size:12px!important;box-shadow:none!important;line-height:1.6!important}
body.app-body .empty {padding:28px 18px!important;border-radius:var(--v14-r-md)!important;background:#f9fbfe!important;color:#8491a5!important;border:1px dashed #d9e2ef!important;font-size:12px}
/* Interactive primitives */
body.app-body :is(button,.btn) {min-height:40px;border-radius:var(--v14-r-sm)!important;background:var(--v14-accent)!important;border:1px solid transparent!important;color:#fff!important;padding:10px 16px!important;font-weight:740!important;letter-spacing:-.005em!important;box-shadow:0 5px 13px rgba(77,99,211,.16)!important;transition:background var(--v14-fast),transform var(--v14-fast),box-shadow var(--v14-fast),filter var(--v14-fast)!important}
body.app-body :is(button,.btn):hover:not(:disabled) {transform:translateY(-1px);filter:brightness(1.035);box-shadow:0 9px 21px rgba(77,99,211,.22)!important}
body.app-body :is(button,.btn):active:not(:disabled) {transform:translateY(0) scale(.985)}
body.app-body :is(button,.btn):disabled {opacity:.54;box-shadow:none!important;cursor:not-allowed}
body.app-body :is(.btn.secondary,button.secondary,.ghost,.ghost-danger,.btn.ghost) {background:#f8faff!important;border-color:#e2e8f4!important;color:#546783!important;box-shadow:none!important}
body.app-body :is(.btn.secondary,button.secondary,.ghost,.ghost-danger,.btn.ghost):hover:not(:disabled) {background:#eef2fd!important;border-color:#d7e1f5!important;color:#3e56ac!important;box-shadow:none!important}
body.app-body :is(.danger,button.danger,.ghost-danger) {background:#fff5f5!important;border:1px solid #f4dbe0!important;color:#b74b60!important;box-shadow:none!important}
body.app-body :is(button.compact,.btn.compact) {min-height:33px!important;padding:7px 11px!important;font-size:11px!important;border-radius:9px!important}
body.app-body :is(input:not([type=checkbox]):not([type=radio]),select,textarea) {min-height:43px;max-width:100%;border:1px solid #dae3ef!important;border-radius:var(--v14-r-sm)!important;background:white!important;color:#293954!important;padding:10px 12px!important;font-size:12px!important;box-shadow:var(--v14-shadow-xs)!important;transition:border-color var(--v14-fast),box-shadow var(--v14-fast)!important}
body.app-body :is(input,select,textarea)::placeholder {color:#a0acbc;opacity:1}
body.app-body :is(input:not([type=checkbox]):not([type=radio]),select,textarea):hover {border-color:#bfcde1!important}
body.app-body :is(input:not([type=checkbox]):not([type=radio]),select,textarea):focus {outline:none!important;border-color:#7189e5!important;box-shadow:0 0 0 4px rgba(86,108,220,.10)!important}
body.app-body :is(input[type=checkbox],input[type=radio]) {accent-color:#536ae3}
body.app-body .field label {color:#52617a!important;font-size:11px!important;font-weight:745!important;margin-bottom:7px!important}
body.app-body .field small {color:#93a0b1!important;font-size:10px!important}
body.app-body :is(.settings-form,.admin-polished-form,.model-create-form) {gap:13px!important}
body.app-body .form-actions {gap:9px!important}
body.app-body .quick-action {background:#fff!important;border:1px solid var(--v14-edge)!important;border-radius:var(--v14-r-md)!important;box-shadow:var(--v14-shadow-xs)!important}
body.app-body .quick-action:hover {background:#f8faff!important;border-color:#d7e2f8!important;transform:translateY(-2px)}
/* Data cards */
body.app-body :is(.metric-grid,.premium-metrics) {gap:12px!important}
body.app-body :is(.metric-card,.metric-card.featured) {position:relative;min-width:0;min-height:147px!important;padding:20px!important;background:#fff!important;border:1px solid var(--v14-edge)!important;border-radius:var(--v14-r-lg)!important;box-shadow:var(--v14-shadow-sm)!important;overflow:hidden;transition:border-color var(--v14-smooth),box-shadow var(--v14-smooth),transform var(--v14-smooth)!important}
body.app-body .metric-card:after {background:radial-gradient(circle,rgba(98,116,230,.08),transparent 70%)!important;transform:translate(15%,-2%)}
body.app-body .metric-card.featured {background:linear-gradient(140deg,#eef2ff,#fff 74%)!important;border-color:#dce4fa!important}
body.app-body .metric-card:hover {border-color:#cddbf5!important;box-shadow:var(--v14-shadow-md)!important;transform:translateY(-2px)}
body.app-body .metric-top {display:flex;justify-content:space-between;align-items:center;gap:8px}
body.app-body .metric-top span {color:#7d8ba0!important;font-size:11px!important;font-weight:700!important}
body.app-body .metric-top i {color:#a8b6cf!important;background:#f5f7fc!important;border:1px solid #edf0f7!important;border-radius:9px!important;padding:3px 6px;font-size:9px!important;letter-spacing:.06em!important;font-style:normal}
body.app-body .metric-card strong {display:block;color:#253655!important;letter-spacing:-.045em!important;font-size:clamp(23px,2vw,33px)!important;line-height:1.24!important;margin:12px 0 7px!important;font-weight:820!important;overflow-wrap:anywhere}
body.app-body .metric-card small {color:#97a4b5!important;font-size:10px!important;line-height:1.6}
body.app-body .metric-progress {background:#e9eef7!important;border-radius:99px!important;height:5px!important}
/* Table tools */
body.app-body .responsive-table-wrap {overflow-x:auto;max-width:100%;border-radius:var(--v14-r-md)!important;border:1px solid #e7edf5!important;background:#fff!important;scrollbar-width:thin}
body.app-body .responsive-table {width:100%;border-collapse:separate;border-spacing:0;font-size:12px!important}
body.app-body .responsive-table thead {background:#f7f9fd!important}
body.app-body .responsive-table th {color:#7d8aa0!important;font-weight:755!important;font-size:10px!important;letter-spacing:.025em!important;text-transform:none;padding:13px 15px!important;border-bottom:1px solid var(--v14-edge)!important;white-space:nowrap}
body.app-body .responsive-table td {padding:13px 15px!important;color:#4c5b72!important;border-bottom:1px solid #eef1f7!important;vertical-align:middle;line-height:1.6}
body.app-body .responsive-table tbody tr:last-child td {border-bottom:0!important}
body.app-body .responsive-table tbody tr:hover {background:#f9fbff!important}
body.app-body .responsive-table td strong {color:#32435f!important}
body.app-body .responsive-table :is(th,td) {overflow-wrap:anywhere}
body.app-body .table-enhancer {display:flex!important;flex-wrap:wrap;gap:11px!important;padding:12px 0!important;margin:0!important;border:0!important;background:transparent!important}
body.app-body .table-tools {display:flex;align-items:center;flex-wrap:wrap;gap:9px}
body.app-body .table-tools .table-search {min-width:min(100%,210px)}
body.app-body .table-tools input {min-height:36px!important}
body.app-body .table-tools select {min-height:36px!important;width:auto!important}
body.app-body .table-meta {color:#8d9aae!important;font-size:11px!important}
body.app-body .table-pagination {display:flex;align-items:center;gap:4px}
body.app-body .table-pagination button {min-height:30px!important;min-width:31px;padding:5px 9px!important}
body.app-body .table-pagination button.active {background:#e9efff!important;color:#3e59b3!important;box-shadow:none!important}
/* Controls within common content types */
body.app-body :is(.split-grid,.benefit-grid,.shop-grid,.model-public-grid,.home-pool-grid,.chart-grid) {gap:15px!important;min-width:0}
body.app-body .model-chip-row code {display:inline-flex;border:1px solid #e3e9f5;border-radius:8px;background:#f5f8fd;padding:5px 8px;color:#5c7090}
body.app-body .key-item {background:#fbfcff!important;border:1px solid var(--v14-edge)!important;border-radius:var(--v14-r-md)!important;padding:16px!important;gap:15px!important;box-shadow:none!important}
body.app-body .key-item:hover {background:white!important;border-color:#d3e0f5!important}
body.app-body .key-list {display:grid;gap:11px!important}
body.app-body .key-item code {color:#5c6f8d!important}
body.app-body .key-actions {display:flex;gap:7px;flex-wrap:wrap}
body.app-body .key-security-panel {margin:10px 0 0;padding:13px;border:1px solid #dce5f5;border-radius:var(--v14-r-md);background:white}
body.app-body .key-security-panel summary {cursor:pointer;color:#465f9d;font-size:12px;font-weight:750;user-select:none}
body.app-body .key-security-panel[open] summary {margin-bottom:11px}
body.app-body .key-secret-form {display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}
body.app-body .key-secret-form input {flex:1 1 185px;min-width:120px}
body.app-body .key-security-panel .key-secret-result {display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px;padding:11px;background:#f4f7ff;border:1px solid #e3eafb;border-radius:10px}
body.app-body .key-security-panel .key-secret-result code {flex:1 1 250px;overflow-wrap:anywhere;font-size:12px!important;user-select:all}
body.app-body .key-security-panel .key-secret-note {font-size:11px;color:#8c9aaf;margin:8px 0 0}
body.app-body .key-security-panel .key-ip-form {display:grid;gap:8px;margin:12px 0 0}
body.app-body .key-security-panel .key-ip-form button {justify-self:start}
body.app-body .key-security-panel .key-secret-alert {font-size:11px;color:#4b69a9}
body.app-body .wallet-card,.benefit-card {background:white!important}
body.app-body :is(.wallet-quick-stats>div,.benefit-hero-metrics>div,.membership-status,.checkin-action) {border:1px solid #e3eaf5!important;border-radius:var(--v14-r-md)!important;background:#f8faff!important;box-shadow:none!important}
body.app-body .shop-product {padding:17px!important;display:flex;flex-direction:column;justify-content:space-between;gap:14px!important;background:#fbfcff!important;box-shadow:none!important}
body.app-body .shop-product:hover {border-color:#d9e2f6!important;background:#fff!important;transform:translateY(-2px)}
body.app-body .shop-product :is(h3,strong) {color:#293f67!important}
body.app-body .shop-product p {color:#8290a5!important}
body.app-body :is(.mini-history>div,.card-rules) {border-color:#e9eef6!important}
body.app-body .benefits-hero {align-items:center;flex-wrap:wrap;min-width:0}
body.app-body .benefit-hero-metrics {gap:9px;min-width:min(100%,310px)}
body.app-body .benefits-hero h2 {font-size:23px!important}
/* Studio, chat, auth, home: apply shared surface language */
body.app-body :is(.studio-controls,.studio-form,.studio-output,.chat-main,.chat-message,.chat-input-bar,.code-panel,.preview-request,.preview-nodes article,.copy-code-card,.auth-form) {border-color:var(--v14-edge)!important;border-radius:var(--v14-r-md)!important}
body.app-body :is(.home-pool-card,.public-model-card) {padding:20px!important}
body.app-body :is(.home-pool-card,.public-model-card):hover {transform:translateY(-3px);box-shadow:var(--v14-shadow-md)!important;border-color:#d7e2f7!important}
body.app-body .relay-api-card {background:linear-gradient(140deg,#f4f6ff,#fff 70%)!important}
body.app-body .relay-hero .hero-copy h1 {letter-spacing:-.055em!important}
body.app-body .auth-shell {gap:25px!important}
body.app-body .auth-card {border:1px solid var(--v14-edge)!important;background:white!important;border-radius:var(--v14-r-xl)!important;box-shadow:var(--v14-shadow-md)!important}
body.app-body .section-heading h2 {font-weight:790!important;letter-spacing:-.025em}
body.app-body .code-panel {background:#f8faff!important;box-shadow:none!important}
body.app-body pre {max-width:100%;overflow:auto;scrollbar-width:thin}
body.app-body details[open] > summary {color:var(--v14-accent-ink)}
/* Fine interactions */
body.app-body .page-progress i {background:linear-gradient(90deg,#536be8,#83a4f4)!important;box-shadow:none!important}
body.app-body .back-to-top {border-radius:13px!important;box-shadow:var(--v14-shadow-md)!important}
body.app-body .toast {border-radius:var(--v14-r-md)!important;box-shadow:var(--v14-shadow-md)!important}
body.app-body .aurora-boot-loader {background:rgba(248,250,255,.98)!important}
body.app-body .reveal-item {will-change:auto!important}
@media (hover:hover) and (prefers-reduced-motion:no-preference){
 body.app-body :is(.card,.metric-card,.shop-product,.quick-action) {transition-duration:220ms!important}
}
/* Non-blocking, progressive animation: elements remain readable without JS. */
body.app-body .v14-enter.v14-visible {animation:v14SurfaceAppear .36s var(--v14-ease) both;animation-delay:var(--v14-delay,0ms)}
@keyframes v14SurfaceAppear{from{opacity:.73;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
body.app-body .sr-only {position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(prefers-reduced-motion:reduce){body.app-body .v14-enter.v14-visible{animation:none!important}}
/* Compact, quiet announcement rail: replace legacy neon status buttons with readable cards. */
body.app-body .announcement-rail-v1110{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:12px!important;min-height:56px!important;height:auto!important;margin:-5px 0 17px!important;padding:8px 12px!important;border:1px solid var(--v14-edge)!important;border-radius:var(--v14-r-lg)!important;background:#fff!important;box-shadow:var(--v14-shadow-xs)!important;z-index:15!important}
body.app-body .announcement-preview-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;min-width:0!important}
body.app-body .announcement-preview-item{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:8px!important;align-items:center!important;min-width:0!important;min-height:38px!important;padding:7px 10px!important;border:1px solid #e5ebf5!important;border-radius:11px!important;background:#f8faff!important;color:#475d7a!important;box-shadow:none!important;text-align:left!important;transform:none!important}
body.app-body .announcement-preview-item:hover{background:#eef2ff!important;border-color:#d5def4!important;color:#344c90!important}
body.app-body .announcement-preview-item .announcement-preview-index{display:grid!important;place-items:center;width:25px!important;min-width:25px!important;height:25px!important;border-radius:8px!important;background:#e9eefb!important;color:#53699e!important;font-size:10px!important;box-shadow:none!important}
body.app-body .announcement-preview-item>div{min-width:0!important;overflow:hidden!important}
body.app-body .announcement-preview-item b{font-size:10px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:#344a69!important}
body.app-body .announcement-preview-item>div>span{font-size:9px!important;color:#8493a9!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body.app-body .announcement-all-button{min-height:30px!important;padding:5px 11px!important;border:1px solid #dce5f5!important;border-radius:9px!important;background:#f5f8fd!important;color:#526486!important;box-shadow:none!important;font-size:11px!important}
/* API Key content declares explicit named areas; security controls must not auto-create phantom columns. */
body.app-body .key-pool-list .key-pool-item{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-areas:"info control" "scope scope" "security security" "actions actions"!important;gap:12px!important;align-items:start!important}
body.app-body .key-pool-item .key-main-info{grid-area:info;min-width:0!important}
body.app-body .key-pool-item .key-pool-control{grid-area:control;min-width:0!important;background:#f7f9fd!important;border:1px solid #e7ecf6!important;border-radius:12px!important;padding:12px!important}
body.app-body .key-pool-item .key-model-scope{grid-area:scope;min-width:0!important;background:#f7f9fd!important;border:1px solid #e7ecf6!important;border-radius:12px!important;padding:12px!important}
body.app-body .key-pool-item .key-security-panel-shell{grid-area:security;min-width:0!important;width:100%!important;max-width:100%!important}
body.app-body .key-pool-item .key-actions{grid-area:actions;justify-content:flex-start!important;min-width:0}
body.app-body .key-pool-item .key-security-panel{margin:0!important}
body.app-body .key-pool-item .key-secret-note{overflow-wrap:anywhere!important}
body.app-body .key-pool-item .key-secret-form{display:flex!important;flex-wrap:wrap!important;min-width:0!important}
body.app-body .key-pool-item .key-ip-form input{min-width:0!important;max-width:100%!important}
/* Prevent wide user tables from forcing every detail into a tiny mobile column. */
body.app-body .responsive-table{min-width:0!important;table-layout:auto}
body.app-body .vip-grant-card .vip-grant-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 140px auto;align-items:end;gap:12px}
body.app-body .vip-grant-card .vip-grant-browser{margin-top:19px;border:1px solid #e8edf6;border-radius:var(--v14-r-md);background:#fbfcff;overflow:hidden}
body.app-body .vip-grant-card .vip-grant-browser>summary{padding:12px 15px;cursor:pointer;font-size:12px;color:#637592;font-weight:730}
body.app-body .vip-grant-card .vip-grant-browser[open]>summary{border-bottom:1px solid #e8edf6;background:#f4f7fc}
body.app-body .vip-grant-card .vip-grant-browser .responsive-table-wrap{margin:0!important;max-height:320px;overflow:auto;border:0!important;border-radius:0!important}
body.app-body .vip-grant-card .vip-grant-browser p{padding:12px 15px;color:#8998aa;font-size:11px}
@media(max-width:1100px){body.app-body .vip-grant-card .vip-grant-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
