.login-page{display:grid;place-items:center;height:100vh;background:var(--color-bg)}.login-card{width:100%;max-width:380px;padding:2.5rem 2rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 24px #0000000f}.login-brand{display:flex;align-items:center;gap:.65rem;margin-bottom:.5rem;justify-content:center}.login-brand h1{font-size:1.35rem;font-weight:700;letter-spacing:-.015em;color:var(--color-text-primary)}.login-bw-logo{display:flex;justify-content:center;margin:.25rem 0 1.25rem}.login-bw-logo-img{width:140px;height:auto;filter:saturate(.85) opacity(.9)}.login-subtitle{text-align:center;color:var(--color-text-secondary);font-size:.85rem;margin-bottom:1.5rem}.login-form{display:flex;flex-direction:column;gap:1rem}.login-label{display:flex;flex-direction:column;gap:.35rem;font-size:.82rem;font-weight:500;color:var(--color-text-secondary)}.login-input{padding:.55rem .75rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:.9rem;outline:none;transition:border-color .15s,box-shadow .15s}.login-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #6366f126}.login-error{color:var(--color-danger);font-size:.82rem;padding:.5rem .75rem;background:#ef444414;border-radius:6px}.login-submit{padding:.6rem 1rem;background:var(--color-accent);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .15s;margin-top:.25rem}.login-submit:hover:not(:disabled){opacity:.9}.login-submit:disabled{opacity:.5;cursor:not-allowed}.login-footer{text-align:center;color:var(--color-text-tertiary);font-size:.75rem;margin-top:1.25rem}.login-session-expired{font-size:.8rem;color:var(--color-text-secondary);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:6px;padding:.5rem .75rem;margin-bottom:.5rem;text-align:center}.ss-container{position:relative;display:inline-flex;flex-direction:column}.ss-trigger{display:flex;align-items:center;justify-content:space-between;gap:.4rem;cursor:pointer;text-align:left;white-space:nowrap;width:100%}.ss-trigger--disabled{opacity:.5;cursor:not-allowed}.ss-trigger--open{border-color:#0f62fe66;box-shadow:0 0 0 3px #0f62fe1f}.ss-trigger-label{flex:1;overflow:hidden;text-overflow:ellipsis}.ss-trigger-label--placeholder{color:var(--color-text-tertiary)}.ss-trigger-chevron{font-size:.7rem;color:var(--color-text-tertiary);transition:transform .15s;flex-shrink:0}.ss-trigger--open .ss-trigger-chevron{transform:rotate(180deg)}.ss-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:100%;width:max-content;max-width:min(360px,90vw);background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 8px 24px #0000001f;z-index:500;overflow:hidden}.ss-search-wrap{padding:.5rem;border-bottom:1px solid var(--color-border)}.ss-search{width:100%;padding:.4rem .6rem;border:1px solid var(--color-border);border-radius:7px;font-size:.85rem;background:var(--color-bg-secondary);color:var(--color-text-primary);outline:none}.ss-search:focus{border-color:#0f62fe66;box-shadow:0 0 0 2px #0f62fe1a}.ss-list{max-height:220px;overflow-y:auto;padding:.3rem 0}.ss-option{display:block;width:100%;padding:.45rem .85rem;text-align:left;font-size:.875rem;color:var(--color-text-primary);background:transparent;border:none;cursor:pointer;transition:background .1s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ss-option:hover{background:var(--color-bg-secondary)}.ss-option--selected{font-weight:600;color:var(--color-accent)}.ss-option--italic{font-style:italic;color:var(--color-text-secondary)}.ss-option--italic.ss-option--selected{color:var(--color-accent)}.ss-empty{padding:.6rem .85rem;font-size:.85rem;color:var(--color-text-tertiary)}.filterbar-actions{display:flex;gap:.75rem;align-items:center}.cc-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:grid;place-items:center;z-index:100}.cc-modal{width:100%;max-width:440px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 8px 32px #0000001f;padding:2rem}.cc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.cc-title{font-size:1.1rem;font-weight:700;color:var(--color-text-primary)}.cc-step-indicator{font-size:.75rem;color:var(--color-text-tertiary)}.cc-desc{font-size:.82rem;color:var(--color-text-secondary);margin-bottom:1.25rem}.cc-form{display:flex;flex-direction:column;gap:1rem}.cc-label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;font-weight:500;color:var(--color-text-secondary)}.cc-input{padding:.5rem .7rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:.88rem;outline:none;transition:border-color .15s,box-shadow .15s}.cc-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #6366f126}.cc-error{color:var(--color-danger);font-size:.82rem;padding:.5rem .75rem;background:#ef444414;border-radius:6px}.cc-preview{font-size:.82rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;padding:.75rem 1rem;display:flex;flex-direction:column;gap:.35rem}.cc-preview-row{display:flex;gap:.5rem}.cc-preview-label{color:var(--color-text-tertiary);min-width:100px}.cc-preview-value{color:var(--color-text-primary);font-weight:500}.cc-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.cc-btn{padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary);transition:opacity .15s}.cc-btn:hover:not(:disabled){opacity:.85}.cc-btn:disabled{opacity:.5;cursor:not-allowed}.cc-btn--primary{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.cc-method-tabs{display:flex;gap:0;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;margin-bottom:1rem}.cc-method-tab{flex:1;padding:.5rem .75rem;font-size:.82rem;font-weight:500;background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;transition:background .15s,color .15s}.cc-method-tab+.cc-method-tab{border-left:1px solid var(--color-border)}.cc-method-tab:hover:not(.is-active){background:var(--color-bg-secondary)}.cc-method-tab.is-active{background:var(--color-accent);color:#fff}.cc-hint{font-size:.75rem;color:var(--color-text-tertiary);margin-top:-.25rem}.cc-optional{font-size:.72rem;font-weight:400;color:var(--color-text-tertiary)}.app-shell{display:flex;height:100vh;overflow:hidden}.app-sidebar{width:200px;flex-shrink:0;background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;padding:1.5rem 1rem;gap:1.5rem;position:sticky;top:0;height:100vh;overflow-y:auto}.app-sidebar-brand{display:flex;align-items:center;gap:.65rem;padding:0 .5rem}.app-sidebar-brand h1{font-size:1.15rem;font-weight:700;letter-spacing:-.015em;color:var(--color-text-primary)}.app-sidebar-brand .brand-icon{width:28px;height:28px;border-radius:8px;background:var(--color-accent);color:#fff;display:grid;place-items:center;font-weight:700;font-size:.85rem}.app-nav{display:flex;flex-direction:column;gap:.35rem}.app-nav-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-tertiary);padding:0 .65rem;margin-bottom:.25rem}.app-nav-item{display:flex;align-items:center;gap:.65rem;padding:.6rem .75rem;border-radius:10px;border:none;background:transparent;color:var(--color-text-secondary);font-size:.92rem;font-weight:500;cursor:pointer;transition:all .18s ease;width:100%;text-align:left}.app-nav-item:hover{background:var(--color-surface-muted);color:var(--color-text-primary)}.app-nav-item.is-active{background:var(--color-accent-soft);color:var(--color-accent);font-weight:600}.app-nav-icon{font-size:1.1rem;width:1.4rem;text-align:center;flex-shrink:0}.app-main{flex:1;min-width:0;min-height:0;padding:2rem 2.5rem 0;display:flex;flex-direction:column;gap:1rem;overflow-y:auto}.app-view-header{display:flex;flex-direction:column;gap:.35rem}.app-view-header h2{font-size:1.5rem;font-weight:700;letter-spacing:-.01em;color:var(--color-text-primary)}.app-view-header p{font-size:.95rem;color:var(--color-text-secondary)}.bw-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;animation:bw-fade-in .15s ease}@keyframes bw-fade-in{0%{opacity:0}to{opacity:1}}.bw-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;padding:1.75rem;width:380px;max-width:90vw;box-shadow:0 24px 48px #0f172a2e;animation:bw-slide-up .2s ease}@keyframes bw-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.bw-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.bw-modal-title{font-weight:700;font-size:1rem;color:var(--color-text-primary)}.bw-modal-desc{font-size:.82rem;color:var(--color-text-tertiary);line-height:1.45;margin-bottom:1rem}.bw-modal-form{display:flex;flex-direction:column;gap:.85rem}.bw-modal-label{display:flex;flex-direction:column;gap:.3rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary)}.bw-modal-error{font-size:.82rem;color:var(--color-danger);background:#df4d5614;border-radius:10px;padding:.6rem .8rem}.bw-auth-bar{padding:0 .25rem}.bw-auth-btn{display:flex;align-items:center;gap:.55rem;width:100%;padding:.55rem .75rem;border-radius:10px;border:1px solid var(--color-border);background:var(--color-surface);font-size:.82rem;font-weight:500;cursor:pointer;transition:all .18s ease}.bw-auth-btn:hover{background:var(--color-surface-elevated)}.bw-auth-connected{color:var(--color-success)}.bw-auth-disconnected{color:var(--color-text-secondary)}.bw-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.bw-status-connected{background:var(--color-success);box-shadow:0 0 6px #22c55e73}.bw-status-disconnected{background:var(--color-text-tertiary);opacity:.5}.bw-config-summary{padding:0 .25rem}.bw-config-btn{display:flex;align-items:center;gap:.5rem;width:100%;padding:.45rem .75rem;border-radius:10px;border:1px solid var(--color-border);background:var(--color-surface);font-size:.78rem;color:var(--color-text-secondary);cursor:pointer;transition:all .18s ease;text-align:left;line-height:1.35}.bw-config-btn:hover{background:var(--color-surface-elevated);color:var(--color-text-primary)}.bw-config-label{display:flex;flex-direction:column;gap:.1rem;overflow:hidden}.bw-config-project{font-weight:600;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bw-config-query{font-size:.72rem;color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sq-panel{padding:.35rem .25rem .5rem;border-top:1px solid var(--color-border)}.sq-toggle{display:flex;align-items:center;gap:.4rem;width:100%;padding:.45rem .6rem;border:none;background:none;border-radius:8px;color:var(--color-text-secondary);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.sq-toggle:hover{background:var(--color-surface-elevated);color:var(--color-text-primary)}.sq-toggle-label{flex:1;text-align:left}.sq-toggle-count{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-accent);color:#fff;font-size:.68rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;line-height:1}.sq-toggle-chevron{font-size:.65rem;color:var(--color-text-tertiary);transition:transform .2s ease}.sq-toggle-chevron--open{transform:rotate(180deg)}.sq-body{padding:.25rem 0;max-height:320px;overflow-y:auto}.sq-empty{padding:.6rem;font-size:.75rem;color:var(--color-text-tertiary);text-align:center}.sq-group{margin-bottom:.35rem}.sq-group-header{display:flex;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.68rem;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.04em}.sq-group-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.sq-status--pending{background:var(--color-muted, #888)}.sq-status--researching{background:var(--color-warning, #e9a820);animation:sq-pulse 1.4s ease-in-out infinite}.sq-status--researched{background:var(--color-warm)}.sq-status--validated{background:var(--color-success)}.sq-status--built{background:var(--color-accent)}@keyframes sq-pulse{0%,to{opacity:1}50%{opacity:.35}}.sq-group-count{margin-left:auto;opacity:.7}.sq-group-items{display:flex;flex-direction:column;gap:1px}.sq-item{display:flex;flex-direction:column;gap:.05rem;padding:.35rem .6rem .35rem 1.1rem;border:none;background:none;text-align:left;cursor:pointer;border-radius:6px;transition:background .12s}.sq-item:hover{background:var(--color-surface-elevated)}.sq-item-term{font-size:.78rem;font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sq-item-meta{font-size:.66rem;color:var(--color-text-tertiary)}.sq-item--researching .sq-item-term{color:var(--color-text-secondary);font-style:italic}.app-sidebar--collapsed .sq-panel{display:none}.sidebar-collapse-btn{margin-left:auto;flex-shrink:0;width:22px;height:22px;border:none;background:transparent;color:var(--color-text-tertiary);font-size:1rem;line-height:1;cursor:pointer;border-radius:4px;display:grid;place-items:center;transition:background .15s,color .15s}.sidebar-collapse-btn:hover{background:var(--color-surface-muted);color:var(--color-text-primary)}.nav-label-full{display:inline}.nav-label-abbr{display:none}.bw-auth-label{display:inline}.app-sidebar--collapsed{width:58px;padding:1.25rem .5rem;overflow:hidden}.app-sidebar--collapsed .app-sidebar-brand h1,.app-sidebar--collapsed .bw-auth-label,.app-sidebar--collapsed .bw-config-summary,.app-sidebar--collapsed .sidebar-builder{display:none}.app-sidebar--collapsed .app-sidebar-brand{justify-content:center;gap:0}.app-sidebar--collapsed .sidebar-collapse-btn{margin-left:0}.app-sidebar--collapsed .app-nav-item{justify-content:center;padding:.55rem;gap:0}.app-sidebar--collapsed .nav-label-full{display:none}.app-sidebar--collapsed .nav-label-abbr{display:inline;font-size:.78rem;font-weight:600}.app-sidebar--collapsed .bw-auth-btn{justify-content:center;padding:.5rem}.nav-badge{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-accent);color:#fff;font-size:.68rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0}.app-sidebar--collapsed .nav-badge{display:none}.client-dropdown{position:relative;width:100%}.client-dropdown-trigger{width:100%;display:flex;align-items:center;gap:.4rem;padding:.4rem .6rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;font-size:.78rem;color:var(--color-text-primary);cursor:pointer;transition:border-color .15s;text-align:left}.client-dropdown-trigger:hover{border-color:var(--color-accent)}.client-dropdown-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.client-dropdown-chevron{font-size:.65rem;color:var(--color-text-tertiary);transition:transform .15s}.client-dropdown-chevron--open{transform:rotate(180deg)}.client-dropdown-menu{position:absolute;bottom:calc(100% + 4px);left:0;right:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 16px #0000001a;z-index:20;overflow:hidden}.client-dropdown-item{display:block;width:100%;padding:.45rem .6rem;font-size:.78rem;text-align:left;background:none;border:none;color:var(--color-text-primary);cursor:pointer;transition:background .12s}.client-dropdown-item:hover{background:var(--color-bg-secondary)}.client-dropdown-item.is-active{font-weight:600;color:var(--color-accent)}.client-dropdown-divider{height:1px;background:var(--color-border);margin:0}.client-dropdown-item--connect{color:var(--color-accent);font-weight:500}.sidebar-user-info{display:flex;flex-direction:column;gap:.5rem;padding:0 .25rem}.sidebar-user-email{display:flex;align-items:center;gap:.4rem;font-size:.75rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-logout{font-size:.72rem;color:var(--color-text-tertiary);background:none;border:none;cursor:pointer;padding:0;text-align:left}.sidebar-logout:hover{color:var(--color-danger)}.agent-dropdown-wrap{position:relative;display:inline-block}.agent-dropdown-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:.75rem;min-width:220px;padding:.6rem 1rem;border-radius:10px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary);font-size:.92rem;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease;white-space:nowrap}.agent-dropdown-btn:hover,.agent-dropdown-btn.is-open{border-color:#0f62fe80;background:#0f62fe0f}.agent-dropdown-label{flex:1;text-align:left}.agent-dropdown-chevron{font-size:.7rem;color:var(--color-text-secondary);flex-shrink:0}.agent-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:100%;z-index:200;background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 8px 24px #00000040;overflow:hidden;animation:dropdown-in .12s ease}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.agent-dropdown-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.55rem 1rem;background:transparent;border:none;color:var(--color-text-secondary);font-size:.88rem;font-weight:500;text-align:left;cursor:pointer;transition:background .12s ease,color .12s ease;white-space:nowrap}.agent-dropdown-item:hover{background:#ffffff0f;color:var(--color-text-primary)}.agent-dropdown-item.is-active{color:var(--color-text-primary);font-weight:600}.agent-dropdown-tick{color:#0f62fecc;font-size:.85rem;flex-shrink:0}.input-panels-row{display:flex;gap:1rem;align-items:stretch}.input-panel{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:.5rem}.input-panel-header{padding-bottom:0}@media(max-width:640px){.input-panels-row{flex-direction:column}}.context-textarea{border-color:#7850dc59}.context-textarea:focus{border-color:#7850dc99;box-shadow:0 0 0 3px #7850dc1f}.context-textarea::placeholder{color:var(--color-text-tertiary);font-style:italic}.term-input-area{display:flex;flex-direction:column;gap:.5rem}.term-textarea{width:100%;min-height:6rem;border:1px solid var(--color-border);border-radius:14px;padding:.85rem 1rem;font-size:.92rem;line-height:1.5;resize:vertical;background:var(--color-surface);color:var(--color-text-primary);font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.term-textarea:focus{outline:none;border-color:#0f62fe80;box-shadow:0 0 0 3px #0f62fe1f}.term-textarea::placeholder{color:var(--color-text-tertiary)}.generate-controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.queue-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:.45rem;min-width:1.35em;height:1.35em;padding:0 .3em;border-radius:999px;background:#ffffff40;font-size:.75em;font-weight:700;line-height:1;vertical-align:middle}.delay-input{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--color-text-secondary)}.delay-input input{width:4rem;border-radius:10px;border:1px solid var(--color-border);padding:.35rem .5rem;font-size:.85rem;text-align:center;color:var(--color-text-primary);background:var(--color-surface);font-family:inherit}.lang-selector{padding:.75rem 1.25rem .5rem;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:.5rem}.lang-selector-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary)}.lang-mode-control{display:flex;border:1px solid var(--color-border);border-radius:10px;overflow:hidden;width:fit-content}.lang-mode-btn{padding:.3rem .75rem;font-size:.8rem;font-weight:500;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:background .15s,color .15s;border-right:1px solid var(--color-border)}.lang-mode-btn:last-child{border-right:none}.lang-mode-btn:hover:not(:disabled){background:var(--color-hover);color:var(--color-text-primary)}.lang-mode-btn--active{background:var(--color-accent);color:#fff!important}.lang-mode-btn:disabled{opacity:.5;cursor:not-allowed}.lang-checklist{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.25rem .5rem;padding:.4rem 0;max-height:180px;overflow-y:auto}.lang-check-item{display:flex;align-items:center;gap:.35rem;font-size:.8rem;color:var(--color-text-secondary);cursor:pointer;padding:.15rem .25rem;border-radius:6px;transition:background .1s}.lang-check-item:hover{background:var(--color-hover)}.lang-check-item input{accent-color:var(--color-accent);cursor:pointer}.lang-code-badge{font-family:monospace;font-size:.68rem;background:var(--color-hover);color:var(--color-text-tertiary);padding:.05rem .3rem;border-radius:4px;margin-left:auto}.lang-selected-summary{font-size:.75rem;color:var(--color-accent);font-style:italic}.research-queue{margin-top:24px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-primary);overflow:hidden}.research-queue-heading{font-size:.85rem;font-weight:700;padding:10px 14px;margin:0;border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}.research-queue-section{border-bottom:1px solid var(--color-border)}.research-queue-section:last-child{border-bottom:none}.research-queue-section-toggle{all:unset;display:flex;align-items:center;gap:8px;width:100%;padding:8px 14px;cursor:pointer;font-size:.78rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;background:var(--color-bg-secondary)}.research-queue-section-toggle:hover{background:var(--color-surface-muted)}.research-queue-chevron{font-size:.65rem;transition:transform .15s ease;transform:rotate(-90deg)}.research-queue-chevron--open{transform:rotate(0)}.research-queue-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.research-queue-status-dot--pending{background:#888}.research-queue-status-dot--researching{background:#f59e0b;animation:sq-pulse 1.5s ease-in-out infinite}.research-queue-status-dot--researched{background:#f97316}.research-queue-section-label{flex:1}.research-queue-section-count{background:var(--color-surface-muted);color:var(--color-text-muted);font-size:.7rem;padding:1px 7px;border-radius:999px;font-weight:700}.research-queue-items{display:flex;flex-direction:column}.research-queue-item{display:flex;align-items:center;justify-content:space-between;padding:8px 14px 8px 34px;border-top:1px solid var(--color-border);gap:8px}.research-queue-item--researching{opacity:.7}.research-queue-item-info{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.research-queue-item-term{font-size:.82rem;font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.research-queue-item-meta{font-size:.7rem;color:var(--color-text-muted)}.research-queue-item-actions{display:flex;gap:4px;flex-shrink:0}.research-queue-item-delete{color:var(--color-text-muted)!important;font-size:1.1rem!important;padding:2px 6px!important;line-height:1!important}.research-queue-item-delete:hover{color:var(--color-danger)!important}.live-feed{display:flex;flex-direction:column;gap:.75rem}.feed-entry{padding:1rem 1.2rem;border-radius:16px;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 8px 20px #0f172a0f;display:flex;flex-direction:column;gap:.5rem;transition:border-color .2s ease}.feed-entry--success{border-color:#16956b4d}.feed-entry--error{border-color:#df4d564d}.feed-entry--pending{border-color:#0f62fe4d;background:var(--color-surface-muted)}.feed-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.feed-term{font-weight:600;font-size:.95rem;color:var(--color-text-primary)}.feed-status{font-size:.78rem;font-weight:600;padding:.2rem .7rem;border-radius:999px}.feed-status--generating{background:#0f62fe1f;color:var(--color-accent)}.feed-status--done{background:#16956b1f;color:var(--color-success)}.feed-status--error{background:#df4d561f;color:var(--color-danger)}.feed-status--waiting{background:#ff76331f;color:var(--color-warm)}.feed-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.feed-action-btn{display:inline-flex;align-items:center;justify-content:center;height:24px;padding:0 .65rem;font-size:.72rem;font-weight:600;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface-raised);color:var(--color-text-secondary);cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.feed-action-btn:hover{background:var(--color-surface-hover);color:var(--color-text-primary);border-color:#94a3b880}.feed-action-btn--active{background:#7850dc1f;border-color:#7850dc66;color:#7850dce6}.feed-action-btn--active:hover{background:#7850dc33;border-color:#7850dc99}.feed-action-btn--saved{background:#22c55e1a;border-color:#22c55e66;color:#22c55ed9;cursor:default}.feed-action-btn--saved:hover{background:#22c55e1a;border-color:#22c55e66}.feed-remove-btn{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;font-size:.68rem;line-height:1;background:none;border:1px solid transparent;border-radius:4px;color:var(--color-text-tertiary);cursor:pointer;transition:color .15s,background .15s,border-color .15s;margin-left:.1rem}.feed-remove-btn:hover{color:var(--color-danger, #ef4444);background:#ef44441a;border-color:#ef44444d}.feed-entry--selected{border-color:#7850dc4d!important;box-shadow:0 0 0 2px #7850dc14}.feed-boolean{font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:.78rem;line-height:1.5;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:10px;padding:.75rem .85rem;white-space:pre-wrap;word-break:break-word;max-height:12rem;overflow-y:auto;color:var(--color-text-secondary)}.feed-log{font-size:.75rem;color:var(--color-text-tertiary);font-style:italic}.feed-error{font-size:.82rem;color:var(--color-danger);background:#df4d5614;padding:.5rem .75rem;border-radius:8px}.progress-bar{width:100%;height:6px;border-radius:999px;background:var(--color-surface-muted);overflow:hidden}.progress-bar-fill{height:100%;background:var(--color-accent);border-radius:999px;transition:width .4s ease}.progress-text{font-size:.82rem;font-weight:600;color:var(--color-text-secondary)}.agentic-toggle{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.agentic-toggle input[type=checkbox]{accent-color:var(--color-accent)}.agentic-toggle .agentic-label{font-weight:600}.agentic-toggle .agentic-label--active{color:var(--color-accent)}.clean-pane-left{border-right:1px solid var(--color-border);display:flex;flex-direction:column;overflow:hidden}@media(max-width:768px){.clean-pane-left{border-right:none;border-bottom:1px solid var(--color-border)}}.clean-pane-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary);padding:.85rem 1.25rem .5rem;flex-shrink:0}.clean-boolean-display{flex:1;overflow-y:auto;padding:0 1.25rem 1.25rem;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.78rem;line-height:1.55;white-space:pre-wrap;word-break:break-word;color:var(--color-text-secondary)}.clean-boolean-display mark{background:#fbbf2440;color:var(--color-text-primary);border-radius:3px;padding:0 2px;animation:boolean-mark-pop .35s ease}@keyframes boolean-mark-pop{0%{background:#fbbf24a6;outline:2px solid rgba(251,191,36,.8)}to{background:#fbbf2440;outline:2px solid transparent}}.clean-boolean-editor-wrap{flex:1;min-height:0;display:grid;grid-template-columns:1fr;grid-template-rows:1fr}.clean-boolean-editor-backdrop{grid-area:1 / 1;overflow-y:auto;scrollbar-width:none;pointer-events:none;padding:.75rem 1.25rem;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.78rem;line-height:1.55;white-space:pre-wrap;word-break:break-word;color:transparent;background:transparent;-webkit-user-select:none;user-select:none}.clean-boolean-editor-backdrop::-webkit-scrollbar{display:none}.clean-boolean-editor-backdrop mark{background:#fbbf2466;color:transparent;border-radius:3px;padding:0;margin:0}.clean-boolean-editor{grid-area:1 / 1;overflow-y:auto;padding:.75rem 1.25rem;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.78rem;line-height:1.55;white-space:pre-wrap;word-break:break-word;color:var(--color-text-primary);background:var(--color-surface-muted);border:none;resize:none;outline:none}.clean-boolean-editor--highlighted{background:transparent}.clean-boolean-editor:focus{box-shadow:inset 0 0 0 2px var(--color-accent)}.clean-model-badge{display:inline-flex;align-items:center;margin-left:.6rem;padding:.1rem .5rem;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle}.clean-model-badge--haiku{background:#6366f126;color:#818cf8;border:1px solid rgba(99,102,241,.3)}.clean-model-badge--sonnet{background:#eab3081f;color:#ca8a04;border:1px solid rgba(234,179,8,.3)}.clean-pane-right{display:flex;flex-direction:column;overflow:hidden}.clean-config-bar{padding:.6rem 1.25rem;display:flex;flex-direction:column;gap:.5rem;border-bottom:1px solid var(--color-border);flex-shrink:0}.clean-config-row{display:flex;flex-wrap:nowrap;gap:.5rem;align-items:end}.clean-config-row .filterbar-field{min-width:0;flex:1}.clean-config-row .filterbar-field--days{flex:0 0 auto;min-width:auto}.clean-action-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.clean-match-count{font-size:.82rem;color:var(--color-text-secondary);padding:.65rem 1.25rem;border-bottom:1px solid var(--color-border);flex-shrink:0}.clean-match-count strong{color:var(--color-text-primary);font-weight:600}.clean-tab-bar{display:flex;gap:.125rem;padding:.5rem 1rem 0;border-bottom:1px solid var(--color-border);flex-shrink:0}.clean-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.78rem;font-weight:500;color:var(--color-text-secondary);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;border-radius:4px 4px 0 0;cursor:pointer;transition:color .15s,border-color .15s}.clean-tab:hover{color:var(--color-text-primary)}.clean-tab--active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.clean-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.2em;padding:0 .3em;height:1.2em;font-size:.68rem;font-weight:700;background:var(--color-surface-muted);color:var(--color-text-secondary);border-radius:999px}.clean-tab--active .clean-tab-badge{background:color-mix(in srgb,var(--color-accent) 15%,transparent);color:var(--color-accent)}.clean-tab-badge--warn{background:#eab3082e;color:#e5a200}.clean-tab-badge--ok{background:#22c55e2e;color:#16a34a}.clean-tab--has-result{color:var(--color-text-primary);animation:tab-nudge .4s ease .1s both}@keyframes tab-nudge{0%{transform:translateY(0)}40%{transform:translateY(-2px)}to{transform:translateY(0)}}.clean-tab-refresh-btn{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;margin-right:.25rem;width:1.75rem;height:1.75rem;border-radius:6px;border:1px solid var(--color-border);background:transparent;color:var(--color-text-secondary);font-size:1rem;line-height:1;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease;flex-shrink:0;align-self:center}.clean-tab-refresh-btn:hover:not(:disabled){background:#ffffff0f;color:var(--color-text-primary);border-color:var(--color-text-secondary)}.clean-tab-refresh-btn:disabled{opacity:.4;cursor:not-allowed}.clean-spinner--sm{width:.7rem;height:.7rem;border-width:1.5px}.clean-tab-hidden{display:none}.clean-results-area{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.validate-save-error{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:color-mix(in srgb,var(--color-danger, #ef4444) 10%,transparent);border:1px solid color-mix(in srgb,var(--color-danger, #ef4444) 30%,transparent);border-radius:6px;font-size:.8rem;color:var(--color-danger, #ef4444);margin-bottom:.5rem;flex-shrink:0}.validate-save-error span{flex:1}.validate-save-error-close{background:none;border:none;cursor:pointer;font-size:1rem;color:var(--color-danger, #ef4444);padding:0 .25rem;line-height:1}.validate-save-error-close:hover{opacity:.7}.validate-fix-log{display:flex;flex-direction:column;gap:.2rem;padding:.5rem .75rem;border-radius:var(--radius-md, 8px);background:var(--color-surface-alt);border:1px solid var(--color-border);font-size:.75rem;color:var(--color-text-secondary);margin-bottom:.5rem;flex-shrink:0}.validate-fix-log-entry{font-family:var(--font-mono, monospace);line-height:1.5}.validate-fix-inline{font-size:.78rem;color:var(--color-success, #16a34a);margin-left:.5rem;cursor:help}.validate-handles-btn{margin-left:auto;flex-shrink:0}.handle-validation-log{border-radius:var(--radius-md, 8px);background:var(--color-surface-alt);border:1px solid var(--color-border);font-size:.78rem;color:var(--color-text-secondary);margin-bottom:.5rem;flex-shrink:0;overflow:hidden}.handle-validation-log-toggle{display:flex;align-items:center;gap:.4rem;width:100%;padding:.45rem .75rem;background:none;border:none;cursor:pointer;font:inherit;font-size:.78rem;color:var(--color-text-secondary);text-align:left}.handle-validation-log-toggle:hover{background:color-mix(in srgb,var(--color-text-primary) 4%,transparent)}.handle-validation-log-icon{flex-shrink:0;font-size:.65rem;opacity:.6}.handle-validation-log-badge{margin-left:auto;font-size:.7rem;padding:.1rem .4rem;border-radius:4px;background:color-mix(in srgb,var(--color-text-primary) 8%,transparent);color:var(--color-text-tertiary)}.handle-validation-log-entries{padding:0 .75rem .5rem;display:flex;flex-direction:column;gap:.15rem;max-height:280px;overflow-y:auto}.handle-validation-log-entry{display:flex;align-items:center;gap:.4rem;font-family:var(--font-mono, monospace);font-size:.72rem;line-height:1.6;white-space:pre-wrap;color:var(--color-text-tertiary)}.handle-validation-log-entry-text{flex:1;min-width:0}.handle-validation-log-entry--error{color:var(--color-danger, #ef4444)}.handle-validation-log-entry--success{color:var(--color-success, #16a34a)}.handle-validation-log-summary{margin-top:.25rem;padding-top:.25rem;border-top:1px solid var(--color-border);font-weight:500;color:var(--color-text-secondary)}.handle-validation-remove-btn{flex-shrink:0;padding:.1rem .4rem;font-size:.68rem;font-family:inherit;border:1px solid color-mix(in srgb,var(--color-danger, #ef4444) 40%,transparent);border-radius:4px;background:color-mix(in srgb,var(--color-danger, #ef4444) 8%,transparent);color:var(--color-danger, #ef4444);cursor:pointer;line-height:1.4}.handle-validation-remove-btn:hover{background:color-mix(in srgb,var(--color-danger, #ef4444) 18%,transparent);border-color:color-mix(in srgb,var(--color-danger, #ef4444) 60%,transparent)}.handle-validation-log-entry--review{color:var(--color-warning, #d97706)}.handle-validation-accept-btn,.handle-validation-reject-btn{flex-shrink:0;padding:.1rem .4rem;font-size:.68rem;font-family:inherit;border-radius:4px;cursor:pointer;line-height:1.4}.handle-validation-accept-btn{border:1px solid color-mix(in srgb,var(--color-success, #16a34a) 40%,transparent);background:color-mix(in srgb,var(--color-success, #16a34a) 8%,transparent);color:var(--color-success, #16a34a)}.handle-validation-accept-btn:hover{background:color-mix(in srgb,var(--color-success, #16a34a) 18%,transparent);border-color:color-mix(in srgb,var(--color-success, #16a34a) 60%,transparent)}.handle-validation-reject-btn{border:1px solid color-mix(in srgb,var(--color-danger, #ef4444) 40%,transparent);background:color-mix(in srgb,var(--color-danger, #ef4444) 8%,transparent);color:var(--color-danger, #ef4444)}.handle-validation-reject-btn:hover{background:color-mix(in srgb,var(--color-danger, #ef4444) 18%,transparent);border-color:color-mix(in srgb,var(--color-danger, #ef4444) 60%,transparent)}.clean-analysis-section{flex:1 1 auto;overflow-y:auto;padding:.75rem 1.25rem 1.5rem}.clean-analysis-section:empty{display:none}.clean-analysis-section:has(>:only-child.clean-empty){border-bottom:none}.clean-mentions-section{flex:1 1 auto;overflow-y:auto;padding:.75rem 1.25rem 1.5rem;min-height:0}.clean-analysis-loading{display:flex;align-items:center;gap:.5rem;padding:.6rem 0;font-size:.82rem;color:var(--color-text-tertiary)}.clean-spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.clean-empty{text-align:center;padding:2rem 1rem;font-size:.85rem;color:var(--color-text-tertiary)}.clean-error{font-size:.82rem;color:var(--color-danger);background:#df4d5614;border-radius:10px;padding:.6rem .8rem;margin-bottom:.75rem}.flagged-terms-list{display:flex;flex-direction:column;gap:.65rem}.flagged-terms-header{display:flex;align-items:center;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary);margin-bottom:.25rem}.flagged-term-card{border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);overflow:hidden}.flagged-term-header{display:flex;align-items:center;justify-content:space-between;padding:.65rem .85rem;cursor:pointer;gap:.5rem;transition:background .15s ease}.flagged-term-header:hover{background:var(--color-surface-elevated)}.flagged-term-info{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1}.flagged-term-value{font-weight:700;font-size:.85rem;font-family:SF Mono,Fira Code,Cascadia Code,monospace;color:var(--color-danger);word-break:break-word}.flagged-term-reason{font-size:.78rem;color:var(--color-text-tertiary);line-height:1.35}.flagged-term-badge{font-size:.7rem;font-weight:600;color:var(--color-text-tertiary);background:var(--color-surface-alt, rgba(0,0,0,.05));border-radius:999px;padding:.15rem .55rem;white-space:nowrap;flex-shrink:0}.flagged-term-chevron{font-size:.7rem;color:var(--color-text-tertiary);flex-shrink:0;transition:transform .2s ease}.flagged-term-chevron--open{transform:rotate(90deg)}.flagged-term-examples{border-top:1px solid var(--color-border);padding:.65rem .85rem;display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.flagged-term-examples .mention-card mark{background:#f973162e;color:var(--color-text-primary);border-radius:3px;padding:0 2px;font-weight:600;outline:1px solid rgba(249,115,22,.35);cursor:default}.flagged-term-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.flagged-term-inline-edit{display:flex;gap:6px;align-items:center;flex:1;min-width:0}.flagged-term-confirm-text{font-size:.72rem;color:var(--color-danger);font-weight:500;white-space:nowrap}.bool-section-label{display:inline-block;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--color-accent) 25%,transparent);border-radius:4px;padding:.1rem .45rem;margin-bottom:.15rem;line-height:1.6;vertical-align:middle}.mention-feed{display:flex;flex-direction:column;gap:.5rem}.mention-card{border:1px solid var(--color-border);border-radius:10px;padding:.65rem .85rem;background:var(--color-surface);font-size:.8rem;color:var(--color-text-secondary);line-height:1.5;word-break:break-word;position:relative}.mention-card mark{background:#fbbf244d;color:var(--color-text-primary);border-radius:3px;padding:0 2px;cursor:pointer}.mention-card mark:hover{background:#fbbf248c}.mention-meta{display:flex;gap:.5rem;margin-top:.35rem;font-size:.7rem;color:var(--color-text-tertiary)}.mention-meta a{color:var(--color-accent);text-decoration:none}.mention-meta a:hover{text-decoration:underline}.mention-translate-btn{margin-top:.3rem;display:inline-block;font-size:.7rem;color:var(--color-accent);background:none;border:none;padding:0;cursor:pointer;opacity:.75;transition:opacity .15s}.mention-translate-btn:hover:not(:disabled){opacity:1;text-decoration:underline}.mention-translate-btn:disabled{cursor:default;opacity:.45}.mention-translation{margin-top:.35rem;padding:.4rem .6rem;background:#94a3b812;border-left:2px solid var(--color-accent);border-radius:0 6px 6px 0;font-size:.78rem;color:var(--color-text-secondary);font-style:italic;line-height:1.5}.mention-translation--error{border-left-color:var(--color-danger);color:var(--color-danger);font-style:normal}.mention-lang-badge{font-size:.65rem;padding:.05rem .35rem;background:var(--color-surface-alt, rgba(148,163,184,.12));border-radius:3px;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.03em}.validate-page{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.validate-layout{display:grid;grid-template-columns:55fr 45fr;gap:1rem;flex:1;min-height:0;overflow:hidden}.validate-pane-left{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-lg, 12px);overflow:hidden;background:var(--color-surface);min-height:0}.validate-pane-label{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.8rem;font-weight:600;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);flex-shrink:0}.validate-editor-wrap{flex:1;min-height:0;overflow-y:auto}.validate-editor-wrap .cm-editor{height:100%}.validate-pane-right{display:flex;flex-direction:column;min-height:0;gap:0;overflow:hidden}.validate-footer{display:flex;align-items:center;padding:.5rem .75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg, 12px);margin-top:.5rem;flex-shrink:0;gap:.6rem;flex-wrap:wrap}.validate-footer-chips{display:flex;flex-wrap:wrap;gap:.35rem;flex:1;min-width:0}.validate-term-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.18rem .1rem .18rem .55rem;border-radius:999px;background:var(--color-accent-soft, #eff6ff);border:1px solid var(--color-accent, #3b82f6);font-size:.78rem;font-family:var(--font-mono, monospace);color:var(--color-accent, #1d4ed8);white-space:nowrap}.validate-term-chip-text{font-weight:500}.validate-term-chip-wildcard{color:var(--color-proximity, #7c3aed);font-weight:700}.validate-term-chip-lang{display:inline-block;padding:0 .3rem;border-radius:4px;background:var(--color-lang-tag, #1a7f37);color:#fff;font-size:.65rem;font-family:var(--font-mono, monospace);font-weight:600;letter-spacing:.03em;text-transform:lowercase;line-height:1.5}.validate-term-chip-deselect{display:inline-flex;align-items:center;justify-content:center;width:1.1rem;height:1.1rem;border-radius:50%;border:none;background:transparent;color:var(--color-accent, #1d4ed8);font-size:.9rem;line-height:1;cursor:pointer;padding:0;margin-left:.1rem;opacity:.6;transition:opacity .15s,background .15s}.validate-term-chip-deselect:hover{opacity:1;background:#3b82f626}.taxonomy-layout{display:grid;grid-template-columns:1fr 340px;gap:1rem;align-items:start;flex:1;min-height:0;padding-bottom:1rem}.taxonomy-pane-main{display:flex;flex-direction:column;gap:.75rem;min-width:0}.taxonomy-pane-builder{position:sticky;top:1rem;max-height:calc(100vh - 4rem);overflow-y:auto}.taxonomy-pane-builder .sidebar-builder{border-radius:var(--radius-lg, 12px)}.cm-bool-highlight{background:#f59e0b40;border-radius:2px;outline:1px solid rgba(245,158,11,.45)}.cm-delete-ghost{text-decoration:line-through;opacity:.5}.cm-delete-ghost span{color:var(--color-danger, #f85149)!important}.validate-queue{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-bottom:1px solid var(--color-border);background:var(--color-surface-alt, #f6f8fa);flex-shrink:0;overflow-x:auto;scrollbar-width:none}.validate-queue::-webkit-scrollbar{display:none}.validate-queue-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-tertiary);flex-shrink:0}.validate-queue-chips{display:flex;gap:.4rem;flex-shrink:0}.validate-queue-chip{display:inline-flex;align-items:center;gap:0;border-radius:999px;font-size:.85rem;font-weight:500;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);flex-shrink:0;white-space:nowrap;transition:background .15s,border-color .15s,color .15s;overflow:hidden}.validate-queue-chip:hover{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent)}.validate-queue-chip--active{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent);font-weight:600}.validate-queue-chip-label{padding:.28rem .6rem .28rem .8rem;background:none;border:none;color:inherit;font-size:inherit;font-weight:inherit;cursor:pointer}.validate-queue-chip-remove{padding:.28rem .6rem .28rem .35rem;background:none;border:none;color:inherit;font-size:.9rem;line-height:1;cursor:pointer;opacity:.5;transition:opacity .1s}.validate-queue-chip-remove:hover{opacity:1}.validate-queue-actions{display:flex;gap:.35rem;margin-left:auto;flex-shrink:0}.validate-queue-add-btn{padding:.25rem .6rem;border:1px dashed var(--color-border);border-radius:999px;background:none;color:var(--color-text-secondary);font-size:.8rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s}.validate-queue-add-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-soft)}.validate-queue-add-btn--active{border-color:var(--color-accent);border-style:solid;color:var(--color-accent);background:var(--color-accent-soft)}.validate-queue-add-btn:disabled{opacity:.4;cursor:not-allowed}.validate-add-form{display:flex;align-items:center;gap:.4rem;padding:.45rem .75rem;border-bottom:1px solid var(--color-border);background:var(--color-surface-raised)}.validate-add-input{padding:.55rem .75rem;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);color:var(--color-text-primary);font-size:.9rem;min-width:120px;max-width:200px}.validate-add-input:focus{outline:none;border-color:#0f62fe66;box-shadow:0 0 0 3px #0f62fe1f}.validate-add-agent-select{min-width:140px;max-width:180px}.validate-add-query-select{min-width:160px;max-width:220px}.flagged-term-header--highlighted{background:#f59e0b14;border-radius:6px}.flagged-term-chevron{cursor:pointer;padding:.25rem;border-radius:4px;transition:background .12s}.flagged-term-chevron:hover{background:var(--color-surface-muted)}.term-inline-remove{background:#fff;border:1px solid var(--color-border);border-radius:6px;box-shadow:0 2px 8px #0000001f;padding:4px 10px;font-size:.76rem;font-weight:500;color:var(--color-danger);cursor:pointer;white-space:nowrap}.term-inline-remove:hover{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.term-action-popover{background:#fff;border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 16px #0000001f,0 1px 4px #00000014;padding:8px 10px;min-width:180px;animation:popoverFadeIn .12s ease-out}@keyframes popoverFadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.92)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.term-popover-actions{display:flex;flex-direction:column;gap:6px}.term-popover-term{font-size:.82rem;font-weight:600;color:var(--color-text-primary);padding:0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}.term-popover-btns{display:flex;gap:6px}.term-popover-delete{color:var(--color-danger)!important;border-color:var(--color-danger)!important}.term-popover-delete:hover{background:var(--color-danger)!important;color:#fff!important}.term-popover-edit{display:flex;gap:6px;align-items:center}.term-popover-input{font-size:.82rem;padding:4px 8px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-secondary);color:var(--color-text-primary);width:160px;outline:none}.term-popover-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #6366f126}:root{--color-operator: #2563eb;--color-phrase: #ea580c;--color-section: #8b949e;--color-paren: #6e7781;--color-proximity: #2563eb;--color-lang-tag: #16a34a}.build-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border);margin-bottom:1rem}.build-tab{padding:.6rem 1.2rem;font-size:.85rem;font-weight:500;color:var(--color-text-secondary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s}.build-tab:hover{color:var(--color-text-primary)}.build-tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.build-section{padding:1rem 0}.build-section h3{font-size:1rem;font-weight:600;margin:0 0 .5rem}.build-section p{font-size:.85rem;color:var(--color-text-secondary);margin:0 0 1rem}.build-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;border:2px dashed var(--color-border);border-radius:var(--radius-lg, 12px);color:var(--color-text-tertiary);font-size:.9rem;gap:.5rem}.build-placeholder-icon{font-size:2rem;opacity:.5}.build-tab-count{margin-left:.35rem;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--color-surface-muted);color:var(--color-text-tertiary);font-size:.68rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.build-tab--active .build-tab-count{background:#0f62fe1f;color:var(--color-accent)}.build-queue-list{display:flex;flex-direction:column;gap:.5rem}.build-queue-card{border-radius:14px;background:var(--color-surface);border:1px solid var(--color-border);overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.build-queue-card:hover{box-shadow:0 4px 16px #0f172a0f}.build-queue-card--validated{border-left:3px solid var(--color-success)}.build-queue-card--built{border-left:3px solid var(--color-accent)}.build-queue-card--researched{border-left:3px solid var(--color-warm)}.build-queue-header{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;-webkit-user-select:none;user-select:none}.build-queue-status-icon{flex-shrink:0;width:24px;height:24px;border-radius:50%;display:grid;place-items:center}.build-status-dot{width:8px;height:8px;border-radius:50%;background:var(--color-success)}.build-queue-card--built .build-status-dot{background:var(--color-accent)}.build-queue-card--researched .build-status-dot{background:var(--color-warm)}.build-status-check{color:var(--color-accent);font-size:.85rem;font-weight:700}.build-queue-info{flex:1;min-width:0;display:flex;align-items:center;gap:.75rem;cursor:pointer}.build-queue-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.build-queue-term{font-weight:600;font-size:.92rem;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.build-queue-meta{font-size:.75rem;color:var(--color-text-tertiary)}.build-queue-badge{padding:.15rem .55rem;border-radius:999px;font-size:.72rem;font-weight:600;flex-shrink:0}.build-queue-badge--validated{background:#16956b1a;color:var(--color-success)}.build-queue-badge--built{background:#0f62fe1a;color:var(--color-accent)}.build-queue-badge--researched{background:#ff76331a;color:var(--color-warm)}.build-queue-chevron{flex-shrink:0;font-size:.7rem;color:var(--color-text-tertiary);transition:transform .2s ease}.build-queue-chevron--open{transform:rotate(180deg)}.build-queue-body{padding:0 1rem 1rem;border-top:1px solid var(--color-border)}.build-queue-preview{margin:.75rem 0;padding:.75rem;border-radius:8px;background:var(--color-surface-muted);font-size:.78rem;font-family:var(--font-mono, "SF Mono", "Menlo", monospace);line-height:1.55;white-space:pre-wrap;word-break:break-word;max-height:300px;overflow-y:auto;color:var(--color-text-secondary)}.build-queue-actions{display:flex;align-items:center;gap:.5rem}.build-queue-mark-built{color:var(--color-success, #22c55e)}.build-queue-mark-built:hover{color:var(--color-success, #16a34a);text-decoration:underline}.build-queue-dismiss{margin-left:auto;color:var(--color-text-tertiary)}.build-queue-dismiss:hover{color:var(--color-danger)}.build-queue-checkbox{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;position:relative}.build-queue-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer;margin:0}.build-queue-checkbox-spacer{width:18px;flex-shrink:0}.build-queue-card--selected{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary),0 4px 16px #0f62fe14}.build-tabs-spacer{flex:1}.build-selection-count{font-size:.8rem;font-weight:600;color:var(--color-primary)}.build-banner{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;border-radius:var(--radius-md, 8px);font-size:.85rem;font-weight:500;margin-bottom:1rem}.build-banner--success{background:#16956b1a;color:var(--color-success);border:1px solid rgba(22,149,107,.25)}.build-banner--error{background:#dc262614;color:var(--color-danger);border:1px solid rgba(220,38,38,.2)}.build-banner-close{margin-left:auto;background:none;border:none;font-size:1.1rem;cursor:pointer;color:inherit;opacity:.6;padding:0 .25rem}.build-banner-close:hover{opacity:1}.build-action-bar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg, 12px);padding:.75rem 1rem;margin-bottom:1rem;display:flex;flex-direction:column;gap:.75rem}.build-action-bar-row{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap}.build-action-bar-spacer{flex:1}.build-field{display:flex;flex-direction:column;gap:.3rem}.build-field-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary)}.build-select{padding:.4rem .6rem;border-radius:var(--radius-md, 8px);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary);font-size:.82rem;min-width:180px;cursor:pointer}.build-select:focus{outline:2px solid var(--color-primary);outline-offset:-1px}.build-select--sm{min-width:140px;font-size:.78rem}.build-input{padding:.4rem .6rem;border-radius:var(--radius-md, 8px);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary);font-size:.82rem;min-width:200px}.build-input:focus{outline:2px solid var(--color-primary);outline-offset:-1px}.build-input--sm{min-width:140px;font-size:.78rem}.build-toggle-group{display:flex;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-md, 8px);overflow:hidden}.build-toggle{padding:.35rem .7rem;font-size:.78rem;font-weight:500;background:var(--color-surface);color:var(--color-text-secondary);border:none;border-right:1px solid var(--color-border);cursor:pointer;transition:background .12s,color .12s}.build-toggle:last-child{border-right:none}.build-toggle:hover:not(:disabled){background:var(--color-surface-muted)}.build-toggle--active{background:var(--color-accent);color:#fff}.build-toggle--active:hover{background:var(--color-accent)}.build-toggle:disabled{opacity:.4;cursor:not-allowed}.build-config-panel{border-top:1px solid var(--color-border);padding-top:.75rem}.build-config-section{display:flex;flex-direction:column;gap:.6rem}.build-hint{font-size:.78rem;color:var(--color-text-tertiary);margin:0;font-style:italic}.build-name-list{display:flex;flex-direction:column;gap:.4rem}.build-name-row{display:flex;align-items:center;gap:.75rem}.build-name-term{font-size:.82rem;font-weight:500;color:var(--color-text-secondary);min-width:120px;flex-shrink:0}.build-children-list{display:flex;flex-direction:column;gap:.4rem}.build-child-row{display:flex;align-items:center;gap:.75rem;padding:.35rem 0}.build-child-row--update{flex-wrap:wrap}.build-child-bool{font-size:.72rem;color:var(--color-text-tertiary);font-family:var(--font-mono, "SF Mono", "Menlo", monospace);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}.build-child-split-badge{flex-shrink:0;font-size:.65rem;font-weight:600;color:var(--color-warning, #f59e0b);background:color-mix(in srgb,var(--color-warning, #f59e0b) 12%,transparent);padding:1px 6px;border-radius:4px;white-space:nowrap}.build-action-buttons{display:flex;align-items:center;gap:.5rem;padding-top:.5rem;border-top:1px solid var(--color-border)}.build-preview{margin-top:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-md, 8px);overflow:hidden}.build-preview-json{margin:0;padding:.75rem 1rem;background:var(--color-surface-muted);font-size:.75rem;font-family:var(--font-mono, "SF Mono", "Menlo", monospace);line-height:1.55;white-space:pre-wrap;word-break:break-word;max-height:350px;overflow-y:auto;color:var(--color-text-secondary)}.build-diff{display:flex;flex-direction:column;gap:12px}.build-diff-header{display:flex;align-items:baseline;gap:10px;padding-bottom:6px;border-bottom:1px solid var(--color-border)}.build-diff-title{font-size:.85rem;color:var(--color-text-primary)}.build-diff-meta{font-size:.72rem;color:var(--color-text-muted);margin-left:auto}.build-diff-empty{font-size:.82rem;color:var(--color-text-muted);font-style:italic;margin:0}.build-diff-child{border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.build-diff-child-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border)}.build-diff-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border-radius:4px;flex-shrink:0}.build-diff-badge--new{background:#dcfce7;color:#166534}.build-diff-badge--changed{background:#fef3c7;color:#92400e}.build-diff-badge--unchanged{background:var(--color-surface-muted);color:var(--color-text-muted)}.build-diff-child-name{font-weight:600;font-size:.82rem;color:var(--color-text-primary)}.build-diff-mapped-to{font-size:.75rem;color:var(--color-text-muted)}.build-diff-block{margin:0;padding:10px 12px;font-size:.72rem;font-family:var(--font-mono, "SF Mono", "Menlo", monospace);line-height:1.55;white-space:pre-wrap;word-break:break-word;max-height:260px;overflow-y:auto}.build-diff-block--new{background:#f0fdf4;color:#14532d;border-left:3px solid #22c55e}.build-diff-block--old{background:#fef2f2;color:#7f1d1d;border-left:3px solid #ef4444}.build-diff-compare{display:grid;grid-template-columns:1fr auto 1fr;gap:0}.build-diff-side{display:flex;flex-direction:column}.build-diff-side-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:4px 12px}.build-diff-side-label--old{background:#fef2f2;color:#dc2626}.build-diff-side-label--new{background:#f0fdf4;color:#16a34a}.build-diff-arrow{display:flex;align-items:center;justify-content:center;padding:0 6px;color:var(--color-text-muted);font-size:1rem;background:var(--color-bg-secondary)}.build-diff-unchanged-note{margin:0;padding:10px 12px;font-size:.78rem;color:var(--color-text-muted);font-style:italic;background:var(--color-surface-muted)}.filterbar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;padding:1.35rem 1.5rem;box-shadow:0 10px 24px #0f172a14;display:flex;flex-direction:column;gap:1rem}.filterbar-fields{display:flex;flex-wrap:wrap;gap:1rem 1.25rem}.filterbar-field{display:flex;flex-direction:column;gap:.35rem;min-width:160px;flex:1}.filterbar-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--color-text-tertiary)}.filterbar-input,.filterbar-select{border-radius:12px;border:1px solid var(--color-border);background:#ffffffe6;padding:.55rem .75rem;font-size:.9rem;color:var(--color-text-primary);outline:none;transition:border-color .2s ease,box-shadow .2s ease;font-family:inherit}.filterbar-input:focus,.filterbar-select:focus{border-color:#0f62fe66;box-shadow:0 0 0 3px #0f62fe1f}.data-table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;overflow-x:auto;-webkit-overflow-scrolling:touch;box-shadow:0 20px 36px #0c204e1f}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table thead th{text-align:left;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary);padding:.75rem .9rem;background:var(--color-surface-alt);border-bottom:1px solid var(--color-border);white-space:nowrap;cursor:default}.data-table tbody td{padding:.7rem .9rem;border-bottom:1px solid var(--color-border);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--color-surface-muted)}.kw-value{font-weight:600;color:var(--color-text-primary);display:flex;align-items:center;gap:.35rem}.eip-trigger{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;border:none;border-radius:50%;background:transparent;color:var(--color-text-tertiary);cursor:pointer;padding:0;transition:color .15s,background .15s}.eip-trigger:hover,.eip-trigger--active{color:#ea580c;background:#ea580c1a}tr.row--entity-linked td{background:#ea580c0f;transition:background .18s ease}tr.row--entity-linked .kw-value{color:#ea580c}tr.row--entity-related td{background:#ea580c1f;transition:background .18s ease}tr.row--entity-related .kw-value{color:#c2410c;font-weight:700}.eip-popover{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 8px 32px #0000002e,0 1px 4px #00000012;overflow:hidden;animation:tp-in .12s ease;font-size:.82rem}.eip-header{display:flex;align-items:center;gap:.5rem;padding:.65rem .75rem;border-bottom:1px solid var(--color-border);background:var(--color-surface-muted)}.eip-icon{font-size:1.1rem;flex-shrink:0;line-height:1}.eip-title{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.eip-name{font-weight:700;font-size:.88rem;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.eip-type{font-size:.7rem;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-weight:700}.eip-loading{font-size:.82rem;color:var(--color-text-secondary);font-style:italic}.eip-error-msg{font-size:.82rem;color:var(--color-danger);font-style:italic}.eip-close{flex-shrink:0;width:22px;height:22px;border:none;border-radius:50%;background:transparent;color:var(--color-text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.eip-close:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.eip-body{max-height:480px;overflow-y:auto}.eip-section{padding:.55rem .75rem;border-bottom:1px solid var(--color-border)}.eip-section:last-child{border-bottom:none}.eip-section--fields{padding-bottom:.45rem}.eip-section-title{font-size:.69rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-tertiary);margin-bottom:.42rem}.eip-row{display:flex;align-items:baseline;gap:.5rem;padding:.18rem 0}.eip-label{font-size:.74rem;font-weight:600;color:var(--color-text-secondary);min-width:72px;flex-shrink:0}.eip-value{color:var(--color-text-primary);word-break:break-word}.eip-badge{display:inline-block;padding:.1rem .45rem;border-radius:999px;font-size:.72rem;font-weight:700;background:var(--color-surface-muted);border:1px solid var(--color-border);color:var(--color-text-secondary)}.eip-link{color:var(--color-accent);text-decoration:none;font-size:.8rem}.eip-link:hover{text-decoration:underline}.eip-empty{padding:.75rem;font-size:.8rem;color:var(--color-text-tertiary);font-style:italic;text-align:center}.eip-kw-list{display:flex;flex-wrap:wrap;gap:.3rem}.eip-kw-list--dim{opacity:.65}.eip-kw-chip{display:inline-flex;align-items:center;gap:.22rem;padding:.18rem .5rem;border-radius:6px;font-size:.76rem;font-weight:600;white-space:nowrap;border:1px solid transparent}.eip-kw-chip--keyword{background:#0f62fe17;border-color:#0f62fe33;color:var(--color-accent)}.eip-kw-chip--phrase{background:#16956b17;border-color:#16956b33;color:var(--color-success)}.eip-kw-chip--handle{background:#ff763317;border-color:#ff763333;color:var(--color-warm)}.eip-kw-chip--site{background:#8b5cf617;border-color:#8b5cf633;color:#8b5cf6}.eip-kw-chip--dim{background:var(--color-surface-muted);border-color:var(--color-border);color:var(--color-text-secondary)}.eip-kw-platform{font-size:.75rem;opacity:.75}.eip-kw-lang{font-size:.68rem;opacity:.6;margin-left:.1rem}.eip-rel-row{display:flex;align-items:center;gap:.45rem;padding:.26rem 0;border-bottom:1px solid var(--color-border-subtle, rgba(0,0,0,.04))}.eip-rel-row:last-child{border-bottom:none}.eip-rel-row--in-view{background:#ea580c0f;border-radius:4px;padding-left:4px;padding-right:4px;margin:0 -4px}.eip-rel-row--in-view .eip-rel-type{color:#ea580c}.eip-rel-row--in-view .eip-rel-target{color:#c2410c}.eip-rel-in-view-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#ea580c;margin-right:4px;vertical-align:middle;flex-shrink:0}.eip-rel-direction{font-size:.9rem;color:var(--color-text-tertiary);flex-shrink:0;width:14px;text-align:center}.eip-rel-middle{flex:1;min-width:0;display:flex;flex-direction:column;gap:.06rem}.eip-rel-type{font-size:.74rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.eip-rel-target{font-size:.8rem;font-weight:600;color:var(--color-text-primary)}.eip-rel-source{font-size:.72rem;font-weight:700;flex-shrink:0;width:20px;text-align:center}.eip-handle-list{display:flex;flex-direction:column;gap:.18rem}.eip-handle-row{display:flex;align-items:center;gap:.45rem}.eip-handle-platform{font-size:.85rem;width:18px;text-align:center;flex-shrink:0;color:var(--color-text-secondary)}.eip-handle-value{font-weight:600;font-size:.8rem;color:var(--color-text-primary);flex:1;word-break:break-all}.eip-handle-status{font-weight:700;font-size:.8rem;flex-shrink:0}.eip-site-list{display:flex;flex-direction:column;gap:.18rem}.eip-site-row{display:flex;align-items:center;gap:.45rem}.eip-site-status{font-weight:700;font-size:.78rem;flex-shrink:0}.eip-term-list{display:flex;flex-wrap:wrap;gap:.28rem}.eip-term-chip{display:inline-flex;align-items:center;gap:.2rem;padding:.15rem .45rem;border-radius:6px;font-size:.76rem;background:var(--color-surface-muted);border:1px solid var(--color-border);color:var(--color-text-secondary)}.kw-type-badge{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.kw-type-badge--keyword{background:#0f62fe1f;color:var(--color-accent)}.kw-type-badge--phrase{background:#16956b1f;color:var(--color-success)}.kw-type-badge--handle{background:#ff76331f;color:var(--color-warm)}.kw-type-badge--site{background:#8b5cf61f;color:#8b5cf6}.tag-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.18rem .55rem;border-radius:999px;font-size:.72rem;font-weight:500;background:var(--color-surface-muted);border:1px solid var(--color-border);color:var(--color-text-secondary);white-space:nowrap}.tag-chip-dim{color:var(--color-text-tertiary);font-weight:600}.tags-cell{display:flex;flex-wrap:wrap;gap:.3rem}.selection-bar{position:fixed;bottom:28px;left:50%;transform:translate(-50%);z-index:900;display:flex;align-items:center;gap:.25rem;background:#1a1a2e;color:#fff;border-radius:12px;padding:.45rem .55rem .45rem .65rem;box-shadow:0 8px 32px #00000059,0 2px 8px #0003;white-space:nowrap;pointer-events:all;animation:selection-bar-in .18s cubic-bezier(.34,1.56,.64,1) both}@keyframes selection-bar-in{0%{opacity:0;transform:translate(-50%) translateY(10px) scale(.97)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.selection-bar__drag-handle{color:#ffffff59;cursor:grab;padding:0 .3rem 0 .1rem;flex-shrink:0}.selection-bar__badge{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 .4rem;border-radius:6px;background:#3b5bdb;color:#fff;font-size:.8rem;font-weight:700;flex-shrink:0}.selection-bar__label{font-size:.8rem;color:#ffffffbf;padding:0 .4rem}.selection-bar__divider{width:1px;height:20px;background:#ffffff26;margin:0 .2rem;flex-shrink:0}.selection-bar__btn{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .55rem;border:none;border-radius:7px;background:#ffffff14;color:#ffffffd9;font-size:.78rem;cursor:pointer;transition:background .12s}.selection-bar__btn:hover{background:#ffffff29;color:#fff}.selection-bar__btn--danger{color:#ff8a8a}.selection-bar__btn--danger:hover{background:#dc35454d;color:#ffb3b3}.selection-bar__close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-left:.15rem;border:none;border-radius:50%;background:#ffffff1a;color:#ffffffb3;cursor:pointer;transition:background .12s,color .12s;flex-shrink:0}.selection-bar__close:hover{background:#fff3;color:#fff}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;font-size:.85rem;color:var(--color-text-secondary);padding:1rem 1.35rem}.pagination-info{font-variant-numeric:tabular-nums;font-weight:600}.pagination-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary);padding:.4rem .85rem;border-radius:999px;font-size:.82rem;font-weight:600;cursor:pointer;transition:border-color .2s ease,background .2s ease}.pagination-btn:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-alt)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-limit{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--color-text-secondary);margin-left:.5rem}.pagination-limit-select{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-size:.8rem;padding:.2rem .4rem;cursor:pointer}.sortable-th{cursor:pointer!important;-webkit-user-select:none;user-select:none;transition:color .15s ease}.sortable-th:hover{color:var(--color-accent)}.sort-indicator{font-size:.6rem;vertical-align:middle;margin-left:.2rem}.tag-td{cursor:pointer;transition:background .12s ease}.tag-td:hover{background:#0f62fe0a}.tag-td--open{background:#0f62fe12}.tag-td-add{font-size:.72rem;color:var(--color-text-tertiary);font-style:italic;padding:.05rem .25rem}.tag-td:hover .tag-td-add{color:var(--color-accent)}.tag-chips-cell{display:flex;flex-wrap:wrap;gap:.2rem}.tp-popover{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 6px 24px #00000024,0 1px 4px #0000000f;overflow:hidden;animation:tp-in .1s ease}@keyframes tp-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.tp-search-row{display:flex;align-items:center;gap:.5rem;padding:.55rem .75rem;border-bottom:1px solid var(--color-border)}.tp-search-icon{color:var(--color-text-tertiary);flex-shrink:0}.tp-search{flex:1;min-width:0;border:none;outline:none;font-size:.82rem;font-family:inherit;background:transparent;color:var(--color-text-primary)}.tp-search::placeholder{color:var(--color-text-tertiary)}.tp-list{max-height:300px;overflow-y:auto}.tp-section-header{padding:.35rem .75rem .15rem;font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-tertiary)}.tp-divider{height:1px;background:var(--color-border);margin:.2rem 0}.tp-item{display:flex;align-items:center;position:relative}.tp-item--editing{padding:.3rem .5rem;gap:.35rem}.tp-item-toggle{flex:1;display:flex;align-items:center;gap:.5rem;padding:.42rem .75rem;border:none;background:transparent;cursor:pointer;text-align:left;font-family:inherit;font-size:.82rem;color:var(--color-text-primary);transition:background .1s ease;min-width:0}.tp-item-toggle:hover{background:var(--color-surface-muted)}.tp-item-toggle:disabled{opacity:.5;cursor:not-allowed}.tp-check{width:16px;height:16px;border-radius:4px;border:1.5px solid var(--color-border-strong);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:border-color .12s ease,background .12s ease}.tp-check--on{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.tp-swatch{width:12px;height:12px;border-radius:3px;background:var(--color-surface-muted);border:1px solid var(--color-border);flex-shrink:0}.tp-item--checked .tp-swatch{background:#0f62fe2e;border-color:#0f62fe4d}.tp-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-menu-wrap{position:relative;flex-shrink:0}.tp-menu-trigger{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:5px;background:transparent;color:var(--color-text-tertiary);cursor:pointer;margin-right:.35rem;transition:background .12s ease,color .12s ease;opacity:0}.tp-item:hover .tp-menu-trigger,.tp-menu-trigger--open{opacity:1}.tp-menu-trigger:hover,.tp-menu-trigger--open{background:var(--color-surface-muted);color:var(--color-text-primary)}.tp-context-menu{position:absolute;right:0;top:calc(100% + 2px);z-index:100;min-width:190px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 16px #0000001f;overflow:hidden;animation:tp-in .08s ease}.tp-context-menu button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;border:none;background:transparent;font-family:inherit;font-size:.82rem;color:var(--color-text-primary);cursor:pointer;text-align:left;transition:background .1s ease}.tp-context-menu button:hover{background:var(--color-surface-muted)}.tp-context-menu button+button{border-top:1px solid var(--color-border)}.tp-context-danger{color:var(--color-danger)!important}.tp-context-danger svg{stroke:var(--color-danger)}.tp-context-menu--confirm{padding:.6rem .75rem;display:flex;flex-direction:column;gap:.5rem;font-size:.8rem;color:var(--color-text-secondary)}.tp-context-menu--confirm p{line-height:1.4}.tp-confirm-btns{display:flex;gap:.4rem}.tp-confirm-btns button{padding:.32rem .6rem!important;border-radius:5px!important;border:1px solid var(--color-border)!important;font-weight:500;font-size:.78rem!important}.tp-confirm-yes{background:var(--color-danger)!important;color:#fff!important;border-color:var(--color-danger)!important}.tp-confirm-yes:hover{background:#c03040!important}.tp-confirm-yes:disabled{opacity:.6;cursor:not-allowed}.tp-edit-input{flex:1;min-width:0;font-size:.82rem;font-family:inherit;padding:.3rem .5rem;border:1.5px solid var(--color-accent);border-radius:6px;outline:none;background:var(--color-surface);color:var(--color-text-primary)}.tp-edit-cancel{border:none;background:transparent;color:var(--color-text-tertiary);cursor:pointer;font-size:.8rem;padding:.2rem .3rem;border-radius:4px;flex-shrink:0}.tp-edit-cancel:hover{background:var(--color-surface-muted)}.tp-create{display:block;width:100%;padding:.45rem .75rem;border:none;background:transparent;font-family:inherit;font-size:.82rem;color:var(--color-accent);cursor:pointer;text-align:left;transition:background .1s ease}.tp-create:hover{background:var(--color-surface-muted)}.tp-loading,.tp-empty{padding:.6rem .75rem;font-size:.78rem;color:var(--color-text-tertiary);font-style:italic}.kw-date{color:var(--color-text-secondary);font-size:.8rem;white-space:nowrap}.data-table{min-width:640px}.sidebar-builder{padding:1rem;border-radius:16px;background:var(--color-surface-alt);border:1px solid var(--color-border);display:flex;flex-direction:column;gap:.65rem}.sidebar-builder-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.sidebar-builder-header .card-title{font-size:.78rem}.sidebar-builder-actions{display:flex;align-items:center;gap:.3rem;flex-shrink:0}.builder-header-btn{display:inline-flex;align-items:center;justify-content:center;height:22px;padding:0 .55rem;font-size:.7rem;font-weight:600;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface-raised);color:var(--color-text-secondary);cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.builder-header-btn:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.builder-header-btn--clean{border-color:#0f62fe4d;color:var(--color-accent)}.builder-header-btn--clean:hover{background:#0f62fe1a;border-color:var(--color-accent)}.sidebar-builder-count{display:inline-flex;align-items:center;gap:.3rem;height:22px;font-size:.7rem;font-weight:600;color:var(--color-accent);background:#0f62fe1a;padding:0 .55rem;border-radius:999px}.sidebar-builder-injected-label{max-width:7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#7850dc1f;color:#7850dce6;cursor:default}.sidebar-builder-injected-clear{display:inline-flex;align-items:center;justify-content:center;margin-left:.1rem;padding:0;background:transparent;border:none;color:inherit;font-size:.85rem;line-height:1;cursor:pointer;opacity:.7;flex-shrink:0}.sidebar-builder-injected-clear:hover{opacity:1}.sidebar-builder-empty{font-size:.8rem;color:var(--color-text-tertiary);text-align:center;padding:1rem .5rem;line-height:1.45}.sidebar-builder-actions{display:flex;gap:.4rem}.sidebar-builder-meta{display:flex;gap:.5rem;flex-wrap:wrap;font-size:.72rem;color:var(--color-text-tertiary)}.sidebar-builder-queue{display:flex;flex-direction:column;gap:.4rem;padding-top:.25rem}.sidebar-builder-queue-term{font-size:.75rem;font-weight:600;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-builder-queue-btns{display:flex;gap:.4rem}.sidebar-boolean-output{max-height:18rem;font-size:.75rem;padding:.85rem;border-radius:10px}.boolean-output{font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:.82rem;line-height:1.55;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:14px;padding:1.2rem;white-space:pre-wrap;word-break:break-word;max-height:28rem;overflow-y:auto;color:var(--color-text-secondary)}.dim-pills-row{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}.dim-pill{display:inline-flex;align-items:center;gap:.25rem;padding:.28rem .6rem;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);font-size:.73rem;font-weight:600;text-transform:capitalize;letter-spacing:.01em;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease;white-space:nowrap}.dim-pill:hover{background:var(--color-surface-muted);border-color:var(--color-border-strong);color:var(--color-text-primary)}.dim-pill--open{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.dim-pill--open:hover{background:var(--color-accent);opacity:.9}.dim-pill-arrow{font-size:.6rem;opacity:.7}.dim-pill-loading,.dim-pill-empty{font-size:.75rem;color:var(--color-text-tertiary);font-style:italic}.dim-refresh-btn{margin-left:auto;font-size:.9rem;line-height:1}.dim-value-panel{border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);overflow:hidden}.dim-value-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.45rem .65rem;background:var(--color-surface-muted);border-bottom:1px solid var(--color-border)}.dim-value-panel-label{font-size:.6rem;font-weight:700;letter-spacing:.1em;color:var(--color-text-tertiary)}.dim-value-list{max-height:180px;overflow-y:auto;display:flex;flex-direction:column}.dim-value-item{display:flex;align-items:center;justify-content:space-between;padding:.4rem .65rem;border:none;background:transparent;color:var(--color-text-primary);font-size:.8rem;text-align:left;cursor:pointer;transition:background .12s ease;gap:.5rem}.dim-value-item:hover{background:#0f62fe12}.dim-value-item+.dim-value-item{border-top:1px solid var(--color-border)}.dim-value-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dim-value-count{font-size:.68rem;font-weight:600;color:var(--color-text-tertiary);background:var(--color-surface-muted);padding:.1rem .35rem;border-radius:999px;flex-shrink:0}.operator-btns{display:flex;gap:.3rem;flex-wrap:wrap}.operator-btn{padding:.22rem .6rem;border-radius:6px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-accent);font-size:.68rem;font-weight:700;letter-spacing:.05em;cursor:pointer;transition:background .15s ease,border-color .15s ease;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace}.operator-btn:hover{background:#0f62fe14;border-color:var(--color-accent)}.operator-btn:active{background:#0f62fe29}.meta-plan{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;min-height:2rem;padding:.5rem .6rem;border-radius:8px;border:1px dashed var(--color-border);background:var(--color-surface)}.meta-plan-placeholder{font-size:.75rem;color:var(--color-text-tertiary);font-style:italic}.meta-tag-token{display:inline-flex;align-items:center;gap:.2rem;padding:.2rem .2rem .2rem .5rem;border-radius:999px;background:#0f62fe1a;border:1px solid rgba(15,98,254,.3);font-size:.72rem;font-weight:500;color:var(--color-accent);max-width:100%}.meta-tag-dim{opacity:.65;font-size:.65rem;text-transform:capitalize;flex-shrink:0}.meta-tag-dim:after{content:":";margin-right:.2rem}.meta-tag-val{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.meta-remove-btn{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:none;background:#0f62fe33;color:var(--color-accent);font-size:.7rem;line-height:1;cursor:pointer;flex-shrink:0;transition:background .12s ease;padding:0}.meta-remove-btn:hover{background:var(--color-accent);color:#fff}.meta-op-token{display:inline-flex;align-items:center;padding:.18rem .45rem;border-radius:5px;border:1px solid var(--color-border-strong);background:var(--color-surface-muted);color:var(--color-text-secondary);font-size:.65rem;font-weight:700;letter-spacing:.06em;cursor:pointer;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;transition:background .12s ease,color .12s ease}.meta-op-token:hover{background:var(--color-surface-alt);color:var(--color-text-primary)}.meta-clear-btn{margin-left:auto;border:none;background:transparent;color:var(--color-text-tertiary);font-size:.68rem;cursor:pointer;padding:.15rem .35rem;border-radius:4px;transition:color .12s ease,background .12s ease}.meta-clear-btn:hover{color:var(--color-danger);background:#df4d5614}.sidebar-assembled-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-tertiary)}.metrics-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.35rem}.metric-card{padding:1.5rem;border-radius:20px;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 12px 28px #0f172a14;display:flex;flex-direction:column;gap:.65rem}.metric-label{font-weight:500;font-size:.85rem;color:var(--color-text-secondary)}.metric-value{font-size:clamp(1.8rem,2vw + 1rem,2.4rem);font-weight:600;letter-spacing:-.02em;color:var(--color-text-primary)}.metric-detail{font-size:.8rem;color:var(--color-text-tertiary)}.export-panel{display:flex;flex-direction:column;gap:1rem}.export-row{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.csv-drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;padding:1.25rem 1rem;border:2px dashed var(--color-border);border-radius:12px;background:var(--color-surface);cursor:pointer;transition:border-color .15s,background .15s;text-align:center;-webkit-user-select:none;user-select:none}.csv-drop-zone:hover,.csv-drop-zone:focus{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 5%,transparent);outline:none}.csv-drop-zone--active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.csv-drop-zone__icon{font-size:1.75rem;line-height:1}.csv-drop-zone__text{font-size:.9rem;color:var(--color-text)}.csv-drop-zone__hint{font-size:.75rem;color:var(--color-muted);font-family:var(--font-mono, monospace);letter-spacing:.01em}.import-result{margin-top:.5rem;padding:.5rem .75rem;border-radius:10px;font-size:.85rem;background:#16956b14;color:var(--color-success)}.import-result--error{background:#df4d5614;color:var(--color-danger)}.import-errors{margin-top:.5rem;font-size:.8rem;color:var(--color-danger)}.import-errors summary{cursor:pointer;font-weight:600;padding:.25rem 0}.import-errors ul{margin:.35rem 0 0 1.25rem;padding:0;list-style:disc;display:flex;flex-direction:column;gap:.2rem}:root{color-scheme:light;font-family:Roboto,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;--color-background: #f5f7fb;--color-surface: #ffffff;--color-surface-muted: #eff3fb;--color-surface-alt: #f8fafc;--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-tertiary: #64748b;--color-border: #d7dce5;--color-border-strong: #b5bed0;--color-accent: #0f62fe;--color-accent-soft: #e5edff;--color-warm: #ff7633;--color-success: #16956b;--color-danger: #df4d56}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;background:var(--color-background);color:var(--color-text-primary);transition:background .3s ease,color .3s ease}a{color:inherit;text-decoration:none}button{font-family:inherit}#root{min-height:100vh;background-color:transparent}body.theme-bright{--color-background: linear-gradient(180deg, #f6f8fc 0%, #eef2f7 100%)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--color-border-strong)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.card{padding:1.5rem;border-radius:20px;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 12px 28px #0f172a14;display:flex;flex-direction:column;gap:.85rem}.card-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.card-title{font-size:.95rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.55rem 1.2rem;border:none;border-radius:999px;font-weight:600;font-size:.88rem;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,background .2s ease;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-primary{background:#0f62fee6;color:#fff;box-shadow:0 10px 22px #0f62fe40}.btn-primary:not(:disabled):hover{transform:translateY(-1px);background:#0f62fe;box-shadow:0 12px 28px #0f62fe4d}.btn-secondary{background:#94a3b82e;color:var(--color-text-primary);box-shadow:0 4px 12px #0f172a1f}.btn-secondary:not(:disabled):hover{transform:translateY(-1px);background:#94a3b847;box-shadow:0 10px 20px #0f172a2e}.btn-danger{background:#df4d5626;color:var(--color-danger)}.btn-danger:not(:disabled):hover{background:#df4d5640}.btn-clean{background:#14b8a626;color:#14b8a6;border:1px solid rgba(20,184,166,.3);box-shadow:0 4px 12px #14b8a614}.btn-clean:not(:disabled):hover{background:#14b8a640;border-color:#14b8a680;box-shadow:0 8px 20px #14b8a62e;transform:translateY(-1px)}.view-hidden{display:none}.view-active{display:contents}.btn-sm{padding:.35rem .85rem;font-size:.8rem}.btn-ghost{background:transparent;color:var(--color-text-secondary);padding:.25rem .5rem;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-radius:6px;border:1px solid var(--color-border);cursor:pointer;transition:all .15s ease}.btn-ghost:hover{background:var(--color-surface-muted);color:var(--color-text-primary)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--color-text-tertiary);cursor:pointer;transition:background .15s,color .15s}.icon-btn:hover{background:#94a3b826;color:var(--color-text-primary)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn--danger:hover{background:#df4d5626;color:var(--color-danger)}tr.row-selected{background:#3b82f60f}.toggle{position:relative;width:36px;height:20px;display:inline-block;cursor:pointer}.toggle input{opacity:0;width:0;height:0}.toggle-track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:var(--color-border);transition:background .2s ease}.toggle input:checked+.toggle-track{background:var(--color-success)}.toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s ease}.toggle input:checked+.toggle-track:after{transform:translate(16px)}.skeleton{position:relative;overflow:hidden;background:var(--color-surface-muted);border-radius:12px}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);animation:shimmer 1.8s infinite}@keyframes shimmer{to{transform:translate(100%)}}.skeleton-text{height:16px;border-radius:8px;margin-bottom:.5rem}.skeleton-heading{height:24px;width:60%;border-radius:10px;margin-bottom:.75rem}.skeleton-block{height:120px;border-radius:16px}.empty-state{text-align:center;padding:3rem 1.5rem;border-radius:20px;background:var(--color-surface-alt);color:var(--color-text-secondary);font-size:.95rem}.empty-state-icon{font-size:2.5rem;margin-bottom:.75rem;opacity:.5}.error-boundary{padding:2rem;border-radius:20px;background:#df4d5614;border:1px solid rgba(223,77,86,.25);text-align:center;color:var(--color-danger)}.error-boundary h3{font-size:1.1rem;margin-bottom:.5rem}.error-boundary p{font-size:.9rem;color:var(--color-text-secondary)}@media(max-width:1024px){.app-sidebar{width:180px}}@media(max-width:768px){.app-shell{flex-direction:column}.app-sidebar{width:100%;height:auto;position:relative;padding:.75rem 1rem;overflow-x:auto;gap:.75rem}.app-sidebar-brand h1{font-size:1rem}.app-nav{flex-direction:row;gap:.25rem}.app-nav-label,.sidebar-builder{display:none}.app-main{padding:1.5rem 1rem 2rem}.metrics-board{grid-template-columns:1fr 1fr}}@media(max-width:520px){.metrics-board{grid-template-columns:1fr}.filterbar-fields{flex-direction:column}.boolean-panel{padding:1.25rem}.boolean-output{font-size:.75rem}.generate-controls{flex-direction:column;align-items:stretch}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.app-main>*{animation:fadeInUp .35s ease both}.feed-entry{animation:fadeInUp .3s ease both}.metric-card{animation:fadeInUp .35s ease both}.metrics-board .metric-card:nth-child(1){animation-delay:0s}.metrics-board .metric-card:nth-child(2){animation-delay:.04s}.metrics-board .metric-card:nth-child(3){animation-delay:.08s}.metrics-board .metric-card:nth-child(4){animation-delay:.12s}.metrics-board .metric-card:nth-child(5){animation-delay:.16s}.metrics-board .metric-card:nth-child(6){animation-delay:.2s}.metrics-board .metric-card:nth-child(7){animation-delay:.24s}.btn:focus-visible,.agent-dropdown-btn:focus-visible,.agent-dropdown-item:focus-visible,.app-nav-item:focus-visible,.filterbar-input:focus-visible,.filterbar-select:focus-visible,.term-textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.loading-splash{display:grid;place-items:center;height:100vh;background:var(--color-bg)}.loading-splash-inner{text-align:center}.loading-splash-inner .brand-icon{width:40px;height:40px;border-radius:10px;background:var(--color-accent);color:#fff;display:grid;place-items:center;font-weight:700;font-size:1.1rem;margin:0 auto .75rem}.loading-splash-inner p{color:var(--color-text-secondary);font-size:.85rem}
