/* G admin: shared tokens with the user workspace; explicit route scope wins legacy themes. */
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) {
  --ref-primary: var(--g-primary); --ref-primary-2: var(--g-primary); --ref-border: var(--g-border);
  --ref-muted: var(--g-muted); --ref-card-radius: 4px; --page-primary: var(--g-primary);
  --page-primary-soft: var(--g-primary-soft); --page-ink: var(--g-text); --page-muted: var(--g-muted);
  --page-line: var(--g-border); --page-card: white; --analytics-primary: var(--g-primary);
  --analytics-amber: var(--g-brass); --neo-text: var(--g-text); --neo-muted: var(--g-muted);
  background: var(--g-bg) !important; color: var(--g-text) !important;
  font: 14px/1.6 var(--g-font-body) !important;
}
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route)::before, body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route)::after { display: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) * { box-sizing: border-box; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(h1,h2,h3) { color: var(--g-primary) !important; font-family: var(--g-font-display) !important; letter-spacing: .025em !important; line-height: 1.4 !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) h1 { font-size: 32px !important; margin: 0 0 8px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) h2 { font-size: 24px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) h3 { font-size: 18px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) h1::after { display: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(strong,label,.section-title) { color: var(--g-text) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(p,.status,.stat span,.admin-kpi-label,.admin-kpi-hint,.admin-kpi-unit,.admin-sidebar-head span,.admin-chart-axis) { color: var(--g-muted) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) > .shell { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-console-frame { display: block !important; margin: 0 !important; padding: 0 !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .topbar { position: fixed !important; inset: 0 0 auto 206px !important; width: auto !important; min-height: 56px !important; height: 56px !important; padding: 0 24px !important; margin: 0 !important; border: 0 !important; border-bottom: 1px solid var(--g-border) !important; border-radius: 0 !important; background: var(--g-bg) !important; box-shadow: none !important; z-index: 60; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .topbar > .brand { position: fixed !important; top: 18px; left: 24px; width: 168px; display: flex !important; gap: 9px !important; color: var(--g-primary) !important; font: 26px/1.2 var(--g-font-display) !important; border: 0 !important; padding: 0 !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .brand::after { content: '管理工作台' !important; position: absolute; left: 38px; top: 40px; color: var(--g-muted); font: 11px/1.5 var(--g-font-body); letter-spacing: .15em; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .brand-mark { width: 28px !important; height: 34px !important; flex: 0 0 28px; background: none !important; box-shadow: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .brand-mark svg { display: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .brand-mark::before { content: ''; display: block; width: 28px; height: 34px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 34' fill='none' stroke='%23a28c61' stroke-width='.9'%3E%3Cpath d='M15 2 3 8v20l12 5 12-5V8L15 2ZM3 8l12 5 12-5M15 2v31M8 6v24M22 6v24M3 17l12-5 12 5'/%3E%3C/svg%3E") center/contain no-repeat; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-brand-main { color: var(--g-primary) !important; font-size: 26px !important; font-weight: 500 !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-topbar-copy { margin: 0 auto 0 0 !important; padding: 0 !important; border: 0 !important; min-width: 0; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-topbar-copy strong { font: 13px/1.5 var(--g-font-body) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-topbar-copy strong::before { content: '管理工作台 / '; color: var(--g-muted); }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-topbar-copy > span, body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-reference-bell { display: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-reference-avatar { width: 28px !important; height: 28px !important; background: var(--g-primary-soft) !important; border: 1px solid var(--g-border) !important; box-shadow: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-sidebar { position: fixed !important; inset: 0 auto 0 0 !important; width: 206px !important; height: 100dvh !important; padding: 98px 12px 24px !important; background: #f7f6f2 !important; border-right: 1px solid var(--g-border); overflow-y: auto; z-index: 50; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-sidebar-card { padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-sidebar-head { display: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-sidebar-nav { display: grid !important; grid-template-columns: 1fr !important; gap: 3px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-nav-item { position: relative; grid-template-columns: 28px minmax(0,1fr) !important; min-height: 40px !important; padding: 8px 10px !important; gap: 8px !important; border: 0 !important; border-left: 2px solid transparent !important; border-radius: 4px !important; color: var(--g-text) !important; background: transparent !important; box-shadow: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-nav-item span { font-size: 13px !important; font-weight: 500 !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-nav-item small { display: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-nav-item::before { width: 24px !important; height: 24px !important; background: transparent !important; box-shadow: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-nav-item::after { left: 14px !important; width: 18px !important; height: 18px !important; background-color: var(--g-primary) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-nav-item:is(:hover,.is-active) { background: var(--g-primary-soft) !important; border-left-color: var(--g-primary) !important; color: var(--g-primary) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminApp { display: grid !important; min-width: 0 !important; width: calc(100% - 206px) !important; margin: 56px 0 0 206px !important; padding: 24px 24px 64px !important; gap: 24px !important; background: var(--g-bg) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(.card,.stat,.table-wrap,.codes,.notice,.package-preview-card,.admin-kpi-card,.admin-chart-card,.admin-trend-card,.admin-insight-card,.admin-dashboard-panel,.admin-overview-filter-panel,.admin-chart-summary > span) { border: 1px solid var(--g-border) !important; border-radius: 4px !important; background: white !important; color: var(--g-text) !important; box-shadow: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .card { padding: 24px !important; min-width: 0; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-hero-card { border: 0 !important; padding: 0 !important; background: transparent !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .section-title { margin-bottom: 18px !important; gap: 16px; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .section-title p { font-size: 13px !important; margin-top: 6px; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(button,.button) { font-family: var(--g-font-body) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .button { min-height: 40px !important; border: 1px solid var(--g-primary) !important; border-radius: 4px !important; padding: 8px 16px !important; font-size: 13px !important; font-weight: 500 !important; color: white !important; background: var(--g-primary) !important; box-shadow: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .button.secondary { color: var(--g-text) !important; border-color: var(--g-border) !important; background: white !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .button.danger { color: var(--g-danger) !important; border-color: #dfbab5 !important; background: white !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .button:hover:not(:disabled) { filter: brightness(.96); transform: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { min-width: 0; min-height: 40px !important; padding: 8px 12px !important; border: 1px solid var(--g-border) !important; border-radius: 4px !important; background: white !important; color: var(--g-text) !important; font: 13px/1.5 var(--g-font-body) !important; box-shadow: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(input[type=checkbox],input[type=radio]) { accent-color: var(--g-primary); width: 18px; height: 18px; min-height: 0; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :focus-visible { outline: 2px solid var(--g-focus) !important; outline-offset: 3px; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(.filters,.admin-overview-filter-panel) { display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 12px !important; align-items: end; margin: 16px 0 24px !important; padding: 16px !important; background: white !important; border: 1px solid var(--g-border) !important; border-radius: 4px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-overview-filter-panel { grid-template-columns: repeat(6,minmax(0,1fr)) auto auto !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-dashboard-filter-summary { grid-column: 1 / -1; color: var(--g-muted) !important; font-size: 12px; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-kpi-grid { display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 16px !important; margin: 0 0 16px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-kpi-card { min-height: 124px !important; padding: 18px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-kpi-card::after { display: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-kpi-value strong { color: var(--g-primary) !important; font-size: 32px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-kpi-delta { border-radius: 4px !important; background: var(--g-success-bg) !important; color: var(--g-success) !important; font-size: 12px !important; box-shadow: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-kpi-hint { font-size: 12px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-dashboard-grid { gap: 16px !important; margin-top: 16px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-dashboard-grid > article { padding: 20px !important; border: 1px solid var(--g-border) !important; border-radius: 4px !important; background: white !important; box-shadow: none !important; min-width: 0; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-recent-row { border-color: var(--g-border) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(.admin-chart-summary,.admin-chart-summary span) { color: var(--g-muted) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(.pill,.admin-tag,.admin-realtime-status) { border-radius: 4px !important; border-color: var(--g-border) !important; background: var(--g-primary-soft) !important; color: var(--g-primary) !important; box-shadow: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(.pill.danger,.pill.error,.status.error) { color: var(--g-danger) !important; background: var(--g-danger-bg) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .status.success { color: var(--g-success) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .notice { padding: 12px 16px !important; background: var(--g-subtle) !important; color: var(--g-muted) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) table { background: white !important; color: var(--g-text) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) th { padding: 12px 16px !important; border-color: var(--g-border) !important; background: #f7f6f2 !important; color: var(--g-muted) !important; font-size: 12px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) td { padding: 14px 16px !important; border-color: var(--g-border) !important; color: var(--g-text) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) tr:hover td { background: #f7faf7 !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .inline-actions .button { min-height: 34px !important; padding: 6px 10px !important; font-size: 12px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(.admin-transaction-drawer,.admin-template-modal-card,.admin-feedback-dialog) { background: white !important; border-radius: 8px !important; border-color: var(--g-border) !important; box-shadow: var(--g-shadow-floating) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminApp > .admin-transaction-drawer { padding: 24px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-secondary-stats { grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 12px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-command-strip { display: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-plan-picker { display: none !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminAppConfigForm { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px 24px; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminAppConfigForm > :is(.notice,.status,button) { grid-column: 1 / -1; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminAppConfigSubmit { justify-self: start; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .inline-check { display: flex; align-items: center; gap: 10px; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-kpi-secondary { margin-top: 24px; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-kpi-secondary .admin-kpi-card { min-height: 104px !important; }
body.g-admin[data-admin-current-section] #adminApp .admin-hero-card { border: 0 !important; background: transparent !important; }
body.g-admin[data-admin-current-section] #adminApp .button:not(.secondary):not(.danger) { background: var(--g-primary) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .topbar > .brand { width: 168px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .brand::after { padding: 0 !important; margin: 0 !important; transform: none !important; height: auto !important; width: auto !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-nav-item { display: flex !important; align-items: center !important; padding: 8px 10px 8px 38px !important; min-height: 40px !important; height: 40px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-nav-item::before { display: none !important; }
body.g-admin[data-admin-current-section] #adminUserTable { min-width: 1060px !important; }
body.g-admin[data-admin-current-section] #adminUserTable :is(th,td):last-child { width: 320px !important; }
body.g-admin[data-admin-current-section] #adminUserTable .inline-actions { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; gap: 6px !important; }
body.g-admin[data-admin-current-section] #adminUserTable .inline-actions .button { width: auto !important; }
body.g-admin[data-admin-current-section] #adminIntegrationTable :is(th,td):nth-child(2) { width: 100px !important; min-width: 100px; white-space: nowrap; }
body.g-admin[data-admin-current-section] #adminIntegrationTable .pill { white-space: nowrap; }
body.g-admin[data-admin-current-section] #adminIntegrationTable { min-width: 960px !important; }
body.g-admin[data-admin-current-section] #adminIntegrationTable :is(th,td):nth-child(3) { min-width: 136px; overflow-wrap: normal; word-break: normal; }
body.g-admin[data-admin-current-section] #adminTransactionsPanel[aria-hidden="true"] { visibility: hidden !important; pointer-events: none !important; }
body.g-admin[data-admin-current-section] .grid-2 > * { min-width: 0; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(.admin-api-config-panel,.admin-api-advanced) { background: white !important; border: 1px solid var(--g-border) !important; border-radius: 4px !important; box-shadow: none !important; }
body.g-admin[data-admin-current-section] .admin-api-advanced summary { color: var(--g-primary); font-weight: 500; }
body.g-admin[data-admin-current-section] #adminAiKeyStatus { color: var(--g-primary) !important; background: var(--g-primary-soft) !important; }
body.g-admin[data-admin-current-section] .g-admin-cover-missing { display: grid; place-items: center; width: 72px; min-height: 72px; padding: 8px; border: 1px dashed var(--g-border); border-radius: 4px; background: var(--g-bg); color: var(--g-muted); font-size: 12px; text-align: center; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-table-wrap { max-width: 100%; overflow-x: auto !important; }
@media(min-width:1201px) {
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) [data-admin-user-filters] { grid-template-columns: repeat(6,minmax(0,1fr)) !important; }
  body.g-admin[data-admin-current-section] [data-admin-user-filters] > :first-child { grid-column: span 2; }
}
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-sidebar-nav { scrollbar-color: #a6b0a8 transparent; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-sidebar-nav::-webkit-scrollbar-thumb { background: #a6b0a8; }
/* Detail alignment: keep page headings outside the data surfaces, as in the G boards. */
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminApp > .card[data-admin-section] { padding: 0 !important; border: 0 !important; background: transparent !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) [data-admin-section] > .section-title h2 { font-size: 36px !important; line-height: 1.35 !important; font-weight: 500 !important; margin: 0 !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .section-title p { font-size: 14px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-user-account strong { font-weight: 500 !important; font-size: 14px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-user-account small { font-weight: 400 !important; color: var(--g-muted) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminUserTable { min-width: 860px !important; width: 100%; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminUserTable :is(th,td):last-child { width: 224px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminUserTable .inline-actions { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminUserTable .inline-actions .button { white-space: nowrap; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminIntegrationTable :is(th,td):nth-child(4) { min-width: 120px; white-space: nowrap; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .status:not(:empty) { padding: 10px 0 !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; line-height: 1.6; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .status.error:not(:empty) { color: var(--g-danger) !important; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-table-wrap { scrollbar-width: thin; scrollbar-color: #a6b0a8 transparent; }
body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(.admin-dashboard-realtime,.admin-realtime-status) { border-radius: 4px !important; box-shadow: none !important; background: var(--g-primary-soft) !important; color: var(--g-primary) !important; }
body.g-admin .mock-donut::after, body.g-admin .admin-donut::after { content: none !important; }
@media(min-width:1000px) {
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) [data-admin-user-filters] { grid-template-columns: repeat(12,minmax(0,1fr)) !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) [data-admin-user-filters] > * { grid-column: span 2; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) [data-admin-user-filters] > :first-child { grid-column: span 6; }
}
/* The login uses the same palette and typography without inheriting application navigation. */
body.g-admin-login { background: var(--g-bg); color: var(--g-text); font-family: var(--g-font-body); }
body.g-admin-login .card { border: 1px solid var(--g-border); border-radius: 4px; background: white; box-shadow: none; }
body.g-admin-login .intro { background: #f1efe8; min-height: 620px; }
body.g-admin-login :is(h1,h2,.brand strong) { color: var(--g-primary); font-family: var(--g-font-display); font-weight: 500; }
body.g-admin-login h1 { font-size: 48px; line-height: 1.4; }
body.g-admin-login .eyebrow { color: var(--g-muted); font-weight: 500; }
body.g-admin-login :is(p,label,.note) { color: var(--g-muted); }
body.g-admin-login :is(input,.button,.note) { border: 1px solid var(--g-border); border-radius: 4px; }
body.g-admin-login #submit { color: white !important; background: var(--g-primary) !important; border-color: var(--g-primary) !important; border-radius: 4px !important; font-weight: 500 !important; }
body.g-admin-login .preview-stack { display: none; }
body.g-admin-login .note { background: var(--g-subtle); }
body.g-admin-login :focus-visible { outline: 2px solid var(--g-focus); outline-offset: 3px; }
body.admin-login-v56.g-admin-login { background: var(--g-bg) !important; color: var(--g-text) !important; }
body.admin-login-v56.g-admin-login .card { border-color: var(--g-border) !important; border-radius: 4px !important; background: white !important; box-shadow: none !important; }
body.admin-login-v56.g-admin-login .intro { background: var(--g-subtle) !important; }
body.admin-login-v56.g-admin-login :is(h1,h2,.brand strong) { font-family: var(--g-font-display) !important; color: var(--g-primary) !important; font-weight: 500 !important; }
body.admin-login-v56.g-admin-login h1 { font-size: 48px !important; }
body.admin-login-v56.g-admin-login :is(input,.button,.note) { border-radius: 4px !important; border-color: var(--g-border) !important; box-shadow: none !important; }
body.admin-login-v56.g-admin-login .eyebrow { color: var(--g-muted) !important; }
body.admin-login-v56.g-admin-login .shell { max-width: 1040px !important; grid-template-columns: minmax(0,1.1fr) minmax(340px,1fr) !important; gap: 0 !important; border: 1px solid var(--g-border); border-radius: 4px; overflow: hidden; }
body.admin-login-v56.g-admin-login .card { border: 0 !important; border-radius: 0 !important; }
body.admin-login-v56.g-admin-login .intro { padding: 44px !important; min-height: 560px !important; }
body.admin-login-v56.g-admin-login h1 { margin: 76px 0 24px !important; letter-spacing: .02em !important; font-size: 44px !important; }
body.admin-login-v56.g-admin-login .form-card { padding: 40px !important; align-self: stretch !important; display: flex; flex-direction: column; justify-content: center; }
body.admin-login-v56.g-admin-login .eyebrow { background: none !important; border: 0 !important; padding: 0 !important; border-radius: 0 !important; box-shadow: none !important; font: 500 11px/1.5 var(--g-font-body) !important; letter-spacing: .16em; }
body.admin-login-v56.g-admin-login label { font-weight: 500 !important; color: var(--g-text) !important; }
body.admin-login-v56.g-admin-login :is(input,.button) { min-height: 44px !important; font: 500 14px/1.5 var(--g-font-body) !important; }
body.admin-login-v56.g-admin-login .button.secondary { background: transparent !important; color: var(--g-primary) !important; border-color: var(--g-border) !important; }
body.admin-login-v56.g-admin-login #submit:hover:not(:disabled) { background: var(--g-primary-hover) !important; }
body.admin-login-v56.g-admin-login :focus-visible { outline: 2px solid var(--g-focus) !important; outline-offset: 2px; }
body.admin-login-v56.g-admin-login input:focus { border-color: var(--g-focus) !important; box-shadow: none !important; }
body.admin-login-v56.g-admin-login .status:empty { display: none; }
body.admin-login-v56.g-admin-login .status:not(:empty) { padding: 10px 12px; border-radius: 4px !important; }
body.admin-login-v56.g-admin-login .note { margin-top: 24px; padding: 16px 0 0; border: 0 !important; border-top: 1px solid var(--g-border) !important; border-radius: 0 !important; background: none !important; font-size: 12px; }
@media(max-width:860px) {
  body.admin-login-v56.g-admin-login .shell { grid-template-columns: minmax(0,1fr) !important; max-width: 460px !important; }
  body.admin-login-v56.g-admin-login .form-card { padding: 28px 24px !important; }
}
@media(max-width:1200px) {
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-overview-filter-panel { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media(max-width:980px) {
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-sidebar { display: none !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .topbar { left: 0 !important; height: 64px !important; min-height: 64px !important; padding: 0 16px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .topbar > .brand { position: static !important; width: auto; font-size: 22px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .brand::after, body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-topbar-copy, body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .topbar > .nav-actions { display: none !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .mobile-nav { display: block !important; margin-left: auto; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .mobile-nav-menu { max-height: calc(100dvh - 88px); overflow-y: auto; border-color: var(--g-border); border-radius: 4px; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminApp { width: 100% !important; margin: 64px 0 0 !important; padding: 20px 16px 40px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(.filters,.admin-overview-filter-panel) { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-dashboard-grid { grid-template-columns: 1fr !important; }
}
@media(max-width:600px) {
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) h1 { font-size: 28px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) h2 { font-size: 22px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) [data-admin-section] > .section-title h2 { font-size: 28px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .card { padding: 16px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .section-title { flex-direction: column; align-items: flex-start; gap: 12px; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .section-title .button { align-self: stretch; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .button { min-height: 44px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .inline-actions .button { min-height: 44px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { min-height: 44px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(.filters,.admin-overview-filter-panel) { grid-template-columns: 1fr !important; padding: 12px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-kpi-grid { gap: 12px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-kpi-card { padding: 14px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-kpi-value strong { font-size: 26px !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(.admin-secondary-stats,.grid-2,#adminAppConfigForm) { grid-template-columns: minmax(0,1fr) !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) #adminApp > .grid-2[data-admin-section].is-active { grid-template-columns: 1fr !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-table-scroll-hint { display: block !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .admin-transaction-drawer { width: calc(100vw - 24px) !important; max-width: calc(100vw - 24px) !important; }
}

@media(max-width:600px) {
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) .section-title { align-items: stretch !important; }
  body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) [data-admin-user-filters] { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  body.g-admin[data-admin-current-section] [data-admin-user-filters] > :is(:first-child,:last-child) { grid-column: 1 / -1; }
}

body.g-admin[data-admin-current-section]:not(.auth-route):not(.app-route) :is(.section-title h1,.admin-panel-head h3,.filters label) { font-weight: 500 !important; }
