*,:before,:after{box-sizing:border-box}html{overflow-x:hidden}body{-webkit-font-smoothing:antialiased;background:#f1f5f9;min-width:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}button,input,select,textarea{max-width:100%}input,select,textarea{scroll-margin-block:140px}img,svg,canvas{max-width:100%}@media (width<=768px){input,select,textarea{font-size:16px!important}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes waterFlow{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes welcomeFade{0%{opacity:0;transform:scale(1.04)}16%{opacity:1;transform:scale(1)}78%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.02)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes toastIn{0%{opacity:0;transform:translate(110%)}to{opacity:1;transform:translate(0)}}@keyframes toastOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(110%)}}@keyframes checkmark{0%{stroke-dashoffset:50px}to{stroke-dashoffset:0}}@keyframes rippleOut{to{opacity:0;transform:scale(4)}}.hero-water{background:linear-gradient(135deg,#0a2342 0%,#0d3060 30%,#1a4480 50%,#0d3060 70%,#0a2342 100%) 0 0/300% 300%;animation:10s infinite waterFlow;position:relative;overflow:hidden}.hero-water:after{content:"";pointer-events:none;background:radial-gradient(at 20% 80%,#60c8ff14 0%,#0000 60%),radial-gradient(at 80% 20%,#ffffff0d 0%,#0000 50%);position:absolute;inset:0}.section-enter{animation:.25s cubic-bezier(.4,0,.2,1) both fadeIn}.card-lift{transition:transform .18s,box-shadow .18s}.card-lift:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001a}.card-lift:active{transform:translateY(0)}.btn-ripple{position:relative;overflow:hidden}.btn-ripple:after{content:"";opacity:0;background:radial-gradient(circle,#ffffff4d 10%,#0000 10%) 50% no-repeat;transition:transform .5s,opacity .8s;position:absolute;inset:0;transform:scale(10)}.btn-ripple:active:after{opacity:.4;transition:all;transform:scale(0)}.toast-wrap{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:88px;right:16px}.toast{color:#fff;pointer-events:all;background:#0f172a;border-radius:12px;align-items:center;gap:8px;max-width:260px;padding:10px 14px;font-size:13px;font-weight:600;animation:.3s both toastIn;display:flex;box-shadow:0 8px 24px #0000004d}.toast.success{border-left:4px solid #22c55e}.toast.error{border-left:4px solid #ef4444}.toast.info{border-left:4px solid #3b82f6}.toast.out{animation:.3s both toastOut}.modal-slide{animation:.28s cubic-bezier(.4,0,.2,1) both slideUp}.bar-fill{transition:width .7s cubic-bezier(.4,0,.2,1)}.skeleton{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;border-radius:8px;animation:1.5s infinite shimmer}.check-stroke{stroke:#22c55e;stroke-dasharray:50;stroke-dashoffset:50px;animation:.5s forwards checkmark}.drop{animation:3s ease-in-out infinite float}.drop:nth-child(2){animation-delay:.6s}.drop:nth-child(3){animation-delay:1.2s}.drop:nth-child(4){animation-delay:1.8s}.fade-in{animation:.3s both fadeIn}.spin{animation:.8s linear infinite spin}.pulse{animation:1.5s ease-in-out infinite pulse}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{color:#fff;font-weight:650}#root,#root div,#root span,#root p,#root label,#root button,#root input,#root select,#root textarea,#root th,#root td,#root li{text-shadow:0 1px 3px #00000047;font-weight:650!important}#root h1,#root h2,#root h3,#root strong,#root b,#root button{font-weight:800!important}#root input,#root select,#root textarea{text-shadow:none}#root input::placeholder,#root textarea::placeholder{color:#ffffffd1;font-weight:650}.app-update-notice{left:12px;right:12px;top:max(10px, env(safe-area-inset-top));z-index:120;color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#081937f2;border:1px solid #7dd3fc73;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex;position:fixed;box-shadow:0 14px 38px #00000059}.app-update-notice strong{font-size:13px;display:block}.app-update-notice span{color:#ffffffc2;font-size:12px;display:block}.app-update-notice button{color:#08203d;white-space:nowrap;background:#60c8ff;border:0;border-radius:10px;padding:8px 12px;font-weight:900!important}@media (width<=720px){:root{--mobile-pad:clamp(8px, 3vw, 14px)}body{touch-action:manipulation}.app-shell{min-height:100dvh!important}.app-topbar{padding:max(8px, env(safe-area-inset-top)) var(--mobile-pad) 8px!important;align-items:center!important;gap:8px!important}.app-brand{flex:auto;min-width:0}.app-brand>span{font-size:18px!important}.app-brand div div:first-child{text-overflow:ellipsis;white-space:nowrap;max-width:42vw;overflow:hidden}.app-top-actions{flex:none;gap:6px!important}.app-top-actions>span[title]{max-width:62px}.app-top-actions>span:not([title]){display:none!important}.app-top-actions button{min-height:34px;padding:6px 9px!important;font-size:11px!important}.app-content{padding-bottom:calc(86px + env(safe-area-inset-bottom))!important}.app-content>.section-enter>div{padding:var(--mobile-pad)!important}.more-drawer{max-height:min(68dvh,520px)!important;padding:10px var(--mobile-pad) calc(12px + env(safe-area-inset-bottom))!important}.more-drawer>div:last-child{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}.more-drawer button{min-height:56px;border-radius:10px!important;padding:7px 4px!important}.more-drawer button span:first-child{font-size:18px!important}.more-drawer button span:last-child{font-size:9px!important;line-height:1.1!important}.bottom-nav{padding-top:6px!important;padding-bottom:max(7px, env(safe-area-inset-bottom))!important}.bottom-nav button{flex:1 1 0;min-width:0!important;padding:3px 2px!important}.bottom-nav button span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden;font-size:clamp(8px,2.3vw,10px)!important}#root [style*=grid-template-columns]:not(.more-menu-grid){grid-template-columns:1fr!important}#root .more-menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;display:grid!important}#root .more-menu-tile{width:100%!important}#root [style*="width: min(720px"],#root [style*="width:min(720px"],#root [style*="maxWidth: 720px"],#root [style*=max-width\:720px]{width:calc(100vw - 16px)!important}#root [style*=borderRadius\:18],#root [style*=border-radius\:18]{border-radius:14px!important}#root table,#root .recharts-responsive-container{max-width:100%!important}#root table{font-size:12px!important}#root th,#root td{padding:7px 8px!important}#root button{min-height:38px}.toast-wrap{left:10px;right:10px;bottom:calc(82px + env(safe-area-inset-bottom))}.toast{width:100%;max-width:none}}@media (width<=420px){.app-brand div div:first-child{max-width:36vw}.app-update-notice{flex-direction:column;align-items:stretch}.app-update-notice button{width:100%}}
