/* The Boundary Layer Labs website's shared styles: BLOM's design library, Light skin. Made by publish-site.py from the Design Lab drafts' shared.css; don't edit it by hand. */
@font-face{font-family:"Albert Sans";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/albert-sans-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Albert Sans";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/albert-sans-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Albert Sans";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/albert-sans-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Newsreader";font-style:normal;font-weight:300;font-display:swap;src:url("/fonts/newsreader-latin-300-normal.woff2") format("woff2")}
@font-face{font-family:"Newsreader";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/newsreader-latin-400-normal.woff2") format("woff2")}

:root,[data-theme="soft"]{
  --boundary-50:#EEF6F9;--boundary-100:#DCEBF1;--boundary-200:#B9D6E2;--boundary-300:#8DBACB;--boundary-400:#5E9AB0;
  --boundary-500:#3A7E96;--boundary-600:#23667E;--boundary-700:#155167;--boundary-800:#0E3F52;--boundary-900:#082C3A;
  --stone-50:#FAF9F6;--stone-100:#F2F0EB;--stone-200:#E6E2DA;--stone-300:#D3CEC4;--stone-400:#B5AFA3;--stone-500:#97907F;
  --stone-600:#7A7466;--stone-700:#5F5A50;--stone-800:#45413A;--stone-900:#2E2C27;

  --surface-page:#F2F0EB;--surface-raised:#FAF9F6;--surface-sunken:#E6E2DA;
  --surface-chrome:#0E3F52;--surface-chrome-ink:#EEF6F9;--surface-chrome-muted:#B9D6E2;--surface-chrome-edge:transparent;
  --text-primary:#2E2C27;--text-secondary:#5F5A50;--text-muted:#6B665B;--text-brand:#0E3F52;--text-link:#155167;
  --border-subtle:#E0DCD3;--border-default:#D3CEC4;--border-strong:#97907F;--border-focus:#006C69;
  --action-primary:#0E3F52;--action-primary-hover:#155167;--action-primary-ink:#FFFFFF;
  --action-secondary:#FAF9F6;--action-secondary-hover:#EEF6F9;--action-secondary-ink:#0E3F52;--action-secondary-border:#97907F;
  --chip-fill:#ECE9E3;--chip-ink:#5F5A50;
  --callout-fill:#EEF6F9;--callout-border:#B9D6E2;
  --status-success:#0D712D;--status-success-tint:#EDFBEE;--status-success-ink:#00571B;
  --status-info:#155167;--status-info-tint:#EEF6F9;--status-info-ink:#0E3F52;
  --status-warning:#7F5300;--status-warning-tint:#FFF5E7;--status-warning-ink:#613F00;
  --status-error:#A9212E;--status-error-tint:#FFF2F1;--status-error-ink:#87061C;
  --status-neutral-tint:#ECE9E3;--status-neutral-ink:#45413A;
  --actor-person:#155167;--actor-person-tint:#DCEBF1;--actor-agent:#874366;--actor-agent-tint:#F7EAF0;
  --ai-ink:#006C69;--ai-tint:#E8FCFA;--ai-edge:#0ABAB5;
  --viz-stage-pspec:#6C5EAC;--viz-stage-implemented:#4091AF;--viz-stage-verified:#177896;--viz-stage-deployed:#03465E;
  --shadow-1:0 4px 12px rgba(46,44,39,.08),0 1px 2px rgba(46,44,39,.06);--shadow-2:0 16px 40px rgba(46,44,39,.16);

  --font-ui:"Albert Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --font-display:"Newsreader",Georgia,"Times New Roman",serif;
  --font-mono:ui-monospace,"Cascadia Mono","SFMono-Regular",Consolas,"Liberation Mono",monospace;
  --page-gutter:32px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-full:9999px;
  --motion-base:200ms;--ease-standard:cubic-bezier(0.2,0,0,1);
  color-scheme:light;
}

[data-theme="light"]{
  --font-ui:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --font-display:var(--font-ui);
  --status-warning-tint:#fff8e6;--status-warning-ink:#7a5a00;--status-error-tint:#ffebe9;--status-error-ink:#a40e26;
  --surface-page:#ffffff;--surface-raised:#ffffff;--surface-sunken:#f6f8fa;
  --surface-chrome:#ffffff;--surface-chrome-ink:#1f2328;--surface-chrome-muted:#59636e;--surface-chrome-edge:#d9dee4;
  --text-primary:#1f2328;--text-secondary:#59636e;--text-muted:#5f6873;--text-brand:#5e6ad2;--text-link:#0c66e4;
  --border-subtle:#eaeef2;--border-default:#d9dee4;--border-strong:#c6cdd5;--border-focus:#0c66e4;
  --action-primary:#1f2328;--action-primary-hover:#30363d;--action-primary-ink:#ffffff;
  --action-secondary:#ffffff;--action-secondary-hover:#f3f5f7;--action-secondary-ink:#1f2328;--action-secondary-border:#c6cdd5;
  --chip-fill:#eef1f4;--chip-ink:#1f2328;
  --callout-fill:#f6f8fa;--callout-border:#d9dee4;
  --shadow-1:0 1px 2px rgba(31,35,40,.06),0 4px 12px rgba(31,35,40,.06);--shadow-2:0 24px 48px rgba(31,35,40,.12);
}

[data-theme="dark"]{
  --surface-page:#151F24;--surface-raised:#1D2A30;--surface-sunken:#0D1418;
  --surface-chrome:#0D1418;--surface-chrome-ink:#E3ECEF;--surface-chrome-muted:#93A8B0;--surface-chrome-edge:#2A3A41;
  --text-primary:#E3ECEF;--text-secondary:#AFC2C9;--text-muted:#93A8B0;--text-brand:#8DCBDD;--text-link:#8DCBDD;
  --border-subtle:#2A3A41;--border-default:#3A4E57;--border-strong:#6F8790;--border-focus:#78D7D2;
  --action-primary:#8DCBDD;--action-primary-hover:#B9E0EB;--action-primary-ink:#082C3A;
  --action-secondary:#1D2A30;--action-secondary-hover:#2A3A41;--action-secondary-ink:#8DCBDD;--action-secondary-border:#6F8790;
  --chip-fill:#22323A;--chip-ink:#AFC2C9;
  --callout-fill:#10303B;--callout-border:#23667E;
  --status-success:#96D79F;--status-success-tint:#0F2E17;--status-success-ink:#BCE8C1;
  --status-info:#8DCBDD;--status-info-tint:#10303B;--status-info-ink:#B9E0EB;
  --status-warning:#E8BC7E;--status-warning-tint:#33240A;--status-warning-ink:#F4D5AC;
  --status-error:#FFA9A5;--status-error-tint:#3A1014;--status-error-ink:#FFCCC9;
  --status-neutral-tint:#22323A;--status-neutral-ink:#C9D6DA;
  --actor-person:#8DCBDD;--actor-person-tint:#10303B;--actor-agent:#DA8FB2;--actor-agent-tint:#33192A;
  --ai-ink:#78D7D2;--ai-tint:#0B2E2D;--ai-edge:#0ABAB5;
  --viz-stage-pspec:#A097DC;--viz-stage-implemented:#4292AA;
  --shadow-1:none;--shadow-2:none;
  color-scheme:dark;
}

@media (max-width:1279px){:root{--page-gutter:24px}}
@media (max-width:767px){:root{--page-gutter:16px}}
@media (prefers-reduced-motion:reduce){:root{--motion-base:0ms}}

*,*::before,*::after{box-sizing:border-box}
html{background:var(--surface-page);color:var(--text-primary);font:400 16px/1.6 var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}
main{flex:1}
a{color:var(--text-link);text-underline-offset:2px}
:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}
h1,h2,h3{text-wrap:balance;margin:0}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
.wrap{padding-inline:var(--page-gutter)}
.mono{font-family:var(--font-mono);font-size:.92em}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:0;background:var(--surface-raised);color:var(--text-primary);padding:8px 12px;z-index:30}
.skip:focus{left:var(--page-gutter)}

.site-top{background:var(--surface-chrome);color:var(--surface-chrome-ink);border-bottom:1px solid var(--surface-chrome-edge);position:relative;z-index:5}
.site-top .wrap{display:flex;align-items:center;gap:28px;min-height:64px}
.wordmark{display:inline-flex;align-items:baseline;gap:10px;color:inherit;text-decoration:none}
.wordmark b{font:600 20px/28px "Albert Sans",var(--font-ui);letter-spacing:.08em}
.wordmark span{font-size:13px;color:var(--surface-chrome-muted)}
.site-nav{display:flex;gap:22px;font-size:15px}
.site-nav a{color:inherit;text-decoration:none;opacity:.9}
.site-nav a:hover{opacity:1;text-decoration:underline}
.site-actions{margin-left:auto;display:flex;align-items:center;gap:14px}
.site-actions .signin{color:inherit;text-decoration:none;font-size:15px}
@media (max-width:860px){.site-nav{display:none}.wordmark span{display:none}}

.site-nav a,.nav-menu summary,.site-actions a{white-space:nowrap}
@media (max-width:1100px){.wordmark span{display:none}.site-top .wrap{gap:20px}.site-nav{gap:16px}}

.nav-mobile{display:none}
.nav-mobile summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid var(--border-default);border-radius:var(--radius-sm);font:600 14px/20px var(--font-ui);color:var(--surface-chrome-ink)}
.nav-mobile summary::-webkit-details-marker{display:none}
.nav-mobile summary::before{content:"";width:16px;height:12px;background:linear-gradient(currentColor,currentColor) 0 0/100% 2px no-repeat,linear-gradient(currentColor,currentColor) 0 50%/100% 2px no-repeat,linear-gradient(currentColor,currentColor) 0 100%/100% 2px no-repeat}
.nav-mobile[open] summary{background:var(--surface-sunken)}
.nav-mobile-panel{position:absolute;left:0;right:0;top:100%;z-index:10;display:grid;max-height:calc(100vh - 64px);overflow-y:auto;padding:4px var(--page-gutter) 16px;background:var(--surface-raised);border-bottom:1px solid var(--border-default);box-shadow:var(--shadow-2)}
.nav-mobile-panel a{display:block;padding:12px 0;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);text-decoration:none;font:500 16px/22px var(--font-ui)}
.nav-mobile-panel a[aria-current="page"]{font-weight:600}
.nav-mobile-panel a.sub{padding-left:16px;font-weight:400;color:var(--text-secondary)}
.nav-mobile-panel a:last-child{border-bottom:0}
.nav-mobile-h{padding:14px 0 4px;font:600 12px/16px var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
@media (max-width:860px){.nav-mobile{display:block}.site-actions .signin{display:none}.site-top .wrap{gap:12px}.wordmark{min-height:44px;align-items:center}}
@media (max-width:640px){.site-foot .foot-links{gap:0 18px;margin-left:0}.site-foot .foot-links a{display:inline-block;padding:10px 0}}

.site-nav{align-items:center}
.nav-menu{position:relative}
.nav-menu summary{list-style:none;cursor:pointer;opacity:.9}
.nav-menu summary::-webkit-details-marker{display:none}
.nav-menu summary::after{content:"\25BE";font-size:11px;margin-left:5px;opacity:.7}
.nav-menu[open] summary,.nav-menu summary:hover{opacity:1}
.nav-pop{position:absolute;top:calc(100% + 12px);left:-12px;z-index:10;display:grid;gap:2px;min-width:320px;padding:8px;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-2)}
.site-nav .nav-pop a{display:grid;gap:2px;padding:8px 10px;border-radius:var(--radius-sm);opacity:1;text-decoration:none}
.site-nav .nav-pop a:hover{background:var(--surface-sunken);text-decoration:none}
.nav-pop b{font:600 14px/20px var(--font-ui);color:var(--text-primary)}
.nav-pop span{font-size:13px;color:var(--text-secondary)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 20px;border-radius:var(--radius-sm);font:600 15px/20px var(--font-ui);text-decoration:none;border:1px solid transparent;transition:background var(--motion-base) var(--ease-standard)}
.btn-primary{background:var(--action-primary);color:var(--action-primary-ink)}
.btn-primary:hover{background:var(--action-primary-hover)}
.btn-secondary{background:var(--action-secondary);color:var(--action-secondary-ink);border-color:var(--action-secondary-border)}
.btn-secondary:hover{background:var(--action-secondary-hover)}
.btn-sm{min-height:36px;padding:6px 14px;font-size:14px}
.site-top .btn-primary{background:var(--surface-chrome-ink);color:var(--surface-chrome)}
[data-theme="light"] .site-top .btn-primary{background:var(--action-primary);color:var(--action-primary-ink)}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}

.eyebrow{font:600 12px/16px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}
.chip{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:var(--radius-full);background:var(--chip-fill);color:var(--chip-ink);font:500 12px/20px var(--font-ui);white-space:nowrap}
.chip-success{background:var(--status-success-tint);color:var(--status-success-ink)}
.chip-info{background:var(--status-info-tint);color:var(--status-info-ink)}
.chip-warning{background:var(--status-warning-tint);color:var(--status-warning-ink)}
.actor{display:inline-flex;align-items:center;gap:6px;padding:2px 10px 2px 4px;border-radius:var(--radius-full);font:500 12.5px/20px var(--font-ui);white-space:nowrap;max-width:100%}
.actor::before{content:attr(data-initial);display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;font:600 10px/1 var(--font-ui);color:#fff}
.actor-person{background:var(--actor-person-tint);color:var(--actor-person)}
.actor-person::before{background:var(--actor-person)}
.actor-agent{background:var(--actor-agent-tint);color:var(--actor-agent)}
.actor-agent::before{background:var(--actor-agent)}
[data-theme="dark"] .actor::before{color:#0D1418}
.actor small{font:400 12px/20px var(--font-ui);opacity:.85}
.note{font-size:14px;color:var(--text-muted)}

.site-foot{border-top:1px solid var(--border-subtle);padding-block:28px 88px;font-size:14px;color:var(--text-secondary)}
.site-foot .wrap{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center}
.site-foot a{color:inherit}
.site-foot .foot-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-left:auto}

.site-foot .foot-pages{display:flex;flex-wrap:wrap;gap:8px 20px;flex-basis:100%}
@media (max-width:640px){.site-foot .foot-pages{gap:0 18px}.site-foot .foot-pages a{display:inline-block;padding:10px 0}}
