/* Press UI: common Practice and closing Exercises surfaces. */
.press-practice-card {
    background: #fff;
    border: 1px solid #d4d7dc;
    border-radius: 6px;
    margin-block: 1.5rem;
    padding: 8px 1rem;
    min-width: 0;
}
.press-practice-card[data-press-activity="exercises"] { padding: 1rem; }
.press-practice-card > h2 { margin-top: 0; }
.bd-content .press-practice-card > p.press-practice-label {
    font-size: 1rem !important;
    font-weight: 600;
    margin: 0 0 .5rem;
    border: 0;
}
.press-practice-tabs { display: flex; flex-wrap: wrap; gap: 1.25rem; border-bottom: 1px solid #d4d7dc; margin: .5rem 0 .8rem; }
.press-practice-tabs > button {
    font: inherit; color: var(--pst-color-text-muted); background: transparent;
    border: 0; border-bottom: 2px solid transparent; border-radius: 0; padding: .4rem 0; cursor: pointer;
    white-space: normal; text-align: left;
}
.press-practice-tabs > button[aria-selected="true"] { color: var(--pst-color-text-base); font-weight: 600; border-bottom-color: var(--pst-color-primary); }
.press-practice-card :is(button, summary, [role="tabpanel"]):focus-visible { outline: 2px solid var(--pst-color-primary); outline-offset: 2px; }
.press-practice-panels > [role="tabpanel"][hidden], .press-practice-solution[hidden] { display: none !important; }
/* Outrank legacy Python/DSM card rules, which also use !important. */
body .bd-article-container .press-practice-card[data-press-activity] :is(.bd-exercise-question-card, .dbs-exercise, .ccs-exercise) {
    border: 0 !important; box-shadow: none !important; border-radius: 0 !important;
    background: transparent !important; margin: 0 !important; padding: 0 !important;
}
.press-practice-card :is(.exercise-label, .exercise-count-label, .exercise-count) { display: none !important; }
.press-practice-card .press-practice-task-heading { display: none; }
.press-practice-card .cell { margin-block: .5rem; }
.press-practice-card :is(.tag_thebe-interactive, .tag_exercise, .cell_input, .thebelab-input) { border: 0 !important; box-shadow: none !important; }
.press-practice-help { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: .75rem; }
.press-practice-help > button {
    font: inherit; color: var(--pst-color-text-muted); background: transparent;
    border: 0; border-left: 1px solid var(--pst-color-border); border-radius: 0; padding: .25rem .75rem; cursor: pointer;
}
.press-practice-help > button::before { content: '›'; display: inline-block; margin-right: .4rem; }
.press-practice-help > button[aria-expanded="true"]::before { transform: rotate(90deg); }
.press-practice-help > button[aria-expanded="true"] { color: var(--pst-color-text-base); }
.press-practice-solution details { border: 0 !important; background: transparent !important; box-shadow: none !important; padding: 0 !important; }
.press-practice-solution details > summary { display: none !important; }
.press-practice-details, .press-practice-details > summary {
    font-size: 1rem !important; border: 0 !important; box-shadow: none !important; background: transparent !important;
}
.press-practice-details { border-left: 1px solid var(--pst-color-border) !important; border-radius: 0 !important; }
.press-practice-card :is(.cell_output pre, .jp-OutputArea pre) { background: #f7f7f7 !important; border: 0 !important; padding-block: 8px !important; }
html[data-theme="dark"] .press-practice-card { background: var(--pst-color-background); border-color: var(--pst-color-border); }
html[data-theme="dark"] .press-practice-card :is(.cell_output pre, .jp-OutputArea pre) { background: var(--pst-color-surface, #29313d) !important; color: var(--pst-color-text-base); }
@media print {
    .press-practice-tabs, .press-practice-help { display: none; }
    .press-practice-panels > [role="tabpanel"][hidden] { display: block !important; }
    .press-practice-card .press-practice-task-heading { display: block; }
}

.press-practice-source-header { display: none; }
.press-practice-card .press-practice-card { border: 0; padding: 0; background: transparent; }

.press-practice-card + .rubric { margin-block-start: 1.5rem; }
