.dp-page{display:flex;flex-direction:column;height:100%}.dp-page__content{flex:1;min-height:0;overflow:auto}.dp-timeline{display:flex;align-items:center;gap:0;padding:8px 16px;overflow-x:auto;scrollbar-width:thin}.dp-timeline__empty{font-size:.75rem;color:var(--color-text-tertiary);font-style:italic;padding:4px 0}.dp-timeline__connector{width:24px;height:2px;background:var(--color-border);flex-shrink:0}.dp-timeline__node{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-secondary);font-size:.75rem;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;transition:all .15s ease;flex-shrink:0}.dp-timeline__node:hover{border-color:var(--color-brand-periwinkle);color:var(--color-text-primary)}.dp-timeline__node--pending{border-color:var(--color-border)}.dp-timeline__node--running{border-color:color-mix(in srgb,var(--color-warning) 50%,transparent);background:color-mix(in srgb,var(--color-warning) 5%,transparent);color:var(--color-warning)}.dp-timeline__node--success{border-color:color-mix(in srgb,var(--color-success) 50%,transparent);background:color-mix(in srgb,var(--color-success) 5%,transparent);color:var(--color-success)}.dp-timeline__node--error{border-color:color-mix(in srgb,var(--color-danger) 50%,transparent);background:color-mix(in srgb,var(--color-danger) 5%,transparent);color:var(--color-danger)}.dp-timeline__node-step{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--color-border);font-size:.625rem;font-weight:700;color:var(--color-text-primary);flex-shrink:0}.dp-timeline__node-remove{margin-left:4px;font-size:.875rem;color:var(--color-text-tertiary);cursor:pointer;opacity:0;transition:opacity .15s,color .15s}.dp-timeline__node:hover .dp-timeline__node-remove{opacity:1}.dp-timeline__node-remove:hover{color:var(--color-danger)}.dp-node-detail{display:flex;align-items:flex-start;gap:12px;padding:10px 16px;border-top:1px solid var(--color-border);background:var(--color-secondary);font-size:.75rem;animation:dp-slide-up .15s ease}.dp-node-detail__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.dp-node-detail__params{display:flex;flex-direction:column;gap:8px}.dp-node-detail__param{display:flex;flex-direction:column;gap:2px}.dp-node-detail__param-key{font-weight:600;font-size:.6875rem;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.03em}.dp-node-detail__param-value{color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-word}.dp-node-detail__meta{display:flex;gap:12px;color:var(--color-text-tertiary)}.dp-node-detail__close{background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;font-size:1rem;padding:0;flex-shrink:0}.dp-node-detail__close:hover{color:var(--color-text-primary)}.dp-loading-steps{display:flex;flex-direction:column;align-items:center;gap:24px;padding:48px 24px}.dp-loading-steps__list{display:flex;flex-direction:column;gap:16px;min-width:280px}.dp-loading-step{display:flex;align-items:center;gap:12px;transition:opacity .3s ease}.dp-loading-step--pending{opacity:.35}.dp-loading-step--active{opacity:1}.dp-loading-step--done{opacity:.7}.dp-loading-step__indicator{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dp-loading-step__check{width:16px;height:16px;color:var(--color-success)}.dp-loading-step__spinner{width:16px;height:16px;border:2px solid var(--color-border);border-top-color:var(--color-brand-periwinkle);border-radius:50%;animation:dp-spin .6s linear infinite}.dp-loading-step__dot{width:8px;height:8px;border-radius:50%;background:var(--color-border)}.dp-loading-step__label{font-size:.875rem;color:var(--color-text-secondary)}.dp-loading-step--active .dp-loading-step__label{color:var(--color-text-primary);font-weight:500}.dp-loading-step--done .dp-loading-step__label{text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--color-success) 40%,transparent)}.dp-command-bar--empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:0 24px;max-width:680px;margin:0 auto;width:100%}.dp-command-bar__heading{font-size:1.25rem;font-weight:500;color:var(--color-text-primary);margin-bottom:20px}.dp-command-bar--empty .dp-command-bar__wrapper{width:100%;padding:12px 16px;border-radius:14px;border:1px solid var(--color-border);background:var(--color-secondary)}.dp-command-bar--empty .dp-command-bar__actions-row{width:100%}.dp-command-bar--empty .dp-command-bar__input{font-size:.9375rem}.dp-command-bar__dropzone{width:100%;margin-top:16px;padding:32px 24px;border:2px dashed var(--color-border);border-radius:12px;text-align:center;cursor:pointer;transition:border-color .15s ease,background .15s ease}.dp-command-bar__dropzone:hover,.dp-command-bar__dropzone--active{border-color:var(--color-border);background:var(--color-tertiary)}.dp-command-bar__dropzone-text{font-size:.875rem;color:var(--color-text-secondary)}.dp-command-bar__dropzone-subtext{font-size:.75rem;color:var(--color-text-tertiary);margin-top:4px}.dp-command-bar__actions{display:flex;align-items:center;gap:12px;margin-top:12px;width:100%}.dp-command-bar__actions-divider{flex:1;height:1px;background:var(--color-border)}.dp-command-bar__actions-label{font-size:.75rem;color:var(--color-text-tertiary)}.dp-command-bar{padding:8px 16px 12px;border-top:1px solid var(--color-border);position:relative}.dp-command-bar__wrapper{position:relative;display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:12px;border:1px solid var(--color-border);background:var(--color-secondary);transition:border-color .15s ease}.dp-command-bar__actions-row{display:flex;align-items:center;gap:2px;padding:2px 10px 0}.dp-command-bar__spacer{flex:1}.dp-command-bar__wrapper:focus-within{border-color:var(--color-brand-periwinkle)}.dp-command-bar__input{flex:1;background:transparent;border:none;outline:none;font-size:.875rem;color:var(--color-text-primary);min-width:0;resize:none;overflow-y:auto;max-height:160px;line-height:1.4;font-family:inherit}.dp-command-bar__input::placeholder{color:var(--color-text-tertiary)}.dp-command-bar__btn{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--color-text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0}.dp-command-bar__btn:hover{background:var(--color-tertiary);color:var(--color-text-primary)}.dp-command-bar__btn--send{background:var(--color-brand-periwinkle);color:#fff}.dp-command-bar__btn--send:hover{opacity:.9}.dp-command-bar__btn--recording{background:var(--color-danger);color:#fff;animation:dp-breathe 1.5s ease-in-out infinite}.dp-command-bar__status{font-size:.75rem;padding:4px 14px;margin-bottom:4px;display:flex;align-items:center;gap:6px;animation:dp-slide-up .15s ease}.dp-command-bar__status--loading{color:var(--color-text-secondary)}.dp-command-bar__status--error{color:var(--color-danger);max-height:120px;overflow-y:auto;align-items:flex-start;white-space:pre-wrap;word-break:break-word}.dp-command-bar__status--success{color:var(--color-success)}.dp-command-bar__spinner{width:12px;height:12px;border:2px solid var(--color-border);border-top-color:var(--color-text-secondary);border-radius:50%;animation:dp-spin .6s linear infinite;flex-shrink:0}@keyframes dp-spin{to{transform:rotate(360deg)}}.dp-command-bar__hint{font-size:.6875rem;color:var(--color-text-tertiary);text-align:center;margin-top:4px}.dp-command-bar__attachments{display:flex;flex-wrap:wrap;gap:4px;padding:4px 14px}.dp-command-bar__attachment-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-size:.75rem;background:var(--color-brand-periwinkle);color:#fff}.dp-command-bar__attachment-remove{background:none;border:none;color:inherit;cursor:pointer;padding:0;font-size:.875rem;line-height:1;opacity:.7}.dp-command-bar__attachment-remove:hover{opacity:1}.llm-checkbox-row{display:flex;align-items:center;gap:8px}.llm-preview-text{white-space:pre-wrap;word-break:break-word;font-size:.8125rem;font-family:monospace}.llm-preview-panel{border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.llm-preview-nav{display:flex;flex-wrap:wrap;gap:4px;padding:8px 12px;border-bottom:1px solid var(--color-border);background:var(--color-secondary)}.llm-preview-nav-btn{padding:2px 10px;border-radius:4px;border:1px solid var(--color-border);background:transparent;color:var(--color-text-secondary);font-size:.75rem;cursor:pointer;transition:all .1s}.llm-preview-nav-btn:hover{border-color:var(--color-brand-periwinkle);color:var(--color-text-primary)}.llm-preview-nav-btn--active{background:var(--color-brand-periwinkle);color:#fff;border-color:var(--color-brand-periwinkle)}.llm-preview-step{padding:10px 14px;border-bottom:1px solid var(--color-border)}.llm-preview-step:last-child{border-bottom:none}.llm-preview-step__label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);margin-bottom:6px}.llm-variable-chip{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.8125rem;font-family:monospace;background:var(--color-brand-periwinkle);color:#fff}.dp-palette{position:absolute;bottom:100%;left:16px;right:16px;margin-bottom:4px;max-height:320px;overflow-y:auto;border-radius:10px;border:1px solid var(--color-border);background:var(--color-secondary);box-shadow:0 -4px 16px #00000040;z-index:50;scrollbar-width:thin}.dp-palette__section{padding:6px 0;border-bottom:1px solid var(--color-border)}.dp-palette__section:last-child{border-bottom:none}.dp-palette__section-label{padding:4px 14px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary)}.dp-palette__item{display:flex;align-items:center;gap:8px;padding:8px 14px;cursor:pointer;transition:background .1s ease;font-size:.8125rem;color:var(--color-text-secondary);border:none;background:none;width:100%;text-align:left}.dp-palette__item:hover,.dp-palette__item--active{background:var(--color-tertiary);color:var(--color-text-primary)}.dp-palette__item-desc{margin-left:auto;font-size:.6875rem;color:var(--color-text-tertiary)}.dp-preview{padding:8px 16px;border-top:1px solid var(--color-border);animation:dp-slide-up .2s ease}.dp-preview__label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);margin-bottom:6px}.dp-preview__cards{display:flex;flex-direction:column;gap:6px}.dp-preview__card-wrapper{border-radius:8px;border:1px solid var(--color-border);background:var(--color-secondary);overflow:hidden}.dp-preview__card{display:flex;align-items:center;gap:8px;padding:10px 14px}.dp-preview__card-toggle{background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;font-size:.75rem;padding:0;width:16px;flex-shrink:0}.dp-preview__card-toggle:hover{color:var(--color-text-primary)}.dp-preview__card-type{font-size:.8125rem;font-weight:600;color:var(--color-brand-periwinkle);white-space:nowrap}.dp-preview__card-params{flex:1;font-size:.75rem;color:var(--color-text-secondary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dp-preview__card-add{padding:2px 8px;font-size:.6875rem}.dp-preview__card-add--disabled{opacity:.5;cursor:not-allowed}.dp-preview__card-missing{color:var(--color-warning);font-style:italic}.dp-preview__card-wrapper--invalid{border-color:var(--color-warning)}.dp-preview__card-remove{cursor:pointer;color:var(--color-text-tertiary);font-size:.875rem;background:none;border:none;padding:0 4px;flex-shrink:0}.dp-preview__card-remove:hover{color:var(--color-danger)}.dp-preview__params{padding:8px 14px 12px;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:10px;animation:dp-slide-up .15s ease}.dp-preview__field{display:flex;flex-direction:column;gap:3px;min-width:140px;flex:1}.dp-preview__field--inline{flex-direction:row;align-items:center;gap:8px;min-width:auto;flex:0 0 auto}.dp-preview__field-label{font-size:.6875rem;color:var(--color-text-tertiary);white-space:normal}.dp-preview__field-req{color:var(--color-danger);margin-left:2px}.dp-preview__field-range{font-weight:400;opacity:.7}.dp-preview__field-input,.dp-preview__field-select{padding:4px 8px;border-radius:4px;border:1px solid var(--color-border);background:var(--color-secondary);color:var(--color-text-primary);font-size:.8125rem;outline:none;transition:border-color .15s}.dp-preview__field-input:focus,.dp-preview__field-select:focus{border-color:var(--color-brand-periwinkle)}.dp-preview__field-checkbox{width:16px;height:16px;cursor:pointer;accent-color:var(--color-brand-periwinkle)}.dp-preview__field-chips{display:flex;flex-wrap:wrap;gap:4px}.dp-preview__field-chip{padding:2px 8px;border-radius:4px;border:1px solid var(--color-border);background:transparent;color:var(--color-text-secondary);font-size:.6875rem;cursor:pointer;transition:all .1s}.dp-preview__field-chip:hover{border-color:var(--color-brand-periwinkle)}.dp-preview__field-chip--active{background:var(--color-brand-periwinkle);color:#fff;border-color:var(--color-brand-periwinkle)}.dp-preview__field--error .dp-preview__field-label{color:var(--color-danger)}.dp-preview__field-input--error,.dp-preview__field-select--error{border-color:var(--color-danger)}.dp-preview__field-error{font-size:.625rem;color:var(--color-danger);margin-top:2px}.dp-preview__actions{display:flex;gap:8px;margin-top:8px}.dp-preview__explanation{font-size:.75rem;color:var(--color-text-tertiary);margin-top:4px;font-style:italic}.dp-waveform{display:flex;align-items:center;gap:2px;height:20px}.dp-waveform__bar{width:3px;border-radius:2px;background:var(--color-danger);animation:dp-wave .5s ease-in-out infinite}.dp-kbd{display:inline-flex;align-items:center;justify-content:center;padding:1px 4px;border-radius:3px;border:none;background:transparent;font-size:.625rem;font-family:inherit;color:var(--color-text-tertiary);opacity:.7}@keyframes dp-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes dp-slide-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes dp-wave{0%,to{height:4px}50%{height:18px}}.dp-pipeline-modal{position:relative;width:640px;max-height:90vh;overflow-y:auto;z-index:10;scrollbar-width:thin;background:var(--color-secondary);border-radius:12px;border:1px solid var(--color-border)}.dp-file-picker-modal{position:relative;width:80vw;height:80vh;overflow-y:auto;z-index:10;scrollbar-width:thin;background:var(--color-secondary);border-radius:12px;border:1px solid var(--color-border)}.dp-pipeline-modal .card{border:none;box-shadow:none;margin:0}@media (max-width: 768px){.dp-command-bar__hint{display:none}.dp-pipeline-modal{width:95vw}}.tutorial-overlay{position:fixed;inset:0;z-index:10000;pointer-events:none}.tutorial-overlay__mask,.tutorial-overlay__mask--full{display:none}.tutorial-spotlight-ring{position:fixed;border-radius:8px;box-shadow:0 0 0 3px hsl(var(--primary) / .7),0 0 20px 4px hsl(var(--primary) / .15);pointer-events:none;transition:all .3s ease;animation:tutorial-pulse 2s ease-in-out infinite}@keyframes tutorial-pulse{0%,to{box-shadow:0 0 0 3px hsl(var(--primary) / .7),0 0 20px 4px hsl(var(--primary) / .15)}50%{box-shadow:0 0 0 5px hsl(var(--primary) / .5),0 0 30px 8px hsl(var(--primary) / .2)}}.tutorial-tooltip{z-index:10001;pointer-events:auto;background:var(--color-secondary);border:1px solid var(--color-border);border-radius:12px;padding:20px 24px;box-shadow:0 12px 40px #0000004d;min-width:300px}.tutorial-tooltip__step{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:hsl(var(--primary));margin-bottom:6px}.tutorial-tooltip__title{font-size:1rem;font-weight:700;color:var(--color-text-primary);margin:0 0 8px}.tutorial-tooltip__desc{font-size:.85rem;color:var(--color-text-secondary);line-height:1.6;margin:0}.tutorial-tooltip__actions{display:flex;align-items:center;gap:8px;margin-top:16px;flex-wrap:wrap}.tutorial-tooltip__hint{font-size:.8rem;color:hsl(var(--primary));font-weight:500;font-style:italic}.tutorial-tooltip__skip{background:none;border:none;font-size:.8rem;color:var(--color-text-tertiary);cursor:pointer;padding:4px 8px;margin-left:auto}.tutorial-tooltip__skip:hover{color:var(--color-text-secondary)}.admin-home{padding:2rem;max-width:1400px;margin:0 auto}.admin-home h1{margin-bottom:1.5rem}.admin-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.admin-card{display:block;padding:1.5rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-secondary);text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}.admin-card:hover{border-color:var(--color-brand-periwinkle);box-shadow:0 2px 8px #0000001a}.admin-card h3{margin-bottom:.5rem}.admin-chat{padding:2rem;max-width:1400px;margin:0 auto}.admin-chat h1{margin-bottom:1.5rem}.admin-chat-stats{display:flex;gap:1.5rem;margin-bottom:1.5rem}.admin-chat-stat{display:flex;flex-direction:column;padding:1rem 1.5rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-secondary);min-width:120px}.admin-chat-stat-value{font-size:1.5rem;font-weight:600}.admin-chat-stat-label{font-size:.75rem;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.admin-chat-filters{display:flex;gap:.75rem;margin-bottom:1rem}.admin-chat-select{max-width:200px}.admin-chat-row{transition:background-color .15s}.admin-chat-row:hover{background-color:var(--color-secondary)}.admin-chat-row-clickable{cursor:pointer}.admin-chat-user{display:flex;flex-direction:column}.admin-chat-user-name{font-weight:500}.admin-chat-user-email{font-size:.8rem;color:var(--color-text-tertiary)}.admin-chat-session-cell{display:flex;flex-direction:column;max-width:200px}.admin-chat-session-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-chat-session-id{font-size:.7rem;font-family:monospace;color:var(--color-text-tertiary);cursor:pointer;transition:color .15s}.admin-chat-session-id:hover{color:var(--color-text-primary);text-decoration:underline}.admin-chat-session-id.copied{color:var(--color-success)}.admin-chat-user{padding:2rem;max-width:1200px;margin:0 auto}.admin-chat-user-back{display:inline-block;margin-bottom:1rem;color:var(--color-brand-periwinkle);text-decoration:none;font-size:.875rem}.admin-chat-user-back:hover{text-decoration:underline}.admin-chat-user-header{margin-bottom:1.5rem}.admin-chat-user-header h1{margin-bottom:.25rem}.admin-chat-user-meta{display:flex;align-items:center;gap:.75rem;color:var(--color-text-secondary);font-size:.875rem}.admin-chat-user-ranges{display:flex;gap:.5rem;margin-bottom:1rem}.admin-chat-user-range-btn{padding:.375rem .875rem;border:1px solid var(--color-border);border-radius:999px;background:transparent;color:var(--color-text-secondary);font-size:.8125rem;cursor:pointer;transition:all .15s}.admin-chat-user-range-btn:hover{border-color:var(--color-brand-periwinkle);color:var(--color-brand-periwinkle)}.admin-chat-user-range-btn.active{background:var(--color-brand-periwinkle);border-color:var(--color-brand-periwinkle);color:#fff}.admin-chat-user-stats{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--color-text-tertiary);margin-bottom:1.5rem}.admin-chat-user-stats-divider{color:var(--color-border)}.admin-chat-user-empty{text-align:center;padding:3rem 1rem;color:var(--color-text-tertiary)}.admin-chat-user-empty h2,.admin-chat-user-empty h3{margin-bottom:.5rem;color:var(--color-text-secondary)}.admin-chat-user-sessions{display:flex;flex-direction:column;gap:.5rem}.admin-chat-user-session{border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.admin-chat-user-session-header{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:var(--color-secondary);border:none;cursor:pointer;text-align:left;color:inherit;font-size:.875rem;transition:background-color .15s}.admin-chat-user-session-header:hover{background:var(--color-border)}.admin-chat-user-session-toggle{flex-shrink:0;font-size:.625rem;width:1rem}.admin-chat-user-session-title{font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-chat-user-session-id{flex-shrink:0;font-size:.7rem;font-family:monospace;color:var(--color-text-tertiary);cursor:pointer;padding:.125rem .375rem;border-radius:3px;transition:color .15s}.admin-chat-user-session-id:hover{color:var(--color-text-primary);text-decoration:underline}.admin-chat-user-session-id.copied{color:var(--color-success)}.admin-chat-user-session-meta{flex-shrink:0;font-size:.75rem;color:var(--color-text-tertiary)}.admin-chat-user-session-body{max-height:600px;overflow-y:auto;padding:.75rem 1rem;display:flex;flex-direction:column;gap:.75rem}.admin-chat-user-msg{border-radius:6px;padding:.625rem .75rem}.admin-chat-user-msg-user{background:var(--color-secondary)}.admin-chat-user-msg-assistant{background:transparent;border:1px solid var(--color-border)}.admin-chat-user-msg-summary{opacity:.55}.admin-chat-user-msg-header{display:flex;align-items:center;gap:.625rem;margin-bottom:.375rem;font-size:.75rem}.admin-chat-user-msg-role{font-weight:600;text-transform:capitalize}.admin-chat-user-msg-time{color:var(--color-text-tertiary)}.admin-chat-user-msg-model,.admin-chat-user-msg-tokens{color:var(--color-text-tertiary);font-size:.6875rem}.admin-chat-user-msg-content{font-size:.875rem;line-height:1.5;overflow-wrap:break-word}.admin-chat-user-msg-content p{margin:0}.admin-chat-user-msg-content pre{overflow-x:auto;padding:.5rem;border-radius:4px;background:var(--color-secondary);font-size:.8125rem}.admin-chat-user-msg-content code{font-size:.8125rem}.admin-chat-user-msg-content table{border-collapse:collapse;margin:.5rem 0;font-size:.8125rem}.admin-chat-user-msg-content th,.admin-chat-user-msg-content td{border:1px solid var(--color-border);padding:.25rem .5rem}.admin-deployments{padding:2rem;max-width:1400px;margin:0 auto}.admin-deployments h1{margin-bottom:1.5rem}.admin-tenant-row{cursor:pointer;transition:background-color .15s}.admin-tenant-row:hover,.admin-tenant-row.expanded{background-color:var(--color-secondary)}.deploy-panel{padding:1.5rem;border-top:1px solid var(--color-border);display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.deploy-panel-info{display:flex;flex-direction:column;gap:.5rem}.deploy-panel-info dt{font-size:.75rem;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.deploy-panel-info dd{margin:0 0 .75rem;font-size:.9rem}.deploy-panel-actions{display:flex;flex-direction:column;gap:1rem}.deploy-log-list{list-style:none;padding:0;margin:.5rem 0 0;font-size:.85rem}.deploy-log-list li{display:flex;justify-content:space-between;padding:.35rem 0;border-bottom:1px solid var(--color-border)}.deploy-log-version{font-family:monospace}.deploy-log-time{color:var(--color-text-tertiary)}.admin-systems{padding:2rem;max-width:1400px;margin:0 auto}.admin-systems h1{margin-bottom:.25rem}.admin-systems-timestamp{font-size:.8rem;color:var(--color-text-tertiary);margin-bottom:1.5rem}.admin-systems-section{margin-bottom:2rem}.admin-systems-section h2{font-size:1.1rem;margin-bottom:.75rem;color:var(--color-text-secondary)}.admin-systems-section h3{font-size:.95rem;margin-top:1.25rem;margin-bottom:.5rem;color:var(--color-text-secondary)}.admin-systems-row{cursor:pointer;transition:background-color .15s}.admin-systems-row:hover,.admin-systems-row.expanded{background-color:var(--color-secondary)}.admin-systems-status{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}.admin-systems-status.success{background-color:var(--color-success)}.admin-systems-status.failure{background-color:var(--color-danger)}.admin-systems-status.unknown{background-color:var(--color-text-tertiary)}.admin-systems-rate{font-size:.85rem;color:var(--color-text-secondary)}.admin-systems-rate.perfect{color:var(--color-success)}.admin-systems-rate.degraded{color:var(--color-warning)}.admin-systems-rate.failing{color:var(--color-danger)}.admin-systems-detail{padding:1rem 1.5rem;border-top:1px solid var(--color-border)}.admin-systems-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem;font-size:.85rem}.admin-systems-detail-grid dt{color:var(--color-text-tertiary);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.admin-systems-detail-grid dd{margin:0 0 .5rem}.admin-systems-logs{background:var(--color-secondary);border-radius:6px;padding:.75rem 1rem;font-family:monospace;font-size:.8rem;white-space:pre-wrap;word-break:break-word;max-height:300px;overflow-y:auto;color:var(--color-text-secondary)}.admin-systems-infra{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.admin-systems-infra-card{border:1px solid var(--color-border);border-radius:8px;padding:1rem;font-size:.9rem}.admin-systems-infra-card h4{margin:0 0 .25rem}.admin-systems-infra-card p{margin:0;color:var(--color-text-tertiary);font-size:.8rem}.admin-systems-infra-card a{color:var(--color-brand-periwinkle);text-decoration:none;font-size:.8rem}.admin-systems-infra-card a:hover{text-decoration:underline}.admin-systems-empty{text-align:center;padding:3rem;color:var(--color-text-tertiary)}.admin-systems-purpose{font-size:.8rem;color:var(--color-text-tertiary)}.admin-systems-error-cell{font-size:.8rem;color:var(--color-text-tertiary);max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-systems-error-block{border-left:3px solid var(--color-danger);padding:.5rem .75rem;margin:.75rem 0;font-size:.85rem;color:var(--color-text-secondary)}.admin-systems-chip-list{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.35rem}.admin-systems-chip{display:inline-block;background:var(--color-secondary);border:1px solid var(--color-border);border-radius:4px;padding:.15rem .5rem;font-size:.75rem;font-family:monospace;color:var(--color-text-secondary)}.admin-systems-status.warning{background-color:var(--color-warning)}.admin-users{padding:2rem;max-width:1400px;margin:0 auto}.admin-users h1{margin-bottom:1.5rem}.admin-users-stats{display:flex;gap:1.5rem;margin-bottom:1.5rem}.admin-users-stat{display:flex;flex-direction:column;padding:1rem 1.5rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-secondary);min-width:120px}.admin-users-stat-value{font-size:1.5rem;font-weight:600}.admin-users-stat-label{font-size:.75rem;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.admin-users-filters{display:flex;gap:.75rem;margin-bottom:1rem}.admin-users-select{max-width:200px}.admin-users-row{transition:background-color .15s}.admin-users-row:hover{background-color:var(--color-secondary)}.admin-users-user{display:flex;flex-direction:column}.admin-users-user-name{font-weight:500}.admin-users-user-email{font-size:.8rem;color:var(--color-text-tertiary)}.admin-users-status{display:flex;flex-wrap:wrap;gap:.35rem}.admin-users-badge{display:inline-block;padding:.15rem .5rem;border-radius:9999px;font-size:.7rem;font-weight:500;white-space:nowrap}.admin-users-badge-success{background:color-mix(in srgb,var(--color-success) 15%,transparent);color:var(--color-success)}.admin-users-badge-muted{background:color-mix(in srgb,var(--color-text-tertiary) 15%,transparent);color:var(--color-text-tertiary)}.admin-users-badge-danger{background:color-mix(in srgb,var(--color-danger) 15%,transparent);color:var(--color-danger)}.admin-users-badge-admin{background:color-mix(in srgb,var(--color-brand-periwinkle) 15%,transparent);color:var(--color-brand-periwinkle)}.admin-jobs{padding:2rem;max-width:1400px;margin:0 auto}.admin-jobs h1{margin-bottom:.25rem}.admin-jobs-filters{display:flex;gap:1rem;margin-bottom:1.5rem;align-items:center}.admin-jobs-status{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}.admin-jobs-status.success{background-color:var(--color-success)}.admin-jobs-status.warning{background-color:var(--color-warning)}.admin-jobs-status.failure{background-color:var(--color-danger)}.admin-jobs-status.unknown{background-color:var(--color-text-tertiary)}.admin-jobs-error-cell{font-size:.8rem;color:var(--color-text-tertiary);max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-jobs-type{font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary)}.admin-jobs-count{font-size:.85rem;color:var(--color-text-tertiary);margin-bottom:1rem}.admin-jobs-user-row{cursor:pointer;transition:background-color .15s}.admin-jobs-user-row:hover,.admin-jobs-user-row.expanded{background-color:var(--color-secondary)}.admin-jobs-detail-cell{padding:0!important}.admin-jobs-inner-table{margin:0;border:none;background:var(--color-secondary)}.admin-jobs-inner-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary)}.admin-jobs-badge{display:inline-block;font-size:.75rem;font-weight:600;padding:.1rem .5rem;border-radius:10px}.admin-jobs-badge.warning{background-color:var(--color-warning);color:#000}.admin-jobs-badge.failure{background-color:var(--color-danger);color:#fff}.data-table-container{overflow:auto;max-height:calc(100vh - 200px);max-width:100%}.data-table{min-width:100%;border-collapse:collapse}.data-table__header-row{position:sticky;top:0;background:hsl(var(--muted));z-index:10}.data-table__th{padding:12px 16px;text-align:left;font-weight:600;font-size:13px;position:relative;white-space:nowrap}.data-table__col-type{font-size:10px}.data-table__summary-btn{padding:2px 6px;height:auto;font-size:10px}.data-table__col-separator{position:absolute;right:0;top:25%;height:50%;width:1px;background-color:hsl(var(--border))}.data-table__row{border-bottom:1px solid hsl(var(--border));transition:background-color .15s}.data-table__row:hover{background-color:hsl(var(--muted))}.data-table__td{padding:10px 16px;font-size:13px;color:hsl(var(--foreground))}.data-table__td--row{color:hsl(var(--foreground) / .5)}.data-table__td--bordered{border-right:1px solid hsl(var(--border) / .5)}.toolbar-divider{width:1px;height:24px;margin:0 8px}.toolbar-download-link{font-size:12px}
