.chi-square-lab {
    max-width: 1080px;
}

.chi-square-lab__introduction {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
}

.chi-square-lab__card {
    margin-bottom: 1.5rem;
    padding: clamp(1.25rem, 3vw, 2rem);
    background: var(--surface, #fff);
    border: 1px solid var(--border, #dae3ef);
    border-radius: var(--radius-md, 1rem);
    box-shadow: var(--shadow-sm, 0 6px 24px #17233c12);
}

.chi-square-lab__card h2 {
    margin-bottom: 1rem;
    color: var(--ink, #16243b);
}

.chi-square-lab__formula {
    margin: 1.5rem 0 0;
    text-align: center;
}

.chi-square-lab__formula code {
    display: inline-block;
    padding: .65rem 1rem;
    color: var(--ink, #16243b);
    background: var(--teal-soft, #e6f4f1);
    border-radius: .6rem;
    font-size: clamp(1.1rem, 2vw, 1.45rem);
}

.chi-square-lab__warning {
    margin: 1rem 0 0;
    padding: 1rem;
    border-left: 4px solid #b98124;
    background: #fff7e8;
    color: #574115;
}

.chi-square-lab__controls {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(12rem, 1fr);
    gap: 1rem;
    margin: 1.25rem 0;
}

.chi-square-lab__input {
    max-width: 45rem;
    font-family: ui-monospace, "Cascadia Code", Consolas, monospace;
    line-height: 1.55;
}

.chi-square-lab__status {
    margin: .9rem 0 0;
    font-weight: 650;
}

.chi-square-lab__status[data-state="error"] { color: #a4233d; }

.chi-square-lab__summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .8rem;
    margin: 1.5rem 0;
}

.chi-square-lab__summary > div {
    padding: .9rem;
    background: var(--page, #f4f7fb);
    border-radius: .7rem;
}

.chi-square-lab__summary dt {
    color: var(--muted, #596780);
    font-size: .84rem;
}

.chi-square-lab__summary dd {
    margin: .25rem 0 0;
    color: var(--ink, #16243b);
    font-size: 1.35rem;
    font-weight: 750;
}

.chi-square-lab__decision {
    padding: 1rem;
    border-radius: .7rem;
    font-weight: 700;
}

.chi-square-lab__decision[data-result="reject"] { background: #fff0ef; color: #892d2b; }
.chi-square-lab__decision[data-result="retain"] { background: #e9f6ee; color: #205a39; }
.chi-square-lab__source { margin: 0 0 2rem; }

@media (max-width: 767.98px) {
    .chi-square-lab__introduction,
    .chi-square-lab__controls { grid-template-columns: 1fr; }
    .chi-square-lab__summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 420px) {
    .chi-square-lab__summary { grid-template-columns: 1fr; }
}
