.shell{height:100%;display:flex;flex-direction:column}.shell-topbar{--shell-topbar-h: 52px;position:relative;z-index:40;flex:0 0 var(--shell-topbar-h);display:flex;align-items:center;gap:24px;padding:0 16px;padding-top:env(safe-area-inset-top,0px);background:color-mix(in srgb,var(--surface-chrome) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.shell-brand{display:flex;align-items:center;gap:8px;color:var(--accent);flex-shrink:0}.shell-wordmark{font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.18em;color:var(--text-hi);margin-right:-.18em}.shell-topbar-right{margin-left:auto;display:flex;align-items:center;gap:12px}.shell-anon{font-family:var(--font-data);font-size:12px;color:var(--text-dim)}.shell-switcher{display:flex;align-items:stretch;gap:2px}.shell-switch{font-family:var(--font-data);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);padding:7px 14px;border:1px solid transparent;clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,7px 100%,0 calc(100% - 7px));transition:color .15s,background .15s,border-color .15s}.shell-switch:hover{color:var(--text-mid);background:color-mix(in srgb,var(--accent) 6%,transparent)}.shell-switch.is-on{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.shell-surface{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.shell-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--font-data);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}.surface-stub{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;gap:10px;max-width:46ch;margin:0 auto;padding:0 24px;background:var(--surface-canvas)}.surface-stub h1{font-family:var(--font-display);font-weight:700;font-size:22px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-hi);margin:0}.surface-stub p{margin:0;color:var(--text-mid);line-height:1.6}.surface-stub-note{font-family:var(--font-data);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)!important}@media (max-width: 640px){.shell-wordmark{display:none}.shell-topbar{gap:12px;padding:0 10px}.shell-switch{padding:7px 10px}}.scroll-fade{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 28px),transparent 100%);mask-image:linear-gradient(to bottom,#000 calc(100% - 28px),transparent 100%)}.scroll-fade::-webkit-scrollbar{width:10px}.scroll-fade::-webkit-scrollbar-track{background:transparent}.scroll-fade::-webkit-scrollbar-thumb{background:var(--line-strong);border:3px solid transparent;background-clip:content-box}.drawer{position:relative;overflow:visible;z-index:30;flex:0 0 auto;display:flex;flex-direction:column;background:color-mix(in srgb,var(--surface-chrome) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px)}.drawer.is-half{height:48vh}.drawer.is-peek{height:auto}.drawer-head{display:flex;align-items:center;gap:16px;padding:0 16px;border-bottom:1px solid var(--line-subtle);flex:0 0 auto}.drawer-grip{position:absolute;top:-14px;left:50%;transform:translate(-50%);width:64px;height:26px;display:grid;place-items:center;color:var(--text-mid);background:color-mix(in srgb,var(--surface-chrome) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);border-bottom:0;clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 100%,0 100%);transition:color .15s,border-color .15s}.drawer-grip svg{width:20px;height:12px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:bevel;stroke-linecap:butt}.drawer-grip:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.drawer-tabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}.drawer-tabs::-webkit-scrollbar{display:none}.drawer-tab{font-family:var(--font-data);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);padding:12px 12px 10px;border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s,border-color .15s}.drawer-tab:hover{color:var(--text-mid)}.drawer-tab.is-on{color:var(--accent);border-bottom-color:var(--accent)}.drawer-head-right{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}.drawer-open-table{font-family:var(--font-data);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);padding:6px 10px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px));transition:background .15s,border-color .15s}.drawer-open-table:hover{background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 55%,transparent)}.drawer-body{flex:1 1 auto;min-height:0;padding:16px 16px 28px}.drawer-empty{margin:0;max-width:62ch;color:var(--text-dim);line-height:1.6}.drawer-peek{display:flex;align-items:baseline;gap:10px;width:100%;padding:0 16px 10px;text-align:left}.drawer-peek-label{font-family:var(--font-data);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-mid)}.drawer-peek-value{font-family:var(--font-data);font-size:12px;color:var(--text-dim)}@media (max-width: 640px){.drawer.is-half{height:62vh}}.shell-search-slot{flex:1 1 auto;min-width:0;max-width:420px;position:relative}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-family);line-height:1.6;color:var(--text-hi);background-color:var(--surface-chrome);color-scheme:dark;overflow:hidden}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:0;margin:0;color:inherit;font:inherit;cursor:pointer}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
