/* Air Quality — Sidebar Zone (narrow tall).
 * Stacks vertically: header + 3 boxes (gauge, bars, sparkline), each on its own row.
 */

.aq-sidebar {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--aq-color, #00E400) 35%, #ffffff) 0%, #ffffff 100%);
}

.aq-sidebar-card {
    position: relative;
    display: grid;
    grid-template-rows: auto 1fr 1fr 1fr;
    color: #202124;
    padding: 2cqmin;
    width: 90%;
    height: 80%;
    box-sizing: border-box;
    gap: 2cqmin;
    background: transparent;
    border: none;
    box-shadow: none;
}

/* ── Top: header ─────────────────────────────────────────── */
.aq-sidebar-top {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 1cqmin;
    padding-bottom: 1.5cqmin;
}
.aq-sidebar-city {
    font-size: 4cqmin !important;
    font-weight: 500 !important;
    font-family: 'Roboto', sans-serif;
    color: #5F6368;
    line-height: 1 !important;
}
.aq-sidebar-category {
    --shadow: color-mix(in srgb, var(--aq-color, #00E400), #000 60%);
    font-size: 6cqmin !important;
    font-weight: 700 !important;
    font-family: 'Montserrat', sans-serif;
    color: var(--aq-color, #00E400);
    line-height: 1.1 !important;
    text-shadow:
        -0.1cqmin 0 var(--shadow),
        0 0.1cqmin var(--shadow),
        0.1cqmin 0 var(--shadow),
        0 -0.1cqmin var(--shadow),
        -0.8cqmin 0.8cqmin var(--shadow),
        -0.7cqmin 0.7cqmin var(--shadow),
        -0.6cqmin 0.6cqmin var(--shadow),
        -0.5cqmin 0.5cqmin var(--shadow),
        -0.4cqmin 0.4cqmin var(--shadow),
        -0.3cqmin 0.3cqmin var(--shadow),
        -0.2cqmin 0.2cqmin var(--shadow),
        -0.1cqmin 0.1cqmin var(--shadow);
}
.aq-sidebar-advice {
    font-size: 3cqmin !important;
    font-weight: 400 !important;
    font-family: 'Roboto', sans-serif;
    color: #202124;
    line-height: 1.4 !important;
    max-width: 95%;
}

/* ── Shared box styling ──────────────────────────────────── */
.aq-sidebar-box {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 1.2cqmin;
    padding: 2cqmin;
    background-color: color-mix(in srgb, var(--aq-color, #00E400), #000 80%);
    color: #e5dede;
    border: 0.3cqmin solid var(--aq-color, #00E400);
    border-radius: 1.2cqmin;
    box-shadow: 0.4cqmin 0.4cqmin 0.1cqmin #000000;
    min-width: 0;
    min-height: 0;
}
.aq-sidebar-chart-title {
    font-size: 2.2cqmin !important;
    font-weight: 600 !important;
    font-family: 'Roboto', sans-serif;
    color: #B8B8B8;
    text-align: start;
    letter-spacing: 0.05em !important;
    line-height: 1 !important;
    text-transform: uppercase;
}

/* ── Gauge box ───────────────────────────────────────────── */
.aq-sidebar-gauge-wrap {
    position: relative;
    width: 100%;
    flex: 1 1 auto;
    min-height: 0;
    align-self: stretch;
    margin: 0 auto;
}
.aq-sidebar-gauge {
    width: 100%;
    height: 100%;
}
.aq-sidebar-gauge svg {
    width: 100% !important;
    height: 100% !important;
    display: block;
}
.aq-sidebar-gauge-value {
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    line-height: 1;
}
.aq-sidebar-aqi {
    font-size: 9cqmin !important;
    font-weight: 700 !important;
    font-family: 'Montserrat', sans-serif;
    color: var(--aq-color, #00E400);
    line-height: 1 !important;
    -webkit-text-stroke: 0.25cqmin #000000;
    text-shadow: 0 0 1.5cqmin color-mix(in srgb, var(--aq-color, #00E400), transparent 50%);
}
.aq-sidebar-aqi-label {
    font-size: 2cqmin !important;
    font-weight: 600 !important;
    font-family: 'Roboto', sans-serif;
    color: #B8B8B8;
    letter-spacing: 0.15em !important;
    margin-top: 0.4cqmin;
}

/* ── Bars box ────────────────────────────────────────────── */
.aq-sidebar-bars {
    flex: 1 1 auto;
    width: 100%;
    min-height: 0;
}
.aq-sidebar-bars svg {
    width: 100% !important;
    height: 100% !important;
    display: block;
}

/* ── Sparkline box ───────────────────────────────────────── */
.aq-sidebar-sparkline {
    flex: 1 1 auto;
    width: 100%;
    min-height: 0;
}
.aq-sidebar-sparkline svg {
    width: 100% !important;
    height: 100% !important;
    display: block;
}
