/* standalone-pages.css — shared classes for standalone PHP pages (no _layout) */
/* Load alongside design-tokens.css; token refs only where page uses tokens */

/* ── Alert banner (error paths + error-banner molecule) ── */
.alert-danger{background:var(--danger-soft);color:var(--danger);padding:12px 16px;border-radius:10px;font-size:13px}
.alert-danger--page{margin:var(--space-8, 32px)}
.alert-danger--inline{margin-bottom:18px}
.alert-danger p{margin:0}
.standalone-body{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--surface-base);color:var(--content-primary);font-family:Inter,system-ui,-apple-system,sans-serif;margin:0;padding:24px}

/* ── Webhooks 503 fallback page ── */
.webhooks-fallback{font-family:Inter,system-ui,sans-serif;background:var(--surface-base);color:var(--content-primary);display:flex;align-items:center;justify-content:center;min-height:100vh;text-align:center;margin:0}
.webhooks-fallback h1{font-size:1.5rem;margin-bottom:8px}
.webhooks-fallback p{color:var(--content-tertiary)}
.wf-msg{font-size:12px}
.wf-btn{display:inline-flex;padding:10px 24px;background:var(--accent);color:var(--content-inverse);border-radius:8px;text-decoration:none}

/* ── install.php (token 值与页面自有调色板一致) ── */
.license-key-input{font-family:monospace;text-transform:uppercase;letter-spacing:2px}
.install-hint{font-size:12px;color:var(--border-strong);text-align:center;margin-top:12px}
.install-hint a{color:var(--chart-blue)}
.migration-output{font-size:12px;background:var(--bg-overlay);padding:12px;border-radius:8px;max-height:200px;overflow:auto}

/* ── register-v2.php ── */
.rv2-plan-line{color:var(--content-secondary);margin:8px 0}
.rv2-meta{font-size:12px;color:var(--content-tertiary);margin-top:8px}

/* ── fire-postback-for-conversion.php ── */
.fp-mono{font-family:monospace;font-size:11px}
.fp-link-success{color:var(--success);font-weight:600}
.fp-link-muted{color:var(--content-secondary);font-size:11px}
.fp-link-plain{color:var(--content-secondary)}
.fp-status{font-weight:600}
.fp-ok{color:var(--success)}
.fp-fail{color:var(--danger)}
.fp-footer{margin-top:30px}

/* ── ops-dashboard.php ── */
.ops-grid{margin-bottom:16px}
.ops-hint{font-size:11px;color:var(--border-strong);margin-top:8px}

/* ── ux-dashboard.php ── */
.uxd-card-mt{margin-top:16px}
.uxd-td-danger{font-weight:700;color:var(--danger)}
.uxd-td-sm{font-size:10px}
.uxd-chart{display:flex;align-items:flex-end;gap:2px;height:80px}
.uxd-chart-labels{display:flex;justify-content:space-between;font-size:9px;color:var(--content-tertiary);margin-top:4px}

/* ── snapshot-viewer.php ── */
.sv-icon{font-size:20px}
.sv-value{font-size:22px;font-weight:700}
.sv-label{font-size:11px;color:var(--content-secondary)}
.sv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:16px}
.sv-title{font-size:12px;font-weight:600}
.sv-frame{width:100%;height:320px;border:none}
.sv-grid-wide{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:12px}
.sv-empty{text-align:center;padding:40px}
.sv-empty-icon{font-size:48px;margin-bottom:16px}
.sv-card-pad-sm{padding:12px}
.sv-card-flush{padding:0}
.sv-card-pad-lg{padding:20px}
.sv-empty-hint{color:var(--content-secondary);font-size:13px}
