*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;height:100%;font-family:DM Sans,system-ui,-apple-system,sans-serif}body{background:linear-gradient(135deg,#f5f3ef,#ece8e1);display:flex;align-items:center;justify-content:center;min-height:100vh;overflow:hidden}#app-frame{width:100%;height:100%;max-width:420px;max-height:900px;background:#fff;box-shadow:0 30px 80px #00000026,0 10px 30px #00000014;border-radius:0;overflow:hidden;position:relative}@media(min-width:480px){#app-frame{border-radius:36px;border:8px solid #111}}@media(max-width:479px){body{background:#fff}#app-frame{max-width:100%;max-height:100%}}::-webkit-scrollbar{display:none}*{scrollbar-width:none;-ms-overflow-style:none}.toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:#111;color:#fff;padding:12px 20px;border-radius:14px;font-size:13px;font-weight:600;z-index:9999;animation:toastIn .3s ease-out,toastOut .3s ease-in 1.7s forwards;box-shadow:0 10px 30px #00000040}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}@keyframes toastOut{to{opacity:0;transform:translate(-50%,20px)}}button,input{font-family:inherit}.glass-nav,.glass-home-button,.glass-compose-button{position:absolute;bottom:18px;z-index:40;border:0;-webkit-backdrop-filter:blur(28px) saturate(210%) brightness(1.12);backdrop-filter:blur(28px) saturate(210%) brightness(1.12);box-shadow:0 16px 38px #1f182e2e,0 3px 8px #1f182e14,inset 0 3px 4px #ffffffc7,inset 2px 0 3px #ffffff47,inset 0 -4px 7px #4630691f}.glass-nav{left:14px;right:78px;height:62px;padding:5px;border-radius:31px;display:flex;align-items:stretch;background:radial-gradient(ellipse 95% 70% at 50% -12%,rgba(255,255,255,.82) 0%,rgba(255,255,255,.16) 58%,transparent 72%),linear-gradient(180deg,#fff6,#f4effc2e 55%,#d3c7e84d);animation:glassNavOpen .28s cubic-bezier(.22,.8,.22,1);transform-origin:left center}.glass-nav-dark{background:radial-gradient(ellipse 95% 70% at 50% -12%,rgba(255,255,255,.45),rgba(255,255,255,.08) 58%,transparent 72%),linear-gradient(180deg,#48405457,#120f1947)}.glass-nav-item{min-width:0;flex:1;position:relative;border:0;border-radius:25px;background:transparent;color:#35333b;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;transition:background .22s ease,transform .22s ease}.glass-nav-item:active{transform:scale(.94)}.glass-nav-item.is-active{background:radial-gradient(ellipse 90% 70% at 50% 0%,rgba(255,255,255,.68),transparent 70%),linear-gradient(180deg,#ffffff57,#e2d8f238);box-shadow:inset 0 2px 2px #ffffffa3,inset 0 -2px 4px #5a3e801a,0 5px 14px #5334821a}.glass-nav-item span:not(.glass-nav-badge):not(.glass-nav-dot){max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8.5px;line-height:1.05;font-weight:700}.glass-nav-badge{position:absolute;top:3px;right:8px;min-width:16px;height:16px;padding:0 4px;border-radius:9px;background:#ef4444;color:#fff;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center}.glass-nav-dot{position:absolute;top:6px;right:11px;width:8px;height:8px;border-radius:50%;background:#ef4444}.glass-home-button,.glass-compose-button{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;animation:glassButtonIn .24s cubic-bezier(.22,.8,.22,1);transition:transform .18s ease}.glass-home-button{left:14px;background:radial-gradient(circle at 50% 8%,rgba(255,255,255,.88),rgba(255,255,255,.12) 58%,transparent 72%),linear-gradient(180deg,#ffffff5c,#ded3f047)}.glass-compose-button{right:14px;z-index:41;background:radial-gradient(circle at 50% 7%,rgba(255,255,255,.46),transparent 58%),linear-gradient(180deg,#c084fccc,#6d28d9c2);box-shadow:0 14px 32px #6d28d94d,0 3px 8px #4b1f8f26,inset 0 3px 4px #ffffff7a,inset 0 -4px 7px #4014822e}.glass-home-button:active,.glass-compose-button:active{transform:scale(.92)}@keyframes glassNavOpen{0%{opacity:0;transform:scaleX(.2)}to{opacity:1;transform:scaleX(1)}}@keyframes glassButtonIn{0%{opacity:0;transform:scale(.72)}to{opacity:1;transform:scale(1)}}@keyframes pulseDot{0%,to{opacity:1}50%{opacity:.35}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(-24px);opacity:0}to{transform:translateY(0);opacity:1}}
