#cpa-host-updater { color-scheme: light dark; font: 14px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif; color: #243047; }
#cpa-host-updater[hidden], #cpa-host-updater [hidden] { display: none !important; }
#cpa-host-updater button { font: inherit; cursor: pointer; border: 1px solid #d4dce8; background: #fff; color: #334155; border-radius: 9px; padding: 9px 15px; min-height: 42px; }
#cpa-host-updater button:focus-visible, #cpa-host-updater a:focus-visible { outline: 3px solid #818cf8; outline-offset: 3px; }
#cpa-host-updater button:disabled { opacity: .48; cursor: not-allowed; }
#cpa-host-updater button.cpu-primary { background: #4f46e5; color: #fff; border-color: #4f46e5; }
#cpa-updater-launcher { position: static; margin: 0 0 20px; background: #4f46e5 !important; color: white !important; border-color: #4f46e5 !important; }
#cpa-updater-dialog { position: fixed; inset: 0; margin: auto; box-sizing: border-box; width: min(680px, calc(100vw - 32px)); max-height: calc(100dvh - 48px); padding: 28px; border: 1px solid #e2e8f0; border-radius: 18px; background: #fff; color: #243047; box-shadow: 0 20px 80px #0f172a33; overflow-y: auto; }
#cpa-updater-dialog::backdrop { background: #0f172a88; backdrop-filter: blur(3px); }
#cpa-host-updater .cpu-heading { display: flex; justify-content: space-between; align-items: start; gap: 12px; }
#cpa-host-updater h2 { font: 650 23px/1.4 system-ui,sans-serif; margin: 6px 0 12px; }
#cpa-host-updater h3 { font: 650 17px/1.5 system-ui,sans-serif; margin: 0 0 6px; }
#cpa-host-updater .cpu-eyebrow { font-size: 12px; letter-spacing: .06em; color: #64748b; }
#cpa-updater-close { font-size: 25px !important; padding: 0 10px !important; line-height: 36px !important; }
#cpa-updater-description { color: #64748b; margin: 0 0 20px; }
#cpa-host-updater table { width: 100%; border-collapse: collapse; font-size: 14px; }
#cpa-host-updater th, #cpa-host-updater td { padding: 12px 10px; border-bottom: 1px solid #e2e8f0; text-align: left; white-space: nowrap; }
#cpa-host-updater th { color: #64748b; font-weight: 500; font-size: 12px; }
#cpa-host-updater a { color: #4f46e5; text-decoration: underline; text-underline-offset: 3px; }
#cpa-host-updater .cpu-table-wrap { overflow-x: auto; }
#cpa-updater-message { background: #f1f5f9; border-radius: 9px; padding: 12px 14px; margin: 20px 0 12px; overflow-wrap: anywhere; }
#cpa-updater-message[data-state=succeeded] { background: #ecfdf5; color: #047857; }
#cpa-updater-message[data-state=failed], #cpa-updater-message[data-state=rolled_back], #cpa-updater-blocks { color: #b45309; }
#cpa-updater-logs { max-height: 180px; overflow: auto; padding-left: 22px; font-size: 12px; color: #64748b; }
#cpa-host-updater .cpu-detail { font-size: 12px; color: #64748b; overflow-wrap: anywhere; }
#cpa-host-updater .cpu-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
#cpa-host-updater .cpu-confirm { padding: 18px; margin-top: 20px; border: 1px solid #c7d2fe; background: #eef2ff; border-radius: 12px; }
#cpa-host-updater .cpu-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
@media (max-width: 500px) { #cpa-updater-dialog { padding: 20px 16px; } #cpa-host-updater h2 { font-size: 19px; } #cpa-host-updater th, #cpa-host-updater td { padding: 10px 6px; font-size: 12px; } #cpa-host-updater .cpu-actions > button { flex: 1 1 auto; } }
@media (prefers-color-scheme: dark) { #cpa-updater-dialog { background: #172033; color: #e2e8f0; border-color: #334155; } #cpa-host-updater button { background: #243047; color: #e2e8f0; border-color: #475569; } #cpa-updater-message { background: #243047; } #cpa-host-updater .cpu-confirm { background: #25264b; border-color: #4f46e5; } #cpa-host-updater th, #cpa-host-updater td { border-color: #334155; } #cpa-host-updater a { color: #a5b4fc; } #cpa-host-updater .cpu-detail, #cpa-updater-description, #cpa-updater-logs, #cpa-host-updater th, #cpa-host-updater .cpu-eyebrow { color: #a4b2c7; } }

#cpa-host-updater .cpu-auto-settings { margin: 16px 0; padding: 12px; border: 1px solid #64748b55; border-radius: 10px; }
#cpa-host-updater .cpu-auto-settings label { display: flex; align-items: center; gap: 10px; font-weight: 600; }
#cpa-host-updater .cpu-auto-settings input { width: 18px; height: 18px; flex: 0 0 auto; }
