/* 外壳：顶部栏（平板/电脑）+ 底部标签栏（手机）。学习页隐藏外壳以获得沉浸感 */
body{padding-bottom:calc(var(--tab-h) + env(safe-area-inset-bottom))}
.top{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:16px;height:var(--top-h);padding:0 16px;background:rgba(15,17,21,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.brand{font-weight:700;font-size:18px;text-decoration:none;letter-spacing:.5px}
.brand small{font-size:10px;color:var(--muted);font-weight:400;border:1px solid var(--line);padding:0 4px;border-radius:4px;margin-left:6px;vertical-align:2px}
.topnav{display:none;gap:4px}
.topnav a,.tabbar a{text-decoration:none;color:var(--muted);border-radius:999px;transition:color var(--t-fast),background var(--t-fast)}
.topnav a{padding:7px 14px}
.topnav a.on{color:var(--fg);background:var(--surface-2)}
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;background:rgba(24,27,34,.96);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:4px 8px env(safe-area-inset-bottom);height:calc(var(--tab-h) + env(safe-area-inset-bottom))}
.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:11px}
.tabbar a.on{color:var(--accent-ink)}
.acct{display:none;font-size:13px}
#app{min-height:60vh}
#app[aria-busy="true"]>:not(.skel-wrap){opacity:.55;transition:opacity .2s}
body{--demo-lift:var(--tab-h)}
@media (min-width:760px){
  body{padding-bottom:0;--demo-lift:0px}
  .tabbar{display:none}
  .topnav,.acct{display:flex}
}
body.in-study{padding-bottom:0}
body.in-study .top,body.in-study .tabbar{display:none}
body.in-study{--demo-lift:var(--dock-h,140px);--toast-lift:var(--dock-h,140px)}
