/* CHC Ready design system: generated from the design-system project, tokens/*.css, 3 October 2026. Do not edit by hand; re-export from the design system. */

/* ---- fonts.css ---- */
/* Self-hosted, SIL Open Font Licence. Latin subset. Total about 110 KB. */
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400 600;font-display:swap;src:url("InstrumentSans-normal-latin.woff2") format("woff2");}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400 500;font-display:swap;src:url("Newsreader-400-latin.woff2") format("woff2");}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:400;font-display:swap;src:url("Newsreader-400-italic-latin.woff2") format("woff2");}

/* ---- colors.css ---- */
/* CHC Ready · colour. Paper ground, aubergine for the banner and actions, ochre as the single accent. */
:root{
--color-paper:#f7f6f3;--color-white:#ffffff;--color-surface:#eeebe5;--color-surface-2:#fcfbf9;
--color-ink:#1e1b22;--color-ink-2:#2f2a35;--color-ink-muted:#514b58;--color-border:#6f6a75;--color-line:#dcd7cf;--color-line-soft:#e9e5de;
--color-aubergine:#3d2a4f;--color-aubergine-dark:#2c1d3a;--color-aubergine-tint:#ece6f1;
--color-ochre:#d9a441;--color-ochre-text:#835710;--color-ochre-soft:#f4ead6;
--color-focus:#f2c14e;
--color-success:#2e6a3c;--color-success-soft:#e3efe5;--color-warning:#8a5300;--color-warning-soft:#f6ecd9;--color-error:#a8231f;--color-error-soft:#f7e1df;--color-info:#335f80;--color-info-soft:#e2ebf2;
--surface-page:var(--color-paper);--surface-card:var(--color-white);--surface-sunken:var(--color-surface);--surface-banner:var(--color-aubergine);--surface-highlight:var(--color-ochre-soft);
--text-body:var(--color-ink);--text-strong:var(--color-ink);--text-lede:var(--color-ink-2);--text-muted:var(--color-ink-muted);--text-on-dark:#ffffff;--text-link:var(--color-aubergine);--text-link-hover:var(--color-aubergine-dark);--text-accent:var(--color-ochre-text);
--action-primary:var(--color-aubergine);--action-primary-hover:var(--color-aubergine-dark);--action-on-primary:#ffffff;
--brand-primary:var(--color-aubergine);--brand-accent:var(--color-ochre);
--border-field:var(--color-border);--border-card:var(--color-line-soft);--border-rule:var(--color-line);
--dot-filled:var(--color-aubergine);--dot-current:var(--color-ochre);--dot-empty:var(--color-line);--dot-faint-opacity:.26;
}

/* ---- typography.css ---- */
/* CHC Ready · type. Newsreader for headings and quotes, Instrument Sans for everything else. 18px minimum body. */
:root{
--font-serif:'Newsreader',Georgia,'Times New Roman',serif;
--font-sans:'Instrument Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
--font-heading:var(--font-serif);--font-body:var(--font-sans);--font-quote:var(--font-serif);
--weight-regular:400;--weight-medium:500;--weight-semibold:600;
--size-display:66px;--size-h1:52px;--size-h2:39px;--size-h3:29px;--size-h4:22px;--size-lede:20px;--size-body:18px;--size-small:16px;--size-label:14px;
--size-display-mobile:42px;--size-h1-mobile:38px;--size-h2-mobile:31px;
--leading-tight:1.04;--leading-heading:1.15;--leading-snug:1.35;--leading-body:1.6;
--tracking-display:-.022em;--tracking-heading:-.012em;--tracking-label:.07em;
--measure:34em;--measure-narrow:30em;
}

/* ---- spacing.css ---- */
/* CHC Ready · space, layout, shape, depth. */
:root{
--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:56px;--space-10:80px;--space-11:96px;
--container:1240px;--container-narrow:720px;--gutter:40px;--gutter-mobile:20px;--section-gap:96px;
--radius-control:4px;--radius-small:3px;--radius-card:4px;--radius-window:10px;--radius-pill:999px;
--border-thin:1px;--border-field-width:2px;
--shadow-none:none;--shadow-raised:0 1px 2px rgba(30,27,34,.05),0 24px 48px -20px rgba(30,27,34,.22);--shadow-dialog:0 2px 6px rgba(30,27,34,.08),0 32px 64px -24px rgba(30,27,34,.35);
--scrim:rgba(30,27,34,.48);
--tap-min:44px;--control-height:56px;--control-height-small:44px;
--focus-ring:0 0 0 3px var(--color-ink),0 0 0 6px var(--color-focus);
}

/* ---- motion.css ---- */
/* CHC Ready · motion. Motion explains what changed. Exits run at about 75% of entrances. */
:root{
--dur-fast:120ms;--dur-state:240ms;--dur-layout:400ms;--dur-enter:500ms;--dur-pulse:1600ms;--dur-stage:4200ms;
--ease-out:cubic-bezier(.22,.61,.36,1);--ease-in:cubic-bezier(.55,.06,.68,.19);--ease-in-out:cubic-bezier(.65,0,.35,1);
--shift-small:6px;--shift-step:16px;
}
@media (prefers-reduced-motion:reduce){:root{--dur-state:1ms;--dur-layout:120ms;--dur-enter:120ms;--shift-small:0px;--shift-step:0px}}
@keyframes chc-pulse{0%,100%{opacity:.35;transform:scale(.82)}35%{opacity:1;transform:scale(1)}}
@keyframes chc-breathe{0%,100%{opacity:.18}50%{opacity:.32}}
@keyframes chc-rise{from{opacity:0;transform:translateY(var(--shift-small))}to{opacity:1;transform:none}}
@keyframes chc-fill{from{width:0}to{width:100%}}

/* ---- base.css ---- */
/* CHC Ready · base element styles shared by every page. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--surface-page);color:var(--text-body);font-family:var(--font-body);font-size:var(--size-body);line-height:var(--leading-body);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--font-heading);font-weight:var(--weight-medium);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);margin:0;text-wrap:balance}
p{margin:0;text-wrap:pretty}
a{color:var(--text-link);text-decoration:underline;text-underline-offset:.22em;text-decoration-thickness:1px}
a:hover{color:var(--text-link-hover);text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--color-ink);outline-offset:2px;box-shadow:0 0 0 6px var(--color-focus);border-radius:2px}
::selection{background:var(--color-ochre-soft)}
.chc-visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@keyframes chc-dialog-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes chc-fade-in{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}

/* ---- components.css ---- */
/* CHC Ready · component classes. Used by the React components and usable directly in static HTML. */
.chc-mark{display:inline-block;flex:none;color:var(--brand-primary)}
.chc-mark--reverse{color:#fff}
.chc-mark--mono{color:currentColor}.chc-mark--mono .ar{fill:currentColor}
.chc-mark .fd{opacity:var(--dot-faint-opacity)}
.chc-mark--working .ar{transform-box:fill-box;transform-origin:center;animation:chc-pulse var(--dur-pulse) var(--ease-out) infinite}
.chc-mark--working .ar:nth-of-type(7){animation-delay:.2s}.chc-mark--working .ar:nth-of-type(8){animation-delay:.4s}.chc-mark--working .ar:nth-of-type(9){animation-delay:.6s}
.chc-mark--working .fd{animation:chc-breathe var(--dur-pulse) ease-in-out infinite}
.chc-logo{display:inline-flex;align-items:center;gap:.55em;color:var(--brand-primary);text-decoration:none;min-height:var(--tap-min)}
.chc-logo:hover{text-decoration:none;color:inherit}
.chc-logo--reverse,.chc-logo--reverse:hover{color:#fff}
.chc-logo__word{font-family:var(--font-serif);font-weight:500;letter-spacing:-.012em;line-height:1;white-space:nowrap}
.chc-working{display:flex;align-items:center;gap:var(--space-4)}
.chc-working__label{font-weight:600;font-size:var(--size-body);line-height:1.3}
.chc-working__detail{font-size:var(--size-small);color:var(--text-muted);line-height:1.4}
.chc-btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--control-height);padding:0 28px;border:0;border-radius:var(--radius-control);font:600 var(--size-body)/1.2 var(--font-sans);text-decoration:none;cursor:pointer;transition:background var(--dur-state) var(--ease-out),box-shadow var(--dur-state) var(--ease-out),transform var(--dur-fast) var(--ease-out)}
.chc-btn:hover{text-decoration:none}
.chc-btn:active{transform:translateY(1px)}
.chc-btn--primary{background:var(--action-primary);color:var(--action-on-primary)}
.chc-btn--primary:hover{background:var(--action-primary-hover);color:var(--action-on-primary)}
.chc-btn--secondary{background:transparent;color:var(--action-primary);box-shadow:inset 0 0 0 2px var(--action-primary)}
.chc-btn--secondary:hover{background:var(--color-aubergine-tint);color:var(--action-primary)}
.chc-btn--quiet{background:transparent;color:var(--action-primary);padding:0 4px;min-height:var(--tap-min);text-decoration:underline;text-underline-offset:.22em;text-decoration-thickness:1px}
.chc-btn--quiet:hover{text-decoration:underline;text-decoration-thickness:2px;color:var(--action-primary-hover)}
.chc-btn--reverse{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.6)}
.chc-btn--reverse:hover{background:rgba(255,255,255,.08);color:#fff}
.chc-btn--small{min-height:var(--control-height-small);padding:0 18px;font-size:var(--size-small)}
.chc-btn--full{width:100%}
.chc-btn[disabled],.chc-btn[aria-disabled="true"]{background:var(--color-surface);color:var(--text-muted);box-shadow:none;cursor:not-allowed;transform:none}
.chc-link{font-weight:600;color:var(--text-link);display:inline-flex;align-items:center;gap:6px;min-height:var(--tap-min)}
.chc-field{display:grid;gap:6px;max-width:100%}
.chc-field__label{font-weight:600;font-size:var(--size-body);line-height:1.35}
.chc-field__hint{font-size:var(--size-small);color:var(--text-muted);line-height:1.45}
.chc-field__error{font-size:var(--size-small);color:var(--color-error);font-weight:600;line-height:1.4;display:flex;gap:8px;align-items:center}
.chc-field__error::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;flex:none}
.chc-input{min-height:var(--control-height);padding:12px 14px;border:var(--border-field-width) solid var(--border-field);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text-body);font:var(--size-body)/1.4 var(--font-sans);width:100%;transition:border-color var(--dur-state) var(--ease-out)}
.chc-input:hover{border-color:var(--color-ink)}
.chc-input:focus-visible{border-color:var(--color-ink)}
.chc-field--error .chc-input{border-color:var(--color-error)}
.chc-fieldset{border:0;margin:0;padding:0;display:grid;gap:var(--space-3);min-width:0}
.chc-fieldset__legend{padding:0;margin-bottom:var(--space-2)}
.chc-radio{position:relative;display:grid;grid-template-columns:26px minmax(0,1fr);gap:14px;align-items:start;min-height:60px;padding:16px 18px;border:var(--border-field-width) solid var(--border-field);border-radius:var(--radius-control);background:var(--surface-card);cursor:pointer;transition:border-color var(--dur-state) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}
.chc-radio:hover{border-color:var(--action-primary)}
.chc-radio input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chc-radio__dot{width:26px;height:26px;border-radius:50%;border:2px solid var(--border-field);display:grid;place-items:center;margin-top:-1px;background:var(--surface-card)}
.chc-radio__text{font-size:var(--size-body);line-height:1.35}
.chc-radio__hint{display:block;font-size:var(--size-small);color:var(--text-muted);margin-top:2px}
.chc-radio--checked{border-color:var(--action-primary);box-shadow:inset 0 0 0 1px var(--action-primary)}
.chc-radio--checked .chc-radio__dot{border-color:var(--action-primary)}
.chc-radio--checked .chc-radio__dot::after{content:"";width:12px;height:12px;border-radius:50%;background:var(--action-primary)}
.chc-radio:has(input:focus-visible){outline:3px solid var(--color-ink);outline-offset:2px;box-shadow:0 0 0 6px var(--color-focus)}
.chc-check{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;align-items:start;min-height:var(--tap-min);cursor:pointer;position:relative}
.chc-check input{position:absolute;opacity:0;width:28px;height:28px;margin:0;cursor:pointer}
.chc-check__box{width:28px;height:28px;border:2px solid var(--border-field);border-radius:var(--radius-small);background:var(--surface-card);display:grid;place-items:center;transition:background var(--dur-fast) var(--ease-out)}
.chc-check--checked .chc-check__box{background:var(--action-primary);border-color:var(--action-primary)}
.chc-check--checked .chc-check__box::after{content:"";width:8px;height:14px;border:solid #fff;border-width:0 3px 3px 0;transform:translateY(-2px) rotate(45deg)}
.chc-check input:focus-visible+.chc-check__box{outline:3px solid var(--color-ink);outline-offset:2px;box-shadow:0 0 0 6px var(--color-focus)}
.chc-check__label{font-size:var(--size-body);line-height:1.4;padding-top:2px}
.chc-card{background:var(--surface-card);border:1px solid var(--border-card);border-radius:var(--radius-card);padding:var(--space-6)}
.chc-card--sunken{background:var(--surface-sunken);border-color:transparent}
.chc-card--raised{border-radius:var(--radius-window);box-shadow:var(--shadow-raised)}
.chc-card--flush{padding:0;overflow:hidden}
.chc-callout{display:grid;grid-template-columns:10px minmax(0,1fr);gap:14px;padding:18px 20px;border-radius:var(--radius-card);background:var(--surface-sunken)}
.chc-callout__dot{width:10px;height:10px;border-radius:50%;margin-top:9px;background:var(--color-aubergine)}
.chc-callout__title{font-weight:600;line-height:1.4;margin-bottom:2px}
.chc-callout__body{font-size:var(--size-body);line-height:1.55}
.chc-callout--info{background:var(--color-info-soft)}.chc-callout--info .chc-callout__dot{background:var(--color-info)}
.chc-callout--success{background:var(--color-success-soft)}.chc-callout--success .chc-callout__dot{background:var(--color-success)}
.chc-callout--warning{background:var(--color-warning-soft)}.chc-callout--warning .chc-callout__dot{background:var(--color-warning)}
.chc-callout--error{background:var(--color-error-soft)}.chc-callout--error .chc-callout__dot{background:var(--color-error)}
.chc-callout--highlight{background:var(--surface-highlight)}.chc-callout--highlight .chc-callout__dot{background:var(--color-ochre)}
.chc-acc{border-top:1px solid var(--border-rule)}
.chc-acc__item{border-bottom:1px solid var(--border-rule)}
.chc-acc__btn{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:64px;padding:16px 0;background:none;border:0;text-align:left;cursor:pointer;font:500 var(--size-h4)/1.3 var(--font-serif);color:var(--text-body)}
.chc-acc__btn:hover{color:var(--action-primary)}
.chc-acc__icon{position:relative;width:18px;height:18px;flex:none}
.chc-acc__icon::before,.chc-acc__icon::after{content:"";position:absolute;left:0;right:0;top:8px;height:2px;background:currentColor;border-radius:1px;transition:transform var(--dur-state) var(--ease-out)}
.chc-acc__icon::after{transform:rotate(90deg)}
.chc-acc__item--open .chc-acc__icon::after{transform:rotate(0)}
.chc-acc__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--dur-layout) var(--ease-out)}
.chc-acc__item--open .chc-acc__panel{grid-template-rows:1fr}
.chc-acc__inner{overflow:hidden;visibility:hidden;transition:visibility 0s linear var(--dur-layout)}
.chc-acc__item--open .chc-acc__inner{visibility:visible;transition:none}
.chc-acc__content{padding:0 0 24px;max-width:var(--measure);line-height:1.6}
.chc-dialog{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:var(--scrim);animation:chc-fade-in var(--dur-state) var(--ease-out)}
.chc-dialog--inline{position:relative;inset:auto;min-height:420px}
.chc-dialog__box{width:100%;max-width:520px;background:var(--surface-card);border-radius:var(--radius-window);box-shadow:var(--shadow-dialog);padding:32px;animation:chc-dialog-in var(--dur-layout) var(--ease-out)}
.chc-dialog__title{font:500 var(--size-h3)/1.2 var(--font-serif);margin:0 0 12px}
.chc-dialog__body{line-height:1.6;margin-bottom:28px}
.chc-dialog__actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.chc-dots{display:grid;gap:10px}
.chc-dots__label{font-size:var(--size-small);font-weight:600;color:var(--text-muted)}
.chc-dots__row{display:flex;gap:8px;align-items:center}
.chc-dot{width:14px;height:14px;border-radius:50%;background:var(--dot-filled);flex:none;display:inline-block;transition:background var(--dur-state) var(--ease-out),box-shadow var(--dur-state) var(--ease-out)}
.chc-dot--current{background:var(--dot-current)}
.chc-dot--todo{background:transparent;box-shadow:inset 0 0 0 2px var(--dot-filled)}
.chc-dot--empty{background:var(--dot-empty)}
.chc-stages{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}
.chc-stage{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:0 6px;font-size:var(--size-small);line-height:1.3;color:var(--text-muted)}
.chc-stage::before{content:"";position:absolute;top:6px;left:calc(-50% + 14px);right:calc(50% + 14px);height:2px;background:var(--border-rule)}
.chc-stage:first-child::before{display:none}
.chc-stage--done::before,.chc-stage--current::before{background:var(--dot-filled)}
.chc-stage--current{color:var(--text-body);font-weight:600}
.chc-stage__sub{font-weight:400;color:var(--text-muted);font-size:var(--size-label)}
.chc-stages--vertical{grid-auto-flow:row;gap:22px}
.chc-stages--vertical .chc-stage{flex-direction:row;align-items:flex-start;text-align:left;gap:14px;padding:0;font-size:var(--size-body)}
.chc-stages--vertical .chc-stage::before{top:-22px;bottom:auto;left:6px;right:auto;width:2px;height:22px}
.chc-stages--vertical .chc-dot{margin-top:5px}
.chc-ev{background:var(--surface-card);border:1px solid var(--border-card);border-radius:var(--radius-card);padding:22px 24px}
.chc-ev__head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}
.chc-ev__area{font-size:var(--size-label);font-weight:600;letter-spacing:.02em;color:var(--text-body);display:flex;align-items:center;gap:8px}
.chc-ev__area::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--dot-current)}
.chc-ev__tag{font-size:13px;font-weight:600;color:var(--text-accent);background:var(--surface-highlight);padding:3px 10px;border-radius:var(--radius-pill)}
.chc-ev__sum{font-size:var(--size-lede);font-weight:600;line-height:1.4;margin:0 0 14px}
.chc-ev__quote{margin:0 0 14px;padding-top:14px;border-top:1px solid var(--border-card);font-family:var(--font-quote);font-style:italic;font-size:21px;line-height:1.5}
.chc-ev__quote mark{background:var(--surface-highlight);color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:1px 3px}
.chc-ev--quote-only .chc-ev__quote{border-top:0;padding-top:0}
.chc-ev__note{font-size:var(--size-small);color:var(--text-muted);margin:0 0 14px;line-height:1.5}
.chc-ev__src{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:var(--size-small);color:var(--text-muted)}
.chc-areas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
.chc-areas--compact{grid-template-columns:repeat(3,minmax(0,1fr))}
.chc-area{display:grid;grid-template-columns:16px minmax(0,1fr);gap:12px;align-items:start;padding:12px;border-radius:var(--radius-control);background:none;border:0;text-align:left;cursor:pointer;font:inherit;color:var(--text-body);transition:background var(--dur-state) var(--ease-out)}
.chc-area:hover{background:var(--surface-sunken)}
.chc-area .chc-dot{width:16px;height:16px;margin-top:3px}
.chc-area__name{font-size:var(--size-small);font-weight:600;line-height:1.3;display:block}
.chc-area__count{font-size:var(--size-label);color:var(--text-muted);display:block;margin-top:2px}
.chc-area--current{background:var(--surface-highlight)}
.chc-area--current:hover{background:var(--surface-highlight)}
.chc-file{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--border-card);border-radius:var(--radius-card);background:var(--surface-card)}
.chc-file__icon{width:28px;height:34px;border-radius:2px;background:var(--surface-sunken);position:relative}
.chc-file__icon::after{content:"";position:absolute;left:6px;right:6px;top:11px;height:2px;background:var(--border-rule);box-shadow:0 5px 0 var(--border-rule),0 10px 0 var(--border-rule)}
.chc-file__name{font-weight:600;font-size:var(--size-small);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chc-file__meta{font-size:var(--size-label);color:var(--text-muted)}
.chc-file__bar{height:3px;background:var(--border-card);border-radius:2px;margin-top:7px;overflow:hidden}
.chc-file__bar i{display:block;height:100%;background:var(--action-primary);transition:width var(--dur-layout) var(--ease-out)}
.chc-file__status{font-size:var(--size-label);font-weight:600;display:flex;align-items:center;gap:8px;white-space:nowrap}
.chc-file__status--read{color:var(--color-success)}
.chc-file__status--error{color:var(--color-error)}
.chc-file__status .chc-dot{width:8px;height:8px;background:currentColor}
.chc-gap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start;padding:20px 0;border-bottom:1px solid var(--border-rule)}
.chc-gap__title{font-weight:600;font-size:var(--size-body);line-height:1.4}
.chc-gap__holder{font-size:var(--size-small);color:var(--text-muted);margin-top:2px}
.chc-gap__why{font-size:var(--size-small);line-height:1.5;margin-top:8px;max-width:var(--measure)}
.chc-gap__status{display:inline-flex;align-items:center;gap:8px;font-size:var(--size-label);font-weight:600;padding:5px 12px;border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--text-muted);white-space:nowrap}
.chc-gap__status .chc-dot{width:8px;height:8px}
.chc-gap__status--asked{background:var(--surface-highlight);color:var(--text-accent)}
.chc-gap__status--asked .chc-dot{background:var(--dot-current)}
.chc-gap__status--received{background:var(--color-success-soft);color:var(--color-success)}
.chc-gap__status--received .chc-dot{background:var(--color-success)}
.chc-header{background:var(--surface-banner);color:#fff}
.chc-header__in{max-width:var(--container);margin:0 auto;display:flex;align-items:center;gap:40px;padding:0 var(--gutter);min-height:76px}
.chc-header__nav{display:flex;gap:32px;margin-left:auto}
.chc-header__nav a{white-space:nowrap;color:#fff;text-decoration:none;font-size:17px;font-weight:500;position:relative;padding:12px 0}
.chc-header__nav a:hover{text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:1px;color:#fff}
.chc-header__nav a[aria-current="page"]::after{content:"";position:absolute;left:50%;bottom:0;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--brand-accent)}
.chc-header__menu{margin-left:auto;display:none;align-items:center;gap:10px;min-height:var(--tap-min);background:none;border:0;color:#fff;font:600 16px var(--font-sans);cursor:pointer}
.chc-header__menu i{display:grid;gap:4px}.chc-header__menu i b{display:block;width:18px;height:2px;background:#fff;border-radius:1px}
.chc-header--compact .chc-header__in{min-height:64px;padding:0 var(--gutter-mobile)}
.chc-header--compact .chc-header__nav,.chc-header--compact .chc-header__cta{display:none}
.chc-header--compact .chc-header__menu{display:inline-flex}
.chc-header__drawer{background:var(--color-aubergine-dark);padding:8px var(--gutter-mobile) 20px;display:grid}
.chc-header__drawer a{color:#fff;text-decoration:none;font-size:var(--size-body);padding:14px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.chc-footer{border-top:1px solid var(--border-rule);margin-top:var(--section-gap)}
.chc-footer__in{max-width:var(--container);margin:0 auto;padding:48px var(--gutter) 56px;display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));gap:40px}
.chc-footer__about{font-size:var(--size-small);color:var(--text-muted);line-height:1.55;max-width:30em;margin-top:14px}
.chc-footer__h{font-size:var(--size-label);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-muted);margin:0 0 12px}
.chc-footer__links{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.chc-footer__links a{color:var(--text-body);text-decoration:none;font-size:var(--size-small);display:inline-flex;min-height:36px;align-items:center}
.chc-footer__links a:hover{text-decoration:underline;color:var(--text-body)}
.chc-footer--compact .chc-footer__in{grid-template-columns:minmax(0,1fr);padding:40px var(--gutter-mobile)}
.chc-price{background:var(--surface-card);border:1px solid var(--border-card);border-radius:var(--radius-card);padding:32px;display:flex;flex-direction:column;gap:20px}
.chc-price--featured{border:2px solid var(--action-primary)}
.chc-price__name{font:500 var(--size-h3)/1.15 var(--font-serif)}
.chc-price__desc{color:var(--text-muted);font-size:var(--size-small);line-height:1.5;margin-top:6px}
.chc-price__amount{display:flex;align-items:baseline;gap:10px}
.chc-price__amount b{font:400 52px/1 var(--font-serif);letter-spacing:-.02em}
.chc-price__amount span{color:var(--text-muted);font-size:var(--size-small)}
.chc-price__list{list-style:none;margin:0;padding:20px 0 0;border-top:1px solid var(--border-rule);display:grid;gap:12px}
.chc-price__list li{display:grid;grid-template-columns:10px minmax(0,1fr);gap:12px;font-size:var(--size-small);line-height:1.5}
.chc-price__list li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--dot-filled);margin-top:7px}
.chc-price__note{font-size:var(--size-label);color:var(--text-muted);margin-top:auto}
@media (max-width:1080px){.chc-header__nav,.chc-header__cta{display:none}.chc-header__menu{display:inline-flex}.chc-header__in{min-height:64px}}
@media (max-width:720px){.chc-header__in{padding:0 var(--gutter-mobile)}.chc-footer__in{grid-template-columns:minmax(0,1fr);padding:40px var(--gutter-mobile)}.chc-areas{grid-template-columns:repeat(2,minmax(0,1fr))}.chc-dialog__box{padding:24px}}
