.login-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:2rem}.login-container{width:100%;max-width:420px}.login-header{text-align:center;margin-bottom:2rem;color:var(--text-primary)}.login-header h1{font-family:JetBrains Mono,monospace;font-size:1.6rem;font-weight:700;margin-bottom:.5rem;letter-spacing:-.5px;color:var(--accent)}.login-header p{font-size:.9rem;color:var(--text-secondary)}.login-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.5rem}.login-card h2{font-size:1.35rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-primary)}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text-secondary);margin-bottom:.5rem}.form-group input{width:100%;padding:.75rem 1rem;font-size:.95rem;color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-tertiary);transition:border-color .18s var(--ease),box-shadow .18s var(--ease)}.form-group input::placeholder{color:var(--text-muted)}.form-group input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.error-message{padding:.75rem 1rem;background:color-mix(in srgb,var(--danger) 14%,transparent);color:color-mix(in srgb,var(--danger) 55%,var(--text-primary));border-radius:var(--radius-sm);font-size:.875rem;margin-bottom:1rem;border:1px solid color-mix(in srgb,var(--danger) 40%,transparent)}.success-message{padding:.75rem 1rem;background:color-mix(in srgb,var(--success) 14%,transparent);color:color-mix(in srgb,var(--success) 55%,var(--text-primary));border-radius:var(--radius-sm);font-size:.875rem;margin-bottom:1rem;border:1px solid color-mix(in srgb,var(--success) 40%,transparent)}.login-page .btn-primary{width:100%;padding:.875rem;font-size:1rem;font-weight:600;color:var(--accent-ink);background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius);cursor:pointer;transition:background-color .18s var(--ease),transform .12s var(--ease)}.login-page .btn-primary:hover:not(:disabled){background:var(--accent-hover)}.login-page .btn-primary:active:not(:disabled){transform:scale(.99)}.login-page .btn-primary:disabled{opacity:.55;cursor:not-allowed}.login-footer{margin-top:1.5rem;text-align:center}.btn-link{background:none;border:none;color:var(--accent-hover);font-size:.875rem;cursor:pointer;text-decoration:none;transition:color .18s var(--ease)}.btn-link:hover{color:var(--accent);text-decoration:underline}.app-loading{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-primary);color:var(--text-secondary)}.spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:var(--radius-pill);animation:spin .8s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.app-loading p{font-size:.95rem}.sidebar-user{margin-top:auto;padding:1rem;border-top:1px solid var(--border);display:flex;align-items:center;gap:.75rem}.user-info{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.user-avatar{width:36px;height:36px;border-radius:var(--radius-pill);background:var(--accent);display:flex;align-items:center;justify-content:center;color:var(--accent-ink);font-weight:700;font-size:.875rem;flex-shrink:0}.user-details{flex:1;min-width:0}.user-name{font-size:.875rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:.75rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-logout{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.5rem;cursor:pointer;color:var(--text-secondary);transition:background-color .18s var(--ease),color .18s var(--ease),border-color .18s var(--ease);display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-logout:hover{background:var(--bg-elevated);border-color:var(--border-hover);color:var(--text-primary)}.btn-logout:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:root{--scaleway: #4F0599;--aws: #FF9900;--gcp: #4285F4;--cat-compute: #5184bd;--cat-gpu: #bc694e;--cat-storage: #4ebc72;--cat-database: #bca94e;--cat-kubernetes: #7bbc4e;--cat-network: #8476cb;--cat-llm: #b260c3;--cat-embeddings: #c3609a;--cat-websearch: #7d99a8;--radius-xs: 4px;--radius-sm: 6px;--radius: 10px;--radius-lg: 16px;--radius-pill: 999px;--ease: cubic-bezier(.16, 1, .3, 1)}:root,:root[data-theme=light]{--bg-primary: #f6f8f9;--bg-secondary: #fcfdfd;--bg-tertiary: #edf1f2;--bg-elevated: #e2e7e9;--border: #d3dbde;--border-hover: #a9b6bc;--text-primary: #192024;--text-secondary: #535f65;--text-muted: #5c6970;--accent: #1d6f7c;--accent-hover: #123f47;--accent-dim: #1d6f7c1f;--accent-ink: #ffffff;--success: #137652;--warning: #905809;--danger: #af1d1d;--cat-compute-text: #2e629e;--cat-gpu-text: #9e4a2e;--cat-storage-text: #257e43;--cat-database-text: #776922;--cat-kubernetes-text: #457722;--cat-network-text: #412e9e;--cat-llm-text: #8b2e9e;--cat-embeddings-text: #9e2e6f;--cat-websearch-text: #526d7a;--shadow-overlay: 0 8px 24px rgba(25, 32, 36, .14);color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg-primary: #0a0b0f;--bg-secondary: #12141c;--bg-tertiary: #1a1d2a;--bg-elevated: #222638;--border: #2a2e42;--border-hover: #3d4260;--text-primary: #e8eaf0;--text-secondary: #9498b0;--text-muted: #878cab;--accent: #45b8c9;--accent-hover: #6ecdda;--accent-dim: #45b8c920;--accent-ink: #06171a;--success: #10b981;--warning: #f59e0b;--danger: #f25a5a;--cat-compute-text: #8db5e2;--cat-gpu-text: #e2a28d;--cat-storage-text: #8de2a9;--cat-database-text: #e2d48d;--cat-kubernetes-text: #b0e28d;--cat-network-text: #9b8de2;--cat-llm-text: #d48de2;--cat-embeddings-text: #e28dbf;--cat-websearch-text: #a8c0cc;--shadow-overlay: 0 8px 24px rgba(0, 0, 0, .35);color-scheme:dark}}:root[data-theme=dark]{--bg-primary: #0a0b0f;--bg-secondary: #12141c;--bg-tertiary: #1a1d2a;--bg-elevated: #222638;--border: #2a2e42;--border-hover: #3d4260;--text-primary: #e8eaf0;--text-secondary: #9498b0;--text-muted: #878cab;--accent: #45b8c9;--accent-hover: #6ecdda;--accent-dim: #45b8c920;--accent-ink: #06171a;--success: #10b981;--warning: #f59e0b;--danger: #f25a5a;--cat-compute-text: #8db5e2;--cat-gpu-text: #e2a28d;--cat-storage-text: #8de2a9;--cat-database-text: #e2d48d;--cat-kubernetes-text: #b0e28d;--cat-network-text: #9b8de2;--cat-llm-text: #d48de2;--cat-embeddings-text: #e28dbf;--cat-websearch-text: #a8c0cc;--shadow-overlay: 0 8px 24px rgba(0, 0, 0, .35);color-scheme:dark}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Outfit,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100dvh}.app{display:flex;min-height:100dvh}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.sidebar{width:240px;background:var(--bg-secondary);border-right:1px solid var(--border);padding:24px 0;display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:50}.sidebar-logo{padding:0 24px 28px;border-bottom:1px solid var(--border);margin-bottom:12px}.sidebar-logo h1{font-family:JetBrains Mono,monospace;font-size:15px;font-weight:700;letter-spacing:-.5px;color:var(--accent);line-height:1.3}.sidebar-logo span{font-size:11px;font-weight:400;color:var(--text-muted);display:block;margin-top:4px;font-family:Outfit,sans-serif}.nav-group+.nav-group{margin-top:18px}.nav-group-label{padding:0 24px 6px;font-size:10px;font-weight:650;letter-spacing:.4px;color:var(--text-muted)}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:11px 24px;cursor:pointer;color:var(--text-secondary);font-family:inherit;font-size:14px;font-weight:450;text-align:left;background:none;border:none;transition:color .18s var(--ease),background-color .18s var(--ease)}.nav-item:hover{color:var(--text-primary);background:var(--bg-tertiary)}.nav-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.nav-item.active{color:var(--accent);background:var(--accent-dim);font-weight:650}.nav-icon{width:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.banner-preview{display:flex;align-items:center;gap:12px;padding:8px 16px;margin-bottom:16px;font-size:13px;color:var(--warning);background:color-mix(in srgb,var(--warning) 12%,transparent);border:1px solid color-mix(in srgb,var(--warning) 28%,transparent);border-radius:var(--radius-sm)}.main{margin-left:240px;flex:1;padding:32px 40px;max-width:calc(100vw - 240px)}.page-header{margin-bottom:28px}.page-header h2{font-size:26px;font-weight:700;letter-spacing:-.5px;margin-bottom:6px}.page-header p{color:var(--text-secondary);font-size:14px}.page-title{font-size:26px;font-weight:700;letter-spacing:-.5px;margin-bottom:6px}.page-stats{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary)}.stat-sep{color:var(--text-muted);margin:0 2px}.toolbar{margin-bottom:24px;display:flex;flex-direction:column;gap:12px}.toolbar .input,.toolbar .select,.toolbar select{width:auto}.config-checks{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.config-check{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-radius:var(--radius);border:1px solid;font-size:13px}.config-check p{margin:2px 0 0;font-size:12px;color:var(--text-secondary)}.config-check-icon{font-size:14px;line-height:1.4}.config-check--error{background:color-mix(in srgb,var(--danger) 12%,transparent);border-color:var(--danger);color:var(--danger)}.config-check--warning{background:var(--warning-dim);border-color:var(--warning);color:var(--warning)}.config-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:6px;border-radius:var(--radius-pill);font-size:10px;vertical-align:middle;cursor:help}.config-badge--error{background:var(--danger);color:var(--bg-secondary)}.config-badge--warning{background:var(--warning);color:var(--bg-secondary)}.config-tooltip{position:fixed;z-index:200;width:320px;padding:10px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-overlay);font-size:12px;font-weight:400;line-height:1.45;color:var(--text-secondary);white-space:normal;text-align:left;pointer-events:none}.config-tooltip-item{display:block}.config-tooltip-item+.config-tooltip-item{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.config-tooltip-item strong{display:block;margin-bottom:2px;color:var(--text-primary)}.filter-panel{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;margin-bottom:16px}.filter-select{display:inline-flex;align-items:center;gap:6px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-pill);padding:2px 6px 2px 10px;transition:border-color .2s,background .2s}.filter-select:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.filter-select-active{border-color:var(--accent);background:var(--accent-dim)}.filter-select-label{font-size:11px;font-weight:650;letter-spacing:.2px;color:var(--text-muted);white-space:nowrap}.filter-select select{background:transparent;border:none;outline:none;font-size:12px;font-family:Outfit,sans-serif;color:var(--text-primary);padding:4px 2px;cursor:pointer;max-width:180px}.filter-spacer{flex:1}.filter-count{font-size:11px;color:var(--text-muted);font-family:JetBrains Mono,monospace;white-space:nowrap}.filter-search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--text-muted);font-size:16px;line-height:1;cursor:pointer}.filter-search-clear:hover{color:var(--danger)}.filter-pills{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.filter-pill{display:inline-flex;align-items:center;gap:6px;background:var(--accent-dim);color:var(--accent-hover);border:1px solid var(--accent);border-radius:var(--radius-pill);padding:3px 10px;font-size:11px;font-family:Outfit,sans-serif;cursor:pointer;transition:background-color .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease)}.filter-pill:hover{background:var(--danger);border-color:var(--danger);color:var(--bg-secondary)}.filter-reset{border:none;background:transparent;color:var(--text-muted);font-size:11px;text-decoration:underline;cursor:pointer}.filter-reset:hover{color:var(--text-primary)}.filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-search{position:relative;flex:1;min-width:180px;max-width:320px}.filter-search input[type=text]{width:100%;background:var(--bg-tertiary)!important;border:1px solid var(--border);border-radius:var(--radius-pill);padding:6px 12px 6px 32px;font-size:12px;font-family:Outfit,sans-serif;color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.filter-search input[type=text]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.filter-search input[type=text]::placeholder{color:var(--text-muted)}.filter-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);display:flex;color:var(--text-muted);pointer-events:none}.filter-range{display:inline-flex;align-items:center;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-pill);padding:2px 4px;gap:2px;transition:border-color .2s}.filter-range:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.filter-range-label{font-size:11px;font-weight:650;letter-spacing:.2px;color:var(--text-muted);padding:0 6px;white-space:nowrap}.filter-range input{width:52px;background:transparent;border:none;padding:4px 6px;font-size:12px;font-family:JetBrains Mono,monospace;color:var(--text-primary);text-align:center}.filter-range input:focus{outline:none}.filter-range input::placeholder{color:var(--text-muted);font-family:Outfit,sans-serif;font-size:11px}.filter-range input::-webkit-inner-spin-button,.filter-range input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.filter-range input[type=number]{-moz-appearance:textfield}.filter-range-sep{color:var(--text-muted);font-size:12px;-webkit-user-select:none;user-select:none}.filter-clear{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-muted);font-size:16px;cursor:pointer;transition:background-color .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease);flex-shrink:0}.filter-clear:hover{background:var(--danger);border-color:var(--danger);color:var(--bg-secondary)}.card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;margin-bottom:20px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.card-title{font-size:16px;font-weight:600;display:flex;align-items:center;gap:10px}.btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--radius);font-size:13px;font-weight:550;font-family:Outfit,sans-serif;white-space:nowrap;cursor:pointer;border:1px solid transparent;transition:background-color .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease),transform .12s var(--ease)}.btn:active{transform:scale(.98)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:var(--border)}.btn-ghost:hover{color:var(--text-primary);border-color:var(--border-hover);background:var(--bg-tertiary)}.btn-danger{background:transparent;color:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:color-mix(in srgb,var(--danger) 13%,transparent)}.btn-sm{padding:5px 12px;font-size:12px}.btn-icon{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:transparent;border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;font-size:16px;transition:background-color .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease)}.btn-icon:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-hover)}.input,.select,input[type=text],input[type=number],input[type=email],input[type=password]{background:var(--bg-secondary)!important;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);padding:8px 12px;font-size:13px;font-family:inherit;transition:border-color .2s,background-color .2s;width:100%}.input:focus,.select:focus,input[type=text]:focus,input[type=number]:focus,input[type=email]:focus,input[type=password]:focus{outline:none;border-color:var(--accent);background:var(--bg-tertiary)!important}.input::placeholder,input[type=text]::placeholder,input[type=number]::placeholder,input[type=email]::placeholder,input[type=password]::placeholder{color:var(--text-secondary);opacity:1}.input-sm{padding:5px 10px;font-size:12px}.select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%239498b0' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:12px;font-weight:550;color:var(--text-primary);letter-spacing:.1px}.table-wrap{overflow-x:auto;border-radius:var(--radius);border:1px solid var(--border)}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;padding:10px 14px;background:var(--bg-tertiary);color:var(--text-secondary);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.6px;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:10px 14px;border-bottom:1px solid var(--border);white-space:nowrap}tr:last-child td{border-bottom:none}tbody tr:hover>td{background:var(--bg-secondary)}.row-total>td{background:var(--bg-elevated);font-weight:700;font-size:14px;border-top:1px solid var(--border-hover)}.row-total:hover>td{background:var(--bg-elevated)}.row-detail>td{background:var(--bg-tertiary)}.row-detail:hover>td{background:var(--bg-tertiary)}tbody .input-sm,tbody select.select{background:transparent;border-color:transparent;transition:border-color .15s var(--ease),background-color .15s var(--ease)}tbody tr:hover .input-sm,tbody tr:hover select.select,tbody .input-sm:focus,tbody select.select:focus{background:var(--bg-secondary);border-color:var(--border)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.page-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:16px;padding:10px 14px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);font-size:13px;color:var(--text-secondary)}.pagination-summary{display:flex;align-items:center;gap:14px}.pagination-size{display:flex;align-items:center;gap:6px}.pagination-size select{width:72px}.pagination-controls{display:flex;align-items:center;gap:4px}.pagination-position{padding:0 10px;font-family:JetBrains Mono,monospace;font-variant-numeric:tabular-nums;color:var(--text-primary)}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.sort-th{display:inline-flex;align-items:center;gap:5px;padding:0;background:none;border:none;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.sort-th svg{opacity:.35}.sort-th:hover{color:var(--text-primary)}.sort-th:hover svg{opacity:.7}.sort-th.is-active{color:var(--text-primary)}.sort-th.is-active svg{opacity:1;color:var(--accent)}.sort-th:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.row-expander{display:inline-flex;align-items:center;gap:6px;padding:0;background:none;border:none;font:inherit;color:inherit;text-align:left;cursor:pointer}.row-expander svg{color:var(--text-muted);flex-shrink:0}.row-expander:hover svg{color:var(--accent)}.row-expander:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-xs)}.skeleton-row{display:flex;align-items:center;gap:16px;padding:14px 16px;border-bottom:1px solid var(--border)}.skeleton-bar{height:10px;border-radius:var(--radius-xs);background:var(--bg-elevated);animation:skeleton-pulse 1.4s ease-in-out infinite}@keyframes skeleton-pulse{50%{opacity:.45}}.state-error{display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid color-mix(in srgb,var(--danger) 35%,var(--border));border-radius:var(--radius);background:color-mix(in srgb,var(--danger) 8%,transparent)}.state-error>svg{color:var(--danger);flex-shrink:0}.state-error strong{display:block;color:var(--text-primary);font-size:14px}.state-error p{margin-top:2px;font-size:13px;color:var(--text-secondary)}.state-error>button{margin-left:auto;flex-shrink:0}.chip-group{display:flex;gap:8px}.chip{padding:6px 14px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-family:Outfit,sans-serif;transition:background-color .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease)}.chip:hover{border-color:var(--border-hover)}.chip-active{background:var(--accent-dim);color:var(--accent-hover);border-color:var(--accent)}.tag{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.type-tag{display:inline-block;padding:2px 8px;border-radius:var(--radius-xs);font-size:11px;font-weight:600;letter-spacing:.2px;background:var(--bg-elevated);color:var(--text-secondary)}.type-tag--environment{background:color-mix(in srgb,var(--cat-storage) 16%,transparent);color:var(--cat-storage-text)}.type-tag--instance{background:color-mix(in srgb,var(--cat-gpu) 16%,transparent);color:var(--cat-gpu-text)}.type-tag--cpu{background:color-mix(in srgb,var(--cat-compute) 16%,transparent);color:var(--cat-compute-text)}.type-tag--gpu{background:color-mix(in srgb,var(--cat-llm) 16%,transparent);color:var(--cat-llm-text)}.theme-toggle{display:flex;gap:2px;margin:16px 12px 0;padding:3px;border:1px solid var(--border);border-radius:var(--radius-sm)}.theme-toggle-btn{flex:1;display:flex;align-items:center;justify-content:center;padding:5px 0;background:none;border:none;border-radius:var(--radius-xs);color:var(--text-muted);cursor:pointer;transition:background-color .15s var(--ease),color .15s var(--ease)}.theme-toggle-btn:hover{color:var(--text-primary)}.theme-toggle-btn.is-active{background:var(--bg-elevated);color:var(--accent)}.theme-toggle-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.hint-inline{font-size:11px;color:var(--text-muted)}.wizard-total{display:flex;align-items:baseline;gap:10px;font-family:JetBrains Mono,monospace;font-size:clamp(34px,5vw,52px);font-weight:700;line-height:1;letter-spacing:-1.5px;color:var(--text-primary);font-variant-numeric:tabular-nums;margin-bottom:6px}.wizard-total.is-incomplete{color:var(--warning)}.wizard-total .wizard-unit{font-family:Outfit,sans-serif;font-size:13px;font-weight:400;letter-spacing:normal;color:var(--text-secondary)}.wizard-incomplete{margin-bottom:16px;font-size:13px;color:var(--warning)}.row-rejected>td{background:color-mix(in srgb,var(--danger) 8%,transparent);color:var(--text-muted)}.status-rejected{background:color-mix(in srgb,var(--danger) 16%,transparent);color:color-mix(in srgb,var(--danger) 45%,var(--text-primary))}.badge-danger{background:color-mix(in srgb,var(--danger) 14%,transparent);color:color-mix(in srgb,var(--danger) 45%,var(--text-primary))}.schedule-grid--compact{font-size:10px}.guide-saving{font-weight:600;color:var(--success)}.checks-summary{margin-bottom:24px;font-size:14px;color:var(--text-secondary)}.checks-summary strong{font-family:JetBrains Mono,monospace;font-variant-numeric:tabular-nums}.checks-summary .is-error{color:var(--danger)}.checks-summary .is-warning{color:var(--warning)}.wizard-facts{display:flex;flex-wrap:wrap;gap:12px 32px;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--border)}.wizard-facts>div{display:flex;flex-direction:column;gap:1px}.wizard-facts dt{font-size:11px;color:var(--text-muted)}.wizard-facts dd{font-family:JetBrains Mono,monospace;font-size:16px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.wizard-facts span{font-size:11px;color:var(--text-secondary)}.cmp-table td,.cmp-card-cost,.cmp-card-delta{font-family:JetBrains Mono,monospace;font-variant-numeric:tabular-nums}.summary-split-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}.summary-fx.is-stale{color:var(--warning)}.summary-fx{font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums}.toast-close{margin-left:6px;padding:2px;display:inline-flex;background:none;border:none;color:inherit;cursor:pointer;opacity:.7}.toast-close:hover{opacity:1}.toast-close:focus-visible{outline:2px solid currentColor;outline-offset:1px}.tag-saving{background:color-mix(in srgb,var(--success) 14%,transparent);color:color-mix(in srgb,var(--success) 45%,var(--text-primary));border:1px solid color-mix(in srgb,var(--success) 28%,transparent)}.product-line-tag{display:inline-block;padding:2px 8px;border-radius:var(--radius-xs);font-size:11px;font-weight:600;letter-spacing:.2px;background:var(--bg-elevated);color:var(--text-secondary)}.product-line-tag--craftai{background:var(--accent-dim);color:var(--accent-hover)}.product-line-tag--llm-api{background:color-mix(in srgb,var(--cat-llm) 16%,transparent);color:var(--cat-llm-text)}.product-line-tag--studio{background:color-mix(in srgb,var(--cat-network) 16%,transparent);color:var(--cat-network-text)}.tag-scaleway{background:color-mix(in srgb,#4F0599 13%,transparent);color:color-mix(in srgb,#4F0599 45%,var(--text-primary));border:1px solid color-mix(in srgb,#4F0599 28%,transparent)}.tag-aws{background:color-mix(in srgb,#FF9900 13%,transparent);color:color-mix(in srgb,#FF9900 45%,var(--text-primary));border:1px solid color-mix(in srgb,#FF9900 28%,transparent)}.tag-gcp{background:color-mix(in srgb,#4285F4 13%,transparent);color:color-mix(in srgb,#4285F4 45%,var(--text-primary));border:1px solid color-mix(in srgb,#4285F4 28%,transparent)}.tag-exoscale{background:color-mix(in srgb,#614BB0 13%,transparent);color:color-mix(in srgb,#614BB0 45%,var(--text-primary));border:1px solid color-mix(in srgb,#614BB0 28%,transparent)}.tag-s3ns{background:color-mix(in srgb,#0D6B6E 13%,transparent);color:color-mix(in srgb,#0D6B6E 45%,var(--text-primary));border:1px solid color-mix(in srgb,#0D6B6E 28%,transparent)}.tag-openai{background:color-mix(in srgb,#10A37F 13%,transparent);color:color-mix(in srgb,#10A37F 45%,var(--text-primary));border:1px solid color-mix(in srgb,#10A37F 28%,transparent)}.tag-mistral{background:color-mix(in srgb,#F2A73B 13%,transparent);color:color-mix(in srgb,#F2A73B 45%,var(--text-primary));border:1px solid color-mix(in srgb,#F2A73B 28%,transparent)}.tag-anthropic{background:color-mix(in srgb,#D97757 13%,transparent);color:color-mix(in srgb,#D97757 45%,var(--text-primary));border:1px solid color-mix(in srgb,#D97757 28%,transparent)}.tag-google-ai{background:color-mix(in srgb,#EA4335 13%,transparent);color:color-mix(in srgb,#EA4335 45%,var(--text-primary));border:1px solid color-mix(in srgb,#EA4335 28%,transparent)}.tag-qwen{background:color-mix(in srgb,#722ED1 13%,transparent);color:color-mix(in srgb,#722ED1 45%,var(--text-primary));border:1px solid color-mix(in srgb,#722ED1 28%,transparent)}.tag-deepseek{background:color-mix(in srgb,#1890FF 13%,transparent);color:color-mix(in srgb,#1890FF 45%,var(--text-primary));border:1px solid color-mix(in srgb,#1890FF 28%,transparent)}.tag-voyageai{background:color-mix(in srgb,#7C3AED 13%,transparent);color:color-mix(in srgb,#7C3AED 45%,var(--text-primary));border:1px solid color-mix(in srgb,#7C3AED 28%,transparent)}.tag-linkup{background:color-mix(in srgb,#F59E0B 13%,transparent);color:color-mix(in srgb,#F59E0B 45%,var(--text-primary));border:1px solid color-mix(in srgb,#F59E0B 28%,transparent)}.tag-compute{background:color-mix(in srgb,var(--cat-compute) 13%,transparent);color:var(--cat-compute-text)}.tag-gpu{background:color-mix(in srgb,var(--cat-gpu) 13%,transparent);color:var(--cat-gpu-text)}.tag-storage{background:color-mix(in srgb,var(--cat-storage) 13%,transparent);color:var(--cat-storage-text)}.tag-database{background:color-mix(in srgb,var(--cat-database) 13%,transparent);color:var(--cat-database-text)}.tag-kubernetes{background:color-mix(in srgb,var(--cat-kubernetes) 13%,transparent);color:var(--cat-kubernetes-text)}.tag-network{background:color-mix(in srgb,var(--cat-network) 13%,transparent);color:var(--cat-network-text)}.tag-llm{background:color-mix(in srgb,var(--cat-llm) 13%,transparent);color:var(--cat-llm-text)}.tag-embeddings{background:color-mix(in srgb,var(--cat-embeddings) 13%,transparent);color:var(--cat-embeddings-text)}.tag-websearch{background:color-mix(in srgb,var(--cat-websearch) 13%,transparent);color:var(--cat-websearch-text)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.flex-row{display:flex;align-items:center;gap:12px}.flex-wrap{flex-wrap:wrap}.flex-between{justify-content:space-between}.gap-8{gap:8px}.gap-16{gap:16px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.mt-12{margin-top:12px}.mt-24{margin-top:24px}.ml-auto{margin-left:auto}.text-right{text-align:right}.text-center{text-align:center}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-sm{font-size:12px}.text-xs{font-size:11px}.font-mono{font-family:JetBrains Mono,monospace}.font-bold{font-weight:700}.summary{display:grid;grid-template-columns:auto auto;align-items:baseline;column-gap:40px;row-gap:20px;margin-bottom:36px}.summary-lead{display:flex;flex-direction:column;gap:2px}.summary-lead-label{font-size:12px;font-weight:600;color:var(--text-muted)}.summary-lead-value{font-family:JetBrains Mono,monospace;font-size:clamp(34px,5vw,52px);font-weight:700;line-height:1;letter-spacing:-1.5px;color:var(--text-primary);font-variant-numeric:tabular-nums}.summary-aside{display:flex;gap:28px;align-self:flex-end;padding-bottom:4px}.summary-aside dt{font-size:11px;color:var(--text-muted);margin-bottom:2px}.summary-aside dd{font-family:JetBrains Mono,monospace;font-size:14px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.summary-split{grid-column:1 / -1}.summary-split .compare-bar{height:30px;border-radius:var(--radius-sm);overflow:hidden}@media(max-width:720px){.summary{grid-template-columns:1fr;row-gap:16px}.summary-aside{align-self:flex-start;padding-bottom:0}}.cat-rows{display:flex;flex-direction:column}.cat-row{display:grid;grid-template-columns:132px 1fr 52px 96px;align-items:center;gap:14px;padding:9px 0;border-bottom:1px solid var(--border)}.cat-row:last-child{border-bottom:none}.cat-track{height:6px;border-radius:var(--radius-xs);background:var(--bg-tertiary);overflow:hidden}.cat-fill{height:100%;border-radius:var(--radius-xs)}.cat-share,.cat-cost{font-family:JetBrains Mono,monospace;font-size:12px;text-align:right;font-variant-numeric:tabular-nums}.cat-share{color:var(--text-muted)}.cat-cost{color:var(--text-primary)}@media(max-width:720px){.cat-row{grid-template-columns:1fr auto;gap:8px}.cat-track{grid-column:1 / -1}}.panel{margin-bottom:32px}.panel-head{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}.panel-title{font-size:15px;font-weight:600;color:var(--text-primary)}.panel-action{margin-left:auto}.panel-count{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-muted)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:28px}.schedule-grid{display:grid;grid-template-columns:60px repeat(24,1fr);gap:1px;background:var(--border);border-radius:var(--radius);overflow:hidden;font-size:10px}.schedule-cell{background:var(--bg-secondary);padding:6px 2px;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .1s}.schedule-cell:hover{background:var(--bg-elevated)}.schedule-cell.active{background:var(--accent);color:var(--accent-ink)}.schedule-cell.header{background:var(--bg-tertiary);color:var(--text-muted);font-weight:600;cursor:default}.schedule-cell.day-label{background:var(--bg-tertiary);color:var(--text-secondary);font-weight:600;cursor:default;text-align:right;padding-right:8px}.compare-bar{display:flex;height:28px;border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-tertiary)}.compare-segment{display:flex;align-items:center;justify-content:center;padding:0 4px;font-size:10px;font-weight:700;font-family:JetBrains Mono,monospace;color:var(--text-primary);white-space:nowrap;min-width:0;overflow:hidden;cursor:help}.compare-segment:hover,.compare-segment:focus-visible{filter:brightness(1.18)}.compare-segment:focus-visible{outline:2px solid var(--text-primary);outline-offset:-2px}.bar-tooltip{position:fixed;z-index:200;transform:translate(-50%,-100%);display:flex;align-items:center;gap:8px;padding:7px 11px;background:var(--bg-secondary);border:1px solid var(--border-hover);border-radius:var(--radius-sm);box-shadow:var(--shadow-overlay);font-size:12px;white-space:nowrap;pointer-events:none}.bar-tooltip-swatch{width:9px;height:9px;border-radius:var(--radius-xs);flex-shrink:0}.bar-tooltip-name{color:var(--text-primary);font-weight:600}.bar-tooltip-value{font-family:JetBrains Mono,monospace;color:var(--text-primary)}.bar-tooltip-pct{font-family:JetBrains Mono,monospace;color:var(--text-muted);padding-left:8px;border-left:1px solid var(--border)}.modal-overlay{position:fixed;inset:0;background:color-mix(in srgb,#10161a 58%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .15s ease}.modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-overlay);padding:28px;width:90%;max-width:640px;max-height:80vh;overflow-y:auto;animation:slideUp .2s ease}.modal-title{font-size:18px;font-weight:700;margin-bottom:20px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.checkbox-wrap{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px}.checkbox-wrap input[type=checkbox]{appearance:none;width:16px;height:16px;border:1.5px solid var(--border);border-radius:var(--radius-xs);background:var(--bg-tertiary);cursor:pointer;position:relative;flex-shrink:0}.checkbox-wrap input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}.checkbox-wrap input[type=checkbox]:checked:after{content:"✓";position:absolute;color:var(--accent-ink);font-size:11px;top:50%;left:50%;transform:translate(-50%,-50%)}.tabs{display:flex;gap:4px;background:var(--bg-tertiary);border-radius:var(--radius);padding:4px;margin-bottom:20px}.tab{padding:7px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;color:var(--text-secondary);background:transparent;border:none;font-family:Outfit,sans-serif;transition:background-color .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease)}.tab:hover{color:var(--text-primary)}.tab.active{background:var(--accent);color:var(--accent-ink);font-weight:600}.provider-filter{display:flex;gap:8px;margin-bottom:20px}.provider-chip{padding:6px 14px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-family:Outfit,sans-serif;transition:background-color .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease)}.provider-chip:hover{border-color:var(--border-hover)}.provider-chip.active-scaleway{background:color-mix(in srgb,var(--scaleway) 16%,transparent);color:color-mix(in srgb,var(--scaleway) 45%,var(--text-primary));border-color:var(--scaleway)}.provider-chip.active-aws{background:color-mix(in srgb,var(--aws) 16%,transparent);color:color-mix(in srgb,var(--aws) 45%,var(--text-primary));border-color:var(--aws)}.provider-chip.active-gcp{background:color-mix(in srgb,var(--gcp) 16%,transparent);color:color-mix(in srgb,var(--gcp) 45%,var(--text-primary));border-color:var(--gcp)}.provider-chip.active-all{background:var(--accent-dim);color:var(--accent-hover);border-color:var(--accent)}.empty-state{text-align:center;padding:48px 20px;color:var(--text-muted)}.empty-icon{margin-bottom:12px;color:var(--text-muted)}.empty-text{font-size:14px;margin-bottom:16px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-xs)}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.toast{position:fixed;bottom:24px;right:24px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:12px 20px;font-size:13px;color:var(--text-primary);z-index:200;animation:slideUp .3s ease;display:flex;align-items:center;gap:8px}.toast-success{border-color:color-mix(in srgb,var(--success) 45%,var(--border));background:color-mix(in srgb,var(--success) 10%,var(--bg-elevated))}.toast-error{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));background:color-mix(in srgb,var(--danger) 10%,var(--bg-elevated))}.bulk-row{display:grid;grid-template-columns:130px 120px 1fr 1fr 110px 100px 40px;gap:6px;align-items:center;padding:4px 0}.bulk-row .input,.bulk-row .select{font-size:12px;padding:6px 8px}.bulk-header{font-size:11px;font-weight:650;letter-spacing:.2px;color:var(--text-muted);padding-bottom:8px;border-bottom:1px solid var(--border);margin-bottom:6px}.import-area{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:24px;text-align:center;transition:background-color .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease);cursor:pointer}.import-area:hover,.import-area.drag-over{border-color:var(--accent);background:var(--accent-dim)}.import-textarea{width:100%;min-height:140px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius);padding:12px;font-family:JetBrains Mono,monospace;font-size:11px;color:var(--text-primary);resize:vertical}.import-textarea:focus{outline:none;border-color:var(--accent)}.updated-dot{width:7px;height:7px;border-radius:var(--radius-pill);display:inline-block;margin-right:6px}.updated-fresh{background:var(--success)}.updated-stale{background:var(--warning)}.updated-old{background:var(--danger)}.selection-bar{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--accent-dim);border:1px solid var(--accent);border-radius:var(--radius);margin-bottom:16px}.selection-count{font-size:13px;font-weight:600;color:var(--accent-hover)}.fetch-panel{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.panel-title{font-size:16px;font-weight:600;margin-bottom:8px}.hint{font-size:13px;color:var(--text-secondary)}.inline-editable{cursor:pointer;padding:2px 6px;border-radius:var(--radius-xs);transition:background .15s}.inline-editable:hover{background:var(--bg-tertiary)}.inline-input{background:var(--bg-tertiary);border:1px solid var(--accent);border-radius:var(--radius-xs);padding:2px 6px;font-size:inherit;font-family:inherit;color:var(--text-primary);outline:none}.fetch-dot{width:8px;height:8px;border-radius:var(--radius-pill);display:inline-block;flex-shrink:0}.fetch-dot.auto{background:var(--success)}.fetch-dot.manual{background:var(--text-muted)}.fetch-hint{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:var(--text-muted)}.age-dot{width:8px;height:8px;border-radius:var(--radius-pill);display:inline-block}.age-fresh{background:var(--success)}.age-stale{background:var(--warning)}.age-old{background:var(--danger)}.age-unknown{background:var(--text-muted)}tr.row-selected td{background:var(--accent-dim)}.btn-danger-icon{width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:16px;transition:background-color .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease)}.btn-danger-icon:hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 13%,transparent)}.btn-active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.unit-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-pill);font-size:11px;font-weight:600}.unit-badge-hour{background:color-mix(in srgb,#3b82f6 13%,transparent);color:color-mix(in srgb,#3b82f6 45%,var(--text-primary));border:1px solid color-mix(in srgb,#3b82f6 28%,transparent)}.unit-badge-month{background:color-mix(in srgb,var(--cat-network) 13%,transparent);color:var(--cat-network-text);border:1px solid color-mix(in srgb,var(--cat-network) 25%,transparent)}.unit-badge-gb{background:color-mix(in srgb,#10b981 13%,transparent);color:color-mix(in srgb,#10b981 45%,var(--text-primary));border:1px solid color-mix(in srgb,#10b981 28%,transparent)}.unit-badge-gb-hour{background:color-mix(in srgb,#f59e0b 13%,transparent);color:color-mix(in srgb,#f59e0b 45%,var(--text-primary));border:1px solid color-mix(in srgb,#f59e0b 28%,transparent)}.gap-4{gap:4px}.gap-12{gap:12px}.mt-16{margin-top:16px}.flex-end{justify-content:flex-end}.action-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--bg-tertiary);border-radius:var(--radius);margin-bottom:16px}.action-bar .count{font-size:13px;font-weight:600;color:var(--accent-hover);margin-right:auto}.toolbar-section{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.guide-layout{display:grid;grid-template-columns:240px 1fr;gap:32px;align-items:start}.guide-nav{position:sticky;top:20px;display:flex;flex-direction:column;gap:2px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:8px}.guide-nav-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius);font-size:13px;font-weight:450;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;font-family:Outfit,sans-serif;text-align:left;transition:background-color .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease)}.guide-nav-item:hover{color:var(--text-primary);background:var(--bg-tertiary)}.guide-nav-item.active{color:var(--accent-hover);background:var(--accent-dim);font-weight:600}.guide-nav-icon{flex-shrink:0;opacity:.7}.guide-nav-item.active .guide-nav-icon{opacity:1}.guide-content{min-width:0}.guide-section{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:32px}.guide-section-title{font-size:20px;font-weight:700;margin-bottom:16px;letter-spacing:-.3px}.guide-section p{font-size:14px;line-height:1.7;color:var(--text-secondary);margin-bottom:16px}.guide-section p strong{color:var(--text-primary)}.guide-steps{display:flex;flex-direction:column;gap:16px;margin-top:20px}.guide-step{display:flex;align-items:flex-start;gap:16px;padding:16px;background:var(--bg-tertiary);border-radius:var(--radius);border:1px solid var(--border)}.guide-step-number{width:32px;height:32px;border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0;font-family:JetBrains Mono,monospace}.guide-step>div>strong:first-child{display:block;font-size:14px;color:var(--text-primary);margin-bottom:4px}.guide-step p{font-size:13px;color:var(--text-secondary);margin:0;line-height:1.5}.guide-step p strong{color:var(--text-primary)}.guide-arch{display:flex;flex-direction:column;align-items:center;gap:0;margin:24px 0;padding:28px 24px;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-lg)}.guide-arch-label{font-size:11px;font-weight:650;letter-spacing:.2px;color:var(--text-muted);margin-bottom:20px}.guide-arch-group{width:100%;max-width:480px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px 20px;position:relative}.guide-arch-group--large{max-width:560px}.guide-arch-group--accent{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.guide-arch-group--muted{border-style:dashed;border-color:var(--text-muted)}.guide-arch-group--craft{border-color:var(--success);box-shadow:0 0 0 3px color-mix(in srgb,var(--success) 18%,transparent)}.guide-arch-group--craft .guide-arch-group-label{color:var(--success)}.guide-arch-dependency-tag{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--warning) 9%,transparent);color:var(--warning);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;flex-shrink:0}.guide-arch-group-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.guide-arch-group-label{font-size:13px;font-weight:700;color:var(--text-primary);margin-bottom:2px}.guide-arch-group--accent .guide-arch-group-label{color:var(--accent-hover)}.guide-arch-group-desc{font-size:11px;color:var(--text-muted);margin-bottom:12px}.guide-arch-group-header .guide-arch-group-desc{margin-bottom:0}.guide-arch-always-on-tag{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--success) 9%,transparent);color:var(--success);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;flex-shrink:0}.guide-arch-group-content{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.guide-arch-group-content--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}.guide-arch-node{display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);flex:1;min-width:140px}.guide-arch-node--required{border-color:var(--border-hover)}.guide-arch-node--optional{border-style:dashed;border-color:var(--text-muted);opacity:.8}.guide-arch-node-icon{width:28px;height:28px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.guide-arch-node-icon--db{background:color-mix(in srgb,var(--cat-database) 12%,transparent);color:var(--cat-database-text)}.guide-arch-node-icon--compute{background:color-mix(in srgb,var(--cat-compute) 12%,transparent);color:var(--cat-compute-text)}.guide-arch-node-icon--vector{background:color-mix(in srgb,var(--cat-embeddings) 12%,transparent);color:var(--cat-embeddings-text)}.guide-arch-node-icon--craft{background:var(--accent-dim);color:var(--accent-hover)}.guide-arch-node-icon--network{background:color-mix(in srgb,var(--cat-network) 12%,transparent);color:var(--cat-network-text)}.guide-arch-node-icon--storage{background:color-mix(in srgb,var(--cat-storage) 12%,transparent);color:var(--cat-storage-text)}.guide-arch-node-icon--k8s{background:color-mix(in srgb,var(--cat-kubernetes) 12%,transparent);color:var(--cat-kubernetes-text)}.guide-arch-node-text{display:flex;flex-direction:column;gap:1px;min-width:0}.guide-arch-node-name{font-size:12px;font-weight:600;color:var(--text-primary)}.guide-arch-node-detail{font-size:10px;color:var(--text-muted)}.guide-arch-schedule-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-pill);background:var(--accent-dim);color:var(--accent-hover);font-size:10px;font-weight:600;white-space:nowrap}.guide-arch-connector{height:22px;margin:2px auto;border-left:1px dashed var(--text-muted);opacity:.5}.guide-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:20px 0}.guide-card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius);padding:20px;position:relative}.guide-card h4{font-size:15px;font-weight:600;margin-bottom:8px;color:var(--text-primary)}.guide-card p{font-size:13px;margin-bottom:12px}.guide-card--required{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 6%,transparent)}.guide-card--optional{border-color:var(--border);border-style:dashed}.guide-card-badge{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:var(--radius-pill);margin-bottom:12px}.guide-card--required .guide-card-badge{background:var(--accent-dim);color:var(--accent-hover)}.guide-card--optional .guide-card-badge{background:var(--bg-elevated);color:var(--text-muted)}.guide-card-example{background:var(--bg-secondary);border-radius:var(--radius-sm);padding:12px;font-size:12px;color:var(--text-secondary);line-height:1.8}.guide-card-example code{font-family:JetBrains Mono,monospace;font-size:11px;background:var(--bg-elevated);padding:2px 6px;border-radius:var(--radius-xs);color:var(--accent-hover)}.guide-label{display:block;font-size:11px;font-weight:650;letter-spacing:.2px;color:var(--text-muted);margin-bottom:4px}.guide-tip{background:var(--accent-dim);border:1px solid var(--accent);border-radius:var(--radius);padding:14px 18px;font-size:13px;color:var(--text-secondary);line-height:1.6;margin-top:20px}.guide-tip strong{color:var(--accent-hover)}.guide-tip em{color:var(--text-primary);font-style:normal;font-weight:500}.guide-callout{margin-top:8px;padding:10px 14px;background:color-mix(in srgb,var(--warning) 7%,transparent);border:1px solid color-mix(in srgb,var(--warning) 26%,transparent);border-radius:var(--radius-sm);font-size:12px;color:var(--text-secondary);line-height:1.6}.guide-callout strong{color:var(--warning)}.guide-scenarios{display:flex;flex-direction:column;gap:12px;margin:20px 0}.guide-scenario{padding:16px 20px;background:var(--bg-tertiary);border-radius:var(--radius);border:1px solid var(--border)}.guide-scenario-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.guide-scenario p{font-size:13px;margin:0;line-height:1.5}.guide-glossary dl{display:flex;flex-direction:column;gap:0}.guide-glossary dt{font-size:14px;font-weight:600;color:var(--accent-hover);padding:14px 0 4px;border-top:1px solid var(--border)}.guide-glossary dt:first-child{border-top:none;padding-top:0}.guide-glossary dd{font-size:13px;color:var(--text-secondary);line-height:1.6;padding-bottom:10px}.check-rules{display:flex;flex-direction:column}.check-rule{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid var(--border)}.check-rule:first-child{border-top:none}.check-rule.is-disabled{opacity:.45}.check-rule-main{flex:1}.check-rule-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.check-rule-level--error{color:var(--danger)}.check-rule-level--warning{color:var(--warning)}.check-rule-badge{font-size:11px;font-weight:600;border-radius:999px;padding:2px 8px}.check-rule-badge--error{background:var(--danger);color:var(--bg-secondary)}.check-rule-badge--warning{background:var(--warning);color:var(--bg-secondary)}.check-rule-badge--muted{background:var(--bg-tertiary);color:var(--text-muted)}.check-selector{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.check-rule-message{margin-top:6px;padding:8px 10px;background:var(--bg-tertiary);border-radius:var(--radius);color:var(--text-secondary)}.model-row-templates{display:flex;gap:4px;flex-wrap:wrap;align-items:center}.model-row-pill{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:999px;padding:2px 9px;font-size:12px;white-space:nowrap}.model-picker-filters{display:flex;gap:6px;flex-wrap:wrap}.model-chip{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);border-radius:999px;padding:5px 12px;font-size:12px;font-family:inherit;cursor:pointer}.model-chip:hover{border-color:var(--border-hover);color:var(--text-primary)}.model-chip.is-active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.model-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;max-height:260px;overflow-y:auto;padding:4px;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius)}.model-picker-card{display:flex;flex-direction:column;gap:6px;text-align:left;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;color:var(--text-primary);font-family:inherit;cursor:pointer}.model-picker-card:hover{border-color:var(--accent)}.model-picker-card.is-selected{border-color:var(--accent);background:var(--accent-dim)}.model-picker-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px}.model-picker-badge{font-family:JetBrains Mono,monospace;font-size:11px;background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-pill);padding:1px 7px}.model-picker-card-tags{display:flex;gap:4px;flex-wrap:wrap}.model-picker-card-foot{display:flex;justify-content:space-between;align-items:center}.model-selected-row{display:flex;align-items:center;gap:8px;padding:8px;margin-bottom:6px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius)}.model-selected-name{display:flex;align-items:center;gap:8px;width:240px;font-size:13px}.model-detail{display:flex;flex-direction:column;gap:10px}.model-detail-item{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px}.model-detail-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.model-detail-title{display:flex;align-items:baseline;gap:8px;font-size:14px}.model-detail-qty{font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600;color:var(--accent-hover);background:var(--accent-dim);border-radius:var(--radius-xs);padding:2px 6px}.model-detail-cost{font-size:14px;font-weight:600;white-space:nowrap}.model-detail-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px}.model-detail-schedule{font-size:12px;color:var(--text-secondary)}.model-detail-resources{list-style:none;margin-top:10px;border-top:1px solid var(--border)}.model-detail-resources li{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:13px;border-bottom:1px solid var(--border)}.model-detail-resources li:last-child{border-bottom:none}.model-detail-resources li>span:last-child{margin-left:auto;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-detail-total{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:var(--bg-elevated);border-radius:var(--radius)}.wizard{max-width:860px}.wizard-progress{height:4px;background:var(--bg-tertiary);border-radius:var(--radius-xs);overflow:hidden;margin-bottom:32px}.wizard-progress-bar{height:100%;width:100%;background:var(--accent);transform-origin:left center;transition:transform .25s var(--ease)}.wizard-step-of{font-size:12px;color:var(--text-muted);margin-bottom:4px}.wizard-question{font-size:26px;font-weight:600;margin-bottom:24px}.wizard-unit{font-size:16px;color:var(--text-secondary);font-weight:400}.wizard-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.wizard-choice{display:flex;flex-direction:column;gap:6px;text-align:left;padding:18px 20px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-family:inherit;font-size:15px;cursor:pointer;transition:border-color .15s,background .15s}.wizard-choice:hover{border-color:var(--border-hover);background:var(--bg-tertiary)}.wizard-choice.active{border-color:var(--accent);background:var(--accent-dim)}.wizard-choice span{font-size:13px;color:var(--text-secondary)}.wizard-warning{padding:10px 14px;margin-bottom:8px;border-radius:var(--radius);background:color-mix(in srgb,var(--warning) 10%,transparent);border:1px solid var(--warning);color:var(--warning);font-size:13px}.wizard-items{display:flex;flex-direction:column;gap:8px;margin-top:20px}.wizard-item{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius)}.wizard-item-main{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.wizard-item-main span{font-size:13px;color:var(--text-secondary)}.wizard-item-cost{font-size:13px;color:var(--text-secondary);white-space:nowrap}.wizard-env{margin-bottom:24px}.wizard-env-head{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:8px;border-bottom:1px solid var(--border)}.wizard-env-head strong{font-size:15px}.wizard-env-head span{font-size:13px;color:var(--text-secondary)}.wizard-warning--error{background:color-mix(in srgb,var(--danger) 10%,transparent);border-color:var(--danger);color:var(--danger)}.wizard-item-cost em{font-style:normal;color:var(--text-muted)}.wizard-item-share{width:68px;text-align:right}.wizard-item-unit{font-size:12px;color:var(--text-muted)}.wizard-item--api{display:grid;grid-template-columns:minmax(0,1fr) 96px 96px 110px;gap:12px;align-items:center}.wizard-api-share{display:flex;align-items:center;gap:4px;justify-content:flex-end}.wizard-api-volume{font-size:13px;color:var(--text-secondary);text-align:right}.wizard-item--api .wizard-item-cost{text-align:right}@media(max-width:720px){.wizard-item--api{grid-template-columns:minmax(0,1fr) 76px}.wizard-api-volume,.wizard-item--api .wizard-item-cost{text-align:left;grid-column:1 / -1}}.wizard-api-head{font-size:12px;letter-spacing:.01em;color:var(--text-muted);background:none;border:none;padding-bottom:0}.wizard-api-head span:not(:first-child){text-align:right}.wizard-api-input{width:100%;text-align:right}.wizard-item--edited{border-color:var(--accent)}.cmp-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.cmp-search{flex:1;min-width:220px}.cmp-step{font-size:12px;letter-spacing:.01em;color:var(--text-muted);margin-bottom:12px}.cmp-toolbar .cmp-step{margin-bottom:0}.cmp-families{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.cmp-family{display:flex;flex-direction:column;gap:4px;align-items:flex-start;padding:14px 16px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-family:inherit;font-size:15px;text-align:left;cursor:pointer;transition:border-color .15s,background .15s}.cmp-family:hover{border-color:var(--accent);background:var(--accent-dim)}.cmp-family span{font-size:12px;color:var(--text-secondary)}.cmp-results{display:flex;flex-direction:column;gap:14px}.cmp-group-provider{display:flex;flex-direction:column;gap:4px}.cmp-result-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2px}.cmp-result{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;background:none;border:none;border-radius:var(--radius);color:var(--text-primary);font-family:inherit;font-size:14px;text-align:left;cursor:pointer}.cmp-result:hover{background:var(--bg-tertiary)}.cmp-result{align-items:flex-start;line-height:1.35}.cmp-result-name{flex:1;min-width:0;overflow-wrap:anywhere}.cmp-result-cost{font-size:13px;color:var(--text-secondary);white-space:nowrap}.cmp-result-add{color:var(--text-muted);font-size:16px}.cmp-verdict{padding:12px 14px;margin-bottom:16px;border-radius:var(--radius);background:var(--accent-dim);border:1px solid var(--accent);font-size:14px}.cmp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-bottom:16px}.cmp-card{display:flex;flex-direction:column;gap:12px}.cmp-card--best{border-color:var(--success)}.cmp-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.cmp-card-name{font-weight:600;margin-bottom:6px}.cmp-card-cost{font-size:26px;font-weight:600;line-height:1}.cmp-card-cost small{font-size:13px;font-weight:400;color:var(--text-secondary)}.cmp-card-delta{font-size:13px;color:var(--text-secondary);margin-top:-6px}.cmp-card-delta.is-best{color:var(--success)}.cmp-stack{display:flex;height:8px;border-radius:var(--radius-xs);overflow:hidden;background:var(--bg-tertiary)}.cmp-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;font-size:13px}.cmp-facts dt{color:var(--text-muted);font-size:12px}.cmp-facts dd{margin-top:2px}.cmp-dot{display:inline-block;width:8px;height:8px;border-radius:var(--radius-xs);margin-right:8px}.cmp-seg--compute{background:var(--cat-compute)}.cmp-seg--gpu{background:var(--cat-gpu)}.cmp-seg--storage{background:var(--cat-storage)}.cmp-seg--database{background:var(--cat-database)}.cmp-seg--kubernetes{background:var(--cat-kubernetes)}.cmp-seg--network{background:var(--cat-network)}.cmp-seg--llm{background:var(--cat-llm)}.cmp-seg--embeddings{background:var(--cat-embeddings)}.cmp-seg--websearch{background:var(--cat-websearch)}.cmp-scroll{overflow-x:auto}.cmp-table{width:100%;border-collapse:collapse;font-size:14px}.cmp-table th,.cmp-table td{padding:10px 14px;text-align:right;border-bottom:1px solid var(--border);white-space:nowrap}.cmp-table th[scope=row]{text-align:left;font-weight:400;color:var(--text-secondary)}.cmp-table thead th{color:var(--text-muted);font-size:12px;font-weight:500}.cmp-total th,.cmp-total td{font-weight:600;border-bottom:none}.cmp-total th[scope=row]{color:var(--text-primary)}
