/* Lily Reflexology — interactive tool prototype */

.reflexology-tool {
    max-width: 1100px;
    margin: 2rem auto 0;
}

.reflexology-tool-options {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.reflexology-tool-option {
    appearance: none;
    border: 1px solid rgba(181, 151, 99, 0.55);
    border-radius: 999px;
    background: #fff;
    color: #1d2720;
    padding: 12px 20px;
    font: inherit;
    font-size: 0.95rem;
    line-height: 1.2;
    cursor: pointer;
    transition:
        background-color 180ms ease,
        color 180ms ease,
        border-color 180ms ease,
        transform 180ms ease,
        box-shadow 180ms ease;
}

.reflexology-tool-option:hover {
    border-color: #b59763;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(29, 39, 32, 0.08);
}

.reflexology-tool-option:focus-visible {
    outline: 2px solid #b59763;
    outline-offset: 3px;
}

.reflexology-tool-option.is-active {
    background: #1d2720;
    border-color: #1d2720;
    color: #fff;
}

@media (max-width: 767px) {
    .reflexology-tool {
        margin-top: 1.5rem;
    }

    .reflexology-tool-options {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .reflexology-tool-option {
        width: 100%;
        min-height: 48px;
        padding: 10px 12px;
        font-size: 0.9rem;
    }

    .reflexology-tool-option:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }
}

.reflexology-foot-part {
    fill: #f7f2e8;
    stroke: #263229;
    stroke-width: 2.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Illustrated foot base */

.reflexology-foot-map {
    position: relative;
    width: min(100%, 330px);
    margin: 0 auto;
}

.reflexology-foot-image {
    display: block;
    width: 100%;
    height: auto;
}

/* Interactive reflex zones */

.reflexology-zone-overlay {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.reflexology-zone {
    fill: rgba(181, 151, 99, 0);
    stroke: rgba(181, 151, 99, 0);
    stroke-width: 5;
    transition:
        fill 250ms ease,
        stroke 250ms ease,
        filter 250ms ease;
}

.reflexology-zone.is-active {
    fill: rgba(181, 151, 99, 0.30);
    stroke: rgba(181, 151, 99, 0.85);
    filter: drop-shadow(0 0 10px rgba(181, 151, 99, 0.35));
}

/* Foot prompt positioning */

.reflexology-foot-prompt {
    width: 100%;
    margin: 1.25rem auto 0;
    text-align: center;
    color: #7b7b70;
    font-size: 0.82rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

/* Foot + information layout */

.reflexology-tool-display {
    display: grid;
    grid-template-columns: minmax(300px, 0.9fr) minmax(340px, 1.1fr);
    align-items: center;
    gap: clamp(3rem, 7vw, 7rem);
    max-width: 900px;
    margin: 2.75rem auto 0;
}

.reflexology-tool-display .reflexology-foot-stage {
    margin: 0;
}

.reflexology-info-panel {
    max-width: 440px;
    text-align: left;
}

.reflexology-info-panel[hidden] {
    display: none;
}

.reflexology-info-panel h2 {
    margin: 0.65rem 0 1rem;
    color: #1d2720;
}

.reflexology-info-panel p {
    line-height: 1.7;
}

.reflexology-self-care {
    margin: 1.75rem 0;
    padding: 1.4rem 1.5rem;
    border-left: 2px solid #b59763;
    background: rgba(181, 151, 99, 0.08);
}

.reflexology-self-care h3 {
    margin: 0 0 0.5rem;
    color: #1d2720;
}

.reflexology-self-care p {
    margin: 0;
}

@media (max-width: 767px) {
    .reflexology-tool-display {
        grid-template-columns: 1fr;
        gap: 2rem;
        margin-top: 2rem;
    }

    .reflexology-info-panel {
        max-width: 100%;
    }
}

/* Align interactive zones with revised foot artwork */
.reflexology-zone-overlay {
    transform: translateX(-25px);
}
