/* Dog Policy — frontend styles.
 * Loaded automatically when the block is present (block.json "style").
 *
 * A framed "hundvänligt" card: paw-marked header, then a vertical list of
 * area rows. Each row leads with a status chip (yes = accent, limited =
 * amber, no = muted) so the policy scans at a glance. Uses the shared design
 * tokens (--surface, --line, --accent, --ink-soft) from widget-frame.css.
 */

.b-dogpolicy {
    background: var(--surface, #fff);
    border: 1px solid var(--line, #e4ded2);
    border-radius: var(--radius, 14px);
    padding: 28px 26px 24px;
    margin: 24px 0;
    box-shadow: 0 2px 8px rgba(60, 48, 30, 0.06);
}

.b-dogpolicy__head {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    margin-bottom: 20px;
}

.b-dogpolicy__pawwrap {
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--accent, #9c3a52) 12%, transparent);
    color: var(--accent, #9c3a52);
    display: grid;
    place-items: center;
}

.b-dogpolicy__headtext { min-width: 0; }

.b-dogpolicy__kicker {
    display: block;
    margin-bottom: 4px;
}

.b-dogpolicy__title {
    margin: 0 0 6px;
    font-size: 1.5rem;
    line-height: 1.2;
}

.b-dogpolicy__intro {
    margin: 0;
    color: var(--ink-soft, #6b6255);
    font-size: 0.95rem;
    line-height: 1.55;
}

.b-dogpolicy__rows {
    display: flex;
    flex-direction: column;
    gap: 2px;
    border-top: 1px solid var(--line, #e4ded2);
}

.b-dogpolicy__row {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 14px 4px;
    border-bottom: 1px solid var(--line, #e4ded2);
}

.b-dogpolicy__status {
    flex: 0 0 auto;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    margin-top: 1px;
}

.b-dogpolicy__row--yes .b-dogpolicy__status {
    background: color-mix(in srgb, var(--ok, #2e7d5b) 16%, transparent);
    color: var(--ok, #2e7d5b);
}
.b-dogpolicy__row--limited .b-dogpolicy__status {
    background: color-mix(in srgb, var(--warn, #b8860b) 18%, transparent);
    color: var(--warn, #b8860b);
}
.b-dogpolicy__row--no .b-dogpolicy__status {
    background: color-mix(in srgb, var(--ink-soft, #6b6255) 14%, transparent);
    color: var(--ink-soft, #6b6255);
}

.b-dogpolicy__rowbody { min-width: 0; }

.b-dogpolicy__area {
    display: block;
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.35;
    color: var(--ink, #2c2620);
}

.b-dogpolicy__note {
    display: block;
    color: var(--ink-soft, #6b6255);
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 2px;
}

.b-dogpolicy__foot {
    margin: 18px 0 0;
    padding-top: 16px;
    color: var(--ink, #2c2620);
    font-size: 0.95rem;
    line-height: 1.55;
    font-style: italic;
}

@media (max-width: 540px) {
    .b-dogpolicy { padding: 22px 18px 18px; }
    .b-dogpolicy__title { font-size: 1.3rem; }
}
