/* Copyright (c) 2026 Prasanna Kumar. All rights reserved.
   Proprietary and confidential. See the LICENSE file at the repository root.

   Shared by /privacy and /dpa. Deliberately NOT the landing page's stylesheet:
   that one is inline in index.html and carries the hero, the SVG field and the
   animation machinery, none of which a text document needs. Duplicating ~200
   lines of it into two files to reuse a typeface would be the worse trade.

   The palette values are copied from index.html rather than imported, and that
   is a knowing duplication of five hex values — the alternative is extracting
   the landing page's inline <style> into a file, which changes the one page
   that currently works and is a bigger diff than this is worth. If a third
   legal page appears, do that extraction instead of copying again. */

:root {
    --ink: #16242E;
    --ink-soft: #46565F;
    --rule: #C2CFC4;
    --paper: #FCFBF7;
    --accent: #7A4B2A;
    --measure: 34rem;
}

* { box-sizing: border-box; }

body {
    margin: 0;
    background: var(--paper);
    color: var(--ink);
    font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 16px;
    line-height: 1.65;
}

.wrap {
    max-width: 44rem;
    margin: 0 auto;
    padding: 0 20px 80px;
}

.mast {
    display: flex;
    align-items: baseline;
    gap: 18px;
    padding: 26px 0 0;
    border-bottom: 1px solid var(--rule);
    margin-bottom: 40px;
}

.mast b { font-size: 18px; letter-spacing: -0.01em; }
.mast a { color: var(--ink-soft); text-decoration: none; font-size: 14px; }
.mast a:hover { text-decoration: underline; text-underline-offset: 3px; }

h1 {
    font-family: Newsreader, Georgia, serif;
    font-weight: 500;
    font-size: 34px;
    line-height: 1.18;
    letter-spacing: -0.015em;
    margin: 0 0 6px;
}

h2 {
    font-family: Newsreader, Georgia, serif;
    font-weight: 500;
    font-size: 22px;
    margin: 40px 0 10px;
}

p, li { max-width: var(--measure); color: var(--ink-soft); }
li { margin-bottom: 8px; }
strong, b { color: var(--ink); font-weight: 600; }
a { color: var(--accent); }

.updated { font-size: 14px; color: var(--ink-soft); margin: 0 0 8px; }

/* The honesty note. This says what the document is and is not, and it is at the
   top rather than in a footer because a reader deciding whether to trust us
   with their invoices should meet the caveat before the reassurance. */
.note {
    border-left: 2px solid var(--rule);
    padding: 2px 0 2px 16px;
    margin: 24px 0 8px;
    font-size: 15px;
}

table { border-collapse: collapse; margin: 14px 0; width: 100%; max-width: var(--measure); }
th, td { text-align: left; padding: 8px 12px 8px 0; border-bottom: 1px solid var(--rule); font-size: 15px; vertical-align: top; }
th { color: var(--ink); font-weight: 600; }
td { color: var(--ink-soft); }

footer { margin-top: 56px; padding-top: 20px; border-top: 1px solid var(--rule); font-size: 14px; color: var(--ink-soft); }
footer a { text-decoration: none; }
footer a:hover { text-decoration: underline; text-underline-offset: 3px; }

@media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; } }
