@charset "UTF-8";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Code", "Segoe UI Mono", Menlo, monospace;--bg: #fafafa;--bg-card: #fff;--bg-input: #fff;--bg-hover: #f0f0f0;--text: #1a1a1a;--text-secondary: #666;--text-tertiary: #999;--border: #ddd;--border-focus: #333;--accent: #0645ad;--success: #2e7d32;--danger: #c62828;--warning: #e65100;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #1a1a1a;--bg-card: #242424;--bg-input: #2a2a2a;--bg-hover: #333;--text: #e0e0e0;--text-secondary: #999;--text-tertiary: #666;--border: #333;--border-focus: #666;--accent: #6b9fcf;--success: #6fcf6f;--danger: #cf6f6f;--warning: #cfaf6f}}body{font-family:var(--font-sans);color:var(--text);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,pre{font-family:var(--font-mono)}h1,h2,h3,h4{line-height:1.25}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.1rem}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:1rem}.card+.card{margin-top:.5rem}a.card{display:block;color:inherit;text-decoration:none}a.card:hover{border-color:var(--border-focus)}.btn{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.875rem;font-family:inherit;border:1px solid var(--border);border-bottom:2px solid color-mix(in srgb,var(--border) 85%,#000);border-radius:5px;background:linear-gradient(to bottom,var(--bg-card),color-mix(in srgb,var(--bg-card) 95%,#000));color:var(--text);cursor:pointer;line-height:1.5;box-shadow:0 1px 2px #00000014}.btn:hover{background:linear-gradient(to bottom,color-mix(in srgb,var(--bg-card) 95%,#fff),var(--bg-card))}.btn:active{background:color-mix(in srgb,var(--bg-card) 95%,#000);box-shadow:inset 0 1px 2px #0000001f}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(to bottom,color-mix(in srgb,var(--accent) 18%,transparent),color-mix(in srgb,var(--accent) 12%,transparent));color:var(--accent);border-color:color-mix(in srgb,var(--accent) 25%,var(--border));border-bottom:2px solid color-mix(in srgb,var(--accent) 40%,var(--border))}.btn-primary:hover{background:linear-gradient(to bottom,color-mix(in srgb,var(--accent) 25%,transparent),color-mix(in srgb,var(--accent) 18%,transparent))}.btn-primary:active{background:color-mix(in srgb,var(--accent) 22%,transparent);box-shadow:inset 0 1px 2px #0000001f}.btn-success{background:linear-gradient(to bottom,color-mix(in srgb,var(--success) 18%,transparent),color-mix(in srgb,var(--success) 12%,transparent));color:var(--success);border-color:color-mix(in srgb,var(--success) 25%,var(--border));border-bottom:2px solid color-mix(in srgb,var(--success) 40%,var(--border))}.btn-success:hover{background:linear-gradient(to bottom,color-mix(in srgb,var(--success) 25%,transparent),color-mix(in srgb,var(--success) 18%,transparent))}.btn-success:active{background:color-mix(in srgb,var(--success) 22%,transparent);box-shadow:inset 0 1px 2px #0000001f}.btn-warning{background:linear-gradient(to bottom,color-mix(in srgb,var(--warning) 18%,transparent),color-mix(in srgb,var(--warning) 12%,transparent));color:var(--warning);border-color:color-mix(in srgb,var(--warning) 25%,var(--border));border-bottom:2px solid color-mix(in srgb,var(--warning) 40%,var(--border))}.btn-warning:hover{background:linear-gradient(to bottom,color-mix(in srgb,var(--warning) 25%,transparent),color-mix(in srgb,var(--warning) 18%,transparent))}.btn-warning:active{background:color-mix(in srgb,var(--warning) 22%,transparent);box-shadow:inset 0 1px 2px #0000001f}.btn-danger{background:linear-gradient(to bottom,color-mix(in srgb,var(--danger) 18%,transparent),color-mix(in srgb,var(--danger) 12%,transparent));color:var(--danger);border-color:color-mix(in srgb,var(--danger) 25%,var(--border));border-bottom:2px solid color-mix(in srgb,var(--danger) 40%,var(--border))}.btn-danger:hover{background:linear-gradient(to bottom,color-mix(in srgb,var(--danger) 25%,transparent),color-mix(in srgb,var(--danger) 18%,transparent))}.btn-danger:active{background:color-mix(in srgb,var(--danger) 22%,transparent);box-shadow:inset 0 1px 2px #0000001f}.btn-sm{padding:.25rem .5rem;font-size:.8125rem}.btn-group{display:flex;gap:.375rem}.badge{display:inline-block;padding:.125rem .5rem;font-size:.75rem;font-weight:500;border-radius:9999px;background:var(--bg-hover);color:var(--text-secondary)}.badge-running,.badge-runninghealthy,.badge-runningunknown,.badge-runninghealthyexcluded,.badge-runningunhealthyexcluded,.badge-runningunknownexcluded{background:color-mix(in srgb,var(--success) 15%,transparent);color:var(--success)}.badge-runningunhealthy,.badge-runningdegraded,.badge-degradedunhealthy,.badge-degradedexcluded{background:color-mix(in srgb,var(--warning) 15%,transparent);color:var(--warning)}.badge-stopped,.badge-exited,.badge-dead,.badge-removing{background:color-mix(in srgb,var(--danger) 15%,transparent);color:var(--danger)}.badge-building,.badge-restarting,.badge-restartingunknown,.badge-restartingexcluded,.badge-startingunknown,.badge-startingexcluded,.badge-created,.badge-paused,.badge-pausedunknown,.badge-pausedexcluded,.badge-inprogress,.badge-queued,.badge-pending{background:color-mix(in srgb,var(--warning) 15%,transparent);color:var(--warning)}.badge-finished,.badge-success{background:color-mix(in srgb,var(--success) 15%,transparent);color:var(--success)}.badge-failed,.badge-error,.badge-cancelledbyuser,.badge-killed,.badge-cancelled,.badge-admin{background:color-mix(in srgb,var(--danger) 15%,transparent);color:var(--danger)}.badge-staff{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.badge-warning{background:color-mix(in srgb,var(--warning) 15%,transparent);color:var(--warning)}.badge-danger{background:color-mix(in srgb,var(--danger) 15%,transparent);color:var(--danger)}.badge-success{background:color-mix(in srgb,var(--success) 15%,transparent);color:var(--success)}.badge-accent{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.badge-muted{background:color-mix(in srgb,var(--text-secondary) 15%,transparent);color:var(--text-secondary)}.audit-feed{position:relative;padding-left:1.5rem}.audit-feed:before{content:"";position:absolute;left:.5rem;top:.25rem;bottom:.25rem;width:1px;background:var(--border)}.audit-entry{display:flex;gap:.75rem;padding:.375rem 0;font-size:.8125rem}.audit-entry+.audit-entry{border-top:none}.audit-dot{position:absolute;left:.125rem;width:.875rem;text-align:center;font-size:.6875rem;line-height:1.5;flex-shrink:0}.audit-content{min-width:0}.audit-line{color:var(--text);line-height:1.5}.audit-line strong{font-weight:600}.audit-line code{font-size:.75rem;padding:.0625rem .3125rem;background:var(--bg-hover);border-radius:3px}.audit-time{color:var(--text-tertiary);font-size:.75rem}.mono{font-family:var(--font-mono);font-size:.875rem}.flash{padding:.625rem 1rem;border-radius:4px;margin-bottom:1rem;font-size:.875rem}.flash-alert{background:color-mix(in srgb,var(--danger) 10%,var(--bg));border:1px solid color-mix(in srgb,var(--danger) 30%,var(--border));color:var(--danger)}.flash-warning{background:color-mix(in srgb,var(--warning) 10%,var(--bg));border:1px solid color-mix(in srgb,var(--warning) 30%,var(--border));color:var(--warning)}.flash-notice{background:color-mix(in srgb,var(--success) 10%,var(--bg));border:1px solid color-mix(in srgb,var(--success) 30%,var(--border));color:var(--success)}.flash-info{background:color-mix(in srgb,var(--accent) 10%,var(--bg));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));color:var(--accent)}.nav{display:flex;align-items:center;justify-content:space-between;padding:.625rem 1rem;border-bottom:1px solid var(--border);background:var(--bg-card)}.nav-brand{font-weight:600;color:var(--text);text-decoration:none;font-size:.9375rem}.nav-links{display:flex;align-items:center;gap:.75rem;margin-left:1.5rem;font-size:.875rem}.nav-links a{color:var(--text-secondary);text-decoration:none}.nav-links a:hover{color:var(--text)}.nav-right{display:flex;align-items:center;gap:.75rem;font-size:.875rem}.nav-user{color:var(--text-secondary)}.input{padding:.375rem .625rem;font-size:.875rem;font-family:inherit;border:1px solid var(--border);border-radius:4px;background:var(--bg-input);color:var(--text);line-height:1.5}.input:focus{outline:none;border-color:var(--border-focus)}.form-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}label{font-size:.875rem;font-weight:500}.env-masked{color:var(--text-tertiary)}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-tertiary);font-size:.9375rem}.table{width:100%;border-collapse:collapse;font-size:.875rem}.table th,.table td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--border)}.table th{font-weight:600;color:var(--text-secondary);font-size:.8125rem}.table tr:hover td{background:var(--bg-hover)}.detail-grid{display:grid;grid-template-columns:auto 1fr;gap:.375rem 1rem;font-size:.875rem}.detail-grid dt{color:var(--text-secondary);font-weight:500}.detail-grid dd{color:var(--text)}.filter-tabs{display:flex;gap:.25rem;margin-bottom:1rem;border-bottom:1px solid var(--border)}.filter-tab{padding:.5rem .75rem;font-size:.8125rem;color:var(--text-secondary);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}.filter-tab:hover{color:var(--text);text-decoration:none}.filter-tab.active{color:var(--text);border-bottom-color:var(--accent)}.container-picker{display:flex;gap:.25rem;margin-bottom:1rem}.resource-hero{padding:1.25rem;margin-bottom:1.5rem}.resource-hero-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.resource-hero-header h1{margin:0}.resource-hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem;font-size:.875rem;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:.5rem}.resource-hero-meta .sep:before{content:"·";color:var(--text-tertiary)}.resource-hero-domains{font-size:.875rem;font-family:var(--font-mono);margin-bottom:.5rem}.resource-hero-domains a+a{margin-left:.5rem}.resource-hero-domains a[target=_blank]:after{content:" ↗"}.resource-hero-details{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;font-size:.8125rem;color:var(--text-secondary);margin-bottom:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}.resource-hero-details dt{font-weight:500;display:inline}.resource-hero-details dd{display:inline;color:var(--text);margin-right:0}.resource-hero-details .detail-pair{white-space:nowrap}.resource-hero-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.75rem;border-top:1px solid var(--border)}.section-heading{font-size:.8125rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:1.5rem 0 .75rem}.section-heading:first-child{margin-top:0}ninja-keys{--ninja-accent-color: var(--accent);--ninja-font-family: var(--font-sans);--ninja-z-index: 1000}@media(max-width:40rem){.nav{flex-wrap:wrap;gap:.5rem}.nav-links{margin-left:0;order:3;width:100%}.nav-right{margin-left:auto}.page-header{flex-direction:column;align-items:flex-start;gap:.5rem}.form-row{flex-direction:column;align-items:stretch}.btn-group{flex-wrap:wrap}.table-wrap{overflow-x:auto}.table{min-width:32rem}.detail-grid{grid-template-columns:1fr;gap:.125rem 0}.detail-grid dt{margin-top:.5rem}}.container{max-width:64rem;margin:0 auto;padding:1rem}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.page-header-left{display:flex;flex-direction:column;gap:.25rem}.breadcrumb{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--text-tertiary)}.breadcrumb a{color:var(--text-secondary)}.breadcrumb a:hover{color:var(--text)}.breadcrumb .breadcrumb-sep:before{content:"/"}.breadcrumb .breadcrumb-current{color:var(--text);font-weight:500}.env-table{width:100%}.env-table .env-key{font-family:var(--font-mono);font-size:.875rem;font-weight:500;white-space:nowrap}.env-table .env-value{font-family:var(--font-mono);font-size:.875rem;max-width:400px;overflow:hidden;text-overflow:ellipsis}.env-table .env-actions{white-space:nowrap;text-align:right}.log-viewer{background:#1a1a1a;border-radius:6px;overflow:hidden}.log-controls{display:flex;align-items:center;gap:1rem;padding:.5rem .75rem;background:#111;border-bottom:1px solid #333;font-size:.8125rem;color:#999}.log-controls label{display:flex;align-items:center;gap:.375rem;cursor:pointer;font-weight:400;color:#999}.log-controls select{background:#222;color:#ccc;border:1px solid #444;border-radius:3px;padding:.125rem .375rem;font-size:.8125rem;font-family:inherit}.log-output{padding:.75rem;margin:0;font-family:var(--font-mono);font-size:.8125rem;line-height:1.6;color:#ccc;overflow-x:auto;max-height:70vh;overflow-y:auto;white-space:pre;tab-size:4}.log-output .log-line{display:block;padding:0 .25rem;border-radius:2px}.log-output .log-line:hover{background:#252525}.log-output .log-stderr{color:#cf6f6f}.log-output .log-cmd{font-weight:700;margin-top:.25rem}.log-output .log-timestamp{color:#666;margin-right:.5rem;user-select:none}.hca-button{background:linear-gradient(to bottom,#ff4d64,#ec3750,#d42f45);color:#fff;border:1px solid #a82438;border-radius:6px;padding:.7rem 1.4rem;font-weight:600;cursor:pointer;text-shadow:0 -1px 0 rgba(0,0,0,.3);box-shadow:inset 0 1px #ffffff40,0 2px 3px #0003;transition:box-shadow .1s ease}.hca-button:hover{background:linear-gradient(to bottom,#ff5a6e,#f04058,#db3448)}.hca-button:active{background:linear-gradient(to bottom,#c92a3e,#d42f45,#ec3750);box-shadow:inset 0 2px 4px #0000004d,0 1px #ffffff1a}.admin-tool{padding:.5rem;border-radius:.5rem;border:1px dashed #ff8c37;background:#ff8c3720;overflow:auto}span.admin-tool{padding:.0625rem .25rem;border-radius:3px;border:1px dashed rgba(255,140,55,.5);background:#ff8c3714}tr.admin-tool{border:none;background:#ff8c370f}tr.admin-tool td{border-bottom-color:#ff8c3733}.nav-admin-links{display:inline-flex;gap:.75rem;padding:.125rem .5rem;border-radius:4px}.login-page{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 4rem)}.login-card{width:100%;max-width:20rem;text-align:center;padding:2rem 1.5rem}.login-card:hover{border-color:var(--border)}.login-card h1{font-size:1.5rem;font-weight:600;letter-spacing:-.02em}.login-card .login-subtitle{color:var(--text-tertiary);font-size:.8125rem;margin-bottom:1.5rem}.login-buttons{display:flex;align-items:stretch;gap:.5rem}.login-buttons form{display:flex}.login-buttons form:first-child{flex:1}.login-buttons .hca-button{width:100%;font-size:.875rem}.login-buttons .break-glass-button{background:none;border:1px solid var(--border);border-radius:6px;color:var(--text-tertiary);cursor:pointer;font-size:.875rem;padding:0 .625rem}.login-buttons .break-glass-button:hover{background:var(--bg-hover);color:var(--text-secondary)}
