.pb-parq-wrapper {
    margin: 20px 0;
}

.pb-parq-wrapper h2,
.pb-parq-wrapper h3 {
    margin-bottom: 10px;
}

.pb-parq-wrapper .form-row {
    margin-bottom: 10px;
}

.pb-parq-wrapper .pb-error {
    border-color: #cc0000 !important;
    background: #fff6f6 !important;
}

/* Remove blue focus border from WC notices on PAR-Q */
.paperboy-parq-container .woocommerce-error:focus,
.paperboy-parq-container .woocommerce-info:focus,
.paperboy-parq-container .woocommerce-message:focus {
    outline: none !important;
    box-shadow: none !important;
}

/* Also remove forced browser focus highlight */
.paperboy-parq-container .woocommerce-error,
.paperboy-parq-container .woocommerce-info,
.paperboy-parq-container .woocommerce-message {
    outline: none !important;
}

.woocommerce-error.paperboy-required-note {
    outline: none;
    box-shadow: none;
}

/* PaperBoy: remove blue focus outline from WooCommerce notices */
.woocommerce .woocommerce-message[tabindex],
.woocommerce .woocommerce-error[tabindex],
.woocommerce .woocommerce-info[tabindex] {
    outline: none !important;
    box-shadow: none !important;
}

/* Belt + braces: kill any focus outline on notices */
.woocommerce .woocommerce-message:focus,
.woocommerce .woocommerce-error:focus,
.woocommerce .woocommerce-info:focus,
.woocommerce .woocommerce-message:focus-visible,
.woocommerce .woocommerce-error:focus-visible,
.woocommerce .woocommerce-info:focus-visible {
    outline: none !important;
    box-shadow: none !important;
}

/*    FLUFFYTECH: Account health tab tweaks
--------------------------------------------------------------------------------------- */

.paperboy-account-health h2,
.paperboy-account-health h3,
.paperboy-account-health h4 {
    margin-top: 1.5em;
}

.paperboy-account-health .paperboy-radio {
    display: inline-block !important;
    margin-right: 1.5em;
}

.paperboy-account-health .paperboy-radio input[type="radio"] {
    margin-right: 0.35em;
}

/* Make the waiver table look like standard Woo tables */
.paperboy-account-health table.shop_table {
    margin-top: 1em;
}

.paperboy-account-health .paperboy-muted {
    color: #777;
    font-size: 0.9em;
}

.paperboy-my-classes__basket-actions {
    text-align: right;
    margin: 12px 0 25px;
}

/*    FLUFFYTECH: My Classes – Past classes collapsible arrow
--------------------------------------------------------------------------------------- */

.paperboy-my-classes details.paperboy-my-classes__past {
    margin-top: 18px;
    padding-top: 10px;
    border-top: 1px solid rgba(0,0,0,0.08);
}

.paperboy-my-classes details.paperboy-my-classes__past > summary {
    cursor: pointer;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 0;
    list-style: none;
}

/* Remove default marker and replace with our own arrow */
.paperboy-my-classes details.paperboy-my-classes__past > summary::-webkit-details-marker {
    display: none;
}
.paperboy-my-classes details.paperboy-my-classes__past > summary::before {
    content: "▸";
    font-size: 16px;
    line-height: 1;
    transform: translateY(-1px);
    transition: transform 0.15s ease;
    opacity: 0.85;
}

/* Rotate arrow when open */
.paperboy-my-classes details.paperboy-my-classes__past[open] > summary::before {
    transform: rotate(90deg) translateY(-1px);
}

.paperboy-my-classes details.paperboy-my-classes__past > summary:focus {
    outline: none;
    box-shadow: none;
}
.paperboy-my-classes details.paperboy-my-classes__past > summary:focus-visible {
    outline: 2px solid rgba(0,0,0,0.18);
    outline-offset: 3px;
    border-radius: 6px;
}