.shell[data-v-fffa8bce]{display:grid;grid-template-columns:var(--app-sidebar) minmax(0,1fr);min-height:100vh;min-height:100dvh}.skip-link[data-v-fffa8bce]{position:fixed;inset-block-start:8px;inset-inline-start:8px;z-index:60;padding:.5rem .75rem;font-size:.875rem;color:var(--text);background:var(--raised);border:1px solid var(--line-strong);border-radius:var(--radius-s);text-decoration:none;transform:translateY(-200%);transition-property:transform;transition-duration:var(--dur-fast);transition-timing-function:var(--ease)}.skip-link[data-v-fffa8bce]:focus-visible,.skip-link[data-v-fffa8bce]:focus{transform:translateY(0)}.sidebar[data-v-fffa8bce]{position:sticky;inset-block-start:0;align-self:start;display:flex;flex-direction:column;gap:var(--app-gap-xl);height:100vh;height:100dvh;padding:22px 14px 18px;background:var(--surface);border-inline-end:1px solid var(--line)}.brand[data-v-fffa8bce]{display:flex;align-items:center;gap:.5rem;padding-inline:.5rem;color:var(--text);text-decoration:none}.brand-name[data-v-fffa8bce]{font-family:var(--font-display);font-size:.9375rem;font-weight:var(--display-weight);letter-spacing:var(--display-track)}.app-logo[data-v-fffa8bce]{height:28px;width:auto;outline:1px solid oklch(1 0 0 / .1);outline-offset:-1px;border-radius:var(--radius-s)}.nav[data-v-fffa8bce]{display:flex;flex-direction:column;gap:2px}.nav-link[data-v-fffa8bce]{display:flex;align-items:center;gap:.625rem;min-height:40px;padding:.4375rem .625rem;font-size:.875rem;font-weight:500;color:var(--text-2);text-decoration:none;border-radius:var(--radius-s);transition-property:background-color,color;transition-duration:var(--dur-fast);transition-timing-function:var(--ease)}.nav-icon[data-v-fffa8bce]{width:18px;height:18px;flex:0 0 18px;color:var(--muted);transition-property:color;transition-duration:var(--dur-fast);transition-timing-function:var(--ease)}.nav-link[data-v-fffa8bce]:hover{color:var(--text);background:var(--raised)}.nav-link:hover .nav-icon[data-v-fffa8bce]{color:var(--text-2)}.nav-link.is-active[data-v-fffa8bce]{color:var(--text);background:var(--accent-soft)}.nav-link.is-active .nav-icon[data-v-fffa8bce]{color:var(--accent)}.account[data-v-fffa8bce]{display:flex;flex-direction:column;gap:.25rem;margin-block-start:auto;padding-block-start:.75rem;border-block-start:1px solid var(--line)}.account-name[data-v-fffa8bce]{padding-inline:.5rem;font-family:var(--font-mono);font-size:.75rem;color:var(--muted);overflow-wrap:anywhere}.account-out[data-v-fffa8bce]{justify-content:flex-start;min-height:36px;padding-inline:.5rem;font-size:.8125rem}.main[data-v-fffa8bce]{display:flex;flex-direction:column;min-width:0}.topbar[data-v-fffa8bce]{display:none}.content[data-v-fffa8bce]{width:100%;max-width:var(--app-content);margin-inline:auto;padding:40px 36px 64px}.content[data-v-fffa8bce]:focus{outline:none}.page-head[data-v-fffa8bce]{display:flex;flex-direction:column;gap:.375rem;margin-block-end:var(--app-gap-xl)}.page-title[data-v-fffa8bce]{font-size:1.75rem}.page-desc[data-v-fffa8bce]{max-width:62ch;font-size:.9375rem;color:var(--text-2);text-wrap:pretty}.scrim[data-v-fffa8bce]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:color-mix(in oklab,var(--bg) 70%,transparent)}.drawer[data-v-fffa8bce]{position:fixed;inset-block:0;inset-inline-start:0;z-index:50;display:flex;flex-direction:column;gap:var(--app-gap-lg);width:min(86vw,300px);padding:16px 14px 18px;overflow-y:auto;background:var(--raised);border-inline-end:1px solid var(--line);box-shadow:var(--shadow-2)}.drawer-head[data-v-fffa8bce]{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.drawer-head .brand[data-v-fffa8bce]{padding-inline:0}.drawer .account[data-v-fffa8bce]{margin-block-start:auto}.drawer-enter-active[data-v-fffa8bce]{transition-property:transform,opacity;transition-duration:var(--dur-base);transition-timing-function:var(--ease)}.drawer-leave-active[data-v-fffa8bce]{transition-property:transform,opacity;transition-duration:var(--dur-fast);transition-timing-function:var(--ease)}.drawer-enter-from[data-v-fffa8bce],.drawer-leave-to[data-v-fffa8bce]{transform:translate(-100%);opacity:.4}.scrim-enter-active[data-v-fffa8bce]{transition-property:opacity;transition-duration:var(--dur-base);transition-timing-function:var(--ease)}.scrim-leave-active[data-v-fffa8bce]{transition-property:opacity;transition-duration:var(--dur-fast);transition-timing-function:var(--ease)}.scrim-enter-from[data-v-fffa8bce],.scrim-leave-to[data-v-fffa8bce]{opacity:0}.page-enter-active[data-v-fffa8bce]{transition-property:opacity,transform;transition-duration:var(--dur-base);transition-timing-function:var(--ease)}.page-leave-active[data-v-fffa8bce]{transition-property:opacity,transform;transition-duration:var(--dur-fast);transition-timing-function:var(--ease)}.page-enter-from[data-v-fffa8bce]{opacity:0;transform:translateY(8px)}.page-leave-to[data-v-fffa8bce]{opacity:0;transform:translateY(-6px)}@media(max-width:899px){.shell[data-v-fffa8bce]{grid-template-columns:minmax(0,1fr)}.sidebar[data-v-fffa8bce]{display:none}.topbar[data-v-fffa8bce]{position:sticky;inset-block-start:0;z-index:30;display:flex;align-items:center;gap:.75rem;min-height:var(--app-topbar);padding:8px 16px;background:var(--surface);border-block-end:1px solid var(--line)}.topbar-name[data-v-fffa8bce]{font-family:var(--font-display);font-size:.9375rem;font-weight:var(--display-weight);letter-spacing:var(--display-track)}.topbar-logo[data-v-fffa8bce]{margin-inline-start:auto}.menu-toggle[data-v-fffa8bce]{display:inline-flex;align-items:center;gap:.4375rem;min-height:44px;padding:0 .75rem;font-family:var(--font-body);font-size:.875rem;font-weight:500;color:var(--text-2);background:var(--raised);border:1px solid var(--line-strong);border-radius:var(--radius-s);cursor:pointer;transition-property:background-color,color,scale;transition-duration:var(--dur-fast);transition-timing-function:var(--ease)}.menu-toggle[data-v-fffa8bce]:hover{color:var(--text)}.menu-toggle[data-v-fffa8bce]:active{scale:.97}.menu-toggle svg[data-v-fffa8bce]{width:1.125rem;height:1.125rem}.drawer-close[data-v-fffa8bce]{background:transparent;border-color:transparent;padding-inline:.5rem}.content[data-v-fffa8bce]{padding:22px 16px 48px}.page-head[data-v-fffa8bce]{margin-block-end:var(--app-gap-lg)}.page-title[data-v-fffa8bce]{font-size:1.5rem}}@media(max-width:359px){.menu-toggle span[data-v-fffa8bce]{display:none}.menu-toggle[data-v-fffa8bce]{min-width:44px;justify-content:center}}:root{--app-sidebar: 248px;--app-content: 1180px;--app-gap: 16px;--app-gap-lg: 24px;--app-gap-xl: 32px;--app-pad: 20px;--app-topbar: 60px}*,*:before,*:after{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:1rem;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}#app{min-height:100vh;min-height:100dvh}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:var(--display-track);line-height:1.15;text-wrap:balance}p{margin:0}a{color:var(--accent-text)}::selection{background:var(--accent-soft);color:var(--text)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:.5rem .875rem;font-family:var(--font-body);font-size:.875rem;font-weight:500;line-height:1.2;white-space:nowrap;color:var(--text-2);background:var(--raised);border:1px solid var(--line-strong);border-radius:var(--radius-s);cursor:pointer;transition-property:background-color,border-color,color,box-shadow,scale;transition-duration:var(--dur-fast);transition-timing-function:var(--ease)}.btn:hover{color:var(--text);background:var(--surface);border-color:var(--line-strong)}.btn:active{scale:.97}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn-primary{color:var(--on-accent);background:var(--grad-accent);border-color:transparent;box-shadow:var(--shadow-1)}.btn-primary:hover{color:var(--on-accent);background:var(--grad-accent);box-shadow:var(--glow)}.btn-quiet{color:var(--text-2);background:transparent;border-color:transparent}.btn-quiet:hover{color:var(--text);background:var(--surface);border-color:transparent}.btn-danger{color:var(--err);background:transparent;border-color:var(--line-strong)}.btn-danger:hover{color:var(--err);background:var(--surface);border-color:var(--err)}.btn svg{width:1.125rem;height:1.125rem;flex:0 0 auto}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
