.app-header,body{color:var(--text-color)}.app-header,.nav-bar{position:relative;z-index:1000}:root{--bg-top:#20205c;--bg-bottom:#48328b;--header-top:#4264d8;--header-bottom:#3046a5;--footer-top:#30236d;--footer-bottom:#21184f;--accent-color:#ffd700;--border-color:rgba(255, 215, 0, 0.45);--text-color:#ffffff;--app-width:100%;--app-max-width:480px}*{box-sizing:border-box}body,html{width:100%;height:100%;margin:0;padding:0;overflow:hidden}body{font-family:Poppins,sans-serif;background:#111;-webkit-text-size-adjust:100%}.app-container{width:var(--app-width);max-width:var(--app-max-width);height:100vh;height:100dvh;min-height:0;margin:0 auto;position:relative;overflow:hidden;background:linear-gradient(180deg,var(--bg-top) 0,var(--bg-bottom) 100%);display:flex;flex-direction:column}.app-header{flex:0 0 auto;width:100%;top:auto;background:linear-gradient(135deg,var(--header-top),var(--header-bottom));border-bottom:1px solid var(--border-color)}.screen-content{flex:1 1 auto;width:100%;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;padding-bottom:12px;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.nav-bar{flex:0 0 auto;width:100%;bottom:auto;display:flex;align-items:stretch;justify-content:space-around;background:linear-gradient(180deg,var(--footer-top),var(--footer-bottom));border-top:1px solid var(--border-color);padding:7px 4px;padding-bottom:max(7px,env(safe-area-inset-bottom))}.nav-item{flex:1;min-width:0;border:0;border-radius:10px;padding:7px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:0 0;color:rgba(255,255,255,.72);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.nav-icon{font-size:20px;line-height:1.2}.nav-text{font-size:11px;line-height:1.3}.nav-item.active{color:var(--accent-color);background:rgba(255,255,255,.08)}.nav-item:focus-visible{outline:2px solid var(--accent-color);outline-offset:-2px}@media (max-width:360px){.nav-icon{font-size:18px}.nav-text{font-size:10px}}@media (min-width:481px){.app-container{box-shadow:0 0 30px rgba(0,0,0,.35)}}