:root {
  --bg: #fcfcfa;
  --surface: #ffffff;
  --tint: #f4f5f1;
  --law-bg: #f6f7f3;
  --fg: #15181c;
  --text: #262b32;
  --muted: #5e6670;
  
  --faint: #666e77;
  --line: #e5e7e2;
  --line-strong: #d4d7d1;
  --line-soft: #eef0eb; 
  --chip-bg: #f1f3ee; 
  --brand: #0f6e5f;
  --brand-hover: #0a5648;
  --brand-ink: #0b4f44;
  --brand-soft: #e6f4f0;
  --brand-line: #bfe0d7;
  --on-brand: #ffffff; 
  --selection: #b9d7fb;
  --green: #1c7a4a;
  --green-soft: #e4f4ea;
  --star: #f2b705; 
  --amber: #8a5a00;
  --amber-soft: #fbf1dc;
  --mark: #fbeec7; 
  --mark-strong: #f3d27e; 
  --mark-flash: #fff0b3; 
  --info: #24448f; 
  --info-soft: #e6edfb;
  --rose-hover: #8e2742;
  --diff-mod-line: #d4a72c;
  --visited: #6a3d9a; 
  --overlay: rgba(21, 24, 28, 0.22); 
  --shadow-lg: 0 24px 64px rgba(21, 24, 28, 0.2); 
  --rose: #a8324f;
  --rose-soft: #fbe9ee;
  --orange: #a44f12;
  --orange-soft: #fcefe4;
  --slate: #55606d;
  --slate-soft: #eef0f3;
  
  --chart-for: #2563a8;
  --chart-against: #a8324f;
  --chart-mixed: #55606d;
  
  --chart-mid: #a3acb6;
  --chart-none: #e1e5e9;
  
  --band: #0b4f44;
  --band-text: #ffffff;
  --band-muted: #bfe0d7;
  --shadow-sm: 0 1px 2px rgba(21, 24, 28, 0.05);
  --shadow: 0 2px 8px rgba(21, 24, 28, 0.05), 0 14px 36px rgba(21, 24, 28, 0.07);
  --sans: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --measure: 760px;
  
  --page: 1280px;
  --radius: 14px;
  
  --fs-label: 12.5px; 
  --fs-small: 13.5px; 
  --fs-meta: 14.5px; 
  --fs-ui: 15px; 
  --fs-body: 17px; 
  --fs-lead: 19px; 
  --r-sm: 8px; 
  --r-md: 12px; 
  --r-lg: 14px; 
  --r-xl: 18px; 
  --r-pill: 999px; 
  color-scheme: light;
}
:root { color-scheme: light dark; }
:root.light-only { color-scheme: light; }
:root.theme-light { color-scheme: light; }
:root.theme-dark { color-scheme: dark; }
@media screen and (prefers-color-scheme: dark) {
:root:not(.light-only):not(.theme-light) {
    --bg: #111413;
    --surface: #191d1b;
    --tint: #222725;
    --law-bg: #1b201e;
    --fg: #eef1ee;
    --text: #d6dbd7;
    --muted: #a5ada8;
    --faint: #939c97;
    --line: #2b322f;
    --line-strong: #3a433f;
    --line-soft: #242a27;
    --chip-bg: #222725;
    --brand: #5cc8ad;
    --brand-hover: #82d8c3;
    --brand-ink: #a7ead8;
    --brand-soft: #16362f;
    --brand-line: #2a5a4f;
    --on-brand: #08201a;
    --selection: #2f5580;
    --green: #6fd69a;
    --green-soft: #173225;
    --star: #facc15;
    --amber: #f2c063;
    --amber-soft: #352a12;
    --mark: #4a3a12;
    --mark-strong: #6e5516;
    --mark-flash: #5a4a14;
    --info: #b7c8f3;
    --info-soft: #1d2740;
    --rose-hover: #f7a8ba;
    --diff-mod-line: #8a6d1d;
    --visited: #c4a6ee;
    --overlay: rgba(0, 0, 0, 0.5);
    --shadow-lg: 0 24px 64px rgba(0, 0, 0, 0.55);
    --rose: #f2849c;
    --rose-soft: #3a1a23;
    --orange: #f5a36a;
    --orange-soft: #382215;
    --slate: #aeb8c3;
    --slate-soft: #232930;
    --chart-for: #4f93d6;
    --chart-against: #cf5f7a;
    --chart-mixed: #aeb8c3;
    --chart-mid: #535b64;
    --chart-none: #2a2f34;
    --band: #123c34;
    --band-text: #eef1ee;
    --band-muted: #a7ead8;
    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
    --shadow: 0 2px 8px rgba(0, 0, 0, 0.35), 0 14px 36px rgba(0, 0, 0, 0.45);
  }
}
:root.theme-dark {
  --bg: #111413;
  --surface: #191d1b;
  --tint: #222725;
  --law-bg: #1b201e;
  --fg: #eef1ee;
  --text: #d6dbd7;
  --muted: #a5ada8;
  --faint: #939c97;
  --line: #2b322f;
  --line-strong: #3a433f;
  --line-soft: #242a27;
  --chip-bg: #222725;
  --brand: #5cc8ad;
  --brand-hover: #82d8c3;
  --brand-ink: #a7ead8;
  --brand-soft: #16362f;
  --brand-line: #2a5a4f;
  --on-brand: #08201a;
  --selection: #2f5580;
  --green: #6fd69a;
  --green-soft: #173225;
  --star: #facc15;
  --amber: #f2c063;
  --amber-soft: #352a12;
  --mark: #4a3a12;
  --mark-strong: #6e5516;
  --mark-flash: #5a4a14;
  --info: #b7c8f3;
  --info-soft: #1d2740;
  --rose-hover: #f7a8ba;
  --diff-mod-line: #8a6d1d;
  --visited: #c4a6ee;
  --overlay: rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 24px 64px rgba(0, 0, 0, 0.55);
  --rose: #f2849c;
  --rose-soft: #3a1a23;
  --orange: #f5a36a;
  --orange-soft: #382215;
  --slate: #aeb8c3;
  --slate-soft: #232930;
  --chart-for: #4f93d6;
  --chart-against: #cf5f7a;
  --chart-mixed: #aeb8c3;
  --chart-mid: #535b64;
  --chart-none: #2a2f34;
  --band: #123c34;
  --band-text: #eef1ee;
  --band-muted: #a7ead8;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
  --shadow: 0 2px 8px rgba(0, 0, 0, 0.35), 0 14px 36px rgba(0, 0, 0, 0.45);
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html, body { margin: 0; }
html { scroll-behavior: smooth; }
html:has(main.doc.reader) { scroll-behavior: auto; }
body {
  background: var(--bg);
  color: var(--text);
  font: 17px/1.65 var(--sans);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
a { color: var(--brand); text-decoration: none; }
a:hover { color: var(--brand-hover); text-decoration: underline; text-underline-offset: 3px; }
button { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid var(--brand); outline-offset: 3px; border-radius: 6px; }
::selection { background: var(--selection); }
h1, h2, h3 { color: var(--fg); letter-spacing: -0.01em; }
.link-row { display: flex; flex-wrap: wrap; gap: 6px 20px; }
.g-count { margin-left: 6px; font-weight: 400; color: var(--faint); font-variant-numeric: tabular-nums; letter-spacing: 0; text-transform: none; }
.label,
.examples-title,
.lawcard-group > h3,
.cond-map h3,
.ask-more-label,
.unit h2, .doc h2,
.day .item .act,
.acts-label,
.foot-title,
.brief h3,
.thesis > span,
.hit-label,
.doc-text h2,
.doc-cited h2,
.doc-ai-head h2,
.plain h2,
.sg-group h3,
.sg-label { font-size: var(--fs-label); font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; color: var(--faint); }
p { margin: 0 0 1em; }
.i { display: inline-block; flex: none; width: 1.15em; height: 1.15em; vertical-align: -0.2em; background: currentColor; -webkit-mask: var(--i) center / contain no-repeat; mask: var(--i) center / contain no-repeat; }
.i-circle-user-round { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.925 20.056a6 6 0 0 0-11.851.001'/%3E%3Ccircle cx='12' cy='11' r='4'/%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3C/svg%3E"); }
.i-user { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E"); }
.i-settings { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E"); }
.i-folder { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z'/%3E%3C/svg%3E"); }
.i-bell { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.268 21a2 2 0 0 0 3.464 0'/%3E%3Cpath d='M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326'/%3E%3C/svg%3E"); }
.i-history { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8'/%3E%3Cpath d='M3 3v5h5'/%3E%3Cpath d='M12 7v5l4 2'/%3E%3C/svg%3E"); }
.i-log-out { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16 17 5-5-5-5'/%3E%3Cpath d='M21 12H9'/%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3C/svg%3E"); }
.i-x { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E"); }
.i-sparkles { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z'/%3E%3Cpath d='M20 2v4'/%3E%3Cpath d='M22 4h-4'/%3E%3Ccircle cx='4' cy='20' r='2'/%3E%3C/svg%3E"); }
.i-languages { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 8 6 6'/%3E%3Cpath d='m4 14 6-6 2-3'/%3E%3Cpath d='M2 5h12'/%3E%3Cpath d='M7 2h1'/%3E%3Cpath d='m22 22-5-10-5 10'/%3E%3Cpath d='M14 18h6'/%3E%3C/svg%3E"); }
.i-download { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 15V3'/%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E"); }
.i-chevron-down { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); }
.i-link { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/svg%3E"); }
.i-calendar { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 2v3'/%3E%3Cpath d='M16 2v3'/%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M3 9h18'/%3E%3C/svg%3E"); }
.i-code-xml { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m18 16 4-4-4-4'/%3E%3Cpath d='m6 8-4 4 4 4'/%3E%3Cpath d='m14.5 4-5 16'/%3E%3C/svg%3E"); }
.i-send { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z'/%3E%3Cpath d='m21.854 2.147-10.94 10.939'/%3E%3C/svg%3E"); }
.i-quote { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z'/%3E%3Cpath d='M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z'/%3E%3C/svg%3E"); }
.i-file-text { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z'/%3E%3Cpath d='M14 2v5a1 1 0 0 0 1 1h5'/%3E%3Cpath d='M10 9H8'/%3E%3Cpath d='M16 13H8'/%3E%3Cpath d='M16 17H8'/%3E%3C/svg%3E"); }
.i-folder-plus { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 10v6'/%3E%3Cpath d='M9 13h6'/%3E%3Cpath d='M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z'/%3E%3C/svg%3E"); }
.i-maximize-2 { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3h6v6'/%3E%3Cpath d='m21 3-7 7'/%3E%3Cpath d='m3 21 7-7'/%3E%3Cpath d='M9 21H3v-6'/%3E%3C/svg%3E"); }
.i-external-link { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3h6v6'/%3E%3Cpath d='M10 14 21 3'/%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3C/svg%3E"); }
.i-check { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E"); }
.i-book-open { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v16'/%3E%3Cpath d='M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z'/%3E%3C/svg%3E"); }
.i-scale { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z'/%3E%3Cpath d='m2 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z'/%3E%3Cpath d='M7 21h10'/%3E%3Cpath d='M12 3v18'/%3E%3Cpath d='M3 7h2c2 0 5-1 7-2 2 1 5 2 7 2h2'/%3E%3C/svg%3E"); }
.i-panel-left-close { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='18' x='3' y='3' rx='2'/%3E%3Cpath d='M9 3v18'/%3E%3Cpath d='m16 15-3-3 3-3'/%3E%3C/svg%3E"); }
.i-panel-left-open { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='18' x='3' y='3' rx='2'/%3E%3Cpath d='M9 3v18'/%3E%3Cpath d='m14 9 3 3-3 3'/%3E%3C/svg%3E"); }
.i-search { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E"); }
.i-plus { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='M12 5v14'/%3E%3C/svg%3E"); }
.i-ellipsis { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='1'/%3E%3Ccircle cx='19' cy='12' r='1'/%3E%3Ccircle cx='5' cy='12' r='1'/%3E%3C/svg%3E"); }
.i-file-diff { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z'/%3E%3Cpath d='M9 10h6'/%3E%3Cpath d='M12 13V7'/%3E%3Cpath d='M9 17h6'/%3E%3C/svg%3E"); }
.i-arrow-right { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E"); }
.i-chevron-right { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E"); }
.i-chevron-up { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m18 15-6-6-6 6'/%3E%3C/svg%3E"); }
.i-arrow-left { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 19-7-7 7-7'/%3E%3Cpath d='M19 12H5'/%3E%3C/svg%3E"); }
.i-arrow-up { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 7-7 7 7'/%3E%3Cpath d='M12 19V5'/%3E%3C/svg%3E"); }
.i-shield-check { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E"); }
.i-message-square-text { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z'/%3E%3Cpath d='M7 11h10'/%3E%3Cpath d='M7 15h6'/%3E%3Cpath d='M7 7h8'/%3E%3C/svg%3E"); }
.i-share { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2v13'/%3E%3Cpath d='m16 6-4-4-4 4'/%3E%3Cpath d='M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8'/%3E%3C/svg%3E"); }
.i-copy { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='14' height='14' x='8' y='8' rx='2' ry='2'/%3E%3Cpath d='M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2'/%3E%3C/svg%3E"); }
.i-sun { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2'/%3E%3Cpath d='M12 20v2'/%3E%3Cpath d='m4.93 4.93 1.41 1.41'/%3E%3Cpath d='m17.66 17.66 1.41 1.41'/%3E%3Cpath d='M2 12h2'/%3E%3Cpath d='M20 12h2'/%3E%3Cpath d='m6.34 17.66-1.41 1.41'/%3E%3Cpath d='m19.07 4.93-1.41 1.41'/%3E%3C/svg%3E"); }
.i-keyboard { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 8h.01'/%3E%3Cpath d='M12 12h.01'/%3E%3Cpath d='M14 8h.01'/%3E%3Cpath d='M16 12h.01'/%3E%3Cpath d='M18 8h.01'/%3E%3Cpath d='M6 8h.01'/%3E%3Cpath d='M7 16h10'/%3E%3Cpath d='M8 12h.01'/%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3C/svg%3E"); }
.i-moon { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z'/%3E%3C/svg%3E"); }
.i-star { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z'/%3E%3C/svg%3E"); }
.i-star-fill { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath fill='%23000' d='M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z'/%3E%3C/svg%3E"); }
.i-dredd { --i: url("data:image/png;base64,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"); }
.top {
  position: sticky;
  top: 0;
  z-index: 20;
  background: color-mix(in srgb, var(--bg) 92%, transparent);
  backdrop-filter: saturate(1.2) blur(10px);
  border-bottom: 1px solid var(--line);
}
.top-inner {
  max-width: var(--page);
  margin: 0 auto;
  min-height: 68px;
  padding: 0 24px;
  display: flex;
  align-items: center;
  gap: 8px 12px;
}
.top-inner > .brand { margin-right: 16px; flex: none; }
.brand { display: inline-flex; align-items: center; gap: 12px; color: var(--fg); }
.brand:hover { color: var(--fg); text-decoration: none; }
.brand-mark {
  width: 38px;
  height: 38px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Crect width='32' height='32' rx='5.76' fill='%230f6e5f'/%3E%3Cpath d='M8.37 19.29V8.01H10.24V9.37H10.36Q10.5 9.08 10.77 8.74Q11.05 8.4 11.52 8.15Q11.99 7.91 12.71 7.91Q13.66 7.91 14.43 8.39Q15.2 8.88 15.65 9.82Q16.1 10.76 16.1 12.13Q16.1 13.48 15.65 14.43Q15.21 15.38 14.45 15.87Q13.68 16.37 12.71 16.37Q12 16.37 11.53 16.13Q11.07 15.89 10.79 15.55Q10.51 15.21 10.36 14.92H10.28V19.29ZM12.19 14.8Q13.15 14.8 13.64 14.04Q14.14 13.28 14.14 12.12Q14.14 10.98 13.65 10.23Q13.16 9.48 12.19 9.48Q11.24 9.48 10.75 10.2Q10.25 10.93 10.25 12.12Q10.25 13.32 10.75 14.06Q11.26 14.8 12.19 14.8ZM15.89 24.1V12.82H17.76V14.18H17.88Q18.02 13.89 18.29 13.55Q18.57 13.21 19.04 12.96Q19.51 12.72 20.23 12.72Q21.18 12.72 21.95 13.2Q22.72 13.69 23.17 14.63Q23.62 15.57 23.62 16.94Q23.62 18.29 23.17 19.24Q22.73 20.19 21.97 20.68Q21.2 21.18 20.23 21.18Q19.52 21.18 19.05 20.94Q18.59 20.7 18.31 20.36Q18.03 20.02 17.88 19.73H17.8V24.1ZM19.71 19.61Q20.67 19.61 21.16 18.85Q21.66 18.09 21.66 16.93Q21.66 15.79 21.17 15.04Q20.68 14.29 19.71 14.29Q18.76 14.29 18.27 15.01Q17.77 15.74 17.77 16.93Q17.77 18.13 18.27 18.87Q18.78 19.61 19.71 19.61Z' fill='%23fff' stroke='%23fff' stroke-width='0.6' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
  flex: none;
}
.wordmark { font-size: 19px; font-weight: 600; letter-spacing: -0.01em; white-space: nowrap; }
.top nav { display: flex; align-items: center; gap: 2px; min-width: 0; }
.top nav a {
  color: var(--muted);
  padding: 7px 12px;
  border-radius: 9px;
  font-size: 15.5px;
  white-space: nowrap;
}
.top nav a:hover { color: var(--fg); background: var(--tint); text-decoration: none; }
.top nav a.active { color: var(--fg); font-weight: 600; }
.nav-more { display: none; position: relative; }
.nav-more summary { display: flex; align-items: center; gap: 2px; padding: 6px 10px; border-radius: 8px; color: var(--muted); font-size: 15px; font-weight: 500; cursor: pointer; list-style: none; white-space: nowrap; }
.nav-more summary::-webkit-details-marker { display: none; }
.nav-more summary .i { width: 1em; height: 1em; transition: transform .15s; }
.nav-more[open] summary .i { transform: rotate(180deg); }
.nav-more summary:hover, .nav-more[open] summary { color: var(--fg); background: var(--tint); }
.nav-more:has(a.active) summary { color: var(--fg); font-weight: 600; }
.nav-more-menu { position: absolute; top: calc(100% + 6px); right: 0; z-index: 30; min-width: 200px; padding: 6px; background: var(--surface); border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow); }
.top nav .nav-more-menu a { display: block; padding: 9px 10px; border-radius: 8px; font-size: 15px; }
.pro-link {
  flex: none;
  font-size: 14.5px;
  font-weight: 600;
  color: var(--bg);
  background: var(--fg);
  padding: 8px 14px;
  border-radius: 10px;
  white-space: nowrap;
}
.top .nav-keys { margin-left: auto; }
.top-sep { flex: none; width: 1px; height: 20px; margin: 0 8px; background: var(--line); }
.pro-link:hover { color: var(--bg); background: color-mix(in srgb, var(--fg) 82%, var(--bg)); text-decoration: none; }
.pro-link.active { box-shadow: 0 0 0 3px var(--line-strong); }
.pro-short { display: none; }
@media (max-width: 520px) {
.pro-full { display: none; }
.pro-short { display: inline; }
}
.jump-button { flex: none; display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px; border: 0; border-radius: 9px; background: none; color: var(--muted); font: inherit; font-size: 15.5px; white-space: nowrap; cursor: pointer; }
.jump-button:hover { background: var(--tint); color: var(--fg); }
.jump-button kbd { min-width: 0; font: 11.5px/1 var(--sans); color: var(--faint); background: var(--tint); border: 1px solid var(--line); border-radius: 5px; padding: 2px 5px; }
.kbd-mac, .mac .kbd-pc { display: none; }
.mac .kbd-mac { display: inline; }
@media (max-width: 720px), (hover: none) {
.jump-button, .top-sep { display: none; }
.top .theme-button { margin-left: auto; }
}
main {
  flex: 1;
  width: 100%;
  max-width: calc(var(--measure) + 64px);
  margin: 0 auto;
  padding: 24px 32px 96px;
}
.hero { padding: clamp(40px, 9vh, 104px) 0 0; text-align: center; }
.hero h1 {
  font-size: clamp(44px, 6.4vw, 68px);
  line-height: 1.02;
  
  font-weight: 650;
  letter-spacing: -0.03em;
  margin: 0 0 30px;
  text-wrap: balance;
}
.hero .lead {
  margin: 0 auto 56px;
  max-width: 640px;
  text-wrap: balance;
  color: var(--muted);
  font-size: 20px;
  line-height: 1.55;
}
.hero .lead a { font-weight: 600; color: var(--brand-ink); text-decoration: underline; text-decoration-color: var(--brand-line); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.hero .lead a:hover { color: var(--brand-hover); text-decoration-color: var(--brand); }
.hero .lead .line { display: block; }
@media (min-width: 900px) {
.hero .lead .line { white-space: nowrap; }
}
.hero .search { text-align: left; }
.hero .search { scroll-margin-top: 92px; }
.results { margin-top: 40px; }
.examples { margin: 40px 0 0; padding-left: 4px; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; text-align: left; }
.examples a { display: inline-flex; align-items: center; text-decoration: none; line-height: normal; }
.home-section { margin-top: 112px; }
.home-section > h2 { font-size: 28px; line-height: 1.2; font-weight: 600; letter-spacing: -0.02em; margin: 0 0 10px; }
.steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; counter-reset: step; }
.steps li { counter-increment: step; }
.steps li::before {
  content: counter(step);
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--brand-soft);
  color: var(--brand-ink);
  font-weight: 700;
  font-size: 15px;
  margin-bottom: 14px;
}
.steps h3 { margin: 0 0 6px; font-size: 18px; font-weight: 650; }
.steps p { margin: 0; color: var(--muted); font-size: 15.5px; line-height: 1.55; }
.trust { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 36px; }
.trust div { padding-left: 16px; border-left: 2px solid var(--brand-line); }
.trust h3 { margin: 0 0 4px; font-size: 17px; font-weight: 650; }
.trust p { margin: 0; color: var(--muted); font-size: 15.5px; line-height: 1.55; }
.home-trust { margin-top: 128px; }
.home-trust > h2 { margin: 0 0 48px; font-size: clamp(30px, 4vw, 40px); line-height: 1.12; font-weight: 650; letter-spacing: -0.025em; text-wrap: balance; }
.home-numbers { margin: 0 0 56px; padding: 0 0 40px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 32px; border-bottom: 1px solid var(--line); }
.home-numbers > div { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.home-numbers dt { order: 2; font-size: 14.5px; color: var(--muted); }
.home-numbers dd { order: 1; margin: 0; font-size: clamp(36px, 5vw, 52px); line-height: 1; font-weight: 650; letter-spacing: -0.03em; color: var(--brand); white-space: nowrap; }
.home-pillars { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 40px; }
.home-pillars > div { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.home-pillars h3, .home-quality h3 { margin: 0; font-size: 19px; line-height: 1.3; font-weight: 600; letter-spacing: -0.01em; color: var(--fg); }
.home-pillars p, .home-quality > p { margin: 0; font-size: 15.5px; line-height: 1.6; color: var(--muted); text-wrap: pretty; }
.home-pillars a { font-weight: 600; color: var(--brand-ink); text-decoration: underline; text-decoration-color: var(--brand-line); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.home-pillars a:hover { color: var(--brand-hover); text-decoration-color: var(--brand); }
.home-quality { margin: 56px 0 0; padding: 28px 30px; border-radius: 16px; background: var(--law-bg); display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.home-quality > p b { font-weight: 600; color: var(--fg); }
.home-quality dl { margin: 12px 0 12px; display: flex; flex-wrap: wrap; gap: 12px 40px; }
.home-quality dl > div { display: flex; flex-direction: column; gap: 2px; max-width: 320px; }
.home-quality dd { margin: 0; font-size: 28px; line-height: 1.1; font-weight: 650; letter-spacing: -0.02em; color: var(--brand); }
.home-quality dd span { font-size: 15px; font-weight: 600; letter-spacing: 0; color: var(--muted); }
.home-quality dt { order: 2; font-size: 14px; color: var(--muted); }
.home-quality dl > div[title] { cursor: help; }
.home-quality .btn.secondary { background: var(--surface); border: 1px solid var(--brand-line); }
.home-quality .btn.secondary:hover { background: var(--brand-soft); }
.trust-note { margin: 40px 0 0; font-size: 15px; line-height: 1.6; color: var(--muted); }
.home-trust .link-row { margin-top: 10px; font-size: 15px; }
.home-cta { margin-top: 96px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 24px; padding: 28px 30px; border-radius: 16px; background: var(--brand-soft); }
.home-cta > p { margin: 0; font-size: 22px; line-height: 1.3; font-weight: 600; letter-spacing: -0.01em; color: var(--brand-ink); text-wrap: balance; }
.home-cta-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; }
.home-cta .btn { padding: 10px 18px; font-size: 15px; border-radius: 11px; }
.home-cta a { font-weight: 600; color: var(--brand-ink); white-space: nowrap; }
.search {
  background: var(--surface);
  border: 1px solid var(--line-strong);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 12px 12px 10px;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.search:focus-within { border-color: var(--brand); box-shadow: var(--shadow), 0 0 0 4px var(--brand-soft); }
.hero .search { display: flex; flex-direction: column; gap: 0; padding: 0; border: 1px solid var(--line-strong); border-radius: 20px; box-shadow: 0 1px 2px rgba(21, 24, 28, 0.04), 0 24px 48px -28px rgba(11, 79, 68, 0.35); }
.hero .search:focus-within { border-color: var(--brand); box-shadow: 0 0 0 1px var(--brand), 0 0 0 5px var(--brand-soft), 0 24px 48px -28px rgba(11, 79, 68, 0.35); }
.hero .search textarea {
  border: 0;
  outline: 0;
  resize: none;
  background: transparent;
  color: var(--fg);
  font: 18px/1.5 var(--sans);
  padding: 24px 26px 16px;
  min-height: 120px;
  max-height: 280px;
}
.search textarea::placeholder { color: color-mix(in srgb, var(--faint) 70%, var(--surface)); opacity: 1; }
.search { position: relative; }
.btn {
  border: 0;
  background: var(--brand);
  color: var(--on-brand);
  font-weight: 600;
  font-size: 16px;
  padding: 13px 22px;
  border-radius: 12px;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s;
}
.btn:has(.i) { display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.btn:hover { background: var(--brand-hover); }
.btn.secondary { background: var(--brand-soft); color: var(--brand-ink); }
.btn.secondary:hover { background: var(--brand-line); }
a.btn { display: inline-block; text-decoration: none; }
a.btn:hover { color: var(--on-brand); text-decoration: none; }
a.btn.secondary:hover { color: var(--brand-ink); }
.btn.sm { padding: 8px 14px; font-size: 14.5px; border-radius: 10px; }
.btn:disabled { opacity: 0.55; cursor: default; }
.btn.secondary:disabled:hover { background: var(--brand-soft); }
.btn:not(.secondary):disabled:hover { background: var(--brand); }
.field, .doc-search { display: flex; align-items: center; gap: 10px; padding: 5px 5px 5px 16px; border: 1.5px solid var(--brand); border-radius: 12px; background: var(--surface); box-shadow: 0 0 0 4px var(--brand-soft); transition: border-color 0.12s, box-shadow 0.12s; }
.field:focus-within, .doc-search:focus-within { border-color: var(--brand); box-shadow: 0 0 0 5px var(--brand-line); }
.field > .i-search, .doc-search > .i-search { flex: none; width: 18px; height: 18px; color: var(--brand); }
.field input, .doc-search input[type="search"] { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; color: var(--fg); font: 16.5px/1.45 var(--sans); padding: 8px 0; }
.field input::placeholder, .doc-search input[type="search"]::placeholder { color: color-mix(in srgb, var(--faint) 78%, var(--surface)); opacity: 1; }
.field .btn { padding: 9px 13px 9px 16px; gap: 6px; font-size: 15px; border-radius: 9px; }
.field textarea { flex: 1; min-width: 0; align-self: stretch; border: 0; outline: 0; resize: none; background: transparent; color: var(--fg); font: 16.5px/1.45 var(--sans); padding: 8px 0; }
.field textarea::placeholder { color: color-mix(in srgb, var(--faint) 78%, var(--surface)); opacity: 1; }
.field:has(textarea) { align-items: flex-end; }
.suggestions { display: flex; flex-wrap: wrap; gap: 8px; }
.suggestion, .examples button, .examples a { white-space: nowrap; border: 1px solid var(--line-strong); background: var(--surface); color: var(--text); border-radius: 999px; padding: 6px 14px; font: inherit; font-size: 14.5px; line-height: normal; cursor: pointer; transition: border-color 0.15s, color 0.15s, background 0.15s; }
.suggestion:hover, .examples button:hover, .examples a:hover { border-color: var(--brand-line); color: var(--brand-ink); background: var(--brand-soft); text-decoration: none; }
.examples button, .examples a { border-color: transparent; background: var(--chip-bg); padding: 6px 13px; }
.card { padding: 20px 22px; border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--surface); }
.switch { position: relative; display: inline-flex; align-items: center; gap: 10px; cursor: pointer; flex: none; }
.switch input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.switch:has(input:disabled) { cursor: not-allowed; opacity: 0.55; }
.section { margin-top: 64px; }
.nav-progress { position: fixed; top: 0; left: 0; right: 0; z-index: 100; height: 3px; background: var(--brand); transform-origin: 0 50%; opacity: 0; pointer-events: none; }
.nav-progress.going { opacity: 1; transform: scaleX(0.94); animation: nav-progress 12s cubic-bezier(0.1, 0.7, 0.2, 1) both, fade 0.2s ease; }
@keyframes nav-progress { from { transform: scaleX(0.2); } }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.skeleton { animation: fade 0.2s ease both; }
@keyframes skel-pulse { 50% { opacity: 0.5; } }
@keyframes rise { from { opacity: 0; transform: translateY(12px); } }
:root { --enter-time: 0.42s; --enter-ease: cubic-bezier(0.2, 0.7, 0.2, 1); --enter-step: 0.06s; }
@keyframes landed {
  0%, 25% { background-color: var(--brand-soft); box-shadow: 0 0 0 10px var(--brand-soft); }
  100% { background-color: transparent; box-shadow: 0 0 0 10px transparent; }
}
@media (prefers-reduced-motion: no-preference) {
.results > :not(.skeleton):not(.first), .layer.first > :not(.lawcard), .lawcard > *, .hero ~ .home-section, .cond-card, .verdict-slot > .verdict { animation: rise var(--enter-time) var(--enter-ease) backwards; }
.results > :nth-child(n + 2):not(.skeleton):not(.first) { animation-delay: calc(5 * var(--enter-step)); }
.hero > *, main.doc > :not(.reader-grid):not(.acts-page), .acts-page > :not(.acts-group), .reader-grid > .act-head > * { animation: rise var(--enter-time) var(--enter-ease) backwards; }
.hero > :nth-child(2), main.doc > :nth-child(2), .acts-page > :nth-child(2), .act-head > :nth-child(2) { animation-delay: var(--enter-step); }
.hero > :nth-child(3), main.doc > :nth-child(3), .acts-page > :nth-child(3), .act-head > :nth-child(3) { animation-delay: calc(2 * var(--enter-step)); }
.hero > :nth-child(4), main.doc > :nth-child(4), .acts-page > :nth-child(4), .act-head > :nth-child(4) { animation-delay: calc(3 * var(--enter-step)); }
.hero > :nth-child(n + 5), main.doc > :nth-child(n + 5), .acts-page > :nth-child(n + 5), .act-head > :nth-child(n + 5) { animation-delay: calc(4 * var(--enter-step)); }
.acts-page > .acts-group { animation: rise var(--enter-time) var(--enter-ease) backwards; animation-delay: calc(5 * var(--enter-step)); }
.reader-grid > .toc-nav, .reader-grid > .law, .reader-grid > .law-on-day { animation: fade var(--enter-time) ease calc(2 * var(--enter-step)) backwards; }
.hero ~ .home-section { animation-delay: calc(5 * var(--enter-step)); }
.doc.reader .law :target { border-radius: 6px; animation: landed 1.6s ease-out; }
}
.notice { margin: 12px 0 0; padding: 10px 14px; border-radius: 12px; background: var(--amber-soft); color: var(--amber); font-size: 14.5px; line-height: 1.55; }
.results > :is(.calc, .layer.explain) + :is(.layer.explain, .layer.first) { margin-top: 44px; padding-top: 28px; border-top: 1px solid var(--line); }
.refs.practice-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; columns: auto; }
.practice-list li { display: grid; gap: 4px; padding: 0; border: 0; }
.practice-list .pr-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; font-size: 14.5px; }
.practice-list .pr-head a { font-weight: 600; color: var(--brand-ink); text-decoration: none; }
.practice-list .pr-head a:hover { color: var(--brand); text-decoration: underline; }
.practice-list .kind { color: var(--faint); }
.practice-list .ctx-text { margin: 0; color: var(--text); font-size: 15.5px; line-height: 1.55; }
.provision { margin-bottom: 30px; }
.law-table { border-collapse: collapse; width: 100%; margin: 10px 0; font: 14.5px/1.5 var(--sans); }
.law-table td, .law-table th { border: 1px solid var(--line-strong); padding: 5px 10px; vertical-align: top; text-align: left; }
.law-table th { font-weight: 600; color: var(--fg); background: color-mix(in srgb, var(--line) 45%, transparent); vertical-align: middle; }
.law-table td.num { white-space: nowrap; text-align: center; }
mark { background: none; color: inherit; }
.m-value { font-weight: 700; background: linear-gradient(transparent 56%, #ffe9a8 56%); padding: 0 1px; }
.m-value-cond { font-weight: 600; }
.m-cond { font-weight: 600; color: var(--amber); }
.m-time { text-decoration: underline 2px var(--brand-line); text-underline-offset: 3px; }
.m-modal { font-weight: 700; text-decoration: underline 2px var(--brand); text-underline-offset: 3px; }
.m-term { font-weight: 700; background: linear-gradient(transparent 56%, #d3f0df 56%); }
.flash { animation: flash 1.8s ease-out; }
@keyframes flash { 0%, 30% { background: var(--mark-flash); } 100% { background: transparent; } }
.answer { margin-top: 0; }
.answer + .answer, .followup-answer { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--line); }
.reasons { display: flex; flex-wrap: wrap; gap: 8px; }
.reason { padding: 6px 13px; border: 1px solid var(--line-strong); border-radius: 999px; background: var(--surface); color: var(--text); font: inherit; font-size: 14px; cursor: pointer; }
.reason:hover { border-color: var(--brand-line); color: var(--brand); }
.reason[aria-pressed="true"] { border-color: var(--brand-line); background: var(--brand-soft); color: var(--brand-ink); font-weight: 600; }
.auto-note { margin: 0 0 28px; font-size: 13.5px; line-height: 1.6; color: var(--faint); }
.ai-badge { display: inline-block; font-size: 12px; font-weight: 600; color: var(--slate); background: var(--slate-soft); border-radius: 999px; padding: 2px 9px; margin-right: 4px; vertical-align: 1px; }
@keyframes blink { 50% { opacity: 0; } }
.cite {
  display: inline-grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  padding: 0 4px;
  margin: 0 1px 0 2px;
  border: 0;
  border-radius: 999px; 
  background: var(--brand-soft);
  color: var(--brand-ink);
  font: 700 11px/1 var(--sans);
  font-variant-numeric: tabular-nums;
  vertical-align: 2px;
  cursor: pointer;
}
.cite:hover { background: var(--brand); color: var(--on-brand); }
.cite.flash { animation: cite-flash 1.8s ease-out; }
@keyframes cite-flash { 0%, 40% { background: var(--brand); color: var(--on-brand); box-shadow: 0 0 0 4px var(--brand-line); } }
.answer .pending { display: flex; align-items: center; gap: 12px; color: var(--muted); font-size: 16px; padding: 6px 0; }
.warn { color: var(--orange); }
.asked { margin: -2px 0 12px; color: var(--muted); font-size: 15.5px; font-style: italic; white-space: pre-line; }
.understood { margin-top: 14px; color: var(--muted); font-size: 14px; }
.understood summary { cursor: pointer; color: var(--muted); }
.understood ul { margin: 8px 0 0; padding-left: 20px; }
.provision.small, .provision.found { margin-bottom: 16px; }
.law { font-size: 17px; line-height: 1.7; color: var(--text); margin: 12px 0 4px; }
.law .ln { padding-left: calc(var(--d, 0) * 24px); margin: 4px 0; }
.law .hd { font-weight: 650; margin-right: 6px; color: var(--fg); }
.law a.hd { color: var(--brand); }
.law .heading { font-size: 14px; line-height: 1.5; font-weight: 600; color: var(--muted); margin: 26px 0 10px; letter-spacing: 0.01em; }
.law .heading-title { margin-left: 10px; font-weight: 500; color: var(--text); }
.doc-text a.ref-link, .law a.ref-link, .prose a.ref-link { color: var(--brand); text-decoration: underline; text-decoration-color: var(--brand-line); text-underline-offset: 3px; text-decoration-thickness: 1px; }
a.ref-link:not(.def) { font-weight: 600; }
a.ref-link.act { font-weight: 500; }
.doc-text a.ref-link:hover, .law a.ref-link:hover, .prose a.ref-link:hover { text-decoration-color: var(--brand); background: var(--brand-soft); border-radius: 3px; }
.law a.ref-link.ext::after, .prose a.ref-link.ext::after { content: "↗"; font-size: 0.72em; margin-left: 2px; vertical-align: 0.3em; }
.law .repealed { color: var(--faint); font-style: italic; }
.law .annex { white-space: pre-line; font-size: 14.5px; line-height: 1.6; color: var(--text); }
.law.clip { max-height: 11.5em; overflow: hidden; -webkit-mask-image: linear-gradient(#000 65%, transparent); mask-image: linear-gradient(#000 65%, transparent); }
.more { margin-top: 2px; }
.more button { border: 0; background: none; padding: 0; color: var(--brand); font-size: 14px; cursor: pointer; }
.more button:hover { text-decoration: underline; text-underline-offset: 3px; }
.why { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; margin-top: 12px; font-size: 13px; color: var(--faint); }
.why .by { color: var(--faint); }
.chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border-radius: 999px;
  padding: 2px 10px;
  font-size: 12.5px;
  font-weight: 500;
  white-space: nowrap;
  background: var(--tint);
  color: var(--muted);
}
.chip.src { background: var(--tint); color: var(--muted); }
.chip.src.llm { background: var(--slate-soft); color: var(--slate); }
.chip.ref { background: var(--slate-soft); color: var(--slate); }
.chip.def { background: var(--green-soft); color: var(--green); }
.chip.pending { background: var(--orange-soft); color: var(--orange); }
.chip.recent { background: var(--brand-soft); color: var(--brand-ink); }
.why .from a { color: var(--muted); text-decoration: underline; text-decoration-color: var(--line-strong); text-underline-offset: 3px; }
.why .from a:hover { color: var(--brand); text-decoration-color: currentColor; }
.group { border-top: 1px solid var(--line); padding: 2px 0; }
.group:last-child { border-bottom: 1px solid var(--line); }
.group > summary { list-style: none; cursor: pointer; display: flex; align-items: baseline; gap: 12px; padding: 16px 4px; }
.group > summary::-webkit-details-marker { display: none; }
.group > summary::before { content: "›"; color: var(--faint); font-size: 20px; line-height: 1; transition: transform 0.15s; transform: translateY(1px); width: 12px; }
.group[open] > summary::before { transform: rotate(90deg) translateX(1px); }
.group .g-hint { color: var(--muted); font-size: 14px; flex: 1; }
.group .g-count { color: var(--faint); font-size: 14px; }
.group .cards { padding: 0 0 12px; }
.empty, .loading, .error-box { text-align: center; color: var(--muted); padding: 56px 0; font-size: 16px; }
@keyframes spin { to { transform: rotate(360deg); } }
.scrim { position: fixed; inset: 0; background: var(--overlay); z-index: 30; animation: fade 0.18s; }
@keyframes fade { from { opacity: 0; } }
.panel {
  position: fixed;
  top: 12px;
  right: 12px;
  bottom: 12px;
  width: min(720px, calc(100vw - 24px));
  background: var(--surface);
  border-radius: 18px;
  box-shadow: var(--shadow-lg);
  z-index: 40;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  animation: slide 0.2s ease-out;
}
.panel:focus { outline: none; }
@keyframes slide { from { transform: translateX(28px); opacity: 0.5; } }
.panel.closing { animation: slide-out 0.18s ease-in forwards; }
.scrim.closing { animation: fade-out 0.18s ease-in forwards; }
@keyframes slide-out { to { transform: translateX(28px); opacity: 0; } }
@keyframes fade-out { to { opacity: 0; } }
@keyframes page-in { from { transform: translateX(100%); } }
@keyframes page-out { to { transform: translateX(100%); } }
.panel-bar { display: flex; align-items: center; gap: 8px; padding: 12px 16px 12px 20px; border-bottom: 1px solid var(--line); }
.panel-bar > .icon:first-child { margin-left: -8px; }
.panel-title { flex: 1; min-width: 0; font-size: 14px; color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.panel-title.crumbs > * + *::before { content: "›"; display: inline-block; margin: 0 7px 0 5px; color: var(--faint); }
.panel-title.crumbs a, .panel-title.crumbs .link-button { color: var(--muted); font-size: inherit; }
.panel-title.crumbs a:hover, .panel-title.crumbs .link-button:hover { color: var(--brand); }
.icon { border: 0; background: transparent; width: 36px; height: 36px; border-radius: 10px; cursor: pointer; color: var(--muted); font-size: 17px; }
.icon:hover { background: var(--brand-soft); color: var(--brand); }
.icon .i { width: 18px; height: 18px; }
.panel-body { overflow-y: auto; overscroll-behavior: contain; padding: 30px 40px 56px; }
.unit .crumbs { font-size: 13.5px; color: var(--muted); display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 8px; }
.unit .crumbs > * + *::before { content: "›"; display: inline-block; margin: 0 6px 0 2px; color: var(--faint); }
.unit .crumbs a { color: var(--muted); }
.unit .crumbs a:hover { color: var(--brand); text-decoration: none; }
.unit h1 { font-size: 30px; line-height: 1.2; font-weight: 600; margin: 0 0 4px; letter-spacing: -0.02em; }
.unit .sub { color: var(--muted); font-size: 15.5px; }
.unit .toolbar { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 8px; }
.toolbar.share { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 4px; }
.pill {
  font-size: 14px;
  color: var(--text);
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  padding: 6px 14px;
  background: var(--surface);
  cursor: pointer;
  white-space: nowrap;
}
.pill:hover { border-color: var(--brand-line); color: var(--brand); text-decoration: none; }
.pill:has(.i) { display: inline-flex; align-items: center; gap: 7px; }
.pill .i { color: var(--muted); }
.pill:hover .i, .pill.primary .i { color: inherit; }
.pill .i-chevron-down { width: 0.95em; height: 0.95em; margin: 0 -3px 0 -1px; }
.dropdown { position: relative; }
.dropdown > summary { list-style: none; }
.dropdown > summary::-webkit-details-marker { display: none; }
.dropdown[open] > summary { background: var(--brand-soft); border-color: var(--brand-line); color: var(--brand-ink); }
.dropdown[open] > summary .i { color: inherit; }
.dropdown-menu { position: absolute; left: 0; top: calc(100% + 6px); z-index: 25; min-width: 250px; padding: 6px; background: var(--surface); border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow); }
.dropdown-menu.to-left { left: auto; right: 0; }
.dropdown-menu.fit { min-width: 0; width: max-content; max-width: calc(100vw - 32px); }
.icon-btn { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; margin: -4px 0; border-radius: 8px; color: var(--muted); cursor: pointer; list-style: none; }
.icon-btn::-webkit-details-marker { display: none; }
.icon-btn:hover, details[open] > .icon-btn { background: var(--brand-soft); color: var(--brand); }
.state-day { display: inline-flex; align-items: center; gap: 2px; white-space: nowrap; }
.dropdown-menu button { display: flex; align-items: center; gap: 10px; width: 100%; padding: 8px 10px; border: 0; border-radius: 8px; background: none; color: var(--text); font: inherit; font-size: 15px; text-align: left; white-space: nowrap; cursor: pointer; }
.dropdown-menu button:hover, .dropdown-menu button:focus-visible { background: var(--tint); color: var(--fg); outline-offset: -2px; }
.dropdown-menu .i { color: var(--muted); }
.dropdown-menu a { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 8px; color: var(--text); font-size: 15px; white-space: nowrap; }
.dropdown-menu a:hover, .dropdown-menu a:focus-visible { background: var(--tint); color: var(--fg); text-decoration: none; outline-offset: -2px; }
.dropdown-menu .on-date { padding: 8px 10px 10px; }
.actions-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; margin: 12px 0 0 -10px; padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.actions-bar > .toolbar, .actions-bar > .toolbar.keep { display: contents; }
.actions-bar > .folder-pick, .actions-bar > .keep-note { flex-basis: 100%; margin-left: 10px; }
.flat, .ghost, .actions-bar .pill { display: inline-flex; align-items: center; gap: 7px; padding: 6px 10px; border: 0; border-radius: 8px; background: transparent; color: var(--muted); font: inherit; font-size: 14px; font-weight: 500; line-height: 1.4; white-space: nowrap; cursor: pointer; }
.flat .i, .ghost .i, .actions-bar .pill .i { width: 1.05em; height: 1.05em; color: inherit; }
.flat:hover, .ghost:hover, .actions-bar .pill:hover, .dropdown[open] > summary.flat { background: var(--brand-soft); color: var(--brand); text-decoration: none; }
.actions-bar .pill.primary, .actions-bar .pill[aria-pressed="true"] { color: var(--brand-ink); background: var(--brand-soft); }
.menu-note { margin: 0; padding: 8px 10px 6px; max-width: 320px; font-size: 14px; line-height: 1.5; color: var(--muted); white-space: normal; }
.click-tip { position: absolute; z-index: 60; display: inline-flex; align-items: center; gap: 7px; max-width: calc(100vw - 16px); padding: 7px 12px; border-radius: 10px; background: var(--fg); color: var(--bg); font-size: 14px; box-shadow: var(--shadow); pointer-events: none; animation: fade 0.12s ease; }
.click-tip .i { color: #9fe3cf; }
.unit .law { font-size: 18px; line-height: 1.75; margin-top: 20px; }
.unit h2, .doc h2 { line-height: 1; margin: 40px 0 14px; }
.change { padding: 12px 16px; margin-bottom: 10px; border-radius: 12px; background: var(--orange-soft); font-size: 15px; }
.change .when { font-weight: 600; color: var(--fg); }
.change .units { color: var(--muted); font-size: 13.5px; margin-top: 4px; }
.refs { list-style: none; padding: 0; margin: 0; font-size: 15.5px; columns: 2; column-gap: 28px; }
.refs li { break-inside: avoid; padding: 4px 0; }
.refs .kind { color: var(--faint); font-size: 12.5px; margin-left: 6px; }
.terms { font-size: 16.5px; line-height: 1.7; color: var(--text); }
.source-note { margin-top: 40px; padding: 14px 18px; background: var(--tint); border-radius: 12px; font-size: 14px; color: var(--muted); line-height: 1.55; }
.source-note b { color: var(--text); font-weight: 600; }
.find {
  position: sticky;
  top: 72px;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 22px -12px 6px;
  padding: 10px 12px;
  background: color-mix(in srgb, var(--surface) 94%, transparent);
  backdrop-filter: blur(8px);
  border-radius: 14px;
}
.find input {
  flex: 1;
  min-width: 0;
  font: 15px/1.4 var(--sans);
  color: var(--fg);
  padding: 9px 12px 9px 36px;
  border: 1px solid var(--line-strong);
  border-radius: 12px;
  background: var(--surface) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666e77' stroke-width='2.2' stroke-linecap='round'><circle cx='11' cy='11' r='7'/><path d='m20 20-3.5-3.5'/></svg>") no-repeat 12px center;
}
.find input:focus { outline: 0; border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-soft); }
.find input::-webkit-search-cancel-button { cursor: pointer; }
.find-count { padding: 0 4px; text-align: right; font-size: 13px; color: var(--muted); font-variant-numeric: tabular-nums; white-space: nowrap; }
.icon.small { width: 32px; height: 32px; font-size: 15px; }
.panel-body .find { top: -30px; }
mark.found { background: #fff0a0; color: inherit; border-radius: 3px; }
mark.found.current { background: #ffc94d; box-shadow: 0 0 0 2px #ffc94d; }
ins, del { text-decoration: none; border-radius: 4px; padding: 1px 2px; }
ins { background: #abf2bc; color: #0f3d1d; text-decoration: underline; text-decoration-color: rgba(15, 61, 29, 0.45); text-underline-offset: 2px; }
ins::before, ins::after, del::before, del::after { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
ins::before { content: " [dodano: "; }
del::before { content: " [usunięto: "; }
ins::after, del::after { content: "] "; }
del { background: #ffcecb; color: #6e0b17; text-decoration: line-through; text-decoration-color: rgba(110, 11, 23, 0.45); }
.page-lead, .doc .lead { color: var(--muted); margin: 0 0 28px; font-size: 17px; line-height: 1.55; max-width: 640px; }
.day { display: grid; grid-template-columns: 130px 1fr; gap: 24px; padding: 24px 0; border-top: 1px solid var(--line); }
.day .date { font-size: 18px; line-height: 1.3; font-weight: 650; color: var(--fg); }
.day .date small { display: block; color: var(--muted); font-size: 13.5px; line-height: 1.5; font-weight: 400; margin-top: 2px; }
.day .item { margin-bottom: 16px; font-size: 15.5px; }
.day .item:last-child { margin-bottom: 0; }
.day .item .act { display: block; margin-bottom: 2px; }
.day .item .units { color: var(--muted); font-size: 14px; margin-top: 4px; }
.hint { color: var(--muted); font-size: 14.5px; margin: -4px 0 12px; line-height: 1.55; }
.hist-list { display: flex; flex-direction: column; gap: 12px; }
.hist { padding: 14px 16px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); }
.hist-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; margin-bottom: 6px; }
.hist-head .when { font-weight: 600; }
.op { font-size: 12.5px; padding: 2px 9px; border-radius: 999px; background: var(--tint); color: var(--muted); white-space: nowrap; }
.op.wyrazy, .op.brzmienie { background: var(--brand-soft); color: var(--brand-ink); }
.hist-diff { line-height: 1.6; font-size: 15px; }
.change-note { margin: 4px 0 18px; padding: 10px 14px; border-radius: 12px; background: var(--info-soft); font-size: 14.5px; line-height: 1.55; }
.change-note p { margin: 0; }
.change-note p + p, .change-note details + p { margin-top: 6px; }
.change-note .badge { margin-right: 4px; }
.change-note summary { cursor: pointer; color: var(--brand); margin-top: 4px; width: fit-content; }
.change-note .hist-diff { margin-top: 8px; padding: 10px 12px; border-radius: 8px; background: var(--surface); }
.hist > .hist-diff { margin-top: 8px; }
.hist-src { margin-top: 8px; font-size: 13px; color: var(--muted); }
.ver-text { white-space: pre-wrap; }
.hist.ver-now { border-color: var(--brand-line); }
.filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 22px; }
.year { margin-bottom: 28px; }
.event { display: grid; grid-template-columns: 170px 1fr; gap: 18px; padding: 14px 0; border-bottom: 1px dashed var(--line); }
.event:last-child { border-bottom: 0; }
.badge, .badge-outdated { display: inline-flex; align-items: center; gap: 6px; padding: 2px 10px; border-radius: var(--r-pill); font-size: var(--fs-label); font-weight: 600; line-height: 1.6; white-space: nowrap; background: var(--brand-soft); color: var(--brand-ink); }
.badge .i { width: 0.95em; height: 0.95em; }
.badge.ok { background: var(--green-soft); color: var(--green); }
.badge.pending { background: var(--orange-soft); color: var(--orange); }
.badge.warn, .badge-outdated { background: var(--amber-soft); color: var(--amber); }
.badge.info { background: var(--info-soft); color: var(--info); }
.badge.off { background: var(--tint); color: var(--muted); }
.badge.removed { background: var(--rose-soft); color: var(--rose); }
.event.future .badge { background: var(--brand); color: var(--on-brand); }
.points { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 6px; font-size: 14.5px; }
.points li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
.points .words { font-size: 14px; }
.muted { color: var(--muted); }
.digest { margin-top: 12px; padding: 14px 16px; border-radius: 12px; background: var(--slate-soft); font-size: 15px; line-height: 1.6; }
.digest ul { margin: 8px 0; padding-left: 20px; }
.digest li + li { margin-top: 4px; }
.stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 16px; }
.sources-table { width: 100%; border-collapse: collapse; font-size: 14.5px; margin: 8px 0 4px; }
.sources-table th { text-align: left; font-weight: 600; padding: 10px 12px 10px 0; vertical-align: top; width: 34%; }
.sources-table td { padding: 10px 12px 10px 0; color: var(--text); vertical-align: top; }
.sources-table td:last-child { color: var(--muted); white-space: nowrap; }
.sources-table tr { border-bottom: 1px solid var(--line); }
.back { margin: 0 0 8px; font-size: 14px; }
.filters .chip { cursor: pointer; border: 1px solid var(--line-strong); background: var(--surface); color: var(--text); font-size: 14px; padding: 6px 13px; }
.filters .chip.on { background: var(--brand-soft); border-color: var(--brand-line); color: var(--brand-ink); font-weight: 600; }
.case { border-top: 1px solid var(--line); padding: 20px 0; }
.tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 8px 0 20px; }
.tile { border-top: 2px solid var(--brand-line); padding: 16px 0 4px; }
.models { margin: 40px 0 8px; }
.models h2 { font-size: 22px; line-height: 1.3; font-weight: 650; margin: 0 0 14px; }
.chips { display: flex; flex-wrap: wrap; gap: 8px; }
.doc .crumbs { font-size: 14px; color: var(--muted); margin: 8px 0 14px; }
.doc .crumbs a { color: var(--muted); }
.doc .crumbs a:hover { color: var(--brand); }
.doc h1 { font-size: 34px; line-height: 1.15; font-weight: 600; margin: 0 0 6px; letter-spacing: -0.025em; }
.doc.reader h1 { font-size: 32px; line-height: 1.2; letter-spacing: -0.02em; }
.doc.unit-page h1 { font-size: 44px; line-height: 1.1; letter-spacing: -0.02em; }
.status { display: inline-flex; align-items: center; gap: 7px; font-weight: 600; color: var(--brand-ink); }
.status::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--brand); }
.status.off { color: var(--muted); }
.status.off::before { background: var(--faint); }
.doc h1 .act, .doc h1 .sub { display: block; font-size: 16px; line-height: 1.45; font-weight: 400; color: var(--muted); margin-top: 8px; letter-spacing: 0; }
.doc h3 { font-size: 16.5px; line-height: 1.4; font-weight: 650; margin: 28px 0 8px; }
.doc .ttl { color: var(--muted); font-size: 16px; margin: 0 0 8px; }
.meta-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin: 14px 0 6px; font-size: 14.5px; color: var(--muted); }
.doc > .law, .unit-main > .law, .doc .reader-grid > .law { font-size: 18px; line-height: 1.75; margin-top: 20px; }
.doc > .law, .unit-main > .law { padding: 18px 22px 18px 24px; border-left: 3px solid var(--brand); border-radius: 0 var(--r-md) var(--r-md) 0; background: var(--law-bg); }
.doc.unit-page > .law, .unit-page .unit-main > .law { font-size: 19px; line-height: 1.7; padding: 0; margin-top: 26px; border: 0; border-radius: 0; background: none; }
.doc .hint { color: var(--muted); font-size: 14.5px; margin: 0 0 12px; }
.doc .source-note { margin-top: 24px; }
.doc .ctx li { margin-bottom: 8px; }
.doc .ctx-text { color: var(--muted); font-size: 14.5px; }
details.more-section { margin-top: 36px; border-top: 1px solid var(--line); }
details.more-section > summary { cursor: pointer; list-style: none; padding: 16px 0; display: flex; align-items: baseline; gap: 12px; }
details.more-section > summary::-webkit-details-marker { display: none; }
details.more-section > summary::before { content: "›"; color: var(--faint); font-size: 20px; line-height: 1; transition: transform 0.15s; width: 12px; }
details.more-section[open] > summary::before { transform: rotate(90deg); }
details.more-section > summary h2 { margin: 0; }
details.more-section > summary .g-hint { color: var(--muted); font-size: 14px; }
details.more-section > div { padding: 0 0 12px; }
main.doc.acts { max-width: 928px; padding-top: 40px; }
.acts-page h1 { margin: 0 0 14px; font-size: 36px; letter-spacing: -0.02em; }
.acts-lead { max-width: 600px; margin: 0 0 36px; font-size: 16px; line-height: 1.55; color: var(--text); text-wrap: pretty; }
.acts-search { min-width: 0; display: flex; align-items: center; gap: 10px; padding: 0 10px 0 16px; border: 1.5px solid var(--brand); border-radius: 12px; background: var(--surface); box-shadow: 0 0 0 4px var(--brand-soft); transition: border-color 0.12s, box-shadow 0.12s; }
.acts-search:focus-within { box-shadow: 0 0 0 5px var(--brand-line); }
.acts-search > .i { width: 18px; height: 18px; color: var(--brand); }
.acts-search:focus-within > .i { color: var(--brand); }
.acts-filter { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; padding: 13px 0; font: 16.5px var(--sans); color: var(--fg); }
.acts-filter::-webkit-search-cancel-button { display: none; }
.acts-filter::placeholder { color: color-mix(in srgb, var(--faint) 78%, var(--surface)); opacity: 1; }
.acts-clear { width: 32px; height: 32px; margin: 0; border: 0; background: none; color: var(--muted); }
.acts-clear:hover { background: var(--tint); color: var(--fg); }
.acts-groups { display: flex; max-width: 100%; }
.acts-groups > summary { display: inline-flex; align-items: center; gap: 6px; max-width: 100%; padding: 7px 10px 7px 13px; border: 1px solid var(--line-strong); border-radius: 999px; background: var(--surface); color: var(--text); font-size: 14.5px; font-weight: 500; cursor: pointer; list-style: none; }
.acts-groups > summary::-webkit-details-marker { display: none; }
.acts-groups > summary:hover, .acts-groups[open] > summary { border-color: var(--brand-line); color: var(--brand-ink); }
.acts-groups.on > summary { border-color: var(--brand-line); background: var(--brand-soft); color: var(--brand-ink); font-weight: 600; }
.acts-groups .lbl { color: var(--muted); white-space: nowrap; }
.acts-groups.on .lbl, .acts-groups > summary:hover .lbl { color: inherit; }
.acts-groups .val { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acts-groups > summary .i { width: 1em; height: 1em; transition: transform 0.15s; }
.acts-groups[open] > summary .i { transform: rotate(180deg); }
.acts-groups .dropdown-menu { left: 0; right: auto; min-width: 300px; }
.acts-groups .dropdown-menu button { justify-content: space-between; gap: 12px; font-size: 14.5px; }
.acts-groups .dropdown-menu button[aria-checked="true"] { background: var(--brand-soft); color: var(--brand-ink); font-weight: 600; }
.acts-groups .dropdown-menu .n { font-size: 13px; color: var(--faint); font-variant-numeric: tabular-nums; }
.acts-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 16px; margin: 18px 0 4px; scroll-margin-top: 88px; }
@keyframes rise-again { from { opacity: 0; transform: translateY(12px); } }
.acts-page.ready > .acts-group { animation: none; }
.acts-only { font-size: 14.5px; }
.acts-mine { display: flex; flex-direction: column; gap: 24px; margin: 0 0 32px; }
.acts-row { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.acts-label { padding-left: 4px; }
.acts-mine .chips { display: flex; flex-wrap: wrap; gap: 10px 12px; }
.acts-mine .chips a { display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; border: 1px solid var(--line); border-radius: 999px; background: var(--tint); color: var(--fg); font-weight: 500; font-size: 14.5px; white-space: nowrap; text-decoration: none; }
.acts-mine .chips a:hover { border-color: var(--brand-line); background: var(--brand-soft); color: var(--brand-ink); text-decoration: none; }
.acts-mine .chips span { font-size: 12.5px; font-weight: 400; color: var(--muted); }
.acts-row > .chips, .acts-mine .chips a { max-width: 100%; }
.acts-stars .chips a { border-color: var(--line-strong); background: var(--surface); color: var(--text); }
.acts-stars .chips a:hover { border-color: color-mix(in srgb, var(--star) 60%, var(--line-strong)); background: color-mix(in srgb, var(--star) 12%, var(--surface)); color: var(--fg); }
.acts-stars .chips a .i { width: 14px; height: 14px; color: var(--star); }
.acts-count { margin: 0; font-size: 15.5px; color: var(--muted); }
.acts-count b { font-weight: 600; color: var(--fg); font-variant-numeric: tabular-nums; }
.acts-empty { margin: 16px 0 0; padding: 40px 24px; text-align: center; border: 1px dashed var(--line-strong); border-radius: 14px; color: var(--muted); font-size: 16px; line-height: 1.6; }
.acts-empty p { margin: 0 0 6px; }
.acts-empty p + p { margin: 0; font-size: 15px; }
.acts-empty a { font-weight: 600; }
.doc .acts-group { margin: 48px 0 0; scroll-margin-top: 88px; }
.doc .acts-group > h2 { padding-bottom: 8px; border-bottom: 1px solid var(--line-strong); }
.acts-group > .acts-list { margin-top: 14px; }
.acts-group.fold > summary, .acts-group.away > .away-link { display: flex; align-items: center; gap: 10px; margin-top: -12px; padding-top: 12px; padding-bottom: 12px; border-bottom: 1px solid var(--line-strong); cursor: pointer; list-style: none; }
.acts-group.fold > summary::-webkit-details-marker { display: none; }
.fold-mark { margin-left: auto; display: inline-grid; place-items: center; color: var(--muted); transition: transform 0.15s; }
.fold-mark .i { width: 20px; height: 20px; }
.acts-group.fold > summary:hover .fold-mark, .acts-group.fold > summary:focus-visible .fold-mark, .away-link:hover .fold-mark, .away-link:focus-visible .fold-mark { color: var(--fg); }
.doc .acts-page.by-act .acts-group { margin: 0; }
.acts-page.by-act .acts-search { margin-bottom: 28px; }
.acts-page.by-act .acts-group.fold > summary { margin-top: 0; border-bottom-color: var(--line); }
.doc .acts-page.by-act .acts-group h2 { font-size: 16.5px; font-weight: 500; }
.acts-page.by-act .acts-group.fold[open] > .acts-list { margin: 10px 0 18px; }
.acts-group.away > .away-link { color: inherit; text-decoration: none; }
.acts-group.away > .away-link h2 { color: var(--fg); }
.acts-group.fold[open] > summary .fold-mark { transform: rotate(180deg); }
.acts-group.fold[open] > summary { margin-bottom: 0; }
.prov-row > summary, .more-all > summary, .lawcard-group > summary, .group > summary, details.more-section > summary, .acts-group.fold > summary, .acts-group.away > .away-link { position: relative; z-index: 0; }
.prov-row > summary::after, .more-all > summary::after, .lawcard-group > summary::after, .group > summary::after, details.more-section > summary::after, .acts-group.fold > summary::after, .acts-group.away > .away-link::after { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--tint); opacity: 0; transition: opacity 0.12s; }
.prov-row > summary:hover::after, .more-all > summary:hover::after, .lawcard-group > summary:hover::after, .group > summary:hover::after, details.more-section > summary:hover::after, .acts-group.fold > summary:hover::after, .acts-group.away > .away-link:hover::after,
.prov-row > summary:focus-visible::after, .more-all > summary:focus-visible::after, .lawcard-group > summary:focus-visible::after, .group > summary:focus-visible::after, details.more-section > summary:focus-visible::after, .acts-group.fold > summary:focus-visible::after, .acts-group.away > .away-link:focus-visible::after { opacity: 1; }
.doc .acts-group h2 { display: flex; align-items: baseline; gap: 10px; margin: 0; font-size: 19px; line-height: 1.3; font-weight: 600; text-transform: none; letter-spacing: 0; color: var(--fg); }
.doc .acts-group h2 .n { font-size: 14px; font-weight: 400; color: var(--muted); font-variant-numeric: tabular-nums; }
.acts-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px 48px; }
.acts-list li { position: relative; display: flex; min-width: 0; margin-left: -10px; border-radius: 8px; }
.acts-list li:hover, .acts-list li:focus-within { background: var(--tint); }
.acts-list a { display: flex; align-items: baseline; gap: 10px; flex: 1; min-width: 0; padding: 9px 42px 9px 10px; border-radius: 8px; color: var(--fg); font-size: 16px; font-weight: 400; line-height: 1.45; text-decoration: none; }
.acts-list a.popular { font-weight: 650; }
.acts-list a:hover { color: var(--brand-ink); text-decoration: none; }
.acts-list .nm { flex: 1; min-width: 0; text-wrap: pretty; }
.acts-list.one { grid-template-columns: minmax(0, 1fr); }
.acts-list.one li { align-items: baseline; }
.acts-list.one a.act-link { padding-right: 16px; }
.acts-list .basis { flex: none; padding: 9px 42px 9px 0; color: var(--muted); font-size: 14px; line-height: 1.45; white-space: nowrap; }
.acts-list .basis a { display: inline; padding: 0; color: inherit; font-size: inherit; text-decoration: underline; text-decoration-color: var(--line-strong); text-underline-offset: 3px; }
.acts-list .basis a:hover { color: var(--brand-ink); text-decoration-color: currentColor; }
.act-head > .actions-bar + details.more-section { margin-top: 0; border-top: 0; }
.act-head > .actions-bar + details.more-section > summary::after { left: -10px; }
.act-badge { position: relative; flex: none; padding: 1px 8px; border-radius: 999px; font-size: 12.5px; font-weight: 600; white-space: nowrap; background: var(--slate-soft); color: var(--text); }
.act-star { position: absolute; top: 50%; right: 6px; display: inline-grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 8px; background: none; color: var(--muted); cursor: pointer; opacity: 0; transform: translateY(-50%); transition: opacity 0.12s; }
.act-star:hover { color: var(--star); background: color-mix(in srgb, var(--star) 14%, transparent); }
.act-star .i { width: 17px; height: 17px; }
li:hover > .act-star, .act-star:focus-visible, .act-star[aria-pressed="true"] { opacity: 1; }
.act-star[aria-pressed="true"] { color: var(--star); }
@media (hover: none) {
.act-star { opacity: 0.6; }
}
.act-fav[aria-pressed="true"] { border-color: color-mix(in srgb, var(--star) 60%, var(--line-strong)); color: var(--text); }
.act-fav[aria-pressed="true"] .i { color: var(--star); }
.act-badge.today { background: var(--green-soft); color: var(--green); }
.act-badge.pending { background: var(--info-soft); color: var(--info); }
.tip-host { position: relative; }
.act-badge .tip, .tip-host > .tip { position: absolute; bottom: calc(100% + 10px); right: 0; z-index: 5; display: flex; flex-direction: column; gap: 3px; width: max-content; max-width: 280px; padding: 10px 13px; border-radius: 10px; background: var(--fg); color: color-mix(in srgb, var(--bg) 80%, var(--fg)); font-size: 13.5px; font-weight: 400; line-height: 1.45; text-align: left; white-space: normal; text-wrap: pretty; pointer-events: none; opacity: 0; transition: opacity 0.12s; }
.act-badge .tip::after, .tip-host > .tip::after { content: ""; position: absolute; top: 100%; right: 14px; width: 9px; height: 9px; margin-top: -5px; background: var(--fg); transform: rotate(45deg); }
.act-badge .tip b, .tip-host > .tip b { font-size: 14px; font-weight: 600; color: var(--bg); }
.act-badge:hover .tip, .tip-host:hover > .tip, .tip-host:focus-visible > .tip { opacity: 1; }
.tip-host > .tip { font-style: normal; letter-spacing: normal; }
.tip-host > .tip.start { right: auto; left: 0; }
.tip-host > .tip.start::after { right: auto; left: 14px; }
.dev-held { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.dev-held li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; padding: 8px 0; border-bottom: 1px solid #262c32; font-size: 16px; }
.dev-held .why { font-size: 14px; color: #8d97a1; }
.dev-held a { margin-left: auto; display: inline-flex; align-items: center; gap: 5px; color: #7fd1bd; font-size: 14px; }
.acts-foot { display: flex; flex-direction: column; gap: 6px; margin: 56px 0 0; font-size: 13.5px; line-height: 1.6; color: var(--muted); }
.acts-foot .links { display: flex; flex-wrap: wrap; gap: 4px 14px; }
.acts-foot a { display: inline-flex; align-items: center; gap: 5px; }
.acts-foot .i { width: 0.85em; height: 0.85em; }
@media (max-width: 720px) {
.acts-list { grid-template-columns: 1fr; }
.acts-page h1 { font-size: 30px; }
}
.doc .law .ln[id] { scroll-margin-top: 80px; }
.doc.prose h1 { font-size: 40px; margin: 3vh 0 14px; }
.pro-eyebrow { margin: 3vh 0 10px; color: var(--brand); font-size: 14px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; }
.doc.prose .lead { color: var(--muted); font-size: 19px; line-height: 1.55; margin: 0 0 40px; max-width: 620px; text-wrap: balance; }
.doc.prose h2 { font-size: 24px; line-height: 1.25; font-weight: 700; text-transform: none; letter-spacing: -0.02em; color: var(--fg); margin: 56px 0 14px; }
.doc.prose p, .doc.prose li { font-size: 17px; line-height: 1.65; }
.doc.prose ul { padding-left: 22px; }
.doc.prose li { margin: 6px 0; }
.doc.prose .steps { margin: 24px 0 0; }
.doc.prose .trust { margin: 24px 0 0; }
.doc.prose .cta { margin: 36px 0 0; display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.doc.prose .cta .btn { display: inline-block; text-decoration: none; }
.cal-day { margin-top: 40px; }
.doc.prose .cal-day h2 { margin: 0 0 10px; font-size: 22px; }
.cal-day h2 .g-count { margin-left: 8px; font-size: 14px; font-weight: 500; color: var(--muted); }
.cal-title { font-weight: 600; color: var(--fg); }
.cal-title:hover { color: var(--brand-ink); text-decoration: underline; }
main.doc.pro-landing { max-width: none; padding: 0 0 96px; }
.pl-wrap { max-width: 1184px; margin: 0 auto; padding: 0 32px; }
.pro-landing h2, .pro-landing h3, .pro-landing p { margin: 0; }
.doc.pro-landing h2 { text-transform: none; font-size: clamp(26px, 3.2vw, 32px); line-height: 1.15; font-weight: 700; letter-spacing: -0.025em; color: var(--fg); }
.pl-hero { padding: clamp(40px, 6vh, 64px) 0 clamp(48px, 7vh, 72px); background: color-mix(in srgb, var(--brand-soft) 55%, var(--bg)); scroll-margin-top: 69px; }
.pl-hero-in { display: grid; grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr); gap: 64px; align-items: center; }
.pl-kicker { display: inline-flex; align-items: center; gap: 10px; padding: 5px 14px 5px 5px; border: 1px solid var(--line); border-radius: var(--r-pill); background: var(--surface); font-size: 14px; color: var(--muted); }
.pl-pro { padding: 2px 9px; border-radius: var(--r-pill); background: var(--fg); color: var(--bg); font-size: 12px; font-weight: 650; letter-spacing: 0.03em; }
.pro-landing h1.pl-title { margin: 22px 0 0; font-size: clamp(42px, 5.4vw, 62px); line-height: 1.02; font-weight: 700; letter-spacing: -0.035em; color: var(--fg); text-wrap: balance; }
.pl-title span { color: var(--brand); }
.pl-lead { margin-top: 24px !important; max-width: 500px; font-size: var(--fs-lead); line-height: 1.55; color: var(--muted); text-wrap: pretty; }
.pl-signup { margin-top: 34px; max-width: 500px; scroll-margin-top: 100px; }
.pl-field { padding: 6px 6px 6px 16px; border-radius: 16px; }
.pl-hero .pl-field:not(:focus-within) { box-shadow: 0 0 0 4px color-mix(in srgb, var(--brand) 12%, transparent); }
.pl-field input { font-size: 16.5px; }
.pl-field .btn { padding: 13px 20px; font-size: 16px; border-radius: 11px; }
.pl-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.pl-hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.pl-form-note { margin: 12px 0 0 4px !important; font-size: var(--fs-small); line-height: 1.5; color: var(--faint); }
.pl-form-note a { color: var(--faint); text-decoration: underline; }
.pl-form-note.error { color: var(--rose); }
.pl-details { display: flex; flex-direction: column; gap: 16px; padding: 22px; border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--surface); box-shadow: var(--shadow); }
.pl-ok, .pl-done { display: flex; gap: 12px; align-items: flex-start; font-size: 15.5px; line-height: 1.5; color: var(--fg); }
.pl-ok .i, .pl-done .i { flex: none; width: 20px; height: 20px; margin-top: 2px; color: var(--green); }
.pl-done { padding: 18px 20px; border-radius: var(--r-lg); background: var(--green-soft); }
.pl-details .field { display: flex; flex-direction: column; align-items: stretch; gap: 6px; padding: 0; border: 0; box-shadow: none; background: none; }
.pl-details .field > span, .pl-prices legend { font-size: var(--fs-meta); font-weight: 600; color: var(--fg); }
.pl-details .input { width: 100%; padding: 11px 14px; border: 1px solid var(--line-strong); border-radius: var(--r-md); background: var(--surface); color: var(--fg); font: 16px/1.45 var(--sans); }
.pl-details .input:focus { outline: 0; border-color: var(--brand); box-shadow: 0 0 0 4px var(--brand-soft); }
.pl-details textarea.input { resize: vertical; min-height: 64px; }
.pl-prices { margin: 0; padding: 0; border: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.pl-prices legend { margin-bottom: 8px; padding: 0; }
.pl-radio { display: inline-flex; align-items: center; gap: 7px; min-height: 40px; padding: 0 14px; border: 1px solid var(--line-strong); border-radius: var(--r-pill); font-size: 14.5px; color: var(--text); cursor: pointer; }
.pl-radio:has(input:checked) { border-color: var(--brand-line); background: var(--brand-soft); color: var(--brand-ink); }
.pl-radio input { margin: 0; accent-color: var(--brand); }
.pl-form-end { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
.pl-form-end .link-button { font-size: 15px; color: var(--muted); }
.pl-stage { padding: 40px; border-radius: 28px; background: var(--tint); }
.pl-shot { padding: 22px 24px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); box-shadow: var(--shadow); }
.pl-hero .pl-shot { box-shadow: 0 1px 2px rgba(21, 24, 28, 0.04), 0 24px 48px -28px rgba(11, 79, 68, 0.35); }
.pl-shot-title { font-size: 17px; font-weight: 650; color: var(--fg); }
.pl-shot-note { margin-top: 4px !important; font-size: var(--fs-small); line-height: 1.5; color: var(--faint); }
.pl-digest { padding: 0; overflow: hidden; }
.pl-digest-head { display: flex; align-items: center; gap: 12px; padding: 16px 20px; border-bottom: 1px solid var(--line); }
.pl-digest-head .brand-mark { width: 34px; height: 34px; }
.pl-digest-head b { display: block; font-size: 15.5px; font-weight: 650; color: var(--fg); }
.pl-digest-head span span { display: block; font-size: var(--fs-small); color: var(--faint); }
.pl-digest-head .badge { margin-left: auto; }
.pl-digest ul { list-style: none; margin: 0; padding: 0; }
.pl-digest li { padding: 14px 20px; border-top: 1px solid var(--line-soft); }
.pl-digest li:first-child { border-top: 0; }
.pro-landing .pl-digest a { display: flex; gap: 16px; align-items: flex-start; color: var(--text); text-decoration: none; }
.pro-landing .pl-digest a:hover b { color: var(--brand-ink); text-decoration: underline; }
.pl-day { flex: 0 0 60px; display: flex; flex-direction: column; align-items: center; padding: 6px 0; border-radius: 10px; background: var(--tint); font-size: 11px; font-weight: 600; letter-spacing: 0.04em; line-height: 1.25; text-transform: uppercase; color: var(--muted); }
.pl-day b { font-size: 19px; font-weight: 700; letter-spacing: 0; color: var(--fg); }
.pl-what { min-width: 0; padding-top: 2px; font-size: 15px; line-height: 1.45; }
.pl-what b { font-weight: 600; color: var(--fg); }
.pl-what small { display: block; font-size: var(--fs-small); color: var(--faint); }
.pl-diff { margin: 10px 0 0 76px !important; padding: 10px 12px; border-radius: 10px; background: var(--law-bg); font-size: 14.5px; line-height: 1.65; color: var(--text); }
.pl-sources { margin-top: 72px; text-align: center; }
.pl-label { font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--faint); }
.pl-sources ul { list-style: none; margin: 18px 0 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 40px; font-size: 19px; font-weight: 650; letter-spacing: -0.01em; color: color-mix(in srgb, var(--faint) 80%, var(--bg)); }
.pl-section { margin-top: 128px; scroll-margin-top: 80px; }
.pro-landing .pl-section h2, .pl-final h2 { font-size: clamp(30px, 3.6vw, 44px); line-height: 1.1; font-weight: 700; letter-spacing: -0.03em; color: var(--fg); text-wrap: balance; }
.pl-center { max-width: 720px; margin-left: auto !important; margin-right: auto !important; text-align: center; }
.pl-sub { margin-top: 16px !important; max-width: 560px; font-size: 18.5px; line-height: 1.55; color: var(--muted); text-wrap: pretty; }
.pl-row { display: grid; grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr); gap: 72px; align-items: center; margin-top: 112px; scroll-margin-top: 90px; }
.pl-row:first-of-type { margin-top: 80px; }
.pl-row.flip { grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); }
.pl-row.flip .pl-row-text { order: 2; }
.pl-tag { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 650; letter-spacing: 0.07em; text-transform: uppercase; color: var(--brand); }
.pl-tag .i { width: 16px; height: 16px; }
.pro-landing .pl-row h3 { margin-top: 14px; font-size: clamp(25px, 2.6vw, 32px); line-height: 1.18; font-weight: 700; letter-spacing: -0.025em; color: var(--fg); text-wrap: balance; }
.pl-row-text > p:last-child { margin-top: 16px; font-size: 18px; line-height: 1.6; color: var(--muted); text-wrap: pretty; }
.pl-law-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
.pl-law-head b { font-size: 24px; font-weight: 700; letter-spacing: -0.02em; color: var(--fg); }
.pl-law-head span { font-size: 15.5px; color: var(--muted); }
.pl-law-meta { margin-top: 10px !important; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; font-size: var(--fs-small); color: var(--faint); }
.pl-law-text { margin-top: 18px !important; padding: 14px 16px; border-left: 3px solid var(--brand); border-radius: 0 10px 10px 0; background: var(--law-bg); font-size: 15.5px; line-height: 1.7; color: var(--text); }
.pl-law-text mark { background: var(--mark); color: inherit; border-radius: 3px; padding: 0 2px; }
.pl-law-tools { margin-top: 16px !important; display: flex; flex-wrap: wrap; gap: 8px; }
.pl-law-tools span { display: inline-flex; align-items: center; gap: 7px; padding: 7px 12px; border: 1px solid var(--line); border-radius: 9px; font-size: 14px; font-weight: 500; color: var(--muted); }
.pl-query { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border: 1px solid var(--line-strong); border-radius: var(--r-md); font-size: 15px; color: var(--fg); }
.pl-query .i { flex: none; color: var(--faint); }
.pl-query + .pl-shot-title { margin-top: 22px; }
.pl-chat { display: flex; flex-direction: column; gap: 16px; padding: 0; overflow: hidden; }
.pl-chat-q { margin: 22px 24px 0 auto !important; max-width: 80%; padding: 11px 15px; border-radius: 16px 16px 4px 16px; background: var(--fg); color: var(--bg); font-size: 15px; line-height: 1.5; }
.pl-chat-tool { margin: 0 24px !important; align-self: flex-start; display: inline-flex; align-items: center; gap: 8px; padding: 6px 11px; border-radius: var(--r-pill); background: var(--brand-soft); color: var(--brand-ink); font-size: 13px; font-weight: 600; }
.pl-chat-tool .i { width: 14px; height: 14px; }
.pl-chat-a { margin: 0 24px !important; font-size: 15.5px; line-height: 1.65; color: var(--text); }
.pl-chat-src { padding: 12px 24px; border-top: 1px solid var(--line-soft); background: var(--law-bg); font-size: var(--fs-small); color: var(--muted); }
.pl-chat-src a { font-weight: 600; }
.pl-proof { margin-top: 128px; padding: 56px 48px 40px; border-radius: 28px; background: var(--tint); }
.pl-nums { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pl-nums > div { padding: 0 32px; border-left: 1px solid var(--line-strong); }
.pl-nums > div:first-child { padding-left: 0; border-left: 0; }
.pl-nums b { display: block; font-size: clamp(40px, 4.4vw, 56px); line-height: 1; font-weight: 700; letter-spacing: -0.04em; color: var(--fg); }
.pl-nums > div:first-child b { color: var(--brand); }
.pl-nums b { position: relative; }
.pl-nums small { position: absolute; bottom: 100%; left: 0; margin-bottom: 6px; font-size: 15px; font-weight: 600; letter-spacing: 0; color: var(--muted); }
.pl-nums span { display: block; max-width: 280px; margin-top: 14px; font-size: 16px; line-height: 1.5; color: var(--text); }
.pl-foot { margin-top: 36px !important; font-size: 13px; line-height: 1.5; color: var(--faint); }
.pl-plans { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; max-width: 880px; margin: 48px auto 0; align-items: stretch; }
.pl-plans > div { display: flex; flex-direction: column; padding: 32px 30px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); }
.pl-plans > div.pl-main { border: 2px solid var(--brand); box-shadow: var(--shadow); }
.pro-landing .pl-plans h3 { display: flex; align-items: center; gap: 10px; font-size: 18px; font-weight: 650; color: var(--fg); }
.pl-price { margin-top: 18px !important; font-size: clamp(34px, 3.6vw, 44px); line-height: 1.1; font-weight: 700; letter-spacing: -0.03em; color: var(--fg); }
.pl-for { margin-top: 8px !important; min-height: 22px; font-size: 14.5px; color: var(--faint); }
.pl-plans .btn { margin-top: 26px; display: flex; align-items: center; justify-content: center; gap: 8px; text-align: center; text-decoration: none; }
.pl-plans ul { list-style: none; margin: 28px 0 0; padding: 24px 0 0; border-top: 1px solid var(--line-soft); display: flex; flex-direction: column; gap: 12px; }
.pl-plans li { display: flex; gap: 12px; align-items: baseline; font-size: 15.5px; line-height: 1.5; color: var(--text); scroll-margin-top: 120px; }
.pl-plans li .i { flex: none; width: 18px; height: 18px; color: var(--faint); transform: translateY(0.15em); }
.pl-main li { color: var(--fg); }
.pl-main li .i { color: var(--brand); }
.pl-main li.pl-all { color: var(--muted); }
.pl-plans li:target, .pl-plans li:has(.pl-anchor:target) { margin: -4px -8px; padding: 4px 8px; border-radius: var(--r-sm); background: var(--mark-flash); }
.pl-anchor { display: block; width: 0; height: 0; scroll-margin-top: 140px; }
.pl-api { margin-top: 28px !important; text-align: center; font-size: 15.5px; color: var(--muted); }
.pl-api a { font-weight: 600; }
.pl-faq { display: grid; grid-template-columns: minmax(0, 0.45fr) minmax(0, 1fr); gap: 24px 72px; align-items: start; }
.pl-faq > div > p { margin-top: 14px !important; font-size: 16px; line-height: 1.6; color: var(--muted); }
.pl-faq-list { border-top: 1px solid var(--line); }
.pl-faq details { border-bottom: 1px solid var(--line); }
.pl-faq summary { display: flex; justify-content: space-between; gap: 16px; align-items: center; padding: 22px 0; font-size: 18px; font-weight: 600; color: var(--fg); cursor: pointer; list-style: none; }
.pl-faq summary::-webkit-details-marker { display: none; }
.pl-faq summary .i { flex: none; color: var(--faint); transition: transform 0.15s; }
.pl-faq details[open] summary .i { transform: rotate(180deg); }
.pl-faq details p { max-width: 620px; padding: 0 0 22px; font-size: 16.5px; line-height: 1.65; color: var(--muted); }
.pro-landing .byok { margin-top: 72px; }
.pl-final { margin-top: 128px; padding: 72px 48px; border-radius: 28px; background: var(--band); text-align: center; }
.pro-landing .pl-final h2 { max-width: 640px; margin: 0 auto; color: var(--band-text); }
.pl-final p { max-width: 480px; margin: 16px auto 0 !important; font-size: 18px; line-height: 1.55; color: var(--band-muted); }
.pl-final-actions { margin-top: 32px; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 14px 28px; }
.pl-final .btn { display: inline-flex; align-items: center; gap: 8px; padding: 15px 26px; background: var(--band-text); color: var(--band); font-size: 16.5px; text-decoration: none; }
.pl-final .btn:hover { background: var(--band-muted); color: var(--band); }
.pl-final-actions > a:last-child { font-size: 16.5px; font-weight: 600; color: var(--band-text); }
@media (max-width: 980px) {
.pl-hero-in, .pl-row, .pl-row.flip { grid-template-columns: 1fr; gap: 40px; }
.pl-row.flip .pl-row-text { order: 0; }
.pl-faq { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
main.doc.pro-landing { padding-bottom: 64px; }
.pl-wrap { padding: 0 16px; }
}
@media (max-width: 640px) {
.pl-wide { display: none; }
.pl-hero { padding: 28px 0 36px; }
.pl-field { flex-wrap: wrap; padding: 6px; border-radius: 14px; }
.pl-field input { padding: 8px 10px; }
.pl-field .btn { flex: 1 1 100%; justify-content: center; }
.pl-stage { padding: 16px; border-radius: 18px; }
.pl-shot { padding: 18px; }
.pl-digest { padding: 0; }
.pl-digest-head .badge { display: none; }
.pl-diff { margin-left: 0 !important; }
.pl-chat-q, .pl-chat-tool, .pl-chat-a { margin-left: 18px !important; margin-right: 18px !important; }
.pl-sources { margin-top: 56px; }
.pl-section, .pl-proof, .pl-final { margin-top: 72px; }
.pl-row, .pl-row:first-of-type { margin-top: 56px; }
.pl-proof { padding: 36px 22px 28px; border-radius: 18px; }
.pl-nums { grid-template-columns: 1fr; gap: 44px; }
.pl-nums > div { padding: 0; border-left: 0; }
.pl-plans { grid-template-columns: 1fr; }
.pl-plans > div { padding: 26px 22px; }
.pl-final { padding: 44px 22px; border-radius: 18px; }
}
.doc.prose h2[id] { scroll-margin-top: 120px; }
.doc.prose .byok { margin: 18px 0 10px; }
.doc.prose .byok-note { font-weight: 600; color: var(--brand-ink); background: var(--brand-soft); border-radius: var(--r-md); padding: 10px 14px; }
.doc.prose .byok details { margin-top: 12px; }
.doc.prose .byok summary { cursor: pointer; color: var(--brand-ink); }
.doc.prose .byok-key { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px; }
.doc.prose .byok-key input { flex: 1 1 260px; font: inherit; padding: 11px 12px; border: 1px solid var(--line-strong); border-radius: 12px; background: var(--surface); color: var(--text); }
.doc.prose .byok [hidden] { display: none; }
.doc.prose .faq dt { font-weight: 650; margin-top: 18px; }
.doc.prose .faq dd { margin: 4px 0 0; color: var(--text); }
.theme-button { flex: none; width: 36px; height: 36px; margin: 0; border: 0; border-radius: 10px; background: none; color: var(--muted); }
.theme-button:hover { background: var(--tint); color: var(--fg); }
.theme-button .i { width: 19px; height: 19px; }
.account { position: relative; display: flex; align-items: center; flex: none; }
.account-login { display: inline-flex; align-items: center; gap: 7px; font-size: 14.5px; font-weight: 600; color: var(--muted); white-space: nowrap; padding: 7px 4px; }
.account-login:hover { color: var(--fg); text-decoration: none; }
.account-login .i { width: 22px; height: 22px; }
@media (min-width: 721px) {
.account-login .i { display: none; }
.account-login { font-size: 15px; font-weight: 500; padding: 7px 10px; border-radius: 9px; }
.account-login:hover { background: var(--tint); }
}
.account-button { display: none; padding: 2px; border: 0; border-radius: 50%; background: none; cursor: pointer; }
.signed-in .account-login { display: none; }
.signed-in .account-button { display: inline-flex; }
.avatar { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--brand-soft); color: var(--brand-ink); font-size: 15px; font-weight: 650; line-height: 1; transition: box-shadow 0.15s; }
.avatar .i { width: 18px; height: 18px; }
.account-button:hover .avatar, .account-button[aria-expanded="true"] .avatar { box-shadow: 0 0 0 3px var(--brand-line); }
.account-button:focus-visible { outline-offset: 2px; border-radius: 50%; }
.account-pill { display: none; align-items: center; gap: 8px; padding-right: 10px; font-size: 13.5px; color: var(--muted); white-space: nowrap; }
.quota-dots { display: inline-flex; gap: 3px; }
.quota-dots i { width: 7px; height: 7px; border-radius: 50%; background: var(--line-strong); }
.quota-dots i.on { background: var(--brand); }
@media (min-width: 901px) {
.account-pill:not([hidden]) { display: inline-flex; }
.signed-in .account-button:has(.account-pill:not([hidden])) { align-items: center; gap: 10px; padding: 2px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); }
.account-button:has(.account-pill:not([hidden])):hover { border-color: var(--brand-line); background: var(--tint); }
.account-button:has(.account-pill:not([hidden])) .avatar { width: 30px; height: 30px; font-size: 14px; }
.account-button:has(.account-pill:not([hidden])):focus-visible { border-radius: 999px; }
}
.account-menu { position: absolute; top: calc(100% + 8px); right: 0; z-index: 30; width: 272px; padding: 6px; background: var(--surface); border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow); font-size: 15px; }
.account-menu .account-head { display: grid; gap: 2px; margin: 0 0 6px; padding: 8px 10px 12px; border-bottom: 1px solid var(--line); line-height: 1.35; }
.account-email { color: var(--fg); font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.account-quota { color: var(--muted); font-size: 13.5px; }
.account-quota:empty { display: none; }
.account-menu a, .account-menu button { display: flex; align-items: center; gap: 10px; width: 100%; padding: 8px 10px; border: 0; border-radius: 8px; background: none; color: var(--text); font: inherit; text-align: left; cursor: pointer; }
.account-menu a:hover, .account-menu button:hover, .account-menu a:focus-visible, .account-menu button:focus-visible { background: var(--tint); color: var(--fg); text-decoration: none; outline-offset: -2px; }
.account-menu .i { color: var(--muted); }
.account-menu form { margin: 6px 0 0; padding-top: 6px; border-top: 1px solid var(--line); }
dialog.prompt { width: calc(100% - 32px); max-width: 440px; padding: 26px 26px 22px; border: 0; border-radius: 16px; background: var(--surface); color: var(--text); box-shadow: var(--shadow); }
dialog.prompt::backdrop { background: var(--overlay); }
.prompt-mark { display: inline-grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: var(--brand-soft); color: var(--brand); }
.prompt-mark .i { width: 22px; height: 22px; }
.prompt h2 { margin: 14px 0 8px; font-size: 21px; line-height: 1.3; }
.prompt p { margin: 0 0 22px; color: var(--muted); font-size: 16px; line-height: 1.55; }
.prompt-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.doc.prose.narrow { max-width: 560px; }
.doc.prose .small, .small { font-size: 14.5px; }
.doc.prose > .law { margin-bottom: 24px; }
.login { display: grid; gap: 12px; max-width: 420px; margin: 8px 0 24px; }
.login form { margin: 0; display: grid; gap: 10px; }
.login .btn { width: 100%; text-align: center; }
.btn.google { display: inline-flex; align-items: center; justify-content: center; gap: 12px; background: var(--surface); color: var(--fg); border: 1px solid var(--line-strong); }
.btn.google:hover { background: var(--tint); }
.g-mark {
  width: 20px;
  height: 20px;
  flex: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%23EA4335' d='M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z'/%3E%3Cpath fill='%234285F4' d='M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z'/%3E%3Cpath fill='%23FBBC05' d='M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z'/%3E%3Cpath fill='%2334A853' d='M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.login-or { margin: 0; text-align: center; color: var(--faint); font-size: 14.5px; }
.login-email label { font-size: 15px; font-weight: 600; color: var(--fg); }
.login-email input { font: 17px/1.4 var(--sans); padding: 12px 14px; border: 1px solid var(--line-strong); border-radius: 12px; background: var(--surface); color: var(--fg); }
.login-email input:focus { outline: 0; border-color: var(--brand); box-shadow: 0 0 0 4px var(--brand-soft); }
.form-error { color: var(--rose); background: var(--rose-soft); border-radius: var(--r-md); padding: 10px 14px; font-size: 15px; }
.account-left { font-size: 20px; font-weight: 650; color: var(--fg); margin: 0 0 6px; }
.account-facts { margin-top: 0; }
.account-delete { display: grid; gap: 12px; justify-items: start; }
.account-delete input[type="email"] { width: 100%; max-width: 420px; font: 17px/1.4 var(--sans); padding: 11px 14px; border: 1px solid var(--line-strong); border-radius: 12px; background: var(--surface); color: var(--fg); }
.account-delete input[type="email"]:focus { outline: 0; border-color: var(--brand); box-shadow: 0 0 0 4px var(--brand-soft); }
.btn.danger-solid { background: var(--rose); color: #fff; }
.btn.danger-solid:hover { background: var(--rose-hover); }
.form-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; margin-top: 4px; }
.doc.settings-page { max-width: 1040px; }
.settings-head { display: flex; align-items: center; gap: 16px; margin: 3vh 0 28px; }
.avatar.avatar-lg { width: 56px; height: 56px; font-size: 24px; }
.settings-who { flex: 1; min-width: 0; }
.doc.prose .settings-who h1 { margin: 0; font-size: 30px; }
.doc.prose .settings-who p { margin: 2px 0 0; color: var(--muted); font-size: 16px; overflow-wrap: anywhere; }
.settings-head .account-out { margin: 0; }
.settings { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 36px; align-items: start; }
.settings-nav { position: sticky; top: 84px; display: grid; gap: 2px; }
.settings-nav a { color: var(--muted); padding: 7px 12px; border-radius: 9px; font-size: 15px; }
.settings-nav a:hover { background: var(--tint); color: var(--fg); text-decoration: none; }
.settings-body { display: grid; gap: 20px; min-width: 0; }
.admin { display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 48px; align-items: start; margin-top: 3vh; }
.admin table.ledger th, .admin table.ledger td { padding-right: 16px; }
.admin table.ledger th { font-size: var(--fs-meta); font-weight: 500; vertical-align: bottom; }
table.ledger td.when { white-space: nowrap; color: var(--muted); font-size: var(--fs-meta); }
@media (max-width: 860px) {
.admin { grid-template-columns: minmax(0, 1fr); gap: 20px; }
}
.card { scroll-margin-top: 84px; }
.card > :last-child { margin-bottom: 0; }
.doc.prose .card h2 { font-size: 19px; margin: 0 0 14px; }
.doc.prose .card h3 { font-size: 16px; margin: 22px 0 8px; }
.doc.prose .card .account-facts { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 2px 20px; }
.doc.prose .card .account-facts li { margin: 0; font-size: 15px; color: var(--muted); }
.card-foot { display: flex; align-items: center; justify-content: space-between; gap: 8px 16px; margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--line); }
.doc.prose .card-foot h3 { margin: 0 0 2px; font-size: 15.5px; }
.card-foot p { margin: 0; }
.quiet-link { color: var(--rose); font-size: 15px; font-weight: 600; white-space: nowrap; }
.quiet-link:hover { color: var(--rose-hover); }
@media (max-width: 900px) {
.settings { grid-template-columns: minmax(0, 1fr); gap: 16px; }
.settings-nav { position: static; display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin: 0 -16px; padding: 0 16px 2px; }
.settings-nav::-webkit-scrollbar { display: none; }
.settings-nav a { white-space: nowrap; border: 1px solid var(--line); border-radius: 999px; padding: 5px 12px; font-size: 14px; }
}
@media (max-width: 600px) {
.settings-head { flex-wrap: wrap; margin-top: 8px; }
.avatar.avatar-lg { width: 48px; height: 48px; font-size: 20px; }
.settings-head .account-out { flex-basis: 100%; }
.card { padding: 18px 16px; }
.card-foot { flex-direction: column; align-items: flex-start; }
}
.ask-own { margin: 36px 0 8px; padding: 22px 22px 16px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); }
.ask-own h2 { margin: 0 0 12px; }
.ask-own .small { margin: 10px 0 0; }
.topup { display: grid; gap: 14px; max-width: 560px; margin: 8px 0 0; }
.packages { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.package { position: relative; display: grid; gap: 2px; padding: 14px 14px 12px; border: 1px solid var(--line-strong); border-radius: 12px; background: var(--surface); cursor: pointer; }
.package:has(input:checked) { border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-soft); }
.package input { position: absolute; opacity: 0; pointer-events: none; }
.package-amount { font-size: 20px; font-weight: 700; color: var(--fg); }
.package-bonus { font-size: 13.5px; font-weight: 600; color: var(--green); }
.package-answers { font-size: 13.5px; color: var(--muted); }
.consent { display: flex; gap: 10px; align-items: flex-start; font-size: 14.5px; line-height: 1.5; color: var(--text); }
.consent input { margin-top: 4px; flex: none; }
.invoice summary { cursor: pointer; color: var(--brand-ink); font-size: 15px; }
.invoice input { display: block; margin-top: 6px; font: 16px/1.4 var(--sans); padding: 10px 12px; border: 1px solid var(--line-strong); border-radius: 10px; background: var(--surface); }
.invoice label { font-size: 14px; color: var(--muted); }
.topup-pay { display: flex; flex-wrap: wrap; gap: 10px; }
.topup-pay .btn { flex: 1 1 200px; white-space: normal; }
@media (max-width: 720px) {
.packages { grid-template-columns: 1fr; }
}
table.ledger { width: 100%; border-collapse: collapse; font-size: 15px; }
table.ledger th { text-align: left; font-weight: 600; color: var(--muted); border-bottom: 1px solid var(--line); padding: 6px 8px 6px 0; }
table.ledger td { border-bottom: 1px solid var(--line); padding: 8px 8px 8px 0; }
table.ledger .num { text-align: right; white-space: nowrap; padding-right: 0; }
.toolbar.keep { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 10px 0 4px; }
.keep-note { color: var(--muted); font-size: 14.5px; }
.keep-note a { text-decoration: underline; text-underline-offset: 3px; }
form.inline { display: inline; margin-left: auto; }
.link-button { background: none; border: 0; padding: 0; font: inherit; font-size: 14.5px; color: var(--brand-ink); text-decoration: underline; cursor: pointer; }
.link-button:hover { color: var(--brand); }
.folder-pick { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 6px 0 10px; font-size: 15px; }
.folder-pick select, .folder-pick input, .folder-form input, .folder-form textarea, .folder-new input { font: 16px/1.4 var(--sans); padding: 7px 10px; border: 1px solid var(--line-strong); border-radius: 10px; background: var(--surface); color: var(--fg); }
.folder-pick input { flex: 1 1 220px; min-width: 0; }
ol.footnotes, ul.folder-sources { font-size: 15px; line-height: 1.6; padding-left: 22px; overflow-wrap: anywhere; }
ol.footnotes li, ul.folder-sources li { margin: 4px 0; }
.law a.ref-link[data-ref]::after, .law a.ref-link.expandable::after { content: "▸"; font-size: 0.55em; margin-left: 2px; color: var(--brand); opacity: 0.8; vertical-align: 0.15em; }
.doc-text a.ref-link.open, .law a.ref-link.open { background: var(--brand-soft); border-radius: 3px; text-decoration-color: var(--brand); }
.law a.ref-link.open::after { content: "▾"; }
.law a.ref-link.def { color: inherit; text-decoration-style: dotted; text-decoration-color: var(--muted); }
.law a.ref-link.def::after, .law a.ref-link.def.open::after { content: none; }
.ref-box {
  margin: 6px 0 14px calc(var(--d, 0) * 24px + 24px);
  padding: 10px 16px 12px;
  background: var(--surface);
  border: 1px solid var(--brand-line);
  border-radius: 12px;
  box-shadow: var(--shadow-sm);
}
.ref-box-head { display: flex; align-items: center; gap: 8px; font-size: 13.5px; line-height: 1.4; color: var(--muted); padding-bottom: 8px; margin-bottom: 6px; border-bottom: 1px solid var(--brand-line); }
.ref-box-kind { font-size: 11.5px; line-height: 1; font-weight: 600; text-transform: uppercase; letter-spacing: 0.07em; color: var(--brand); }
.ref-box-head a { flex: 1; color: var(--fg); font-weight: 600; }
.ref-box-close { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; margin: -4px -6px -4px 0; border: 0; border-radius: 8px; background: none; color: var(--muted); font-size: 18px; cursor: pointer; }
.ref-box-close:hover { background: var(--brand-soft); color: var(--brand); }
.ref-box .law { font-size: 16px; line-height: 1.65; margin: 0; padding: 0; border: 0; background: none; }
.ref-box .law .ln { margin: 3px 0; }
.ref-box-more { margin-top: 6px; font-size: 13.5px; }
.ref-box-loading { color: var(--muted); font-size: 14px; }
.sel-tip { position: fixed; z-index: 18; padding: 4px; border-radius: var(--r-md); background: var(--surface); box-shadow: var(--shadow); animation: fade 0.12s ease; }
.sel-tip { display: flex; gap: 4px; }
.sel-tip .btn { gap: 6px; }
.explain-gap { flex: 1; }
.explain-quote { margin: 0 0 8px; font-size: 14px; line-height: 1.5; font-style: italic; color: var(--muted); }
.explain-box .ai-text { font-size: 16px; line-height: 1.65; color: var(--text); animation: fade 0.25s; }
.explain-box .ai-text p { margin: 0; }
.explain-box .doc-ai-answer { margin-top: 12px; padding-top: 12px; }
.explain-ask { margin-top: 12px; }
.explain-box .auto-note { margin: 10px 0 0; font-size: 12.5px; line-height: 1.5; }
.law .ln.frag-on { background: var(--brand-soft); box-shadow: 0 0 0 6px var(--brand-soft); border-radius: 2px; }
:is(.plain, .unit-ai, .explain-box) .cite.on { background: var(--brand); color: var(--on-brand); }
.reader-grid { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: "head" "toc" "law"; gap: 0 40px; }
.reader-grid > .act-head { grid-area: head; min-width: 0; }
.reader-grid > .toc-nav { grid-area: toc; }
.reader-grid > .law, .reader-grid > .law-on-day { grid-area: law; min-width: 0; }
.act-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 20px; margin: 16px 0 0; }
.act-meta .meta-row { flex: 1 1 auto; margin: 0; }
.toc-nav { margin: 12px 0 0; font-size: 15px; line-height: 1.4; }
.toc-nav > summary { cursor: pointer; font-weight: 600; color: var(--fg); padding: 8px 0; list-style: none; }
.toc-nav > summary::-webkit-details-marker { display: none; }
.toc-nav > summary::before { content: "▸ "; color: var(--brand); }
.toc-nav[open] > summary::before { content: "▾ "; }
.toc-nav nav { display: flex; flex-direction: column; gap: 2px; padding: 8px 0 12px; }
.toc-nav nav a { color: var(--muted); text-decoration: none; padding: 7px 12px 7px calc(var(--d, 0) * 12px + 12px); border-radius: 9px; }
.toc-nav nav a:hover { color: var(--fg); background: var(--tint); }
.toc-nav .toc-title { color: inherit; margin-left: 4px; }
.toc-nav nav a.toc-section { color: var(--fg); font-weight: 600; }
.toc-arts { display: none; flex-direction: column; gap: 2px; margin: 2px 0 4px; }
.toc-arts.open { display: flex; }
.toc-nav nav a.toc-art { padding: 6px 12px 6px 28px; }
.unit-toc { margin: 0 0 10px; }
.unit-toc nav a.toc-art { padding-left: calc(var(--d, 0) * 12px + 12px); }
.toc-nav nav a.toc-art.toc-current { color: var(--brand-ink); background: var(--brand-soft); font-weight: 500; }
.reader-find { position: relative; display: flex; align-items: center; gap: 6px; margin: 14px 0 6px; }
.reader-find > .i { position: absolute; left: 13px; top: 50%; transform: translateY(-50%); color: var(--faint); pointer-events: none; }
.reader-find input { flex: 1; min-width: 0; height: 44px; font: 15px/1.4 var(--sans); color: var(--fg); padding: 0 40px 0 38px; border: 1px solid var(--line-strong); border-radius: 12px; background: var(--surface); }
.reader-find input:focus { outline: 0; border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-soft); }
::highlight(found) { background-color: #fff0a0; }
::highlight(found-current) { background-color: #ffc94d; }
.find-nav { display: flex; align-items: center; justify-content: flex-end; gap: 2px; margin: 0 0 6px; padding: 0 2px; font-size: 13.5px; color: var(--muted); }
.find-nav[hidden] { display: none; }
.find-nav .find-count { position: static; margin-right: 4px; text-align: right; font-variant-numeric: tabular-nums; }
.find-nav .icon-btn { width: 28px; height: 28px; margin: 0; border: 0; background: none; }
.find-nav .icon-btn:disabled { opacity: 0.4; cursor: default; background: none; color: var(--muted); }
.reader-find .find-key { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); min-width: 0; padding: 0 6px; border-bottom-width: 1px; font: 12px/1.5 var(--sans); color: var(--faint); background: none; pointer-events: none; }
.reader-find input:focus ~ .find-key, .reader-find input:not(:placeholder-shown) ~ .find-key { display: none; }
.reader-find input:not(:placeholder-shown) { padding-right: 12px; }
.toc-toggle-btn, .reader-top { display: none; }
.toc-toggle-btn { width: 36px; height: 36px; margin: 0; border: 0; background: none; }
.toc-toggle-btn .i { width: 19px; height: 19px; }
html.toc-hidden .toc-toggle-btn .i-panel-left-close, html:not(.toc-hidden) .toc-toggle-btn .i-panel-left-open { display: none; }
.law .heading, .law .ln { scroll-margin-top: 72px; }
.doc.reader .reader-grid > .law { max-width: 46rem; font-size: 18px; line-height: 1.65; margin-top: 8px; }
.doc.reader .law > .ln { content-visibility: auto; contain-intrinsic-size: auto calc(var(--c, 80) / var(--cpl, 90) * 1.5rem + 1rem); }
@media (max-width: 600px) {
.doc.reader .law > .ln { --cpl: 42; }
}
.doc.reader .ref-box .law > .ln { content-visibility: visible; }
@media print {
.doc.reader .law > .ln { content-visibility: visible; }
}
.doc.reader .law .ln { display: grid; grid-template-columns: max-content minmax(0, 1fr); column-gap: .6rem; padding-left: calc(var(--d, 0) * 1.7rem); margin: .4rem 0; }
.doc.reader .law .ln > .hd { margin: 0; font-weight: 600; color: var(--muted); min-width: 2.2rem; font-variant-numeric: tabular-nums; }
.doc.reader .law .ln[data-kind="par"] > .hd, .doc.reader .law .ln[data-kind="ust"] > .hd { color: var(--muted); }
.doc.reader .law .ln[data-kind="art"] { display: block; padding-left: 0; margin: 2.1rem 0 .5rem; }
.doc.reader .law .ln[data-kind="art"] + .ln[data-kind="par"], .doc.reader .law .ln[data-kind="art"] + .ln[data-kind="ust"] { margin-top: .2rem; }
.doc.reader .law .ln[data-kind="art"] > .hd { display: block; font-size: 20px; line-height: 1.3; font-weight: 600; letter-spacing: -0.01em; color: var(--fg); margin: 0 0 .5rem; }
.doc.reader .law .ln[data-kind="art"] > .hd:hover { color: var(--brand); text-decoration: underline; text-underline-offset: 3px; }
.doc.reader .law .ln[data-kind="art"] > .tx { display: block; }
.doc.reader .law .ln.repealed-unit { color: var(--faint); font-size: .92em; margin: .9rem 0 .2rem; }
.doc.reader .law .ln.repealed-unit > .hd { color: var(--faint); }
.doc.reader .law .ln.repealed-unit[data-kind="art"] { margin: .9rem 0 .2rem; }
.doc.reader .law .ln.repealed-unit[data-kind="art"] > .hd, .doc.reader .law .ln.repealed-unit[data-kind="art"] > .tx { display: inline; font-size: 14px; }
.doc.reader .law .ln.repealed-unit[data-kind="art"] > .hd { margin-right: .4rem; }
.doc.reader .law .ln.repealed-unit[data-kind="art"] + .ln.repealed-unit[data-kind="art"] { margin-top: .2rem; }
.doc.reader .law .heading { margin: 3.2rem 0 1rem; }
.doc.reader .reader-grid > .law > .heading:first-child { margin-top: 2.2rem; padding-top: 0; border-top: 0; }
.doc.reader .law .heading .heading-title { display: block; margin: .3rem 0 0; letter-spacing: 0; text-transform: none; color: var(--fg); }
.doc.reader .law .heading[data-kind="czesc"], .doc.reader .law .heading[data-kind="ksiega"], .doc.reader .law .heading[data-kind="tytul"], .doc.reader .law .heading[data-kind="dzial"] { font-size: 13px; line-height: 1.4; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; color: var(--muted); margin-top: 3.8rem; padding-top: 1.6rem; border-top: 1px solid var(--line); }
.doc.reader .law .heading[data-kind="czesc"] .heading-title, .doc.reader .law .heading[data-kind="ksiega"] .heading-title, .doc.reader .law .heading[data-kind="tytul"] .heading-title, .doc.reader .law .heading[data-kind="dzial"] .heading-title { font-size: 23px; line-height: 1.3; font-weight: 700; letter-spacing: -0.015em; }
.doc.reader .law .heading[data-kind="rozdzial"] { font-size: 12.5px; line-height: 1.4; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; color: var(--muted); margin-top: 2.8rem; }
.doc.reader .law .heading[data-kind="rozdzial"] .heading-title { font-size: 19px; line-height: 1.35; font-weight: 650; letter-spacing: -0.01em; }
.doc.reader .law .heading[data-kind="oddzial"] { font-size: 12px; line-height: 1.4; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--muted); margin-top: 2.2rem; }
.doc.reader .law .heading[data-kind="oddzial"] .heading-title { font-size: 16.5px; line-height: 1.35; font-weight: 650; }
.doc.reader .law .heading[data-kind="zal"] { font-size: 13px; line-height: 1.4; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; color: var(--muted); margin-top: 3.2rem; padding-top: 1.4rem; border-top: 1px solid var(--line); }
.doc.reader .law .annex { font-size: 14px; }
@media (max-width: 720px) {
.doc.reader .reader-grid > .law { font-size: 17px; line-height: 1.6; }
.doc.reader .law .ln { padding-left: calc(var(--d, 0) * 1rem); column-gap: .45rem; }
.doc.reader .law .ln[data-kind="art"] { margin-top: 1.7rem; }
}
.foot { border-top: 1px solid var(--line); background: var(--law-bg); }
.foot-inner { max-width: var(--page); margin: 0 auto; padding: 44px 24px 36px; display: grid; grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(0, 1fr)); gap: 32px 40px; color: var(--muted); font-size: 14.5px; line-height: 1.6; }
.foot-brand { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; max-width: 300px; }
.foot-brand p { margin: 0; }
.foot .brand { gap: 10px; }
.foot .brand-mark { width: 30px; height: 30px; }
.foot .wordmark { font-size: 17px; font-weight: 700; }
.foot nav { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.foot nav a { color: var(--text); }
.foot nav a:hover { color: var(--brand); }
.foot-title { margin: 0 0 4px; }
.foot-bottom { border-top: 1px solid var(--line); }
.foot-bottom-inner { max-width: var(--page); margin: 0 auto; padding: 14px 24px; display: flex; justify-content: flex-end; align-items: center; font-size: 13px; color: var(--faint); }
.foot-egg { flex: none; display: inline-flex; align-items: center; gap: 6px; height: 26px; margin-left: 8px; padding: 0; border: 0; border-radius: 8px; background: none; font: inherit; font-style: italic; color: var(--muted); cursor: pointer; transition: color 0.15s; }
.foot-egg:hover { color: var(--brand); }
.foot-egg .i { width: 20px; height: 20px; transition: transform 0.2s; }
.foot-egg:hover .i { transform: rotate(-12deg) scale(1.1); }
.corner { position: fixed; right: 16px; bottom: 16px; z-index: 24; display: flex; align-items: center; gap: 8px; pointer-events: none; }
.corner > * { pointer-events: auto; }
.to-top, .report-button { height: 44px; border: 1px solid var(--line-strong); border-radius: var(--r-pill); background: var(--surface); box-shadow: var(--shadow); cursor: pointer; transition: background 0.15s, border-color 0.15s, color 0.15s; }
.to-top { display: grid; place-items: center; width: 44px; padding: 0; color: var(--muted); opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity 0.18s, transform 0.18s, visibility 0.18s, background 0.15s, color 0.15s; }
.to-top.on { opacity: 1; visibility: visible; transform: none; }
.to-top .i { width: 20px; height: 20px; }
.report-button { display: inline-flex; align-items: center; gap: 8px; padding: 0 18px 0 15px; color: var(--fg); font: 600 var(--fs-ui) var(--sans); }
.report-button .i { width: 18px; height: 18px; color: var(--brand); }
.to-top:hover, .report-button:hover { border-color: var(--brand-line); background: var(--brand-soft); color: var(--brand-ink); }
.foot-bottom-inner { padding-bottom: 76px; }
@media (prefers-reduced-motion: reduce) {
.to-top { transition: none; }
}
@media (max-width: 720px) {
.corner { right: 12px; bottom: 12px; }
.to-top, .report-button { height: 40px; }
.to-top { width: 40px; }
.report-button { padding: 0 14px 0 12px; font-size: 14.5px; }
body:has(main :is(input, textarea, select):focus) .corner { visibility: hidden; }
}
dialog.report { width: min(460px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); margin: auto 16px 16px auto; padding: 0; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); color: var(--text); box-shadow: var(--shadow-lg); overflow-y: auto; overscroll-behavior: contain; animation: report-in 0.18s ease-out; }
dialog.report::backdrop { background: var(--overlay); }
@keyframes report-in { from { transform: translateY(12px); opacity: 0; } }
@keyframes report-up { from { transform: translateY(40%); } }
.report-form, .report-sent { display: flex; flex-direction: column; gap: 12px; padding: 18px 22px 20px; }
.report-form[hidden], .report-sent[hidden] { display: none; }
.report-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 -8px -4px 0; }
.report h2 { margin: 0; font-size: 20px; line-height: 1.3; }
.report-lead { margin: 0; color: var(--muted); font-size: var(--fs-ui); line-height: 1.5; }
.report-kinds { margin: 4px 0 0; padding: 0; border: 0; min-width: 0; }
.report-kinds legend { margin: 0 0 8px; padding: 0; }
label.reason { display: inline-flex; align-items: center; }
label.reason input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
label.reason:has(input:checked) { border-color: var(--brand-line); background: var(--brand-soft); color: var(--brand-ink); font-weight: 600; }
label.reason:has(input:focus-visible) { outline: 2px solid var(--brand); outline-offset: 2px; }
.report textarea { width: 100%; min-height: 132px; resize: vertical; font-size: 16px; line-height: 1.5; }
.report textarea::placeholder { color: var(--faint); }
.report .input { width: 100%; }
.report-hint { margin: -4px 0 0; color: var(--faint); font-size: var(--fs-small); }
.report-field { margin: 4px 0 -6px; color: var(--text); font-size: var(--fs-meta); font-weight: 500; }
.report-optional { color: var(--faint); font-weight: 400; }
.report-attach { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; font-size: var(--fs-meta); }
.report-attach label { display: inline-flex; align-items: center; gap: 8px; color: var(--text); cursor: pointer; }
.report-attach input { width: 16px; height: 16px; margin: 0; accent-color: var(--brand); }
.report-more summary { color: var(--muted); cursor: pointer; text-decoration: underline; text-decoration-color: var(--line-strong); text-underline-offset: 3px; }
.report-more summary:hover { color: var(--brand); }
.report-more[open] { flex-basis: 100%; }
.report-list { margin: 8px 0 0; padding: 10px 14px; list-style: none; border-radius: var(--r-md); background: var(--tint); color: var(--muted); font-size: var(--fs-small); line-height: 1.5; overflow-wrap: anywhere; }
.report-list b { color: var(--text); font-weight: 600; }
.report-trap { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.report-error { margin: 0; padding: 8px 12px; border-radius: var(--r-md); background: var(--rose-soft); color: var(--rose); font-size: var(--fs-meta); }
.report-actions { display: flex; align-items: center; gap: 16px; margin-top: 4px; }
.report-actions .btn { padding: 11px 20px; }
.report-actions .link-button { color: var(--muted); font-size: var(--fs-ui); }
.report-sent { align-items: flex-start; padding: 26px 26px 22px; }
.report-sent h2 { margin-top: 2px; }
.report-sent p { margin: 0 0 8px; color: var(--muted); font-size: 16px; line-height: 1.55; }
@media (max-width: 600px) {
dialog.report { width: 100%; max-width: none; max-height: 92dvh; margin: auto 0 0; border-width: 1px 0 0; border-radius: 16px 16px 0 0; animation-name: report-up; }
.report-form, .report-sent { padding: 16px 16px max(20px, env(safe-area-inset-bottom)); }
.report-actions .btn { flex: 1; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
dialog.report { animation: none; }
}
.egg { position: fixed; inset: 0; z-index: 70; display: grid; place-items: center; padding: 16px; background: rgba(10, 12, 14, 0.78); animation: fade 0.2s ease; }
.egg.out { animation: fade-out 0.2s ease forwards; }
.egg-card { position: relative; width: min(860px, 100%); animation: egg-in 0.45s cubic-bezier(0.2, 1.4, 0.4, 1); }
.egg.still .egg-card, .egg.still { animation: none; }
@keyframes egg-in { from { transform: scale(0.6) rotate(-4deg); opacity: 0; } }
.egg-head { display: grid; grid-template-columns: 36px 1fr 36px; align-items: center; gap: 12px; margin: 0 0 12px; }
.egg-head .egg-title { grid-column: 2; }
.egg-title { margin: 0; text-align: center; font-size: clamp(28px, 6vw, 56px); font-weight: 800; letter-spacing: 0.02em; text-transform: uppercase; color: #f5c518; text-shadow: 0 3px 0 #7a1b1b, 0 0 24px rgba(245, 197, 24, 0.45); }
.egg-card iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: 12px; background: #000; box-shadow: 0 24px 64px rgba(0, 0, 0, 0.5); }
.egg-close { grid-column: 3; width: 36px; height: 36px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, 0.14); color: #fff; font-size: 16px; cursor: pointer; }
.egg-close:hover { background: rgba(255, 255, 255, 0.28); }
.egg-credit { margin: 10px 0 0; text-align: center; font-size: 12.5px; color: rgba(255, 255, 255, 0.6); }
@media (max-width: 900px) {
.foot-inner { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.foot-brand { grid-column: 1 / -1; max-width: none; }
}
@media (max-width: 600px) {
.foot-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 24px; }
}
.unit-pager { display: flex; justify-content: space-between; gap: 16px; margin: 20px 0 8px; padding: 12px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 15.5px; }
.unit-pager a { padding: 6px 10px; margin: -6px -10px; border-radius: 8px; font-weight: 500; }
.unit-pager a:hover { background: var(--tint); text-decoration: none; }
.signed-in .ask-note:not(.filled) { visibility: hidden; }
dialog.jump { width: min(640px, calc(100vw - 32px)); max-height: min(520px, calc(100vh - 120px)); margin: 12vh auto auto; padding: 0; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); color: var(--fg); box-shadow: var(--shadow-lg); overflow: hidden; }
dialog.jump::backdrop { background: var(--overlay); }
.jump-field { display: flex; align-items: center; gap: 12px; padding: 16px 18px; }
.jump-field .i { color: var(--brand); width: 20px; height: 20px; }
.jump-field input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; font: 18px/1.4 var(--sans); color: var(--fg); }
.top .nav-keys { position: relative; flex: none; display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 9px; color: var(--muted); cursor: help; outline-offset: 2px; }
.top .nav-keys:hover, .top .nav-keys:focus-visible { color: var(--fg); background: var(--tint); }
.nav-keys .i { width: 18px; height: 18px; }
.keys-tip { position: absolute; top: calc(100% + 10px); right: 0; z-index: 30; display: grid; gap: 12px; width: 340px; padding: 16px 18px 14px; border-radius: 14px; background: var(--fg); color: color-mix(in srgb, var(--bg) 78%, var(--fg)); font-size: 14.5px; font-weight: 400; line-height: 1.4; text-align: left; white-space: normal; box-shadow: 0 12px 32px rgba(21, 24, 28, 0.3); pointer-events: none; opacity: 0; visibility: hidden; transition: opacity 0.15s; }
.nav-keys:hover .keys-tip, .nav-keys:focus .keys-tip { opacity: 1; visibility: visible; }
.keys-tip > b { color: var(--bg); font-size: 15px; font-weight: 600; letter-spacing: -0.01em; }
.keys-row { display: grid; grid-template-columns: 4.4em 1fr; gap: 14px; align-items: start; }
.keys-row > span:first-child { display: inline-flex; flex-wrap: wrap; gap: 4px; }
.keys-row > span:last-child { padding-top: 3px; }
.keys-row[hidden] { display: none; }
.keys-tip kbd { min-width: 26px; padding: 6px 8px; border: 1px solid color-mix(in srgb, var(--bg) 28%, var(--fg)); border-radius: 7px; background: color-mix(in srgb, var(--bg) 8%, var(--fg)); color: var(--bg); font: 600 13px/1 var(--sans); }
@media (max-width: 720px), (hover: none) {
.top .nav-keys { display: none; }
}
kbd { display: inline-block; min-width: 1.7em; padding: 1px 6px; border: 1px solid var(--line-strong); border-bottom-width: 2px; border-radius: 6px; background: var(--surface); color: var(--fg); font: 600 13px/1.5 var(--sans); text-align: center; }
.jump-field kbd { font: 12px var(--sans); color: var(--faint); border: 1px solid var(--line); border-radius: 6px; padding: 2px 6px; }
dialog.jump ul { list-style: none; margin: 0; padding: 8px; max-height: 420px; overflow-y: auto; border-top: 1px solid var(--line); }
dialog.jump ul:empty { display: none; }
dialog.jump li { display: flex; align-items: center; gap: 14px; padding: 9px 12px 9px 10px; border-radius: 12px; cursor: pointer; }
dialog.jump li[aria-selected="true"] { background: var(--tint); }
dialog.jump li.jump-group { position: relative; margin-top: 13px; }
dialog.jump li.jump-group::before { content: ""; position: absolute; top: -7px; left: 12px; right: 12px; border-top: 1px solid var(--line); }
.jump-tile { position: relative; flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; }
.jump-tile > .i { width: 19px; height: 19px; }
.jump-badge { position: absolute; right: -5px; bottom: -5px; display: grid; place-items: center; width: 20px; height: 20px; border: 2px solid var(--surface); border-radius: 50%; background: currentColor; }
.jump-badge .i { width: 11px; height: 11px; color: var(--surface); }
dialog.jump li[aria-selected="true"] .jump-badge { border-color: var(--tint); }
.jump-text { flex: 1; min-width: 0; display: grid; gap: 1px; }
.jump-label, .jump-sub { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.jump-label { font-size: var(--fs-ui); font-weight: 500; color: var(--fg); }
.jump-sub { font-size: var(--fs-small); color: var(--muted); }
.jump-go { flex: none; display: grid; color: var(--muted); visibility: hidden; }
.jump-go .i { width: 16px; height: 16px; }
dialog.jump li[aria-selected="true"] .jump-go { visibility: visible; }
@media (max-width: 720px) {
dialog.jump { margin-top: 12px; }
dialog.jump li { gap: 12px; }
.jump-tile { width: 34px; height: 34px; border-radius: 10px; }
.jump-field kbd { display: none; }
}
.is-pro .pro-mark, .is-pro [data-pro-teaser] { display: none; }
.stance { margin: 26px 0 0; }
.stance h3 { margin: 0 0 6px; font-size: 17px; }
pre.code { overflow-x: auto; padding: 12px 14px; border-radius: 10px; background: var(--tint); font-size: 13.5px; }
.date-form { display: grid; gap: 10px; margin: 0; white-space: normal; }
.date-form > label { font-size: 13.5px; font-weight: 600; color: var(--fg); }
.date-row { display: flex; align-items: center; gap: 8px; }
.date-row > .btn { align-self: stretch; }
.date-row input[type="text"] { width: 140px; height: 38px; padding: 0 12px; font: 15px var(--sans); color: var(--fg); border: 1px solid var(--line-strong); border-radius: 10px; background: var(--surface); }
.date-row input[type="text"]:focus { outline: 0; border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-soft); }
.date-form .pill { width: auto; height: 38px; padding: 0 16px; border-radius: 10px; border-color: var(--brand); background: var(--brand); color: var(--on-brand); font-weight: 600; }
.date-form .pill:hover { background: var(--brand-hover); color: var(--on-brand); }
.cal { width: 252px; }
.cal-head { display: flex; align-items: center; gap: 2px; margin-bottom: 6px; }
.cal-title { flex: 1; white-space: nowrap; text-align: center; font-size: 14px; font-weight: 600; color: var(--fg); }
.cal button { display: grid; place-items: center; gap: 0; padding: 0; white-space: nowrap; text-align: center; }
.cal button.cal-nav { width: 28px; height: 28px; border: 0; border-radius: 8px; background: none; color: var(--muted); font: 16px/1 var(--sans); cursor: pointer; }
.cal button.cal-nav:hover { background: var(--tint); color: var(--fg); }
.cal-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; }
.cal-dow { padding: 4px 0; text-align: center; font-size: 12px; color: var(--faint); }
.cal button.cal-day { width: auto; height: 32px; border: 0; border-radius: 8px; background: none; color: var(--text); font: 14px var(--sans); cursor: pointer; }
.cal button.cal-day:hover:not(:disabled) { background: var(--brand-soft); color: var(--brand-ink); }
.cal button.cal-day.today { box-shadow: inset 0 0 0 1px var(--brand-line); }
.cal button.cal-day.on { background: var(--brand); color: var(--on-brand); font-weight: 600; }
.cal button.cal-day:disabled { color: var(--line-strong); cursor: default; }
@media (max-width: 1240px) {
.top-inner { gap: 8px 14px; flex-wrap: wrap; padding-top: 12px; padding-bottom: 8px; }
.top-inner::after { content: ""; order: 2; flex-basis: 100%; height: 0; }
.top nav { order: 3; flex: 1 1 0; min-width: 0; overflow-x: auto; scrollbar-width: none; margin: 0 0 0 -12px; }
.top nav::-webkit-scrollbar { display: none; }
.account, .pro-link { order: 1; }
.top-inner > .brand { margin-right: auto; }
.top .nav-keys { margin-left: 0; }
}
@media (max-width: 720px) {
.top { position: relative; background: var(--bg); backdrop-filter: none; }
.find { top: 0; }
.hero .search, .law .heading, .law .ln, .doc .law .ln[id], .acts-toolbar, .doc .acts-group, .card, .doc.prose h2[id], .sg-section { scroll-margin-top: 12px; }
.top-inner { padding: 12px 16px 8px; }
.top nav { margin: 0 0 0 -8px; overflow: visible; }
.top nav .nav-wide { display: none; }
.nav-more { display: block; }
.top nav a { padding: 6px 10px; font-size: 15px; }
.pro-link { padding: 6px 11px; font-size: 13.5px; }
.account-login span:not(.i) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.account-login { padding: 4px 0; }
.account-login .i { width: 26px; height: 26px; }
.top-inner { column-gap: 10px; }
.account-button { padding: 0; }
.avatar { width: 30px; height: 30px; font-size: 14px; }
.brand-mark { width: 32px; height: 32px; }
.wordmark { font-size: 17px; }
main { padding: 16px 16px 64px; }
.hero h1 { font-size: 38px; margin-bottom: 12px; }
.hero { padding-top: 3vh; }
.hero .lead { font-size: 16px; margin-bottom: 20px; text-wrap: pretty; }
.examples { margin-top: 24px; }
.hero .lead .line { display: inline; white-space: normal; }
.home-section { margin-top: 72px; }
.home-section > h2 { font-size: 24px; }
.steps, .trust, .doc.prose .plans { grid-template-columns: 1fr; gap: 22px; }
.home-trust > h2 { font-size: 28px; margin-bottom: 28px; }
.home-numbers { grid-template-columns: 1fr; gap: 20px; margin-bottom: 36px; padding-bottom: 28px; }
.home-pillars { grid-template-columns: 1fr; gap: 26px; }
.home-quality { margin-top: 40px; padding: 22px 20px; }
.home-cta { margin-top: 64px; padding: 22px 20px; }
.home-cta > p { font-size: 19px; }
.hero .search textarea { font-size: 17px; }
.refs { columns: 1; }
.panel { top: 0; right: 0; bottom: 0; width: 100vw; border-radius: 0; box-shadow: none; animation: page-in 0.22s ease-out; }
.panel.closing { animation: page-out 0.18s ease-in forwards; }
.panel-bar { padding: 6px 6px 6px 16px; min-height: 52px; }
.panel-bar .icon { width: 44px; height: 44px; }
.panel-bar .icon .i { width: 20px; height: 20px; }
.panel-body { padding: 22px 18px 40px; }
.panel-body .find { top: -22px; }
.day { grid-template-columns: 1fr; gap: 8px; }
.event { grid-template-columns: 1fr; gap: 4px; }
.tiles { grid-template-columns: 1fr; }
.law .ln { padding-left: calc(var(--d, 0) * 16px); }
.law-quote, .prov-text, .doc > .law, .unit-main > .law { padding: 12px 14px 12px 16px; font-size: 16.5px; }
.results { margin-top: 28px; }
.ref-box { margin-left: calc(var(--d, 0) * 16px + 8px); padding: 10px 12px; }
.ref-box-head { flex-wrap: wrap; }
.doc h1, .doc.reader h1 { font-size: 28px; }
.doc.unit-page h1 { font-size: 34px; }
.doc.unit-page > .law, .unit-page .unit-main > .law { font-size: 17px; padding: 0; }
.doc.prose h1 { font-size: 32px; }
.foot-inner { padding: 32px 16px 28px; }
.foot-bottom-inner { padding: 12px 16px 64px; }
.dev-inner { padding: 24px 16px 32px; }
}
@media (min-width: 375px) and (max-width: 720px) {
.top nav .nav-wide { display: inline-block; }
.nav-more { display: none; }
.top nav { overflow-x: auto; scrollbar-width: none; }
.top nav::-webkit-scrollbar { display: none; }
.top nav a { padding: 6px 8px; }
}
@media (min-width: 375px) and (max-width: 399px) {
.top nav a { padding: 6px 7px; }
}
@media (max-width: 359px) {
.top nav { gap: 2px; }
.top nav a, .nav-more summary { padding: 6px 6px; }
}
@media (min-width: 1100px) {
.doc.reader { max-width: var(--page); padding: 0 40px; }
.reader-grid { grid-template-columns: 300px minmax(0, 1fr); grid-template-rows: auto 1fr; grid-template-areas: "toc head" "toc law"; column-gap: 0; }
.doc.reader .reader-grid > .act-head, .doc.reader .reader-grid > .law, .doc.reader .reader-grid > .law-on-day { width: 100%; max-width: calc(46rem + 80px); margin-left: auto; margin-right: auto; padding: 0 40px; }
.doc.reader .reader-grid > .act-head { padding-top: 32px; }
.doc.reader .reader-grid > .law, .doc.reader .reader-grid > .law-on-day { padding-bottom: 96px; }
.toc-nav { grid-row: 1 / span 2; position: sticky; top: 69px; align-self: start; height: calc(100vh - 69px); overflow: auto; margin: 0; padding: 28px 24px 28px 0; border-right: 1px solid var(--line); }
.toc-nav .reader-find { margin-top: 0; }
.toc-nav > summary { display: none; }
.toc-nav nav { display: flex; }
.toc-nav .find-box { position: sticky; top: -28px; z-index: 1; margin: -28px 0 0; padding: 28px 0 4px; background: var(--bg); }
:is(.reader-grid, .doc-grid) > :is(.toc-toggle-btn, .reader-top) { grid-row: 1 / span 2; grid-column: -2 / -1; position: sticky; top: calc(69px + 28px); align-self: start; z-index: 2; height: 44px; }
:is(.reader-grid, .doc-grid) > .toc-toggle-btn { display: inline-flex; justify-self: start; margin: 28px 0 0 max(8px, calc(50% - 23rem - 40px - 36px)); }
:is(.reader-grid, .doc-grid) > .reader-top { display: grid; justify-self: end; margin: 28px max(8px, calc(50% - 23rem - 40px - 44px)) 0 0; }
body:has(:is(.reader-grid, .doc-grid) > .reader-top) > .corner > .to-top { display: none; }
html.toc-hidden .reader-grid { grid-template-columns: minmax(0, 1fr); grid-template-areas: "head" "law"; }
html.toc-hidden .reader-grid > .toc-nav { display: none; }
main.doc.unit-page:has(> .unit-grid) { max-width: calc(var(--measure) + 64px + 300px); }
.unit-grid { display: grid; grid-template-columns: 260px minmax(0, 1fr); column-gap: 40px; }
.unit-grid > .unit-toc { grid-row: auto; top: 69px; height: calc(100vh - 69px); margin: -24px 0 0; padding: 24px 16px 28px 0; }
}
.dev-panel { background: #101316; color: #e3e7ea; border-top: 3px solid #b8440a; }
.dev-inner { max-width: var(--page); margin: 0 auto; padding: 32px 40px 48px; }
.dev-inner > header { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; margin-bottom: 20px; }
.dev-inner h2 { margin: 0; font-size: 20px; font-weight: 600; color: #fff; }
.dev-inner > header p { margin: 0; font-size: 14px; color: #8d97a1; }
.dev-tag { align-self: center; padding: 3px 8px; border-radius: 6px; background: #b8440a; color: #fff; font: 700 12px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: 0.06em; }
.btn.dark { background: var(--fg); color: var(--bg); }
.btn.dark:hover, a.btn.dark:hover { background: color-mix(in srgb, var(--fg) 82%, var(--bg)); color: var(--bg); }
.ver-link { font-size: 13px; margin-left: 4px; }
body.embed { min-height: 0; background: var(--surface); }
.embed-main { padding: 14px 18px 10px; }
.embed-head { font-weight: 650; font-size: 17px; margin-bottom: 4px; }
.embed-head .act { font-weight: 400; color: var(--muted); margin-left: 6px; }
.embed .law { font-size: 16px; margin: 6px 0; }
.embed-foot { margin: 10px 0 0; font-size: 13px; color: var(--muted); }
.doc-page :is(h2, h3, mark.hit, .doc-ai)[id], .doc-page mark.hit, .doc-text .frag-on { scroll-margin-top: calc(var(--top-h, 69px) + var(--pos-h) + 24px); }
.pos-back { display: inline-flex; align-items: center; gap: 7px; flex: none; max-width: 260px; padding: 5px 12px 5px 9px; border-radius: 999px; background: var(--brand-soft); color: var(--brand-ink); font-size: 13.5px; font-weight: 600; white-space: nowrap; }
.pos-back:hover { background: var(--brand-line); color: var(--brand-ink); text-decoration: none; }
.pos-back > span:first-child { font-size: 15px; line-height: 1; }
.pos-back > span:last-child { overflow: hidden; text-overflow: ellipsis; }
.crumbs .pos-back { margin-right: 12px; padding: 1px 12px 1px 9px; vertical-align: bottom; line-height: 1.5; }
.doc-grid { max-width: var(--page); margin: 0 auto; padding: 0 40px; display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; }
.doc-text { font-size: 17px; }
.doc-text h2 { margin: 36px 0 12px; line-height: 1; }
.doc-text h3 { margin: 28px 0 10px; font-size: 17px; line-height: 1.4; font-weight: 650; letter-spacing: 0; color: var(--fg); }
.doc-text p { margin: 0 0 16px; line-height: 1.75; text-wrap: pretty; }
.doc-text :is(.enum, .sentencja) { list-style: none; margin: 0 0 16px; padding: 0; }
.doc-text :is(.enum, .sentencja) > li { display: grid; grid-template-columns: minmax(1.6em, max-content) minmax(0, 1fr); column-gap: 0.5em; margin: 0 0 8px calc(var(--d, 0) * 24px); line-height: 1.7; }
.doc-text :is(.enum, .sentencja) > li > .tx:only-child { grid-column: 1 / -1; }
.doc-text :is(.enum, .sentencja, .np) .hd { font-weight: 650; color: var(--brand); font-variant-numeric: tabular-nums; white-space: nowrap; }
.doc-text .lead { margin: 0 0 10px; font-weight: 600; color: var(--fg); }
.doc-text .note { margin: 4px 0 16px; font-size: 14.5px; line-height: 1.6; color: var(--muted); }
.doc-text .quote { margin: 0 0 18px; padding: 2px 0 2px 18px; border-left: 3px solid var(--line-strong); color: var(--text); font-size: 16px; }
.doc-text .quote p { margin: 0 0 8px; }
.doc-text .quote > :last-child { margin-bottom: 0; }
.doc-text ul { margin: 0 0 16px; padding-left: 24px; }
.doc-text ul li { margin: 0 0 8px; line-height: 1.7; }
.doc-text :is(.hl-date, .hl-amount) { font-weight: 600; color: var(--fg); }
.doc-text :is(p, li, dd, ol) { border-radius: 6px; transition: background 0.35s, box-shadow 0.35s; }
.doc-text .frag-on { background: var(--brand-soft); box-shadow: 0 0 0 10px var(--brand-soft); }
:is(.doc-text, .thesis) mark.hit { padding: 1px 3px; margin: -1px -3px; border-radius: 4px; background: var(--mark); color: inherit; transition: background 0.3s; }
:is(.doc-text, .thesis) mark.hit.current { background: var(--mark-strong); }
.doc-grid > .toc-nav { margin: 16px 0 0; }
.doc-ai { margin: 32px 0 4px; padding: 16px 20px 14px; }
.doc-ai-note { flex: 1 1 280px; margin: 0; font-size: 15px; line-height: 1.55; color: var(--muted); }
.doc-ai-note a { font-weight: 600; }
.doc-ai-skel { display: flex; flex-direction: column; gap: 8px; padding: 4px 0 6px; }
.doc-ai-skel span { display: block; height: 11px; border-radius: 6px; background: var(--line); animation: skel-pulse 1.4s ease-in-out infinite; }
.doc-ai-skel span:nth-child(2) { width: 92%; }
.doc-ai-skel span:nth-child(3) { width: 70%; }
.doc-ai-skel + p { margin: 6px 0 0; font-size: 13.5px; color: var(--faint); }
.doc-ai .ai-text { display: flex; flex-direction: column; gap: 14px; font-size: 16px; line-height: 1.65; color: var(--text); animation: fade 0.25s; }
.doc-ai .ai-text h3 { margin: 0 0 3px; font-size: 14px; line-height: 1.4; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--brand-ink); }
.doc-ai .ai-text p { margin: 0; }
.doc-ai .ai-text ul { margin: 0; padding: 0 0 0 18px; display: flex; flex-direction: column; gap: 6px; }
.doc-ai .cite.on { background: var(--brand); color: var(--on-brand); }
.doc-frag { margin: 14px 0 0; padding: 10px 12px 10px 14px; border-left: 3px solid var(--brand); border-radius: 0 var(--r-md) var(--r-md) 0; background: var(--law-bg); font-size: 14.5px; line-height: 1.55; color: var(--text); white-space: pre-line; animation: fade 0.2s; }
.doc-frag-head { display: flex; align-items: center; gap: 12px; margin: 0 0 4px; font-size: 12.5px; font-weight: 600; color: var(--muted); white-space: normal; }
.doc-frag-where { font-weight: 400; }
.doc-frag-head .link-button { margin-left: auto; font-size: 13px; font-weight: 500; }
.doc-frag-head button:last-child { display: inline-grid; place-items: center; width: 24px; height: 24px; border: 0; border-radius: 6px; background: none; color: var(--muted); cursor: pointer; }
.doc-frag-head button:last-child:hover { background: var(--line); color: var(--fg); }
.doc-frag-head .i { width: 0.9em; height: 0.9em; }
.doc-ai-answer { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); animation: fade 0.25s; }
.doc-ai-answer .q { margin: 0 0 6px; font-size: 14.5px; line-height: 1.5; font-style: italic; color: var(--muted); }
.doc-ai-answer .ai-text { gap: 0; }
.doc-ai .suggestions { margin-top: 10px; }
.doc-ai-busy { margin: 10px 0 0; font-size: 14px; color: var(--faint); }
.doc-ai .auto-note { margin: 12px 0 0; font-size: 12.5px; line-height: 1.5; color: var(--faint); }
.doc-ai.working [data-ai-make] { opacity: 0.6; cursor: progress; }
@media (min-width: 1100px) {
.doc-grid { grid-template-columns: 300px minmax(0, 1fr); }
.doc-grid > .toc-nav { grid-column: 1; grid-row: 1; top: calc(var(--top-h, 69px) + var(--pos-h)); height: calc(100vh - var(--top-h, 69px) - var(--pos-h)); margin: 0; }
.doc-grid > :is(.toc-toggle-btn, .reader-top) { grid-row: 1; top: calc(var(--top-h, 69px) + var(--pos-h) + 28px); }
html.toc-hidden .doc-grid { grid-template-columns: minmax(0, 1fr); }
html.toc-hidden .doc-grid > .toc-nav { display: none; }
}
@media (max-width: 1099px) {
.doc-grid { padding: 0 24px; }
}
@media (max-width: 720px) {
.pos-back { max-width: 46vw; }
.doc-grid { padding: 0 16px; }
.doc-text :is(.enum, .sentencja) > li { margin-left: calc(var(--d, 0) * 16px); }
.doc-ai { padding: 14px 16px 12px; }
.doc-page :is(h2, h3, mark.hit, .doc-ai)[id], .doc-page mark.hit, .doc-text .frag-on { scroll-margin-top: calc(var(--top-h, 69px) + 16px); }
}
.pick > summary { display: inline-flex; align-items: center; gap: 6px; max-width: min(100%, 320px); padding: 7px 12px; border: 1px solid var(--line-strong); border-radius: 999px; background: var(--surface); color: var(--text); font-size: 14.5px; cursor: pointer; }
.pick > summary:hover { border-color: var(--brand-line); }
.pick > summary.on { border-color: var(--brand-line); background: var(--brand-soft); color: var(--brand-ink); font-weight: 600; }
.pick > summary .i-chevron-down { width: 14px; height: 14px; flex: none; }
@media (max-width: 600px) {
.pick { flex: 1 1 calc(50% - 6px); }
.pick > summary { width: 100%; justify-content: space-between; max-width: none; }
}
.facet .chip:hover, .filters .chip:hover, .chip-filter:hover { border-color: var(--brand-line); color: var(--brand); text-decoration: none; }
.refs.results { columns: 1; margin-top: 8px; }
.refs.results li { padding: 12px 0; border-bottom: 1px solid var(--line); }
.refs.results .ctx-text, .refs.results .snippet { color: var(--muted); font-size: 15px; line-height: 1.6; margin-top: 4px; }
.notice.warn { display: flex; align-items: flex-start; gap: 10px; margin: 0 0 20px; padding: 12px 16px; font-size: 15px; }
.notice.warn > .i { flex: none; margin-top: 3px; }
.hits { list-style: none; margin: 0; padding: 0; transition: opacity 0.2s; }
.hits > li { border-bottom: 1px solid var(--line); }
.hits .hit { display: flex; flex-direction: column; gap: 7px; padding: 20px 0; color: inherit; text-decoration: none; }
.hits .hit:hover { background: var(--tint); text-decoration: none; }
.hits .hit:focus-visible { outline-offset: -2px; }
.plain { margin: 16px 0; padding: 0 16px; background: var(--tint); border-radius: 12px; }
.plain > summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 8px; padding: 12px 0; font-size: 15px; font-weight: 500; color: var(--text); }
.plain > summary::-webkit-details-marker { display: none; }
.plain > summary .ai-badge { margin: 0; text-transform: none; letter-spacing: 0; }
.plain > summary .i-chevron-down { margin-left: auto; color: var(--muted); transition: transform 0.15s; }
.plain[open] > summary .i-chevron-down { transform: rotate(180deg); }
.plain > summary:hover { color: var(--fg); }
.plain[open] { padding-bottom: 14px; }
.plain p { margin: 0 0 6px; line-height: 1.65; }
.plain .hint { margin: 6px 0 0; font-size: 13.5px; }
.plain .ai-text { line-height: 1.65; animation: fade 0.25s; }
.plain .ai-text p { margin: 0 0 6px; }
.plain-act { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 6px 6px 6px 16px; font-size: 15px; font-weight: 500; color: var(--text); }
.unit-ai { margin: 18px 0 8px; }
.unit-ai .doc-ai-answer .ai-text { line-height: 1.65; animation: fade 0.25s; }
.unit-ai .doc-ai-answer .ai-text p { margin: 0; }
.unit-ai-ask { margin-top: 14px; }
.unit-ai .ask-note { margin: 8px 0 0; }
.unit-ai .doc-ai-busy + .ask-note { margin-top: 4px; }
.unit-ai > .hint { margin: 6px 0 0; font-size: 13.5px; }
p a, .source-note a, .hint a, .lead a, main li a:not([class]) {
  text-decoration: underline;
  text-decoration-color: var(--brand-line);
  text-underline-offset: 3px;
}
p a:hover, .source-note a:hover, .hint a:hover { text-decoration-color: currentColor; }
#app:empty { min-height: 100vh; }
@media print {
.top, .foot, .toolbar, .share, .toc-nav, .banner, .scrim, .panel,
  .pos-bar, .doc-ai, .mark-nav,
  .search, .examples, .pager, .facet, details:not([open]),
  .feedback, .pro-link, .no-print, .folder-pick, .corner { display: none !important; }
.folder-sources a, .footnotes a { color: #000; }
.footnotes a[href^="#"] { display: none; }
body { background: #fff; color: #000; font-size: 11pt; line-height: 1.5; }
main.doc, #app { max-width: none; padding: 0; margin: 0; }
a { color: #000; text-decoration: none; }
.source-note a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 9pt; }
.law, .law-quote, .plain, .source-note { background: none; border-color: #999; }
h1, h2 { break-after: avoid; }
.law p, .doc-text p { orphans: 3; widows: 3; }
}
.on-date { margin: 6px 0 14px; }
.on-day { margin: 0 0 14px; }
.on-day-now { font-size: 13.5px; }
@media (max-width: 600px) {
.hero .search textarea { font-size: 17px; padding: 14px 40px 10px 16px; min-height: 88px; }
.switch { order: 1; gap: 8px; }
}
@media (max-width: 400px) {
.brand { gap: 9px; }
.brand-mark { width: 30px; height: 30px; }
.wordmark { font-size: 16px; }
.pro-link { font-size: 13px; padding: 5px 9px; }
}
@media screen and (prefers-color-scheme: dark) {
:root:not(.light-only):not(.theme-light) .m-value { background: linear-gradient(transparent 56%, #5a4a14 56%); }
:root:not(.light-only):not(.theme-light) .m-term { background: linear-gradient(transparent 56%, #1f4a35 56%); }
:root:not(.light-only):not(.theme-light) mark.found { background: #5a4a14; }
:root:not(.light-only):not(.theme-light) ::highlight(found) { background-color: #5a4a14; }
:root:not(.light-only):not(.theme-light) ::highlight(found-current) { background-color: #8a6d12; }
:root:not(.light-only):not(.theme-light) mark.found.current { background: #8a6d12; box-shadow: 0 0 0 2px #8a6d12; }
:root:not(.light-only):not(.theme-light) ins { background: #1f4d2c; color: #b8f0c6; text-decoration-color: rgba(184, 240, 198, 0.45); }
:root:not(.light-only):not(.theme-light) del { background: #5a1f25; color: #ffc9cd; text-decoration-color: rgba(255, 201, 205, 0.45); }
:root:not(.light-only):not(.theme-light) .btn.danger-solid { color: #22080f; }
:root:not(.light-only):not(.theme-light) .btn.danger-solid:hover { background: #f5a3b5; }
:root:not(.light-only):not(.theme-light) .quiet-link:hover { color: #f5a3b5; }
:root:not(.light-only):not(.theme-light) .click-tip .i { color: #1c7a64; }
}
:root.theme-dark .m-value { background: linear-gradient(transparent 56%, #5a4a14 56%); }
:root.theme-dark .m-term { background: linear-gradient(transparent 56%, #1f4a35 56%); }
:root.theme-dark mark.found { background: #5a4a14; }
:root.theme-dark ::highlight(found) { background-color: #5a4a14; }
:root.theme-dark ::highlight(found-current) { background-color: #8a6d12; }
:root.theme-dark mark.found.current { background: #8a6d12; box-shadow: 0 0 0 2px #8a6d12; }
:root.theme-dark ins { background: #1f4d2c; color: #b8f0c6; text-decoration-color: rgba(184, 240, 198, 0.45); }
:root.theme-dark del { background: #5a1f25; color: #ffc9cd; text-decoration-color: rgba(255, 201, 205, 0.45); }
:root.theme-dark .btn.danger-solid { color: #22080f; }
:root.theme-dark .btn.danger-solid:hover { background: #f5a3b5; }
:root.theme-dark .quiet-link:hover { color: #f5a3b5; }
:root.theme-dark .click-tip .i { color: #1c7a64; }
.input, .login-email input, .account-delete input, .byok-key input, .folder-pick select, .folder-pick input, .folder-form input, .folder-form textarea, .folder-new input, .inline-form input, .invoice input, .adv-grid input, .date-row input, .rating-note input, .act-pick select, .share-pop textarea { font: 16px/1.45 var(--sans); padding: 9px 12px; border: 1px solid var(--line-strong); border-radius: var(--r-md); background: var(--surface); color: var(--fg); }
.input:focus, .login-email input:focus, .account-delete input:focus, .byok-key input:focus, .folder-pick select:focus, .folder-pick input:focus, .folder-form input:focus, .folder-form textarea:focus, .folder-new input:focus, .inline-form input:focus, .invoice input:focus, .adv-grid input:focus, .date-row input:focus, .rating-note input:focus, .act-pick select:focus, .share-pop textarea:focus { outline: 0; border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-soft); }
.results[data-tab]:not([data-tab=""]) > :not(.res-bar):not(.res-view) { display: none; }
mark.m-q { padding: 0 1px; border-radius: 3px; background: var(--mark); color: inherit; }
