.footernav{z-index:100;background:var(--surface-2);border-top:2px solid var(--border);padding-bottom:env(safe-area-inset-bottom,0);display:none;position:fixed;bottom:0;left:0;right:0}.footernav__list{align-items:stretch;max-width:32rem;margin:0 auto;padding:0;list-style:none;display:flex}.footernav__item{flex:1 1 0;display:flex}.footernav__link{min-height:56px;color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:6px 4px;font-size:11px;font-weight:600;line-height:1;text-decoration:none;transition:color .15s;display:flex}.footernav__link--active{color:var(--accent-text)}.footernav__link:hover,.footernav__link:focus-visible{text-decoration:none}.footernav__link--active:hover,.footernav__link--active:focus-visible{color:var(--accent-text)}.footernav__icon{display:block}.footernav__label{line-height:1}@media (hover:hover){.footernav__link:not(.footernav__link--active):hover{color:var(--text)}}@media (width<=720px){.footernav{display:block}}.navbar{z-index:2;background:0 0;padding:0 24px;position:relative}.navbar__inner{justify-content:space-between;align-items:center;gap:24px;width:100%;max-width:72rem;min-height:68px;margin:0 auto;padding:12px 0;display:flex}.navbar__left{align-items:center;gap:48px;min-width:0;display:flex}.navbar__brand{flex-shrink:0;display:inline-flex}.navbar__nav{align-items:center;gap:40px;display:flex}.navbar__link{font-family:var(--font-heading);white-space:nowrap;color:var(--text);font-size:16px;font-weight:600;text-decoration:none;transition:color .15s}.navbar__link:hover{color:var(--accent-text);text-decoration:none}.navbar__link--active{color:var(--accent-text)}.navbar__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.navbar__icon-btn{border-radius:var(--radius);color:var(--text-muted);background:0 0;justify-content:center;align-items:center;padding:10px;text-decoration:none;transition:color .15s,background-color .15s;display:inline-flex}.navbar__icon-btn:hover{color:var(--text);background:var(--surface-2)}.navbar__icon-btn--active{color:var(--accent-text);background:color-mix(in srgb, var(--accent-text) 12%, transparent)}.logout-confirm{z-index:100;background:#00000080;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.logout-confirm__card{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);width:100%;max-width:24rem;box-shadow:var(--shadow-lg,0 10px 30px #00000059);color:var(--text);padding:24px}.logout-confirm__title{font-family:var(--font-heading);margin:0 0 8px;font-size:20px}.logout-confirm__text{color:var(--text-muted);margin:0 0 20px;font-size:14px}.logout-confirm__actions{justify-content:flex-end;gap:12px;display:flex}@media (width<=720px){.navbar{padding:0 16px}.navbar__inner{gap:12px}.navbar__nav,.navbar__settings-link,.navbar__analytics-link{display:none}}.appshell{isolation:isolate;min-height:100dvh;color:var(--text);font-family:var(--font-body);background:0 0;flex-direction:column;display:flex;position:relative}.appshell:before{z-index:0;pointer-events:none;content:"";background:linear-gradient(180deg, color-mix(in srgb, var(--bg) 94%, transparent) 0%, color-mix(in srgb, var(--bg) 88%, transparent) 42%, color-mix(in srgb, var(--bg) 48%, transparent) 74%, transparent 100%);-webkit-backdrop-filter:blur(18px)saturate(1.1);height:132px;position:absolute;top:0;left:0;right:0}.appshell--immersive:before{display:none}.appshell--center{justify-content:center;align-items:center}.appshell__loading{color:var(--text-muted);font-size:14px}.appshell__main{z-index:1;flex:1;width:100%;max-width:1024px;margin:0 auto;padding:32px 24px;position:relative}@media (width<=720px){.appshell__main{padding-bottom:calc(76px + env(safe-area-inset-bottom,0))}}.appshell__banner{z-index:2;background:var(--warning-surface);border-bottom:1px solid var(--warning-border);color:var(--warning-text);justify-content:space-between;align-items:center;gap:16px;padding:12px 24px;display:flex;position:relative}.appshell__banner-text{margin:0;font-size:14px}.appshell__banner-retry{border-radius:var(--radius);color:inherit;background:var(--warning-border);flex-shrink:0;padding:6px 12px;font-size:12px;font-weight:600;transition:background-color .15s}.appshell__banner-retry:hover{filter:brightness(.95)}
