:root {
    color-scheme: light;
    --a06-ink: #0b1728;
    --a06-muted: #536579;
    --a06-line: #cad8e3;
    --a06-paper: #f5f8fb;
    --a06-cyan: #0b7890;
    --a06-violet: #5b43c8;
    --a06-focus: #005fcc;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 62.5%;
}

* { box-sizing: border-box; }
html { max-width: 100%; overflow-x: hidden; scroll-behavior: auto; }
body { max-width: 100%; margin: 0; overflow-x: hidden; color: var(--a06-ink); background: #fff; font-size: 1.8rem; line-height: 1.68; }
a { color: #3f2cb0; text-decoration: underline; text-decoration-thickness: .09em; text-underline-offset: .15em; }
a:focus-visible, .a06-table-region:focus-visible { outline: 3px solid var(--a06-focus); outline-offset: 4px; }
.a06-skip { position: fixed; z-index: 10; top: 1rem; left: 1rem; padding: 1rem 1.4rem; color: #fff; background: var(--a06-ink); transform: translateY(-180%); }
.a06-skip:focus { transform: translateY(0); }
.a06-article { width: min(100% - 40px, 112rem); margin: 0 auto; padding: clamp(4rem, 8vw, 9rem) 0; }
.a06-header, .a06-content { width: min(100%, 74rem); margin-inline: auto; }
.a06-header { padding-bottom: clamp(3rem, 6vw, 6rem); border-bottom: 1px solid var(--a06-line); }
.a06-header h1 { margin: 0; font-size: clamp(4rem, 7vw, 7.2rem); line-height: 1.03; letter-spacing: -.055em; }
.a06-private-label { margin: 0 0 1.4rem; color: var(--a06-cyan); font-size: 1.3rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.a06-content > p, .a06-content > ul, .a06-content > ol, .a06-content > blockquote, .a06-content > pre { max-width: 72ch; margin-inline: auto; }
.a06-content h2 { margin: clamp(6rem, 10vw, 10rem) 0 2.2rem; padding-top: 1.8rem; border-top: 1px solid var(--a06-line); font-size: clamp(3rem, 5vw, 4.5rem); line-height: 1.12; letter-spacing: -.035em; scroll-margin-top: 2rem; }
.a06-content h3 { margin: 4.8rem 0 1.5rem; font-size: clamp(2.2rem, 3.5vw, 3rem); line-height: 1.2; scroll-margin-top: 2rem; }
.a06-content p { margin-block: 0 1.6rem; }
.a06-content ul, .a06-content ol { padding-left: 2.4rem; }
.a06-content li + li { margin-top: .8rem; }
.a06-quick-answer { margin-top: clamp(3rem, 5vw, 5rem); padding: clamp(2.2rem, 4vw, 3.4rem); background: linear-gradient(135deg, #e8fbff, #f2efff 68%, #fff8e7); border: 1px solid #c9e3ec; border-radius: 2.2rem; font-size: 2rem; }
.a06-rule { margin-block: 3rem; padding: 2rem 2.4rem; background: var(--a06-paper); border-left: 5px solid var(--a06-violet); }
.a06-toc { margin-top: clamp(5rem, 8vw, 8rem); }
.a06-toc h2 { margin-top: 0; }
.a06-toc ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .4rem 2.4rem; padding: 0; list-style: none; }
.a06-toc a { display: flex; align-items: center; min-height: 44px; }
.a06-table-region { width: min(100vw - 40px, 112rem); margin: 3rem 50%; overflow-x: auto; overscroll-behavior-inline: contain; border: 1px solid var(--a06-line); border-radius: 1.6rem; transform: translateX(-50%); scrollbar-color: var(--a06-violet) #e9eef3; scrollbar-width: auto; }
.a06-table-region::after { display: block; height: .4rem; content: ""; background: linear-gradient(90deg, var(--a06-cyan), var(--a06-violet)); }
.a06-table-region table { width: 100%; min-width: 72rem; border-collapse: collapse; line-height: 1.45; }
.a06-table-region:nth-of-type(2) table { min-width: 44rem; }
.a06-table-region th, .a06-table-region td { padding: 1.4rem 1.6rem; text-align: left; vertical-align: top; border-bottom: 1px solid var(--a06-line); }
.a06-table-region thead th { color: #fff; background: var(--a06-ink); }
.a06-table-region tbody th { width: 24%; background: var(--a06-paper); font-weight: 750; }
.a06-table-region tbody tr:last-child > * { border-bottom: 0; }
.a06-fictional-disclosure { margin-block: 2.4rem 4rem; padding: 2rem 2.4rem; color: #fff; background: var(--a06-ink); border: 2px solid var(--a06-cyan); }
.a06-content pre, .a06-decision-card { padding: clamp(2rem, 4vw, 3.4rem); overflow: visible; white-space: pre-wrap; overflow-wrap: anywhere; color: var(--a06-ink); background: var(--a06-paper); border: 2px solid var(--a06-line); border-radius: 1.8rem; font: 700 1.45rem/1.75 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.a06-content pre code, .a06-decision-card code { display: block; max-width: 100%; white-space: inherit; overflow-wrap: anywhere; word-break: break-word; }
.a06-action-bridge { margin-top: 3rem; padding: 2.4rem; background: linear-gradient(135deg, #e8fbff, #f2efff 68%, #fff8e7); border: 1px solid #c9e3ec; border-radius: 1.8rem; font-size: 1.95rem; }
.a06-disclosure { margin-top: 6rem; padding-top: 3rem; border-top: 2px solid var(--a06-ink); color: var(--a06-muted); }
.a06-disclosure p { margin: 0; font-size: 1.6rem; }

@media (max-width: 620px) {
    body { font-size: 1.7rem; }
    .a06-article { width: calc(100% - 40px); padding-top: 4rem; }
    .a06-toc ul { grid-template-columns: 1fr; }
    .a06-content h2 { margin-top: 6rem; }
    .a06-content h3 { margin-top: 3.8rem; }
    .a06-table-region { width: calc(100vw - 40px); }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

@media (forced-colors: active) {
    .a06-quick-answer, .a06-rule, .a06-fictional-disclosure, .a06-action-bridge, .a06-decision-card { color: CanvasText; background: Canvas; border-color: CanvasText; }
    .a06-table-region::after { display: none; }
}

@media print {
    @page { size: landscape; margin: 12mm; }
    body { color: #000; font-size: 10pt; }
    .a06-skip { display: none; }
    .a06-article, .a06-header, .a06-content { width: 100%; max-width: none; }
    .a06-content h2 { break-after: avoid; margin-top: 2.4rem; }
    .a06-content h3 { break-after: avoid; margin-top: 1.8rem; }
    .a06-table-region { width: 100%; margin: 1.6rem 0; overflow: visible; border: 1px solid #000; transform: none; }
    .a06-table-region table { min-width: 0; font-size: 9pt; }
    .a06-table-region thead { display: table-header-group; }
    .a06-table-region tr { break-inside: avoid; }
    .a06-quick-answer, .a06-rule, .a06-fictional-disclosure, .a06-action-bridge, .a06-decision-card { color: #000; background: #fff; border: 1px solid #000; }
    a::after { content: " (" attr(href) ")"; font-weight: 400; word-break: break-all; }
}
