/*
 * tolere.com — Bottom-nav "Postcards & cachet"
 *
 * Paradigme UNIQUE à ce site (anti-fingerprint cross-domain).
 * Préfixe `tlr-pst-` exclusif. Palette papier kraft + encre indigo + tampon.
 *
 * Inspiration : timbres-poste perforés alignés sur une carte postale, avec
 * un cachet de cire rouge centré (FAB). Chaque tab = un timbre avec un
 * portrait/picto encré dedans, bordure perforée typique des timbres.
 *
 * Refonte 2026-05-02 — pas de mutualisation _common/.
 */

:root {
    --tlr-pst-paper:    #fff8f3;
    --tlr-pst-kraft:    #dccfa4;
    --tlr-pst-kraft-2:  #c8b988;
    --tlr-pst-ink:      #1f3057;
    --tlr-pst-ink-2:    #34466e;
    --tlr-pst-stamp:    #a8332c;
    --tlr-pst-wax:      #6b1a14;
    --tlr-pst-shadow:   rgba(31, 48, 87, .15);
}

.tlr-pst-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 950;
    height: calc(74px + env(safe-area-inset-bottom, 0));
    padding-bottom: env(safe-area-inset-bottom, 0);
    background: var(--tlr-pst-paper);
    border-top: 1px dashed var(--tlr-pst-kraft-2);
    box-shadow: 0 -2px 12px var(--tlr-pst-shadow);
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding-left: 8px;
    padding-right: 8px;
    gap: 6px;
}

/* Each tab = a postage stamp with perforated edge */
.tlr-pst-stamp {
    flex: 1 1 auto;
    max-width: 72px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 6px 4px 5px;
    background: var(--tlr-pst-kraft);
    color: var(--tlr-pst-ink);
    text-decoration: none;
    font-family: "Courier New", "Courier", monospace;
    font-size: 9.5px;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-weight: 700;
    position: relative;
    -webkit-tap-highlight-color: transparent;
    /* Perforated edge via radial holes */
    -webkit-mask-image:
        radial-gradient(circle at 4px 0, transparent 2.5px, #000 3px),
        radial-gradient(circle at 4px 100%, transparent 2.5px, #000 3px);
    -webkit-mask-size: 8px 8px, 8px 8px;
    -webkit-mask-position: top, bottom;
    -webkit-mask-repeat: repeat-x;
            mask-image:
        radial-gradient(circle at 4px 0, transparent 2.5px, #000 3px),
        radial-gradient(circle at 4px 100%, transparent 2.5px, #000 3px);
            mask-size: 8px 8px, 8px 8px;
            mask-position: top, bottom;
            mask-repeat: repeat-x;
    transition: background .2s ease, transform .15s ease;
}

.tlr-pst-stamp svg {
    width: 22px;
    height: 22px;
    stroke: var(--tlr-pst-ink);
    fill: none;
    stroke-width: 1.6;
}

.tlr-pst-stamp:active { transform: rotate(-2deg) scale(.96); }

.tlr-pst-stamp[aria-current="page"] {
    background: var(--tlr-pst-stamp);
    color: var(--tlr-pst-paper);
}
.tlr-pst-stamp[aria-current="page"] svg {
    stroke: var(--tlr-pst-paper);
}

/* Centerpiece — wax seal stamp (FAB) */
.tlr-pst-wax {
    flex: 0 0 56px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background:
        radial-gradient(circle at 35% 30%, #c54a3f 0%, var(--tlr-pst-stamp) 45%, var(--tlr-pst-wax) 100%);
    box-shadow:
        inset 0 -3px 6px rgba(0, 0, 0, .35),
        0 3px 10px rgba(168, 51, 44, .55);
    margin-top: -22px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--tlr-pst-paper);
    text-decoration: none;
    font-family: "Cinzel", "Trajan Pro", serif;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0;
    text-shadow: 0 1px 2px rgba(107, 26, 20, .8);
    -webkit-tap-highlight-color: transparent;
    transform: rotate(-8deg);
}

.tlr-pst-wax::after {
    /* Wax embossed initial */
    content: "T";
}

.tlr-pst-wax:active {
    transform: rotate(-8deg) scale(.94);
}

/* Push body content above */
body.tlr-pst-padded { padding-bottom: 92px; }

@media (min-width: 768px) {
    .tlr-pst-bar { display: none; }
    body.tlr-pst-padded { padding-bottom: 0; }
}
