/**
 * Strategies guides (/strategies and /strategies/*): extra pieces on top of the theme's
 * .bb-page / .bb-note / .bb-chip (bb-pages.css). Own file (server pub/media/strategies/guides.css)
 * so no Tailwind rebuild is needed; bump ?v= in the pages after a change.
 * Pieces fill the page (the site container); no max-width caps (content width, 2026-10-19).
 * Tokens: the storefront's --color-bb-* (fallbacks are the same hex), the menu plate's --bb-rivet.
 * See the game repo's tools/web_export/cms/README.md and docs/website-theme.md.
 */

/* A riveted armour plate: the guide's key box */
.bbg-plate {
    position: relative;
    margin: 1.25rem 0 1.5rem;
    padding: 1.25rem 1.5rem;
    border: 1px solid var(--color-bb-line, #2a3756);
    border-radius: 10px;
    background: linear-gradient(180deg, rgb(255 255 255 / .035), transparent 40%), var(--color-bb-panel, #161f36);
    box-shadow: inset 0 1px 0 rgb(255 255 255 / .07), inset 0 -2px 0 rgb(0 0 0 / .25), 0 .75rem 2rem rgb(0 0 0 / .3);
}
.bbg-plate::before {
    content: "";
    position: absolute;
    inset: 8px;
    pointer-events: none;
    opacity: .9;
    background:
        var(--bb-rivet) left top / 12px 12px no-repeat,
        var(--bb-rivet) right top / 12px 12px no-repeat,
        var(--bb-rivet) left bottom / 12px 12px no-repeat,
        var(--bb-rivet) right bottom / 12px 12px no-repeat;
}
.bbg-plate > :last-child { margin-bottom: 0; }
.bbg-plate h2:first-child, .bbg-plate h3:first-child { margin-top: 0; }

/* Key numbers in a row of small stamped tiles */
.bb-page .bbg-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr));
    gap: .6rem;
    margin: 1rem 0 1.25rem;
    padding: 0;
    list-style: none;
}
.bb-page .bbg-stats li {
    margin: 0;
    padding: .7rem .8rem;
    border: 1px solid var(--color-bb-line, #2a3756);
    border-radius: 8px;
    background: var(--color-bb-panel-2, #1d2844);
}
.bbg-stats b {
    display: block;
    color: var(--color-bb-amber-hi, #fbbf24);
    font-family: var(--font-mono, ui-monospace, monospace);
    font-size: 1.25rem;
    line-height: 1.2;
}
.bbg-stats span { display: block; color: var(--color-bb-muted, #9aa6c0); font-size: .85rem; line-height: 1.35; }

/* Tips: rivet bullets on a raised strip */
.bb-page ul.bbg-tips {
    padding: .9rem 1.1rem .9rem 1.1rem;
    border-left: 4px solid var(--color-bb-blue, #38bdf8);
    border-radius: 0 6px 6px 0;
    background: var(--color-bb-panel-2, #1d2844);
    list-style: none;
}
.bb-page ul.bbg-tips li { position: relative; padding-left: 1.4rem; }
.bb-page ul.bbg-tips li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .42em;
    width: 12px;
    height: 12px;
    background: var(--bb-rivet) center / contain no-repeat;
}
.bbg-tips-title {
    display: block;
    margin-bottom: .2rem;
    color: var(--color-bb-blue, #38bdf8);
    font-family: var(--font-display, inherit);
    font-size: .8rem;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.bb-page ul.bbg-tips li.bbg-tips-head { padding-left: 0; }
.bb-page ul.bbg-tips li.bbg-tips-head::before { display: none; }

/* Tables of numbers (scroll sideways on a phone instead of squashing) */
.bbg-table-wrap { margin: .5rem 0 1.25rem; overflow-x: auto; }
.bbg-table { width: 100%; border-collapse: collapse; font-size: .95rem; }
.bbg-table th {
    padding: .45rem .6rem;
    border-bottom: 1px solid var(--color-bb-line, #2a3756);
    color: var(--color-bb-muted, #9aa6c0);
    font-family: var(--font-display, inherit);
    font-size: .78rem;
    font-weight: 600;
    letter-spacing: .04em;
    text-align: left;
    text-transform: uppercase;
    white-space: nowrap;
}
.bbg-table td { padding: .45rem .6rem; border-bottom: 1px solid rgb(255 255 255 / .06); vertical-align: top; }
.bbg-table td.bbg-num { font-family: var(--font-mono, ui-monospace, monospace); color: var(--color-bb-amber-hi, #fbbf24); white-space: nowrap; }

/* "Contents" strip at the top of a long guide */
.bb-page .bbg-toc { display: flex; flex-wrap: wrap; gap: .4rem; margin: 0 0 1.25rem; padding: 0; list-style: none; }
.bb-page .bbg-toc li { margin: 0; }
.bb-page .bbg-toc a {
    display: inline-block;
    padding: .2rem .65rem;
    border: 1px solid var(--color-bb-line, #2a3756);
    border-radius: 999px;
    background: var(--color-bb-panel, #161f36);
    color: var(--color-bb-text, #e8ecf5);
    font-size: .88rem;
    text-decoration: none;
}
.bb-page .bbg-toc a:hover { border-color: var(--color-bb-amber, #f59e0b); color: var(--color-bb-amber-hi, #fbbf24); }

/* Next / previous guide */
.bbg-next { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .75rem; margin: 2rem 0 0; padding-top: 1rem; border-top: 1px solid var(--color-bb-line, #2a3756); }
.bb-page .bbg-next a { color: var(--color-bb-amber, #f59e0b); font-family: var(--font-display, inherit); font-weight: 600; text-decoration: none; }
.bb-page .bbg-next a:hover { color: var(--color-bb-amber-hi, #fbbf24); }

.bb-page h2[id] { scroll-margin-top: 1rem; }

@media (max-width: 40rem) {
    .bbg-plate { padding: 1.05rem 1.05rem; }
    .bbg-plate::before { inset: 5px; }
}
