@font-face{font-family:Geist;src:url(/fonts/Geist-Regular.ttf) format("truetype-variations");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Regular.ttf) format("truetype-variations");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-Regular.ttf) format("truetype-variations");font-weight:100 900;font-style:normal;font-display:swap}:root{font-optical-sizing:none}.shell{min-height:100dvh;background:var(--ink)}.shell__sidebar{display:none}.shell__bare{display:flex;flex-direction:column;justify-content:center;padding:calc(env(safe-area-inset-top) + var(--s-6)) var(--gutter) calc(env(safe-area-inset-bottom) + var(--s-6))}.shell__bare,.shell__focus{min-height:100dvh;background:var(--ink)}.shell__header{position:fixed;inset:0 0 auto 0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);height:52px;padding:0 var(--gutter);padding-top:env(safe-area-inset-top);background:linear-gradient(var(--ink) 55%,transparent);pointer-events:none}.shell__header>*{pointer-events:auto}.shell__title{margin:0;font-family:var(--f-display);font-size:var(--t-heading-size);font-weight:600;letter-spacing:var(--t-title-ls);color:var(--paper)}.shell__title--centred{flex:1 1;min-width:0;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell__header--subpage{gap:var(--s-2)}.shell__action{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:var(--touch-min);height:var(--touch-min);color:var(--paper);text-decoration:none;border-radius:50%;padding:0;font:inherit;cursor:pointer}.shell__badge{position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--fail);border:2px solid var(--ink)}.shell__content{padding:var(--s-4) var(--gutter);padding-top:calc(52px + env(safe-area-inset-top) + var(--s-4));padding-bottom:calc(var(--touch-min) + var(--s-8) + env(safe-area-inset-bottom));max-width:var(--content-max);margin:0 auto}.shell--detail .shell__content{padding-top:calc(env(safe-area-inset-top) + var(--s-3));padding-bottom:calc(var(--s-8) + env(safe-area-inset-bottom))}.shell:not(.shell--detail):has(.shell__header--subpage) .shell__content{padding-bottom:calc(var(--s-8) + env(safe-area-inset-bottom))}.shell__bottombar{position:fixed;inset:auto 0 0 0;display:flex;justify-content:center;padding:0 var(--gutter);padding-bottom:calc(env(safe-area-inset-bottom) + var(--s-3));pointer-events:none;z-index:20}.shell__pill{display:flex;gap:var(--s-1);width:auto;max-width:100%;padding:4px;background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);border-radius:999px;box-shadow:var(--glass-shadow);pointer-events:auto}.nav-item{display:flex;align-items:center;text-decoration:none;color:var(--mute)}.nav-item__label{font-family:var(--f-ui);font-weight:600;font-size:9px;line-height:12px;letter-spacing:.06em;text-transform:uppercase}.nav-item--sidebar .nav-item__label{font-size:var(--t-label-size);line-height:var(--t-label-lh);text-transform:none;letter-spacing:0}.nav-item--bar{flex-direction:column;justify-content:center;gap:3px;width:92px;min-height:var(--touch-min);padding:var(--s-2) 0;border-radius:999px;transition:background var(--m-base) var(--m-ease)}.nav-item--sidebar{gap:var(--s-3);min-height:var(--touch-min);padding:0 var(--s-3);border-radius:var(--r-md)}.nav-item.is-active{color:var(--paper)}.nav-item--sidebar.is-active{background:var(--raised)}.nav-item--bar{color:color-mix(in srgb,var(--paper) 80%,transparent)}.nav-item--bar.is-active{color:var(--signal-edge);background:color-mix(in srgb,var(--signal) 18%,transparent)}.shell__brand{padding:var(--s-4) var(--s-3) var(--s-6);font-family:var(--f-display);font-size:var(--t-heading-size);color:var(--paper)}@media (min-width:900px){.shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr}.shell__sidebar{display:flex;flex-direction:column;gap:var(--s-1);padding:var(--s-4) var(--s-3);border-right:1px solid var(--line);background:var(--surface);position:-webkit-sticky;position:sticky;top:0;height:100dvh}.shell__bottombar,.shell__header{display:none}.shell__content{padding:var(--s-8) var(--s-8) var(--s-16)}}button.nav-item{border:none;background:none;font:inherit;cursor:pointer;width:100%;text-align:left}