@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;z-index:9999;background:linear-gradient(180deg,#122a3829,#16304247),#f0f9ff61;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-content{width:min(100%,420px);display:flex;flex-direction:column;overflow:hidden;border-radius:24px;border:1px solid rgba(125,166,196,.2);background:#fffffff0;box-shadow:0 24px 60px #47738f2e}.modal-content--auth{max-width:460px}.modal-header{padding:24px 24px 10px}.modal-header h3{margin:0;color:var(--color-text-primary);font-size:1.25rem;font-weight:700}.modal-body{padding:10px 24px 24px;color:var(--color-text-secondary);font-size:.96rem;line-height:1.65}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px 24px;border-top:1px solid rgba(125,166,196,.16);background:#f6fbffd6}.modal-footer__confirm{background:linear-gradient(135deg,#f97393,#f04461);border-color:#f04461;box-shadow:0 14px 24px #f044612e}.modal-footer__confirm:hover{border-color:#e11d48;background:linear-gradient(135deg,#fb7185,#e11d48)}.modal-content{background:var(--color-bg-card);border-color:var(--color-border-subtle)}.modal-footer{background:var(--color-bg-subtle);border-top-color:var(--color-border-subtle)}@media(max-width:520px){.modal-overlay{align-items:flex-end;padding:12px}.modal-content{width:100%;border-radius:20px}.modal-footer{flex-direction:column-reverse}.modal-footer .btn{width:100%}}.lang-switcher{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--color-border-subtle);border-radius:999px;background:var(--color-bg-card);transition:all .25s ease}.lang-switcher__icon{color:var(--color-text-muted);margin:0 4px 0 6px}.lang-switcher__btn{min-width:28px;padding:4px 8px;border:none;border-radius:999px;background:transparent;color:var(--color-text-muted);font-size:11px;font-weight:700;letter-spacing:.04em;cursor:pointer;transition:all .2s ease}.lang-switcher__btn:hover{color:var(--color-text-brand)}.lang-switcher__btn--active{background:var(--color-primary-600);color:#fff}.lang-switcher__btn--active:hover{color:#fff}.lang-switcher--compact{padding:2px}.lang-switcher--compact .lang-switcher__icon{display:none}.lang-switcher--compact .lang-switcher__btn{padding:3px 6px;font-size:10px;min-width:24px}.app-shell{--navbar-height: 64px;min-height:100vh;background:var(--color-bg-page);overflow-x:clip}.dashboard-main{min-width:0;padding:calc(var(--navbar-height) + 24px) 36px 40px;min-height:100vh;box-sizing:border-box}.app-navbar{position:fixed;top:0;left:0;right:0;height:var(--navbar-height);z-index:50;display:flex;align-items:center;gap:16px;padding:0 28px;background:var(--surface-glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--color-border);box-shadow:0 2px 16px #0f172a0d}.navbar-left{display:flex;align-items:center;gap:12px;min-width:0;flex-shrink:0}.navbar-brand{display:flex;align-items:center;gap:12px;min-width:0}.navbar-logo-icon{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#06b6d4,#8b5cf6);box-shadow:0 10px 22px #06b6d44d;flex-shrink:0;transition:transform .3s ease}.navbar-brand:hover .navbar-logo-icon{transform:scale(1.08)}.navbar-brand-copy{display:flex;flex-direction:column;min-width:0;line-height:1.2}.navbar-logo-text{font-size:17px;font-weight:800;letter-spacing:.04em;white-space:nowrap;background:linear-gradient(90deg,var(--color-text-primary),#06b6d4);-webkit-background-clip:text;background-clip:text;color:transparent}.navbar-logo-sub{margin-top:2px;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-muted);white-space:nowrap}.navbar-tabs{flex:1;display:flex;align-items:center;justify-content:center;min-width:0}.navbar-tabs__group{display:inline-flex;align-items:center;gap:4px;padding:5px;border-radius:999px;background:#94a3b81f;border:1px solid var(--color-border-subtle);box-shadow:inset 0 1px 2px #0f172a0d}:root[data-theme=dark] .navbar-tabs__group{background:#02061780;border-color:#94a3b829;box-shadow:inset 0 1px 3px #0006}.navbar-tab{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:999px;font-size:14px;font-weight:700;color:var(--color-text-muted);white-space:nowrap;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.navbar-tab:not(.navbar-tab--active):hover{background:var(--color-bg-hover);color:var(--color-text-brand)}.navbar-tab--active{color:var(--color-text-brand);background:linear-gradient(135deg,#38bdf82e,#2dd4bf1f),var(--color-bg-card);box-shadow:0 0 0 1px #38bdf859,0 6px 16px #38bdf82e}:root[data-theme=dark] .navbar-tab--active{background:linear-gradient(135deg,#38bdf838,#2dd4bf1f),#0f172aeb;box-shadow:0 0 0 1px #38bdf873,0 0 18px #38bdf847}.navbar-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.navbar-login-btn{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 16px;white-space:nowrap}.user-menu{position:relative}.user-menu__trigger{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;border:1px solid var(--color-border-subtle);border-radius:999px;background:var(--color-bg-card);cursor:pointer;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.user-menu__trigger:hover,.user-menu__trigger--open{border-color:#38bdf84d;box-shadow:0 8px 20px #0f172a14}.user-menu__avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#38bdf8,#2dd4bf);color:#fff;font-size:12.5px;font-weight:800;letter-spacing:.02em;flex-shrink:0;box-shadow:0 2px 6px #38bdf84d}.user-menu__avatar--lg{width:44px;height:44px;font-size:15px}.user-menu__chevron{color:var(--color-text-muted);transition:transform .2s ease}.user-menu__trigger--open .user-menu__chevron{transform:rotate(180deg)}.user-menu__dropdown{position:absolute;top:calc(100% + 10px);right:0;min-width:240px;padding:8px;border-radius:16px;background:var(--color-bg-card);border:1px solid var(--color-border);box-shadow:0 20px 44px #0f172a29;display:flex;flex-direction:column;gap:4px;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .16s ease,transform .16s ease;z-index:60}.user-menu__dropdown--open{opacity:1;transform:translateY(0);pointer-events:auto}.user-menu__profile{display:flex;align-items:center;gap:10px;padding:8px 10px 12px;border-bottom:1px solid var(--color-border);margin-bottom:4px}.user-menu__profile-copy{min-width:0}.user-menu__name{font-size:13px;font-weight:800;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu__role{margin-top:2px;font-size:12px;color:var(--color-text-muted)}.user-menu__item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:10px;background:transparent;color:var(--color-text-secondary);font-size:14px;font-weight:600;text-align:left;cursor:pointer;transition:background .18s ease,color .18s ease}.user-menu__item:hover{background:var(--color-bg-hover);color:var(--color-text-brand)}.user-menu__item--danger:hover{background:#e11d4814;color:#e11d48}.navbar-hamburger{display:none;align-items:center;justify-content:center;width:38px;height:38px;border:none;border-radius:10px;background:transparent;color:var(--color-text-primary);cursor:pointer;transition:background .2s ease}.navbar-hamburger:hover{background:var(--color-bg-hover)}.navbar-mobile-menu,.navbar-mobile-overlay{display:none}@media(max-width:1100px){.dashboard-main{padding-left:24px;padding-right:24px}.navbar-tab{padding:8px 12px}}@media(max-width:900px){.app-navbar{padding:0 16px}.navbar-hamburger{display:inline-flex}.navbar-tabs,.navbar-logo-sub{display:none}.navbar-left{flex:1 1 auto;min-width:0}.navbar-brand{min-width:0}.navbar-logo-text{overflow:hidden;text-overflow:ellipsis}.navbar-mobile-menu{display:flex;flex-direction:column;gap:6px;position:fixed;top:var(--navbar-height);left:0;right:0;z-index:55;padding:12px 16px 16px;background:var(--color-bg-card);border-bottom:1px solid var(--color-border);box-shadow:0 16px 32px #0f172a1f;transform:translateY(-12px);opacity:0;pointer-events:none;transition:transform .24s cubic-bezier(.4,0,.2,1),opacity .24s ease}.navbar-mobile-menu--open{transform:translateY(0);opacity:1;pointer-events:auto}.navbar-mobile-link{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;font-size:15px;font-weight:700;color:var(--color-text-secondary);transition:background .2s ease,color .2s ease}.navbar-mobile-link:hover{background:var(--color-bg-hover);color:var(--color-text-brand)}.navbar-mobile-link--active{background:linear-gradient(135deg,#38bdf824,#2dd4bf1f),var(--color-bg-card);color:var(--color-text-brand);box-shadow:inset 0 0 0 1px #38bdf829}.navbar-mobile-link__icon{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:var(--surface-glass);border:1px solid var(--color-border-subtle);flex-shrink:0}.navbar-mobile-login{width:100%;justify-content:center;margin-top:4px}.navbar-mobile-overlay{display:block;position:fixed;inset:var(--navbar-height) 0 0 0;background:#0f172a73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:45}}@media(max-width:560px){.navbar-login-btn span{display:none}.navbar-login-btn{padding:0 12px}}@media(max-width:420px){.navbar-logo-text{max-width:38vw;overflow:hidden;text-overflow:ellipsis}}.account-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.account-header h1{font-size:22px;font-weight:700;color:var(--color-text-primary)}.account-header p{font-size:13px;color:#868e96;margin-top:4px}.account-header-actions{display:flex;align-items:center;gap:12px}.account-header-icon-btn{width:36px;height:36px;background-color:#fff;border:1px solid #E9ECEF;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#868e96;cursor:pointer;transition:all .2s ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease}.account-header-icon-btn:hover{border-color:#3b5bdb;color:#3b5bdb}.account-tabs{display:flex;gap:4px;border-bottom:1px solid var(--color-border-subtle);margin-bottom:24px;padding:0}.account-tab{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;font-size:14px;font-weight:600;color:var(--color-text-muted);border:none;background:none;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;border-radius:10px 10px 0 0;transition:color .18s ease,border-color .18s ease,background .18s ease}.account-tab:hover{color:var(--color-text-brand);background:var(--color-bg-hover)}.account-tab--active{color:var(--color-text-brand);border-bottom-color:var(--color-text-brand);font-weight:700}.profile-grid{display:grid;grid-template-columns:1fr 2fr;gap:24px}.profile-avatar-card{background-color:#fff;border:1px solid #E9ECEF;border-radius:12px;padding:24px;text-align:center}.profile-avatar-wrapper{position:relative;display:inline-block;margin-bottom:16px}.profile-avatar{width:112px;height:112px;border-radius:50%;background:linear-gradient(135deg,#ffe8cc,#ffd8a8);border:4px solid #fff;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;justify-content:center;overflow:hidden}.profile-name{font-size:18px;font-weight:700;color:var(--color-text-primary)}.profile-role{font-size:14px;color:#868e96;margin-top:4px}.profile-stats{display:flex;gap:24px;margin-top:16px;padding-top:16px;border-top:1px solid #F1F3F5;justify-content:center}.profile-stat-label{font-size:12px;color:#adb5bd}.profile-stat-value{font-size:18px;font-weight:700;color:#3b5bdb}.profile-verify-card{background-color:#fff;border:1px solid #E9ECEF;border-radius:12px;padding:20px;margin-top:20px}.profile-verify-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--color-text-primary);margin-bottom:16px}.profile-verify-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.profile-verify-label{font-size:14px;color:#868e96}.profile-verify-status{font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px}.profile-verify-status--verified{color:#40c057}.profile-verify-status--pending{color:#3b5bdb}.profile-detail-card{background-color:#fff;border:1px solid #E9ECEF;border-radius:12px;padding:24px}.profile-detail-title{font-size:17px;font-weight:700;color:var(--color-text-primary);margin-bottom:24px}.profile-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.profile-form-full{margin-top:20px}.profile-textarea{width:100%;padding:10px 16px;border-radius:8px;border:1px solid #DEE2E6;font-size:14px;color:var(--color-text-primary);resize:none;outline:none;transition:border-color .2s}.profile-textarea::placeholder{color:#adb5bd}.profile-textarea:focus{border-color:#3b5bdb;box-shadow:0 0 0 3px #3b5bdb1a}.profile-select{width:100%;padding:10px 16px;border-radius:8px;border:1px solid #DEE2E6;font-size:14px;color:var(--color-text-primary);background-color:#fff;outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .2s}.profile-select:focus{border-color:#3b5bdb}.profile-skills{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:20px}.profile-skill-tag{display:flex;align-items:center;gap:4px;padding:4px 12px;background-color:#edf2ff;color:#3b5bdb;border-radius:20px;font-size:13px;font-weight:500}.profile-skill-tag-remove{background:none;border:none;color:#3b5bdb;cursor:pointer;font-size:16px;padding:0;display:flex;line-height:1}.profile-skill-add{padding:4px 12px;border-radius:20px;border:1px dashed #DEE2E6;background:none;font-size:12px;color:#adb5bd;cursor:pointer;transition:all .2s ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease}.profile-skill-add:hover{border-color:#3b5bdb;color:#3b5bdb}.history-card{background-color:#fff;border:1px solid #E9ECEF;border-radius:12px;padding:24px}.history-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.history-title{font-size:18px;font-weight:700;color:var(--color-text-primary)}.history-subtitle{font-size:13px;color:#868e96;margin-top:4px}.history-actions{display:flex;align-items:center;gap:12px}.history-search-wrapper{position:relative}.history-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#adb5bd;display:flex;pointer-events:none}.history-search{padding:8px 16px 8px 36px;border-radius:8px;border:1px solid #E9ECEF;font-size:14px;outline:none;width:200px;transition:border-color .2s}.history-search:focus{border-color:#3b5bdb}.history-filter-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background-color:#fff;border:1px solid #E9ECEF;border-radius:8px;color:#868e96;cursor:pointer;transition:all .2s ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease}.history-filter-btn:hover{border-color:#3b5bdb;color:#3b5bdb}.history-table{width:100%;border-collapse:collapse}.history-table th{text-align:left;font-size:12px;font-weight:600;color:#868e96;text-transform:uppercase;letter-spacing:.05em;padding:12px 16px;border-bottom:1px solid #E9ECEF}.history-table th:last-child{text-align:right}.history-table td{padding:16px;border-bottom:1px solid #F1F3F5;vertical-align:middle}.history-table tr:hover{background-color:#f8f9fa}.history-question{display:flex;align-items:center;gap:12px}.history-question-icon{width:32px;height:32px;border-radius:8px;background-color:#f8f9fa;display:flex;align-items:center;justify-content:center;flex-shrink:0}.history-question-text{font-size:14px;font-weight:500;color:var(--color-text-primary)}.history-time{font-size:14px;color:#868e96}.history-stars{display:flex;gap:2px}.history-action-link{display:inline-flex;align-items:center;gap:4px;font-size:14px;color:#3b5bdb;font-weight:500;float:right}.history-action-link:hover{text-decoration:underline}.history-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:20px;padding-top:16px;border-top:1px solid #F1F3F5}.history-pagination-info{font-size:14px;color:#adb5bd}.history-pagination-btns{display:flex;align-items:center;gap:4px}.history-page-btn{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;border:none;background:none;color:#868e96;cursor:pointer;transition:all .15s}.history-page-btn:hover{background-color:#f8f9fa}.history-page-btn--active{background-color:#3b5bdb;color:#fff}.history-page-btn--active:hover{background-color:#364fc7}.account-header,.profile-avatar-card,.profile-verify-card,.profile-detail-card,.favorites-card,.history-card{background:var(--color-bg-card);border-color:#7da6c42e;box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.account-header,.profile-avatar-card,.profile-verify-card,.profile-detail-card,.favorites-card,.history-card{border-radius:24px}.account-header{padding:24px}.account-header h1,.profile-name,.profile-detail-title,.history-title{color:var(--color-text-primary)}.account-header p,.profile-role,.profile-verify-label,.history-subtitle,.history-time{color:var(--color-text-secondary)}.account-header-icon-btn,.account-tab,.history-page-btn{transition:all .18s ease}.account-header-icon-btn{border-color:#7da6c42e;color:var(--color-text-muted);box-shadow:var(--shadow-sm)}.account-header-icon-btn:hover,.account-tab:hover,.history-page-btn:hover{border-color:#38bdf847;color:var(--color-primary-700);background:var(--color-bg-hover)}.history-page-btn--active{background:var(--color-bg-active);color:var(--color-primary-700);border-bottom-color:var(--color-primary-700)}.profile-avatar{background:linear-gradient(135deg,#e0f2fef5,#ccfbf1e0)}.profile-verify-status--verified{color:var(--color-success)}.account-header-note{max-width:280px;padding:10px 14px;border-radius:999px;border:1px solid rgba(56,189,248,.18);background:#f0faffd1;color:var(--color-primary-700);font-size:12px;font-weight:700;text-align:center}.favorites-subtitle{margin-top:6px;font-size:13px;color:var(--color-text-secondary)}.favorites-state{display:flex;align-items:center;justify-content:center;padding:40px}.favorites-state--empty{min-height:180px;border:1px dashed rgba(125,166,196,.26);border-radius:20px;background:var(--color-bg-card);color:var(--color-text-secondary);line-height:1.7;text-align:center}.profile-inline-message{margin-top:12px;margin-bottom:16px;padding:12px 14px;border-radius:14px;border:1px solid rgba(125,166,196,.2);background:var(--color-bg-subtle);font-size:.9rem;color:var(--color-text-secondary)}.profile-inline-message--success{background:#ecfdf5f0;border-color:#34d39947;color:#0f766e}.profile-inline-message--error{background:#fff1f2f2;border-color:#f4638b42;color:#be123c}.profile-inline-message--info{background:#eff6fff0;border-color:#3b82f642;color:#1d4ed8}.profile-password-section{margin-top:32px;padding-top:24px;border-top:1px solid rgba(125,166,196,.16)}.account-header h1,.profile-name,.profile-detail-title,.history-title,.favorites-title{color:var(--color-text-primary)}.account-header p,.profile-role,.profile-verify-label,.history-subtitle,.history-time,.favorites-card-date{color:var(--color-text-secondary)}.favorites-card:hover,.history-table tr:hover{box-shadow:var(--shadow-sm);background:var(--color-bg-hover)}.favorites-card-bookmark{color:var(--color-text-muted)}.favorites-card-bookmark:hover,.history-action-link{color:var(--color-primary-700)}.history-action-link{float:none}.history-question-icon{background:var(--color-bg-active)}@media(max-width:960px){.account-header{flex-direction:column;align-items:flex-start}.account-header-note{max-width:none;width:100%;text-align:left}.profile-grid,.favorites-grid{grid-template-columns:1fr}}@media(max-width:720px){.account-header{padding:18px 14px;border-radius:18px}.account-header h1{font-size:21px;padding-right:0}.account-header-actions,.favorites-header,.favorites-actions,.history-header,.history-actions,.history-pagination{width:100%;flex-wrap:wrap}.account-tabs{overflow-x:auto;padding:0 4px}.account-tab{white-space:nowrap}.profile-form-grid{grid-template-columns:1fr}.favorites-search-wrapper,.history-search-wrapper,.favorites-search,.history-search{width:100%}.history-card{padding:16px;overflow-x:auto}.history-table{min-width:640px}}.account-header,.profile-avatar-card,.profile-verify-card,.profile-detail-card,.favorites-card,.history-card,.account-header-icon-btn,.favorites-search,.favorites-filter-btn,.history-search,.history-filter-btn,.profile-textarea,.profile-select,.history-question-icon{background:var(--color-bg-card);border-color:var(--color-border-subtle);color:var(--color-text-primary)}.profile-skill-add,.history-page-btn,.profile-inline-message,.favorites-state--empty{background:var(--color-bg-subtle);border-color:var(--color-border-subtle);color:var(--color-text-secondary)}.history-page-btn--active,.profile-skill-tag,.account-header-note{background:var(--color-bg-active);color:var(--color-text-brand)}.history-table th,.history-table td,.profile-stats,.profile-password-section{border-color:var(--color-border-subtle)}.history-table th{background:var(--color-bg-card);color:var(--color-text-muted)}.history-table tr:hover,.favorites-card:hover,.account-tab:hover,.account-header-icon-btn:hover,.history-page-btn:hover{background:var(--color-bg-hover)}@media(max-width:720px){.favorites-card-footer,.profile-verify-row{align-items:flex-start;flex-direction:column;gap:8px}}.react-grid-layout{position:relative;transition:height .2s ease}.react-grid-item{transition:all .2s ease;transition-property:left,top,width,height}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:.2;transition-duration:.1s;z-index:2;-webkit-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{position:absolute;width:20px;height:20px;opacity:0}.react-grid-item:hover>.react-resizable-handle{opacity:1}.react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,.4);border-bottom:2px solid rgba(0,0,0,.4)}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.dashboard-main:has(.ai-page){padding-top:var(--navbar-height);height:100vh;overflow:hidden}.ai-page{--ai-surface: var(--color-bg-card);--ai-surface-soft: var(--color-bg-subtle);--ai-border: var(--color-border-subtle);--ai-border-strong: var(--color-border-strong);--ai-text: var(--color-text-primary);--ai-text-muted: var(--color-text-secondary);--ai-primary: var(--color-primary-600);--ai-primary-strong: var(--color-primary-700);--ai-primary-soft: var(--color-bg-active);--ai-shadow-sm: var(--shadow-sm);--ai-shadow-md: var(--shadow-md);--ai-shadow-lg: var(--shadow-lg);display:flex;width:100%;height:100%;min-height:0}.ai-workspace{position:relative;display:flex;gap:20px;width:100%;height:100%;min-height:0;align-items:stretch}.ai-workspace--chat-hidden .ai-assistant-panel,.ai-workspace--chat-hidden .ai-panel__resize-edge{display:none}.ai-board,.ai-assistant-panel{min-width:0;min-height:0;border:1px solid var(--ai-border);border-radius:24px;background:var(--ai-surface);box-shadow:var(--ai-shadow-md)}.ai-board{flex:1;display:flex;flex-direction:column;overflow:hidden}.ai-panel__resize-edge{flex-shrink:0;width:8px;cursor:col-resize;position:relative;margin:20px 0;border-radius:4px}.ai-panel__resize-edge:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:3px;height:0;border-radius:2px;background:var(--ai-primary, #0ea5e9);opacity:0;transition:height .2s ease,opacity .2s ease}.ai-panel__resize-edge:hover:after,.ai-panel__resize-edge--active:after{height:44px;opacity:.55}.ai-board__toolbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 20px;height:52px;flex-shrink:0;border-bottom:1px solid var(--ai-border);background:var(--surface-glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ai-board__toolbar-left{display:flex;align-items:center;gap:12px;min-width:0;overflow:hidden}.ai-board__toolbar-session{display:flex;align-items:center;gap:5px;overflow:hidden}.ai-board__toolbar-session-label{font-size:12px;color:var(--ai-text-muted);white-space:nowrap;flex-shrink:0}.ai-board__toolbar-session strong{font-size:13px;font-weight:700;color:var(--ai-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.ai-board__toolbar-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.ai-board__toolbar-count{padding:4px 10px;border-radius:999px;background:var(--ai-primary-soft);border:1px solid var(--ai-border-strong);font-size:12px;font-weight:800;color:var(--ai-primary-strong);white-space:nowrap}.ai-board__eyebrow,.ai-assistant-panel__eyebrow{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:var(--ai-primary-soft);border:1px solid var(--ai-border-strong);color:var(--ai-primary-strong);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.ai-board__action{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:10px;border:1px solid var(--ai-border);background:var(--ai-surface);color:var(--ai-text);font-size:13px;font-weight:700;transition:all .18s ease;white-space:nowrap}.ai-board__action:hover{border-color:var(--ai-border-strong);color:var(--ai-primary-strong)}.ai-board__action--danger:hover{color:var(--color-danger);border-color:#f0446138;background:#f044611a}.ai-board__action--active-view{background:var(--ai-primary-soft)!important;border-color:var(--ai-primary)!important;color:var(--ai-primary-strong)!important}.ai-board__action--active-view:hover{border-color:var(--ai-primary-strong)!important}.canvas-grid{flex:1;min-height:0;overflow-y:auto;padding:18px;position:relative;width:100%}.canvas-grid>*{min-width:0;width:100%}.canvas-empty{flex:1;min-height:0;margin:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 24px;text-align:center;border:1px dashed rgba(148,163,184,.3);border-radius:24px;background:var(--ai-surface-soft)}.canvas-empty__orb{width:58px;height:58px;display:flex;align-items:center;justify-content:center;border-radius:18px;color:var(--ai-primary-strong);background:var(--ai-primary-soft);border:1px solid var(--ai-border-strong);box-shadow:var(--ai-shadow-sm)}.canvas-empty p{font-size:22px;font-weight:800;color:var(--ai-text)}.canvas-empty span{max-width:420px;font-size:14px;line-height:1.6;color:var(--ai-text-muted)}.canvas-empty__chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.canvas-empty__chips span{padding:7px 12px;border-radius:999px;background:var(--ai-surface);border:1px solid var(--ai-border);font-size:12px;font-weight:700;color:var(--ai-text-muted)}.canvas-filter-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:var(--ai-primary-soft);border:1px solid var(--ai-border-strong);color:var(--ai-primary-strong);font-size:12px;font-weight:700}.canvas-filter-clear{display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:none;color:inherit}.canvas-filter-clear:hover{color:var(--color-danger)}.ai-assistant-panel{flex-shrink:0;position:relative;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:16px;gap:14px}.ai-panel__header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-shrink:0}.ai-panel__header-left{display:flex;align-items:center;gap:10px;min-width:0;overflow:hidden}.ai-panel__chat-title{font-size:13px;font-weight:700;color:var(--ai-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-panel__header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.ai-assistant-toolbar{display:inline-flex;align-items:center;gap:8px}.ai-icon-btn{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ai-border);border-radius:12px;background:var(--ai-surface);color:var(--ai-text-muted);box-shadow:var(--ai-shadow-sm);transition:all .18s ease}.ai-icon-btn:hover{transform:translateY(-1px);border-color:var(--ai-border-strong);color:var(--ai-primary-strong);background:var(--ai-primary-soft)}.ai-chat-shell{display:flex;flex:1;min-height:0;flex-direction:column;overflow:hidden;border:1px solid var(--ai-border);border-radius:20px;background:var(--ai-surface);box-shadow:var(--ai-shadow-sm)}.ai-chat-status{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;border:1px solid rgba(56,189,248,.18);background:var(--ai-primary-soft);color:var(--ai-primary-strong);font-size:11px;font-weight:800;white-space:nowrap}.ai-messages{flex:1;min-height:0;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:16px;background:var(--ai-surface)}.ai-loading-state{display:flex;justify-content:center;padding:36px 0;color:var(--ai-primary-strong)}.ai-message{display:flex;gap:12px;max-width:92%}.ai-message--user{align-self:flex-end;flex-direction:row-reverse}.ai-message__content{min-width:0}.ai-message-avatar{width:34px;height:34px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;font-size:14px;font-weight:800}.ai-message-avatar--ai{background:var(--ai-primary-soft);color:var(--ai-primary-strong)}.ai-message-avatar--user{background:#38bdf81f;color:var(--ai-primary-strong)}.ai-message-bubble{padding:14px 16px;border-radius:18px;font-size:14px;line-height:1.65}.ai-message-bubble--ai{background:var(--ai-surface-soft);border:1px solid var(--ai-border);color:var(--ai-text);border-top-left-radius:8px}.ai-message-bubble--user{background:linear-gradient(135deg,#38bdf8,#0ea5e9);color:#fff;box-shadow:0 12px 24px #0ea5e924;border-top-right-radius:8px}.ai-message-bubble--ai h1,.ai-message-bubble--ai h2,.ai-message-bubble--ai h3,.ai-message-bubble--ai h4{margin:12px 0 6px;color:var(--ai-text)}.ai-message-bubble--ai p{margin:4px 0}.ai-message-bubble--ai ul,.ai-message-bubble--ai ol{padding-left:18px;margin:6px 0}.ai-message-bubble--ai strong{color:var(--ai-primary-strong)}.ai-message-bubble--ai code{padding:1px 5px;border-radius:6px;background:var(--ai-primary-soft)}.ai-message-link{display:inline-flex;align-items:center;font-weight:700;color:var(--ai-primary-strong);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.ai-message-link:hover{color:#0369a1}.ai-message-bubble--ai table{width:100%;margin:8px 0;border-collapse:collapse;font-size:13px}.ai-message-bubble--ai th,.ai-message-bubble--ai td{padding:8px 10px;border:1px solid var(--ai-border);text-align:left}.ai-message-bubble--ai th{background:var(--ai-primary-soft);color:var(--ai-primary-strong)}.ai-starter-state{display:flex;flex-direction:column;gap:16px;width:100%;align-items:center}.ai-starter-intro{display:flex;gap:12px}.ai-starter-bubble{max-width:100%}.ai-starter-grid{display:grid;grid-template-columns:1fr;gap:12px}.ai-starter-card{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:18px;border:1px solid var(--ai-border);background:var(--ai-surface-soft);text-align:left;transition:all .18s ease}.ai-starter-card:hover{transform:translateY(-1px);border-color:var(--ai-border-strong);background:var(--ai-primary-soft)}.ai-starter-card-title{font-size:14px;font-weight:800;color:var(--ai-text)}.ai-starter-card-description{font-size:12px;line-height:1.55;color:var(--ai-text-muted)}.ai-suggestions{display:flex;flex-direction:column;gap:8px}.ai-suggestions--starter{padding:14px 16px;border-radius:18px;border:1px solid var(--ai-border);background:var(--ai-surface-soft)}.ai-suggestions-label,.ai-follow-up__label{font-size:12px;font-weight:800;color:var(--ai-text-muted)}.ai-suggestions-list,.ai-follow-up__list{display:flex;flex-wrap:wrap;gap:8px}.ai-suggestion-chip,.ai-follow-up__chip{padding:8px 12px;border-radius:999px;border:1px solid var(--ai-border-strong);background:var(--ai-surface);color:var(--ai-primary-strong);font-size:12px;font-weight:700;transition:all .18s ease}.ai-suggestion-chip:hover:not(:disabled),.ai-follow-up__chip:hover:not(:disabled){background:var(--ai-primary-soft)}.ai-suggestion-chip:disabled,.ai-follow-up__chip:disabled{opacity:.6;cursor:not-allowed}.ai-typing{display:inline-flex;align-items:center;gap:4px;padding:12px 16px;border-radius:16px;background:var(--ai-surface-soft);border:1px solid var(--ai-border)}.ai-typing-dot{width:6px;height:6px;border-radius:50%;background:var(--ai-text-muted);animation:pulse-dot 1.4s ease-in-out infinite}.ai-typing-dot:nth-child(2){animation-delay:.2s}.ai-typing-dot:nth-child(3){animation-delay:.4s}.ai-thinking{margin-bottom:10px;border:1px solid var(--ai-border);border-radius:12px;background:var(--ai-primary-soft);overflow:hidden}.ai-thinking--active{border-color:var(--ai-border-strong)}.ai-thinking__header{display:flex;align-items:center;gap:6px;width:100%;padding:8px 12px;background:transparent;border:none;cursor:pointer;color:var(--ai-primary-strong);font-size:12.5px;font-weight:700;text-align:left}.ai-thinking__header:disabled{cursor:default}.ai-thinking__spark{flex-shrink:0}.ai-thinking__title{flex:1;min-width:0}.ai-thinking__list{list-style:none;margin:0;padding:0 12px 10px;display:flex;flex-direction:column;gap:6px}.ai-thinking__step{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;color:var(--ai-text);animation:ai-thinking-step-in .25s ease}.ai-thinking__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;margin-top:1px;color:#16a34a}.ai-thinking__step--pending .ai-thinking__icon{color:var(--ai-primary)}.ai-thinking__step--pending .ai-thinking__label{color:var(--ai-text-muted)}.ai-thinking__label{line-height:1.45}@keyframes ai-thinking-step-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.ai-input-area{padding:16px 18px 18px;border-top:1px solid var(--ai-border);background:var(--ai-surface)}.ai-attached-file{display:inline-flex;align-items:center;gap:6px;margin-bottom:10px;padding:7px 12px;border-radius:999px;background:var(--ai-primary-soft);border:1px solid var(--ai-border-strong);color:var(--ai-primary-strong);font-size:12px;font-weight:700}.ai-attached-file-remove{display:inline-flex;align-items:center;justify-content:center;border:none;background:none;color:inherit}.ai-input-wrapper{display:flex;align-items:flex-end;gap:8px;padding:8px 14px;border-radius:18px;border:1px solid var(--ai-border);background:var(--color-bg-input);box-shadow:var(--ai-shadow-sm)}.ai-input-wrapper:focus-within{border-color:var(--ai-border-strong);box-shadow:0 0 0 4px #38bdf81a}.ai-input{flex:1;min-width:0;border:none;background:none;font-size:14px;color:var(--ai-text);outline:none}.ai-input--textarea{resize:none;padding:6px 0;height:24px;min-height:24px;line-height:1.5;overflow-y:hidden}.ai-input::placeholder{color:var(--ai-text-muted)}.ai-input-btn{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:12px;background:none;color:var(--ai-text-muted)}.ai-input-btn:hover{color:var(--ai-primary-strong);background:var(--ai-primary-soft)}.ai-input-send{background:linear-gradient(135deg,#38bdf8,#0ea5e9);color:#fff}.ai-input-send:hover{color:#fff;background:linear-gradient(135deg,#26b5f0,#0284c7)}.ai-input-send:disabled,.ai-input-btn:disabled{opacity:.55;cursor:not-allowed}.ai-input-hint{margin-top:10px;font-size:11px;line-height:1.5;text-align:center;color:var(--ai-text-muted)}.ai-restore-state{display:inline-flex;align-items:center;gap:10px;padding:12px 14px;border-radius:16px;background:var(--ai-surface);border:1px solid var(--ai-border);color:var(--ai-text-muted);font-size:13px;font-weight:700}.ai-history-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20000;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a2e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ai-history-dialog{width:min(100%,460px);max-height:min(560px,calc(100vh - 48px));display:flex;flex-direction:column;overflow:hidden;border-radius:22px;border:1px solid var(--ai-border);background:var(--ai-surface);box-shadow:var(--ai-shadow-lg)}.ai-history-dialog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 18px 14px;border-bottom:1px solid var(--ai-border)}.ai-history-dialog__header h3{font-size:18px;color:var(--ai-text)}.ai-history-dialog__header p{margin-top:4px;font-size:13px;color:var(--ai-text-muted);line-height:1.6}.ai-history-dialog__body{flex:1;min-height:0;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.ai-history-dialog__empty{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:18px;background:var(--ai-primary-soft);color:var(--ai-text-muted);line-height:1.6}.ai-history-dialog__item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid transparent;border-radius:16px;background:var(--ai-surface-soft);transition:all .18s ease}.ai-history-dialog__item:hover,.ai-history-dialog__item--active{border-color:var(--ai-border-strong);background:var(--ai-primary-soft)}.ai-history-dialog__item-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:var(--ai-primary-soft);color:var(--ai-primary-strong)}.ai-history-dialog__item-body{min-width:0}.ai-history-dialog__item-body strong{display:block;color:var(--ai-text);font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-history-dialog__item-body span{display:block;margin-top:3px;font-size:11px;color:var(--ai-text-muted)}.ai-history-dialog__delete{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:10px;background:var(--ai-surface);color:var(--ai-text-muted)}.ai-history-dialog__delete:hover{color:var(--color-danger);background:#f044611a}.ai-chart-card{--ai-chart-accent: #38bdf8;--ai-chart-accent-strong: #0284c7;--ai-chart-soft: var(--ai-primary-soft);--ai-chart-border: var(--ai-border-strong);--ai-chart-text: var(--ai-primary-strong);--ai-chart-glow: rgba(56, 189, 248, .18);position:relative;display:flex;flex-direction:column;gap:16px;min-width:0;padding:18px;border-radius:22px;border:1px solid rgba(148,163,184,.16);background:var(--ai-surface);box-shadow:var(--ai-shadow-md);overflow:visible;isolation:isolate;container-type:inline-size;container-name:chartcard}.ai-chart-card:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:4px;border-top-left-radius:22px;border-top-right-radius:22px;background:linear-gradient(90deg,var(--ai-chart-accent),transparent);opacity:.75}.ai-chart-card:hover{box-shadow:0 18px 38px #6796b51f,0 0 0 1px var(--ai-chart-glow)}.react-grid-item.react-draggable-dragging .ai-chart-card,.react-grid-item.resizing .ai-chart-card{transition:none!important}.react-grid-item>.react-resizable-handle{z-index:10}.canvas-grid--editing .ai-chart-card__drag{cursor:grab}.canvas-grid--editing .react-grid-item>.react-resizable-handle{width:18px;height:18px}.canvas-grid--editing .react-grid-item>.react-resizable-handle:after{width:9px;height:9px;right:4px;bottom:4px;border-right:2px solid var(--ai-chart-accent-strong, #475569);border-bottom:2px solid var(--ai-chart-accent-strong, #475569)}.react-grid-item.react-draggable-dragging,.react-grid-item.resizing{z-index:20}.react-grid-item.react-grid-placeholder{background:var(--ai-chart-accent, #94a3b8);opacity:.18;border-radius:16px}.ai-chart-card--canvas{height:100%;display:flex;flex-direction:column}.ai-chart-card--canvas .ai-chart-card__body{flex:1;min-height:0;display:flex;flex-direction:column}.ai-chart-card--canvas .ai-chart-plot,.ai-chart-card--canvas .ai-chart-plot--trend,.ai-chart-card--canvas .ai-chart-plot--pie,.ai-chart-card--canvas .ai-chart-plot--radar,.ai-chart-card--canvas .ai-chart-plot--echarts{height:100%!important;min-height:0!important}.ai-chart-card--message{margin-top:12px;box-shadow:0 10px 22px #6796b51a}.ai-chart-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ai-chart-card__title-block{min-width:0}.ai-chart-card__meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.ai-chart-card__badge,.ai-chart-card__source{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:800}.ai-chart-card__badge{background:var(--ai-chart-soft);color:var(--ai-chart-text);border:1px solid var(--ai-chart-border)}.ai-chart-card__source{background:var(--ai-surface-soft);color:var(--ai-text-muted);border:1px solid rgba(148,163,184,.16)}.ai-chart-card__title{font-size:16px;color:var(--ai-text)}.ai-chart-card__subtitle{margin-top:6px;font-size:12px;line-height:1.55;color:var(--ai-text-muted)}.ai-chart-card__actions{display:flex;gap:6px}.ai-chart-action-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(148,163,184,.18);border-radius:12px;background:var(--ai-surface-soft);color:var(--ai-chart-accent-strong);box-shadow:var(--ai-shadow-sm)}.ai-chart-action-btn:hover{background:var(--ai-chart-soft);border-color:var(--ai-chart-border)}.ai-chart-action-btn--danger:hover{color:var(--color-danger);background:#f044611a}.ai-chart-plot{width:100%;min-width:0;height:290px}.ai-chart-plot--trend{height:320px}.ai-chart-plot--pie,.ai-chart-plot--radar{height:260px}.ai-chart-card--message .ai-chart-plot{height:240px}.ai-chart-card--message .ai-chart-plot--trend{height:260px}.ai-chart-footer-note{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;background:var(--ai-surface-soft);border:1px solid var(--ai-border)}.ai-chart-footer-note__label{font-size:11px;font-weight:800;color:var(--ai-text-muted)}.ai-chart-footer-note__value{font-size:12px;font-weight:800;color:var(--ai-text)}.ai-chart-tooltip{min-width:160px;padding:12px;border-radius:14px;border:1px solid var(--ai-border);background:var(--ai-surface);box-shadow:var(--ai-shadow-md)}.ai-chart-tooltip__eyebrow{font-size:10px;font-weight:800;color:var(--ai-text-muted);letter-spacing:.06em;text-transform:uppercase}.ai-chart-tooltip__title{margin-top:6px;font-size:13px;font-weight:800;color:var(--ai-text)}.ai-chart-tooltip__row{display:flex;justify-content:space-between;gap:12px;margin-top:8px;font-size:12px;color:var(--ai-text-muted)}.ai-chart-tooltip__footnote{margin-top:8px;padding-top:8px;border-top:1px solid rgba(148,163,184,.16);font-size:10px;color:var(--ai-text-muted)}.ai-metric-grid{display:grid;gap:12px;width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.ai-metric-grid--1up{grid-template-columns:1fr}.ai-metric-grid--2up{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-metric-tile{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:18px;border:1px solid var(--ai-metric-border);background:var(--ai-surface-soft);transition:all .16s ease}.ai-metric-tile:hover,.ai-metric-tile--selected{transform:translateY(-1px);box-shadow:var(--ai-shadow-sm)}.ai-metric-tile--muted{opacity:.58}.ai-metric-tile__label{font-size:12px;font-weight:800;color:var(--ai-text-muted)}.ai-metric-tile__value{font-size:24px;font-weight:800;line-height:1.08;color:var(--ai-metric-accent)}.ai-pie-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(160px,.85fr);gap:16px;align-items:center}.ai-pie-legend{display:flex;flex-direction:column;gap:10px}.ai-pie-legend__item{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;border:1px solid rgba(148,163,184,.16);background:var(--ai-surface-soft);transition:all .16s ease}.ai-pie-legend__item:hover,.ai-pie-legend__item--selected{border-color:var(--ai-border-strong);box-shadow:var(--ai-shadow-sm)}.ai-pie-legend__dot{width:10px;height:10px;border-radius:50%}.ai-pie-legend__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;color:var(--ai-text-muted)}.ai-pie-legend__value{font-size:12px;font-weight:800;color:var(--ai-text)}.ai-network-card{position:relative;width:100%;height:320px;border-radius:16px;background:var(--ai-surface-soft);border:1px solid rgba(148,163,184,.16);overflow:hidden;color:var(--ai-text)}.ai-network-card__svg{width:100%;height:100%}.ai-network-card__edge{stroke-linecap:round}.ai-network-card__center{filter:drop-shadow(0 8px 16px rgba(15,23,42,.24))}.ai-network-card__center-label,.ai-network-card__label{paint-order:stroke;stroke:var(--ai-surface-soft);stroke-width:.7px;stroke-linejoin:round}.ai-network-card__center-label{fill:#fff;stroke:#0f172a6b}.ai-network-card__label{fill:var(--ai-text);filter:drop-shadow(0 1px 2px rgba(15,23,42,.2))}.ai-network-tooltip{position:absolute;z-index:10;transform:translate(-50%,-110%);padding:8px 10px;border-radius:12px;background:#112431f5;color:#fff;box-shadow:0 12px 24px #1124313d;pointer-events:none}.ai-network-tooltip__title{font-size:12px;font-weight:800}.ai-network-tooltip__value{margin-top:2px;font-size:11px;color:#ffffffc7}.ai-network-legend{display:flex;flex-direction:column;gap:4px}.ai-network-legend__title{font-size:12px;font-weight:800;color:var(--ai-text)}.ai-network-legend__note{font-size:11px;line-height:1.5;color:var(--ai-text-muted)}.ai-toast{position:fixed;top:94px;right:28px;z-index:1000;padding:12px 16px;border-radius:14px;background:#112431f0;color:#fff;font-size:13px;font-weight:800;box-shadow:0 18px 32px #11243138}.recharts-pie-sector,.recharts-bar-rectangle,.recharts-radar-polygon,.recharts-active-dot{cursor:pointer;transition:opacity .18s ease,transform .18s ease}:root[data-theme=dark] .ai-page{--ai-surface: #0f172a;--ai-surface-soft: #111c31;--ai-border: rgba(148, 163, 184, .22);--ai-border-strong: rgba(125, 211, 252, .28);--ai-primary-soft: rgba(56, 189, 248, .14);--ai-chart-accent-strong: #7dd3fc;--ai-chart-glow: rgba(56, 189, 248, .16)}:root[data-theme=dark] .ai-board__toolbar{background:#0f172aeb}:root[data-theme=dark] .ai-input-wrapper,:root[data-theme=dark] .ai-board__action,:root[data-theme=dark] .ai-icon-btn,:root[data-theme=dark] .ai-chat-reveal{background:#111c31}:root[data-theme=dark] .ai-board__action:hover,:root[data-theme=dark] .ai-icon-btn:hover,:root[data-theme=dark] .ai-suggestion-chip:hover:not(:disabled),:root[data-theme=dark] .ai-follow-up__chip:hover:not(:disabled){background:#38bdf824}:root[data-theme=dark] .ai-network-card__label{fill:#ddebfa;stroke:#111c31f5;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}:root[data-theme=dark] .ai-network-card__edge{opacity:.78}:root[data-theme=dark] .ai-message-bubble--user,:root[data-theme=dark] .ai-input-send{color:#082033}@keyframes pulse-dot{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}@container chartcard (max-width: 420px){.ai-chart-plot,.ai-chart-plot--pie,.ai-chart-plot--radar{height:220px}.ai-chart-plot--trend{height:240px}.ai-chart-card__title{font-size:14px}}@container canvas (max-width: 900px){.ai-chart-card--canvas.ai-chart-card--small{grid-column:span 6}}@container canvas (max-width: 680px){.ai-chart-card--canvas.ai-chart-card--small,.ai-chart-card--canvas.ai-chart-card--medium,.ai-chart-card--canvas.ai-chart-card--large{grid-column:1 / -1}}@media(max-width:1180px){.dashboard-main:has(.ai-page){height:auto;overflow:visible}.ai-page{height:auto;min-height:auto}.ai-workspace{flex-direction:column;height:auto}.ai-board,.ai-assistant-panel{min-height:auto}.ai-chat-shell{min-height:620px}}@media(max-width:900px){.dashboard-main:has(.ai-page){padding-top:16px}.ai-board__toolbar,.ai-panel__header{flex-wrap:wrap;height:auto;padding-top:8px;padding-bottom:8px}.canvas-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.ai-message{max-width:100%}}@media(max-width:720px){.dashboard-main:has(.ai-page){padding:calc(64px + env(safe-area-inset-top)) 8px calc(20px + env(safe-area-inset-bottom))}.ai-page,.ai-workspace,.ai-board,.ai-assistant-panel{width:100%;max-width:100%;min-width:0}.ai-workspace{flex-direction:column;gap:10px}.ai-panel__resize-edge{display:none}.ai-assistant-panel{width:100%!important;padding:10px;border-radius:16px}.ai-board{border-radius:16px}.ai-board__toolbar,.ai-panel__header{align-items:flex-start;gap:8px;padding:10px}.ai-board__toolbar-left,.ai-panel__header-left,.ai-panel__header-right{width:100%;flex-wrap:wrap}.ai-board__toolbar-right{width:100%;flex-wrap:wrap;justify-content:flex-start}.ai-board__toolbar-session{max-width:100%}.ai-board__toolbar-session strong{max-width:160px}.ai-board__action{flex:1 1 auto;min-width:0;justify-content:center;padding:0 10px}.canvas-grid{grid-template-columns:1fr;padding:10px;gap:10px}.canvas-empty{margin:10px;padding:30px 16px;border-radius:18px}.canvas-empty p{font-size:20px;line-height:1.35}.ai-chart-card--canvas.ai-chart-card--small,.ai-chart-card--canvas.ai-chart-card--medium,.ai-chart-card--canvas.ai-chart-card--large{grid-column:1 / -1}.ai-pie-layout,.ai-metric-grid,.ai-metric-grid--2up{grid-template-columns:1fr}.ai-chart-plot,.ai-chart-plot--trend,.ai-chart-plot--pie,.ai-chart-plot--radar,.ai-network-card{height:220px}.ai-chat-shell{min-height:500px;border-radius:16px}.ai-messages,.ai-input-area{padding:10px}.ai-message{gap:8px}.ai-message-bubble{padding:12px;font-size:13px}.ai-input-wrapper{padding:8px 10px;border-radius:16px}}.ai-chart-card__title-block{display:flex;flex-direction:column;gap:4px;width:100%}.ai-chart-card__title-wrapper{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;width:100%}.ai-chart-card__title{font-size:15px;font-weight:600;line-height:1.4;color:var(--ai-text);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.ai-chart-card__info-trigger{position:relative;display:inline-flex;align-items:center;cursor:pointer;color:var(--ai-text-muted);opacity:.65;transition:opacity .2s ease,color .2s ease;flex-shrink:0}.ai-chart-card__info-trigger:hover{opacity:1;color:var(--ai-chart-accent-strong)}.ai-chart-card__info-tooltip{visibility:hidden;opacity:0;position:absolute;top:100%;left:0;margin-top:6px;background:var(--ai-surface-soft);border:1px solid var(--ai-border);padding:10px 12px;border-radius:10px;font-size:12px;width:250px;box-shadow:var(--ai-shadow-md);z-index:200;transition:opacity .2s ease,transform .2s ease,visibility .2s ease;transform:translateY(4px);pointer-events:none;font-weight:400;line-height:1.45;color:var(--ai-text);text-align:left}.ai-chart-card__info-trigger:hover .ai-chart-card__info-tooltip{visibility:visible;opacity:1;transform:translateY(0)}.ai-tooltip-section-title{font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--ai-text-muted);margin-bottom:5px}.ai-tooltip-filters{border-bottom:1px solid var(--ai-border);padding-bottom:6px;margin-bottom:6px}.ai-tooltip-filter-row{display:flex;justify-content:space-between;gap:8px;margin-bottom:3px;font-size:11px}.ai-tooltip-filter-key{color:var(--ai-text-muted);flex-shrink:0}.ai-tooltip-filter-value{font-weight:500;color:var(--ai-text);text-align:right;word-break:break-all}.ai-tooltip-logic{font-size:11px;color:var(--ai-text-muted);font-style:italic}.ai-workspace--full-chat .ai-assistant-panel{border:none;background:transparent;box-shadow:none;padding:0;gap:0}.ai-workspace--full-chat .ai-chat-shell{border:1px solid var(--ai-border);border-radius:24px;box-shadow:var(--ai-shadow-md)}.ai-workspace--full-chat .ai-panel__header{padding:0 10px 12px}.sim-container{display:flex;flex-direction:column;gap:16px;width:100%;max-width:900px;margin:0 auto}.sim-window{position:relative;display:flex;flex-direction:column;width:100%;height:100%;border-radius:16px;border:1px solid var(--ai-border-strong);background:var(--ai-surface);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;overflow:hidden}.sim-header{height:38px;background:var(--ai-surface-soft);border-bottom:1px solid var(--ai-border);display:flex;align-items:center;justify-content:space-between;padding:0 16px;-webkit-user-select:none;user-select:none}.sim-header-dots{display:flex;gap:6px}.sim-dot{width:10px;height:10px;border-radius:50%}.sim-dot--red{background:#ef4444}.sim-dot--yellow{background:#eab308}.sim-dot--green{background:#22c55e}.sim-header-title{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--ai-text-muted)}.sim-sparkle-icon{color:var(--ai-primary);animation:sim-sparkle-pulse 2s infinite ease-in-out}@keyframes sim-sparkle-pulse{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.2);opacity:1}}.sim-header-right{width:42px}.sim-body{position:relative;flex:1;display:flex;min-height:0;background:var(--ai-surface)}.sim-toast{position:absolute;top:12px;left:50%;transform:translate(-50%) translateY(-20px);z-index:1010;display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;background:#10b981;color:#fff;font-size:12px;font-weight:700;box-shadow:var(--ai-shadow-md);opacity:0;pointer-events:none;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.sim-toast--show{transform:translate(-50%) translateY(0);opacity:1}.sim-workspace-wrapper{display:flex;width:100%;height:100%}.sim-chat-panel{display:flex;flex-direction:column;height:100%;border-right:1px solid var(--ai-border);background:var(--ai-surface);transition:width .6s cubic-bezier(.2,.8,.2,1);overflow:hidden;position:relative}.sim-panel-header{height:48px;border-bottom:1px solid var(--ai-border);padding:0 12px;display:flex;align-items:center;gap:8px;flex-shrink:0;background:var(--ai-surface-soft)}.sim-avatar{width:28px;height:28px;border-radius:8px;background:var(--ai-primary-soft);color:var(--ai-primary-strong);font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center}.sim-header-details{display:flex;flex-direction:column}.sim-chat-title{font-size:12px;font-weight:700;color:var(--ai-text)}.sim-chat-status{display:flex;align-items:center;gap:4px;font-size:9px;color:var(--ai-text-muted)}.sim-status-dot{width:6px;height:6px;border-radius:50%;background:#22c55e}.sim-chat-messages{flex:1;padding:12px;overflow-y:auto;display:flex;flex-direction:column;gap:12px;min-height:0}.sim-msg{display:flex;gap:8px;max-width:85%;animation:sim-bubble-in .3s cubic-bezier(.34,1.56,.64,1)}@keyframes sim-bubble-in{0%{transform:translateY(8px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.sim-msg--user{align-self:flex-end;flex-direction:row-reverse}.sim-msg-avatar{width:24px;height:24px;border-radius:6px;background:var(--ai-border-strong);color:var(--ai-text);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sim-msg--user .sim-msg-avatar{background:var(--ai-primary-soft);color:var(--ai-primary-strong)}.sim-msg-content{display:flex;flex-direction:column;gap:4px;min-width:0}.sim-msg-bubble{padding:8px 12px;border-radius:12px;font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.sim-msg--user .sim-msg-bubble{background:var(--ai-primary);color:#fff}.sim-msg--assistant .sim-msg-bubble{background:var(--ai-surface-soft);color:var(--ai-text);border:1px solid var(--ai-border)}.sim-file-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;background:var(--ai-surface-soft);border:1px solid var(--ai-border);font-size:10px;font-weight:700;color:var(--ai-text);width:fit-content}.sim-chart-radar-container{margin-top:4px;padding:10px;border-radius:12px;border:1px solid var(--ai-border);background:var(--ai-surface);width:220px}.sim-chart-title{font-size:10px;font-weight:700;color:var(--ai-text-muted);display:block;margin-bottom:6px}.sim-radar-svg{width:100%;height:auto}.sim-chart-bar-container{margin-top:4px;padding:10px;border-radius:12px;border:1px solid var(--ai-border);background:var(--ai-surface);width:220px}.sim-simple-bars{display:flex;flex-direction:column;gap:8px}.sim-bar-item{display:flex;flex-direction:column;gap:2px}.sim-bar-label{font-size:9px;font-weight:700;color:var(--ai-text)}.sim-bar-track{height:6px;border-radius:3px;background:var(--ai-surface-soft);overflow:hidden;border:1px solid var(--ai-border)}.sim-bar-fill{height:100%;border-radius:3px;background:var(--ai-primary);transition:width .8s cubic-bezier(.4,0,.2,1)}.sim-bar-value{font-size:8px;color:var(--ai-text-muted);text-align:right}.sim-typing-dots{display:flex;gap:4px;padding:8px 14px;background:var(--ai-surface-soft);border:1px solid var(--ai-border);border-radius:12px}.sim-typing-dots span{width:5px;height:5px;border-radius:50%;background:var(--ai-text-muted);animation:sim-dot-pulse 1.4s infinite ease-in-out both}.sim-typing-dots span:nth-child(2){animation-delay:.2s}.sim-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes sim-dot-pulse{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1.1);opacity:1}}.sim-file-explorer{position:absolute;bottom:60px;left:12px;right:12px;z-index:1005;border:1px solid var(--ai-border-strong);border-radius:12px;background:var(--ai-surface);box-shadow:var(--ai-shadow-lg);animation:sim-slide-up .25s cubic-bezier(.2,.8,.2,1)}@keyframes sim-slide-up{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.sim-explorer-header{height:32px;padding:0 12px;background:var(--ai-surface-soft);border-bottom:1px solid var(--ai-border);display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:700;color:var(--ai-text)}.sim-explorer-close{cursor:pointer;color:var(--ai-text-muted)}.sim-explorer-list{padding:8px;display:flex;flex-direction:column;gap:4px}.sim-explorer-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:11px;color:var(--ai-text)}.sim-explorer-item--active{background:var(--ai-primary-soft);font-weight:700}.sim-chat-input-container{padding:10px 12px;border-top:1px solid var(--ai-border);background:var(--ai-surface-soft);flex-shrink:0}.sim-input-box{display:flex;align-items:center;gap:8px;border:1px solid var(--ai-border);border-radius:10px;padding:6px 10px;background:var(--ai-surface)}.sim-input-icon-btn{background:none;border:none;color:var(--ai-text-muted);display:flex;align-items:center;justify-content:center;padding:2px}.sim-input-placeholder{flex:1;font-size:12px;color:var(--ai-text);display:flex;align-items:center;gap:6px;overflow:hidden;height:20px;position:relative}.sim-placeholder-dim{color:var(--ai-text-muted)}.sim-attached-badge{display:flex;align-items:center;gap:4px;background:var(--ai-primary-soft);border:1px solid var(--ai-primary);color:var(--ai-primary-strong);font-size:9px;font-weight:800;padding:2px 6px;border-radius:4px;white-space:nowrap}.sim-caret{display:inline-block;width:1.5px;height:14px;background:var(--ai-primary);animation:sim-caret-blink 1s infinite step-end}@keyframes sim-caret-blink{0%,to{background:transparent}50%{background:var(--ai-primary)}}.sim-input-send-btn{background:var(--ai-primary);color:#fff;border:none;width:22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center}.sim-dashboard-panel{flex:1;display:flex;flex-direction:column;height:100%;background:var(--ai-surface-soft);animation:sim-pane-slide .5s cubic-bezier(.2,.8,.2,1);overflow:hidden}@keyframes sim-pane-slide{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}.sim-dashboard-header{height:48px;border-bottom:1px solid var(--ai-border);padding:0 14px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;background:var(--ai-surface)}.sim-dashboard-title{font-size:12px;font-weight:800;color:var(--ai-text)}.sim-dashboard-edit-btn{font-size:10px;font-weight:700;padding:4px 10px;border-radius:6px;border:1px solid var(--ai-border);background:var(--ai-surface);color:var(--ai-text);cursor:pointer;transition:all .2s ease}.sim-dashboard-edit-btn--active{background:var(--ai-primary);color:#fff;border-color:var(--ai-primary)}.sim-dashboard-grid{flex:1;padding:12px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;min-height:0}.sim-db-card{background:var(--ai-surface);border:1px solid var(--ai-border);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;position:relative;transition:height .4s ease,border-color .2s ease;height:110px}.sim-db-card--resized{height:160px}.sim-db-card-drag-handle{font-size:8px;color:var(--ai-primary);font-weight:800;margin-bottom:2px;cursor:move;border-bottom:1px dashed var(--ai-border);padding-bottom:2px}.sim-db-card-title{font-size:11px;font-weight:800;color:var(--ai-text)}.sim-db-card-content{flex:1;display:flex;flex-direction:column;justify-content:center}.sim-mini-bars{display:flex;flex-direction:column;gap:6px}.sim-mini-bar{display:flex;align-items:center;gap:6px}.sim-mini-label{font-size:9px;color:var(--ai-text);width:42px;text-align:right;font-weight:600}.sim-mini-track{flex:1;height:6px;border-radius:3px;background:var(--ai-surface-soft);overflow:hidden;border:1px solid var(--ai-border)}.sim-mini-fill{height:100%;border-radius:3px}.sim-mini-val{font-size:8px;font-weight:700;color:var(--ai-text-muted);width:24px}.sim-salary-segments{display:flex;flex-direction:column;gap:8px}.sim-salary-seg-bar{height:10px;border-radius:5px;overflow:hidden;display:flex;border:1px solid var(--ai-border)}.sim-seg{height:100%}.sim-seg--1{background:#0ea5e9}.sim-seg--2{background:#10b981}.sim-seg--3{background:#f59e0b}.sim-salary-legend{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px}.sim-legend-item{display:flex;align-items:center;gap:4px}.sim-legend-dot{width:6px;height:6px;border-radius:50%}.sim-legend-item span:last-child{font-size:8px;color:var(--ai-text-muted);font-weight:600}.sim-db-card-resize-handle{position:absolute;bottom:4px;right:4px;width:8px;height:8px;border-right:2px solid var(--ai-primary);border-bottom:2px solid var(--ai-primary);cursor:se-resize}.sim-cursor{position:absolute;width:18px;height:18px;z-index:1020;pointer-events:none;color:var(--ai-primary);filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));transition:top .8s cubic-bezier(.25,1,.5,1),left .8s cubic-bezier(.25,1,.5,1),transform .15s ease;transform-origin:top left}.sim-cursor--clicking{transform:scale(.8)}.sim-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:10px}.sim-play-pause-btn{background:var(--ai-surface);border:1px solid var(--ai-border);color:var(--ai-text);width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.sim-play-pause-btn:hover{background:var(--ai-surface-soft);border-color:var(--ai-border-strong)}.sim-tabs{display:flex;gap:6px;background:var(--ai-surface-soft);padding:3px;border-radius:10px;border:1px solid var(--ai-border)}.sim-tab-item{background:none;border:none;color:var(--ai-text-muted);font-size:11px;font-weight:700;padding:6px 12px;border-radius:8px;cursor:pointer;transition:all .2s ease}.sim-tab-item:hover{color:var(--ai-text)}.sim-tab-item--active{background:var(--ai-surface);color:var(--ai-primary-strong)!important;box-shadow:var(--ai-shadow-sm);border:1px solid var(--ai-border)}.sim-tab-pill-brand{background:var(--ai-primary-soft);border:1px solid var(--ai-primary);color:var(--ai-primary-strong);font-size:8px;font-weight:800;padding:2px 6px;border-radius:4px}.sim-pill-count{background:#ffffff0d;border:1px solid var(--ai-border);color:var(--ai-text-muted);font-size:8px;font-weight:700;padding:1px 5px;border-radius:99px;white-space:nowrap}.sim-dashboard-restore-btn{font-size:9px;font-weight:700;padding:3px 8px;border-radius:6px;border:1px solid var(--ai-border);background:var(--ai-surface);color:var(--ai-text-muted);cursor:pointer;margin-right:4px}.sim-dashboard-close-btn{background:none;border:none;color:var(--ai-text-muted);font-size:16px;cursor:pointer;padding:0 4px;line-height:1}.sim-thinking-collapsed{display:inline-flex;align-items:center;gap:6px;background:#ffffff08;border:1px solid var(--ai-border);padding:4px 8px;border-radius:6px;color:var(--ai-text-muted);font-size:9px;font-weight:700;margin-bottom:8px;cursor:pointer;width:fit-content}.sim-view-db-btn{background:var(--ai-primary);color:#fff;border:none;border-radius:8px;padding:6px 14px;cursor:pointer;transition:opacity .2s;display:flex;align-items:center;justify-content:center;width:100%}.sim-view-db-btn:hover{opacity:.9}.sim-msg-bubble--rich{background:var(--ai-surface)!important;border:1px solid var(--ai-border-strong)!important;box-shadow:var(--ai-shadow-md);max-width:100%}.sim-donut-svg{transform:rotate(-90deg);border-radius:50%}.sim-legend-dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:4px}.sim-scaler-wrapper{position:relative;width:100%;max-width:900px;margin:0 auto;border-radius:16px;border:1px solid var(--ai-border-strong);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;background:var(--ai-surface);overflow:hidden;transition:all .3s cubic-bezier(.2,.8,.2,1)}.sim-scaler-wrapper--expanded{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;max-width:none!important;margin:0!important;z-index:9999!important;background:#080a12d9!important;-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important;border:none!important;border-radius:0!important;box-shadow:none!important}.sim-hover-overlay{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1010;background:#080a1200;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .25s ease;border-radius:16px}.sim-scaler-wrapper:not(.sim-scaler-wrapper--expanded):hover .sim-hover-overlay{background:#080a12b3;-webkit-backdrop-filter:blur(2.5px);backdrop-filter:blur(2.5px)}.sim-hover-text{color:#fff;font-size:13px;font-weight:700;background:var(--ai-primary);padding:8px 18px;border-radius:99px;box-shadow:0 10px 20px -3px #14b8a666;opacity:0;transform:translateY(8px);transition:all .25s cubic-bezier(.2,.8,.2,1)}.sim-scaler-wrapper:not(.sim-scaler-wrapper--expanded):hover .sim-hover-text{opacity:1;transform:translateY(0)}.sim-modal-close-btn{position:absolute;top:24px;right:24px;z-index:10010;background:var(--ai-surface-soft);border:1px solid var(--ai-border);color:var(--ai-text);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #0000004d}.sim-modal-close-btn:hover{border-color:var(--ai-border-strong);color:var(--ai-primary);transform:scale(1.05)}.sim-tab-label-short{display:none}.sim-tab-label-full{display:inline}.sim-hover-overlay--mobile{background:#080a1273!important}.sim-hover-text--mobile{opacity:1!important;transform:translateY(0)!important;font-size:11px;padding:6px 14px;display:flex;align-items:center}@media(max-width:767px){.sim-tab-label-full{display:none}.sim-tab-label-short{display:inline}.sim-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.sim-tabs::-webkit-scrollbar{display:none}.sim-tab-item{font-size:10px;padding:5px 8px;white-space:nowrap}.sim-controls{gap:8px}.sim-scaler-wrapper--expanded .sim-modal-close-btn{top:12px;right:12px;width:36px;height:36px}}.auth-page{--auth-cyan: #06b6d4;--auth-sky: #0ea5e9;--auth-violet: #8b5cf6;--auth-page-bg: #eef6fc;--auth-text: #0f172a;--auth-text-muted: #5b7185;--auth-text-faint: #8aa0b2;--auth-card-bg: rgba(255, 255, 255, .86);--auth-card-solid: #ffffff;--auth-card-border: rgba(15, 23, 42, .08);--auth-input-bg: rgba(255, 255, 255, .92);--auth-input-border: rgba(15, 23, 42, .12);--auth-control-bg: rgba(255, 255, 255, .72);--auth-control-border: rgba(15, 23, 42, .1);--auth-link: #0284c7;--auth-glow-1: rgba(56, 189, 248, .28);--auth-glow-2: rgba(139, 92, 246, .22);position:relative;min-height:100vh;overflow-x:hidden;background:var(--auth-page-bg);color:var(--auth-text);font-family:Manrope,Segoe UI,sans-serif;transition:background-color .3s ease,color .3s ease}:root[data-theme=dark] .auth-page{--auth-page-bg: #030712;--auth-text: #e5f0f8;--auth-text-muted: #94a3b8;--auth-text-faint: #64748b;--auth-card-bg: rgba(13, 18, 30, .72);--auth-card-solid: #0e1322;--auth-card-border: rgba(255, 255, 255, .08);--auth-input-bg: rgba(3, 7, 18, .55);--auth-input-border: rgba(255, 255, 255, .1);--auth-control-bg: rgba(15, 23, 42, .6);--auth-control-border: rgba(148, 163, 184, .18);--auth-link: #38bdf8;--auth-glow-1: rgba(6, 182, 212, .22);--auth-glow-2: rgba(139, 92, 246, .2)}.auth-glows{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.auth-glow{position:absolute;border-radius:50%;filter:blur(120px);animation:auth-pulse 7s cubic-bezier(.4,0,.6,1) infinite}.auth-glow--cyan{width:42vw;height:42vw;top:-8vw;left:-8vw;background:var(--auth-glow-1)}.auth-glow--violet{width:50vw;height:50vw;bottom:-10vw;right:-8vw;background:var(--auth-glow-2);animation-delay:2s}@keyframes auth-pulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.9;transform:scale(1.06)}}.auth-header{position:absolute;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px}.auth-brand{display:inline-flex;align-items:center;gap:12px}.auth-brand__icon{width:42px;height:42px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:14px;color:#fff;background:linear-gradient(135deg,var(--auth-cyan),var(--auth-violet));box-shadow:0 10px 22px #06b6d44d;transition:transform .3s ease}.auth-brand:hover .auth-brand__icon{transform:scale(1.08)}.auth-brand__name{display:block;font-size:18px;font-weight:800;letter-spacing:.04em;line-height:1.1;background:linear-gradient(90deg,var(--auth-text),var(--auth-cyan));-webkit-background-clip:text;background-clip:text;color:transparent}.auth-brand__sub{display:block;margin-top:2px;font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--auth-text-faint)}.auth-header__controls{display:inline-flex;align-items:center;gap:12px}.auth-main{position:relative;z-index:10;min-height:100vh;display:flex;flex-direction:column;padding:96px 20px 32px}.auth-sidebar{display:none}.auth-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;opacity:.85}.auth-sidebar__content{position:relative;z-index:10;width:100%;max-width:32rem;display:flex;flex-direction:column;gap:30px;pointer-events:none}.auth-badge{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:#06b6d41a;border:1px solid rgba(6,182,212,.3);color:var(--auth-cyan);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.auth-badge__dot{width:8px;height:8px;border-radius:50%;background:var(--auth-cyan);animation:auth-blink 1.6s ease-in-out infinite}@keyframes auth-blink{0%,to{opacity:1}50%{opacity:.3}}.auth-hero-title{font-size:clamp(2rem,3vw,3rem);font-weight:800;line-height:1.12;letter-spacing:-.02em;color:var(--auth-text)}.auth-hero-title .auth-gradient-text{background:linear-gradient(90deg,var(--auth-cyan),var(--auth-violet));-webkit-background-clip:text;background-clip:text;color:transparent}.auth-hero-desc{font-size:1.05rem;line-height:1.65;color:var(--auth-text-muted)}.auth-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;pointer-events:auto}.auth-glass{background:var(--auth-card-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--auth-card-border)}.auth-stat{padding:16px;border-radius:18px;transition:border-color .3s ease,transform .3s ease}.auth-stat:hover{transform:translateY(-2px)}.auth-stat--cyan:hover{border-color:#06b6d480}.auth-stat--violet:hover{border-color:#8b5cf680}.auth-stat__head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:8px}.auth-stat__label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--auth-text-faint)}.auth-stat__chip{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700}.auth-stat__chip--up{color:#10b981;background:#10b9811f}.auth-stat__chip--trend{color:var(--auth-cyan);background:#06b6d41f}.auth-stat__value{font-size:1.5rem;font-weight:900;color:var(--auth-text)}.auth-stat__value--sm{font-size:.95rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-stat__note{margin-top:2px;font-size:10px;color:var(--auth-text-faint)}.auth-ticker{display:flex;align-items:center;gap:14px;padding:16px;border-radius:16px;pointer-events:auto}.auth-ticker__icon{width:40px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:12px;color:var(--auth-violet);background:#8b5cf62e}.auth-ticker__icon svg{animation:auth-spin 8s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-ticker__body{flex:1;min-width:0;text-align:left}.auth-ticker__kicker{display:block;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--auth-cyan)}.auth-ticker__text{font-size:12px;font-weight:500;color:var(--auth-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:auth-fade .5s ease}@keyframes auth-fade{0%{opacity:0}to{opacity:1}}.auth-form-col{flex:1;display:flex;justify-content:center;align-items:center}.auth-card-wrap{width:100%;max-width:26rem;position:relative}.auth-card{position:relative;padding:32px;border-radius:24px;background:var(--auth-card-bg);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid var(--auth-card-border);box-shadow:0 30px 60px #020c1b47;animation:auth-glow 3.5s ease-in-out infinite alternate}@keyframes auth-glow{0%{box-shadow:0 24px 50px #020c1b38,0 0 0 1px #06b6d414}to{box-shadow:0 24px 50px #020c1b38,0 0 26px #8b5cf638}}.auth-card__corner{position:absolute;width:22px;height:22px;opacity:.6;transition:opacity .3s ease}.auth-card:hover .auth-card__corner{opacity:1}.auth-card__corner--tl{top:-1px;left:-1px;border-top:2px solid var(--auth-cyan);border-left:2px solid var(--auth-cyan);border-top-left-radius:24px}.auth-card__corner--br{bottom:-1px;right:-1px;border-bottom:2px solid var(--auth-violet);border-right:2px solid var(--auth-violet);border-bottom-right-radius:24px}.auth-card__head{text-align:center;margin-bottom:28px}.auth-avatar{position:relative;width:64px;height:64px;margin:0 auto 16px;border-radius:50%;padding:2px;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 24px #06b6d440}.auth-avatar--login{background:linear-gradient(135deg,var(--auth-cyan),var(--auth-sky))}.auth-avatar--register{background:linear-gradient(135deg,var(--auth-violet),var(--auth-sky))}.auth-avatar--forgot{background:linear-gradient(135deg,var(--auth-cyan),var(--auth-violet))}.auth-avatar__inner{width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--auth-card-solid);color:var(--auth-cyan)}.auth-avatar--register .auth-avatar__inner{color:var(--auth-violet)}.auth-avatar__status{position:absolute;bottom:2px;right:2px;width:13px;height:13px;border-radius:50%;background:#10b981;border:2px solid var(--auth-card-solid)}.auth-avatar__status:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;background:#10b981;opacity:.6;animation:auth-ping 1.6s cubic-bezier(0,0,.2,1) infinite}@keyframes auth-ping{0%{transform:scale(1);opacity:.6}75%,to{transform:scale(2);opacity:0}}.auth-title{font-size:1.5rem;font-weight:800;letter-spacing:-.01em;color:var(--auth-text)}.auth-subtitle{margin-top:8px;font-size:12px;line-height:1.6;color:var(--auth-text-muted)}.auth-alert{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:20px;border-radius:14px;font-size:12px;font-weight:500;line-height:1.45}.auth-alert svg{flex-shrink:0}.auth-alert--error{color:#fb7185;background:#f43f5e1a;border:1px solid rgba(244,63,94,.3)}.auth-alert--success{color:#34d399;background:#10b9811a;border:1px solid rgba(16,185,129,.3)}.auth-form{display:flex;flex-direction:column;gap:22px}.auth-form--tight{gap:18px}.auth-grid-2{display:grid;grid-template-columns:1fr;gap:18px}.auth-field{position:relative}.auth-field__icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);display:inline-flex;color:var(--auth-text-faint);pointer-events:none}.auth-input{width:100%;height:50px;padding:0 16px 0 42px;border-radius:12px;border:1px solid var(--auth-input-border);background:var(--auth-input-bg);color:var(--auth-text);font-size:14px;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.auth-input--has-toggle{padding-right:42px}.auth-input:focus{border-color:var(--auth-cyan);box-shadow:0 0 0 3px #06b6d42e}.auth-card--register .auth-input:focus{border-color:var(--auth-violet);box-shadow:0 0 0 3px #8b5cf62e}.auth-field__label{position:absolute;left:38px;top:50%;transform:translateY(-50%);padding:0 4px;font-size:14px;color:var(--auth-text-faint);pointer-events:none;line-height:1;transition:all .2s cubic-bezier(.4,0,.2,1)}.auth-input:focus~.auth-field__label,.auth-input:not(:placeholder-shown)~.auth-field__label{top:0;transform:translateY(-50%) scale(.85);left:34px;color:var(--auth-cyan);background:var(--auth-card-solid)}.auth-card--register .auth-input:focus~.auth-field__label,.auth-card--register .auth-input:not(:placeholder-shown)~.auth-field__label{color:var(--auth-violet)}.auth-field__toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;padding:4px;border:none;background:transparent;color:var(--auth-text-faint);transition:color .2s ease}.auth-field__toggle:hover{color:var(--auth-cyan)}.auth-input:-webkit-autofill,.auth-input:-webkit-autofill:hover,.auth-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--auth-text);-webkit-box-shadow:0 0 0 1000px var(--auth-card-solid) inset;caret-color:var(--auth-text);transition:background-color 9999s ease-in-out 0s}.auth-options{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.auth-checkbox{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--auth-text-muted)}.auth-checkbox--terms{align-items:flex-start;font-size:12px;line-height:1.5}.auth-checkbox input[type=checkbox]{width:16px;height:16px;flex-shrink:0;accent-color:var(--auth-cyan);cursor:pointer}.auth-checkbox--terms input[type=checkbox]{margin-top:2px;accent-color:var(--auth-violet)}.auth-link{color:var(--auth-link);font-weight:700;transition:color .2s ease}.auth-link:hover{text-decoration:underline}.auth-link--violet{color:var(--auth-violet)}.auth-submit{position:relative;width:100%;height:50px;border:none;border-radius:12px;color:#fff;font-size:14px;font-weight:700;overflow:hidden;cursor:pointer;background:linear-gradient(90deg,var(--auth-cyan),var(--auth-sky));box-shadow:0 14px 28px #06b6d440;transition:filter .2s ease,transform .1s ease,opacity .2s ease}.auth-submit--violet{background:linear-gradient(90deg,var(--auth-violet),var(--auth-sky));box-shadow:0 14px 28px #8b5cf640}.auth-submit:hover{filter:brightness(1.06)}.auth-submit:active{transform:scale(.985)}.auth-submit:disabled{opacity:.65;cursor:not-allowed}.auth-submit__sweep{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff38;transform:translate(-120%) skew(-12deg);transition:transform .9s ease}.auth-submit:hover .auth-submit__sweep{transform:translate(120%) skew(-12deg)}.auth-submit__label{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:8px}.auth-divider{position:relative;margin:24px 0;text-align:center}.auth-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--auth-input-border)}.auth-divider span{position:relative;padding:0 12px;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--auth-text-faint);background:var(--auth-card-solid)}.auth-social{display:flex;justify-content:center}.auth-social iframe{margin:0 auto!important}.auth-foot{margin-top:28px;text-align:center;font-size:12px;color:var(--auth-text-muted)}.auth-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:22px;font-size:12px;font-weight:700;color:var(--auth-link);transition:color .2s ease}.auth-back:hover{text-decoration:underline}.auth-otp-group{display:flex;flex-direction:column;gap:8px}.auth-otp-label{font-size:12px;font-weight:700;color:var(--auth-text-muted)}.auth-otp-row{display:flex;gap:10px}.auth-otp-input{flex:1;height:50px;padding:0 16px;border-radius:12px;border:1px solid var(--auth-input-border);background:var(--auth-input-bg);color:var(--auth-text);font-size:18px;font-weight:700;letter-spacing:6px;text-align:center;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.auth-otp-input:focus{border-color:var(--auth-cyan);box-shadow:0 0 0 3px #06b6d42e}.auth-otp-resend{flex-shrink:0;padding:0 16px;border-radius:12px;border:1px solid var(--auth-control-border);background:var(--auth-control-bg);color:var(--auth-text-muted);font-size:12px;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease}.auth-otp-resend:hover:not(:disabled){color:var(--auth-text)}.auth-otp-resend:disabled{opacity:.6;cursor:not-allowed}@media(min-width:1024px){.auth-main{flex-direction:row;padding:0}.auth-sidebar{display:flex;flex-direction:column;justify-content:center;align-items:center;width:50%;padding:64px;position:relative;overflow:hidden;border-right:1px solid var(--auth-card-border)}.auth-form-col{width:50%;padding:48px}}@media(max-width:420px){.auth-card{padding:24px}.auth-header{padding:14px 16px}.auth-brand__sub{display:none}}.db-filter-dropdown{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;border:1px solid #E9ECEF;border-radius:8px;font-size:12px;font-weight:500;color:#495057;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000a}.db-filter-dropdown:hover{border-color:#3b5bdb;background:#f8f9fa}.db-filter-dropdown__label{color:#adb5bd;font-weight:400}.db-filter-dropdown__icon{color:#adb5bd}.db-filter-dropdown-wrapper{position:relative;display:inline-block}.db-filter-dropdown-menu{position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid #E9ECEF;border-radius:8px;box-shadow:0 8px 24px #0000001f;padding:4px;z-index:100;width:100%;max-height:250px;overflow-y:auto;-ms-overflow-style:none;scrollbar-width:none}.db-filter-dropdown-menu::-webkit-scrollbar{display:none}.db-filter-dropdown-item{padding:8px 12px;font-size:12px;cursor:pointer;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#495057;transition:all .2s}.db-filter-dropdown-item:hover{background:#f8f9fa;color:#3b5bdb}.db-filter-dropdown-item--active{background:#edf2ff;color:#3b5bdb;font-weight:600}.db-kpi{background:#fff;min-height:108px;padding:16px;border-radius:12px;border:1px solid #E9ECEF;box-shadow:0 1px 3px #0000000f;display:flex;flex-direction:column;justify-content:space-between;transition:transform .4s cubic-bezier(.25,1,.5,1),box-shadow .4s cubic-bezier(.25,1,.5,1),border-color .4s cubic-bezier(.25,1,.5,1),background .4s cubic-bezier(.25,1,.5,1);flex:1;min-width:0;overflow:hidden;position:relative}.db-kpi__header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;min-width:0}.db-kpi__title{font-size:12px;font-weight:500;color:#868e96;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;min-width:0}.db-kpi__icon-wrap{padding:6px;background:#f8f9fa;border-radius:8px;display:flex;flex-shrink:0}.db-kpi__value{font-size:24px;font-weight:700;color:#212529;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;line-height:1.3}.db-kpi__value-link{color:inherit;max-width:100%;min-width:0}.db-kpi__value--text{display:-webkit-box;white-space:normal;overflow:hidden;overflow-wrap:break-word;word-break:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:24px;line-height:1.3}.db-salary{cursor:default}.db-salary__header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}.db-salary__role{font-size:12px;font-weight:600;color:#495057;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-salary__range{font-size:11px;font-weight:500;color:#868e96;flex-shrink:0;opacity:1}.db-salary__range strong{color:#2b8a3e}.db-salary__track{height:10px;width:100%;background:#f1f3f5;border-radius:10px;position:relative}.db-salary__bar{position:absolute;height:100%;background:linear-gradient(90deg,#a9e34b,#40c057,#a9e34b);border-radius:10px;box-shadow:0 1px 3px #0000001a}.db-salary__median{position:absolute;height:16px;width:6px;background:#2b8a3e;border-radius:4px;top:50%;transform:translateY(-50%);border:2px solid #fff;box-shadow:0 1px 3px #00000026}.db-summary__search{position:relative}.db-summary__search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#adb5bd}.db-summary__search-input{padding:6px 12px 6px 32px;font-size:13px;border:1px solid #E9ECEF;border-radius:8px;outline:none;transition:border-color .2s;width:180px}.db-summary__search-input:focus{border-color:#3b5bdb;box-shadow:0 0 0 3px #3b5bdb1a}.db-summary__table-wrap{flex:1;overflow-y:auto;max-height:400px}.dashboard-modal__body--summary .db-summary__table-wrap{max-height:none}.db-summary__table{width:100%;text-align:left;font-size:13px;border-collapse:collapse}.db-summary__table thead{background:#f8f9fa;position:sticky;top:0;z-index:2}.db-summary__table th{padding:8px 12px;font-weight:600;color:#495057;border-bottom:1px solid #E9ECEF;font-size:12px}.db-summary__table td{padding:10px 12px;border-bottom:1px solid #F1F3F5;color:#495057}.db-summary__table tbody tr:hover{background:#f8f9fa}.db-summary__name{font-weight:600;color:#212529}.db-summary__growth--strong{color:#2b8a3e!important}.db-summary__growth--up{color:#3b5bdb!important}.db-summary__region{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500;background:#f59e0b1a;color:#d97706;border:1px solid rgba(245,158,11,.2)}:root[data-theme=dark] .db-summary__region{background:#f59e0b26;color:#fcd34d;border-color:#f59e0b4d}.db-summary__region svg{color:inherit;opacity:.8}.db-summary__skill-tag{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px;background:#6366f11a;color:#4f46e5;border:1px solid rgba(99,102,241,.2)}:root[data-theme=dark] .db-summary__skill-tag{background:#6366f133;color:#a5b4fc;border-color:#6366f166}.db-summary__posting-val{color:#3b82f6}:root[data-theme=dark] .db-summary__posting-val{color:#60a5fa}.db-summary__share-val{color:#10b981}:root[data-theme=dark] .db-summary__share-val{color:#34d399}.db-summary__status{--db-summary-status-bg: rgba(241, 245, 249, .92);--db-summary-status-border: rgba(203, 213, 225, .72);--db-summary-status-color: var(--color-text-muted, #64748b);display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:104px;min-height:28px;padding:5px 12px;border:1px solid var(--db-summary-status-border);border-radius:999px;background:var(--db-summary-status-bg);color:var(--db-summary-status-color);box-shadow:0 6px 16px #0f172a0d;font-size:11px;font-weight:800;line-height:1;white-space:nowrap}.db-summary__status svg{flex:0 0 auto;stroke-width:2.2}.db-summary__status--strong{--db-summary-status-bg: rgba(209, 250, 229, .86);--db-summary-status-border: rgba(16, 185, 129, .28);--db-summary-status-color: var(--color-success, #0f9d7a)}.db-summary__status--up{--db-summary-status-bg: rgba(224, 242, 254, .92);--db-summary-status-border: rgba(14, 165, 233, .24);--db-summary-status-color: var(--color-primary-700, #0284c7)}.db-summary__status--stable{--db-summary-status-bg: rgba(241, 245, 249, .92);--db-summary-status-border: rgba(203, 213, 225, .72);--db-summary-status-color: var(--color-text-muted, #64748b)}:root[data-theme=dark] .db-summary__status{box-shadow:none}:root[data-theme=dark] .db-summary__status--strong{--db-summary-status-bg: rgba(52, 211, 153, .14);--db-summary-status-border: rgba(52, 211, 153, .32);--db-summary-status-color: var(--color-success, #34d399)}:root[data-theme=dark] .db-summary__status--up{--db-summary-status-bg: rgba(56, 189, 248, .14);--db-summary-status-border: rgba(125, 211, 252, .26);--db-summary-status-color: var(--color-primary-700, #7dd3fc)}:root[data-theme=dark] .db-summary__status--stable{--db-summary-status-bg: rgba(148, 163, 184, .12);--db-summary-status-border: rgba(148, 163, 184, .22);--db-summary-status-color: var(--color-text-muted, #7f99ad)}.db-summary__table th.text-center,.db-summary__table td.text-center{text-align:center;vertical-align:middle}.db-summary__table td.text-center{white-space:nowrap}.db-filter-dropdown{min-height:40px;padding:8px 14px;border-radius:14px;background:#fff;border-color:#7da6c433;color:var(--color-text-secondary);box-shadow:var(--shadow-sm)}.db-filter-dropdown:hover,.db-filter-dropdown:focus-visible{border-color:#38bdf847;background:#f9fcff}.db-filter-dropdown__label,.db-filter-dropdown__icon{color:var(--color-text-muted)}.db-filter-dropdown-menu{margin-top:8px;border-radius:16px;border-color:#7da6c42e;box-shadow:var(--shadow-md)}.db-filter-dropdown-item{border-radius:10px}.db-filter-dropdown-item:hover,.db-filter-dropdown-item--active{background:#f0f9fff5;color:var(--color-primary-700)}.db-filter-dropdown-menu--searchable{padding:0;overflow:hidden}.db-filter-search{display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:1px solid rgba(125,166,196,.14);position:relative}.db-filter-search__icon{color:#adb5bd;flex-shrink:0}.db-filter-search__input{flex:1;border:none;outline:none;font-size:12px;color:#495057;background:transparent;padding:2px 0;min-width:0}.db-filter-search__input::placeholder{color:#ced4da}.db-filter-search__clear{display:flex;align-items:center;justify-content:center;background:none;border:none;padding:2px;cursor:pointer;color:#adb5bd;border-radius:50%;transition:all .15s}.db-filter-search__clear:hover{color:#495057;background:#f1f3f5}.db-filter-dropdown-menu__list{overflow-y:auto;padding:4px;overscroll-behavior:contain;-ms-overflow-style:none;scrollbar-width:none}.db-filter-dropdown-menu__list::-webkit-scrollbar{display:none}.db-filter-dropdown-item--empty{text-align:center;color:#adb5bd;cursor:default;font-style:italic}.db-kpi{border-radius:22px;border-color:#7da6c42e;background:#fff;box-shadow:0 8px 24px #0f172a14}.db-kpi:hover{--role-analysis-link-color: #fff;--role-analysis-link-hover-color: #fff;--role-analysis-link-hover-bg: transparent;--role-analysis-link-hover-shadow: none;--role-analysis-link-padding: 0;--role-analysis-link-margin: 0;--role-analysis-link-radius: 4px;transform:translateY(-3px) scale(1.04);box-shadow:0 16px 30px #0ea5e938;border-color:#0ea5e9;background:#0ea5e9;z-index:2}.db-kpi:hover .db-kpi__title,.db-kpi:hover .db-kpi__value{color:#fff!important}.db-kpi:hover .db-kpi__icon-wrap{background:#ffffff2e;color:#fff}.db-kpi:hover .db-kpi__icon-wrap svg{color:#fff!important;stroke:#fff}.db-kpi__value--text .db-kpi__value-link:after{content:" >";font-weight:800;opacity:0;transition:opacity .16s ease}.db-kpi:hover .db-kpi__value-link:after{opacity:.86}.db-kpi:hover .db-kpi__value-link:hover:after{opacity:1}.db-kpi__value--text .db-kpi__value-link,.db-kpi__value--text .role-analysis-link{display:-webkit-box;max-width:100%;min-width:0;white-space:normal;overflow:hidden;overflow-wrap:anywhere;word-break:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:inherit}.db-kpi__title{color:var(--color-text-muted)}.db-kpi__icon-wrap{background:#f6fbff;border-radius:12px}.db-kpi__value,.db-summary__name{color:var(--color-text-primary)}.db-salary__role,.db-summary__table td,.db-summary__region{color:var(--color-text-secondary)}.db-salary__range{color:var(--color-text-muted)}.db-salary__range strong,.db-summary__growth--strong{color:var(--color-success)!important}.db-salary__track{background:#e2f0f7e6}.db-salary__bar{background:linear-gradient(90deg,#67e8f9,#14b8a6,#38bdf8)}.db-salary__median{background:#0f766e}.db-summary__table thead{background:#f8fbfd}.db-summary__table th,.db-summary__search-input{border-color:#7da6c429}.db-summary__search-input:focus{border-color:#38bdf847;box-shadow:0 0 0 4px #38bdf81f}.db-summary__table tbody tr:hover{background:#fafcff}.db-filter-dropdown,.db-filter-dropdown-menu,.db-filter-dropdown-item,.db-filter-search,.db-kpi,.db-summary,.db-summary__table thead,.db-summary__search-input{background:var(--color-bg-card);border-color:var(--color-border-subtle);color:var(--color-text-primary)}.db-filter-dropdown:hover,.db-filter-dropdown:focus-visible,.db-filter-dropdown-item:hover,.db-filter-dropdown-item--active,.db-filter-search__clear:hover,.db-summary__table tbody tr:hover{background:var(--color-bg-hover);color:var(--color-text-brand)}.db-filter-dropdown__label,.db-filter-dropdown__icon,.db-filter-search__icon,.db-filter-search__clear,.db-kpi__title,.db-summary__subtitle,.db-summary__skills{color:var(--color-text-muted)}.db-filter-search__input,.db-summary__table td,.db-salary__role,.db-salary__range{color:var(--color-text-secondary)}.db-kpi__icon-wrap,.db-salary__track{background:var(--color-bg-subtle)}.db-filter-dropdown-item--active{background:var(--color-bg-active)}.db-horizontal-bar-chart{min-width:0;min-height:220px}@media(max-width:720px){.db-filter-dropdown-wrapper,.db-filter-dropdown,.db-summary__search,.db-summary__search-input{width:100%}.db-filter-dropdown-menu{width:min(100%,calc(100vw - 32px));max-width:calc(100vw - 32px)}.db-summary{padding:16px;border-radius:18px;width:100%;max-width:100%;overflow:hidden}.db-summary__header{flex-direction:column;align-items:stretch;gap:12px}.db-summary__table-wrap{overflow-x:auto;max-width:100%}.db-summary__table{min-width:560px}.db-kpi:hover{flex:1}}@media(max-width:520px){.db-kpi{padding:14px;border-radius:18px}.db-kpi__value--text{font-size:18px;min-height:auto}.db-kpi:hover{transform:none;flex:1 1 100%}}.role-analysis-link{color:var(--role-analysis-link-color, inherit);text-decoration:none;cursor:pointer;border-radius:var(--role-analysis-link-radius, 4px);padding:var(--role-analysis-link-padding, 0);margin:var(--role-analysis-link-margin, 0);transition:color .16s ease,background-color .16s ease,box-shadow .16s ease}.role-analysis-link:hover{color:var(--role-analysis-link-hover-color, var(--color-primary-700, #2563eb));background:var(--role-analysis-link-hover-bg, transparent);box-shadow:var(--role-analysis-link-hover-shadow, none);text-decoration:none}.role-analysis-link:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px;border-radius:4px}.dashboard-card{background:var(--color-bg-card);border:1px solid var(--color-border-subtle);border-radius:12px;box-shadow:var(--shadow-md, 0 8px 24px rgba(15, 23, 42, .06));padding:20px;min-width:0;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.dashboard-card--hoverable:hover{border-color:#38bdf852;box-shadow:0 14px 34px #0f172a1a;transform:translateY(-2px)}.dashboard-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.dashboard-card__heading{min-width:0}.dashboard-card__title{font-size:16px;font-weight:700;color:var(--color-text-primary, #212529);line-height:1.35}.dashboard-card__description{font-size:12px;color:var(--color-text-secondary, #868e96);margin-top:2px;line-height:1.5}.dashboard-card__actions{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;flex-shrink:0}.dashboard-card__icon-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border-subtle);border-radius:8px;background:var(--color-bg-card);color:var(--color-text-secondary, #868e96);box-shadow:var(--shadow-sm, 0 1px 2px rgba(15, 23, 42, .04));cursor:pointer;transition:border-color .2s ease,background-color .2s ease,color .2s ease,transform .2s ease}.dashboard-card__icon-btn:hover{border-color:#38bdf852;background:var(--color-bg-hover);color:var(--color-primary-700, #0369a1)}.dashboard-card__icon-btn:focus-visible,.dashboard-modal__close:focus-visible{outline:3px solid rgba(14,165,233,.2);outline-offset:2px}.dashboard-card__content,.dashboard-card__footer{min-width:0}.dashboard-card__empty-text{padding:20px;border-radius:8px;background:var(--color-bg-subtle);color:var(--color-text-secondary, #868e96);font-size:13px;text-align:center}.dashboard-card__skeleton{display:flex;flex-direction:column;gap:12px;padding:4px 0}.dashboard-card__skeleton-line{height:14px;border-radius:999px;background:linear-gradient(90deg,var(--color-bg-subtle) 0%,var(--color-bg-hover) 50%,var(--color-bg-subtle) 100%);background-size:200% 100%;animation:dashboard-card-skeleton 1.2s ease-in-out infinite}.dashboard-modal__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a3d;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dashboard-modal{width:min(94vw,1120px);height:min(86vh,820px);display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--color-bg-card);border:1px solid var(--color-border-subtle);border-radius:12px;box-shadow:0 24px 80px #0f172a38;overflow:hidden;animation:dashboard-modal-in .18s ease-out}.dashboard-modal--wide{width:min(96vw,1280px)}.dashboard-modal__header{min-height:64px;padding:14px 20px;border-bottom:1px solid var(--color-border-subtle);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-shrink:0}.dashboard-modal__heading{min-width:0}.dashboard-modal__title{font-size:18px;font-weight:700;color:var(--color-text-primary, #212529);line-height:1.35}.dashboard-modal__description{margin-top:2px;font-size:12px;color:var(--color-text-secondary, #868e96);line-height:1.45}.dashboard-modal__header-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:12px;flex-shrink:0}.dashboard-modal__actions{display:inline-flex;align-items:center;gap:8px}.dashboard-modal__close{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border-subtle);border-radius:8px;background:var(--color-bg-card);color:var(--color-text-secondary, #868e96);cursor:pointer;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.dashboard-modal__close:hover{color:#e03131;border-color:#e031313d;background:#f044611a}.dashboard-modal__body{flex:1;min-height:0;padding:20px;display:flex;flex-direction:column;gap:20px;overflow:auto}.dashboard-modal__body--map,.dashboard-modal__body--network,.dashboard-modal__body--summary{overflow:hidden}.dashboard-modal__search{position:relative;flex-shrink:0}.dashboard-modal__search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.dashboard-modal__search-input{width:100%;padding:8px 16px 8px 40px;background:var(--color-bg-input);border:1px solid var(--color-border-strong);border-radius:8px;font-size:13px;font-weight:700;color:var(--color-primary-700);outline:none;transition:border-color .2s ease,box-shadow .2s ease}.dashboard-modal__search-input:focus{border-color:#3b5bdb;box-shadow:0 0 0 3px #3b5bdb26}.dashboard-card__segmented{display:inline-flex;align-items:center;gap:4px;padding:3px;border:1px solid var(--color-border-subtle);border-radius:8px;background:var(--color-bg-subtle)}.dashboard-card__segmented button{border:0;border-radius:6px;padding:6px 12px;background:transparent;color:var(--color-text-secondary);font-size:12px;font-weight:600;cursor:pointer}.dashboard-card__segmented button:hover{color:var(--color-text-primary)}.dashboard-card__segmented button[aria-pressed=true]{background:var(--color-bg-card);color:var(--color-text-primary);box-shadow:0 1px 3px #0f172a14}@keyframes dashboard-modal-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes dashboard-card-skeleton{0%{background-position:100% 0}to{background-position:-100% 0}}@media(max-width:720px){.dashboard-card{padding:16px}.dashboard-card__header,.dashboard-modal__header{flex-direction:column;align-items:stretch}.dashboard-card__actions,.dashboard-modal__header-actions{justify-content:flex-start}.dashboard-modal__overlay{padding:12px}.dashboard-modal{width:100%;height:90vh}}.tip-banner{display:inline-flex;align-items:center;border-radius:999px;cursor:default;-webkit-user-select:none;user-select:none;background:#fffbeb;border:1px solid #fde68a;box-shadow:0 1px 3px #0000000f;transition:box-shadow .3s ease;overflow:hidden}.tip-banner:hover{box-shadow:0 2px 8px #f59e0b2e}.tip-banner__icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;color:#f59e0b;transition:transform .3s ease}.tip-banner--open .tip-banner__icon{transform:rotate(-15deg) scale(1.1)}.tip-banner__text{display:inline-block;max-width:0;overflow:hidden;white-space:nowrap;font-size:13px;font-weight:500;color:#b45309;padding:0;transition:max-width .4s cubic-bezier(.4,0,.2,1),padding .3s ease,opacity .3s ease;opacity:0}.tip-banner--open .tip-banner__text{padding:0 2px 0 12px;opacity:1}:root[data-theme=dark] .tip-banner{background:#78531433;border-color:#fbbf244d}:root[data-theme=dark] .tip-banner:hover{box-shadow:0 2px 10px #fbbf2426}:root[data-theme=dark] .tip-banner__icon{color:#fbbf24}:root[data-theme=dark] .tip-banner__text{color:#fcd34d}.tlc-chart{width:100%;min-width:0;min-height:0}.tlc-tooltip__title{font-weight:800;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(148,163,184,.22);color:var(--color-text-primary, #212529)}.tlc-tooltip__row{display:flex;align-items:center;gap:7px;min-width:170px;margin-top:4px;color:var(--color-text-secondary, #495057);line-height:1.35}.tlc-tooltip__label{min-width:0;flex:1;white-space:normal;overflow-wrap:anywhere}.tlc-tooltip__row strong{color:var(--color-text-primary, #1e293b);font-weight:800;white-space:nowrap}.tlc-tooltip__dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex:0 0 auto}.tlc-tooltip__delta{margin-top:8px;font-size:10px;font-weight:800;color:#2b8a3e;background:#ebfbee;padding:2px 8px;border-radius:4px;display:inline-block}.db-page-header{display:flex;justify-content:space-between;align-items:flex-end;padding:24px;border-radius:12px;background:var(--color-bg-card);border:1px solid var(--color-border-subtle);box-shadow:0 8px 24px #0f172a0f;margin-bottom:18px}.db-page-header__left h1{font-size:24px;font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em}.db-page-header__left p{font-size:13px;color:var(--color-text-muted);margin-top:4px}.db-page-header__actions{display:flex;align-items:center;gap:8px}.db-page-header__divider{width:1px;height:24px;background:var(--color-border-subtle);margin:0 4px}.db-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-bg-card);border:1px solid var(--color-border-subtle);border-radius:8px;color:var(--color-text-muted);cursor:pointer;transition:all .2s ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease;position:relative;box-shadow:0 1px 2px #0000000a}.db-icon-btn:hover{border-color:var(--color-primary-600);color:var(--color-primary-600);background:var(--color-surface-soft)}.db-action-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--color-bg-card);border:1px solid var(--color-border-subtle);border-radius:8px;font-size:13px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease;box-shadow:0 1px 2px #0000000a}.db-action-btn:hover{border-color:var(--color-primary-600);background:var(--color-surface-soft)}.db-action-btn--primary{background:var(--color-primary-600);color:#fff;border-color:var(--color-primary-600);box-shadow:0 2px 8px #3b5bdb40}.db-action-btn--primary:hover{background:var(--color-primary-700)}.db-sticky-bar{position:sticky;top:0;z-index:20;background:var(--surface-glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--color-border-subtle);border-radius:12px;box-shadow:0 4px 12px #0000000d;padding:16px 20px 4px;margin-bottom:24px}.db-sticky-bar__filters{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px}.db-sticky-bar__filter-group{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.db-sticky-bar__advanced{font-size:13px;font-weight:500;color:var(--color-primary-600);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--color-primary-200)}.db-sticky-bar__advanced:hover{color:var(--color-primary-700)}.db-compare-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-primary-50);border:1px solid var(--color-primary-200);border-radius:8px;font-size:12px;font-weight:700;color:var(--color-primary-600);cursor:pointer;transition:all .2s ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease;box-shadow:0 1px 2px #0000000a}.db-compare-btn:hover{background:var(--color-primary-100)}.db-compare-btn--active{background:#0ea5e9;color:#fff!important;border-color:#0ea5e9}.db-compare-btn--active:hover{background:#0284c7}.db-anchor-nav{display:flex;gap:4px}.db-anchor-nav__item{padding:10px 16px;font-size:13px;font-weight:500;color:var(--color-text-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease}.db-anchor-nav__item:hover{color:var(--color-text-primary)}.db-anchor-nav__item--active{color:var(--color-primary-600);border-bottom-color:var(--color-primary-600)}.db-content{display:flex;flex-direction:column;gap:24px}.db-kpi-grid{display:flex;width:100%;gap:12px;overflow:visible}@media(max-width:1200px){.db-kpi-grid{flex-wrap:wrap;overflow:visible}.db-kpi-grid .db-kpi{flex:1 1 calc(33.333% - 12px)}}@media(max-width:768px){.db-kpi-grid .db-kpi{flex:1 1 calc(50% - 12px)}}@media(max-width:520px){.db-kpi-grid{gap:10px}.db-kpi-grid .db-kpi{flex:1 1 100%}}.db-row{display:grid;gap:20px}.db-overview-grid{--db-trend-salary-card-height: 510px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;align-items:stretch}.db-overview-grid>.dashboard-card{display:flex;flex-direction:column;min-height:0}.db-overview-grid>.dashboard-card>.dashboard-card__content{flex:1;min-height:0}.db-overview-card--span-4{grid-column:span 4}.db-overview-card--span-5{grid-column:span 5}.db-overview-card--span-6{grid-column:span 6}.db-overview-card--span-7{grid-column:span 7}.db-overview-card--span-8{grid-column:span 8}.db-row--3-1{grid-template-columns:2fr 1fr;align-items:start;--db-trend-salary-card-height: 510px}.db-row--2{grid-template-columns:1fr 1fr}.db-row--1-2{grid-template-columns:1fr 2fr}.db-card{background:var(--color-bg-card);border-radius:12px;border:1px solid var(--color-border-subtle);box-shadow:0 1px 3px #0000000f;padding:20px;min-width:0;overflow:hidden}.db-card--full,.dashboard-card--full{grid-column:1 / -1}.dashboard-card--trends{height:var(--db-trend-salary-card-height)}.dashboard-card--salary{align-self:start;display:flex;flex-direction:column;height:var(--db-trend-salary-card-height);min-height:0}.dashboard-card--salary .dashboard-card__content{display:flex;flex-direction:column;flex:1;min-height:0;margin-top:20px}.dashboard-card--salary .dashboard-card__header{margin-bottom:0}.dashboard-card--role-treemap,.dashboard-card--top-skill-chart,.dashboard-card--skill-table,.dashboard-card--skill-trend{min-height:410px}.dashboard-card--role-treemap .dashboard-card__content,.dashboard-card--top-skill-chart .dashboard-card__content,.dashboard-card--skill-table .dashboard-card__content,.dashboard-card--skill-trend .dashboard-card__content{display:flex;flex-direction:column}.db-skill-trend-lines{min-width:0;min-height:240px}.db-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.db-card__header h3{font-size:16px;font-weight:700;color:var(--color-text-primary)}.db-card__header p{font-size:12px;color:var(--color-text-muted);margin-top:2px}.db-top-growing{margin-top:18px}.db-top-growing__title{font-size:12px;font-weight:700;color:var(--color-text-secondary);margin-bottom:10px}.db-top-growing__list{display:flex;flex-wrap:wrap;gap:10px}.db-top-growing__item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-surface-soft);border:1px solid var(--color-border-subtle);border-radius:999px;font-size:12px;color:var(--color-text-secondary);transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease,color .2s ease}.db-top-growing__item:hover{transform:translateY(-2px);background:#0ea5e9;border-color:#0ea5e9;color:#fff;box-shadow:0 10px 22px #0ea5e938}.db-top-growing__item strong{color:#2b8a3e;transition:color .2s ease}.db-top-growing__item:hover strong{color:#fff}.db-top-growing__item:hover .role-analysis-link{color:#fff;text-decoration:none}.db-salary-filter{display:flex;flex-direction:column;gap:7px;margin-bottom:14px;flex-shrink:0}.db-salary-filter__label{font-size:10px;font-weight:800;color:var(--color-text-muted)}.db-salary-filter__controls{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);gap:6px;align-items:center}.db-salary-filter__input{width:100%;min-height:34px;padding:7px 9px;border:1px solid var(--color-border-strong);border-radius:8px;background:var(--color-bg-input);color:var(--color-text-primary);color-scheme:light dark;font-size:12px;font-weight:700;outline:none}.db-salary-filter__input::placeholder{color:var(--color-text-muted);opacity:.72}.db-salary-filter__input:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px #38bdf81f}.db-salary-filter__icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-muted)}.db-salary-filter__clear{align-self:flex-start;padding:0;border:0;background:transparent;color:var(--color-primary-700);font-size:11px;font-weight:800;cursor:pointer}.db-salary-filter__clear:hover{text-decoration:underline;text-underline-offset:3px}.db-salary-panel{flex:1;min-height:0;overflow-y:auto;scrollbar-width:none}.db-salary-panel::-webkit-scrollbar{display:none}.db-salary-list{display:flex;flex-direction:column;gap:16px}.dashboard-card--salary .dashboard-card__footer{min-width:0}.db-salary-scale{display:flex;justify-content:space-between;font-size:10px;color:var(--color-text-secondary);padding-top:8px;border-top:1px solid var(--color-border-subtle)}.db-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center}.db-modal{background:var(--color-bg-card);border-radius:12px;width:90vw;max-width:900px;height:85vh;display:flex;flex-direction:column;box-shadow:0 12px 32px #0003}.db-modal__header{padding:0 20px;height:60px;border-bottom:1px solid var(--color-border-subtle);display:flex;justify-content:space-between;align-items:center;position:relative}.db-modal__header h3{font-size:18px;font-weight:700;color:var(--color-text-primary)}.db-modal__close-btn{background:none;border:none;font-size:20px;cursor:pointer;color:var(--color-text-muted)}.db-modal__close-btn:hover{color:#fa5252}.db-modal__tabs{position:absolute;left:50%;transform:translate(-50%);display:flex;gap:32px;align-items:center;height:100%}.db-modal__tab{background:none;border:none;padding:0;font-size:18px;font-weight:700;color:var(--color-text-muted);cursor:pointer;position:relative;height:100%;display:flex;align-items:center;transition:all .2s ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease ease}.db-modal__tab:hover{color:var(--color-text-secondary)}.db-modal__tab--active{color:var(--color-text-primary)}.db-modal__tab--active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:3px;background-color:var(--color-primary-600);border-radius:3px 3px 0 0}.db-modal__body{padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:20px;flex:1;min-height:0;-ms-overflow-style:none;scrollbar-width:none}.db-modal__search-input{width:100%;padding:8px 16px 8px 40px;background:var(--color-surface-soft);border:1px solid var(--color-primary-200);border-radius:8px;font-size:13px;font-weight:700;color:var(--color-primary-600);outline:none;transition:all .2s ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease}.db-modal__search-input:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 3px #3b5bdb26}.db-modal__body::-webkit-scrollbar{display:none}.db-treemap{position:relative;width:100%;flex:1;min-height:320px;height:100%;margin-bottom:0;background:var(--color-bg-card);border-radius:8px;overflow:hidden}.db-treemap--expanded{flex:1;min-height:0;height:100%;margin-bottom:0}.db-treemap__item{border-radius:4px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;font-weight:600;cursor:pointer;transition:opacity .2s,filter .2s;min-width:40px;padding:4px 8px;text-align:center;line-height:1.3;border:2px solid #fff}.db-treemap__item:hover{opacity:.88;filter:brightness(1.08)}.db-skill-table-container{max-height:250px;overflow-y:auto}.db-skill-table-container--large{max-height:none;overflow:visible}.dashboard-card--skill-table .db-skill-table-container:not(.db-skill-table-container--large){flex:1;min-height:0;max-height:310px}.db-skill-table{width:100%;text-align:left;font-size:12px;border-collapse:collapse;table-layout:fixed}.db-skill-table th{padding:8px 12px;font-weight:500;color:var(--color-text-muted);border-bottom:1px solid #f1f3f5;position:sticky;top:0;background:var(--color-bg-card);z-index:2}.db-skill-table td{padding:10px 12px;color:var(--color-text-secondary);border-bottom:1px solid #f8f9fa}.db-skill-table th:nth-child(1),.db-skill-table td:nth-child(1){width:30%;word-break:break-word}.db-skill-table-container--large .db-skill-table th:nth-child(1),.db-skill-table-container--large .db-skill-table td:nth-child(1){width:18%}.db-skill-table-container--large .db-skill-table th:nth-child(4),.db-skill-table-container--large .db-skill-table td:nth-child(4){width:54%}.db-skill-table th:nth-child(2),.db-skill-table td:nth-child(2){width:14%;text-align:center}.db-skill-table th:nth-child(3),.db-skill-table td:nth-child(3){width:14%;text-align:center}.db-skill-table th:nth-child(4),.db-skill-table td:nth-child(4){width:42%}.db-skill-table tbody tr:hover{background:var(--color-surface-soft)}.db-tag-group{display:flex;gap:4px;flex-wrap:wrap}.db-tag{background:#f1f3f5;border:1px solid var(--color-border-subtle);white-space:normal;color:var(--color-text-secondary);padding:2px 6px;border-radius:4px;font-size:10px;word-break:break-word}.db-tag.role-analysis-link{display:inline-flex;align-items:center;text-decoration:none}.db-tag--more{background:#e9ecef;color:var(--color-text-muted);font-size:9px;font-weight:700;border:1px solid #dee2e6}.db-link-btn{font-size:12px;font-weight:600;color:var(--color-primary-600);background:none;border:none;cursor:pointer}.db-link-btn:hover{text-decoration:underline}.db-toggle-group{display:flex;background:#f1f3f5;padding:3px;border-radius:8px;border:1px solid var(--color-border-subtle)}.db-toggle-group__btn{padding:6px 12px;font-size:12px;font-weight:500;color:var(--color-text-muted);background:none;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease}.db-toggle-group__btn:hover{color:var(--color-text-primary)}.db-toggle-group__btn--active{background:var(--color-bg-card);color:var(--color-text-primary);box-shadow:0 1px 3px #00000014}.db-network-shell{display:flex;align-items:stretch;gap:16px;width:100%;min-height:400px}.db-network-area{flex:1 1 auto;min-width:0;height:400px;width:100%;background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border-subtle);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:flex-basis .24s ease,border-color .2s ease,background-color .2s ease}.db-network-shell--panel-open .db-network-area{flex-basis:calc(100% - 356px)}.db-network-reset{position:absolute;top:12px;right:12px;z-index:5;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px;border:1px solid var(--color-border-subtle);border-radius:7px;background:var(--color-bg-card);color:var(--color-text-secondary);font-size:12px;font-weight:700;cursor:pointer;box-shadow:0 8px 20px #0f172a14}.db-network-reset:hover{border-color:var(--color-border-strong);color:var(--color-primary-700);background:var(--color-bg-hover)}.db-network-focus-lock{position:absolute;z-index:6;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border-subtle);border-radius:50%;background:var(--color-bg-card);color:var(--color-text-secondary);cursor:pointer;opacity:.72;box-shadow:0 10px 22px #0f172a1f;transition:opacity .15s ease,transform .15s ease,border-color .15s ease,color .15s ease}.db-network-focus-lock:hover,.db-network-focus-lock--active{opacity:1;color:var(--color-primary-700);border-color:var(--color-border-strong);transform:translateY(-1px)}.db-network-focus-lock--active{background:var(--color-bg-active)}.db-network-detail{flex:0 0 340px;height:400px;overflow-y:auto;border:1px solid var(--color-border-subtle);border-radius:8px;background:var(--color-bg-card);box-shadow:none;padding:18px;color:var(--color-text-primary)}.db-network-detail__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--color-border-subtle)}.db-network-detail__eyebrow{display:block;margin-bottom:8px;color:var(--color-text-muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.db-network-detail h4{margin:0;color:var(--color-text-primary);font-size:15px;line-height:1.3}.db-network-detail p{margin:5px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.35}.db-network-detail__close{width:30px;height:30px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border-subtle);border-radius:7px;background:transparent;color:var(--color-text-muted);cursor:pointer}.db-network-detail__close:hover{border-color:var(--color-border-strong);color:var(--color-primary-700);background:var(--color-bg-hover)}.db-network-detail__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0}.db-network-detail__metrics div{min-width:0;padding:10px;border:1px solid var(--color-border-subtle);border-radius:8px;background:var(--color-bg-subtle)}.db-network-detail__metrics span{display:block;color:var(--color-text-muted);font-size:10px;font-weight:700;line-height:1.2}.db-network-detail__metrics strong{display:block;margin-top:5px;color:var(--color-text-primary);font-size:16px;line-height:1.1}.db-network-detail__skills{display:flex;flex-direction:column;gap:12px}.db-network-detail__group{display:flex;flex-direction:column;gap:8px}.db-network-detail__group-title{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--color-text-secondary);font-size:12px;font-weight:800}.db-network-detail__group-title strong{min-width:22px;text-align:center;color:var(--color-primary-700);font-size:11px}.db-network-detail__chips{display:flex;flex-wrap:wrap;gap:7px}.db-network-detail__chip{max-width:100%;padding:5px 8px;border-radius:7px;border:1px solid var(--color-border-strong);background:var(--color-bg-active);color:var(--color-primary-700);font-size:11px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}.db-network-detail__empty{padding:14px;border:1px dashed var(--color-border-strong);border-radius:8px;color:var(--color-text-secondary);font-size:12px;line-height:1.45;background:var(--color-bg-subtle)}@media(max-width:900px){.db-network-shell{flex-direction:column}.db-network-detail{flex-basis:auto;width:100%;height:auto;max-height:360px}.db-network-detail__metrics{grid-template-columns:repeat(2,minmax(96px,1fr))}}.dashboard-card--map{display:flex;flex-direction:column}.dashboard-card--map .dashboard-card__content{flex:1;min-height:0;display:flex;flex-direction:column}.db-map-expanded{width:100%;height:100%;min-height:0;display:flex;align-items:center;justify-content:center}.dashboard-modal__body--network .db-network-shell,.dashboard-modal__body--map .db-map-expanded{flex:1}.dashboard-modal__body--network .db-network-shell{height:100%;min-height:0}.dashboard-modal__body--network .db-network-area{height:100%}.dashboard-modal__body--network .db-network-detail{align-self:stretch;height:auto;min-height:0}.db-region-map{flex:1;position:relative;background:#3b5bdb08;border-radius:8px;border:1px solid rgba(59,91,219,.08);display:flex;justify-content:center;align-items:center;margin-top:12px;min-height:300px}.db-region-map__silhouette{height:280px;opacity:.15}.db-region-pin{position:absolute;cursor:pointer}.db-region-pin__pulse{width:16px;height:16px;border-radius:50%;opacity:.4;animation:pulse 2s infinite;position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;margin:auto}.db-region-pin__pulse--sm{width:12px;height:12px}.db-region-pin__pulse--lg{width:24px;height:24px;top:-8px;right:-8px;bottom:-8px;left:-8px}.db-region-pin__dot{width:10px;height:10px;border-radius:50%;border:2px solid #fff;position:relative;z-index:2}.db-region-pin__dot--sm{width:8px;height:8px}.db-region-pin__dot--lg{width:12px;height:12px}.db-region-pin__tooltip{position:absolute;top:0;left:20px;background:var(--color-bg-card);padding:4px 8px;border-radius:6px;box-shadow:0 2px 8px #0000001a;font-size:10px;font-weight:700;color:var(--color-text-primary);white-space:nowrap;display:none;z-index:20}.db-region-pin:hover .db-region-pin__tooltip{display:block}.db-region-pin__extra{display:block;font-size:9px;color:#20c997;margin-top:2px;font-weight:600}.db-region-pin--always .db-region-pin__card{position:absolute;top:-64px;left:-80px;background:var(--color-bg-card);padding:8px;border-radius:8px;box-shadow:0 4px 12px #0000001a;border:1px solid var(--color-border-subtle);font-size:10px;width:140px;z-index:20}.db-region-pin__card-title{font-weight:700;color:var(--color-primary-600);margin-bottom:4px}.db-region-pin__card-row{display:flex;justify-content:space-between;color:var(--color-text-secondary);margin-bottom:2px}@keyframes pulse{0%{transform:scale(1);opacity:.4}50%{transform:scale(1.5);opacity:.1}to{transform:scale(1);opacity:.4}}.vn-map{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:12px;min-height:300px;background:var(--vn-map-bg, #fbfdff);border-radius:12px;border:1px solid var(--vn-map-border, rgba(14, 165, 233, .1));padding:12px}.vn-map--popup{min-height:100%;height:100%}.vn-map__tooltip{position:absolute;background:var(--vn-map-tooltip-bg, var(--color-bg-card));border:1px solid var(--vn-map-tooltip-border, rgba(14, 165, 233, .18));border-radius:12px;padding:12px 14px;box-shadow:var(--vn-map-tooltip-shadow, 0 8px 24px rgba(15, 23, 42, .12));color:var(--vn-map-tooltip-text, #0f172a);font-size:12px;z-index:30;pointer-events:none;min-width:160px;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.vn-map__tooltip-title{font-size:13px;font-weight:800;color:var(--vn-map-tooltip-title, #0ea5e9);margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--vn-map-tooltip-divider, #e2e8f0)}.vn-map__tooltip-row{display:flex;justify-content:space-between;gap:12px;margin-bottom:3px;color:var(--vn-map-tooltip-muted, #64748b)}.vn-map__tooltip-row strong{color:var(--vn-map-tooltip-text, #0f172a)}.vn-map__tooltip-roles{margin-top:8px;padding-top:6px;border-top:1px dashed var(--vn-map-tooltip-divider, #e2e8f0);font-size:11px;color:var(--vn-map-tooltip-muted, #64748b);line-height:1.4}.vn-map__tooltip-roles strong{color:var(--vn-map-tooltip-text, #0f172a);word-wrap:break-word}.vn-map__tooltip-empty{color:var(--vn-map-tooltip-empty, #94a3b8);font-style:italic}.vn-map__legend{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;margin-top:8px;font-size:10px;font-weight:600;color:var(--vn-map-legend-text, #64748b)}.vn-map__legend-bar{width:64px;height:6px;border-radius:3px;border:1px solid transparent;background:linear-gradient(90deg,#fde68a,#facc15,#fb923c,#f97316,#ef4444)}.vn-map__legend-separator{width:1px;height:10px;background:currentColor;opacity:.28;margin:0 1px}.vn-map__legend-empty{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.vn-map__legend-empty-swatch{width:10px;height:8px;border:1px solid currentColor;border-radius:2px;box-shadow:0 0 0 1px #0f172a0a}.db-footer{margin-top:24px;padding-top:16px;border-top:1px solid var(--color-border-subtle);display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--color-text-muted)}.db-footer__left{display:flex;align-items:center;gap:12px}.db-footer strong{color:var(--color-text-muted)}.text-primary{color:var(--color-primary-600)}@media(max-width:1200px){.db-kpi-grid{grid-template-columns:repeat(3,1fr)}.db-row--3-1{grid-template-columns:1fr}.db-overview-card--span-4,.db-overview-card--span-5,.db-overview-card--span-6,.db-overview-card--span-7,.db-overview-card--span-8{grid-column:span 6}.dashboard-card--trends,.dashboard-card--salary{height:auto;min-height:430px}.db-row--1-2,.db-row--2{grid-template-columns:1fr}.db-treemap{grid-template-columns:1fr 1fr}.dashboard-card--map{min-height:400px}}@media(max-width:900px){.db-kpi-grid{grid-template-columns:repeat(2,1fr)}.db-overview-card--span-4,.db-overview-card--span-5,.db-overview-card--span-6,.db-overview-card--span-7,.db-overview-card--span-8{grid-column:1 / -1}.db-sticky-bar__filters{flex-direction:column;align-items:stretch;gap:12px}.db-page-header{flex-direction:column;align-items:flex-start;gap:16px}}@media(max-width:600px){.db-kpi-grid{grid-template-columns:1fr}.dashboard-card--role-treemap,.dashboard-card--top-skill-chart,.dashboard-card--skill-table,.dashboard-card--skill-trend,.dashboard-card--trends,.dashboard-card--salary{min-height:auto}.db-anchor-nav{overflow-x:auto;padding-bottom:4px}.db-anchor-nav__item{white-space:nowrap}}.text-success{color:#2b8a3e}.section-card{background:var(--color-bg-card);border:1px solid var(--color-border-subtle);border-radius:12px;padding:20px}.section-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-card-title{font-size:15px;font-weight:600;color:var(--color-text-primary)}.section-card-subtitle{font-size:12px;color:var(--color-text-muted);margin-top:2px}.chart-toggle{display:flex;background-color:#f8f9fa;border-radius:6px;padding:2px}.chart-toggle-btn{padding:4px 12px;border-radius:4px;font-size:12px;font-weight:500;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all .2s ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease}.chart-toggle-btn--active{background-color:var(--color-bg-active);color:var(--color-primary-600);box-shadow:0 1px 2px #0000000f}.dashboard-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.dashboard-header-left h1{font-size:22px;font-weight:700;color:var(--color-text-primary)}.dashboard-header-left p{font-size:13px;color:var(--color-text-muted);margin-top:4px}.dashboard-filters{display:flex;align-items:center;gap:12px}.dashboard-filter-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background-color:var(--color-bg-card);border:1px solid var(--color-border-subtle);border-radius:8px;font-size:13px;color:var(--color-text-muted);cursor:pointer;transition:all .2s ease,background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease}.dashboard-filter-btn:hover{border-color:var(--color-primary-600);color:var(--color-primary-600)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.db-page-header,.db-ai-trigger,.dashboard-header{background:var(--color-bg-card);border-color:#7da6c42e;box-shadow:var(--shadow-md)}.db-page-header__left h1,.dashboard-header-left h1{color:var(--color-text-primary)}.db-page-header__left p,.db-footer,.dashboard-header-left p{color:var(--color-text-secondary)}.db-icon-btn,.db-action-btn,.db-link-btn,.db-toggle-group__btn,.dashboard-filter-btn{border-color:#7da6c42e;background:var(--color-bg-card);box-shadow:var(--shadow-sm)}.db-icon-btn:hover,.db-action-btn:hover,.db-link-btn:hover,.db-toggle-group__btn:hover,.dashboard-filter-btn:hover{border-color:#38bdf847;color:var(--color-primary-700);background:var(--color-bg-hover)}.db-action-btn--primary,.db-ai-trigger__btn,.db-toggle-group__btn--active{background:#0ea5e9;border-color:transparent;color:#fff;box-shadow:0 12px 24px #0ea5e929}.db-sticky-bar{background:var(--surface-glass);border-color:#7da6c42e;box-shadow:var(--shadow-sm)}.db-filter-dropdown-menu,.db-filter-dropdown-item,.db-top-growing__item,.db-tag,.db-toggle-group,.db-network-area,.db-region-map,.section-card,.chart-toggle,.db-summary__table thead,.db-summary__search-input,.db-filter-search{background-color:var(--color-bg-card);border-color:var(--color-border-subtle);color:var(--color-text-primary)}.db-skill-table th{background:var(--color-bg-card);color:var(--color-text-primary);border-color:var(--color-border-subtle)}.db-skill-table td,.db-summary__table td,.db-filter-search__input{color:var(--color-text-secondary)}.db-skill-table tbody tr:hover,.db-summary__table tbody tr:hover,.db-filter-dropdown-item:hover{background:var(--color-bg-hover)}.db-anchor-nav__item--active,.db-sticky-bar__advanced,.db-link-btn,.db-compare-btn{color:var(--color-primary-700)}.db-anchor-nav__item--active{border-bottom-color:var(--color-primary-700)}.db-ai-trigger{background:var(--color-bg-card)}.db-ai-trigger__icon{background:linear-gradient(135deg,#e0f2fef5,#ccfbf1e0);color:var(--color-primary-700)}@media(max-width:720px){.db-page-header{padding:18px 14px;border-radius:18px}.db-page-header__left h1{font-size:21px}.db-page-header__actions,.dashboard-filters,.db-card__header,.db-footer,.dashboard-header{width:100%;flex-wrap:wrap}.db-page-header__actions .db-action-btn,.db-sticky-bar__filter-group>*,.dashboard-filters>*{flex:1 1 100%;min-width:0}.db-sticky-bar{position:static;padding:12px;border:1px solid var(--color-border-subtle);border-radius:16px}.db-sticky-bar__filters{flex-direction:column;align-items:stretch;gap:12px}.db-sticky-bar__filter-group{display:grid;grid-template-columns:1fr}.db-anchor-nav{overflow-x:auto;scrollbar-width:none}.db-anchor-nav::-webkit-scrollbar{display:none}.db-card,.section-card{padding:16px;border-radius:16px;width:100%;max-width:100%}.db-network-area{min-width:min(520px,calc(100vw - 64px))}.db-card:has(.db-network-area),.db-card:has(.vn-map),.db-skill-table-container,.db-skill-table-container--large{overflow-x:auto}.db-skill-table{min-width:640px}.vn-map{min-height:300px;overflow:hidden}.vn-map>div:first-child{min-height:280px!important}.vn-map__legend{bottom:8px!important;font-size:10px}.db-modal{width:calc(100vw - 20px);height:calc(100vh - 28px)}.db-modal__header{height:auto;min-height:56px;padding:12px}.db-modal__tabs{position:static;transform:none;gap:14px;overflow-x:auto}}.db-ai-cta-banner{position:relative;margin:0;padding:20px 28px;border-radius:16px;background:linear-gradient(135deg,#0ea5e914,#14b8a61f,#a855f714);border:1px solid rgba(14,165,233,.18);cursor:pointer;overflow:hidden;transition:all .3s cubic-bezier(.2,.8,.2,1)}.db-ai-cta-banner:hover{border-color:#0ea5e959;box-shadow:0 8px 32px #0ea5e91f,0 0 0 1px #0ea5e914;transform:translateY(-1px)}.db-ai-cta-banner__glow{position:absolute;top:-50%;right:-10%;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(14,165,233,.15) 0%,transparent 70%);pointer-events:none;animation:cta-glow-pulse 4s ease-in-out infinite}@keyframes cta-glow-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.db-ai-cta-banner__content{position:relative;z-index:1;display:flex;align-items:center;gap:20px}.db-ai-cta-banner__icon{flex-shrink:0;width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#0ea5e9,#14b8a6);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 20px #0ea5e940}.db-ai-cta-banner__text{flex:1;min-width:0}.db-ai-cta-banner__text h3{font-size:15px;font-weight:800;color:var(--color-text-primary);margin:0 0 4px;letter-spacing:-.01em}.db-ai-cta-banner__text p{font-size:12px;font-weight:500;color:var(--color-text-secondary);margin:0;line-height:1.5}.db-ai-cta-banner__action{flex-shrink:0;display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#0ea5e9,#14b8a6);color:#fff;font-size:13px;font-weight:700;padding:10px 20px;border-radius:10px;box-shadow:0 4px 14px #0ea5e94d;transition:all .2s ease;white-space:nowrap}.db-ai-cta-banner:hover .db-ai-cta-banner__action{box-shadow:0 6px 20px #0ea5e966;transform:translate(2px)}@media(max-width:720px){.db-ai-cta-banner{padding:16px 18px}.db-ai-cta-banner__content{flex-wrap:wrap;gap:12px}.db-ai-cta-banner__icon{width:40px;height:40px;border-radius:10px}.db-ai-cta-banner__text h3{font-size:14px}.db-ai-cta-banner__text p{font-size:11px}.db-ai-cta-banner__action{width:100%;justify-content:center;padding:10px 16px}}.modal-content--all-roles{width:min(100%,720px);max-height:min(80vh,720px);display:flex;flex-direction:column}.all-roles__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 24px 12px;border-bottom:1px solid rgba(125,166,196,.16)}.all-roles__header h3{margin:0;color:var(--color-text-primary);font-size:1.2rem;font-weight:700}.all-roles__header p{margin:4px 0 0;color:var(--color-text-secondary);font-size:.86rem}.all-roles__close{border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;padding:4px;border-radius:8px}.all-roles__close:hover{background:#7da6c41f;color:var(--color-text-primary)}.all-roles__search{position:relative;display:flex;align-items:center;padding:16px 24px;background:var(--color-bg-subtle, rgba(246, 251, 255, .6))}.all-roles__search-icon{position:absolute;left:36px;color:var(--color-text-secondary);pointer-events:none}.all-roles__search-input{flex:1;padding:10px 36px;border:1px solid rgba(125,166,196,.3);border-radius:12px;background:var(--color-bg-input, white);color:var(--color-text-primary);font-size:.95rem;outline:none;transition:border-color .15s}.all-roles__search-input:focus{border-color:#7da6c499}.all-roles__clear{position:absolute;right:32px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;padding:4px;display:flex}.all-roles__list{flex:1;overflow-y:auto;padding:8px 16px 16px}.all-roles__state{display:flex;align-items:center;justify-content:center;gap:8px;padding:40px 16px;color:var(--color-text-secondary);font-size:.94rem}.all-roles__state--error{color:#e11d48}.all-roles__item{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;padding:12px 14px;background:transparent;border:1px solid transparent;border-radius:12px;cursor:pointer;transition:background .12s,border-color .12s}.all-roles__item:hover{background:var(--color-bg-hover, rgba(246, 251, 255, .85));border-color:var(--color-border, rgba(125, 166, 196, .22));text-decoration:none}.all-roles__item-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,#63b3ed2e,#63b3ed14);color:var(--color-accent, #2c6da3)}.all-roles__item-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.all-roles__item-text strong{color:var(--color-text-primary);font-size:.94rem;font-weight:600}.all-roles__item-text span{color:var(--color-text-secondary);font-size:.82rem;line-height:1.45}.sa-sparkgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;padding:4px 0}.sa-sparkcard{background:#fff;border:1px solid #E9ECEF;border-radius:12px;padding:12px 14px 10px;display:flex;flex-direction:column;gap:8px;transition:box-shadow .15s ease,border-color .15s ease}.sa-sparkcard:hover{box-shadow:0 4px 16px #00000012;border-color:var(--spark-color, #DEE2E6)}.sa-sparkcard__header{display:flex;align-items:center;justify-content:space-between;gap:6px}.sa-sparkcard__name{font-size:12px;font-weight:700;color:#212529;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sa-sparkcard__delta{display:flex;align-items:center;gap:2px;font-size:11px;font-weight:700;flex-shrink:0;border-radius:4px;padding:1px 5px}.sa-sparkcard__delta--up{color:#0ca678;background:#ebfbee}.sa-sparkcard__delta--down{color:#e03131;background:#fff5f5}.sa-sparkcard__delta--flat{color:#868e96;background:#f8f9fa}.sa-sparkcard__chart{position:relative;height:52px}.sa-sparkcard__svg{width:100%;height:100%;display:block;overflow:visible}.sa-sparkcard__hitarea{position:absolute;top:0;right:0;bottom:0;left:0;display:flex}.sa-sparkcard__hit{position:absolute;top:0;bottom:0;width:20px;transform:translate(-50%);cursor:crosshair}.sa-sparkcard__tooltip{position:absolute;bottom:calc(100% + 4px);transform:translate(-50%);background:#212529;color:#fff;font-size:11px;padding:4px 8px;border-radius:6px;white-space:nowrap;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:1px;z-index:10}.sa-sparkcard__tooltip-month{color:#adb5bd;font-size:10px}.sa-sparkcard__footer{display:flex;align-items:baseline;justify-content:space-between}.sa-sparkcard__latest{font-size:10px;color:#adb5bd}.sa-sparkcard__value{font-size:16px;font-weight:800;color:var(--spark-color, #212529)}.sa-empty{height:calc(100vh - 48px);display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at top,#edf2ff,#fff 70%);padding:40px;overflow:hidden}.sa-empty__content{max-width:640px;width:100%;display:flex;flex-direction:column;align-items:center}.sa-empty__icon{width:80px;height:80px;background:linear-gradient(135deg,#3b5bdb,#20c997);border-radius:20px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 24px #3b5bdb40;margin-bottom:24px;transform:rotate(-12deg)}.sa-empty__icon svg{transform:rotate(12deg)}.sa-empty__title{font-size:32px;font-weight:800;color:#212529;text-align:center;letter-spacing:-.02em;margin-bottom:8px}.sa-empty__desc{font-size:16px;color:#868e96;text-align:center;margin-bottom:32px}.sa-empty__search-container,.sa-empty__search-wrap{width:100%;position:relative}.sa-empty__search-icon{position:absolute;left:24px;top:50%;transform:translateY(-50%);color:#adb5bd;transition:color .2s}.sa-empty__search-wrap:focus-within .sa-empty__search-icon{color:#3b5bdb}.sa-empty__search-input{width:100%;padding:20px 140px 20px 60px;background:#fff;border:2px solid #E9ECEF;border-radius:16px;font-size:16px;font-weight:500;color:#212529;outline:none;transition:all .2s;box-shadow:0 4px 16px #0000000f}.sa-empty__search-input:hover{box-shadow:0 8px 24px #00000014}.sa-empty__search-input:focus{border-color:#3b5bdb;box-shadow:0 0 0 4px #3b5bdb26}.sa-empty__search-btn{position:absolute;right:12px;top:12px;bottom:12px;padding:0 24px;background:#3b5bdb;color:#fff;border:none;border-radius:12px;font-weight:700;font-size:14px;cursor:pointer;transition:background .2s;box-shadow:0 2px 8px #3b5bdb4d}.sa-empty__search-btn:hover{background:#364fc7}.sa-empty__search-btn:disabled{background:#adb5bd;box-shadow:none;cursor:not-allowed}.sa-empty__helper{position:absolute;top:calc(100% + 8px);left:0;right:0;padding:10px 14px;background:#fff;border:1px solid #E9ECEF;border-radius:10px;font-size:13px;color:#495057;z-index:50;box-shadow:0 12px 32px #0000001f}.sa-empty__helper--error{background:#fff5f5;border-color:#ffc9c9;color:#c92a2a}.sa-empty__results{position:absolute;top:calc(100% + 8px);left:0;right:0;display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid #E9ECEF;border-radius:12px;box-shadow:0 12px 32px #0000001f;padding:10px;z-index:50;max-height:200px;overflow-y:auto}.sa-empty__result-item{width:100%;display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:#fff;border:1px solid #E9ECEF;border-radius:12px;text-align:left;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #0000000a}.sa-empty__result-item:hover{border-color:#bac8ff;box-shadow:0 6px 16px #3b5bdb1f;transform:translateY(-1px);text-decoration:none}.sa-empty__result-item strong{font-size:14px;color:#212529}.sa-empty__result-item span{font-size:12px;color:#868e96}.sa-empty__result-more{margin-top:6px;padding:10px 12px;background:#63b3ed14;border:1px dashed rgba(99,179,237,.45);border-radius:10px;color:#2c6da3;font-size:13px;font-weight:600;cursor:pointer;text-align:center;transition:background .15s,border-color .15s,border-style .15s}.sa-empty__result-more:hover{background:#63b3ed2e;border-color:#63b3edbf;border-style:solid}.sa-empty__browse{display:flex;justify-content:center;margin-top:14px}.sa-empty__browse-btn{background:transparent;border:none;color:#2c6da3;font-size:13px;font-weight:600;cursor:pointer;padding:6px 12px;border-radius:8px;transition:background .15s}.sa-empty__browse-btn:hover{background:#63b3ed1f;text-decoration:underline}.sa-empty__suggestions{width:100%;margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:32px}.sa-empty__suggestion-title{font-size:11px;font-weight:700;color:#adb5bd;text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;display:flex;align-items:center;gap:6px}.sa-empty__suggestion-title--hot svg{color:#f59f00}.sa-empty__tags{display:flex;flex-wrap:wrap;gap:8px}.sa-empty__tag{padding:6px 12px;background:#f1f3f5;border:1px solid #E9ECEF;border-radius:8px;font-size:13px;font-weight:500;color:#495057;cursor:pointer;transition:all .2s}.sa-empty__tag:hover{background:#e9ecef;text-decoration:none}.sa-empty__tag--hot{background:#fff9db;border-color:#ffe066;color:#e67700;font-weight:700;box-shadow:0 1px 4px #0000000a}.sa-empty__tag--trending{background:#e6fcf5;border-color:#96f2d7;color:#0b7285;font-weight:700;box-shadow:0 1px 4px #0000000a}.sa-empty__tag-empty{font-size:12px;color:#adb5bd;font-style:italic;padding:2px 0}.sa-hero{background:linear-gradient(135deg,#edf2ff,#fff 60%,#e6fcf5);border-radius:12px;border:1px solid #DBE4FF;box-shadow:0 1px 4px #0000000a;padding:24px;position:relative;overflow:hidden}.sa-hero__bg-blur{position:absolute;top:-60px;right:-40px;width:240px;height:240px;background:#3b5bdb0d;border-radius:50%;filter:blur(60px)}.sa-hero__top{display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:1}.sa-hero__title-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.sa-hero__title{font-size:28px;font-weight:800;color:#212529;letter-spacing:-.02em;margin:0}.sa-hero__title-link,.sa-kg__role-name-link{color:inherit}.sa-hero__badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:700}.sa-hero__badge--hot{background:#fff5f5;color:#e03131}.sa-hero__badge--stable{background:#e6fcf5;color:#0b7285}.sa-hero__desc{font-size:13px;color:#495057;line-height:1.6;margin-bottom:12px;max-width:640px;max-height:64px;overflow-y:auto;padding-right:8px}.sa-hero__desc::-webkit-scrollbar{width:4px}.sa-hero__desc::-webkit-scrollbar-track{background:transparent}.sa-hero__desc::-webkit-scrollbar-thumb{background:#dee2e6;border-radius:4px}.sa-hero__highlight{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:#3b5bdb;background:#edf2ff;padding:6px 12px;border-radius:8px;border:1px solid #DBE4FF}.sa-hero__score{background:#fff;border:1px solid #DBE4FF;border-radius:12px;padding:16px;text-align:center;min-width:130px;box-shadow:0 1px 4px #0000000a;flex-shrink:0}.sa-hero__score-label{font-size:10px;font-weight:700;color:#868e96;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.sa-hero__score-value{font-size:36px;font-weight:800;color:#3b5bdb}.sa-hero__score-value span{font-size:16px;color:#adb5bd}.sa-hero__score-delta{font-size:10px;font-weight:500;color:#20c997;margin-top:4px}.sa-hero__bottom{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px;position:relative;z-index:1}.sa-hero__insights{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.sa-hero__insight{background:#fff9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:8px;border:1px solid #EDF2FF;padding:12px;display:flex;flex-direction:column;gap:4px;overflow:hidden;min-height:72px;max-height:100px}.sa-hero__insight-icon{flex-shrink:0}.sa-hero__insight-icon--primary{color:#3b5bdb}.sa-hero__insight-icon--rose{color:#fa5252}.sa-hero__insight-icon--teal{color:#20c997}.sa-hero__insight-label{font-size:11px;font-weight:500;color:#868e96;display:flex;align-items:center;gap:4px}.sa-hero__insight-value{font-size:13px;font-weight:700;color:#212529;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.sa-hero__action-box{background:#fffc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:12px;border:1px solid #EDF2FF;padding:16px;display:flex;gap:12px;align-items:center}.sa-hero__action-icon{width:40px;height:40px;border-radius:50%;background:#edf2ff;display:flex;align-items:center;justify-content:center;color:#3b5bdb;flex-shrink:0}.sa-hero__action-title{font-size:12px;font-weight:700;color:#212529;margin-bottom:4px}.sa-hero__action-items{display:flex;gap:16px;font-size:12px;color:#495057}.sa-hero__action-items span{display:flex;align-items:center;gap:4px}.sa-hero__action-items strong{color:#212529}.sa-roadmap__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.sa-roadmap__column{background:#f8f9fa;border:1px solid #E9ECEF;border-radius:12px;padding:16px}.sa-roadmap__column-title{font-size:13px;font-weight:700;color:#212529;margin-bottom:12px;display:flex;align-items:center;gap:8px}.sa-roadmap__dot{width:8px;height:8px;border-radius:50%}.sa-roadmap__skills{display:flex;flex-direction:column;gap:8px}.sa-roadmap__skill{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:600;background:#ffffff80;border:1px solid #E9ECEF;color:#495057}.sa-roadmap__skill--highlight{background:#fff;border-color:#bac8ff;color:#3b5bdb;box-shadow:0 1px 3px #0000000a}.sa-roadmap__percent{padding:2px 6px;border-radius:4px;font-size:10px;background:#f1f3f5;color:#868e96}.sa-roadmap__percent--highlight{background:#edf2ff;color:#3b5bdb}.sa-quarter-card{display:flex;flex-direction:column;min-height:0}.sa-quarter-card__content{flex:1;min-height:0;display:flex;flex-direction:column;gap:14px}.sa-quarter-card__content--expanded{min-height:min(70vh,520px)}.sa-quarter-summary{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--color-border-subtle, #E2E8F0);border-radius:10px;background:var(--color-bg-subtle, #F8FAFC)}.sa-quarter-summary>div{min-width:0}.sa-quarter-summary__status{display:block;font-size:14px;font-weight:600;line-height:1.2;color:var(--color-text-primary, #1E293B)}.sa-quarter-summary__score{display:block;margin-top:4px;font-size:12px;font-weight:700;color:var(--color-text-secondary, #64748B)}.sa-quarter-summary__meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:12px;font-weight:700;color:var(--color-text-secondary, #64748B);white-space:nowrap}.sa-quarter-summary__delta{font-size:14px;font-weight:800}.sa-quarter-summary__delta--up{color:#16894a}.sa-quarter-summary__delta--down{color:#e03131}.sa-quarter-chart{flex:1;min-height:260px;width:100%}.sa-quarter-chart--expanded{min-height:360px}@media(max-width:640px){.sa-quarter-summary{flex-direction:column;align-items:flex-start}.sa-quarter-summary__meta{align-items:flex-start}.sa-quarter-chart{min-height:240px}}.sa-donut{width:100%;height:268px;min-height:248px}.sa-donut--expanded{flex:1;height:100%;min-height:420px}.sa-kg__toggle{display:flex;gap:4px;background:var(--color-bg-subtle, #F1F3F5);padding:4px;border-radius:10px;border:1px solid var(--color-border-subtle, #E9ECEF);box-shadow:inset 0 1px #ffffff8c}.sa-kg__toggle button{padding:7px 14px;font-size:12px;font-weight:700;line-height:1.2;color:var(--color-text-secondary, #64748B);background:none;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.sa-kg__toggle button:hover{background:var(--color-bg-hover, rgba(56, 189, 248, .08));border-color:#38bdf838;color:var(--color-primary-700, #0284C7)}.sa-kg__toggle button:focus-visible{outline:none;box-shadow:0 0 0 3px #38bdf833}.sa-kg__toggle button.sa-kg__toggle--active{background:linear-gradient(180deg,#f0f9fffa,#e0f2fefa)!important;border-color:#0ea5e957!important;color:var(--color-primary-700, #0284C7)!important;box-shadow:0 8px 18px #0ea5e924,inset 0 1px #ffffffb8}.sa-kg__content{display:grid;grid-template-columns:3fr 1fr;gap:20px}.dashboard-modal__body--network .sa-kg__content{height:100%;min-height:0}.sa-kg__graph{height:400px;background:#fafbfc;border-radius:8px;border:1px solid #F1F3F5;position:relative;display:flex;align-items:center;justify-content:center}.dashboard-modal__body--network .sa-kg__graph{height:100%}.sa-kg__side{background:#f8f9fa;border:1px solid #E9ECEF;border-radius:8px;padding:16px;display:flex;flex-direction:column;max-height:400px;overflow:hidden}.sa-kg__side h4{font-size:13px;font-weight:700;color:#212529;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #E9ECEF}.sa-kg__roles{flex:1;min-height:0;display:flex;flex-direction:column;gap:8px;overflow-y:auto}.sa-kg__role{padding:8px;border-radius:8px;cursor:pointer;border:1px solid transparent;transition:all .2s;text-align:left}.sa-kg__role:hover{background:#fff;border-color:#e9ecef;box-shadow:0 1px 3px #0000000a}.sa-kg__role:focus-visible{outline:2px solid rgba(59,91,219,.28);outline-offset:2px}.sa-kg__role-name{font-size:12px;font-weight:700;color:#495057;display:flex;gap:8px;justify-content:space-between;align-items:center}.sa-kg__role-name-link{min-width:0;overflow:hidden;text-overflow:ellipsis}.sa-kg__role--skill .sa-kg__role-name-link{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;word-break:break-word}.sa-kg__role-dot{width:8px;height:8px;border-radius:50%;background:#40c057;flex-shrink:0}.sa-kg__role-overlap{font-size:10px;color:#868e96;margin-top:2px}.sa-kg__side-empty{padding:10px 8px;color:#868e96;font-size:11px;line-height:1.4}.text-success{color:#40c057}.text-warning{color:#f59f00}@media(max-width:900px){.sa-empty__suggestions{grid-template-columns:1fr;gap:20px}}@media(max-width:600px){.sa-empty{padding:24px 16px;height:auto;min-height:calc(100vh - 96px);justify-content:flex-start}.sa-empty__title{font-size:26px}.sa-empty__desc{font-size:14px;margin-bottom:24px}.sa-empty__search-wrap{display:flex;flex-direction:column;gap:12px}.sa-empty__search-icon{top:28px;left:20px;transform:translateY(-50%);z-index:2}.sa-empty__search-input{min-height:56px;padding:16px 18px 16px 52px;font-size:14px}.sa-empty__search-btn{position:static;width:100%;margin-top:0;min-height:48px}.sa-empty__suggestions{margin-top:28px}}.sa-empty,.sa-sparkcard,.sa-hero,.sa-roadmap,.sa-location,.sa-experience,.sa-kg__graph,.sa-kg__side,.sa-empty__search,.sa-empty__suggestion-card,.sa-kg__toggle--active{background:var(--color-bg-card)!important;border-color:var(--color-border-subtle)!important;color:var(--color-text-primary)!important}.sa-empty__title,.sa-sparkcard__title,.sa-hero__title,.sa-roadmap__title,.sa-location__title,.sa-experience__title,.sa-kg__side h4,.sa-kg__role-name{color:var(--color-text-primary)!important}.sa-empty__subtitle,.sa-sparkcard__subtitle,.sa-kg__role-overlap,.sa-empty__search-input,.sa-kg__toggle{color:var(--color-text-secondary)!important}.sa-kg__role:hover,.sa-empty__suggestion-card:hover{background:var(--color-bg-hover)!important;border-color:var(--color-border-strong)!important}:root[data-theme=dark] .sa-empty{background:var(--color-bg-page)!important}:root[data-theme=dark] .sa-empty__desc{color:var(--color-text-secondary)!important}:root[data-theme=dark] .sa-empty__search-input{background:#0f172adb!important;border-color:#7dd3fc42!important;color:var(--color-text-primary)!important;box-shadow:0 18px 42px #00000042,inset 0 1px #ffffff0a!important}:root[data-theme=dark] .sa-empty__search-input::placeholder{color:#a8bfd2c2}:root[data-theme=dark] .sa-empty__search-input:hover{border-color:#7dd3fc57!important;box-shadow:0 20px 46px #0000004d,inset 0 1px #ffffff0d!important}:root[data-theme=dark] .sa-empty__search-input:focus{border-color:#38bdf8ad!important;box-shadow:0 0 0 4px #38bdf824,0 22px 48px #00000052!important}:root[data-theme=dark] .sa-empty__search-icon{color:var(--color-text-muted)}:root[data-theme=dark] .sa-empty__search-wrap:focus-within .sa-empty__search-icon{color:var(--color-primary-700)}:root[data-theme=dark] .sa-empty__search-btn{background:linear-gradient(135deg,#0ea5e9,#14b8a6)!important;border:1px solid rgba(125,211,252,.22)!important;box-shadow:0 12px 26px #0ea5e92e!important}:root[data-theme=dark] .sa-empty__search-btn:hover:not(:disabled){background:linear-gradient(135deg,#38bdf8,#2dd4bf)!important;box-shadow:0 16px 32px #0ea5e93d!important}:root[data-theme=dark] .sa-empty__search-btn:disabled{background:#94a3b829!important;border-color:#94a3b838!important;color:#e2e8f094!important;box-shadow:none!important}:root[data-theme=dark] .sa-empty__helper,:root[data-theme=dark] .sa-empty__results{background:#0f172af5!important;border-color:var(--color-border-subtle)!important;color:var(--color-text-secondary)!important;box-shadow:0 20px 44px #00000057!important}:root[data-theme=dark] .sa-empty__helper--error{background:#fb71851f;border-color:#fb718552;color:#fecdd3}:root[data-theme=dark] .sa-empty__result-item{background:#111c31e0!important;border-color:var(--color-border-subtle)!important;box-shadow:none!important}:root[data-theme=dark] .sa-empty__result-item:hover{background:var(--color-bg-hover);border-color:var(--color-border-strong);box-shadow:0 12px 26px #0ea5e91f}:root[data-theme=dark] .sa-empty__result-item strong{color:var(--color-text-primary)}:root[data-theme=dark] .sa-empty__result-item span{color:var(--color-text-secondary)}:root[data-theme=dark] .sa-empty__result-more,:root[data-theme=dark] .sa-empty__browse-btn{color:var(--color-primary-700)}:root[data-theme=dark] .sa-empty__result-more{background:#38bdf814!important;border-color:#7dd3fc47!important}:root[data-theme=dark] .sa-empty__result-more:hover,:root[data-theme=dark] .sa-empty__browse-btn:hover{background:#38bdf824!important}:root[data-theme=dark] .sa-empty__suggestion-title{color:var(--color-text-secondary)}:root[data-theme=dark] .sa-empty__suggestion-title svg{color:var(--color-primary-700)}:root[data-theme=dark] .sa-empty__suggestion-title--hot svg{color:#fbbf24}:root[data-theme=dark] .sa-empty__tag{background:#0f172abd!important;border-color:#7dd3fc2e!important;color:#dbeafe!important;box-shadow:inset 0 1px #ffffff0a!important}:root[data-theme=dark] .sa-empty__tag:hover{background:#38bdf81f!important;border-color:#7dd3fc57!important;color:#e0f2fe!important;transform:translateY(-1px)}:root[data-theme=dark] .sa-empty__tag--hot{background:#f59e0b29!important;border-color:#fbbf2461!important;color:#fcd34d!important}:root[data-theme=dark] .sa-empty__tag--trending{background:#2dd4bf21!important;border-color:#5eead447!important;color:#99f6e4!important}:root[data-theme=dark] .sa-empty__tag-empty{color:var(--color-text-muted)}.sa-roadmap__column{background:var(--color-bg-card)!important;border-color:var(--color-border-subtle)!important}.sa-roadmap__column-title{color:var(--color-text-primary)!important}.sa-roadmap__skill{background:var(--color-bg-subtle)!important;border-color:var(--color-border-subtle)!important;color:var(--color-text-secondary)!important}.sa-roadmap__skill--highlight{background:var(--color-bg-active)!important;border-color:var(--color-border-strong)!important;color:var(--color-text-brand)!important}.sa-roadmap__percent{background:var(--color-bg-subtle)!important;color:var(--color-text-muted)!important}.sa-roadmap__percent--highlight{background:var(--color-bg-active)!important;color:var(--color-text-brand)!important}.sa-kg__toggle{background:var(--color-bg-subtle)!important;border-color:var(--color-border-strong)!important}.sa-kg__toggle button{color:var(--color-text-secondary)!important}.sa-kg__toggle button.sa-kg__toggle--active{background:linear-gradient(180deg,#0ea5e929,#2dd4bf1a)!important;border-color:#7dd3fc6b!important;color:var(--color-primary-700)!important;box-shadow:0 0 0 1px #7dd3fc1a,0 10px 24px #0ea5e91f}:root[data-theme=dark] .sa-kg__toggle{background:#0f172aa3!important;box-shadow:inset 0 1px #ffffff0a}:root[data-theme=dark] .sa-kg__toggle button:hover{background:#38bdf81f!important;border-color:#7dd3fc47!important;color:#bfdbfe!important}:root[data-theme=dark] .sa-kg__toggle button.sa-kg__toggle--active{color:#e0f2fe!important}.sa-hero{background:var(--color-bg-card)!important;border-color:var(--color-border-subtle)!important}.sa-hero__badge--hot{background:#f0446126!important;color:var(--color-danger)!important}.sa-hero__badge--stable{background:var(--color-bg-subtle)!important;border-color:var(--color-border-subtle)!important;color:var(--color-text-secondary)!important}.sa-hero__highlight{background:var(--color-bg-active)!important;border-color:var(--color-border-strong)!important;color:var(--color-text-brand)!important}.sa-hero__score{background:var(--color-bg-subtle)!important;border-color:var(--color-border-subtle)!important}.sa-hero__score-label{color:var(--color-text-muted)!important}.sa-hero__score-value{color:var(--color-text-brand)!important}.sa-hero__score-value span{color:var(--color-text-muted)!important}.sa-hero__insight{background:var(--color-bg-subtle)!important;border-color:var(--color-border-subtle)!important}.sa-hero__insight-label{color:var(--color-text-muted)!important}.sa-hero__insight-value{color:var(--color-text-primary)!important}.sa-hero__action-box{background:var(--color-bg-subtle)!important;border-color:var(--color-border-subtle)!important}.sa-hero__action-icon{background:var(--color-bg-active)!important;color:var(--color-text-brand)!important}.sa-hero__action-title{color:var(--color-text-primary)!important}.sa-hero__action-items{color:var(--color-text-secondary)!important}.sa-hero__action-items strong{color:var(--color-text-primary)!important}.sa-hero__desc{color:var(--color-text-secondary)!important}@media(max-width:720px){.sa-kg__content{grid-template-columns:1fr}.sa-kg__graph{min-height:300px;height:320px}}.ajp__title-row{display:inline-flex;align-items:center;gap:8px}.ajp__count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;padding:1px 7px;background:#edf2ff;color:#3b5bdb;font-size:12px;font-weight:700;border-radius:999px;line-height:1.5}:root[data-theme=dark] .ajp__count-badge{background:#3b5bdb2e;color:#748ffc}.ajp__table-wrap{max-height:440px}.ajp__title{font-weight:600;color:var(--color-text-primary, #212529);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.ajp__subtitle{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--color-text-secondary, #868E96);margin-top:2px}.ajp__badge{font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px;background:#f1f3f5;color:#495057}:root[data-theme=dark] .ajp__badge{background:#ffffff14;color:var(--color-text-secondary, #868E96)}.ajp__location{display:inline-flex;align-items:center;gap:3px;font-size:12px;color:var(--color-text-secondary, #868E96)}.ajp__clicks{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:var(--color-text-primary, #495057)}.ajp__clicks--zero{color:var(--color-text-secondary, #ADB5BD)}.ajp__view-btn{display:inline-flex;align-items:center;gap:2px;font-size:12px;font-weight:600;color:#3b5bdb;text-decoration:none;padding:3px 10px;border-radius:6px;background:#edf2ff;transition:background .15s,color .15s;white-space:nowrap}.ajp__view-btn:hover{background:#dbe4ff;color:#2f4ac0}:root[data-theme=dark] .ajp__view-btn{background:#3b5bdb2e;color:#748ffc}:root[data-theme=dark] .ajp__view-btn:hover{background:#3b5bdb47}.ajp__view-btn--disabled{color:var(--color-text-secondary, #ADB5BD);background:transparent;cursor:default}.ajp__action-cell{display:flex;flex-direction:column;align-items:center;gap:6px}.ajp__fit-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:12px;font-weight:600;color:#fff;padding:4px 10px;border:none;border-radius:6px;background:var(--color-primary-600);cursor:pointer;white-space:nowrap;transition:background .15s,opacity .15s}.ajp__fit-btn:hover{background:var(--color-primary-700)}.ajp__fit-btn:disabled{opacity:.6;cursor:default}.ajp__table-wrap .db-summary__table th{padding-top:4px;padding-bottom:10px}:root[data-theme=dark] .ajp__table-wrap .db-summary__table th{color:#fff;font-size:13px;font-weight:700;border-bottom-color:var(--color-border-subtle, rgba(255, 255, 255, .08));background:var(--color-bg-card)}:root[data-theme=dark] .ajp__table-wrap .db-summary__table td{color:var(--color-text-primary, #e5e7eb);border-bottom-color:var(--color-border-subtle, rgba(255, 255, 255, .06))}:root[data-theme=dark] .ajp__table-wrap .db-summary__table tbody tr:hover{background:#ffffff0a}.ajp__pagination{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px;margin-top:12px;padding-top:10px;border-top:1px solid var(--color-border-subtle, #F1F3F5)}.ajp__page-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--color-border-subtle, #E9ECEF);border-radius:6px;background:var(--color-bg-card, #fff);color:var(--color-text-secondary, #868E96);cursor:pointer;transition:border-color .15s,background .15s}.ajp__page-btn:hover:not(:disabled){border-color:#3b5bdb;color:#3b5bdb}.ajp__page-btn:disabled{opacity:.35;cursor:default}.ajp__page-num{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 6px;border:1px solid var(--color-border-subtle, #E9ECEF);border-radius:6px;background:var(--color-bg-card, #fff);color:var(--color-text-secondary, #868E96);font-size:12px;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.ajp__page-num:hover{border-color:#3b5bdb;color:#3b5bdb}.ajp__page-num--active,.ajp__page-num--active:hover{background:#3b5bdb;border-color:#3b5bdb;color:#fff;cursor:default}.ajp__page-ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:28px;color:var(--color-text-secondary, #868E96);font-size:13px}@media(max-width:768px){.ajp__title{max-width:140px}}.sa-actions{background:#fff;border-radius:12px;border:1px solid #E9ECEF;box-shadow:0 1px 3px #0000000f;padding:20px;display:flex;flex-direction:column;container-type:inline-size;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.sa-actions:hover{border-color:#38bdf852;box-shadow:0 14px 34px #0f172a1a;transform:translateY(-2px)}.sa-actions__title{font-size:16px;font-weight:700;color:#212529;margin-bottom:16px}.sa-actions__list{flex:1;display:flex;flex-direction:column;gap:12px}.sa-actions__card{display:flex;gap:12px;align-items:flex-start;padding:16px 14px;border-radius:10px;border:1px solid #E9ECEF}.sa-actions__card--primary{background:#edf2ff80;border-color:#dbe4ff}.sa-actions__card--teal{background:#e6fcf580;border-color:#96f2d7}.sa-actions__card--amber{background:#fff9db80;border-color:#ffe066}.sa-actions__card-icon{padding:8px;border-radius:8px;flex-shrink:0;margin-top:2px}.sa-actions__card-icon--primary{background:#dbe4ff;color:#3b5bdb}.sa-actions__card-icon--teal{background:#c3fae8;color:#0b7285}.sa-actions__card-icon--amber{background:#ffe066;color:#e67700}.sa-actions__card-body{flex:1;min-width:0}.sa-actions__card h4{font-size:12.5px;font-weight:700;line-height:1.35;color:#212529;margin-bottom:4px;letter-spacing:0}.sa-actions__card p{font-size:12px;color:#495057;line-height:1.5}.sa-actions__card strong{color:#212529}.sa-actions,.sa-actions__card{background:var(--color-bg-card)!important;border-color:var(--color-border-subtle)!important;color:var(--color-text-primary)!important}.sa-actions__title,.sa-actions__card h4,.sa-actions__card strong{color:var(--color-text-primary)!important}.sa-actions__card p{color:var(--color-text-secondary)!important}.sa-actions__card--primary,.sa-actions__card--teal,.sa-actions__card--amber{background:var(--color-bg-subtle)!important}@container (min-width: 640px){.sa-actions__card h4{white-space:nowrap}}@media(max-width:720px){.sa-actions__card{flex-direction:column;gap:12px}}.sa-page{max-width:100%;box-sizing:border-box}.sa-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:12px}.sa-header__left h1{font-size:24px;font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em}.sa-header__left p{font-size:13px;color:#868e96;margin-top:4px}.sa-header__actions{display:flex;align-items:center;gap:8px}.sa-header__divider{width:1px;height:24px;background:#dee2e6;margin:0 4px}.sa-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-bg-card);border:1px solid #e9ecef;border-radius:8px;color:#868e96;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease;box-shadow:0 1px 2px #0000000a}.sa-icon-btn:hover{border-color:#3b5bdb;color:#3b5bdb}.sa-icon-btn--active{border-color:#3b5bdb;color:#3b5bdb;background:#edf2ff;box-shadow:0 2px 8px #3b5bdb29}.sa-icon-btn--active:hover{background:#e0e7ff}.sa-action-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--color-bg-card);border:1px solid #e9ecef;border-radius:8px;font-size:13px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease;box-shadow:0 1px 2px #0000000a}.sa-action-btn:hover{border-color:#3b5bdb;background:var(--color-bg-hover)}.sa-action-btn--primary{background:#3b5bdb;color:#fff;border-color:#3b5bdb;box-shadow:0 2px 8px #3b5bdb40}.sa-action-btn--primary:hover{background:#364fc7}.sa-breadcrumb{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:#868e96;margin-bottom:16px}.sa-breadcrumb span{cursor:pointer;transition:color .2s}.sa-breadcrumb span:hover{color:#3b5bdb}.sa-breadcrumb .job-profile-link:hover{text-decoration:none}.sa-breadcrumb__current{color:#3b5bdb!important;font-weight:700;background:#edf2ff;padding:2px 8px;border-radius:4px}.sa-sticky-bar{position:sticky;top:0;z-index:20;background:var(--surface-glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #e9ecef;box-shadow:0 1px 3px #0000000a;padding:16px 20px 0;border:1px solid #e9ecef;border-radius:12px;display:flex;flex-direction:column;align-items:stretch;gap:12px;margin-bottom:16px}.sa-sticky-bar__top{display:flex;align-items:center;justify-content:space-between;gap:20px}.sa-sticky-bar__search{flex:1;max-width:480px;position:relative}.sa-sticky-bar__search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#adb5bd}.sa-sticky-bar__search-input{width:100%;padding:8px 16px 8px 40px;background:var(--color-bg-input);border:1px solid #bac8ff;border-radius:8px;font-size:13px;font-weight:700;color:#3b5bdb;outline:none;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.sa-sticky-bar__search-input:focus{border-color:#3b5bdb;box-shadow:0 0 0 3px #3b5bdb26}.sa-sticky-bar__results{position:absolute;top:calc(100% + 8px);left:0;right:0;display:flex;flex-direction:column;gap:8px;max-height:320px;overflow-y:auto;background:var(--color-bg-card);border:1px solid #e9ecef;border-radius:12px;box-shadow:0 12px 32px #0000001f;padding:10px;z-index:25}.sa-sticky-bar__result-item{display:flex;flex-direction:column;gap:4px;padding:10px 12px;text-align:left;background:var(--color-bg-card);border:1px solid transparent;border-radius:10px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.sa-sticky-bar__result-item:hover{background:var(--color-bg-hover);border-color:var(--color-border-strong);text-decoration:none}.sa-sticky-bar__result-item strong{font-size:13px;color:var(--color-text-primary)}.sa-sticky-bar__result-item span{font-size:12px;color:#868e96}.sa-sticky-bar__result-more{margin-top:4px;padding:10px 12px;background:#63b3ed14;border:1px dashed rgba(99,179,237,.4);border-radius:10px;color:#2c6da3;font-size:13px;font-weight:600;cursor:pointer;text-align:center;transition:background .15s,border-color .15s}.sa-sticky-bar__result-more:hover{background:#63b3ed29;border-color:#63b3edb3;border-style:solid}.sa-sticky-bar__result-empty{padding:12px;text-align:left;font-size:12px;color:#868e96}.sa-sticky-bar__filters{display:flex;gap:8px}.sa-anchor-nav{display:flex;gap:4px;border-bottom:1px solid #e9ecef;padding-bottom:0;margin-bottom:24px}.sa-anchor-nav__item{padding:10px 16px;font-size:13px;font-weight:500;color:#868e96;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.sa-anchor-nav__item:hover{color:var(--color-text-primary)}.sa-anchor-nav__item--active{color:#3b5bdb;border-bottom-color:#3b5bdb}.sa-content{display:flex;flex-direction:column;gap:24px}.sa-kpi-grid{display:flex;width:100%;gap:16px;margin-top:20px;overflow:visible}.sa-row{display:grid;gap:20px}.sa-row--3-1{grid-template-columns:2fr 1fr}.sa-row--2{grid-template-columns:1fr 1fr}.sa-card{background:var(--color-bg-card);border-radius:12px;border:1px solid #e9ecef;box-shadow:0 1px 3px #0000000f;padding:20px 20px 32px;min-width:0;overflow:hidden}.sa-card__header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px;margin-bottom:20px}.sa-card__header h3{font-size:16px;font-weight:700;color:var(--color-text-primary)}.sa-card__header p{font-size:12px;color:#868e96;margin-top:2px}.sa-card__solo-title{font-size:16px;font-weight:700;color:var(--color-text-primary);margin-bottom:16px}.sa-card__legend{display:flex;flex-wrap:wrap;gap:8px 12px;font-size:12px;font-weight:600;max-width:100%}.sa-legend-item{display:flex;align-items:center;gap:6px;color:var(--color-text-secondary)}.sa-legend-line{display:inline-block;width:12px;height:3px;border-radius:2px}.sa-legend-line--solid{background:#3b5bdb}.sa-legend-line--dashed{background:none;border-top:2px dashed #adb5bd;height:0}.sa-legend-dot{display:inline-block;width:12px;height:4px;border-radius:2px}.sa-trend-chart{position:relative;height:240px;width:100%;margin-top:12px}.sa-skill-trend-chart{position:relative;height:220px;width:100%}.sa-skill-level-trend-chart{min-height:280px;width:100%}.sa-demand-trend-card{display:flex;flex-direction:column}.sa-demand-trend-card__content{flex:1;min-height:360px;display:flex;min-width:0}.sa-demand-trend-chart{flex:1;min-height:360px}.sa-trend-svg{width:100%;height:100%;overflow:visible}.sa-trend-tooltip{position:absolute;top:20px;left:64%;background:#212529;color:#fff;padding:10px 12px;border-radius:8px;box-shadow:0 4px 12px #0003;border:1px solid #495057;font-size:12px;z-index:10;width:140px}.sa-trend-tooltip__title{font-weight:700;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid #495057}.sa-trend-tooltip__row{display:flex;justify-content:space-between;gap:8px;margin-bottom:2px}.sa-trend-tooltip__row--muted{color:#adb5bd}.sa-trend-tooltip__label{color:#bac8ff}.sa-trend-tooltip__row strong{color:#fff}.sa-trend-xaxis{display:flex;justify-content:space-between;font-size:12px;color:#868e96;margin-top:8px;padding:0 4px}.sa-detail-table-wrap{flex:1;overflow-x:auto}.sa-detail-table-wrap--compact{max-height:280px;overflow-y:auto}.sa-detail-table-wrap--large{flex:1}.sa-detail-table{width:100%;text-align:left;font-size:12px;border-collapse:collapse}.sa-detail-table th{padding:10px 0;font-weight:600;color:#868e96;border-bottom:1px solid #e9ecef;position:sticky;top:0;background:var(--color-bg-card);z-index:2}.sa-detail-table td{padding:12px 0;color:var(--color-text-secondary);border-bottom:1px solid #f1f3f5}.sa-detail-table__name{font-weight:700;color:var(--color-text-primary)}.sa-detail-table__name-inner{display:flex;align-items:center;gap:6px}.sa-detail-table__hot-icon{color:#20c997}.sa-priority{display:inline-block;padding:2px 8px;border-radius:4px;font-size:10px;font-weight:700;border:1px solid}.sa-priority--very-high{background:#fff5f5;color:#e03131;border-color:#ffc9c9}.sa-priority--high{background:#fff9db;color:#e67700;border-color:#ffe066}.sa-priority--medium{background:#f1f3f5;color:var(--color-text-secondary);border-color:#dee2e6}.sa-market-table-wrap{overflow:hidden;border-radius:8px;border:1px solid var(--color-border-subtle)}.sa-market-table{width:100%;text-align:left;font-size:13px;border-collapse:collapse;table-layout:fixed}.sa-market-table thead{background:var(--color-bg-subtle)}.sa-market-table th{padding:10px 16px;font-weight:600;color:var(--color-text-secondary)}.sa-market-table td{padding:10px 16px;border-bottom:1px solid #f1f3f5;font-size:12px}.sa-market-table th:nth-child(1),.sa-market-table td:nth-child(1){width:25%}.sa-market-table th:nth-child(2),.sa-market-table td:nth-child(2){width:35%}.sa-market-table th:nth-child(3),.sa-market-table td:nth-child(3){width:40%;padding-left:11px}.sa-market-table__label{font-weight:500;color:var(--color-text-secondary)}.sa-market-table__value{font-weight:700;color:var(--color-text-primary);overflow-wrap:anywhere}.sa-val--primary{color:#3b5bdb!important}.sa-val--teal{color:#0b7285!important}.sa-market-table__note{color:var(--color-text-secondary)}.sa-footer{margin-top:24px;padding-top:16px;border-top:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#adb5bd}.sa-footer__left{display:flex;align-items:center;gap:12px}.sa-footer strong{color:#868e96}.text-right{text-align:right}.text-center{text-align:center}.text-primary{color:#3b5bdb}.text-teal{color:#0b7285}.text-muted{color:#868e96}.font-bold{font-weight:700}.font-medium{font-weight:500}@media(max-width:1200px){.sa-kpi-grid{flex-wrap:wrap;overflow:visible}.sa-kpi-grid .db-kpi{flex:1 1 calc(50% - 16px)}.sa-row--3-1,.sa-row--2{grid-template-columns:1fr}}@media(max-width:900px){.sa-sticky-bar__filters{flex-direction:column;align-items:stretch;gap:12px}.sa-header{flex-direction:column;align-items:flex-start;gap:16px}.sa-sticky-bar__top{flex-direction:column;align-items:stretch}}@media(max-width:600px){.sa-kpi-grid .db-kpi{flex:1 1 100%}.sa-anchor-nav{overflow-x:auto;padding-bottom:4px}.sa-anchor-nav__item{white-space:nowrap}}.sa-header,.sa-sticky-bar,.sa-card,.sa-breadcrumb,.db-modal{background:var(--color-bg-card);border-color:#7da6c42e;box-shadow:var(--shadow-md)}.sa-header{padding:24px;border-radius:12px;margin-bottom:18px}.sa-header__left h1{color:var(--color-text-primary)}.sa-header__left p,.sa-footer,.text-muted{color:var(--color-text-secondary)}.sa-icon-btn,.sa-action-btn{border-color:#7da6c42e;background:var(--color-bg-card);box-shadow:var(--shadow-sm)}.sa-icon-btn:hover,.sa-action-btn:hover{border-color:#38bdf847;color:var(--color-primary-700);background:var(--color-bg-hover)}.sa-action-btn--primary{background:#0ea5e9;border-color:transparent;color:#fff;box-shadow:0 12px 24px #0ea5e929}.sa-breadcrumb{padding:12px 16px;border-radius:12px}.sa-breadcrumb__current,.sa-anchor-nav__item--active,.text-primary{color:var(--color-primary-700)!important}.sa-breadcrumb__current{background:var(--color-bg-active)}.sa-sticky-bar{background:var(--color-bg-card);border-color:#7da6c429;box-shadow:var(--shadow-sm)}.sa-sticky-bar__search-input{background:var(--color-bg-card);border-color:#38bdf838;color:var(--color-primary-700)}.sa-sticky-bar__search-input:focus{border-color:#38bdf852;box-shadow:0 0 0 4px #38bdf81f}.sa-sticky-bar__results{border-color:#7da6c42e;border-radius:18px;box-shadow:var(--shadow-md)}.sa-sticky-bar__result-item:hover{background:var(--color-bg-hover);border-color:#38bdf82e}.sa-sticky-bar__results,.sa-sticky-bar__result-item,.sa-market-table-wrap,.sa-detail-table th,.sa-detail-table td,.sa-market-table thead,.sa-market-table td,.sa-market-table th,.sa-priority--medium{background:var(--color-bg-card);border-color:var(--color-border-subtle);color:var(--color-text-primary)}.sa-detail-table tbody tr:hover{background:var(--color-bg-hover)}.db-modal-overlay{background:#0f172a3d;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@media(max-width:720px){.sa-header{padding:18px 14px;border-radius:18px}.sa-header__left h1{font-size:21px;padding-right:0}.sa-header__actions,.sa-card__header,.sa-card__legend,.sa-footer{flex-wrap:wrap;width:100%}.sa-sticky-bar{position:static;margin-left:0;margin-right:0;padding:12px;border:1px solid var(--color-border);border-radius:16px}.sa-kpi-grid .db-kpi{flex:1 1 100%}.sa-card{padding:16px;border-radius:16px}.sa-trend-chart,.sa-skill-trend-chart{min-width:min(520px,calc(100vw - 64px))}.sa-card:has(.sa-trend-chart),.sa-card:has(.sa-skill-trend-chart),.sa-detail-table-wrap,.sa-market-table-wrap{overflow-x:auto}.sa-detail-table,.sa-market-table{min-width:560px}}/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Manrope", "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-200:oklch(88.5% .062 18.334);--color-red-700:oklch(50.5% .213 27.518);--color-orange-50:oklch(98% .016 73.684);--color-orange-200:oklch(90.1% .076 70.697);--color-orange-700:oklch(55.3% .195 38.402);--color-green-50:oklch(98.2% .018 155.826);--color-green-200:oklch(92.5% .084 155.995);--color-green-700:oklch(52.7% .154 150.069);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-100:oklch(95.1% .026 236.824);--color-sky-700:oklch(50% .134 242.749);--color-blue-50:oklch(97% .014 254.604);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-700:oklch(48.8% .243 264.376);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-200:oklch(90.2% .063 306.703);--color-purple-700:oklch(49.6% .265 301.924);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-600:oklch(44.6% .03 256.802);--color-white:#fff;--spacing:.25rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-wider:.05em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:#38bdf8;--color-primary-50:#f0f9ff;--color-primary-100:#e0f2fe;--color-primary-200:#bae6fd;--color-primary-600:#0ea5e9;--color-primary-700:#0284c7;--color-accent:#2dd4bf;--color-surface:#fff;--color-surface-soft:#f1f5f9;--color-surface-muted:#eef7fb;--color-border:#dbeaf2;--color-border-strong:#bfd8e5;--color-text-primary:#163042;--color-text-secondary:#517085;--color-text-muted:#7b97a8;--color-success:#0f9d7a;--color-danger:#f04461}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.right-3{right:calc(var(--spacing) * 3)}.left-3{left:calc(var(--spacing) * 3)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-8{height:calc(var(--spacing) * 8)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-full{height:100%}.min-h-\[32px\]{min-height:32px}.min-h-\[42px\]{min-height:42px}.min-h-\[48px\]{min-height:48px}.min-h-\[200px\]{min-height:200px}.w-8{width:calc(var(--spacing) * 8)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-full{width:100%}.max-w-7xl{max-width:var(--container-7xl)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-shrink-0,.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-move{cursor:move}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[\#16a34a\]\/30{border-color:#16a34a4d}.border-\[var\(--color-border-subtle\)\]{border-color:var(--color-border-subtle)}.border-\[var\(--color-danger\)\]\/30{border-color:#f044614d}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--color-danger\)\]\/30{border-color:color-mix(in oklab,var(--color-danger) 30%,transparent)}}.border-\[var\(--color-primary-600\)\]{border-color:var(--color-primary-600)}.border-\[var\(--color-primary-600\)\]\/20{border-color:#0ea5e933}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--color-primary-600\)\]\/20{border-color:color-mix(in oklab,var(--color-primary-600) 20%,transparent)}}.border-\[var\(--color-primary-600\)\]\/30{border-color:#0ea5e94d}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--color-primary-600\)\]\/30{border-color:color-mix(in oklab,var(--color-primary-600) 30%,transparent)}}.border-blue-200{border-color:var(--color-blue-200)}.border-border{border-color:var(--color-border)}.border-gray-200{border-color:var(--color-gray-200)}.border-green-200{border-color:var(--color-green-200)}.border-orange-200{border-color:var(--color-orange-200)}.border-primary{border-color:var(--color-primary)}.border-purple-200{border-color:var(--color-purple-200)}.border-red-200{border-color:var(--color-red-200)}.border-sky-100{border-color:var(--color-sky-100)}.border-transparent{border-color:#0000}.bg-\[\#16a34a\]\/10{background-color:#16a34a1a}.bg-\[var\(--color-bg-card\)\]{background-color:var(--color-bg-card)}.bg-\[var\(--color-bg-input\)\]{background-color:var(--color-bg-input)}.bg-\[var\(--color-danger\)\]\/10{background-color:#f044611a}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--color-danger\)\]\/10{background-color:color-mix(in oklab,var(--color-danger) 10%,transparent)}}.bg-\[var\(--color-primary-50\)\]{background-color:var(--color-primary-50)}.bg-\[var\(--color-primary-100\)\]{background-color:var(--color-primary-100)}.bg-\[var\(--color-primary-600\)\]{background-color:var(--color-primary-600)}.bg-\[var\(--color-primary-600\)\]\/5{background-color:#0ea5e90d}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--color-primary-600\)\]\/5{background-color:color-mix(in oklab,var(--color-primary-600) 5%,transparent)}}.bg-\[var\(--color-success\)\]\/15{background-color:#0f9d7a26}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--color-success\)\]\/15{background-color:color-mix(in oklab,var(--color-success) 15%,transparent)}}.bg-\[var\(--color-surface-muted\)\]{background-color:var(--color-surface-muted)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-green-50{background-color:var(--color-green-50)}.bg-orange-50{background-color:var(--color-orange-50)}.bg-purple-50{background-color:var(--color-purple-50)}.bg-red-50{background-color:var(--color-red-50)}.bg-sky-50{background-color:var(--color-sky-50)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/80{background-color:#fffc}@supports (color:color-mix(in lab,red,red)){.bg-white\/80{background-color:color-mix(in oklab,var(--color-white) 80%,transparent)}}.p-1{padding:calc(var(--spacing) * 1)}.p-4{padding:calc(var(--spacing) * 4)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pl-10{padding-left:calc(var(--spacing) * 10)}.text-center{text-align:center}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-\[\#16a34a\]{color:#16a34a}.text-\[var\(--color-danger\)\]{color:var(--color-danger)}.text-\[var\(--color-primary-600\)\]{color:var(--color-primary-600)}.text-\[var\(--color-primary-700\)\]{color:var(--color-primary-700)}.text-\[var\(--color-success\)\]{color:var(--color-success)}.text-\[var\(--color-text-brand\)\]{color:var(--color-text-brand)}.text-\[var\(--color-text-muted\)\]{color:var(--color-text-muted)}.text-\[var\(--color-text-primary\)\]{color:var(--color-text-primary)}.text-\[var\(--color-text-secondary\)\]{color:var(--color-text-secondary)}.text-blue-700{color:var(--color-blue-700)}.text-current{color:currentColor}.text-gray-600{color:var(--color-gray-600)}.text-green-700{color:var(--color-green-700)}.text-orange-700{color:var(--color-orange-700)}.text-primary{color:var(--color-primary)}.text-purple-700{color:var(--color-purple-700)}.text-red-700{color:var(--color-red-700)}.text-sky-700{color:var(--color-sky-700)}.text-success{color:var(--color-success)}.text-text-muted{color:var(--color-text-muted)}.text-text-primary{color:var(--color-text-primary)}.text-text-secondary{color:var(--color-text-secondary)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_12px_24px_rgba\(14\,165\,233\,0\.16\)\]{--tw-shadow:0 12px 24px var(--tw-shadow-color,#0ea5e929);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow-sm\)\]{--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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,)}.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,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media(hover:hover){.group-hover\:text-\[var\(--color-primary-600\)\]:is(:where(.group):hover *){color:var(--color-primary-600)}}.placeholder\:text-\[var\(--color-text-muted\)\]::placeholder{color:var(--color-text-muted)}@media(hover:hover){.hover\:border-\[var\(--color-primary-600\)\]:hover{border-color:var(--color-primary-600)}.hover\:border-\[var\(--color-text-muted\)\]:hover{border-color:var(--color-text-muted)}.hover\:border-border:hover{border-color:var(--color-border)}.hover\:bg-\[var\(--color-bg-hover\)\]:hover{background-color:var(--color-bg-hover)}.hover\:bg-\[var\(--color-primary-700\)\]:hover{background-color:var(--color-primary-700)}.hover\:text-\[var\(--color-text-secondary\)\]:hover{color:var(--color-text-secondary)}.hover\:text-text-primary:hover{color:var(--color-text-primary)}.hover\:opacity-70:hover{opacity:.7}.hover\:shadow-\[0_16px_28px_rgba\(14\,165\,233\,0\.2\)\]:hover{--tw-shadow:0 16px 28px var(--tw-shadow-color,#0ea5e933);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-\[var\(--color-primary-600\)\]:focus{border-color:var(--color-primary-600)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-\[var\(--color-primary-600\)\]\/20:focus{--tw-ring-color:#0ea5e933}@supports (color:color-mix(in lab,red,red)){.focus\:ring-\[var\(--color-primary-600\)\]\/20:focus{--tw-ring-color:color-mix(in oklab, var(--color-primary-600) 20%, transparent)}}.focus\:ring-\[var\(--color-primary-600\)\]\/30:focus{--tw-ring-color:#0ea5e94d}@supports (color:color-mix(in lab,red,red)){.focus\:ring-\[var\(--color-primary-600\)\]\/30:focus{--tw-ring-color:color-mix(in oklab, var(--color-primary-600) 30%, transparent)}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}}@media(min-width:64rem){.lg\:absolute{position:absolute}.lg\:inset-0{inset:calc(var(--spacing) * 0)}.lg\:block{display:block}.lg\:grid-cols-\[1\.3fr_1fr\]{grid-template-columns:1.3fr 1fr}.lg\:overflow-y-auto{overflow-y:auto}}@media(prefers-color-scheme:dark){.dark\:bg-\[var\(--color-bg-card\)\]{background-color:var(--color-bg-card)}.dark\:bg-\[var\(--color-primary-900\)\]\/10{background-color:var(--color-primary-900)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-\[var\(--color-primary-900\)\]\/10{background-color:color-mix(in oklab,var(--color-primary-900) 10%,transparent)}}.dark\:bg-\[var\(--color-primary-900\)\]\/20{background-color:var(--color-primary-900)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-\[var\(--color-primary-900\)\]\/20{background-color:color-mix(in oklab,var(--color-primary-900) 20%,transparent)}}.dark\:bg-transparent{background-color:#0000}.dark\:text-\[\#4ade80\]{color:#4ade80}.dark\:text-\[var\(--color-primary-300\)\]{color:var(--color-primary-300)}}}:root{--color-primary:#38bdf8;--color-primary-50:#f0f9ff;--color-primary-100:#e0f2fe;--color-primary-200:#bae6fd;--color-primary-600:#0ea5e9;--color-primary-700:#0284c7;--color-accent:#2dd4bf;--color-accent-soft:#ccfbf1;--color-surface:#fff;--color-surface-soft:#f1f5f9;--color-surface-muted:#eef7fb;--color-border:#dbeaf2;--color-border-strong:#bfd8e5;--color-text-primary:#163042;--color-text-secondary:#517085;--color-text-muted:#7b97a8;--color-success:#0f9d7a;--color-danger:#f04461;--shadow-sm:0 10px 24px #7b97a814;--shadow-md:0 18px 38px #7b97a81f;--shadow-lg:0 24px 60px #6796b529;--surface-glass:#ffffffc7;--color-text-brand:#0284c7;--color-bg-page:var(--color-surface-soft);--color-bg-card:var(--color-surface);--color-bg-input:var(--surface-glass);--color-bg-hover:#38bdf80f;--color-bg-active:#f0f9fff5;--color-bg-subtle:#f8fcff;--color-border-subtle:#7da6c42e}:root[data-theme=dark]{--color-primary:#38bdf8;--color-primary-50:#082f49;--color-primary-100:#0c4a6e;--color-primary-200:#075985;--color-primary-600:#38bdf8;--color-primary-700:#7dd3fc;--color-accent:#2dd4bf;--color-accent-soft:#2dd4bf24;--color-surface:#0f172a;--color-surface-soft:#111c31;--color-surface-muted:#17243a;--color-border:#94a3b83d;--color-border-strong:#7dd3fc4d;--color-text-primary:#e5f0f8;--color-text-secondary:#a8bfd2;--color-text-muted:#7f99ad;--color-success:#34d399;--color-danger:#fb7185;--shadow-sm:0 10px 24px #0000002e;--shadow-md:0 18px 42px #00000047;--shadow-lg:0 24px 64px #00000057;--surface-glass:#0f172ac7;--color-text-brand:#7dd3fc;--color-bg-page:var(--color-surface);--color-bg-card:var(--color-surface-soft);--color-bg-input:var(--color-surface-muted);--color-bg-hover:#38bdf824;--color-bg-active:#38bdf829;--color-bg-subtle:var(--color-surface-muted);--color-border-subtle:var(--color-border)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden}body{color:var(--color-text-primary);background:var(--color-bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Manrope,Segoe UI,sans-serif;line-height:1.6;transition:background-color .25s,color .25s,border-color .25s;overflow-x:hidden}#root{min-height:100vh}a{color:inherit;text-decoration:none}button,input,textarea,select{font-family:inherit}button{cursor:pointer}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#6b8fa561;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#5279918f}.container{width:100%;max-width:1240px;margin:0 auto;padding:0 24px}.btn{border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 18px;font-size:14px;font-weight:700;line-height:1;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s,color .18s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn-primary,.btn-primary-full{color:#fff;background:#0ea5e9;box-shadow:0 12px 24px #0ea5e929}.btn-primary:hover,.btn-primary-full:hover{background:#0284c7;box-shadow:0 16px 28px #0ea5e933}.btn-primary-full{width:100%}.btn-outline{background:var(--color-bg-card);color:var(--color-text-brand);border-color:var(--color-border-subtle);box-shadow:var(--shadow-sm);transition:all .2s}.btn-outline:hover{background:var(--color-bg-hover)}.btn-social{background:var(--color-bg-card);color:var(--color-text-primary);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-sm);flex:1;transition:all .2s}.btn-social:hover{background:var(--color-bg-hover)}.form-group{margin-bottom:16px}.form-label{color:var(--color-text-primary);margin-bottom:6px;font-size:13px;font-weight:700;display:block}.form-input-wrapper{align-items:center;display:flex;position:relative}.form-input-icon{color:var(--color-text-muted);pointer-events:none;display:inline-flex;position:absolute;left:14px}.form-input{border:1px solid var(--color-border-subtle);background:var(--color-bg-input);width:100%;min-height:46px;color:var(--color-text-primary);border-radius:14px;outline:none;padding:12px 16px 12px 42px;transition:border-color .2s,box-shadow .2s,background-color .2s,color .2s}.form-input::placeholder{color:var(--color-text-muted)}.form-input:focus{background:var(--color-bg-card);border-color:#38bdf85c;box-shadow:0 0 0 4px #38bdf81f}.form-input-action{color:var(--color-text-muted);background:0 0;border:none;padding:0;display:inline-flex;position:absolute;right:14px}.form-input-action:hover{color:var(--color-text-brand)}.card{background:var(--color-bg-card);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-md);border-radius:24px;transition:background-color .25s,border-color .25s,box-shadow .25s}.divider{align-items:center;gap:12px;margin:24px 0;display:flex}.divider-line{background:linear-gradient(90deg,#0000,#7da6c466,#0000);flex:1;height:1px}.divider-text{color:var(--color-text-muted);letter-spacing:.08em;white-space:nowrap;font-size:11px;font-weight:800}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes pulse-dot{0%,to{opacity:.4}50%{opacity:1}}@keyframes ripple{0%{opacity:.4;transform:scale(0)}to{opacity:0;transform:scale(4)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.04)}70%{transform:scale(.98)}to{transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}.animate-fade-in-down{animation:.4s ease-out forwards fadeInDown}.animate-slide-in-left{animation:.35s ease-out forwards slideInLeft}.animate-slide-in-right{animation:.35s ease-out forwards slideInRight}.animate-scale-in{animation:.3s ease-out forwards scaleIn}.animate-bounce-in{animation:.5s ease-out forwards bounceIn}.tab-content-enter{animation:.3s ease-out forwards fadeIn}.btn-press{transition:transform .1s,box-shadow .1s}.btn-press:active{transform:scale(.97)}.btn-ripple{position:relative;overflow:hidden}.btn-ripple .ripple-circle{pointer-events:none;background:#ffffff59;border-radius:50%;width:20px;height:20px;margin-top:-10px;margin-left:-10px;animation:.6s ease-out forwards ripple;position:absolute}.card-hover{transition:transform .2s,box-shadow .2s}.card-hover:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.stagger-children>*{opacity:0;animation:.4s ease-out forwards fadeIn}.stagger-children>:first-child{animation-delay:50ms}.stagger-children>:nth-child(2){animation-delay:.1s}.stagger-children>:nth-child(3){animation-delay:.15s}.stagger-children>:nth-child(4){animation-delay:.2s}.stagger-children>:nth-child(5){animation-delay:.25s}.stagger-children>:nth-child(6){animation-delay:.3s}.stagger-children>:nth-child(7){animation-delay:.35s}.stagger-children>:nth-child(8){animation-delay:.4s}.skeleton{background:linear-gradient(90deg,#dfedf4bf 25%,#ffffffeb,#dfedf4bf 75%) 0 0/200% 100%;border-radius:12px;animation:1.5s infinite shimmer}.theme-toggle{width:44px;height:24px;box-shadow:var(--shadow-sm);cursor:pointer;box-sizing:border-box;background:#e0f2fef2;border:1px solid #38bdf838;border-radius:999px;flex-shrink:0;justify-content:flex-start;align-items:center;padding:2px;transition:background-color .25s,border-color .25s;display:inline-flex}.theme-toggle--dark{background:#0f172af0;border-color:#7dd3fc47}.theme-toggle__thumb{color:#0284c7;box-sizing:border-box;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;transition:transform .25s cubic-bezier(.4,0,.2,1),color .2s,background-color .2s;display:inline-flex;box-shadow:0 2px 4px #0f172a24}.theme-toggle--dark .theme-toggle__thumb{color:#7dd3fc;background:#17243a;transform:translate(20px)}img,svg,canvas,video,table{max-width:100%}@media(max-width:768px){.container{padding-left:16px;padding-right:16px}.btn{min-height:40px;padding-left:14px;padding-right:14px}}@media(max-width:480px){.auth-social-row,.divider{max-width:100%}}.app-section-state{border:1px dashed var(--color-border-subtle);background:var(--color-bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;min-height:120px;padding:18px;transition:all .25s;display:flex}.app-section-state--compact{min-height:76px}.app-section-state__line{height:14px}.app-section-state__title{color:var(--color-text-primary);font-size:14px;font-weight:800}.app-section-state__message{color:var(--color-text-secondary);font-size:13px;line-height:1.55}.app-section-state__action{background:var(--color-bg-hover);color:var(--color-text-brand);cursor:pointer;border:none;border-radius:12px;padding:9px 13px;font-size:12px;font-weight:800;transition:all .2s}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
