:root{--brand:#0d9488;--brand-light:#14b8a6;--brand-bg:#f0fdfa;--brand-gradient:linear-gradient(145deg, #0d9488, #14b8a6);--radius:12px;--radius-lg:16px;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 24px #0d94881f;--text-primary:#1e293b;--text-secondary:#475569;--text-muted:#94a3b8;--bg-body:#f0fdfa;--bg-card:#ffffffeb}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-body);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#0d94880d 0%,#0000 70%);border-radius:50%;width:450px;height:450px;position:fixed;top:-150px;left:-150px}body:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#14b8a60a 0%,#0000 70%);border-radius:50%;width:350px;height:350px;position:fixed;bottom:-100px;right:-100px}.gradient-header{background:linear-gradient(135deg,#0d9488 0%,#0f766e 35%,#14b8a6 65%,#2dd4bf 100%) 0 0/300% 300%;animation:8s infinite gradientShift;position:relative;overflow:hidden}.gradient-header:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff1f 0%,#0000 70%);border-radius:50%;width:180px;height:180px;position:absolute;top:-40%;right:-25%}.gradient-header:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff14 0%,#0000 70%);border-radius:50%;width:140px;height:140px;position:absolute;bottom:-35%;left:-15%}@keyframes gradientShift{0%,to{background-position:0%}50%{background-position:100%}}.glass-card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);border:1px solid #fffc;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0d94880a,0 1px 3px #0000000a}.glass-card:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0d948814,0 2px 6px #0000000f}.glass-card:active{transform:scale(.99)translateY(0)}.glass-detail{border-radius:var(--radius-lg);background:#fff;border:1px solid #f1f5f9;box-shadow:0 2px 12px #0d94880f,0 1px 4px #0000000a}.article-card{border-radius:var(--radius-lg);cursor:pointer;background:#fff;border:1px solid #f1f5f9;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 4px #00000008}.article-card:hover{border-color:#ccfbf1;transform:translateY(-1px);box-shadow:0 4px 16px #0d948814,0 2px 6px #0000000f}.article-card:active{transform:scale(.99)translateY(0)}.article-content{color:var(--text-secondary);font-size:16px;line-height:1.8}.article-content p{margin-bottom:14px}.article-content strong{color:var(--text-primary)}.fade-in{animation:.35s fadeIn}.slide-up{animation:.35s slideUp}@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)}}.cat-scroll{scrollbar-width:none;-ms-overflow-style:none}.cat-scroll::-webkit-scrollbar{display:none}button{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}button:active{transform:scale(.96)}input::placeholder{color:#ffffff80}.toast{border-radius:var(--radius);z-index:1000;box-shadow:var(--shadow-lg);padding:12px 24px;font-size:14px;font-weight:500;animation:.3s slideDown;position:fixed;top:20px;left:50%;transform:translate(-50%)}.toast-success{color:#166534;background:#dcfce7;border:1px solid #bbf7d0}.toast-error{color:#9d174d;background:#fce7f3;border:1px solid #fbcfe8}.toast-loading{color:#0f766e;background:#f0fdfa;border:1px solid #99f6e4}.toast-loading:after{content:"";vertical-align:middle;border:2px solid #0f766e;border-top-color:#0000;border-radius:50%;width:12px;height:12px;margin-left:8px;animation:.6s linear infinite spin;display:inline-block}@keyframes slideDown{0%{opacity:0;transform:translate(-50%)translateY(-12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;border-radius:8px;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.welcome-banner{border-radius:var(--radius-lg);background:linear-gradient(135deg,#0d94880f,#14b8a60a);border:1px solid #0d948814;align-items:center;gap:14px;margin-bottom:16px;padding:16px 20px;display:flex}.welcome-banner .welcome-icon{flex-shrink:0;font-size:32px}.welcome-banner .welcome-text{color:#475569;font-size:14px;line-height:1.6}.welcome-banner .welcome-text strong{color:#0d9488;font-weight:600}@media (width<=430px){.gradient-header{border-radius:0 0 24px 24px!important;margin-left:-16px!important;margin-right:-16px!important;padding:28px 16px 24px!important}.glass-detail{padding:18px!important}.article-card{padding:14px!important}}@media (width<=375px){.cat-scroll button{padding:7px 14px!important;font-size:12px!important}}.bottom-nav{padding:6px 0 calc(6px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(20px);z-index:100;background:#fffffff2;border-top:1px solid #e2e8f080;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav:before{content:"";background:linear-gradient(90deg,#0000,#0d94884d,#0000);height:1px;position:absolute;top:0;left:10%;right:10%}.bottom-nav a,.bottom-nav span{color:#94a3b8;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:6px 14px;font-size:11px;text-decoration:none;transition:all .2s;display:flex;position:relative}.bottom-nav a:active{background:#0d948814;transform:scale(.93)}.bottom-nav .active{color:var(--brand);font-weight:600}.bottom-nav .active:after{content:"";background:var(--brand);border-radius:0 0 3px 3px;width:20px;height:3px;position:absolute;top:-6px;left:50%;transform:translate(-50%)}.nav-icon{font-size:20px;line-height:1;transition:transform .2s}.bottom-nav .active .nav-icon{transform:scale(1.1)}
