* { box-sizing: border-box; } body { margin: 0; min-width: 320px; font-family: Arial, sans-serif; color: #e5edf5; background: #111827; } .dashboard { width: min(1040px, 100%); margin: 0 auto; padding: 24px; } .dashboard-header { display: grid; gap: 8px; margin-bottom: 20px; padding-bottom: 16px; border-bottom: 1px solid #334155; } h1, h2, p { margin: 0; } h1 { font-size: 24px; font-weight: 700; } h2 { margin-bottom: 12px; font-size: 15px; font-weight: 700; } .dashboard-status { min-height: 18px; font-size: 13px; color: #cbd5e1; } .dashboard-notice { max-width: 760px; padding: 10px 12px; border: 1px solid #334155; border-radius: 4px; background: #182231; } .maintenance-status { display: grid; gap: 10px; max-width: 760px; padding: 12px; border: 1px solid #3f6f56; border-radius: 4px; background: #14251d; } .maintenance-status strong { font-size: 14px; color: #bbf7d0; } .maintenance-status dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 0; } .maintenance-status dt { margin: 0 0 4px; font-size: 11px; color: #cbd5e1; } .maintenance-status dd { margin: 0; font-size: 12px; font-weight: 700; word-break: break-word; } .panel { margin-bottom: 22px; padding-bottom: 20px; border-bottom: 1px solid #334155; } .metric-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; } .metric-grid div { min-width: 0; padding: 12px; border: 1px solid #334155; border-radius: 4px; background: #1f2937; } .metric-grid dt { margin: 0 0 8px; font-size: 12px; color: #cbd5e1; } .metric-grid dd { margin: 0; font-size: 24px; font-weight: 700; word-break: break-word; } table { width: 100%; border-collapse: collapse; font-size: 13px; background: #1f2937; } th, td { padding: 10px 12px; border: 1px solid #334155; text-align: left; } th { color: #cbd5e1; font-weight: 700; background: #182231; } td:last-child, th:last-child { width: 140px; text-align: right; } p { max-width: 720px; font-size: 13px; line-height: 1.5; color: #cbd5e1; } .retention-actions, .admin-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; } .admin-status { min-height: 18px; margin-top: 12px; font-size: 13px; line-height: 1.4; color: #cbd5e1; } button { padding: 8px 10px; border: 1px solid #475569; border-radius: 4px; font: inherit; font-size: 13px; color: #e5edf5; background: #1f2937; } button:disabled { cursor: default; opacity: 0.65; } @media (max-width: 640px) { .dashboard { padding: 16px; } .metric-grid { grid-template-columns: 1fr; } .maintenance-status dl { grid-template-columns: 1fr 1fr; } .retention-actions, .admin-actions { display: grid; } }