.app-shell{background:var(--color-bg);flex-direction:column;min-height:100dvh;display:flex}.app-nav{border-bottom:1px solid var(--color-divider);justify-content:space-between;align-items:center;gap:20px;padding:18px 34px;display:flex}.app-nav-left{align-items:center;gap:34px;min-width:0;display:flex}.app-nav-brand{font-family:var(--font-heading);color:inherit;white-space:nowrap;align-items:center;gap:10px;font-size:17px;text-decoration:none;display:flex}.app-nav-links{gap:22px;font-size:14px;font-weight:600;display:flex}.app-nav-links a{color:var(--color-neutral-700);padding-bottom:3px;text-decoration:none}.app-nav-links a:hover{color:var(--color-accent-700)}.app-nav-links a[data-active=true]{color:var(--color-accent-700);border-bottom:2px solid var(--color-accent)}.app-nav-right{align-items:center;gap:14px;display:flex}.app-main{flex:1;width:100%;padding:34px}.app-page{max-width:1280px;margin:0 auto}body:has(.room){background:var(--color-neutral-900)}.app-shell:has(.room){background:var(--color-neutral-900)}.app-shell:has(.room) .app-main{padding:0}.app-shell:has(.room) .app-page{width:100%;max-width:none;margin:0}@media (min-width:1181px){.app-shell:has(.room){height:100dvh;overflow:hidden}:is(.app-shell:has(.room) .app-main,.app-shell:has(.room) .app-page){flex-direction:column;min-height:0;display:flex}.app-shell:has(.room) .app-page{flex:1}}:is(.app-shell:has(.room) .app-nav,.app-shell:has(.room) .app-tabbar,.app-shell:has(.room) .ticker),.app-tabbar{display:none}.page-head{margin-bottom:26px}.page-head h1{margin:0 0 6px;font-size:36px}.page-head p{color:var(--color-neutral-800);max-width:62ch;margin:0;font-size:15px}.placeholder{background:var(--color-surface);border-radius:var(--radius-lg);flex-direction:column;align-items:flex-start;gap:12px;padding:40px;display:flex}.placeholder h2{margin:0;font-size:22px}.placeholder p{color:var(--color-neutral-700);max-width:56ch;margin:0;font-size:14px}@media (max-width:720px){.app-nav{padding:14px 20px}.app-nav-links{display:none}.app-main{padding:20px 20px 84px}.app-tabbar{padding:14px 26px calc(14px + env(safe-area-inset-bottom));background:var(--color-bg);border-top:1px solid var(--color-divider);color:var(--color-neutral-600);z-index:20;justify-content:space-between;font-size:11px;display:flex;position:fixed;bottom:0;left:0;right:0}.app-tabbar a{color:inherit;text-decoration:none}.app-tabbar a[data-active=true]{color:var(--color-accent-700);font-weight:700}}
