@font-face { font-family:"Pulse Barlow Local"; src:local("Barlow Regular"),local("Barlow-Regular"); font-style:normal; font-weight:400; font-display:swap; }
@font-face { font-family:"Pulse Barlow Local"; src:local("Barlow Medium"),local("Barlow-Medium"); font-style:normal; font-weight:500; font-display:swap; }
@font-face { font-family:"Pulse Barlow Local"; src:local("Barlow SemiBold"),local("Barlow-SemiBold"); font-style:normal; font-weight:600; font-display:swap; }
:root {
  color-scheme: light;
  --page:#f4f5ef; --panel:#fff; --surface:#e7eadf; --tint-a:#edf3d8; --tint-b:#e6eef2; --tint-c:#f3e9dc;
  --ink:#172013; --muted:#53614a; --accent:#456b0c; --action:#456b0c; --action-hover:#355308; --on-action:#fff;
  --line:#bdc7b0; --selected:#d8e9a6; --success:#285b3c; --on-success:#fff; --note:#f4e2a6; --on-note:#473a0d;
  --control-border:#6a7a5a; --warning:#76520a; --danger:#982e3e; --info:#245d79;
  --body-font:"Pulse Barlow Local","Segoe UI",sans-serif; --display-font:"Barlow Condensed",Impact,"Arial Narrow",sans-serif; --mono-font:Consolas,"Liberation Mono",monospace;
  --panel-radius:12px; --control-radius:6px; --specimen-padding:24px; --feedback:0ms; --ease:cubic-bezier(.2,0,0,1);
  font-family:var(--body-font); font-size:16px; line-height:1.6; color:var(--ink); background:var(--page);
}
:root[data-appearance="dark"] { color-scheme:dark; --page:#10140d; --panel:#191f15; --surface:#242d1c; --tint-a:#2b361e; --tint-b:#1f3035; --tint-c:#352b20; --ink:#f5f8ee; --muted:#bec9ae; --accent:#c4f047; --action:#c4f047; --action-hover:#d4fb72; --on-action:#162006; --line:#455239; --selected:#3b501d; --success:#a9d7af; --on-success:#12231b; --note:#e6d28e; --on-note:#2b260d; --control-border:#849871; --warning:#ecd189; --danger:#f3a9b3; --info:#a6d0e9; }
@media(prefers-color-scheme:dark) { :root[data-appearance="system"] { color-scheme:dark; --page:#10140d; --panel:#191f15; --surface:#242d1c; --tint-a:#2b361e; --tint-b:#1f3035; --tint-c:#352b20; --ink:#f5f8ee; --muted:#bec9ae; --accent:#c4f047; --action:#c4f047; --action-hover:#d4fb72; --on-action:#162006; --line:#455239; --selected:#3b501d; --success:#a9d7af; --on-success:#12231b; --note:#e6d28e; --on-note:#2b260d; --control-border:#849871; --warning:#ecd189; --danger:#f3a9b3; --info:#a6d0e9; } }
@media(prefers-reduced-motion:no-preference) { :root[data-motion="on"] { --feedback:150ms; } }
:root[data-density="compact"] { --specimen-padding:16px; }
*,*::before,*::after { box-sizing:border-box; }
[hidden] { display:none !important; }
body { margin:0; }
button,input,select { font:inherit; }
button,a,input,select,summary { -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
button:disabled,select:disabled,input:disabled { cursor:default; }
button:disabled { opacity:.68; }
a { color:var(--accent); text-underline-offset:.22em; text-decoration-thickness:1px; overflow-wrap:anywhere; }
a:hover { text-decoration-thickness:2px; }
button,input,select,a,summary { transition-property:background-color,border-color,color; transition-duration:var(--feedback); transition-timing-function:var(--ease); }
:focus-visible { outline:3px solid var(--ink); outline-offset:5px; }
[tabindex="-1"]:focus { outline:3px solid var(--ink); outline-offset:5px; }
::selection { background:var(--selected); color:var(--ink); }
h1,h2,h3,h4,p,figure,ol,ul { margin:0; }
h1,h2,h3,h4 { line-height:1.1; text-wrap:balance; overflow-wrap:anywhere; }
h1,h2 { font-family:var(--display-font); font-weight:700; letter-spacing:-.015em; }
h1 { font-size:clamp(3rem,6vw,5rem); }
h2 { font-size:clamp(2.5rem,5vw,4.5rem); }
h3 { font-size:1.375rem; font-weight:600; }
h4 { font-size:1.125rem; font-weight:600; }
p { max-width:65ch; }
svg { display:block; max-width:100%; }
code,.technical,.mono-value { font-family:var(--mono-font); font-size:.875rem; overflow-wrap:anywhere; }
button,summary,a,input,select,[tabindex] { scroll-margin-block:2rem; }
.container { width:min(100% - 3rem,1240px); margin-inline:auto; }
.skip-link { position:absolute; inset-block-start:1rem; inset-inline-start:1rem; z-index:2; padding:.75rem 1rem; min-height:44px; background:var(--panel); transform:translateY(-200%); color:var(--ink); }
.skip-link:focus { transform:translateY(0); }
.preview-header { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem; padding-block:1.5rem; border-bottom:1px solid var(--line); }
.atlas-brand { display:inline-flex; align-items:center; gap:.625rem; min-height:44px; font-weight:600; color:var(--ink); text-decoration:none; }
.atlas-mark { width:30px; height:30px; fill:currentColor; }
.draft-label,.support,.small-label,.eyebrow,.session-index { font-size:.875rem; }
.draft-label,.support,.small-label,.session-index { color:var(--muted); }
.eyebrow { font-weight:600; letter-spacing:.055em; text-transform:uppercase; }
.preview-intro { display:grid; grid-template-columns:minmax(0,1fr) minmax(20rem,.8fr); gap:3rem; padding-block:3rem 2rem; }
.preview-intro .eyebrow { margin-bottom:.75rem; }
.intro-description { margin-top:1rem; max-width:44ch; }
.preview-settings { align-self:start; padding:1.25rem; background:var(--surface); border-radius:var(--panel-radius); }
.preference-fields { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.field { display:grid; gap:.375rem; min-width:0; }
label { font-size:.875rem; font-weight:500; }
input:not([type="checkbox"]),select { width:100%; min-width:0; min-height:44px; padding:.5rem .75rem; border:1px solid var(--control-border); border-radius:var(--control-radius); color:var(--ink); background:var(--panel); font-size:1rem; }
.checkbox-label { display:flex; align-items:center; gap:.625rem; min-height:44px; padding-block:.5rem; }
input[type="checkbox"] { flex:none; width:20px; height:20px; accent-color:var(--action); margin:0; }
.preview-settings .support + .support { margin-top:.375rem; }
.section-nav { display:flex; flex-wrap:wrap; gap:.25rem 1.5rem; padding-block:.25rem 1.5rem; }
.section-nav a { display:inline-flex; align-items:center; min-width:44px; min-height:44px; font-size:.875rem; }
.button { display:inline-flex; justify-content:center; align-items:center; gap:.75rem; min-height:44px; padding:.625rem 1rem; border:1px solid var(--control-border); border-radius:var(--control-radius); font-size:1rem; font-weight:600; line-height:1.4; text-align:center; text-decoration:none; color:var(--ink); background:var(--panel); }
.button:hover:not(:disabled) { background:var(--surface); text-decoration:none; }
.button.primary { background:var(--action); color:var(--on-action); border-color:var(--action); }
.button.primary:hover:not(:disabled) { background:var(--action-hover); border-color:var(--action-hover); }
.button.secondary { background:transparent; }
.text-link { display:inline-flex; align-items:center; gap:.75rem; min-height:44px; font-weight:600; }
.event-poster { --ink:#f5f8ee; --accent:#c4f047; --line:#455239; --muted:#bec9ae; --selected:#3b501d; color:var(--ink); background:#10140d; border-radius:var(--panel-radius); padding:2rem 2.5rem 1.5rem; }
.poster-top,.poster-bottom { display:flex; flex-wrap:wrap; gap:1rem; justify-content:space-between; align-items:center; }
.poster-top { padding-bottom:1.25rem; border-bottom:1px solid var(--line); }
.event-wordmark { display:flex; align-items:center; gap:.75rem; font-weight:600; font-size:1.125rem; }
.wordmark-symbol { color:var(--accent); font-size:2rem; line-height:1; }
.poster-tag { font-size:.75rem; color:var(--muted); }
.poster-body { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.85fr); gap:2rem; padding-block:2.5rem; align-items:center; }
.poster-copy .eyebrow { color:var(--muted); }
.poster-copy h2 { font-size:clamp(3.5rem,10vw,8rem); line-height:.9; margin-block:1.25rem 1.5rem; }
.poster-copy h2 span { color:var(--accent); }
.poster-copy > p:not(.eyebrow) { max-width:36ch; }
.poster-button { margin-top:1.5rem; background:#c4f047; color:#162006; border-color:#c4f047; }
.poster-button:hover { background:#d4fb72 !important; border-color:#d4fb72; }
.poster-art { width:100%; overflow:visible; }
.poster-art .art-outline { fill:none; stroke:#455239; stroke-width:1; }
.poster-art .art-ring { fill:none; stroke:#c4f047; stroke-width:3; }
.poster-art .art-solid,.poster-art .art-dot { fill:#c4f047; }
.poster-art .art-hatch { fill:url(#poster-hatch); }
#poster-hatch path { stroke:#c4f047; stroke-width:4; }
.poster-art .art-guide { stroke:#849871; stroke-width:1; fill:none; }
.poster-figure figcaption { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.5rem; color:var(--muted); font-size:.75rem; }
.poster-bottom { padding-top:1.25rem; border-top:1px solid var(--line); font-size:.875rem; color:var(--muted); }
.poster-bottom span { margin-inline:.5rem; color:var(--accent); }
.gathering-note { display:grid; grid-template-columns:1fr 1.5fr 1fr; gap:2rem; padding-block:2rem 1rem; }
.section-block { padding-block:3.5rem; }
.section-caption { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.75rem; margin-bottom:2rem; padding-top:1rem; border-top:1px solid var(--line); }
.section-intro { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:end; margin-bottom:2rem; }
.section-intro h2 span { color:var(--accent); }
.section-intro .support { margin-top:.75rem; }
.program-toolbar { display:flex; flex-wrap:wrap; align-items:end; gap:1rem 1.5rem; padding:1.25rem 0; }
.program-toolbar .field { width:min(100%,16rem); }
.program-toolbar .support { align-self:center; padding-top:1rem; }
.program-toolbar .text-link { margin-inline-start:auto; }
.interaction-status { min-height:1.6em; margin-block:.5rem 1rem; }
.program-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(16rem,.43fr); gap:1.5rem; align-items:start; }
.session-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.session-card { display:flex; flex-direction:column; min-width:0; padding:1.5rem; border:1px solid var(--line); background:var(--panel); border-radius:var(--panel-radius); }
.session-top { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.5rem; align-items:center; margin-bottom:1.5rem; }
.session-time { display:flex; flex-wrap:wrap; gap:.375rem; font-size:.875rem; font-variant-numeric:tabular-nums; font-weight:600; }
.format-tag { border:1px solid var(--line); padding:.125rem .5rem; border-radius:4px; font-size:.75rem; }
.session-index { font-size:.75rem; margin-bottom:.5rem; }
.session-card h3 { margin-bottom:.75rem; }
.session-summary { margin-bottom:1rem; }
details { margin-top:auto; }
summary { padding-block:.75rem; min-height:44px; cursor:pointer; text-decoration:underline; text-underline-offset:.22em; font-size:.875rem; font-weight:500; }
details p { margin:.5rem 0 1rem; font-size:.875rem; }
.add-session { margin-top:1rem; justify-content:space-between; }
.toggle-mark { font-size:1.125rem; line-height:1; }
.session-card[data-selected="true"] { background:var(--selected); border-color:var(--ink); }
.session-card[data-selected="true"] :is(.session-index,.format-tag,summary,.session-time) { color:var(--ink); }
.session-card[data-selected="true"] .format-tag { border-color:var(--ink); }
.session-card[data-selected="true"] .add-session { color:var(--ink); border-color:var(--ink); background:transparent; }
.session-card[data-selected="true"] .add-session:hover { background:var(--selected); }
.plan-panel { padding:1.5rem; background:var(--surface); border-radius:var(--panel-radius); }
.plan-heading { margin-bottom:1.5rem; }
.plan-heading .eyebrow { margin-bottom:.75rem; }
.plan-heading h3 { font-family:var(--display-font); font-size:2.5rem; letter-spacing:-.015em; font-weight:700; }
.plan-heading .support { margin-top:.75rem; }
.plan-list,.review-list { list-style:none; padding:0; }
.plan-list > li { padding-block:1rem; border-bottom:1px solid var(--line); }
.plan-list .chosen-time { font-size:.875rem; color:var(--muted); font-variant-numeric:tabular-nums; }
.plan-list h4 { margin-top:.375rem; line-height:1.35; }
.remove-session { display:inline-flex; align-items:center; min-width:44px; min-height:44px; margin-top:.25rem; padding:.5rem 0; background:transparent; color:var(--ink); border:0; text-decoration:underline; text-underline-offset:.22em; font-size:.875rem; }
.plan-actions { display:grid; gap:.75rem; margin-block:1.5rem 1rem; }
.static-plan { margin-top:1.5rem; border-top:1px solid var(--line); padding-top:1rem; }
.static-plan p { margin-top:.5rem; }
.error-summary { background:var(--panel); border:2px solid var(--danger); border-radius:var(--panel-radius); margin-top:2rem; padding:1.5rem; }
.error-summary > .eyebrow { color:var(--danger); margin-bottom:.75rem; }
.error-summary h3 { margin-bottom:1rem; }
.error-summary ul { padding-inline-start:1.5rem; }
.error-summary li { margin-bottom:.75rem; }
.error-summary a { display:inline-block; padding-block:.5rem; min-height:44px; }
.error-summary > .support { margin-top:1rem; }
.plan-review { display:grid; grid-template-columns:1fr 1fr; gap:2rem; background:var(--tint-a); border-radius:var(--panel-radius); margin-top:2rem; padding:2rem; }
.plan-review h3 { font-family:var(--display-font); font-size:3rem; margin-block:.75rem 1rem; letter-spacing:-.015em; }
.plan-review .support { margin-top:.75rem; }
.plan-review .button { margin-top:1.5rem; }
.review-list > li { padding-block:1rem; border-bottom:1px solid var(--line); }
.review-list .chosen-time { color:var(--muted); font-size:.875rem; font-variant-numeric:tabular-nums; }
.review-list h4 { margin-block:.375rem .5rem; line-height:1.35; }
.review-list p { font-size:.875rem; }
.motion-panel { display:grid; grid-template-columns:1fr 1fr; gap:3rem; padding:2rem; border-radius:var(--panel-radius); background:var(--tint-b); align-items:center; }
.motion-panel h2 { margin-bottom:1rem; }
.motion-panel .button { margin-block:1.5rem .75rem; }
.motion-art { min-height:18rem; display:flex; align-items:center; justify-content:center; gap:1rem; position:relative; padding:2rem 1rem 3rem; overflow:hidden; }
.motion-bar { display:block; width:18%; height:10rem; background:var(--accent); transform:skewX(-16deg); opacity:1; }
.motion-bar:nth-child(2) { height:13rem; }
.motion-bar:nth-child(3) { height:7rem; }
.motion-art-label { position:absolute; inset-block-end:0; font-size:.75rem; color:var(--muted); letter-spacing:.04em; }
.specimen-panel { padding:var(--specimen-padding); background:var(--panel); border:1px solid var(--line); border-radius:var(--panel-radius); }
.specimen-intro { display:grid; grid-template-columns:1fr 1fr; gap:2rem; margin-bottom:2rem; align-items:end; }
.specimen-grid { display:grid; grid-template-columns:1fr 1fr; gap:3rem; }
.button-samples { display:flex; flex-wrap:wrap; gap:.75rem; }
.button-samples + .support { margin-block:.75rem 1.5rem; }
.specimen-grid .field { margin-top:1rem; }
.specimen-grid .field + .support { margin-top:.5rem; }
.message { padding:1rem; border-radius:var(--control-radius); margin-top:1rem; }
.message.success { background:var(--success); color:var(--on-success); }
.message.note { background:var(--note); color:var(--on-note); }
.semantic-samples { margin-block:1rem; font-size:.875rem; }
.semantic-samples p + p { margin-top:.75rem; }
.warning { color:var(--warning); }
.danger { color:var(--danger); }
.info { color:var(--info); }
.type-study > p + p { margin-top:1rem; }
.display-sample { font-family:var(--display-font); font-size:clamp(2.25rem,4vw,3.5rem); line-height:1.05; letter-spacing:-.015em; font-weight:700; }
.palette { display:grid; grid-template-columns:1fr 1fr; gap:.75rem; margin-top:1.5rem; }
.swatch { padding:1rem .75rem; font-size:.875rem; border:1px solid var(--line); border-radius:var(--control-radius); }
.swatch-page { background:var(--page); }.swatch-a { background:var(--tint-a); }.swatch-b { background:var(--tint-b); }.swatch-c { background:var(--tint-c); }
.table-wrap { overflow-x:auto; margin-top:2rem; border:1px solid var(--line); border-radius:var(--control-radius); }
table { border-collapse:collapse; width:100%; min-width:38rem; font-size:.875rem; }
caption { text-align:start; padding:1rem; color:var(--muted); }
th,td { text-align:start; padding:1rem; border-top:1px solid var(--line); vertical-align:top; }
thead { background:var(--surface); }
tbody th { font-weight:500; }
.mono-value { max-width:18rem; }
.preview-footer { display:grid; grid-template-columns:1.35fr 1fr; gap:4rem; padding-block:3rem; border-top:1px solid var(--line); }
.preview-footer h2 { margin-block:1rem 1.5rem; }
.preview-footer p + p { margin-top:1rem; }
.preview-footer nav { display:grid; grid-template-columns:1fr; align-content:start; gap:.5rem; }
.preview-footer nav a { display:flex; justify-content:space-between; gap:1rem; align-items:center; min-height:44px; padding-block:.5rem; border-bottom:1px solid var(--line); font-size:.875rem; }
@media(min-width:90rem) { .poster-copy h2 { font-size:8rem; } }
@media(max-width:68rem) { .program-layout { grid-template-columns:minmax(0,1fr) minmax(15rem,.5fr); }.session-grid { grid-template-columns:1fr; }.gathering-note { grid-template-columns:1fr 1.5fr; }.gathering-note > .support { grid-column:2; } }
@media(max-width:52rem) { .preview-intro { grid-template-columns:1fr; gap:2rem; }.preview-settings { max-width:38rem; width:100%; }.poster-body { grid-template-columns:1fr 1fr; gap:1rem; }.event-poster { padding:1.5rem; }.poster-copy h2 { font-size:clamp(3.5rem,10vw,6rem); }.poster-figure figcaption { font-size:.625rem; }.gathering-note,.section-intro { grid-template-columns:1fr; gap:1rem; }.gathering-note > .support { grid-column:auto; }.program-layout { grid-template-columns:1fr; }.session-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.plan-panel { margin-top:.5rem; }.plan-list { display:grid; grid-template-columns:1fr 1fr; gap:0 1.5rem; }.plan-actions { display:flex; flex-wrap:wrap; }.plan-review,.motion-panel,.specimen-intro,.specimen-grid { grid-template-columns:1fr; gap:2rem; }.motion-art { min-height:16rem; }.preview-footer { grid-template-columns:1fr; gap:2rem; } }
@media(max-width:38rem) { .container { width:calc(100% - 2rem); }.preview-header { gap:.5rem; }.draft-label { font-size:.75rem; }.preview-intro { padding-top:2rem; }.preference-fields { grid-template-columns:1fr; gap:.75rem; }.preview-settings { padding:1rem; }.section-nav { gap:0 1rem; }.event-poster { padding:1.25rem; }.poster-top { gap:.75rem; }.poster-body { grid-template-columns:1fr; padding-top:2rem; gap:2rem; }.poster-copy h2 { font-size:clamp(3.5rem,17vw,6rem); }.poster-figure { width:100%; max-width:24rem; margin-inline:auto; }.poster-art { max-height:20rem; }.poster-figure figcaption { font-size:.75rem; }.poster-bottom { gap:.5rem; }.gathering-note { padding-top:1.5rem; }.section-block { padding-block:2.5rem; }.section-caption { margin-bottom:1.5rem; }.session-grid,.plan-list { grid-template-columns:1fr; }.session-card,.plan-panel { padding:1.25rem; }.program-toolbar { align-items:start; gap:.5rem 1rem; }.program-toolbar .field { width:100%; }.program-toolbar .support { padding-top:0; }.program-toolbar .text-link { margin-inline-start:0; }.plan-review,.motion-panel { padding:1.25rem; }.plan-review h3 { font-size:2.5rem; }.plan-actions { display:grid; }.motion-art { min-height:15rem; gap:.75rem; }.motion-bar { height:8rem; }.motion-bar:nth-child(2) { height:10rem; }.motion-bar:nth-child(3) { height:6rem; }.palette { gap:.5rem; }.specimen-grid { gap:2rem; }.specimen-intro h2 { font-size:2.25rem; }.preview-footer { padding-top:2rem; } }
@media(forced-colors:active) { :focus-visible,[tabindex="-1"]:focus { outline-color:Highlight; }.button,input,select,.session-card,.plan-panel,.event-poster,.error-summary { border:1px solid CanvasText; }.session-card[data-selected="true"] { border:3px solid Highlight; }.motion-bar { background:CanvasText; }.poster-art :is(.art-solid,.art-dot) { fill:CanvasText; }.poster-art :is(.art-ring,.art-outline,.art-guide) { stroke:CanvasText; } }
