:root{--accent-primary-rgb: 24, 119, 242;--accent-primary-dark-rgb: 8, 102, 255;--accent-cyan: rgb(var(--accent-primary-rgb));--glow-primary: rgba(var(--accent-primary-rgb), .15);--glow-primary-strong: rgba(var(--accent-primary-rgb), .3);--nav-bg: #242526;--bg-gradient-from: #18191a;--bg-gradient-to: #242526;--bg-primary: #18191a;--bg-secondary: #242526;--bg-tertiary: #3a3b3c;--text-primary: #e4e6eb;--text-secondary: #b0b3b8;--text-muted: #8a8d91;--text-on-accent: #ffffff;--accent-green: #22c55e;--accent-orange: #f97316;--accent-red: #ef4444;--accent-purple: #8b5cf6;--accent-yellow: #eab308;--accent-blue: #3b82f6;--border-color: #3a3b3c;--overlay-bg: rgba(24, 25, 26, .92);--card-bg: #242526;--card-bg-light: #2a2b2c;--backdrop-bg: rgba(0, 0, 0, .6);--shadow-color: rgba(0, 0, 0, .3);--hover-overlay: rgba(255, 255, 255, .08);--glass-blur: none;--glass-border: 1px solid #3a3b3c;--glass-hover-bg: #3a3b3c;--glass-shadow: 0 2px 8px rgba(0, 0, 0, .25);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 12px;--radius-full: 9999px;--white-rgb: 255, 255, 255;--text-xs: .65rem;--text-sm: .72rem;--text-base: .78rem;--text-md: .85rem;--text-lg: .92rem;--text-xl: 1rem;--px-compact: .35rem .5rem;--px-sm: .5rem .75rem;--px-md: .6rem .85rem;--px-lg: .75rem 1rem;--motion-fast: .15s;--nav-width: 220px;--app-head-h: 52px;--font-mono: "JetBrains Mono", monospace;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}:root.light{--accent-primary-rgb: 24, 119, 242;--accent-primary-dark-rgb: 24, 119, 242;--accent-cyan: rgb(var(--accent-primary-rgb));--glow-primary: rgba(var(--accent-primary-rgb), .08);--glow-primary-strong: rgba(var(--accent-primary-rgb), .15);--nav-bg: #ffffff;--bg-gradient-from: #f0f2f5;--bg-gradient-to: #f0f2f5;--bg-primary: #f0f2f5;--bg-secondary: #ffffff;--bg-tertiary: #e4e6eb;--text-primary: #050505;--text-secondary: #65676b;--text-muted: #8a8d91;--text-on-accent: #ffffff;--accent-green: #31a24c;--accent-orange: #ea580c;--accent-red: #f3425f;--accent-purple: #7c3aed;--accent-yellow: #ca8a04;--accent-blue: #1877F2;--border-color: #ced0d4;--overlay-bg: rgba(255, 255, 255, .98);--card-bg: #ffffff;--card-bg-light: #f7f8fa;--backdrop-bg: rgba(0, 0, 0, .2);--shadow-color: rgba(0, 0, 0, .1);--hover-overlay: rgba(0, 0, 0, .05);--glass-blur: none;--glass-border: 1px solid #ced0d4;--glass-hover-bg: #f2f2f2;--glass-shadow: 0 1px 2px rgba(0, 0, 0, .1), 0 2px 8px rgba(0, 0, 0, .06);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 14px;--radius-full: 9999px;--white-rgb: 255, 255, 255;--text-xs: .65rem;--text-sm: .72rem;--text-base: .78rem;--text-md: .85rem;--text-lg: .92rem;--text-xl: 1rem;--px-compact: .35rem .5rem;--px-sm: .5rem .75rem;--px-md: .6rem .85rem;--px-lg: .75rem 1rem;--motion-fast: .15s}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);line-height:1.5;min-height:100vh;position:relative}:root.bg-image-mode body:before{content:"";position:fixed;inset:0;background-image:url(/image.png);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;z-index:-2;pointer-events:none}:root.bg-image-mode .app-bg-layer{display:none}@keyframes blob1{0%,to{transform:translate(0) scale(1)}33%{transform:translate(3%,4%) scale(1.06)}66%{transform:translate(-2%,2%) scale(.96)}}@keyframes blob2{0%,to{transform:translate(0) scale(1)}40%{transform:translate(-4%,3%) scale(1.08)}70%{transform:translate(2%,-2%) scale(.94)}}@keyframes blob3{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-3%,-4%) scale(1.05)}}@keyframes blob4{0%,to{transform:translate(0) scale(1)}45%{transform:translate(4%,-3%) scale(1.07)}}.app-bg-layer{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.app-bg-layer:before,.app-bg-layer:after{content:"";position:absolute;inset:0;pointer-events:none}.app-bg-layer:before,.app-bg-layer:after{background:none;animation:none}.app{display:flex;min-height:100vh}.highlight{font-weight:600;font-family:var(--font-mono)}.error{padding:2rem;text-align:center;color:var(--accent-red)}.empty-text{color:var(--text-muted);font-size:var(--text-md);padding:1rem;text-align:center}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.main-nav{position:fixed;left:0;top:0;bottom:0;width:var(--nav-width);background:var(--nav-bg);border-right:1px solid var(--border-color);padding:0;display:flex;flex-direction:column;z-index:100;transition:width .25s cubic-bezier(.4,0,.2,1);overflow:hidden}.nav-brand-link{text-decoration:none;flex-shrink:0}.nav-brand{display:flex;align-items:center;gap:.5rem;height:var(--app-head-h);box-sizing:border-box;padding:0 .6rem;border-bottom:1px solid var(--border-color)!important;color:var(--accent-cyan);white-space:nowrap;border-bottom:none;flex-shrink:0}.nav-brand span{font-size:var(--text-md);color:var(--text-primary);letter-spacing:-.01em}.nav-brand strong{font-weight:800;color:var(--accent-cyan)}.nav-brand-logo{width:39px;height:39px;-o-object-fit:contain;object-fit:contain;flex-shrink:0;border-radius:var(--radius-sm)}.nav-links{display:flex;flex-direction:column;gap:2px;padding:.9rem .5rem .6rem;flex:1;overflow-y:auto;position:relative}.nav-menu-header{font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:.2rem .5rem .45rem}.nav-section-label{font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:.6rem .5rem .25rem}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.55rem .65rem;color:var(--text-primary);text-decoration:none;border-radius:8px;transition:background .15s,color .15s;font-size:.92rem;font-weight:500;white-space:nowrap;min-width:0;position:relative}.nav-link svg{flex-shrink:0;color:var(--text-secondary);transition:color .15s}.nav-link:hover{background:var(--hover-overlay);color:var(--text-primary)}.nav-indicator{display:none}.nav-link:hover svg{color:var(--text-primary)}.nav-link.active{background:color-mix(in srgb,var(--accent-cyan) 14%,transparent);color:var(--accent-cyan);font-weight:600}.nav-link.active svg{color:var(--accent-cyan)}.nav-bottom{margin-top:auto;padding:.5rem;border-top:none;flex-shrink:0;display:flex;flex-direction:column;gap:.4rem}.nav-bottom-row{display:flex;align-items:center;gap:.25rem}.nav-profile-wrap{position:relative}.nav-actions-row{display:flex;align-items:center;gap:3px;flex-shrink:0;margin-left:auto}.nav-icon-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:color .15s;text-decoration:none;padding:0}.nav-icon-btn:hover{background:transparent;color:var(--text-primary)}.nav-icon-btn.nav-logout:hover{color:var(--accent-red)}.nav-user{display:flex;align-items:center;gap:.4rem;padding:.25rem;white-space:nowrap;overflow:hidden;border-radius:7px;min-width:0;flex:1;cursor:pointer;border:none;background:transparent;font:inherit;text-align:left;color:inherit;text-decoration:none;transition:background .15s}.nav-user:hover{background:var(--hover-overlay)}.nav-user-avatar{width:32px;height:32px;border-radius:50%;background:var(--accent-cyan);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:700;flex-shrink:0}.nav-user-info{min-width:0;overflow:hidden}.nav-user-name{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;line-height:1.25}.nav-user-role{display:inline-block;font-size:.5rem;color:var(--accent-cyan);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.05rem .3rem;background:rgba(var(--accent-primary-rgb),.1);border-radius:999px;margin-top:1px}.nav-toggle-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:.35rem 0;background:transparent;border:none;border-top:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;transition:color .15s;line-height:0}.nav-toggle-btn:hover{color:var(--text-primary)}.nav-tooltip{position:fixed;left:56px;transform:translateY(-50%);padding:.4rem .75rem .4rem .85rem;margin-left:6px;background:var(--overlay-bg);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-base);font-weight:500;white-space:nowrap;z-index:200;pointer-events:none;animation:navTooltipIn .15s ease-out;box-shadow:0 4px 16px #0000004d;overflow:visible}.nav-tooltip-arrow{position:absolute;left:-6px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:6px solid rgba(15,25,50,.85)}@keyframes navTooltipIn{0%{opacity:0;transform:translateY(-50%) translate(-4px)}to{opacity:1;transform:translateY(-50%) translate(0)}}:root.light .main-nav{background:var(--nav-bg);border-right:1px solid var(--border-color);box-shadow:var(--glass-shadow)}:root.light .nav-link{color:var(--text-primary)}:root.light .nav-link:hover{color:var(--text-primary);background:var(--hover-overlay)}:root.light .nav-link.active{color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 10%,transparent)}:root.light .nav-icon-btn{color:var(--text-secondary)}:root.light .nav-icon-btn:hover{color:var(--text-primary)}:root.light .nav-toggle-btn{color:var(--text-muted);border-top-color:var(--border-color)}:root.light .nav-toggle-btn:hover{color:var(--text-primary)}:root.light .nav-section-label{color:var(--text-muted)}:root.light .nav-user-name{color:var(--text-primary)}:root.light .nav-tooltip{background:var(--overlay-bg);color:var(--text-primary)}:root.light .nav-tooltip-arrow{border-right-color:var(--overlay-bg)}.main-nav.collapsed{width:48px}.main-nav.collapsed .nav-brand{justify-content:center;padding:.7rem .35rem;gap:0}.main-nav.collapsed .nav-brand-logo{width:30px;height:30px}.main-nav.collapsed .nav-brand span{display:none}.main-nav.collapsed .nav-links{padding:.75rem .3rem .5rem}.main-nav.collapsed .nav-link{justify-content:center;padding:.4rem}.main-nav.collapsed .nav-link span{opacity:0;width:0;overflow:hidden}.main-nav.collapsed .nav-bottom{padding:.35rem;align-items:center}.main-nav.collapsed .nav-bottom-row{flex-direction:column;gap:4px}.main-nav.collapsed .nav-user{width:100%;justify-content:center;padding:.25rem}.main-nav.collapsed .nav-user-info{display:none}.main-nav.collapsed .nav-actions-row{flex-direction:row;justify-content:center;margin-left:0;width:100%;gap:4px}.main-nav.collapsed .nav-icon-btn{width:32px;height:32px}.nav-notif-btn{position:relative}.nav-notif-badge{position:absolute;top:-4px;right:-4px;background:var(--accent-red);color:#fff;font-size:9px;font-weight:700;line-height:1;padding:2px 4px;border-radius:var(--radius-md);min-width:14px;text-align:center;pointer-events:none}.nav-notif-panel{position:fixed;bottom:24px;left:calc(var(--nav-width) + 8px);width:300px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--glass-shadow);z-index:1000;overflow:hidden;max-height:400px;overflow-y:auto;animation:toast-in .2s ease}.nav-notif-header{display:flex;align-items:center;gap:6px;padding:10px 14px;font-size:var(--text-base);font-weight:600;color:var(--text-primary);border-bottom:1px solid rgba(var(--accent-primary-rgb),.1);text-transform:uppercase;letter-spacing:.05em}.nav-notif-empty{padding:24px 14px;text-align:center;color:var(--text-muted);font-size:var(--text-md)}.nav-notif-item{display:flex;gap:10px;padding:10px 14px;cursor:pointer;transition:background .15s;border-bottom:1px solid rgba(var(--accent-primary-rgb),.06)}.nav-notif-item:last-child{border-bottom:none}.nav-notif-item:hover{background:rgba(var(--accent-primary-rgb),.08)}.nav-notif-item.unread{background:rgba(var(--accent-primary-rgb),.06)}.nav-notif-icon{display:flex;align-items:flex-start;padding-top:2px;color:rgba(var(--accent-primary-rgb),1);flex-shrink:0}.nav-notif-body{flex:1;min-width:0}.nav-notif-text{font-size:var(--text-base);color:var(--text-primary);line-height:1.3}.nav-notif-post{font-size:var(--text-sm);color:rgba(var(--accent-primary-rgb),.8);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-notif-time{font-size:var(--text-sm);color:var(--text-muted);margin-top:3px}.nav-notif-toast{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;align-items:center;gap:8px;background:var(--bg-card);border:1px solid var(--border-color);border-left:3px solid var(--accent-blue);border-radius:var(--radius-md);padding:10px 14px;min-width:220px;max-width:320px;box-shadow:0 4px 16px #0000002e;cursor:pointer;animation:toast-in .25s ease;font-size:var(--text-md);color:var(--text-primary)}.nav-notif-toast-icon{flex-shrink:0;color:var(--accent-blue)}.nav-notif-toast-text{flex:1;line-height:1.4}.nav-notif-toast-close{flex-shrink:0;background:none;border:none;color:var(--text-muted);font-size:var(--text-xl);cursor:pointer;padding:0 2px;line-height:1}.nav-notif-toast-close:hover{color:var(--text-primary)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.main-nav{display:none}}button.nav-bottom-link{width:100%;border:0;background:transparent;font:inherit;font-size:.92rem;text-align:left;cursor:pointer}.nav-bottom{gap:2px}.nav-bottom .nav-profile-wrap{margin-top:.3rem}.main-nav.collapsed button.nav-bottom-link{justify-content:center;padding:.55rem 0}.top-header{position:fixed;top:0;left:0;right:0;height:48px;display:flex;align-items:center;justify-content:flex-end;padding:0 1rem;background:transparent;border-bottom:none;box-shadow:none;z-index:90;pointer-events:none}.top-header-actions{display:flex;align-items:center;gap:.35rem;pointer-events:auto}.top-header-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid transparent;border-radius:999px;text-decoration:none;color:var(--text-primary);cursor:pointer;transition:background .15s ease}.top-header-btn:hover{color:var(--text-primary);background:var(--hover-overlay)}.top-header-btn-danger:hover{color:var(--accent-red)}.top-header-dropdown-wrap{position:relative}.top-header-notif-badge{position:absolute;top:-2px;right:-2px;background:var(--accent-red);color:#fff;font-size:9px;font-weight:700;border-radius:999px;min-width:14px;height:14px;line-height:14px;text-align:center;padding:0 3px}.top-header-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--glass-shadow);padding:.35rem;z-index:120}.top-header-notif-dropdown{min-width:280px;max-height:320px;overflow-y:auto}.top-header-dropdown-item{width:100%;display:flex;align-items:center;gap:.4rem;text-align:left;border:none;background:transparent;color:var(--text-primary);border-radius:var(--radius-sm);padding:.45rem .55rem;cursor:pointer;font-size:var(--text-sm)}.top-header-dropdown-item:hover{background:color-mix(in srgb,var(--text-primary) 8%,transparent)}.top-header-dropdown-item-danger{color:var(--accent-red)}.top-header-dropdown-empty{padding:.55rem;color:var(--text-muted);font-size:var(--text-sm)}.top-header-notif-dropdown{min-width:360px;max-height:72vh;padding:.5rem;background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}.top-header-notif-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.top-header-notif-head h3{font-size:1.55rem;font-weight:800;letter-spacing:-.02em;color:var(--text-primary)}.top-header-notif-menu-btn{width:36px;height:36px;border-radius:50%;border:0;background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;font-size:16px;font-weight:700;line-height:1}.top-header-notif-kebab-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:260px;border-radius:12px;border:1px solid var(--border-color);background:var(--card-bg);box-shadow:var(--glass-shadow);padding:.35rem;z-index:3}.top-header-notif-kebab-menu button{width:100%;border:0;border-radius:8px;padding:.65rem .7rem;text-align:left;background:transparent;color:var(--text-primary);font-weight:600;cursor:pointer}.top-header-notif-kebab-menu button:hover{background:var(--hover-overlay)}.top-header-notif-tabs{display:flex;gap:.5rem;margin-bottom:.6rem}.top-header-notif-tabs button{border:0;border-radius:999px;padding:.3rem .65rem;background:transparent;color:var(--text-primary);font-size:.86rem;font-weight:700;cursor:pointer}.top-header-notif-tabs button.active{background:color-mix(in srgb,var(--accent-cyan) 18%,transparent);color:var(--accent-cyan)}.top-header-notif-item{width:100%;border:0;background:transparent;color:var(--text-primary);border-radius:10px;padding:.45rem .35rem;display:flex;align-items:flex-start;gap:.6rem;text-align:left;cursor:pointer}.top-header-notif-item:hover{background:var(--hover-overlay)}.top-header-notif-item.unread{background:color-mix(in srgb,var(--accent-cyan) 10%,transparent)}.top-header-notif-avatar{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:12px;font-weight:700;background:color-mix(in srgb,var(--accent-cyan) 18%,transparent);color:var(--accent-cyan)}.top-header-notif-body{flex:1;line-height:1.35;font-size:.88rem}.top-header-notif-body strong{font-weight:800}.top-header-notif-body small{display:block;margin-top:.15rem;color:var(--accent-cyan);font-size:.78rem;font-weight:600}.top-header-notif-subhead{display:flex;align-items:center;justify-content:space-between;margin:.1rem 0 .35rem;color:var(--text-primary);font-weight:700}.top-header-notif-subhead button{border:0;background:transparent;color:var(--accent-cyan);font-weight:600;cursor:pointer;font-size:.95rem}.top-header-notif-actions{display:inline-flex;gap:.4rem;margin-top:.45rem}.top-header-notif-actions span{display:inline-flex;align-items:center;justify-content:center;min-width:84px;height:30px;border-radius:9px;background:var(--bg-tertiary);color:var(--text-primary);font-size:.8rem;font-weight:700}.top-header-notif-actions span.primary{background:var(--accent-cyan);color:var(--text-on-accent)}.top-header-notif-unread-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-cyan);margin-top:.55rem;flex-shrink:0}.top-header-chat-dropdown{width:330px;padding:.55rem}.top-header-chat-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.top-header-chat-header h4{font-size:var(--text-lg)}.top-header-chat-close{width:28px;height:28px;border-radius:8px;border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);cursor:pointer}.top-header-chat-search{display:flex;align-items:center;gap:.4rem;height:34px;border-radius:999px;border:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-tertiary) 70%,transparent);padding:0 .65rem;margin-bottom:.5rem;color:var(--text-muted)}.top-header-chat-search input{border:0;outline:0;background:transparent;color:var(--text-primary);width:100%;font-size:var(--text-sm)}.top-header-chat-tabs{display:flex;gap:.35rem;margin-bottom:.45rem}.top-header-chat-tabs button{border:1px solid var(--border-color);border-radius:999px;padding:.24rem .55rem;background:transparent;color:var(--text-secondary);font-size:11px;font-weight:600;cursor:pointer}.top-header-chat-tabs button.active{color:var(--accent-cyan);border-color:color-mix(in srgb,var(--accent-cyan) 46%,transparent)}.top-header-chat-list{max-height:250px;overflow-y:auto;margin-bottom:.45rem}.top-header-chat-item{width:100%;border:0;background:transparent;color:var(--text-primary);display:flex;align-items:center;gap:.5rem;padding:.45rem .35rem;border-radius:8px;cursor:pointer;text-align:left}.top-header-chat-item:hover{background:color-mix(in srgb,var(--text-primary) 8%,transparent)}.top-header-chat-item .avatar{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent-cyan) 24%,transparent);color:var(--text-primary);font-weight:700;flex-shrink:0}.top-header-chat-item span{display:flex;flex-direction:column;min-width:0}.top-header-chat-item strong{font-size:var(--text-md)}.top-header-chat-item small{color:var(--text-muted);font-size:11px}.top-header-chat-footer{width:100%;border:0;border-radius:8px;background:color-mix(in srgb,var(--accent-cyan) 16%,transparent);color:var(--accent-cyan);font-weight:700;font-size:var(--text-sm);padding:.5rem .6rem;cursor:pointer}.top-header-avatar-fallback{display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent-cyan) 24%,transparent);color:var(--text-primary);font-size:12px;font-weight:700;width:30px;height:30px;border-radius:50%}.top-header-profile-dropdown{width:300px}.top-header-profile-head{display:flex;gap:.6rem;align-items:center;padding:.45rem;border-radius:10px;background:color-mix(in srgb,var(--text-primary) 6%,transparent);margin-bottom:.45rem}.top-header-profile-avatar{width:42px;height:42px;border-radius:50%;-o-object-fit:cover;object-fit:cover;flex-shrink:0}.top-header-profile-name{font-size:var(--text-lg);font-weight:700;line-height:1.15}.top-header-profile-link{margin-top:.25rem;border:0;background:transparent;color:var(--text-secondary);font-size:11px;cursor:pointer;padding:0}.top-header-profile-row{width:100%;border:0;background:transparent;color:var(--text-primary);border-radius:8px;padding:.6rem .55rem;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:var(--text-md);font-weight:600}.top-header-profile-row:hover{background:color-mix(in srgb,var(--text-primary) 8%,transparent)}.top-header-mobile-menu-wrap{display:none}.top-header-mobile-menu{width:280px;max-height:70vh;overflow-y:auto}.top-header-mobile-menu-section+.top-header-mobile-menu-section{margin-top:.45rem}.top-header-mobile-menu-title{color:var(--text-muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.35rem .4rem}.top-header-mobile-menu-item{width:100%;display:flex;align-items:center;gap:.45rem;border-radius:8px;color:var(--text-primary);text-decoration:none;padding:.42rem .45rem;font-size:var(--text-sm)}.top-header-mobile-menu-item:hover{background:color-mix(in srgb,var(--text-primary) 8%,transparent)}.top-header-mobile-menu-item.active{color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 12%,transparent)}@media(max-width:1100px){.top-header-search{flex:0 1 180px;width:180px;max-width:180px}}@media(max-width:900px){.top-header-mobile-menu-wrap{display:block}}.top-header,.top-header *,.top-header-dropdown,.top-header-notif-dropdown,.top-header-profile-dropdown,.top-header-chat-dropdown,.top-header-notif-kebab-menu,.top-header-mobile-menu,.main-nav,.main-nav *,.nav-tooltip,.nav-notif-panel,.sp-recent-dropdown,.exp-menu{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}@media(max-width:640px){.top-header{padding:0 .55rem}.top-header-left{gap:.5rem}.top-header-notif-dropdown{min-width:min(92vw,360px);right:-8px}}.nav-profile-dropdown{width:232px}.nav-profile-dropdown .top-header-profile-row,.nav-profile-dropdown .top-header-profile-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-content{flex:1;min-width:0;margin-left:var(--nav-width);padding:0;background:var(--bg-primary);min-height:100vh;overflow-x:clip;transition:margin-left .3s ease,padding .3s ease}:root.bg-image-mode .main-content{background:transparent}.app main:only-child{flex:1;width:100%;min-width:0}.main-content:has(>.home-landing),.main-content:has(>.graph-container),.main-content:has(>.ws-page),.main-content:has(>.ws-sub-view){padding:0;background:var(--bg-primary)}.main-content:has(>.ws-hub){padding:0;background:var(--bg-primary)}.main-content:has(>.graph-container){background:transparent}:root.bg-image-mode .main-content:has(>.home-landing),:root.bg-image-mode .main-content:has(>.graph-container){background:transparent}.main-content:has(>.bd2-page),.main-content:has(>.td2-page){padding:0}.main-content:has(>.bd-overview-dark){padding:0;background:linear-gradient(165deg,var(--bg-gradient-from) 0%,color-mix(in srgb,var(--bg-gradient-from) 45%,var(--bg-gradient-to) 55%) 48%,var(--bg-gradient-to) 100%)}:root.bg-image-mode .main-content:has(>.bd-overview-dark){background:transparent}.main-nav.collapsed~.main-content{margin-left:48px}@media(max-width:900px){.main-content{margin-left:0;padding:56px 0 0}.main-nav.collapsed~.main-content{margin-left:0}}.app-ai-panel{flex:0 0 320px;position:sticky;top:0;align-self:flex-start;height:100vh;border-left:1px solid var(--border-color);overflow:hidden;display:flex;flex-direction:column;background:var(--bg-secondary);transition:flex-basis .22s ease}.app-ai-panel--collapsed{flex-basis:36px}.app-ai-panel--wide:not(.app-ai-panel--collapsed){flex-basis:clamp(360px,32vw,480px)}@media(max-width:900px){.app-ai-panel{display:none}}.app--fullscreen .app-ai-panel{display:none}.app--fullscreen .main-content{margin-left:0!important;padding:0!important;min-height:100vh;min-height:100dvh}.app--fullscreen .main-content:has(>.bd-overview-dark),.app--fullscreen .main-content:has(>.home-landing),.app--fullscreen .main-content:has(>.graph-container){padding:0!important}.app--fullscreen .bd.bd-overview-dark{height:100vh;height:100dvh;max-height:100vh;max-height:100dvh}.app--fullscreen .graph-container{height:100vh;height:100dvh}.app-ai-panel{position:sticky}.app-ai-resizer{position:absolute;top:0;left:-3px;bottom:0;width:7px;z-index:5;cursor:col-resize;touch-action:none}.app-ai-resizer:after{content:"";position:absolute;top:0;bottom:0;left:3px;width:1px;background:transparent;transition:background .15s}.app-ai-resizer:hover:after,.app-ai-resizer:focus-visible:after,body.ai-panel-resizing .app-ai-resizer:after{width:2px;background:var(--accent-cyan)}.app-ai-resizer:focus-visible{outline:none}body.ai-panel-resizing{cursor:col-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none}body.ai-panel-resizing .app-ai-panel{transition:none}body.ai-panel-resizing iframe,body.ai-panel-resizing canvas{pointer-events:none}.app-dock{position:sticky;top:0;align-self:flex-start;height:100vh;display:flex;flex-shrink:0}.app-dock>.app-dock-panel{position:relative;top:auto;height:100%;align-self:stretch}.app-dock-host{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.app-dock-host>*{flex:1;min-height:0}.app-dock-host>.cg-detail{position:relative;inset:auto;width:auto!important;border-left:0;box-shadow:none}.app-dock-rail{width:44px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:4px;padding-bottom:8px;border-left:1px solid var(--border-color);background:var(--nav-bg, var(--bg-secondary))}.app-dock-btn.app-dock-ai{width:100%;height:var(--app-head-h);border-radius:0;border-bottom:1px solid var(--border-color);margin-bottom:4px}.app-dock-btn{position:relative;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .12s,color .12s}.app-dock-btn:hover{background:var(--hover-overlay, rgba(127, 127, 127, .12));color:var(--text-primary)}.app-dock-btn.on{color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 14%,transparent)}.app-dock-btn.app-dock-ai.on{box-shadow:inset 2px 0 0 var(--accent-cyan)}.app-dock-sep{width:22px;height:1px;background:var(--border-color);margin:2px 0}.app-dock-badge{position:absolute;top:2px;right:1px;min-width:15px;height:15px;padding:0 3px;box-sizing:border-box;border-radius:999px;background:var(--accent-cyan);color:#fff;font-size:.6rem;font-weight:700;line-height:15px}.app--fullscreen .app-dock{display:none}@media(max-width:900px){.app-dock{display:none}}.app-dock-host>.graph-controls-panel{position:relative;inset:auto;width:auto;border:0;border-radius:0;box-shadow:none}.app-dock-host .fl-dg-tabs,.app-dock-host .gp-head,.app-dock-host .pp-head{min-height:var(--app-head-h);box-sizing:border-box;align-items:center}.app-dock-host .fl-dg-tabs>button[role=tab]{padding-top:0;padding-bottom:0}.dock-pane{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--bg-secondary)}.app-dock-panel>.dock-pane{flex:1}.dock-pane-head{display:flex;align-items:center;gap:.5rem;height:var(--app-head-h);flex-shrink:0;padding:0 .6rem 0 1rem;border-bottom:1px solid var(--border-color);box-sizing:border-box}.dock-pane-head>svg{color:var(--accent-cyan);flex-shrink:0}.dock-pane-head h2{flex:1;min-width:0;margin:0;font-size:.86rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dock-pane-x,.dock-pane-link{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:6px;font:inherit}.dock-pane-x{width:28px;height:28px}.dock-pane-link{font-size:.74rem;padding:4px 8px}.dock-pane-x:hover,.dock-pane-link:hover{background:var(--hover-overlay, rgba(127, 127, 127, .12));color:var(--text-primary)}.dock-pane-body{flex:1;min-height:0;overflow-y:auto;padding:.9rem 1rem 1.25rem}.dock-empty{margin:0;font-size:.8rem;line-height:1.55;color:var(--text-muted)}.dock-note{margin:.6rem 0 0;font-size:.72rem;color:var(--text-muted)}.dock-group+.dock-group{margin-top:1rem}.dock-group-title{font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.35rem}.dock-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.dock-list li{display:flex;align-items:center;gap:.5rem;padding:.45rem .4rem;border-radius:6px;font-size:.8rem}.dock-list li:hover{background:var(--hover-overlay, rgba(127, 127, 127, .08))}.dock-list li>svg{flex-shrink:0;color:var(--text-muted)}.dock-list li a{flex:1;min-width:0;color:var(--text-primary);text-decoration:none;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35}.dock-list li a:hover{color:var(--accent-cyan)}.dock-list li button{display:inline-flex;flex-shrink:0;border:0;background:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;opacity:.6}.dock-list li:hover button{opacity:1}.dock-list li button:hover{color:var(--accent-red, #ef4444)}.dock-primary{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:.75rem;height:34px;border:0;border-radius:8px;background:var(--accent-cyan);color:#fff;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}.dock-primary:disabled{opacity:.45;cursor:not-allowed}.dock-info h3{margin:0 0 .5rem;font-size:.92rem;color:var(--text-primary)}.dock-info h4{margin:.85rem 0 .25rem;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.dock-info p{margin:0;font-size:.8rem;line-height:1.55;color:var(--text-secondary)}.dock-info-caveat{padding-left:.6rem;border-left:2px solid var(--accent-orange, #f97316)}.dock-pane-body .ot-grid{grid-template-columns:1fr!important;gap:.75rem}.dock-pane-body .bd2-section{padding:.8rem .9rem}.is-following{color:var(--accent-cyan)!important;border-color:color-mix(in srgb,var(--accent-cyan) 50%,transparent)!important}.fresh-banner{position:fixed;left:calc(var(--nav-width) + (100vw - var(--nav-width)) / 2);bottom:16px;transform:translate(-50%);z-index:900;display:flex;align-items:flex-start;gap:8px;max-width:min(640px,calc(100vw - var(--nav-width) - 32px));padding:8px 8px 8px 12px;border-radius:10px;border:1px solid color-mix(in srgb,var(--accent-orange) 45%,transparent);background:color-mix(in srgb,var(--accent-orange) 12%,var(--bg-secondary));color:var(--text-primary);font-size:.8rem;line-height:1.4;box-shadow:0 6px 20px #00000040}.fresh-banner>svg{flex:none;margin-top:2px;color:var(--accent-orange)}.fresh-banner-text{display:grid;gap:2px}.fresh-banner button{flex:none;display:grid;place-items:center;width:24px;height:24px;border:0;border-radius:6px;background:none;color:var(--text-secondary);cursor:pointer}.fresh-banner button:hover{background:var(--bg-tertiary);color:var(--text-primary)}@media(max-width:900px){.fresh-banner{left:50%;max-width:calc(100vw - 32px)}}.page-shell{width:100%;max-width:1400px;margin:0 auto;display:flex;flex-direction:column}.page-shell--full{max-width:none}.page-shell--centered{max-width:960px}.page-shell--feed{max-width:1200px}.page-shell-breadcrumb{margin-bottom:.25rem}.page-shell-body{display:flex;flex-direction:column;gap:1rem;min-width:0}@media(max-width:900px){.page-shell,.page-shell-body{gap:.75rem}}.page-header-bar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.page-header-bar-left .page-title{display:flex;align-items:center;gap:.5rem}.page-header-bar-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}:root.light .nav-link,:root.light .nav-link:hover,:root.light .nav-link.active,:root.light .nav-icon-btn,:root.light .nav-icon-btn:hover,:root.light .nav-toggle-btn,:root.light .nav-toggle-btn:hover,:root.light .nav-section-label,:root.light .nav-user-name{color:var(--text-primary)!important}:root.light .nav-indicator{background:var(--text-primary)!important}:root.light .nav-toggle-btn{border-top-color:var(--border-color)!important}.fb-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--glass-shadow);transition:box-shadow .2s,background .2s}.fb-card:hover{box-shadow:0 2px 4px var(--shadow-color),0 4px 16px var(--shadow-color)}.fb-card--padded{padding:1rem 1.25rem}.fb-card-header{display:flex;align-items:center;justify-content:space-between;padding:.65rem .85rem;border-bottom:1px solid var(--border-color);gap:.5rem}.fb-pill-tabs{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.an-page-tab,.fb-pill-tab{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 .75rem;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);font-family:var(--font-sans);font-size:.86rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.fb-pill-tab:hover{background:var(--hover-overlay);color:var(--text-primary)}.fb-pill-tab.active,.fb-pill-tab[aria-selected=true]{color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 14%,transparent)}.fb-pill-tab:disabled{opacity:.5;cursor:not-allowed}.card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem 1.25rem;box-shadow:var(--glass-shadow);transition:background .2s,box-shadow .2s}.card:hover{background:var(--card-bg-light);box-shadow:0 2px 4px #00000014,0 4px 16px #00000014}.card h3{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:var(--text-lg);color:var(--text-primary)}.card .card-desc{color:var(--text-muted);font-size:var(--text-md);margin-bottom:1rem}.action-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-secondary);text-decoration:none}.action-btn:hover{background:var(--accent-cyan);color:var(--text-on-accent)}.btn-primary{padding:.5rem 1rem;background:var(--accent-cyan);border:none;border-radius:var(--radius-md);color:var(--text-on-accent);cursor:pointer;font-size:var(--text-md);font-weight:600;transition:opacity .15s}.btn-primary:hover{opacity:.9}.btn-success{padding:.5rem 1rem;background:var(--accent-green);border:none;border-radius:var(--radius-sm);color:var(--text-on-accent);cursor:pointer;font-size:var(--text-md)}.status-badge{display:inline-block;padding:.2rem .4rem;border-radius:4px;font-size:var(--text-sm);font-weight:500}.status-badge.won{background:color-mix(in srgb,var(--accent-green) 15%,transparent);color:var(--accent-green)}.status-badge.lost{background:color-mix(in srgb,var(--text-muted) 15%,transparent);color:var(--text-muted)}.risk-badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:var(--text-sm);font-weight:600}.risk-badge.critical{background:color-mix(in srgb,var(--accent-red) 20%,transparent);color:var(--accent-red)}.risk-badge.high{background:color-mix(in srgb,var(--accent-orange) 20%,transparent);color:var(--accent-orange)}.risk-badge.medium{background:color-mix(in srgb,var(--accent-yellow) 20%,transparent);color:var(--accent-yellow)}.risk-badge.low{background:color-mix(in srgb,var(--accent-green) 20%,transparent);color:var(--accent-green)}.anomaly-badge{display:inline-block;padding:.2rem .4rem;border-radius:4px;font-size:var(--text-sm);font-weight:500}.anomaly-badge.high{background:color-mix(in srgb,var(--accent-red) 15%,transparent);color:var(--accent-red)}.anomaly-badge.low{background:color-mix(in srgb,var(--accent-orange) 15%,transparent);color:var(--accent-orange)}.role-badge{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:var(--text-base);font-weight:600;text-transform:uppercase}.role-badge.role-admin{background:color-mix(in srgb,var(--accent-red) 15%,transparent);color:var(--accent-red)}.role-badge.role-vip{background:color-mix(in srgb,var(--accent-cyan) 15%,transparent);color:var(--accent-cyan)}.role-badge.role-normal,.bd--users .role-badge.role-admin,.bd--users .role-badge.role-vip{background:color-mix(in srgb,var(--text-muted) 15%,transparent);color:var(--text-muted)}.tables-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1rem}.table-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem 1.25rem;box-shadow:var(--glass-shadow)}.table-card h3{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:var(--text-lg);color:var(--text-secondary)}.table-wrapper{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:var(--text-md)}th{text-align:left;padding:.6rem;color:var(--text-muted);font-weight:500;border-bottom:1px solid var(--border-color);white-space:nowrap}td{padding:6px;border-bottom:1px solid var(--border-color);color:var(--text-secondary)}tbody tr:nth-child(2n) td{background:var(--bg-secondary)}tr:hover td{background:var(--bg-tertiary)}.name-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.name-cell a{color:var(--accent-cyan);text-decoration:none}.name-cell a:hover{text-decoration:underline}.table-header{margin-bottom:1rem}.table-header h3{font-size:var(--text-xl);margin-bottom:.25rem}.table-header p{color:var(--text-muted);font-size:var(--text-md)}.ui-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.75rem 1.25rem;padding:.75rem 0}.ui-pagination-size{font-size:var(--text-lg);color:var(--text-muted)}.ui-pagination-select{padding:.35rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-size:var(--text-lg)}.ui-pagination-info{font-size:var(--text-md);color:var(--text-muted)}.ui-pagination-buttons{display:flex;gap:.5rem}.ui-pagination-btn{display:flex;align-items:center;gap:.25rem;padding:.4rem .75rem;font-size:var(--text-md);border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;transition:all .15s}.ui-pagination-btn:hover:not(:disabled){border-color:var(--accent-cyan);color:var(--accent-cyan)}.ui-pagination-btn:disabled{opacity:.4;cursor:not-allowed}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-muted);gap:.75rem}.spinner{animation:spin 1s linear infinite;color:var(--accent-cyan)}.chart-skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-tertiary) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.te-toggle-disabled{opacity:.5;cursor:not-allowed}.te-toggle-disabled input{cursor:not-allowed}.info-modal-overlay{position:fixed;inset:0;background:var(--backdrop-bg);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem;animation:fadeIn .15s ease}.info-modal{background:var(--card-bg);border:var(--glass-border);border-radius:16px;width:100%;max-width:640px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px var(--shadow-color);animation:slideUp .2s ease}.info-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color)}.info-modal-header h2{font-size:1.1rem;font-weight:600;margin:0}.info-modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);transition:all .15s}.info-modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.info-modal-body{padding:1.5rem;overflow-y:auto;font-size:var(--text-lg);line-height:1.7;color:var(--text-secondary)}.info-modal-body h3{font-size:var(--text-lg);color:var(--text-primary);margin:1.25rem 0 .5rem}.info-modal-body h3:first-child{margin-top:0}.info-modal-body p{margin-bottom:.5rem}.info-modal-body ul{margin:.5rem 0;padding-left:1.25rem}.info-modal-body li{margin-bottom:.25rem}.info-modal-body code{font-family:var(--font-mono);font-size:var(--text-md);padding:.1rem .3rem;background:var(--bg-tertiary);border-radius:4px}.filter-help-overlay{position:fixed;inset:0;background:var(--backdrop-bg);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.filter-help-modal{background:var(--card-bg);border:var(--glass-border);border-radius:var(--radius-lg);max-width:420px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 40px var(--shadow-color)}.filter-help-modal-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.filter-help-modal-header h3{font-size:var(--text-lg);font-weight:600;color:var(--text-primary);margin:0}.filter-help-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s}.filter-help-close:hover{color:var(--text-primary);background:var(--bg-tertiary)}.filter-help-modal-body{padding:1rem;overflow-y:auto;font-size:var(--text-md);color:var(--text-secondary);line-height:1.5}.filter-help-content p{margin:0 0 .65rem}.filter-help-content ul{margin:0 0 .65rem;padding-left:1.2rem}.filter-help-content li{margin-bottom:.25rem}.filter-help-h4{font-size:var(--text-base);font-weight:600;color:var(--accent-cyan);margin:0 0 .35rem;text-transform:uppercase;letter-spacing:.04em}.filter-help-content h4.filter-help-h4:not(:first-child){margin-top:.85rem}.log-viewer{margin:0;padding:1rem;background:var(--bg-primary);border-radius:var(--radius-md);overflow:auto;max-height:70vh;font-size:13px;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;color:var(--text-secondary)}.sx-backdrop{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:16px;background:#0000008c;backdrop-filter:blur(2px)}.sx-box{width:min(400px,100%);display:flex;flex-direction:column;gap:12px;padding:20px;border-radius:12px;background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 16px 40px #00000073;color:var(--text-primary)}.sx-head{display:flex;align-items:center;gap:8px;color:var(--accent-orange, #f59e0b)}.sx-head h3{margin:0;font-size:1rem;color:var(--text-primary)}.sx-text{margin:0;font-size:.8rem;line-height:1.5;color:var(--text-secondary)}.sx-field{display:flex;flex-direction:column;gap:4px;font-size:.74rem;color:var(--text-muted)}.sx-field input{padding:8px 10px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);font:inherit;font-size:.85rem}.sx-field input[readonly]{opacity:.75}.sx-error{font-size:.78rem;color:var(--accent-red, #ef4444)}.sx-actions{display:flex;justify-content:flex-end;gap:8px}.sx-actions button{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;font-size:.82rem;cursor:pointer}.sx-ghost{background:none;border:1px solid var(--border-color);color:var(--text-secondary)}.sx-primary{background:var(--accent-blue, #2563eb);border:1px solid transparent;color:#fff}.sx-primary:disabled{opacity:.5;cursor:default}.te-overlay{position:fixed;inset:0;z-index:600;background:color-mix(in srgb,var(--backdrop-bg) 80%,black 20%);backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:flex-end;padding:1.25rem}.te-panel{width:340px;background:var(--overlay-bg);border:var(--glass-border);border-radius:16px;box-shadow:var(--glass-shadow),0 0 0 1px color-mix(in srgb,var(--accent-cyan) 10%,transparent);padding:1.1rem;display:flex;flex-direction:column;gap:.9rem;animation:teIn .22s cubic-bezier(.34,1.4,.64,1);max-height:90vh;overflow-y:auto}@keyframes teIn{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.te-header{display:flex;align-items:center;justify-content:space-between}.te-header--draggable{cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.te-title{font-size:var(--text-md);font-weight:700;color:var(--text-primary);letter-spacing:.01em}.te-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:color .15s;padding:0}.te-close:hover{color:var(--text-primary)}.te-mode-row{display:flex;align-items:center;gap:8px}.te-mode-row .te-tabs{flex:1}.te-tabs{display:flex;align-items:center;gap:4px;background:var(--bg-secondary);border-radius:9px;padding:3px}.te-tabs-content{background:transparent;padding:0 0 6px;gap:2px;border-bottom:1px solid var(--border-color);border-radius:0}.te-tabs-content .te-tab{border-radius:var(--radius-sm);padding:.3rem .65rem}.te-tabs-content .te-tab.active{background:color-mix(in srgb,var(--accent-cyan) 12%,transparent);color:var(--accent-cyan);box-shadow:none}.te-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:.35rem .5rem;border-radius:7px;border:none;font-size:var(--text-sm);font-weight:600;color:var(--text-muted);background:transparent;cursor:pointer;transition:background .15s,color .15s;position:relative}.te-tab.active{background:var(--bg-tertiary);color:var(--text-primary);box-shadow:0 1px 4px color-mix(in srgb,var(--shadow-color) 15%,transparent)}.te-tab-badge{font-size:.52rem;font-weight:700;padding:1px 5px;border-radius:999px;background:color-mix(in srgb,var(--accent-cyan) 18%,transparent);color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.04em}.te-no-preview{font-size:.6rem;color:var(--text-muted);font-style:italic;margin-left:auto;padding-right:2px}.te-section{display:flex;flex-direction:column;gap:.55rem}.te-section-label{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.te-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.te-preset{height:46px;border-radius:9px;border:1px solid color-mix(in srgb,white 12%,transparent);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;transition:transform .15s,border-color .15s,box-shadow .15s;overflow:hidden}.te-preset:hover{transform:translateY(-2px);border-color:color-mix(in srgb,white 30%,transparent);box-shadow:0 4px 12px color-mix(in srgb,var(--shadow-color) 20%,transparent)}.te-preset-dot{width:10px;height:10px;border-radius:50%;border:1.5px solid color-mix(in srgb,white 50%,transparent);flex-shrink:0}.te-preset-name{font-size:.58rem;font-weight:600;color:color-mix(in srgb,white 92%,transparent);text-shadow:0 1px 3px color-mix(in srgb,black 60%,transparent)}.te-control{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:32px}.te-control-label{font-size:var(--text-sm);color:var(--text-secondary);flex-shrink:0}.te-control-right{display:flex;align-items:center;gap:6px;min-width:0}.te-swatch-wrap{width:26px;height:26px;border-radius:7px;border:1.5px solid color-mix(in srgb,white 18%,transparent);flex-shrink:0;cursor:pointer;display:block;overflow:hidden;position:relative}.te-color-input{position:absolute;inset:-4px;width:calc(100% + 8px);height:calc(100% + 8px);opacity:0;cursor:pointer;border:none;padding:0}.te-hex-val{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.te-arrow{font-size:var(--text-base);color:var(--text-muted);flex-shrink:0}.te-toggle{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.te-toggle input{position:absolute;opacity:0;pointer-events:none}.te-toggle-track{position:relative;width:32px;height:18px;border-radius:999px;background:var(--bg-tertiary);border:1px solid var(--border-color);transition:background .18s;flex-shrink:0}.te-toggle-thumb{position:absolute;top:1px;left:1px;width:14px;height:14px;border-radius:50%;background:var(--text-secondary);transition:transform .18s,background .18s}.te-toggle input:checked+.te-toggle-track{background:rgb(var(--accent-primary-rgb));border-color:rgb(var(--accent-primary-rgb))}.te-toggle input:checked+.te-toggle-track .te-toggle-thumb{transform:translate(14px);background:#fff}.te-toggle-label{font-size:var(--text-xs);color:var(--text-muted)}.te-gradient-strip{height:26px;width:50px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,white 10%,transparent);flex-shrink:0}.te-gradient-preview{height:10px;border-radius:999px;border:1px solid color-mix(in srgb,white 8%,transparent);margin-top:-2px}.te-slider-row{flex:1;gap:8px!important}.te-slider{flex:1;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-tertiary);border-radius:999px;outline:none;cursor:pointer;min-width:80px}.te-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent-cyan);border:2px solid var(--bg-primary);cursor:pointer;box-shadow:0 1px 4px color-mix(in srgb,var(--shadow-color) 30%,transparent)}.te-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent-cyan);border:2px solid var(--bg-primary);cursor:pointer}.te-slider-val{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-muted);min-width:28px;text-align:right;flex-shrink:0}.te-semantic-row{display:flex;gap:6px}.te-semantic-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.te-swatch-lg{width:36px!important;height:36px!important;border-radius:9px!important}.te-semantic-label{font-size:.55rem;color:var(--text-muted);font-weight:600;text-align:center}.te-select{font-size:var(--text-sm);font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:7px;padding:.3rem .5rem;cursor:pointer;outline:none;transition:border-color .15s;flex:1;min-width:0}.te-select:hover{border-color:color-mix(in srgb,var(--accent-cyan) 40%,transparent)}.te-select option{background:var(--bg-primary);color:var(--text-primary)}.te-actions{display:flex;gap:.5rem;padding-top:.4rem;border-top:1px solid var(--border-color)}.te-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:.45rem .75rem;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background .15s,color .15s}.te-btn-reset{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.te-btn-reset:hover{background:var(--bg-tertiary);color:var(--text-primary)}.te-btn-save{background:color-mix(in srgb,var(--accent-cyan) 15%,transparent);color:var(--accent-cyan);border:1px solid color-mix(in srgb,var(--accent-cyan) 28%,transparent)}.te-btn-save:hover{background:color-mix(in srgb,var(--accent-cyan) 28%,transparent)}.te-btn-save.saved{background:color-mix(in srgb,var(--accent-green) 14%,transparent);color:var(--accent-green);border-color:color-mix(in srgb,var(--accent-green) 28%,transparent)}:root.light .te-panel{background:color-mix(in srgb,var(--bg-secondary) 92%,transparent);border-color:color-mix(in srgb,var(--border-color) 85%,transparent)}:root.light .te-preset{border-color:color-mix(in srgb,black 12%,transparent)}:root.light .te-preset:hover{border-color:color-mix(in srgb,black 25%,transparent)}:root.light .te-swatch-wrap{border-color:color-mix(in srgb,black 18%,transparent)}.ks-trigger{position:fixed;bottom:1.25rem;right:1.25rem;width:28px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--accent-cyan) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent-cyan) 20%,transparent);color:var(--text-muted);font-size:var(--text-md);font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:500;transition:all .15s}.ks-trigger:hover{background:color-mix(in srgb,var(--accent-cyan) 22%,transparent);color:var(--text-primary)}.ks-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--backdrop-bg) 85%,black 15%);backdrop-filter:blur(4px);z-index:9000;display:flex;align-items:center;justify-content:center}.ks-modal{background:var(--bg-primary);border:1px solid color-mix(in srgb,var(--accent-cyan) 20%,transparent);border-radius:16px;padding:1.5rem;width:420px;max-width:90vw;box-shadow:0 24px 64px color-mix(in srgb,var(--shadow-color) 50%,transparent)}.ks-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.ks-close{background:none;border:none;color:var(--text-muted);font-size:1.2rem;cursor:pointer;padding:0 4px;line-height:1}.ks-close:hover{color:var(--text-primary)}.ks-grid{display:flex;flex-direction:column;gap:.5rem}.ks-item{display:flex;align-items:center;justify-content:space-between;padding:.4rem 0;border-bottom:1px solid color-mix(in srgb,var(--accent-cyan) 6%,transparent)}.ks-item:last-child{border-bottom:none}.ks-keys{display:flex;gap:4px}kbd{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 6px;background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent-cyan) 20%,transparent);border-radius:4px;font-size:var(--text-sm);font-family:var(--font-mono, monospace);color:var(--text-primary);font-weight:600}.ks-label{font-size:var(--text-md);color:var(--text-muted)}.ui-surface-glass{background:var(--card-bg);border:var(--glass-border);box-shadow:var(--glass-shadow)}.ui-btn-compact{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .7rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;font-size:var(--text-base);font-weight:500;transition:all var(--motion-fast, .15s)}.ui-btn-compact:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.ui-card-soft{background:color-mix(in srgb,var(--bg-secondary) 78%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 75%,transparent);border-radius:var(--radius-lg)}.btn-danger-outline{padding:.25rem .5rem;background:color-mix(in srgb,var(--accent-red) 10%,transparent);border:1px solid var(--accent-red);border-radius:4px;color:var(--accent-red);cursor:pointer;font-size:var(--text-base);transition:all .15s}.btn-danger-outline:hover{background:color-mix(in srgb,var(--accent-red) 20%,transparent)}.btn-sm{padding:.2rem .5rem;font-size:var(--text-base);border-radius:4px;border:none;cursor:pointer}.btn-sm.green{background:var(--accent-green);color:var(--text-on-accent)}.btn-sm.gray{background:var(--text-muted);color:var(--text-on-accent)}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .4rem;border-radius:4px;font-size:var(--text-base);font-weight:500}.badge.success{background:color-mix(in srgb,var(--accent-green) 15%,transparent);color:var(--accent-green)}.badge.error{background:color-mix(in srgb,var(--accent-red) 15%,transparent);color:var(--accent-red)}.form-field{display:flex;flex-direction:column;gap:.25rem}.form-label{font-size:var(--text-base);color:var(--text-muted)}.form-input,.form-select{padding:.5rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-md);transition:border-color .15s}.form-input:focus,.form-select:focus{outline:none;border-color:var(--accent-cyan)}.form-error{background:color-mix(in srgb,var(--accent-red) 10%,transparent);border:1px solid var(--accent-red);border-radius:var(--radius-md);padding:.5rem .75rem;margin-bottom:1rem;color:var(--accent-red);font-size:var(--text-md)}.error-banner{border:1px solid color-mix(in srgb,var(--accent-red) 35%,transparent);background:color-mix(in srgb,var(--accent-red) 10%,transparent);padding:.6rem .85rem;font-size:var(--text-base);color:var(--accent-red);display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:var(--radius-md)}.error-banner-retry{border:none;background:none;color:var(--accent-cyan);font-size:var(--text-base);cursor:pointer;text-decoration:underline;padding:0;white-space:nowrap}.export-btn{display:inline-flex;align-items:center;gap:5px;padding:.35rem .7rem;font-size:var(--text-base);font-weight:500;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;white-space:nowrap}.export-btn:hover{color:var(--accent-cyan);border-color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 6%,transparent)}.export-btn:disabled{opacity:.5;cursor:not-allowed}.export-btn svg{flex-shrink:0}.exp-dropdown{position:relative}.exp-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .7rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;font-size:var(--text-base);font-weight:500;transition:all .15s;white-space:nowrap}.exp-btn:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.exp-btn:disabled{opacity:.5;cursor:not-allowed}.exp-menu{position:absolute;bottom:110%;left:0;min-width:150px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;z-index:100;box-shadow:var(--glass-shadow)}.exp-menu-item{display:flex;align-items:center;gap:.4rem;width:100%;padding:.5rem .8rem;background:none;border:none;cursor:pointer;color:var(--text-primary);font-size:var(--text-md);text-align:left;transition:background .12s}.exp-menu-item:hover{background:var(--hover-overlay)}.exp-backdrop{position:fixed;inset:0;z-index:99}@keyframes exp-spin{to{transform:rotate(360deg)}}.exp-spin{animation:exp-spin .8s linear infinite}.graph-container{position:relative;height:100vh;height:100dvh;background:transparent;border-radius:0;overflow:hidden;display:flex;flex-direction:column}.light .graph-canvas-surface{background:#18191a}.graph-embed>.graph-container,.graph-embed .graph-container{height:100%}.cosmos-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.cosmos-label{position:absolute;left:0;top:0;color:#e5e7eb;font-size:11px;font-weight:600;white-space:nowrap;text-shadow:0 0 3px #18191a,0 0 3px #18191a;will-change:transform}.cosmos-label.is-governor{font-size:12px}.cosmos-tip{position:fixed;z-index:2000;padding:8px 10px;border-radius:6px;background:#0a0e14f2;color:#e5e7eb;font-size:12px;white-space:pre-line;pointer-events:none;box-shadow:0 8px 20px #0009}.graph-year-timeline{flex-shrink:0;display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:var(--overlay-bg);border-top:1px solid var(--border-color);min-height:40px}.graph-year-timeline-label{font-size:var(--text-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.graph-year-timeline-bar{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;flex:1;min-width:0}.graph-year-chip{padding:.25rem .5rem;font-size:var(--text-base);border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.graph-year-chip:hover{background:rgba(var(--accent-primary-rgb),.15);border-color:var(--accent-cyan);color:var(--text-primary)}.graph-year-chip.active{background:var(--accent-cyan);border-color:var(--accent-cyan);color:var(--text-on-accent);font-weight:600}.graph-year-chip.playing{border-color:rgba(var(--accent-primary-rgb),.5)}.graph-controls-panel{position:absolute;top:.75rem;left:.75rem;bottom:.75rem;z-index:10;width:256px;display:flex;flex-direction:column;gap:0;background:var(--card-bg);border-radius:12px;border:1px solid var(--border-color);overflow:hidden;transition:width .2s ease;box-shadow:var(--glass-shadow)}.graph-controls-panel.collapsed{width:38px;bottom:auto}.graph-panel-toggle{display:flex;align-items:center;justify-content:center;width:100%;padding:.55rem 0;background:var(--bg-tertiary);border:none;border-bottom:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:color .15s,background .15s}.graph-panel-toggle:hover{color:var(--accent-cyan);background:var(--hover-overlay)}.graph-controls-panel.open .graph-panel-toggle+*{overflow-y:auto}.graph-ctrl-tabs{display:flex;gap:2px;padding:.4rem .5rem;border-bottom:1px solid var(--border-color);flex-shrink:0;background:var(--bg-tertiary)}.graph-ctrl-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.35rem;padding:.4rem 0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--text-sm);font-weight:600;letter-spacing:.02em;cursor:pointer;transition:color .15s,background .15s}.graph-ctrl-tab:hover{color:var(--text-secondary);background:var(--hover-overlay)}.graph-ctrl-tab.active{color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 14%,transparent)}.graph-ctrl-tab-action{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:30px;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s}.graph-ctrl-tab-action:hover{color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 14%,transparent)}.graph-ctrl-active-case{display:flex;align-items:center;gap:.4rem;width:100%;padding:.4rem .6rem;border:none;border-bottom:1px solid var(--border-color);background:color-mix(in srgb,var(--accent-cyan) 8%,transparent);color:var(--accent-cyan);font-size:.72rem;font-weight:600;cursor:pointer;flex-shrink:0;transition:background .15s}.graph-ctrl-active-case:hover{background:color-mix(in srgb,var(--accent-cyan) 14%,transparent)}.graph-ctrl-active-case-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.graph-ctrl-active-case-count{flex-shrink:0;padding:.05rem .4rem;border-radius:999px;background:color-mix(in srgb,var(--accent-cyan) 20%,transparent);font-size:.65rem}.graph-ctrl-active-case-close{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted);transition:color .15s}.graph-ctrl-active-case-close:hover{color:var(--accent-red)}.graph-ctrl-search{padding:.6rem .65rem .5rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.graph-ctrl-input{width:100%;padding:7px 10px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-size:var(--text-base);box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.graph-ctrl-input:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 0 2px rgba(var(--accent-primary-rgb),.15)}.graph-search-dropdown{position:absolute;left:0;right:0;top:100%;margin-top:4px;background:color-mix(in srgb,var(--bg-secondary) 92%,transparent);border:1px solid var(--border-color);border-radius:var(--radius-sm);max-height:280px;overflow-y:auto;z-index:1000;box-shadow:0 6px 20px var(--shadow-color)}.graph-search-item{display:flex;align-items:center;border-bottom:1px solid var(--border-color);transition:background .15s}.graph-search-item:hover{background:var(--bg-tertiary)}.graph-search-item-body{flex:1;min-width:0;padding:6px 8px;cursor:pointer}.graph-search-item-name{font-size:var(--text-base);font-weight:500;color:var(--text-primary);margin-bottom:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.graph-search-item-meta{display:flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--text-muted)}.graph-search-item-add{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:26px;height:26px;margin-right:4px;background:none;border:1px solid var(--border-color);border-radius:4px;color:var(--text-muted);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.graph-search-item-add:hover{color:var(--accent-cyan);border-color:var(--accent-cyan);background:rgba(var(--accent-primary-rgb),.1)}.graph-search-empty{padding:16px;text-align:center;font-size:var(--text-base);color:var(--text-muted)}.graph-search-chips{display:flex;flex-wrap:wrap;gap:4px;padding:.3rem .6rem}.graph-search-chip{display:flex;align-items:center;gap:3px;padding:2px 4px 2px 3px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;font-size:.6rem;color:var(--text-secondary);max-width:100%}.graph-search-chip-type{padding:0 3px;border-radius:2px;font-size:.5rem;font-weight:700;letter-spacing:.03em;flex-shrink:0}.graph-search-chip-type[data-type=governor]{background:var(--bg-tertiary);color:var(--text-secondary)}.graph-search-chip-type[data-type=organization]{background:rgba(var(--accent-primary-rgb),.2);color:var(--accent-cyan)}.graph-search-chip-type[data-type=bidder]{background:color-mix(in srgb,var(--accent-green) 22%,transparent);color:var(--accent-green)}.graph-search-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px}.graph-search-chip-x{display:flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;background:none;border:none;border-radius:2px;color:var(--text-muted);cursor:pointer;flex-shrink:0}.graph-search-chip-x:hover{background:var(--hover-overlay);color:var(--text-primary)}.graph-cases-tab{padding:.6rem .65rem;display:flex;flex-direction:column;gap:.5rem}.graph-cases-entities{background:color-mix(in srgb,var(--bg-secondary) 92%,transparent);border:1px solid var(--border-color);border-radius:var(--radius-sm);max-height:200px;overflow-y:auto}.graph-cases-list-header{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-xs);font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted);margin-top:.25rem}.graph-cases-tab .graph-search-item{border-radius:var(--radius-sm);border:1px solid var(--border-color);margin-bottom:4px;cursor:pointer}.graph-cases-tab .graph-search-item.active{border-color:var(--accent-cyan);background:rgba(var(--accent-primary-rgb),.08)}.graph-ctrl-section{margin:.4rem .5rem;background:var(--bg-tertiary);border-radius:var(--radius-lg);border:1px solid var(--border-color);flex-shrink:0;overflow:hidden}.graph-ctrl-section-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem .6rem;gap:.35rem}.graph-ctrl-section-header-btn{flex:1;display:flex;align-items:center;justify-content:space-between;padding:0;background:none;border:none;color:var(--text-secondary);font-size:var(--text-sm);font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:color .15s;text-align:left}.graph-ctrl-section-header-btn:hover{color:var(--accent-cyan)}.graph-ctrl-section-info-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:1px solid rgba(var(--accent-primary-rgb),.25);border-radius:50%;color:var(--accent-cyan);cursor:pointer;transition:color .15s,background .15s,border-color .15s}.graph-ctrl-section-info-btn:hover{color:var(--text-on-accent);background:rgba(var(--accent-primary-rgb),.2);border-color:var(--accent-cyan)}.graph-ctrl-section-body{padding:.15rem .6rem .6rem;display:flex;flex-direction:column;gap:.55rem}.control-group{display:flex;flex-direction:column;gap:.25rem}.control-group label{font-size:var(--text-sm);color:var(--text-muted);font-weight:500;letter-spacing:.01em}.control-group select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--bg-tertiary);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%231877F2'%3E%3Cpath d='M4 6l4 4 4-4H4z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:14px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.35rem 1.75rem .35rem .5rem;color:var(--text-primary);font-size:var(--text-base);width:100%;transition:border-color .15s,background .15s;cursor:pointer}.control-group select:hover{background:var(--hover-overlay);border-color:var(--accent-cyan)}.control-group select:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-cyan) 22%,transparent)}.control-group.checkbox{flex-direction:row;align-items:center;padding:.3rem .5rem;background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color);transition:background .15s,border-color .15s}.control-group.checkbox:hover{background:var(--hover-overlay);border-color:var(--accent-cyan)}.control-group.checkbox label{display:flex;align-items:center;gap:.5rem;font-size:var(--text-base);color:var(--text-secondary);font-weight:400;cursor:pointer;width:100%}.control-group.checkbox input[type=checkbox]{width:15px;height:15px;cursor:pointer;accent-color:var(--accent-cyan);border-radius:4px}.graph-ctrl-toggle-group{display:flex;gap:3px;background:var(--bg-tertiary);border-radius:var(--radius-md);padding:2px;border:1px solid var(--border-color)}.graph-ctrl-toggle-group button{flex:1;padding:5px 0;font-size:var(--text-sm);font-weight:600;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.graph-ctrl-toggle-group button.active{background:var(--accent-cyan);color:var(--text-on-accent);box-shadow:0 1px 4px rgba(var(--accent-primary-rgb),.3)}.graph-ctrl-toggle-group button:hover:not(.active):not(:disabled){background:var(--hover-overlay);color:var(--text-primary)}.graph-ctrl-reset-btn{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:6px 10px;font-size:var(--text-base);font-weight:500;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;transition:background .15s,color .15s,border-color .15s;width:100%}.graph-ctrl-reset-btn:hover{background:var(--accent-cyan);color:var(--text-on-accent);border-color:var(--accent-cyan)}.graph-filter-cards{display:flex;flex-direction:column;gap:.35rem;padding:.4rem .5rem .6rem}.graph-filter-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:.5rem .6rem;display:flex;flex-direction:column;gap:.3rem;transition:border-color .15s,background .15s}.graph-filter-card:hover{border-color:var(--accent-cyan);background:var(--hover-overlay)}.graph-filter-card-label{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-sm);font-weight:600;color:var(--text-secondary)}.graph-filter-card-value{font-family:var(--font-mono);font-size:var(--text-base);font-weight:700;color:var(--accent-cyan);min-width:24px;text-align:right}.graph-filter-card select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--card-bg);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%231877F2'%3E%3Cpath d='M4 6l4 4 4-4H4z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:14px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.35rem 1.75rem .35rem .5rem;color:var(--text-primary);font-size:var(--text-base);width:100%;cursor:pointer;transition:border-color .15s}.graph-filter-card select:hover{border-color:var(--accent-cyan)}.graph-filter-card select:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-cyan) 22%,transparent)}.graph-ctrl-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;border-radius:4px;background:var(--border-color);outline:none;margin-top:4px;cursor:pointer}.graph-ctrl-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent-cyan);cursor:pointer;box-shadow:0 1px 4px rgba(var(--accent-primary-rgb),.4)}.graph-ctrl-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent-cyan);cursor:pointer;border:none;box-shadow:0 1px 4px rgba(var(--accent-primary-rgb),.4)}.graph-ctrl-stats{padding:.5rem .6rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:.2rem;margin-top:auto;flex-shrink:0}.graph-ctrl-stat-row{display:flex;justify-content:space-between;align-items:center}.stat-label-sm{font-size:var(--text-xs);color:var(--text-muted)}.stat-val-sm{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--text-secondary);font-weight:600}.graph-ctrl-legend{padding:.5rem .6rem .65rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:.25rem;flex-shrink:0}.graph-ctrl-legend-row{display:flex;align-items:center;gap:.4rem;font-size:var(--text-xs);color:var(--text-muted)}.graph-legend-floating{position:absolute;top:.75rem;right:.75rem;z-index:20;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--glass-shadow);min-width:200px;max-width:240px;font-size:var(--text-sm);overflow:hidden}.graph-legend-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem .65rem;background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);gap:.5rem;transition:background .15s}.graph-legend-toggle:hover{background:var(--bg-tertiary);color:var(--text-primary)}.graph-legend-pills{display:flex;align-items:center;gap:.35rem}.legend-pill{padding:.15rem .45rem;border-radius:999px;font-size:.6rem;font-weight:600;font-family:var(--font-mono);background:var(--bg-tertiary);color:var(--accent-cyan);border:1px solid var(--border-color)}.graph-legend-body{padding:0 .55rem .55rem;display:flex;flex-direction:column;gap:.5rem}.legend-card{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:.5rem;border:1px solid var(--border-color)}.legend-card-title{font-size:.55rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.4rem}.legend-risk-bar{display:flex;height:6px;border-radius:3px;overflow:hidden;margin-bottom:.4rem;background:var(--bg-primary)}.legend-risk-segment{height:100%;transition:width .4s ease;min-width:3px}.legend-risk-segment:first-child{border-radius:3px 0 0 3px}.legend-risk-segment:last-child{border-radius:0 3px 3px 0}.legend-risk-labels{display:flex;flex-direction:column;gap:.2rem}.legend-risk-label{display:flex;align-items:center;gap:.35rem;font-size:.6rem;color:var(--text-muted)}.legend-risk-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.legend-risk-count{margin-left:auto;font-weight:700;font-family:var(--font-mono);color:var(--text-secondary)}.legend-items{display:flex;flex-direction:column;gap:.25rem}.legend-row{display:flex;align-items:center;gap:.4rem;padding:.15rem .2rem;border-radius:4px;transition:background .15s}.legend-row:hover{background:var(--bg-primary)}.legend-row-label{font-size:var(--text-xs);color:var(--text-muted)}.legend-dot-sm{width:10px;height:10px;border-radius:50%;flex-shrink:0;box-shadow:0 0 4px color-mix(in srgb,var(--shadow-color) 45%,transparent)}.legend-gradient-dots{display:flex;gap:2px;flex-shrink:0}.legend-gradient-dots .legend-dot-sm{width:7px;height:7px}.legend-edge-line{display:inline-block;width:22px;height:2.5px;flex-shrink:0;border-radius:2px}.legend-edge-line.dashed{height:0;border-top:2.5px dashed;background:none;border-radius:0}.graph-zoom-controls{position:absolute;bottom:.75rem;right:.75rem;z-index:20;display:flex;flex-direction:column;gap:1px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--glass-shadow);overflow:hidden}.graph-zoom-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s}.graph-zoom-btn:hover{background:var(--bg-tertiary);color:var(--accent-cyan)}.graph-zoom-btn:active{transform:scale(.92)}.graph-zoom-btn+.graph-zoom-btn{border-top:1px solid var(--border-color)}.graph-zoom-btn.active{background:rgba(var(--accent-primary-rgb),.18);color:var(--accent-cyan)}.stat-full-width{grid-column:1 / -1;width:100%;display:block;text-align:center;padding:.45rem;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border-color)}.graph-error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;background:var(--bg-secondary);border:1px solid var(--accent-red);border-radius:12px;text-align:center;z-index:10}.graph-error svg{color:var(--accent-red)}.graph-error button{padding:.5rem 1rem;background:var(--accent-cyan);border:none;border-radius:var(--radius-sm);color:var(--text-on-accent);cursor:pointer}@keyframes panelSlideIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.node-detail-panel{position:absolute;bottom:.75rem;right:3.4rem;width:auto;min-width:220px;max-width:min(38vw,320px);max-height:min(320px,calc(100% - 1.5rem));overflow-y:auto;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:.65rem;z-index:20;box-shadow:var(--glass-shadow);animation:panelSlideIn .25s cubic-bezier(.16,1,.3,1);font-size:var(--text-base);transition:max-height .25s ease,opacity .2s ease}:root.bg-image-mode .graph-controls-panel,:root.bg-image-mode .graph-legend-floating,:root.bg-image-mode .graph-zoom-controls,:root.bg-image-mode .node-detail-panel,:root.bg-image-mode .graph-search-dropdown{background:var(--card-bg)}:root.bg-image-mode .graph-year-timeline{background:var(--card-bg)}.node-detail-panel.minimized{max-height:44px;overflow:hidden;min-width:200px}.node-detail-panel .close-btn{position:absolute;top:.6rem;right:.6rem;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .15s}.node-detail-panel .close-btn:hover{color:var(--text-on-accent);background:var(--accent-red);border-color:var(--accent-red)}.node-detail-panel .node-header{margin-bottom:.5rem;padding:0 1.5rem .4rem 0;border-bottom:1px solid var(--border-color)}.node-detail-panel .node-header h3{font-size:var(--text-md);margin-bottom:.2rem;line-height:1.25;word-break:break-word}.node-detail-panel .node-header.critical{border-left:3px solid var(--accent-red);padding-left:.6rem;border-radius:2px 0 0}.node-detail-panel .node-header.critical h3{color:var(--accent-red)}.node-detail-panel .node-header.high{border-left:3px solid var(--accent-orange);padding-left:.6rem;border-radius:2px 0 0}.node-detail-panel .node-header.high h3{color:var(--accent-orange)}.node-detail-panel .node-header.medium{border-left:3px solid var(--accent-yellow);padding-left:.6rem;border-radius:2px 0 0}.node-detail-panel .node-header.medium h3{color:var(--accent-yellow)}.node-detail-panel .node-header.low{border-left:3px solid var(--accent-green);padding-left:.6rem;border-radius:2px 0 0}.node-detail-panel .node-header.low h3{color:var(--accent-green)}.node-type-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .5rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:999px;font-size:.6rem;font-weight:600;color:var(--text-muted);letter-spacing:.02em}.win-rate-display{display:flex;justify-content:center;margin-bottom:.5rem}.win-rate-circle{width:72px;height:72px;border-radius:50%;border:3px solid;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-tertiary);box-shadow:0 0 20px color-mix(in srgb,var(--shadow-color) 45%,transparent);transition:box-shadow .3s}.win-rate-circle:hover{box-shadow:0 0 28px color-mix(in srgb,var(--shadow-color) 65%,transparent)}.win-rate-circle .rate-value{font-size:1.05rem;font-weight:700;font-family:var(--font-mono);letter-spacing:-.02em}.win-rate-circle .rate-label{font-size:.55rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.node-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem;margin-bottom:.45rem}.node-stats>div{background:var(--bg-tertiary);padding:.3rem .25rem;border-radius:var(--radius-sm);text-align:center;border:1px solid var(--border-color);transition:border-color .15s}.node-stats>div:hover{border-color:var(--accent-cyan)}.node-stats .stat-label{display:block;font-size:.55rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.15rem}.node-stats .stat-value{display:block;font-size:var(--text-md);font-weight:700;font-family:var(--font-mono);color:var(--accent-cyan)}.node-stats .stat-value.risk-critical{color:var(--accent-red)}.node-stats .stat-value.risk-high{color:var(--accent-orange)}.node-stats .stat-value.risk-medium{color:var(--accent-yellow)}.node-stats .stat-value.risk-low{color:var(--accent-green)}.view-detail-btn{display:flex;align-items:center;justify-content:center;gap:.3rem;width:100%;padding:.4rem;background:linear-gradient(135deg,rgba(var(--accent-primary-rgb),.8),rgb(var(--accent-primary-rgb)));color:var(--text-on-accent);border:none;border-radius:var(--radius-sm);text-decoration:none;font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 12px rgba(var(--accent-primary-rgb),.3)}.view-detail-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(var(--accent-primary-rgb),.4)}.node-stats .stat-label.stat-label-info{display:flex;align-items:center;gap:4px}.node-stats .stat-label-info .bd-bs-ol-info{width:14px;height:14px}.sidebar-actions{position:absolute;top:.4rem;right:.4rem;display:flex;gap:.25rem}.sidebar-actions .close-btn{position:static}.sidebar-section-title{font-size:.6rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:700;margin:.5rem 0 .35rem}.sidebar-section-title:first-of-type{margin-top:0}.sidebar-formula{font-size:.58rem;color:var(--text-muted);font-weight:400;line-height:1.35;padding:.3rem .4rem;background:var(--bg-primary);border-radius:5px;border:1px solid var(--border-color);margin-bottom:.3rem}.sidebar-loading{display:flex;justify-content:center;padding:1rem;color:var(--text-muted)}.sidebar-empty{color:var(--text-muted);font-size:var(--text-base);padding:.5rem 0;text-align:center}.sidebar-list{display:flex;flex-direction:column;gap:.3rem}.sidebar-list.scrollable{max-height:200px;overflow-y:auto}.sidebar-edge-list{display:flex;flex-direction:column;gap:.35rem;max-height:280px;overflow-y:auto}.sidebar-list-item{display:flex;align-items:center;gap:.4rem;padding:.35rem .5rem;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border-color);text-decoration:none;transition:border-color .15s,background .15s}.sidebar-list-item:hover{border-color:var(--accent-cyan);background:rgba(var(--accent-primary-rgb),.05)}.sidebar-list-item.cobidder{border-color:color-mix(in srgb,var(--accent-purple) 30%,transparent)}.sidebar-list-item.cobidder:hover{border-color:color-mix(in srgb,var(--accent-purple) 55%,transparent);background:color-mix(in srgb,var(--accent-purple) 10%,transparent)}.sidebar-list-rank{font-size:.58rem;color:var(--text-muted);width:14px;flex-shrink:0;text-align:center;font-weight:700;font-family:var(--font-mono)}.sidebar-list-label{font-size:var(--text-sm);color:var(--text-primary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-list-value{font-size:var(--text-xs);font-weight:700;font-family:var(--font-mono);flex-shrink:0;padding:.1rem .35rem;border-radius:999px}.sidebar-list-value.wins{color:var(--accent-green);background:color-mix(in srgb,var(--accent-green) 14%,transparent)}.sidebar-list-value.co-count{color:var(--accent-purple);background:color-mix(in srgb,var(--accent-purple) 14%,transparent)}.sidebar-edge-card{display:block;padding:.45rem .55rem;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border-color);text-decoration:none;transition:border-color .15s,background .15s}.sidebar-edge-card:hover{border-color:var(--accent-cyan);background:rgba(var(--accent-primary-rgb),.05)}.sidebar-edge-card.won{border-left:3px solid color-mix(in srgb,var(--accent-green) 55%,transparent)}.sidebar-edge-card-title{font-size:var(--text-sm);color:var(--text-primary);margin-bottom:3px;line-height:1.3}.sidebar-edge-card-meta{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--text-muted)}.sidebar-edge-card-status{font-weight:600}.sidebar-edge-card-status.won{color:var(--accent-green)}.sidebar-metrics-section,.sidebar-timeline-section{margin-top:.6rem;padding-top:.6rem;border-top:1px solid var(--border-color)}.stat-value-green{color:var(--accent-green)!important}.risk-score-inline{margin-left:4px;font-weight:400;opacity:.85;font-size:var(--text-base)}.sidebar-actions .close-btn.bookmarked{color:var(--accent-cyan)}.sidebar-actions .close-btn.bookmarked:hover{background:rgba(var(--accent-primary-rgb),.15);border-color:var(--accent-cyan);color:var(--accent-cyan)}.sidebar-history{margin-top:.6rem;padding-top:.5rem;border-top:1px solid var(--border-color)}.sidebar-history-title{display:flex;align-items:center;gap:4px;font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:.35rem}.sidebar-history-list{display:flex;flex-direction:column;gap:2px;max-height:120px;overflow-y:auto}.sidebar-history-item{display:flex;align-items:center;gap:6px;padding:3px 5px;border-radius:5px;text-decoration:none;color:var(--text-secondary);font-size:var(--text-sm);transition:background .12s,color .12s;overflow:hidden}.sidebar-history-item:hover{background:var(--hover-overlay);color:var(--text-primary)}.sidebar-history-item.current{background:rgba(var(--accent-primary-rgb),.08);color:var(--accent-cyan)}.sidebar-history-badge{flex-shrink:0;width:16px;height:16px;border-radius:4px;background:rgba(var(--accent-primary-rgb),.15);color:var(--accent-cyan);display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:700}.sidebar-history-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.gp-panel{--gp-line: color-mix(in srgb, var(--border-color) 70%, var(--text-muted) 30%);--gp-field-bg: var(--bg-primary);width:280px;background:var(--bg-secondary);border:1px solid var(--gp-line)}.gp-head{display:flex;align-items:center;gap:6px;padding:8px;border-bottom:1px solid var(--gp-line);flex-shrink:0}.gp-tabs{flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:3px;border-radius:9px;background:var(--bg-tertiary)}.gp-tabs button{position:relative;display:flex;align-items:center;justify-content:center;gap:4px;min-width:0;padding:6px 2px;border:none;border-radius:7px;background:transparent;color:var(--text-secondary);font-size:.74rem;font-weight:600;cursor:pointer;white-space:nowrap}.gp-tabs button span{overflow:hidden;text-overflow:ellipsis}.gp-tabs button:hover{color:var(--text-primary)}.gp-tabs button.active{background:var(--bg-secondary);color:var(--accent-cyan);box-shadow:0 1px 3px #00000040}.gp-tab-badge,.gp-open-badge{min-width:15px;height:15px;padding:0 4px;border-radius:8px;background:var(--accent-cyan);color:#fff;font-size:.6rem;font-weight:700;line-height:15px;text-align:center}.gp-collapse,.gp-open-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;border:1px solid var(--gp-line, var(--border-color));border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer}.gp-collapse:hover,.gp-open-btn:hover{color:var(--accent-cyan);border-color:var(--accent-cyan)}.graph-controls-panel.collapsed{width:auto;padding:6px;background:var(--bg-secondary)}.gp-open-btn{position:relative;width:36px;height:36px;border:none}.gp-open-btn .gp-open-badge{position:absolute;top:-2px;right:-2px}.gp-body{flex:1;min-height:0;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:10px}.gp-group{border:1px solid var(--gp-line);border-radius:10px;background:color-mix(in srgb,var(--bg-tertiary) 35%,var(--bg-secondary))}.gp-group-head{display:flex;align-items:center;gap:6px;width:100%;padding:9px 11px 0;border:none;background:none;color:var(--text-primary);font-size:.74rem;font-weight:700;text-align:left}.gp-group-head>span:first-child{flex:1}.gp-group-head.is-button{cursor:pointer;padding-bottom:9px}.gp-group:not(.is-closed)>.gp-group-head.is-button{padding-bottom:0}.gp-group-head.is-button:hover{color:var(--accent-cyan)}.gp-group-body{display:flex;flex-direction:column;gap:11px;padding:10px 11px 12px}.gp-field{display:flex;flex-direction:column;gap:5px;min-width:0}.gp-field-label{display:flex;justify-content:space-between;gap:8px;color:var(--text-secondary);font-size:.7rem;font-weight:600}.gp-field-value{color:var(--accent-cyan);font-variant-numeric:tabular-nums}.gp-field-hint{color:var(--text-muted);font-size:.64rem;font-weight:400;line-height:1.35}.gp-select,.gp-input{width:100%;min-width:0;height:32px;padding:0 10px;border:1px solid var(--gp-line);border-radius:8px;background:var(--gp-field-bg);color:var(--text-primary);font-size:.74rem;text-overflow:ellipsis}.gp-select:hover,.gp-input:hover{border-color:color-mix(in srgb,var(--accent-cyan) 45%,var(--gp-line))}.gp-select:focus,.gp-input:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-cyan) 22%,transparent)}.gp-search{position:relative}.gp-search-icon{position:absolute;left:10px;top:9px;color:var(--text-muted);pointer-events:none}.gp-input-search{height:34px;padding-left:32px}.gp-search-busy{position:absolute;right:10px;top:8px;color:var(--text-muted)}.gp-search-wrap{position:relative}.gp-seg{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:2px;padding:2px;border:1px solid var(--gp-line);border-radius:8px;background:var(--gp-field-bg)}.gp-seg-wrap{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr))}.gp-seg button{min-width:0;padding:5px 2px;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);font-size:.68rem;font-weight:600;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gp-seg button:hover{color:var(--text-primary);background:var(--hover-overlay)}.gp-seg button.active{background:var(--accent-cyan);color:#fff}.gp-seg button:disabled{opacity:.4;cursor:not-allowed;background:none}.gp-kinds{display:flex;flex-wrap:wrap;gap:4px}.gp-kind{flex:1 1 auto;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:6px 8px;white-space:nowrap;border:1px solid var(--gp-line);border-radius:8px;background:var(--gp-field-bg);color:var(--text-muted);font-size:.66rem;font-weight:600;cursor:pointer;opacity:.6}.gp-kind.active{opacity:1;color:var(--text-primary);border-color:color-mix(in srgb,var(--accent-cyan) 60%,var(--gp-line));background:color-mix(in srgb,var(--accent-cyan) 10%,var(--gp-field-bg))}.gp-kind-dot{width:9px;height:9px;flex-shrink:0;border-radius:50%;box-shadow:0 0 0 1.5px #18191a,0 0 0 2.5px color-mix(in srgb,var(--text-muted) 60%,transparent)}.gp-kind-tag{display:inline-flex;align-items:center;gap:5px}.gp-switch{position:relative;display:flex;align-items:center;gap:10px;cursor:pointer}.gp-switch-text{flex:1;display:flex;flex-direction:column;gap:2px;color:var(--text-secondary);font-size:.7rem;font-weight:600}.gp-switch input{position:absolute;opacity:0;pointer-events:none}.gp-switch-track{position:relative;width:32px;height:18px;flex-shrink:0;border-radius:9px;background:var(--bg-tertiary);border:1px solid var(--gp-line);transition:background .15s}.gp-switch-track:after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:var(--text-muted);transition:transform .15s,background .15s}.gp-switch input:checked+.gp-switch-track{background:var(--accent-cyan);border-color:var(--accent-cyan)}.gp-switch input:checked+.gp-switch-track:after{transform:translate(14px);background:#fff}.gp-switch input:focus-visible+.gp-switch-track{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-cyan) 30%,transparent)}.gp-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:linear-gradient(to right,var(--accent-cyan) var(--gp-fill, 0%),var(--bg-tertiary) var(--gp-fill, 0%));border:1px solid var(--gp-line);cursor:pointer}.gp-range::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid var(--accent-cyan);box-shadow:0 1px 3px #00000059}.gp-range::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--accent-cyan)}.gp-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--gp-line, var(--border-color));border-radius:8px;background:transparent;color:var(--text-secondary);font-size:.72rem;font-weight:600;cursor:pointer}.gp-btn:hover:not(:disabled){color:var(--accent-cyan);border-color:var(--accent-cyan)}.gp-btn:disabled{opacity:.5;cursor:default}.gp-btn-block{width:100%;flex-shrink:0}.gp-btn-primary{background:var(--accent-cyan);border-color:var(--accent-cyan);color:#fff}.gp-btn-primary:hover:not(:disabled){color:#fff;filter:brightness(1.1)}.gp-foot{padding:8px 10px 10px;border-top:1px solid var(--gp-line);flex-shrink:0}.gp-picked{display:flex;align-items:center;gap:6px;height:32px;padding:0 6px 0 10px;border:1px solid var(--accent-cyan);border-radius:8px;background:color-mix(in srgb,var(--accent-cyan) 10%,var(--gp-field-bg));font-size:.72rem}.gp-picked-kind{color:var(--text-muted);font-size:.62rem;flex-shrink:0}.gp-picked-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.gp-picked button{border:none;background:none;color:var(--text-muted);cursor:pointer;padding:2px}.gp-error{color:var(--accent-red);font-size:.68rem}.gp-path{margin:0;padding:8px 10px 8px 26px;border-radius:8px;background:var(--gp-field-bg);font-size:.7rem;color:var(--text-secondary)}.gp-path li{padding:2px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gp-path .gp-path-head{list-style:none;margin-left:-16px;color:var(--accent-cyan);font-weight:700}.graph-legend-floating.gl{width:200px;max-width:200px;min-width:0;max-height:calc(100% - 1.5rem);display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid color-mix(in srgb,var(--border-color) 70%,var(--text-muted) 30%);border-radius:10px}.gl-head{display:flex;align-items:center;justify-content:space-between;width:100%;padding:6px 10px;border:none;background:none;color:var(--text-primary);font-size:.72rem;font-weight:700;cursor:pointer}.gl-body{overflow-y:auto;padding:0 8px 8px}.gl-section{margin:4px 2px 2px;color:var(--text-muted);font-size:.58rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.gl-row{display:flex;align-items:center;gap:7px;padding:2px;cursor:default}.gl-swatch{display:inline-flex;align-items:center;justify-content:center;gap:2px;width:22px;height:14px;flex-shrink:0}.gl-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#9ca3af}.light .gl-dot{box-shadow:0 0 0 1px #0f172a47}.gl-label{flex:1;min-width:0;color:var(--text-primary);font-size:.66rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gl-label.gl-muted{color:var(--text-muted);font-weight:500}.gl-count{color:var(--text-secondary);font-size:.62rem;font-variant-numeric:tabular-nums}.cg-wrap{display:flex;flex:1;min-height:0;height:100%;gap:0;border:1px solid var(--border-color);border-radius:10px;overflow:hidden;background:transparent}.cg-panel{width:300px;flex-shrink:0;overflow-y:auto;border-right:1px solid var(--border-color);background:var(--bg-secondary);padding:.6rem .75rem;display:flex;flex-direction:column;gap:.6rem;font-size:.78rem}.cg-section{display:flex;flex-direction:column;gap:.4rem;padding-bottom:.6rem;border-bottom:1px solid var(--border-color)}.cg-section:last-child{border-bottom:0}.cg-section h4{margin:0;font-size:.8rem;display:flex;align-items:center;gap:6px;color:var(--text-primary);word-break:break-word}.cg-sub{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.cg-muted{color:var(--text-muted);font-size:.72rem}.cg-chips{display:flex;flex-wrap:wrap;gap:4px}.cg-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;border:1px solid var(--border-color);background:transparent;color:var(--text-muted);font-size:.72rem;cursor:pointer}.cg-chip.on{color:var(--text-primary);background:var(--bg-tertiary);border-color:var(--text-muted)}.cg-dot{width:9px;height:9px;border-radius:50%;display:inline-block;flex-shrink:0}.cg-line{width:14px;height:0;border-top:2px solid;display:inline-block}.cg-line.dashed{border-top-style:dashed}.cg-inline{display:flex;align-items:center;gap:6px;color:var(--text-secondary);flex-wrap:wrap}.cg-inline select,.cg-save input,.cg-search input,.cg-modal-box input{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;padding:4px 6px;font-size:.76rem}.cg-search{display:flex;align-items:center;gap:6px;border:1px solid var(--border-color);border-radius:8px;padding:2px 8px;background:var(--bg-tertiary);color:var(--text-muted)}.cg-search input{border:0;background:transparent;flex:1;min-width:0;padding:5px 0;outline:none}.cg-results,.cg-manual,.cg-saved{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:220px;overflow-y:auto}.cg-results li,.cg-manual li,.cg-saved li{display:flex;align-items:center;gap:6px;padding:3px 4px;border-radius:6px}.cg-results li:hover,.cg-saved li:hover{background:var(--bg-tertiary)}.cg-results-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cg-results button,.cg-manual button,.cg-saved button{background:none;border:0;color:var(--text-secondary);cursor:pointer;padding:2px;display:inline-flex}.cg-results button:disabled{opacity:.3;cursor:default}.cg-manual li span{flex:1;min-width:0}.cg-saved li.on{background:var(--bg-tertiary)}.cg-saved-open{flex:1;min-width:0;justify-content:flex-start;gap:5px;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)!important}.cg-actions{display:flex;flex-wrap:wrap;gap:4px}.cg-actions button,.cg-actions a,.cg-save button,.cg-clear{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-size:.74rem;cursor:pointer;text-decoration:none}.cg-actions button.on,.cg-actions button.danger:hover{border-color:#ef4444;color:#ef4444}.cg-actions button:disabled,.cg-save button:disabled,.cg-clear:disabled{opacity:.45;cursor:default}.cg-save{display:flex;gap:4px}.cg-save input{flex:1;min-width:0}.cg-link-btn{background:none;border:0;padding:0;color:var(--accent-cyan);cursor:pointer;font-size:.72rem;text-align:left;text-decoration:underline}.cg-clear{align-self:flex-start}.cg-canvas{position:relative;flex:1;min-width:0;min-height:0}.cg-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:2rem;text-align:center;color:var(--text-muted);font-size:.82rem}.cg-empty p{margin:0;max-width:420px;line-height:1.5}.cg-status{position:absolute;left:10px;bottom:8px;font-size:.7rem;color:var(--text-muted);background:var(--bg-secondary);padding:2px 8px;border-radius:6px;pointer-events:none}.cg-error{position:absolute;top:10px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:5px 10px;border-radius:8px;background:#ef44441f;border:1px solid rgba(239,68,68,.4);color:#f87171;font-size:.76rem}.cg-error button{background:none;border:0;color:inherit;cursor:pointer;display:inline-flex}.cg-modal{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000059}.cg-modal-box{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:1rem;width:min(360px,90%);display:flex;flex-direction:column;gap:.5rem}.cg-modal-box h4{margin:0;font-size:.85rem}@media(max-width:900px){.cg-wrap{flex-direction:column}.cg-panel{width:100%;max-height:45vh;border-right:0;border-bottom:1px solid var(--border-color)}.cg-canvas{min-height:55vh}}.cg-hidden-note{position:absolute;top:10px;right:10px;display:flex;align-items:center;gap:8px;padding:5px 10px;border-radius:8px;background:#ea580c1a;border:1px solid rgba(234,88,12,.35);color:#fb923c;font-size:.74rem;max-width:calc(100% - 20px)}.cg-hidden-note button{background:none;border:1px solid currentColor;border-radius:6px;color:inherit;padding:1px 8px;cursor:pointer;font-size:.72rem}.cg-group{display:flex;flex-direction:column;gap:6px}.cg-group>div{display:flex;flex-direction:column;gap:2px}.cg-group-tag{font-size:.7rem;font-weight:600;color:#14b8a6}.cg-group button{background:none;border:0;padding:1px 0 1px 10px;color:var(--text-primary);text-align:left;cursor:pointer;font-size:.74rem}.cg-group button:hover{text-decoration:underline}.cg-check{display:flex;align-items:center;gap:6px;color:var(--text-secondary);cursor:pointer}.cg-seg{display:inline-flex;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;align-self:flex-start}.cg-seg button{background:transparent;border:0;padding:4px 10px;font-size:.74rem;color:var(--text-muted);cursor:pointer}.cg-seg button.on{background:var(--bg-tertiary);color:var(--text-primary);font-weight:600}.cg-legend{position:absolute;right:10px;bottom:8px;display:flex;flex-wrap:wrap;gap:4px 12px;max-width:min(560px,calc(100% - 20px));padding:6px 10px;border-radius:8px;background:var(--bg-secondary);border:1px solid var(--border-color);font-size:.7rem;color:var(--text-secondary)}.cg-legend>span{display:inline-flex;align-items:center;gap:5px}@media(max-width:900px){.cg-legend{left:10px;right:10px;bottom:30px}}.cg-detail{position:absolute;top:0;right:0;bottom:0;width:340px;display:flex;flex-direction:column;background:var(--bg-secondary);border-left:1px solid var(--border-color);box-shadow:-8px 0 24px #0000001f;z-index:3}.cg-detail-head{display:flex;align-items:center;gap:10px;padding:12px 12px 8px}.cg-detail-icon{width:34px;height:34px;border-radius:50%;flex-shrink:0}.cg-detail-title{flex:1;min-width:0}.cg-detail-title h3{margin:0;font-size:.95rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.cg-detail-close{background:none;border:0;color:var(--text-muted);cursor:pointer;padding:4px}.cg-detail-tabs{display:flex;gap:2px;padding:0 12px;border-bottom:1px solid var(--border-color)}.cg-detail-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:7px 8px;font-size:.76rem;color:var(--text-muted);cursor:pointer;display:inline-flex;gap:5px;align-items:center}.cg-detail-tabs button.on{color:var(--text-primary);border-bottom-color:var(--accent-cyan);font-weight:600}.cg-detail-count{background:var(--bg-tertiary);border-radius:999px;padding:0 6px;font-size:.66rem}.cg-detail-body{flex:1;overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:10px}.cg-detail-pad{padding:8px 0;display:flex;gap:6px;align-items:center}.cg-detail-badges{display:flex;flex-wrap:wrap;gap:4px}.cg-badge{font-size:.66rem;font-weight:600;padding:1px 7px;border-radius:999px;background:var(--bg-tertiary);color:var(--text-secondary);white-space:nowrap}.cg-stats{display:grid;grid-template-columns:1fr 1fr;gap:6px}.cg-stat{border:1px solid var(--border-color);border-radius:8px;padding:6px 8px;display:flex;flex-direction:column;gap:2px}.cg-stat span{font-size:.66rem;color:var(--text-muted)}.cg-stat b{font-size:1rem;font-variant-numeric:tabular-nums;color:var(--accent-cyan)}.cg-stat.good b{color:#16a34a}.cg-stat.bad b{color:#dc2626}.cg-fields{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;margin:0;font-size:.76rem}.cg-fields dt{color:var(--text-muted)}.cg-fields dd{margin:0;overflow-wrap:anywhere}.cg-detail-list h4{margin:0 0 4px;font-size:.76rem}.cg-detail-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.cg-detail-item{width:100%;display:flex;align-items:center;gap:6px;padding:5px 6px;border-radius:6px;border:1px solid var(--border-color);background:transparent;color:var(--text-primary);font-size:.74rem;text-align:left;cursor:pointer}.cg-detail-item:hover{background:var(--bg-tertiary)}.cg-detail-item.static{cursor:default}.cg-detail-item-text{flex:1;min-width:0;display:flex;flex-direction:column}.cg-detail-item-text>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cg-detail-item-text small{color:var(--text-muted);font-size:.66rem;overflow-wrap:anywhere}.cg-detail-actions{display:flex;flex-wrap:wrap;gap:4px;padding:8px 12px;border-top:1px solid var(--border-color)}.cg-detail-actions button,.cg-detail-actions a{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-size:.74rem;cursor:pointer;text-decoration:none}.cg-detail-actions button.on,.cg-detail-actions button.danger:hover{border-color:#ef4444;color:#ef4444}.cg-legend.with-panel,.cg-hidden-note.with-panel{right:350px}@media(max-width:900px){.cg-detail{top:auto;left:0;width:auto;height:60%;border-left:0;border-top:1px solid var(--border-color)}.cg-legend.with-panel,.cg-hidden-note.with-panel{right:10px}}.cg-kinds{display:flex;flex-wrap:wrap;gap:4px}.cg-kinds .cg-sub{width:100%}.cg-kind{display:inline-block;padding:2px 8px;border-radius:999px;border:1px solid;font-size:.72rem;font-weight:600;cursor:pointer;background:transparent}.cg-manual .cg-kind{cursor:default;padding:0 6px;font-size:.66rem}.cg-kind-wrap{position:relative;display:inline-flex}.cg-kind-del{position:absolute;top:-5px;right:-5px;width:14px;height:14px;display:none;place-items:center;padding:0;border-radius:50%;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer}.cg-kind-wrap:hover .cg-kind-del,.cg-kind-del:focus-visible{display:grid}.cg-kind-add{display:inline-flex;align-items:center;gap:3px;border-style:dashed;border-color:var(--border-color);color:var(--text-secondary)}.cg-kind-add:hover{color:var(--text-primary);border-color:var(--text-secondary)}.cg-kind-form{display:flex;gap:6px;margin-top:6px}.cg-kind-form input{flex:1;min-width:0;height:28px;padding:0 8px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-size:.78rem}.cg-kind-form button{height:28px;padding:0 10px;border-radius:6px;border:0;background:var(--accent-cyan);color:#04121a;font-size:.75rem;font-weight:600;cursor:pointer}.cg-kind-form button:disabled{opacity:.5;cursor:default}.cg-kind-form button.ghost{background:transparent;color:var(--text-secondary)}.cg-error.info{background:#2563eb1a;border-color:#2563eb59;color:var(--text-secondary);max-width:min(560px,calc(100% - 40px))}.cg-ctx{position:absolute;z-index:5;min-width:200px;max-width:280px;display:flex;flex-direction:column;padding:4px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 10px 28px var(--bg-primary)}.cg-ctx-head{display:flex;align-items:center;gap:6px;padding:6px 8px 7px;border-bottom:1px solid var(--border-color);margin-bottom:3px;font-size:.74rem}.cg-ctx-title{flex:1;min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cg-ctx button,.cg-ctx a{display:flex;align-items:center;gap:8px;width:100%;padding:7px 9px;border:0;border-radius:7px;background:transparent;color:var(--text-primary);font-size:.8rem;text-align:left;cursor:pointer;text-decoration:none}.cg-ctx button:hover,.cg-ctx a:hover,.cg-ctx button:focus-visible,.cg-ctx a:focus-visible{background:var(--bg-tertiary);outline:none}.cg-ctx button:disabled{opacity:.5;cursor:default}.cg-ctx button.danger{color:#ef4444}.cg-ctx hr{border:0;border-top:1px solid var(--border-color);margin:3px 0}.cg-detail-actions .cg-muted{display:inline-flex;align-items:center;gap:5px;flex:1;font-size:.72rem}.cg-legend-width{display:inline-flex;align-items:center;gap:3px}.cg-legend-width>span{display:inline-block;width:14px;border-top:solid var(--text-muted)}.cg-w1{border-top-width:1px!important}.cg-w2{border-top-width:3px!important}.cg-w3{border-top-width:5px!important;margin-right:4px}.cg-detail-icon--link{background:transparent;border:3px solid;border-radius:6px;width:30px;height:12px}.cg-link-ends{display:flex;align-items:center;gap:6px}.cg-link-ends .cg-detail-item{flex:1;min-width:0}.cg-detail.pp{width:var(--cg-detail-w, 360px)}.pp-head{display:flex;align-items:center;gap:10px;padding:14px 14px 10px}.pp-type-icon{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;flex-shrink:0}.pp-type-icon--link{width:36px;height:14px;background:transparent;border:3px solid;border-radius:8px}.pp-head-text{flex:1;min-width:0;display:flex;flex-direction:column}.pp-head-text h3{margin:0;font-size:1.05rem;font-weight:700;line-height:1.25;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.pp-head-text span{font-size:.72rem;color:var(--text-muted)}.pp-tabs{display:flex;gap:2px;padding:0 10px;border-bottom:1px solid var(--border-color);overflow-x:auto}.pp-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:8px;font-size:.76rem;color:var(--text-muted);cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:5px}.pp-tabs button.on{color:var(--accent-cyan);border-bottom-color:var(--accent-cyan);font-weight:600}.pp-tab-n{background:var(--bg-tertiary);border-radius:999px;padding:0 6px;font-size:.64rem;color:var(--text-secondary)}.pp-body{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:14px}.pp-card{border:1px solid;border-radius:12px;padding:12px 14px}.pp-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.pp-card-head b{font-size:.95rem;line-height:1.3}.pp-card-pills{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.pp-kv{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:7px 12px;margin:0;font-size:.76rem}.pp-kv dt{color:var(--text-muted)}.pp-kv dd{margin:0;color:var(--text-primary);overflow-wrap:anywhere}.pp-pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.66rem;font-weight:600;white-space:nowrap}.pp-pill--info{background:#2563eb1a;color:var(--accent-cyan)}.pp-pill--good{background:#16a34a1f;color:#16a34a}.pp-pill--warn{background:#ea580c1f;color:#ea580c}.pp-list h4{margin:0 0 6px;font-size:.82rem;font-weight:700}.pp-list h4 span{color:var(--text-muted);font-weight:500}.pp-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.pp-row{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:.78rem;text-align:left;cursor:pointer}.pp-row:hover{background:var(--bg-tertiary)}.pp-row.static{cursor:default}.pp-row-icon{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.pp-row-icon--plain{background:var(--bg-tertiary)}.pp-row-text{flex:1;min-width:0;display:flex;flex-direction:column}.pp-row-text>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.pp-row-text small{color:var(--text-muted);font-size:.66rem;overflow-wrap:anywhere}.pp-row-add{color:var(--text-muted);flex-shrink:0}.pp-more{align-self:flex-start;margin-top:4px;background:none;border:0;padding:0;color:var(--accent-cyan);font-size:.72rem;cursor:pointer}.pp-stats-wrap h4{margin:0 0 6px;font-size:.82rem;font-weight:700}.pp-stats{display:grid;gap:6px}.pp-stat{border:1px solid var(--border-color);border-radius:10px;padding:8px 6px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;min-width:0}.pp-stat span{font-size:.64rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.pp-stat b{font-size:1.15rem;font-variant-numeric:tabular-nums;color:var(--accent-cyan);overflow-wrap:anywhere;line-height:1.2}.pp-stat.good b{color:#16a34a}.pp-stat.bad b{color:#dc2626}.pp-ind .pp-row{padding:7px 10px}.pp-ind-value{flex-shrink:0;font-size:.82rem;font-variant-numeric:tabular-nums;color:var(--text-primary);white-space:nowrap}.pp-ind-value.warn{color:#ea580c}.pp-ind-value.bad{color:#dc2626}.pp-ind-value.good{color:#16a34a}.pp-ind-note{margin:0;font-size:.68rem;color:var(--text-muted)}.pp-ind-note a{color:var(--accent-cyan)}@media(max-width:900px){.cg-detail.pp{width:auto}}.cg-legend.with-panel,.cg-hidden-note.with-panel{right:calc(var(--cg-detail-w, 360px) + 12px)}@media(max-width:900px){.cg-legend.with-panel,.cg-hidden-note.with-panel{right:10px}}.cg-canvas{background:transparent}.light .cg-canvas:not(.fl-canvas){background:var(--bg-primary)}.light .cg-empty{color:var(--text-secondary)}.light .cg-empty b{color:var(--text-primary)}.cg-canvas .float-tooltip-kap{background:#0a0e14f2;color:var(--text-primary);border:1px solid #2f343a;border-radius:8px;padding:7px 10px;font:12px/1.5 Golos Text,system-ui,sans-serif;box-shadow:0 8px 24px #00000059;max-width:min(360px,60%)}.cg-canvas .float-tooltip-kap b{color:#fff}.cg-detail-resizer{position:absolute;top:0;bottom:0;right:calc(var(--cg-detail-w, 360px) - 4px);width:8px;z-index:4;cursor:col-resize;touch-action:none}.cg-detail-resizer:after{content:"";position:absolute;top:0;bottom:0;left:3px;width:2px;background:transparent;transition:background .15s}.cg-detail-resizer:hover:after,.cg-detail-resizer:focus-visible:after,body.ai-panel-resizing .cg-detail-resizer:after{background:var(--accent-cyan)}.cg-detail-resizer:focus-visible{outline:none}@media(max-width:900px){.cg-detail-resizer{display:none}}.cg-saved .cg-shared-on{color:var(--accent-cyan)!important;display:inline-flex;align-items:center;gap:2px}.cg-saved .cg-shared-on span{font-size:.62rem}.cg-right-pill{flex-shrink:0;font-size:.6rem;padding:1px 6px;border-radius:999px;color:var(--text-muted);border:1px solid var(--border-color)}.cg-right-pill.edit{color:#16a34a;border-color:#16a34a66}.cg-right-pill.group{color:#8b5cf6;border-color:#8b5cf666;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cg-share-group{font-size:.78rem;padding:5px 8px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary)}.cg-share-box .cg-sub{display:flex;align-items:center;gap:4px}.cg-share-note{font-size:.68rem;line-height:1.4}.cg-share-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000073;padding:16px}.cg-share-box{width:min(440px,100%);max-height:min(640px,90vh);overflow:auto}.cg-share-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.cg-share-head h4{display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cg-share-x{background:none;border:0;color:var(--text-muted);cursor:pointer;padding:2px}.cg-share-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.cg-share-list li{display:flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid var(--border-color);border-radius:8px}.cg-share-user{flex:1;min-width:0;display:flex;flex-direction:column;font-size:.78rem}.cg-share-user small{color:var(--text-muted);font-size:.66rem;overflow:hidden;text-overflow:ellipsis}.cg-share-list select{font-size:.74rem;padding:3px 6px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary)}.cg-share-list button{background:none;border:0;color:var(--text-muted);cursor:pointer}.cg-share-cands{max-height:180px;overflow:auto}.cg-share-cands li{font-size:.78rem}.fl-canvas{--fl-bg: #18191a;--fl-card: #232629;--fl-card-border: #3a3e44;--fl-text: #e5e7eb;--fl-muted: #9ca3af;--fl-chrome: #232629;background:var(--fl-bg)}.fl-canvas.fl-theme-light{--fl-bg: #ffffff;--fl-card: #ffffff;--fl-card-border: #d1d5db;--fl-text: #1f2937;--fl-muted: #6b7280;--fl-chrome: #f3f4f6}.fl-canvas.fl-theme-paper{--fl-bg: #f6f1e7;--fl-card: #fffdf8;--fl-card-border: #d8ccb4;--fl-text: #3b3226;--fl-muted: #7c6f5a;--fl-chrome: #efe7d6}.fl-canvas.fl-theme-blueprint{--fl-bg: #0f2f57;--fl-card: #123a6b;--fl-card-border: #3b6aa8;--fl-text: #e6f0ff;--fl-muted: #9cc3ff;--fl-chrome: #123a6b}.fl-canvas.fl-theme-contrast{--fl-bg: #000000;--fl-card: #000000;--fl-card-border: #ffffff;--fl-text: #ffffff;--fl-muted: #d1d5db;--fl-chrome: #111111}.fl-canvas.fl-nopoints .fl-handle{display:none}.fl-guide{position:absolute;left:0;top:0;pointer-events:none;z-index:1000}.fl-guide.v{width:0;height:100000px;border-left:1px dashed #f43f5e}.fl-guide.h{height:0;width:100000px;border-top:1px dashed #f43f5e}.fl-canvas .react-flow{background:transparent;--xy-edge-stroke-default: #94a3b8;--xy-selection-background-color-default: rgba(37,99,235,.08);--xy-selection-border-default: 1px dashed #60a5fa}.fl-canvas .react-flow__node{font-family:Golos Text,system-ui,sans-serif}.fl-canvas .react-flow__node.selectable:focus-visible{outline:none}.fl-entity{position:relative;display:flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;min-width:120px;max-width:280px;background:var(--fl-card);border:1px solid var(--fl-card-border);border-left:3px solid var(--c);border-radius:10px;color:var(--fl-text);box-shadow:0 1px 2px #0000004d;transition:opacity .15s,box-shadow .15s;cursor:pointer}.fl-entity.sel{border-color:var(--c);box-shadow:0 0 0 2px color-mix(in srgb,var(--c) 45%,transparent)}.fl-entity.glow{box-shadow:0 0 14px color-mix(in srgb,var(--c) 55%,transparent)}.fl-entity.dim{opacity:.2}.fl-entity-icon{position:relative;flex-shrink:0;display:inline-flex}.fl-entity-icon .pp-type-icon{border-radius:50%}.fl-badge{position:absolute;right:-4px;bottom:-4px;width:14px;height:14px;border-radius:50%;background:var(--fl-bg);color:var(--fl-text);border:1px solid var(--fl-card-border);font-size:11px;line-height:12px;text-align:center}.fl-entity-text{display:flex;flex-direction:column;min-width:0}.fl-flags{position:absolute;top:-8px;right:-8px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#dc2626;color:#fff;border:2px solid var(--fl-bg, #18191a);font-size:10.5px;font-weight:800;line-height:14px;text-align:center;box-shadow:0 1px 3px #00000080;pointer-events:none;z-index:3}.fl-dot .fl-flags{top:-6px;right:-6px;min-width:16px;height:16px;font-size:9.5px;line-height:12px}.fl-flags-legend{position:static;display:inline-block;margin-right:4px;border-width:1px;vertical-align:middle}.fl-flag-count{background:#dc262640;color:#f87171}.fl-risk-list li{cursor:pointer}.fl-risk-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 1px #00000059}.fl-risk-list .fl-an-val{display:inline-flex;align-items:center;gap:2px}.fl-entity-text b{font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fl-entity-text small{font-size:10px;color:var(--fl-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fl-tag{position:absolute;top:-9px;left:34px;font-size:8.5px;font-weight:700;letter-spacing:.04em;padding:0 5px;border-radius:4px;background:var(--c);color:#fff}.fl-canvas .fl-handle{width:10px;height:10px;background:#2563eb;border:1.5px solid #e5e7eb;opacity:0;transition:opacity .12s;z-index:20}.fl-canvas .fl-handle.react-flow__handle-top{top:-11px}.fl-canvas .fl-handle.react-flow__handle-bottom{bottom:-11px}.fl-canvas .fl-handle.react-flow__handle-left{left:-11px}.fl-canvas .fl-handle.react-flow__handle-right{right:-11px}.fl-canvas .react-flow__attribution{background:transparent}.fl-canvas .react-flow__attribution a{color:#6b7280}.fl-canvas .react-flow__node:hover .fl-handle,.fl-canvas .react-flow__node.selected .fl-handle,.fl-canvas .react-flow__handle.connectingto,.fl-canvas .react-flow__handle.connectingfrom{opacity:1}.fl-canvas .fl-handle-center{top:50%!important;left:50%!important;transform:translate(-50%,-50%);width:1px;height:1px;min-width:0;min-height:0;opacity:0;border:0;pointer-events:none}.fl-shape{position:relative;width:100%;height:100%}.fl-shape.dim{opacity:.25}.fl-shape-body{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:6px 10px;border:1.5px solid;border-radius:2px;box-sizing:border-box;overflow:hidden;text-align:center}.fl-rounded .fl-shape-body{border-radius:14px}.fl-person .fl-shape-body,.fl-company .fl-shape-body,.fl-org .fl-shape-body{justify-content:flex-start;border-radius:10px;text-align:left}.fl-note .fl-shape-body{align-items:flex-start;justify-content:flex-start;text-align:left;border-radius:0 14px 0 0;box-shadow:0 2px 6px #00000059}.fl-diamond .fl-shape-body,.fl-ellipse .fl-shape-body{border:0;background:transparent;padding:10px 18%}.fl-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.fl-shape.sel:not(.fl-diamond):not(.fl-ellipse) .fl-shape-body{box-shadow:0 0 0 2px #60a5fa99}.fl-shape.sel.fl-diamond .fl-svg,.fl-shape.sel.fl-ellipse .fl-svg{filter:drop-shadow(0 0 3px rgba(96,165,250,.9))}.fl-shape-icon{flex-shrink:0;width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.fl-label{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.3;max-height:100%;overflow:hidden}.fl-placeholder{opacity:.5}.fl-edit{width:100%;height:100%;resize:none;background:#00000040;border:1px dashed #60a5fa;border-radius:4px;outline:none;font-family:inherit;text-align:inherit;padding:2px 4px}.fl-canvas .fl-resize-line{border-color:#60a5fa}.fl-canvas .fl-resize-handle{width:8px;height:8px;background:#fff;border:1px solid #2563eb;border-radius:1px}.fl-lane{width:100%;height:100%;border-radius:12px;pointer-events:none}.fl-lane span{position:absolute;top:8px;left:12px;font-size:11px;font-weight:600;letter-spacing:.03em;color:var(--fl-muted);text-transform:uppercase}.fl-edge-label{position:absolute;pointer-events:all;font-size:10px;line-height:1.3;color:var(--fl-text, #e5e7eb);background:var(--fl-card, #232629);border:1px solid;border-radius:6px;padding:1px 6px;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}.fl-edge-label.warn{color:#fbbf24}.fl-edge-label.sel{box-shadow:0 0 0 2px #60a5fa80}.fl-canvas .fl-controls{box-shadow:none}.fl-canvas .fl-controls button{background:var(--fl-chrome);border-color:var(--fl-card-border);color:var(--fl-text);fill:var(--fl-text)}.fl-canvas .fl-controls button:hover{background:#2f3337}.fl-canvas .fl-minimap{background:var(--fl-chrome);border:1px solid var(--fl-card-border);border-radius:8px}.fl-empty{pointer-events:none;z-index:1}.cg-status.fl-status{left:56px;z-index:5}.cg-legend.fl-legend{top:10px;bottom:auto;z-index:5}.cg-legend.fl-legend.with-panel{right:calc(var(--cg-detail-w, 360px) + 12px)}.fl-palette{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.fl-palette-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 2px;font-size:.66rem;color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;cursor:grab}.fl-palette-item:hover{border-color:var(--accent-cyan);color:var(--text-primary)}.fl-palette-item:active{cursor:grabbing}.fl-mini{display:inline-block;width:26px;height:16px;border:1.5px solid #94a3b8;box-sizing:border-box}.fl-mini-rounded{border-radius:6px}.fl-mini-ellipse{border-radius:50%}.fl-mini-diamond{width:14px;height:14px;transform:rotate(45deg);margin:1px 6px}.fl-mini-note{border-radius:0 6px 0 0}.fl-mini-text{border:0;height:16px;position:relative}.fl-mini-text:after{content:"T";position:absolute;inset:0;text-align:center;font:700 13px/16px serif;color:var(--text-secondary)}.fl-mini-person,.fl-mini-company,.fl-mini-org{border-style:dashed;border-radius:8px}.fl-format-body{display:flex;flex-direction:column;gap:14px;padding:12px}.fl-format-body section{display:flex;flex-direction:column;gap:6px}.fl-format-body h4{margin:0;font-size:.82rem}.fl-format-text{width:100%;box-sizing:border-box;font:inherit;font-size:.8rem;padding:6px 8px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);resize:vertical}.fl-swatches{display:flex;flex-wrap:wrap;gap:5px}.fl-swatch{width:20px;height:20px;border-radius:5px;border:1px solid var(--border-color);cursor:pointer;padding:0}.fl-swatch.on{outline:2px solid #60a5fa;outline-offset:1px}.fl-swatch.none{background:repeating-linear-gradient(45deg,transparent 0 4px,rgba(239,68,68,.6) 4px 5px)}.fl-seg{flex-wrap:wrap}.fl-row{display:flex;align-items:center;gap:6px}.fl-icon-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:6px;padding:4px 6px;cursor:pointer;display:inline-flex}.fl-icon-btn.on{color:#fff;background:var(--accent-cyan);border-color:var(--accent-cyan)}.fl-kind-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.fl-kind-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:5px 2px;font-size:.64rem;color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer}.fl-kind-btn.on{border-color:var(--accent-cyan);color:var(--text-primary)}.fl-format-actions{justify-content:flex-end;gap:6px}.fl-format-actions button{display:inline-flex;align-items:center;gap:4px;font-size:.74rem;padding:4px 10px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer}.fl-format-actions button.danger{color:#ef4444;border-color:#ef444466}.cg-wrap.fl-wrap{flex-direction:column;background:var(--bg-primary);border-color:var(--border-color)}.fl-body{flex:1;min-height:0;display:flex}.fl-main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.fl-main>.cg-canvas{flex:1}.fl-topbar{display:flex;align-items:center;gap:2px;height:40px;padding:0 6px;flex-shrink:0;background:var(--bg-secondary);border-bottom:1px solid var(--bg-tertiary);color:var(--text-primary)}.fl-topbar>button,.fl-zoom-btn{display:inline-flex;align-items:center;gap:4px;height:30px;padding:0 8px;border:0;border-radius:6px;background:none;color:var(--text-primary);cursor:pointer;font-size:.8rem}.fl-topbar>button:hover:not(:disabled),.fl-zoom-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.fl-topbar>button:disabled{opacity:.35;cursor:default}.fl-topbar>button.on{color:var(--accent-cyan)}.fl-sep{width:1px;height:20px;background:var(--border-color);margin:0 6px}.fl-spacer{flex:1}.fl-zoom{position:relative}.fl-zoom-btn{min-width:70px;justify-content:center;font-variant-numeric:tabular-nums}.fl-topbar .fl-save{background:color-mix(in srgb,var(--accent-cyan) 20%,transparent);color:var(--text-primary);padding:0 12px;margin-left:4px}.fl-topbar .fl-save:hover:not(:disabled){background:color-mix(in srgb,var(--accent-cyan) 32%,transparent)}.fl-topbar .fl-save.dirty{box-shadow:inset 0 0 0 1px #f59e0b}.fl-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:50;min-width:150px;padding:4px;display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 8px 24px #00000073}.fl-menu.up{top:auto;bottom:calc(100% + 6px)}.fl-menu.wide{min-width:280px;max-height:60vh;overflow-y:auto}.fl-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;border:0;border-radius:5px;background:none;color:var(--text-primary);font-size:.8rem;text-align:left;cursor:pointer}.fl-menu button:hover{background:var(--bg-tertiary)}.fl-menu button.on{background:color-mix(in srgb,var(--accent-cyan) 20%,transparent)}.fl-menu button.danger{color:#f87171}.fl-menu button small{margin-left:auto;color:var(--text-secondary);font-size:.68rem;white-space:nowrap}.fl-filter-btn.on{color:var(--accent-cyan)}.fl-filter-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-cyan)}.fl-menu.fl-filter-menu{width:270px;padding:10px 12px;gap:6px}.fl-menu.fl-filter-menu .cg-check{margin-top:2px;font-size:.78rem}.fl-menu.fl-filter-menu .cg-link-btn{display:inline;width:auto;padding:0;color:var(--accent-cyan)}.fl-menu-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fl-menu-sep{height:1px;background:var(--border-color);margin:4px 2px}.fl-menu-title{display:flex;align-items:center;gap:4px;padding:8px 10px 4px;font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary)}.fl-menu-empty{padding:6px 10px;font-size:.74rem;color:var(--text-muted)}.cg-panel.fl-panel{width:272px;padding:8px 0;gap:0;background:var(--bg-secondary);border-right-color:var(--bg-tertiary)}.fl-search.cg-search{margin:0 8px 8px;background:var(--bg-tertiary);border-color:var(--border-color);border-radius:6px;flex-direction:row-reverse}.fl-search input{font-size:.8rem}.fl-results{padding:0 8px 8px;display:flex;flex-direction:column;gap:4px;border-bottom:1px solid var(--bg-tertiary);margin-bottom:4px}.fl-sec{border-bottom:1px solid var(--bg-secondary)}.fl-sec-head{display:flex;align-items:center;gap:6px;width:100%;padding:8px 12px;border:0;background:none;color:var(--text-primary);font-size:.82rem;font-weight:500;text-align:left;cursor:pointer}.fl-sec-head:hover{background:var(--bg-secondary)}.fl-sec-caret{color:var(--text-secondary);transition:transform .15s;flex-shrink:0}.fl-sec.open .fl-sec-caret{transform:rotate(90deg)}.fl-sec-extra{margin-left:auto}.fl-sec-body{padding:2px 12px 12px;display:flex;flex-direction:column;gap:6px}.fl-pagebar{display:flex;align-items:center;gap:2px;height:34px;padding:0 6px;flex-shrink:0;background:var(--bg-secondary);border-top:1px solid var(--bg-tertiary)}.fl-pagebar-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:26px;border:0;border-radius:5px;background:none;color:var(--text-primary);cursor:pointer}.fl-pagebar-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.fl-page-all{position:relative}.fl-pages{flex:1;min-width:0;display:flex;align-items:stretch;gap:1px;overflow-x:auto;scrollbar-width:thin;height:100%}.fl-page{display:inline-flex;align-items:center;gap:5px;max-width:220px;padding:0 12px;border:0;background:none;color:var(--text-primary);font-size:.8rem;white-space:nowrap;cursor:pointer;flex-shrink:0}button.fl-page{overflow:hidden;text-overflow:ellipsis}button.fl-page:hover{background:var(--bg-tertiary);color:var(--text-primary)}.fl-page.on{background:color-mix(in srgb,var(--accent-cyan) 20%,transparent);color:var(--accent-cyan);padding-right:2px}.fl-page-name{overflow:hidden;text-overflow:ellipsis;display:inline-flex;align-items:center;gap:5px}.fl-dirty{font-style:normal;color:#f59e0b;font-weight:700}.fl-page-menu{position:relative;display:flex}.fl-page-caret{display:inline-flex;align-items:center;border:0;background:none;color:inherit;padding:4px;border-radius:4px;cursor:pointer}.fl-page-caret:hover{background:var(--hover-overlay, rgba(127,127,127,.12))}.fl-page-menu .fl-menu.up{left:auto;right:0}.fl-page-rename{width:160px;font:inherit;font-size:.8rem;padding:2px 6px;border-radius:4px;border:1px solid var(--accent-cyan);background:var(--bg-primary);color:var(--text-primary);outline:none}.fl-page-tag{font-size:.62rem;padding:0 5px;border-radius:999px;border:1px solid var(--text-muted);color:var(--text-secondary)}.fl-page-tag.edit{border-color:#16a34a99;color:#4ade80}.fl-page-badge{color:#a78bfa;flex-shrink:0}.fl-bend{position:absolute;width:12px;height:12px;border-radius:50%;background:#e5e7eb;border:2px solid;pointer-events:all;box-shadow:0 0 0 3px #60a5fa59}.fl-bend.ew{cursor:ew-resize}.fl-bend.ns{cursor:ns-resize}.cg-error.fl-draft{inset:50px auto auto 50%;transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:calc(100% - 40px)}.fl-draft-btn{border:1px solid var(--accent-cyan)!important;background:var(--accent-cyan)!important;color:#fff!important;border-radius:6px;padding:2px 10px!important;cursor:pointer;font-size:.74rem}.fl-draft-btn.ghost{background:transparent!important;color:inherit!important;border-color:var(--text-muted)!important}.fl-view-btn{min-width:0!important}.fl-view-btn.on{color:var(--accent-cyan);background:var(--bg-tertiary)}.fl-view-menu{min-width:280px}.fl-check{display:inline-flex;width:14px;justify-content:center;color:var(--text-primary);flex-shrink:0}.fl-float{position:absolute;z-index:7;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 10px 28px #00000080;color:var(--text-primary);font-size:.8rem}.fl-float-head{display:flex;align-items:center;gap:6px;padding:7px 8px 7px 10px;border-bottom:1px solid var(--border-color);font-weight:600}.fl-float-x{margin-left:auto;display:inline-flex;border:0;background:none;color:var(--text-secondary);cursor:pointer;padding:2px;border-radius:4px}.fl-float-x:hover{background:var(--bg-tertiary);color:var(--text-primary)}.fl-float-body{padding:8px 10px 10px;display:flex;flex-direction:column;gap:8px;max-height:60vh;overflow-y:auto}.fl-tags{top:12px;left:12px;width:280px}.fl-tag-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.fl-tag-list li{display:flex;align-items:center;gap:6px;padding:3px 4px;border-radius:5px}.fl-tag-list li:hover{background:var(--bg-tertiary)}.fl-tag-list li.off .fl-tag-name{opacity:.45;text-decoration:line-through}.fl-tag-list button{display:inline-flex;border:0;background:none;color:var(--text-secondary);cursor:pointer;padding:3px;border-radius:4px}.fl-tag-list button:hover{color:var(--text-primary);background:var(--border-color)}.fl-tag-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.fl-tag-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fl-tag-list small{color:var(--text-secondary);font-variant-numeric:tabular-nums}.fl-tag-sel{border-top:1px solid var(--border-color);padding-top:8px;display:flex;flex-direction:column;gap:6px}.fl-tag-chips{display:flex;flex-wrap:wrap;gap:4px}.fl-tag-chip{display:inline-flex;align-items:center;gap:3px;font-size:.7rem;padding:1px 4px 1px 8px;border-radius:999px;border:1px solid var(--c);color:var(--c)}.fl-tag-chip button{display:inline-flex;border:0;background:none;color:inherit;cursor:pointer;padding:1px}.fl-tag-add{display:flex;gap:4px}.fl-tag-add input{flex:1;min-width:0;font:inherit;padding:4px 8px;border-radius:5px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);outline:none}.fl-tag-add input:focus{border-color:var(--accent-cyan)}.fl-tag-add button{display:inline-flex;align-items:center;border:0;border-radius:5px;background:var(--accent-cyan);color:#fff;padding:0 8px;cursor:pointer}.fl-tag-add button:disabled{opacity:.4;cursor:default}.fl-find{top:12px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:4px;padding:4px 6px 4px 10px}.fl-find input{width:220px;font:inherit;border:0;background:none;color:var(--text-primary);outline:none}.fl-find small{color:var(--text-secondary);min-width:34px;text-align:right;font-variant-numeric:tabular-nums}.fl-find button{display:inline-flex;border:0;background:none;color:var(--text-secondary);cursor:pointer;padding:3px;border-radius:4px}.fl-find button:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.fl-find button:disabled{opacity:.35}.fl-card-tags{position:absolute;left:6px;top:calc(100% + 3px);display:flex;gap:3px;max-width:calc(100% + 40px);pointer-events:none}.fl-card-tags span{font-size:9px;line-height:14px;padding:0 5px;border-radius:999px;white-space:nowrap;max-width:130px;overflow:hidden;text-overflow:ellipsis;background:color-mix(in srgb,var(--c, var(--text-muted)) 22%,var(--bg-primary));color:var(--c, var(--text-primary));border:1px solid color-mix(in srgb,var(--c, var(--text-muted)) 55%,transparent)}.fl-an-select,.fl-an-filter{width:100%;font:inherit;font-size:.78rem;padding:5px 8px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);outline:none}.fl-an-filter:focus,.fl-an-select:focus{border-color:var(--accent-cyan)}.fl-an-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.fl-an-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:340px;overflow-y:auto;scrollbar-width:thin}.fl-an-list li{display:flex;align-items:center;gap:6px;padding:5px 4px;border-radius:5px}.fl-an-list li:hover{background:var(--bg-secondary)}.fl-an-list li.in{opacity:.55}.fl-an-text{flex:1;min-width:0;display:flex;flex-direction:column}.fl-an-text b{font-size:.74rem;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fl-an-text small{font-size:.66rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fl-an-val{font-size:.68rem;font-weight:700;color:var(--text-secondary);white-space:nowrap;font-variant-numeric:tabular-nums}.fl-an-val.bad{color:#f87171}.fl-an-val.warn{color:#fb923c}.fl-an-list button{display:inline-flex;border:1px solid var(--border-color);background:none;color:var(--text-primary);border-radius:5px;padding:3px;cursor:pointer;flex-shrink:0}.fl-an-list button:hover:not(:disabled){border-color:var(--accent-cyan);color:var(--text-primary)}.fl-an-list button:disabled{cursor:default;color:#4ade80}.fl-dg-tabs{display:flex;align-items:stretch;border-bottom:1px solid var(--border-color);flex-shrink:0}.fl-dg-tabs>button[role=tab]{flex:1;padding:10px 0;border:0;background:var(--bg-primary);color:var(--text-secondary);font:inherit;font-size:.84rem;font-weight:600;cursor:pointer}.fl-dg-tabs>button[role=tab].on{background:transparent;color:var(--text-primary)}.fl-dg-x{border:0;background:none;color:var(--text-secondary);padding:0 10px;cursor:pointer}.fl-dg-x:hover{color:var(--text-primary)}.pp-body.fl-dg{padding:4px 12px 12px;gap:0}.fl-dg-group{border-bottom:1px solid var(--border-color);padding:4px 0 10px}.fl-dg-head{display:flex;align-items:center;gap:6px;width:100%;padding:8px 0;border:0;background:none;color:var(--text-primary);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer;text-align:left}.fl-dg-caret{display:inline-block;font-size:.7rem;transition:transform .15s}.fl-dg-group.open .fl-dg-caret{transform:rotate(90deg)}.fl-dg-body{display:flex;flex-direction:column;gap:8px}.fl-dg-row{display:flex;align-items:center;gap:6px}.fl-dg-check{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-primary);cursor:pointer;flex:1}.fl-dg-check input{accent-color:var(--accent-cyan);width:15px;height:15px}.fl-dg-num{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--border-color);border-radius:5px;padding:0 2px 0 6px;height:26px}.fl-dg-num input{width:34px;border:0;background:none;color:var(--text-primary);font:inherit;font-size:.8rem;text-align:right;outline:none;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.fl-dg-num input::-webkit-inner-spin-button,.fl-dg-num input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fl-dg-num small{font-size:.72rem;color:var(--text-secondary)}.fl-dg-spin{display:inline-flex;flex-direction:column}.fl-dg-spin button{display:inline-flex;border:0;background:none;color:var(--text-secondary);padding:0;height:11px;cursor:pointer}.fl-dg-spin button:hover:not(:disabled){color:var(--text-primary)}.fl-dg-color{width:34px;height:26px;padding:2px;border:1px solid var(--border-color);border-radius:5px;background:none;cursor:pointer}.fl-dg-color:disabled{opacity:.4;cursor:default}.fl-dg-btn{min-width:110px;height:26px;border:1px solid var(--border-color);border-radius:5px;background:none;color:var(--text-primary);font:inherit;font-size:.78rem;cursor:pointer}.fl-dg-btn:hover{border-color:var(--accent-cyan)}.fl-dg-bgs{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.fl-dg-themes{display:grid;grid-template-columns:1fr 1fr;gap:8px}.fl-dg-theme{position:relative;display:flex;align-items:center;justify-content:center;gap:0;height:74px;padding:0 6px 14px;border:1px solid var(--border-color);border-radius:8px;cursor:pointer}.fl-dg-theme.on{outline:2px solid var(--accent-cyan);outline-offset:1px}.fl-dg-theme small{position:absolute;bottom:4px;left:0;right:0;text-align:center;font-size:.68rem}.fl-dg-mini{font-size:.66rem;padding:3px 6px;border:1px solid;border-radius:5px}.fl-format-rail{position:absolute;top:0;right:0;bottom:0;width:30px;z-index:6;display:flex;flex-direction:column;align-items:center;gap:10px;padding:10px 0;border:0;border-left:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer}.fl-format-rail:hover{color:var(--text-primary);background:var(--bg-tertiary, var(--bg-secondary))}.fl-format-rail span{writing-mode:vertical-rl;font-size:.74rem;font-weight:600;letter-spacing:.04em}.cg-legend.fl-legend.with-rail{right:42px}.fl-format-body>.fl-dg-group:last-child{border-bottom:0}.fl-format-body:has(>.fl-dg-group){gap:0;padding:4px 12px 12px}.fl-format-body>section.fl-dg-group{display:block}.fl-dg-caret{flex-shrink:0;color:var(--text-secondary)}.fl-canvas.fl-railed .fl-minimap{margin-right:42px}.fl-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px 4px}.fl-checkrow{display:flex;align-items:center;gap:6px;min-width:0;padding:4px;border-radius:5px;cursor:pointer;font-size:.75rem;color:var(--text-primary);-webkit-user-select:none;-moz-user-select:none;user-select:none}.fl-checkrow:hover{background:var(--bg-secondary)}.fl-checkrow input{margin:0;width:14px;height:14px;accent-color:var(--accent-cyan);flex-shrink:0;cursor:pointer}.fl-checkrow:has(input:not(:checked)){color:var(--text-muted)}.fl-checkrow:has(input:not(:checked)) .fl-checkrow-mark,.fl-checkrow:has(input:not(:checked)) .fl-checkrow-line{opacity:.35}.fl-checkrow-mark{width:8px;height:8px;border-radius:50%;flex-shrink:0}.fl-checkrow-line{width:14px;height:0;border-top:2px solid;flex-shrink:0}.fl-checkrow-line.dashed{border-top-style:dashed}.fl-checkrow-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fl-checkrow small{font-size:.64rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.cg-results li.fl-result{cursor:grab;padding:5px 6px}.cg-results li.fl-result:active{cursor:grabbing}.cg-results li.fl-result:hover{background:var(--bg-tertiary)}.cg-results li.fl-result.in{opacity:.6;cursor:pointer}.fl-result-type{font-size:.64rem;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.fl-result-add{color:var(--text-secondary);flex-shrink:0}.fl-result:hover .fl-result-add{color:var(--accent-cyan)}.fl-result-in{color:#4ade80;flex-shrink:0}.fl-legend-toggle{display:inline-flex;align-items:center;gap:4px;border:0;background:none;color:var(--text-secondary);cursor:pointer;padding:0 2px;font:inherit;font-size:.72rem;order:99}.fl-legend-toggle:hover{color:var(--text-primary)}.cg-legend.fl-legend.closed{padding:3px 8px}.cg-legend.fl-legend.closed .fl-legend-toggle{order:0}.fl-pin{position:absolute;top:-10px;right:-6px;font-size:13px;line-height:1;pointer-events:none;filter:drop-shadow(0 1px 1px rgba(0,0,0,.6))}.ps{display:flex;flex-direction:column;gap:10px;padding:2px 0}.ps-verdict{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:8px;font-size:.78rem;line-height:1.45;border:1px solid var(--border-color);color:var(--text-secondary)}.ps-verdict b{font-size:.86rem;color:var(--text-primary)}.ps-verdict.warn{border-color:#ea580c73;background:#ea580c14}.ps-verdict.warn b{color:#fb923c}.ps-verdict.ok{border-color:#22c55e66;background:#22c55e12}.ps-verdict.ok b{color:#4ade80}.ps-card{border:1px solid var(--border-color);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;background:var(--bg-secondary)}.ps-card.muted{opacity:.85}.ps-card header{display:flex;align-items:center;gap:10px}.ps-card header>div{display:flex;flex-direction:column;min-width:0}.ps-card header b{font-size:.82rem}.ps-card header small{font-size:.72rem;color:var(--text-secondary)}.ps-badge{width:26px;height:26px;border-radius:50%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:#7c3aed;color:#fff;font-weight:700;font-size:.8rem}.ps-badge.muted{background:var(--bg-tertiary);color:var(--text-secondary)}.ps-why{display:flex;flex-wrap:wrap;gap:4px}.ps-why span{display:inline-flex;align-items:center;gap:3px;font-size:.68rem;padding:1px 7px;border-radius:999px;cursor:help}.ps-why .strong{border:1px solid rgba(34,197,94,.5);color:#4ade80}.ps-why .weak{border:1px solid rgba(234,179,8,.5);color:#facc15}.ps-flags{list-style:none;margin:0;padding:6px 8px;border-radius:6px;background:#ef444414;display:flex;flex-direction:column;gap:3px}.ps-flags li{display:flex;align-items:flex-start;gap:5px;font-size:.72rem;color:#fca5a5;line-height:1.35}.ps-flags svg{flex-shrink:0;margin-top:2px}.pp-flags{margin:10px 12px 4px;padding:8px 10px;border-radius:8px;border:1px solid rgba(220,38,38,.35);background:#dc262612}.pp-flags h4{display:flex;align-items:center;gap:5px;margin:0 0 5px;font-size:.76rem;font-weight:700;color:#dc2626}.pp-flags h4 span{margin-left:auto;min-width:18px;text-align:center;border-radius:999px;background:#dc2626;color:#fff;font-size:.66rem;padding:0 5px}.pp-flags ul{list-style:disc;margin:0;padding-left:16px;display:flex;flex-direction:column;gap:2px}.pp-flags li{font-size:.74rem;line-height:1.35;color:var(--text-primary)}.ps-actions{display:flex;flex-wrap:wrap;gap:5px}.ps-actions button{display:inline-flex;align-items:center;gap:4px;font:inherit;font-size:.72rem;padding:4px 9px;border-radius:6px;cursor:pointer;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary)}.ps-actions button:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.fl-pagebar-btn.wide{width:auto;gap:6px;padding:0 10px;font-size:.78rem;white-space:nowrap}.fl-pagebar-btn.wide small{font-size:.66rem;color:var(--text-secondary);background:var(--bg-tertiary);border-radius:999px;padding:0 6px}.fl-pagebar-btn.on{background:var(--bg-tertiary);color:var(--text-primary)}.fl-page{padding:0 2px 0 0}.fl-page-open{display:inline-flex;align-items:center;gap:5px;height:100%;max-width:200px;padding:0 6px 0 12px;border:0;background:none;color:inherit;font:inherit;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}div.fl-page:not(.on):hover{background:var(--bg-tertiary);color:var(--text-primary)}.fl-page-x{display:inline-flex;align-items:center;border:0;background:none;color:var(--text-muted);padding:3px;border-radius:4px;cursor:pointer;opacity:0}.fl-page:hover .fl-page-x,.fl-page.on .fl-page-x{opacity:1}.fl-page-x:hover{background:var(--hover-overlay, rgba(127,127,127,.12));color:var(--text-primary)}.fl-menu-fixed{position:fixed;top:auto;z-index:1000;min-width:230px}.fl-menu-row{display:flex;align-items:center;border-radius:5px}.fl-menu-row:hover{background:var(--bg-tertiary)}.fl-menu-row.on{background:color-mix(in srgb,var(--accent-cyan) 20%,transparent)}.fl-menu-row>button[role=menuitem]{flex:1;min-width:0}.fl-menu-row>button[role=menuitem]:hover{background:none}.fl-menu .fl-menu-del{width:auto;flex-shrink:0;padding:6px 8px;color:var(--text-secondary);opacity:0}.fl-menu-row:hover .fl-menu-del{opacity:1}.fl-menu .fl-menu-del:hover{color:#f87171;background:#ef44441f}.fl-filter-row{display:flex;align-items:center;gap:6px}.fl-filter-row .fl-an-select{flex:1;min-width:0}.fl-filter-on{font-size:.64rem;font-weight:600;padding:1px 7px;border-radius:999px;background:#2563eb40;color:var(--accent-cyan)}.fl-dot{position:relative;border-radius:50%;background:var(--c);box-shadow:0 0 0 2px color-mix(in srgb,var(--c) 35%,transparent);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .15s,box-shadow .15s}.fl-dot .pp-type-icon{background:transparent!important}.fl-dot.sel{box-shadow:0 0 0 3px #fff,0 0 0 6px color-mix(in srgb,var(--c) 60%,transparent)}.fl-dot.glow{box-shadow:0 0 16px color-mix(in srgb,var(--c) 70%,transparent)}.fl-dot.dim{opacity:.18}.fl-dot-label{position:absolute;top:calc(100% + 3px);left:50%;transform:translate(-50%);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;color:var(--fl-text, #e5e7eb);pointer-events:none;text-shadow:0 1px 2px var(--fl-bg, #18191a),0 0 3px var(--fl-bg, #18191a)}.fl-dot .fl-badge{right:-3px;bottom:-3px}.fl-canvas .fl-dot .fl-handle.react-flow__handle-top{top:-7px}.fl-canvas .fl-dot .fl-handle.react-flow__handle-bottom{bottom:-7px}.fl-canvas .fl-dot .fl-handle.react-flow__handle-left{left:-7px}.fl-canvas .fl-dot .fl-handle.react-flow__handle-right{right:-7px}.fl-dot{background:none!important;box-shadow:none!important;border-radius:0}.fl-glyph{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.fl-glyph-body{stroke:#020617e6;stroke-width:.07;paint-order:stroke;transition:filter .15s}.fl-glyph-ring{fill:none;stroke:var(--c);stroke-width:.08;stroke-dasharray:.22 .14;opacity:.9}.fl-dot.group .fl-glyph-body{fill-opacity:.35;stroke:var(--c);stroke-width:.06}.fl-dot.sel .fl-glyph-body{filter:drop-shadow(0 0 3px #fff) drop-shadow(0 0 6px var(--c))}.fl-dot.glow .fl-glyph-body{filter:drop-shadow(0 0 8px var(--c))}.fl-glyph-count{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.8)}.fl-dot .fl-badge{opacity:0;transition:opacity .12s}.react-flow__node:hover .fl-dot .fl-badge,.fl-dot.sel .fl-badge{opacity:1}.fl-checkrow:has(input:not(:checked)) svg{opacity:.35}.fl-glyph-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--c);filter:drop-shadow(0 0 1.5px rgba(2,6,23,.95)) drop-shadow(0 0 1px rgba(2,6,23,.95))}.fl-glyph-icon.group{opacity:.9}.fl-dot.sel .fl-glyph-icon{filter:drop-shadow(0 0 3px #fff) drop-shadow(0 0 6px var(--c))}.fl-dot.glow .fl-glyph-icon{filter:drop-shadow(0 0 8px var(--c))}.fl-glyph-count.corner{inset:auto -6px -6px auto;width:auto;min-width:18px;height:16px;padding:0 4px;border-radius:999px;background:var(--c);color:#0b1220;text-shadow:none;font-size:9.5px}.fl-tag.fl-dot-tag{top:auto;bottom:calc(100% + 2px);left:50%;transform:translate(-50%);white-space:nowrap;background:#1d4ed8}.fl-flow-dot{filter:drop-shadow(0 0 2px currentColor)}.fl-risk-legend{display:inline-flex;align-items:center;gap:3px}.fl-risk-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.fl-risk-legend i:first-of-type{margin-left:3px}.cg3d{position:absolute;inset:0;z-index:4;overflow:hidden}.cg3d-loading{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--fl-bg, #18191a);color:var(--text-secondary)}.cg3d-bar{position:absolute;left:12px;bottom:46px;display:flex;align-items:center;gap:12px;padding:6px 10px;border-radius:8px;background:#18191ad9;border:1px solid #3a3e44;font-size:.76rem}.fl-dim-toggle{display:inline-flex;margin-left:6px;border:1px solid var(--border-color);border-radius:6px;overflow:hidden}.fl-dim-toggle button{border:0;background:none;color:var(--text-secondary);font:inherit;font-size:.74rem;font-weight:700;padding:4px 9px;cursor:pointer}.fl-dim-toggle button.on{background:color-mix(in srgb,var(--accent-cyan) 20%,transparent);color:var(--accent-cyan)}.cg-error.fl-draft.cg-limit-ask.with-panel,.cg-error.fl-draft.cg-limit-warn.with-panel{left:12px;right:calc(var(--cg-detail-w, 360px) + 12px);transform:none;max-width:none;justify-content:center}.cg-error.fl-draft.cg-limit-warn{color:#fb923c;background:#ea580c1a;border-color:#ea580c59}@media(max-width:900px){.cg-error.fl-draft.cg-limit-ask.with-panel,.cg-error.fl-draft.cg-limit-warn.with-panel{right:12px}}.cg-error.fl-draft.cg-limit-ask,.cg-error.fl-draft.cg-limit-warn{z-index:7;background-color:var(--bg-secondary);background-image:linear-gradient(#2563eb1a,#2563eb1a)}.cg-error.fl-draft.cg-limit-warn{background-image:linear-gradient(#ea580c1f,#ea580c1f)}.cg-limit-ask>span,.cg-limit-warn>span{flex:1 1 260px;line-height:1.45}.fl-canvas .cg-empty,.light .fl-canvas .cg-empty{color:var(--fl-muted)}.fl-canvas .cg-empty b,.fl-canvas .cg-empty strong{color:var(--fl-text)}.fl-canvas .cg-status{background:var(--fl-chrome);color:var(--fl-muted)}.cg-dock-hint{display:flex;gap:8px;align-items:flex-start;margin:1rem;font-size:.8rem;line-height:1.5;color:var(--text-muted)}.cg-dock-hint svg{flex-shrink:0;margin-top:2px;color:var(--accent-cyan)}.dashboard{display:flex;flex-direction:column;gap:1.25rem}.page-title{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.dash-header{border-radius:16px;background:var(--card-bg);border:var(--glass-border);box-shadow:var(--glass-shadow);overflow:hidden}.dash-header-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;background:radial-gradient(ellipse 50% 80% at 80% 20%,rgba(139,92,246,.06),transparent),radial-gradient(ellipse 40% 60% at 20% 80%,rgba(var(--accent-primary-rgb),.04),transparent)}.dash-header-title{display:flex;align-items:center;gap:.75rem}.dash-header-title h1{font-size:1.1rem;font-weight:700;margin:0;letter-spacing:-.02em}.dash-header-badge{font-size:.6rem;font-weight:600;padding:.2rem .55rem;border-radius:999px;background:rgba(var(--accent-primary-rgb),.1);color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.06em}.dash-hero-stats{display:flex;gap:1.5rem}.dash-hero-stat{display:flex;align-items:center;gap:.6rem}.dash-hero-stat-icon{width:36px;height:36px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.dash-hero-stat-value{font-size:1.15rem;font-weight:800;font-family:var(--font-mono);letter-spacing:-.02em;line-height:1.1}.dash-hero-stat-label{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.dash-header-nav{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem 1.25rem;border-top:1px solid rgba(var(--white-rgb),.04)}.light .dash-header-nav{border-top-color:#0000000f}.dash-tabs{display:flex;gap:.25rem}.dash-filter-btn{display:flex!important;align-items:center!important;gap:.35rem!important}.dash-filter-badge{background:var(--accent-cyan);color:var(--bg-primary);border-radius:var(--radius-md);padding:0 5px;font-size:.6rem;font-weight:700}.dashboard-tab{padding:.35rem .85rem;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;font-size:var(--text-base);font-weight:500;transition:all .15s ease}.dashboard-tab:hover{color:var(--text-primary);background:rgba(var(--white-rgb),.04)}.light .dashboard-tab:hover{background:#00000008}.dashboard-tab.active{background:rgba(var(--accent-primary-rgb),.1);color:var(--accent-cyan);font-weight:600}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem}@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.stats-grid{grid-template-columns:1fr}}.stats-card{background:transparent;border:none;border-top:1px solid var(--border-color);border-radius:0;padding:.85rem 1rem}.stats-grid>.stats-card:last-child{border-bottom:1px solid var(--border-color)}.stats-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.65rem}.stats-icon{width:36px;height:36px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center}.stats-icon.cyan{background:color-mix(in srgb,var(--accent-cyan) 12%,transparent);color:var(--accent-cyan)}.stats-icon.green{background:color-mix(in srgb,var(--accent-green) 12%,transparent);color:var(--accent-green)}.stats-icon.orange{background:color-mix(in srgb,var(--accent-orange) 12%,transparent);color:var(--accent-orange)}.stats-icon.purple{background:color-mix(in srgb,var(--accent-purple) 12%,transparent);color:var(--accent-purple)}.stats-icon.blue{background:color-mix(in srgb,var(--accent-blue) 12%,transparent);color:var(--accent-blue)}.stats-icon.red{background:color-mix(in srgb,var(--accent-red) 12%,transparent);color:var(--accent-red)}.stats-value{font-size:1.5rem;font-weight:700;font-family:var(--font-mono);letter-spacing:-.02em}.stats-title{color:var(--text-muted);font-size:var(--text-base);margin-top:.15rem}.stats-subtitle{color:var(--text-muted);font-size:var(--text-xs);opacity:.7}.charts-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:.75rem}.chart-card{position:relative;background:color-mix(in srgb,var(--bg-primary) 58%,transparent);border:1px solid color-mix(in srgb,var(--accent-cyan) 22%,transparent);border-radius:var(--radius-md);padding:.85rem;overflow:visible;animation:chartFadeIn .4s ease-out;min-width:0;box-shadow:0 0 16px color-mix(in srgb,var(--accent-cyan) 8%,transparent),inset 0 1px color-mix(in srgb,var(--accent-cyan) 10%,transparent)}.chart-card:before,.chart-card:after{content:"";position:absolute;width:20px;height:20px;border-color:color-mix(in srgb,var(--accent-cyan) 50%,transparent);border-style:solid;z-index:2;pointer-events:none}.chart-card:before{top:4px;left:4px;border-width:2px 0 0 2px;border-radius:2px 0 0}.chart-card:after{top:4px;right:4px;border-width:2px 2px 0 0;border-radius:0 2px 0 0}.charts-row>.chart-card:last-child{border-bottom:1px solid var(--border-color)}@keyframes chartFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chart-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.chart-card-toggle{display:flex;gap:2px;background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:2px}.chart-toggle-btn{padding:3px 10px;border:none;border-radius:4px;background:transparent;color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all .15s}.chart-toggle-btn:hover{color:var(--text-secondary)}.chart-toggle-btn.active{background:var(--bg-secondary);color:var(--accent-cyan)}.chart-card h3{display:flex;align-items:center;gap:.45rem;margin:0;font-size:var(--text-md);color:color-mix(in srgb,var(--accent-cyan) 95%,white 5%);font-weight:700;text-shadow:0 0 10px color-mix(in srgb,var(--accent-cyan) 40%,transparent)}.chart-card h3 svg{color:color-mix(in srgb,var(--accent-cyan) 70%,transparent);flex-shrink:0}.chart-card .chart-desc{color:var(--text-muted);font-size:var(--text-sm);margin-bottom:.65rem;line-height:1.4}@keyframes chartEmptyIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.chart-empty-state{animation:chartEmptyIn .3s ease-out}.chart-empty-icon{display:block;margin-left:auto;margin-right:auto}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.chart-tooltip-enter{background:color-mix(in srgb,var(--bg-primary) 85%,transparent);border:1px solid color-mix(in srgb,white 8%,transparent);border-radius:var(--radius-lg);color:var(--text-primary);font-size:var(--text-md);box-shadow:0 12px 32px color-mix(in srgb,var(--shadow-color) 30%,transparent);animation:tooltipFadeIn .15s ease-out}.light .chart-tooltip-enter{background:color-mix(in srgb,var(--bg-primary) 88%,white 12%);border-color:color-mix(in srgb,black 8%,transparent);box-shadow:0 12px 32px color-mix(in srgb,var(--shadow-color) 10%,transparent)}.chart-tooltip-value{transition:opacity .15s ease}.chart-legend{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;padding-top:.25rem}.chart-legend-item{display:inline-flex;align-items:center;gap:.3rem;font-size:var(--text-base);color:var(--text-muted)}.chart-legend-dot{width:.5rem;height:.5rem;border-radius:50%;flex-shrink:0}.chart-legend-line{width:1rem;height:0;border-top:2px dashed;flex-shrink:0}.risk-table-card{background:var(--card-bg);border:var(--glass-border);border-radius:var(--radius-lg);padding:.85rem;box-shadow:var(--glass-shadow)}.risk-table-card h3{display:flex;align-items:center;gap:.45rem;margin-bottom:.25rem;font-size:var(--text-md);font-weight:700;color:var(--text-primary)}.risk-table-card .chart-desc{color:var(--text-muted);font-size:var(--text-sm);margin-bottom:.65rem}.risk-table{width:100%;border-collapse:collapse;font-size:var(--text-md)}.risk-table th{text-align:left;padding:.55rem .6rem;color:var(--text-muted);font-weight:500;font-size:var(--text-sm);border-bottom:1px solid rgba(var(--white-rgb),.04);white-space:nowrap}.light .risk-table th{border-bottom-color:#0000000f}.risk-table td{padding:.55rem .6rem;border-bottom:1px solid rgba(var(--white-rgb),.03);color:var(--text-secondary)}.light .risk-table td{border-bottom-color:#0000000a}.risk-table tr:hover td{background:rgba(var(--white-rgb),.02)}.light .risk-table tr:hover td{background:#00000004}.risk-table .critical-row td{background:#ef44440d}.risk-table .warning-row td{background:#f9731608}.risk-score-bar{position:relative;width:80px;height:20px;background:var(--bg-tertiary);border-radius:var(--radius-sm);overflow:hidden}.risk-score-bar .risk-fill{position:absolute;left:0;top:0;bottom:0;border-radius:var(--radius-sm)}.risk-score-bar span{position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:var(--text-sm);font-weight:600;color:var(--text-on-accent)}.summary-card{display:flex;align-items:center;gap:.75rem;padding:.85rem;border-radius:var(--radius-lg);border:var(--glass-border);background:var(--card-bg);box-shadow:var(--glass-shadow);transition:background .2s,border-color .2s}.summary-card:hover{background:var(--glass-hover-bg);border-color:var(--border-color)}.summary-card.critical{background:#ef44440f}.summary-card.critical svg{color:var(--accent-red)}.summary-card.warning{background:#f973160f}.summary-card.warning svg{color:var(--accent-orange)}.summary-card.info{background:rgba(var(--accent-primary-rgb),.06)}.summary-card.info svg{color:var(--accent-cyan)}.summary-card .count{display:block;font-size:1.5rem;font-weight:700;font-family:var(--font-mono)}.summary-card .label{display:block;font-size:var(--text-base);color:var(--text-secondary)}.budget-usage-bar{position:relative;width:100%;min-width:80px;height:22px;background:var(--bg-tertiary);border-radius:var(--radius-sm);overflow:hidden}.budget-usage-fill{position:absolute;left:0;top:0;height:100%;border-radius:var(--radius-sm);transition:width .3s ease}.budget-usage-fill.critical{background:#ef44444d}.budget-usage-fill.low{background:#f973164d}.budget-usage-fill.normal{background:#22c55e2e}.budget-usage-text{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;height:100%;font-size:var(--text-sm);font-family:var(--font-mono);font-weight:600}@media(max-width:900px){.dash-header-top{flex-direction:column;align-items:flex-start}.dash-hero-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;width:100%}.dash-header-nav,.dash-tabs{flex-wrap:wrap}}@media(max-width:640px){.dash-hero-stats,.charts-row{grid-template-columns:1fr}}.dfb{display:flex;align-items:center;gap:.75rem;min-height:44px;padding:.35rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.dfb-title{display:flex;align-items:center;gap:.35rem;flex-shrink:0;font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);padding-right:.75rem;border-right:1px solid var(--border-color)}.dfb-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;flex:1;min-width:0}.dfb-chip{display:inline-flex;align-items:center;flex-shrink:0;height:30px;max-width:240px;border:1px solid var(--border-color);border-radius:var(--radius-full);background:var(--bg-primary);color:var(--text-primary);font-size:var(--text-sm);transition:border-color .15s,background .15s}.dfb-chip:hover,.dfb-chip.open{border-color:color-mix(in srgb,var(--accent-cyan) 60%,var(--border-color))}.dfb-chip.active{border-color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 14%,var(--bg-primary))}.dfb-chip-btn{display:inline-flex;align-items:center;gap:.35rem;min-width:0;height:100%;padding:0 .7rem;border:none;background:none;color:inherit;font:inherit;cursor:pointer;border-radius:var(--radius-full)}.dfb-chip.active .dfb-chip-btn{padding-right:.3rem}.dfb-chip-btn:focus-visible,.dfb-chip-clear:focus-visible,.dfb-chip select:focus-visible,.dfb-reset:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:1px}.dfb-chip-label{color:var(--text-muted);flex-shrink:0}.dfb-chip-value{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dfb-chip:not(.active) .dfb-chip-value{font-weight:500}.dfb-chip.active .dfb-chip-label{color:var(--accent-cyan)}.dfb-chip-caret{color:var(--text-muted);flex-shrink:0}.dfb-chip-clear{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-right:5px;flex-shrink:0;border:none;border-radius:var(--radius-full);background:color-mix(in srgb,var(--accent-cyan) 22%,transparent);color:var(--accent-cyan);cursor:pointer}.dfb-chip-clear:hover{background:var(--accent-cyan);color:#fff}.dfb-year{gap:.2rem;padding-left:.7rem}.dfb-year .dfb-chip-label{margin-right:.15rem}.dfb-year select{height:24px;padding:0 .2rem;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font:inherit;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer}.dfb-year select:hover{background:var(--bg-tertiary)}.dfb-year select option{background:var(--bg-secondary);color:var(--text-primary)}.dfb-year:not(.active){padding-right:.5rem}.dfb-year-dash{color:var(--text-muted)}.dfb-end{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.dfb-result{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums}.dfb-result b{color:var(--text-primary);font-weight:700}.dfb-reset{display:inline-flex;align-items:center;gap:.3rem;height:30px;padding:0 .7rem;border:1px solid var(--border-color);border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;white-space:nowrap}.dfb-reset:hover{color:var(--text-primary);border-color:var(--text-muted)}.dfb-pop{position:fixed;z-index:2000;max-height:min(420px,60vh);display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:0 12px 32px var(--shadow-color);overflow:hidden}.dfb-pop-search{display:flex;align-items:center;gap:.4rem;padding:.5rem .65rem;border-bottom:1px solid var(--border-color);color:var(--text-muted)}.dfb-pop-search input{flex:1;min-width:0;border:none;background:transparent;color:var(--text-primary);font-size:var(--text-md);outline:none}.dfb-pop-list{overflow-y:auto;padding:.3rem}.dfb-pop-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;padding:.45rem .6rem;border:none;border-radius:var(--radius-sm);background:none;color:var(--text-primary);font-size:var(--text-md);text-align:left;cursor:pointer}.dfb-pop-item:hover,.dfb-pop-item:focus-visible{background:var(--bg-tertiary);outline:none}.dfb-pop-item.selected{background:color-mix(in srgb,var(--accent-cyan) 16%,transparent);color:var(--accent-cyan);font-weight:600}.dfb-pop-item-label{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dfb-pop-item-hint{font-size:var(--text-xs);color:var(--text-muted);font-weight:400}.dfb-pop-empty{padding:1rem;text-align:center;font-size:var(--text-sm);color:var(--text-muted)}.bd-bs-filter-slot{position:absolute;top:10px;left:1.1rem;right:1.1rem;z-index:15}.bd-relations-filter{margin:0 0 .6rem}.main-content:has(>.bd-relations-full){padding:0}.bd.bd-relations-full{max-width:none;box-sizing:border-box;height:100vh;height:100dvh;padding:0;gap:0;overflow:hidden}.bd-relations-full>.bd-header{margin:0;flex-shrink:0}.bd-relations-full>.bd-relations-filter{flex-shrink:0;margin:0}.bd-relations-full .dfb{min-height:34px;height:34px;gap:.5rem;padding:0 .4rem 0 .75rem;border:0;border-bottom:1px solid var(--border-color);border-radius:0}.bd-relations-full .bd-relations-view-toggle{display:flex;align-items:stretch;align-self:stretch;gap:2px;padding:0;background:none;border:0}.bd-relations-full .bd-relations-controls{align-self:stretch}.bd-relations-full .bd-relations-view-toggle .bd-bs-tab-btn{height:34px;padding:0 .7rem;gap:5px;font-size:.78rem;border-radius:0;background:none;box-shadow:none;text-shadow:none;color:var(--text-secondary);border-bottom:2px solid transparent}.bd-relations-full .bd-relations-view-toggle .bd-bs-tab-btn:hover{color:var(--text-primary);background:rgba(var(--accent-primary-rgb),.06)}.bd-relations-full .bd-relations-view-toggle .bd-bs-tab-btn.active{color:var(--text-primary);background:none;border-bottom-color:var(--accent-cyan)}.bd-relations-full .bd-bs-fullscreen-btn{align-self:center;margin-left:.2rem;width:26px;height:26px}.bd-relations-full .bd-relations-title{font-size:.92rem}.bd-relations-full .dfb-leading{padding-right:.6rem}.bd-relations-full .dfb-chip{height:24px;font-size:.76rem}.bd-relations-full .dfb-year select{height:20px}.bd-relations-full .cg-wrap{border:0;border-radius:0}.bd-relations-full>div>.bd-card,.bd-relations-full .graph-embed{border-radius:0;border-left:0;border-right:0;border-bottom:0}.bd-relations-full>div>.bd-card{border-top:0}.bd-relations-title{margin:0;font-size:1.05rem;font-weight:700;color:var(--text-primary)}.dfb-leading{display:flex;align-items:center;padding-right:.75rem;margin-right:.1rem;border-right:1px solid var(--border-color);flex-shrink:0}.dfb-leading .bd-relations-title{white-space:nowrap}.bd-relations-controls{display:flex;align-items:center;gap:.5rem}.bd-relations-filter .dfb-title{display:none}.bd-relations-filter .dfb-chip{max-width:210px}.dfb-sizeby{display:inline-flex;align-items:center;flex-shrink:0;height:30px;padding:0 3px 0 10px;gap:2px;border:1px solid var(--border-color);border-radius:var(--radius-full);background:var(--bg-primary);font-size:var(--text-sm)}.dfb-sizeby-label{color:var(--text-muted);margin-right:4px}.dfb-sizeby button{height:24px;padding:0 10px;border:0;border-radius:var(--radius-full);background:none;color:var(--text-secondary);font:inherit;font-weight:600;cursor:pointer}.dfb-sizeby button:hover{color:var(--text-primary)}.dfb-sizeby button.active{color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 14%,transparent)}.ts-card{flex:1;min-width:0;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;display:block}.ts-card-link{transition:border-color .2s,box-shadow .2s;cursor:pointer}.ts-card-link:hover{border-color:color-mix(in srgb,var(--accent-cyan) 40%,transparent);box-shadow:0 0 12px color-mix(in srgb,var(--accent-cyan) 12%,transparent)}.ts-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:var(--text-lg);font-weight:700;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.ts-goto{margin-left:auto;font-size:var(--text-sm);font-weight:500;color:var(--accent-cyan);opacity:.7}.ts-card-link:hover .ts-goto{opacity:1}.ts-preview{display:flex;flex-direction:column;padding:.5rem 0}.ts-preview-row{display:flex;align-items:center;gap:.6rem;padding:.4rem 1rem;border-bottom:1px solid var(--border-color);transition:background .1s}.ts-preview-row:last-child{border-bottom:none}.ts-card-link:hover .ts-preview-row{background:var(--bg-tertiary)}.ts-preview-name{flex:1;font-size:var(--text-base);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ts-preview-score{font-size:var(--text-md);font-weight:700;font-variant-numeric:tabular-nums;min-width:28px;text-align:right}.ts-preview-more{padding:.4rem 1rem;font-size:var(--text-sm);color:var(--text-muted);text-align:center}.ts-header svg{color:var(--accent-cyan)}.ts-header h3{margin:0;font-size:inherit}.ts-table{font-size:var(--text-base)}.ts-row{cursor:pointer;transition:background .12s}.ts-row:hover{background:var(--bg-tertiary)}.ts-gov{font-size:var(--text-sm);color:var(--text-muted);margin-top:1px}.ts-score-cell{display:flex;align-items:center;gap:.4rem}.ts-score-num{font-weight:700;font-family:var(--font-mono);font-size:var(--text-md);min-width:28px}.ts-bar-bg{flex:1;height:6px;background:var(--bg-tertiary);border-radius:3px;overflow:hidden;min-width:50px}.ts-bar-fill{height:100%;border-radius:3px;transition:width .6s ease}.ts-level-badge{display:inline-block;padding:.15rem .45rem;border-radius:4px;font-size:var(--text-sm);font-weight:600;white-space:nowrap}.ts-expand-cell{color:var(--text-muted)}.ts-detail-row td{padding:.5rem 1rem!important;background:var(--bg-secondary)}.ts-dims{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem}.ts-dim{display:flex;flex-direction:column;gap:.2rem}.ts-dim-label{font-size:var(--text-sm);color:var(--text-muted)}.ts-dim-bar-bg{height:5px;background:var(--bg-tertiary);border-radius:3px;overflow:hidden}.ts-dim-bar{height:100%;border-radius:3px;transition:width .5s ease}.ts-dim-val{font-size:var(--text-sm);font-weight:600;font-family:var(--font-mono);color:var(--text-secondary)}@media(max-width:700px){.ts-dims{grid-template-columns:repeat(2,1fr)}}.sankey-link-group{cursor:pointer}.sankey-link-tip{pointer-events:none;opacity:0;transition:opacity .15s}.sankey-link-group:hover .sankey-link-path{fill-opacity:.5}.sankey-link-group:hover .sankey-link-tip{opacity:1}.sankey-link-group:active .sankey-link-path{fill-opacity:.7}.dash-map-card{background:var(--card-bg);border:var(--glass-border);border-radius:16px;padding:1rem 1.25rem .75rem;box-shadow:var(--glass-shadow);margin-top:.5rem}.dash-map-title{font-size:var(--text-md);font-weight:600;color:var(--text-secondary);margin-bottom:.5rem;display:flex;align-items:center;gap:.4rem}.bd:not(.bd-overview-dark) .bd-header{border-bottom:none;padding-bottom:.65rem}.bd:not(.bd-overview-dark) .bd-header .sp-type-btn{border:none;background:var(--bg-tertiary)}.bd:not(.bd-overview-dark) .bd-header .sp-type-btn:hover:not(.active){background:var(--bg-secondary)}.bd:not(.bd-overview-dark) .bd-header .sp-type-btn.active{border:none;box-shadow:inset 0 0 0 1px rgba(var(--accent-primary-rgb),.32)}.bd.bd-overview-dark{display:flex;flex-direction:column;box-sizing:border-box;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;background:transparent;padding:0;margin:0;gap:0;overflow-x:hidden;overflow-y:auto}.light .bd.bd-overview-dark{background:transparent}.bd.bd-overview-dark>.loading-container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0}.bd-bs-header-bar{position:absolute;top:0;left:0;right:0;height:52px;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 1rem 0 1.2rem;background:transparent;pointer-events:none;border-bottom:none}.bd-bs-header-left{display:flex;align-items:baseline;gap:.75rem}.bd-bs-header-title{font-size:1.05rem;font-weight:700;color:var(--text-primary);letter-spacing:.04em;text-shadow:0 0 18px rgba(var(--accent-primary-rgb),.5)}.bd-bs-header-sub{font-size:var(--text-xs);color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase}.bd-bs-header-tabs{display:flex;align-items:center;gap:4px;pointer-events:auto}.bd-bs-tab-btn{display:flex;align-items:center;gap:3px;padding:3px 10px;font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);background:rgba(var(--accent-primary-rgb),.08);border:none;border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.03em;transition:color .15s,background .15s,box-shadow .15s}.bd-bs-tab-btn:hover{color:var(--accent-cyan);background:rgba(var(--accent-primary-rgb),.14)}.bd-bs-tab-btn.active{color:var(--text-primary);background:rgba(var(--accent-primary-rgb),.2);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-cyan) 35%,transparent);text-shadow:0 0 8px rgba(var(--accent-primary-rgb),.35)}.bd-bs-header-right{pointer-events:auto}.bd-bs-full{position:relative;width:100%;border-radius:0;overflow:hidden;flex:1;min-height:0;display:flex;flex-direction:column;background:var(--bg-primary);border:none}.bd-bs-bottom-strip{position:absolute;top:calc(10px + var(--bd-filter-h, 0px));left:0;right:0;height:184px;display:flex;align-items:stretch;justify-content:space-between;gap:.6rem;padding:.5rem 1.1rem;background:transparent;z-index:10}.bd-bs-bottom-gauge{position:relative;width:64px;height:64px;flex-shrink:0}.bd-bs-gauge-svg{display:block}.bd-bs-gauge-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.bd-bs-bottom-kpi{display:flex;flex-direction:column;align-items:center;gap:3px;flex:1}.bd-bs-bottom-kpi-ring-wrap{position:relative;display:flex;align-items:center;justify-content:center}.bd-bs-bottom-kpi-inner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.bd-bs-bottom-kpi-val{font-size:var(--text-sm);font-weight:700;line-height:1;text-shadow:0 0 12px currentColor,0 0 4px currentColor;max-width:46px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bd-bs-bottom-kpi-label{font-size:.6rem;color:var(--text-muted);letter-spacing:.04em;text-align:center}.bd-bs-kpi-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.1rem;flex:1;position:relative;padding:.6rem .25rem .35rem;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--bg-primary) 82%,#000);border:none;box-shadow:none;min-width:0;text-align:center}.bd-bs-kpi-card-risk{flex:0 0 auto;padding:.35rem .6rem}.bd-bs-kpi-card-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--bg-tertiary);color:var(--text-secondary);flex-shrink:0}.bd-bs-kpi-card-text{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}.bd-bs-kpi-card-value{font-size:1.3rem;font-weight:700;line-height:1.2;white-space:nowrap;font-family:var(--font-mono, monospace);color:var(--text-primary);text-align:center}.bd-bs-kpi-card-label{font-size:.65rem;color:var(--text-muted);letter-spacing:.02em;text-align:center;line-height:1}.bd-bs-kpi-donut{flex:0 0 290px;min-height:0;padding:.4rem .7rem .35rem}.bd-bs-kpi-donut .bd-bs-ol-label{font-size:.6rem;padding-bottom:.15rem}.bd-bs-overlay{position:absolute;top:calc(194px + var(--bd-filter-h, 0px));bottom:0;left:0;right:0;padding:.5rem 1.1rem .6rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1.3fr) minmax(0,1fr);gap:.6rem;z-index:10;pointer-events:none;overflow:hidden}.bd-bs-overlay-left,.bd-bs-overlay-right{pointer-events:none}.bd-bs-overlay-left>.bd-bs-ol-panel:nth-child(1){grid-column:1 / -1;grid-row:1}.bd-bs-overlay-right>.bd-bs-ol-panel:nth-child(1){grid-column:1;grid-row:2}.bd-bs-overlay-right>.bd-bs-ol-panel:nth-child(2){grid-column:2;grid-row:2}.bd-bs-ol-panel{position:relative;cursor:pointer;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:.55rem .7rem;box-shadow:none;pointer-events:all;width:100%;height:100%;min-height:0;display:flex;flex-direction:column;gap:.35rem;overflow:hidden;transition:border-color .15s,background .15s}.bd-bs-ol-panel:hover{border-color:var(--accent-cyan);background:color-mix(in srgb,var(--bg-secondary) 90%,var(--accent-cyan) 4%)}.bd-bs-ol-label{position:relative;font-size:.66rem;font-weight:700;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.08em;padding-bottom:.35rem;border-bottom:none;display:flex;align-items:center;gap:.3rem;flex-shrink:0;text-shadow:0 0 10px rgba(var(--accent-primary-rgb),.4)}.bd-bs-ol-value{font-size:1.2rem;font-weight:700;color:var(--text-primary);line-height:1.2;letter-spacing:-.02em;white-space:nowrap}.bd-bs-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:.35rem .5rem}.bd-bs-kpi{display:flex;flex-direction:column;gap:1px}.bd-bs-kpi-value{font-size:var(--text-md);font-weight:700;color:var(--text-primary);line-height:1.2;white-space:nowrap}.bd-bs-kpi-label{font-size:.63rem;color:var(--text-muted)}.bd-bs-kpi-pair{display:flex;align-items:center;justify-content:space-around;gap:.5rem;flex:1}.bd-bs-kpi-pair-divider{width:1px;height:32px;background:rgba(var(--accent-primary-rgb),.2);flex-shrink:0}.bd-bs-kpi-big{display:flex;flex-direction:column;align-items:center;gap:2px}.bd-bs-kpi-big-val{font-size:1.25rem;font-weight:700;color:var(--accent-cyan);line-height:1.1;white-space:nowrap;text-shadow:0 0 10px rgba(var(--accent-primary-rgb),.5)}.bd-bs-kpi-big-lbl{font-size:.63rem;color:var(--text-muted);letter-spacing:.04em}.bd-bs-ol-chart{flex:1;min-height:0}.bd-bs-ol-empty{font-size:var(--text-xs);color:var(--text-muted);padding:.5rem 0;flex:1;display:flex;align-items:center}.bd-bs-pie-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.bd-bs-pie-legend{display:flex;flex-direction:column;gap:.25rem}.bd-bs-legend-item{display:flex;align-items:center;gap:.4rem;padding:.2rem .25rem;border-radius:5px;background:transparent;border:1px solid transparent;cursor:pointer;text-align:left;transition:background .15s,border-color .15s;width:100%}.bd-bs-legend-item:hover{background:color-mix(in srgb,white 4%,transparent);border-color:color-mix(in srgb,var(--accent-cyan) 15%,transparent)}.bd-bs-legend-item.active{background:color-mix(in srgb,var(--accent-cyan) 8%,transparent);border-color:color-mix(in srgb,var(--accent-cyan) 25%,transparent)}.bd-bs-legend-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.bd-bs-legend-name{font-size:.6rem;color:var(--text-secondary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bd-bs-risk-body{display:flex;align-items:center;gap:.6rem;flex:1}.bd-bs-donut{position:relative;width:100%}.bd-bs-ol-hint{margin-left:auto;font-size:.62rem;font-weight:500;color:var(--text-muted);text-transform:none;letter-spacing:0;text-shadow:none}.bd-bs-donut-body{display:flex;align-items:center;gap:.5rem;height:100%}.bd-bs-donut-legend{flex:1;min-width:0;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:0;font-size:.62rem;line-height:1.3}.bd-bs-donut-legend li{display:flex;align-items:center;gap:.3rem;padding:1px 3px;border-radius:3px;color:var(--text-secondary);cursor:default}.bd-bs-donut-legend li.active{background:var(--bg-tertiary);color:var(--text-primary)}.bd-bs-donut-dot{width:7px;height:7px;border-radius:2px;flex-shrink:0}.bd-bs-donut-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bd-bs-donut-pct{font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.bd-bs-ol-panel>:not(.bd-bs-ol-label):not(.bd-bs-subtabs){flex:1 1 0;min-height:0;height:auto!important}.bd-bs-freshness{display:flex;flex-direction:column;gap:1px;pointer-events:auto;font-size:var(--text-xs);color:var(--text-muted);line-height:1.35;cursor:help}.bd-bs-freshness b{color:var(--text-secondary);font-weight:600;font-variant-numeric:tabular-nums}.bd-skel{display:block;border-radius:var(--radius-sm);background:linear-gradient(90deg,color-mix(in srgb,var(--bg-tertiary) 55%,transparent) 25%,color-mix(in srgb,var(--bg-tertiary) 95%,transparent),color-mix(in srgb,var(--bg-tertiary) 55%,transparent) 75%);background-size:200% 100%;animation:bd-skel-shimmer 1.3s ease-in-out infinite}.bd-skel-chart{flex:1 1 0;min-height:60px;width:100%}.bd-skel-kpi{width:5.5rem;height:1.6rem;margin:0 auto .2rem}@keyframes bd-skel-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.bd-bs-ol-panel.is-stale>:not(.bd-bs-ol-label),.bd-bs-kpi-card.is-stale .bd-bs-kpi-card-value{opacity:.45;transition:opacity .2s}@media(prefers-reduced-motion:reduce){.bd-skel{animation:none}}.bd-bs-kpi-card-sub{margin-top:2px;font-size:.6rem;line-height:1.3;color:var(--accent-orange);text-align:center;cursor:help}.bd-bs-overlay{grid-template-columns:repeat(3,minmax(0,1fr))}.bd-bs-overlay-right>.bd-bs-ol-panel:nth-child(3){grid-column:3;grid-row:2}.bd-bs-kpi-card-unit{margin-top:-1px;font-size:.7rem;font-weight:600;color:var(--text-secondary);text-align:center;line-height:1.1}.bd-bs-subtabs{display:flex;gap:2px;flex-shrink:0}.bd-bs-subtabs button{flex:1;padding:3px 0;border:none;border-radius:4px;background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);color:var(--text-muted);font-size:.68rem;font-weight:600;cursor:pointer}.bd-bs-subtabs button.active{background:color-mix(in srgb,var(--accent-cyan) 32%,transparent);color:var(--accent-cyan)}.bd-bs-kpi-card-sub.is-muted{color:var(--text-secondary)}.bd-bs-kpi-card-sub b{color:var(--text-primary);font-weight:700}.bd-bs-donut{display:flex;flex-direction:column;gap:4px}.bd-bs-donut-controls{display:flex;justify-content:space-between;gap:6px;flex-shrink:0}.bd-bs-donut-seg{display:inline-flex;padding:1px;border-radius:5px;background:color-mix(in srgb,var(--accent-cyan) 8%,transparent)}.bd-bs-donut-seg button{padding:1px 6px;border:none;border-radius:4px;background:transparent;color:var(--text-muted);font-size:.58rem;font-weight:600;line-height:1.5;white-space:nowrap;cursor:pointer}.bd-bs-donut-seg button.active{background:color-mix(in srgb,var(--accent-cyan) 30%,transparent);color:var(--accent-cyan)}.bd-bs-ol-info{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:6px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);cursor:help;vertical-align:middle}.bd-bs-ol-info:hover,.bd-bs-ol-info.is-open{color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 14%,transparent)}.bd-bs-info-pop{position:fixed;overflow-y:auto;z-index:2000;padding:12px 14px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary);color:var(--text-primary);box-shadow:0 10px 30px #00000059;font-size:12px;line-height:1.45;text-transform:none;letter-spacing:0}.light .bd-bs-info-pop{box-shadow:0 10px 30px #0f172a24,0 1px 3px #0f172a14}.bd-bs-info-pop-title{margin-bottom:8px;font-size:12.5px;font-weight:700;color:var(--accent-cyan)}.bd-bs-formula section+section{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-color)}.bd-bs-formula h4{display:flex;align-items:center;gap:6px;margin:0 0 4px;font-size:12px;font-weight:700;color:var(--text-primary)}.bd-bs-formula p{margin:3px 0;color:var(--text-secondary)}.bd-bs-formula b{color:var(--text-primary);font-weight:600}.bd-bs-formula code{display:block;margin:4px 0;padding:5px 8px;border-radius:6px;background:var(--bg-tertiary);color:var(--text-primary);font-family:var(--font-mono, monospace);font-size:11px;white-space:pre-wrap}.bd-bs-formula-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}.bd-bs-formula-dot.is-bidder{background:var(--accent-cyan)}.bd-bs-formula-dot.is-budget{background:var(--accent-green)}.bd-bs-status{display:flex;align-items:center;gap:.6rem;padding-right:.6rem;margin-right:.1rem;border-right:1px solid var(--border-color)}.bd-bs-status .bd-bs-freshness{align-items:flex-end;line-height:1.25;white-space:nowrap}.bd-bs-fullscreen-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid var(--border-color);border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.bd-bs-fullscreen-btn:hover{color:var(--accent-cyan);border-color:var(--accent-cyan);background:rgba(var(--accent-primary-rgb),.1)}.bd-bs-bottom-strip .bd-bs-kpi-card{justify-content:center;gap:.2rem;padding:.5rem}.bd-bs-bottom-strip .bd-bs-kpi-card-icon{width:44px;height:44px;margin-bottom:.15rem}.bd-bs-bottom-strip .bd-bs-kpi-card-text{gap:3px}.bd-bs-bottom-strip .bd-bs-kpi-card-value{font-size:1.6rem;line-height:1.1}.bd-bs-bottom-strip .bd-bs-kpi-card-unit{min-height:.85rem;font-size:.74rem;line-height:.85rem}.bd-bs-bottom-strip .bd-bs-kpi-card-label{display:flex;align-items:flex-start;justify-content:center;min-height:2.5em;font-size:.72rem;line-height:1.25}.bd-bs-kpi-card-subs{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:2.5em;font-size:.66rem;line-height:1.25}.bd-bs-risk-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.bd-bs-risk-label{font-size:var(--text-xs);font-weight:600}.bd-bs-modal-backdrop{position:fixed;inset:0;background:var(--backdrop-bg);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:500;display:flex;align-items:center;justify-content:center;animation:bd-bs-modal-fade .18s ease-out}@keyframes bd-bs-modal-fade{0%{opacity:0}to{opacity:1}}.bd-bs-modal-box{background:color-mix(in srgb,var(--bg-primary) 94%,transparent);border:none;border-radius:var(--radius-xl);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-cyan) 22%,transparent),0 0 48px rgba(var(--accent-primary-rgb),.12),0 24px 48px #00000073;width:min(860px,92vw);height:min(520px,80vh);display:flex;flex-direction:column;padding:1rem 1.25rem 1.25rem;gap:.75rem;animation:bd-bs-modal-pop .22s cubic-bezier(.2,.9,.3,1.1)}@keyframes bd-bs-modal-pop{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}.bd-bs-modal-box--xl{width:95vw;height:90vh;max-width:none;max-height:none}.bd-bs-modal-body{flex:1;min-height:0;display:flex;flex-direction:column}.bd-bs-ol-expand-ic{margin-left:auto;opacity:.55;transition:opacity .18s}.bd-bs-ol-panel:hover .bd-bs-ol-expand-ic{opacity:1}.bd-bs-modal-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.bd-bs-modal-close{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:4px;border-radius:var(--radius-sm);transition:color .15s,background .15s}.bd-bs-modal-close:hover{color:var(--text-primary);background:var(--bg-tertiary)}@media(max-width:700px){.bd-bs-full{overflow-y:auto}.bd-bs-header-bar,.bd-bs-filter-slot,.bd-bs-bottom-strip{position:static;height:auto}.bd-bs-filter-slot{margin:0 .75rem}.bd-bs-bottom-strip{flex-wrap:wrap}.bd-bs-kpi-card,.bd-bs-kpi-donut{min-height:64px}.bd-bs-overlay{position:static;bottom:auto;height:auto;grid-template-columns:1fr;grid-template-rows:none;padding:.5rem .75rem}.bd-bs-overlay-left>.bd-bs-ol-panel,.bd-bs-overlay-right>.bd-bs-ol-panel{grid-column:auto!important;grid-row:auto!important;min-height:220px}}.light .bd-bs-header-bar{background:linear-gradient(to bottom,rgba(220,235,250,.95) 0%,rgba(220,235,250,.7) 60%,transparent 100%);border-bottom:none}.light .bd-bs-header-title,.light .bd-bs-tab-btn.active{text-shadow:none}.light .bd-bs-ol-panel{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 1px 4px #0000000a}.light .bd-bs-ol-panel:hover{border-color:var(--accent-cyan);box-shadow:0 2px 8px #0000000f}.light .bd-bs-ol-label{text-shadow:none}.light .bd-bs-kpi-card{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:none}.light .bd-bs-kpi-card-value{text-shadow:0 0 10px rgba(var(--accent-primary-rgb),.12)}.light .bd-bs-kpi-card-label{color:var(--text-muted)}.light .chart-card{background:color-mix(in srgb,var(--bg-secondary) 78%,transparent);border-color:color-mix(in srgb,var(--accent-cyan) 18%,transparent);box-shadow:0 2px 8px rgba(var(--accent-primary-rgb),.07)}.light .chart-card:before,.light .chart-card:after{border-color:color-mix(in srgb,var(--accent-cyan) 35%,transparent)}.light .chart-card h3{color:var(--text-primary);text-shadow:none}.light .chart-card h3 svg{color:color-mix(in srgb,var(--accent-cyan) 55%,var(--text-primary) 45%)}.light .bd-bs-modal-backdrop{background:var(--backdrop-bg)}.light .bd-bs-modal-box{background:color-mix(in srgb,var(--bg-secondary) 92%,transparent);border:none;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-cyan) 20%,transparent),0 0 36px rgba(var(--accent-primary-rgb),.1),0 16px 40px #00000014}.sp-form{padding:.75rem .85rem;display:flex;flex-direction:column;gap:.6rem}.sp-type-toggle{display:flex;gap:3px}.sp-type-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 .85rem;border-radius:8px;font-family:var(--font-sans);font-size:.86rem;font-weight:600;cursor:pointer;border:0;background:transparent;color:var(--text-secondary);transition:background .15s,color .15s;white-space:nowrap}.sp-type-btn.active{background:color-mix(in srgb,var(--accent-cyan) 14%,transparent);color:var(--accent-cyan)}.sp-type-btn:hover:not(.active){background:var(--hover-overlay);color:var(--text-primary)}.sp-input-row{display:flex;gap:.4rem}.sp-input-wrap{flex:1;position:relative;display:flex;align-items:center;gap:.4rem;padding:0 .6rem;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);transition:border-color .15s}.sp-input-wrap:focus-within{border-color:var(--accent-cyan);box-shadow:0 0 0 2px rgba(var(--accent-primary-rgb),.1)}.sp-input-icon{color:var(--text-muted);flex-shrink:0}.sp-input{flex:1;border:none;background:transparent;color:var(--text-primary);font-size:var(--text-md);padding:.5rem 0;outline:none;min-width:0}.sp-input::-moz-placeholder{color:var(--text-muted)}.sp-input::placeholder{color:var(--text-muted)}.sp-search-btn{display:flex;align-items:center;gap:.35rem;padding:0 .85rem;border-radius:var(--radius-md);border:none;background:var(--accent-cyan);color:var(--text-on-accent);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:opacity .15s;white-space:nowrap}.sp-search-btn:hover:not(:disabled){opacity:.85}.sp-search-btn:disabled{opacity:.5;cursor:not-allowed}.sp-sort-bar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .85rem;border-bottom:1px solid var(--border-color);background:var(--bg-tertiary);flex-wrap:wrap}.sp-sort-group,.sp-filter-group{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.sp-sort-btn{display:flex;align-items:center;gap:3px;padding:.22rem .55rem;border-radius:5px;font-size:.67rem;font-weight:600;cursor:pointer;border:1px solid var(--border-color);background:transparent;color:var(--text-muted);transition:all .12s}.sp-sort-btn:hover{background:var(--hover-overlay);color:var(--text-primary)}.sp-sort-btn.active{border-color:var(--accent-cyan);background:rgba(var(--accent-primary-rgb),.1);color:var(--accent-cyan)}.sp-filter-select{padding:.22rem .5rem;border-radius:5px;font-size:.67rem;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;outline:none}.sp-filter-select:focus{border-color:var(--accent-cyan)}.sp-filter-clear{display:flex;align-items:center;gap:3px;padding:.22rem .5rem;border-radius:5px;font-size:var(--text-xs);font-weight:600;border:1px solid color-mix(in srgb,var(--accent-red) 35%,transparent);background:transparent;color:var(--accent-red);cursor:pointer;transition:all .12s}.sp-filter-clear:hover{background:color-mix(in srgb,var(--accent-red) 10%,transparent)}.sp-recent-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--glass-shadow);z-index:200;overflow:hidden}.sp-recent-header{display:flex;align-items:center;gap:5px;padding:.5rem .75rem .35rem;font-size:var(--text-sm);color:var(--text-muted);border-bottom:1px solid var(--border-color)}.sp-recent-clear-all{margin-left:auto;font-size:.67rem;color:var(--text-muted);background:none;border:none;cursor:pointer;padding:0;transition:color .15s}.sp-recent-clear-all:hover,.sp-recent-item-del:hover{color:var(--accent-red)}.sp-recent-item{display:flex;align-items:center;gap:.4rem;padding:.4rem .75rem;cursor:pointer;font-size:var(--text-md);color:var(--text-secondary);transition:background .1s}.sp-recent-item:hover{background:var(--hover-overlay)}.sp-recent-item-icon{color:var(--text-muted);flex-shrink:0}.sp-recent-item span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-recent-item-del{background:none;border:none;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;padding:2px;border-radius:3px;opacity:0;transition:opacity .1s,color .1s}.sp-recent-item:hover .sp-recent-item-del{opacity:1}.sp-compare-check{width:14px;height:14px;cursor:pointer;accent-color:var(--accent-cyan)}.sp-compare-cell{width:24px;padding:0 4px!important}.sp-compare-selected{background:rgba(var(--accent-primary-rgb),.06)!important}.sp-error-card{border-color:color-mix(in srgb,var(--accent-red) 35%,transparent)!important;background:color-mix(in srgb,var(--accent-red) 10%,transparent)!important;padding:.6rem .85rem;font-size:var(--text-base);color:var(--accent-red)}.sp-filtered-count,.sp-query-chip{font-size:var(--text-sm);color:var(--text-muted)}.sp-sort-icon{color:var(--text-muted)}.sp-cell-mono{font-family:var(--font-mono);font-size:var(--text-sm)}.sp-cell-muted{font-size:var(--text-sm);color:var(--text-muted)}.sp-query-builder-card{padding:1rem}@media(max-width:500px){.sp-input-row{flex-direction:column}}.sv-search{display:flex;gap:.5rem}.sv-search-box{flex:1;display:flex;align-items:center;gap:.5rem;min-width:0;height:44px;padding:0 .85rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:border-color .15s,box-shadow .15s}.sv-search-box:focus-within{border-color:var(--accent-cyan);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-cyan) 15%,transparent)}.sv-search-icon{color:var(--text-muted);flex-shrink:0}.sv-search-input{flex:1;min-width:0;height:100%;border:none;background:transparent;color:var(--text-primary);font-size:var(--text-md);outline:none}.sv-search-input::-moz-placeholder{color:var(--text-muted)}.sv-search-input::placeholder{color:var(--text-muted)}.sv-search-clear{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;border:none;border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-muted);cursor:pointer}.sv-search-clear:hover{color:var(--text-primary)}.sv-search .sp-search-btn{height:44px;padding:0 1.1rem;border-radius:var(--radius-lg)}.sv-text-chip{padding-left:.7rem;gap:.35rem;cursor:text}.sv-text-chip input{width:92px;height:24px;border:none;background:transparent;outline:none;color:var(--text-primary);font:inherit;font-weight:600}.sv-text-chip input::-moz-placeholder{color:var(--text-muted);font-weight:400}.sv-text-chip input::placeholder{color:var(--text-muted);font-weight:400}.sv-text-chip:not(.active){padding-right:.6rem}.sv-results{padding:.6rem .9rem .4rem;display:flex;flex-direction:column;gap:.4rem}.sv-results-title{display:flex;align-items:center;gap:.4rem;margin:0;font-size:.85rem;font-weight:600;color:var(--text-secondary)}.sv-note{margin:0;font-size:.75rem;color:var(--text-muted)}.sv-table--tenders .sv-col-check{width:30px;padding-left:.4rem!important;padding-right:0!important}.sv-table--tenders .sv-col-org{width:18%}.sv-table--tenders .sv-col-budget{width:11%}.sv-table--tenders .sv-col-status{width:13%}.sv-table--tenders .sv-col-bidders{width:64px}.sv-table--tenders .sv-col-winner{width:17%}.sv-table--tenders .fd-cell-main{max-width:none}.sv-tender-link{color:var(--text-primary);font-weight:500}@media(max-width:700px){.sv-search{flex-direction:column}.sv-table--tenders .sv-col-org,.sv-table--tenders .sv-col-winner{width:30%}}.rf-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem;margin-bottom:.75rem}.rf-item{display:flex;align-items:center;gap:.5rem;padding:.65rem .85rem;border-radius:var(--radius-md);background:var(--card-bg);border:1px solid var(--border-color);border-left:3px solid var(--border-color);box-shadow:var(--glass-shadow);transition:transform .15s,box-shadow .2s}.rf-item:hover{transform:translateY(-1px);box-shadow:0 2px 4px var(--shadow-color),0 4px 16px var(--shadow-color)}.rf-item.critical{border-left-color:var(--accent-red)}.rf-item.critical svg{color:var(--accent-red)}.rf-item.high{border-left-color:var(--accent-orange)}.rf-item.high svg{color:var(--accent-orange)}.rf-item.medium{border-left-color:var(--accent-yellow)}.rf-item.medium svg{color:var(--accent-yellow)}.rf-item.low{border-left-color:var(--accent-cyan)}.rf-item.low svg{color:var(--accent-cyan)}.rf-item svg{flex-shrink:0}.rf-info{display:flex;flex-direction:column;min-width:0}.rf-val{font-size:var(--text-xl);font-weight:700;font-family:var(--font-mono);color:var(--text-primary);line-height:1.2}.rf-label{font-size:var(--text-sm);color:var(--text-muted);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:1100px){.rf-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.rf-grid{grid-template-columns:repeat(2,1fr)}}.fraud-detection{display:flex;flex-direction:column;gap:1.25rem}.fraud-header h2{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;margin-bottom:.25rem}.fraud-header p{color:var(--text-secondary);font-size:var(--text-md)}.fraud-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.fraud-tabs{display:flex;gap:.5rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem;overflow-x:auto}.tab-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md) 8px 0 0;font-size:var(--text-md);white-space:nowrap}.tab-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.tab-btn.active{background:var(--bg-secondary);color:var(--accent-cyan);border:1px solid var(--border-color);border-bottom:none}.tab-count{background:var(--bg-tertiary);padding:.1rem .4rem;border-radius:var(--radius-md);font-size:var(--text-sm);font-family:var(--font-mono)}.fraud-content{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--glass-shadow)}.fraud-table-container{padding:1.25rem}.fraud-table-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.fraud-pagination-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}.fraud-pagination-controls label{font-size:var(--text-lg);color:var(--text-muted)}.fraud-page-size-select{padding:.35rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-size:var(--text-lg)}.fraud-page-info{font-size:var(--text-md);color:var(--text-muted)}.fraud-page-buttons{display:flex;gap:.5rem}.fraud-page-buttons button{padding:.4rem .75rem;font-size:var(--text-md);border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer}.fraud-page-buttons button:hover:not(:disabled){background:var(--hover-overlay);color:var(--accent-cyan)}.fraud-page-buttons button:disabled{opacity:.5;cursor:not-allowed}.fraud-table-wrapper{overflow-x:auto;margin-bottom:.75rem}.fraud-table-wrapper .num-cell{width:2.5rem;text-align:right;color:var(--text-muted);font-variant-numeric:tabular-nums}.fraud-limit-note{font-size:var(--text-md);color:var(--text-muted);margin:0;padding-top:.5rem;border-top:1px solid var(--border-color)}.fraud-search-pagination{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;row-gap:.75rem}.fraud-search-label{display:flex;align-items:center;gap:.5rem;min-width:200px;max-width:320px}.fraud-search-label svg{color:var(--text-muted);flex-shrink:0}.fraud-search-input{flex:1;padding:.4rem .6rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-size:var(--text-lg)}.fraud-search-input::-moz-placeholder{color:var(--text-muted)}.fraud-search-input::placeholder{color:var(--text-muted)}.fraud-empty-note{font-size:var(--text-lg);color:var(--text-muted);margin:0;padding:1rem 0;text-align:center}.fraud-table{width:100%}.fraud-table th{background:var(--bg-tertiary)}.fraud-table .critical-row td{background:color-mix(in srgb,var(--accent-red) 5%,transparent)}.fraud-search-bar{display:flex;align-items:center;gap:.5rem;max-width:360px;margin-bottom:1rem}.fraud-search-bar svg{color:var(--text-muted);flex-shrink:0}.fp-search-input{border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);padding:.3rem .5rem;border-radius:var(--radius-sm);font-size:var(--text-sm);outline:none;min-width:140px;max-width:220px}.fp-search-input::-moz-placeholder{color:var(--text-muted)}.fp-search-input::placeholder{color:var(--text-muted)}.fp-search-input:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-cyan) 10%,transparent)}.fp-search-btn{padding:.25rem .55rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--text-sm);cursor:pointer;transition:all .15s;white-space:nowrap}.fp-search-btn:hover{background:var(--accent-cyan);border-color:var(--accent-cyan);color:var(--text-on-accent)}.fp-clear-btn{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-secondary);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;padding:0}.fp-clear-btn:hover{color:var(--accent-red);border-color:var(--accent-red);background:color-mix(in srgb,var(--accent-red) 10%,transparent)}.fp-retry-btn{border:none;background:none;color:var(--accent-cyan);font-size:var(--text-base);cursor:pointer;text-decoration:underline;padding:0;margin-left:.5rem}.fp-title-icon{vertical-align:text-bottom;margin-right:6px}.fp-register{font-family:inherit;letter-spacing:0}.fp-tab-wrap{padding:.6rem .85rem}.fp-section-gap{margin-bottom:16px}.fp-section-title{font-size:var(--text-md);margin-bottom:8px}.fp-cell-secondary{font-size:var(--text-base);color:var(--text-secondary)}.fp-kpi-clickable{cursor:pointer}.fp-wrap{flex-wrap:wrap}.fp-count-gap{margin-left:4px}.fp-cell-bold{font-weight:700}.fp-cell-muted{font-size:var(--text-sm);color:var(--text-muted)}.fp-cell-mono-muted{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--text-muted)}.fp-cell-small,.fp-org-link-small{font-size:var(--text-sm)}.fp-kpi-3col{grid-template-columns:repeat(3,1fr)}.fp-chart-minh{min-height:200px}.fp-inline-form{display:flex;align-items:center;gap:.35rem}.fp-tags-wrap{display:flex;flex-wrap:wrap;gap:.35rem;padding:.6rem .85rem}.fp-tag-chip{padding:.2rem .5rem;font-size:var(--text-sm)}.cl-row{cursor:pointer}.cl-row.open td{background:var(--hover-overlay)}.cl-toggle{white-space:nowrap;font-size:.72rem;color:var(--accent-cyan);text-align:right}.cl-detail-row>td{padding:.6rem .75rem 1rem;background:var(--bg-primary, transparent)}.cl-detail{display:flex;flex-direction:column;gap:.75rem}.cl-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:6px}.cl-stats>div{border:1px solid var(--border-color);border-radius:8px;padding:6px 10px;display:flex;flex-direction:column}.cl-stats b{font-size:1.05rem;font-variant-numeric:tabular-nums}.cl-stats span{font-size:.68rem;color:var(--text-muted)}.cl-note{display:flex;gap:6px;align-items:flex-start;margin:0;font-size:.78rem;line-height:1.5;color:var(--text-secondary);padding:8px 10px;border-radius:8px;border:1px solid var(--border-color)}.cl-note.warn{border-color:#ea580c59;background:#ea580c0f}.cl-note.warn svg{color:#fb923c;flex-shrink:0;margin-top:2px}.cl-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:.75rem}@media(max-width:1000px){.cl-grid{grid-template-columns:1fr}}.cl-detail h4{margin:0 0 6px;font-size:.8rem}.cl-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.cl-orgs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:.78rem}.cl-orgs li{display:flex;justify-content:space-between;gap:8px}.cl-orgs li span{color:var(--text-muted);white-space:nowrap}.cl-member{display:inline-block;margin:0 4px 2px 0;padding:0 6px;border-radius:6px;border:1px solid var(--border-color);font-size:.7rem}.cl-member.won{border-color:var(--accent-green);color:var(--accent-green);font-weight:600}.cl-of{font-size:.68rem;color:var(--text-muted)}.fd-page{display:grid;grid-template-columns:232px minmax(0,1fr);gap:12px;padding:0;align-items:start;min-height:100%;box-sizing:border-box}.fd-page .bd-bs-ol-panel{height:auto;cursor:default;overflow:visible}.fd-page .bd-bs-ol-panel:hover{border-color:var(--border-color);background:var(--bg-secondary)}.fd-page .bd-bs-ol-panel>:not(.bd-bs-ol-label):not(.bd-bs-subtabs){flex:0 0 auto}.fd-nav{position:sticky;top:12px;max-height:calc(100vh - 24px);overflow-y:auto!important;padding:.7rem .5rem!important;gap:0!important}.fd-nav-title{padding:0 .5rem .55rem;font-size:.95rem;font-weight:700;color:var(--text-primary)}.fd-nav-group{padding:.7rem .5rem .3rem;font-size:.6rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-cyan)}.fd-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.fd-nav-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.42rem .55rem;border:none;border-radius:var(--radius-sm, 6px);background:transparent;color:var(--text-secondary);font-size:.78rem;text-align:left;cursor:pointer;transition:background .12s,color .12s}.fd-nav-item svg{flex-shrink:0;opacity:.75}.fd-nav-item:hover{background:var(--hover-overlay, rgba(255, 255, 255, .04));color:var(--text-primary)}.fd-nav-item.active{background:color-mix(in srgb,var(--accent-cyan) 16%,transparent);color:var(--accent-cyan);font-weight:600;box-shadow:inset 2px 0 0 var(--accent-cyan)}.fd-nav-item.active svg{opacity:1}.fd-nav-item:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:-2px}.fd-main{display:flex;flex-direction:column;gap:12px;min-width:0}.fd-filter .dfb{margin:0}.fd-chart-panel{padding:.7rem .85rem .6rem!important}.fd-how{display:inline-flex;align-items:center;gap:4px;max-width:70%;text-align:right;line-height:1.3}.fd-subtabs{max-width:260px}.fd-page .fd-chart-panel>.fd-chart-body{position:relative;height:340px!important;min-height:340px}.fd-chart-body>*{height:100%}.fd-chart-body .bd-skel-chart,.bd-bs-donut--lg{height:100%}.bd-bs-donut--lg .bd-bs-donut-controls{justify-content:flex-start;gap:12px}.bd-bs-donut--lg .bd-bs-donut-seg button{font-size:.72rem;padding:3px 10px}.bd-bs-donut--lg .bd-bs-donut-body{justify-content:center;gap:2.5rem}.bd-bs-donut--lg .bd-bs-donut-legend{flex:0 1 380px;gap:3px;font-size:.82rem}.bd-bs-donut--lg .bd-bs-donut-legend li{padding:5px 8px;cursor:pointer;border:1px solid transparent}.bd-bs-donut--lg .bd-bs-donut-legend li.selected{border-color:color-mix(in srgb,var(--accent-cyan) 60%,transparent);background:color-mix(in srgb,var(--accent-cyan) 12%,transparent);color:var(--text-primary)}.bd-bs-donut--lg .bd-bs-donut-dot{width:10px;height:10px}.fd-detail-panel{padding:.75rem .85rem!important;gap:.6rem!important}.fd-detail-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem 1.2rem}.fd-selection{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1 1 320px}.fd-selection-kicker{flex-shrink:0;padding:2px 7px;border-radius:4px;font-size:.6rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 14%,transparent)}.fd-selection-label{font-size:.9rem;font-weight:600;color:var(--text-primary)}.fd-selection-clear{display:inline-flex;align-items:center;gap:3px;flex-shrink:0;padding:2px 8px;border:1px solid var(--border-color);border-radius:999px;background:transparent;color:var(--text-muted);font-size:.7rem;cursor:pointer}.fd-selection-clear:hover{color:var(--text-primary);border-color:var(--text-muted)}.fd-stats{display:flex;flex-wrap:wrap;gap:.35rem 1.3rem;transition:opacity .2s}.fd-stats.is-stale{opacity:.5}.fd-stat{display:flex;flex-direction:column;line-height:1.15}.fd-stat-value{font-size:1rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.fd-stat-label{font-size:.66rem;color:var(--text-muted)}.fd-skel-stats{width:420px;max-width:100%;height:2rem}.fd-table-block{display:flex;flex-direction:column;gap:.5rem}.fd-table-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;border-bottom:1px solid var(--border-color);padding-bottom:.45rem}.fd-tabs{display:flex;gap:4px}.fd-tabs button{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-muted);font-size:.8rem;font-weight:600;cursor:pointer}.fd-tabs button:hover{color:var(--text-primary);background:var(--hover-overlay, rgba(255, 255, 255, .04))}.fd-tabs button.active{color:var(--accent-cyan);border-color:color-mix(in srgb,var(--accent-cyan) 45%,transparent);background:color-mix(in srgb,var(--accent-cyan) 12%,transparent)}.fd-tab-count{padding:0 6px;border-radius:999px;font-size:.66rem;font-weight:700;letter-spacing:0;text-transform:none;color:var(--text-secondary);background:var(--bg-tertiary);font-variant-numeric:tabular-nums}.fd-tabs button.active .fd-tab-count{color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 18%,transparent)}.fd-table-actions{display:flex;align-items:center;gap:8px}.fd-table-actions .bd-pagination{margin:0}.fd-table-wrap{overflow-x:auto;transition:opacity .2s}.fd-table-wrap.is-stale{opacity:.5}.fd-table td{font-size:.78rem;padding:.4rem .55rem}.fd-table{table-layout:fixed;width:100%}.fd-table td{overflow:hidden}.fd-table .fd-col-idx{width:44px}.fd-table--tenders .fd-col-org{width:15%}.fd-table--tenders .fd-col-budget{width:13%}.fd-table--tenders .fd-col-status{width:12%}.fd-table--tenders .fd-col-rounds{width:72px}.fd-table--tenders .fd-col-bidders{width:64px}.fd-table--tenders .fd-col-winner{width:16%}.fd-table--organizations .fd-col-gov{width:24%}.fd-table--suppliers .fd-col-rate{width:130px}.fd-table th,.fd-table td{padding-left:.45rem;padding-right:.45rem}.fd-clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:100%}.fd-table th{white-space:nowrap}.fd-sort{display:inline-flex;align-items:center;gap:3px;padding:0;border:none;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.fd-sort:hover,.fd-sort.active{color:var(--accent-cyan)}.fd-cell-main{display:flex;flex-direction:column;gap:1px;min-width:0;max-width:320px}.fd-cell-main>a{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.fd-cell-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fd-cell-main a{color:var(--text-primary);font-weight:500}.fd-cell-main a:hover,.fd-link-muted:hover{color:var(--accent-cyan)}.fd-cell-sub{font-size:.68rem;color:var(--text-muted)}.fd-cell-sub.fd-inline{margin-left:4px}.fd-link-muted{color:var(--text-secondary)}.fd-muted{color:var(--text-muted)}.fd-nowrap{white-space:nowrap}.fd-status{font-size:.72rem;white-space:nowrap}.fd-rounds{font-variant-numeric:tabular-nums;color:var(--text-muted)}.fd-rounds.is-re{color:var(--accent-orange);font-weight:700}.fd-shift{display:block;font-size:.66rem;font-weight:600}.fd-shift.up{color:var(--accent-red)}.fd-shift.down{color:var(--accent-green)}.fd-rate{display:inline-flex;align-items:center;gap:6px;justify-content:flex-end}.fd-rate-bar{width:44px;height:4px;border-radius:2px;background:var(--bg-tertiary);overflow:hidden}.fd-rate-bar>span{display:block;height:100%;background:var(--accent-cyan)}.fd-skel-row{height:1.1rem;width:100%}.fd-retry{border:none;background:none;color:var(--accent-cyan);cursor:pointer;text-decoration:underline}.fd-risk-panel{padding:.75rem .85rem!important}.fd-panel-actions{margin-left:auto;text-transform:none;letter-spacing:0;text-shadow:none}.fd-risk-note{margin:0;font-size:.78rem;color:var(--text-muted)}.fd-page .fd-rf-grid{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}.fd-page .fd-rf-grid .rf-item{min-width:0}.fd-risk-kpis{margin:0}.fd-risk-kpis .bd-kpi{font:inherit;color:inherit;text-align:center;cursor:pointer}.fd-risk-kpis .bd-kpi.is-active{background:color-mix(in srgb,var(--bg-secondary) 88%,var(--accent-cyan) 6%)}@media(max-width:1100px){.fd-page{grid-template-columns:1fr}.fd-nav{position:static;max-height:none}.fd-nav ul{flex-direction:row;flex-wrap:wrap}.fd-nav-item{width:auto}}.bd-bs-ol-more{display:inline-flex;align-items:center;gap:2px;margin-left:auto;padding:1px 7px;border:1px solid color-mix(in srgb,var(--accent-cyan) 40%,transparent);border-radius:999px;font-size:.6rem;font-weight:600;letter-spacing:.02em;text-transform:none;text-shadow:none;color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 8%,transparent);white-space:nowrap;text-decoration:none;transition:background .12s}.bd-bs-ol-hint+.bd-bs-ol-more{margin-left:8px}.bd-bs-ol-more:hover{background:color-mix(in srgb,var(--accent-cyan) 22%,transparent)}.bd-bs-ol-more.is-compact{padding:1px 3px}.fd-owner-won{margin-left:6px;padding:0 5px;border-radius:8px;font-size:.64rem;font-weight:600;color:var(--accent-green);border:1px solid color-mix(in srgb,var(--accent-green) 40%,transparent)}.fd-xacxom{display:inline-block;margin-top:2px;font-size:.68rem;font-weight:600;color:var(--accent-orange, #f97316)}.fd-nav-subgroup{margin:.55rem 0 .15rem .6rem;font-size:.62rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.fd-risk-chart-box{padding:.25rem .75rem .5rem;border-bottom:1px solid var(--border-color);margin-bottom:.5rem}.fd-risk-summary{margin:0 .75rem .5rem;font-size:.8rem;color:var(--text-secondary)}.fd-info p{margin:0 0 .45rem;font-size:.78rem;line-height:1.5;color:var(--text-secondary)}.fd-info p:last-child{margin-bottom:0}.fd-info b{color:var(--text-primary)}.fd-info-caveat{padding-top:.35rem;border-top:1px dashed var(--border-color)}.fd-kind-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 .75rem .6rem}.fd-kind-chips button{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);font:inherit;font-size:.76rem;cursor:pointer}.fd-kind-chips button b{color:var(--text-primary);font-variant-numeric:tabular-nums}.fd-kind-chips button.active{border-color:var(--kind-color);background:color-mix(in srgb,var(--kind-color) 14%,transparent);color:var(--text-primary)}.fd-kind-dot{width:8px;height:8px;border-radius:50%;background:var(--kind-color)}.fd-dp-suspect{font-size:.64rem;color:var(--accent-orange, #f97316);white-space:nowrap}.fd-dp-ext{margin-left:6px;display:inline-flex;align-items:center;gap:2px;color:var(--accent-cyan);text-decoration:none}.fd-dp-ext:hover{text-decoration:underline}.fd-le{margin-top:2px;font-size:.64rem;font-weight:600}.fd-le-ok{color:var(--accent-green)}.fd-le-warn{color:var(--accent-orange, #f97316)}.fd-le-bad{color:var(--accent-red)}.fd-sd dl{display:grid;grid-template-columns:auto 1fr;gap:0 6px;margin:0 0 2px}.fd-sd dt{color:var(--text-muted);font-size:.66rem}.fd-sd dd{margin:0;font-size:.7rem}.fd-pair-chips,.fd-pair-sigs{display:flex;flex-wrap:wrap;gap:4px}.fd-pair-sigs{margin-bottom:3px}.fd-pair-chip{font-size:.7rem;padding:2px 8px;border-radius:999px;border:1px solid var(--c, var(--border-color));color:var(--c, var(--text-secondary));background:transparent;cursor:pointer;white-space:nowrap}.fd-pair-chip.static{cursor:default;padding:0 7px}.fd-pair-chip.on{background:var(--c);color:#fff}.fd-pair-chip.tone-red{--c: var(--accent-red)}.fd-pair-chip.tone-orange{--c: var(--accent-orange)}.fd-pair-chip.tone-yellow{--c: var(--accent-yellow)}.fd-pair-p{font-weight:700;font-variant-numeric:tabular-nums}.fd-pair-p.hi{color:var(--accent-red)}.fd-pair-p.mid{color:var(--accent-orange)}.fd-pair-p.lo{color:var(--text-secondary)}.fd-check{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-secondary);white-space:nowrap}.fd-lens{align-items:flex-start;padding-top:.5rem;padding-bottom:.5rem}.fd-lens svg{margin-top:2px}.fd-lens-text{display:flex;flex-direction:column;gap:1px;min-width:0}.fd-lens-text b{font-size:.82rem;font-weight:600}.fd-lens-text small{font-size:.68rem;color:var(--text-muted);white-space:normal;line-height:1.3}.fd-lens.active .fd-lens-text small{color:color-mix(in srgb,var(--accent-cyan) 70%,var(--text-muted))}.fd-lens-tabs{flex-wrap:wrap;padding:.35rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.fd-sig-group{display:flex;flex-direction:column;gap:.4rem}.fd-sig-group+.fd-sig-group{margin-top:.75rem}.fd-sig-title{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}button.fd-sig{font:inherit;text-align:left;cursor:pointer;transition:transform .12s,border-color .12s}button.fd-sig:hover{transform:translateY(-1px);border-color:var(--accent-cyan)}button.fd-sig:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:2px}.fd-unscoped{margin:0;padding:.45rem .75rem;border-radius:var(--radius-md);font-size:.76rem;color:var(--text-secondary);background:color-mix(in srgb,var(--accent-orange, #f59e0b) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent-orange, #f59e0b) 30%,transparent)}.fd-rt-filter{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 .75rem .6rem}.fd-rt-min{display:inline-flex;border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.fd-rt-min button{font:inherit;font-size:.74rem;padding:4px 10px;border:0;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer}.fd-rt-min button+button{border-left:1px solid var(--border-color)}.fd-rt-min button.active{background:color-mix(in srgb,var(--accent-cyan) 16%,transparent);color:var(--text-primary);font-weight:600}th.fd-sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}th.fd-sortable:hover{color:var(--text-primary)}.fd-stale{opacity:.55;transition:opacity .15s}.fd-rt-co td.name-cell{min-width:200px}.fd-graph-btn{display:inline-flex;align-items:center;gap:4px;font:inherit;font-size:.72rem;padding:3px 8px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--accent-cyan);cursor:pointer;white-space:nowrap}.fd-graph-btn:hover:not(:disabled){border-color:var(--accent-cyan)}.fd-graph-btn:disabled{opacity:.6;cursor:wait}.fd-page{gap:0;align-items:stretch;min-height:100vh;transition:grid-template-columns .2s ease}.fd-page.nav-closed{grid-template-columns:52px minmax(0,1fr)}.fd-page>.fd-nav{top:0;height:100vh;max-height:100vh;border:0;border-right:1px solid var(--border-color);border-radius:0;padding:0 .5rem 1rem!important}.fd-nav-title{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:0 -.5rem .5rem;padding:0 .6rem 0 1.05rem;box-sizing:border-box;border-bottom:1px solid var(--border-color);white-space:nowrap}.fd-page>.fd-nav.bd-bs-ol-panel>.fd-nav-title{height:var(--app-head-h)!important;min-height:var(--app-head-h);flex:0 0 auto}.fd-nav-fold{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;padding:0;border:0;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer}.fd-nav-fold:hover{background:var(--hover-overlay, rgba(255, 255, 255, .06));color:var(--text-primary)}.fd-page.nav-closed .fd-nav-title{justify-content:center;padding:0}.fd-page.nav-closed .fd-nav-title>span,.fd-page.nav-closed .fd-lens-text{display:none}.fd-page.nav-closed .fd-nav-item{justify-content:center;padding:.55rem 0}.fd-page.nav-closed .fd-lens svg{margin-top:0}.fd-main{gap:0;padding-bottom:2rem}.fd-head{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:1rem;height:var(--app-head-h);padding:0 1.25rem;background:var(--bg-primary);border-bottom:1px solid var(--border-color)}.fd-head-title{display:inline-flex;align-items:center;gap:.45rem;flex-shrink:0;font-size:.95rem;font-weight:700;color:var(--text-primary)}.fd-head-title svg{color:var(--accent-cyan)}.fd-head-desc{font-size:.78rem;color:var(--text-muted)}.fd-head>.fd-lens-tabs{flex:1;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding:0;border:0;border-radius:0;background:transparent}.fd-head>.fd-lens-tabs button{flex-shrink:0;white-space:nowrap}.fd-main>.fd-filter .dfb{border:0;border-bottom:1px solid var(--border-color);border-radius:0;min-height:52px;padding:.5rem 1.25rem}.fd-main>.fd-unscoped{border-radius:0;border-width:0 0 1px;padding:.5rem 1.25rem}.fd-main>.bd-bs-ol-panel,.fd-page .fd-main>.bd-bs-ol-panel:hover{border:0;border-bottom:1px solid var(--border-color);border-radius:0;background:transparent;padding:1.1rem 1.25rem 1.25rem}.fd-main>.bd-bs-ol-panel:last-child{border-bottom:0}.fd-main>.fd-chart-panel{padding:1.1rem 1.25rem .9rem!important}.fd-main>.bd-bs-ol-panel>.bd-bs-ol-label{font-size:.72rem;padding-bottom:.6rem}.fd-main>.bd-bs-ol-panel .fd-risk-chart-box{padding:.25rem 0 .75rem;margin-bottom:.75rem}.fd-main>.bd-bs-ol-panel .fd-risk-summary,.fd-main>.bd-bs-ol-panel .fd-kind-chips,.fd-main>.bd-bs-ol-panel .fd-rt-filter{margin-left:0;margin-right:0}@media(max-width:1100px){.fd-page.nav-closed{grid-template-columns:1fr}.fd-page>.fd-nav{position:static;height:auto;max-height:none;border-right:0;border-bottom:1px solid var(--border-color)}.fd-nav-fold{display:none}.fd-page.nav-closed .fd-nav-title>span,.fd-page.nav-closed .fd-lens-text{display:revert}}@media(max-width:900px){.fd-head{position:static;height:auto;min-height:52px;flex-wrap:wrap;padding:.5rem .9rem}.fd-main>.fd-filter .dfb,.fd-main>.fd-unscoped,.fd-main>.bd-bs-ol-panel{padding-left:.9rem;padding-right:.9rem}}.up-page{display:flex;flex-direction:column;gap:.6rem;width:100%;min-height:100%;padding:0;background:var(--bg-primary);color:var(--text-primary)}.up-page code{font-family:var(--font-mono, monospace);font-size:.92em;padding:0 .25em;border-radius:3px;background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);color:var(--text-primary)}.up-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.up-title{display:flex;align-items:center;gap:.45rem;margin:0;font-size:1.05rem;font-weight:700;letter-spacing:.04em;color:var(--text-primary)}.up-title svg{color:var(--accent-cyan)}.up-subtitle{margin-top:2px;font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.04em}.up-header-actions{display:flex;gap:.4rem;flex-wrap:wrap}.up-primary-btn,.up-ghost-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .7rem;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:600;white-space:nowrap;cursor:pointer;transition:background .15s,color .15s,border-color .15s,opacity .15s}.up-primary-btn{border:1px solid var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 16%,transparent);color:var(--accent-cyan)}.up-primary-btn:hover:not(:disabled){background:var(--accent-cyan);color:var(--text-on-accent, #fff)}.up-ghost-btn{border:1px solid transparent;background:color-mix(in srgb,var(--accent-cyan) 8%,transparent);color:var(--text-secondary)}.up-ghost-btn:hover:not(:disabled){color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 14%,transparent)}.up-primary-btn:disabled,.up-ghost-btn:disabled,.up-icon-btn:disabled{opacity:.4;cursor:not-allowed}.up-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer}.up-icon-btn:hover:not(:disabled){color:var(--text-primary);background:var(--bg-tertiary)}.up-icon-btn.is-danger:hover:not(:disabled){color:var(--accent-red);background:color-mix(in srgb,var(--accent-red) 12%,transparent)}.up-spin{animation:up-spin .9s linear infinite}@keyframes up-spin{to{transform:rotate(360deg)}}.up-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem}.up-kpi{min-height:118px;padding:.6rem .4rem}.up-kpi.is-danger .bd-bs-kpi-card-icon{color:var(--accent-red);background:color-mix(in srgb,var(--accent-red) 16%,transparent)}.up-kpi.is-danger .bd-bs-kpi-card-value{color:var(--accent-red)}.up-kpi .bd-bs-kpi-card-sub{cursor:default}.up-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:.6rem;align-items:start}.up-main,.up-side{display:flex;flex-direction:column;gap:.6rem;min-width:0}.up-page .up-panel.bd-bs-ol-panel{height:auto;cursor:default;overflow:visible;gap:.5rem;padding:.65rem .8rem .75rem}.up-page .up-panel.bd-bs-ol-panel:hover{border-color:var(--border-color);background:var(--bg-secondary)}.up-page .up-panel.bd-bs-ol-panel>:not(.bd-bs-ol-label){flex:0 0 auto}.up-page .up-panel .bd-bs-ol-label{padding-bottom:.1rem}.up-count{margin-left:.2rem;padding:0 .4rem;border-radius:999px;background:color-mix(in srgb,var(--accent-cyan) 16%,transparent);font-size:.62rem;text-shadow:none}.up-alert{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:var(--radius-md);border:1px solid;font-size:var(--text-sm);line-height:1.45}.up-alert>.up-icon-btn{margin-left:auto}.up-alert.is-ok{border-color:color-mix(in srgb,var(--accent-green) 35%,transparent);background:color-mix(in srgb,var(--accent-green) 9%,transparent);color:var(--accent-green)}.up-alert.is-error{border-color:color-mix(in srgb,var(--accent-red) 35%,transparent);background:color-mix(in srgb,var(--accent-red) 9%,transparent);color:var(--accent-red)}.up-alert.is-warn{border-color:color-mix(in srgb,var(--accent-orange) 35%,transparent);background:color-mix(in srgb,var(--accent-orange) 9%,transparent);color:var(--accent-orange);display:block}.up-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.up-search{display:flex;align-items:center;gap:.35rem;padding:0 .5rem;height:28px;min-width:240px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-muted)}.up-search:focus-within{border-color:var(--accent-cyan)}.up-search input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--text-primary);font-size:var(--text-sm)}.up-search .up-icon-btn{width:18px;height:18px}.up-filters.bd-bs-subtabs button{flex:0 0 auto;padding:4px 10px}.up-table-wrap{overflow-x:auto;margin:0 -.8rem -.75rem}.up-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.up-table th{padding:.45rem .8rem;text-align:left;font-size:.62rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-primary) 60%,var(--bg-secondary));white-space:nowrap}.up-table td{padding:.55rem .8rem;border-bottom:1px solid color-mix(in srgb,var(--border-color) 60%,transparent);vertical-align:middle}.up-table tbody tr:last-child td{border-bottom:none}.up-table tbody tr:hover td{background:color-mix(in srgb,var(--accent-cyan) 4%,transparent)}.up-table tr.is-inactive .up-user{opacity:.55}.up-empty{text-align:center;color:var(--text-muted);padding:1.5rem!important}.up-actions{width:1%;text-align:right}.up-muted{color:var(--text-muted);font-size:var(--text-xs)}.up-mono{font-family:var(--font-mono, monospace);font-size:var(--text-xs);color:var(--text-secondary)}.up-user{display:flex;align-items:center;gap:.6rem;min-width:0}.up-avatar{flex-shrink:0;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-size:.78rem;font-weight:700;background:var(--bg-tertiary);color:var(--text-secondary)}.up-avatar.role-admin{background:color-mix(in srgb,var(--accent-cyan) 22%,transparent);color:var(--accent-cyan)}.up-avatar.role-vip{background:color-mix(in srgb,var(--accent-orange) 20%,transparent);color:var(--accent-orange)}.up-user-text{min-width:0}.up-user-name{display:flex;align-items:center;gap:.35rem;font-weight:600;color:var(--text-primary)}.up-user-sub{font-size:var(--text-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.up-tag{padding:0 .35rem;border-radius:3px;font-size:.6rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--bg-tertiary);color:var(--text-muted);white-space:nowrap}.up-tag.is-me{background:color-mix(in srgb,var(--accent-cyan) 18%,transparent);color:var(--accent-cyan)}.up-role{display:flex;align-items:center;gap:.4rem}.up-role-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.22rem 1.5rem .22rem .55rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%238a8f98' stroke-width='3'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right .45rem center;color:var(--text-primary);font-size:var(--text-sm);font-weight:600;cursor:pointer}.up-role-select:hover{border-color:var(--text-muted)}.up-role-select:focus{outline:none;border-color:var(--accent-cyan)}.up-role-select.role-admin{color:var(--accent-cyan);border-color:color-mix(in srgb,var(--accent-cyan) 40%,transparent)}.up-role-select.role-vip{color:var(--accent-orange);border-color:color-mix(in srgb,var(--accent-orange) 40%,transparent)}.up-role-select.role-none{color:var(--text-muted);border-style:dashed}.up-role-select option{background:var(--bg-secondary);color:var(--text-primary)}.up-source{display:inline-flex;align-items:center;gap:.2rem;padding:.05rem .4rem;border-radius:999px;font-size:.62rem;font-weight:600;color:var(--text-muted);border:1px solid var(--border-color);cursor:help;white-space:nowrap}.up-source.is-local{color:var(--accent-orange);border-color:color-mix(in srgb,var(--accent-orange) 40%,transparent)}.up-source-reset{display:inline-grid;place-items:center;width:16px;height:16px;padding:0;border:none;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.up-source-reset:hover:not(:disabled){background:color-mix(in srgb,var(--accent-orange) 20%,transparent)}.up-source-reset:disabled{opacity:.35;cursor:not-allowed}.up-role-hint{margin-top:2px;font-size:.62rem;color:var(--text-muted)}.up-switch{display:inline-flex;align-items:center;gap:.45rem;padding:0;border:none;background:transparent;color:var(--text-muted);font-size:var(--text-xs);font-weight:600;cursor:pointer}.up-switch-knob{position:relative;width:30px;height:16px;border-radius:999px;background:var(--bg-tertiary);border:1px solid var(--border-color);transition:background .15s,border-color .15s}.up-switch-knob:after{content:"";position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:var(--text-muted);transition:transform .15s,background .15s}.up-switch.on{color:var(--accent-green)}.up-switch.on .up-switch-knob{background:color-mix(in srgb,var(--accent-green) 30%,transparent);border-color:color-mix(in srgb,var(--accent-green) 50%,transparent)}.up-switch.on .up-switch-knob:after{transform:translate(14px);background:var(--accent-green)}.up-switch:not(.on) .up-switch-label{color:var(--accent-red)}.up-switch:disabled{cursor:not-allowed;opacity:.6}.up-pill{display:inline-flex;align-items:center;gap:.25rem;padding:.1rem .5rem;border-radius:999px;font-size:.66rem;font-weight:600;white-space:nowrap;border:1px solid}.up-pill.is-ok{color:var(--accent-green);border-color:color-mix(in srgb,var(--accent-green) 30%,transparent);background:color-mix(in srgb,var(--accent-green) 8%,transparent)}.up-online{gap:5px}.up-online-dot{width:7px;height:7px;border-radius:50%;background:var(--accent-green);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-green) 25%,transparent)}.up-pill.is-warn{color:var(--accent-orange);border-color:color-mix(in srgb,var(--accent-orange) 35%,transparent);background:color-mix(in srgb,var(--accent-orange) 9%,transparent)}.up-pill.is-danger{color:var(--accent-red);border-color:color-mix(in srgb,var(--accent-red) 35%,transparent);background:color-mix(in srgb,var(--accent-red) 10%,transparent);font-variant-numeric:tabular-nums}.up-lock{display:flex;align-items:center;gap:.35rem}.up-lock .up-ghost-btn{padding:.15rem .45rem;font-size:.66rem}.up-kc-cell{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.up-ic-ok{color:var(--accent-green)}.up-ic-warn{color:var(--accent-orange)}.up-kc-realm{font-weight:500;text-transform:none;letter-spacing:.02em;color:var(--text-muted);text-shadow:none}.up-kc-recheck{margin-left:auto;padding:.15rem .45rem;font-size:.62rem;text-transform:none;letter-spacing:0;text-shadow:none}.up-kc-state{display:flex;align-items:center;gap:.45rem;font-size:var(--text-sm)}.up-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.up-dot.ok{background:var(--accent-green);box-shadow:0 0 8px var(--accent-green)}.up-dot.warn{background:var(--accent-orange);box-shadow:0 0 8px var(--accent-orange)}.up-kc.is-off .up-kc-state b{color:var(--accent-orange)}.up-kc.is-ok .up-kc-state b{color:var(--accent-green)}.up-kc-text{margin:0;font-size:var(--text-xs);line-height:1.55;color:var(--text-secondary)}.up-kc-reason{padding:.4rem .55rem;border-radius:var(--radius-sm);border-left:2px solid var(--accent-orange);background:color-mix(in srgb,var(--accent-orange) 8%,transparent);font-size:var(--text-xs);line-height:1.5;color:var(--text-primary)}.up-kc-steps{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.3rem;font-size:var(--text-xs);line-height:1.55;color:var(--text-secondary)}.up-kc-link{display:inline-flex;align-items:center;gap:.25rem;align-self:flex-start;font-size:var(--text-xs);color:var(--accent-cyan);text-decoration:none}.up-kc-link:hover{text-decoration:underline}.up-help-list{margin:0;padding-left:1rem;display:flex;flex-direction:column;gap:.35rem;font-size:var(--text-xs);line-height:1.55;color:var(--text-secondary)}.up-help-list svg{display:inline-block;vertical-align:-1px}.up-provision-close{margin-left:auto}.up-note{display:flex;gap:.4rem;margin:0;font-size:var(--text-xs);line-height:1.5;color:var(--text-secondary)}.up-note svg{flex-shrink:0;margin-top:2px;color:var(--accent-cyan)}.up-form{display:flex;align-items:flex-end;gap:.6rem;flex-wrap:wrap}.up-field{display:flex;flex-direction:column;gap:.25rem;min-width:180px;flex:1 1 180px}.up-field--sm{flex:0 0 130px;min-width:130px}.up-field>span{font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.up-input,.up-select{height:30px;padding:0 .55rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);font-size:var(--text-sm);outline:none}.up-input:focus,.up-select:focus{border-color:var(--accent-cyan)}.up-input::-moz-placeholder{color:var(--text-muted)}.up-input::placeholder{color:var(--text-muted)}.up-check{display:flex;align-items:center;gap:.35rem;height:30px;font-size:var(--text-sm);color:var(--text-secondary)}.up-form .up-primary-btn{height:30px}@media(max-width:1599px){.up-grid{grid-template-columns:minmax(0,1fr)}.up-side{order:-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}}@media(max-width:1100px){.up-side{grid-template-columns:minmax(0,1fr)}.up-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.up-page{padding:0}.up-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.up-search{min-width:0;flex:1 1 100%}}.up-ev-time{color:var(--text-muted);white-space:nowrap}.up-ev-user{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.up-ev-feature{color:var(--accent-cyan);white-space:nowrap}.up-ev-action{white-space:nowrap}.up-ev-path{font-size:.66rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.up-password{display:flex;align-items:center;gap:4px}.up-password .up-input{flex:1;min-width:0;font-family:var(--font-mono, monospace);letter-spacing:.04em}.up-hint{display:block;margin-top:4px;font-size:.68rem;line-height:1.4;color:var(--text-muted)}.ug-new{display:flex;gap:.4rem;flex-wrap:wrap}.ug-new input,.ug-edit input{flex:1;min-width:140px;padding:.35rem .5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:.78rem}.ug-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.ug-item{border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.5rem .6rem;display:flex;flex-direction:column;gap:.4rem}.ug-head{display:flex;align-items:center;gap:.5rem}.ug-name{flex:1;min-width:0;display:flex;flex-direction:column;font-size:.82rem}.ug-name b{color:var(--text-primary)}.ug-name small{color:var(--text-muted);font-size:.7rem}.ug-members{display:flex;flex-wrap:wrap;gap:.3rem}.ug-chip{font-size:.7rem;padding:.1rem .45rem;border-radius:999px;border:1px solid var(--border-color);color:var(--text-secondary)}.ug-chip.is-off{opacity:.5;text-decoration:line-through}.ug-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.25rem .6rem;max-height:260px;overflow:auto;padding:.4rem;border:1px dashed var(--border-color);border-radius:var(--radius-sm)}.ug-picker label{display:flex;align-items:center;gap:.35rem;font-size:.76rem;color:var(--text-secondary);cursor:pointer}.ug-picker label small{color:var(--text-muted)}.ug-actions{display:flex;gap:.4rem}.ug-empty{font-size:.76rem;color:var(--text-muted)}.cmp-page{max-width:1400px;margin:0 auto;padding:0}.cmp-header{display:flex;align-items:center;gap:.6rem;margin-bottom:1.5rem}.cmp-header h1{font-size:1.3rem;font-weight:700;color:var(--text-primary)}.cmp-loading{display:flex;justify-content:center;padding:3rem}.cmp-error{color:var(--accent-red);font-size:var(--text-md)}.cmp-back{display:inline-flex;align-items:center;gap:.3rem;color:var(--accent-cyan);text-decoration:none;font-size:var(--text-md);margin-top:.5rem}.cmp-table-wrap{overflow-x:auto}.cmp-table{width:100%;border-collapse:collapse;font-size:var(--text-md)}.cmp-label-col{width:130px;padding:.5rem .7rem;color:var(--text-muted);font-weight:600;font-size:var(--text-base);text-transform:uppercase;letter-spacing:.03em;border-right:1px solid var(--border-color)}.cmp-tender-col{padding:.6rem .8rem;border:1px solid var(--border-color);background:var(--bg-secondary)}.cmp-tender-link{color:var(--text-primary);text-decoration:none;font-size:var(--text-md);font-weight:600;display:block}.cmp-tender-link:hover{color:var(--accent-cyan)}.cmp-tender-code{color:var(--text-muted);font-size:var(--text-sm);margin-top:2px;font-family:var(--font-mono)}.cmp-row-label{padding:.5rem .7rem;color:var(--text-muted);font-size:var(--text-base);font-weight:600;border-right:1px solid var(--border-color);white-space:nowrap}.cmp-cell{padding:.5rem .8rem;border:1px solid var(--border-color);color:var(--text-primary)}.cmp-cell.best{background:#22c55e1a;color:var(--accent-green);font-weight:600}.cmp-table tr:hover .cmp-cell{background:var(--hover-overlay)}.cmp-table tr:hover .cmp-cell.best{background:#22c55e26}@keyframes cmp-spin{to{transform:rotate(360deg)}}.cmp-spin{animation:cmp-spin .8s linear infinite}.td{display:flex;flex-direction:column;gap:.75rem}.td-hero{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;position:relative;overflow:hidden}.td-hero:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,rgb(var(--accent-primary-rgb)),transparent)}.td-hero-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:rgba(var(--accent-primary-rgb),.1);color:rgb(var(--accent-primary-rgb));flex-shrink:0}.td-hero-body{flex:1;min-width:0}.td-hero-title{font-size:1.15rem;font-weight:700;color:var(--text-primary);line-height:1.35;margin:0 0 .5rem}.td-hero-meta{display:flex;flex-wrap:wrap;gap:.4rem}.td-meta-tag{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--border-color);font-size:var(--text-sm);font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap}.td-hero-status{flex-shrink:0;padding-top:.15rem}.td-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.td-info-card{display:flex;align-items:flex-start;gap:.65rem;padding:.85rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:border-color .15s}.td-info-card:hover{border-color:var(--text-muted)}.td-info-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);flex-shrink:0}.td-info-icon.purple{background:#8b5cf61a;color:var(--accent-purple)}.td-info-icon.blue{background:rgba(var(--accent-primary-rgb),.1);color:var(--accent-blue)}.td-info-icon.cyan{background:rgba(var(--accent-primary-rgb),.1);color:rgb(var(--accent-primary-rgb))}.td-info-icon.green{background:#22c55e1a;color:var(--accent-green)}.td-info-icon.muted{background:var(--bg-tertiary);color:var(--text-muted)}.td-info-content{display:flex;flex-direction:column;gap:.15rem;min-width:0}.td-info-label{font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.td-info-value{font-size:var(--text-md);font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis}.td-info-value.td-info-link a{color:var(--accent-cyan);text-decoration:none;transition:opacity .15s}.td-info-value.td-info-link a:hover{opacity:.75}.td-info-card.td-info-budget .td-info-value{font-family:var(--font-mono);font-size:var(--text-xl);font-weight:700}.td-no-winner{color:var(--text-muted);font-weight:400;font-style:italic}.td-winner-price{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--accent-green);font-weight:600}.td-bidders{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.td-bidders-header{display:flex;align-items:center;gap:.45rem;padding:.7rem .85rem;border-bottom:1px solid var(--border-color);background:var(--card-bg-light)}.td-bidders-header svg{color:var(--text-muted);flex-shrink:0}.td-bidders-header h3{font-size:var(--text-base);font-weight:700;color:var(--text-secondary);margin:0;flex:1}.td-bidders-list{display:flex;flex-direction:column}.td-bidder-row{display:flex;align-items:center;gap:.5rem;padding:.55rem .85rem;border-bottom:1px solid var(--border-color);transition:background .1s}.td-bidder-row:last-child{border-bottom:none}.td-bidder-row:hover{background:var(--hover-overlay)}.td-bidder-row.won{background:#22c55e0a}.td-bidder-row.won:hover{background:#22c55e14}.td-bidder-rank{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--bg-tertiary);font-size:var(--text-xs);font-weight:700;font-family:var(--font-mono);color:var(--text-muted);flex-shrink:0}.td-bidder-row.won .td-bidder-rank{background:#22c55e26;color:var(--accent-green)}.td-bidder-info{flex:1;display:flex;align-items:center;gap:.5rem;min-width:0}.td-bidder-name{flex:1;font-size:var(--text-base);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-bidder-name a{color:var(--text-primary);text-decoration:none;font-weight:500;transition:color .15s}.td-bidder-name a:hover{color:var(--accent-cyan)}.td-bidder-price{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--text-muted);flex-shrink:0;white-space:nowrap}.td-bidder-reason{font-size:.74rem;color:var(--text-muted);font-style:italic;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:900px){.td-info-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.td-hero{flex-direction:column;gap:.75rem}.td-info-grid{grid-template-columns:1fr}}.td-red-flags{margin-bottom:1rem;padding:.7rem .85rem;background:#ef44440d;border:1px solid rgba(239,68,68,.18);border-radius:var(--radius-lg)}.td-red-flags-title{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent-red);margin-bottom:.5rem}.td-red-flags-list{display:flex;flex-direction:column;gap:4px}.td-red-flag-item{display:flex;align-items:center;gap:6px;font-size:var(--text-base);font-weight:500;padding:.25rem .4rem;border-radius:var(--radius-sm)}.td-red-flag-item.risk-critical{color:var(--accent-red);background:#ef444414}.td-red-flag-item.risk-high{color:var(--accent-orange);background:#f9731614}.td-red-flag-item.risk-medium{color:var(--accent-yellow);background:#eab30814}.td-price-analysis{margin-bottom:1rem;padding:.7rem .85rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.td-price-analysis-title{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:.6rem}.td-price-analysis-row{display:flex;gap:1.5rem;flex-wrap:wrap}.td-price-stat{display:flex;flex-direction:column;gap:2px;min-width:120px}.td-price-stat-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.td-price-stat-value{font-size:var(--text-md);font-weight:700;color:var(--text-primary);font-family:var(--font-mono);display:flex;align-items:center;gap:2px}.td-price-chart{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:.5rem}.td-price-chart-header{display:flex;align-items:center;gap:.5rem;padding:.65rem .85rem;border-bottom:1px solid var(--border-color);font-size:var(--text-base);font-weight:600;color:var(--text-secondary)}.td-price-chart-header h3{margin:0;font-size:var(--text-base);font-weight:600;color:var(--text-secondary)}.td-price-chart-body{padding:.85rem .85rem .5rem}.td-price-chart-legend{display:flex;gap:1rem;font-size:var(--text-sm);color:var(--text-muted);margin-top:.5rem;padding-top:.4rem;border-top:1px solid var(--border-color);align-items:center}.td-price-chart-legend span{display:flex;align-items:center;gap:4px}.td-pcl-dot{display:inline-block;width:10px;height:10px;border-radius:2px;background:#06b6d48c}.td-pcl-dot.won{background:var(--accent-green);opacity:1}.td-pcl-line{display:inline-block;width:16px;height:2px;background:var(--accent-orange);border-radius:1px}.bd-risk-breakdown-body{padding:.75rem 1rem;display:flex;flex-direction:column;gap:.55rem}.bd-rf-factor{display:grid;grid-template-columns:130px 1fr 60px;align-items:center;gap:.5rem}.bd-rf-label{font-size:var(--text-base);color:var(--text-muted);white-space:nowrap}.bd-rf-bar-wrap{height:6px;background:var(--border-color);border-radius:3px;overflow:hidden}.bd-rf-bar{height:100%;border-radius:3px;transition:width .4s ease;min-width:2px}.bd-rf-bar.critical{background:var(--accent-red)}.bd-rf-bar.high{background:var(--accent-orange)}.bd-rf-bar.medium{background:var(--accent-yellow)}.bd-rf-bar.low{background:var(--accent-cyan)}.bd-rf-value{font-size:var(--text-sm);font-weight:700;font-family:var(--font-mono);color:var(--text-secondary);text-align:right}.bd-rf-value.critical{color:var(--accent-red)}.bd-rf-value.high{color:var(--accent-orange)}.bd-rf-value.medium{color:var(--accent-yellow)}.bd-rf-value.low{color:var(--accent-cyan)}.bd-rf-note{font-size:var(--text-sm);color:var(--text-muted);line-height:1.4;margin-top:.25rem;padding-top:.5rem;border-top:1px solid var(--border-color)}.bd-card-count.critical{color:var(--accent-red)}.bd-card-count.high{color:var(--accent-orange)}.bd-card-count.medium{color:var(--accent-yellow)}.bd-card-count.low{color:var(--accent-cyan)}.not-found-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem;padding:2rem;text-align:center}.not-found-icon{color:var(--accent-red);opacity:.8}.not-found-code{font-size:2.5rem;font-weight:800;color:var(--text-primary);margin:0;letter-spacing:-.05em}.not-found-message{color:var(--text-muted);font-size:var(--text-xl);margin:0}.not-found-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;background:rgb(var(--accent-primary-rgb));color:#fff;border-radius:var(--radius-md);text-decoration:none;font-size:var(--text-md);font-weight:600;margin-top:.5rem;transition:opacity .15s}.not-found-btn:hover{opacity:.88}.td2-page{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:1400px;margin:0 auto;padding:0}.td2-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.td2-breadcrumb{display:flex;align-items:center;gap:.35rem;font-size:var(--text-sm);color:var(--text-muted)}.td2-bc-sep{color:var(--border-color);flex-shrink:0}.td2-bc-item{color:var(--text-muted)}.td2-bc-current{color:var(--text-secondary);font-weight:500}.td2-topbar-actions{display:flex;align-items:center;gap:.45rem}.td2-btn{display:inline-flex;align-items:center;gap:.35rem;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;cursor:pointer;border:none;transition:opacity .15s,background .15s;padding:.4rem .75rem;white-space:nowrap}.td2-btn-ghost-sm{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.td2-btn-ghost-sm:hover{background:var(--hover-overlay)}.td2-btn-primary-sm{background:rgb(var(--accent-primary-rgb));color:#fff;border:1px solid transparent}.td2-btn-primary-sm:hover{opacity:.88}.td2-btn-cyan-sm{background:#06b6d426;color:var(--accent-cyan);border:1px solid rgba(6,182,212,.35)}.td2-btn-cyan-sm:hover{background:#06b6d440}.td2-back-btn{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:600;color:#ffffffe0;background:#fff3;border:1px solid rgba(255,255,255,.4);border-radius:6px;cursor:pointer;padding:.25rem .6rem;transition:background .15s,color .15s}.td2-back-btn:hover{background:#ffffff59;color:#fff}.td2-hero{margin-left:-1.5rem;margin-right:-1.5rem;overflow:hidden;border-bottom:1px solid var(--border-color);position:relative}.td2-hero-banner{height:80px;background:linear-gradient(120deg,#0e7490,#0891b2 40%,#06b6d4 75%,#67e8f9);display:flex;align-items:flex-start;padding:.65rem 1.75rem 0}.td2-hero-icon-box{position:absolute;top:52px;left:1.75rem;z-index:2;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:10px;background:#fff;color:#0e7490;box-shadow:0 2px 10px #0003;border:2.5px solid var(--bg-secondary)}.td2-hero-info{display:flex;align-items:center;gap:1rem;padding:.75rem 1.75rem 1.25rem calc(3rem + 56px);background:var(--bg-secondary);position:relative}.td2-hero-body{flex:1;min-width:0}.td2-hero-title{font-size:1.15rem;font-weight:700;color:var(--text-primary);line-height:1.35;margin:0 0 .2rem}.td2-hero-code{font-size:var(--text-sm);color:var(--text-muted);font-family:var(--font-mono);margin:0 0 .5rem}.td2-hero-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.td2-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--border-color);font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap}.td2-hero-actions{display:flex;flex-direction:column;gap:.4rem;flex-shrink:0;align-items:stretch;min-width:120px}@media(max-width:700px){.td2-hero-info{flex-wrap:wrap}.td2-hero-actions{flex-direction:row;min-width:0}}.td2-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}.td2-stat-card{display:flex;flex-direction:column;gap:.3rem;padding:.85rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.td2-stat-label{font-size:.6rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.td2-stat-value{font-size:var(--text-xl);font-weight:700;color:var(--text-primary);line-height:1.2}.td2-stat-mono{font-family:var(--font-mono)}.td2-stat-dash{color:var(--text-muted);font-weight:400}.td2-stat-status{font-size:var(--text-md)}.td2-stat-sub{font-size:var(--text-xs);color:var(--text-muted);font-style:italic}@media(max-width:900px){.td2-stat-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.td2-stat-row{grid-template-columns:1fr}}.td2-tabs{display:flex;gap:0;border-bottom:2px solid var(--border-color);overflow-x:auto}.td2-tab{display:inline-flex;align-items:center;gap:.35rem;padding:.55rem 1rem;font-size:var(--text-base);font-weight:500;color:var(--text-muted);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s}.td2-tab:hover{color:var(--text-secondary)}.td2-tab-active{color:rgb(var(--accent-primary-rgb));border-bottom-color:rgb(var(--accent-primary-rgb));font-weight:600}.td2-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--bg-tertiary);font-size:var(--text-xs);font-weight:700;color:var(--text-muted)}.td2-tab-active .td2-tab-count{background:rgba(var(--accent-primary-rgb),.15);color:rgb(var(--accent-primary-rgb))}.td2-layout{display:grid;grid-template-columns:1fr 340px;gap:1rem;align-items:start}@media(max-width:900px){.td2-layout{grid-template-columns:1fr}}.td2-main{display:flex;flex-direction:column;gap:.75rem}.td2-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem 1.1rem}.td2-section-title{font-size:var(--text-md);font-weight:700;color:var(--text-secondary);margin:0 0 .65rem}.td2-section-body{font-size:var(--text-base);color:var(--text-muted);line-height:1.65;margin:0}.td2-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0}.td2-info-row{display:flex;align-items:center;gap:.5rem;padding:.45rem 0;border-bottom:1px solid var(--border-color)}.td2-info-row:nth-last-child(-n+2){border-bottom:none}.td2-info-key{font-size:var(--text-sm);color:var(--text-muted);min-width:130px;flex-shrink:0}.td2-info-val{font-size:var(--text-base);font-weight:500;color:var(--text-primary);display:flex;align-items:center}.td2-mono{font-family:var(--font-mono)}@media(max-width:600px){.td2-info-grid{grid-template-columns:1fr}.td2-info-row:nth-last-child(-n+2){border-bottom:1px solid var(--border-color)}.td2-info-row:last-child{border-bottom:none}}.td2-warning-box{background:#f59e0b0f;border:1px solid rgba(245,158,11,.25);border-radius:var(--radius-lg);padding:.85rem 1rem}.td2-warning-title{display:flex;align-items:center;gap:.4rem;font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-yellow);margin-bottom:.55rem}.td2-warning-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.td2-warning-item{display:flex;align-items:center;gap:.4rem;font-size:var(--text-base);font-weight:500;padding:.25rem .4rem;border-radius:var(--radius-sm)}.td2-flag-critical{color:var(--accent-red);background:#ef444414}.td2-flag-high{color:var(--accent-orange);background:#f9731614}.td2-flag-medium{color:var(--accent-yellow);background:#eab30814}.td2-sidebar{display:flex;flex-direction:column;gap:.6rem}.td2-side-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:.85rem 1rem}.td2-side-card-label{display:block;font-size:.6rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.55rem}.td2-side-card-body{display:flex;align-items:flex-start;gap:.5rem}.td2-side-icon{color:var(--text-muted);flex-shrink:0;margin-top:1px}.td2-side-link{font-size:var(--text-base);font-weight:500;color:var(--accent-cyan);text-decoration:none;line-height:1.4;transition:opacity .15s}.td2-side-link:hover{opacity:.75}.td2-side-text{font-size:var(--text-base);color:var(--text-primary);line-height:1.4}.td2-side-muted{font-size:var(--text-base);color:var(--text-muted);font-style:italic}.td2-side-card-warning{background:#f59e0b0d;border-color:#f59e0b38}.td2-side-label-warning{color:var(--accent-yellow)}.td2-side-flag-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}.td2-side-flag{font-size:var(--text-sm);font-weight:500;padding:.2rem .35rem;border-radius:var(--radius-sm)}.td2-tab-panel{display:flex;flex-direction:column;gap:.75rem}.td2-empty-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;padding:3rem 1rem;color:var(--text-muted);font-size:var(--text-base);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.td2-empty-icon{color:var(--text-muted);opacity:.45}.td2-timeline{display:flex;flex-direction:column;gap:0;padding:.5rem 0}.td2-tl-item{display:flex;gap:1rem;position:relative;padding-bottom:1.75rem}.td2-tl-item:last-child{padding-bottom:0}.td2-tl-item:before{content:"";position:absolute;left:7px;top:16px;bottom:0;width:2px;background:var(--border-color)}.td2-tl-item:last-child:before{display:none}.td2-tl-dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--border-color);background:var(--bg-secondary);flex-shrink:0;margin-top:2px;position:relative;z-index:1}.td2-tl-done .td2-tl-dot{background:var(--accent-cyan);border-color:var(--accent-cyan)}.td2-tl-active .td2-tl-dot{background:var(--bg-secondary);border-color:var(--accent-cyan);box-shadow:0 0 0 3px rgba(var(--accent-primary-rgb),.15)}.td2-tl-pending .td2-tl-dot{background:var(--bg-tertiary);border-color:var(--border-color)}.td2-tl-content{display:flex;flex-direction:column;gap:.2rem}.td2-tl-label{font-size:.85rem;font-weight:700;color:var(--text-primary)}.td2-tl-done .td2-tl-label{color:var(--text-primary)}.td2-tl-pending .td2-tl-label{color:var(--text-muted)}.td2-tl-date{font-size:.82rem;font-weight:600;color:var(--accent-cyan)}.td2-tl-pending .td2-tl-date{color:var(--text-muted)}.td2-tl-desc{font-size:.76rem;color:var(--text-muted)}.td2-tl-badge{display:inline-block;padding:.1rem .55rem;border-radius:20px;background:rgba(var(--accent-primary-rgb),.12);color:var(--accent-cyan);font-size:.72rem;font-weight:700;width:-moz-fit-content;width:fit-content}.tc-panel{gap:.75rem}.tc-panel .td2-section-title{display:flex;align-items:center;gap:.4rem}.tc-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding-bottom:.7rem;margin-bottom:.3rem;border-bottom:1px solid var(--border-color)}.tc-head-name{font-size:var(--text-lg);font-weight:700;color:var(--text-primary);text-decoration:none;line-height:1.35}.tc-head-name:hover{color:var(--accent-cyan)}.tc-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin:.8rem 0}@media(max-width:760px){.tc-stat-row{grid-template-columns:repeat(2,1fr)}}.tc-stat{display:flex;flex-direction:column;gap:.15rem;background:var(--card-bg-light);border:1px solid var(--border-color);border-radius:var(--radius-md, 8px);padding:.55rem .65rem;min-width:0}.tc-stat-label{font-size:var(--text-xs);font-weight:600;letter-spacing:.03em;color:var(--text-muted)}.tc-stat-value{font-size:var(--text-md);font-weight:700;color:var(--text-primary);font-family:var(--font-mono);overflow-wrap:anywhere}.tc-stat-sub{font-size:var(--text-xs);color:var(--text-muted)}.tc-signal{display:flex;align-items:flex-start;gap:.5rem;background:#f59e0b14;border:1px solid rgba(245,158,11,.28);border-radius:var(--radius-md, 8px);padding:.6rem .7rem;margin:.2rem 0 .8rem;font-size:var(--text-base);line-height:1.55;color:var(--text-secondary)}.tc-signal svg{color:var(--accent-orange);flex-shrink:0;margin-top:2px}.tc-signal strong{color:var(--text-primary)}.tc-block{margin-top:.9rem}.tc-block-title{display:flex;align-items:center;gap:.4rem;font-size:var(--text-base);font-weight:700;color:var(--text-secondary);margin:0 0 .5rem}.tc-block-title svg{color:var(--text-muted)}.tc-count{font-size:var(--text-xs);font-weight:600;color:var(--text-muted);background:var(--bg-tertiary);border-radius:999px;padding:.05rem .4rem}.tc-table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.tc-table th{text-align:left;font-size:var(--text-xs);font-weight:600;letter-spacing:.02em;color:var(--text-muted);padding:.35rem .5rem;border-bottom:1px solid var(--border-color);white-space:nowrap}.tc-table td{padding:.4rem .5rem;border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:top}.tc-table tr:last-child td{border-bottom:none}.tc-table tr:hover td{background:var(--card-bg-light)}.tc-table a{color:var(--text-primary);text-decoration:none}.tc-table a:hover{color:var(--accent-cyan);text-decoration:underline}.tc-table .tc-num{text-align:right;font-family:var(--font-mono);white-space:nowrap}.tc-table tr.tc-row-hl td{background:#f59e0b17;font-weight:600}.tc-person-list{display:flex;flex-direction:column}.tc-person{display:grid;grid-template-columns:1.1fr 1.3fr 1.5fr auto;gap:.5rem;align-items:baseline;padding:.4rem .5rem;border-bottom:1px solid var(--border-color);font-size:var(--text-base)}.tc-person:last-child{border-bottom:none}@media(max-width:760px){.tc-person{grid-template-columns:1fr;gap:.1rem}}.tc-person-name{font-weight:700;color:var(--text-primary)}.tc-person-pos{color:var(--text-secondary)}.tc-person-org{color:var(--text-muted)}.tc-person-meta{display:flex;align-items:center;gap:.35rem;font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono);white-space:nowrap}.tc-fuzzy{font-family:var(--font-sans, inherit);background:var(--bg-tertiary);border-radius:999px;padding:.05rem .4rem}.tc-note{font-size:var(--text-xs);color:var(--text-muted);line-height:1.6;margin:.5rem 0 0}.tc-empty{display:flex;align-items:center;gap:.45rem;font-size:var(--text-base);color:var(--text-muted);font-style:italic;padding:.6rem .2rem}.tc-empty svg{flex-shrink:0}.td2-reannounce-badge{margin-left:.5rem;padding:1px 8px;border:1px solid color-mix(in srgb,var(--accent-orange) 55%,transparent);border-radius:var(--radius-full);background:color-mix(in srgb,var(--accent-orange) 12%,transparent);color:var(--accent-orange);font-size:var(--text-xs);font-weight:600;cursor:pointer}.td2-reannounce-badge:hover{background:color-mix(in srgb,var(--accent-orange) 22%,transparent)}.td2-round-note{margin-left:auto;font-size:var(--text-xs);color:var(--text-muted)}.td2-section-title:has(>svg){display:flex;align-items:center;gap:.4rem}.td2-history-intro{margin-bottom:.75rem}.td2-history-wrap{overflow-x:auto}.td2-history{width:100%;border-collapse:collapse;font-size:var(--text-md)}.td2-history th{text-align:left;padding:.5rem .65rem;font-size:var(--text-xs);font-weight:600;color:var(--text-muted);border-bottom:1px solid var(--border-color);white-space:nowrap}.td2-history td{padding:.55rem .65rem;border-bottom:1px solid color-mix(in srgb,var(--border-color) 60%,transparent);vertical-align:middle}.td2-history .num{text-align:right;font-variant-numeric:tabular-nums}.td2-history tr.is-current td{background:color-mix(in srgb,var(--accent-cyan) 7%,transparent)}.td2-history-current{margin-left:.4rem;padding:0 6px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--accent-cyan) 18%,transparent);color:var(--accent-cyan);font-size:var(--text-xs);font-weight:600}.td2-history-price{color:var(--text-muted);font-variant-numeric:tabular-nums}.td2-history-none{color:var(--text-muted);font-style:italic}.settings-section-head{display:flex;align-items:center;gap:8px;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.settings-section-head h3{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary)}.settings-section-head svg{color:var(--accent-cyan);flex-shrink:0}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem .85rem;margin-top:.35rem;border-radius:10px;background:var(--bg-tertiary);border:1px solid var(--border-color);transition:background .15s,border-color .15s}.settings-row:first-of-type{margin-top:0}.settings-row:hover{background:var(--hover-overlay);border-color:color-mix(in srgb,var(--accent-cyan) 35%,var(--border-color))}.settings-row .fb-pill-tab{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-primary)}.settings-row .fb-pill-tab:hover{background:var(--hover-overlay);border-color:var(--accent-cyan);color:var(--accent-cyan)}.settings-row .fb-pill-tab:disabled{opacity:.5;background:var(--card-bg)}.settings-row-title{font-size:.92rem;font-weight:600;color:var(--text-primary)}.settings-row-sub{margin-top:2px;font-size:.8rem;color:var(--text-secondary);line-height:1.35}.settings-row--toggle{cursor:pointer}.settings-row--toggle input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:40px;height:22px;border-radius:999px;background:var(--bg-tertiary);position:relative;cursor:pointer;transition:background .15s;flex-shrink:0;margin:0}.settings-row--toggle input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .15s}.settings-row--toggle input[type=checkbox]:checked{background:var(--accent-cyan)}.settings-row--toggle input[type=checkbox]:checked:after{transform:translate(18px)}.help-quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.65rem;margin-top:.25rem}.help-quick-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:.85rem .95rem;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-tertiary);color:var(--text-primary);text-decoration:none;transition:background .15s,border-color .15s,transform .15s}.help-quick-card:hover{background:var(--hover-overlay);border-color:color-mix(in srgb,var(--accent-cyan) 40%,var(--border-color));transform:translateY(-1px)}.help-quick-card svg{color:var(--accent-cyan);margin-bottom:2px}.help-quick-card span{font-size:.92rem;font-weight:700}.help-quick-card small{font-size:.74rem;color:var(--text-secondary);font-weight:500}.help-faq-list{display:flex;flex-direction:column}.help-faq-item{border-top:1px solid var(--border-color)}.help-faq-item:first-child{border-top:0}.help-faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:.85rem 0;background:transparent;border:0;color:var(--text-primary);font-family:var(--font-sans);font-size:.92rem;font-weight:600;cursor:pointer;text-align:left}.help-faq-q:hover{color:var(--accent-cyan)}.help-faq-q svg{flex-shrink:0;color:var(--text-secondary)}.help-faq-item.open .help-faq-q svg{color:var(--accent-cyan)}.help-faq-a{margin:0 0 .85rem;font-size:.88rem;line-height:1.55;color:var(--text-secondary);padding-right:24px}.help-kbd-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.5rem}.help-kbd-row{display:flex;align-items:center;gap:6px;padding:.4rem .55rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-tertiary);font-size:.82rem;color:var(--text-secondary)}.help-kbd-row span{margin-left:auto;color:var(--text-primary);font-weight:600}.help-kbd-row kbd{font-family:var(--font-mono);font-size:.72rem;padding:2px 6px;border-radius:4px;background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-primary)}.help-contact-text{margin:0 0 .65rem;font-size:.9rem;color:var(--text-secondary)}.help-contact-list{display:flex;flex-wrap:wrap;gap:.5rem}.help-contact-link{display:inline-flex;align-items:center;gap:6px;padding:.5rem .85rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);text-decoration:none;font-size:.88rem;font-weight:600;transition:background .15s,color .15s}.help-contact-link:hover{background:color-mix(in srgb,var(--accent-cyan) 14%,transparent);color:var(--accent-cyan)}.direct-purchases-filters{display:flex;flex-wrap:wrap;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}.direct-purchases-search{display:flex;align-items:center;gap:.5rem;min-width:240px;max-width:360px;padding:.4rem .6rem;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary)}.direct-purchases-search:focus-within{border-color:var(--accent-cyan);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-cyan) 15%,transparent)}.direct-purchases-search-input{flex:1;min-width:0;border:none;background:transparent;color:var(--text-primary);font-size:var(--text-lg);outline:none}.direct-purchases-search-input::-moz-placeholder{color:var(--text-muted)}.direct-purchases-search-input::placeholder{color:var(--text-muted)}.direct-purchases-search-btn{padding:.3rem .6rem;font-size:var(--text-md);border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);cursor:pointer}.direct-purchases-search-btn:hover{background:var(--accent-cyan);border-color:var(--accent-cyan);color:var(--text-on-accent)}.direct-purchases-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.direct-purchases-filter-row label{display:flex;align-items:center;gap:.5rem}.direct-purchases-filter-row .filter-label{font-size:var(--text-md);color:var(--text-muted);white-space:nowrap}.direct-purchases-select{padding:.35rem .6rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-size:var(--text-lg)}.direct-purchases-meta{display:flex;align-items:center;gap:.75rem;font-size:var(--text-md);color:var(--text-muted)}.direct-purchases-search-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .4rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent-cyan) 12%,transparent);color:var(--text-primary);font-size:var(--text-md)}.direct-purchases-search-tag button{padding:0 .2rem;border:none;background:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-xl);line-height:1}.direct-purchases-search-tag button:hover{color:var(--accent-cyan)}.direct-purchases-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem 0;margin-top:.5rem}.direct-purchases-pagination .pagination-btn{padding:.4rem .75rem;font-size:var(--text-lg);border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer}.direct-purchases-pagination .pagination-btn:hover:not(:disabled){background:var(--hover-overlay);border-color:var(--accent-cyan);color:var(--accent-cyan)}.direct-purchases-pagination .pagination-btn:disabled{opacity:.5;cursor:not-allowed}.direct-purchases-pagination .pagination-info{font-size:var(--text-md);color:var(--text-muted)}.fp-dp-link{color:var(--accent-cyan);text-decoration:none;font-weight:500}.fp-dp-link:hover{text-decoration:underline}.bd{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:1400px;margin:0 auto}.bd.bd-overview-dark{max-width:none}.bd-header{margin-bottom:.35rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.bd-relations-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.bd-relations-header>.sp-type-toggle{justify-self:start}.bd-relations-header>.sp-type-btn:last-child{justify-self:end}.bd-relations-view-toggle{display:inline-flex;align-items:center;gap:4px;justify-self:center;background:var(--bg-tertiary);border-radius:999px;padding:3px}.bd-relations-view-toggle .bd-bs-tab-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:600;border:0;border-radius:999px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.bd-relations-view-toggle .bd-bs-tab-btn:hover{color:var(--text-primary);background:var(--hover-overlay)}.bd-relations-view-toggle .bd-bs-tab-btn.active{color:#fff;background:var(--accent-cyan)}@media(max-width:640px){.bd-relations-header{grid-template-columns:1fr auto}.bd-relations-view-toggle{grid-column:1 / -1;justify-self:start}}.bd-breadcrumb{display:flex;align-items:center;gap:.4rem;margin-bottom:.6rem;font-size:var(--text-sm);color:var(--text-muted)}.bd-breadcrumb a{color:var(--text-muted);text-decoration:none;transition:color .15s}.bd-breadcrumb a:hover{color:var(--accent-cyan)}.bd-back{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-muted);cursor:pointer;transition:all .15s;margin-right:.25rem}.bd-back:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-muted)}.bd-title-row{display:flex;align-items:flex-start;gap:.75rem}.bd-entity-avatar{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);color:var(--accent-cyan);flex-shrink:0}.bd-entity-avatar.blue{background:color-mix(in srgb,var(--accent-blue) 10%,transparent);color:var(--accent-blue)}.bd-entity-avatar.purple{background:color-mix(in srgb,var(--accent-purple) 10%,transparent);color:var(--accent-purple)}.bd-title-info{flex:1;min-width:0}.bd-name{font-size:1.2rem;font-weight:700;line-height:1.35;margin:0;letter-spacing:-.01em}.bd-register{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.02em}.bd-risk-badge{flex-shrink:0;margin-left:auto;padding:.3rem .65rem;border-radius:999px;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.bd-risk-badge.critical{background:color-mix(in srgb,var(--accent-red) 12%,transparent);color:var(--accent-red);border:1px solid color-mix(in srgb,var(--accent-red) 30%,transparent)}.bd-risk-badge.high{background:color-mix(in srgb,var(--accent-orange) 12%,transparent);color:var(--accent-orange);border:1px solid color-mix(in srgb,var(--accent-orange) 30%,transparent)}.bd-risk-badge.medium{background:color-mix(in srgb,var(--accent-yellow) 12%,transparent);color:var(--accent-yellow);border:1px solid color-mix(in srgb,var(--accent-yellow) 30%,transparent)}.bd-risk-badge.low{background:color-mix(in srgb,var(--accent-green) 12%,transparent);color:var(--accent-green);border:1px solid color-mix(in srgb,var(--accent-green) 30%,transparent)}.bd-alert{display:flex;align-items:center;gap:.5rem;padding:.55rem .85rem;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;background:color-mix(in srgb,var(--accent-red) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent-red) 25%,transparent);color:var(--accent-red)}.bd-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.bd-kpi{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:.85rem .85rem .75rem;text-align:center;transition:border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.bd-kpi:hover{border-color:color-mix(in srgb,var(--accent-cyan) 30%,transparent);box-shadow:0 0 12px color-mix(in srgb,var(--accent-cyan) 6%,transparent)}.bd-kpi-value{font-size:1.35rem;font-weight:700;font-family:var(--font-mono);color:var(--text-primary);line-height:1.2;margin-bottom:.2rem;transition:color .3s}.bd-kpi:hover .bd-kpi-value{color:var(--accent-cyan)}.bd-kpi-label{font-size:.6rem;font-weight:600;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.bd-kpi-bar{position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--bg-tertiary)}.bd-kpi-bar-fill{height:100%;transition:width .5s ease}.bd-kpi-bar-fill.low{background:var(--accent-green)}.bd-kpi-bar-fill.medium{background:var(--accent-yellow)}.bd-kpi-bar-fill.high{background:var(--accent-orange)}.bd-kpi-bar-fill.critical{background:var(--accent-red)}.bd-panels{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;align-items:stretch}.bd-panels-2col{grid-template-columns:1fr 1fr}.bd-info-list{display:flex;flex-direction:column}.bd-info-row{display:flex;align-items:flex-start;gap:.5rem;padding:.45rem .85rem;border-bottom:1px solid var(--border-color);font-size:var(--text-md)}.bd-info-row:last-child{border-bottom:none}.bd-info-label{flex-shrink:0;width:120px;color:var(--text-muted);font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding-top:1px}.bd-info-value{color:var(--text-primary);word-break:break-word;flex:1}.bd-info-value.bd-info-mono{font-family:var(--font-mono);font-size:var(--text-base);color:var(--text-secondary)}.bd2-page{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:1400px;margin:0 auto;padding:0}.bd2-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.bd2-breadcrumb{display:flex;align-items:center;gap:.35rem;font-size:.8rem}.bd2-bc-item{color:var(--text-muted)}.bd2-bc-sep{color:var(--text-muted);opacity:.5}.bd2-bc-current{color:var(--text-secondary);font-weight:600}.bd2-topbar-actions{display:flex;align-items:center;gap:.4rem}.bd2-back-btn{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:600;color:#1c1917b3;background:#ffffff4d;border:1px solid rgba(255,255,255,.5);border-radius:6px;cursor:pointer;padding:.25rem .6rem;transition:background .15s,color .15s}.bd2-back-btn:hover{background:#ffffff8c;color:#1c1917}.bd2-btn{display:inline-flex;align-items:center;gap:5px;padding:.4rem .85rem;font-size:.8rem;font-weight:600;border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .13s;font-family:var(--font-sans);white-space:nowrap}.bd2-btn-ghost-sm{background:var(--bg-secondary);color:var(--text-secondary)}.bd2-btn-ghost-sm:hover{border-color:var(--text-muted);color:var(--text-primary)}.bd2-btn-primary-sm{background:var(--accent-cyan);color:#0b1220;border-color:var(--accent-cyan)}.bd2-btn-primary-sm:hover{opacity:.85}.bd2-hero{margin-left:-1.5rem;margin-right:-1.5rem;overflow:hidden;border-bottom:1px solid var(--border-color);position:relative}.bd2-hero-banner{height:80px;background:linear-gradient(120deg,#d97706,#f59e0b 50%,#fbbf24 80%,#fde68a);display:flex;align-items:flex-start;padding:.65rem 1.75rem 0}.bd2-hero-icon-box{position:absolute;top:52px;left:1.75rem;z-index:2;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:10px;background:#fff;color:#92400e;box-shadow:0 2px 10px #0003;border:2.5px solid var(--bg-secondary)}.bd2-hero-info{display:flex;align-items:center;gap:1rem;padding:.75rem 1.75rem 1.25rem calc(3rem + 56px);background:var(--bg-secondary);position:relative}.bd2-hero-body{flex:1;min-width:0;padding-top:.5rem}.bd2-hero-title{font-size:1.15rem;font-weight:800;color:var(--text-primary);margin:0 0 .15rem;line-height:1.3}.bd2-hero-reg{font-size:.76rem;color:var(--text-muted);font-family:var(--font-mono);margin:0 0 .45rem}.bd2-hero-chips{display:flex;flex-wrap:wrap;gap:.35rem}.bd2-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .55rem;border-radius:999px;font-size:.71rem;font-weight:700;background:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border-color);white-space:nowrap}.bd2-chip--risk.bd2-chip--critical{background:#ef44441a;color:#f87171;border-color:#ef44444d}.bd2-chip--risk.bd2-chip--high{background:#ea580c1a;color:#fb923c;border-color:#ea580c4d}.bd2-chip--risk.bd2-chip--medium{background:#ca8a041a;color:#fbbf24;border-color:#ca8a044d}.bd2-chip--risk.bd2-chip--low{background:#16a34a1a;color:#4ade80;border-color:#16a34a4d}.bd2-chip--top{background:rgba(var(--accent-primary-rgb),.1);color:var(--accent-cyan);border-color:rgba(var(--accent-primary-rgb),.3)}.bd2-hero-actions{display:flex;flex-direction:column;gap:.4rem;flex-shrink:0;align-items:stretch;min-width:110px;padding-top:.5rem}.bd2-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}.bd2-stat-card{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px}.bd2-stat-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.bd2-stat-value{font-size:1.4rem;font-weight:700;color:var(--text-primary);line-height:1.2}.bd2-stat-mono{font-family:var(--font-mono);font-size:1.1rem}.bd2-stat-sub{font-size:.7rem;color:var(--text-muted);line-height:1.35;margin-top:.1rem}.bd2-stat-sub .bd2-stat-sub-direct{color:var(--accent-orange, var(--text-secondary))}.bd2-tabs{display:flex;align-items:center;gap:.15rem;border-bottom:1px solid var(--border-color);overflow-x:auto}.bd2-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .85rem;font-size:.82rem;font-weight:600;color:var(--text-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s;white-space:nowrap;margin-bottom:-1px}.bd2-tab:hover{color:var(--text-secondary)}.bd2-tab-active{color:var(--accent-cyan);border-bottom-color:var(--accent-cyan)}.bd2-tab-count{font-size:.68rem;font-weight:700;font-family:var(--font-mono);padding:.1rem .35rem;border-radius:999px;background:var(--bg-tertiary);color:var(--text-muted)}.bd2-tab-active .bd2-tab-count{color:var(--accent-cyan)}.bd2-main{display:flex;flex-direction:column;gap:.75rem}.bd2-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:1.1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.bd2-section-title{font-size:.85rem;font-weight:700;color:var(--text-primary);margin:0}.bd2-section-body{font-size:.82rem;color:var(--text-secondary);line-height:1.6;margin:0}.bd2-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}.bd2-info-row{display:flex;justify-content:space-between;align-items:center;padding:.45rem 0;border-bottom:1px solid var(--border-color);gap:.5rem;font-size:.8rem}.bd2-info-row:nth-last-child(-n+2){border-bottom:none}.bd2-info-key{color:var(--text-muted);flex-shrink:0}.bd2-info-val{color:var(--text-primary);font-weight:600;text-align:right}.bd2-mono{font-family:var(--font-mono)}.bd2-chart-wrap{min-height:220px}.bd2-side-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.55rem}.bd2-side-card-label{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.bd2-risk-track{height:8px;border-radius:4px;background:var(--bg-tertiary);overflow:hidden}.bd2-risk-fill{height:100%;border-radius:4px;transition:width .5s ease}.bd2-risk-fill--critical{background:var(--accent-red)}.bd2-risk-fill--high{background:var(--accent-orange)}.bd2-risk-fill--medium{background:var(--accent-yellow)}.bd2-risk-fill--low{background:var(--accent-green)}.bd2-risk-label{font-size:.78rem;font-weight:600}.bd2-risk-label--critical{color:var(--accent-red)}.bd2-risk-label--high{color:var(--accent-orange)}.bd2-risk-label--medium{color:var(--accent-yellow)}.bd2-risk-label--low{color:var(--accent-green)}.bd2-top-orgs{display:flex;flex-direction:column;gap:.3rem}.bd2-top-org-item{display:flex;align-items:center;gap:.5rem;padding:.35rem 0;border-bottom:1px solid var(--border-color);font-size:.78rem}.bd2-top-org-item:last-child{border-bottom:none}.bd2-top-org-rank{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;background:var(--bg-tertiary);font-size:.68rem;font-weight:700;color:var(--text-muted);flex-shrink:0}.bd2-top-org-name{color:var(--text-secondary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bd2-top-org-link{color:var(--accent-cyan);text-decoration:none}.bd2-top-org-link:hover{text-decoration:underline}.bd2-hero-banner--org{background:linear-gradient(120deg,#1e40af,#2563eb 45%,#3b82f6 75%,#93c5fd)}.bd2-hero-icon-box--org{color:#1d4ed8}.bd2-hero-banner--gov{background:linear-gradient(120deg,#14532d,#16a34a 45%,#22c55e 75%,#86efac)}.bd2-hero-icon-box--gov{color:#15803d}.bd2-hero-gov-link{color:var(--accent-cyan);text-decoration:none}.bd2-hero-gov-link:hover{text-decoration:underline}.bd2-hero-banner--person{background:linear-gradient(120deg,#581c87,#7e22ce 45%,#a855f7 75%,#d8b4fe)}.bd2-hero-icon-box--person{color:#7e22ce}.bd2-chip--warn{background:#ea580c1a;color:#fb923c;border-color:#ea580c4d}.pd-name-note{display:flex;gap:.6rem;align-items:flex-start;padding:.7rem .9rem;border-radius:10px;border:1px solid rgba(234,88,12,.3);background:#ea580c0f;font-size:.78rem;line-height:1.5;color:var(--text-secondary)}.pd-name-note svg{flex-shrink:0;color:#fb923c;margin-top:2px}@media(max-width:900px){.bd2-stat-row{grid-template-columns:repeat(2,1fr)}.bd2-layout{grid-template-columns:1fr}}.pd-link-btn{background:none;border:0;padding:0;font:inherit;color:var(--accent-cyan);cursor:pointer;text-decoration:underline}.pd-match-grid{margin:0 .9rem .6rem}.pd-names{display:flex;flex-direction:column;gap:.75rem}.pd-id{display:flex;flex-direction:column;gap:14px}.pd-id-verdict{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:12px;border:1px solid var(--border-color);background:var(--bg-secondary)}.pd-id-verdict.warn{border-color:#ea580c73;background:color-mix(in srgb,#ea580c 8%,var(--bg-secondary))}.pd-id-verdict.warn>svg{color:#fb923c;flex-shrink:0;margin-top:2px}.pd-id-verdict.ok>svg{color:#4ade80;flex-shrink:0;margin-top:2px}.pd-id-verdict h3{margin:0 0 4px;font-size:1rem}.pd-id-verdict p{margin:0 0 4px;font-size:.86rem;line-height:1.55;color:var(--text-primary)}.pd-id-hint{color:var(--text-secondary)!important;font-size:.78rem!important}.pd-id-hint svg{vertical-align:-2px}.pd-id-card{padding:0;overflow:hidden}.pd-id-head{display:flex;align-items:center;gap:12px;padding:14px 16px 10px}.pd-id-badge{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:#7c3aed;color:#fff;font-weight:700}.pd-id-badge.muted{background:var(--bg-tertiary);color:var(--text-secondary)}.pd-id-title{flex:1;min-width:0}.pd-id-title h3{margin:0;font-size:.95rem}.pd-id-title p{margin:2px 0 0;font-size:.82rem;color:var(--text-secondary)}.pd-id-title p b{color:var(--text-primary)}.pd-id-gender{font-weight:500;color:var(--text-secondary)}.pd-id-why{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:0 16px 10px}.pd-id-why-label{font-size:.76rem;color:var(--text-secondary);margin-right:2px}.pd-id-chip{display:inline-flex;align-items:center;gap:4px;font-size:.74rem;padding:2px 9px;border-radius:999px;border:1px solid rgba(34,197,94,.5);color:#4ade80;cursor:help}.pd-id-chip.weak{border-color:#eab30880;color:#facc15}.pd-id-flags{list-style:none;margin:0 16px 12px;padding:8px 12px;border-radius:8px;background:#ef444414;border:1px solid rgba(239,68,68,.3);display:flex;flex-direction:column;gap:4px}.pd-id-flags li{display:flex;align-items:center;gap:6px;font-size:.82rem;color:#fca5a5}.pd-id-flags svg{flex-shrink:0;color:#f87171}.pd-id-table td{vertical-align:top}.pd-id-tie{font-size:.76rem;line-height:1.35;color:#86efac;max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-id-tie.weak{color:#fde68a}.pd-id-weak{font-size:.7rem;color:#facc15;font-weight:600}.pd-id-banned{margin-left:6px;font-size:.68rem;padding:1px 6px;border-radius:4px;background:#ef444426;color:#f87171;white-space:nowrap}.pd-id-more{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;padding:8px;border:0;border-top:1px solid var(--border-color);background:none;color:var(--accent-cyan);font:inherit;font-size:.8rem;cursor:pointer}.pd-id-more:hover{background:var(--bg-tertiary)}.pd-id-more.inline{width:auto;border:1px solid var(--border-color);border-radius:6px;padding:4px 10px}.pd-id-hint svg{display:inline-block}.pd-id-head .pd-id-more.inline{display:inline-flex;flex-direction:row;white-space:nowrap;flex-shrink:0}.pd-id-graph{display:inline-flex;align-items:center;gap:6px;margin:6px 0 8px;padding:6px 12px;border-radius:8px;border:1px solid #2563eb;background:#2563eb;color:#fff;font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.pd-id-graph:hover{background:#1d4ed8}.pd-id-note p{margin:0 0 4px;font-size:.82rem;line-height:1.55;color:var(--text-secondary)}.pd-id-note .pd-id-hint{font-size:.76rem!important}.bd-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--glass-shadow);transition:box-shadow .2s}.bd-card:hover{box-shadow:0 2px 4px var(--shadow-color),0 4px 16px var(--shadow-color)}.bd-card-header{display:flex;align-items:center;gap:.45rem;padding:.65rem .85rem;border-bottom:1px solid var(--border-color);background:var(--card-bg-light)}.bd-card-header svg{color:var(--accent-cyan);opacity:.6;flex-shrink:0}.bd-card-header h3{font-size:var(--text-base);font-weight:700;color:var(--text-secondary);margin:0;flex:1;letter-spacing:.01em}.bd-card-count{font-size:var(--text-xs);font-weight:700;font-family:var(--font-mono);padding:.1rem .4rem;border-radius:999px;background:var(--bg-tertiary);color:var(--accent-cyan);border:1px solid var(--border-color)}.bd-network-list{padding:.5rem;max-height:480px;overflow-y:auto;display:flex;flex-direction:column;gap:3px}.bd-network-item{display:flex;align-items:center;gap:.4rem;padding:.4rem .5rem;border-radius:var(--radius-sm);transition:background .15s,transform .1s}.bd-network-item:hover{background:var(--bg-tertiary);transform:translate(2px)}.bd-network-rank{width:18px;font-size:.6rem;font-weight:700;font-family:var(--font-mono);color:var(--text-muted);text-align:center;flex-shrink:0}.bd-network-name{flex:1;font-size:var(--text-base);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bd-network-count{font-size:var(--text-xs);font-weight:700;font-family:var(--font-mono);color:var(--accent-purple);padding:.1rem .3rem;background:color-mix(in srgb,var(--accent-purple) 10%,transparent);border-radius:999px;flex-shrink:0}.bd-network-pager{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.4rem .5rem;border-top:1px solid var(--border-color);font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-muted)}.bd-network-pager button{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-secondary);color:var(--text-muted);cursor:pointer;padding:0;transition:all .15s}.bd-network-pager button:hover:not(:disabled){color:var(--accent-cyan);border-color:var(--accent-cyan)}.bd-network-pager button:disabled{opacity:.35;cursor:not-allowed}.bd-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem 1rem;color:var(--text-muted);flex:1}.bd-empty-state svg{opacity:.3}.bd-empty-state span{font-size:var(--text-base)}.bd-card-stretch{display:flex;flex-direction:column}.bd-card-stretch>:last-child{flex:1}.bd-linechart{padding:.65rem;display:flex;flex-direction:column;flex:1}.bd-linechart .recharts-wrapper{font-size:var(--text-sm)}.bd-cluster{display:flex;flex-wrap:wrap;gap:3px;padding:.5rem;flex:1;align-content:flex-start}.bd-cluster-cell{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:.45rem .35rem;border-radius:var(--radius-sm);min-height:48px;flex-grow:1;text-align:center;transition:opacity .15s;cursor:default}.bd-cluster-cell:hover{opacity:.8}.bd-cluster-link{display:flex;flex-direction:column;align-items:center;gap:2px;text-decoration:none;color:inherit}.bd-cluster-name{font-size:.6rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;line-height:1.2}.bd-cluster-num{font-size:var(--text-md);font-weight:700;font-family:var(--font-mono);color:var(--text-primary)}.bd-cluster-sub{font-size:.52rem;color:var(--text-muted);opacity:.7}.bd-cluster-clickable{cursor:pointer}.bd-cluster-clickable:hover{opacity:.75;box-shadow:inset 0 0 0 1px var(--border-color)}.bd-drill-back{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-tertiary);color:var(--text-muted);cursor:pointer;transition:all .15s;flex-shrink:0}.bd-drill-back:hover{color:var(--accent-cyan);border-color:var(--accent-cyan)}.bd-org-grid{display:flex;flex-wrap:wrap;gap:3px;padding:.5rem;align-content:flex-start}.bd-org-grid--scroll{max-height:520px;overflow-y:auto}.bd-org-cell{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:.5rem .35rem;border-radius:var(--radius-sm);min-height:52px;flex-grow:1;text-align:center;text-decoration:none;color:inherit;transition:opacity .15s;cursor:pointer}.bd-org-cell:hover{opacity:.75;box-shadow:inset 0 0 0 1px var(--border-color)}.bd-org-risk-pill{font-size:.5rem;font-weight:700;padding:.05rem .35rem;border-radius:999px;letter-spacing:.02em;text-transform:uppercase}.bd-org-risk-pill.low{background:color-mix(in srgb,var(--accent-green) 15%,transparent);color:var(--accent-green)}.bd-org-risk-pill.medium{background:color-mix(in srgb,var(--accent-yellow) 15%,transparent);color:var(--accent-yellow)}.bd-org-risk-pill.high{background:color-mix(in srgb,var(--accent-orange) 15%,transparent);color:var(--accent-orange)}.bd-org-risk-pill.critical{background:color-mix(in srgb,var(--accent-red) 15%,transparent);color:var(--accent-red)}.bd-bar-list{padding:.5rem .65rem;display:flex;flex-direction:column;gap:.45rem;max-height:480px;overflow-y:auto}.bd-bar-item{display:flex;flex-direction:column;gap:3px}.bd-bar-label{display:flex;justify-content:space-between;align-items:baseline;font-size:var(--text-sm);min-width:0}.bd-bar-label a{color:var(--text-primary);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .15s}.bd-bar-label a:hover{color:var(--accent-cyan)}.bd-bar-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bd-bar-nums{flex-shrink:0;font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-muted);margin-left:.5rem}.bd-bar-track{height:6px;border-radius:3px;background:var(--bg-tertiary);position:relative;overflow:hidden}.bd-bar-fill{position:absolute;top:0;left:0;height:100%;border-radius:3px;background:var(--border-color);transition:width .4s ease}.bd-bar-fill.win{background:var(--accent-green);opacity:.7;z-index:1}.bd-tender-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .85rem;border-bottom:1px solid var(--border-color);background:var(--card-bg-light)}.bd-filter-group{display:flex;align-items:center;gap:.35rem;color:var(--text-muted)}.bd-select{padding:.3rem .45rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--text-sm);cursor:pointer;max-width:220px}.bd-select.sm{max-width:90px}.bd-select:focus{outline:none;border-color:var(--accent-cyan)}.bd-org-link{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:5px;border:1px solid var(--border-color);color:var(--accent-cyan);transition:all .15s}.bd-org-link:hover{background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);border-color:var(--accent-cyan)}.bd-pagination{display:flex;align-items:center;gap:.4rem}.bd-page-info{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-muted);min-width:28px;text-align:center}.bd-page-btns{display:flex;gap:2px}.bd-page-btns button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-secondary);color:var(--text-muted);cursor:pointer;transition:all .15s;padding:0}.bd-page-btns button:hover:not(:disabled){background:var(--bg-tertiary);color:var(--accent-cyan);border-color:var(--accent-cyan)}.bd-page-btns button:disabled{opacity:.35;cursor:not-allowed}.bd-tender-table-wrap{overflow-x:auto}.bd-table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.bd-table th{text-align:left;padding:.55rem .65rem;color:var(--text-muted);font-weight:700;font-size:.6rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid var(--border-color);white-space:nowrap;background:var(--bg-secondary);position:sticky;top:0}.bd-table td{padding:.5rem .65rem;border-bottom:1px solid var(--border-color);color:var(--text-secondary);vertical-align:middle}.bd-table tbody tr{transition:background .1s}.bd-table tbody tr:hover{background:var(--hover-overlay)}.bd-table .won-row td{background:color-mix(in srgb,var(--accent-green) 4%,transparent)}.bd-table .won-row:hover td{background:color-mix(in srgb,var(--accent-green) 8%,transparent)}.bd-table .num-col{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono);white-space:nowrap}.bd-table .name-cell a{color:var(--text-primary);text-decoration:none;font-weight:500;transition:color .15s}.bd-table .name-cell a:hover{color:var(--accent-cyan)}.bd-table .org-cell a{color:var(--accent-cyan);text-decoration:none;font-size:var(--text-sm)}.bd-table .org-cell a:hover{text-decoration:underline}.bd-table .org-cell span{font-size:var(--text-sm)}.bd-empty{color:var(--text-muted);font-size:var(--text-base);text-align:center;padding:1.5rem 1rem;margin:0}.pkg-badge{display:inline-flex;align-items:center;gap:3px;margin-right:6px;padding:0 6px;height:17px;border-radius:9px;font-size:.66rem;font-weight:600;white-space:nowrap;vertical-align:1px;color:var(--accent-purple, #a855f7);background:color-mix(in srgb,var(--accent-purple, #a855f7) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent-purple, #a855f7) 35%,transparent)}.pkg-toggle{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-right:4px;padding:0;border:0;border-radius:4px;background:none;color:var(--text-secondary);cursor:pointer;vertical-align:-3px}.pkg-toggle:hover{background:var(--bg-tertiary, rgba(127,127,127,.12));color:var(--text-primary)}.bd-table tr.pkg-lots-row>td{padding:0 .75rem .6rem 2.6rem;background:transparent}.pkg-lots{width:100%;border-collapse:collapse;font-size:.76rem}.pkg-lots th{text-align:left;font-weight:600;font-size:.68rem;color:var(--text-muted);padding:4px 8px;border-bottom:1px solid var(--border-color)}.pkg-lots td{padding:4px 8px;border-bottom:1px dashed var(--border-color)}.pkg-lots tr:last-child td{border-bottom:0}.pkg-lots .num-col{text-align:right;white-space:nowrap}.pkg-lots tr.is-won .pkg-lot-no{color:var(--accent-green)}.pkg-lot-no{white-space:nowrap;font-weight:600}.pkg-winner+.pkg-winner:before{content:", "}.pkg-muted,.pkg-lots-msg{color:var(--text-muted)}.pkg-lots-msg{font-size:.75rem;padding:4px 0}.bd-bidders-note{font-size:.72rem;color:var(--text-muted);padding:0 .9rem .5rem}.bd-network-lots{font-size:.68rem;color:var(--accent-purple, #a855f7);margin-left:4px;white-space:nowrap}.td-lot-header{margin:.6rem 0 .25rem;font-size:.72rem;font-weight:700;color:var(--accent-purple, #a855f7);letter-spacing:.02em}.td-lot-header:first-child{margin-top:0}.td2-lot-winners{display:flex;flex-direction:column;gap:3px;min-width:0}.td2-lot-tag{font-size:.66rem;font-weight:700;color:var(--accent-purple, #a855f7);margin-right:6px}.td2-unit-price{color:var(--accent-orange, #f97316);font-size:.72rem;font-weight:500}.bd-owner-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:1100px){.bd-owner-grid{grid-template-columns:1fr}}.bd-owner-note{margin:0 .9rem .6rem;font-size:.74rem;line-height:1.45;color:var(--text-muted)}.bd-owner-tag{margin-left:6px;font-size:.64rem;color:var(--text-muted);border:1px solid var(--border-color);border-radius:8px;padding:0 5px}.bd-owner-official{margin-top:2px;font-size:.68rem;font-weight:600;color:var(--accent-orange, #f97316)}.td2-round-switch{display:inline-flex;gap:4px;margin-left:auto;flex-wrap:wrap}.td2-round-switch button{display:inline-flex;flex-direction:column;align-items:flex-start;gap:1px;padding:4px 10px;border-radius:7px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);font:inherit;font-size:.74rem;font-weight:600;cursor:pointer}.td2-round-switch button small{font-size:.64rem;font-weight:400;color:var(--text-muted)}.td2-round-switch button.active{color:var(--accent-cyan);border-color:color-mix(in srgb,var(--accent-cyan) 45%,transparent);background:color-mix(in srgb,var(--accent-cyan) 12%,transparent)}.td2-history tr.is-clickable{cursor:pointer}.td2-history tr.is-clickable:hover td{background:color-mix(in srgb,var(--accent-cyan) 6%,transparent)}.td2-docs-round{margin-top:.75rem}.td2-docs-round-title{display:flex;align-items:center;gap:8px;margin:.6rem 0 .4rem;font-size:.82rem;font-weight:700}.td2-docs-group{margin:0 0 .6rem}.td2-docs-group-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.25rem}.td2-docs-group-title span{margin-left:4px;font-weight:400}.td2-docs-group ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:4px 12px}.td2-docs-group a{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-primary);text-decoration:none;word-break:break-word}.td2-docs-group a:hover{color:var(--accent-cyan)}.td2-schedule-round+.td2-schedule-round{margin-top:1rem;padding-top:.75rem;border-top:1px dashed var(--border-color)}.td2-schedule-num{font-family:var(--font-mono, monospace);font-size:.7rem;font-weight:400;color:var(--text-muted)}details.tc-collapse>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px;flex-wrap:wrap}details.tc-collapse>summary::-webkit-details-marker{display:none}details.tc-collapse>summary:after{content:"▸";margin-left:auto;color:var(--text-muted);transition:transform .15s}details.tc-collapse[open]>summary:after{transform:rotate(90deg)}details.tc-collapse:not([open])>summary{margin-bottom:0}.tc-summary-sub{font-size:.74rem;font-weight:400;color:var(--text-muted);text-transform:none;letter-spacing:0}.tc-won-in{margin:0 0 .6rem;font-size:.78rem;color:var(--text-secondary)}.tc-summary-h{display:inline-flex;align-items:center;gap:6px;margin:0;font:inherit}.td2-doc-missing{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-muted);text-decoration:line-through}.td2-doc-missing small{text-decoration:none;font-size:.66rem;color:var(--accent-orange, #f97316)}.td2-inv-link{display:inline-flex;align-items:center;gap:4px;color:inherit;text-decoration:none}.td2-inv-link:hover{color:var(--accent-cyan);text-decoration:underline}.td2-inv-id{font-size:.66rem;color:var(--text-muted)}.bd-group-badge{display:inline-block;padding:1px 7px;border-radius:6px;font-size:.66rem;font-weight:700;letter-spacing:.03em;border:1px solid #14b8a6;color:#14b8a6;background:#14b8a61a}.bd-group-badge--parent{background:#14b8a6;color:#fff}.rz-table th{position:relative}.rz-handle{position:absolute;top:0;right:0;width:9px;height:100%;cursor:col-resize;z-index:2;touch-action:none}.rz-handle:after{content:"";position:absolute;left:8px;top:22%;height:56%;border-left:1px solid var(--border-color)}.rz-handle:hover:after,.rz-handle.rz-active:after{border-left:2px solid var(--accent-cyan);top:0;height:100%}body.rz-dragging,body.rz-dragging *{cursor:col-resize!important;-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.rz-table td{overflow-wrap:anywhere}.rz-table .name-cell,.rz-table .org-cell{max-width:none;white-space:normal;overflow:visible;text-overflow:clip}.rz-table .fd-clamp,.rz-table .fd-cell-main>a{display:inline;-webkit-line-clamp:unset;overflow:visible}.rz-table .fd-cell-main{max-width:none}.rz-table .fd-cell-sub{white-space:normal}.bd-tender-table-wrap,.fd-table-wrap{overflow-x:auto}.th-sort{display:inline-flex;align-items:center;gap:3px;background:none;border:0;padding:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.th-sort.on{color:var(--accent-cyan)}.th-sort-idle{opacity:.35}.num-col .th-sort{flex-direction:row-reverse}.rz-table[style*=fixed] th{overflow:hidden;text-overflow:ellipsis;padding-right:12px}.bd-activity{display:flex;flex-direction:column;gap:1rem}.bd-activity-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.6rem;padding:0 .9rem .9rem}.bd-activity-stat{display:flex;flex-direction:column;gap:2px;padding:.65rem .8rem;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary)}.bd-activity-stat .v{font-size:1.35rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.bd-activity-stat .l{font-size:.78rem;color:var(--text-secondary)}.bd-activity-stat .s{font-size:.72rem;color:var(--text-muted)}.bd-activity-stat.bad{border-color:color-mix(in srgb,var(--accent-red) 55%,transparent);background:color-mix(in srgb,var(--accent-red) 8%,var(--bg-secondary))}.bd-activity-stat.bad .v{color:var(--accent-red)}.bd-activity-stat.warn .v{color:var(--accent-orange, #f59e0b)}.bd-activity-stat.ok .v{color:var(--accent-green)}.bd-activity-unreliable{display:flex;gap:.5rem;align-items:flex-start;margin:0 .9rem .9rem;padding:.6rem .8rem;border-radius:8px;font-size:.8rem;line-height:1.45;color:var(--text-secondary);background:var(--bg-tertiary)}.bd-activity-tag{display:inline-block;padding:1px 7px;border-radius:999px;font-size:.72rem;font-weight:600}.bd-activity-tag.before{color:#fff;background:var(--accent-red)}.bd-activity-tag.after{color:#1f1300;background:var(--accent-orange, #f59e0b)}.bd-activity-won td:first-child{box-shadow:inset 3px 0 0 var(--accent-red)}.bd-activity-wontext{color:var(--accent-red)}.bd-activity-flag{margin-left:.5rem;display:inline-flex;align-items:center;gap:4px;padding:1px 8px;border:0;border-radius:999px;font-size:.72rem;font-weight:600;color:#fff;background:var(--accent-red);cursor:pointer}.bd-activity-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:460px}.bd-activity .bd-table td:last-child{white-space:nowrap}@media(max-width:1100px){.bd-panels{grid-template-columns:1fr 1fr}}@media(max-width:768px){.bd-kpis{grid-template-columns:repeat(2,1fr)}.bd-panels{grid-template-columns:1fr}}@media(max-width:500px){.bd-title-row{flex-wrap:wrap;gap:.5rem}.bd-title-info{flex-basis:calc(100% - 52px)}}.pl-page{display:flex;flex-direction:column;gap:12px;padding:16px 20px 28px;min-width:0}.pl-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.pl-header h1{display:flex;align-items:center;gap:8px;margin:0;font-size:1.15rem;font-weight:700;color:var(--text-primary)}.pl-header h1 svg{color:var(--accent-cyan)}.pl-header p{margin:4px 0 0;font-size:.75rem;color:var(--text-muted);max-width:820px}.pl-header p b{color:var(--text-secondary);font-weight:600}.pl-header code,.pl-alert code,.pl-page code{font-family:var(--font-mono, monospace);font-size:.92em}.pl-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pl-actions button{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);font-size:.72rem;font-weight:600;cursor:pointer}.pl-actions button:hover:not(:disabled){color:var(--text-primary);border-color:var(--accent-cyan)}.pl-actions button:disabled{opacity:.5;cursor:default}.pl-actions button.is-primary{background:color-mix(in srgb,var(--accent-cyan) 18%,var(--bg-secondary));color:var(--accent-cyan);border-color:color-mix(in srgb,var(--accent-cyan) 40%,transparent)}.pl-msg{font-size:.72rem;color:var(--accent-green);margin-right:4px}.pl-alert{display:flex;align-items:flex-start;gap:8px;padding:9px 12px;border-radius:var(--radius-lg);font-size:.78rem;line-height:1.45;color:var(--text-primary);border:1px solid}.pl-alert svg{flex-shrink:0;margin-top:2px}.pl-alert.is-bad{background:color-mix(in srgb,var(--accent-red) 10%,var(--bg-secondary));border-color:color-mix(in srgb,var(--accent-red) 45%,transparent)}.pl-alert.is-bad svg{color:var(--accent-red)}.pl-alert.is-warn{background:color-mix(in srgb,var(--accent-orange) 9%,var(--bg-secondary));border-color:color-mix(in srgb,var(--accent-orange) 40%,transparent)}.pl-alert.is-warn svg{color:var(--accent-orange)}.pl-alert button{margin-left:6px;padding:1px 8px;border-radius:10px;border:1px solid color-mix(in srgb,var(--accent-orange) 50%,transparent);background:none;color:var(--accent-orange);font-size:.72rem;cursor:pointer}.pl-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.pl-kpi.bd-bs-kpi-card{padding:12px 8px 10px;min-height:132px;justify-content:flex-start;gap:6px}.pl-kpi .bd-bs-kpi-card-label{line-height:1.25;margin-top:2px}.pl-kpi.is-good .bd-bs-kpi-card-icon{color:var(--accent-green);background:color-mix(in srgb,var(--accent-green) 14%,var(--bg-tertiary))}.pl-kpi.is-bad .bd-bs-kpi-card-icon{color:var(--accent-red);background:color-mix(in srgb,var(--accent-red) 16%,var(--bg-tertiary))}.pl-kpi.is-bad .bd-bs-kpi-card-value{color:var(--accent-red)}.pl-kpi.is-warn .bd-bs-kpi-card-icon{color:var(--accent-orange);background:color-mix(in srgb,var(--accent-orange) 14%,var(--bg-tertiary))}.pl-kpi .bd-bs-kpi-card-sub{cursor:default}.pl-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:.6rem .8rem .75rem;min-width:0;display:flex;flex-direction:column}.pl-panel .bd-bs-ol-label{padding-bottom:.5rem}.pl-close{border:none;background:none;color:var(--text-muted);font-size:.68rem;cursor:pointer}.pl-close:hover{color:var(--text-primary)}.pl-muted{color:var(--text-muted)}.pl-warn{color:var(--accent-orange)}.pl-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.pl-flow-scroll{overflow-x:auto}.pl-flow{position:relative;display:grid;grid-template-columns:148px minmax(310px,540px) 148px 156px 112px;justify-content:space-between;grid-auto-rows:auto;-moz-column-gap:34px;column-gap:34px;row-gap:12px;min-width:960px;padding:2px 4px 6px}.pl-flow-edges{position:absolute;inset:0;pointer-events:none;overflow:visible}.pl-edge{fill:none;stroke-width:1.5}.pl-edge-src{stroke:color-mix(in srgb,var(--accent-cyan) 45%,transparent);stroke-dasharray:4 3}.pl-edge-data{stroke:color-mix(in srgb,var(--text-secondary) 55%,transparent);stroke-width:2}.pl-edge-bad{stroke:var(--accent-red);stroke-width:2;stroke-dasharray:6 4}.pl-edge-muted{stroke:var(--border-color)}.pl-arrow-src{fill:color-mix(in srgb,var(--accent-cyan) 60%,transparent)}.pl-arrow-data{fill:var(--text-secondary)}.pl-arrow-bad{fill:var(--accent-red)}.pl-arrow-muted{fill:var(--border-color)}.pl-flow-col{position:relative;z-index:1;display:flex;flex-direction:column;gap:8px;min-width:0}.pl-flow-colhead{font-size:.6rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding-bottom:2px;grid-row:1}.pl-flow-srcgroup{position:relative;z-index:1;display:flex;flex-direction:column;gap:8px;padding-top:30px}.pl-flow-src{display:flex;align-items:center;gap:7px;padding:7px 9px;border-radius:8px;border:1px dashed color-mix(in srgb,var(--accent-cyan) 40%,transparent);background:color-mix(in srgb,var(--accent-cyan) 6%,var(--bg-secondary));color:var(--accent-cyan);text-decoration:none;min-width:0}.pl-flow-src span{display:flex;flex-direction:column;min-width:0}.pl-flow-src b{font-size:.72rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-flow-src small{font-size:.6rem;color:var(--text-muted)}.pl-flow-src:hover{border-style:solid}.pl-flow-box{position:relative;z-index:1;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--bg-primary) 82%,#000);padding:6px;display:flex;flex-direction:column;gap:3px}.pl-flow-box-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:2px 4px 5px;font-size:.68rem;font-weight:700;color:var(--text-secondary)}.pl-flow-box-head small{font-weight:500;font-size:.62rem;color:var(--text-muted);font-family:var(--font-mono, monospace)}.pl-flow-task{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:5px 8px 5px 6px;border:1px solid transparent;border-left:3px solid var(--st);border-radius:6px;background:var(--bg-secondary);text-align:left;cursor:pointer;color:var(--text-primary)}.pl-flow-task:hover{border-color:color-mix(in srgb,var(--st) 45%,transparent);border-left-color:var(--st)}.pl-flow-task.is-selected{border-color:var(--accent-cyan);border-left-color:var(--st);background:color-mix(in srgb,var(--accent-cyan) 10%,var(--bg-secondary))}.pl-flow-task-no{font-family:var(--font-mono, monospace);font-size:.68rem;font-weight:700;color:var(--text-muted);text-align:center}.pl-flow-task-main{display:flex;flex-direction:column;min-width:0}.pl-flow-task-name{display:flex;align-items:center;gap:5px;font-size:.76rem;font-weight:600;white-space:nowrap;overflow:hidden}.pl-flow-dep{font-size:.6rem;font-weight:500;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis}.pl-flow-task-sub{font-size:.62rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-flow-task-meta{display:flex;flex-direction:column;align-items:flex-end;font-size:.62rem;color:var(--text-muted);white-space:nowrap}.pl-flow-task-meta b{font-size:.74rem;font-family:var(--font-mono, monospace);color:var(--text-primary)}.pl-flow-col-infra{justify-content:center}.pl-flow-col-web{gap:28px}.pl-flow-infra{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;border-radius:12px;border:1.5px solid color-mix(in srgb,var(--c) 50%,transparent);background:color-mix(in srgb,var(--c) 7%,var(--bg-secondary));text-align:center}.pl-flow-infra>svg{color:var(--c);margin-bottom:2px}.pl-flow-infra b{font-size:.82rem;color:var(--text-primary)}.pl-flow-infra small{font-size:.62rem;color:var(--text-muted);line-height:1.3}.pl-flow-infra-num{margin-top:6px;font-size:.95rem;font-weight:700;font-family:var(--font-mono, monospace);color:var(--text-primary)}.pl-flow-infra.is-bad .pl-flow-infra-num{color:var(--accent-red)}.pl-flow-stepline{display:flex;align-items:center;gap:5px;margin-top:8px;padding-top:7px;border-top:1px solid var(--border-color);font-size:.6rem;line-height:1.3;text-align:left}.pl-main{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.pl-main.has-detail{grid-template-columns:minmax(0,1fr) 380px}.pl-table-wrap{overflow-x:auto}.pl-table{width:100%;border-collapse:collapse;font-size:.74rem}.pl-table th{position:sticky;top:0;text-align:left;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:6px 8px;border-bottom:1px solid var(--border-color);white-space:nowrap;background:var(--bg-secondary)}.pl-table td{padding:7px 8px;border-bottom:1px solid color-mix(in srgb,var(--border-color) 60%,transparent);vertical-align:middle;color:var(--text-primary)}.pl-table .num{text-align:right;font-family:var(--font-mono, monospace);white-space:nowrap}.pl-table tbody tr:not(.pl-table-group){cursor:pointer}.pl-table tbody tr:not(.pl-table-group):hover td{background:color-mix(in srgb,var(--accent-cyan) 5%,transparent)}.pl-table tr.is-selected td{background:color-mix(in srgb,var(--accent-cyan) 10%,transparent)}.pl-table-group td{padding:10px 8px 4px;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-cyan);border-bottom:none}.pl-task-cell{display:flex;flex-direction:column;gap:1px}.pl-task-cell b{font-weight:600;white-space:nowrap}.pl-task-cell code{font-size:.62rem;color:var(--text-muted)}.pl-run-cell{display:flex;flex-direction:column;align-items:flex-start;gap:3px;white-space:nowrap;font-size:.68rem}.pl-pill{display:inline-flex;align-items:center;gap:4px;padding:1px 7px;border:1px solid;border-radius:10px;font-size:.64rem;font-weight:600;white-space:nowrap}.pl-err{margin-top:3px;max-width:260px;font-size:.64rem;color:var(--accent-red);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pl-strip{display:flex;gap:2px}.pl-strip-cell{width:7px;height:16px;border-radius:2px;background:color-mix(in srgb,var(--text-muted) 18%,transparent)}.pl-statebar{min-width:130px;max-width:200px}.pl-statebar-track{display:flex;gap:2px;height:7px;border-radius:4px;overflow:hidden}.pl-statebar-track span{min-width:3px}.pl-statebar-legend{display:flex;flex-wrap:wrap;gap:2px 10px;margin-top:4px;font-size:.62rem;color:var(--text-muted)}.pl-statebar-legend span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.pl-statebar-legend i{width:7px;height:7px;border-radius:2px;display:inline-block}.pl-statebar-legend b{color:var(--text-primary);font-family:var(--font-mono, monospace);font-weight:600}.pl-detail{display:flex;flex-direction:column;gap:8px;min-width:0}.pl-detail-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pl-detail-head b{font-size:.95rem;color:var(--text-primary)}.pl-detail-head code{font-size:.68rem;color:var(--text-muted)}.pl-detail-desc{margin:0;font-size:.74rem;color:var(--text-secondary);line-height:1.4}.pl-kv{display:grid;grid-template-columns:108px minmax(0,1fr);gap:5px 10px;margin:0;font-size:.72rem}.pl-kv dt{color:var(--text-muted)}.pl-kv dd{margin:0;color:var(--text-primary);overflow-wrap:anywhere}.pl-kv a{color:var(--accent-cyan);text-decoration:none}.pl-detail-err{padding:7px 9px;border-radius:6px;font-size:.7rem;line-height:1.4;color:var(--text-primary);background:color-mix(in srgb,var(--accent-red) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent-red) 35%,transparent);overflow-wrap:anywhere}.pl-cmd{display:flex;align-items:center;gap:7px;padding:6px 8px;border-radius:6px;background:color-mix(in srgb,var(--bg-primary) 82%,#000);color:var(--text-muted)}.pl-cmd code{flex:1;font-size:.7rem;color:var(--accent-green)}.pl-log-title{font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-top:4px}.pl-log{max-height:340px;overflow-y:auto}.pl-log table{width:100%;border-collapse:collapse;font-size:.68rem}.pl-log th{position:sticky;top:0;background:var(--bg-secondary);text-align:left;font-weight:600;color:var(--text-muted);padding:4px 6px;border-bottom:1px solid var(--border-color)}.pl-log td{padding:4px 6px;border-bottom:1px solid color-mix(in srgb,var(--border-color) 50%,transparent);white-space:nowrap;color:var(--text-primary)}.pl-log .num{text-align:right;font-family:var(--font-mono, monospace)}.pl-log-errrow td{white-space:normal;color:var(--accent-red);font-size:.64rem;padding-top:0;overflow-wrap:anywhere}.pl-log-empty{padding:12px 0;font-size:.72rem}.pl-charts{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.5fr) minmax(0,.9fr);gap:12px}.pl-chart{height:290px;min-height:0}@media(max-width:1500px){.pl-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.pl-charts{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.pl-charts>:nth-child(2){grid-column:1 / -1;grid-row:1}.pl-main.has-detail{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.pl-page{padding:12px 16px 24px}.pl-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.pl-charts{grid-template-columns:minmax(0,1fr)}}.light .pl-flow-box,.light .pl-cmd{background:var(--bg-primary)}.pp-retry-copy{display:flex;align-items:center;gap:3px;padding:2px 6px;border-radius:4px;border:1px solid var(--border-color);background:none;cursor:pointer;font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;transition:all .15s;flex-shrink:0}.pp-retry-copy:hover{color:var(--text-primary);border-color:color-mix(in srgb,var(--accent-cyan) 30%,transparent)}.pl-detail-slot{min-width:0;display:flex;flex-direction:column}.pl-detail-slot>.pl-panel{flex:1}.pl-mig-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px;font-size:.72rem}.pl-mig-head>.pl-muted{flex:1;min-width:200px}.pl-mig-run{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 9px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);font-size:.7rem;font-weight:600;cursor:pointer;white-space:nowrap}.pl-mig-run:hover:not(:disabled){color:var(--text-primary);border-color:var(--accent-cyan)}.pl-mig-run:disabled{opacity:.5;cursor:default}.pl-mig-run.is-primary{height:28px;background:color-mix(in srgb,var(--accent-cyan) 18%,var(--bg-secondary));color:var(--accent-cyan);border-color:color-mix(in srgb,var(--accent-cyan) 40%,transparent)}.pl-mig-table tbody tr:not(.pl-table-group){cursor:default}.pl-mig-table .pl-task-cell b{white-space:normal}.pl-mig-toggle{background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer}.qb{display:flex;flex-direction:column;gap:.75rem}.qb-header{display:flex;flex-direction:column;gap:.2rem}.qb-header h3{display:flex;align-items:center;gap:.4rem;font-size:var(--text-lg);font-weight:700;color:var(--text-primary);margin:0}.qb-header p{font-size:var(--text-base);color:var(--text-muted);margin:0}.qb-filters{display:flex;flex-direction:column;gap:.5rem}.qb-filter-row{display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-color)}.qb-filter-badge{display:flex;align-items:center;gap:.3rem;padding:.25rem .5rem;border-radius:5px;background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);color:var(--accent-cyan);font-size:var(--text-sm);font-weight:600;white-space:nowrap;flex-shrink:0}.qb-filter-inputs{flex:1;display:flex;align-items:center;gap:.4rem;min-width:0}.qb-input{flex:1;min-width:0;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);border-radius:var(--radius-sm);padding:.35rem .5rem;font-size:var(--text-base);outline:none;transition:border-color .15s}.qb-input:focus{border-color:var(--accent-cyan)}.qb-input-sm{max-width:110px}.qb-sep{color:var(--text-muted);font-size:var(--text-md)}.qb-select{border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);border-radius:var(--radius-sm);padding:.35rem .5rem;font-size:var(--text-base);outline:none;cursor:pointer}.qb-toggle-label{display:flex;align-items:center;gap:.4rem;font-size:var(--text-base);color:var(--text-secondary);cursor:pointer}.qb-remove{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:4px;transition:all .15s;flex-shrink:0}.qb-remove:hover{color:var(--accent-red);background:color-mix(in srgb,var(--accent-red) 10%,transparent)}.qb-add-area{position:relative}.qb-add-btn{display:flex;align-items:center;gap:.3rem;padding:.4rem .7rem;border:1px dashed var(--border-color);background:transparent;color:var(--text-muted);border-radius:7px;font-size:var(--text-base);cursor:pointer;transition:all .15s}.qb-add-btn:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.qb-picker{position:absolute;top:100%;left:0;z-index:20;margin-top:.3rem;padding:.4rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:0 8px 24px color-mix(in srgb,var(--shadow-color) 30%,transparent);display:flex;flex-direction:column;gap:2px;min-width:260px}.qb-picker-item{display:flex;align-items:center;gap:.5rem;padding:.45rem .6rem;border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:background .12s}.qb-picker-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.qb-picker-item svg{flex-shrink:0;color:var(--accent-cyan)}.qb-picker-label{display:block;font-size:var(--text-base);font-weight:600}.qb-picker-desc{display:block;font-size:var(--text-sm);color:var(--text-muted)}.qb-actions{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding-top:.5rem;border-top:1px solid var(--border-color)}.qb-sort{display:flex;align-items:center;gap:.35rem;color:var(--text-muted)}.qb-sort-dir{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);border-radius:5px;cursor:pointer;font-size:var(--text-md)}.qb-action-btns{display:flex;gap:.4rem}.qb-reset-btn{display:flex;align-items:center;gap:.3rem;padding:.38rem .65rem;border:1px solid var(--border-color);background:transparent;color:var(--text-muted);border-radius:var(--radius-sm);font-size:var(--text-base);cursor:pointer;transition:all .15s}.qb-reset-btn:hover{border-color:var(--accent-red);color:var(--accent-red)}.qb-run-btn{display:flex;align-items:center;gap:.3rem;padding:.38rem .85rem;border:none;border-radius:var(--radius-sm);background:var(--accent-cyan);color:var(--text-on-accent);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:opacity .15s}.qb-run-btn:hover:not(:disabled){opacity:.85}.qb-run-btn:disabled{opacity:.4;cursor:not-allowed}.qb-results{display:flex;flex-direction:column;gap:.5rem}.qb-results-header{display:flex;align-items:center;gap:.5rem;font-size:var(--text-md);color:var(--text-secondary)}.qb-loading,.qb-empty{text-align:center;padding:2rem;color:var(--text-muted);font-size:var(--text-md)}.qb-loading{display:flex;align-items:center;justify-content:center;gap:.5rem}.qb-pagination{display:flex;justify-content:center;padding-top:.5rem}@media(max-width:700px){.qb-filter-row{flex-wrap:wrap}.qb-filter-inputs{flex-basis:100%}.qb-actions{flex-direction:column;align-items:stretch}}.ws-corr-overlay{position:fixed;inset:0;background:#0000006b;backdrop-filter:blur(2px);z-index:60;animation:ws-corr-fade .16s ease-out}@keyframes ws-corr-fade{0%{opacity:0}to{opacity:1}}.ws-corr-panel{position:fixed;top:0;right:0;bottom:0;width:min(560px,92vw);background:var(--card-bg, #111);border-left:1px solid var(--border-color, #2a2a2a);box-shadow:-8px 0 32px #00000073;z-index:61;display:flex;flex-direction:column;animation:ws-corr-slide .2s ease-out;color:var(--text-primary, #e8e8e8)}@keyframes ws-corr-slide{0%{transform:translate(100%)}to{transform:translate(0)}}.ws-corr-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--border-color, #2a2a2a);background:var(--card-bg, #111);position:sticky;top:0;z-index:1}.ws-corr-title{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;margin:0}.ws-corr-title-icon{color:var(--accent-cyan, #06b6d4)}.ws-corr-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid var(--border-color, #2a2a2a);color:var(--text-secondary, #aaa);border-radius:6px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s}.ws-corr-close:hover{background:var(--hover-bg, rgba(255, 255, 255, .06));color:var(--text-primary, #e8e8e8)}.ws-corr-body{flex:1 1 auto;overflow:auto;padding:.85rem 1rem 1.25rem;display:flex;flex-direction:column;gap:.85rem}.ws-corr-section{border:1px solid var(--border-color, #2a2a2a);border-radius:8px;background:var(--card-bg-2, rgba(255, 255, 255, .02))}.ws-corr-section-header{display:flex;align-items:center;gap:.45rem;padding:.55rem .75rem;border-bottom:1px solid var(--border-color, #2a2a2a);font-size:.78rem;font-weight:600;color:var(--text-secondary, #bbb);text-transform:uppercase;letter-spacing:.04em}.ws-corr-section-body{padding:.65rem .75rem}.ws-corr-row{display:flex;align-items:baseline;justify-content:space-between;padding:.3rem 0;border-bottom:1px dashed var(--border-color-soft, rgba(255, 255, 255, .06));gap:.75rem;font-size:.82rem}.ws-corr-row:last-child{border-bottom:0}.ws-corr-row-label{color:var(--text-muted, #888);flex:0 0 auto}.ws-corr-row-value{color:var(--text-primary, #e8e8e8);text-align:right;word-break:break-word}.ws-corr-empty,.ws-corr-loading{text-align:center;color:var(--text-muted, #888);font-size:.85rem;padding:1.25rem 0}.ws-corr-error{text-align:center;color:var(--accent-red, #ef4444);font-size:.85rem;padding:1.25rem 0}.ws-corr-table{width:100%;border-collapse:collapse;font-size:.78rem}.ws-corr-table th,.ws-corr-table td{padding:.4rem .55rem;border-bottom:1px solid var(--border-color-soft, rgba(255, 255, 255, .05));text-align:left;vertical-align:top}.ws-corr-table th{color:var(--text-muted, #888);font-weight:500;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.ws-corr-table td.num{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace)}.ws-corr-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid var(--border-color, #2a2a2a);color:var(--accent-cyan, #06b6d4);border-radius:6px;padding:.25rem .6rem;font-size:.75rem;cursor:pointer;transition:background .15s}.ws-corr-trigger:hover{background:var(--hover-bg, rgba(6, 182, 212, .08))}.ws-preset-gallery{display:flex;flex-direction:column;gap:.5rem;padding:.75rem .5rem;width:100%;min-width:220px;max-width:320px;color:var(--text-color, #e2e8f0);font-size:.85rem}.ws-preset-gallery__header{display:flex;align-items:center;justify-content:space-between;padding:0 .25rem .25rem;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .08))}.ws-preset-gallery__title{margin:0;font-size:.85rem;font-weight:600;letter-spacing:.01em}.ws-preset-gallery__count{font-size:.7rem;font-weight:500;opacity:.6}.ws-preset-category{display:flex;flex-direction:column}.ws-preset-category__header{display:flex;align-items:center;gap:.4rem;width:100%;padding:.4rem;border:none;background:transparent;color:inherit;cursor:pointer;border-radius:var(--radius-sm, 4px);transition:background .12s ease;text-align:left}.ws-preset-category__header:hover{background:var(--hover-bg, rgba(255, 255, 255, .06))}.ws-preset-category__caret{flex-shrink:0;opacity:.7}.ws-preset-category__icon{flex-shrink:0;opacity:.85}.ws-preset-category__label{flex:1;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.85}.ws-preset-category__count{font-size:.7rem;font-weight:500;opacity:.55}.ws-preset-list{list-style:none;margin:0;padding:0 0 .25rem .5rem;display:flex;flex-direction:column;gap:.15rem}.ws-preset-list__row{list-style:none}.ws-preset-item{display:flex;flex-direction:column;gap:.15rem;width:100%;padding:.4rem .55rem;border:1px solid transparent;border-radius:var(--radius-sm, 4px);background:transparent;color:inherit;cursor:pointer;text-align:left;transition:background .12s ease,border-color .12s ease}.ws-preset-item:hover{background:var(--hover-bg, rgba(255, 255, 255, .05));border-color:var(--border-color, rgba(255, 255, 255, .1))}.ws-preset-item:focus-visible{outline:none;border-color:var(--accent-blue, #38bdf8);box-shadow:0 0 0 2px var(--accent-blue-soft, rgba(56, 189, 248, .3))}.ws-preset-item--active{background:var(--active-bg, rgba(56, 189, 248, .12));border-color:var(--accent-blue, #38bdf8)}.ws-preset-item__title{font-size:.82rem;font-weight:500;line-height:1.3}.ws-preset-item__desc{font-size:.7rem;line-height:1.35;opacity:.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chat-page{padding:16px;min-height:calc(100vh - 32px);min-height:calc(100dvh - 32px);background:transparent}.chat-view-tabs{display:flex;gap:4px;margin-bottom:12px;padding:4px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;width:-moz-fit-content;width:fit-content}.chat-view-tab{display:flex;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:500;border-radius:7px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.chat-view-tab:hover{background:var(--bg-secondary);color:var(--text-primary)}.chat-view-tab.active{background:var(--accent-blue, #185FA5);color:#fff}.chat-workspace{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:14px;width:100%;min-height:calc(100vh - 64px);min-height:calc(100dvh - 64px)}.chat-workspace-left,.chat-workspace-right{display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:12px;background:var(--card-bg);box-shadow:var(--glass-shadow);overflow:hidden}.chat-workspace-right{min-width:0}@media(max-width:1100px){.chat-workspace{grid-template-columns:1fr;min-height:0}.chat-workspace-right{order:1;min-height:60vh}.chat-workspace-left{order:2;min-height:360px}}.chat-history-panel{border-bottom:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 75%,transparent)}.chat-history-header{display:flex;align-items:center;gap:8px;padding:12px 16px 8px;color:var(--text-secondary);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.chat-history-list{max-height:210px;overflow-y:auto;padding:0 10px 10px;display:flex;flex-direction:column;gap:6px}.chat-history-empty{margin:4px 0 8px;padding:8px;color:var(--text-muted);font-size:12px}.chat-history-item{text-align:left;border:1px solid var(--border-color);border-radius:var(--radius-md);background:transparent;padding:8px 10px;cursor:pointer;display:flex;flex-direction:column;gap:4px}.chat-history-item:hover{background:var(--hover-overlay)}.chat-history-item.active{border-color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 10%,transparent)}.chat-history-item-title{color:var(--text-primary);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-history-item-meta{color:var(--text-muted);font-size:11px}.chat-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border-color);color:var(--accent-cyan)}.chat-header-main{flex:1}.chat-header-title{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.chat-header-sub{margin:0;font-size:12px;color:var(--text-secondary)}.chat-header--with-actions{gap:10px}.chat-header-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.chat-header-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:999px;background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;transition:background .15s,color .15s}.chat-header-icon-btn:hover{background:var(--hover-overlay)}.chat-header-icon-btn.active{background:color-mix(in srgb,var(--accent-cyan) 18%,transparent);color:var(--accent-cyan)}.chat-history-dropdown-wrap{position:relative}.chat-history-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:320px;max-height:460px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 12px 32px #00000047;z-index:50;overflow:hidden;display:flex;flex-direction:column}.chat-history-dropdown-head{display:flex;align-items:center;justify-content:space-between;padding:.7rem .9rem;border-bottom:1px solid var(--border-color);font-size:.88rem;font-weight:700;color:var(--text-primary)}.chat-history-dropdown-close{width:28px;height:28px;border-radius:50%;border:0;background:transparent;color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.chat-history-dropdown-close:hover{background:var(--hover-overlay);color:var(--text-primary)}.chat-history-new-btn{display:flex;align-items:center;gap:6px;margin:.55rem .7rem .45rem;padding:.5rem .8rem;border:0;border-radius:8px;background:var(--accent-cyan);color:#fff;font-size:.82rem;font-weight:700;cursor:pointer}.chat-history-new-btn:hover{filter:brightness(.93)}.chat-history-session-list{flex:1;overflow-y:auto;padding:0 .45rem .55rem}.chat-history-empty{padding:1.25rem .75rem;text-align:center;font-size:.82rem;color:var(--text-secondary)}.chat-history-empty--error{color:var(--accent-red)}.chat-history-session-item{display:flex;align-items:stretch;gap:2px;border-radius:8px;margin-bottom:2px;transition:background .15s}.chat-history-session-item:hover{background:var(--hover-overlay)}.chat-history-session-item.active{background:color-mix(in srgb,var(--accent-cyan) 12%,transparent)}.chat-history-session-main{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:.5rem .6rem;min-width:0;border:0;background:transparent;color:var(--text-primary);cursor:pointer;text-align:left}.chat-history-session-name{font-size:.86rem;font-weight:600;color:var(--text-primary);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-history-session-item.active .chat-history-session-name{color:var(--accent-cyan)}.chat-history-session-meta{font-size:.72rem;color:var(--text-secondary)}.chat-history-session-del{width:30px;border:0;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s,color .12s,background .12s}.chat-history-session-item:hover .chat-history-session-del{opacity:1}.chat-history-session-del:hover{color:var(--accent-red);background:color-mix(in srgb,var(--accent-red) 10%,transparent)}.chat-workspace-toolbar{display:flex;gap:8px;align-items:center;padding:12px 16px}.chat-workspace-export-row{display:flex;gap:8px;align-items:center;padding:0 16px 10px;flex-wrap:wrap}.chat-workspace-canvas{margin:0 16px 16px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-secondary);padding:12px;flex:1;min-height:420px;overflow:auto}.chat-workspace-empty{height:100%;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--text-muted)}.chat-workspace-empty--stacked{flex-direction:column;text-align:center}.chat-workspace-empty-sub{font-size:12px;color:var(--text-secondary);max-width:560px}.chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.chat-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:8px;color:var(--text-secondary);text-align:center}.chat-welcome h3{margin:8px 0 0;color:var(--text-primary);font-size:18px}.chat-welcome p{margin:0;font-size:14px}.chat-welcome-icon{color:var(--accent-cyan);opacity:.5}.chat-examples{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:16px;max-width:600px}.chat-example-btn{padding:8px 14px;border:1px solid var(--border-color);border-radius:20px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all .15s}.chat-example-btn:hover{border-color:var(--accent-cyan);color:var(--accent-cyan);background:var(--card-bg-light)}.chat-msg{display:flex;gap:10px;max-width:85%}.chat-msg-user{align-self:flex-end;flex-direction:row-reverse}.chat-msg-assistant{align-self:flex-start}.chat-msg-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px}.chat-msg-user .chat-msg-icon{background:var(--accent-cyan);color:var(--text-on-accent)}.chat-msg-assistant .chat-msg-icon{background:var(--bg-tertiary);color:var(--accent-green)}.chat-msg-body{padding:10px 14px;border-radius:12px;font-size:14px;line-height:1.6}.chat-msg-user .chat-msg-body{background:var(--accent-cyan);color:var(--text-on-accent);border-bottom-right-radius:4px}.chat-msg-assistant .chat-msg-body{background:var(--bg-tertiary);color:var(--text-primary);border-bottom-left-radius:4px}.chat-msg-text{margin:0;white-space:pre-wrap;word-break:break-word}.chat-msg-data{margin-top:10px}.chat-msg-meta{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);margin-bottom:8px}.chat-view-toggle{display:flex;gap:2px;margin-left:auto;background:var(--bg-primary);border-radius:var(--radius-sm);padding:2px}.chat-toggle-btn{display:flex;align-items:center;gap:4px;padding:3px 8px;border:none;border-radius:4px;background:transparent;color:var(--text-muted);font-size:11px;cursor:pointer;transition:all .15s}.chat-toggle-btn:hover{color:var(--text-secondary)}.chat-toggle-btn.active{background:var(--bg-tertiary);color:var(--accent-cyan)}.chat-chart-wrapper{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px 4px 4px;background:var(--bg-secondary);min-height:250px}.chat-table-wrapper{overflow-x:auto;border:1px solid var(--border-color);border-radius:var(--radius-md)}.chat-table{width:100%;border-collapse:collapse;font-size:12px;font-family:var(--font-mono)}.chat-table th{padding:8px 10px;text-align:left;border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-weight:500;background:var(--bg-secondary);white-space:nowrap}.chat-table td{padding:6px 10px;color:var(--text-primary);border-bottom:1px solid var(--card-bg-light);white-space:nowrap}.chat-table tr:last-child td{border-bottom:none}.chat-table tr:hover td{background:var(--hover-overlay)}.chat-table-more{font-size:11px;color:var(--text-muted);padding:6px 10px;margin:0}.chat-sql-details{margin-top:8px}.chat-sql-details summary{font-size:12px;color:var(--text-muted);cursor:pointer}.chat-sql-details summary:hover{color:var(--accent-cyan)}.chat-sql-pre{margin:6px 0 0;padding:10px;border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--accent-green);font-size:11px;font-family:var(--font-mono);overflow-x:auto;white-space:pre-wrap;word-break:break-all}.chat-typing-dots{display:flex;gap:4px;padding:12px 16px}.chat-typing-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-cyan);opacity:.4;animation:chatDotBounce 1.4s ease-in-out infinite}.chat-typing-dot:nth-child(2){animation-delay:.2s}.chat-typing-dot:nth-child(3){animation-delay:.4s}@keyframes chatDotBounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-4px);opacity:1}}.chat-loader{animation:spin 1s linear infinite}.chat-loading-text{font-size:13px;color:var(--text-muted);margin-left:6px}.chat-error{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 12px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-red) 14%,transparent);color:var(--accent-red);font-size:13px}.chat-error-retry{margin-left:auto;border:1px solid color-mix(in srgb,var(--accent-red) 28%,transparent);border-radius:999px;background:transparent;color:inherit;padding:4px 10px;font-size:12px;cursor:pointer}.chat-error-retry:hover:not(:disabled){background:color-mix(in srgb,var(--accent-red) 12%,transparent)}.chat-error-retry:disabled{opacity:.5;cursor:not-allowed}.chat-toolbar{display:flex;gap:6px;padding:6px 16px 0;background:var(--bg-secondary);border-top:1px solid var(--border-color)}.chat-toolbar-btn{display:flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;transition:background .15s,color .15s}.chat-toolbar-btn:hover{background:var(--hover-overlay);color:var(--text-primary)}.chat-toolbar-btn--danger:hover{background:color-mix(in srgb,var(--accent-red) 14%,transparent);color:var(--accent-red);border-color:var(--accent-red)}.chat-action-toast{display:flex;align-items:center;gap:6px;padding:6px 14px;background:color-mix(in srgb,var(--accent-green) 14%,transparent);border-top:1px solid color-mix(in srgb,var(--accent-green) 26%,transparent);color:var(--accent-green);font-size:var(--text-sm);animation:chat-toast-in .25s ease}@keyframes chat-toast-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.chat-input-area{display:flex;align-items:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.chat-input{flex:1;padding:10px 14px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-primary);color:var(--text-primary);font-size:14px;font-family:var(--font-sans);resize:none;outline:none;min-height:42px;max-height:120px}.chat-input:focus{border-color:var(--accent-cyan)}.chat-input::-moz-placeholder{color:var(--text-muted)}.chat-input::placeholder{color:var(--text-muted)}.chat-send-btn{width:42px;height:42px;border:none;border-radius:var(--radius-lg);background:var(--accent-cyan);color:var(--text-on-accent);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .15s}.chat-send-btn:hover:not(:disabled){opacity:.85}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.chat-suggestion-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border:1px solid var(--border-color);border-radius:16px;background:var(--bg-secondary);color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all .15s;line-height:1.4}.chat-suggestion-chip:hover{border-color:var(--accent-cyan);color:var(--accent-cyan);background:var(--card-bg-light)}.chat-export-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s;margin-left:auto}.chat-export-btn:hover{background:var(--hover-overlay);color:var(--text-primary)}.chat-export-btn:disabled{opacity:.3;cursor:not-allowed}.chat-chart-modal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:var(--backdrop-bg);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.chat-chart-modal-content{width:90vw;max-width:1000px;height:70vh;background:var(--card-bg);border:var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--glass-shadow);padding:20px;display:flex;flex-direction:column;overflow:hidden}.chat-workspace-right{background:var(--card-bg);border-color:var(--border-color)}.chat-workspace-right .chat-header{background:var(--card-bg);border-bottom-color:var(--border-color);color:var(--accent-cyan)}.chat-workspace-right .chat-header-title{color:var(--text-primary)}.chat-workspace-right .chat-header-sub{color:var(--text-secondary)}.chat-workspace-right .chat-messages{background:var(--card-bg);padding:18px 14px 22px;gap:14px}.chat-workspace-right .chat-msg{max-width:92%}.chat-workspace-right .chat-msg-icon{width:26px;height:26px;border-radius:8px}.chat-workspace-right .chat-msg-user .chat-msg-icon{background:var(--accent-cyan);color:#fff}.chat-workspace-right .chat-msg-assistant .chat-msg-icon{background:var(--bg-tertiary);color:var(--text-primary)}.chat-workspace-right .chat-msg-body{padding:10px 12px;border-radius:12px;border:1px solid transparent}.chat-workspace-right .chat-msg-user .chat-msg-body{background:var(--accent-cyan);color:#fff;border-bottom-right-radius:6px}.chat-workspace-right .chat-msg-assistant .chat-msg-body{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color);border-bottom-left-radius:6px}.chat-workspace-right .chat-toolbar{background:var(--card-bg);border-top-color:var(--border-color);padding:8px 12px 0}.chat-workspace-right .chat-toolbar-btn{border-color:var(--border-color);border-radius:8px;background:var(--bg-tertiary);color:var(--text-secondary)}.chat-workspace-right .chat-toolbar-btn:hover{background:var(--hover-overlay);color:var(--text-primary)}.chat-workspace-right .chat-input-area{background:var(--card-bg);border-top-color:var(--border-color);padding:10px 12px 12px}.chat-workspace-right .chat-input{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-primary);border-radius:12px}.chat-workspace-right .chat-input::-moz-placeholder{color:var(--text-secondary)}.chat-workspace-right .chat-input::placeholder{color:var(--text-secondary)}.chat-workspace-right .chat-input:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-cyan) 22%,transparent)}.chat-workspace-right .chat-send-btn{width:40px;height:40px;border-radius:10px;background:var(--accent-cyan)}.chat-workspace-right .chat-send-btn:hover:not(:disabled){filter:brightness(.9);opacity:1}@media(max-width:1200px){.chat-workspace{grid-template-columns:1fr}.chat-workspace-left{min-height:420px}.chat-workspace-right{min-height:560px}}.main-content:has(>.cb-page){padding:0}.chat-page.cb-page{padding:0;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.cb-view-tabs{padding:10px 14px 0;flex-shrink:0}.cb-body{flex:1;display:flex;min-height:0;overflow:hidden}.cb-sidebar{width:240px;flex-shrink:0;background:var(--card-bg);border-right:1px solid var(--border-color);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;position:relative;transition:width .18s ease}.cb-sidebar--collapsed{width:36px;overflow:hidden}.cb-sidebar-expand{width:100%;flex:1;background:none;border:0;display:flex;flex-direction:column;align-items:center;padding:14px 0;color:var(--text-secondary);cursor:pointer;transition:background .12s,color .12s}.cb-sidebar-expand:hover{background:var(--bg-secondary);color:var(--text-primary)}.cb-sidebar-collapse{position:sticky;bottom:12px;margin:12px 6px 12px auto;width:24px;height:24px;border-radius:50%;border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-secondary);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 6px #0000001a;transition:background .12s,color .12s;flex-shrink:0}.cb-sidebar-collapse:hover{background:var(--bg-secondary);color:var(--text-primary)}.cb-section{border-bottom:1px solid var(--border-color)}.cb-section-head{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;width:100%;background:none;border:0;cursor:pointer;color:var(--text-primary);text-align:left;transition:background .12s}.cb-section-head:hover{background:var(--bg-secondary)}.cb-section-title{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.cb-section-body{padding:4px 10px 10px}.cb-new-chat-btn{display:flex;align-items:center;gap:5px;width:100%;padding:6px 9px;margin-bottom:6px;border:0;border-radius:7px;background:var(--accent-cyan);color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:filter .12s}.cb-new-chat-btn:hover{filter:brightness(.9)}.cb-session-empty{padding:6px 4px;font-size:11.5px;color:var(--text-secondary);text-align:center}.cb-session-item{display:flex;align-items:stretch;gap:2px;border-radius:6px;margin-bottom:2px;transition:background .12s}.cb-session-item:hover{background:var(--bg-secondary)}.cb-session-item.active{background:color-mix(in srgb,var(--accent-cyan) 10%,transparent)}.cb-session-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;padding:5px 6px;border:0;background:transparent;cursor:pointer;text-align:left}.cb-session-name{font-size:12px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cb-session-item.active .cb-session-name{color:var(--accent-cyan)}.cb-session-meta{font-size:10.5px;color:var(--text-secondary)}.cb-session-del{width:26px;border:0;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s,color .12s,background .12s}.cb-session-item:hover .cb-session-del{opacity:1}.cb-session-del:hover{color:var(--accent-red);background:color-mix(in srgb,var(--accent-red) 10%,transparent)}.cb-quick-item{display:flex;align-items:flex-start;gap:7px;padding:6px 8px;border-radius:5px;font-size:12px;color:var(--text-secondary);line-height:1.45;transition:background .12s,color .12s;cursor:pointer;border:none;background:transparent;text-align:left;width:100%}.cb-quick-item:hover{background:var(--bg-secondary);color:var(--text-primary)}.cb-quick-item svg{flex-shrink:0;margin-top:2px;color:var(--accent-cyan);opacity:.7}.cb-section--presets .cb-section-body--presets{padding:0}.cb-section--presets .ws-preset-gallery{min-width:0;max-width:100%;padding:.5rem .25rem}.cb-section--presets .ws-preset-item{font-size:.78rem}.cb-builder-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 14px;background:var(--bg-tertiary, var(--card-bg));border-bottom:1px solid var(--border-color);border-radius:0}.cb-builder-types{display:flex;gap:4px}.cb-builder-type-btn{display:flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid var(--border-color);border-radius:6px;background:transparent;color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all .15s}.cb-builder-type-btn:hover{background:var(--hover-overlay, rgba(255,255,255,.06));color:var(--text-primary)}.cb-builder-type-btn.active{background:var(--accent-blue, #185FA5);border-color:var(--accent-blue, #185FA5);color:#fff}.cb-builder-axes{display:flex;gap:8px;flex-wrap:wrap}.cb-builder-axis-label{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-secondary)}.cb-builder-axis-name{font-weight:500;white-space:nowrap}.cb-builder-select{padding:3px 6px;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-secondary, var(--card-bg));color:var(--text-primary);font-size:12px;cursor:pointer;max-width:120px}.cb-builder-toggle{display:flex;align-items:center;gap:4px}.cb-builder-toggle.active{background:color-mix(in srgb,var(--accent-blue) 20%,transparent);border-color:var(--accent-blue);color:var(--accent-blue)}.cb-main{flex:1;min-width:0;overflow-y:auto;display:flex;flex-direction:column;padding:12px 14px;background:var(--bg-secondary)}.cb-chart-card{flex:1;background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;display:flex;flex-direction:column;overflow:hidden;min-height:400px}.cb-chart-head{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;border-bottom:1px solid var(--border-color);gap:12px;flex-wrap:wrap;flex-shrink:0}.cb-chart-info{display:flex;align-items:center;gap:10px;color:var(--accent-cyan)}.cb-chart-title{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.cb-chart-sub{margin:0;font-size:11px;color:var(--text-secondary)}.cb-chart-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cb-toggle-group{display:flex;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:7px;padding:2px;gap:2px}.cb-toggle-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:500;border:none;border-radius:5px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .12s}.cb-toggle-btn:hover{color:var(--text-primary)}.cb-toggle-btn.active{background:var(--card-bg);color:var(--text-primary);box-shadow:0 1px 3px #00000026}.cb-export-group{display:flex;align-items:center;gap:4px}.cb-export-btn{display:flex;align-items:center;gap:3px;padding:4px 9px;font-size:11.5px;border:1px solid var(--border-color);border-radius:5px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .12s}.cb-export-btn:hover{border-color:var(--accent-blue, #185FA5);color:var(--accent-blue, #185FA5);background:var(--bg-secondary)}.cb-export-btn:disabled{opacity:.35;cursor:not-allowed}.cb-chart-area{flex:1;padding:14px 16px;overflow:auto;display:flex;flex-direction:column}.cb-chat-rail{width:360px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden;transition:width .18s ease}.cb-chat-rail.chat-workspace-right{border:none;border-radius:0;border-left:1px solid var(--border-color);box-shadow:none;min-width:unset}.cb-chat-rail--collapsed{width:36px}.cb-rail-expand{width:100%;height:100%;background:none;border:0;display:flex;flex-direction:column;align-items:center;padding:14px 0;color:var(--text-secondary);cursor:pointer;gap:6px;transition:background .12s,color .12s}.cb-rail-expand:hover{background:var(--bg-secondary);color:var(--text-primary)}.cb-rail-expand-label{writing-mode:vertical-rl;transform:rotate(180deg);font-size:10px;letter-spacing:.06em;font-weight:600;color:inherit}.cb-rail-head{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;border-bottom:1px solid var(--border-color);flex-shrink:0;background:var(--card-bg)}.cb-rail-title{display:flex;align-items:center;gap:9px;min-width:0}.cb-rail-icon{width:26px;height:26px;background:color-mix(in srgb,var(--accent-blue, #185FA5) 12%,transparent);border-radius:6px;display:grid;place-items:center;color:var(--accent-blue, #185FA5);flex-shrink:0}.cb-rail-name{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cb-rail-sub{font-size:10.5px;color:var(--text-secondary);margin-top:1px}.cb-rail-actions{display:flex;align-items:center;gap:2px;margin-left:auto;flex-shrink:0}.cb-icon-btn{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .12s,color .12s}.cb-icon-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.cb-fraud-view{flex:1;overflow-y:auto;padding:0 16px 16px}@media(max-width:1100px){.cb-sidebar{display:none}.cb-chat-rail,.cb-chat-rail.chat-workspace-right{width:320px}}@media(max-width:820px){.cb-body{flex-direction:column}.cb-chat-rail,.cb-chat-rail.chat-workspace-right{width:100%;height:400px;border-left:none;border-top:1px solid var(--border-color)}.cb-chat-rail--collapsed{height:36px;width:100%}}.chat-messages{container-type:inline-size}.chat-msg-assistant{max-width:min(100%,980px)}.chat-msg-assistant .chat-msg-body{min-width:0;flex:1}@container (max-width: 560px){.chat-msg{max-width:100%;gap:6px}.chat-msg-user{max-width:92%}.chat-msg-assistant .chat-msg-icon{display:none}.chat-msg-body{padding:9px 11px;font-size:13px}}.chat-result{position:relative}.chat-result-expand{position:absolute;top:-27px;right:0;display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-secondary);color:var(--text-muted);font:inherit;font-size:11px;cursor:pointer}.chat-result-expand:hover{color:var(--accent-cyan);border-color:var(--accent-cyan)}.chat-msg-meta:has(+.chat-result .chat-result-expand){padding-right:96px}.chat-cards{display:flex;flex-direction:column;gap:6px}.chat-card{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);padding:8px 10px}.chat-card-title{font-weight:600;font-size:13px;line-height:1.35;margin-bottom:4px;word-break:break-word}.chat-card-fields{display:grid;grid-template-columns:minmax(80px,max-content) 1fr;gap:2px 10px;margin:0;font-size:12px;line-height:1.45}.chat-card-fields dt{color:var(--text-muted)}.chat-card-fields dd{margin:0;color:var(--text-primary);word-break:break-word}.chat-card-fields dd.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.chat-cards-more{padding:6px;border:1px dashed var(--border-color);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font:inherit;font-size:12px;cursor:pointer}.chat-cards-more:hover{color:var(--accent-cyan);border-color:var(--accent-cyan)}.chat-table{font-family:inherit}.chat-table td{white-space:normal;max-width:280px;word-break:break-word;vertical-align:top}.chat-table th.num,.chat-table td.num{text-align:right;white-space:nowrap;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.chat-result-modal{position:fixed;inset:0;z-index:2000;background:var(--backdrop-bg);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px}.chat-result-modal-box{width:min(1200px,100%);max-height:100%;display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg, 12px);overflow:hidden}.chat-result-modal-head{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border-color);font-size:12px;color:var(--text-muted)}.chat-result-modal-head button{border:none;background:transparent;color:var(--text-muted);cursor:pointer;padding:4px}.chat-result-modal-head button:hover{color:var(--text-primary)}.chat-result-modal-body{overflow:auto}.chat-result-modal-body .chat-table th{position:sticky;top:0;z-index:1}.chat-cards-common{padding:6px 10px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-cyan) 7%,transparent);border:1px solid color-mix(in srgb,var(--accent-cyan) 22%,transparent)}.chat-cards-common:before{content:"Бүх мөрөнд";grid-column:1 / -1;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.chat-card-title:only-child,.chat-card-title+.chat-card-fields:empty{margin-bottom:0}.chat-card-fields:empty{display:none}.chat-md{white-space:normal}.chat-md p{margin:0 0 6px}.chat-md p:last-child{margin-bottom:0}.chat-md ul{margin:2px 0 6px;padding-left:18px}.chat-md li{margin:2px 0}.chat-md em{color:var(--text-muted);font-style:normal;font-size:.92em}.chat-md code{padding:0 4px;border-radius:4px;background:var(--bg-primary);font-size:.9em}.chat-md.streaming>:last-child:after{content:"▍";margin-left:1px;color:var(--accent-cyan);animation:chat-caret 1s steps(2) infinite}@keyframes chat-caret{50%{opacity:0}}.chat-writing{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:13px}.chat-stages{display:flex;flex-direction:column;gap:6px;min-width:240px;position:relative}.chat-stage{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted);opacity:.55}.chat-stage.now{color:var(--text-primary);opacity:1;font-weight:500}.chat-stage.done{color:var(--accent-green);opacity:.9}.chat-stage-dot{width:6px;height:6px;margin:0 3px;border-radius:50%;background:currentColor}.chat-stage-spin{animation:chat-spin .9s linear infinite;color:var(--accent-cyan)}@keyframes chat-spin{to{transform:rotate(360deg)}}.chat-stage-time{position:absolute;top:0;right:0;font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums}.chat-metric-chips{display:flex;flex-wrap:wrap;gap:4px;padding:0 34px 6px 0}.chat-metric-chip{padding:2px 8px;border:1px solid var(--border-color);border-radius:999px;background:transparent;color:var(--text-muted);font-size:11px;cursor:pointer}.chat-metric-chip:hover{color:var(--text-primary)}.chat-metric-chip.active{border-color:var(--accent-cyan);color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 10%,transparent)}.chat-chart-tools{display:flex;align-items:center;gap:8px;margin-bottom:6px}.chat-chart-tools .chat-chart-expand-btn{position:static;margin-left:auto}.chat-kind-seg{display:inline-flex;padding:2px;gap:2px;border-radius:7px;background:var(--bg-primary)}.chat-kind-seg button{display:grid;place-items:center;width:26px;height:22px;border:none;border-radius:5px;background:transparent;color:var(--text-muted);cursor:pointer}.chat-kind-seg button:hover{color:var(--text-primary)}.chat-kind-seg button.active{background:var(--bg-tertiary);color:var(--accent-cyan);box-shadow:0 0 0 1px var(--border-color)}.chat-swatches{display:inline-flex;gap:4px}.chat-swatch{width:14px;height:14px;padding:0;border:2px solid transparent;border-radius:50%;cursor:pointer;box-shadow:0 0 0 1px color-mix(in srgb,var(--text-primary) 15%,transparent);transition:transform .1s}.chat-swatch:hover{transform:scale(1.15)}.chat-swatch.active{border-color:var(--bg-tertiary);box-shadow:0 0 0 2px var(--text-primary)}.chat-metric-chips{padding-right:0}.chat-chart-container .recharts-legend-item-text{color:var(--text-secondary)!important}.chat-open-builder{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border:1px solid var(--border-color);border-radius:7px;background:transparent;color:var(--text-secondary);font-size:11.5px;cursor:pointer}.chat-open-builder:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.chat-table th{background:color-mix(in srgb,var(--text-primary) 9%,var(--bg-secondary));color:var(--text-primary);font-weight:600;border-bottom:1px solid var(--border-color)}.chat-table th+th,.chat-table td+td{border-left:1px solid var(--border-color)}.chat-table td{border-bottom-color:var(--border-color)}.chat-usage{margin-top:6px;font-size:11px;color:var(--text-muted)}.chat-usage summary{cursor:pointer;display:inline-flex;align-items:center;gap:4px;list-style:none;opacity:.75}.chat-usage summary::-webkit-details-marker{display:none}.chat-usage summary:hover,.chat-usage[open] summary{opacity:1;color:var(--accent-cyan)}.chat-usage-table{margin-top:6px;border-collapse:collapse;font-variant-numeric:tabular-nums}.chat-usage-table th,.chat-usage-table td{border:1px solid var(--border-color);padding:3px 8px;text-align:right;white-space:nowrap}.chat-usage-table th{background:var(--bg-tertiary);font-weight:600;color:var(--text-secondary)}.chat-usage-table td:first-child,.chat-usage-table th:first-child{text-align:left}.chat-usage-table td small{color:var(--text-muted);margin-left:4px}.chat-usage-table tr.total td{font-weight:600;color:var(--text-primary)}.chat-usage-note{margin:6px 0 0;max-width:520px;line-height:1.45}.chat-msg-col{display:flex;flex-direction:column;min-width:0}.chat-msg-assistant>.chat-msg-col{flex:1}.chat-msg-assistant>.chat-msg-col>.chat-msg-body{flex:0 0 auto}.chat-msg-user>.chat-msg-col{align-items:flex-end}.chat-msg{animation:chat-msg-in .18s ease-out}@keyframes chat-msg-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.chat-msg-actions{display:flex;align-items:center;gap:2px;margin-top:2px;min-height:22px;opacity:0;transition:opacity .12s}.chat-msg:hover .chat-msg-actions,.chat-msg:focus-within .chat-msg-actions{opacity:1}@media(hover:none){.chat-msg-actions{opacity:.7}}.chat-msg-actions button{display:grid;place-items:center;width:24px;height:22px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer}.chat-msg-actions button:hover{background:color-mix(in srgb,var(--text-primary) 9%,transparent);color:var(--text-primary)}.chat-msg-time{margin-left:4px;font-size:10.5px;color:var(--text-muted);font-variant-numeric:tabular-nums}.chat-edit{display:flex;flex-direction:column;gap:6px;min-width:min(320px,70vw)}.chat-edit textarea{width:100%;resize:none;padding:6px 8px;border:none;border-radius:8px;outline:none;background:color-mix(in srgb,#000 18%,transparent);color:inherit;font:inherit;line-height:1.45}.chat-edit-btns{display:flex;justify-content:flex-end;gap:6px}.chat-edit-btns button{padding:3px 10px;border:1px solid color-mix(in srgb,currentColor 40%,transparent);border-radius:999px;background:transparent;color:inherit;font-size:12px;cursor:pointer}.chat-edit-btns button.primary{background:var(--text-on-accent);color:var(--accent-cyan);border-color:transparent;font-weight:600}.chat-edit-btns button:disabled{opacity:.5;cursor:not-allowed}.chat-stopped{margin:4px 0 0;font-size:12px;color:var(--text-muted);font-style:italic}.chat-waiting{display:flex;align-items:center;gap:8px}.chat-waiting-label{font-size:12px;color:var(--text-muted);white-space:nowrap}.chat-jump{position:sticky;bottom:4px;align-self:center;z-index:2;flex:0 0 auto;display:grid;place-items:center;width:30px;height:30px;margin-top:-10px;padding:0;border:1px solid var(--border-color);border-radius:50%;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;box-shadow:0 2px 8px #00000040}.chat-jump:hover{color:var(--accent-cyan);border-color:var(--accent-cyan)}.chat-stop-btn{background:var(--text-primary);color:var(--bg-primary)}.chat-input{overflow-y:auto}@media(prefers-reduced-motion:reduce){.chat-msg,.chat-typing-dot,.chat-md.streaming>:last-child:after{animation:none}}.chat-md .chat-md-h{margin:8px 0 4px;font-weight:650;color:var(--text-primary)}.chat-md .chat-md-h:first-child{margin-top:0}.chat-md-table{margin:4px 0 8px;overflow-x:auto}.chat-md-table table{border-collapse:collapse;font-size:12px;line-height:1.4}.chat-md-table th,.chat-md-table td{padding:4px 8px;border-bottom:1px solid var(--border-color);text-align:left;vertical-align:top}.chat-md-table th{font-weight:600;color:var(--text-secondary);background:color-mix(in srgb,var(--text-primary) 6%,transparent);white-space:nowrap}.chat-md-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.chat-md-table tr:last-child td{border-bottom:none}.chat-chart-modal-body .chat-chart-wrapper{height:100%;min-height:0;box-sizing:border-box}.chat-chart-modal-header{display:flex;align-items:center;justify-content:flex-end;margin-bottom:12px}.chat-chart-modal-close{width:32px;height:32px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.chat-chart-modal-close:hover{background:var(--hover-overlay);color:var(--text-primary)}.chat-chart-modal-body{flex:1;min-height:0}.chat-chart-container{position:relative}.chat-chart-expand-btn{position:absolute;top:6px;right:6px;width:26px;height:26px;border:none;border-radius:5px;background:var(--bg-tertiary);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s,background .15s;z-index:2}.chat-chart-container:hover .chat-chart-expand-btn{opacity:1}.chat-chart-expand-btn:hover{background:var(--hover-overlay);color:var(--accent-cyan)}.chat-fab{position:fixed;bottom:36px;right:24px;z-index:1000;width:52px;height:52px;border:none;border-radius:50%;background:var(--accent-cyan);color:var(--text-on-accent);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(var(--accent-primary-rgb),.4);transition:transform .2s,box-shadow .2s}.chat-fab:hover{transform:scale(1.08);box-shadow:0 6px 28px rgba(var(--accent-primary-rgb),.5)}.chat-widget-backdrop{position:fixed;inset:0;z-index:1001;background:var(--backdrop-bg)}.chat-widget-drawer{position:fixed;bottom:24px;right:24px;z-index:1002;width:420px;height:560px;display:flex;flex-direction:column;border:var(--glass-border);border-radius:var(--radius-xl);background:var(--card-bg);box-shadow:var(--glass-shadow);overflow:hidden;animation:chatDrawerIn .2s ease-out}.chat-widget-drawer.chat-widget-expanded{width:680px;height:80vh}.chat-widget-actions{display:flex;gap:4px}.chat-widget-action-btn{width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.chat-widget-action-btn:hover{background:var(--hover-overlay);color:var(--text-primary)}@keyframes chatDrawerIn{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:640px){.chat-widget-drawer{bottom:0;right:0;width:100%;height:85vh;border-radius:var(--radius-xl) 14px 0 0}.chat-widget-drawer.chat-widget-expanded{width:100%;height:95vh}.chat-fab{bottom:24px;right:16px}}.an-mode-toggle{display:flex;gap:3px;background:var(--bg-tertiary);border-radius:var(--radius-md);padding:3px;margin-bottom:.75rem;width:-moz-fit-content;width:fit-content}.an-mode-btn{display:flex;align-items:center;gap:5px;padding:6px 14px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .15s}.an-mode-btn:hover{color:var(--text-secondary)}.an-mode-btn.active{background:var(--bg-secondary);color:var(--accent-cyan)}.an-visual-builder{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px}.an-visual-row{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap}.an-visual-label{display:flex;flex-direction:column;gap:4px;flex:1;min-width:120px;font-size:var(--text-sm);font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.an-visual-label select,.an-visual-label input{padding:8px 10px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-md);outline:none}.an-visual-label select:focus,.an-visual-label input:focus{border-color:var(--accent-cyan)}.an-schema-bar{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:.6rem}.an-schema-chip{display:inline-flex;align-items:center;gap:5px;padding:.35rem .7rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .15s}.an-schema-chip:hover{border-color:var(--text-muted)}.an-schema-chip.active{border-color:rgba(var(--accent-primary-rgb),.5);background:rgba(var(--accent-primary-rgb),.08);color:var(--accent-cyan)}.an-schema-count{font-size:.6rem;font-family:var(--font-mono);background:var(--bg-tertiary);padding:1px 5px;border-radius:4px;color:var(--text-muted)}.an-schema-cols{display:flex;flex-wrap:wrap;gap:4px;padding:.5rem .6rem;margin-bottom:.6rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);max-height:80px;overflow-y:auto}.an-col-tag{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:4px;font-size:var(--text-sm);font-family:var(--font-mono);background:var(--bg-tertiary);color:var(--text-secondary)}.an-col-tag small{font-size:.55rem;color:var(--text-muted);font-weight:400}.an-col-tag.num{color:var(--accent-green)}.an-col-tag.int{color:var(--accent-cyan)}.an-col-tag.date{color:var(--accent-yellow)}.an-join-select{padding:.35rem .6rem;border:1px dashed var(--border-color);border-radius:var(--radius-md);background:transparent;color:var(--accent-cyan);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;cursor:pointer;outline:none}.an-join-select:focus{border-color:var(--accent-cyan)}.an-drag-area{display:grid;grid-template-columns:1fr 280px;gap:.75rem;margin-bottom:.5rem}@media(max-width:700px){.an-drag-area{grid-template-columns:1fr}}.an-drag-label{font-size:var(--text-xs);font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.an-drag-list{display:flex;flex-wrap:wrap;gap:4px;padding:.5rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);min-height:60px}.an-drag-tag{display:inline-flex;align-items:center;gap:3px;padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:var(--font-mono);background:var(--bg-tertiary);color:var(--text-secondary);cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all .15s;border:1px solid transparent}.an-drag-tag:hover{border-color:var(--text-muted);background:var(--hover-overlay)}.an-drag-tag:active{cursor:grabbing;opacity:.7}.an-drag-tag small{font-size:.55rem;color:var(--text-muted)}.an-drag-tag.num{color:var(--accent-green)}.an-drag-tag.int{color:var(--accent-cyan)}.an-drag-tag.date{color:var(--accent-yellow)}.an-drag-tag.joined{border-style:dashed;border-color:var(--border-color)}.an-drag-tag.used-x{background:rgba(var(--accent-primary-rgb),.15);border-color:var(--accent-cyan)}.an-drag-tag.used-y{background:#22c55e1f;border-color:var(--accent-green)}.an-drop-zones{display:flex;flex-direction:column;gap:.5rem}.an-drop-zone{padding:.6rem .75rem;border:2px dashed var(--border-color);border-radius:var(--radius-lg);background:var(--bg-primary);transition:all .2s;min-height:48px}.an-drop-zone.filled{border-style:solid}.an-drop-zone:hover,.an-drop-zone.drag-over{border-color:rgba(var(--accent-primary-rgb),.4);background:rgba(var(--accent-primary-rgb),.04)}.an-drop-label{display:block;font-size:.6rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.an-drop-val{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:var(--radius-sm);font-size:var(--text-base);font-family:var(--font-mono);font-weight:600;background:rgba(var(--accent-primary-rgb),.1);color:var(--accent-cyan)}.an-drop-clear{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-xl);line-height:1;padding:0 2px}.an-drop-clear:hover{color:var(--accent-red)}.an-drop-hint{font-size:var(--text-sm);color:var(--text-muted);font-style:italic}.an-agg-btns{display:flex;gap:3px}.an-agg-btn{padding:3px 8px;border:1px solid var(--border-color);border-radius:5px;background:transparent;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:all .15s}.an-agg-btn:hover{border-color:var(--text-muted)}.an-agg-btn.active{background:var(--accent-cyan);border-color:var(--accent-cyan);color:var(--text-on-accent)}.an-sql-preview{margin:0;padding:.5rem .6rem;border-radius:var(--radius-sm);background:var(--bg-primary);border:1px solid var(--border-color);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--accent-green);white-space:pre-wrap;word-break:break-all;overflow:hidden;max-height:60px}.an-community{max-width:1180px;margin:0 auto;width:100%;padding:0 1rem;display:flex;flex-direction:column;gap:.85rem}@media(max-width:1280px){.an-community{max-width:100%;padding:0 1.25rem}}.an-feed-search{display:flex;align-items:center;gap:8px;padding:.55rem .9rem;border:1px solid var(--border-color);border-radius:999px;background:var(--card-bg);box-shadow:var(--glass-shadow)}.an-feed-search svg{color:var(--text-secondary);flex-shrink:0}.an-feed-search input{flex:1;border:none;background:transparent;font-family:var(--font-sans);font-size:.95rem;color:var(--text-primary);outline:none}.an-feed-search input::-moz-placeholder{color:var(--text-secondary)}.an-feed-search input::placeholder{color:var(--text-secondary)}.an-system-divider{display:flex;align-items:center;gap:.5rem;margin:1rem 0 .75rem;padding:0 .5rem;font-size:var(--text-sm);font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.an-system-divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.an-system-post{border-color:rgba(var(--accent-primary-rgb),.15)}.an-system-post:hover{border-color:rgba(var(--accent-primary-rgb),.3)}.an-btn-sm{padding:5px 10px;font-size:12px}.an-compose-prompt{display:flex;align-items:center;gap:.65rem;padding:.85rem 1rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--glass-shadow);flex-wrap:wrap}.an-compose-prompt-btn{flex:1;min-width:0;padding:.65rem 1rem;background:var(--bg-tertiary);border:0;border-radius:999px;text-align:left;color:var(--text-secondary);font-family:var(--font-sans);font-size:1rem;cursor:pointer;transition:background .15s}.an-compose-prompt-btn:hover{background:var(--hover-overlay);color:var(--text-primary)}.an-compose-prompt-divider{width:100%;height:1px;background:var(--border-color);margin:.15rem 0 0}.an-compose-prompt-actions{display:flex;width:100%;gap:.35rem}.an-compose-prompt-act{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:.6rem .75rem;background:transparent;border:0;border-radius:8px;color:var(--text-secondary);font-family:var(--font-sans);font-size:.88rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.an-compose-prompt-act:hover{background:var(--hover-overlay);color:var(--text-primary)}@media(max-width:640px){.an-compose-prompt-act span{display:none}}.an-compose-modal{width:min(500px,94vw)!important;max-height:90vh;overflow-y:auto;padding:0!important;background:var(--card-bg)!important;border-radius:12px!important}.an-compose-modal-header{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;border-bottom:1px solid var(--border-color);background:var(--card-bg);z-index:2}.an-compose-modal-header h3{margin:0;font-size:1.05rem;font-weight:700;color:var(--text-primary)}.an-compose-modal-close{width:34px;height:34px;border-radius:50%;border:0;background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s}.an-compose-modal-close:hover{background:var(--hover-overlay)}.an-compose-modal-user{display:flex;align-items:center;gap:.65rem;padding:.9rem 1.25rem .5rem}.an-compose-modal-user-meta{display:flex;flex-direction:column;min-width:0}.an-compose-modal-user-meta strong{font-size:.95rem;font-weight:700;color:var(--text-primary);line-height:1.15}.an-compose-audience{display:inline-flex;align-items:center;gap:4px;margin-top:2px;padding:2px 8px;background:var(--bg-tertiary);border-radius:999px;font-size:.72rem;font-weight:600;color:var(--text-secondary);width:-moz-fit-content;width:fit-content}.an-compose-modal-title{margin:.5rem 1.25rem 0;padding:.7rem 0;width:calc(100% - 2.5rem);border:0;border-bottom:1px solid var(--border-color);background:transparent;color:var(--text-primary);font-family:var(--font-sans);font-size:1.05rem;font-weight:600;outline:none}.an-compose-modal-title::-moz-placeholder{color:var(--text-secondary);font-weight:500}.an-compose-modal-title::placeholder{color:var(--text-secondary);font-weight:500}.an-compose-modal-textarea{width:calc(100% - 2.5rem);margin:.5rem 1.25rem;padding:0;border:0;background:transparent;color:var(--text-primary);font-family:var(--font-sans);font-size:1rem;line-height:1.5;resize:none;outline:none;min-height:100px}.an-compose-modal-textarea::-moz-placeholder{color:var(--text-secondary)}.an-compose-modal-textarea::placeholder{color:var(--text-secondary)}.an-compose-modal-attach{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:.75rem 1.25rem;padding:.6rem .85rem;border:1px solid var(--border-color);border-radius:10px;box-shadow:var(--glass-shadow)}.an-compose-modal-attach-label{font-size:.88rem;font-weight:600;color:var(--text-primary)}.an-compose-modal-attach-btns{display:flex;gap:4px}.an-compose-modal-attach-btn{width:36px;height:36px;border-radius:50%;border:0;background:transparent;color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s}.an-compose-modal-attach-btn:hover{background:var(--hover-overlay)}.an-compose-modal-attach-btn:disabled{opacity:.5;cursor:not-allowed}.an-compose-audience-box{margin:.75rem 1.25rem;padding:.75rem 1rem;background:var(--bg-tertiary);border-radius:10px;border:1px solid var(--border-color)}.an-compose-audience-box-head{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.35rem}.an-compose-audience-box-title{font-size:.92rem;font-weight:700;color:var(--text-primary);margin-bottom:.2rem}.an-compose-audience-box-desc{font-size:.82rem;color:var(--text-secondary);line-height:1.45}.an-compose-modal-submit{margin:.25rem 1.25rem 1.25rem;width:calc(100% - 2.5rem);padding:.7rem 1rem;background:var(--accent-cyan);color:#fff;border:0;border-radius:8px;font-family:var(--font-sans);font-size:.95rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:filter .15s}.an-compose-modal-submit:hover:not(:disabled){filter:brightness(.92)}.an-compose-modal-submit:disabled{background:var(--bg-tertiary);color:var(--text-secondary);cursor:not-allowed}.an-compose-box{margin:0;border:1px solid var(--border-color);border-radius:12px;background:var(--card-bg);box-shadow:var(--glass-shadow);overflow:hidden}.an-compose-header{display:flex;gap:.65rem;align-items:center;padding:.85rem 1rem .5rem}.an-post-avatar--compose{width:40px;height:40px;font-size:14px;background:var(--accent-cyan)!important;color:#fff;border-radius:50%}.an-compose-title-input{flex:1;background:var(--bg-tertiary);border:none;font-family:var(--font-sans);font-size:1rem;font-weight:500;color:var(--text-primary);outline:none;padding:.65rem 1rem;border-radius:999px;transition:background .15s}.an-compose-title-input:hover{background:var(--hover-overlay)}.an-compose-title-input::-moz-placeholder{color:var(--text-secondary);font-weight:400}.an-compose-title-input::placeholder{color:var(--text-secondary);font-weight:400}.an-compose-textarea{width:100%;border:none;background:transparent;font-family:var(--font-sans);font-size:.95rem;color:var(--text-primary);resize:none;outline:none;padding:0 1rem .5rem;min-height:32px;line-height:1.4}.an-compose-textarea::-moz-placeholder{color:var(--text-secondary)}.an-compose-textarea::placeholder{color:var(--text-secondary)}.an-compose-attached{display:flex;align-items:center;gap:6px;padding:.35rem .7rem;margin:.25rem 1rem;font-size:var(--text-sm);color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);border-radius:8px}.an-compose-attach-btns{display:flex;gap:4px;padding:.35rem;border-top:1px solid var(--border-color)}.an-compose-attach-btns .an-btn{flex:1;justify-content:center;padding:.55rem .5rem;background:transparent;border:0;color:var(--text-secondary);font-weight:600;border-radius:6px}.an-compose-attach-btns .an-btn:hover{background:var(--hover-overlay);color:var(--text-primary)}.an-compose-img-preview{position:relative;display:inline-block;margin:4px 12px}.an-compose-img-preview img{max-height:140px;max-width:100%;border-radius:var(--radius-md);border:1px solid var(--border-color);-o-object-fit:cover;object-fit:cover}.an-compose-img-remove{position:absolute;top:4px;right:4px;background:#0000008c;border:none;border-radius:50%;color:#fff;width:18px;height:18px;cursor:pointer;display:flex;align-items:center;justify-content:center}.an-post-image{width:calc(100% - 2rem);max-height:380px;-o-object-fit:cover;object-fit:cover;border-radius:8px;margin:.25rem 1rem .75rem;border:1px solid var(--border-color)}.an-compose-query-picker{border-top:1px solid var(--border-color);padding:.5rem;max-height:160px;overflow-y:auto}.an-compose-query-option{display:flex;align-items:center;gap:6px;width:100%;padding:.4rem .6rem;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-size:var(--text-base);font-family:var(--font-sans);cursor:pointer;text-align:left;transition:background .15s}.an-compose-query-option:hover{background:var(--hover-overlay);color:var(--text-primary)}.an-post-user-info{flex:1;min-width:0}.an-post-username{font-size:var(--text-md);font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px}.an-tag-pill{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:12px;font-size:var(--text-xs);font-weight:600;background:rgba(var(--accent-primary-rgb),.1);color:var(--accent-cyan)}.an-tag-pill--clickable{cursor:pointer;transition:background .15s,color .15s}.an-tag-pill--clickable:hover{background:rgba(var(--accent-primary-rgb),.25);color:var(--text-primary)}.an-trending-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:.65rem .85rem;border:1px solid var(--border-color);border-radius:12px;background:var(--card-bg);box-shadow:var(--glass-shadow);font-size:var(--text-sm);color:var(--text-secondary)}.an-trending-tag{display:inline-flex;align-items:center;gap:3px;padding:2px 10px;border-radius:12px;border:none;font-size:var(--text-sm);font-weight:600;background:rgba(var(--accent-primary-rgb),.08);color:var(--accent-cyan);cursor:pointer;transition:all .15s;font-family:var(--font-sans)}.an-trending-tag:hover{background:rgba(var(--accent-primary-rgb),.2);color:var(--text-primary)}.an-trending-tag.active{background:rgba(var(--accent-primary-rgb),.3);color:var(--text-primary);box-shadow:0 0 0 1px rgba(var(--accent-primary-rgb),.4)}.an-trending-tag-count{font-size:.6rem;opacity:.7;font-family:var(--font-mono)}.an-active-tag-filter{display:flex;align-items:center;gap:8px;padding:.45rem .7rem;border-radius:var(--radius-md);background:rgba(var(--accent-primary-rgb),.08);border:1px solid rgba(var(--accent-primary-rgb),.2);margin-bottom:.5rem;font-size:var(--text-base);font-weight:600;color:var(--accent-cyan)}.an-active-tag-filter .an-btn{margin-left:auto}.an-post-reactions-bar{display:flex;align-items:center;gap:6px;padding:.35rem .85rem;font-size:var(--text-sm);color:var(--text-muted);border-top:1px solid var(--border-color);cursor:pointer}.an-reaction-pill{display:inline-flex;align-items:center;gap:2px;background:var(--bg-secondary);border-radius:12px;padding:1px 6px}.an-reaction-emoji{font-size:var(--text-md)}.an-reaction-count{font-family:var(--font-mono);font-weight:500}.an-post-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:.5rem;border:none;background:transparent;color:var(--text-muted);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .15s;font-family:var(--font-sans)}.an-post-action-btn:hover{background:var(--hover-overlay);color:var(--text-primary)}.an-post-action-btn.an-liked{color:var(--accent-red)}.an-post-action-btn.an-liked svg{fill:currentColor}.an-reaction-btn-wrap{flex:1;position:relative;display:flex;align-items:stretch}.an-reaction-btn-wrap .an-post-action-btn{flex:1}.an-reaction-picker{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:999px;padding:5px 8px;display:flex;gap:2px;box-shadow:0 6px 24px #00000059;z-index:50;white-space:nowrap;animation:reactionPickerIn .14s ease-out}@keyframes reactionPickerIn{0%{opacity:0;transform:translate(-50%) translateY(4px) scale(.88)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.an-reaction-emoji-btn{background:none;border:none;cursor:pointer;font-size:1.25rem;padding:4px 5px;border-radius:50%;line-height:1;transition:transform .12s,background .12s}.an-reaction-emoji-btn:hover{transform:scale(1.45);background:var(--hover-overlay)}.an-reaction-emoji-btn.active{background:rgba(var(--accent-primary-rgb),.18);transform:scale(1.1)}.an-btn-reaction-emoji{font-size:var(--text-xl);line-height:1}.an-profile-page{max-width:1220px;margin:0 auto;padding:0}.an-profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}.an-profile-main,.an-profile-side{min-width:0}.an-profile-header-card{border:1px solid var(--border-color);border-radius:12px;background:var(--card-bg);box-shadow:var(--glass-shadow);padding:1.25rem;margin-bottom:1rem}.an-profile-header-row{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.an-profile-avatar-lg{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:var(--text-on-accent);flex-shrink:0}.an-profile-avatar-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:50%}.an-profile-header-info{flex:1;min-width:0}.an-profile-display-name{font-size:1.15rem;font-weight:700;color:var(--text-primary);margin:0 0 4px;display:flex;align-items:center;gap:8px}.an-profile-role-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:var(--text-xs);font-weight:600;background:rgba(var(--accent-primary-rgb),.12);color:var(--accent-cyan)}.an-profile-join-date{display:flex;align-items:center;gap:5px;font-size:var(--text-base);color:var(--text-muted)}.an-profile-stats-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem}.an-profile-stat-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:.6rem .25rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-muted)}.an-profile-stat-item.modern{align-items:flex-start;padding:.75rem .65rem}.an-profile-stat-item.modern.mint{background:color-mix(in srgb,#6ee7b7 20%,var(--bg-primary))}.an-profile-stat-item.modern.sky{background:color-mix(in srgb,#7dd3fc 18%,var(--bg-primary))}.an-profile-stat-item.modern.rose{background:color-mix(in srgb,#fda4af 20%,var(--bg-primary))}.an-profile-stat-item.modern.amber{background:color-mix(in srgb,#fcd34d 20%,var(--bg-primary))}.an-profile-stat-item.modern.violet{background:color-mix(in srgb,#c4b5fd 20%,var(--bg-primary))}.an-profile-stat-item svg{opacity:.6}.an-profile-stat-num{font-size:1.1rem;font-weight:700;color:var(--text-primary);font-family:var(--font-mono)}.an-profile-stat-label{font-size:.6rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.an-profile-tabs{display:flex;border-bottom:2px solid var(--border-color);margin-bottom:.75rem}.an-profile-tab{padding:.5rem 1rem;font-size:var(--text-md);font-weight:600;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s}.an-profile-tab.active{color:var(--accent-cyan);border-bottom-color:var(--accent-cyan)}button.an-profile-tab{background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px}button.an-profile-tab:hover{color:var(--text-secondary)}.an-follow-list{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.75rem}.an-follow-list-item{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-color);text-decoration:none;transition:border-color .15s}.an-follow-list-item:hover{border-color:var(--accent-cyan)}.an-follow-list-name{font-size:var(--text-md);font-weight:500;color:var(--text-primary);flex:1}.an-profile-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;margin-top:8px}.an-profile-contact-item{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:.75rem;min-width:0}.an-profile-contact-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.an-profile-live-card{border:1px solid var(--border-color);border-radius:12px;background:var(--card-bg);box-shadow:var(--glass-shadow);padding:.85rem;position:sticky;top:84px}.an-profile-live-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem}.an-profile-live-header h3{margin:0;font-size:.95rem;color:var(--text-primary)}.an-profile-live-header span{font-size:.75rem;color:var(--text-muted)}.an-profile-live-item{display:block;text-decoration:none;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary);padding:.55rem .65rem;margin-bottom:.45rem}.an-profile-live-item:hover{border-color:var(--accent-cyan)}.an-profile-live-title{color:var(--text-primary);font-size:.82rem;line-height:1.4;margin-bottom:.25rem}.an-profile-live-meta{display:flex;gap:.5rem;font-size:.7rem;color:var(--text-muted)}.an-post-username-link{color:inherit;text-decoration:none;transition:color .15s}.an-post-username-link:hover{color:var(--accent-cyan)}.an-feed-filter-tabs{display:flex;gap:.4rem;padding:.35rem;border:1px solid var(--border-color);border-radius:999px;background:var(--card-bg);box-shadow:var(--glass-shadow);align-self:flex-start}.an-feed-filter-tab{display:inline-flex;align-items:center;gap:6px;padding:.4rem .9rem;font-size:.9rem;font-weight:600;color:var(--text-secondary);background:transparent;border:0;border-radius:999px;cursor:pointer;transition:background .15s,color .15s}.an-feed-filter-tab:hover{color:var(--text-primary);background:var(--hover-overlay)}.an-feed-filter-tab.active{color:#fff;background:var(--accent-cyan);font-weight:700}@media(max-width:1100px){.an-profile-layout{grid-template-columns:1fr}.an-profile-live-card{position:static}}@media(max-width:840px){.an-profile-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.an-profile-contact-grid{grid-template-columns:1fr}}@media(max-width:1000px){.an-split{grid-template-columns:1fr}.an-feed{position:static;max-height:none}}@media(max-width:600px){.an-presets{gap:.35rem}.an-preset{min-width:100px;padding:.5rem .65rem}.an-profile-stats-grid{grid-template-columns:repeat(2,1fr)}}.an-profile-follow-counts{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--text-muted);margin-top:4px}.an-profile-follow-sep{opacity:.4}.an-profile-follow-counts strong{color:var(--text-primary);font-weight:700}.an-follow-btn{display:inline-flex;align-items:center;gap:6px;padding:.4rem .9rem;border-radius:20px;font-size:var(--text-base);font-weight:700;cursor:pointer;border:1px solid var(--accent-cyan);background:rgba(var(--accent-primary-rgb),.1);color:var(--accent-cyan);transition:all .15s;margin-left:auto;flex-shrink:0}.an-follow-btn:hover:not(:disabled){background:var(--accent-cyan);color:var(--text-on-accent)}.an-follow-btn.following{background:transparent;border-color:var(--border-color);color:var(--text-muted)}.an-follow-btn.following:hover:not(:disabled){border-color:var(--accent-red);color:var(--accent-red)}.an-follow-btn:disabled{opacity:.6;cursor:not-allowed}.an-dash-section{max-width:840px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:.85rem}.an-dash-section .an-community-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;background:linear-gradient(135deg,var(--accent-cyan) 0%,#0866ff 100%);color:#fff;border-radius:12px;box-shadow:var(--glass-shadow);margin:0}.an-dash-section .an-community-header h3{margin:0;font-size:1.1rem;font-weight:700;color:#fff;letter-spacing:-.01em}.an-dash-section .an-community-header .an-btn-primary{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:.5rem 1rem;border-radius:8px;font-weight:600;backdrop-filter:none}.an-dash-section .an-community-header .an-btn-primary:hover{background:#ffffff4d}.an-dash-section .an-create-post{padding:1rem 1.25rem;border:1px solid var(--border-color);border-radius:12px;background:var(--card-bg);box-shadow:var(--glass-shadow);display:flex;flex-direction:column;gap:.65rem}.an-dash-section .an-create-post .an-input{border:1px solid var(--border-color);border-radius:8px;padding:.7rem 1rem;background:var(--bg-tertiary);color:var(--text-primary);font-size:1rem;outline:none;transition:border-color .15s,box-shadow .15s}.an-dash-section .an-create-post .an-input:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-cyan) 22%,transparent)}.an-dash-card{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:16px 20px 16px 18px;border:1px solid var(--border-color);border-radius:12px;background:var(--card-bg);box-shadow:var(--glass-shadow);margin-bottom:0;cursor:pointer;overflow:hidden;transition:transform .15s,box-shadow .2s}.an-dash-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--accent-cyan),var(--accent-purple))}.an-dash-card:nth-child(6n+1):before{background:linear-gradient(180deg,#1877f2,#42a5f5)}.an-dash-card:nth-child(6n+2):before{background:linear-gradient(180deg,#31a24c,#66bb6a)}.an-dash-card:nth-child(6n+3):before{background:linear-gradient(180deg,#f3425f,#ff6b8a)}.an-dash-card:nth-child(6n+4):before{background:linear-gradient(180deg,#ab47bc,#ce93d8)}.an-dash-card:nth-child(6n+5):before{background:linear-gradient(180deg,#f9a825,#ffc947)}.an-dash-card:nth-child(6n):before{background:linear-gradient(180deg,#26a69a,#80cbc4)}.an-dash-card:hover{transform:translateY(-1px);box-shadow:0 4px 8px var(--shadow-color),0 8px 24px var(--shadow-color)}.an-dash-card-info{display:flex;align-items:center;gap:14px;flex:1;min-width:0}.an-dash-card-info>svg{flex-shrink:0;width:44px;height:44px;padding:10px;border-radius:10px;color:#fff;background:var(--accent-cyan)}.an-dash-card:nth-child(6n+1) .an-dash-card-info>svg{background:#1877f2}.an-dash-card:nth-child(6n+2) .an-dash-card-info>svg{background:#31a24c}.an-dash-card:nth-child(6n+3) .an-dash-card-info>svg{background:#f3425f}.an-dash-card:nth-child(6n+4) .an-dash-card-info>svg{background:#ab47bc}.an-dash-card:nth-child(6n+5) .an-dash-card-info>svg{background:#f9a825}.an-dash-card:nth-child(6n) .an-dash-card-info>svg{background:#26a69a}.an-dash-card-info>div{display:flex;flex-direction:column;min-width:0;flex:1}.an-dash-card-info strong{font-size:1rem;font-weight:700;color:var(--text-primary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-dash-card .an-saved-date{margin-top:2px;font-size:.82rem;color:var(--text-secondary);font-weight:500}.an-dash-card .an-btn-icon{opacity:0;transition:opacity .15s;padding:8px;border-radius:8px}.an-dash-card:hover .an-btn-icon{opacity:1;color:var(--accent-red)}.an-dash-card .an-btn-icon:hover{background:color-mix(in srgb,var(--accent-red) 12%,transparent)}.an-dash-section .an-empty-state{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:3rem 1.5rem;background:var(--card-bg);border:1px dashed var(--border-color);border-radius:12px;text-align:center}.an-dash-section .an-empty-icon{color:var(--accent-cyan);opacity:.85;margin-bottom:.35rem}.an-dash-section .an-empty-state h3{margin:0;font-size:1.05rem;font-weight:700;color:var(--text-primary)}.an-dash-section .an-empty-state p{margin:0;font-size:.9rem;color:var(--text-secondary);max-width:420px;line-height:1.5}.an-dash-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap;padding:10px 14px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--glass-shadow)}.an-dash-title{margin:0;flex:1;font-size:1rem;font-weight:700;color:var(--text-primary);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.an-dash-toolbar-right{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.an-grid-toggle{display:flex;gap:2px;background:var(--bg-tertiary);border-radius:999px;padding:3px}.an-grid-btn{width:32px;height:28px;border:none;border-radius:999px;background:transparent;color:var(--text-secondary);font-family:var(--font-mono);font-size:12px;font-weight:700;cursor:pointer;transition:background .15s,color .15s;display:flex;align-items:center;justify-content:center}.an-grid-btn:hover{color:var(--text-primary);background:var(--hover-overlay)}.an-grid-btn.active{background:var(--accent-cyan);color:#fff}.an-dash-bg-row{display:flex;gap:5px;align-items:center;padding:3px;background:var(--bg-tertiary);border-radius:999px}.an-bg-dot{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .15s,border-color .15s;padding:0}.an-bg-dot:hover{transform:scale(1.12)}.an-bg-dot.active{border-color:var(--accent-cyan);transform:scale(1.08)}.an-export-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:8px;border:0;background:var(--bg-tertiary);color:var(--text-primary);font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.an-export-btn:hover{color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 14%,transparent)}.an-export-btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.an-dash-canvas{border:1px solid var(--border-color);border-radius:12px;padding:18px;min-height:320px;background:var(--card-bg);box-shadow:var(--glass-shadow);transition:background .3s}.an-dash-grid{gap:14px!important}.an-dash-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media(max-width:900px){.an-dash-grid{grid-template-columns:1fr!important}}.an-dash-panel{border:1px solid var(--border-color);border-radius:8px;background:var(--card-bg);box-shadow:var(--glass-shadow);overflow:hidden;min-height:200px;transition:box-shadow .2s}.an-panel-wide{grid-column:1 / -1}.an-dash-panel:hover{box-shadow:0 2px 4px var(--shadow-color),0 4px 16px var(--shadow-color)}.an-dash-panel[draggable]{cursor:default}.an-panel-dragging{opacity:.4;border-color:var(--accent-cyan)}.an-panel-drag{cursor:grab;color:var(--text-muted);font-size:14px;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:0 2px;line-height:1;letter-spacing:-1px}.an-panel-drag:active{cursor:grabbing}.an-panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border-color);background:linear-gradient(180deg,color-mix(in srgb,var(--accent-cyan) 6%,var(--card-bg)),var(--card-bg));gap:6px;flex-wrap:wrap}.an-panel-header strong{font-size:.9rem;font-weight:700;color:var(--text-primary);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.an-dash-grid .an-dash-panel:nth-child(6n+1) .an-panel-header{background:linear-gradient(180deg,rgba(24,119,242,.1),var(--card-bg))}.an-dash-grid .an-dash-panel:nth-child(6n+2) .an-panel-header{background:linear-gradient(180deg,rgba(49,162,76,.1),var(--card-bg))}.an-dash-grid .an-dash-panel:nth-child(6n+3) .an-panel-header{background:linear-gradient(180deg,rgba(243,66,95,.1),var(--card-bg))}.an-dash-grid .an-dash-panel:nth-child(6n+4) .an-panel-header{background:linear-gradient(180deg,rgba(171,71,188,.1),var(--card-bg))}.an-dash-grid .an-dash-panel:nth-child(6n+5) .an-panel-header{background:linear-gradient(180deg,rgba(249,168,37,.1),var(--card-bg))}.an-dash-grid .an-dash-panel:nth-child(6n) .an-panel-header{background:linear-gradient(180deg,rgba(38,166,154,.1),var(--card-bg))}.an-panel-actions{display:flex;gap:2px;align-items:center;flex-wrap:wrap}.an-panel-sep{width:1px;height:14px;background:var(--border-color);margin:0 2px}.an-panel-body{padding:8px;max-height:500px;overflow:auto}.an-panel-bg-picker{display:flex;gap:3px;align-items:center}.an-bg-dot{width:18px;height:18px;border-radius:50%;border:2px solid var(--border-color);cursor:pointer;transition:all .15s}.an-bg-dot:hover{transform:scale(1.15);border-color:var(--text-muted)}.an-bg-dot.active{border-color:var(--accent-cyan);box-shadow:0 0 0 3px rgba(var(--accent-primary-rgb),.4)}.an-btn-icon.an-active{color:var(--accent-cyan)}.an-panel-legend{display:flex;flex-wrap:wrap;gap:8px;padding:6px 8px;margin-top:4px;font-size:var(--text-sm);color:var(--text-secondary)}.an-legend-item{display:inline-flex;align-items:center;gap:4px}.an-legend-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}.an-panel-loading{display:flex;align-items:center;gap:8px;justify-content:center;padding:40px;color:var(--text-muted);font-size:13px}.an-profile-item-meta{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:11px;color:var(--text-muted)}.an-profile-item-desc{margin:6px 0 0;font-size:13px;color:var(--text-secondary);line-height:1.4}.an-profile-sql{margin:8px 0 0;padding:8px;border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--accent-green);font-size:11px;font-family:var(--font-mono);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.an-badge{padding:1px 6px;border-radius:4px;background:rgba(var(--accent-primary-rgb),.15);color:var(--accent-cyan);font-size:10px;font-weight:500}.an-public-queries{display:flex;flex-direction:column;gap:.85rem;max-width:760px;width:100%;margin:0 auto}.an-pq-header{display:flex;align-items:center;gap:.85rem;padding:.85rem 1rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--glass-shadow);flex-wrap:wrap}.an-pq-header-title{display:flex;align-items:center;gap:.55rem;color:var(--text-primary)}.an-pq-header-title h3{margin:0;font-size:1rem;font-weight:700}.an-pq-header-title svg{color:var(--accent-cyan)}.an-pq-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:color-mix(in srgb,var(--accent-cyan) 18%,transparent);color:var(--accent-cyan);font-size:.72rem;font-weight:700}.an-pq-search{margin:0 0 0 auto!important;padding:.5rem .9rem!important;background:var(--bg-tertiary)!important;border:0!important;box-shadow:none!important;min-width:220px;flex:1 1 260px;max-width:360px}.an-pq-empty{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:2.5rem 1rem;background:var(--card-bg);border:1px dashed var(--border-color);border-radius:12px;color:var(--text-secondary);text-align:center}.an-pq-empty svg{color:var(--text-secondary);opacity:.6}.an-pq-empty p{margin:0;font-size:.95rem;font-weight:600;color:var(--text-primary)}.an-pq-empty small{font-size:.82rem;color:var(--text-secondary)}.an-pq-list{display:flex;flex-direction:column;gap:.85rem}.an-pq-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--glass-shadow);overflow:hidden;transition:box-shadow .2s}.an-pq-card:hover{box-shadow:0 2px 4px var(--shadow-color),0 4px 16px var(--shadow-color)}.an-pq-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.25rem}.an-pq-meta{display:flex;gap:.75rem;align-items:flex-start;flex:1;min-width:0}.an-pq-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#fff;background:var(--accent-cyan)!important;flex-shrink:0}.an-pq-title{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:4px;line-height:1.3}.an-pq-sub{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:6px;color:var(--text-secondary);font-size:.82rem}.an-pq-author{font-size:.86rem;color:var(--accent-cyan);font-weight:600}.an-pq-sub .an-badge{padding:2px 10px;border-radius:999px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.an-pq-forks{font-size:.82rem;color:var(--text-secondary);font-weight:600}.an-pq-desc{font-size:.92rem;color:var(--text-primary);margin:4px 0 0;line-height:1.45}.an-pq-actions{display:flex;gap:.4rem;flex-shrink:0;align-items:center}.an-pq-actions .an-btn{padding:.5rem .85rem;border-radius:8px;font-weight:600;font-size:.85rem;border:0;cursor:pointer;transition:background .15s}.an-pq-actions .an-btn:not(.an-btn-primary):not(.an-btn-success){background:var(--bg-tertiary);color:var(--text-primary)}.an-pq-actions .an-btn:not(.an-btn-primary):not(.an-btn-success):hover{background:var(--hover-overlay)}.an-pq-actions .an-btn-primary{background:var(--accent-cyan);color:#fff}.an-pq-actions .an-btn-primary:hover{filter:brightness(.92)}.an-btn-success{background:color-mix(in srgb,var(--accent-green) 15%,transparent)!important;color:var(--accent-green)!important}.an-pq-preview{border-top:1px solid var(--border-color);padding:.9rem 1.25rem 1.1rem;background:var(--card-bg-light)}.an-pq-sql{display:flex;align-items:flex-start;gap:6px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:.65rem .85rem;margin-bottom:.75rem;color:var(--text-secondary);font-size:.82rem}.an-pq-sql svg{flex-shrink:0;margin-top:2px;color:var(--accent-cyan)}.an-pq-sql code{font-family:var(--font-mono, monospace);font-size:.8rem;white-space:pre-wrap;word-break:break-all;color:var(--text-primary)}@media(max-width:900px){.an-pq-card-header{flex-direction:column;gap:.75rem}.an-pq-actions{width:100%;justify-content:flex-end}}.mn-map-wrap{position:relative;width:100%;padding:.5rem 0}.mn-map-wrap svg{display:block}.mn-map-tooltip{position:absolute;pointer-events:none;background:var(--overlay-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.4rem .7rem;z-index:10;white-space:nowrap;box-shadow:var(--glass-shadow)}.mn-map-tt-name{font-size:var(--text-base);font-weight:600;color:var(--text-primary)}.mn-map-tt-val{font-size:var(--text-sm);color:var(--accent-cyan);font-family:var(--font-mono);margin-top:2px}.mn-map-legend{display:flex;flex-direction:column;gap:.25rem;padding:.4rem .6rem;font-size:var(--text-sm)}.mn-map-legend-row{display:flex;align-items:center;gap:.5rem;color:var(--text-muted)}.mn-map-legend-hint{color:var(--text-muted);font-size:var(--text-sm)}.mn-map-unmatched{color:var(--accent-orange)}.mn-map-no-match{text-align:center;padding:1rem;color:var(--text-muted);font-size:var(--text-md);line-height:1.6}.an-page{display:flex;flex-direction:column;gap:1rem}.an-page-header-sticky{position:sticky;top:.1rem;z-index:20;background:var(--card-bg);border-bottom:1px solid var(--border-color);box-shadow:var(--glass-shadow);margin:calc(-1rem - 4px) -1.5rem .75rem;padding:0 1.5rem}@media(max-width:900px){.an-page-header-sticky{margin:calc(-.8rem - 4px) -.9rem .65rem;padding:0 .9rem}}.an-page-header-inner{display:flex;align-items:center;gap:.85rem;padding:.3rem 0;flex-wrap:wrap;min-height:48px}.an-page-title-block{display:flex;align-items:center;gap:.65rem;min-width:0}.an-page-title-icon-wrap{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-cyan);color:#fff;flex-shrink:0}.an-page-title{font-size:.98rem;font-weight:700;line-height:1.15;color:var(--text-primary);margin:0}.an-page-subtitle{font-size:.76rem;color:var(--text-secondary);margin:1px 0 0;line-height:1.2}.an-page-tabs{display:flex;align-items:center;gap:.15rem;margin-left:auto;flex-wrap:wrap}.an-page-tab{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 .75rem;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);font-size:.86rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.an-page-tab:hover{background:var(--hover-overlay);color:var(--text-primary)}.an-page-tab.active{color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 14%,transparent)}.an-page-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.an-notif-wrap{position:relative}@media(max-width:900px){.an-page-header-inner{padding:.65rem .75rem;gap:.65rem}.an-page-tab span{display:none}.an-page-tab{width:38px;padding:0;justify-content:center}}.ws-page{display:flex;flex-direction:column;height:100vh;overflow:hidden}.ws-tab-bar{display:flex;align-items:center;border-bottom:1px solid var(--border-color);background:var(--bg-primary);padding:0 1.25rem;flex-shrink:0}.ws-tab{display:inline-flex;align-items:center;gap:6px;padding:.65rem 1rem;font-size:.82rem;font-weight:500;color:var(--text-muted);border:none;background:none;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s}.ws-tab:hover{color:var(--text-secondary)}.ws-tab.active{color:var(--accent-cyan);border-bottom-color:var(--accent-cyan);font-weight:600}.ws-tab-loading{display:flex;align-items:center;justify-content:center;height:300px;color:var(--text-muted);font-size:.85rem}.ws-subheader{display:flex;align-items:center;justify-content:space-between;padding:0 1rem;height:44px;flex-shrink:0;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.ws-breadcrumb{display:flex;align-items:center;gap:.3rem;font-size:.8rem;color:var(--text-muted)}.ws-breadcrumb-sep{opacity:.4;flex-shrink:0}.ws-breadcrumb-current{color:var(--text-primary);font-weight:600}.ws-subheader-actions{display:flex;align-items:center;gap:.4rem}.ws-sub-btn{display:inline-flex;align-items:center;gap:5px;padding:.35rem .8rem;font-size:.79rem;font-weight:600;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:all .13s;font-family:var(--font-sans)}.ws-sub-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.ws-sub-btn--primary{background:var(--accent-cyan);color:#fff;border-color:var(--accent-cyan)}.ws-sub-btn--primary:hover{opacity:.85}.ws-sub-btn--ghost{background:transparent;border-color:transparent;color:var(--text-muted);padding:.28rem .5rem;font-size:.76rem}.ws-sub-btn--ghost:hover{background:var(--bg-tertiary);border-color:transparent;color:var(--text-secondary)}.ws-layout{display:grid;grid-template-columns:240px minmax(0,1fr);flex:1;min-height:0;overflow:hidden;background:var(--bg-primary);transition:grid-template-columns .22s ease}.ws-layout.ws-left-collapsed{grid-template-columns:36px minmax(0,1fr)}.ws-left{display:flex;flex-direction:column;border-right:1px solid var(--border-color);overflow:hidden;background:var(--bg-secondary)}.ws-left-scroll{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin}.ws-left-footer{border-top:1px solid var(--border-color);flex-shrink:0}.ws-left-title{padding:.875rem 1rem .5rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);flex-shrink:0}.ws-left-divider{height:1px;background:var(--border-color);margin:.25rem 0;flex-shrink:0}.ws-result-count{font-size:.72rem;font-weight:700;color:var(--accent-cyan);padding:.2rem .75rem;letter-spacing:.02em}.ws-left-section-label{padding:.6rem 1rem .3rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);flex-shrink:0}.ws-cat-tabs{display:flex;flex-direction:column;padding:0 .5rem .25rem;gap:1px;flex-shrink:0}.ws-cat-tab{text-align:left;padding:.38rem .6rem;font-size:.79rem;font-weight:600;color:var(--text-muted);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:background .12s,color .12s}.ws-cat-tab:hover{background:var(--bg-tertiary);color:var(--text-secondary)}.ws-cat-tab.active{background:rgba(var(--accent-primary-rgb),.1);color:var(--accent-cyan)}.ws-preset-list{list-style:none;margin:0;padding:0 .5rem .25rem;flex-shrink:0}.ws-preset-row{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:.4rem .6rem;border:none;border-radius:6px;background:transparent;cursor:pointer;transition:background .12s;text-align:left;margin-bottom:1px}.ws-preset-row:hover{background:var(--bg-tertiary)}.ws-preset-row.active{background:rgba(var(--accent-primary-rgb),.1)}.ws-preset-name{font-size:.8rem;font-weight:600;color:var(--text-primary)}.ws-preset-cat{font-size:.68rem;color:var(--text-muted);margin-top:1px}.ws-mode-bar{display:flex;gap:.3rem;padding:.25rem .75rem .5rem;flex-shrink:0}.ws-mode-btn{flex:1;padding:.38rem .5rem;font-size:.78rem;font-weight:600;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-muted);cursor:pointer;transition:all .13s}.ws-mode-btn:hover{color:var(--text-secondary)}.ws-mode-btn.active{background:rgba(var(--accent-primary-rgb),.12);border-color:rgba(var(--accent-primary-rgb),.4);color:var(--accent-cyan)}.ws-chart-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;padding:.25rem .75rem .5rem;flex-shrink:0}.ws-chart-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;padding:.55rem .25rem;border-radius:7px;color:var(--text-muted);cursor:pointer;font-size:.67rem;font-weight:600;transition:all .13s;text-align:center;min-height:52px}.ws-chart-card:hover{border-color:rgba(var(--accent-primary-rgb),.4);color:var(--text-primary);background:rgba(var(--accent-primary-rgb),.05)}.ws-chart-card.active{border-color:var(--accent-cyan);background:rgba(var(--accent-primary-rgb),.12);color:var(--accent-cyan)}.ws-chart-card--more{border-style:dashed}.ws-section-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--text-muted);font-size:.76rem;font-weight:600;cursor:pointer;padding:.4rem .75rem;transition:color .12s;text-align:left;width:100%;flex-shrink:0}.ws-section-toggle span{flex:1}.ws-section-toggle:hover{color:var(--text-primary)}.ws-chevron-open{transform:rotate(180deg)}.ws-saved-list{display:flex;flex-direction:column;gap:1px;padding:0 .5rem .5rem;flex-shrink:0}.ws-saved-empty{font-size:.75rem;color:var(--text-muted);padding:.25rem .6rem}.ws-saved-item{display:flex;align-items:center;gap:.4rem;padding:.4rem .6rem;border-radius:6px;background:transparent;cursor:pointer;transition:background .12s}.ws-saved-item:hover{background:var(--bg-tertiary)}.ws-saved-item.active{background:rgba(var(--accent-primary-rgb),.08)}.ws-saved-title{flex:1;font-size:.78rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-saved-del{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px;display:flex;align-items:center;flex-shrink:0;opacity:0;transition:opacity .12s,color .12s}.ws-saved-item:hover .ws-saved-del{opacity:1}.ws-saved-del:hover{color:#f87171}.ws-left--collapsed{overflow:hidden;align-items:center;padding:.5rem 0;gap:.75rem}.ws-left-expand-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:background .12s,color .12s}.ws-left-expand-btn:hover{background:var(--bg-tertiary);color:var(--accent-cyan)}.ws-left-collapsed-label{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.ws-center{overflow-y:auto;padding:0;background:var(--bg-primary)}.ws-ai-panel{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.ws-ai-panel--collapsed{align-items:center;padding:.5rem 0;gap:.75rem}.ws-ai-expand-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:background .12s,color .12s}.ws-ai-expand-btn:hover{background:var(--bg-tertiary);color:var(--accent-cyan)}.ws-ai-collapsed-label{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.ws-ai-header{display:flex;align-items:center;justify-content:space-between;padding:.4rem .875rem;border-bottom:1px solid var(--border-color);flex-shrink:0;gap:.5rem}.ws-ai-tab-row{display:flex;gap:2px;background:var(--bg-primary);border-radius:7px;padding:2px}.ws-ai-tab{padding:.2rem .6rem;font-size:.72rem;font-weight:600;border:none;border-radius:5px;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .12s;white-space:nowrap}.ws-ai-tab.active{background:var(--bg-secondary);color:var(--accent-cyan)}.ws-ai-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.ws-ai-actions{display:flex;align-items:center;gap:.15rem;margin-left:auto}.ws-ai-insights{display:flex;flex-direction:column;gap:.75rem;padding:.875rem;overflow-y:auto;flex:1}.ws-ai-insights-head{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;color:var(--accent-cyan)}.ws-ai-insights-icon{color:var(--accent-cyan)}.ws-ai-bullets{display:flex;flex-direction:column;gap:.5rem}.ws-ai-bullet{display:flex;gap:.6rem;align-items:flex-start;font-size:.78rem;color:var(--text-secondary);line-height:1.5}.ws-ai-bullet-num{font-size:.65rem;font-weight:700;color:var(--accent-cyan);font-family:monospace;flex-shrink:0;margin-top:2px}.ws-ai-insights-actions{display:flex;gap:.5rem;flex-wrap:wrap}.ws-ai-ins-btn{padding:.3rem .65rem;font-size:.74rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all .12s}.ws-ai-ins-btn:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.ws-ai-icon-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .12s,color .12s}.ws-ai-icon-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.ws-ai-drop-wrap{position:relative}.ws-ai-dropdown{position:absolute;top:calc(100% + 4px);right:0;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 8px 24px #00000059;z-index:200;min-width:220px;overflow:hidden}.ws-ai-drop-title{padding:.55rem .85rem .35rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border-color)}.ws-ai-drop-empty{padding:.75rem .85rem;font-size:.78rem;color:var(--text-muted)}.ws-ai-hist-drop{max-height:320px;overflow-y:auto}.ws-ai-hist-item{display:flex;flex-direction:column;padding:.55rem 2rem .55rem .85rem;cursor:pointer;transition:background .12s;border-bottom:1px solid var(--border-color);position:relative}.ws-ai-hist-item:last-child{border-bottom:none}.ws-ai-hist-item:hover{background:var(--bg-tertiary)}.ws-ai-hist-item.active{background:rgba(var(--accent-primary-rgb),.07)}.ws-ai-hist-name{font-size:.8rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-ai-hist-preview{font-size:.72rem;color:var(--text-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-ai-hist-del{position:absolute;right:.6rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;display:flex;align-items:center;opacity:0;transition:opacity .12s,color .12s}.ws-ai-hist-item:hover .ws-ai-hist-del{opacity:1}.ws-ai-hist-del:hover{color:#f87171}.ws-ai-menu-drop{min-width:160px;padding:.35rem 0}.ws-ai-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:.5rem .85rem;background:none;border:none;font-size:.82rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:background .12s,color .12s;text-align:left}.ws-ai-menu-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.ws-ai-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.ws-ai-body .chat-messages{flex:1;min-height:0}.ws-ai-body .chat-toolbar,.ws-ai-body .chat-action-toast,.ws-ai-body .chat-input-area{flex-shrink:0}.ws-talbar-body{padding:.4rem .6rem .5rem;display:flex;flex-direction:column;gap:.4rem}.ws-table-bar{display:flex;flex-wrap:wrap;gap:.3rem}.ws-table-chip{padding:.25rem .6rem;font-size:.75rem;font-weight:600;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:all .13s}.ws-table-chip:hover{border-color:var(--text-muted)}.ws-table-chip.active{border-color:rgba(var(--accent-primary-rgb),.5);background:rgba(var(--accent-primary-rgb),.08);color:var(--accent-cyan)}.ws-join-select{width:100%;padding:.3rem .6rem;font-size:.77rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;outline:none}.ws-field-list{display:flex;flex-direction:column;gap:.25rem;max-height:260px;overflow-y:auto;scrollbar-width:thin}.ws-field-tag{display:inline-flex;align-items:center;gap:5px;padding:.28rem .55rem;border-radius:5px;border:1px solid var(--border-color);background:var(--bg-tertiary);font-size:.76rem;color:var(--text-secondary);cursor:grab;transition:all .12s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ws-field-tag:hover{border-color:var(--accent-cyan);color:var(--text-primary)}.ws-field-tag--numeric{border-color:#22c55e33}.ws-field-tag--int{border-color:#6366f133}.ws-field-tag--date{border-color:#fb923c33}.ws-field-tag--joined{opacity:.75}.ws-field-tag.used-x{background:rgba(var(--accent-primary-rgb),.1);border-color:rgba(var(--accent-primary-rgb),.4)}.ws-field-tag.used-y{background:#22c55e14;border-color:#22c55e4d}.ws-field-type{font-size:.63rem;color:var(--text-muted)}.ws-field-kind{font-size:.65rem;font-weight:700;font-family:var(--font-mono);color:var(--text-muted);min-width:12px;text-align:center}.ws-agg-row{display:flex;align-items:center;gap:.5rem;padding:0 .75rem}.ws-agg-label{font-size:.75rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.ws-agg-select{flex:1;padding:.3rem .5rem;font-size:.8rem;font-weight:600;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;outline:none}.ws-agg-select:focus{border-color:var(--accent-cyan)}.ws-filter-builder{display:flex;flex-direction:column;gap:.35rem;padding:0 .75rem}.ws-filter-row{display:flex;align-items:center;gap:.3rem}.ws-filter-col-sel,.ws-filter-val-sel{padding:.28rem .4rem;font-size:.75rem;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-tertiary);color:var(--text-primary);outline:none;cursor:pointer}.ws-filter-col-sel{flex:1.1;min-width:0}.ws-filter-val-sel{flex:1;min-width:0}.ws-filter-val-inp{flex:1;padding:.28rem .4rem;font-size:.75rem;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-tertiary);color:var(--text-primary);outline:none;font-family:var(--font-mono);min-width:0}.ws-filter-val-inp:focus,.ws-filter-col-sel:focus,.ws-filter-val-sel:focus{border-color:var(--accent-cyan)}.ws-filter-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;line-height:1;padding:0 2px;flex-shrink:0}.ws-filter-remove:hover{color:#f87171}.ws-filter-add{align-self:flex-start;background:none;border:1px dashed var(--border-color);border-radius:5px;color:var(--text-muted);cursor:pointer;font-size:.73rem;padding:.25rem .6rem;transition:all .13s;font-family:var(--font-sans)}.ws-filter-add:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}@media(max-width:1200px){.ws-layout{grid-template-columns:220px minmax(0,1fr)}}@media(max-width:900px){.ws-layout{grid-template-columns:1fr;height:auto;overflow:visible}.ws-left{border:none;border-bottom:1px solid var(--border-color)}}.ws-hub{padding:2rem;max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:2rem}.ws-hub-header{display:flex;align-items:center;gap:1rem}.ws-hub-header .sp-type-toggle{margin-left:auto;flex-shrink:0}.ws-hub-icon{width:52px;height:52px;border-radius:14px;background:color-mix(in srgb,var(--accent-cyan) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent-cyan) 24%,transparent);display:flex;align-items:center;justify-content:center;color:var(--accent-cyan);flex-shrink:0}.ws-hub-title{font-size:1.4rem;font-weight:700;color:var(--text-primary);margin:0}.ws-hub-sub{font-size:.85rem;color:var(--text-muted);margin:.2rem 0 0}.ws-hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.ws-hub-card{display:flex;align-items:center;gap:1rem;padding:1.1rem 1.25rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;cursor:pointer;text-align:left;transition:border-color .18s,box-shadow .18s,transform .12s;position:relative;overflow:hidden}.ws-hub-card:before{content:"";position:absolute;inset:0;background:color-mix(in srgb,var(--card-accent, var(--accent-cyan)) 5%,transparent);opacity:0;transition:opacity .18s}.ws-hub-card:hover:before{opacity:1}.ws-hub-card:hover{border-color:color-mix(in srgb,var(--card-accent, var(--accent-cyan)) 50%,transparent);box-shadow:0 4px 20px color-mix(in srgb,var(--card-accent, var(--accent-cyan)) 12%,transparent);transform:translateY(-2px)}.ws-hub-card--primary{border-color:color-mix(in srgb,var(--card-accent) 30%,transparent);background:color-mix(in srgb,var(--card-accent) 6%,var(--bg-secondary))}.ws-hub-card-icon{width:44px;height:44px;border-radius:10px;background:color-mix(in srgb,var(--card-accent, var(--accent-cyan)) 12%,transparent);display:flex;align-items:center;justify-content:center;color:var(--card-accent, var(--accent-cyan));flex-shrink:0}.ws-hub-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.ws-hub-card-label{font-size:.9rem;font-weight:700;color:var(--text-primary)}.ws-hub-card-desc{font-size:.75rem;color:var(--text-muted);line-height:1.4}.ws-hub-card-arrow{color:var(--text-muted);flex-shrink:0;transition:transform .15s,color .15s}.ws-hub-card:hover .ws-hub-card-arrow{transform:translate(3px);color:var(--card-accent, var(--accent-cyan))}.ws-hub-extras{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.ws-hub-extra-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.ws-hub-extra-head{display:flex;align-items:center;gap:6px;padding:.65rem 1rem;border-bottom:1px solid var(--border-color);font-size:.78rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.ws-hub-extra-items{display:flex;flex-direction:column}.ws-hub-recent-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:transparent;border:none;border-bottom:1px solid color-mix(in srgb,var(--border-color) 50%,transparent);cursor:pointer;text-align:left;font-size:.8rem;color:var(--text-secondary);transition:background .12s,color .12s}.ws-hub-recent-item:last-child{border-bottom:none}.ws-hub-recent-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.ws-hub-recent-item>svg{color:var(--text-muted);flex-shrink:0}.ws-hub-recent-item>span:nth-child(2){flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-hub-recent-cat{font-size:.7rem;color:var(--text-muted);flex-shrink:0}.ws-sub-view{display:flex;flex-direction:column;height:100vh;overflow:hidden}.ws-sub-view .ws-tab-scroll,.ws-tab-scroll{flex:1;min-height:0;overflow-y:auto}.ws-back-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .12s,color .12s;flex-shrink:0;margin-right:2px}.ws-back-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}@media(max-width:700px){.ws-hub-grid,.ws-hub-extras{grid-template-columns:1fr}}.main-content:has(>.ai-page){padding:0}.ai-page{display:flex;height:100vh;min-height:420px}.ai-page>.ws-page{flex:1;min-width:0}@media(max-width:900px){.ai-page{height:auto}}.ws-ai-panel .ws-ai-header{padding:0 .6rem 0 .8rem;height:var(--app-head-h);box-sizing:border-box}.ws-ai-brand{display:flex;align-items:center;gap:.55rem;min-width:0;flex:1}.ws-ai-brand-icon{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-cyan) 85%,#fff 0%),color-mix(in srgb,var(--accent-cyan) 55%,#8b5cf6));color:#fff}.ws-ai-brand-text{display:flex;align-items:baseline;gap:.4rem;min-width:0;line-height:1.2}.ws-ai-brand-text .ws-ai-title{font-size:.66rem;flex-shrink:0}.ws-ai-brand-text .ws-ai-title:after{content:"·";margin-left:.4rem;color:var(--text-muted)}.ws-ai-chat-name{font-size:.8rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-ai-icon-btn.on{background:var(--bg-tertiary);color:var(--accent-cyan)}.ws-ai-new-btn{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 .6rem;margin-right:.15rem;border:1px solid color-mix(in srgb,var(--accent-cyan) 45%,transparent);border-radius:7px;background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);color:var(--accent-cyan);font-size:.75rem;font-weight:600;cursor:pointer;transition:background .12s}.ws-ai-new-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent-cyan) 18%,transparent)}.ws-ai-new-btn:disabled{opacity:.4;cursor:default}.ws-ai-panel .ws-ai-hist-drop{width:300px;max-height:none;display:flex;flex-direction:column;overflow:hidden}.ws-ai-drop-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.45rem .5rem .45rem .85rem;border-bottom:1px solid var(--border-color)}.ws-ai-drop-head .ws-ai-drop-title{padding:0;border:none}.ws-ai-drop-new{display:inline-flex;align-items:center;gap:3px;padding:.25rem .55rem;border:none;border-radius:6px;background:var(--accent-cyan);color:var(--text-on-accent, #fff);font-size:.72rem;font-weight:600;cursor:pointer}.ws-ai-drop-new:hover{opacity:.88}.ws-ai-hist-list{max-height:360px;overflow-y:auto}.ws-ai-panel .ws-ai-hist-item.active{background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);box-shadow:inset 2px 0 0 var(--accent-cyan)}.ws-ai-panel .ws-ai-menu-drop{min-width:200px}.ws-ai-menu-item:disabled{opacity:.4;cursor:default}.ws-ai-menu-item.danger:hover:not(:disabled){color:#f87171;background:color-mix(in srgb,#f87171 10%,transparent)}.ws-ai-menu-sep{height:1px;margin:.3rem 0;background:var(--border-color)}.ws-ai-help{position:relative;display:flex;flex-direction:column;gap:.4rem;flex-shrink:0;margin:.6rem .75rem 0;padding:.65rem 2rem .65rem .8rem;border-radius:10px;border:1px solid color-mix(in srgb,var(--accent-cyan) 30%,var(--border-color));background:color-mix(in srgb,var(--accent-cyan) 6%,var(--bg-secondary));font-size:.76rem;line-height:1.45;color:var(--text-secondary)}.ws-ai-help-row{display:grid;grid-template-columns:58px 1fr;gap:.5rem}.ws-ai-help-row b{color:var(--text-primary);font-weight:600}.ws-ai-help-x{position:absolute;top:6px;right:6px;display:grid;place-items:center;width:20px;height:20px;border:none;border-radius:5px;background:transparent;color:var(--text-muted);cursor:pointer}.ws-ai-help-x:hover{background:var(--bg-tertiary);color:var(--text-primary)}.ws-ai-body .chat-messages{padding:14px 12px;gap:14px}.ws-ai-body .chat-msg-assistant{max-width:100%;width:100%}.ws-ai-body .chat-msg-assistant .chat-msg-body{flex:1;min-width:0;padding:10px 12px;border-radius:4px 12px 12px;background:var(--bg-tertiary);border:1px solid var(--border-color);font-size:13.5px}.ws-ai-body .chat-msg-user{max-width:88%}.ws-ai-body .chat-msg-user .chat-msg-body{padding:8px 12px;border-radius:14px 14px 4px;font-size:13.5px}.ws-ai-body .chat-msg-icon{width:26px;height:26px}.ws-ai-body .chat-msg-user .chat-msg-icon{display:none}.ws-ai-body .chat-msg-assistant .chat-msg-icon{background:color-mix(in srgb,var(--accent-cyan) 14%,transparent);color:var(--accent-cyan)}.ws-ai-body .chat-welcome{padding:0 8px}.ws-ai-body .chat-welcome-icon{opacity:.9}.ws-ai-body .chat-examples{flex-direction:column;align-items:stretch;width:100%;max-width:340px;gap:6px}.ws-ai-body .chat-example-btn{border-radius:10px;text-align:left;padding:9px 12px}.ws-ai-body .chat-input-area{padding:10px 12px 12px;gap:6px}.ws-ai-body .chat-input{border-radius:12px;font-size:13.5px}.ws-ai-body .chat-send-btn{border-radius:12px}.ws-ai-panel .ws-ai-hist-drop{width:min(360px,calc(100vw - 32px))}.ws-ai-panel .ws-ai-hist-name{white-space:normal;overflow:hidden;text-overflow:clip;line-height:1.35;word-break:break-word;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.ws-color-row{display:flex;align-items:center;gap:5px;padding:.5rem .75rem .25rem;flex-wrap:wrap}.ws-color-row>span{font-size:.72rem;color:var(--text-muted);margin-right:4px}.ws-color-swatch{width:16px;height:16px;padding:0;border:2px solid transparent;border-radius:50%;cursor:pointer;box-shadow:0 0 0 1px color-mix(in srgb,var(--text-primary) 15%,transparent);transition:transform .1s}.ws-color-swatch:hover{transform:scale(1.15)}.ws-color-swatch.active{border-color:var(--bg-secondary);box-shadow:0 0 0 2px var(--text-primary)}.ws-ai-body .chat-msg-assistant .chat-msg-body{background:transparent;border:none;border-radius:0;padding:3px 0 0}.ws-ai-body .chat-typing-dots{gap:4px;padding:6px 0}.ws-ai-body .chat-typing-dot{width:6px;height:6px}.ws-ai-body .chat-msg-assistant:has(>.chat-msg-body>.chat-typing-dots){width:auto}.ws-ai-body .chat-msg-assistant:has(>.chat-msg-body>.chat-typing-dots) .chat-msg-body{flex:0 0 auto}.ws-ai-usage{font-size:10.5px;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.ws-ai-body .chat-msg-assistant:has(>.chat-msg-body>.chat-typing-dots) .chat-waiting-label{font-size:11.5px}.ws-ai-body .chat-msg-assistant>.chat-msg-col>.chat-msg-body{flex:0 0 auto}.cbp-mode{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin:.5rem .6rem;padding:3px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.cbp-mode button{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:28px;border:none;border-radius:calc(var(--radius-md) - 2px);background:transparent;color:var(--text-muted);font-size:.78rem;font-weight:600;cursor:pointer}.cbp-mode button.active{background:color-mix(in srgb,var(--accent-cyan) 16%,var(--bg-secondary));color:var(--accent-cyan)}.cbp-sec{border-bottom:1px solid var(--border-color)}.cbp-h{display:flex;align-items:center;gap:.45rem;width:100%;height:34px;margin:0;padding:0 .6rem;border:none;background:transparent;font-size:.78rem;font-weight:700;color:var(--text-primary);text-align:left;cursor:pointer}.cbp-h:hover{background:var(--bg-tertiary)}.cbp-summary{flex:1;min-width:0;font-size:.7rem;font-weight:500;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cbp-chev{margin-left:auto;flex-shrink:0;color:var(--text-muted);transform:rotate(-90deg);transition:transform .15s}.cbp-chev.open{transform:none}.cbp-body{display:flex;flex-direction:column;gap:.4rem;padding:0 .6rem .55rem}.cbp-sec>.cbp-note{padding:.5rem .6rem}.cbp-step{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;border-radius:50%;background:color-mix(in srgb,var(--accent-cyan) 18%,transparent);color:var(--accent-cyan);font-size:.68rem;font-weight:700}.cbp-hint{margin-left:auto;font-size:.68rem;font-weight:500;color:var(--text-muted)}.cbp-note{margin:0;font-size:.72rem;line-height:1.45;color:var(--text-muted)}.cbp-note code{font-size:.7rem}.cbp-tables{display:grid;grid-template-columns:1fr 1fr;gap:4px}.cbp-table{height:30px;padding:0 .55rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:.78rem;font-weight:600;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.cbp-table:hover{background:var(--bg-tertiary)}.cbp-table.active{border-color:color-mix(in srgb,var(--accent-cyan) 50%,transparent);background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);color:var(--text-primary);color:var(--accent-cyan)}.cbp-join{display:flex;align-items:center;gap:.5rem;font-size:.72rem;color:var(--text-muted)}.cbp-join select{flex:1;min-width:0;height:28px;padding:0 .4rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:.76rem}.cbp-fields{display:flex;flex-direction:column;gap:2px}.cbp-field{display:flex;align-items:center;gap:.45rem;height:30px;padding:0 .3rem 0 .45rem;border:1px solid transparent;border-radius:var(--radius-md);cursor:grab}.cbp-field:hover{background:var(--bg-tertiary)}.cbp-field.used{border-color:color-mix(in srgb,var(--accent-cyan) 35%,transparent)}.cbp-kind{display:inline-flex;align-items:center;justify-content:center;width:20px;flex-shrink:0;font-size:.66rem;font-weight:700;color:var(--text-muted);font-family:var(--font-mono)}.cbp-kind--numeric,.cbp-kind--int{color:#34d399}.cbp-kind--date{color:#fbbf24}.cbp-field-name{flex:1;min-width:0;display:flex;flex-direction:column;font-size:.78rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cbp-field-name small{font-size:.64rem;color:var(--text-muted)}.cbp-put{width:24px;height:22px;flex-shrink:0;border:1px solid var(--border-color);border-radius:5px;background:transparent;color:var(--text-muted);font-size:.68rem;font-weight:700;cursor:pointer}.cbp-put:hover:not(:disabled){color:var(--accent-cyan);border-color:var(--accent-cyan)}.cbp-put.on{background:var(--accent-cyan);border-color:var(--accent-cyan);color:#fff}.cbp-put:disabled{opacity:.25;cursor:not-allowed}.cbp-aggs{display:flex;flex-wrap:wrap;gap:4px}.cbp-aggs button{height:26px;padding:0 .6rem;border:1px solid var(--border-color);border-radius:999px;background:transparent;color:var(--text-secondary);font-size:.74rem;cursor:pointer}.cbp-aggs button.active{border-color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 14%,transparent);color:var(--accent-cyan);font-weight:600}.cbp-add{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 .6rem;border:1px dashed var(--border-color);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:.74rem;cursor:pointer}.cbp-add:hover{color:var(--accent-cyan);border-color:var(--accent-cyan)}.cbp-sec .ws-chart-grid,.cbp-sec .ws-color-row{padding-left:0;padding-right:0;margin:0}.home-landing{--home-max: 1200px;--glow-cyan: rgba(var(--accent-primary-rgb), .12);--glow-blue: rgba(var(--accent-primary-rgb), .18);display:flex;flex-direction:column;width:100%;min-height:100%;background:linear-gradient(to right,var(--bg-gradient-from) 0%,var(--bg-gradient-to) 100%);color:var(--text-primary);overflow-x:hidden}.home-inner{max-width:var(--home-max);margin:0 auto;width:100%;padding:0 2rem}.home-hero{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;overflow:hidden;background:radial-gradient(ellipse 60% 50% at 50% 20%,rgba(var(--accent-primary-rgb),.25),transparent),radial-gradient(ellipse 50% 40% at 70% 60%,var(--glow-cyan),transparent),linear-gradient(to right,var(--bg-gradient-from) 0%,var(--bg-gradient-to) 100%)}.home-hero:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:linear-gradient(var(--border-color) 1px,transparent 1px),linear-gradient(90deg,var(--border-color) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 30%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 80% 70% at 50% 30%,#000 20%,transparent 75%)}.home-hero-canvas{position:absolute;inset:0;pointer-events:none;opacity:.45}.home-hero-top{position:relative;z-index:2;text-align:center;padding-top:clamp(4rem,10vh,7rem);margin-bottom:3rem}.home-hero-top:before{content:"ТЕНДЕРИЙН АНАЛИТИК ПЛАТФОРМ";display:block;font-family:var(--font-mono);font-size:.66rem;font-weight:600;letter-spacing:.3em;color:var(--accent-cyan);margin-bottom:1.1rem}.home-hero-title{font-size:clamp(2.6rem,6.2vw,4.8rem);font-weight:800;line-height:1.05;letter-spacing:-.03em;color:var(--text-primary)}.home-hero-title .glow{background:linear-gradient(135deg,var(--accent-cyan) 0%,var(--accent-cyan) 40%,color-mix(in srgb,var(--accent-purple) 70%,var(--accent-cyan) 30%) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:200% 200%;animation:heroGradientShift 6s ease-in-out infinite}@keyframes heroGradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.home-hero-subtitle{font-size:clamp(1.05rem,2.2vw,1.35rem);color:var(--text-secondary);font-weight:400;margin-top:1.25rem;max-width:640px;margin-left:auto;margin-right:auto;line-height:1.6}.home-hero-top:after{content:"";display:block;width:64px;height:2px;margin:1.6rem auto 0;background:linear-gradient(90deg,transparent,var(--accent-cyan),transparent)}.home-hero-body{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:2rem;align-items:center;width:100%;max-width:var(--home-max);padding:0 2rem;flex:1}.home-hero-left{display:flex;flex-direction:column;gap:1.5rem}.home-hero-left .lead{color:var(--text-secondary);font-size:var(--text-lg);line-height:1.7}.home-hero-left .lead:before{content:"";display:inline-block;width:40px;height:2px;background:var(--accent-cyan);margin-right:12px;vertical-align:middle}.home-hero-cta{display:inline-flex;align-items:center;gap:.6rem;width:-moz-fit-content;width:fit-content;min-height:44px;padding:.8rem 1.6rem;border-radius:var(--radius-md);font-weight:600;font-size:var(--text-lg);text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.home-hero-cta:hover{transform:translateY(-2px)}.home-hero-cta:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:2px}.home-hero-cta.primary{background:linear-gradient(135deg,var(--accent-cyan),var(--accent-cyan));color:var(--text-on-accent);box-shadow:0 10px 32px -12px rgba(var(--accent-primary-rgb),.5)}.home-hero-cta.primary:hover{box-shadow:0 12px 40px -10px rgba(var(--accent-primary-rgb),.55)}.home-hero-cta.ghost{color:var(--text-secondary);font-size:var(--text-md);padding:.6rem 0;text-decoration:underline;text-underline-offset:3px}.home-hero-cta.ghost:hover{color:var(--text-primary)}.home-hero-float-card{padding:.9rem 1.1rem;border-radius:12px;background:rgba(var(--accent-primary-rgb),.06);border:1px solid rgba(var(--accent-primary-rgb),.1);max-width:220px}.home-hero-float-card .card-label{font-size:var(--text-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-primary);margin-bottom:.5rem}.home-hero-float-card .card-sub{font-size:var(--text-sm);color:var(--text-muted)}.home-fresh-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem;font-size:var(--text-sm);color:var(--text-secondary)}.home-fresh-list li{display:flex;align-items:center;gap:.45rem}.home-fresh-date{margin-left:auto;font-variant-numeric:tabular-nums;color:var(--text-primary)}.home-fresh-dot{width:7px;height:7px;border-radius:50%;flex:none;background:var(--accent-green)}.home-fresh-list .is-stale .home-fresh-dot{background:var(--accent-orange)}.home-fresh-list .is-failing .home-fresh-dot{background:var(--accent-red)}.home-fresh-note{margin-top:.5rem;color:var(--accent-orange)}.home-hero-center{position:relative;display:flex;align-items:center;justify-content:center}.home-graph-visual{position:relative;width:100%;aspect-ratio:.95;max-width:400px;margin:0 auto}.home-graph-glow{position:absolute;inset:5%;border-radius:50%;background:radial-gradient(circle at 40% 35%,rgba(var(--accent-primary-rgb),.2),transparent 60%),radial-gradient(circle at 65% 70%,color-mix(in srgb,var(--accent-purple) 14%,transparent),transparent 60%);filter:blur(50px);pointer-events:none;animation:gvGlowPulse 6s ease-in-out infinite}@keyframes gvGlowPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.home-graph-svg{position:relative;z-index:1;width:100%;height:100%}.gv-orbit{animation:gvOrbitSpin 40s linear infinite;transform-origin:190px 175px}.gv-orbit-2{animation-duration:55s;animation-direction:reverse}@keyframes gvOrbitSpin{to{transform:rotate(360deg)}}.gv-edge-flow{animation:gvFlow 3s linear infinite}@keyframes gvFlow{to{stroke-dashoffset:-34}}.gv-halo{animation:gvHaloPulse 4s ease-in-out infinite}@keyframes gvHaloPulse{0%,to{opacity:.15;transform:scale(1)}50%{opacity:.4;transform:scale(1.08)}}.gv-node{animation:gvNodeFloat 5s ease-in-out infinite}@keyframes gvNodeFloat{0%,to{transform:translate(0)}50%{transform:translateY(-4px)}}.home-hero-right{display:flex;flex-direction:column;gap:1.5rem;padding-left:1.5rem;border-left:1px solid var(--border-color)}.home-stat-item{display:flex;gap:.75rem;align-items:flex-start}.home-stat-diamond{width:10px;height:10px;margin-top:6px;transform:rotate(45deg);flex-shrink:0;border-radius:2px;background:var(--accent-cyan)!important}.home-stat-item .stat-value{font-size:1.7rem;font-weight:800;font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--text-primary)}.home-stat-item .stat-label{font-size:var(--text-base);color:var(--text-muted);line-height:1.5;margin-top:.15rem}.home-section{padding:6rem 0;position:relative;background:linear-gradient(180deg,var(--bg-gradient-from) 0%,var(--bg-gradient-to) 100%)}.home-section.dark{background:radial-gradient(ellipse 50% 40% at 80% 20%,rgba(var(--accent-primary-rgb),.1),transparent),radial-gradient(ellipse 40% 30% at 10% 80%,color-mix(in srgb,var(--accent-purple) 10%,transparent),transparent),linear-gradient(180deg,var(--bg-gradient-to) 0%,var(--bg-gradient-from) 100%)}.home-section-label{display:inline-flex;align-items:center;gap:.5rem;font-size:var(--text-sm);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-cyan);margin-bottom:.75rem}.home-section-title{font-size:clamp(1.8rem,4vw,3rem);font-weight:800;letter-spacing:-.04em;margin-bottom:.75rem;color:var(--text-primary)}.home-section-desc{color:var(--text-secondary);font-size:var(--text-lg);line-height:1.6;max-width:52ch;margin-bottom:3rem}.home-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.home-feature-card{padding:2rem;border-radius:16px;background:color-mix(in srgb,var(--bg-secondary) 72%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 70%,transparent);transition:transform .3s cubic-bezier(.16,1,.3,1),background .3s,border-color .3s,box-shadow .3s}.home-feature-card{box-shadow:0 4px 14px -6px var(--shadow-color)}.home-feature-card:hover{transform:translateY(-6px);background:color-mix(in srgb,var(--bg-secondary) 82%,transparent);border-color:color-mix(in srgb,var(--accent-cyan) 30%,transparent);box-shadow:0 20px 40px -12px rgba(var(--accent-primary-rgb),.15),0 0 0 1px rgba(var(--accent-primary-rgb),.1)}.home-feature-icon{width:44px;height:44px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-bottom:1rem;background:rgba(var(--accent-primary-rgb),.1)!important}.home-feature-icon svg{color:var(--accent-cyan)!important}.home-feature-card h3{font-size:var(--text-lg);font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.home-feature-card p{color:var(--text-secondary);font-size:var(--text-md);line-height:1.6;margin-bottom:.85rem}.home-feature-tag{display:inline-block;font-size:var(--text-xs);font-weight:600;padding:.25rem .6rem;border-radius:999px;color:var(--accent-cyan)!important;background:rgba(var(--accent-primary-rgb),.1)!important}.home-sources-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}.home-source-card{text-align:center;padding:2rem 1rem 1.5rem;border-radius:16px;position:relative;overflow:hidden;background:color-mix(in srgb,var(--bg-secondary) 72%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 70%,transparent);box-shadow:0 4px 14px -6px var(--shadow-color);transition:transform .3s cubic-bezier(.16,1,.3,1),background .3s,border-color .3s,box-shadow .3s}.home-source-card:hover{transform:translateY(-6px);background:color-mix(in srgb,var(--bg-secondary) 82%,transparent);border-color:color-mix(in srgb,var(--accent-cyan) 30%,transparent);box-shadow:0 20px 40px -12px rgba(var(--accent-primary-rgb),.15)}.home-source-icon{width:52px;height:52px;border-radius:var(--radius-xl);margin:0 auto .85rem;display:flex;align-items:center;justify-content:center;background:rgba(var(--accent-primary-rgb),.1)!important}.home-source-icon svg{color:var(--accent-cyan)!important}.home-source-name{font-size:var(--text-md);font-weight:600;margin-bottom:.35rem;color:var(--text-primary)}.home-source-desc{font-size:var(--text-sm);color:var(--text-muted);line-height:1.45;margin-bottom:.85rem}.home-source-count{font-size:1.75rem;font-weight:900;font-family:var(--font-mono);color:var(--text-primary)!important}.home-source-count-label{font-size:var(--text-xs);color:var(--text-muted)}.home-budget-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}.home-budget-card{padding:2rem;background:color-mix(in srgb,var(--bg-secondary) 72%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 70%,transparent);border-radius:16px;box-shadow:0 4px 14px -6px var(--shadow-color);text-align:left;transition:transform .3s cubic-bezier(.16,1,.3,1),background .3s,border-color .3s,box-shadow .3s}.home-budget-card:hover{transform:translateY(-6px);background:color-mix(in srgb,var(--bg-secondary) 82%,transparent);border-color:color-mix(in srgb,var(--accent-cyan) 30%,transparent);box-shadow:0 20px 40px -12px rgba(var(--accent-primary-rgb),.15)}.home-budget-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);background:rgba(var(--accent-primary-rgb),.1);color:var(--accent-cyan);margin-bottom:1rem}.home-budget-card h3{font-size:var(--text-xl);font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.home-budget-card p{font-size:var(--text-md);color:var(--text-secondary);line-height:1.6;margin:0}.home-steps-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;position:relative}.home-steps-row:before{content:"";position:absolute;top:28px;left:12%;right:12%;height:2px;background:linear-gradient(90deg,rgba(var(--accent-primary-rgb),.6) 0%,var(--accent-cyan) 50%,rgba(var(--accent-primary-rgb),.6) 100%);opacity:.2}.home-step{text-align:center;position:relative;z-index:1}.home-step-icon{width:60px;height:60px;border-radius:16px;margin:0 auto .75rem;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--bg-secondary) 75%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 70%,transparent);box-shadow:0 4px 14px -6px var(--shadow-color);transition:transform .3s,box-shadow .3s}.home-step:hover .home-step-icon{transform:translateY(-4px);box-shadow:0 12px 24px -8px rgba(var(--accent-primary-rgb),.2)}.home-step-icon svg{color:var(--accent-cyan)!important}.home-step-num{width:28px;height:28px;border-radius:50%;margin:-.35rem auto .6rem;display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:700;color:var(--text-on-accent);font-family:var(--font-mono);background:linear-gradient(135deg,var(--accent-cyan),var(--accent-cyan))!important}.home-step-title{font-size:var(--text-lg);font-weight:600;margin-bottom:.35rem;color:var(--text-primary)}.home-step-desc{font-size:var(--text-sm);color:var(--text-muted);line-height:1.5}.home-cta{padding:6rem 0;text-align:center;background:radial-gradient(ellipse 60% 50% at 50% 50%,rgba(var(--accent-primary-rgb),.12),transparent),radial-gradient(ellipse 40% 30% at 30% 70%,color-mix(in srgb,var(--accent-purple) 10%,transparent),transparent),linear-gradient(180deg,var(--bg-gradient-from) 0%,var(--bg-gradient-to) 100%)}.home-cta-title{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;letter-spacing:-.03em;margin-bottom:1rem;background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent-cyan) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home-cta-desc{color:var(--text-secondary);max-width:42ch;margin:0 auto 2rem;line-height:1.6}.home-cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.home-footer{padding:3.5rem 0 0;border-top:1px solid color-mix(in srgb,var(--border-color) 70%,transparent);background:color-mix(in srgb,var(--bg-primary) 88%,var(--bg-secondary) 12%)}.home-footer-inner{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2rem;max-width:1200px;margin:0 auto;padding:0 2rem 2.5rem}.home-footer-brand-col .home-footer-brand{display:flex;align-items:center;gap:.5rem;font-size:var(--text-lg);font-weight:700;color:var(--text-primary);margin-bottom:.75rem}.home-footer-sub{font-size:var(--text-base);color:var(--text-muted);line-height:1.6;max-width:260px}.home-footer-col{display:flex;flex-direction:column;gap:.55rem}.home-footer-col-title{font-size:var(--text-sm);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:.25rem}.home-footer-col a{font-size:var(--text-md);color:var(--text-secondary);text-decoration:none;transition:color .15s}.home-footer-col a:hover{color:var(--accent-cyan)}.home-footer-col span{font-size:var(--text-md);color:var(--text-muted)}.home-footer-contact{display:inline-flex;align-items:center;gap:.4rem}.home-footer-bottom{border-top:1px solid rgba(var(--accent-primary-rgb),.06);padding:1.25rem 2rem;text-align:center;font-size:var(--text-sm);color:var(--text-muted)}.home-reveal{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.home-reveal.revealed{opacity:1;transform:translateY(0)}.home-section-divider{height:1px;max-width:600px;margin:0 auto;background:linear-gradient(90deg,transparent,rgba(var(--accent-primary-rgb),.3),transparent);animation:dividerGlow 3s ease-in-out infinite}@keyframes dividerGlow{0%,to{opacity:.3}50%{opacity:.8}}.home-scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);z-index:3;color:var(--text-muted);animation:scrollBounce 2s ease-in-out infinite;cursor:pointer}@keyframes scrollBounce{0%,to{transform:translate(-50%) translateY(0);opacity:.5}50%{transform:translate(-50%) translateY(8px);opacity:1}}.cta-glow{animation:ctaGlowPulse 3s ease-in-out infinite}@keyframes ctaGlowPulse{0%,to{box-shadow:0 10px 32px -12px rgba(var(--accent-primary-rgb),.5)}50%{box-shadow:0 10px 48px -8px rgba(var(--accent-primary-rgb),.7)}}.home-feature-card:hover .home-feature-icon svg{animation:iconPop .4s cubic-bezier(.34,1.56,.64,1)}@keyframes iconPop{0%{transform:scale(1)}50%{transform:scale(1.2) rotate(-5deg)}to{transform:scale(1)}}.home-source-card:after{content:"";position:absolute;inset:0;border-radius:16px;opacity:0;transition:opacity .3s;background:radial-gradient(circle at 50% 50%,rgba(var(--accent-primary-rgb),.08),transparent 70%);pointer-events:none}.home-source-card:hover:after{opacity:1}.home-steps-row:after{content:"";position:absolute;top:28px;left:12%;right:12%;height:2px;background:linear-gradient(90deg,transparent,var(--accent-cyan),transparent);opacity:0;animation:stepLineReveal 1.5s ease-out .5s forwards}@keyframes stepLineReveal{0%{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:.25;clip-path:inset(0 0 0 0)}}@keyframes bannerPulse{0%,to{opacity:.5}50%{opacity:1}}@keyframes bannerEdge{0%{stroke-dashoffset:20}to{stroke-dashoffset:0}}.banner-node{animation:bannerPulse 3s ease-in-out infinite}.banner-edge{stroke-dasharray:6 4;animation:bannerEdge 2s linear infinite}@keyframes graphNodeFloat{0%,to{transform:translate(0)}25%{transform:translate(2px,-3px)}50%{transform:translate(-1px,2px)}75%{transform:translate(3px,1px)}}.graph-node-float{animation:graphNodeFloat 6s ease-in-out infinite}@keyframes homeFadeUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.home-fade-in{animation:homeFadeUp .9s cubic-bezier(.16,1,.3,1) both}.home-fade-in-1{animation-delay:.1s}.home-fade-in-2{animation-delay:.2s}.home-fade-in-3{animation-delay:.35s}.home-fade-in-4{animation-delay:.5s}.home-fade-in-5{animation-delay:.65s}@media(prefers-reduced-motion:reduce){.home-reveal{transition:none;opacity:1;transform:none}.home-fade-in{animation:none;opacity:1;transform:none}.graph-node-float,.gv-node,.gv-halo,.gv-edge-flow,.gv-orbit,.banner-node,.banner-edge,.cta-glow,.home-scroll-indicator{animation:none}.home-section-divider{animation:none;opacity:.5}}:root.light .home-landing{--glow-cyan: rgba(var(--accent-primary-rgb), .08);--glow-blue: rgba(var(--accent-primary-rgb), .08);background:var(--bg-secondary);color:var(--text-primary)}:root.light .home-hero{background:radial-gradient(ellipse 60% 50% at 50% 20%,rgba(var(--accent-primary-rgb),.08),transparent),radial-gradient(ellipse 50% 40% at 70% 60%,rgba(var(--accent-primary-rgb),.05),transparent),var(--bg-secondary)}:root.light .home-hero-title{color:var(--text-primary)}:root.light .home-hero-left .lead{color:var(--text-secondary)}:root.light .home-hero-cta.ghost{color:var(--text-secondary)}:root.light .home-hero-cta.ghost:hover{color:var(--text-primary)}:root.light .home-hero-float-card{background:rgba(var(--accent-primary-rgb),.06);border-color:rgba(var(--accent-primary-rgb),.15)}:root.light .home-hero-float-card .card-label{color:var(--text-primary)}:root.light .home-hero-float-card .card-sub{color:var(--text-muted)}:root.light .home-stat-item .stat-value{color:var(--text-primary)!important}:root.light .home-stat-item .stat-label{color:var(--text-muted)}:root.light .home-section.dark{background:radial-gradient(ellipse 40% 30% at 80% 20%,rgba(var(--accent-primary-rgb),.06),transparent),var(--bg-tertiary)}:root.light .home-section-title{color:var(--text-primary)}:root.light .home-section-desc{color:var(--text-secondary)}:root.light .home-feature-card{background:var(--card-bg);border-color:var(--text-primary)}:root.light .home-feature-card:hover{background:rgba(var(--accent-primary-rgb),.08);border-color:rgba(var(--accent-primary-rgb),.3)}:root.light .home-feature-card h3{color:var(--text-primary)}:root.light .home-feature-card p{color:var(--text-secondary)}:root.light .home-feature-icon{background:rgba(var(--accent-primary-rgb),.1)!important}:root.light .home-feature-tag{color:var(--accent-cyan)!important;background:rgba(var(--accent-primary-rgb),.1)!important}:root.light .home-source-card{background:var(--card-bg);border-color:var(--text-primary)}:root.light .home-source-card:hover{border-color:rgba(var(--accent-primary-rgb),.3)}:root.light .home-source-name{color:var(--text-primary)}:root.light .home-source-count{color:var(--text-primary)!important}:root.light .home-source-icon{background:rgba(var(--accent-primary-rgb),.1)!important}:root.light .home-step-title{color:var(--text-primary)}:root.light .home-step-desc{color:var(--text-muted)}:root.light .home-cta{background:radial-gradient(ellipse 50% 40% at 50% 50%,rgba(var(--accent-primary-rgb),.06),transparent),var(--bg-secondary)}:root.light .home-cta-title{color:var(--text-primary)}:root.light .home-cta-desc{color:var(--text-secondary)}:root.light .home-footer{background:var(--bg-secondary);border-top-color:var(--text-primary)}:root.light .home-footer-brand-col .home-footer-brand{color:var(--text-primary)}:root.light .home-footer-col-title{color:var(--text-secondary)}:root.light .home-footer-col a{color:var(--text-muted)}:root.light .home-footer-col a:hover{color:var(--accent-cyan)}:root.light .home-footer-bottom{border-top-color:var(--border-color);color:var(--text-muted)}:root.light .home-graph-glow{background:radial-gradient(circle,rgba(var(--accent-primary-rgb),.1),rgba(var(--accent-primary-rgb),.05),transparent 70%)}:root.light .home-section-divider{background:linear-gradient(90deg,transparent,rgba(var(--accent-primary-rgb),.2),transparent)}:root.light .home-scroll-indicator{color:var(--text-muted)}:root.light .home-section{background:var(--bg-secondary)}:root.light .home-step-icon{background:var(--card-bg)}@media(max-width:1024px){.home-hero-body{grid-template-columns:1fr 1fr}.home-hero-right{display:none}.home-features-grid,.home-sources-grid,.home-budget-grid{grid-template-columns:repeat(2,1fr)}.home-footer-inner{grid-template-columns:1fr 1fr;gap:2rem}}@media(max-width:768px){.home-hero{min-height:auto;padding-bottom:3rem}.home-hero-body{grid-template-columns:1fr;text-align:center}.home-hero-left{align-items:center}.home-hero-left .lead:before{display:none}.home-graph-visual{max-width:280px}.home-hero-float-card,.home-scroll-indicator{display:none}.home-hero-top{padding-top:3rem;margin-bottom:2rem}.home-features-grid,.home-sources-grid,.home-budget-grid{grid-template-columns:1fr}.home-steps-row{grid-template-columns:repeat(2,1fr)}.home-steps-row:before{display:none}.home-section{padding:3rem 0}.home-footer-inner{grid-template-columns:1fr;gap:1.5rem;text-align:center}.home-footer-col{align-items:center}.home-footer-sub{max-width:none}.home-footer-brand-col .home-footer-brand{justify-content:center}}:root.light .home-hero-title,:root.light .home-hero-left .lead,:root.light .home-hero-cta.ghost,:root.light .home-stat-item .stat-value,:root.light .home-stat-item .stat-label,:root.light .home-section-title,:root.light .home-section-desc,:root.light .home-feature-card h3,:root.light .home-feature-card p,:root.light .home-source-name,:root.light .home-source-count,:root.light .home-step-title,:root.light .home-step-desc,:root.light .home-cta-title,:root.light .home-cta-desc,:root.light .home-footer-col-title,:root.light .home-footer-col a,:root.light .home-footer-bottom,:root.light .home-scroll-indicator{color:var(--text-primary)!important}:root.light .home-hero-left .lead:before{background:var(--accent-cyan)!important}:root.light .home-hero-cta.primary{background:var(--accent-cyan)!important}:root.light .home-hero-cta.primary:hover{box-shadow:var(--glow-primary-strong)!important}:root.light .home-hero-cta:focus-visible{outline-color:var(--accent-cyan)!important}:root.light .home-section-label{color:var(--accent-cyan)!important}:root.light .home-feature-icon svg{color:var(--accent-cyan)!important}:root.light .home-feature-card:hover{border-color:rgba(var(--accent-primary-rgb),.2)!important}:root.light .home-feature-tag{color:var(--accent-cyan)!important}:root.light .home-source-icon svg{color:var(--accent-cyan)!important}:root.light .home-source-card:hover{border-color:rgba(var(--accent-primary-rgb),.2)!important}:root.light .home-footer-col a:hover{color:var(--accent-cyan)!important}:root.light .home-stat-diamond{background:var(--accent-cyan)!important}:root.light .home-step-num{background:var(--accent-cyan)!important}.home-feature-icon-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.home-feature-icon-row .home-feature-icon{margin-bottom:0}.home-feature-new{display:inline-flex;align-items:center;gap:3px;font-size:.58rem;font-weight:800;letter-spacing:.06em;color:var(--accent-purple);background:color-mix(in srgb,var(--accent-purple) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent-purple) 28%,transparent);border-radius:999px;padding:2px 7px}.page-shell--default>.page-header-bar,.up-page>.up-header,.an-profile-page>.bd-breadcrumb{height:var(--app-head-h);margin:0;padding:0 1.25rem;box-sizing:border-box;align-items:center;border-bottom:1px solid var(--border-color)}.page-shell>.page-header-bar .page-header-bar-left{display:flex;align-items:baseline;gap:.75rem;min-width:0}.page-shell>.page-header-bar .page-title{font-size:1rem;margin:0;white-space:nowrap}.page-shell>.page-header-bar .page-title svg{width:18px;height:18px}.page-shell>.page-header-bar .page-subtitle{margin:0;font-size:.78rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.bd2-page>.bd2-stat-row,.td2-page>.td2-stat-row,.up-page>.up-kpis{gap:1px;background:var(--border-color);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.bd2-stat-row>.bd2-stat-card,.td2-stat-row>.td2-stat-card,.up-kpis>.up-kpi{border:0;border-radius:0;background:var(--bg-secondary)}.bd2-page,.td2-page{gap:0}.bd2-page>.bd2-hero,.td2-page>.td2-hero{margin-left:0;margin-right:0}.bd2-page>.bd2-tabs,.td2-page>.td2-tabs{padding:0 1rem;border-bottom-width:1px}.bd2-main,.td2-main{gap:0}.td2-layout{gap:0;align-items:stretch}.bd2-main>.bd2-section,.td2-main>.td2-section{border:0;border-bottom:1px solid var(--border-color);border-radius:0;background:transparent;padding:1.1rem 1.5rem 1.25rem}.td2-layout>.td2-sidebar{gap:0;border-left:1px solid var(--border-color)}.td2-sidebar>.td2-side-card{border:0;border-bottom:1px solid var(--border-color);border-radius:0;background:transparent;padding:1rem 1.25rem}.page-shell--default>.page-shell-body{gap:0;margin-top:0}.page-shell--default>.page-shell-body>.sv-search{padding:.75rem 1.25rem;border-bottom:1px solid var(--border-color)}.page-shell--default>.page-shell-body>.dfb{border:0;border-bottom:1px solid var(--border-color);border-radius:0;padding:.5rem 1.25rem}.page-shell--default>.page-shell-body>.bd-card{border:0;border-radius:0;background:transparent;padding:.75rem 1.25rem 1rem}.up-page{gap:0}.up-page>.up-grid,.up-page .up-main{gap:0}.up-page .up-panel.bd-bs-ol-panel,.up-page .up-panel.bd-bs-ol-panel:hover{border:0;border-bottom:1px solid var(--border-color);border-radius:0;background:transparent;padding:1rem 1.25rem}.an-profile-page{max-width:none}.an-profile-page>.an-profile-header-card{border:0;border-bottom:1px solid var(--border-color);border-radius:0;margin:0;padding:1.25rem}@media(max-width:900px){.bd2-main>.bd2-section,.td2-main>.td2-section,.page-shell--default>.page-shell-body>.bd-card,.up-page .up-panel.bd-bs-ol-panel{padding-left:.9rem;padding-right:.9rem}.td2-layout>.td2-sidebar{border-left:0}}.bd-relations-full>.bd-relations-filter{margin:0}.bd-relations-full>.bd-relations-filter .dfb{height:var(--app-head-h);min-height:var(--app-head-h);padding:0 .6rem 0 1.25rem}.bd-relations-full .dfb-chip{height:30px}.bd-relations-full .dfb-year select{height:24px}.bd-overview-dark .bd-bs-filter-slot{top:0;left:0;right:0}.bd-overview-dark .bd-bs-filter-slot .dfb{height:var(--app-head-h);min-height:var(--app-head-h);padding:0 1.25rem;border:0;border-bottom:1px solid var(--border-color);border-radius:0}.bd-overview-dark .bd-bs-filter-slot .dfb-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;min-width:0}.bd-overview-dark .bd-bs-filter-slot .dfb-chips>*{flex-shrink:0}.ws-subheader{height:var(--app-head-h);padding:0 1.25rem;box-sizing:border-box}.dl-page{max-width:none}.dl-page>.dl-topbar{height:var(--app-head-h);margin:0;padding:0 1.25rem;border-bottom:1px solid var(--border-color);flex-wrap:nowrap}.dl-page>.dl-controls{padding:.75rem 1.25rem;margin:0}.dl-page>.dl-grid{padding:0 1.25rem 1.25rem}.page-shell--centered{max-width:none}.page-shell--centered>.page-header-bar{height:var(--app-head-h);margin:0;padding:0 1.25rem;box-sizing:border-box;align-items:center;border-bottom:1px solid var(--border-color)}.page-shell--centered>.page-shell-body{width:100%;max-width:960px;margin:1.25rem auto}.up-page>.up-header{min-width:0}.up-page>.up-header>div:first-child{flex:1 1 auto;min-width:0;overflow:hidden}.up-page>.up-header h1{font-size:1rem;margin:0;line-height:1.3}.up-page>.up-header h1 svg{width:16px;height:16px}.up-page>.up-header p{margin:1px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sv-page{display:flex;flex-direction:column;min-width:0}.sv-head{display:flex;align-items:center;gap:1rem;height:var(--app-head-h);padding:0 1.25rem;border-bottom:1px solid var(--border-color);box-sizing:border-box}.sv-head-title{display:inline-flex;align-items:center;gap:.45rem;margin:0;flex-shrink:0;font-size:1rem;font-weight:700;color:var(--text-primary)}.sv-head-title svg{color:var(--accent-cyan)}.sv-head>.sv-search{flex:1;min-width:0;max-width:760px}.sv-head .sv-search-box{height:34px}.sv-head .sv-search-input{font-size:.86rem}.sv-head .sv-search .sp-search-btn{height:34px;padding:0 .9rem;border-radius:8px}.sv-page>.sv-tabbar{flex-wrap:nowrap;overflow-x:auto;padding:.45rem 1.25rem;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.sv-page>.sv-tabbar button{flex-shrink:0;white-space:nowrap}.sv-page>.dfb{border:0;border-bottom:1px solid var(--border-color);border-radius:0;padding:.5rem 1.25rem;margin:0}.sv-page>.sv-results{border:0;border-radius:0;background:transparent;padding:.75rem 1.25rem 1.25rem}.doc-page{max-width:960px;margin:0 auto;padding:2rem 1.5rem 4rem}.doc-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.doc-page-title{display:flex;align-items:center;gap:.6rem;font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0}.doc-page-title svg{color:var(--accent-cyan);flex-shrink:0}.doc-page-subtitle{margin:.4rem 0 0;font-size:var(--text-lg);color:var(--text-secondary);line-height:1.5}.doc-page-actions{display:flex;gap:.5rem;flex-shrink:0;margin-top:.3rem}.doc-btn{padding:6px 14px;font-size:var(--text-base);font-weight:500;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:all .2s}.doc-btn:hover{background:color-mix(in srgb,var(--accent-cyan) 12%,transparent);border-color:color-mix(in srgb,var(--accent-cyan) 30%,transparent);color:var(--accent-cyan)}.doc-toc{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:2rem;padding:1rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--glass-shadow)}.doc-toc-item{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;font-size:var(--text-base);color:var(--text-muted);border-radius:20px;border:1px solid transparent;background:var(--bg-tertiary);text-decoration:none;transition:all .2s;cursor:pointer}.doc-toc-item:hover{color:var(--text-primary);border-color:var(--border-color)}.doc-toc-item.active{color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);border-color:color-mix(in srgb,var(--accent-cyan) 25%,transparent)}.doc-sections{display:flex;flex-direction:column;gap:.75rem}.doc-accordion{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--card-bg);overflow:hidden;box-shadow:var(--glass-shadow);transition:box-shadow .25s}.doc-accordion.open{border-color:color-mix(in srgb,var(--accent-cyan) 30%,transparent)}.doc-accordion-header{display:flex;align-items:center;gap:.75rem;width:100%;padding:.85rem 1rem;border:none;background:none;color:var(--text-primary);font-size:var(--text-lg);font-weight:600;cursor:pointer;text-align:left;transition:background .2s}.doc-accordion-header:hover{background:var(--hover-overlay)}.doc-accordion-header>svg:last-child{margin-left:auto;align-self:center;color:var(--text-muted);flex-shrink:0;display:block}.doc-accordion-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-cyan) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent-cyan) 20%,transparent);color:var(--accent-cyan);flex-shrink:0;line-height:0}.doc-accordion-icon svg{display:block}.doc-accordion-title{flex:1;min-width:0}.doc-accordion-body{padding:0 1.5rem 1.5rem;font-size:var(--text-lg);color:var(--text-secondary);line-height:1.75;animation:docFadeIn .25s ease}@keyframes docFadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.doc-accordion-body p{margin:0 0 .75rem}.doc-accordion-body ul{margin:0 0 .75rem;padding-left:1.5rem}.doc-accordion-body li{margin-bottom:.4rem}.doc-accordion-body li strong{color:var(--text-primary)}.doc-accordion-body h4{color:var(--text-primary);font-size:var(--text-lg);font-weight:600;margin:1.2rem 0 .5rem}.doc-accordion-body code{background:var(--bg-tertiary);padding:1px 6px;border-radius:4px;font-family:var(--font-mono);font-size:var(--text-md);color:var(--accent-cyan)}.doc-accordion-body strong{color:var(--text-primary)}.doc-accordion-body em{color:var(--accent-cyan);font-style:italic}.doc-hierarchy{margin:.75rem 0;padding:1rem;background:color-mix(in srgb,var(--bg-secondary) 78%,transparent);border-radius:var(--radius-md);border:1px solid var(--border-color)}.doc-hierarchy-item{position:relative;padding:6px 12px;font-size:var(--text-md);color:var(--text-secondary);border-left:2px solid var(--border-color);margin-left:0}.doc-hierarchy-item.level-0{border-left:3px solid var(--accent-cyan);color:var(--text-primary);font-size:var(--text-lg);padding-left:14px;margin-bottom:2px}.doc-hierarchy-item.level-1{margin-left:1.2rem;border-left-color:color-mix(in srgb,var(--accent-cyan) 40%,transparent);color:var(--text-primary);font-weight:500}.doc-hierarchy-item.level-2{margin-left:2.4rem;border-left-color:var(--border-color);font-weight:400}.doc-grid-2{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem;margin:.75rem 0}.doc-mini-card{display:flex;flex-direction:column;gap:.3rem;padding:1rem;background:color-mix(in srgb,var(--bg-secondary) 78%,transparent);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:border-color .2s,transform .2s}.doc-mini-card:hover{border-color:color-mix(in srgb,var(--accent-cyan) 30%,transparent);transform:translateY(-1px)}.doc-mini-card strong{font-size:var(--text-lg);color:var(--text-primary)}.doc-mini-card span{font-size:var(--text-md);color:var(--text-secondary);line-height:1.55}.doc-mini-card.green{border-left:3px solid var(--accent-green)}.doc-mini-card.blue{border-left:3px solid var(--accent-blue)}.doc-mini-card.cyan{border-left:3px solid var(--accent-cyan)}.doc-mini-card.orange{border-left:3px solid var(--accent-orange)}.doc-mini-card.purple{border-left:3px solid var(--accent-purple)}.doc-mini-card.green strong{color:var(--accent-green)}.doc-mini-card.blue strong{color:var(--accent-blue)}.doc-mini-card.cyan strong{color:var(--accent-cyan)}.doc-mini-card.orange strong{color:var(--accent-orange)}.doc-mini-card.purple strong{color:var(--accent-purple)}.doc-tag-row{display:flex;flex-wrap:wrap;gap:6px;margin:.5rem 0 .75rem}.doc-tag{padding:4px 12px;font-size:var(--text-base);font-weight:500;border-radius:20px;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);transition:all .2s}.doc-tag:hover{background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);border-color:color-mix(in srgb,var(--accent-cyan) 26%,transparent);color:var(--accent-cyan)}.doc-process{display:flex;flex-direction:column;gap:0;margin:.75rem 0}.doc-process-step{display:flex;align-items:flex-start;gap:1rem;border-left:2px solid var(--border-color);margin-left:16px;padding:1rem 0 1rem 1.5rem;position:relative}.doc-process-step:last-child{border-left-color:transparent}.doc-process-num{position:absolute;left:-16px;top:1rem;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--accent-cyan) 15%,transparent);color:var(--accent-cyan);font-size:var(--text-md);font-weight:700;font-family:var(--font-mono);border:2px solid var(--bg-secondary)}.doc-process-body{display:flex;flex-direction:column;gap:.25rem}.doc-process-body strong{font-size:var(--text-lg);color:var(--text-primary)}.doc-process-body span{font-size:var(--text-md);color:var(--text-secondary);line-height:1.55}.doc-flags{display:flex;flex-direction:column;gap:.5rem;margin:.75rem 0}.doc-flag{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg-secondary) 78%,transparent);border-left:3px solid var(--border-color);transition:transform .2s}.doc-flag:hover{transform:translate(2px)}.doc-flag.critical{border-left-color:var(--accent-red)}.doc-flag.high{border-left-color:var(--accent-orange)}.doc-flag.medium{border-left-color:var(--accent-yellow)}.doc-flag.low{border-left-color:var(--accent-cyan)}.doc-flag-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);flex-shrink:0;margin-top:1px}.doc-flag.critical .doc-flag-icon{background:color-mix(in srgb,var(--accent-red) 14%,transparent);color:var(--accent-red)}.doc-flag.high .doc-flag-icon{background:color-mix(in srgb,var(--accent-orange) 14%,transparent);color:var(--accent-orange)}.doc-flag.medium .doc-flag-icon{background:color-mix(in srgb,var(--accent-yellow) 14%,transparent);color:var(--accent-yellow)}.doc-flag.low .doc-flag-icon{background:color-mix(in srgb,var(--accent-cyan) 12%,transparent);color:var(--accent-cyan)}.doc-flag div:last-child{display:flex;flex-direction:column;gap:.15rem}.doc-flag strong{font-size:var(--text-md);color:var(--text-primary)}.doc-flag span{font-size:var(--text-md);color:var(--text-secondary);line-height:1.45}.doc-legal-list{display:flex;flex-direction:column;gap:.6rem;margin:.75rem 0}.doc-legal-item{display:flex;align-items:flex-start;gap:.7rem;padding:.85rem 1rem;background:color-mix(in srgb,var(--bg-secondary) 78%,transparent);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:border-color .2s}.doc-legal-item:hover{border-color:color-mix(in srgb,var(--accent-cyan) 30%,transparent)}.doc-legal-item>svg{color:var(--accent-cyan);flex-shrink:0;margin-top:3px}.doc-legal-item div{display:flex;flex-direction:column;gap:.2rem}.doc-legal-link{display:inline-flex;align-items:center;gap:6px;text-decoration:none;transition:color .2s}.doc-legal-link:hover,.doc-legal-link:hover strong{color:var(--accent-cyan)}.doc-legal-link svg{color:var(--text-muted);flex-shrink:0;opacity:0;transition:opacity .2s}.doc-legal-item:hover .doc-legal-link svg{opacity:1}.doc-legal-item strong{font-size:var(--text-md);color:var(--text-primary)}.doc-legal-item span{font-size:var(--text-md);color:var(--text-secondary);line-height:1.45}@media(max-width:700px){.doc-page{padding:1.25rem 1rem 3rem}.doc-page-header{flex-direction:column}.doc-page-title{font-size:1.2rem}.doc-toc{padding:.75rem}.doc-grid-2{grid-template-columns:1fr}.doc-accordion-header{padding:.85rem 1rem;font-size:var(--text-lg)}.doc-accordion-body{padding:0 1rem 1.25rem;font-size:var(--text-md)}}@media(max-width:500px){.doc-page-actions{width:100%}.doc-btn{flex:1;text-align:center}.doc-toc-item{font-size:var(--text-sm);padding:4px 8px}}.doc-search-wrap{position:relative;display:flex;align-items:center}.doc-search-icon{position:absolute;left:8px;color:var(--text-muted);pointer-events:none}.doc-search-input{padding:6px 28px;font-size:var(--text-base);border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);width:180px;outline:none;transition:border-color .2s,width .2s}.doc-search-input:focus{border-color:color-mix(in srgb,var(--accent-cyan) 45%,transparent);width:220px}.doc-search-clear{position:absolute;right:6px;background:none;border:none;cursor:pointer;color:var(--text-muted);padding:2px;display:flex;align-items:center}.doc-search-clear:hover{color:var(--text-primary)}.doc-search-results{font-size:var(--text-base);color:var(--text-muted);margin-bottom:.5rem;padding-left:.25rem}:root.bg-image-mode .doc-toc,:root.bg-image-mode .doc-accordion,:root.bg-image-mode .doc-mini-card,:root.bg-image-mode .doc-flag,:root.bg-image-mode .doc-legal-item,:root.bg-image-mode .doc-hierarchy{background:color-mix(in srgb,var(--bg-secondary) 72%,transparent)}:root.bg-image-mode .doc-search-input{background:color-mix(in srgb,var(--bg-tertiary) 70%,transparent)}.login-root{position:fixed;inset:0;font-family:var(--font-sans);overflow:hidden;background:var(--bg-primary)}.login-visual{position:fixed;inset:0;z-index:0;overflow:hidden;background:#000d1a}.login-visual-media{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.login-visual-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#000d1a33,#000d1a59 45%,#000d1ac7),linear-gradient(100deg,transparent 0%,transparent 52%,rgba(0,13,26,.6) 78%,rgba(0,13,26,.92) 100%)}.login-visual-content{position:relative;z-index:2;height:100%;display:none;flex-direction:column;justify-content:flex-end;padding:3rem;color:#fff}@media(min-width:900px){.login-visual-content{display:flex}}.login-visual-brand{display:flex;align-items:center;gap:.6rem;margin-bottom:auto}.login-visual-logo{width:34px;height:34px;border-radius:50%;background:#fff;padding:2px;-o-object-fit:contain;object-fit:contain}.login-visual-brand span{font-size:1.1rem;font-weight:800;letter-spacing:-.01em;text-shadow:0 1px 8px rgba(0,0,0,.4)}.login-visual-title{font-size:1.9rem;font-weight:800;line-height:1.25;letter-spacing:-.02em;max-width:480px;margin:0 0 .75rem;text-shadow:0 2px 16px rgba(0,0,0,.45)}.login-visual-sub{font-size:.95rem;color:#ffffffbf;max-width:420px;line-height:1.55;margin:0;text-shadow:0 1px 8px rgba(0,0,0,.35)}.login-visual-bullets{list-style:none;margin:.9rem 0 0;padding:0;display:flex;flex-direction:column;gap:.4rem;max-width:440px}.login-visual-bullets li{position:relative;padding-left:1.1rem;font-size:.85rem;color:#fffc;line-height:1.4;text-shadow:0 1px 8px rgba(0,0,0,.35)}.login-visual-bullets li:before{content:"";position:absolute;left:0;top:.45em;width:6px;height:6px;border-radius:50%;background:#fff;box-shadow:0 0 6px #ffffffb3}.login-panel{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:2rem 1.5rem;background:color-mix(in srgb,var(--bg-primary) 55%,transparent);backdrop-filter:blur(24px) saturate(1.3);-webkit-backdrop-filter:blur(24px) saturate(1.3);overflow-y:auto}@media(min-width:900px){.login-panel{width:34%;min-width:400px;margin-left:auto;border-left:1px solid rgba(255,255,255,.18)}}.login-card{width:100%;max-width:380px;padding:2rem 2.1rem;background:color-mix(in srgb,var(--bg-primary) 75%,transparent);border:1px solid rgba(255,255,255,.14);border-radius:20px;box-shadow:0 24px 70px -12px #0000008c;opacity:0;transform:translateY(16px);transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1)}.login-card.mounted{opacity:1;transform:translateY(0)}.login-header{margin-bottom:1.75rem}.login-title{font-size:1.6rem;font-weight:800;color:var(--text-primary);letter-spacing:-.02em;margin:0 0 .3rem}.login-subtitle{font-size:var(--text-md);color:var(--text-muted);margin:0}.login-form-anim{animation:loginFormIn .3s ease-out}@keyframes loginFormIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.login-field{margin-bottom:1rem}.login-field-label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin-bottom:.35rem;letter-spacing:.02em;transition:color .2s}.login-field.focused .login-field-label{color:var(--accent-cyan)}.login-forgot-row{display:flex;justify-content:flex-end;margin-top:.4rem}.login-forgot-link{font-size:.72rem;font-weight:600;color:var(--accent-cyan);text-decoration:none}.login-forgot-link:hover{text-decoration:underline}.login-field-inner{display:flex;align-items:center;height:46px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:border-color .2s,box-shadow .2s}.login-field.focused .login-field-inner{border-color:color-mix(in srgb,var(--accent-cyan) 55%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-cyan) 14%,transparent)}.login-field-icon{display:flex;align-items:center;justify-content:center;width:42px;flex-shrink:0;color:var(--text-muted);transition:color .2s}.login-field.focused .login-field-icon{color:var(--accent-cyan)}.login-field-inner input{flex:1;height:100%;padding:0 .6rem 0 0;background:transparent;border:none;outline:none;font-family:var(--font-sans);font-size:var(--text-md);color:var(--text-primary);-webkit-text-fill-color:var(--text-primary)}.login-field-inner input::-moz-placeholder{color:var(--text-muted);opacity:.7}.login-field-inner input::placeholder{color:var(--text-muted);opacity:.7}.login-field-inner input:-webkit-autofill,.login-field-inner input:-webkit-autofill:hover,.login-field-inner input:-webkit-autofill:focus,.login-field-inner input:-webkit-autofill:active{-webkit-text-fill-color:var(--text-primary)!important;box-shadow:0 0 0 1000px var(--bg-primary) inset!important;-webkit-transition:background-color 9999s ease-in-out 0s;transition:background-color 9999s ease-in-out 0s}.login-pw-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;margin-right:4px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:color .2s}.login-pw-toggle:hover{color:var(--text-primary)}.login-error{display:flex;align-items:center;gap:.5rem;padding:.55rem .75rem;margin-bottom:.85rem;background:#ef44441a;border:1px solid rgba(239,68,68,.15);border-radius:var(--radius-md);font-size:var(--text-base);color:#f87171;animation:loginShake .4s ease}.login-error svg{flex-shrink:0}@keyframes loginShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.login-btn{width:100%;height:46px;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.25rem;background:var(--accent-cyan);color:var(--text-on-accent);border:none;border-radius:var(--radius-lg);font-family:var(--font-sans);font-size:var(--text-lg);font-weight:700;cursor:pointer;transition:filter .2s,transform .1s,box-shadow .2s}.login-btn:hover:not(:disabled){filter:brightness(1.12);box-shadow:0 4px 20px rgba(var(--accent-primary-rgb),.3)}.login-btn:active:not(:disabled){transform:scale(.98)}.login-btn:disabled{opacity:.7;cursor:not-allowed}.login-footer-links{margin-top:1.75rem;text-align:center}.login-footer-links a{font-size:.78rem;color:var(--text-muted);text-decoration:none}.login-footer-links a:hover{color:var(--accent-cyan)}.login-spinner{width:18px;height:18px;border:2.5px solid rgba(0,29,57,.3);border-top-color:var(--text-on-accent);border-radius:50%;animation:loginSpin .7s linear infinite}.login-spinner-full{width:28px;height:28px;border:2.5px solid rgba(var(--accent-primary-rgb),.2);border-top-color:var(--accent-cyan);border-radius:50%;animation:loginSpin .7s linear infinite}.login-loading-text{margin-top:1rem;color:var(--text-muted);font-size:var(--text-base)}@keyframes loginSpin{to{transform:rotate(360deg)}}@media(max-width:480px){.login-card{max-width:100%}}:root.light .sp-type-btn.active{border-color:var(--accent-cyan)!important;background:rgba(var(--accent-primary-rgb),.12)!important;color:var(--accent-cyan)!important}:root.light .sp-type-btn.active svg{stroke:currentColor!important;color:currentColor!important}:root.light .fd-header{border-bottom-color:color-mix(in srgb,var(--border-color) 90%,transparent)}:root.light .fd-tabs{border-bottom-color:color-mix(in srgb,var(--border-color) 90%,transparent)}:root.light .fd-tab:hover{background:var(--hover-overlay)}:root.light .fd-close:hover{background:var(--hover-overlay)}:root.light .fd-search{background:color-mix(in srgb,var(--bg-tertiary) 92%,transparent)}:root.light .fd-select{background:color-mix(in srgb,var(--bg-tertiary) 94%,transparent)}:root.light .fd-list-item:hover{background:var(--hover-overlay)}:root.light .bd-bs-kpi-card{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 1px 3px #0f172a0d}.light .bd-bs-kpi-card-icon{background:color-mix(in srgb,var(--accent-cyan) 10%,var(--bg-secondary));color:var(--accent-cyan)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media(max-width:1200px){.detail-sections,.charts-row{grid-template-columns:1fr}}@media(max-width:768px){:root{--nav-width: 56px}.nav-brand span,.nav-link span{display:none}.main-content{padding:56px 0 0}.stats-grid{grid-template-columns:repeat(2,1fr)}.tables-grid{grid-template-columns:1fr}.graph-controls-panel{width:220px}.fraud-tabs{flex-wrap:wrap}.node-detail-panel{width:calc(100% - 1.5rem);left:.75rem;right:.75rem}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.\!fixed{position:fixed!important}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.mb-4{margin-bottom:1rem}.mt-2{margin-top:.5rem}.\!block{display:block!important}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.\!table{display:table!important}.table{display:table}.grid{display:grid}.\!hidden{display:none!important}.hidden{display:none}.h-2{height:.5rem}.h-full{height:100%}.w-full{width:100%}.flex-1{flex:1 1 0%}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.resize{resize:both}.items-center{align-items:center}.gap-2{gap:.5rem}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-300{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.p-3{padding:.75rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.uppercase{text-transform:uppercase}.italic{font-style:italic}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}
