.cd-report-card {
    background: var(--dash-card);
    border: 1px solid var(--dash-border);
    border-radius: 14px;
    position: relative;
}
.cd-report-card [hidden], .cd-report-dialog [hidden] { display: none !important; }
.cd-report-top { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .5rem 1rem; padding: 1.2rem 1.5rem 0; }
.cd-report-label { display: inline-flex; align-items: center; gap: .5rem; color: var(--dash-accent); font-size: .75rem; font-weight: 500; }
.cd-report-label svg { width: 17px; height: 17px; }
.cd-report-top time, .cd-report-notice { color: var(--dash-text-secondary); font-size: .7rem; }
.cd-report-notice { color: var(--dash-accent); }
.cd-report-main { display: flex; align-items: center; gap: 2rem; padding: 1rem 1.5rem 1.4rem; }
.cd-report-summary { flex: 1; min-width: 0; }
.cd-report-summary h2 { margin: 0; color: var(--dash-text); font-size: 1.08rem; line-height: 1.5; font-weight: 500; overflow-wrap: anywhere; }
#cd-progress-report-copy { margin: .45rem 0 0; max-width: 80ch; font-size: .81rem; line-height: 1.75; color: var(--dash-text-secondary); overflow-wrap: anywhere; }
.cd-report-actions { flex-shrink: 0; }
.cd-report-primary {
    display: inline-flex; align-items: center; justify-content: center; gap: .65rem;
    min-height: 44px; padding: .65rem 1rem; border-radius: 8px; border: 0;
    background: var(--dash-accent); color: var(--dash-card); cursor: pointer;
    font-size: .8rem; font-weight: 500; text-decoration: none;
}
.cd-report-primary svg { width: 16px; height: 16px; }
.cd-report-primary:hover { opacity: .9; text-decoration: none; }
.cd-report-card button:disabled { opacity: .6; cursor: default; }
.cd-report-card :focus-visible, .cd-report-dialog :focus-visible { outline: 2px solid var(--dash-accent); outline-offset: 3px; }
#cd-progress-report-progress { max-width: 320px; margin-top: .85rem; }
#cd-progress-report-count { display: block; color: var(--dash-text-secondary); font-size: .72rem; margin-bottom: .4rem; }
#cd-progress-report-meter { display: block; width: 100%; height: 6px; border: 0; border-radius: 10px; overflow: hidden; background: var(--dash-elevated); color: var(--dash-accent); }
#cd-progress-report-meter::-webkit-progress-bar { background: var(--dash-elevated); }
#cd-progress-report-meter::-webkit-progress-value { background: var(--dash-accent); border-radius: 10px; }
#cd-progress-report-meter::-moz-progress-bar { background: var(--dash-accent); }
.cd-report-settings { display: flex; align-items: center; flex-wrap: wrap; gap: .15rem 1rem; border-top: 1px solid var(--dash-border); border-radius: 0 0 14px 14px; padding: .2rem 1.5rem; background: var(--dash-card-hover); }
.cd-report-switch { display: inline-flex; align-items: center; gap: .55rem; min-height: 44px; padding: 0; border: 0; background: transparent; color: var(--dash-text-secondary); font-size: .72rem; cursor: pointer; }
.cd-report-switch-track { width: 30px; height: 18px; padding: 3px; border-radius: 12px; background: var(--dash-text-muted); }
.cd-report-switch-track > span { display: block; width: 12px; height: 12px; border-radius: 50%; background: var(--dash-card); }
.cd-report-switch[aria-checked="true"] .cd-report-switch-track { background: var(--dash-accent); }
.cd-report-switch[aria-checked="true"] .cd-report-switch-track > span { transform: translateX(12px); }
#cd-progress-report-toggle-state { min-width: 1.5rem; text-align: left; }
#cd-progress-report-schedule { color: var(--dash-text-secondary); font-size: .7rem; margin-left: auto; }
.cd-report-options { position: relative; }
.cd-report-options-toggle { display: grid; place-items: center; width: 44px; height: 44px; margin-right: -.65rem; border: 0; border-radius: 8px; color: var(--dash-text-secondary); background: transparent; cursor: pointer; }
.cd-report-options-toggle svg { width: 20px; height: 20px; }
.cd-report-options-toggle:hover, .cd-report-options-toggle[aria-expanded="true"] { background: var(--dash-accent-glow); }
.cd-report-options-panel { position: absolute; z-index: 10; right: -.25rem; bottom: calc(100% + .35rem); width: 252px; max-width: calc(100vw - 3.5rem); padding: .3rem; border: 1px solid var(--dash-border); border-radius: 9px; background: var(--dash-card); box-shadow: 0 8px 24px rgba(0,0,0,.12); }
.cd-report-options-panel button { display: block; width: 100%; min-height: 44px; padding: .6rem .7rem; border: 0; border-radius: 5px; text-align: left; font-size: .75rem; line-height: 1.5; color: var(--dash-text); background: transparent; cursor: pointer; }
.cd-report-options-panel button:hover:not(:disabled) { background: var(--dash-accent-glow); }
.cd-report-text-button { background: transparent; border: 0; color: var(--dash-accent); cursor: pointer; font-size: .75rem; font-weight: 500; padding: .6rem 0; min-height: 40px; text-align: left; }
.cd-report-text-button:hover { text-decoration: underline; }
.cd-report-status { color: var(--dash-text-secondary); font-size: .75rem; line-height: 1.6; margin: 0; padding: .75rem 1.5rem; border-top: 1px solid var(--dash-border); }
.cd-report-dialog {
    background: var(--dash-card); color: var(--dash-text); border: 1px solid var(--dash-border);
    border-radius: 18px; padding: 0; width: min(920px, calc(100% - 3rem));
    height: min(760px, calc(100vh - 3rem)); height: min(760px, calc(100dvh - 3rem));
    max-width: none; max-height: none; margin: auto; overflow: hidden;
    font-family: 'Poppins', sans-serif; box-shadow: 0 24px 80px rgba(0, 0, 0, .2);
}
.cd-report-dialog[open] { display: flex; flex-direction: column; }
.cd-report-dialog::backdrop { background: rgba(0, 0, 0, .5); }
body.cd-report-open { overflow: hidden; }
.cd-report-dialog-header { display: flex; flex: 0 0 auto; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.35rem 1.75rem 1rem; background: var(--dash-card); }
.cd-report-dialog-header h2 { margin: 0; font-size: 1.2rem; font-weight: 600; }
.cd-report-dialog-header p { margin: .3rem 0 0; font-size: .75rem; color: var(--dash-text-secondary); }
.cd-report-dialog-header button { padding: .4rem .7rem; border: 1px solid var(--dash-border); border-radius: 8px; min-height: 44px; }
.cd-report-dialog-content { display: flex; flex-direction: column; flex: 1; min-height: 0; overflow: hidden; font-size: .84rem; line-height: 1.75; overflow-wrap: anywhere; }
.cd-report-tabs { display: flex; flex: 0 0 auto; gap: .25rem; padding: 0 1.75rem; border-bottom: 1px solid var(--dash-border); overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin; }
.cd-report-tab { flex: 0 0 auto; min-height: 48px; padding: .7rem .95rem; border: 0; border-bottom: 3px solid transparent; background: transparent; color: var(--dash-text-secondary); font: inherit; font-size: .78rem; font-weight: 500; white-space: nowrap; cursor: pointer; }
.cd-report-tab:hover { color: var(--dash-accent); background: var(--dash-accent-glow); }
.cd-report-tab[aria-selected="true"] { color: var(--dash-accent); border-bottom-color: var(--dash-accent); }
.cd-report-tab:focus-visible { outline-offset: -4px; }
.cd-report-panels { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 1.5rem 1.75rem; background: var(--dash-card-hover); scrollbar-gutter: stable; }
.cd-report-panel { min-width: 0; }
.cd-report-panel:focus-visible { outline-offset: 3px; }
.cd-report-panel-title { margin: 0 0 1rem; font-size: 1.1rem; font-weight: 600; line-height: 1.5; }
.cd-report-dialog-content p { margin: .5rem 0 0; white-space: pre-line; color: var(--dash-text-secondary); }
.cd-report-dialog-content .cd-report-panel-intro { margin: -.5rem 0 1.25rem; }
.cd-report-reader-card { padding: 1.15rem 1.25rem; border: 1px solid var(--dash-border); border-radius: 12px; background: var(--dash-card); }
.cd-report-reader-card + .cd-report-reader-card { margin-top: 1rem; }
.cd-report-card-title { margin: 0; font-size: .9rem; font-weight: 600; line-height: 1.6; }
.cd-report-field { margin-top: 1rem; }
.cd-report-field h4 { margin: 0; font-size: .75rem; font-weight: 500; color: var(--dash-accent); }
.cd-report-field p { margin-top: .3rem; }
.cd-report-dialog-content ul, .cd-report-dialog-content ol { padding-left: 1.25rem; margin: .5rem 0 0; color: var(--dash-text-secondary); }
.cd-report-dialog-content ul { list-style: disc; }
.cd-report-dialog-content ol { list-style: decimal; }
.cd-report-dialog-content li + li { margin-top: .4rem; }
.cd-report-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; margin-bottom: 1rem; }
.cd-report-metric { border: 1px solid var(--dash-border); border-radius: 12px; padding: 1rem 1.25rem; background: var(--dash-accent-glow); }
.cd-report-metric span { font-size: .7rem; color: var(--dash-text-secondary); }
.cd-report-metric p { margin: .25rem 0 0; font-size: 1rem; font-weight: 500; color: var(--dash-text); line-height: 1.5; }
.cd-report-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 1rem; }
.cd-report-card-grid .cd-report-reader-card { margin: 0; }
.cd-report-card-grid > :only-child, .cd-report-metrics > :only-child { grid-column: 1 / -1; }
.cd-report-priority { display: inline-block; margin-bottom: .5rem; color: var(--dash-accent); font-size: .68rem; font-weight: 500; }
.cd-report-comparison { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.cd-report-skill-group + .cd-report-skill-group { margin-top: 1.5rem; }
.cd-report-group-title { margin: 0 0 .65rem; font-size: .82rem; font-weight: 600; color: var(--dash-accent); }
.cd-report-task { border: 1px solid var(--dash-border); border-radius: 10px; background: var(--dash-card); }
.cd-report-task + .cd-report-task { margin-top: .6rem; }
.cd-report-task summary { padding: .85rem 1rem; min-height: 48px; cursor: pointer; font-size: .82rem; font-weight: 500; }
.cd-report-task summary::marker { color: var(--dash-accent); }
.cd-report-task summary span { margin-left: .4rem; }
.cd-report-task[open] summary { border-bottom: 1px solid var(--dash-border); }
.cd-report-task-body { padding: .75rem 1.15rem 1.15rem; }
.cd-report-task-body .cd-report-task-score { color: var(--dash-accent); font-size: .76rem; }
.cd-report-dialog-content .cd-report-disclaimer { flex: 0 0 auto; margin: 0; padding: .75rem 1.75rem; border-top: 1px solid var(--dash-border); background: var(--dash-card); font-size: .67rem; line-height: 1.6; }
@media (max-width: 640px) {
    .cd-report-top { padding: 1rem 1.1rem 0; }
    .cd-report-main { flex-direction: column; align-items: stretch; padding: .9rem 1.1rem 1.1rem; gap: 1rem; }
    .cd-report-summary h2 { font-size: 1rem; }
    .cd-report-primary { width: 100%; }
    .cd-report-settings { display: grid; grid-template-columns: minmax(0, 1fr) auto; padding: .3rem 1.1rem .65rem; gap: 0 .5rem; }
    .cd-report-switch { grid-column: 1; justify-self: start; }
    #cd-progress-report-schedule { grid-column: 1; margin-left: 0; }
    .cd-report-options { grid-column: 2; grid-row: 1 / 3; align-self: center; }
    .cd-report-status { padding-left: 1.1rem; padding-right: 1.1rem; }
    .cd-report-dialog { width: calc(100% - 1rem); height: calc(100vh - 1.5rem); height: calc(100dvh - 1.5rem); border-radius: 14px; }
    .cd-report-dialog-header { padding: 1rem 1.1rem .75rem; }
    .cd-report-dialog-header h2 { font-size: 1.05rem; }
    .cd-report-tabs { padding: 0 .6rem; }
    .cd-report-tab { padding: .65rem .8rem; font-size: .75rem; }
    .cd-report-panels { padding: 1.15rem 1rem; }
    .cd-report-panel-title { font-size: 1rem; }
    .cd-report-card-grid, .cd-report-comparison { grid-template-columns: 1fr; gap: 0; }
    .cd-report-card-grid { gap: .85rem; }
    .cd-report-metrics { grid-template-columns: 1fr; gap: .65rem; }
    .cd-report-reader-card, .cd-report-metric { padding: 1rem; }
    .cd-report-dialog-content .cd-report-disclaimer { padding: .65rem 1.1rem; }

}
