/* The AI Detector gauge is the shared report gauge design. */
:is(.ai-probability-gauge, .plagiarism-score-gauge, .psx-shared-gauge) {
    --psx-gauge-marker-color: #15803d;
    position: relative;
    width: min(100%, 220px);
    height: 148px;
    margin: 0 auto;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
}

:is(.ai-probability-gauge, .plagiarism-score-gauge, .psx-shared-gauge)[data-score-band="mixed"] { --psx-gauge-marker-color: #a16207; }
:is(.ai-probability-gauge, .plagiarism-score-gauge, .psx-shared-gauge)[data-score-band="likely"] { --psx-gauge-marker-color: #c2410c; }
:is(.ai-probability-gauge, .plagiarism-score-gauge, .psx-shared-gauge)[data-score-band="generated"] { --psx-gauge-marker-color: #b91c1c; }

:is(.ai-probability-gauge, .plagiarism-score-gauge, .psx-shared-gauge) > svg {
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
}

:is(.ai-probability-gauge, .plagiarism-score-gauge, .psx-shared-gauge) path {
    fill: none;
    stroke-width: 12;
    stroke-linecap: round;
}

:is(.ai-gauge-track, .plagiarism-gauge-track, .psx-shared-gauge-track) {
    stroke: var(--psx-gauge-track, #e4e4e7);
}

.ai-gauge-stop-human { stop-color: var(--psx-risk-safe, #16a34a); }
.ai-gauge-stop-mixed { stop-color: #eab308; }
.ai-gauge-stop-likely { stop-color: var(--psx-risk-medium, #ea580c); }
.ai-gauge-stop-generated { stop-color: var(--psx-risk-high, #dc2626); }

:is(.ai-gauge-marker, .plagiarism-gauge-marker, .psx-shared-gauge-marker) {
    fill: var(--psx-card, var(--psx-surface, #ffffff));
    stroke: var(--psx-gauge-marker-color);
    stroke-width: 3;
    vector-effect: non-scaling-stroke;
}

:is(.ai-gauge-readout, .plagiarism-gauge-readout, .psx-shared-gauge-copy) {
    position: absolute;
    top: 55px;
    right: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

:is(.ai-gauge-readout, .plagiarism-gauge-readout, .psx-shared-gauge-copy) > strong {
    margin: 0;
    color: var(--psx-card-foreground, var(--psx-text, #18181b));
    font-size: 42px;
    font-weight: 600;
    line-height: 0.95;
}

:is(.ai-gauge-readout, .plagiarism-gauge-readout, .psx-shared-gauge-copy) > span {
    position: absolute;
    top: 52px;
    width: 100%;
    margin-top: 0;
    color: var(--psx-muted-foreground, var(--psx-text-muted, #71717a));
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    text-align: center;
    text-transform: none;
    letter-spacing: 0;
    overflow-wrap: anywhere;
}
