/* Tacksheet sheet kit 1.8.0 - built-in style Gallery (gallery), on the none kit theme.
   Link it after the kit stylesheet with body data-tk-theme="none" data-tk-style="gallery".
   Fonts: /kit/1.8.0/fonts/LICENSES-styles.txt. */
/* Gallery: a contemporary art museum and its catalogue. A white cube, vast margins, a light serif for
   titles and a small grotesk for everything else; rooms, catalogue numbers, wall labels, a red dot. */
@font-face{font-family:"Cormorant Garamond";src:url(/kit/1.8.0/fonts/cormorant-garamond-300-700.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url(/kit/1.8.0/fonts/cormorant-garamond-300-700-italic.woff2) format("woff2");font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:"Hanken Grotesk";src:url(/kit/1.8.0/fonts/hanken-grotesk-100-900.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Hanken Grotesk";src:url(/kit/1.8.0/fonts/hanken-grotesk-100-900-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}

body[data-tk-theme]{
  --ga-ink:#1A1A1A;--ga-muted:#6B6B6B;--ga-hair:#E4E3DF;--ga-dot:var(--gallery-dot,#B3001B);--ga-paper:#FFFFFF;
  --ga-wall:var(--gallery-wall,#EFECE6);--ga-wall-ink:var(--gallery-wall-ink,#1A1A1A);--ga-light:.95;--ga-space:1;
  --ga-serif:"Cormorant Garamond","Garamond","Times New Roman",serif;--ga-sans:"Hanken Grotesk","Helvetica Neue",Arial,sans-serif;
  --ga-caps:500 .8rem/1.45 var(--ga-sans);
  --tk-bg:#FFFFFF;--tk-bg-soft:#F6F6F4;--tk-fg:#1A1A1A;--tk-muted:#6B6B6B;
  --tk-accent:#1A1A1A;--tk-accent-2:#1A1A1A;--tk-accent-ink:#FFFFFF;--tk-accent-2-text:#6B6B6B;
  --tk-card:#FFFFFF;--tk-border:#E4E3DF;--tk-rule:#1A1A1A;--tk-mark:#F6F6F4;
  --tk-field:#FFFFFF;--tk-control:#8E8E8A;--tk-positive:#6B6B6B;--tk-negative:#6B6B6B;
  --tk-note:#1A1A1A;--tk-tip:#1A1A1A;--tk-warning:#1A1A1A;--tk-decision:#1A1A1A;--tk-risk:#B3001B;
  --tk-font-head:var(--ga-serif);--tk-font-body:var(--ga-sans);--tk-font-mono:"IBM Plex Mono",ui-monospace,monospace;--tk-font-data:var(--ga-sans);--tk-font-hand:var(--ga-serif);
  --tk-head-weight:400;--tk-head-tracking:-.01em;--tk-head-leading:1.05;
  --tk-size-body:1rem;--tk-size-h1:clamp(3rem,1rem + 7.4vw,10rem);--tk-size-h2:clamp(2.3rem,1.5rem + 2.4vw,4rem);--tk-size-h3:1.45rem;
  --tk-radius:0px;--tk-chart-radius:0;--tk-grid:rgba(26,26,26,.07);--tk-shadow:none;--tk-lift:none;
  --tk-code-bg:#F6F6F4;--tk-code-fg:#1A1A1A;--tk-tok-k:#8C1C13;--tk-tok-s:#3D5A40;--tk-tok-c:#6B6B6B;--tk-tok-n:#1A1A1A;--tk-tok-f:#1A1A1A;
  --tk-c1:#1A1A1A;--tk-c2:#9C9C98;--tk-c3:#B3001B;--tk-c4:#5E5E5A;--tk-c5:#C9C8C3;--tk-c6:#7A4A3A;--tk-c7:#3D5A40;--tk-c8:#8E8E8A;
  --tk-ramp:#F6F6F4,#D9D8D3,#A9A8A3,#6B6B6B,#1A1A1A;
  --tk-film:multiply;--tk-paper-obj:#FFFFFF;--tk-kraft:#FFFFFF;
  --tk-page-width:min(max(43rem,80vw),90rem);--tk-measure:34rem;
  font-feature-settings:"kern","liga";letter-spacing:.003em;counter-reset:ga-cat;overflow-x:clip;
}
/* Cormorant's figures are old-style by default ("11" reads as two dotless i's): every figure is lining.
   The font shorthand used throughout resets font-variant-numeric, hence !important. */
body[data-tk-theme] *:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] *:where(:not(tk-screen *, tk-note *))::before,body[data-tk-theme] *:where(:not(tk-screen *, tk-note *))::after{font-variant-numeric:lining-nums!important}
body[data-tk-theme] td.tk-num:where(:not(tk-screen *, tk-note *)){font-variant-numeric:lining-nums tabular-nums!important}
body[data-tk-theme] :where(:not(tk-screen *, tk-note *))::selection{background:#EDEBE5;color:var(--ga-ink)}
body[data-tk-theme] :focus-visible:where(:not(tk-screen *, tk-note *)){outline:2px solid var(--ga-ink);outline-offset:4px;border-radius:0}
body[data-tk-theme] tk-progress:where(:not(tk-screen *, tk-note *)){height:2px}
body[data-tk-theme] tk-progress i:where(:not(tk-screen *, tk-note *)){background:var(--ga-ink)}
body[data-tk-theme] tk-page:where(:not(tk-screen *, tk-note *)){padding:0 clamp(1.4rem,6vw,7rem) clamp(5rem,10vw,9rem)}

/* ---------- The title wall ---------- */
body[data-tk-theme] tk-hero:where(:not(tk-screen *, tk-note *)){min-height:min(48rem,86vh);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:1.5rem;align-content:end;
  margin:0 calc(50% - 50vw) clamp(6rem,14vw,13rem);padding:clamp(3rem,8vw,7rem) calc(50vw - 50%) calc(clamp(2.5rem,5vw,4rem) + 14px);max-width:none;border:0;
  /* The title wall: painted a warm grey, lit from above, with a white skirting board. */
  background:linear-gradient(#FBFAF8,#FBFAF8) 0 100%/100% 14px no-repeat,linear-gradient(#CFCBC2,#CFCBC2) 0 calc(100% - 14px)/100% 1px no-repeat,
    radial-gradient(ellipse 46% 80% at 28% -8%,rgb(255 255 255/var(--ga-light)),rgb(255 255 255/0) 72%),radial-gradient(ellipse 40% 70% at 78% -10%,rgb(255 255 255/calc(var(--ga-light) * .75)),rgb(255 255 255/0) 70%),
    linear-gradient(var(--ga-wall),color-mix(in srgb,var(--ga-wall) 94%,#000));
  --ga-ink:var(--ga-wall-ink);color:var(--ga-ink)}
body[data-tk-theme] tk-hero:where(:not(tk-screen *, tk-note *))::after{content:none}
body[data-tk-theme] tk-hero>*:where(:not(tk-screen *, tk-note *)){grid-column:1/-1;min-width:0}
body[data-tk-theme] tk-hero:where(:not(tk-screen *, tk-note *))::before{content:"";grid-column:1/-1;align-self:start;margin-bottom:auto;font:var(--ga-caps);letter-spacing:.22em;text-transform:uppercase;color:var(--ga-ink)}
body[data-tk-theme] :is(tk-tape-title>:is(h1,h2,h3),tk-tape-title .tk-tape-line,tk-taped,tk-slip):where(:not(tk-screen *, tk-note *))::before,body[data-tk-theme] tk-taped:where(:not(tk-screen *, tk-note *))::after{content:none!important}
body[data-tk-theme] tk-tape-title:where(:not(tk-screen *, tk-note *)){margin:clamp(4rem,12vw,10rem) 0 clamp(2rem,4vw,3.5rem);--tilt:0deg}
body[data-tk-theme] tk-tape-title>:is(h1,h2,h3):where(:not(tk-screen *, tk-note *)){color:var(--ga-ink)!important;padding:0;display:block}
body[data-tk-theme] tk-hero tk-tape-title>h1:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] tk-hero tk-tape-title[data-tk-length]>h1:where(:not(tk-screen *, tk-note *)){font:300 var(--tk-size-h1)/.98 var(--ga-serif);letter-spacing:-.025em;max-width:14ch}
body[data-tk-theme] tk-hero tk-tape-title[data-tk-length="long"]>h1:where(:not(tk-screen *, tk-note *)){font-size:clamp(2.5rem,1.4rem + 4vw,5.6rem);max-width:18ch}
body[data-tk-theme] tk-tape-title .tk-tape-line:where(:not(tk-screen *, tk-note *)){display:block;padding:0;margin:0;max-width:none}
body[data-tk-theme] tk-tape-title .tk-tape-ink:where(:not(tk-screen *, tk-note *)){transform:none;display:inline}
body[data-tk-theme] tk-hero .tk-byline:where(:not(tk-screen *, tk-note *)){grid-column:1/7;grid-row:3;align-self:end;margin:0;display:block;max-width:none;font:var(--ga-caps);letter-spacing:.16em;text-transform:uppercase;color:var(--ga-ink)}
body[data-tk-theme] tk-hero .tk-byline:where(:not(tk-screen *, tk-note *))::before{content:none}
body[data-tk-theme] tk-hero p.tk-dek:where(:not(tk-screen *, tk-note *)){grid-column:8/-1;grid-row:3;margin:0;max-width:26rem;font:400 .98rem/1.65 var(--ga-sans);color:var(--ga-ink)}
/* The stamp is a gallery's red dot, with its label beside it. */
body[data-tk-theme] tk-hero tk-stamp:where(:not(tk-screen *, tk-note *)){grid-column:1/7;grid-row:4;margin:1.4rem 0 0}
body[data-tk-theme] tk-stamp:where(:not(tk-screen *, tk-note *)){margin:.6rem 0}
body[data-tk-theme] tk-stamp .tk-stamp-face:where(:not(tk-screen *, tk-note *)){transform:none;animation:none;-webkit-mask:none;mask:none;mix-blend-mode:normal;opacity:1;border:0;outline:0;padding:0;border-radius:0;
  flex-direction:row;align-items:center;gap:.6rem;color:var(--ga-ink);font:var(--ga-caps);letter-spacing:.14em;text-align:left;aspect-ratio:auto;min-width:0}
body[data-tk-theme] tk-stamp .tk-stamp-face:where(:not(tk-screen *, tk-note *))::before{content:"";flex:none;width:.85rem;height:.85rem;border-radius:50%;background:#B3001B;box-shadow:0 1px 1px rgba(0,0,0,.18)}
body[data-tk-theme] tk-stamp .tk-stamp-date:where(:not(tk-screen *, tk-note *)){font:inherit;letter-spacing:inherit;color:var(--ga-muted)}
body[data-tk-theme] tk-stamp .tk-stamp-date:where(:not(tk-screen *, tk-note *))::before{content:"\2014\00a0"}
@media(max-width:760px){
  body[data-tk-theme] tk-hero:where(:not(tk-screen *, tk-note *)){min-height:0;display:block}
  body[data-tk-theme] tk-hero:where(:not(tk-screen *, tk-note *))::before{display:block}
  body[data-tk-theme] tk-tape-title:where(:not(tk-screen *, tk-note *)){margin:5rem 0 2.5rem}
  body[data-tk-theme] tk-hero p.tk-dek:where(:not(tk-screen *, tk-note *)){margin:0 0 2rem}
  body[data-tk-theme] tk-hero .tk-byline:where(:not(tk-screen *, tk-note *)){margin:0}}

/* ---------- Rooms: wide margins, a room number, a serif title ---------- */
body[data-tk-theme] tk-section:where(:not(tk-screen *, tk-note *)){margin:0 0 calc(clamp(6rem,14vw,12rem) * var(--ga-space));position:relative}
body[data-tk-theme] tk-section>h2:where(:not(tk-screen *, tk-note *)){border:0;padding:0;margin:0 0 2.4rem;font:400 var(--tk-size-h2)/1.05 var(--ga-serif);letter-spacing:-.015em}
body[data-tk-theme] tk-section:not([unnumbered])>h2:where(:not(tk-screen *, tk-note *))::before{content:counter(tk-sec);display:inline-block;min-width:1.4em;margin:0 .35em 0 0;font:300 italic 1em/1 var(--ga-serif);letter-spacing:0;text-transform:none;color:var(--ga-muted);vertical-align:baseline}
body[data-tk-theme] tk-section>h2 .tk-anchor:where(:not(tk-screen *, tk-note *)){font:400 .4em var(--ga-sans);color:var(--ga-muted)}
/* Narrow screens: the room number stays beside a wrapping title. */
@media(max-width:999px){
  body[data-tk-theme] tk-section:not([unnumbered])>h2:where(:not(tk-screen *, tk-note *)){display:flex;align-items:baseline;gap:.35em}
  body[data-tk-theme] tk-section:not([unnumbered])>h2:where(:not(tk-screen *, tk-note *))::before{flex:none;margin:0}}
@media(min-width:1000px){
  body[data-tk-theme] tk-section:where(:not(tk-screen *, tk-note *)){padding-left:33.333%}
  body[data-tk-theme] tk-section:not([unnumbered])>h2:where(:not(tk-screen *, tk-note *))::before{position:absolute;left:0;margin:0;font-size:calc(var(--tk-size-h2) * 1.9);line-height:.8;color:var(--ga-hair-strong,#CFCBC2)}
  body[data-tk-theme] tk-section>:is(tk-grid,tk-table,tk-split,tk-code):where(:not(tk-screen *, tk-note *)){margin-left:-50%;max-width:none}
  /* The sheet's own figures and blocks may use the whole wall too; their own max-width still holds. */
  body[data-tk-theme] tk-section>:is(figure,div:not([class^="tk-"])):where(:not(tk-screen *, tk-note *)){margin-left:-50%}
  body[data-tk-theme] tk-section>tk-slip[float]:where(:not(tk-screen *, tk-note *)){float:none;position:absolute;left:0;top:7rem;width:min(16rem,26%);margin:0}}
body[data-tk-theme] h3:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] tk-section h3:where(:not(tk-screen *, tk-note *)){font:400 var(--tk-size-h3)/1.15 var(--ga-serif);letter-spacing:-.005em}
body[data-tk-theme] :is(tk-section,tk-split>div)>p:where(:not(tk-screen *, tk-note *)){font-size:1rem;line-height:1.7}
body[data-tk-theme] strong:where(:not(tk-screen *, tk-note *)){font-weight:600}
body[data-tk-theme] a:where(:not(tk-screen *, tk-note *)){color:var(--ga-ink);text-decoration-thickness:1px;text-underline-offset:.24em;text-decoration-color:var(--ga-ink)}
body[data-tk-theme] a:hover:where(:not(tk-screen *, tk-note *)){text-decoration-thickness:2px}
body[data-tk-theme] code:not(pre code):where(:not(tk-screen *, tk-note *)){background:#F6F6F4;border-radius:0;font-size:.82em}
body[data-tk-theme] tk-mark:is(:not([kind]),[kind="highlight"]):where(:not(tk-screen *, tk-note *)){background:linear-gradient(transparent 62%,#ECE8DA 62% 92%,transparent 92%);padding:0;margin:0;border-radius:0}
body[data-tk-theme] tk-mark[kind="underline"]:where(:not(tk-screen *, tk-note *)){text-decoration-style:solid;text-decoration-color:var(--ga-ink);text-decoration-thickness:1px;text-underline-offset:.3em}
body[data-tk-theme] tk-mark[kind="circle"]:where(:not(tk-screen *, tk-note *))::after{border:1px solid var(--ga-ink);border-radius:50%;-webkit-mask:none;mask:none}
body[data-tk-theme] blockquote:where(:not(tk-screen *, tk-note *)){border:0;padding:0;margin:3rem 0;font:italic 300 clamp(1.6rem,1.3rem + .9vw,2.2rem)/1.2 var(--ga-serif);letter-spacing:-.005em}
body[data-tk-theme] blockquote+.tk-note:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] .tk-note:where(:not(tk-screen *, tk-note *)){font:var(--ga-caps);letter-spacing:.14em;text-transform:uppercase;color:var(--ga-muted)}

/* ---------- Stats: a quiet colophon ---------- */
body[data-tk-theme] tk-stats:where(:not(tk-screen *, tk-note *)){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2.5rem;border:0;margin:3.5rem 0}
body[data-tk-theme] tk-stat:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] tk-stats>tk-stat:first-child:where(:not(tk-screen *, tk-note *)){display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label value" "delta delta";align-items:baseline;
  gap:.1rem 1rem;padding:.75rem 0 .8rem;border:0;border-top:1px solid var(--ga-hair)}
body[data-tk-theme] tk-stats>tk-stat:nth-last-child(-n+2):where(:not(tk-screen *, tk-note *)){border-bottom:1px solid var(--ga-hair)}
body[data-tk-theme] tk-stat .tk-label:where(:not(tk-screen *, tk-note *)){grid-area:label;font:var(--ga-caps);letter-spacing:.14em;text-transform:uppercase;color:var(--ga-ink)}
body[data-tk-theme] tk-stat .tk-value:where(:not(tk-screen *, tk-note *)){grid-area:value;margin:0;font:400 1.75rem/1 var(--ga-serif);letter-spacing:0;text-align:right;font-variant-numeric:lining-nums}
body[data-tk-theme] tk-stat .tk-delta:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] tk-stat[data-trend] .tk-delta:where(:not(tk-screen *, tk-note *)){grid-area:delta;margin:0;font:italic 400 .86rem/1.4 var(--ga-sans);color:var(--ga-muted)}
body[data-tk-theme] tk-stat[data-trend] .tk-delta:where(:not(tk-screen *, tk-note *))::before{content:none}
@media(max-width:640px){body[data-tk-theme] tk-stats:where(:not(tk-screen *, tk-note *)){grid-template-columns:minmax(0,1fr)}
  body[data-tk-theme] tk-stats>tk-stat:nth-child(n):where(:not(tk-screen *, tk-note *)){padding:.75rem 0 .8rem;border-left:0;border-top:1px solid var(--ga-hair)}
  body[data-tk-theme] tk-stats>tk-stat:nth-last-child(2):where(:not(tk-screen *, tk-note *)){border-bottom:0}}

/* ---------- Works: cards hang as works with a catalogue number ---------- */
body[data-tk-theme] tk-grid:where(:not(tk-screen *, tk-note *)){gap:clamp(2.5rem,5vw,5rem);margin:3rem 0}
body[data-tk-theme] :is(tk-card,tk-taped,tk-image,tk-table,tk-figure):where(:not(tk-screen *, tk-note *)){counter-increment:ga-cat}
body[data-tk-theme] tk-card:where(:not(tk-screen *, tk-note *)){background:none;border:0;border-radius:0;padding:0;margin:2rem 0;box-shadow:none}
body[data-tk-theme] tk-card>h3:first-child:where(:not(tk-screen *, tk-note *)){font:italic 400 1.35rem/1.2 var(--ga-serif);margin:0 0 .3rem}
body[data-tk-theme] tk-chart .tk-title:where(:not(tk-screen *, tk-note *)){font:italic 400 1.35rem var(--ga-serif)}
body[data-tk-theme] tk-chart .tk-sub:where(:not(tk-screen *, tk-note *)){font:400 .86rem/1.4 var(--ga-sans);color:var(--ga-muted);margin:0 0 1.2rem}
body[data-tk-theme] tk-chart details.tk-fallback summary:where(:not(tk-screen *, tk-note *)){font:var(--ga-caps);letter-spacing:.14em;text-transform:uppercase;color:var(--ga-ink)}
body[data-tk-theme] tk-chart details.tk-fallback summary:where(:not(tk-screen *, tk-note *))::after{content:"+";font-weight:300}
body[data-tk-theme] tk-chart details.tk-fallback[open] summary:where(:not(tk-screen *, tk-note *))::after{content:"\2212";transform:none}

/* ---------- Callouts: wall texts; the decision carries the red dot ---------- */
body[data-tk-theme] tk-callout:where(:not(tk-screen *, tk-note *)){border:0;border-top:1px solid var(--ga-ink);border-radius:0;background:none;padding:1.1rem 0 0;margin:3rem 0;font-size:.98rem;line-height:1.65}
body[data-tk-theme] tk-callout[data-kind]:where(:not(tk-screen *, tk-note *)){background:none;border:0;border-top:1px solid var(--ga-ink);box-shadow:none}
body[data-tk-theme] tk-callout:is([data-kind="warning"],[data-kind="risk"]):where(:not(tk-screen *, tk-note *)){border:1px solid var(--ga-ink);padding:1.1rem 1.25rem 1.2rem}
body[data-tk-theme] tk-callout:where(:not(tk-screen *, tk-note *)){position:relative}
body[data-tk-theme] tk-callout strong.tk-label:where(:not(tk-screen *, tk-note *)){float:none;position:static;display:flex;align-items:center;gap:.55rem;width:auto;height:auto;margin:0 0 .6rem;padding:0;border:0;background:none;transform:none;opacity:1;font:var(--ga-caps);letter-spacing:.16em;text-transform:uppercase;color:var(--ga-muted)}
body[data-tk-theme] tk-callout[data-kind="decision"] strong.tk-label:where(:not(tk-screen *, tk-note *))::before{content:"";display:block;flex:none;width:.7rem;height:.7rem;border-radius:50%;background:var(--ga-dot)}
body[data-tk-theme] tk-callout:is([data-kind="warning"],[data-kind="risk"]) strong.tk-label:where(:not(tk-screen *, tk-note *))::before{content:"\25B3";display:block;flex:none;font:400 .95rem/1 var(--ga-sans);letter-spacing:0;color:var(--ga-ink)}
body[data-tk-theme] tk-callout p:first-of-type strong:first-child:where(:not(tk-screen *, tk-note *)){color:inherit;font-weight:600}

/* ---------- Table: the checklist of works ---------- */
body[data-tk-theme] tk-table:where(:not(tk-screen *, tk-note *)){margin:3.5rem 0}
body[data-tk-theme] tk-table table:where(:not(tk-screen *, tk-note *)){font-size:.95rem}
body[data-tk-theme] tk-table thead th:where(:not(tk-screen *, tk-note *)){background:var(--ga-paper);font:var(--ga-caps);letter-spacing:.12em;text-transform:uppercase;color:var(--ga-muted);border-bottom:1px solid var(--ga-ink)}
body[data-tk-theme] tk-table th button:where(:not(tk-screen *, tk-note *))::after{content:"\2195";opacity:.45}
body[data-tk-theme] tk-table th[aria-sort="ascending"] button:where(:not(tk-screen *, tk-note *))::after{content:"\2191";color:var(--ga-ink)}
body[data-tk-theme] tk-table th[aria-sort="descending"] button:where(:not(tk-screen *, tk-note *))::after{content:"\2193";color:var(--ga-ink)}
body[data-tk-theme] tk-table td:where(:not(tk-screen *, tk-note *)){border-bottom:1px solid var(--ga-hair);padding:.8rem .75rem}
body[data-tk-theme] tk-table tbody td:first-child:not(.tk-num):where(:not(tk-screen *, tk-note *)){font:italic 400 1.2rem/1.25 var(--ga-serif)}
body[data-tk-theme] tk-table td:where(:not(tk-screen *, tk-note *))::before{font-style:normal}
body[data-tk-theme] tk-table tbody tr:hover:where(:not(tk-screen *, tk-note *)){background:#FAFAF8}
body[data-tk-theme] tk-table td.tk-num:where(:not(tk-screen *, tk-note *)){font:400 .92rem var(--ga-sans);font-variant-numeric:tabular-nums}

/* ---------- The image: hung on the wall, with a wall label ---------- */
body[data-tk-theme] tk-taped:where(:not(tk-screen *, tk-note *)){width:auto;max-width:100%;margin:1rem 0 2.5rem;padding:0}
body[data-tk-theme] tk-taped>.tk-print:where(:not(tk-screen *, tk-note *)){transform:none;background:none;padding:0;box-shadow:none}
body[data-tk-theme] tk-taped>.tk-print:where(:not(tk-screen *, tk-note *))::after{content:none}
body[data-tk-theme] tk-taped img:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] tk-image img:where(:not(tk-screen *, tk-note *)){border-radius:0;box-shadow:0 1px 1px rgba(0,0,0,.08),0 22px 40px -28px rgba(0,0,0,.45)}
body[data-tk-theme] tk-taped figcaption:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] tk-image figcaption:where(:not(tk-screen *, tk-note *)){max-width:17rem;margin:1.6rem 0 0;padding:0;font:italic 400 1.12rem/1.3 var(--ga-serif);color:var(--ga-ink)}

/* ---------- The slip: a visitor's comment card ---------- */
body[data-tk-theme] tk-slip:where(:not(tk-screen *, tk-note *)){max-width:17rem;padding:0;margin:1rem 0 2.5rem}
body[data-tk-theme] tk-slip>.tk-slip-shadow:where(:not(tk-screen *, tk-note *)){filter:none}
body[data-tk-theme] tk-slip .tk-paper:where(:not(tk-screen *, tk-note *)){transform:none;-webkit-mask:none;mask:none;background:var(--ga-paper);color:var(--ga-ink);border:1px solid var(--ga-hair);padding:1rem 1.1rem;
  font:italic 400 1.12rem/1.35 var(--ga-serif)}
body[data-tk-theme] tk-slip .tk-paper :is(p,li):where(:not(tk-screen *, tk-note *)),body[data-tk-theme] tk-slip .tk-paper a:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] tk-slip .tk-paper strong:where(:not(tk-screen *, tk-note *)){color:var(--ga-ink)}
body[data-tk-theme] tk-slip .tk-from:where(:not(tk-screen *, tk-note *)){margin-top:.7rem;text-align:left;color:var(--ga-muted);font:400 .8rem var(--ga-sans);font-style:normal}

/* ---------- Code, details ---------- */
body[data-tk-theme] tk-code pre:where(:not(tk-screen *, tk-note *)){border-radius:0;padding:2.6rem 1.4rem 1.4rem;font-size:.8rem}
body[data-tk-theme] tk-code:where(:not(tk-screen *, tk-note *))::before{top:1rem;left:1.4rem;opacity:1;color:var(--ga-muted);font:var(--ga-caps);letter-spacing:.14em;text-transform:uppercase}
body[data-tk-theme] tk-code .tk-copy:where(:not(tk-screen *, tk-note *)){opacity:1;color:var(--ga-ink);font:var(--ga-caps);letter-spacing:.14em;text-transform:uppercase}
body[data-tk-theme] tk-details:where(:not(tk-screen *, tk-note *)){border-top:1px solid var(--ga-hair);border-bottom:0;margin:0}
body[data-tk-theme] tk-details:last-of-type:where(:not(tk-screen *, tk-note *)){border-bottom:1px solid var(--ga-hair);margin-bottom:2rem}
body[data-tk-theme] tk-details summary:where(:not(tk-screen *, tk-note *)){font:400 .98rem/1.3 var(--ga-sans);letter-spacing:0}
body[data-tk-theme] tk-details summary:where(:not(tk-screen *, tk-note *))::after{content:"+";font:300 1.3rem var(--ga-sans);color:var(--ga-ink)}
body[data-tk-theme] tk-details details[open]>summary:where(:not(tk-screen *, tk-note *))::after{content:"\2212"}
body[data-tk-theme] tk-details details>p:where(:not(tk-screen *, tk-note *)){font-size:.95rem;color:var(--ga-ink)}

/* ---------- Torn strip: a wayfinding line to the next room ---------- */
body[data-tk-theme] tk-torn:where(:not(tk-screen *, tk-note *)){margin:clamp(5rem,12vw,10rem) 0;padding:0;min-height:0;transform:none;-webkit-mask:none;mask:none;background:none;color:var(--ga-ink);
  display:flex;align-items:center;gap:1.2rem;font:var(--ga-caps);letter-spacing:.22em;text-transform:uppercase;text-align:left}
body[data-tk-theme] tk-torn:where(:not(tk-screen *, tk-note *))::before{content:"";flex:1;height:1px;background:var(--ga-ink)}
body[data-tk-theme] tk-torn:where(:not(tk-screen *, tk-note *))::after{content:"\2192";font:300 1.3rem/1 var(--ga-sans);letter-spacing:0}
body[data-tk-theme] tk-torn:empty:where(:not(tk-screen *, tk-note *))::after{content:none}

/* ---------- Controls: hairlines and small type ---------- */
body[data-tk-theme] .tk-controls:where(:not(tk-screen *, tk-note *)){border-top:1px solid var(--ga-ink);border-bottom:1px solid var(--ga-hair);padding:1.4rem 0;gap:1.6rem 2.6rem}
body[data-tk-theme] .tk-field label:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] tk-radio-group legend:where(:not(tk-screen *, tk-note *)){font:var(--ga-caps);letter-spacing:.14em;text-transform:uppercase;color:var(--ga-ink);margin-bottom:.5rem}
body[data-tk-theme] .tk-field output:where(:not(tk-screen *, tk-note *)){font:400 1.35rem/1 var(--ga-serif);color:var(--ga-ink);top:-.4rem}
body[data-tk-theme] input[type="range"]:where(:not(tk-screen *, tk-note *))::-webkit-slider-runnable-track{height:1px;border-radius:0;background:linear-gradient(90deg,var(--ga-ink) var(--tk-fill),#B9B8B3 var(--tk-fill))}
body[data-tk-theme] input[type="range"]:where(:not(tk-screen *, tk-note *))::-moz-range-track{height:1px;background:#B9B8B3}
body[data-tk-theme] input[type="range"]:where(:not(tk-screen *, tk-note *))::-moz-range-progress{height:1px;background:var(--ga-ink)}
body[data-tk-theme] input[type="range"]:where(:not(tk-screen *, tk-note *))::-webkit-slider-thumb{width:15px;height:15px;margin-top:-7px;background:var(--ga-ink);border:0;box-shadow:none}
body[data-tk-theme] input[type="range"]:where(:not(tk-screen *, tk-note *))::-moz-range-thumb{width:15px;height:15px;background:var(--ga-ink);border:0;box-shadow:none}
body[data-tk-theme] input[type="range"]:focus-visible:where(:not(tk-screen *, tk-note *))::-webkit-slider-thumb{box-shadow:0 0 0 3px #FFFFFF,0 0 0 5px var(--ga-ink)}
body[data-tk-theme] :is(tk-select select,tk-search input,tk-number input,tk-date input):where(:not(tk-screen *, tk-note *)){border:0;border-bottom:1px solid #8E8E8A;border-radius:0;padding-left:0;background-color:transparent}
body[data-tk-theme] :is(tk-select select,tk-search input,tk-number input,tk-date input):focus:where(:not(tk-screen *, tk-note *)){border-color:var(--ga-ink);box-shadow:0 1px 0 var(--ga-ink)}
body[data-tk-theme] tk-toggle .tk-track:where(:not(tk-screen *, tk-note *)){width:2.4rem;height:1.25rem;border:1px solid var(--ga-ink);background:var(--ga-paper)}
body[data-tk-theme] tk-toggle .tk-track:where(:not(tk-screen *, tk-note *))::after{top:.17rem;left:.17rem;width:.8rem;height:.8rem;background:var(--ga-ink);box-shadow:none}
body[data-tk-theme] tk-toggle [aria-checked="true"] .tk-track:where(:not(tk-screen *, tk-note *)){background:var(--ga-ink)}
body[data-tk-theme] tk-toggle [aria-checked="true"] .tk-track:where(:not(tk-screen *, tk-note *))::after{background:var(--ga-paper);transform:translateX(1.15rem)}
body[data-tk-theme] tk-toggle button:where(:not(tk-screen *, tk-note *)){font-size:.95rem}
body[data-tk-theme] tk-radio-group:where(:not(tk-screen *, tk-note *)){flex:1 1 15rem}
body[data-tk-theme] tk-radio-group fieldset:where(:not(tk-screen *, tk-note *)){gap:0 1.4rem}
body[data-tk-theme] tk-radio-group label:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] tk-radio-group legend+label:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] tk-radio-group label:last-child:where(:not(tk-screen *, tk-note *)){flex:0 0 auto;border:0;margin:0;padding:.4rem 0;border-radius:0;background:none;
  font:400 .98rem var(--ga-sans);color:var(--ga-muted);text-decoration:underline 1px transparent;text-underline-offset:.35em}
body[data-tk-theme] tk-radio-group label:hover:where(:not(tk-screen *, tk-note *)){color:var(--ga-ink);text-decoration-color:#B9B8B3}
body[data-tk-theme] tk-radio-group label:has(input:checked):where(:not(tk-screen *, tk-note *)){background:none;color:var(--ga-ink);text-decoration-color:var(--ga-ink);font-weight:600}
body[data-tk-theme] tk-radio-group label:has(input:focus-visible):where(:not(tk-screen *, tk-note *)){outline:2px solid var(--ga-ink);outline-offset:2px}
body[data-tk-theme] tk-text:where(:not(tk-screen *, tk-note *)){font-family:var(--ga-serif);font-size:1.15em}

/* ---------- The reply: a visitor survey card ---------- */
body[data-tk-theme] .tk-feedback:where(:not(tk-screen *, tk-note *)){background:var(--ga-paper);border:1px solid var(--ga-hair);border-top:1px solid var(--ga-ink);border-radius:0;box-shadow:none;padding:1.6rem 1.6rem 1.4rem;margin:3rem 0;max-width:40rem}
body[data-tk-theme] .tk-feedback h3:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] .tk-feedback h4:where(:not(tk-screen *, tk-note *)){font:400 1.75rem/1.15 var(--ga-serif);margin:0 0 1.2rem}
body[data-tk-theme] .tk-feedback fieldset label:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] .tk-feedback fieldset legend+label:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] .tk-feedback fieldset>label:first-child:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] .tk-feedback fieldset label:last-child:where(:not(tk-screen *, tk-note *)){
  border:0;border-bottom:1px solid var(--ga-hair);border-radius:0;background:none;padding:.6rem 0}
body[data-tk-theme] .tk-feedback fieldset>label:first-of-type:where(:not(tk-screen *, tk-note *)){border-top:1px solid var(--ga-hair)}
body[data-tk-theme] .tk-feedback fieldset label:has(input:checked):where(:not(tk-screen *, tk-note *)){background:#FAFAF8}
body[data-tk-theme] .tk-feedback input[type="radio"]:where(:not(tk-screen *, tk-note *)){border:1px solid var(--ga-ink);width:1rem;height:1rem}
body[data-tk-theme] .tk-feedback input[type="radio"]:where(:not(tk-screen *, tk-note *))::before{background:var(--ga-ink);width:.5rem;height:.5rem}
body[data-tk-theme] .tk-feedback input[type="checkbox"]:where(:not(tk-screen *, tk-note *)){border:1px solid var(--ga-ink);border-radius:0}
body[data-tk-theme] .tk-feedback :is(textarea,input[type="text"],input[type="number"],select):where(:not(tk-screen *, tk-note *)){border:1px solid #8E8E8A;border-radius:0}
body[data-tk-theme] .tk-feedback button.tk-submit:where(:not(tk-screen *, tk-note *)){background:var(--ga-ink);border:1px solid var(--ga-ink);border-radius:0;color:#FFFFFF;padding:.75rem 1.6rem;font:600 .8rem/1 var(--ga-sans);letter-spacing:.18em;text-transform:uppercase}
body[data-tk-theme] .tk-feedback button.tk-submit:hover:not(:disabled):where(:not(tk-screen *, tk-note *)){background:var(--ga-paper);color:var(--ga-ink);filter:none}
body[data-tk-theme] .tk-feedback button.tk-submit:disabled:where(:not(tk-screen *, tk-note *)){background:transparent;color:var(--ga-muted);border:1px dashed #8E8E8A}
body[data-tk-theme] .tk-feedback .tk-scale button:where(:not(tk-screen *, tk-note *)){border-color:#8E8E8A;border-radius:0}
body[data-tk-theme] .tk-feedback .tk-scale button[aria-pressed="true"]:where(:not(tk-screen *, tk-note *)){background:var(--ga-ink);color:#FFFFFF;border-color:var(--ga-ink)}
body[data-tk-theme] .tk-feedback .tk-note:where(:not(tk-screen *, tk-note *)){font:400 .875rem/1.45 var(--ga-sans);letter-spacing:0;text-transform:none;color:var(--ga-muted)}
body[data-tk-theme] .tk-feedback>.tk-note:where(:not(tk-screen *, tk-note *)){border-top:1px solid var(--ga-hair)}
body[data-tk-theme] .tk-feedback :is(fieldset>legend,div>label:not(:has(input))):where(:not(tk-screen *, tk-note *)){font:600 1.02rem/1.35 var(--ga-sans);color:var(--ga-ink)}
body[data-tk-theme] .tk-feedback>.tk-note:where(:not(tk-screen *, tk-note *))::before{border-color:var(--ga-muted)}

/* A small sign at the end of the visit. */
body[data-tk-theme] tk-page:where(:not(tk-screen *, tk-note *))::after{content:"Please do not touch the works";display:block;margin:clamp(5rem,10vw,9rem) 0 0;padding:1rem 0 0 2.2rem;border-top:1px solid var(--ga-hair);min-height:2.6rem;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10.4'/%3E%3Cpath d='M9.2 16.6V9.6a1 1 0 0 1 2 0V13M11.2 12V8.4a1 1 0 0 1 2 0V12M13.2 12V9a1 1 0 0 1 2 0v3.4M15.2 12.4v-1a1 1 0 0 1 2 0v2.8a4.4 4.4 0 0 1-4.4 4.4h-.6a4 4 0 0 1-3-1.4L7 14.4a1 1 0 0 1 1.5-1.3l.7.8'/%3E%3Cpath d='M4.6 4.6l14.8 14.8'/%3E%3C/svg%3E") 0 .85rem/1.5rem 1.5rem no-repeat;font:var(--ga-caps);letter-spacing:.2em;text-transform:uppercase;color:var(--ga-ink)}

/* ============ KNOBS ============
   data-title="quiet|bold|monumental" (body): how loud titles are; bold is the default.
   data-wall="warm|white|grey|sage|slate|oxblood|ink" (body), or --gallery-wall + --gallery-wall-ink: the title wall
   and every featured room. data-spotlight="off" flattens the light. data-space="compact" halves the gaps.
   data-feature on a tk-section, tk-callout, tk-stats, tk-taped/tk-image or tk-card makes it the work people stop at. */
body[data-tk-theme][data-title="quiet"]{--tk-size-h1:clamp(2.6rem,1rem + 5.4vw,7rem);--tk-size-h2:clamp(1.9rem,1.5rem + 1.4vw,2.8rem)}
body[data-tk-theme][data-title="monumental"]{--tk-size-h1:clamp(3.4rem,.6rem + 10vw,13.5rem);--tk-size-h2:clamp(2.8rem,1.4rem + 4.4vw,6.6rem)}
body[data-tk-theme][data-title="monumental"] tk-section>h2:where(:not(tk-screen *, tk-note *)){font-weight:300;letter-spacing:-.03em;line-height:.95;margin-bottom:3.2rem}
body[data-tk-theme][data-space="compact"]{--ga-space:.5}
body[data-tk-theme][data-spotlight="off"]{--ga-light:0}
body[data-tk-theme][data-wall="white"]{--ga-wall:var(--gallery-wall,#FAFAF8)}
body[data-tk-theme][data-wall="grey"]{--ga-wall:var(--gallery-wall,#D8D7D3)}
body[data-tk-theme][data-wall="sage"]{--ga-wall:var(--gallery-wall,#D5DDD0)}
body[data-tk-theme][data-wall="slate"]{--ga-wall:var(--gallery-wall,#38424C);--ga-wall-ink:var(--gallery-wall-ink,#F3F1EC);--ga-light:.16}
body[data-tk-theme][data-wall="oxblood"]{--ga-wall:var(--gallery-wall,#561A1F);--ga-wall-ink:var(--gallery-wall-ink,#F6EEE6);--ga-light:.14;--ga-dot:var(--gallery-dot,#F6EEE6)}
body[data-tk-theme][data-wall="ink"]{--ga-wall:var(--gallery-wall,#1C1C1B);--ga-wall-ink:var(--gallery-wall-ink,#F2F0EC);--ga-light:.13}
body[data-tk-theme][data-spotlight="off"][data-wall]{--ga-light:0}
/* Dark walls re-ink everything hung on them. */
body[data-tk-theme]:is([data-wall="slate"],[data-wall="oxblood"],[data-wall="ink"]) :is(tk-hero,tk-section[data-feature]):where(:not(tk-screen *, tk-note *)){--ga-muted:color-mix(in srgb,var(--ga-wall-ink) 72%,var(--ga-wall));
  --ga-hair:color-mix(in srgb,var(--ga-wall-ink) 22%,var(--ga-wall));--ga-paper:var(--ga-wall);--tk-fg:var(--ga-wall-ink);--tk-muted:var(--ga-muted);--tk-c1:var(--ga-wall-ink);
  --tk-grid:color-mix(in srgb,var(--ga-wall-ink) 14%,transparent);--tk-border:var(--ga-hair);--tk-code-bg:color-mix(in srgb,var(--ga-wall) 82%,#000);--tk-code-fg:var(--ga-wall-ink);--tk-tok-k:#FFB4A8;--tk-tok-s:#B9D3BC}

/* A featured room: the wall colour runs edge to edge, the light falls on it, and the title grows. */
body[data-tk-theme] tk-section[data-feature]:where(:not(tk-screen *, tk-note *)){--ga-ink:var(--ga-wall-ink);color:var(--ga-ink);padding-top:clamp(4rem,9vw,8rem);padding-bottom:clamp(4rem,9vw,8rem);
  background:radial-gradient(ellipse 38% 60% at 30% 0,rgb(255 255 255/var(--ga-light)),rgb(255 255 255/0) 75%),radial-gradient(ellipse 30% 50% at 80% 0,rgb(255 255 255/calc(var(--ga-light) * .6)),rgb(255 255 255/0) 75%),var(--ga-wall);
  box-shadow:0 0 0 100vmax var(--ga-wall);clip-path:inset(0 -100vmax)}
body[data-tk-theme] tk-section[data-feature]>h2:where(:not(tk-screen *, tk-note *)){font-size:calc(var(--tk-size-h2) * 1.45);font-weight:300;letter-spacing:-.03em;line-height:.98;margin-bottom:clamp(2.4rem,5vw,4rem)}
body[data-tk-theme] tk-section[data-feature] a:where(:not(tk-screen *, tk-note *)){color:var(--ga-ink);text-decoration-color:var(--ga-ink)}
body[data-tk-theme] tk-section[data-feature] .tk-feedback:where(:not(tk-screen *, tk-note *)){background:var(--ga-paper)}
/* A featured statement: wall text, huge and alone. */
body[data-tk-theme] tk-callout[data-feature]:where(:not(tk-screen *, tk-note *)),body[data-tk-theme] tk-callout[data-feature][data-kind]:where(:not(tk-screen *, tk-note *)){border:0;padding:0;margin:clamp(5rem,10vw,9rem) 0;max-width:22ch;
  font:300 clamp(2rem,1.2rem + 2.4vw,3.6rem)/1.08 var(--ga-serif);letter-spacing:-.02em}
body[data-tk-theme] tk-callout[data-feature] p:where(:not(tk-screen *, tk-note *)){max-width:none}
body[data-tk-theme] tk-callout[data-feature] p:first-of-type strong:first-child:where(:not(tk-screen *, tk-note *)){font-weight:300;font-style:italic}
body[data-tk-theme] tk-callout[data-feature] strong.tk-label:where(:not(tk-screen *, tk-note *)){margin-bottom:1.2rem}
/* Featured numbers: the colophon becomes a row of large numerals. */
body[data-tk-theme] tk-stats[data-feature]:where(:not(tk-screen *, tk-note *)){grid-template-columns:repeat(auto-fit,minmax(min(8.5rem,100%),1fr));gap:2rem 2.5rem;margin:clamp(3.5rem,7vw,6rem) 0}
body[data-tk-theme] tk-stats[data-feature]>tk-stat:nth-child(n):where(:not(tk-screen *, tk-note *)){display:flex;flex-direction:column;align-items:flex-start;border:0;padding:0}
body[data-tk-theme] tk-stats[data-feature] .tk-value:where(:not(tk-screen *, tk-note *)){order:-1;font:300 clamp(3rem,1.6rem + 3vw,5.4rem)/.9 var(--ga-serif);letter-spacing:-.03em;text-align:left;margin:0 0 .9rem}
body[data-tk-theme] tk-stats[data-feature] .tk-label:where(:not(tk-screen *, tk-note *)){border-top:1px solid var(--ga-ink);padding-top:.6rem;width:100%}
/* A featured work: it takes the whole wall, with a pool of light behind it. */
@media(min-width:1000px){
  body[data-tk-theme] tk-section>:is(tk-taped,tk-image,tk-card,tk-figure)[data-feature]:where(:not(tk-screen *, tk-note *)){margin-left:-50%;max-width:none}
}
body[data-tk-theme] :is(tk-taped,tk-image,tk-card,tk-figure)[data-feature]:where(:not(tk-screen *, tk-note *)){position:relative;margin-top:clamp(3rem,7vw,6rem);margin-bottom:clamp(3rem,7vw,6rem);padding:clamp(1.5rem,5vw,5rem) clamp(1rem,8vw,9rem);
  background:radial-gradient(ellipse 60% 70% at 50% 40%,rgb(255 255 255/.9),rgb(255 255 255/0) 75%),var(--ga-wall)}
body[data-tk-theme]:is([data-wall="slate"],[data-wall="oxblood"],[data-wall="ink"]) :is(tk-taped,tk-image,tk-card,tk-figure)[data-feature]:where(:not(tk-screen *, tk-note *)){background:radial-gradient(ellipse 55% 65% at 50% 40%,rgb(255 255 255/.16),rgb(255 255 255/0) 75%),var(--ga-wall);--ga-ink:var(--ga-wall-ink);color:var(--ga-ink)}
body[data-tk-theme] tk-card[data-feature]>h3:first-child:where(:not(tk-screen *, tk-note *)){font-size:2.2rem}
/* On a dark wall, charts (which take the page's ink) hang as light prints in a mat. */
body[data-tk-theme]:is([data-wall="slate"],[data-wall="oxblood"],[data-wall="ink"]) tk-section[data-feature] :is(tk-card:has(tk-chart),tk-section>tk-chart):where(:not(tk-screen *, tk-note *)){--ga-ink:#1A1A1A;--ga-muted:#5E5E5A;--ga-hair:#E4E3DF;
  color:#1A1A1A;background:#FAF8F4;padding:1.4rem 1.5rem 1.2rem;box-shadow:0 1px 1px rgba(0,0,0,.2),0 26px 50px -30px rgba(0,0,0,.7)}
/* 1.7.0: answers that join a form: quieter label cards; a sent answer gets the red dot, a missing one a red frame. */
/* A joined question is a smaller wall label (less margin, a smaller serif title); its state reads in the catalogue's
   small capitals; answered is an ink dot, sent the gallery's red dot, missing a hairline frame and text in the red.
   The form counts in the serif, on a hairline bar; its open answers and Go to Send are outlined like Send. */
body[data-tk-theme] .tk-feedback.tk-joined:where(:not(tk-screen *, tk-note *)){padding:1.25rem 1.4rem 1.1rem;margin:2.2rem 0}
body[data-tk-theme] .tk-feedback.tk-joined>h3:where(:not(tk-screen *, tk-note *)){font-size:1.5rem;margin-bottom:1rem}
body[data-tk-theme] .tk-feedback h3>.tk-required:where(:not(tk-screen *, tk-note *)){color:var(--ga-muted);font:italic 400 .8em/1 var(--ga-serif)}
body[data-tk-theme] .tk-feedback.tk-joined[data-tk-answer="missing"]:where(:not(tk-screen *, tk-note *)){outline:1px solid var(--ga-dot);outline-offset:6px;border-top-color:var(--ga-dot)}
body[data-tk-theme] .tk-feedback.tk-joined.tk-answer-flash:where(:not(tk-screen *, tk-note *)){box-shadow:0 0 0 6px var(--ga-paper),0 0 0 7px var(--ga-ink)}
body[data-tk-theme] .tk-feedback[data-tk-answer="missing"] [aria-invalid="true"]:where(:not(tk-screen *, tk-note *)){outline:1px solid var(--ga-dot);outline-offset:3px}
/* the state, in the catalogue's small capitals */
body[data-tk-theme] .tk-feedback>.tk-answer-state:where(:not(tk-screen *, tk-note *)){max-width:none;margin-top:1.1rem;color:var(--ga-muted);font:500 .74rem/1.45 var(--ga-sans);letter-spacing:.14em;text-transform:uppercase}
body[data-tk-theme] .tk-feedback .tk-answer-dot:where(:not(tk-screen *, tk-note *)){width:.7rem;height:.7rem;border:1px solid var(--ga-muted)}
body[data-tk-theme] .tk-feedback:is([data-tk-answer="answered"],[data-tk-answer="sent"])>.tk-answer-state:where(:not(tk-screen *, tk-note *)){color:var(--ga-ink)}
body[data-tk-theme] .tk-feedback[data-tk-answer="answered"] .tk-answer-dot:where(:not(tk-screen *, tk-note *)){border-color:var(--ga-ink);background:var(--ga-ink)}
body[data-tk-theme] .tk-feedback[data-tk-answer="sent"] .tk-answer-dot:where(:not(tk-screen *, tk-note *)){width:.8rem;height:.8rem;border:0;background:var(--ga-dot);box-shadow:none}
body[data-tk-theme] .tk-feedback[data-tk-answer="missing"]>.tk-answer-state:where(:not(tk-screen *, tk-note *)){color:var(--ga-dot);font-weight:600}
body[data-tk-theme] .tk-feedback[data-tk-answer="missing"] .tk-answer-dot:where(:not(tk-screen *, tk-note *)){border-color:var(--ga-dot);background:transparent;box-shadow:inset 0 0 0 2px var(--ga-paper),inset 0 0 0 4px var(--ga-dot)}
/* secondary buttons: outlined, like Send */
body[data-tk-theme] :is(.tk-feedback .tk-answer-go,.tk-answers-jump):where(:not(tk-screen *, tk-note *)){border:1px solid #8E8E8A;border-radius:0;background:var(--ga-paper);color:var(--ga-ink);text-decoration:none}
body[data-tk-theme] .tk-feedback .tk-answer-go:where(:not(tk-screen *, tk-note *)){padding:0 1rem;font:600 .72rem/1 var(--ga-sans);letter-spacing:.18em;text-transform:uppercase}
body[data-tk-theme] .tk-feedback .tk-answer-go:where(:not(tk-screen *, tk-note *))::after{content:"\2193";margin-left:.6em;letter-spacing:0}
body[data-tk-theme] .tk-answers-jump:where(:not(tk-screen *, tk-note *)){padding:.45rem .95rem;font:500 .9rem/1.35 var(--ga-sans)}
body[data-tk-theme] :is(.tk-feedback .tk-answer-go,.tk-answers-jump):hover:not(:disabled):where(:not(tk-screen *, tk-note *)){border-color:var(--ga-ink);background:var(--ga-ink);color:var(--ga-paper)}
body[data-tk-theme] .tk-answers-jump:hover:not(:disabled) .tk-answers-req:where(:not(tk-screen *, tk-note *)){color:var(--ga-paper)}
body[data-tk-theme] .tk-answers-jump.tk-answers-must:where(:not(tk-screen *, tk-note *)){border-color:var(--ga-ink)}
body[data-tk-theme] .tk-answers-req:where(:not(tk-screen *, tk-note *)){color:var(--ga-muted);font-weight:400}
/* the count, in the serif, and a hairline bar */
body[data-tk-theme] .tk-answers-count:where(:not(tk-screen *, tk-note *)){display:flex;align-items:baseline;gap:.55rem;margin-bottom:.7rem;color:var(--ga-muted);font:500 .74rem/1.45 var(--ga-sans);letter-spacing:.14em;text-transform:uppercase}
body[data-tk-theme] .tk-answers-count strong:where(:not(tk-screen *, tk-note *)){color:var(--ga-ink);font:400 1.9rem/1 var(--ga-serif);letter-spacing:0;text-transform:none}
body[data-tk-theme] .tk-answers-bar:where(:not(tk-screen *, tk-note *)){height:3px;border:0;border-radius:0;background:var(--ga-hair)}
body[data-tk-theme] .tk-answers-bar>span:where(:not(tk-screen *, tk-note *)){background:var(--ga-ink)}
body[data-tk-theme] .tk-answers[data-tk-answers="all"] .tk-answers-bar>span:where(:not(tk-screen *, tk-note *)){background:var(--ga-ink)}
body[data-tk-theme] .tk-answers-open:where(:not(tk-screen *, tk-note *)){margin-top:1.1rem;color:var(--ga-muted);font:500 .74rem/1.45 var(--ga-sans);letter-spacing:.14em;text-transform:uppercase}
body[data-tk-theme] .tk-answers-open .tk-answers-jump:where(:not(tk-screen *, tk-note *)){letter-spacing:0;text-transform:none}
body[data-tk-theme] .tk-feedback .tk-scale button[aria-pressed="true"]:hover:not(:disabled):where(:not(tk-screen *, tk-note *)){background:var(--ga-ink);color:#FFFFFF}
@media(max-width:640px){body[data-tk-theme] .tk-feedback.tk-joined:where(:not(tk-screen *, tk-note *)){padding:1.1rem 1.1rem 1rem}}
/* the form's own error line takes the red, like the answer it points to */
body[data-tk-theme] .tk-answers-form .tk-error:where(:not(tk-screen *, tk-note *)){color:var(--ga-dot)}
/* forced colours: open dots stay hollow, answered and missing fill, the bar and buttons keep their edges */
@media(forced-colors:active){body[data-tk-theme] .tk-feedback .tk-answer-dot:where(:not(tk-screen *, tk-note *)){forced-color-adjust:none;border-color:CanvasText;background:Canvas;box-shadow:none;clip-path:none;border-radius:50%}
  body[data-tk-theme] .tk-feedback:is([data-tk-answer="answered"],[data-tk-answer="sent"],[data-tk-answer="missing"]) .tk-answer-dot:where(:not(tk-screen *, tk-note *)){background:CanvasText}
  body[data-tk-theme] .tk-feedback.tk-joined[data-tk-answer="missing"]:where(:not(tk-screen *, tk-note *)){outline:2px solid Mark;outline-offset:3px}
  body[data-tk-theme] .tk-answers-bar>span:where(:not(tk-screen *, tk-note *)){forced-color-adjust:none;background:CanvasText}
  body[data-tk-theme] :is(.tk-feedback .tk-answer-go,.tk-answers-jump):where(:not(tk-screen *, tk-note *)){border:1px solid ButtonText}}
