/* SPDX-License-Identifier: MIT
 *
 * Copied from hire4real/static/css/components/attribution.css (MIT, same author), 2026-10-04,
 * 101 lines. Colour tokens replaced per doctrine 8.
 *
 * Here it is the attribution layer (SL_05F Part C): the tiled watermark a screenshot carries,
 * the per-table source footer, and the print sheet that keeps a brand header and a source
 * footer on a printed page while it strips the interactive chrome. Their class names, geometry
 * and order are kept; their header follows this one unchanged, except that a colour value a note
 * quotes is elided as [colour] (doctrine 8 reaches comments too).
 *
 * DIVERGES FROM hire4real/static/css/components/attribution.css: the polarity flip. Their tile
 *   is white because their default theme is dark, and their theme-light-supplements.css turns it
 *   for light readers with `[data-theme="light"] .data-watermark { filter: invert(1); opacity:
 *   0.05 }`. This site is light-first - the sand page is the default - so the tile ships in the
 *   dark token (--ink) and invert(1) moves to [data-theme="dark"], at the same opacity 0.05: the
 *   same two states, the same faint weight, the opposite default. It lives here, beside the rule
 *   it flips, because this site has no theme-light-supplements.css.
 *
 * DIVERGES FROM hire4real/static/css/components/attribution.css: the print header and footer
 *   name stonelane.fyi and this site's own source line, not theirs.
 *
 * DIVERGES FROM hire4real/static/css/components/attribution.css: .watchlist-fab leaves the
 *   print strip list - a watchlist implies an account, and this site has none (Part E). This
 *   site's own chrome joins it: .nav-tools (the terminology and theme toggles) and .skip-link.
 *   The bottom bar is theirs, .mobile-bottom-nav, already on their list.
 */
/* NIGHT 75 — Screenshot Attribution + Share Cards
 *
 * Defensive branding that survives the three ways data leaves the site:
 *   - screenshots      -> tiled watermark overlay (T1)
 *   - prints / PDFs    -> @media print header + footer (T3)
 *   - copy-paste       -> clipboard citation injection (clipboard-attribution.js, T4)
 * plus a per-table source footer (T2) and branded share cards (share-card.js, T5).
 *
 * Colors use var(--token, #fallback) so they track the dark theme
 * (bg-neutral-950 / text-neutral-100 / emerald accents) whether or not the
 * custom property is defined — matching the codebase convention.
 */

/* ----- T1: tiled watermark overlay -----------------------------------------
 * Visible in screenshots, invisible to interaction (pointer-events:none).
 * Faint (4%) so it never obscures content or blocks clicks/modals. */
.data-watermark {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;   /* clicks pass straight through */
    z-index: 9999;
    opacity: 0.04;
    background-image: url('/static/img/watermark-tile.svg');
    background-repeat: repeat;
    background-size: 200px 60px;
}

/* SL_05F Part C - the polarity flip, declared in the header: dark readers get the inverted tile. */
[data-theme="dark"] .data-watermark {
    filter: invert(1);
    opacity: 0.05;
}

/* ----- T2: per-table / per-page source footer ------------------------------
 * Brand + DOL source + freshness, so a screenshot of any data surface still
 * says where the numbers came from. */
.data-source-footer {
    font-size: 11px;
    color: var(--ink-2);
    padding: 8px 0;
    border-top: 1px solid var(--line);
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: space-between;
    align-items: center;
}
.data-source-footer .source-brand {
    font-weight: 600;
    color: var(--earth);
}

/* ----- T3: print media override -------------------------------------------
 * Force a brand header + source footer onto printed/PDF'd pages and strip the
 * interactive chrome, so an exported page is clean AND attributed. A block
 * (not position:fixed) footer is used — fixed paged-media positioning is
 * unreliable across browsers; a trailing block always renders. */
@media print {
    body::before {
        content: "Source: stonelane.fyi | Compiled from U.S. Department of Labor public filings";
        display: block;
        text-align: center;
        font-size: 12px;
        padding: 8px;
        border-bottom: 1px solid var(--line);
        margin-bottom: 16px;
    }
    body::after {
        content: "stonelane.fyi - What they filed, not what they said | History, not a forecast. Not investment advice.";
        display: block;
        text-align: center;
        font-size: 10px;
        padding: 8px;
        border-top: 1px solid var(--line);
        margin-top: 16px;
    }
    /* Strip interactive chrome from prints */
    nav,
    .site-footer,
    .share-button,
    .share-buttons,
    .share-actions,
    .btn-share,
    .toggle-switch,
    .data-watermark,
    .sticky-action-bar,
    .mobile-bottom-nav,
    #sw-update-banner,
    #ios-install-banner,
    .nav-tools,
    .skip-link {
        display: none !important;
    }
    /* Data tables print full-width */
    .data-table {
        width: 100%;
    }
}

/* ----- T7: branded share-card buttons --------------------------------------
 * Reuse the existing .share-btn dark-theme styling; .btn-share is the JS hook
 * (static/js/share-card.js binds [data-share-card]). */
.btn-share {
    cursor: pointer;
}
