:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0;min-width:320px;min-height:100vh;overflow-x:hidden;overflow-y:auto}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#f0f8ff80;border-radius:5px;box-shadow:inset 0 0 5px #0000001a}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#2679db,#1a5fb4,#0d3b66);border-radius:5px;box-shadow:0 0 10px #2679db80,inset 0 0 5px #ffffff4d;border:1px solid rgba(255,255,255,.2)}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#3a8ded,#2679db,#1a5fb4);box-shadow:0 0 15px #2679dbcc,inset 0 0 8px #ffffff80}::-webkit-scrollbar-corner{background:#f0f8ff80}html{scrollbar-width:thin;scrollbar-color:#2679db rgba(240,248,255,.5)}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .25s}@media(prefers-color-scheme:light){a:hover{color:#747bff}}:root{--login-bg: #f0f4ff;--login-card-bg: rgba(255, 255, 255, .92);--login-card-border: rgba(99, 130, 255, .18);--login-accent: #4f6ef7;--login-accent-light: #5b7bff;--login-accent-glow: rgba(79, 110, 247, .3);--login-accent-secondary: #8b5cf6;--login-accent-tertiary: #06b6d4;--login-text: #1a2240;--login-text-muted: #5f6888;--login-input-bg: rgba(240, 244, 255, .8);--login-input-border: rgba(99, 130, 255, .2);--login-input-focus: rgba(79, 110, 247, .15);--login-error: #dc2626;--login-success: #059669;--login-card-shadow-1: rgba(79, 110, 247, .1);--login-card-shadow-2: rgba(139, 92, 246, .06);--login-card-shadow-3: rgba(0, 0, 0, .03)}.login-page{min-height:100vh;display:flex;position:relative;overflow:hidden;font-family:Inter,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background:var(--login-bg);color:var(--login-text)}.login-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;background:linear-gradient(135deg,#e0e8ff,#eef2ff,#f5f0ff,#eef5ff,#e8eeff)}.bg-grid{position:absolute;top:-50px;right:-50px;bottom:-50px;left:-50px;background-image:linear-gradient(rgba(79,110,247,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(79,110,247,.07) 1px,transparent 1px);background-size:60px 60px;transition:transform .3s ease-out}.login-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 50% at 20% 40%,rgba(79,110,247,.06) 0%,transparent 70%),radial-gradient(ellipse 60% 80% at 80% 60%,rgba(139,92,246,.05) 0%,transparent 70%);pointer-events:none}.bg-orb{position:absolute;border-radius:50%;filter:blur(80px);transition:transform .5s ease-out}.bg-orb-1{width:600px;height:600px;top:-10%;left:-5%;background:radial-gradient(circle,rgba(79,110,247,.25),rgba(99,130,255,.1) 50%,transparent 70%);animation:orbFloat1 20s ease-in-out infinite}.bg-orb-2{width:500px;height:500px;bottom:-10%;right:-5%;background:radial-gradient(circle,rgba(139,92,246,.2),rgba(168,120,246,.08) 50%,transparent 70%);animation:orbFloat2 25s ease-in-out infinite}.bg-orb-3{width:350px;height:350px;top:40%;left:45%;background:radial-gradient(circle,rgba(6,182,212,.16),rgba(34,211,238,.06) 50%,transparent 70%);animation:orbFloat3 18s ease-in-out infinite}@keyframes orbFloat1{0%,to{transform:translate(0)}33%{transform:translate(40px,30px)}66%{transform:translate(-20px,-40px)}}@keyframes orbFloat2{0%,to{transform:translate(0)}33%{transform:translate(-30px,-20px)}66%{transform:translate(30px,40px)}}@keyframes orbFloat3{0%,to{transform:translate(0)}50%{transform:translate(50px,-30px)}}.login-left{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;z-index:1;padding:60px 12px 60px 40px;opacity:0;transform:translate(-60px);transition:all .8s cubic-bezier(.16,1,.3,1)}.login-left.entered{opacity:1;transform:translate(0)}.left-inner{max-width:480px;width:100%}.brand-logo{position:relative;display:flex;justify-content:center;margin-bottom:28px;perspective:600px}.logo-cube{width:80px;height:80px;position:relative;transform-style:preserve-3d;animation:cubeRotate 12s ease-in-out infinite}@keyframes cubeRotate{0%{transform:rotateX(-15deg) rotateY(0)}25%{transform:rotateX(-15deg) rotateY(90deg)}50%{transform:rotateX(-15deg) rotateY(180deg)}75%{transform:rotateX(-15deg) rotateY(270deg)}to{transform:rotateX(-15deg) rotateY(360deg)}}.cube-face{position:absolute;width:80px;height:80px;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:800;border-radius:18px;border:1px solid rgba(79,110,247,.2);backface-visibility:hidden}.cube-front{background:linear-gradient(135deg,#4f6ef7,#7b93ff);color:#fff;transform:translateZ(40px);box-shadow:0 8px 30px #4f6ef759}.cube-back{background:linear-gradient(135deg,#7b93ff,#4f6ef7);color:#fff;transform:rotateY(180deg) translateZ(40px);box-shadow:0 4px 16px #4f6ef733}.cube-left{background:linear-gradient(135deg,#4f6ef7,#8b5cf6);color:#fff;transform:rotateY(-90deg) translateZ(40px);box-shadow:0 4px 16px #8b5cf633}.cube-right{background:linear-gradient(135deg,#ec4899,#f43f5e);color:#fff;transform:rotateY(90deg) translateZ(40px);box-shadow:0 4px 16px #ec489933}.cube-top{background:linear-gradient(135deg,#06b6d4,#22d3ee);color:#fff;transform:rotateX(90deg) translateZ(40px);box-shadow:0 4px 16px #06b6d433}.logo-ring{position:absolute;top:50%;left:50%;width:110px;height:110px;margin:-55px 0 0 -55px;border:2px solid rgba(79,110,247,.12);border-top-color:#4f6ef780;border-right-color:#8b5cf64d;border-radius:50%;animation:ringRotate 4s linear infinite;box-shadow:0 0 20px #4f6ef714}@keyframes ringRotate{to{transform:rotate(360deg)}}.brand-name{font-size:44px;font-weight:800;text-align:center;letter-spacing:3px;background:linear-gradient(135deg,#2d3a6e,#4f6ef7 40%,#8b5cf6,#06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px;filter:drop-shadow(0 2px 4px rgba(79,110,247,.15))}.brand-slogan{text-align:center;font-size:16px;color:var(--login-text-muted);letter-spacing:6px;font-weight:400;margin-bottom:24px;position:relative}.brand-slogan:after{content:"";display:block;width:40px;height:1px;background:linear-gradient(90deg,transparent,var(--login-accent),transparent);margin:12px auto 0;opacity:.4}.brand-divider{width:60px;height:3px;margin:0 auto 32px;background:linear-gradient(90deg,var(--login-accent),var(--login-accent-secondary),var(--login-accent-tertiary));border-radius:2px;position:relative}.brand-divider:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;background:inherit;border-radius:inherit;filter:blur(6px);opacity:.5}.modules-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.module-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(135deg,#fffc,#f8faffb3);border:1px solid rgba(99,130,255,.12);border-radius:14px;cursor:default;transition:all .35s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;opacity:0;transform:translateY(20px);animation:moduleEnter .5s cubic-bezier(.16,1,.3,1) forwards;animation-delay:var(--delay)}@keyframes moduleEnter{to{opacity:1;transform:translateY(0)}}.module-card:hover{background:#fffffffa;border-color:var(--accent);transform:translateY(-3px) scale(1.02);box-shadow:0 8px 30px #4f6ef71f,0 0 0 1px var(--accent)}.module-card:hover .module-glow{opacity:1}.module-card:hover .module-icon{transform:scale(1.15);background:#4f6ef71f;box-shadow:0 4px 12px #4f6ef726}.module-card:hover .module-name{color:var(--accent)}.module-icon{font-size:26px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#4f6ef71a,#8b5cf60f);border-radius:10px;flex-shrink:0;transition:all .35s cubic-bezier(.16,1,.3,1);border:1px solid rgba(79,110,247,.06)}.module-info{display:flex;flex-direction:column;gap:2px;min-width:0}.module-name{font-size:13.5px;font-weight:600;color:#2d3a6e;transition:color .3s ease}.module-desc{font-size:11.5px;color:var(--login-text-muted)}.module-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 50%,rgba(79,110,247,.06),transparent 70%);opacity:0;transition:opacity .4s;pointer-events:none;z-index:-1}.left-footer{position:absolute;bottom:28px;font-size:12px;color:var(--login-text-muted);opacity:.5;transition:opacity .3s ease}.left-footer:hover{opacity:.7}.login-right{flex:.8;display:flex;justify-content:center;align-items:center;position:relative;z-index:1;padding:40px 40px 40px 8px;opacity:0;transform:translate(60px);transition:all .8s cubic-bezier(.16,1,.3,1) .15s}.login-right.entered{opacity:1;transform:translate(0)}.login-card{width:100%;max-width:440px;background:linear-gradient(170deg,#fffffff5,#f8fafff0 40%,#f5f3ffeb);border:1px solid rgba(99,130,255,.2);border-radius:24px;padding:52px 44px 40px;-webkit-backdrop-filter:blur(40px) saturate(1.5);backdrop-filter:blur(40px) saturate(1.5);box-shadow:0 24px 64px #4f6ef71f,0 8px 24px #8b5cf614,0 2px 8px #0000000a,inset 0 1px #ffffffe6,inset 0 -1px #4f6ef70f;position:relative;overflow:hidden}.login-card:before{content:"";position:absolute;top:0;left:0;right:0;height:200px;background:linear-gradient(180deg,rgba(79,110,247,.06) 0%,rgba(139,92,246,.03) 50%,transparent 100%);pointer-events:none;border-radius:24px 24px 0 0}.login-card:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 30% 20%,rgba(79,110,247,.06) 0%,transparent 40%);pointer-events:none}.login-card.shake{animation:cardShake .5s ease}@keyframes cardShake{0%,to{transform:translate(0)}15%{transform:translate(-8px)}30%{transform:translate(7px)}45%{transform:translate(-6px)}60%{transform:translate(5px)}75%{transform:translate(-3px)}90%{transform:translate(2px)}}.card-top-accent{position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--login-accent),var(--login-accent-secondary),var(--login-accent-tertiary),var(--login-accent-secondary),var(--login-accent));background-size:300% 100%;animation:accentSlide 4s ease-in-out infinite;box-shadow:0 2px 12px #4f6ef74d}@keyframes accentSlide{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.card-header{text-align:center;margin-bottom:40px;padding-top:4px}.card-header-icon{width:64px;height:64px;margin:0 auto 24px;background:linear-gradient(135deg,var(--login-accent) 0%,var(--login-accent-secondary) 100%);border-radius:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 28px var(--login-accent-glow);animation:iconPulse 3s ease-in-out infinite;position:relative}.card-header-icon:after{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border-radius:22px;background:linear-gradient(135deg,var(--login-accent),var(--login-accent-secondary));opacity:.15;filter:blur(14px);z-index:-1;animation:iconPulse 3s ease-in-out infinite}@keyframes iconPulse{0%,to{box-shadow:0 8px 24px var(--login-accent-glow)}50%{box-shadow:0 8px 36px #4f6ef773}}.card-header-icon svg{width:30px;height:30px;color:#fff}.card-header h2{font-size:28px;font-weight:700;color:#1a2240;margin:0;letter-spacing:1px;white-space:nowrap;display:block}.card-header-divider{display:block;width:36px;height:3px;margin:14px auto 12px;background:linear-gradient(90deg,var(--login-accent),var(--login-accent-secondary));border-radius:2px;opacity:.6}.card-header p{display:block;font-size:14px;color:var(--login-text-muted);letter-spacing:1.5px;margin:0;white-space:nowrap}.login-form{display:flex;flex-direction:column;gap:20px}.form-field{position:relative;display:flex;align-items:center}.field-icon{position:absolute;left:16px;width:20px;height:20px;color:#a0a8c4;transition:all .3s ease;z-index:2}.field-icon svg{width:100%;height:100%}.form-field.focused .field-icon{color:var(--login-accent);filter:drop-shadow(0 0 6px var(--login-accent-glow))}.form-field input{width:100%;padding:16px 16px 16px 48px;border:1.5px solid #dde3f0;border-radius:14px;font-size:15px;background:linear-gradient(135deg,#f8faffe6,#f5f3ffb3);color:#1a2240;transition:all .3s cubic-bezier(.16,1,.3,1);outline:none;font-family:inherit}.form-field input::placeholder{color:#a0a8c4;transition:opacity .2s}.form-field input:focus::placeholder{opacity:.4}.form-field input:focus{border-color:var(--login-accent);background:linear-gradient(135deg,#fff,#f8faff);box-shadow:0 0 0 4px var(--login-input-focus),0 4px 16px #4f6ef71a,inset 0 1px 2px #4f6ef70a}.form-field.filled input{border-color:#4f6ef759;background:linear-gradient(135deg,#fffffffa,#f8fafff2)}.form-field.filled .field-icon{color:var(--login-accent);opacity:.7}.field-border{position:absolute;bottom:0;left:50%;width:0;height:2px;background:linear-gradient(90deg,var(--login-accent),var(--login-accent-secondary),var(--login-accent-tertiary));border-radius:0 0 14px 14px;transition:all .35s cubic-bezier(.16,1,.3,1);box-shadow:0 0 8px #4f6ef733}.form-field.focused .field-border{left:0;width:100%}.toggle-password{position:absolute;right:14px;width:22px;height:22px;background:none;border:none;color:#a0a8c4;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:color .2s;z-index:2}.toggle-password:hover{color:var(--login-accent)}.toggle-password svg{width:100%;height:100%}.captcha-field input{padding-right:140px}.captcha-box{position:absolute;right:5px;top:50%;transform:translateY(-50%);height:44px;display:flex;align-items:center;gap:4px;padding:4px 8px;background:linear-gradient(135deg,#4f6ef70f,#8b5cf60a);border:1px solid rgba(79,110,247,.15);border-radius:10px;cursor:pointer;transition:all .3s ease;z-index:2}.captcha-box:hover{background:linear-gradient(135deg,#4f6ef71f,#8b5cf614);border-color:var(--login-accent);box-shadow:0 0 16px #4f6ef726}.captcha-box:hover .captcha-refresh-icon{color:var(--login-accent);transform:rotate(180deg)}.captcha-img{height:44px;width:auto;border-radius:6px;object-fit:contain}.captcha-placeholder{font-size:12px;color:var(--login-accent);font-weight:500}.captcha-spinner{width:20px;height:20px;border:2px solid rgba(79,110,247,.2);border-top-color:var(--login-accent);border-radius:50%;animation:spin .7s linear infinite}.captcha-refresh-icon{width:16px;height:16px;color:#a0a8c4;transition:all .4s ease;flex-shrink:0}.captcha-refresh-icon svg{width:100%;height:100%}.error-msg{display:flex;align-items:center;gap:10px;padding:12px 16px;background:linear-gradient(135deg,#dc26260f,#dc262608);border:1px solid rgba(220,38,38,.2);border-radius:12px;color:var(--login-error);font-size:13.5px;font-weight:500;animation:errorSlideIn .4s cubic-bezier(.16,1,.3,1)}@keyframes errorSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.error-msg svg{width:18px;height:18px;flex-shrink:0}.submit-btn{position:relative;width:100%;padding:17px;background:linear-gradient(135deg,var(--login-accent) 0%,var(--login-accent-secondary) 50%,#8b5cf6 100%);border:none;border-radius:14px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;overflow:hidden;transition:all .35s cubic-bezier(.16,1,.3,1);box-shadow:0 8px 28px var(--login-accent-glow),0 2px 8px #8b5cf626;display:flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;letter-spacing:1px}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 36px #4f6ef766,0 4px 12px #8b5cf633;background:linear-gradient(135deg,#5b7bff,#9333ea,#8b5cf6)}.submit-btn:active:not(:disabled){transform:translateY(0) scale(.98);box-shadow:0 4px 16px var(--login-accent-glow),0 1px 4px #8b5cf61a}.submit-btn:disabled{opacity:.8;cursor:not-allowed}.btn-arrow{width:18px;height:18px;transition:transform .3s ease}.submit-btn:hover:not(:disabled) .btn-arrow{transform:translate(4px)}.btn-loader{width:20px;height:20px;border:2.5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.btn-ripple{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transform:translate(-100%)}.submit-btn:hover:not(:disabled) .btn-ripple{animation:btnShine .6s ease}@keyframes btnShine{to{transform:translate(100%)}}.submit-btn:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:16px;background:linear-gradient(135deg,var(--login-accent),var(--login-accent-secondary));opacity:0;filter:blur(12px);z-index:-1;transition:opacity .4s ease}.submit-btn:hover:not(:disabled):before{opacity:.4}.card-footer{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:28px;font-size:12px;color:var(--login-text-muted);opacity:.5;transition:opacity .3s ease}.card-footer:hover{opacity:.7}.card-footer .dot{width:3px;height:3px;border-radius:50%;background:var(--login-accent);opacity:.5}@media(max-width:1100px){.login-left{flex:1;padding:40px 8px 40px 24px}.login-right{flex:1;padding:30px 24px 30px 8px}.modules-grid{gap:8px}.module-card{padding:10px 12px}.module-icon{width:36px;height:36px;font-size:20px}.module-name{font-size:12.5px}.module-desc{font-size:10.5px}.brand-name{font-size:36px}}@media(max-width:900px){.login-page{flex-direction:column}.login-left{flex:none;padding:40px 24px 20px;opacity:1;transform:none}.login-left.entered{transform:none}.login-right{flex:1;padding:20px 24px 40px;opacity:1;transform:none}.login-right.entered{transform:none}.left-inner{max-width:100%}.modules-grid{grid-template-columns:repeat(4,1fr);gap:10px}.module-card{flex-direction:column;text-align:center;padding:12px 8px;gap:6px}.module-icon{width:38px;height:38px;font-size:22px}.module-desc{display:none}.brand-name{font-size:32px}.brand-slogan{font-size:14px;letter-spacing:4px}.brand-divider{margin-bottom:20px}.left-footer{position:relative;bottom:auto;text-align:center;margin-top:16px}.logo-cube{width:60px;height:60px}.cube-face{width:60px;height:60px;font-size:28px}.cube-front{transform:translateZ(30px)}.cube-back{transform:rotateY(180deg) translateZ(30px)}.cube-left{transform:rotateY(-90deg) translateZ(30px)}.cube-right{transform:rotateY(90deg) translateZ(30px)}.cube-top{transform:rotateX(90deg) translateZ(30px)}.logo-ring{width:85px;height:85px;margin:-42.5px 0 0 -42.5px}}@media(max-width:600px){.login-left{padding:30px 16px 16px}.login-right{padding:16px}.modules-grid{grid-template-columns:repeat(4,1fr);gap:8px}.module-card{padding:10px 6px;gap:4px}.module-icon{width:34px;height:34px;font-size:18px;border-radius:8px}.module-name{font-size:11px}.login-card{padding:32px 24px 28px;border-radius:20px}.card-header h2{font-size:22px}.card-header-icon{width:44px;height:44px;border-radius:12px}.card-header-icon svg{width:22px;height:22px}.form-field input{padding:14px 14px 14px 44px;font-size:14px;border-radius:12px}.field-icon{left:14px;width:18px;height:18px}.submit-btn{padding:15px;font-size:15px;border-radius:12px}.captcha-field input{padding-right:120px}.captcha-box{height:40px;padding:3px 6px}.captcha-img{height:38px}.brand-name{font-size:28px}.brand-slogan{font-size:12px;letter-spacing:3px;margin-bottom:16px}.brand-divider{margin-bottom:16px}}@media(max-width:380px){.modules-grid{grid-template-columns:repeat(4,1fr);gap:6px}.module-card{padding:8px 4px}.module-icon{width:30px;height:30px;font-size:16px}.module-name{font-size:10px}.login-card{padding:28px 18px 24px}.form-field input{padding:12px 12px 12px 40px}}.welcome-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;position:relative;overflow-x:hidden;overflow-y:auto;font-family:Inter,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background:#f0f4ff;color:#1a2240;padding:0}.welcome-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;background:linear-gradient(135deg,#e0e8ff,#eef2ff,#f5f0ff,#eef5ff,#e8eeff)}.welcome-bg-grid{position:absolute;top:-50px;right:-50px;bottom:-50px;left:-50px;background-image:linear-gradient(rgba(79,110,247,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(79,110,247,.07) 1px,transparent 1px);background-size:60px 60px;transition:transform .3s ease-out}.welcome-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 50% at 20% 40%,rgba(79,110,247,.06) 0%,transparent 70%),radial-gradient(ellipse 60% 80% at 80% 60%,rgba(139,92,246,.05) 0%,transparent 70%);pointer-events:none}.welcome-bg-orb{position:absolute;border-radius:50%;filter:blur(80px);transition:transform .5s ease-out}.welcome-bg-orb-1{width:600px;height:600px;top:-10%;left:-5%;background:radial-gradient(circle,rgba(79,110,247,.25),rgba(99,130,255,.1) 50%,transparent 70%);animation:wOrbFloat1 20s ease-in-out infinite}.welcome-bg-orb-2{width:500px;height:500px;bottom:-10%;right:-5%;background:radial-gradient(circle,rgba(139,92,246,.2),rgba(168,120,246,.08) 50%,transparent 70%);animation:wOrbFloat2 25s ease-in-out infinite}.welcome-bg-orb-3{width:350px;height:350px;top:40%;left:45%;background:radial-gradient(circle,rgba(6,182,212,.16),rgba(34,211,238,.06) 50%,transparent 70%);animation:wOrbFloat3 18s ease-in-out infinite}@keyframes wOrbFloat1{0%,to{transform:translate(0)}33%{transform:translate(40px,30px)}66%{transform:translate(-20px,-40px)}}@keyframes wOrbFloat2{0%,to{transform:translate(0)}33%{transform:translate(-30px,-20px)}66%{transform:translate(30px,40px)}}@keyframes wOrbFloat3{0%,to{transform:translate(0)}50%{transform:translate(50px,-30px)}}.welcome-top-bar{position:fixed;top:0;left:0;right:0;height:4px;z-index:100;background:linear-gradient(90deg,#4f6ef7,#8b5cf6,#06b6d4,#8b5cf6,#4f6ef7);background-size:200% 100%;animation:topBarFlow 4s linear infinite;box-shadow:0 0 12px #4f6ef766}@keyframes topBarFlow{0%{background-position:0% 50%}to{background-position:200% 50%}}.welcome-content{position:relative;z-index:1;width:100%;max-width:100%;margin:0 auto;padding:60px 40px 40px;opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.16,1,.3,1)}.welcome-content.entered{opacity:1;transform:translateY(0)}.welcome-header{display:flex;align-items:center;gap:24px;margin-bottom:36px;padding:32px 36px;background:#ffffffbf;border:1px solid rgba(99,130,255,.15);border-radius:20px;-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);box-shadow:0 12px 40px #4f6ef714,0 2px 8px #00000008,inset 0 1px #fffc;position:relative;overflow:hidden}.welcome-header:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#4f6ef7,#8b5cf6,transparent);opacity:.6}.welcome-logo{perspective:600px;flex-shrink:0}.welcome-logo-cube{width:56px;height:56px;position:relative;transform-style:preserve-3d;animation:wCubeRotate 12s ease-in-out infinite}@keyframes wCubeRotate{0%,to{transform:rotateX(-15deg) rotateY(0)}25%{transform:rotateX(-15deg) rotateY(90deg)}50%{transform:rotateX(-15deg) rotateY(180deg)}75%{transform:rotateX(-15deg) rotateY(270deg)}}.wl-face{position:absolute;width:56px;height:56px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;color:#fff;border-radius:12px;background:linear-gradient(135deg,#4f6ef7,#8b5cf6);border:1px solid rgba(255,255,255,.2);backface-visibility:hidden}.wl-front{transform:translateZ(28px)}.wl-back{transform:rotateY(180deg) translateZ(28px)}.wl-left{transform:rotateY(-90deg) translateZ(28px);background:linear-gradient(135deg,#06b6d4,#4f6ef7)}.wl-right{transform:rotateY(90deg) translateZ(28px);background:linear-gradient(135deg,#8b5cf6,#ec4899)}.wl-top{transform:rotateX(90deg) translateZ(28px);background:linear-gradient(135deg,#10b981,#06b6d4)}.welcome-header-text h1{font-size:1.8rem;font-weight:800;margin:0 0 4px;background:linear-gradient(135deg,#1a2240,#4f6ef7,#8b5cf6);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.5px}.welcome-header-text p{font-size:1rem;color:#5f6888;margin:0;font-weight:400}.boards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-bottom:40px}.board-block{position:relative;animation:boardBlockIn .5s cubic-bezier(.34,1.56,.64,1) both;animation-delay:var(--delay)}@keyframes boardBlockIn{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.board-card{position:relative;display:flex;align-items:center;gap:20px;padding:26px 28px;background:var(--card-bg, rgba(79, 110, 247, .12));border:1px solid rgba(255,255,255,.7);border-radius:20px;-webkit-backdrop-filter:blur(14px) saturate(1.3);backdrop-filter:blur(14px) saturate(1.3);cursor:pointer;transition:all .4s cubic-bezier(.25,.8,.25,1);overflow:hidden;box-shadow:0 4px 14px #0000000d,0 1px 3px #00000005;-webkit-user-select:none;user-select:none}.board-card:before{content:"";position:absolute;top:0;left:0;bottom:0;width:5px;background:var(--board-gradient, var(--accent));opacity:.85;transition:all .4s ease}.board-card:after{content:"";position:absolute;top:-50%;left:-80%;width:60%;height:200%;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);pointer-events:none;transition:left .6s ease}.board-card:hover:after{left:120%}.board-card-glow{position:absolute;top:50%;right:-60px;width:200px;height:200px;transform:translateY(-50%) scale(.5);background:radial-gradient(circle,var(--accent),transparent 70%);opacity:0;filter:blur(40px);transition:all .5s cubic-bezier(.25,.8,.25,1);pointer-events:none}.board-card:hover{transform:translateY(-6px) scale(1.015);border-color:#fffffff2;box-shadow:0 20px 50px #0000001a,0 6px 16px #0000000d,0 0 0 1px var(--accent)}.board-card:hover:before{width:6px;opacity:1;box-shadow:0 0 16px var(--accent)}.board-card:hover .board-card-glow{opacity:.25;transform:translateY(-50%) scale(1)}.board-card:hover .board-icon-wrap{transform:scale(1.12) rotate(-6deg);background:var(--board-gradient);box-shadow:0 8px 20px #00000026}.board-card:hover .board-icon{transform:scale(1.15);filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.board-card:hover .board-text h3{letter-spacing:.5px;transform:translate(2px)}.board-card:hover .board-meta{transform:translate(4px)}.board-block.expanded .board-card{transform:translateY(-4px);border-color:var(--accent);background:linear-gradient(135deg,rgba(255,255,255,.95),var(--card-bg));box-shadow:0 16px 40px #00000014,0 4px 12px #0000000a,0 0 0 2px var(--accent),0 0 30px #4f6ef726}.board-block.expanded .board-card:before{width:6px;opacity:1;box-shadow:0 0 20px var(--accent)}.board-block.expanded .board-card-glow{opacity:.3;transform:translateY(-50%) scale(1.2)}.board-block.expanded .board-icon-wrap{background:var(--board-gradient);transform:scale(1.08) rotate(-3deg);box-shadow:0 6px 18px #0000001f}.board-block.expanded .board-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.board-card:active{transform:translateY(-2px) scale(.99);transition-duration:.1s}.board-icon-wrap{width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:16px;background:#ffffffb3;border:1px solid rgba(255,255,255,.9);box-shadow:0 3px 10px #0000000d;flex-shrink:0;transition:all .4s cubic-bezier(.25,.8,.25,1)}.board-icon{font-size:32px;line-height:1;transition:all .4s cubic-bezier(.25,.8,.25,1);filter:drop-shadow(0 1px 2px rgba(0,0,0,.08))}.board-text{flex:1;min-width:0}.board-text h3{font-size:1.25rem;font-weight:800;color:var(--accent);margin:0 0 6px;line-height:1.3;letter-spacing:-.3px;transition:all .4s ease}.board-text p{font-size:.85rem;color:#5f6888;margin:0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.board-meta{display:flex;align-items:center;gap:12px;flex-shrink:0;transition:all .4s ease}.board-count{font-size:.75rem;font-weight:600;color:var(--accent);padding:5px 12px;background:#ffffffb3;border:1px solid var(--accent);border-radius:20px;white-space:nowrap;opacity:.85}.board-chevron{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff9;color:var(--accent);transition:all .4s cubic-bezier(.25,.8,.25,1)}.board-chevron.rotated{transform:rotate(180deg);background:var(--board-gradient);color:#fff;box-shadow:0 4px 12px #00000026}.board-children{max-height:0;opacity:0;overflow:hidden;transition:max-height .45s cubic-bezier(.25,.8,.25,1),opacity .35s ease,margin-top .4s ease;margin-top:0}.board-children.open{max-height:600px;opacity:1;margin-top:16px}.board-children-inner{padding:4px 4px 8px}.board-children-track{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.child-card{position:relative;display:flex;align-items:center;gap:14px;padding:16px 18px;background:#fffc;border:1px solid rgba(99,130,255,.12);border-radius:14px;-webkit-backdrop-filter:blur(10px) saturate(1.2);backdrop-filter:blur(10px) saturate(1.2);cursor:pointer;transition:all .35s cubic-bezier(.25,.8,.25,1);overflow:hidden;box-shadow:0 2px 8px #00000008;opacity:0;transform:translateY(16px) scale(.92);animation:childCardIn .4s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:var(--child-delay)}@keyframes childCardIn{to{opacity:1;transform:translateY(0) scale(1)}}.board-children:not(.open) .child-card{animation:childCardOut .3s ease forwards}@keyframes childCardOut{to{opacity:0;transform:translateY(-10px) scale(.92)}}.child-card:before{content:"";position:absolute;top:12px;left:0;bottom:12px;width:3px;background:var(--child-accent);border-radius:0 3px 3px 0;opacity:.6;transition:all .3s ease}.child-card:after{content:"";position:absolute;top:-50%;left:-80%;width:50%;height:200%;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.5) 50%,transparent 70%);pointer-events:none;transition:left .5s ease}.child-card:hover:after{left:130%}.child-card:hover{transform:translateY(-4px) scale(1.02);border-color:var(--child-accent);background:#fffffff2;box-shadow:0 12px 28px #00000014,0 3px 8px #0000000a,0 0 0 1px var(--child-accent)}.child-card:hover:before{opacity:1;width:4px;box-shadow:0 0 12px var(--child-accent)}.child-card:hover .child-icon-wrap{transform:scale(1.1) rotate(-5deg);background:var(--child-accent);box-shadow:0 4px 12px #0000001f}.child-card:hover .child-icon{transform:scale(1.1)}.child-card:hover .child-arrow{color:var(--child-accent);background:#ffffffe6;transform:translate(3px)}.child-card:active{transform:translateY(-1px) scale(.99);transition-duration:.1s}.child-card.disabled{cursor:not-allowed;opacity:.6;background:#f8fafcb3}.child-card.disabled:hover{transform:none;border-color:#6382ff1f;box-shadow:0 2px 8px #00000008}.child-card.disabled:hover .child-icon-wrap{transform:none;background:#ffffffb3}.child-card.disabled:hover:before{width:3px;box-shadow:none}.child-icon-wrap{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#ffffffb3;border:1px solid rgba(255,255,255,.9);box-shadow:0 2px 6px #0000000a;flex-shrink:0;transition:all .35s cubic-bezier(.25,.8,.25,1)}.child-icon{font-size:22px;line-height:1;transition:transform .35s ease}.child-text{flex:1;min-width:0}.child-text h4{font-size:.95rem;font-weight:700;color:var(--child-accent);margin:0 0 3px;line-height:1.3;transition:all .3s ease}.child-text p{font-size:.75rem;color:#5f6888;margin:0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.child-arrow{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff80;color:#b0b8cc;flex-shrink:0;transition:all .3s ease}.welcome-footer{text-align:center;padding:20px 0}.footer-line{width:60px;height:3px;background:linear-gradient(90deg,#4f6ef7,#8b5cf6);border-radius:2px;margin:0 auto 16px;opacity:.5}.welcome-footer p{font-size:.85rem;color:#8b92b0;margin:0;letter-spacing:.5px}@media(max-width:1280px){.boards-grid{grid-template-columns:repeat(2,1fr);gap:18px}.board-children-track{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media(max-width:1024px){.welcome-content{padding:50px 24px 32px}.board-card{padding:22px 24px;gap:16px}.board-icon-wrap{width:52px;height:52px}.board-icon{font-size:28px}.board-text h3{font-size:1.15rem}}@media(max-width:768px){.boards-grid{grid-template-columns:1fr;gap:16px}.board-children-track{grid-template-columns:1fr;gap:12px}.welcome-header{padding:24px;gap:16px}.welcome-header-text h1{font-size:1.4rem}.welcome-header-text p{font-size:.85rem}.welcome-content{padding:40px 16px 24px}.board-card{padding:18px 20px;gap:14px;flex-wrap:wrap}.board-icon-wrap{width:48px;height:48px}.board-icon{font-size:24px}.board-text h3{font-size:1.05rem}.board-text p{font-size:.78rem}.board-meta{width:100%;justify-content:flex-end;margin-top:4px}.child-card{padding:14px 16px;gap:12px}.child-icon-wrap{width:40px;height:40px}.child-icon{font-size:20px}.child-text h4{font-size:.9rem}.child-text p{font-size:.72rem}}@media(max-width:480px){.welcome-header{flex-direction:column;text-align:center;padding:20px}.welcome-header-text h1{font-size:1.3rem}.welcome-content{padding:30px 12px 20px}.board-card{padding:16px 18px;flex-direction:column;align-items:flex-start;text-align:left}.board-meta{width:auto;margin-top:0}.welcome-logo-cube{width:48px;height:48px}.wl-face{width:48px;height:48px;font-size:18px;border-radius:10px}.wl-front{transform:translateZ(24px)}.wl-back{transform:rotateY(180deg) translateZ(24px)}.wl-left{transform:rotateY(-90deg) translateZ(24px)}.wl-right{transform:rotateY(90deg) translateZ(24px)}.wl-top{transform:rotateX(90deg) translateZ(24px)}}.fab-ball{position:fixed;right:32px;bottom:32px;z-index:9998;width:68px;height:68px;border-radius:50%;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;background:transparent}.fab-ball:hover .fab-tooltip{opacity:1;transform:translateY(-50%) translate(0)}.fab-tooltip{position:absolute;right:80px;top:50%;transform:translateY(-50%) translate(8px);white-space:nowrap;padding:7px 16px;background:#02060ff2;color:#4fc3f7;font-size:12px;font-weight:600;border-radius:4px;border:1px solid rgba(79,195,247,.45);box-shadow:0 0 16px #00d4ff59;opacity:0;transition:all .25s;pointer-events:none;letter-spacing:2px;text-transform:uppercase}.fab-ring{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;pointer-events:none}.fab-ring-1{background:conic-gradient(from 0deg,#4fc3f7,#00d4ff,#7fdcff,#00d4ff,#4fc3f7);animation:jvSpin 6s linear infinite;-webkit-mask:radial-gradient(circle,transparent 56%,black 58%,black 72%,transparent 74%);mask:radial-gradient(circle,transparent 56%,black 58%,black 72%,transparent 74%);filter:drop-shadow(0 0 4px rgba(0,212,255,.6))}.fab-ring-2{top:-10px;right:-10px;bottom:-10px;left:-10px;background:conic-gradient(from 180deg,transparent,rgba(0,212,255,.7),transparent,rgba(79,195,247,.5),transparent);animation:jvSpin 10s linear infinite reverse;-webkit-mask:radial-gradient(circle,transparent 66%,black 68%,black 82%,transparent 84%);mask:radial-gradient(circle,transparent 66%,black 68%,black 82%,transparent 84%)}@keyframes jvSpin{to{transform:rotate(360deg)}}.fab-glow{position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;border-radius:50%;background:radial-gradient(circle,rgba(0,212,255,.55),rgba(79,195,247,.2) 40%,transparent 70%);filter:blur(16px);animation:jvBreath 2.5s ease-in-out infinite}@keyframes jvBreath{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.2);opacity:1}}.fab-core{position:relative;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 30% 30%,#0a1a2e,#050b18 60%,#02060f);display:flex;align-items:center;justify-content:center;box-shadow:0 0 24px #00d4ffb3,0 0 48px #4fc3f74d,inset 0 0 16px #00d4ff2e,inset 0 -8px 16px #000c;z-index:1}.fab-core svg circle,.fab-core svg line{filter:drop-shadow(0 0 4px #4fc3f7)}.fab-orbit{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.fab-orbit i{position:absolute;top:50%;left:50%;width:5px;height:5px;margin:-2.5px;border-radius:50%;background:#4fc3f7;box-shadow:0 0 8px #4fc3f7,0 0 16px #4fc3f7;transform-origin:0 0;animation:jvOrbit 3.5s linear infinite}.fab-orbit i:nth-child(2){background:#00d4ff;box-shadow:0 0 8px #00d4ff,0 0 16px #00d4ff;animation-delay:-.9s}.fab-orbit i:nth-child(3){background:#7fdcff;box-shadow:0 0 8px #7fdcff,0 0 16px #7fdcff;animation-delay:-1.8s}.fab-orbit i:nth-child(4){background:#00d4ff;box-shadow:0 0 8px #00d4ff,0 0 16px #00d4ff;animation-delay:-2.7s}@keyframes jvOrbit{0%{transform:rotate(0) translate(38px) rotate(0)}to{transform:rotate(360deg) translate(38px) rotate(-360deg)}}.fab-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:radial-gradient(ellipse at center,#050b18e6,#000000f7);backdrop-filter:blur(14px) saturate(.5);-webkit-backdrop-filter:blur(14px) saturate(.5)}.fab-panel{--jv-cyan: #4fc3f7;--jv-cyan-bright: #00d4ff;--jv-cyan-deep: #00aaff;--jv-cyan-glow: rgba(0, 212, 255, .55);--jv-cyan-faint: rgba(79, 195, 247, .08);--jv-cyan-mid: rgba(79, 195, 247, .18);--jv-amber: #ffaa00;--jv-amber-glow: rgba(255, 170, 0, .5);--jv-amber-faint: rgba(255, 170, 0, .12);--jv-bg-0: #02060f;--jv-bg-1: #050b18;--jv-bg-2: #081222;--jv-text-hi: #e6f7ff;--jv-text: #b8d8f0;--jv-text-dim: #6a93b8;--jv-text-mute: rgba(184, 216, 240, .45);--jv-grid: rgba(79, 195, 247, .06);--jv-grid-bright: rgba(0, 212, 255, .16);--jv-border: rgba(79, 195, 247, .25);--jv-border-bright: rgba(0, 212, 255, .6);--jv-font-hud: system-ui, "Segoe UI", sans-serif;--jv-font-mono: "Consolas", "Share Tech Mono", "Monaco", monospace;position:fixed;z-index:10000;top:4vh;left:4vw;width:92vw;height:92vh;overflow:hidden;border-radius:16px;background:radial-gradient(ellipse at 20% 0%,var(--jv-cyan-faint),transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(0,212,255,.05),transparent 50%),linear-gradient(180deg,var(--jv-bg-0) 0%,var(--jv-bg-1) 50%,var(--jv-bg-0) 100%);box-shadow:0 0 0 1px var(--jv-border),0 0 60px #00d4ff2e,0 0 120px #00d4ff14,0 32px 64px #000000d9;display:flex;flex-direction:column;color:var(--jv-text-hi);font-family:var(--jv-font-hud)}.fab-panel-inner{display:flex;flex-direction:column;height:100%;width:100%;position:relative;z-index:3}.fab-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--jv-grid) 1px,transparent 1px),linear-gradient(90deg,var(--jv-grid) 1px,transparent 1px),linear-gradient(var(--jv-grid-bright) 1px,transparent 1px),linear-gradient(90deg,var(--jv-grid-bright) 1px,transparent 1px);background-size:48px 48px,48px 48px,192px 192px,192px 192px;pointer-events:none;z-index:0;-webkit-mask:radial-gradient(ellipse at center,black 30%,transparent 90%);mask:radial-gradient(ellipse at center,black 30%,transparent 90%)}.fab-panel:after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--jv-cyan-bright) 20%,var(--jv-cyan) 60%,var(--jv-amber) 95%,transparent);box-shadow:0 0 10px var(--jv-cyan-bright),0 0 20px #00d4ff80;animation:jvScan 5s linear infinite;pointer-events:none;z-index:2}@keyframes jvScan{0%{transform:translateY(0);opacity:1}85%{opacity:.6}to{transform:translateY(92vh);opacity:0}}.fab-panel-inner:before,.fab-panel-inner:after{content:"";position:absolute;width:28px;height:28px;border:2px solid var(--jv-cyan-bright);pointer-events:none;z-index:4;filter:drop-shadow(0 0 4px var(--jv-cyan-glow))}.fab-panel-inner:before{top:8px;left:8px;border-right:none;border-bottom:none;border-top-left-radius:8px}.fab-panel-inner:after{bottom:8px;right:8px;border-left:none;border-top:none;border-bottom-right-radius:8px}.hud-corner{position:absolute;width:28px;height:28px;border:2px solid var(--jv-cyan-bright);pointer-events:none;z-index:4;filter:drop-shadow(0 0 4px var(--jv-cyan-glow));animation:jvPanelEnter .6s ease-out}@keyframes jvPanelEnter{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.hud-corner-tr{top:8px;right:8px;border-left:none;border-bottom:none;border-top-right-radius:8px}.hud-corner-bl{bottom:8px;left:8px;border-right:none;border-top:none;border-bottom-left-radius:8px}.fab-header{display:flex;justify-content:space-between;align-items:center;padding:14px 28px;border-bottom:1px solid var(--jv-border);position:relative;z-index:5;background:linear-gradient(180deg,rgba(8,18,34,.6),transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);flex-shrink:0}.fab-header:after{content:"";position:absolute;bottom:-1px;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,var(--jv-cyan-bright),var(--jv-cyan),var(--jv-cyan-bright),transparent);box-shadow:0 0 6px var(--jv-cyan-bright)}.fab-header-left{display:flex;align-items:center;gap:14px}.fab-header-logo{width:40px;height:40px;border-radius:50%;background:radial-gradient(circle,var(--jv-cyan-faint),transparent);border:1px solid var(--jv-border-bright);display:flex;align-items:center;justify-content:center;box-shadow:0 0 12px #00d4ff40,inset 0 0 8px var(--jv-cyan-faint);position:relative}.fab-header-logo:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:repeating-conic-gradient(from 0deg,var(--jv-cyan) 0deg 2deg,transparent 2deg 30deg);-webkit-mask:radial-gradient(circle,transparent 70%,black 72%,black 78%,transparent 80%);mask:radial-gradient(circle,transparent 70%,black 72%,black 78%,transparent 80%);opacity:.5}.fab-header-title{display:flex;flex-direction:column}.fab-title-main{font-size:17px;font-weight:700;letter-spacing:2px;color:var(--jv-cyan-bright);text-shadow:0 0 12px var(--jv-cyan-glow);text-transform:uppercase}.fab-title-sub{font-size:10px;color:var(--jv-text-dim);margin-top:2px;letter-spacing:3px;text-transform:uppercase}.fab-header-right{display:flex;align-items:center;gap:10px}.fab-new-conv-btn{padding:7px 16px;font-size:12px;font-weight:600;color:var(--jv-cyan-bright);background:var(--jv-cyan-faint);border:1px solid var(--jv-border);border-radius:4px;cursor:pointer;transition:all .25s;letter-spacing:1.5px;text-transform:uppercase;display:inline-flex;align-items:center;gap:6px}.fab-new-conv-btn:hover{background:var(--jv-cyan-mid);box-shadow:0 0 16px #00d4ff59;border-color:var(--jv-amber);color:var(--jv-amber)}.fab-new-conv-btn svg{stroke:currentColor}.fab-close-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#ffaa0014;border:1px solid rgba(255,170,0,.3);color:var(--jv-text-dim);cursor:pointer;transition:all .2s}.fab-close-btn:hover{background:#ffaa002e;box-shadow:0 0 12px var(--jv-amber-glow);color:var(--jv-amber);border-color:var(--jv-amber)}.fab-close-btn svg{stroke:currentColor}.fab-panel-body{flex:1;display:flex;gap:1px;background:var(--jv-border);overflow:hidden;position:relative;z-index:3;min-height:0}.fab-left{width:38%;background:#050b18eb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:hidden;display:flex;flex-direction:column;position:relative}.fab-left:before{content:"";position:absolute;top:-40px;right:-40px;width:120px;height:120px;background:radial-gradient(circle,rgba(0,212,255,.12),transparent 70%);pointer-events:none}.fab-right{flex:1;background:#081222eb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:hidden;display:flex;flex-direction:column;position:relative;min-width:0}.fab-right:before{content:"";position:absolute;bottom:-40px;left:-40px;width:160px;height:160px;background:radial-gradient(circle,rgba(0,212,255,.1),transparent 70%);pointer-events:none}@media(max-width:1024px){.fab-left{width:42%}}@media(max-width:768px){.fab-panel{top:0;left:0;width:100vw;height:100vh;border-radius:0}.fab-panel-body{flex-direction:column}.fab-left{width:100%;height:45%}.fab-right{width:100%;height:55%}.fab-ball{right:20px;bottom:20px;width:60px;height:60px}.jv-statusbar{display:none}}@media(max-width:480px){.fab-ball{right:16px;bottom:76px}.fab-title-sub{display:none}.fab-header{padding:10px 16px}}.voice-panel{display:flex;flex-direction:column;height:100%;padding:24px 20px 16px;gap:16px;overflow:hidden;position:relative;z-index:1}.voice-orb-wrap{display:flex;flex-direction:column;align-items:center;gap:14px;padding:6px 0 10px;flex-shrink:0}.ai-voice-orb{--orb-color: #4fc3f7;--orb-rgb: 79, 195, 247;position:relative;width:172px;height:172px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;background:transparent;border:none;padding:0;transition:transform .3s}.ai-voice-orb:hover{transform:scale(1.05)}.ai-voice-orb:active{transform:scale(.95)}.ai-voice-orb.stage-idle{--orb-color: #4fc3f7;--orb-rgb: 79, 195, 247}.ai-voice-orb.stage-loading{--orb-color: #7fdcff;--orb-rgb: 127, 220, 255}.ai-voice-orb.stage-recording{--orb-color: #ffaa00;--orb-rgb: 255, 170, 0}.ai-voice-orb.stage-analyzing{--orb-color: #00d4ff;--orb-rgb: 0, 212, 255}.ai-voice-orb.stage-speaking{--orb-color: #9fdfff;--orb-rgb: 159, 223, 255}.orb-hud-ring{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;background:repeating-conic-gradient(from 0deg,var(--orb-color) 0deg .7deg,transparent .7deg 5deg,var(--orb-color) 5deg 5.5deg,transparent 5.5deg 10deg);-webkit-mask:radial-gradient(circle,transparent 64%,#000 65%,#000 67.5%,transparent 68.5%);mask:radial-gradient(circle,transparent 64%,#000 65%,#000 67.5%,transparent 68.5%);opacity:.6;animation:jvSpin 26s linear infinite}.orb-tick-labels{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;pointer-events:none;animation:jvSpin 26s linear infinite}.orb-tick-labels span{position:absolute;font-size:8px;font-family:var(--jv-font-mono);color:var(--orb-color);opacity:.6;letter-spacing:.5px}.orb-tick-labels span:nth-child(1){top:-12px;left:50%;transform:translate(-50%)}.orb-tick-labels span:nth-child(2){right:-16px;top:50%;transform:translateY(-50%)}.orb-tick-labels span:nth-child(3){bottom:-12px;left:50%;transform:translate(-50%)}.orb-tick-labels span:nth-child(4){left:-16px;top:50%;transform:translateY(-50%)}.orb-dash-ring{position:absolute;top:12px;right:12px;bottom:12px;left:12px;border-radius:50%;border:1.5px dashed var(--orb-color);opacity:.4;animation:jvSpin 18s linear infinite reverse}.orb-hex-frame{position:absolute;top:18px;right:18px;bottom:18px;left:18px;pointer-events:none;animation:jvHexBreath 4s ease-in-out infinite}.orb-hex-frame svg{width:100%;height:100%}@keyframes jvHexBreath{0%,to{opacity:.35;transform:scale(1)}50%{opacity:.6;transform:scale(1.03)}}.ai-voice-orb-glow{position:absolute;top:22%;right:22%;bottom:22%;left:22%;border-radius:50%;background:radial-gradient(circle,rgba(var(--orb-rgb),.85),transparent 70%);filter:blur(28px);opacity:.55;transition:all .4s}.ai-voice-orb.stage-recording .ai-voice-orb-glow{animation:jvGlowPulse 1.2s ease-in-out infinite;opacity:.7}.ai-voice-orb.stage-speaking .ai-voice-orb-glow{animation:jvGlowPulse .7s ease-in-out infinite;opacity:.65}@keyframes jvGlowPulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.2);opacity:.9}}.orb-pulse-ring{position:absolute;top:30%;right:30%;bottom:30%;left:30%;border-radius:50%;border:2px solid var(--orb-color);opacity:0;pointer-events:none}.ai-voice-orb.stage-recording .orb-pulse-ring{animation:jvPulseOut 2s ease-out infinite}.ai-voice-orb.stage-recording .orb-pulse-ring-2{animation-delay:1s}@keyframes jvPulseOut{0%{transform:scale(1);opacity:.7}to{transform:scale(2.4);opacity:0}}.orb-scan-beam{position:absolute;top:12px;right:12px;bottom:12px;left:12px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0deg,rgba(var(--orb-rgb),.4) 45deg,transparent 90deg);opacity:0;transition:opacity .4s;-webkit-mask:radial-gradient(circle,transparent 42%,#000 44%);mask:radial-gradient(circle,transparent 42%,#000 44%);animation:jvRadarSweep 3.5s linear infinite;pointer-events:none}.ai-voice-orb.stage-analyzing .orb-scan-beam{opacity:.65}@keyframes jvRadarSweep{to{transform:rotate(360deg)}}.ai-voice-orb-core{position:relative;width:98px;height:98px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--orb-color);background:radial-gradient(circle at 50% 50%,#ffffff 0%,var(--jv-cyan-bright) 8%,rgba(var(--orb-rgb),.95) 28%,rgba(var(--orb-rgb),.3) 60%,transparent 75%),radial-gradient(circle at 65% 75%,var(--jv-bg-0) 0%,var(--jv-bg-1) 100%);box-shadow:inset 0 0 26px #0000008c,inset 0 3px 12px rgba(var(--orb-rgb),.5),0 0 34px rgba(var(--orb-rgb),.55),0 0 70px rgba(var(--orb-rgb),.25);transition:all .4s;z-index:2}.ai-voice-orb.stage-recording .ai-voice-orb-core{animation:jvCorePulse 1.2s ease-in-out infinite}.ai-voice-orb.stage-speaking .ai-voice-orb-core{animation:jvCorePulse .7s ease-in-out infinite}@keyframes jvCorePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.ai-voice-orb-core:before{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border-radius:50%;border:1px solid rgba(var(--orb-rgb),.55);border-top-color:transparent;border-left-color:transparent;animation:jvReactorSpin 8s linear infinite}.ai-voice-orb-core:after{content:"";position:absolute;top:18px;right:18px;bottom:18px;left:18px;border-radius:50%;border:1px solid rgba(var(--orb-rgb),.35);border-bottom-color:transparent;border-right-color:transparent;animation:jvReactorSpin 5s linear infinite reverse}@keyframes jvReactorSpin{to{transform:rotate(360deg)}}.orb-icon{display:block;filter:drop-shadow(0 0 6px var(--orb-color))}.orb-icon-idle{animation:jvIconBreath 3.2s ease-in-out infinite}.orb-icon-loading{animation:jvSpin 1.6s linear infinite}.orb-icon-analyzing{animation:jvSpin 3.5s linear infinite}@keyframes jvIconBreath{0%,to{transform:scale(1);opacity:.88}50%{transform:scale(1.09);opacity:1}}.orb-particles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3}.orb-particles i{position:absolute;top:50%;left:50%;width:4px;height:4px;margin:-2px;border-radius:50%;background:var(--orb-color);box-shadow:0 0 8px var(--orb-color),0 0 14px var(--orb-color);transform-origin:0 0;animation:jvParticle 5s linear infinite}.orb-particles i:nth-child(1){animation-delay:0s;--r: 82px}.orb-particles i:nth-child(2){animation-delay:-.83s;--r: 76px}.orb-particles i:nth-child(3){animation-delay:-1.66s;--r: 88px}.orb-particles i:nth-child(4){animation-delay:-2.5s;--r: 70px}.orb-particles i:nth-child(5){animation-delay:-3.33s;--r: 84px}.orb-particles i:nth-child(6){animation-delay:-4.16s;--r: 78px}@keyframes jvParticle{0%{transform:rotate(0) translate(var(--r, 82px)) rotate(0)}to{transform:rotate(360deg) translate(var(--r, 82px)) rotate(-360deg)}}.orb-spectrum{position:relative;width:48px;height:48px;display:flex;align-items:center;justify-content:center}.orb-spectrum i{position:absolute;left:50%;top:50%;width:2.5px;margin-left:-1.25px;background:linear-gradient(180deg,var(--orb-color),rgba(var(--orb-rgb),.3));border-radius:2px;box-shadow:0 0 6px var(--orb-color);transform-origin:50% 30px;animation:jvSpectrumPulse .8s ease-in-out infinite}@keyframes jvSpectrumPulse{0%,to{height:4px;opacity:.6}50%{height:14px;opacity:1}}.ai-voice-wave-bars{display:flex;gap:4px;align-items:center;height:38px}.ai-voice-wave-bars span{width:4px;background:linear-gradient(180deg,var(--orb-color),rgba(var(--orb-rgb),.4));border-radius:2px;box-shadow:0 0 8px var(--orb-color);animation:voiceWaveBar .7s ease-in-out infinite;animation-delay:calc(var(--i) * .1s)}@keyframes voiceWaveBar{0%,to{height:6px}50%{height:32px}}.voice-hint{font-size:11px;color:var(--jv-cyan-bright);text-align:center;min-height:18px;letter-spacing:2px;text-shadow:0 0 8px var(--jv-cyan-glow);font-weight:600;text-transform:uppercase}.voice-error{font-size:12px;color:var(--jv-amber);background:var(--jv-amber-faint);padding:6px 14px;border-radius:6px;border:1px solid rgba(255,170,0,.35);max-width:90%;text-align:center;box-shadow:0 0 12px var(--jv-amber-glow)}.voice-transcript-live{position:relative;padding:12px 16px;background:linear-gradient(135deg,var(--jv-cyan-faint),transparent);border:1px solid var(--jv-border);border-radius:6px;font-size:14px;color:var(--jv-text-hi);min-height:44px;max-height:84px;overflow-y:auto;flex-shrink:0;box-shadow:inset 0 0 20px var(--jv-cyan-faint),0 0 16px #00d4ff1a}.voice-transcript-live:before,.voice-transcript-live:after{content:"";position:absolute;width:10px;height:10px;border:1.5px solid var(--jv-cyan-bright);filter:drop-shadow(0 0 3px var(--jv-cyan-glow))}.voice-transcript-live:before{top:4px;left:4px;border-right:none;border-bottom:none}.voice-transcript-live:after{bottom:4px;right:4px;border-left:none;border-top:none}.transcript-final{color:var(--jv-cyan-bright);text-shadow:0 0 6px var(--jv-cyan-glow)}.transcript-final:after{content:"▊";margin-left:2px;animation:jvCursorBlink 1s steps(2) infinite;color:var(--jv-amber)}@keyframes jvCursorBlink{0%,50%{opacity:1}51%,to{opacity:0}}.transcript-partial{color:var(--jv-text-mute)}.conv-list{flex:1;overflow-y:auto;padding:4px 0;display:flex;flex-direction:column;gap:10px;min-height:0}.conv-list::-webkit-scrollbar{width:4px}.conv-list::-webkit-scrollbar-thumb{background:#4fc3f759;border-radius:2px}.conv-bubble{display:flex;gap:8px;align-items:flex-start}.conv-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative}.conv-avatar:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;background:repeating-conic-gradient(from 0deg,currentColor 0deg 2deg,transparent 2deg 45deg);-webkit-mask:radial-gradient(circle,transparent 68%,black 70%,black 76%,transparent 78%);mask:radial-gradient(circle,transparent 68%,black 70%,black 76%,transparent 78%);opacity:.5}.conv-avatar svg{position:relative;z-index:1}.conv-user .conv-avatar{background:var(--jv-cyan-faint);border:1px solid var(--jv-border-bright);color:var(--jv-cyan-bright)}.conv-ai .conv-avatar{background:#ffaa001a;border:1px solid rgba(255,170,0,.4);color:var(--jv-amber)}.conv-content{flex:1;min-width:0;padding:9px 13px;border-radius:4px;font-size:13px;line-height:1.5;position:relative}.conv-user .conv-content{background:var(--jv-cyan-faint);border:1px solid var(--jv-border);border-left:2px solid var(--jv-cyan-bright)}.conv-ai .conv-content{background:#00d4ff0a;border:1px solid rgba(79,195,247,.15);border-left:2px solid var(--jv-amber)}.conv-text{margin:0;color:var(--jv-text-hi);word-break:break-word}.conv-text-ai{color:var(--jv-text)}.conv-ai-summary{display:flex;gap:6px;margin-bottom:4px;flex-wrap:wrap}.conv-tag{font-size:10px;padding:2px 8px;border-radius:3px;background:var(--jv-cyan-mid);color:var(--jv-cyan-bright);border:1px solid var(--jv-border);letter-spacing:1px;text-transform:uppercase;font-weight:600;font-family:var(--jv-font-mono)}.conv-tag-data{background:var(--jv-amber-faint);color:var(--jv-amber);border-color:#fa06}.conv-hint-text{font-size:11px;color:var(--jv-text-dim);margin:4px 0 0;letter-spacing:.5px}.conv-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--jv-text-dim)}.conv-empty-icon{opacity:.6;filter:drop-shadow(0 0 10px var(--jv-cyan-glow))}.conv-empty p{margin:0;font-size:12px;letter-spacing:1px}.conv-empty-sub{font-size:11px!important;color:var(--jv-text-mute)}.voice-input-wrap{display:flex;gap:8px;flex-shrink:0;padding-top:4px;align-items:center}.voice-input{flex:1;height:38px;padding:0 14px;background:#4fc3f70d;border:1px solid var(--jv-border);border-radius:6px;color:var(--jv-text-hi);font-family:var(--jv-font-hud);font-size:13px;letter-spacing:.5px;outline:none;transition:all .25s}.voice-input::placeholder{color:var(--jv-text-mute);letter-spacing:1px}.voice-input:focus{border-color:var(--jv-border-bright);box-shadow:0 0 12px #00d4ff40;background:#4fc3f714}.voice-input:disabled{opacity:.5;cursor:not-allowed}.voice-send-btn{display:inline-flex;align-items:center;gap:6px;padding:0 16px;height:38px;background:var(--jv-cyan-faint);border:1px solid var(--jv-border);border-radius:19px;color:var(--jv-cyan-bright);font-family:var(--jv-font-hud);font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:all .25s}.voice-send-btn:hover:not(:disabled){background:var(--jv-cyan-mid);border-color:var(--jv-amber);color:var(--jv-amber);box-shadow:0 0 14px #00d4ff4d}.voice-send-btn:disabled{opacity:.4;cursor:not-allowed}.voice-send-btn svg{stroke:currentColor}@media(max-width:768px){.voice-panel{padding:14px 12px}.ai-voice-orb{width:132px;height:132px}.ai-voice-orb-core{width:76px;height:76px}.orb-particles i{animation-name:jvParticleSm}@keyframes jvParticleSm{0%{transform:rotate(0) translate(var(--r, 62px)) rotate(0)}to{transform:rotate(360deg) translate(var(--r, 62px)) rotate(-360deg)}}.orb-icon{transform:scale(.82)}}.process-panel{display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;z-index:1}.process-content{flex:1;overflow:hidden;position:relative;min-height:0}.process-report-wrap{width:100%;height:100%;overflow:auto}.process-report-wrap::-webkit-scrollbar{width:5px}.process-report-wrap::-webkit-scrollbar-thumb{background:#4fc3f740;border-radius:2px}.process-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;height:100%;padding:40px 24px;text-align:center}.process-empty-orb{position:relative;width:96px;height:96px;border-radius:50%;background:radial-gradient(circle at 35% 35%,rgba(0,212,255,.35),rgba(79,195,247,.08) 60%,transparent 75%);border:1px solid rgba(0,212,255,.35);box-shadow:0 0 40px #00d4ff2e,inset 0 0 24px #00d4ff1f;animation:jvEmptyPulse 3.2s ease-in-out infinite}.process-empty-orb:before,.process-empty-orb:after{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;border-radius:50%;border:1px solid rgba(79,195,247,.18);animation:jvEmptyRing 3.2s ease-out infinite}.process-empty-orb:after{top:-22px;right:-22px;bottom:-22px;left:-22px;border-color:#4fc3f71a;animation-delay:1.1s}@keyframes jvEmptyPulse{0%,to{box-shadow:0 0 40px #00d4ff2e,inset 0 0 24px #00d4ff1f;transform:scale(1)}50%{box-shadow:0 0 60px #00d4ff52,inset 0 0 32px #00d4ff33;transform:scale(1.05)}}@keyframes jvEmptyRing{0%{transform:scale(.85);opacity:.7}to{transform:scale(1.25);opacity:0}}.process-empty-text{font-size:14px;font-weight:700;color:var(--jv-cyan-bright);letter-spacing:4px;text-transform:uppercase;text-shadow:0 0 8px var(--jv-cyan-glow);font-family:var(--jv-font-mono)}.process-empty-sub{font-size:12px;color:var(--jv-text-dim);letter-spacing:1px;max-width:280px;line-height:1.6}.report-cards-bar{flex-shrink:0;padding:8px 12px 6px;border-bottom:1px solid var(--jv-border);background:linear-gradient(180deg,rgba(8,18,34,.55),transparent);display:flex;justify-content:flex-end}.report-cards-track{display:flex;gap:8px;overflow-x:auto;max-width:100%;padding:2px 2px 4px}.report-cards-track::-webkit-scrollbar{height:3px}.report-cards-track::-webkit-scrollbar-track{background:transparent}.report-cards-track::-webkit-scrollbar-thumb{background:#4fc3f74d;border-radius:2px}.report-card{position:relative;flex-shrink:0;width:138px;padding:6px 10px 7px;background:#081222b3;border:1px solid var(--jv-border);border-radius:4px;cursor:pointer;text-align:left;color:var(--jv-text-dim);transition:border-color .3s,background .3s,box-shadow .3s,color .3s;display:flex;flex-direction:column;gap:2px;overflow:hidden;font-family:inherit}.report-card:before{content:"";position:absolute;top:0;left:0;width:8px;height:8px;border-top:1px solid var(--jv-cyan);border-left:1px solid var(--jv-cyan);opacity:.5}.report-card:hover{border-color:#00d4ff80;background:#081222e6;box-shadow:0 0 14px #00d4ff38;color:var(--jv-cyan-bright);transform:translateY(-2px)}.report-card.active{border-color:var(--jv-cyan-bright);background:var(--jv-cyan-mid);box-shadow:0 0 18px #00d4ff61,inset 0 0 10px var(--jv-cyan-faint);color:var(--jv-cyan-bright)}.report-card.active:before{opacity:1;border-color:var(--jv-cyan-bright)}.report-card.pending{border-color:var(--jv-amber);box-shadow:0 0 18px #ffaa0073;animation:cardPendingPulse 1s ease-in-out infinite}@keyframes cardPendingPulse{0%,to{box-shadow:0 0 18px #ffaa0073}50%{box-shadow:0 0 28px #ffaa00bf}}.report-card-idx{position:absolute;top:4px;right:7px;font-size:9px;font-family:var(--jv-font-mono);color:var(--jv-cyan-bright);opacity:.85;letter-spacing:1px}.report-card-top{display:flex;align-items:center;gap:6px;min-width:0}.report-card-cat{font-size:11px;font-weight:700;letter-spacing:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit}.report-card-rc{font-size:9px;font-family:var(--jv-font-mono);color:var(--jv-amber);letter-spacing:.5px;flex-shrink:0}.report-card-time{font-size:9px;font-family:var(--jv-font-mono);color:var(--jv-text-mute);letter-spacing:.5px}.report-card-sum{font-size:9px;color:var(--jv-text-mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-card.active .report-card-sum{color:var(--jv-text-dim)}.report-transmit{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#020c1cf0,#02060ffc);overflow:hidden;z-index:5}.rt-grid{position:absolute;top:-32px;right:-32px;bottom:-32px;left:-32px;background-image:linear-gradient(rgba(0,212,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.09) 1px,transparent 1px);background-size:34px 34px;animation:rtGridPan 3s linear;opacity:.7}@keyframes rtGridPan{0%{transform:translate(0)}to{transform:translate(34px,34px)}}.rt-scan{position:absolute;left:0;right:0;height:2px;top:0;background:linear-gradient(90deg,transparent,var(--jv-cyan-bright) 50%,transparent);box-shadow:0 0 14px var(--jv-cyan-bright),0 0 28px var(--jv-cyan-bright);animation:rtScan 3s cubic-bezier(.4,0,.2,1)}@keyframes rtScan{0%{top:0%;opacity:0}8%{opacity:1}92%{opacity:1}to{top:100%;opacity:0}}.rt-particles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.rt-particles i{position:absolute;top:-16px;left:var(--x);width:2px;height:16px;background:linear-gradient(180deg,transparent,var(--jv-cyan-bright));box-shadow:0 0 6px var(--jv-cyan-bright);animation:rtFall 1.5s linear infinite;animation-delay:var(--d);opacity:.85}@keyframes rtFall{0%{top:-16px;opacity:0}15%{opacity:.9}to{top:110%;opacity:0}}.rt-core{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;z-index:2}.rt-orb-wrap{position:relative;width:58px;height:58px;display:flex;align-items:center;justify-content:center}.rt-ring{position:absolute;width:120px;height:120px;top:50%;left:50%;margin:-60px 0 0 -60px;border:1px solid rgba(0,212,255,.45);border-radius:50%;animation:rtRingExpand 3s ease-out}.rt-ring-2{animation-delay:.7s;border-color:#00d4ff4d}@keyframes rtRingExpand{0%{transform:scale(.3);opacity:.9}to{transform:scale(2.3);opacity:0}}.rt-orb{width:58px;height:58px;border-radius:50%;background:radial-gradient(circle at 35% 35%,rgba(0,212,255,.65),rgba(79,195,247,.1) 70%,transparent);border:1px solid var(--jv-cyan-bright);box-shadow:0 0 34px #00d4ff99,inset 0 0 18px #00d4ff4d;animation:rtOrbPulse 1s ease-in-out infinite}@keyframes rtOrbPulse{0%,to{transform:scale(1);box-shadow:0 0 34px #00d4ff99,inset 0 0 18px #00d4ff4d}50%{transform:scale(1.12);box-shadow:0 0 50px #00d4ffe6,inset 0 0 22px #00d4ff80}}.rt-text{font-size:13px;font-weight:700;color:var(--jv-cyan-bright);letter-spacing:4px;text-transform:uppercase;font-family:var(--jv-font-mono);text-shadow:0 0 8px var(--jv-cyan-glow)}.rt-sub{font-size:10px;color:var(--jv-text-dim);letter-spacing:1px;font-family:var(--jv-font-mono)}.rt-progress{width:168px;height:2px;background:#00d4ff26;border-radius:1px;overflow:hidden}.rt-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--jv-cyan),var(--jv-cyan-bright));box-shadow:0 0 8px var(--jv-cyan-bright);animation:rtProgress 3s linear}@keyframes rtProgress{0%{width:0}to{width:100%}}.rt-corner{position:absolute;width:18px;height:18px;border:1px solid var(--jv-cyan-bright);opacity:.7}.rt-corner.tl{top:12px;left:12px;border-right:none;border-bottom:none}.rt-corner.tr{top:12px;right:12px;border-left:none;border-bottom:none}.rt-corner.bl{bottom:12px;left:12px;border-right:none;border-top:none}.rt-corner.br{bottom:12px;right:12px;border-left:none;border-top:none}.report-view{padding:18px 22px;color:var(--jv-text)}.report-header{position:relative;padding:16px 20px;margin-bottom:16px;border-radius:6px;background:radial-gradient(ellipse at 80% 0%,var(--jv-cyan-faint),transparent 60%),linear-gradient(135deg,var(--jv-cyan-faint),transparent);border:1px solid var(--jv-border-bright);box-shadow:0 0 24px #00d4ff1a;overflow:hidden}.report-header-glow{position:absolute;top:-60%;right:-20%;width:240px;height:240px;background:radial-gradient(circle,var(--jv-cyan-glow),transparent 70%);pointer-events:none}.report-header:before{content:"";position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,var(--jv-cyan-bright),transparent);box-shadow:0 0 6px var(--jv-cyan-bright)}.report-header-info{position:relative;z-index:1}.report-title{font-size:20px;font-weight:700;margin:0 0 8px;letter-spacing:1.5px;background:linear-gradient(90deg,var(--jv-cyan-bright),var(--jv-cyan));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--jv-cyan-bright);text-shadow:0 0 30px var(--jv-cyan-glow);text-transform:uppercase}.report-meta{display:flex;gap:8px;flex-wrap:wrap}.report-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;font-size:11px;border-radius:3px;background:var(--jv-cyan-faint);color:var(--jv-cyan-bright);border:1px solid var(--jv-border);box-shadow:0 0 8px #00d4ff1f;letter-spacing:1px;font-family:var(--jv-font-mono);text-transform:uppercase}.report-badge-dot{width:6px;height:6px;border-radius:50%;background:var(--jv-cyan-bright);animation:jvBadgePulse 1.5s ease-in-out infinite}@keyframes jvBadgePulse{0%,to{opacity:1;box-shadow:0 0 4px var(--jv-cyan-bright)}50%{opacity:.5;box-shadow:0 0 12px var(--jv-cyan-bright)}}.report-badge-file{background:var(--jv-amber-faint);color:var(--jv-amber);border-color:#fa06}.report-body{margin-bottom:18px}.report-markdown{color:var(--jv-text);font-size:14px;line-height:1.75}.report-markdown .fab-section-card{margin-bottom:12px;padding:14px 18px;border-radius:6px;background:var(--jv-bg-2);border:1px solid var(--jv-border);transition:all .3s;position:relative}.report-markdown .fab-section-card:hover{border-color:var(--jv-border-bright)}.report-markdown .fab-section-main{background:radial-gradient(ellipse at 20% 0%,var(--jv-cyan-faint),transparent 50%),var(--jv-bg-2);border-color:var(--jv-border-bright)}.report-markdown .fab-section-card:before{content:"";position:absolute;left:0;top:10%;bottom:10%;width:2px;background:linear-gradient(180deg,transparent,var(--jv-cyan-bright),transparent);border-radius:1px}.report-markdown .fab-section-card:after{content:"";position:absolute;top:6px;right:6px;width:12px;height:12px;border:1.5px solid var(--jv-cyan-bright);border-left:none;border-bottom:none;opacity:.5}.report-markdown h2,.report-markdown h3{margin:0 0 8px;font-weight:700;display:flex;align-items:center;gap:8px}.report-markdown h2{font-size:16px;color:var(--jv-cyan-bright);text-shadow:0 0 8px var(--jv-cyan-glow);letter-spacing:1px;text-transform:uppercase}.report-markdown h3{font-size:14px;color:var(--jv-cyan);letter-spacing:.5px}.report-markdown h4{font-size:13px;color:var(--jv-text-dim);margin:8px 0 4px}.report-markdown h5{font-size:12px;color:var(--jv-text-mute);margin:6px 0 4px}.report-markdown .jv-hex-bullet{display:inline-block;width:8px;height:8px;background:var(--jv-cyan-bright);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);box-shadow:0 0 6px var(--jv-cyan-glow);flex-shrink:0}.report-markdown p{margin:0 0 6px}.report-markdown strong{color:var(--jv-amber);font-weight:600;text-shadow:0 0 4px var(--jv-amber-glow)}.report-markdown ul{padding-left:20px;margin:6px 0}.report-markdown li{margin-bottom:4px;color:var(--jv-text)}.report-markdown .fab-section-divider{height:1px;background:linear-gradient(90deg,transparent,var(--jv-cyan-mid),transparent);margin:10px 0}.report-charts{margin-top:20px;position:relative}.report-charts-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--jv-cyan-bright);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--jv-border);letter-spacing:1.5px;position:relative;text-transform:uppercase}.report-charts-title:after{content:"";position:absolute;bottom:-1px;left:0;width:80px;height:1px;background:linear-gradient(90deg,var(--jv-cyan-bright),transparent);box-shadow:0 0 4px var(--jv-cyan-bright)}.report-charts-icon{display:flex;align-items:center;filter:drop-shadow(0 0 4px var(--jv-cyan-glow))}.report-charts-count{margin-left:auto;font-size:11px;font-weight:400;color:var(--jv-text-dim);font-family:var(--jv-font-mono)}.report-charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.report-chart-card{padding:12px;border-radius:6px;background:var(--jv-bg-2);border:1px solid var(--jv-border);transition:all .3s;position:relative}.report-chart-card:hover{border-color:var(--jv-border-bright);box-shadow:0 8px 28px #00d4ff26;transform:translateY(-2px)}@media(max-width:768px){.report-view{padding:12px}.report-title{font-size:18px}.report-charts-grid{grid-template-columns:1fr}}.jv-statusbar{display:flex;align-items:center;justify-content:space-between;padding:0 18px;height:28px;flex-shrink:0;background:var(--jv-bg-1);border-top:1px solid var(--jv-border);position:relative;z-index:5;font-family:var(--jv-font-mono);font-size:11px;color:var(--jv-text-dim);letter-spacing:1px}.jv-statusbar:before{content:"";position:absolute;top:-1px;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,var(--jv-cyan-bright),transparent);box-shadow:0 0 4px var(--jv-cyan-glow)}.jv-status-left{display:flex;align-items:center;gap:12px}.jv-status-dot{width:7px;height:7px;border-radius:50%;background:var(--jv-cyan-bright);box-shadow:0 0 6px var(--jv-cyan-bright);animation:jvGlowPulse 2s ease-in-out infinite}.jv-status-time{color:var(--jv-cyan-bright);font-weight:600}.jv-status-label{color:var(--jv-text-dim);text-transform:uppercase;letter-spacing:2px}.jv-status-stream{flex:1;overflow:hidden;margin:0 20px;white-space:nowrap;position:relative;-webkit-mask:linear-gradient(90deg,transparent,black 8%,black 92%,transparent);mask:linear-gradient(90deg,transparent,black 8%,black 92%,transparent)}.jv-status-stream span{display:inline-block;padding-left:100%;color:var(--jv-text-mute);animation:jvDataStream 30s linear infinite;font-size:10px}@keyframes jvDataStream{to{transform:translate(-100%)}}.jv-status-metrics{display:flex;align-items:center;gap:14px}.jv-metric{display:flex;align-items:center;gap:5px}.jv-metric-label{color:var(--jv-text-dim);font-size:10px;text-transform:uppercase}.jv-metric-bar{width:36px;height:5px;background:#4fc3f71a;border-radius:1px;overflow:hidden;position:relative}.jv-metric-bar:after{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--w, 60%);background:linear-gradient(90deg,var(--jv-cyan),var(--jv-cyan-bright));box-shadow:0 0 6px var(--jv-cyan-glow);animation:jvMetricFill 2s ease-in-out infinite}@keyframes jvMetricFill{0%,to{opacity:.7}50%{opacity:1}}.jv-metric-bar.warn:after{background:linear-gradient(90deg,var(--jv-amber),var(--jv-amber));box-shadow:0 0 6px var(--jv-amber-glow)}.fab-panel.fab-panel{background:radial-gradient(ellipse at 20% 0%,rgba(79,195,247,.08),transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(0,212,255,.05),transparent 50%),linear-gradient(180deg,#02060f,#050b18,#02060f)!important;box-shadow:0 0 0 1px #4fc3f740,0 0 60px #00d4ff2e,0 0 120px #00d4ff14,0 32px 64px #000000d9!important;color:#e6f7ff!important;border:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.fab-panel .fab-panel-inner{background:transparent!important;border:none!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.fab-panel .fab-panel-body{background:#4fc3f740!important;border:none!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.fab-panel .voice-panel,.fab-panel .process-panel{background:transparent!important;border:none!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:#e6f7ff!important}.fab-panel .fab-section-card,.fab-panel .report-chart-card{background:#081222!important;border:1px solid rgba(79,195,247,.25)!important;border-radius:6px!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:#b8d8f0!important}.fab-panel .report-chart-card{background:#081222!important;border-color:#4fc3f733!important}.fab-panel .fab-section-card.fab-section-main{background:radial-gradient(ellipse at 20% 0%,rgba(79,195,247,.08),transparent 50%),#081222!important;border-color:#00d4ff99!important}.fab-panel .fab-section-card:hover{border-color:#00d4ff99!important}.fab-panel .report-chart-card:hover{border-color:#00d4ff99!important;box-shadow:0 8px 28px #00d4ff26!important}.fab-panel .fab-section-title{background:transparent!important;border:none!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:#00d4ff!important}.fab-panel .fab-section-title.fab-section-title{-webkit-text-fill-color:currentColor!important}.fab-panel .fab-section-divider{height:1px!important;background:linear-gradient(90deg,transparent,rgba(79,195,247,.3),transparent)!important;border:none!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.fab-panel .jv-statusbar{background:#050b18!important;border-top:1px solid rgba(79,195,247,.25)!important;color:#6a93b8!important}.app{text-align:center;padding:0;margin:0;width:100%;max-width:100%;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;min-height:100vh}*{box-sizing:border-box}html,body{overflow-x:hidden;max-width:100%;height:100%;margin:0;padding:0}.back-button{margin:0 15px 0 0;padding:12px 25px;background:linear-gradient(135deg,#1a5fb4,#134a8a);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;white-space:nowrap;flex-shrink:0;box-shadow:0 6px 12px #1a5fb44d,0 0 10px #1a5fb433;transition:all .3s cubic-bezier(.25,.8,.25,1);position:relative;overflow:hidden}.back-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:.5s}.back-button:hover{transform:translateY(-3px);box-shadow:0 10px 20px #1a5fb466,0 0 20px #1a5fb44d}.back-button:hover:before{left:100%}.back-button:active{transform:translateY(1px);box-shadow:0 3px 8px #1a5fb44d,0 0 5px #1a5fb433}.toolbar{position:fixed;top:0;left:0;right:0;height:50px;display:flex;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:15px;padding:10px 20px;background:linear-gradient(135deg,#1a5fb4,#0d3b66);border-bottom:2px solid #2679db;z-index:100;overflow-x:hidden;overflow-y:hidden;box-shadow:0 4px 12px #0003,0 0 15px #2679db4d;box-sizing:border-box;white-space:nowrap}.title{font-size:20px;font-weight:700;color:#fff;text-shadow:0 0 10px rgba(255,255,255,.5);margin-right:20px;white-space:nowrap;letter-spacing:.5px;text-align:left}.spacer{flex-grow:1}.btn-encryption,.btn-switch,.btn-server,.btn-firewall,.btn-router,.btn-camera,.btn-pc,.btn-guidebook,.btn-delete,.btn-cancel,.btn-save,.btn-load,.btn-clear{margin:0;padding:10px 20px;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;white-space:nowrap;flex-shrink:0;box-shadow:0 6px 12px #0003,0 0 10px #ffffff1a;transition:all .3s cubic-bezier(.25,.8,.25,1);position:relative;overflow:hidden}.btn-encryption:before,.btn-switch:before,.btn-server:before,.btn-firewall:before,.btn-router:before,.btn-camera:before,.btn-pc:before,.btn-guidebook:before,.btn-delete:before,.btn-cancel:before,.btn-save:before,.btn-load:before,.btn-clear:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:.5s}.btn-encryption{background:linear-gradient(135deg,#2679db,#1a5fb4)}.btn-switch{background:linear-gradient(135deg,#2ec27e,#26a269)}.btn-server{background:linear-gradient(135deg,#c01c28,#a51d2d)}.btn-firewall{background:linear-gradient(135deg,#9141ac,#7a3497)}.btn-router{background:linear-gradient(135deg,#3584e4,#2679db)}.btn-camera{background:linear-gradient(135deg,#f57900,#e66100)}.btn-pc{background:linear-gradient(135deg,#26a269,#2ec27e)}.btn-guidebook{background:linear-gradient(135deg,#9141ac,#a347ba)}.btn-delete,.btn-cancel,.btn-save,.btn-load,.btn-clear{background:linear-gradient(135deg,#3584e4,#2679db)}.btn-encryption:hover,.btn-switch:hover,.btn-server:hover,.btn-firewall:hover,.btn-router:hover,.btn-camera:hover,.btn-pc:hover,.btn-guidebook:hover,.btn-delete:hover,.btn-cancel:hover,.btn-save:hover,.btn-load:hover,.btn-clear:hover{transform:translateY(-3px);box-shadow:0 10px 20px #0000004d,0 0 20px #fff3}.btn-encryption:hover:before,.btn-switch:hover:before,.btn-server:hover:before,.btn-firewall:hover:before,.btn-router:hover:before,.btn-camera:hover:before,.btn-pc:hover:before,.btn-guidebook:hover:before,.btn-delete:hover:before,.btn-cancel:hover:before,.btn-save:hover:before,.btn-load:hover:before,.btn-clear:hover:before{left:100%}.btn-encryption:active,.btn-switch:active,.btn-server:active,.btn-firewall:active,.btn-router:active,.btn-camera:active,.btn-pc:active,.btn-guidebook:active,.btn-delete:active,.btn-cancel:active,.btn-save:active,.btn-load:active,.btn-clear:active{transform:translateY(1px);box-shadow:0 3px 8px #0003,0 0 5px #ffffff1a}.device-node{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:10px;cursor:move;-webkit-user-select:none;user-select:none;transition:all .3s cubic-bezier(.25,.8,.25,1);z-index:2;box-shadow:0 6px 12px #0003,0 0 8px #ffffff1a}.device-node:hover{transform:scale(1.05);box-shadow:0 10px 20px #0000004d,0 0 15px #fff3}.device-node.switch{border-radius:8px}.device-icon-container{width:100%;height:35px;display:flex;justify-content:center;align-items:center;margin-bottom:5px}.device-label{color:#fff;font-size:12px;font-weight:600;text-align:center;padding:0 5px;width:100%;text-shadow:0 1px 2px rgba(0,0,0,.5)}.status-light{position:absolute;width:8px;height:8px;border-radius:50%;background-color:#2ec27e;box-shadow:0 0 6px #2ec27e;right:6px;top:6px;animation:pulse 1.8s infinite}.ports-container{display:flex;justify-content:space-around;width:100%;padding:0 5px;margin-top:5px;align-items:center;position:absolute;bottom:5px}.port{width:5px;height:5px;border-radius:50%;background-color:#fff;border:1px solid #aaa;box-shadow:0 0 3px #0000004d}.port.connected{background-color:#2ec27e;box-shadow:0 0 6px #2ec27e}@keyframes pulse{0%{box-shadow:0 0 4px #2ec27e}50%{box-shadow:0 0 12px #2ec27e,0 0 18px #2ec27e}to{box-shadow:0 0 4px #2ec27e}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes flow{to{stroke-dashoffset:-100}}.network-line{pointer-events:none;z-index:1}.graph-container{position:fixed;top:50px;left:0;right:0;bottom:0;border:none;background-color:#f0f0f0;overflow-x:hidden;overflow-y:auto}.module-container{padding:25px;max-width:1200px;margin:25px auto;background:#fffffff2;border-radius:12px;box-shadow:0 10px 25px #00000026,0 0 15px #2679db1a;text-align:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid rgba(38,121,219,.1)}.module-container h2{color:#1a5fb4;margin-bottom:20px;font-size:28px;text-shadow:0 1px 3px rgba(0,0,0,.1);letter-spacing:.5px}.module-container p{color:#4a5568;font-size:16px;margin-bottom:30px;line-height:1.7;text-shadow:0 1px 1px rgba(0,0,0,.05)}.module-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;margin-top:25px}.feature-card{background:#ffffffe6;border-radius:10px;padding:20px;box-shadow:0 6px 15px #0000001a,0 0 10px #2679db14;transition:all .3s cubic-bezier(.25,.8,.25,1);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border:1px solid rgba(38,121,219,.05)}.feature-card:hover{transform:translateY(-5px);box-shadow:0 12px 25px #00000026,0 0 20px #2679db1f}.feature-card h3{color:#1a5fb4;margin-bottom:12px;font-size:20px;text-shadow:0 1px 2px rgba(0,0,0,.05)}.feature-card p{color:#4a5568;margin:0;font-size:14px;line-height:1.6}@media(max-width:768px){.module-container{padding:20px;margin:15px;border-radius:10px}.module-container h2{font-size:24px}.module-container p{font-size:14px}.module-content{grid-template-columns:1fr;gap:20px}.feature-card{padding:15px;border-radius:8px}.feature-card h3{font-size:18px}.feature-card p{font-size:13px}.toolbar{padding:8px 15px;height:45px}.title{font-size:18px}.back-button,.btn-encryption,.btn-switch,.btn-server,.btn-firewall,.btn-router,.btn-camera,.btn-pc,.btn-guidebook,.btn-delete,.btn-cancel,.btn-save,.btn-load,.btn-clear{padding:8px 16px;font-size:13px;border-radius:6px}}.user-info-header{position:fixed;top:15px;right:20px;z-index:1000;display:flex;align-items:center;background:#fffc;-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);border-radius:16px;padding:10px 18px;box-shadow:0 8px 24px #4f6ef714,0 1px 4px #00000008,inset 0 1px #fffc;border:1px solid rgba(99,130,255,.12);transition:all .3s cubic-bezier(.25,.8,.25,1);min-width:260px}.user-info-header:hover{transform:translateY(-2px);box-shadow:0 12px 32px #4f6ef71f,0 2px 8px #0000000a}.user-avatar{width:38px;height:38px;background:linear-gradient(135deg,#4f6ef7,#8b5cf6);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:12px;box-shadow:0 2px 8px #4f6ef733;border:2px solid rgba(255,255,255,.6)}.avatar-icon{font-size:18px;color:#fff}.user-details{flex:1;display:flex;flex-direction:column}.user-greeting{font-size:11px;color:#8b92b0;margin-bottom:1px;letter-spacing:.3px}.user-name{font-size:14px;font-weight:600;color:#1a2240;letter-spacing:.3px}.user-meta-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}.user-meta-tags .meta-tag{display:inline-flex;align-items:center;padding:1px 7px;border-radius:9px;background:#4f6ef71f;color:#4f6ef7;font-size:10px;font-weight:600;white-space:nowrap;border:1px solid rgba(79,110,247,.2)}.user-meta-tags .meta-tag.role-tag{background:#8b5cf624;border-color:#8b5cf640;color:#8b5cf6}.user-meta-tags .meta-tag.unassigned{background:#94a3b81f;border-color:#94a3b833;color:#94a3b8;font-style:italic}.logout-btn{background:#dc262614;color:#dc2626;border:1px solid rgba(220,38,38,.15);border-radius:10px;padding:6px 14px;margin-left:12px;cursor:pointer;font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;transition:all .25s ease}.logout-btn:hover{background:#dc262624;border-color:#dc262640;transform:translateY(-1px)}.logout-btn:active{transform:translateY(0)}.logout-icon{font-size:12px}@media(max-width:768px){.user-info-header{top:10px;right:10px;padding:8px 14px;min-width:220px;border-radius:14px}.user-avatar{width:34px;height:34px;margin-right:10px}.avatar-icon{font-size:16px}.user-greeting{font-size:10px}.user-name{font-size:13px}.logout-btn{padding:5px 10px;font-size:11px;border-radius:8px}.logout-icon{font-size:11px}}@media(max-width:480px){.user-info-header{min-width:180px;padding:6px 10px}.user-avatar{width:30px;height:30px;margin-right:8px}.avatar-icon{font-size:14px}.user-greeting{font-size:9px}.user-name{font-size:12px}.logout-btn{padding:4px 8px;font-size:10px}}:root{--pt-bg-start: #e0e8ff;--pt-bg-mid: #eef2ff;--pt-bg-end: #f5f0ff;--pt-surface: rgba(255, 255, 255, .82);--pt-surface-hover: rgba(255, 255, 255, .92);--pt-border: rgba(99, 130, 255, .12);--pt-border-hover: rgba(99, 130, 255, .25);--pt-accent: #4f6ef7;--pt-accent-light: #8b5cf6;--pt-text: #1a2240;--pt-text-muted: #5f6888;--pt-text-light: #8b92b0;--pt-shadow: 0 6px 20px rgba(79, 110, 247, .06), 0 1px 4px rgba(0, 0, 0, .02);--pt-shadow-hover: 0 12px 32px rgba(79, 110, 247, .1), 0 2px 8px rgba(0, 0, 0, .03);--pt-shadow-lg: 0 16px 40px rgba(79, 110, 247, .12), 0 4px 12px rgba(0, 0, 0, .04);--pt-radius: 16px;--pt-radius-sm: 10px;--pt-radius-lg: 20px;--pt-blur: blur(20px) saturate(1.4);--pt-transition: all .3s cubic-bezier(.25, .8, .25, 1)}.project-management,.attendance-management,.fixed-assets-management,.training-management,.user-management,.vehicle-management,.log-management,.asset-history,.llm-config,.daily-report-statistics,.administrative-management,.borrow-records-management,.report-page,.bidding-management{min-height:100vh;background:linear-gradient(135deg,var(--pt-bg-start) 0%,var(--pt-bg-mid) 40%,var(--pt-bg-end) 70%,#eef5ff 100%)!important;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif!important;padding-top:72px!important;position:relative;overflow-x:hidden;overflow-y:auto;animation:ptPageEnter .5s cubic-bezier(.16,1,.3,1) both}.project-management:before,.attendance-management:before,.fixed-assets-management:before,.training-management:before,.user-management:before,.vehicle-management:before,.log-management:before,.asset-history:before,.llm-config:before,.daily-report-statistics:before,.administrative-management:before,.borrow-records-management:before,.report-page:before,.bidding-management:before{display:none!important}.financial-management{min-height:100vh;background:linear-gradient(135deg,var(--pt-bg-start) 0%,var(--pt-bg-mid) 40%,var(--pt-bg-end) 70%,#eef5ff 100%)!important;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif!important;padding-top:72px!important;animation:ptPageEnter .5s cubic-bezier(.16,1,.3,1) both}.camera-management{background:linear-gradient(135deg,var(--pt-bg-start) 0%,var(--pt-bg-mid) 40%,var(--pt-bg-end) 70%,#eef5ff 100%)!important;animation:ptPageEnter .5s cubic-bezier(.16,1,.3,1) both}@keyframes ptPageEnter{0%{opacity:0}to{opacity:1}}.toolbar,.camera-header{position:fixed!important;top:0!important;left:0!important;right:0!important;height:64px!important;display:flex!important;flex-wrap:nowrap!important;justify-content:space-between!important;align-items:center!important;gap:16px!important;padding:0 28px!important;background:#ffffffd9!important;backdrop-filter:var(--pt-blur)!important;-webkit-backdrop-filter:var(--pt-blur)!important;border-bottom:1px solid var(--pt-border)!important;box-shadow:0 4px 20px #4f6ef70f,0 1px 2px #00000005!important;z-index:100!important;box-sizing:border-box!important;white-space:nowrap!important;animation:ptToolbarEnter .4s cubic-bezier(.16,1,.3,1) both!important}@keyframes ptToolbarEnter{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.toolbar .title,.camera-header h1{font-size:20px!important;font-weight:700!important;background:linear-gradient(135deg,#4f6ef7,#8b5cf6)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important;white-space:nowrap!important;letter-spacing:.5px!important;text-shadow:none!important;color:transparent!important;flex-grow:1!important;text-align:center!important}.toolbar .back-button,.camera-header .back-btn,.back-button{padding:8px 18px!important;background:#4f6ef714!important;color:#4f6ef7!important;border:1px solid rgba(79,110,247,.15)!important;border-radius:var(--pt-radius-sm)!important;cursor:pointer!important;font-size:13px!important;font-weight:600!important;white-space:nowrap!important;box-shadow:none!important;transition:var(--pt-transition)!important;text-shadow:none!important;display:flex!important;align-items:center!important;gap:4px!important}.toolbar .back-button:hover,.camera-header .back-btn:hover,.back-button:hover{background:#4f6ef724!important;border-color:#4f6ef74d!important;transform:translateY(-1px)!important;box-shadow:0 4px 12px #4f6ef71a!important;color:#4f6ef7!important}.toolbar .action-button,.action-button,.upload-button,.toolbar button:not(.back-button):not(.toolbar-logout-btn):not(.logout-btn){padding:8px 18px!important;background:linear-gradient(135deg,#4f6ef7,#8b5cf6)!important;color:#fff!important;border:none!important;border-radius:var(--pt-radius-sm)!important;cursor:pointer!important;font-size:13px!important;font-weight:600!important;white-space:nowrap!important;box-shadow:0 4px 12px #4f6ef733!important;transition:var(--pt-transition)!important;text-shadow:none!important}.toolbar .action-button:hover,.action-button:hover,.upload-button:hover{transform:translateY(-1px)!important;box-shadow:0 6px 18px #4f6ef74d!important}.toolbar-user-info,.header-actions{display:flex!important;align-items:center!important;gap:10px!important}.toolbar-user-avatar{width:34px!important;height:34px!important;background:linear-gradient(135deg,#4f6ef7,#8b5cf6)!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 2px 8px #4f6ef733!important;border:2px solid rgba(255,255,255,.6)!important}.toolbar-avatar-icon,.toolbar-user-avatar span{font-size:16px!important;color:#fff!important;text-shadow:none!important}.toolbar-user-details{display:flex!important;flex-direction:column!important}.toolbar-user-name{font-size:13px!important;font-weight:600!important;color:var(--pt-text)!important;text-shadow:none!important}.toolbar-user-meta{display:flex!important;align-items:center!important;gap:6px!important;margin-top:2px!important;font-size:11px!important;line-height:1.4!important;flex-wrap:wrap!important}.toolbar-user-meta .user-meta-tag{display:inline-flex!important;align-items:center!important;padding:1px 8px!important;border-radius:10px!important;background:#4f6ef71f!important;color:var(--pt-text)!important;font-weight:500!important;white-space:nowrap!important;border:1px solid rgba(79,110,247,.2)!important}.toolbar-user-meta .user-meta-tag.role-tag{background:#8b5cf626!important;border-color:#8b5cf640!important}.toolbar-user-meta .user-meta-tag.unassigned{background:#94a3b826!important;border-color:#94a3b840!important;color:#94a3b8!important;font-style:italic!important}.camera-header .user-name,.header-actions .user-name{color:var(--pt-text)!important;font-size:13px!important;font-weight:500!important}.toolbar-logout-btn,.camera-header .logout-btn,.header-actions .logout-btn,.logout-btn{padding:6px 14px!important;background:#dc262614!important;color:#dc2626!important;border:1px solid rgba(220,38,38,.15)!important;border-radius:8px!important;cursor:pointer!important;font-size:12px!important;font-weight:500!important;transition:var(--pt-transition)!important;box-shadow:none!important;text-shadow:none!important}.toolbar-logout-btn:hover,.camera-header .logout-btn:hover,.header-actions .logout-btn:hover,.logout-btn:hover{background:#dc262624!important;border-color:#dc262640!important;transform:translateY(-1px)!important}.stats-container,.stats-bar,.summary-row{display:flex!important;gap:16px!important;padding:0 28px!important;margin-bottom:24px!important;animation:ptStatsEnter .5s cubic-bezier(.16,1,.3,1) .1s both!important}@keyframes ptStatsEnter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.stat-card,.stats-bar .stat-item,.summary-card{flex:1!important;background:var(--pt-surface)!important;-webkit-backdrop-filter:blur(16px) saturate(1.3)!important;backdrop-filter:blur(16px) saturate(1.3)!important;border:1px solid var(--pt-border)!important;border-radius:var(--pt-radius)!important;padding:20px 24px!important;text-align:center!important;box-shadow:var(--pt-shadow)!important;transition:var(--pt-transition)!important;color:var(--pt-text)!important;position:relative!important;overflow:hidden!important}.stat-card:before,.stats-bar .stat-item:before,.summary-card:before{content:""!important;position:absolute!important;top:0!important;left:0!important;right:0!important;height:3px!important;background:linear-gradient(90deg,#4f6ef7,#8b5cf6,#06b6d4)!important;opacity:.6!important;transition:opacity .3s ease!important}.stat-card:hover,.stats-bar .stat-item:hover,.summary-card:hover{transform:translateY(-3px)!important;box-shadow:var(--pt-shadow-hover)!important;background:var(--pt-surface-hover)!important}.stat-card:hover:before,.stats-bar .stat-item:hover:before,.summary-card:hover:before{opacity:1!important}.stat-card h3,.stat-item .stat-label,.summary-label{font-size:13px!important;font-weight:500!important;color:var(--pt-text-muted)!important;margin:0 0 6px!important;text-shadow:none!important}.stat-card .stat-value,.stat-item .stat-value,.summary-value{font-size:28px!important;font-weight:700!important;background:linear-gradient(135deg,#4f6ef7,#8b5cf6)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important;margin:0!important;text-shadow:none!important;color:transparent!important}.summary-cyan .summary-value,.stat-online .stat-value{background:linear-gradient(135deg,#06b6d4,#0891b2)!important;-webkit-background-clip:text!important;background-clip:text!important}.summary-green .summary-value,.stat-match .stat-value{background:linear-gradient(135deg,#10b981,#059669)!important;-webkit-background-clip:text!important;background-clip:text!important}.summary-purple .summary-value{background:linear-gradient(135deg,#8b5cf6,#8b5cf6)!important;-webkit-background-clip:text!important;background-clip:text!important}.summary-red .summary-value,.stat-today .stat-value{background:linear-gradient(135deg,#ef4444,#dc2626)!important;-webkit-background-clip:text!important;background-clip:text!important}.project-management>div:not(.toolbar),.fixed-assets-content,.attendance-management>div:not(.toolbar),.training-management>div:not(.toolbar),.user-management>div:not(.toolbar),.vehicle-management>div:not(.toolbar),.log-management>div:not(.toolbar),.asset-history>div:not(.toolbar),.llm-config>div:not(.toolbar),.daily-report-statistics>div:not(.toolbar),.administrative-management>div:not(.toolbar),.borrow-records-management>div:not(.toolbar),.report-page>div:not(.toolbar),.financial-management>div:not(.toolbar){position:relative!important;z-index:1!important}table,.data-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;background:var(--pt-surface)!important;-webkit-backdrop-filter:blur(16px) saturate(1.3)!important;backdrop-filter:blur(16px) saturate(1.3)!important;border-radius:var(--pt-radius)!important;overflow:hidden!important;border:1px solid var(--pt-border)!important;box-shadow:var(--pt-shadow)!important}table thead th,.data-table thead th{background:#4f6ef70f!important;color:var(--pt-text)!important;font-weight:600!important;font-size:13px!important;padding:14px 16px!important;border-bottom:1px solid var(--pt-border)!important;text-align:left!important;white-space:nowrap!important;text-shadow:none!important}table tbody td,.data-table tbody td{padding:12px 16px!important;border-bottom:1px solid rgba(99,130,255,.06)!important;color:var(--pt-text)!important;font-size:13px!important;background:transparent!important;transition:background .2s ease!important}table tbody tr:hover td,.data-table tbody tr:hover td{background:#4f6ef70a!important}.controls,.controls-bar,.filter-bar,.search-bar{background:var(--pt-surface)!important;-webkit-backdrop-filter:blur(16px) saturate(1.3)!important;backdrop-filter:blur(16px) saturate(1.3)!important;border:1px solid var(--pt-border)!important;border-radius:var(--pt-radius)!important;padding:16px 20px!important;box-shadow:var(--pt-shadow)!important;margin:0 28px 20px!important;color:var(--pt-text)!important}input[type=text],input[type=search],input[type=date],input[type=number],input[type=email],input[type=password],input[type=month],select,textarea{background:#ffffffe6!important;border:1px solid var(--pt-border)!important;border-radius:8px!important;padding:8px 14px!important;color:var(--pt-text)!important;font-size:13px!important;transition:var(--pt-transition)!important;outline:none!important}input:focus,select:focus,textarea:focus{border-color:#4f6ef766!important;box-shadow:0 0 0 3px #4f6ef71a!important;background:#fff!important}.modal,[class*=modal],[class*=Modal]{background:var(--pt-surface)!important;-webkit-backdrop-filter:var(--pt-blur)!important;backdrop-filter:var(--pt-blur)!important;border:1px solid var(--pt-border)!important;border-radius:var(--pt-radius-lg)!important;box-shadow:var(--pt-shadow-lg)!important;color:var(--pt-text)!important}.modal-header,[class*=modal-header],[class*=ModalHeader]{background:#4f6ef70a!important;border-bottom:1px solid var(--pt-border)!important;padding:18px 24px!important;border-radius:var(--pt-radius-lg) var(--pt-radius-lg) 0 0!important;color:var(--pt-text)!important}.modal-header h2,.modal-header h3,[class*=modal-header] h2,[class*=modal-header] h3{color:var(--pt-text)!important;text-shadow:none!important}.tab-bar,[class*=tab-bar],[class*=TabBar]{display:flex!important;gap:4px!important;background:var(--pt-surface)!important;-webkit-backdrop-filter:blur(16px)!important;backdrop-filter:blur(16px)!important;border:1px solid var(--pt-border)!important;border-radius:var(--pt-radius)!important;padding:4px!important;margin:0 28px 20px!important;box-shadow:var(--pt-shadow)!important}.tab-bar button,[class*=tab-bar] button,[class*=Tab]{padding:10px 20px!important;background:transparent!important;color:var(--pt-text-muted)!important;border:none!important;border-radius:12px!important;cursor:pointer!important;font-size:14px!important;font-weight:500!important;transition:var(--pt-transition)!important;text-shadow:none!important;box-shadow:none!important}.tab-bar button.active,.tab-bar button:hover,[class*=tab-bar] button.active,[class*=tab-bar] button:hover{background:linear-gradient(135deg,#4f6ef7,#8b5cf6)!important;color:#fff!important;box-shadow:0 4px 12px #4f6ef733!important}.loading{display:flex!important;justify-content:center!important;align-items:center!important;min-height:200px!important;color:var(--pt-text-muted)!important;font-size:15px!important;text-shadow:none!important}.pagination,.pagination-container,[class*=pagination]{display:flex!important;justify-content:center!important;align-items:center!important;gap:6px!important;padding:20px 0!important}.pagination button,.pagination-container button,[class*=pagination] button{padding:8px 14px!important;background:var(--pt-surface)!important;color:var(--pt-text)!important;border:1px solid var(--pt-border)!important;border-radius:8px!important;cursor:pointer!important;font-size:13px!important;transition:var(--pt-transition)!important;box-shadow:none!important;text-shadow:none!important}.pagination button.active,.pagination button:hover,.pagination-container button.active,.pagination-container button:hover{background:linear-gradient(135deg,#4f6ef7,#8b5cf6)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 4px 12px #4f6ef733!important}.table-wrap,.table-container,[class*=table-container],.assets-table-container{background:var(--pt-surface)!important;-webkit-backdrop-filter:blur(16px) saturate(1.3)!important;backdrop-filter:blur(16px) saturate(1.3)!important;border:1px solid var(--pt-border)!important;border-radius:var(--pt-radius)!important;overflow:hidden!important;box-shadow:var(--pt-shadow)!important;margin:0 28px 20px!important}.notification,.notifications-container .notification{-webkit-backdrop-filter:blur(20px)!important;backdrop-filter:blur(20px)!important;border:1px solid var(--pt-border)!important;border-radius:var(--pt-radius-sm)!important;box-shadow:var(--pt-shadow)!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#4f6ef726;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#4f6ef740}.project-management h2,.project-management h3,.project-management h4,.project-management p,.project-management span,.project-management label,.attendance-management h2,.attendance-management h3,.attendance-management h4,.attendance-management p,.attendance-management span,.attendance-management label,.fixed-assets-management h2,.fixed-assets-management h3,.fixed-assets-management h4,.fixed-assets-management p,.fixed-assets-management span,.fixed-assets-management label,.training-management h2,.training-management h3,.training-management h4,.training-management p,.training-management span,.training-management label,.user-management h2,.user-management h3,.user-management h4,.user-management p,.user-management span,.user-management label,.vehicle-management h2,.vehicle-management h3,.vehicle-management h4,.vehicle-management p,.vehicle-management span,.vehicle-management label,.log-management h2,.log-management h3,.log-management h4,.log-management p,.log-management span,.log-management label,.asset-history h2,.asset-history h3,.asset-history h4,.asset-history p,.asset-history span,.asset-history label,.llm-config h2,.llm-config h3,.llm-config h4,.llm-config p,.llm-config span,.llm-config label,.daily-report-statistics h2,.daily-report-statistics h3,.daily-report-statistics h4,.daily-report-statistics p,.daily-report-statistics span,.daily-report-statistics label,.administrative-management h2,.administrative-management h3,.administrative-management h4,.administrative-management p,.administrative-management span,.administrative-management label,.borrow-records-management h2,.borrow-records-management h3,.borrow-records-management h4,.borrow-records-management p,.borrow-records-management span,.borrow-records-management label,.report-page h2,.report-page h3,.report-page h4,.report-page p,.report-page span,.report-page label,.financial-management h2,.financial-management h3,.financial-management h4,.financial-management p,.financial-management span,.financial-management label,.camera-management h2,.camera-management h3,.camera-management h4,.camera-management p,.camera-management span,.camera-management label,.project-management .toolbar span,.project-management .toolbar div,.attendance-management .toolbar span,.attendance-management .toolbar div,.fixed-assets-management .toolbar span,.fixed-assets-management .toolbar div,.training-management .toolbar span,.training-management .toolbar div,.user-management .toolbar span,.user-management .toolbar div,.vehicle-management .toolbar span,.vehicle-management .toolbar div,.log-management .toolbar span,.log-management .toolbar div,.asset-history .toolbar span,.asset-history .toolbar div,.llm-config .toolbar span,.llm-config .toolbar div,.daily-report-statistics .toolbar span,.daily-report-statistics .toolbar div,.administrative-management .toolbar span,.administrative-management .toolbar div,.borrow-records-management .toolbar span,.borrow-records-management .toolbar div,.report-page .toolbar span,.report-page .toolbar div{color:var(--pt-text)!important;text-shadow:none!important}.toolbar .spacer{flex-grow:1!important}[class*=card],[class*=Card],[class*=panel],[class*=Panel],[class*=section],[class*=Section]{background:var(--pt-surface)!important;-webkit-backdrop-filter:blur(16px) saturate(1.3)!important;backdrop-filter:blur(16px) saturate(1.3)!important;border:1px solid var(--pt-border)!important;border-radius:var(--pt-radius)!important;box-shadow:var(--pt-shadow)!important;color:var(--pt-text)!important}@media(max-width:768px){.toolbar,.camera-header{padding:0 16px!important;height:56px!important;gap:8px!important}.toolbar .title,.camera-header h1{font-size:16px!important}.toolbar .back-button,.camera-header .back-btn,.back-button{padding:6px 12px!important;font-size:12px!important}.stats-container,.stats-bar,.summary-row{flex-wrap:wrap!important;padding:0 16px!important;gap:10px!important}.stat-card,.stats-bar .stat-item,.summary-card{min-width:calc(50% - 8px)!important;padding:14px 16px!important}.controls,.controls-bar,.filter-bar,.search-bar,.table-wrap,.table-container,.assets-table-container{margin:0 16px 16px!important}}@media(max-width:480px){.toolbar .title,.camera-header h1{font-size:14px!important}.toolbar-user-info .toolbar-user-avatar,.header-actions .user-name,.toolbar-user-meta{display:none!important}}@media(max-width:768px){.toolbar-user-meta .user-meta-tag{font-size:10px!important;padding:1px 6px!important}}.inv-page,.meeting-mgmt,.ai-page,.invoice-management,.meeting-management,.visualization-view,.ai-assistant{min-height:100vh!important;background:linear-gradient(135deg,#e0e8ff,#eef2ff,#f5f0ff,#eef5ff,#e8eeff)!important;font-family:Inter,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif!important;color:#1a2240!important;padding-top:72px!important;position:relative!important;overflow-x:hidden!important;overflow-y:auto!important;animation:ptPageEnter .5s cubic-bezier(.16,1,.3,1) both!important}.inv-page:before,.meeting-mgmt:before,.viz-container:before,.ai-page:before,.ai-page .ai-stars,.viz-container .viz-bg-grid,.viz-container .viz-bg-particles{display:none!important;background:none!important}.inv-toolbar,.meeting-header,.viz-header,.ai-header,.header-bar,.page-header,.top-bar,.nav-bar{position:fixed!important;top:0!important;left:0!important;right:0!important;height:64px!important;display:flex!important;flex-wrap:nowrap!important;justify-content:space-between!important;align-items:center!important;gap:16px!important;padding:0 28px!important;background:#ffffffd9!important;backdrop-filter:blur(20px) saturate(1.4)!important;-webkit-backdrop-filter:blur(20px) saturate(1.4)!important;border-bottom:1px solid rgba(99,130,255,.15)!important;box-shadow:0 4px 20px #4f6ef70f!important;z-index:100!important;box-sizing:border-box!important;white-space:nowrap!important}.inv-toolbar:before,.meeting-header:before,.viz-header:before,.ai-header:before,.header-bar:before,.page-header:before,.top-bar:before,.nav-bar:before,.toolbar:before{content:""!important;position:absolute!important;top:0!important;left:0!important;right:0!important;height:3px!important;background:linear-gradient(90deg,#4f6ef7,#8b5cf6,#06b6d4)!important;opacity:.7!important}.inv-toolbar h1,.inv-toolbar h2,.inv-toolbar .title,.meeting-header h1,.meeting-header h2,.meeting-header .title,.viz-header h1,.viz-header .title,.ai-header h1,.ai-header .title,.header-bar .title,.page-header .title,.top-bar .title,.nav-bar .title,.section-header h2,.section-header h3,.content-header h2,.content-header h3,.page-title,.section-title{font-size:1.3rem!important;font-weight:800!important;background:linear-gradient(135deg,#1a2240,#4f6ef7,#8b5cf6)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important;letter-spacing:-.5px!important;text-shadow:none!important;color:transparent!important}.inv-back-btn,.meeting-back-btn,.viz-back-btn,.ai-back-btn,.back-btn,.btn-back,.btn-cancel{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:8px 18px!important;background:#4f6ef714!important;border:1px solid rgba(79,110,247,.2)!important;border-radius:10px!important;color:#4f6ef7!important;font-size:14px!important;font-weight:600!important;cursor:pointer!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;white-space:nowrap!important;text-shadow:none!important;box-shadow:none!important}.inv-back-btn:hover,.meeting-back-btn:hover,.viz-back-btn:hover,.ai-back-btn:hover,.back-btn:hover,.btn-back:hover{background:#4f6ef7!important;color:#fff!important;transform:translate(-2px)!important;box-shadow:0 4px 12px #4f6ef740!important}.btn-primary,.btn-save,.btn-submit,.btn-add,.btn-create,.btn-upload,.btn-export,.btn-import,.refresh-btn,.action-button,.upload-button,.primary-btn,.submit-btn,.save-btn,.add-btn,.export-btn{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:8px 20px!important;background:linear-gradient(135deg,#4f6ef7,#8b5cf6)!important;color:#fff!important;border:none!important;border-radius:10px!important;font-size:14px!important;font-weight:600!important;cursor:pointer!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;box-shadow:0 4px 14px #4f6ef740!important;white-space:nowrap!important;text-shadow:none!important}.btn-primary:hover,.btn-save:hover,.btn-submit:hover,.btn-add:hover,.btn-create:hover,.btn-upload:hover,.btn-export:hover,.btn-import:hover,.refresh-btn:hover,.action-button:hover,.upload-button:hover,.primary-btn:hover,.submit-btn:hover,.save-btn:hover,.add-btn:hover,.export-btn:hover{transform:translateY(-2px)!important;box-shadow:0 8px 20px #4f6ef759!important}.btn-primary:active,.btn-save:active,.btn-submit:active,.action-button:active{transform:translateY(0)!important}.btn-danger,.btn-delete,.btn-reject,.danger-btn,.delete-btn,.reject-btn{padding:8px 18px!important;background:#dc262614!important;color:#dc2626!important;border:1px solid rgba(220,38,38,.2)!important;border-radius:10px!important;font-size:14px!important;font-weight:600!important;cursor:pointer!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;white-space:nowrap!important;text-shadow:none!important}.btn-danger:hover,.btn-delete:hover,.btn-reject:hover,.danger-btn:hover,.delete-btn:hover,.reject-btn:hover{background:#dc2626!important;color:#fff!important;transform:translateY(-2px)!important;box-shadow:0 4px 12px #dc262640!important}.btn-success,.btn-approve,.approve-btn,.success-btn{padding:6px 14px!important;background:#10b9811a!important;color:#059669!important;border:1px solid rgba(16,185,129,.2)!important;border-radius:8px!important;font-size:12px!important;font-weight:600!important;cursor:pointer!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;white-space:nowrap!important;text-shadow:none!important}.btn-success:hover,.btn-approve:hover,.approve-btn:hover,.success-btn:hover{background:#10b981!important;color:#fff!important;transform:translateY(-1px)!important;box-shadow:0 4px 10px #10b98140!important}.btn-edit,.edit-btn,.edit-button{padding:6px 14px!important;background:#4f6ef71a!important;color:#4f6ef7!important;border:1px solid rgba(79,110,247,.2)!important;border-radius:8px!important;font-size:12px!important;font-weight:600!important;cursor:pointer!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;white-space:nowrap!important;text-shadow:none!important}.btn-edit:hover,.edit-btn:hover,.edit-button:hover{background:#4f6ef7!important;color:#fff!important;transform:translateY(-1px)!important;box-shadow:0 4px 10px #4f6ef740!important}.action-btn,.action-btn-sm,.item-btn,.op-btn,.btn-sm{padding:5px 12px!important;border:1px solid transparent!important;border-radius:8px!important;font-size:12px!important;font-weight:600!important;cursor:pointer!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;white-space:nowrap!important;text-shadow:none!important}.action-btn:hover,.action-btn-sm:hover,.item-btn:hover,.op-btn:hover{transform:translateY(-1px)!important}.search-box,.search-wrap,.search-container{position:relative!important}.search-input,.search-box input,.search-wrap input,input[type=text].search,input[type=search].search{width:100%!important;padding:10px 16px 10px 40px!important;background:#fffc!important;border:1px solid rgba(99,130,255,.15)!important;border-radius:10px!important;font-size:14px!important;color:#1a2240!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;box-sizing:border-box!important;box-shadow:none!important;text-shadow:none!important}.search-input:focus,.search-box input:focus,.search-wrap input:focus{outline:none!important;border-color:#4f6ef7!important;background:#fff!important;box-shadow:0 0 0 3px #4f6ef71f!important}.filter-select,.control-select,select.filter,select.control,select.form-control{padding:10px 16px!important;background:#fffc!important;border:1px solid rgba(99,130,255,.15)!important;border-radius:10px!important;font-size:14px!important;color:#1a2240!important;cursor:pointer!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;box-shadow:none!important;text-shadow:none!important}.filter-select:hover,.control-select:hover{border-color:#4f6ef7!important;background:#fff!important;box-shadow:0 2px 8px #4f6ef70f!important}.filter-select:focus,.control-select:focus{outline:none!important;border-color:#4f6ef7!important;box-shadow:0 0 0 3px #4f6ef71f!important}.tabs,.tab-nav,.tab-container,.attendance-tabs{display:flex!important;gap:10px!important;margin:0 0 20px!important;padding:8px!important;background:#ffffffbf!important;border:1px solid rgba(99,130,255,.15)!important;border-radius:20px!important;-webkit-backdrop-filter:blur(16px) saturate(1.3)!important;backdrop-filter:blur(16px) saturate(1.3)!important;box-shadow:0 8px 24px #4f6ef714!important;width:fit-content!important}.tabs button,.tab-nav button,.tab-container button,.tab-btn{display:flex!important;align-items:center!important;gap:8px!important;padding:10px 22px!important;background:transparent!important;color:#5f6888!important;border:none!important;border-radius:10px!important;cursor:pointer!important;font-size:14px!important;font-weight:600!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;white-space:nowrap!important;text-shadow:none!important;box-shadow:none!important}.tabs button:hover,.tab-nav button:hover,.tab-btn:hover{background:#4f6ef70f!important;color:#4f6ef7!important}.tabs button.active,.tab-nav button.active,.tab-btn.active,.tab-bar button.active{background:linear-gradient(135deg,#4f6ef7,#8b5cf6)!important;color:#fff!important;box-shadow:0 4px 14px #4f6ef74d!important;transform:translateY(-1px)!important}.stat-card,.overview-stat-card,.progress-overview-item,.info-card,.metric-card,.kpi-card{background:#ffffffbf!important;-webkit-backdrop-filter:blur(16px) saturate(1.3)!important;backdrop-filter:blur(16px) saturate(1.3)!important;border:1px solid rgba(99,130,255,.15)!important;border-radius:20px!important;padding:20px 22px!important;box-shadow:0 8px 24px #4f6ef714!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;position:relative!important;overflow:hidden!important;color:#1a2240!important}.stat-card:hover,.overview-stat-card:hover,.info-card:hover,.metric-card:hover,.kpi-card:hover{transform:translateY(-4px)!important;box-shadow:0 16px 40px #4f6ef71a!important}.stat-card .stat-value,.overview-stat-card .stat-value,.overview-stat-card .overview-stat-value,.metric-card .metric-value,.kpi-card .kpi-value,.info-card .info-value{font-size:28px!important;font-weight:800!important;color:#1a2240!important;line-height:1!important;background:none!important;-webkit-text-fill-color:#1a2240!important;text-shadow:none!important}.stat-card .stat-label,.overview-stat-card .stat-label,.overview-stat-card .overview-stat-label,.metric-card .metric-label,.kpi-card .kpi-label,.info-card .info-label{font-size:13px!important;color:#5f6888!important;font-weight:500!important;text-shadow:none!important}.table-wrap,.table-container,.table-card,.data-table-container,.assets-table-container,.list-container,.card-container,.panel,.content-panel,.detail-panel,.info-panel,.form-panel{background:#ffffffbf!important;-webkit-backdrop-filter:blur(16px) saturate(1.3)!important;backdrop-filter:blur(16px) saturate(1.3)!important;border:1px solid rgba(99,130,255,.15)!important;border-radius:20px!important;box-shadow:0 16px 40px #4f6ef71a!important;overflow:hidden!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;color:#1a2240!important}.table-wrap:hover,.table-container:hover,.table-card:hover,.list-container:hover,.card-container:hover,.panel:hover{box-shadow:0 24px 60px #4f6ef71f!important}.table-container-title,.table-header,.section-header,.card-header,.panel-header,.list-header{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:18px 24px!important;border-bottom:1px solid rgba(99,130,255,.15)!important;background:linear-gradient(135deg,#4f6ef70a,#8b5cf608)!important}.table-container-title h3,.table-header h3,.section-header h3,.card-header h3,.panel-header h3,.list-header h3{margin:0!important;font-size:16px!important;font-weight:700!important;color:#1a2240!important;display:flex!important;align-items:center!important;gap:8px!important;background:none!important;-webkit-text-fill-color:#1a2240!important;text-shadow:none!important}table thead th,.data-table thead th{background:linear-gradient(135deg,#4f6ef71a,#8b5cf614)!important;color:#4f6ef7!important;font-weight:700!important;font-size:13px!important;padding:16px 14px!important;border-bottom:2px solid rgba(79,110,247,.15)!important;text-transform:uppercase!important;letter-spacing:.5px!important;white-space:nowrap!important;text-shadow:none!important}table tbody td,.data-table tbody td{padding:14px!important;border-bottom:1px solid rgba(99,130,255,.08)!important;color:#1a2240!important;font-size:14px!important;background:transparent!important;vertical-align:middle!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important}table tbody tr,.data-table tbody tr{transition:all .35s cubic-bezier(.25,.8,.25,1)!important}table tbody tr:hover,.data-table tbody tr:hover{background:#4f6ef70a!important;transform:translate(2px)!important}table tbody tr:hover td,.data-table tbody tr:hover td{border-bottom-color:#4f6ef726!important}table tbody tr:last-child td,.data-table tbody tr:last-child td{border-bottom:none!important}.status-badge,.badge,.tag,.status-tag,.status-label{display:inline-flex!important;align-items:center!important;gap:4px!important;padding:4px 12px!important;border-radius:20px!important;font-size:12px!important;font-weight:600!important;white-space:nowrap!important;text-shadow:none!important}.status-pending,.badge-pending,.badge-warning,.tag-pending,.tag-warning{background:#f59e0b1f!important;color:#d97706!important;border:1px solid rgba(245,158,11,.25)!important}.status-approved,.status-success,.badge-success,.badge-approved,.tag-success,.tag-approved{background:#10b9811f!important;color:#059669!important;border:1px solid rgba(16,185,129,.25)!important}.status-rejected,.status-error,.status-failed,.badge-danger,.badge-rejected,.badge-error,.tag-danger,.tag-rejected,.tag-error{background:#dc26261a!important;color:#dc2626!important;border:1px solid rgba(220,38,38,.2)!important}.status-active,.badge-active,.badge-info,.tag-active,.tag-info{background:#4f6ef71a!important;color:#4f6ef7!important;border:1px solid rgba(79,110,247,.2)!important}.type-badge,.type-tag,.type-label{display:inline-block!important;padding:4px 12px!important;border-radius:20px!important;color:#fff!important;font-size:12px!important;font-weight:600!important;white-space:nowrap!important;text-shadow:none!important;background:linear-gradient(135deg,#4f6ef7,#8b5cf6)!important}.loading,.loading-wrap,.spinner-wrap{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;padding:60px 20px!important;color:#8b92b0!important;font-size:15px!important;text-align:center!important;gap:12px!important;text-shadow:none!important}.loading:before,.loading-wrap:before{content:""!important;width:40px!important;height:40px!important;border:3px solid rgba(79,110,247,.15)!important;border-top-color:#4f6ef7!important;border-radius:50%!important;animation:ptSpin .8s linear infinite!important}@keyframes ptSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-state,.no-data,.empty-data,.no-result{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;padding:60px 20px!important;color:#8b92b0!important;font-size:15px!important;text-align:center!important;gap:12px!important;text-shadow:none!important}.empty-state:before,.no-data:before{content:"📭"!important;font-size:48px!important;opacity:.4!important}.form-group,.form-row,.form-item,.field-group{margin-bottom:16px!important}.form-group label,.form-row label,.form-item label,.field-group label{display:block!important;margin-bottom:6px!important;font-size:13px!important;font-weight:600!important;color:#5f6888!important;text-shadow:none!important}.form-group input,.form-group select,.form-group textarea,.form-row input,.form-row select,.form-row textarea,.form-item input,.form-item select,.form-item textarea,.field-group input,.field-group select,.field-group textarea{width:100%!important;padding:10px 14px!important;background:#ffffffe6!important;border:1px solid rgba(99,130,255,.15)!important;border-radius:10px!important;font-size:14px!important;color:#1a2240!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;box-sizing:border-box!important;box-shadow:none!important;text-shadow:none!important}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:none!important;border-color:#4f6ef7!important;background:#fff!important;box-shadow:0 0 0 3px #4f6ef71f!important}.modal-overlay,.overlay,[class*=overlay]{background:#1a224066!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important}.modal,.modal-content,.modal-body,[class*=modal-content]{background:#fffffff2!important;-webkit-backdrop-filter:blur(20px) saturate(1.4)!important;backdrop-filter:blur(20px) saturate(1.4)!important;border:1px solid rgba(99,130,255,.15)!important;border-radius:20px!important;box-shadow:0 24px 60px #4f6ef71f,0 8px 20px #0000000d!important;color:#1a2240!important}.modal-header,[class*=modal-header]{background:linear-gradient(135deg,#4f6ef70a,#8b5cf608)!important;border-bottom:1px solid rgba(99,130,255,.15)!important;padding:18px 24px!important;border-radius:20px 20px 0 0!important}.modal-header h2,.modal-header h3,.modal-title{color:#1a2240!important;font-weight:700!important;text-shadow:none!important;background:none!important;-webkit-text-fill-color:#1a2240!important}.modal-footer,[class*=modal-footer]{border-top:1px solid rgba(99,130,255,.15)!important;padding:16px 24px!important;border-radius:0 0 20px 20px!important}.pagination button,.pagination-container button,.pagination-btn,.page-btn{padding:8px 16px!important;background:#fffc!important;border:1px solid rgba(99,130,255,.15)!important;border-radius:10px!important;color:#1a2240!important;font-size:13px!important;font-weight:600!important;cursor:pointer!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;text-shadow:none!important}.pagination button:hover:not(:disabled),.pagination-container button:hover:not(:disabled),.pagination-btn:hover:not(:disabled),.page-btn:hover:not(:disabled){background:#4f6ef7!important;color:#fff!important;border-color:#4f6ef7!important;transform:translateY(-2px)!important;box-shadow:0 4px 12px #4f6ef740!important}.pagination button:disabled,.pagination-container button:disabled,.pagination-btn:disabled,.page-btn:disabled{opacity:.4!important;cursor:not-allowed!important}.progress-bar,.progress,.rate-bar,.progress-track{height:8px!important;background:#6382ff1a!important;border-radius:4px!important;overflow:hidden!important}.progress-bar-fill,.progress-fill,.progress-value,.rate-bar-fill{height:100%!important;border-radius:4px!important;transition:width .6s cubic-bezier(.25,.8,.25,1)!important;background:linear-gradient(90deg,#4f6ef7,#8b5cf6)!important}.list-item,.card-item,.data-item,.grid-item,.tile,.info-row{background:#fff9!important;border:1px solid rgba(99,130,255,.12)!important;border-radius:14px!important;padding:16px 20px!important;transition:all .35s cubic-bezier(.25,.8,.25,1)!important;color:#1a2240!important;text-shadow:none!important}.list-item:hover,.card-item:hover,.data-item:hover,.grid-item:hover,.tile:hover,.info-row:hover{background:#ffffffe6!important;border-color:#6382ff40!important;transform:translateY(-2px)!important;box-shadow:0 8px 24px #4f6ef714!important}.text-primary{color:#4f6ef7!important;text-shadow:none!important}.text-secondary{color:#5f6888!important;text-shadow:none!important}.text-muted{color:#8b92b0!important;text-shadow:none!important}.text-success{color:#10b981!important;text-shadow:none!important}.text-danger{color:#dc2626!important;text-shadow:none!important}.text-warning{color:#f59e0b!important;text-shadow:none!important}.text-info{color:#06b6d4!important;text-shadow:none!important}.inv-page h1,.inv-page h2,.inv-page h3,.inv-page h4,.inv-page h5,.inv-page p,.inv-page span,.inv-page label,.inv-page div,.inv-page td,.inv-page th,.meeting-mgmt h1,.meeting-mgmt h2,.meeting-mgmt h3,.meeting-mgmt h4,.meeting-mgmt h5,.meeting-mgmt p,.meeting-mgmt span,.meeting-mgmt label,.meeting-mgmt div,.meeting-mgmt td,.meeting-mgmt th,.viz-container h1,.viz-container h2,.viz-container h3,.viz-container h4,.viz-container h5,.viz-container p,.viz-container span,.viz-container label,.viz-container div,.viz-container td,.viz-container th,.ai-page h1,.ai-page h2,.ai-page h3,.ai-page h4,.ai-page h5,.ai-page p,.ai-page span,.ai-page label,.ai-page div,.ai-page td,.ai-page th,.bidding-management h1,.bidding-management h2,.bidding-management h3,.bidding-management h4,.bidding-management p,.bidding-management span,.bidding-management label,.bidding-management div,.bidding-management td,.bidding-management th{text-shadow:none!important}.inv-page>div:not(.inv-toolbar),.meeting-mgmt>div:not(.meeting-header),.ai-page>div:not(.ai-header),.bidding-management>div:not(.toolbar){position:relative!important;z-index:1!important}.inv-page::-webkit-scrollbar,.meeting-mgmt::-webkit-scrollbar,.viz-container::-webkit-scrollbar,.ai-page::-webkit-scrollbar,.bidding-management::-webkit-scrollbar{width:6px!important;height:6px!important}.inv-page::-webkit-scrollbar-thumb,.meeting-mgmt::-webkit-scrollbar-thumb,.viz-container::-webkit-scrollbar-thumb,.ai-page::-webkit-scrollbar-thumb,.bidding-management::-webkit-scrollbar-thumb{background:#4f6ef726!important;border-radius:3px!important}@media(max-width:768px){.inv-toolbar,.meeting-header,.viz-header,.ai-header,.header-bar,.page-header,.top-bar,.nav-bar{height:56px!important;padding:0 16px!important;gap:10px!important}.inv-toolbar h1,.meeting-header h1,.viz-header h1,.ai-header h1,.header-bar .title,.page-header .title{font-size:1.1rem!important}.inv-back-btn,.meeting-back-btn,.viz-back-btn,.ai-back-btn,.back-btn{padding:6px 12px!important;font-size:13px!important}.tabs,.tab-nav,.tab-container,.attendance-tabs{width:100%!important;overflow-x:auto!important}.stat-card,.overview-stat-card,.info-card,.metric-card,.kpi-card,.summary-card{min-width:unset!important;flex:1 1 calc(50% - 8px)!important;padding:14px 16px!important}}@media(max-width:480px){.stat-card,.overview-stat-card,.info-card,.metric-card,.kpi-card,.summary-card{flex:1 1 100%!important}.tabs button,.tab-nav button,.tab-btn{padding:8px 14px!important;font-size:13px!important}}
