/* Theme overrides for the body map on bjornmassage.se.
   Loaded after bodymap.css. Colours follow the editorial palette. */

[data-bodymap].bm {
    --bm-bg: #faf8f4;
    --bm-surface: #ffffff;
    --bm-text: #171513;
    --bm-muted: #55504a;
    --bm-line: #ddd8cf;
    --bm-skin: #f3eee8;
    --bm-skin-line: #cfc6bc;
    --bm-landmark: #e7e0d8;
    --bm-muscle: #e6ddd4;
    --bm-muscle-line: #c9bfb4;
    --bm-muscle-hover: #ddd2c6;
    --bm-source: #171513;
    --bm-source-soft: #8a8178;
    --bm-zone: #7a3b2e;
    --bm-tp: #5c2418;
    --bm-focus: #7a3b2e;
    --bm-font: 'Inter Variable', ui-sans-serif, system-ui, sans-serif;

    max-width: 100%;
    color: var(--bm-text);
    box-shadow: none;
}

[data-bodymap].bm a {
    color: inherit;
    text-underline-offset: 2px;
}

[data-bodymap].bm .bm-seg {
    background: #efeae3;
}

[data-bodymap].bm .bm-item:hover {
    background: #f4f0ea;
    border-color: #cfc4b8;
}

[data-bodymap].bm .bm-close:hover {
    background: #f4f0ea;
    color: var(--bm-text);
}

[data-bodymap].bm .bm-chip-on,
[data-bodymap].bm .bm-peekbar.bm-on {
    color: #faf8f4;
}

[data-bodymap].bm .bm-peekbar.bm-on {
    background: var(--bm-text);
}

[data-bodymap].bm .bm-peek-go {
    color: #f3d2c8;
}

[data-bodymap].bm .bm-tag {
    border-color: #e4d3cc;
    background: #f8f1ee;
    color: #7a3b2e;
}

[data-bodymap].bm .bm-tag:hover {
    background: #f3e6e0;
}

[data-bodymap].bm .bm-seg {
    flex-wrap: wrap;
    max-width: 100%;
}

@media (max-width: 560px) {
    [data-bodymap].bm .bm-seg-btn {
        flex: 1 1 40%;
        padding: 10px 12px;
        white-space: normal;
        line-height: 1.2;
    }
}

[data-bodymap].bm[data-mode='movements'] .bm-pick,
[data-bodymap].bm[data-mode='movements'] .bm-legend {
    display: none;
}

[data-bodymap].bm[data-mode='movements'] .bm-zones {
    pointer-events: none;
}

[data-bodymap].bm[data-mode='movements'] .bm-muscle {
    cursor: pointer;
}

[data-bodymap].bm[data-mode='movements'] .bm-muscle:hover path {
    fill: var(--bm-muscle-hover);
    stroke: #b8977d;
}

[data-bodymap].bm[data-mode='movements'] .bm-muscle.bm-prime path,
[data-bodymap].bm[data-mode='movements'] .bm-muscle.bm-prime:hover path {
    fill: #7a3b2e;
    stroke: #5c2418;
    stroke-width: 2;
    opacity: 1;
}

[data-bodymap].bm[data-mode='movements'] .bm-muscle.bm-syn path,
[data-bodymap].bm[data-mode='movements'] .bm-muscle.bm-syn:hover path {
    fill: #c9a197;
    stroke: #7a3b2e;
    stroke-width: 1.8;
    opacity: 1;
}

[data-bodymap].bm.bm-has-move .bm-muscle:not(.bm-prime):not(.bm-syn) path {
    opacity: 0.35;
}
