manifest
Version:
Self-hosted Manifest LLM router with embedded server, SQLite database, and dashboard
1 lines • 119 kB
CSS
@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/fonts/bricolage-grotesque-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/dm-sans-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/jetbrains-mono-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:1000;padding:var(--gap-sm) var(--gap-md);background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:var(--font-size-sm);font-weight:600;text-decoration:none;border-radius:var(--radius)}.skip-link:focus{position:fixed;top:var(--gap-sm);left:var(--gap-sm);width:auto;height:auto;z-index:1000}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-body{display:flex;flex:1;padding-top:var(--header-height)}.container--lg{max-width:1400px;margin-inline:auto}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:var(--gap-xl);padding-bottom:var(--gap-lg);border-bottom:1px solid hsl(var(--border))}.page-header .btn{white-space:nowrap;flex-shrink:0}.theme-toggle{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius);background:transparent;border:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));cursor:pointer;transition:all var(--transition-fast);padding:0}.theme-toggle__icon{display:flex;align-items:center;justify-content:center;line-height:1}.not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;text-align:center;padding:var(--gap-xl)}.not-found__code{font-size:8rem;font-weight:800;letter-spacing:-.05em;line-height:1;background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--chart-1)));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.not-found__title{font-size:var(--font-size-2xl);font-weight:700;color:hsl(var(--foreground));margin-top:var(--gap-md);letter-spacing:-.025em}.not-found__text{font-size:var(--font-size-sm);color:hsl(var(--muted-foreground));margin-top:var(--gap-sm);max-width:360px}.not-found__link{display:inline-flex;align-items:center;gap:var(--gap-xs);margin-top:var(--gap-xl);padding:.625rem 1.25rem;background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-radius:var(--radius);font-size:var(--font-size-sm);font-weight:600;text-decoration:none;transition:opacity var(--transition-fast)}.not-found__link:hover{opacity:.9}.auth-layout{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--gap-lg);background:hsl(var(--background))}.auth-card{width:100%;max-width:420px;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:12px;padding:var(--gap-xl) var(--gap-xl) var(--gap-lg);box-shadow:var(--card-shadow);animation:fadeInUp .3s ease-out both}.auth-logo{text-align:center}.auth-logo__link{display:inline-flex;align-items:center;gap:var(--gap-sm);font-size:var(--font-size-lg);font-weight:700;letter-spacing:-.025em;color:hsl(var(--foreground));text-decoration:none}.auth-logo__img{width:140px;height:auto;object-fit:contain}.auth-logo__img--dark,.dark .auth-logo__img--light{display:none}.dark .auth-logo__img--dark{display:inline-block}.auth-header{text-align:center;margin-bottom:var(--gap-lg)}.auth-header__title{font-size:var(--font-size-xl);font-weight:700;color:hsl(var(--foreground));letter-spacing:-.025em;line-height:1.2}.auth-header__subtitle{font-size:var(--font-size-sm);color:hsl(var(--muted-foreground));margin-top:var(--gap-xs)}.auth-form{display:flex;flex-direction:column;gap:var(--gap-md);margin-bottom:var(--gap-lg)}.auth-form__label{display:flex;flex-direction:column;gap:var(--gap-xs);font-size:var(--font-size-sm);font-weight:500;color:hsl(var(--foreground))}.auth-form__input{height:2.75rem;padding:0 var(--gap-md);background:hsl(var(--background));color:hsl(var(--foreground));border:1px solid hsl(var(--input));border-radius:var(--radius);font-size:var(--font-size-sm);font-family:var(--font-family);transition:border-color var(--transition-fast);outline:none}.auth-form__input::placeholder{color:hsl(var(--muted-foreground))}.auth-form__input:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary) / .15)}.auth-form__actions{display:flex;justify-content:flex-end;margin-top:calc(-1 * var(--gap-xs))}.auth-form__forgot{font-size:var(--font-size-xs);color:hsl(var(--muted-foreground));text-decoration:none;transition:color var(--transition-fast)}.auth-form__forgot:hover{color:hsl(var(--foreground))}.auth-form__submit{height:2.75rem;background:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);font-size:var(--font-size-sm);font-weight:600;font-family:var(--font-family);cursor:pointer;transition:opacity var(--transition-fast)}.auth-form__submit:hover:not(:disabled){opacity:.9}.auth-form__submit:disabled{opacity:.6;cursor:not-allowed}.auth-form__error{padding:var(--gap-sm) var(--gap-md);background:hsl(var(--destructive) / .1);color:hsl(var(--destructive));border:1px solid hsl(var(--destructive) / .2);border-radius:var(--radius);font-size:var(--font-size-xs)}.auth-form__error-link{color:hsl(var(--destructive));font-weight:600;text-decoration:underline}.auth-form__success{padding:var(--gap-sm) var(--gap-md);background:#21c45d1a;color:#1a9948;border:1px solid hsl(142 71% 45% / .2);border-radius:var(--radius);font-size:var(--font-size-xs);line-height:1.5}.auth-form__link-btn{background:none;border:none;padding:0;font-size:var(--font-size-sm);font-family:var(--font-family);color:hsl(var(--primary));font-weight:500;cursor:pointer;text-decoration:underline;text-underline-offset:2px;transition:opacity var(--transition-fast)}.auth-form__link-btn:hover:not(:disabled){opacity:.8}.auth-form__link-btn:disabled{color:hsl(var(--muted-foreground));cursor:not-allowed;text-decoration:none}.auth-divider{display:flex;align-items:center;gap:var(--gap-md);margin-bottom:var(--gap-lg)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:hsl(var(--border))}.auth-divider__text{font-size:var(--font-size-xs);color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.05em}.auth-social-group{display:flex;flex-direction:column;gap:var(--gap-sm);margin-bottom:var(--gap-lg)}.auth-social-btn{display:flex;align-items:center;justify-content:center;gap:var(--gap-sm);width:100%;height:2.75rem;padding:0 var(--gap-md);background:hsl(var(--background));color:hsl(var(--foreground));border:1px solid hsl(var(--input));border-radius:var(--radius);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-family);cursor:pointer;transition:all var(--transition-fast)}.auth-social-btn:hover{background:hsl(var(--accent));border-color:hsl(var(--foreground) / .2)}.auth-social-btn__icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0}.auth-social-btn--google:hover{border-color:#4285f4}.auth-social-btn--github:hover{border-color:#6e40c9}.auth-social-btn--discord:hover{border-color:#5865f2}.auth-footer{text-align:center;padding-top:var(--gap-md);border-top:1px solid hsl(var(--border));font-size:var(--font-size-sm);color:hsl(var(--muted-foreground))}.auth-footer__link{color:hsl(var(--foreground));font-weight:500;text-decoration:none;transition:color var(--transition-fast)}.auth-footer__link:hover{text-decoration:underline}.auth-terms{text-align:center;font-size:var(--font-size-xs);color:hsl(var(--muted-foreground));line-height:1.5;margin-bottom:var(--gap-sm)}.auth-terms__link{color:hsl(var(--foreground));text-decoration:none}.auth-terms__link:hover{text-decoration:underline}@media(max-width:480px){.auth-card{padding:var(--gap-lg) var(--gap-md);border:none;box-shadow:none;background:transparent}}.summary-card{background:hsl(var(--card));border:none;border-radius:var(--radius);padding:var(--gap-lg);box-shadow:var(--card-shadow)}.trend--up,.trend--down{color:hsl(var(--muted-foreground));background:hsl(var(--muted))}.panel{background:hsl(var(--card));border:none;border-radius:var(--radius);padding:var(--gap-lg);margin-bottom:var(--gap-lg);box-shadow:var(--card-shadow);overflow-x:auto;overflow-y:hidden}.view-more-link{font-size:var(--font-size-xs);color:hsl(var(--muted-foreground));text-decoration:none;transition:color .15s}.view-more-link:hover{color:hsl(var(--foreground))}.chart-card{background:hsl(var(--card));border:none;border-radius:var(--radius);margin-bottom:var(--gap-lg);box-shadow:var(--card-shadow);animation:fadeInUp .3s ease-out both}.chart-card__header{display:flex;align-items:stretch;border-bottom:1px solid hsl(var(--border))}.chart-card__stat{display:flex;flex-direction:column;justify-content:center;min-width:200px;gap:2px;padding:var(--gap-lg) var(--gap-xl);border-right:1px solid hsl(var(--border))}.chart-card__stat:first-child{padding-left:var(--gap-lg)}.chart-card__stat--clickable{cursor:pointer;transition:all var(--transition-fast);position:relative}.chart-card__stat--clickable:after{content:"";position:absolute;bottom:-1px;left:-1px;right:-1px;height:2px;background:transparent;transition:background var(--transition-fast)}.chart-card__stat--active:after{background:hsl(var(--chart-1))}.chart-card__stat--clickable:not(.chart-card__stat--active):hover:after{background:hsl(var(--border))}.chart-card__value-row{display:flex;align-items:center;gap:var(--gap-sm)}.chart-card__controls{margin-left:auto;display:flex;align-items:center;padding:var(--gap-md) var(--gap-lg) var(--gap-md) var(--gap-xl)}.chart-card__body{padding:var(--gap-md) var(--gap-lg) var(--gap-lg);overflow:hidden}.chart-card__body .u-wrap{overflow:hidden!important}.u-cursor-x{border-left:1px solid hsl(var(--foreground) / .7)!important;border-left-style:solid!important;opacity:0!important;transition:opacity 60ms ease!important}.u-wrap:hover .u-cursor-x{opacity:1!important}.u-cursor-y{display:none!important}.expandable-card .panel{overflow:hidden;max-height:320px;padding-bottom:var(--gap-2xl)}.expandable-card__fade{position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(transparent,hsl(var(--card)) 60%);border-radius:0 0 var(--radius) var(--radius);display:flex;align-items:flex-end;justify-content:center;padding-bottom:16px;opacity:0;transition:opacity var(--transition-base)}.select{display:inline-flex;align-items:center;height:2.25rem;background:hsl(var(--background));color:hsl(var(--foreground));border:1px solid hsl(var(--input));border-radius:var(--radius);padding:0 2rem 0 .75rem;font-size:var(--font-size-sm);font-family:var(--font-family);cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center}.cost-range-filter{display:inline-flex;align-items:center;gap:4px}.cost-range-filter__input{width:80px;height:2.25rem;background:hsl(var(--background));color:hsl(var(--foreground));border:1px solid hsl(var(--input));border-radius:var(--radius);padding:0 .5rem;font-size:var(--font-size-sm);font-family:var(--font-family);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cost-range-filter__input::placeholder{color:hsl(var(--muted-foreground))}.cost-range-filter__input:focus-visible{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .2)}.cost-range-filter__input::-webkit-inner-spin-button,.cost-range-filter__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.cost-range-filter__input{-moz-appearance:textfield}.cost-range-filter__sep{color:hsl(var(--muted-foreground));font-size:var(--font-size-sm);user-select:none}.setup-steps{display:flex;flex-direction:column}.setup-steps__step{display:flex;gap:var(--gap-md)}.setup-steps__divider{height:1px;background:hsl(var(--border));margin:var(--gap-lg) 0}.setup-steps__number{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:600;background:hsl(var(--primary));color:hsl(var(--primary-foreground));flex-shrink:0;margin-top:2px}.setup-steps__content{flex:1;min-width:0}.btn--primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground));gap:6px}.toast{position:fixed;bottom:var(--gap-lg);right:var(--gap-lg);display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--radius);font-size:var(--font-size-sm);box-shadow:0 4px 16px #00000026;cursor:pointer;z-index:100;animation:toast-in .2s ease-out;max-width:420px}.toast--success{background:hsl(var(--card));border:1px solid hsl(var(--success) / .4);color:hsl(var(--foreground))}.toast--error{background:hsl(var(--card));border:1px solid hsl(var(--destructive) / .4);color:hsl(var(--foreground))}.toast__icon{flex-shrink:0;display:flex}.toast__message{line-height:1.4}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.btn--danger{background:hsl(var(--destructive));color:#fff}.btn--danger:hover{background:hsl(var(--destructive) / .9)}.settings-section__title--danger{color:hsl(var(--destructive))}.settings-card--danger{border-color:hsl(var(--destructive) / .3)}.settings-card--danger .settings-card__control{display:flex;justify-content:flex-end}.sidebar{width:var(--sidebar-width);height:calc(100vh - var(--header-height));position:fixed;top:var(--header-height);left:0;background:hsl(var(--sidebar-background));border-right:1px solid hsl(var(--sidebar-border));padding:var(--gap-md) 0;display:flex;flex-direction:column;z-index:10;overflow-y:auto}.sidebar__link--disabled{opacity:.4;pointer-events:none;cursor:default}.header{position:fixed;top:0;left:0;right:0;height:var(--header-height);background:hsl(var(--background));border-bottom:1px solid hsl(var(--border));display:flex;align-items:center;justify-content:space-between;padding:0 var(--gap-lg);z-index:40}.header__left{display:flex;align-items:center;gap:var(--gap-sm);min-width:0}.header__logo{display:flex;align-items:center;gap:var(--gap-sm);font-size:var(--font-size-sm);font-weight:700;letter-spacing:-.025em;color:hsl(var(--foreground));text-decoration:none}.header__logo-img{width:152px;height:auto;object-fit:contain;margin-bottom:9px}.header__logo-img--dark,.dark .header__logo-img--light{display:none}.dark .header__logo-img--dark{display:block}.header__mode-badge{display:inline-flex;align-items:center;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:4px 7px 3px;border-radius:var(--radius);background:hsl(var(--success) / .15);color:hsl(var(--success));line-height:1;user-select:none}.header__mode-badge--dev{background:#f9741526;color:#f97415}.header__separator{color:hsl(var(--muted-foreground));font-size:var(--font-size-sm);user-select:none}.header__breadcrumb-link{font-size:var(--font-size-sm);color:hsl(var(--muted-foreground));text-decoration:none;transition:color var(--transition-fast)}.header__breadcrumb-link:hover{color:hsl(var(--foreground))}.header__breadcrumb-current{font-size:var(--font-size-sm);font-weight:500;color:hsl(var(--foreground))}.header__right{display:flex;align-items:center;align-self:stretch;gap:var(--gap-sm)}.header__avatar-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;padding:2px;border-radius:50%;transition:opacity var(--transition-fast)}.header__avatar-btn:hover{opacity:.8}.header__avatar{width:28px;height:28px;border-radius:50%;background:hsl(var(--chart-1));color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:600}.header__dropdown{position:absolute;top:100%;right:0;min-width:220px;margin-top:4px;background:hsl(var(--popover));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:0 4px 16px #00000026;padding:4px;z-index:50;animation:fadeInUp .1s ease-out}.header__dropdown-header{padding:8px 8px 6px}.header__dropdown-name{display:block;font-size:var(--font-size-sm);font-weight:600;color:hsl(var(--foreground))}.header__dropdown-email{display:block;font-size:var(--font-size-xs);color:hsl(var(--muted-foreground));margin-top:1px}.header__dropdown-divider{height:1px;background:hsl(var(--border));margin:4px 0}.header__dropdown-item{display:flex;align-items:center;gap:var(--gap-sm);width:100%;padding:6px 8px;border:none;background:transparent;color:hsl(var(--foreground));font-size:var(--font-size-sm);font-family:var(--font-family);border-radius:calc(var(--radius) - 2px);cursor:pointer;transition:background var(--transition-fast);text-decoration:none}.header__dropdown-item:hover{background:hsl(var(--accent))}.header__dropdown-item--danger{color:hsl(var(--foreground))}.header__dropdown-item--danger:hover{background:hsl(var(--accent))}.header__docs-link{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:6px;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--foreground));font-size:var(--font-size-xs);font-weight:600;font-family:var(--font-family);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;line-height:1}.header__docs-link:hover{border-color:hsl(var(--ring) / .3);background:hsl(var(--muted))}.header__github-star{position:relative;display:flex;align-items:center}.header__github-star-btn{display:inline-flex;align-items:stretch;height:28px;border-radius:6px;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--foreground));font-size:var(--font-size-xs);font-weight:600;font-family:var(--font-family);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;line-height:1;overflow:hidden}.header__github-star-btn:hover{border-color:hsl(var(--ring) / .3)}.header__github-star-action{display:flex;align-items:center;gap:6px;padding:0 10px;background:hsl(var(--muted));transition:background var(--transition-fast)}.header__github-star-btn:hover .header__github-star-action{background:hsl(var(--muted-foreground) / .15)}.header__github-icon{flex-shrink:0}.header__github-star-label{font-size:var(--font-size-xs);font-weight:600}.header__github-star-count{display:flex;align-items:center;padding:0 10px;font-size:var(--font-size-xs);font-weight:600;font-variant-numeric:tabular-nums;border-left:1px solid hsl(var(--border))}.header__github-star-close{position:absolute;top:-6px;right:-6px;width:16px;height:16px;border-radius:50%;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--muted-foreground));display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:all var(--transition-fast);padding:0;line-height:1}.header__github-star:hover .header__github-star-close{opacity:1}.header__github-star-close:hover{background:hsl(var(--destructive));border-color:hsl(var(--destructive));color:#fff}.header__star-separator{width:1px;align-self:stretch;background:hsl(var(--border));margin:0 8px}.custom-select{position:relative;display:inline-block}.custom-select__trigger{display:inline-flex;align-items:center;gap:6px;height:2rem;padding:0 8px 0 10px;background:transparent;color:hsl(var(--foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);font-size:var(--font-size-sm);font-family:var(--font-family);font-weight:400;cursor:pointer;transition:border-color var(--transition-fast);white-space:nowrap}.custom-select__trigger:hover,.custom-select__trigger--open{border-color:hsl(var(--foreground) / .3)}.custom-select__value{flex:1;text-align:left}.custom-select__chevron{color:hsl(var(--muted-foreground));flex-shrink:0;transition:transform var(--transition-fast)}.custom-select__trigger--open .custom-select__chevron{transform:rotate(180deg)}.custom-select__dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:max(100%,140px);background:hsl(var(--popover));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:0 4px 12px #00000014;padding:4px 0;z-index:50;animation:fadeInUp .1s ease-out}.custom-select__option{display:block;width:100%;padding:6px 14px;border:none;background:transparent;color:hsl(var(--popover-foreground));font-size:var(--font-size-sm);font-family:var(--font-family);cursor:pointer;transition:background var(--transition-fast);white-space:nowrap;text-align:left}.custom-select__option:hover{background:hsl(var(--accent))}.custom-select__option--selected{background:hsl(var(--accent));font-weight:500}.data-table th{text-align:left;font-size:var(--font-size-xs);font-weight:500;color:hsl(var(--muted-foreground));padding:12px var(--gap-md);border-bottom:1px solid hsl(var(--border));height:40px;white-space:nowrap}.data-table__sortable{cursor:pointer;user-select:none}.data-table__sortable:hover{color:hsl(var(--foreground))}.data-table td{padding:12px var(--gap-md);border-bottom:1px solid hsl(var(--border));color:hsl(var(--foreground));white-space:nowrap}.data-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.status-badge--error,.status-badge--rate_limited{background:hsl(var(--destructive) / .1);color:hsl(var(--destructive))}.status-badge--rate_limited a{color:inherit;text-decoration:none}.status-badge--rate_limited a:hover{text-decoration:underline}.status-badge--fallback_error{background:#f59f0a26;color:#c47f08;cursor:pointer}@keyframes msg-highlight-flash{0%{background:#f59f0a26}to{background:transparent}}.data-table tr.msg-highlight{animation:msg-highlight-flash 2s ease-out}.status-badge-tooltip{position:relative;display:inline-flex;cursor:help}.status-badge-tooltip__bubble{display:none;position:absolute;bottom:calc(100% + 8px);right:0;padding:8px 12px;background:hsl(var(--popover));color:hsl(var(--popover-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);font-size:var(--font-size-xs);font-weight:400;line-height:1.5;white-space:normal;width:max-content;max-width:320px;box-shadow:0 2px 8px hsl(var(--foreground) / .08);z-index:50;pointer-events:none}.status-badge-tooltip:hover .status-badge-tooltip__bubble,.status-badge-tooltip:focus .status-badge-tooltip__bubble{display:block}.tier-badge{display:inline-flex;align-items:center;vertical-align:middle;font-size:var(--font-size-2xs, 10px);padding:1px 6px;border-radius:var(--radius-sm);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.tier-badge--simple{background:hsl(var(--success) / .1);color:hsl(var(--success))}.tier-badge--standard{background:hsl(var(--chart-2) / .15);color:hsl(var(--chart-2))}.tier-badge--complex{background:hsl(var(--chart-5) / .15);color:hsl(var(--chart-5))}.tier-badge--reasoning{background:hsl(var(--destructive) / .1);color:hsl(var(--destructive))}.feed-item{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid hsl(var(--border));transition:background var(--transition-fast)}.skill-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-top:7px;background:hsl(var(--muted-foreground))}.skill-dot--active{background:hsl(var(--chart-1))}.feed-item__icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:hsl(var(--muted));color:hsl(var(--muted-foreground));margin-top:2px}.feed-item__body{flex:1;min-width:0}.feed-item__desc{font-size:var(--font-size-sm);color:hsl(var(--foreground));line-height:1.4}.feed-item__sub{display:flex;align-items:center;gap:6px;margin-top:3px;font-size:var(--font-size-xs);color:hsl(var(--muted-foreground))}.feed-item__sub span+span:before{content:"·";margin-right:6px}.feed-item__status{flex-shrink:0;margin-top:4px}.empty-state__img-wrapper{position:relative;width:50%;margin:var(--gap-xl) auto 0;overflow:hidden}.empty-state__img-wrapper:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 60%,hsl(var(--background)));pointer-events:none}.empty-state__img{display:block;width:100%}.dark .empty-state__img{filter:invert(.92) hue-rotate(180deg)}.pagination{display:flex;align-items:center;justify-content:space-between;padding:var(--gap-md);border-top:1px solid hsl(var(--border))}.pagination__summary{font-size:var(--font-size-xs);color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}.pagination__controls{display:flex;gap:var(--gap-sm)}.pagination__btn{min-width:80px}.msg-detail__chevron-th{width:36px;padding:0;position:sticky;right:0;background:hsl(var(--card));z-index:2}.msg-detail__chevron-cell{width:36px;padding:4px 8px!important;text-align:center;border-bottom:1px solid hsl(var(--border));position:sticky;right:0;background:hsl(var(--card));z-index:1}.data-table tbody tr:hover .msg-detail__chevron-cell{background:hsl(var(--muted) / .5)}.msg-row--expanded .msg-detail__chevron-cell{background:hsl(var(--card))}.msg-detail__chevron-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:hsl(var(--muted-foreground));border-radius:var(--radius-sm);cursor:pointer;transition:transform var(--transition-fast),color var(--transition-fast)}.msg-detail__chevron-btn:hover{color:hsl(var(--foreground));background:hsl(var(--muted))}.msg-detail__chevron-btn--open{transform:rotate(180deg);color:hsl(var(--foreground))}.msg-row--expanded>td{border-bottom-color:transparent}.msg-detail__row>td{padding:0!important}.msg-detail__cell{border-bottom:1px solid hsl(var(--border))!important}.msg-detail{padding:12px var(--gap-md) 16px;background:hsl(var(--muted) / .25)}.msg-detail__loader{display:flex;align-items:center;gap:8px;padding:12px 0;font-size:var(--font-size-sm);color:hsl(var(--muted-foreground))}.msg-detail__spinner{width:14px;height:14px;border:2px solid hsl(var(--border));border-top-color:hsl(var(--foreground));border-radius:50%;animation:msg-detail-spin .6s linear infinite}@keyframes msg-detail-spin{to{transform:rotate(360deg)}}.msg-detail__error{font-size:var(--font-size-sm);color:hsl(var(--destructive));padding:8px 0}.msg-detail__error-box{font-family:var(--font-mono);font-size:var(--font-size-xs);color:hsl(var(--destructive));background:hsl(var(--destructive) / .06);border:1px solid hsl(var(--destructive) / .15);border-radius:var(--radius-sm);padding:8px 12px;white-space:pre-wrap;word-break:break-word}.msg-detail__meta{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:12px;font-size:var(--font-size-xs)}.msg-detail__meta-item{display:flex;align-items:center;gap:6px;color:hsl(var(--foreground));font-family:var(--font-mono)}.msg-detail__meta-label{color:hsl(var(--muted-foreground));font-family:var(--font-sans, sans-serif);font-weight:500}.msg-detail__section{margin-bottom:12px}.msg-detail__section-title{display:flex;align-items:center;gap:8px;font-size:var(--font-size-xs);font-weight:600;color:hsl(var(--foreground));margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.msg-detail__count{font-weight:400;color:hsl(var(--muted-foreground))}.msg-detail__table th{font-size:10px;padding:6px var(--gap-sm);height:auto}.msg-detail__table td{padding:6px var(--gap-sm);font-size:var(--font-size-xs)}.msg-detail__mono{font-family:var(--font-mono)}.msg-detail__mono-xs{font-family:var(--font-mono);font-size:var(--font-size-xs);color:hsl(var(--muted-foreground))}.msg-detail__log-body{white-space:pre-wrap;word-break:break-word;max-width:500px}.msg-detail__severity-dot{display:inline-block;width:6px;height:6px;border-radius:50%;vertical-align:middle}.msg-detail__fallback-banner{font-size:var(--font-size-xs);padding:6px 12px;margin-bottom:10px;border-radius:var(--radius-sm);background:#f59f0a1a;color:#ab6f07;border:1px solid hsl(38 92% 50% / .2)}.msg-detail__summary{display:flex;flex-wrap:wrap;gap:8px 20px;margin-bottom:8px;font-size:var(--font-size-xs)}.msg-detail__summary-item{display:flex;align-items:center;gap:6px}.free-models-accordion{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .3s ease,opacity .25s ease}.free-models-accordion>*{overflow:hidden}.free-models-accordion--open{grid-template-rows:1fr;opacity:1}.free-models-base-url-row{display:flex;align-items:center;gap:8px}.dark .free-models-caret{filter:invert(1)}@media(max-width:640px){.free-models-base-url-row{flex-wrap:wrap}}.agents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--gap-lg)}.agent-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:var(--gap-lg);box-shadow:var(--card-shadow);text-decoration:none;color:inherit;transition:all var(--transition-base);animation:fadeInUp .3s ease-out both}.agent-card:hover{box-shadow:var(--card-shadow-hover);border-color:hsl(var(--foreground) / .2)}.agent-card--skeleton{pointer-events:none}.agent-card__top{margin-bottom:var(--gap-sm)}.agent-card__name{font-size:var(--font-size-base);font-weight:600;color:hsl(var(--foreground))}.agent-card__stats{display:flex;flex-wrap:wrap;gap:var(--gap-sm) var(--gap-md);margin-bottom:var(--gap-md)}.agent-card__stat{display:flex;align-items:baseline;gap:4px}.agent-card__stat-value{font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-mono);color:hsl(var(--foreground))}.agent-card__stat-label{font-size:var(--font-size-xs);color:hsl(var(--muted-foreground));width:55px;flex-shrink:0}.agent-card__chart{margin:0 calc(var(--gap-lg) * -1) calc(var(--gap-lg) * -1);overflow:hidden;border-radius:0 0 var(--radius) var(--radius);background:transparent}.agent-card__chart svg{width:100%;height:50px}.account-modal{position:fixed;inset:0;top:var(--header-height);z-index:30;background:hsl(var(--background));overflow-y:auto}.account-modal__inner{max-width:680px;margin-inline:auto;padding:var(--gap-xl) var(--gap-lg)}.account-modal__back{display:inline-flex;align-items:center;gap:4px;padding:0;border:none;background:transparent;color:hsl(var(--muted-foreground));font-size:var(--font-size-sm);font-family:var(--font-family);cursor:pointer;margin-bottom:var(--gap-lg);transition:color var(--transition-fast)}.account-modal__back:hover{color:hsl(var(--foreground))}.settings-section__title{font-size:var(--font-size-base);font-weight:600;color:hsl(var(--foreground));margin-bottom:var(--gap-md);margin-top:var(--gap-xl)}.settings-section__title:first-of-type{margin-top:0}.settings-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);margin-bottom:var(--gap-lg);overflow:hidden}.settings-card__row{display:flex;align-items:center;justify-content:space-between;gap:var(--gap-xl);padding:var(--gap-lg);border-bottom:1px solid hsl(var(--border))}.settings-card__row:last-child{border-bottom:none}.settings-card__label{flex:1;min-width:0}.settings-card__label-title{display:block;font-size:var(--font-size-sm);font-weight:500;color:hsl(var(--foreground))}.settings-card__label-desc{display:block;font-size:var(--font-size-xs);color:hsl(var(--foreground) / .7);margin-top:2px}.settings-card__control{flex-shrink:0;width:260px}.settings-card__input{width:100%;height:2.25rem;padding:0 .75rem;background:hsl(var(--background));color:hsl(var(--foreground));border:1px solid hsl(var(--input));border-radius:var(--radius);font-size:var(--font-size-sm);font-family:var(--font-family);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.settings-card__input:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .2)}.settings-card__input[readonly]{opacity:.6;cursor:default}.settings-card__footer{display:flex;justify-content:flex-end;padding:var(--gap-sm) var(--gap-lg);background:hsl(var(--muted) / .3)}.settings-card__body{padding:var(--gap-md) var(--gap-lg)}.settings-card__desc{font-size:var(--font-size-sm);color:hsl(var(--muted-foreground));margin-bottom:var(--gap-md)}.settings-card__id-row{display:inline-flex;align-items:center;gap:var(--gap-sm);padding:var(--gap-sm) var(--gap-md);background:hsl(var(--muted) / .5);border:1px solid hsl(var(--border));border-radius:var(--radius)}.settings-card__id-value{font-family:var(--font-mono);font-size:var(--font-size-sm);color:hsl(var(--foreground))}.settings-card__copy-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:hsl(var(--muted-foreground));border-radius:calc(var(--radius) - 2px);cursor:pointer;transition:all var(--transition-fast)}.settings-card__copy-btn:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.settings-card__key-row{display:flex;align-items:center;gap:var(--gap-sm);margin-top:var(--gap-md);padding:10px 14px;background:hsl(var(--muted) / .5);border:1px solid hsl(var(--border));border-radius:var(--radius);min-width:0}.settings-card__key-value{flex:1;min-width:0;font-family:var(--font-mono);font-size:var(--font-size-sm);color:hsl(var(--foreground));word-break:break-all;line-height:1.5}.settings-card__key-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.settings-card__key-actions .modal-terminal__copy{position:static}.theme-picker{display:flex;gap:var(--gap-sm)}.theme-picker__option{display:flex;align-items:center;gap:var(--gap-sm);padding:var(--gap-sm) var(--gap-md);border:1px solid hsl(var(--border));border-radius:var(--radius);background:transparent;color:hsl(var(--muted-foreground));font-size:var(--font-size-sm);font-family:var(--font-family);cursor:pointer;transition:all var(--transition-fast)}.theme-picker__option:hover{border-color:hsl(var(--foreground) / .3);color:hsl(var(--foreground))}.theme-picker__option--active{border-color:hsl(var(--chart-1));color:hsl(var(--foreground));background:hsl(var(--chart-1) / .08)}.modal{background:hsl(var(--background));border:none;border-radius:var(--radius);width:90%;max-width:680px;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--card-shadow),0 25px 50px -12px #00000040;animation:fadeInUp .2s ease-out}.modal__close{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:var(--radius);border:none;background:transparent;color:hsl(var(--muted-foreground));cursor:pointer;transition:all var(--transition-fast)}.modal-overlay{position:fixed;inset:0;z-index:100;background:#fbf9f3e0;backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:var(--gap-lg);animation:fadeIn .15s ease-out}.dark .modal-overlay{background:#000000b3}.modal-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:16px;box-shadow:0 0 25px #00000015;width:100%;max-width:520px;padding:32px;animation:fadeInUp .2s ease-out}.modal-card__title{font-size:var(--font-size-xl);font-weight:700;color:hsl(var(--foreground));margin-bottom:4px}.modal-card__desc{font-size:var(--font-size-sm);color:hsl(var(--muted-foreground));margin-bottom:var(--gap-lg);line-height:1.5}.modal-card__desc strong{color:hsl(var(--chart-1));font-weight:600}.modal-card__note{font-size:var(--font-size-xs);color:hsl(var(--muted-foreground));text-align:center;margin-bottom:var(--gap-md)}.modal-card__privacy{display:flex;align-items:flex-start;gap:var(--gap-sm);padding:10px 12px;background:hsl(var(--chart-1) / .08);border:1px solid hsl(var(--chart-1) / .2);border-radius:var(--radius);font-size:var(--font-size-xs);color:hsl(var(--muted-foreground));line-height:1.5;margin-bottom:var(--gap-lg)}.modal-card__privacy svg{flex-shrink:0;margin-top:1px;color:hsl(var(--chart-1))}.modal-card__privacy strong{color:hsl(var(--chart-1))}.modal-card__field-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:hsl(var(--foreground));margin-top:var(--gap-md);margin-bottom:6px}.modal-card__field-label:first-of-type{margin-top:0}.modal-card__input{width:100%;height:2.25rem;padding:0 12px;background:hsl(var(--background));color:hsl(var(--foreground));border:1px solid hsl(var(--input));border-radius:var(--radius);font-size:var(--font-size-sm);font-family:var(--font-family);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);margin-bottom:0;box-sizing:border-box}.modal-card__input:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .2)}.modal-card__input::placeholder{color:hsl(var(--muted-foreground))}.modal-card__input--error{border-color:hsl(var(--destructive))}.modal-card__input--error:focus{border-color:hsl(var(--destructive));box-shadow:0 0 0 2px hsl(var(--destructive) / .2)}.modal-card__cta{display:flex;align-items:center;justify-content:center;gap:var(--gap-sm);width:100%;padding:12px;border:none;border-radius:var(--radius);background:#f97015;color:#fff;font-size:var(--font-size-base);font-weight:600;font-family:var(--font-family);cursor:pointer;transition:background var(--transition-fast)}.modal-card__cta:hover:not(:disabled){background:#ef6306}.modal-card__cta:disabled{opacity:.5;cursor:not-allowed}.modal-card__back-link{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;padding:8px;margin-top:var(--gap-sm);border:none;background:transparent;color:hsl(var(--muted-foreground));font-size:var(--font-size-sm);font-family:var(--font-family);cursor:pointer;transition:color var(--transition-fast)}.modal-card__back-link:hover{color:hsl(var(--foreground))}.modal-card__footer{display:flex;justify-content:flex-end;margin-top:var(--gap-xl)}.modal-card__footer .btn:disabled{opacity:.4;cursor:not-allowed}.modal-stepper{display:flex;align-items:center;gap:0;margin-bottom:var(--gap-xl)}.modal-stepper__step{display:flex;align-items:center;gap:8px}.modal-stepper__circle{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:600;background:hsl(var(--muted));color:hsl(var(--muted-foreground));transition:all var(--transition-base)}.modal-stepper__step--active .modal-stepper__circle,.modal-stepper__step--done .modal-stepper__circle{background:hsl(var(--chart-1));color:#fff}.modal-stepper__label{font-size:var(--font-size-sm);font-weight:500;color:hsl(var(--muted-foreground))}.modal-stepper__step--active .modal-stepper__label,.modal-stepper__step--done .modal-stepper__label{color:hsl(var(--foreground))}.modal-stepper__line{flex:1;height:1px;background:hsl(var(--border));margin:0 12px;min-width:24px}@layer base{:root{--background: 45 49% 97%;--foreground: 222.2 84% 4.9%;--card: 44 60% 99%;--card-foreground: 222.2 84% 4.9%;--popover: 44 60% 99%;--popover-foreground: 222.2 84% 4.9%;--primary: 222.2 47.4% 11.2%;--primary-foreground: 45 30% 97%;--secondary: 40 33% 93%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 40 33% 93%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 40 33% 93%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 45 30% 97%;--border: 36 25% 88%;--input: 36 25% 88%;--ring: 222.2 84% 4.9%;--radius: .5rem;--chart-1: 178 75% 44%;--chart-2: 197 37% 24%;--chart-3: 167 70% 48%;--bar-input: 178 75% 34%;--bar-output: 178 55% 72%;--bar-output-axis: 178 55% 48%;--chart-4: 349 52% 61%;--chart-5: 43 96% 56%;--sidebar-background: 43 38% 95%;--sidebar-foreground: 240 5.3% 26.1%;--sidebar-primary: 240 5.9% 10%;--sidebar-primary-foreground: 45 30% 97%;--sidebar-accent: 40 28% 93%;--sidebar-accent-foreground: 240 5.9% 10%;--sidebar-border: 36 20% 89%;--sidebar-ring: 217.2 91.2% 59.8%;--success: 178 75% 44%;--success-foreground: 0 0% 100%}.dark{--background: 0 0% 9%;--foreground: 0 0% 93%;--card: 0 0% 11%;--card-foreground: 0 0% 93%;--popover: 0 0% 11%;--popover-foreground: 0 0% 93%;--primary: 0 0% 93%;--primary-foreground: 0 0% 9%;--secondary: 0 0% 15%;--secondary-foreground: 0 0% 93%;--muted: 0 0% 15%;--muted-foreground: 0 0% 55%;--accent: 0 0% 15%;--accent-foreground: 0 0% 93%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 0 0% 93%;--border: 0 0% 18%;--input: 0 0% 18%;--ring: 0 0% 60%;--chart-1: 178 70% 50%;--chart-2: 197 50% 55%;--chart-3: 167 70% 55%;--chart-4: 349 52% 65%;--chart-5: 43 96% 65%;--bar-input: 178 70% 40%;--bar-output: 178 50% 70%;--bar-output-axis: 178 50% 55%;--sidebar-background: 0 0% 7%;--sidebar-foreground: 0 0% 93%;--sidebar-primary: 0 0% 93%;--sidebar-primary-foreground: 0 0% 9%;--sidebar-accent: 0 0% 14%;--sidebar-accent-foreground: 0 0% 93%;--sidebar-border: 0 0% 18%;--sidebar-ring: 0 0% 60%;--success: 178 70% 50%;--success-foreground: 0 0% 100%}}:root{--sidebar-width: 230px;--header-height: 48px;--gap-xs: 4px;--gap-sm: 8px;--gap-md: 16px;--gap-lg: 24px;--gap-xl: 32px;--gap-2xl: 48px;--font-family: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", ui-monospace, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: .9375rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-size-2xl: 1.875rem;--font-size-3xl: 2.25rem;--font-size-4xl: 3rem;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--card-shadow: rgba(0, 0, 0, .06) 0px 0px 0px 1px, rgba(0, 0, 0, .03) 0px 2px 6px 0px;--card-shadow-hover: rgba(0, 0, 0, .08) 0px 0px 0px 1px, rgba(0, 0, 0, .06) 0px 3px 8px 0px}.modal-terminal{border-radius:var(--radius);overflow:hidden;border:1px solid hsl(var(--border));margin-bottom:var(--gap-md)}.modal-terminal__header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:hsl(var(--muted));border-bottom:1px solid hsl(var(--border))}.modal-terminal__dots{display:flex;gap:6px}.modal-terminal__dot{width:10px;height:10px;border-radius:50%}.modal-terminal__dot--red{background:#ff5f57}.modal-terminal__dot--yellow{background:#febc2e}.modal-terminal__dot--green{background:#28c840}.modal-terminal__tabs{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs)}.modal-terminal__tab{padding:0;border:none;background:transparent;color:hsl(var(--muted-foreground));font-size:var(--font-size-xs);font-family:var(--font-family);cursor:pointer;font-weight:500}.modal-terminal__tab--active{color:hsl(var(--foreground));font-weight:600}.modal-terminal__tab:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px;border-radius:2px}.modal-terminal__tab-sep{color:hsl(var(--muted-foreground))}.modal-terminal__body{position:relative;padding:14px 44px 14px 16px;background:hsl(var(--background));font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:1.7;color:hsl(var(--foreground))}.dark .modal-terminal__body{background:#080c16;color:#20dfd9}.modal-terminal__line--comment{color:hsl(var(--muted-foreground))}.modal-terminal__prompt{color:hsl(var(--chart-1));margin-right:8px}.dark .modal-terminal__prompt{color:hsl(var(--muted-foreground))}.modal-terminal__code{word-break:break-all}.modal-terminal__copy{position:absolute;top:7px;right:7px;width:30px;height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius);background:#0000000f;color:#0006;cursor:pointer;transition:all var(--transition-fast)}.modal-terminal__copy:hover{background:#0000001a;color:#000000b3}.dark .modal-terminal__copy{background:#ffffff1a;color:#ffffff80}.dark .modal-terminal__copy:hover{background:#fff3;color:#fffc}.modal-terminal__copy:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.modal-key-box{border:1px solid hsl(var(--chart-5) / .3);border-radius:var(--radius);overflow:hidden;margin-bottom:var(--gap-lg)}.modal-key-box__header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px}.modal-key-box__label{font-size:var(--font-size-xs);font-weight:600;letter-spacing:.05em;color:hsl(var(--muted-foreground))}.modal-key-box__copy{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:transparent;color:hsl(var(--foreground));font-size:var(--font-size-xs);font-family:var(--font-family);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.modal-key-box__copy:hover{background:hsl(var(--accent))}.modal-key-box__value{display:block;padding:12px 14px;background:hsl(var(--muted));color:hsl(var(--foreground));font-family:var(--font-mono);font-size:var(--font-size-xs);word-break:break-all;line-height:1.6}.dark .modal-key-box__value{background:#080c16;color:#20dfd9}.modal-key-box__warning{display:flex;align-items:flex-start;gap:var(--gap-sm);padding:10px 14px;background:hsl(var(--chart-5) / .08);border-top:1px solid hsl(var(--chart-5) / .2);font-size:var(--font-size-xs);color:hsl(var(--muted-foreground));line-height:1.5}.modal-key-box__warning svg{flex-shrink:0;margin-top:1px;color:hsl(var(--chart-5))}.setup-step__heading{margin:0 0 4px;font-size:var(--font-size-base);font-weight:600}.setup-step__desc{margin:0 0 16px;font-size:var(--font-size-sm);color:hsl(var(--muted-foreground));line-height:1.5}.api-key-display__warning{background:hsl(var(--chart-5) / .1);border:1px solid hsl(var(--chart-5) / .3);border-radius:var(--radius);padding:10px 14px;margin-bottom:12px;font-size:var(--font-size-sm);color:hsl(var(--foreground))}.api-key-display__value{display:flex;align-items:center;gap:8px;background:hsl(var(--muted));border-radius:var(--radius);padding:10px 14px;margin-bottom:16px;font-family:var(--font-mono);font-size:var(--font-size-sm);word-break:break-all}.api-key-display__value .modal-terminal__copy{position:static;flex-shrink:0;margin-left:auto}.api-key-display__prefix{font-size:var(--font-size-sm);color:hsl(var(--muted-foreground));padding:10px 14px;background:hsl(var(--muted));border-radius:var(--radius);margin-bottom:16px}.api-key-display__code{font-family:var(--font-mono);font-size:var(--font-size-sm)}.setup-method{border:1px solid hsl(var(--border));border-radius:var(--radius);overflow:hidden;margin-bottom:8px}.setup-method--recommended{border-color:hsl(var(--chart-1) / .4)}.setup-method__header{display:flex;align-items:center;gap:8px;padding:10px 14px;background:hsl(var(--muted));cursor:pointer;border:none;width:100%;text-align:left;font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:600;color:hsl(var(--foreground))}.setup-method__header:hover{background:hsl(var(--accent))}.setup-method__header:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:-2px}.setup-method__badge{font-size:var(--font-size-xs);font-weight:600;padding:2px 8px;border-radius:99px;background:hsl(var(--chart-1) / .15);color:hsl(var(--chart-1))}.setup-method__chevron{margin-left:auto;transition:transform var(--transition-fast);color:hsl(var(--muted-foreground))}.setup-method__chevron--open{transform:rotate(180deg)}.setup-method-tabs{margin-top:8px}.setup-method-tabs .panel__tabs{width:100%;margin-bottom:12px}.setup-method-tabs .panel__tab{flex:1}.setup-method__body{padding:12px 14px;border-top:1px solid hsl(var(--border))}.setup-method__hint{margin:0 0 10px;font-size:var(--font-size-sm);color:hsl(var(--muted-foreground));line-height:1.5}.setup-method__code{position:relative;background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:12px 52px 12px 14px;font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:1.7;word-break:break-all;white-space:pre-wrap}.setup-method__code .modal-terminal__copy{top:7px;transform:none}.setup-method__actions{position:absolute;right:8px;top:8px;display:flex;gap:4px;align-items:center}.setup-method__actions .modal-terminal__copy{position:static}.dark .setup-method__code{background:#080c16;color:#20dfd9}.setup-model-hint__code{font-family:var(--font-mono);font-size:var(--font-size-sm);color:hsl(var(--foreground));background:hsl(var(--muted));padding:2px 8px;border-radius:var(--radius)}.setup-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;font-size:var(--font-size-sm)}.setup-info-grid__card{background:hsl(var(--muted));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:10px 14px}.setup-info-grid__label{color:hsl(var(--muted-foreground));margin-bottom:4px}.setup-info-grid__value{font-family:var(--font-mono);font-size:var(--font-size-xs);word-break:break-all;display:flex;align-items:center;gap:6px}.setup-info-grid__value .modal-terminal__copy{position:static;flex-shrink:0;margin-left:auto}.setup-checklist{background:hsl(var(--muted));border-radius:var(--radius);padding:14px;font-size:var(--font-size-sm);line-height:1.6}.setup-checklist__item{display:flex;align-items:center;gap:8px}.setup-checklist__item+.setup-checklist__item{margin-top:8px}.setup-onboard-fields{font-size:var(--font-size-sm)}.setup-onboard-fields__row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid hsl(var(--border))}.setup-onboard-fields__row:last-child{border-bottom:none}.setup-onboard-fields__label{color:hsl(var(--muted-foreground));font-weight:500}.setup-onboard-fields__value{font-family:var(--font-mono);font-size:var(--font-size-xs);display:flex;align-items:center;gap:6px;word-break:break-all}.setup-onboard-fields__value .modal-terminal__copy{position:static;flex-shrink:0}.notif-hint{display:flex;align-items:flex-start;gap:10px;margin-top:var(--gap-xl);margin-bottom:var(--gap-md);padding:12px 16px;background:hsl(var(--chart