:root{color-scheme:dark;--brand-logo-asset: url(/assets/Smash_logo-D2XGpbpi.png);--font-sans: "Inter", "SF Pro Text", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", Menlo, Consolas, monospace;--font-display: var(--font-sans);font-family:var(--font-sans);font-feature-settings:"cv11","ss01","ss03";font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;--fs-xs: 12px;--fs-sm: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 18px;--fs-2xl: 22px;--fs-3xl: 28px;--tracking-cap: .08em;--accent: #5BC8F5;--accent-bright: #A8E4FA;--accent-deep: #0F8FCB;--accent-soft: rgba(91, 200, 245, .12);--accent-softer: rgba(91, 200, 245, .06);--accent-glow: rgba(91, 200, 245, .35);--accent-ring: rgba(91, 200, 245, .55);--accent-dim: var(--accent-soft);--canvas: #08111C;--surface: #101D2E;--surface-2: #162739;--surface-3: #1D3148;--sunk: #060D17;--bg: var(--canvas);--bg-soft: var(--surface);--panel: var(--surface);--border-hairline: rgba(255, 255, 255, .06);--border-soft: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .16);--border-accent: rgba(91, 200, 245, .42);--panel-border: var(--border-hairline);--text: #EAF4FB;--text-soft: #B6C9DC;--text-dim: #8FA9BF;--text-muted: #71879B;--text-on-accent: #061520;--muted: var(--text-muted);--success: #4ADE80;--success-soft: rgba(74, 222, 128, .14);--success-ring: rgba(74, 222, 128, .4);--warning: #FBBF24;--warning-soft: rgba(251, 191, 36, .14);--warning-ring: rgba(251, 191, 36, .42);--danger: #F87171;--danger-soft: rgba(248, 113, 113, .16);--danger-ring: rgba(248, 113, 113, .45);--info: var(--accent);--info-soft: var(--accent-soft);--good: var(--success);--good-dim: var(--success-soft);--warn: var(--warning);--warn-dim: var(--warning-soft);--danger-dim: var(--danger-soft);--radius-xs: 4px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .32);--shadow-sm: 0 2px 6px rgba(0, 0, 0, .34);--shadow-md: 0 8px 24px rgba(0, 0, 0, .45);--shadow-lg: 0 24px 64px rgba(0, 0, 0, .55);--shadow-accent: 0 0 0 1px var(--accent-ring), 0 6px 24px rgba(91, 200, 245, .18);--ease-out: cubic-bezier(.2, .7, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--dur-1: .12s;--dur-2: .18s;--dur-3: .24s;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--content-gap: var(--space-5)}body{background-color:var(--canvas);background-image:radial-gradient(1100px 600px at -10% -10%,rgba(91,200,245,.045),transparent 60%),radial-gradient(900px 500px at 110% 0%,rgba(15,143,203,.04),transparent 60%);background-attachment:fixed;color:var(--text)}::selection{background:#5bc8f552;color:var(--text)}.mono{font-family:var(--font-mono);font-feature-settings:"liga" 0,"calt" 0;font-variant-numeric:tabular-nums;letter-spacing:0}.muted{color:var(--text-muted)}.dim{color:var(--text-dim)}.warn{color:var(--warning)}.good{color:var(--success)}.section-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--tracking-cap);color:var(--text-muted);font-weight:600}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-pill);font-size:10.5px;font-weight:600;letter-spacing:var(--tracking-cap);text-transform:uppercase;background:#ffffff0d;color:var(--text-dim);line-height:1.4;border:1px solid transparent}.tag--accent{background:var(--accent-soft);color:var(--accent)}.tag--good{background:var(--success-soft);color:var(--success)}.tag--warn{background:var(--warning-soft);color:var(--warning)}.tag--danger{background:var(--danger-soft);color:var(--danger)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;background:radial-gradient(ellipse at top left,rgba(94,201,184,.08),transparent 40%),linear-gradient(160deg,#0d1828 0%,var(--bg) 100%);color:var(--text);overflow:hidden}body{overflow:hidden}.muted{color:var(--text-dim)}.warn{color:var(--warn)}.error-text{color:var(--danger)}.mono{font-family:SF Mono,Fira Code,monospace;font-size:.875em}.tag{display:inline-block;padding:1px 7px;border-radius:999px;background:var(--accent-dim);color:var(--accent);font-size:.75em;font-weight:600}button,input,select,textarea,summary{font:inherit;color:inherit}button{border:0;cursor:pointer}input,select,textarea{width:100%;padding:9px 13px;background:#00000059;border:1px solid var(--panel-border);border-radius:var(--radius-sm);color:var(--text);outline:none;transition:border-color .12s,box-shadow .12s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}input::placeholder,textarea::placeholder{color:var(--muted)}select option{background:#111c2d}input[type=checkbox]{width:auto;accent-color:var(--accent)}input[type=search]::-webkit-search-cancel-button{filter:invert(1)}input[type=radio]{width:auto;accent-color:var(--accent)}button{font-family:inherit}.btn-primary,.btn-outline,.btn-ghost,.btn-danger,.btn-back,.btn-icon,.btn-icon-accent{font-family:inherit;cursor:pointer;-webkit-user-select:none;user-select:none}.btn-primary:focus-visible,.btn-outline:focus-visible,.btn-ghost:focus-visible,.btn-danger:focus-visible,.btn-back:focus-visible,.btn-icon:focus-visible,.btn-icon-accent:focus-visible{outline:2px solid var(--accent-ring);outline-offset:2px}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 18px;border:1px solid var(--accent-deep);border-radius:var(--radius-md);background:var(--accent);color:var(--text-on-accent);font-weight:600;font-size:var(--fs-sm);letter-spacing:.005em;white-space:nowrap;box-shadow:0 4px 14px #0f8fcb40;transition:transform .1s var(--ease-out),filter var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.btn-primary:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 6px 18px #0f8fcb52}.btn-primary:active:not(:disabled){transform:translateY(.5px);filter:brightness(.97)}.btn-primary:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 14px;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:#ffffff06;color:var(--text);font-size:var(--fs-sm);font-weight:500;white-space:nowrap;transition:background var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.btn-outline:hover{background:#ffffff0f;border-color:var(--border-strong)}.btn-outline:active{background:#ffffff17}.btn-outline:disabled{opacity:.45;cursor:not-allowed}.btn-ghost{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-dim);font-size:var(--fs-sm);transition:color var(--dur-1) var(--ease-out),background var(--dur-1) var(--ease-out)}.btn-ghost:hover{color:var(--text);background:#ffffff0d}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 14px;border:1px solid rgba(248,113,113,.34);border-radius:var(--radius-md);background:var(--danger-soft);color:var(--danger);font-size:var(--fs-sm);font-weight:600;transition:background var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}.btn-danger:hover{background:#f8717142;border-color:#f871718c}.btn-danger-hover:hover{color:var(--danger)!important}.btn-sm{height:26px;padding:0 10px;font-size:var(--fs-xs);border-radius:var(--radius-sm)}.btn-primary.btn-sm,.btn-outline.btn-sm,.btn-ghost.btn-sm,.btn-danger.btn-sm{height:26px;padding:0 10px}.btn-square{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);font-size:13px;transition:background var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}.btn-icon:hover{background:#ffffff0f;color:var(--text)}.btn-icon:disabled{opacity:.35;cursor:not-allowed}.btn-icon-accent{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent);font-size:14px;font-weight:600;border:1px solid var(--border-accent);transition:background var(--dur-1) var(--ease-out)}.btn-icon-accent:hover{background:#5bc8f538}.btn-back{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border:1px solid var(--border-hairline);border-radius:var(--radius-sm);background:#ffffff06;color:var(--text-dim);font-size:var(--fs-xs);font-weight:500;transition:background var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.btn-back:hover{background:#ffffff0f;color:var(--text)}.btn-text{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text-dim);font-size:var(--fs-xs);cursor:pointer;padding:4px 8px;border-radius:var(--radius-xs);transition:color var(--dur-1) var(--ease-out),background var(--dur-1) var(--ease-out)}.btn-text:hover{color:var(--text);background:#ffffff0a}.page{max-width:1100px;width:100%;margin:0 auto;padding:36px 40px 48px;overflow-y:auto;height:100%}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-5);margin-bottom:var(--space-6);border-bottom:1px solid var(--border-hairline);flex-wrap:wrap}.page-title-group{display:flex;align-items:center;gap:var(--space-4)}.page-title-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:var(--radius-lg);background:linear-gradient(135deg,#5bc8f52e,#5bc8f50a);border:1px solid var(--border-accent);color:var(--accent);font-size:26px;flex-shrink:0;box-shadow:0 0 0 4px #5bc8f50a}.page-title-text{display:flex;flex-direction:column;gap:4px}.page-title{font-size:32px;font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--text);margin:0}.page-subtitle{font-size:var(--fs-lg);color:var(--text-dim);margin:0;line-height:1.45}.page-actions{display:flex;gap:var(--space-2);align-items:center}.section-heading{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-6) 0 var(--space-3)}.section-heading:first-child{margin-top:0}.section-heading-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);background:var(--accent-soft);border:1px solid var(--border-accent);color:var(--accent);font-size:15px;flex-shrink:0}.section-heading h2{margin:0;font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em;color:var(--text)}.section-heading .section-heading-meta{color:var(--text-muted);font-size:var(--fs-xs);font-family:var(--font-mono);margin-left:8px}.section-heading-spacer{flex:1}.row-gap{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.field-hint{color:var(--text-dim);font-size:var(--fs-xs)}.field-error{color:var(--danger);font-size:var(--fs-sm)}.section-label{font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.path-input-row{display:flex;gap:8px;align-items:stretch}.path-input-row input{flex:1}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.radio-group{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.radio-label{display:flex;align-items:center;gap:6px;cursor:pointer}.loading-shell{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.loading-spinner{width:36px;height:36px;border:3px solid var(--panel-border);border-top-color:var(--accent);border-radius:50%;animation:spin .9s linear infinite}.loading-text{color:var(--text-dim);font-size:.9em}@keyframes spin{to{transform:rotate(360deg)}}.wizard-shell{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:24px}.wizard-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);padding:40px;width:100%;max-width:480px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:28px}.wizard-logo{display:flex;align-items:center;gap:10px}.wizard-logo-icon{width:28px;height:28px;object-fit:contain}.wizard-logo-text{font-size:1.05em;font-weight:600;color:var(--text)}.wizard-logo-text-muted{color:var(--text-dim);font-weight:500}.wizard-steps{display:flex;align-items:center;gap:0}.wizard-step-dot{width:10px;height:10px;border-radius:50%;background:var(--muted);flex-shrink:0;transition:background .3s}.wizard-step-dot.active{background:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.wizard-step-dot.done{background:var(--good)}.wizard-step-line{flex:1;height:2px;background:var(--panel-border);margin:0 6px}.wizard-content{display:flex;flex-direction:column;gap:16px}.wizard-title{font-size:1.25em;font-weight:600}.wizard-desc{color:var(--text-dim);line-height:1.6}.wizard-field{display:flex;flex-direction:column;gap:6px}.wizard-error{color:var(--danger);font-size:.85em}.wizard-cta{width:100%;padding:12px;font-size:1em}.wizard-skip{text-align:center;color:var(--muted);font-size:.85em;text-decoration:underline;cursor:pointer}.app-shell{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-6);height:56px;padding:0 var(--space-6);background:#08111cc7;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border-bottom:1px solid var(--border-hairline);flex-shrink:0;z-index:50;position:relative}.topbar-brand{display:flex;align-items:center;gap:var(--space-3)}.topbar-logo{height:28px;width:auto;display:block;filter:drop-shadow(0 1px 0 rgba(0,0,0,.4))}.topbar-title{font-weight:600;font-size:var(--fs-md);letter-spacing:-.005em;color:var(--text)}.topbar-title-muted{color:var(--text-muted);font-weight:500}.topbar-tabs{display:flex;align-items:center;justify-content:center;gap:2px}.topbar-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-dim);padding:8px 14px;font-size:var(--fs-sm);font-weight:500;border-radius:var(--radius-sm);cursor:pointer;transition:color var(--dur-1) var(--ease-out),background var(--dur-1) var(--ease-out)}.topbar-tab:hover{color:var(--text);background:#ffffff0a}.topbar-tab--active{color:var(--accent);background:var(--accent-soft)}.topbar-right{display:flex;align-items:center;gap:var(--space-3);justify-content:flex-end}.topbar-version{font-size:11.5px;color:var(--text-muted);letter-spacing:.01em;white-space:nowrap;cursor:default;-webkit-user-select:text;user-select:text}.topbar-status{display:inline-flex;align-items:center;gap:8px;height:28px;padding:0 12px 0 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;border:1px solid transparent;white-space:nowrap}.topbar-status-dot{width:8px;height:8px;border-radius:50%;background:currentColor;flex-shrink:0}.topbar-status--ok{background:var(--success-soft);border-color:#4ade8047;color:var(--success)}.topbar-status--ok .topbar-status-dot{box-shadow:0 0 0 3px #4ade8038;animation:pulse 1.8s var(--ease-out) infinite}.topbar-status--running{background:var(--accent-soft);border-color:var(--border-accent);color:var(--accent)}.topbar-status--running .topbar-status-dot{box-shadow:0 0 0 3px var(--accent-soft);animation:pulse 1.4s var(--ease-out) infinite}.topbar-status--offline{background:#ffffff0a;border-color:var(--border-hairline);color:var(--text-muted)}.topbar-settings{color:var(--text-dim)}.topbar-settings:hover{color:var(--accent)}.app-main{flex:1;overflow:hidden;display:flex;justify-content:center;align-items:stretch}.topbar-cloud-badge{margin-left:8px;padding:1px 7px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;border-radius:999px;background:#7c8cf829;color:var(--accent, #7c8cf8);vertical-align:middle}.presets-page{display:grid;grid-template-columns:340px 1fr 280px;gap:var(--space-4);padding:var(--space-4);width:100%;height:100%;min-height:0;overflow:hidden}.presets-col{min-height:0;min-width:0;height:100%;display:flex;flex-direction:column;overflow:hidden}.presets-col>*{flex:1;min-height:0;height:auto}.presets-empty-right{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);text-align:center;padding:var(--space-8);background:var(--surface);border:1px dashed var(--border-soft);border-radius:var(--radius-lg);color:var(--text-dim)}.presets-empty-glyph{width:64px;height:64px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(91,200,245,.22),transparent 70%);display:flex;align-items:center;justify-content:center;font-size:24px;color:var(--accent)}.presets-empty-title{font-size:var(--fs-xl);font-weight:600;margin:0;color:var(--text)}.presets-empty-text{max-width:360px;margin:0}@media (max-width: 1100px){.presets-page{grid-template-columns:1fr 260px}.presets-col--list{display:none}}.comparer-page{display:flex;flex-direction:column}.comparer-grid{display:grid;grid-template-columns:320px 1fr;gap:var(--space-6);align-items:flex-start}.comparer-left{display:flex;flex-direction:column;gap:var(--space-4);background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);padding:var(--space-5);position:sticky;top:0}.comparer-arrow-divider{color:var(--text-muted);text-align:center;font-size:var(--fs-xs);margin:-4px 0;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.comparer-branch-warning{font-size:.85em}.comparer-right{display:flex;flex-direction:column;min-width:0}.comparer-error-text{margin-bottom:16px}.comparer-empty{border:1px dashed var(--border-soft);border-radius:var(--radius-lg);padding:56px 40px;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center;background:linear-gradient(180deg,rgba(91,200,245,.025),transparent);color:var(--text-dim)}.comparer-empty h2{margin:0;font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em;color:var(--text)}.comparer-empty p{margin:0;max-width:460px;line-height:1.6;color:var(--text-dim)}.comparer-empty-icon{width:80px;height:80px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(91,200,245,.18),transparent 70%);display:inline-flex;align-items:center;justify-content:center}.comparer-empty-icon svg{width:52px;height:52px;color:var(--accent);opacity:.85}.comparer-empty-steps{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:6px;max-width:380px;text-align:left}.comparer-empty-steps li{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:center;font-size:var(--fs-sm);color:var(--text-dim);padding:6px 0}.comparer-empty-steps li b,.comparer-empty p b{color:var(--text);font-weight:600}.comparer-empty--compact{height:auto;padding:40px 0}.comparer-empty-num{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-family:var(--font-mono);font-size:11px;font-weight:700}.compare-status-bar{display:flex;align-items:center;gap:12px;margin-bottom:var(--space-5);flex-wrap:wrap}.compare-stat{font-size:var(--fs-sm);color:var(--text-dim)}.compare-stat strong{color:var(--text)}.changelog-summary{margin-bottom:var(--space-5);padding:var(--space-4);background:var(--accent-soft);border:1px solid var(--border-accent);border-radius:var(--radius-md);font-size:var(--fs-sm);line-height:1.6}.changelog-section{margin-bottom:var(--space-5)}.changelog-section-header{display:flex;align-items:center;gap:8px;margin-bottom:var(--space-3);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--radius-sm)}.changelog-section-header:focus-visible{outline:2px solid var(--accent-ring);outline-offset:2px}.changelog-section-header h3{font-size:var(--fs-sm);font-weight:600;color:var(--text);margin:0}.changelog-section-count{display:inline-block;padding:0 7px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--fs-xs);font-weight:600;min-width:20px;text-align:center}.changelog-summary-wrap{margin-bottom:24px}.changelog-table-wrap{overflow-x:auto;margin-bottom:var(--space-5);border:1px solid var(--border-hairline);border-radius:var(--radius-md)}.changelog-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.changelog-col-type{width:90px}.changelog-col-motivation{width:22%}.changelog-col-notes{width:18%}.changelog-col-commits{width:140px}.changelog-table th{text-align:left;padding:10px 12px;background:#0000002e;color:var(--text-dim);font-weight:600;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-hairline);white-space:nowrap}.changelog-table td{padding:10px 12px;border-bottom:1px solid var(--border-hairline);vertical-align:top}.changelog-table tbody tr:hover{background:#ffffff06}.changelog-type-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:600;white-space:nowrap}.type-feature{background:var(--accent-soft);color:var(--accent)}.type-bugfix{background:var(--danger-soft);color:var(--danger)}.type-chore{background:#ffffff0f;color:var(--text-dim)}.type-refactor{background:var(--warning-soft);color:var(--warning)}.type-docs{background:#64b4ff1f;color:#7cb8f0}.changelog-cell-desc{margin-bottom:4px;color:var(--text);line-height:1.45}.changelog-cell-files{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.changelog-cell-files code{font-family:var(--font-mono);font-size:12px;padding:1px 6px;background:#00000040;border-radius:var(--radius-xs);color:var(--text-dim);white-space:nowrap}.changelog-cell-motivation{color:var(--text-dim);line-height:1.45}.changelog-cell-notes{color:var(--text-muted);line-height:1.45}.changelog-cell-commits{display:flex;flex-wrap:wrap;gap:4px}.compare-commit-list,.compare-file-list{margin-bottom:var(--space-5)}.compare-commit-item,.compare-file-item{display:flex;align-items:baseline;gap:8px;padding:6px 0;font-size:var(--fs-sm);border-bottom:1px solid var(--border-hairline)}.compare-commit-msg{color:var(--text);flex:1}.compare-commit-date{color:var(--text-muted);font-size:var(--fs-xs);flex-shrink:0;white-space:nowrap}.compare-commit-author{color:var(--text-muted);font-size:var(--fs-xs);flex-shrink:0}.compare-file-status{font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:600;width:65px;flex-shrink:0;text-transform:uppercase}.compare-file-status--added{color:var(--success)}.compare-file-status--modified{color:var(--warning)}.compare-file-status--removed{color:var(--danger)}.compare-file-status--renamed{color:var(--accent)}.compare-file-name{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text);word-break:break-all}.compare-file-stats{font-size:var(--fs-xs);color:var(--text-muted);flex-shrink:0;margin-left:auto}.comparer-ai-bar{display:flex;align-items:center;gap:12px;margin-bottom:var(--space-5);padding:12px 16px;background:#0000001f;border:1px solid var(--border-hairline);border-radius:var(--radius-md)}.comparer-ai-bar .btn-primary{flex-shrink:0}.comparer-ai-bar .muted{font-size:var(--fs-xs)}@media (max-width: 900px){.comparer-grid{grid-template-columns:1fr}.comparer-left{position:static}}.preset-list{display:flex;flex-direction:column;height:100%;background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);overflow:hidden}.preset-list-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-hairline)}.preset-list-title{font-size:var(--fs-sm);font-weight:600;color:var(--text)}.preset-list-count{font-size:var(--fs-xs);color:var(--text-muted);font-family:var(--font-mono)}.preset-list-toolbar{display:flex;gap:8px;padding:10px 14px;border-bottom:1px solid var(--border-hairline)}.preset-list-search{flex:1;height:32px;padding:0 10px;border-radius:var(--radius-sm);background:var(--sunk);border:1px solid var(--border-soft);color:var(--text);font-size:var(--fs-sm);outline:none;transition:border-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out)}.preset-list-search::placeholder{color:var(--text-muted)}.preset-list-search:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.preset-list-add{width:32px;height:32px;border-radius:var(--radius-sm)}.preset-list-items{flex:1;display:flex;flex-direction:column;gap:8px;padding:8px;overflow-y:auto;min-height:0}.preset-list-empty{padding:24px 16px;color:var(--text-muted);font-size:var(--fs-sm);text-align:center}.preset-item{display:grid;grid-template-columns:auto auto 1fr auto;gap:12px;padding:12px;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1);background:var(--surface-2);cursor:pointer;transition:background var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),transform var(--dur-1) var(--ease-out);text-align:left;position:relative;box-shadow:0 1px #ffffff06 inset,0 2px 6px #00000052}.preset-item:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:3px;background:var(--preset-color, transparent);opacity:.65;pointer-events:none}.preset-item:hover{background:var(--surface-3);border-color:var(--border-soft);transform:translateY(-1px)}.preset-item:hover:before{opacity:1}.preset-item:focus-visible{outline:2px solid var(--accent-ring);outline-offset:2px}.preset-item--selected{background:var(--accent-soft);border-color:var(--border-accent);box-shadow:0 0 0 1px var(--border-accent),var(--shadow-sm)}.preset-item--running{background:linear-gradient(135deg,var(--preset-color-soft, rgba(91, 200, 245, .12)),rgba(91,200,245,.03));border-color:var(--preset-color-ring, rgba(91, 200, 245, .4));box-shadow:0 0 0 1px var(--preset-color-ring, rgba(91, 200, 245, .2)),var(--shadow-sm)}.preset-item-status{padding-top:6px}.preset-item-avatar{align-self:center}.preset-item-body{display:flex;flex-direction:column;gap:4px;min-width:0}.preset-item-title-row{display:flex;align-items:center;gap:8px}.preset-item-name{font-size:var(--fs-md);font-weight:600;color:var(--text)}.preset-unity-tag{background:#ffffff0a;color:var(--text-dim)}.preset-item-repo{font-size:var(--fs-xs);color:var(--text-dim);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preset-item-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}.preset-item-run{align-self:center;opacity:0;transition:opacity var(--dur-1) var(--ease-out)}.preset-item:hover .preset-item-run,.preset-item--selected .preset-item-run{opacity:1}.preset-item:focus-within .preset-item-run{opacity:1}.preset-detail{display:flex;flex-direction:column;min-height:0;height:100%;overflow-y:auto;background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg)}.preset-detail-header{display:flex;align-items:center;gap:var(--space-3);padding:14px 20px;border-bottom:1px solid var(--border-hairline);background:linear-gradient(180deg,var(--surface),rgba(16,29,46,.96));position:sticky;top:0;z-index:5;flex-shrink:0}.preset-detail-title-row{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.preset-detail-title{margin:0;font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preset-detail-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.preset-detail-meta,.preset-recent-jobs,.preset-detail-run{padding:16px 20px}.preset-detail>.preset-detail-meta{padding-top:18px}.preset-detail>.preset-detail-meta,.preset-detail>.preset-recent-jobs,.preset-detail>.preset-detail-run{flex-shrink:0}.preset-detail-meta{display:grid;grid-template-columns:130px 1fr;gap:10px 16px;padding-bottom:var(--space-4);border-bottom:1px solid var(--border-hairline)}.meta-row{display:contents}.meta-label{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.meta-value{font-size:var(--fs-sm);color:var(--text)}.meta-value .mono{font-size:12.5px}.preset-recent-jobs{display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--border-hairline)}.preset-recent-jobs .section-label{margin:0 0 4px}.recent-job-card{display:flex;flex-direction:column;gap:6px;padding:12px 14px;background:var(--surface-2);border:1px solid var(--border-hairline);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:border-color var(--dur-1) var(--ease-out),background var(--dur-1) var(--ease-out)}.recent-job-card:hover{border-color:var(--border-accent);background:var(--surface-3)}.recent-job-row1{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.recent-job-branch-text{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text)}.recent-job-row2{display:flex;align-items:center;justify-content:space-between;font-size:var(--fs-xs);color:var(--text-dim)}.recent-job-row2-left{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.recent-job-duration{color:var(--text-soft)}.recent-job-card-time{color:var(--text-muted);font-family:var(--font-mono)}.recent-job-card-step{color:var(--text-dim)}.progress-bar-mini{flex:1;height:4px;max-width:140px;background:#ffffff0f;border-radius:var(--radius-pill);overflow:hidden}.progress-bar-mini .progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-deep),var(--accent-bright))}.recent-job-upload{font-weight:600;font-size:11px;padding:2px 8px;border-radius:var(--radius-pill);background:#ffffff0a}.recent-job-upload.upload-ok{background:var(--success-soft);color:var(--success)}.recent-job-upload.upload-fail{background:var(--danger-soft);color:var(--danger)}.preset-detail-run{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.run-btn{height:40px;padding:0 22px}.job-status-badge{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 10px 0 8px;border-radius:var(--radius-pill);font-size:11.5px;font-weight:600;letter-spacing:.02em;border:1px solid transparent;line-height:1;text-transform:capitalize}.job-status-badge:before{content:"";width:9px;height:9px;border-radius:50%;flex-shrink:0;background:currentColor}.job-status-badge.status-running{background:var(--accent-soft);color:var(--accent);border-color:var(--border-accent)}.job-status-badge.status-running:before{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);animation:pulse 1.5s var(--ease-out) infinite}.job-status-badge.status-ok,.job-status-badge.status-completed{background:var(--success-soft);color:var(--success);border-color:#4ade8052}.job-status-badge.status-fail,.job-status-badge.status-failed{background:var(--danger-soft);color:var(--danger);border-color:#f871716b}.job-status-badge.status-queued{background:#ffffff0a;color:var(--text-dim);border-color:var(--border-soft)}.job-status-badge.status-cancelled{background:#ffffff0a;color:var(--text-muted);border-color:var(--border-hairline)}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--text-muted)}.status-dot.running,.status-dot.status-running{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);animation:pulse 1.5s var(--ease-out) infinite}.status-dot.ok,.status-dot.status-completed,.status-dot.completed{background:var(--success)}.status-dot.fail,.status-dot.status-failed,.status-dot.failed{background:var(--danger)}.status-dot.status-queued,.status-dot.queued{background:var(--text-muted)}.status-dot.status-cancelled,.status-dot.cancelled{background:var(--text-muted);opacity:.5}.ref-combobox{position:relative;width:100%}.ref-combobox-control{position:relative;display:flex;align-items:center}.ref-combobox-input{padding-right:52px;text-overflow:ellipsis}.ref-combobox.is-disabled .ref-combobox-input{opacity:.55;cursor:not-allowed}.ref-combobox-clear,.ref-combobox-caret{position:absolute;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);background:none;font-size:11px;line-height:1;pointer-events:none}.ref-combobox-caret{right:11px;font-size:10px}.ref-combobox-clear{right:28px;width:18px;height:18px;border-radius:var(--radius-pill);pointer-events:auto;cursor:pointer;transition:color var(--dur-1),background var(--dur-1)}.ref-combobox-clear:hover{color:var(--text);background:#ffffff14}.ref-combobox-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:100%;width:max-content;max-width:min(440px,90vw);z-index:60;max-height:300px;overflow-y:auto;overscroll-behavior:contain;padding:4px 0;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.ref-combobox-dropdown.is-above{top:auto;bottom:calc(100% + 4px)}.ref-combobox-group-label{padding:8px 12px 4px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-cap);color:var(--text-muted)}.ref-combobox-row{display:flex;align-items:center;gap:8px;padding:7px 12px;font-size:var(--fs-sm);color:var(--text-soft);cursor:pointer}.ref-combobox-row.is-active{background:#ffffff0f;color:var(--text)}.ref-combobox-row.is-selected{color:var(--text);font-weight:600}.ref-combobox-row.is-default-branch{color:var(--accent-bright);border-left:2px solid var(--accent);padding-left:10px}.ref-combobox-row.is-default-branch.is-active{background:var(--accent-soft)}.ref-combobox-row.is-release{color:var(--success);border-left:2px solid var(--success-ring);padding-left:10px}.ref-combobox-row.is-release.is-active{background:var(--success-soft)}.ref-combobox-row-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-size:var(--fs-xs)}.ref-combobox-row-badge{flex:0 0 auto;padding:1px 7px;border-radius:var(--radius-pill);font-size:9.5px;font-weight:700;letter-spacing:var(--tracking-cap);text-transform:uppercase;background:#ffffff0f;color:var(--text-dim)}.ref-combobox-row.is-default-branch .ref-combobox-row-badge{background:var(--accent-soft);color:var(--accent)}.ref-combobox-row.is-release .ref-combobox-row-badge{background:var(--success-soft);color:var(--success)}.ref-combobox-row-hint{flex:0 0 auto;font-size:var(--fs-xs);color:var(--text-muted)}.ref-combobox-row-check{flex:0 0 auto;color:var(--accent);font-weight:700}.ref-combobox-empty{padding:10px 12px;font-size:var(--fs-xs);color:var(--text-muted)}.preset-form{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;background:linear-gradient(145deg,rgba(22,39,57,.56),var(--surface) 42%);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.preset-form-header{flex:0 0 auto;padding:24px 32px 20px;border-bottom:1px solid var(--border-hairline)}.preset-form-header h2{margin:0;font-size:var(--fs-2xl);letter-spacing:-.025em}.preset-form-header p{margin:5px 0 0;color:var(--text-muted);font-size:var(--fs-sm)}.preset-form-body{flex:1;min-height:0;overflow-y:auto;padding:0 32px 24px}.preset-name-field{display:grid;grid-template-columns:1fr;gap:6px;margin:20px 0 2px}.preset-name-field label,.advanced-grid label,.preset-setup-inline-field label{color:var(--text-dim);font-size:11px;font-weight:700;letter-spacing:var(--tracking-cap);text-transform:uppercase}.preset-name-field input{height:42px;font-size:var(--fs-lg)}.preset-setup-row{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px;padding:20px 0;border-top:1px solid var(--border-hairline)}.preset-setup-row--entity{padding-top:18px}.preset-setup-copy{display:flex;gap:13px;min-width:0}.preset-setup-copy h3{margin:0;color:var(--text);font-size:var(--fs-lg);font-weight:600;letter-spacing:-.01em}.preset-setup-copy p{margin:3px 0 0;color:var(--text-muted);font-size:var(--fs-sm)}.preset-setup-icon{color:var(--accent);font-size:27px;line-height:1;font-weight:400}.preset-setup-row--entity>select{align-self:center;height:40px}.preset-setup-control{min-width:0;display:flex;flex-direction:column;gap:9px}.preset-setup-control .ref-combobox-input{height:42px;font-size:var(--fs-md)}.preset-setup-status{margin:0;color:var(--text-muted);font-size:var(--fs-sm)}.preset-setup-status.is-success{color:var(--success)}.preset-setup-status code{color:var(--accent);font-family:var(--font-mono)}.preset-setup-subfield{display:grid;gap:5px;margin-top:2px;color:var(--text-dim);font-size:var(--fs-xs)}.preset-setup-subfield select{height:36px}.preset-segmented{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:#00000026}.preset-segmented button{min-height:42px;padding:0 10px;color:var(--text-soft);background:transparent;border-right:1px solid var(--border-soft);font-weight:550;transition:background var(--dur-1),color var(--dur-1)}.preset-segmented button:last-child{border-right:0}.preset-segmented button:hover{background:#ffffff0d;color:var(--text)}.preset-segmented button.is-active{color:#fff;background:linear-gradient(180deg,#319cea,#1682d8);box-shadow:inset 0 0 0 1px #a8e4fa40}.preset-setup-inline-field{display:grid;gap:5px}.preset-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.preset-choice-grid--delivery{grid-template-columns:repeat(2,minmax(0,1fr));max-width:390px}.preset-choice{display:flex;align-items:center;gap:10px;min-height:50px;padding:0 13px;color:var(--text-soft);background:#ffffff06;border:1px solid var(--border-soft);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--dur-1),background var(--dur-1),color var(--dur-1)}.preset-choice:hover{border-color:var(--border-strong);background:#ffffff0b}.preset-choice.is-selected{color:var(--text);border-color:var(--border-accent);background:var(--accent-softer)}.preset-choice input{position:absolute;opacity:0;pointer-events:none}.preset-choice>span{color:var(--accent);font-size:18px;line-height:1}.preset-choice b{display:grid;place-items:center;width:20px;height:20px;margin-left:auto;color:#fff;background:#248ee1;border-radius:var(--radius-xs);font-size:13px;opacity:0;transform:scale(.75);transition:opacity var(--dur-1),transform var(--dur-1)}.preset-choice.is-selected b{opacity:1;transform:scale(1)}.advanced-fields{margin-top:4px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:#ffffff05}.advanced-fields>summary{display:flex;align-items:center;gap:13px;min-height:62px;padding:12px 15px;color:var(--text-soft);cursor:pointer;list-style:none}.advanced-fields>summary::-webkit-details-marker{display:none}.advanced-fields summary .preset-setup-icon{font-size:23px}.advanced-fields summary strong{display:block;font-size:var(--fs-md);font-weight:600}.advanced-fields summary small{display:block;margin-top:2px;color:var(--text-muted);font-size:var(--fs-xs)}.advanced-fields summary em{margin-left:auto;color:var(--text-muted);font-size:20px;font-style:normal;transition:transform var(--dur-1)}.advanced-fields[open] summary em{transform:rotate(180deg)}.advanced-inner{padding:4px 15px 18px;border-top:1px solid var(--border-hairline)}.advanced-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-top:16px}.advanced-grid .field-group{display:grid;gap:6px;align-content:start}.advanced-grid input,.advanced-grid select{height:36px}.advanced-grid .field-hint{margin:0;color:var(--text-muted);font-size:var(--fs-xs)}.advanced-grid code{color:var(--accent);font-family:var(--font-mono)}.advanced-platform{grid-column:1 / -1}.advanced-platform .checkbox-label{color:var(--text-soft)}.preset-form-body .field-error{margin:16px 0 0;color:var(--danger)}.preset-form-footer{display:flex;flex:0 0 auto;justify-content:flex-end;gap:10px;padding:16px 32px;background:#060d176b;border-top:1px solid var(--border-soft)}.preset-form-footer .btn-primary,.preset-form-footer .btn-ghost{min-width:116px;height:38px}@media (max-width: 800px){.preset-form-header,.preset-form-footer,.preset-form-body{padding-left:20px;padding-right:20px}.preset-setup-row{grid-template-columns:1fr;gap:13px}.preset-setup-copy{align-items:center}}@media (max-width: 520px){.preset-form-header{padding-top:18px}.preset-choice-grid,.preset-choice-grid--delivery,.advanced-grid{grid-template-columns:1fr;max-width:none}.preset-segmented{grid-template-columns:1fr}.preset-segmented button{border-right:0;border-bottom:1px solid var(--border-soft)}.preset-segmented button:last-child{border-bottom:0}.preset-form-footer{justify-content:stretch}.preset-form-footer button{flex:1}}.preset-choice .build-badge__icon{width:16px;height:16px;display:block}.preset-choice-icon{display:inline-flex;align-items:center}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#050a12b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:var(--space-6);z-index:100}.modal-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;display:flex;flex-direction:column;max-height:90vh;width:100%;max-width:560px}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 24px;border-bottom:1px solid var(--border-hairline)}.modal-header h3{margin:0;font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-shrink:0;padding:16px 24px;border-top:1px solid var(--border-hairline)}.field-group{display:flex;flex-direction:column;gap:6px}.field-group label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);font-weight:600}.field-group input,.field-group select,.field-group textarea{height:36px;padding:0 12px;border-radius:var(--radius-sm);background:var(--sunk);border:1px solid var(--border-soft);color:var(--text);font-family:inherit;font-size:var(--fs-sm);outline:none;transition:border-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out)}.field-group input:focus,.field-group select:focus,.field-group textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field-group textarea{height:auto;padding:10px 12px;resize:vertical;min-height:80px}.field-hint{font-size:12px;color:var(--text-muted)}.field-error{font-size:var(--fs-sm);color:var(--danger);padding:10px 12px;background:var(--danger-soft);border:1px solid rgba(248,113,113,.32);border-radius:var(--radius-md)}.run-modal-branch-row{display:flex;align-items:center;gap:10px}.run-modal-branch-row select{flex:1}.run-modal-commit-chip{display:inline-flex;align-items:center}.run-modal-tooltip-anchor{position:relative;display:inline-flex;align-items:center}.run-modal-card{max-width:820px;max-height:calc(100vh - 32px)}.run-modal-card .run-modal-header{align-items:center;gap:16px;padding:14px 20px}.run-modal-title{display:flex;align-items:center;gap:12px;min-width:0}.run-modal-title-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.run-modal-avatar{box-shadow:0 0 0 3px var(--accent-soft),0 3px 12px #00000059}.rm-kicker{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:var(--tracking-cap);color:var(--text-muted)}.run-modal-card .run-modal-header h3{margin:0;font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-modal-head-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.run-modal-card .run-modal-body{padding:18px 20px;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.rm-group{padding:14px 16px;border-radius:var(--radius-lg);border:1px solid var(--border-hairline);background:var(--surface-2)}.rm-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.rm-eyebrow{font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-cap);color:var(--text-muted)}.rm-eyebrow-note{font-size:12px;color:var(--text-muted);letter-spacing:0;text-transform:none}.rm-group--source .rm-eyebrow{color:#8bc8ff}.rm-group--build .rm-eyebrow{color:#c3b5ff}.rm-group--delivery .rm-eyebrow{color:#86e7b7}.rm-head-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-end}.rm-group-body{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;align-items:start}.rm-group-body>.rm-span{grid-column:1 / -1}.rm-numeric-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px 16px}.rm-numeric-row .field-group{min-width:0}.rm-numeric-row .field-group>label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rm-label-row{display:flex;align-items:center;gap:8px;min-width:0;min-height:22px}.rm-label-row>label{flex-shrink:0}.rm-label-commit{margin-left:auto;display:inline-flex;align-items:center}.rm-source-full{margin-top:2px;padding-top:10px;border-top:1px solid var(--border-hairline)}.rm-tag-pin{font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border:1px solid var(--border-accent);border-radius:var(--radius-pill);padding:1px 8px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-modal-card .run-modal-branch-row input{flex:1;min-width:0}.run-modal-card .field-group label,.run-modal-card .rm-label-stack span{font-size:12.5px}.run-modal-card .field-group input,.run-modal-card .field-group select{height:40px;font-size:15px}.rm-group-body--stack{display:flex;flex-direction:column;align-items:stretch;gap:0}.rm-source-agent{padding-bottom:10px}.rm-source-agent>select{width:100%}.rm-platform-branch-row{padding-top:10px}.rm-label-stack{display:flex;flex-direction:column;gap:2px}.rm-label-stack span{color:var(--text-muted);font-size:var(--fs-xs);font-weight:400;letter-spacing:0;text-transform:none}.platform-pin-picker .rm-label-row{align-items:flex-start}.run-modal-branch-row .ref-combobox{flex:1 1 auto;min-width:0}.rm-build-target-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,2fr);align-items:center;gap:14px;padding-top:10px;border-top:1px solid var(--border-hairline)}.rm-build-target-copy{display:flex;flex-direction:column;gap:3px}.rm-build-target-copy span{color:var(--text-soft);font-size:var(--fs-sm);font-weight:600}.rm-build-target-copy small{color:var(--text-muted);font-size:var(--fs-xs)}.rm-build-target-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rm-build-target-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--border-soft);border-radius:var(--radius-s, 10px);background:#ffffff05;overflow:hidden;transition:border-color var(--dur-1) var(--ease-out),background var(--dur-1) var(--ease-out)}.rm-build-target-card:hover{border-color:var(--border-strong)}.rm-build-target-card--ios.is-selected{color:#e5f4ff;border-color:#53b6ffc7;background:#3590dd2e}.rm-build-target-card--android.is-selected{color:#e3fff0;border-color:#43cb85b8;background:#258f5b2e}.rm-build-target-choice{display:flex;align-items:center;min-width:0;min-height:58px;flex:1;width:100%;padding:8px 10px;border:0;background:none;color:inherit;color:var(--text-dim);background:#00000024;cursor:pointer;text-align:left;transition:border-color var(--dur-1) var(--ease-out),background var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.rm-build-target-choice:hover{color:var(--text-soft)}.rm-build-target-choice .build-badge{width:auto;height:auto;padding:0;border:0;background:none;color:inherit}.rm-build-target-choice .build-badge__label{display:none}.rm-build-target-choice .build-badge__icon-wrap{width:32px;height:32px}.rm-build-target-choice .build-badge__icon{width:21px;height:21px}.rm-build-target-name{display:flex;flex-direction:column;min-width:0;margin-left:9px;color:inherit;font-size:15px;font-weight:700}.rm-build-target-name small{color:var(--text-muted);font-size:11px;font-weight:600;line-height:1.2}.rm-build-target-check{display:grid;place-items:center;width:24px;height:24px;margin-left:auto;flex:0 0 auto;color:#fff;background:var(--accent-deep);border-radius:var(--radius-xs);font-size:15px;opacity:0;transform:scale(.75);transition:opacity var(--dur-1) var(--ease-out),transform var(--dur-1) var(--ease-out)}.rm-build-target-card--ios .rm-build-target-check{background:#218ed0}.rm-build-target-card--android .rm-build-target-check{background:#238a59}.rm-build-target-card.is-selected .rm-build-target-check{opacity:1;transform:scale(1)}.rm-delivery-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:8px 0}.rm-delivery-row:first-child{padding-top:0}.rm-delivery-row:last-child{padding-bottom:0}.rm-delivery-row+.rm-delivery-row{border-top:1px solid var(--border-hairline)}.rm-delivery-label{font-size:15px;font-weight:600;color:var(--text-soft)}.rm-delivery-controls{display:flex;align-items:center;gap:10px 20px;flex-wrap:wrap;justify-content:flex-end}.rm-delivery-expand{flex:1 1 100%;margin-top:10px}.run-modal-card .modal-footer{padding:14px 20px}@media (max-width: 560px){.run-modal-card .rm-group-body{grid-template-columns:1fr}.run-modal-card .run-modal-header{flex-wrap:wrap}.rm-build-target-row{grid-template-columns:1fr}}.rm-office-line{display:flex;align-items:center;gap:8px;font-size:12.5px;opacity:.85}.rm-office-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.rm-office-dot--online{background:var(--success, #3fb950);box-shadow:0 0 6px #3fb95099}.rm-office-dot--offline{background:var(--warning, #d29922);box-shadow:0 0 6px #d2992280}.rm-build-target-delivery{display:flex;align-items:center;gap:7px;width:100%;padding:7px 12px;border:0;border-top:1px solid var(--border-soft);background:#00000029;color:var(--text-muted);font-size:11.5px;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:color var(--dur-1) var(--ease-out),background var(--dur-1) var(--ease-out)}.rm-build-target-delivery:hover:not(:disabled){color:var(--text-soft);background:#0000003d}.rm-build-target-delivery.is-on{color:inherit}.rm-build-target-delivery:disabled{opacity:.45;cursor:default}.rm-build-target-delivery .build-badge__icon{width:13px;height:13px;flex:0 0 auto}.rm-delivery-switch{margin-left:auto;flex:0 0 auto;width:28px;height:16px;border-radius:999px;background:#ffffff24;position:relative;transition:background var(--dur-1) var(--ease-out)}.rm-delivery-switch:after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;opacity:.75;transition:transform var(--dur-1) var(--ease-out),opacity var(--dur-1) var(--ease-out)}.rm-build-target-delivery.is-on .rm-delivery-switch{background:var(--success, #3fb950)}.rm-build-target-delivery.is-on .rm-delivery-switch:after{transform:translate(12px);opacity:1}.toggle-label{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.toggle-label-text{font-size:.85rem;color:var(--text-secondary, #aaa)}.toggle-switch{position:relative;width:40px;height:22px;border-radius:11px;border:none;background:#ffffff1f;cursor:pointer;padding:0;flex-shrink:0;transition:background .2s}.toggle-switch--on{background:var(--accent, #5ec9b8)}.toggle-switch-knob{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s;pointer-events:none}.toggle-switch--on .toggle-switch-knob{transform:translate(18px)}.run-modal-cache-toggle{margin-top:8px}.run-modal-cache-toggle .field-hint{margin-top:4px}.run-modal-label-row{display:flex;align-items:center;gap:8px}.btn-link-sm{background:none;border:none;padding:0;font-size:12px;color:var(--accent);cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;opacity:.85;display:inline-flex;align-items:center;gap:6px}.btn-link-sm:hover{opacity:1;color:var(--accent-bright)}.btn-link-sm:disabled{opacity:.7;cursor:progress;color:var(--accent);text-decoration:none}.tf-fetch-btn .tf-fetch-spinner{width:12px;height:12px;border-radius:50%;border:1.5px solid var(--accent);border-top-color:transparent;opacity:0;transition:opacity var(--dur-1) var(--ease-out);flex-shrink:0}.tf-fetch-btn--loading .tf-fetch-spinner{opacity:1;animation:spin .9s linear infinite}.tf-fetch-btn--loading .tf-fetch-label{background:linear-gradient(90deg,var(--accent) 0%,var(--accent-bright) 50%,var(--accent) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:tf-shimmer 1.6s linear infinite}@keyframes tf-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes input-loading-wave{0%{background-position:200% 0}to{background-position:-200% 0}}input.input-loading,.input-loading{background-color:var(--sunk)!important;background-image:linear-gradient(90deg,transparent 0%,rgba(91,200,245,0) 30%,rgba(91,200,245,.45) 50%,rgba(91,200,245,0) 70%,transparent 100%)!important;background-size:200% 100%!important;background-repeat:no-repeat!important;animation:input-loading-wave 1.6s linear infinite!important;border-color:var(--border-accent)!important;box-shadow:0 0 0 3px #5bc8f514!important}.run-modal-tooltip{position:relative;display:inline-flex;align-items:center}.run-modal-tooltip-button{width:18px;height:18px;border-radius:999px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:var(--text-dim);font-size:11px;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:color .12s,border-color .12s,background .12s}.run-modal-tooltip-button:hover,.run-modal-tooltip-button[aria-expanded=true]{color:var(--text);border-color:#5ec9b873;background:#5ec9b824}.run-modal-tooltip-content{position:absolute;top:calc(100% + 8px);left:0;width:min(300px,calc(100vw - 64px));max-width:300px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:#080d18f5;box-shadow:var(--shadow-md);color:var(--text);font-size:.8em;font-weight:400;line-height:1.5;z-index:4}.run-modal-tooltip--right .run-modal-tooltip-content{left:auto;right:0}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 16px;border-radius:var(--radius-md);border:1px solid var(--border-accent);color:var(--accent);background:var(--accent-soft);font-weight:600;font-size:var(--fs-sm);white-space:nowrap;cursor:pointer;transition:background var(--dur-1) var(--ease-out),transform .1s var(--ease-out)}.btn-secondary:hover:not(:disabled){background:#5bc8f538}.btn-secondary:active{transform:translateY(.5px)}.btn-secondary:disabled{opacity:.45;cursor:not-allowed}.btn-secondary:focus-visible{outline:2px solid var(--accent-ring);outline-offset:2px}.device-modal-overlay{z-index:110}.device-modal-card{max-width:460px}.device-modal-header-actions{display:flex;align-items:center;gap:8px}.device-modal-body{display:flex;flex-direction:column;gap:16px;padding:12px 0;overflow-y:auto;max-height:50vh}.device-section-header{display:flex;align-items:center;gap:8px;font-size:.85em;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.device-list{display:flex;flex-direction:column;gap:6px}.device-card{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius-sm);border:1.5px solid var(--panel-border);background:var(--panel);cursor:pointer;transition:border-color .15s,background .15s;text-align:left;width:100%}.device-card:hover{border-color:var(--accent-dim);background:var(--bg)}.device-card.selected{border-color:var(--accent);background:var(--accent-dim)}.device-card-radio{width:16px;height:16px;border-radius:50%;border:2px solid var(--panel-border);flex-shrink:0;transition:border-color .15s,background .15s,box-shadow .15s}.device-card.selected .device-card-radio{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 3px var(--panel)}.device-card-image{width:36px;height:36px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 1px 3px rgba(0,0,0,.3))}.device-card-info{display:flex;flex-direction:column;gap:2px;min-width:0}.device-card-name{font-weight:500;font-size:.95em}.device-card-meta{font-size:.8em;color:var(--text-dim)}.device-empty{text-align:center;padding:20px;color:var(--text-dim);font-size:.9em}.device-refresh-btn{font-size:.8em;padding:4px 10px}.expander-caret{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--accent-soft);border:1px solid var(--border-accent);color:var(--accent);flex-shrink:0;transition:transform var(--dur-2) var(--ease-out),background var(--dur-1) var(--ease-out)}.expander-caret svg{display:block}details>summary:hover .expander-caret{background:#5bc8f538}details[open]>summary .expander-caret{transform:rotate(90deg)}.jd2{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;overflow:hidden;background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg)}.jd2-top{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border-hairline);flex-shrink:0;background:var(--surface);position:sticky;top:0;z-index:4}.jd2-back{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;height:28px;border-radius:var(--radius-sm);border:1px solid var(--border-hairline);background:#ffffff06;color:var(--text-dim);font-size:12px;cursor:pointer}.jd2-back:hover{background:#ffffff0f;color:var(--text)}.jd2-title{flex:1;min-width:0;display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jd2-scroll{flex:1;min-height:0;overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:12px}.jd2-scroll>.jd2-details,.jd2-scroll>.jd2-hero,.jd2-scroll>.jd2-phases,.jd2-scroll>.jd2-artifacts,.jd2-scroll>.banner{flex-shrink:0}.jd2-details{background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);overflow:hidden}.jd2-details>summary{list-style:none;cursor:pointer;padding:12px 16px;display:grid;grid-template-columns:28px auto 1fr auto auto;align-items:center;gap:10px;-webkit-user-select:none;user-select:none;transition:background var(--dur-1) var(--ease-out)}.jd2-details>summary::-webkit-details-marker{display:none}.jd2-details>summary:hover{background:#ffffff06}.jd2-details[open] .expander-caret{transform:rotate(90deg)}.jd2-details-label{font-size:12px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.jd2-details-summary-line{display:flex;align-items:center;gap:6px;color:var(--text-soft);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.jd2-details-summary-line .mono{font-size:11.5px;color:var(--text)}.jd2-dim{color:var(--text-muted);opacity:.6}.jd2-details-commit-msg{color:var(--text-soft);font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:360px}.jd2-details-status{display:inline-flex;align-items:center;gap:5px;height:20px;padding:0 8px 0 6px;border-radius:var(--radius-pill);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border:1px solid transparent;line-height:1}.jd2-details-status .dot{width:7px;height:7px;border-radius:50%;background:currentColor}.jd2-details-status--running{background:var(--accent-soft);color:var(--accent);border-color:var(--border-accent)}.jd2-details-status--running .dot{animation:pulse 1.4s var(--ease-out) infinite}.jd2-details-status--completed{background:var(--success-soft);color:var(--success);border-color:#4ade8052}.jd2-details-status--failed{background:var(--danger-soft);color:var(--danger);border-color:#f871716b}.jd2-details-status--queued{background:#ffffff0d;color:var(--text-dim);border-color:var(--border-soft)}.jd2-details-status--cancelled{background:#ffffff0a;color:var(--text-muted);border-color:var(--border-hairline)}.jd2-details-grid{display:grid;grid-template-columns:140px 1fr;border-top:1px solid var(--border-hairline)}.jd2-details-row{display:contents}.jd2-details-row>.jd2-d-label,.jd2-details-row>.jd2-d-value{padding:10px 16px;border-top:1px solid var(--border-hairline)}.jd2-details-grid>.jd2-details-row:first-child>.jd2-d-label,.jd2-details-grid>.jd2-details-row:first-child>.jd2-d-value{border-top:none}.jd2-d-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.jd2-d-value{font-size:13px;color:var(--text)}.jd2-d-value .mono{font-size:12.5px}.jd2-d-copy{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-hairline);background:#ffffff06;color:var(--text-dim);height:22px;padding:0 8px;margin-left:6px;border-radius:var(--radius-xs);font-size:10.5px;cursor:pointer}.jd2-d-copy:hover{color:var(--accent);background:var(--accent-soft)}.jd2-hero{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:14px;padding:14px 18px;background:linear-gradient(135deg,#5bc8f51a,#5bc8f505);border:1px solid var(--border-accent);border-radius:var(--radius-lg)}.jd2-hero--failed{background:linear-gradient(135deg,#f871711a,#f8717105);border-color:#f8717159}.jd2-hero--completed{background:linear-gradient(135deg,#4ade8014,#4ade8005);border-color:#4ade8052}.jd2-hero--cancelled{background:#ffffff05;border-color:var(--border-hairline)}.jd2-hero--queued{background:#ffffff05;border-color:var(--border-soft)}.jd2-hero-status{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px 0 8px;border-radius:var(--radius-pill);font-size:12px;font-weight:700;border:1px solid transparent}.jd2-hero-status .dot{width:8px;height:8px;border-radius:50%;background:currentColor}.jd2-hero-status--running{background:var(--accent-soft);color:var(--accent);border-color:var(--border-accent)}.jd2-hero-status--running .dot{animation:pulse 1.4s var(--ease-out) infinite}.jd2-hero-status--completed{background:var(--success-soft);color:var(--success);border-color:#4ade8052}.jd2-hero-status--failed{background:var(--danger-soft);color:var(--danger);border-color:#f871716b}.jd2-hero-status--queued{background:#ffffff0d;color:var(--text-dim);border-color:var(--border-soft)}.jd2-hero-status--cancelled{background:#ffffff0a;color:var(--text-muted);border-color:var(--border-hairline)}.jd2-hero-timer{font-size:22px;font-weight:700;color:var(--text);line-height:1;font-variant-numeric:tabular-nums}.jd2-hero--running .jd2-hero-timer{color:var(--accent)}.jd2-hero-progress{display:flex;align-items:center;gap:10px;min-width:0}.jd2-hero-progress .bar{flex:1;min-width:100px;height:8px;background:#ffffff0f;border-radius:var(--radius-pill);overflow:hidden}.jd2-hero-progress .bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-deep),var(--accent-bright));border-radius:var(--radius-pill);position:relative;overflow:hidden;transition:width .3s var(--ease-out)}.jd2-hero--running .jd2-hero-progress .bar-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:shimmer 1.8s linear infinite}.jd2-hero-progress .pct{font-size:13px;color:var(--text);min-width:36px;text-align:right;font-weight:600}.jd2-hero-eta{font-size:12px;color:var(--text-dim);text-align:right;line-height:1.3;font-family:var(--font-mono)}.jd2-hero-eta-label{display:block;font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.jd2-hero-step{grid-column:1 / -1;display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text-dim);padding-top:6px;border-top:1px solid rgba(255,255,255,.06);flex-wrap:wrap}.jd2-hero-step strong{color:var(--text);font-weight:600}.jd2-hero-step .quiet{color:var(--text-muted)}.jd2-phases{display:flex;align-items:center;gap:4px;padding:12px 14px;background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);overflow-x:auto}.jd2-phase{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:var(--radius-pill);background:#ffffff08;border:1px solid transparent;color:var(--text-muted);font-size:12px;font-weight:500;white-space:nowrap;flex-shrink:0}.jd2-phase .pg{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#ffffff0d;color:var(--text-muted);font-size:10px;font-weight:700}.jd2-phase--completed{color:var(--success);background:var(--success-soft)}.jd2-phase--completed .pg{background:#4ade8040;color:var(--success)}.jd2-phase--running{color:var(--accent);background:var(--accent-soft);border-color:var(--border-accent);font-weight:600;box-shadow:0 0 0 3px #5bc8f51a}.jd2-phase--running .pg{background:#5bc8f552;color:var(--accent);animation:pulse 1.4s var(--ease-out) infinite}.jd2-phase--failed{color:var(--danger);background:var(--danger-soft);border-color:#f8717159}.jd2-phase--failed .pg{background:#f8717140;color:var(--danger)}.jd2-phase .dur{font-size:10.5px;color:var(--text-muted);margin-left:2px}.jd2-phase-arrow{color:var(--text-muted);font-size:10px;opacity:.5;flex-shrink:0}.jd2-logs{display:flex;flex-direction:column;flex:1;min-height:280px;background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);overflow:hidden}.jd2-logs-tabs{display:flex;align-items:center;gap:4px;padding:8px 10px;background:#0000002e;border-bottom:1px solid var(--border-hairline);flex-shrink:0}.jd2-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text-dim);height:28px;padding:0 12px;font-size:12px;font-weight:600;border-radius:var(--radius-sm);cursor:pointer}.jd2-tab:hover{color:var(--text);background:#ffffff0a}.jd2-tab.is-active{color:var(--accent);background:var(--accent-soft)}.jd2-tab .count{margin-left:6px;font-size:10.5px;font-weight:600;padding:1px 6px;background:#ffffff0f;color:var(--text-dim);border-radius:var(--radius-pill);font-family:var(--font-mono)}.jd2-tab.is-active .count{background:#5bc8f538;color:var(--accent)}.jd2-logs-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.jd2-logs-body>*{flex:1;min-height:0;height:auto}.jd2-artifacts{background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);overflow:hidden}.jd2-artifacts>summary{list-style:none;cursor:pointer;padding:12px 16px;display:grid;grid-template-columns:28px 28px auto 1fr auto;align-items:center;gap:10px;-webkit-user-select:none;user-select:none}.jd2-artifacts>summary::-webkit-details-marker{display:none}.jd2-artifacts>summary:hover{background:#ffffff06}.jd2-artifacts[open] .expander-caret{transform:rotate(90deg)}.jd2-artifacts-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent)}.jd2-artifacts-label{font-size:13px;font-weight:600;color:var(--text)}.jd2-artifacts-summary{font-size:12px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jd2-artifacts-spacer{flex:1}.jd2-artifacts-folder-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-hairline);background:#ffffff06;color:var(--text);height:28px;padding:0 12px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.jd2-artifacts-folder-btn:hover{background:var(--accent-soft);border-color:var(--border-accent);color:var(--accent)}.jd2-artifacts-list{border-top:1px solid var(--border-hairline)}.banner{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--border-soft);background:#ffffff06;font-size:var(--fs-sm)}.banner-glyph{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;flex-shrink:0;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:700}.banner-body{display:flex;flex-direction:column;gap:4px;flex:1}.banner-title{font-weight:600;color:var(--text)}.banner-text{color:var(--text-dim)}.banner-subtext{color:var(--text-dim);opacity:.7;font-size:.82em;white-space:pre-wrap;word-break:break-word}.banner-ai{color:var(--text-dim);font-size:.85em;line-height:1.4;margin-top:2px}.banner-ai-label{display:inline-flex;align-items:center;gap:4px;font-weight:600;color:var(--text)}.banner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:6px}.banner-link{color:var(--danger);font-size:.85em;font-weight:600;text-decoration:none}.banner-link:hover{text-decoration:underline}.banner-link--button{background:none;border:none;padding:0;cursor:pointer;font:inherit;font-size:.85em;font-weight:600;color:var(--danger)}.banner-link--button:disabled{opacity:.6;cursor:default;text-decoration:none}.banner.is-error{background:var(--danger-soft);border-color:#f8717159}.banner.is-error .banner-glyph{background:#f8717138;color:var(--danger)}.banner.is-warning{background:var(--warning-soft);border-color:#fbbf2457}.banner.is-warning .banner-glyph{background:#fbbf2438;color:var(--warning)}.job-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--space-4);padding:var(--space-8);text-align:center}.job-detail-empty-glyph{width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(91,200,245,.22),transparent 70%);display:flex;align-items:center;justify-content:center}.job-detail-empty-glyph svg{width:26px;height:26px;color:var(--accent);opacity:.85}.job-detail-empty-title{margin:0;font-size:var(--fs-xl);font-weight:600}.jd-artifacts-card{background:transparent;border:none;border-radius:0;overflow:hidden;flex-shrink:0}.jd-artifacts-head{display:none}.jd-artifacts-empty{display:flex;align-items:center;gap:10px;padding:18px;color:var(--text-dim);font-size:var(--fs-sm)}.jd-artifact-list{display:flex;flex-direction:column}.jd-artifact{display:grid;grid-template-columns:44px 1fr auto;gap:14px;align-items:center;padding:14px 18px;border-top:1px solid var(--border-hairline)}.jd-artifact:first-of-type{border-top:none}.jd-artifact--pending{opacity:.65}.jd-artifact-icon{width:44px;height:44px;border-radius:var(--radius-md);background:var(--surface-2);border:1px solid var(--border-soft);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--accent);letter-spacing:.04em}.jd-artifact--pending .jd-artifact-icon{background:var(--sunk);color:var(--text-muted)}.jd-artifact-info{display:flex;flex-direction:column;gap:4px;min-width:0}.jd-artifact-name{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jd-artifact-meta{display:flex;gap:10px;align-items:center;color:var(--text-dim);font-size:var(--fs-xs)}.jd-artifact-size{color:var(--text-soft)}.jd-artifact-actions{display:flex;gap:6px;align-items:center}.jd-artifact-keep{color:var(--warning)!important}.jd-artifacts-row,.jd-artifact-chip{display:contents}.jd-layout-toggle{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--panel-border);border-radius:var(--radius-sm);background:#ffffff08}.jd-layout-toggle-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text-dim);padding:4px 12px;font-size:.82em;font-weight:600;border-radius:5px;cursor:pointer;transition:background .12s ease,color .12s ease}.jd-layout-toggle-btn:hover{color:var(--text)}.jd-layout-toggle-btn--active{background:var(--accent-dim);color:var(--accent)}.rt-abs{font-variant-numeric:tabular-nums;color:var(--text-dim)}.rt-sep{color:var(--muted)}.rt-rel{font-variant-numeric:tabular-nums;color:var(--muted)}.jd-vitals{display:flex;gap:8px;flex-shrink:0}.jd-vitals--inline{flex-direction:row;flex-wrap:wrap;padding:10px 14px;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-md)}.jd-vitals--stacked{flex-direction:column;gap:10px}.jd-vital{display:flex;flex-direction:column;gap:2px;min-width:100px;padding:2px 12px 2px 0;border-right:1px solid rgba(255,255,255,.05)}.jd-vitals--inline .jd-vital:last-child{border-right:none}.jd-vitals--stacked .jd-vital{border-right:none;padding:0}.jd-vital-label{font-size:.68em;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.jd-vital-value{font-size:.95em;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}.jd-vital--primary .jd-vital-value{color:var(--accent)}.jd-vital--warn .jd-vital-value{color:var(--warn)}.jd-heartbeat{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:var(--radius-sm);background:#f0c05014;border:1px solid rgba(240,192,80,.18);color:var(--warn);font-size:.82em;align-self:flex-start}.jd-heartbeat-dot{width:7px;height:7px;border-radius:50%;background:var(--warn);box-shadow:0 0 8px #f0c05080;animation:jd-pulse 1.4s infinite ease-in-out;flex-shrink:0}.jd-heartbeat-text{color:var(--warn)}.jd-heartbeat-cmd{font-family:SF Mono,Fira Code,Cascadia Code,monospace;color:var(--text);font-weight:600}.jd-heartbeat-elapsed{font-variant-numeric:tabular-nums;color:var(--text)}@keyframes jd-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.jd-phase{display:flex;flex-direction:column;padding:10px 14px;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-sm);transition:border-color .16s ease,background .16s ease}.jd-phase--completed{background:#ffffff05}.jd-phase--running{border-color:var(--accent);background:linear-gradient(180deg,#5ec9b80f,#5ec9b805);box-shadow:0 0 0 1px #5ec9b826,0 4px 16px #5ec9b814}.jd-phase--failed{border-color:var(--danger);background:#f070700d}.jd-phase--pending{opacity:.55}.jd-phase-head{display:flex;align-items:center;gap:10px}.jd-phase-glyph{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:.9em;flex-shrink:0}.jd-phase-glyph--completed{background:var(--good-dim);color:var(--good)}.jd-phase-glyph--running{background:var(--accent-dim);color:var(--accent);animation:jd-pulse 1.4s infinite ease-in-out}.jd-phase-glyph--failed{background:var(--danger-dim);color:var(--danger)}.jd-phase-glyph--pending{background:#ffffff0a;color:var(--muted)}.jd-phase-label{font-weight:600;font-size:.98em;color:var(--text)}.jd-phase-index{font-size:.72em;color:var(--muted);font-variant-numeric:tabular-nums}.jd-phase-spacer{flex:1}.jd-phase-time{font-size:.82em;color:var(--text-dim);font-variant-numeric:tabular-nums}.jd-phase-time-abs{color:var(--muted)}.jd-phase-time--fail{color:var(--danger);font-weight:600}.jd-phase-body{display:flex;flex-direction:column;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.05)}.jd-timeline{display:flex;flex-direction:column;gap:16px;flex:1;min-height:0;overflow:hidden}.jd-timeline-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding-right:4px;flex:1;min-height:0}.jd-timeline-done{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--radius-sm);background:var(--good-dim);border:1px solid rgba(100,214,138,.3);color:var(--good);font-weight:600}.jd-timeline-done-glyph{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#64d68a40}.jd-timeline-done strong{font-variant-numeric:tabular-nums}.jd-current-substep{display:flex;align-items:center;gap:12px}.jd-current-substep-label{font-weight:600;font-size:.95em;color:var(--text);flex-shrink:0}.jd-current-progress{display:flex;align-items:center;gap:8px;flex:1}.jd-current-progress-track{flex:1;height:6px;background:var(--panel-border);border-radius:4px;overflow:hidden}.jd-current-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),#3ab5a2);border-radius:4px;transition:width .4s ease}.jd-current-progress-value{font-size:.8em;color:var(--text-dim);font-variant-numeric:tabular-nums;width:40px;text-align:right}.jd-current-lastlog{display:flex;align-items:center;gap:10px;padding:8px 10px;background:#0003;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.04);font-size:.82em;min-width:0}.jd-current-lastlog-label{font-size:.7em;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);flex-shrink:0}.jd-current-lastlog-msg{flex:1;min-width:0;font-size:.95em;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jd-current-lastlog-time{flex-shrink:0;font-size:.9em}.jd-upload-strip{display:flex;align-items:center;gap:10px;font-size:.82em}.jd-upload-label{font-size:.72em;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);flex-shrink:0}.jd-upload-track{flex:1;height:5px;background:#ffffff0f;border-radius:3px;overflow:hidden}.jd-upload-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .4s ease}.jd-upload-metrics{color:var(--text-dim);font-variant-numeric:tabular-nums;flex-shrink:0}.jd-log-drawer{display:flex;flex-direction:column;border:1px solid var(--panel-border);border-radius:var(--radius-md);background:var(--panel);overflow:hidden;flex-shrink:0;max-height:40%;transition:max-height .2s ease}.jd-log-drawer--open{flex-shrink:1;max-height:none;flex:1;min-height:240px}.jd-log-drawer-toggle{display:flex;align-items:center;gap:10px;padding:10px 14px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text);font-size:.88em;font-weight:600;cursor:pointer;text-align:left;border-bottom:1px solid transparent;transition:background .12s ease,border-color .12s ease}.jd-log-drawer--open .jd-log-drawer-toggle{border-bottom-color:var(--panel-border)}.jd-log-drawer-toggle:hover{background:#ffffff08}.jd-log-drawer-caret{color:var(--text-dim);width:12px}.jd-log-drawer-count{color:var(--muted);font-weight:400;font-variant-numeric:tabular-nums}.jd-log-drawer-body{flex:1;display:flex;min-height:0;padding:0 12px 12px}.jd-log-drawer-body>*{flex:1;min-height:0}.jd-activity{display:flex;flex-direction:column;gap:14px;flex:1;min-height:0;overflow:hidden}.jd-activity-ribbon{display:flex;gap:4px;align-items:stretch;padding:8px;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-md);overflow-x:auto;flex-shrink:0}.jd-ribbon-step{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:var(--radius-sm);font-size:.82em;font-weight:500;color:var(--text-dim);white-space:nowrap;background:#ffffff05;border:1px solid transparent}.jd-ribbon-step--completed{color:var(--good);background:var(--good-dim)}.jd-ribbon-step--running{color:var(--accent);background:var(--accent-dim);border-color:var(--accent);font-weight:600}.jd-ribbon-step--failed{color:var(--danger);background:var(--danger-dim);border-color:var(--danger);font-weight:600}.jd-ribbon-step--pending{opacity:.5}.jd-ribbon-glyph{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#ffffff0a;font-size:.85em;font-weight:700;flex-shrink:0}.jd-ribbon-step--completed .jd-ribbon-glyph{background:#64d68a38}.jd-ribbon-step--running .jd-ribbon-glyph{background:#5ec9b840;animation:jd-pulse 1.4s infinite ease-in-out}.jd-ribbon-step--failed .jd-ribbon-glyph{background:#f0707038}.jd-activity-body{display:flex;gap:14px;flex:1;min-height:0;overflow:hidden}.jd-activity-main{display:flex;flex-direction:column;flex:1;min-width:0;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-md);overflow:hidden}.jd-activity-sidebar{width:220px;flex-shrink:0;padding:14px;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:14px;overflow-y:auto}.jd-activity-sidebar .section-label{margin:0;font-size:.72em;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.jd-activity-tabs{display:flex;gap:2px;padding:8px 10px 0;border-bottom:1px solid var(--panel-border);flex-shrink:0}.jd-activity-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-dim);padding:8px 14px 10px;font-size:.88em;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;display:inline-flex;align-items:center;gap:8px;transition:color .12s ease,border-color .12s ease}.jd-activity-tab:hover{color:var(--text)}.jd-activity-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.jd-activity-tab-count{font-size:.78em;font-weight:600;padding:1px 7px;border-radius:999px;background:#ffffff0f;color:var(--text-dim);font-variant-numeric:tabular-nums}.jd-activity-tab--active .jd-activity-tab-count:not(.muted){background:var(--accent-dim);color:var(--accent)}.jd-activity-pane{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.jd-feed{display:flex;flex-direction:column;gap:4px;padding:10px 12px;overflow-y:auto;flex:1}.jd-feed-empty{padding:24px;text-align:center}.jd-feed-item{display:grid;grid-template-columns:150px 18px 1fr;align-items:baseline;gap:10px;padding:6px 8px;border-radius:4px;font-size:.88em;line-height:1.45;border-left:2px solid transparent}.jd-feed-item:hover{background:#ffffff05}.jd-feed-time{font-size:.82em;color:var(--text-dim);flex-shrink:0}.jd-feed-glyph{text-align:center;color:var(--text-dim);font-weight:700;font-size:.9em}.jd-feed-msg{color:var(--text);overflow-wrap:anywhere;word-break:break-word}.jd-feed-msg.mono{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.92em}.jd-feed-duration{color:var(--muted);font-variant-numeric:tabular-nums}.jd-feed-item--phase-start{border-left-color:var(--accent);background:#5ec9b80d}.jd-feed-item--phase-start .jd-feed-glyph{color:var(--accent)}.jd-feed-item--phase-end{border-left-color:var(--good);background:#64d68a0a}.jd-feed-item--phase-end .jd-feed-glyph{color:var(--good)}.jd-feed-item--phase-end.jd-feed-item--failed{border-left-color:var(--danger);background:#f070700f}.jd-feed-item--phase-end.jd-feed-item--failed .jd-feed-glyph{color:var(--danger)}.jd-feed-item--log.jd-feed-item--signal .jd-feed-glyph{color:var(--accent)}.jd-feed-item--log.jd-feed-item--error{background:#f070700f;border-left-color:var(--danger)}.jd-feed-item--log.jd-feed-item--error .jd-feed-glyph{color:var(--danger)}.jd-feed-item--log.jd-feed-item--warn{background:#f0c0500f;border-left-color:var(--warn)}.jd-feed-item--log.jd-feed-item--warn .jd-feed-glyph{color:var(--warn)}.jd-feed-item--group{grid-template-columns:150px 1fr;opacity:.92}.jd-feed-group-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:#ffffff08;color:var(--text-dim);padding:4px 10px;border-radius:999px;font-size:.82em;cursor:pointer;display:inline-flex;align-items:center;gap:6px;justify-self:start;transition:background .12s ease}.jd-feed-group-btn:hover{background:#ffffff0f;color:var(--text)}.jd-feed-group-caret{font-size:.85em;color:var(--muted)}.jd-feed-group-body{grid-column:2;margin-top:4px;padding:6px 10px;border-left:2px solid var(--panel-border);color:var(--text-dim);font-size:.84em;max-height:160px;overflow-y:auto}.jd-feed-group-line{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.45}.jd-feed-group-more{margin-top:4px;font-size:.88em}@media (max-width: 900px){.jd-activity-body{flex-direction:column}.jd-activity-sidebar{width:100%}}.lc-container{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:200px;position:relative}.lc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;background:#07101acc;border:1px solid var(--panel-border);border-bottom:none;flex-shrink:0;flex-wrap:wrap}.lc-container>.lc-toolbar:first-child{border-radius:var(--radius-sm) var(--radius-sm) 0 0}.lc-toolbar-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.lc-toolbar-right{display:flex;align-items:center;gap:4px}.lc-mode-toggle{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;font-size:.72em;font-weight:700;text-transform:uppercase;letter-spacing:.03em;border-radius:999px;border:1px solid var(--accent);background:#5ec9b81a;color:var(--accent);cursor:pointer;transition:all .12s}.lc-mode-toggle.full{border-color:#8890a0;background:#8890a01a;color:#8890a0}.lc-mode-toggle:hover{opacity:.85}.lc-mode-count{font-weight:800}.lc-noise-badge{font-size:.68em;color:#b0cce059;font-style:italic}.lc-timeline{display:flex;align-items:center;gap:0;padding:10px 14px;background:#07101a99;border:1px solid var(--panel-border);border-bottom:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0;flex-shrink:0;overflow-x:auto}.lc-timeline-phase{display:flex;align-items:center;gap:6px;flex-shrink:0}.lc-timeline-connector{width:20px;height:2px;background:#ffffff1a;margin-right:6px;border-radius:1px;flex-shrink:0}.lc-timeline-connector.done{background:var(--accent)}.lc-timeline-connector.failed{background:var(--danger)}.lc-timeline-dot{width:8px;height:8px;border-radius:50%;background:#ffffff1a;border:2px solid rgba(255,255,255,.15);flex-shrink:0;box-sizing:border-box}.lc-timeline-dot.done{background:var(--accent);border-color:var(--accent)}.lc-timeline-dot.current{background:var(--accent);border-color:var(--accent);box-shadow:0 0 8px #5ec9b880;animation:pulse 1.8s infinite}.lc-timeline-dot.failed{background:var(--danger);border-color:var(--danger);box-shadow:0 0 8px #f0707080}.lc-timeline-label{font-size:.7em;font-weight:500;color:#b0cce04d;white-space:nowrap}.lc-timeline-label.done{color:var(--accent);font-weight:600}.lc-timeline-label.current{color:var(--accent);font-weight:700}.lc-timeline-label.failed{color:var(--danger);font-weight:700}.lc-problem-banner{display:flex;align-items:center;gap:8px;padding:5px 12px;background:#f070700f;border:1px solid var(--panel-border);border-top:none;border-bottom:none;flex-shrink:0}.lc-problem-btn{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:.72em;font-weight:700;border-radius:999px;border:none;cursor:pointer;background:transparent}.lc-problem-error{color:var(--danger);background:#f070701f}.lc-problem-error:hover{background:#f0707033}.lc-problem-warn{color:var(--warn);background:#f0c0501a;cursor:default}.lc-tool-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);border:none;cursor:pointer;transition:all .12s}.lc-tool-btn:hover{background:#ffffff14;color:var(--text)}.lc-tool-btn.active{color:var(--accent);background:#5ec9b81f}.lc-search-bar{display:flex;align-items:center;gap:6px;padding:5px 10px;background:#07101ae6;border:1px solid var(--panel-border);border-top:none;border-bottom:none;flex-shrink:0}.lc-search-input{flex:1;min-width:120px;padding:4px 8px;border-radius:4px;border:1px solid var(--panel-border);background:#0000004d;color:var(--text);font-size:.8em;font-family:SF Mono,Fira Code,monospace;outline:none}.lc-search-input:focus{border-color:var(--accent)}.lc-search-toggle{padding:2px 6px;font-size:.72em;font-weight:700;font-family:SF Mono,Fira Code,monospace;color:var(--text-dim);background:transparent;border:1px solid transparent;border-radius:4px;cursor:pointer}.lc-search-toggle.active{color:var(--accent);border-color:var(--accent);background:#5ec9b81a}.lc-search-count{font-size:.72em;color:var(--text-dim);white-space:nowrap;min-width:60px}.lc-search-nav{background:transparent;border:none;color:var(--text-dim);cursor:pointer;font-size:.75em;padding:2px 4px;border-radius:3px}.lc-search-nav:hover:not(:disabled){color:var(--text);background:#ffffff14}.lc-search-nav:disabled{opacity:.3;cursor:default}.lc-search-close{background:transparent;border:none;color:var(--text-dim);cursor:pointer;font-size:.8em;padding:2px 6px;border-radius:3px}.lc-search-close:hover{color:var(--text);background:#ffffff14}.lc-viewport{flex:1;overflow-y:auto;overflow-x:hidden;background:#07101a;border:1px solid var(--panel-border);border-radius:0 0 var(--radius-sm) var(--radius-sm);font-family:SF Mono,Fira Code,monospace;font-size:.78em;line-height:1;color:#b0cce0}.lc-scroll-content{width:100%;padding:6px 0}.lc-line{display:flex;align-items:flex-start;width:100%;padding:0 10px 0 0;cursor:default;transition:background 80ms;box-sizing:border-box;min-height:22px}.lc-line:hover{background:#ffffff06}.lc-selected{background:#5ec9b814!important}.lc-search-active{background:#f0c0501f!important}.lc-gutter{flex-shrink:0;width:44px;padding:3px 8px 0 6px;text-align:right;color:#b0cce033;font-size:.85em;-webkit-user-select:none;user-select:none;border-right:1px solid rgba(255,255,255,.04)}.lc-time{flex-shrink:0;width:62px;padding:3px 8px 0;color:#b0cce059;font-size:.9em;-webkit-user-select:none;user-select:none}.lc-msg{flex:1;padding:3px 0;white-space:pre-wrap;word-break:break-all;min-width:0}.lc-nowrap{white-space:pre;overflow-x:auto;word-break:normal}.lc-level-signal .lc-msg{color:#b0cce0}.lc-level-signal .lc-msg:has(~.lc-msg){color:#b0cce0}.lc-line[class*=signal] .lc-msg{color:#b0cce0}.lc-level-error .lc-msg{color:var(--danger);font-weight:500}.lc-level-error .lc-gutter{color:#f0707080}.lc-level-warn .lc-msg{color:var(--warn)}.lc-level-noise .lc-msg{color:#b0cce066}.lc-line.lc-step-line .lc-msg{color:var(--accent);font-weight:600}.lc-collapsed{display:flex;align-items:center;width:100%;padding:4px 14px;font-size:.82em;color:#b0cce059;font-style:italic;cursor:pointer;transition:color .12s;gap:6px;min-height:22px}.lc-collapsed:hover{color:#b0cce099}.lc-collapsed-icon{font-size:.7em;transition:transform .12s}.lc-match{background:#f0c05059;color:#fff;border-radius:2px;padding:0 1px}.lc-scroll-fab{position:absolute;bottom:12px;right:20px;padding:6px 14px;border-radius:999px;background:var(--accent);color:#07101a;font-size:.75em;font-weight:700;border:none;cursor:pointer;box-shadow:0 2px 12px #5ec9b84d;z-index:10;transition:opacity .12s}.lc-scroll-fab:hover{opacity:.9}.lc-ctx-menu{position:fixed;z-index:100;min-width:180px;background:#080d18f5;border:1px solid var(--panel-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);padding:4px 0;overflow:hidden}.lc-ctx-menu button{display:block;width:100%;padding:7px 14px;font-size:.8em;color:var(--text);background:transparent;border:none;text-align:left;cursor:pointer;transition:background 80ms}.lc-ctx-menu button:hover{background:#5ec9b81a}.settings-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#050a12b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:var(--space-6);z-index:100}.settings-panel{width:880px;max-width:95vw;height:620px;max-height:88vh;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;display:grid;grid-template-columns:200px 1fr;grid-template-rows:56px 1fr;grid-template-areas:"head head" "nav  body"}.settings-header{grid-area:head;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid var(--border-hairline)}.settings-header h2{margin:0;font-size:var(--fs-lg);font-weight:600}.settings-nav{grid-area:nav;display:flex;flex-direction:column;gap:2px;padding:14px 10px;background:#00000029;border-right:1px solid var(--border-hairline);overflow-y:auto}.settings-nav-section{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:700;padding:10px 12px 4px}.settings-nav-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;text-align:left;padding:8px 12px;border-radius:var(--radius-sm);color:var(--text-dim);font-size:var(--fs-sm);font-weight:500;cursor:pointer;transition:background var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out);display:flex;align-items:center;gap:10px}.settings-nav-item:hover{background:#ffffff0a;color:var(--text)}.settings-nav-item.is-active{background:var(--accent-soft);color:var(--accent)}.settings-nav-item>span[aria-hidden]{display:inline-flex;width:16px;font-size:14px;opacity:.8}.settings-body{grid-area:body;padding:22px 28px;overflow-y:auto;display:flex;flex-direction:column}.settings-section{display:flex;flex-direction:column;gap:var(--space-4)}.path-input-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:stretch}.path-input-row input,.path-input-row .btn-outline{height:36px}.entity-list{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-4)}.entity-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--sunk);border:1px solid var(--border-hairline);border-radius:var(--radius-md)}.entity-row.selected{border-color:var(--border-accent);background:var(--accent-soft)}.entity-row-info{display:flex;flex-direction:column;gap:2px}.entity-login{font-weight:600;color:var(--text)}.entity-meta{font-size:var(--fs-xs);color:var(--text-dim)}.entity-row-actions{display:flex;gap:6px}.storage-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.storage-summary-card{display:flex;flex-direction:column;gap:6px;padding:14px 16px;background:var(--sunk);border:1px solid var(--border-hairline);border-radius:var(--radius-md)}.storage-summary-card strong{font-size:var(--fs-2xl);font-weight:600;color:var(--accent);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.storage-danger-box{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:14px 18px;background:var(--danger-soft);border:1px solid rgba(248,113,113,.28);border-radius:var(--radius-md)}.storage-danger-copy p{margin:4px 0;font-size:var(--fs-sm)}.storage-danger-copy code{font-family:var(--font-mono);font-size:12px;padding:1px 5px;background:#0000004d;border-radius:var(--radius-xs)}.row-gap{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.checkbox-label{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.settings-divider{border:none;border-top:1px solid var(--border-soft);margin:var(--space-5) 0 var(--space-3)}.settings-subheading{margin:0;font-size:var(--fs-md)}.active-build-banner{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:var(--space-3);width:100%;padding:10px var(--space-6) 10px calc(var(--space-6) + 3px);background:linear-gradient(90deg,rgba(91,200,245,.1) 0%,rgba(91,200,245,.04) 30%,transparent 80%);border:none;border-bottom:1px solid var(--border-hairline);position:relative;cursor:pointer;transition:background var(--dur-1) var(--ease-out);text-align:left;flex-shrink:0;font-family:inherit;color:var(--text)}.active-build-banner:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--accent-bright),var(--accent-deep))}.active-build-banner:hover{background:linear-gradient(90deg,rgba(91,200,245,.16) 0%,rgba(91,200,245,.06) 30%,transparent 80%)}.active-build-banner:focus-visible{outline:2px solid var(--accent-ring);outline-offset:-2px}.abb-dot{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);animation:pulse 1.6s var(--ease-out) infinite;flex-shrink:0}.abb-name{font-size:var(--fs-sm);font-weight:600;color:var(--text);white-space:nowrap}.abb-platform{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:var(--radius-pill);background:#ffffff0a;border:1px solid var(--border-soft);color:var(--text-soft);font-size:10.5px;font-weight:600;letter-spacing:.04em;flex-shrink:0}.abb-step{font-size:var(--fs-xs);color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:280px}.abb-progress{flex:1;min-width:80px;max-width:220px;height:4px;background:#ffffff14;border-radius:var(--radius-pill);overflow:hidden;margin-left:auto}.abb-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-deep),var(--accent-bright));border-radius:var(--radius-pill);transition:width .4s var(--ease-out);position:relative;overflow:hidden}.abb-progress-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:shimmer 1.8s linear infinite}.abb-eta{font-size:12px;color:var(--text-dim);min-width:56px;text-align:right}.abb-jump{color:var(--accent);font-weight:600;font-size:12px;white-space:nowrap}.auto-update-banner{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:9px var(--space-6);border:none;border-bottom:1px solid var(--border-hairline);position:relative;flex-shrink:0;color:var(--text);font-size:var(--fs-sm)}.auto-update-banner:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px}.auto-update-banner--updating:before{background:linear-gradient(180deg,var(--accent-bright),var(--accent-deep))}.auto-update-banner--success:before{background:var(--success)}.auto-update-banner--available:before{background:var(--warning)}.auto-update-banner--failed:before{background:var(--danger)}.auto-update-banner--updating{background:linear-gradient(90deg,rgba(91,200,245,.1) 0%,transparent 80%)}.auto-update-banner--success{background:linear-gradient(90deg,rgba(74,222,128,.1) 0%,transparent 80%)}.auto-update-banner--available{background:linear-gradient(90deg,rgba(251,191,36,.1) 0%,transparent 80%)}.auto-update-banner--failed{background:linear-gradient(90deg,rgba(248,113,113,.1) 0%,transparent 80%)}.aub-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.aub-dot--updating{background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);animation:pulse 1.6s var(--ease-out) infinite}.aub-dot--success{background:var(--success);box-shadow:0 0 0 4px #4ade802e}.aub-dot--available{background:var(--warning);box-shadow:0 0 0 4px #fbbf242e;animation:pulse 1.8s var(--ease-out) infinite}.aub-dot--failed{background:var(--danger);box-shadow:0 0 0 4px #f871712e}.aub-text{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aub-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-left:auto;height:26px;padding:0 12px;border-radius:var(--radius-pill);border:1px solid var(--warning);background:#fbbf241f;color:var(--warning);font-family:inherit;font-size:var(--fs-xs);font-weight:600;cursor:pointer;white-space:nowrap;transition:background var(--dur-1) var(--ease-out)}.aub-action:hover:not(:disabled){background:#fbbf2438}.aub-action:disabled{opacity:.6;cursor:default}.aub-close{flex-shrink:0;margin-left:var(--space-2);color:var(--text-dim)}.auto-update-banner:not(:has(.aub-action)) .aub-close{margin-left:auto}.aub-close:hover{color:var(--text)}.recent-jobs-rail{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);overflow:hidden}.rj-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-hairline);flex-shrink:0}.rj-title{font-size:var(--fs-sm);font-weight:600;margin:0;color:var(--text)}.rj-count{font-size:var(--fs-xs);color:var(--text-muted);font-family:var(--font-mono)}.rj-bulk-bar{display:flex;flex-wrap:wrap;gap:6px;padding:8px 10px;border-bottom:1px solid var(--border-hairline);flex-shrink:0}.rj-bulk-btn{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 8px;border-radius:var(--radius-sm);background:#ffffff0a;border:1px solid var(--border-soft);color:var(--text-soft);font-size:10.5px;font-weight:600;letter-spacing:.01em;white-space:nowrap;cursor:pointer;transition:background var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.rj-bulk-btn:hover:not(:disabled){background:#ffffff14;border-color:var(--border-strong);color:var(--text)}.rj-bulk-btn:disabled{opacity:.4;cursor:not-allowed}.rj-bulk-count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:14px;padding:0 4px;border-radius:var(--radius-pill);background:#ffffff1a;font-family:var(--font-mono);font-size:9.5px;color:var(--text-soft)}.rj-bulk-btn--danger{color:var(--danger);border-color:#f8717152;background:#f871710f}.rj-bulk-btn--danger:hover:not(:disabled){background:#f8717129;border-color:#f871718c;color:var(--danger)}.rj-list{flex:1;min-height:0;display:flex;flex-direction:column;padding:8px;gap:8px;overflow-y:auto}.rj-empty{padding:24px 12px;color:var(--text-muted);font-size:var(--fs-xs);text-align:center}.rj-bucket{display:flex;flex-direction:column;gap:8px}.rj-divider{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:700;padding:8px 10px 2px}.rj-item{display:block;padding:10px 12px 12px;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1);background:var(--surface-2);cursor:pointer;position:relative;box-shadow:0 1px #ffffff06 inset,0 2px 6px #00000052;transition:background var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),transform var(--dur-1) var(--ease-out)}.rj-item:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:3px;background:var(--preset-color, transparent);opacity:.65;pointer-events:none}.rj-item:hover{background:var(--surface-3);border-color:var(--border-soft);transform:translateY(-1px)}.rj-item:hover:before{opacity:1}.rj-item:focus-visible{outline:2px solid var(--accent-ring);outline-offset:2px}.rj-item--active{background:var(--accent-soft);border-color:var(--border-accent);box-shadow:0 0 0 1px var(--border-accent),var(--shadow-sm)}.rj-item--running{background:linear-gradient(135deg,var(--preset-color-soft, rgba(91, 200, 245, .12)),rgba(91,200,245,.03));border-color:var(--preset-color-ring, rgba(91, 200, 245, .4));box-shadow:0 0 0 1px var(--preset-color-ring, rgba(91, 200, 245, .2)),var(--shadow-sm)}.rj-item-grid{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:start}.rj-item-body{display:flex;flex-direction:column;gap:5px;min-width:0}.rj-item-row1{display:flex;align-items:center;gap:6px;min-width:0}.rj-status{display:inline-flex;align-items:center;gap:5px;height:20px;padding:0 8px 0 6px;border-radius:var(--radius-pill);font-size:10.5px;font-weight:600;letter-spacing:.02em;border:1px solid transparent;line-height:1;flex-shrink:0}.rj-status-glyph{display:inline-flex;align-items:center;justify-content:center;width:11px;height:11px;font-size:11px}.rj-status--running{background:var(--accent-soft);color:var(--accent);border-color:var(--border-accent)}.rj-status--running .rj-status-glyph{animation:spin 1.4s linear infinite}.rj-status--queued{background:#ffffff0d;color:var(--text-dim);border-color:var(--border-soft)}.rj-status--completed{background:var(--success-soft);color:var(--success);border-color:#4ade8052}.rj-status--failed{background:var(--danger-soft);color:var(--danger);border-color:#f871716b}.rj-status--cancelled{background:#ffffff0a;color:var(--text-muted);border-color:var(--border-hairline)}.rj-time{flex:1 1 auto;min-width:0;color:var(--text-muted);font-size:10.5px;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rj-item-row2{display:flex;align-items:center;gap:8px;min-width:0}.rj-name{font-size:var(--fs-sm);font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.rj-platform{flex-shrink:0;height:18px!important;padding:0 6px!important;font-size:10px!important}.rj-platform .build-badge__icon{width:9px;height:9px}.rj-item-row3{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-dim);min-width:0}.rj-branch{color:var(--text-soft);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:110px;flex-shrink:0}.rj-meta-sep{color:var(--text-muted);opacity:.6;flex-shrink:0}.rj-duration{color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.rj-duration-num{color:var(--text);font-family:var(--font-mono)}.rj-eta{color:var(--accent)}.rj-duration--queued{color:var(--text-muted);font-style:italic}.rj-item-byuser{display:flex;align-items:center;gap:4px;font-size:10.5px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.rj-byuser-label{color:var(--text-muted);flex-shrink:0}.rj-byuser-name{color:var(--text-soft);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rj-item-commit{display:flex;align-items:center;gap:6px;margin-top:2px;font-size:11px;color:var(--text-dim);min-width:0;flex-wrap:wrap}.rj-item-commit .commit-link-wrap{flex-shrink:0}.rj-item-commit-msg{color:var(--text-soft);font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%}.rj-phase{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--preset-color-bright, var(--accent-bright));font-weight:600;letter-spacing:.01em;margin-top:4px;min-width:0}.rj-phase-icon{font-size:8px;line-height:1;animation:pulse 1.6s ease-in-out infinite;flex-shrink:0}.rj-phase-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.rj-progress{height:3px;background:#ffffff0f;border-radius:var(--radius-pill);overflow:hidden;margin-top:4px}.rj-progress-fill{height:100%;background:linear-gradient(90deg,var(--preset-color, var(--accent-deep)),var(--preset-color-bright, var(--accent-bright)));border-radius:var(--radius-pill);transition:width .4s var(--ease-out);position:relative;overflow:hidden}.rj-progress-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.35) 50%,transparent 100%);animation:shimmer 1.8s linear infinite}.rj-delete,.rj-cancel,.rj-rebuild{flex:0 0 auto;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);background:transparent;border:none;color:var(--text-muted);font-size:11px;cursor:pointer;opacity:0;transition:opacity var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out),background var(--dur-1) var(--ease-out)}.rj-item:hover .rj-delete,.rj-item:hover .rj-cancel,.rj-item:hover .rj-rebuild,.rj-delete:focus-visible,.rj-cancel:focus-visible,.rj-rebuild:focus-visible{opacity:1}.rj-rebuild:hover{color:var(--accent, var(--text));background:#ffffff14}.rj-delete:hover{color:var(--danger);background:#f871711f}.rj-cancel{color:var(--danger);opacity:.6}.rj-cancel:hover{color:var(--danger);background:#f871712e;opacity:1}.rj-item--running .rj-cancel{opacity:.85}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.preset-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--surface-3);border:1px solid var(--border-soft);box-shadow:0 1px #ffffff0a inset,0 1px 4px #00000059;overflow:hidden;flex-shrink:0;position:relative}.preset-avatar:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 1px #ffffff0f inset,0 0 0 1px var(--preset-color-soft, transparent)}.preset-avatar-img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}.preset-avatar-initials{width:100%;height:100%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.02em;color:var(--preset-color-bright, var(--text-soft));text-shadow:0 1px 2px rgba(0,0,0,.5)}.build-badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;letter-spacing:.03em;border:1px solid var(--border-soft);background:#ffffff06;color:var(--text-soft);white-space:nowrap;line-height:1;flex-shrink:0}.build-badge--interactive{cursor:pointer;transition:background var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}.build-badge--interactive:hover{background:#ffffff0f;border-color:var(--border-strong)}.build-badge__icon-wrap{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}.build-badge__icon{width:11px;height:11px;flex-shrink:0;display:block}.build-badge__label{line-height:1}.build-badge--ios{color:#dcebf8;border-color:#dcebf82e;background:#dcebf80b}.build-badge--apk,.build-badge--aab,.build-badge--both{color:#b7efd0;border-color:#b7efd033;background:#b7efd00b}.commit-link-wrap{position:relative;display:inline-flex;align-items:center;gap:4px;min-width:0}.commit-sha-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#5bc8f514;border:1px solid var(--border-accent);padding:1px 7px;border-radius:var(--radius-xs);font-family:var(--font-mono);font-size:11.5px;color:var(--accent);cursor:pointer;transition:background var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}.commit-sha-btn:hover{background:#5bc8f52e;border-color:var(--accent)}.commit-github-link{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:var(--radius-xs);color:var(--text-dim);text-decoration:none;font-size:12px;line-height:1;transition:color var(--dur-1) var(--ease-out),background var(--dur-1) var(--ease-out)}.commit-github-link:hover{color:var(--accent);background:#ffffff0f}.commit-inline-meta{margin-left:6px;font-size:11px;color:var(--text-muted);white-space:nowrap}.commit-inline-message{margin-left:8px;font-size:var(--fs-sm);color:var(--text);max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.commit-tooltip{position:fixed;z-index:9999;min-width:240px;max-width:420px;max-height:220px;overflow-y:auto;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border-soft);background:var(--surface-2);color:var(--text);font-size:var(--fs-sm);line-height:1.5;box-shadow:var(--shadow-md)}.commit-tooltip-message{white-space:pre-wrap;overflow-wrap:break-word;font-weight:500}.commit-tooltip-ai-summary{margin-top:8px;padding-top:8px;border-top:1px solid var(--border-hairline);color:var(--accent);font-style:italic;font-size:12.5px}.commit-tooltip-meta{margin-top:8px;padding-top:8px;border-top:1px solid var(--border-hairline);font-size:var(--fs-xs);color:var(--text-muted)}.commit-modal-overlay{z-index:120}.commit-modal-card{max-width:620px;width:92vw}.commit-modal-body{padding:16px 20px 20px;display:flex;flex-direction:column;gap:14px;max-height:65vh;overflow-y:auto}.commit-modal-message{white-space:pre-wrap;overflow-wrap:break-word;font-size:var(--fs-md);line-height:1.55;color:var(--text);padding:12px 14px;background:var(--sunk);border-radius:var(--radius-md);border:1px solid var(--border-hairline)}.commit-modal-ai-summary{font-size:var(--fs-sm);line-height:1.6;color:var(--accent);padding:12px 14px;background:var(--accent-soft);border-radius:var(--radius-md);border:1px solid var(--border-accent)}.commit-modal-ai-summary strong{color:var(--accent-bright)}.commit-modal-ai-section{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}.commit-modal-ai-section .commit-modal-ai-summary{flex:1;min-width:0}.commit-modal-meta{font-size:var(--fs-xs);color:var(--text-muted)}.ai-btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.25);border-top-color:currentColor;border-radius:50%;animation:spin .7s linear infinite;margin-right:4px}.commit-file-list{display:flex;flex-direction:column;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-hairline)}.commit-file-row{display:flex;align-items:center;gap:10px;padding:6px 12px;font-size:var(--fs-xs);background:#ffffff05;border-top:1px solid var(--border-hairline)}.commit-file-row:first-of-type{border-top:none}.commit-file-status{flex-shrink:0;width:18px;text-align:center;font-weight:700;font-size:11px;color:var(--text-muted)}.commit-file-added{color:var(--success)}.commit-file-modified{color:var(--warning)}.commit-file-removed{color:var(--danger)}.commit-file-renamed{color:var(--accent)}.commit-file-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-family:var(--font-mono);font-size:12px}.commit-file-diff{flex-shrink:0;display:flex;gap:6px;font-size:11px;font-family:var(--font-mono)}.commit-diff-add{color:var(--success)}.commit-diff-del{color:var(--danger)}.error-boundary{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:24px}.error-boundary-card{background:var(--panel);border:1px solid var(--danger-dim);border-radius:var(--radius-lg);padding:40px;width:100%;max-width:440px;text-align:center;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:16px;align-items:center}.error-boundary-icon{font-size:2.5em;color:var(--danger)}.error-boundary-title{font-size:1.2em;font-weight:600}.error-boundary-message{font-size:.88em;color:var(--text-dim);line-height:1.6;max-height:120px;overflow-y:auto;word-break:break-word}.error-boundary-actions{display:flex;gap:10px;margin-top:8px}.slack-picker{position:relative;width:100%}.slack-picker-chips{display:flex;flex-wrap:wrap;gap:6px;padding:6px 8px;min-height:36px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);align-items:center}.slack-picker-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 6px 2px 8px;font-size:12px;background:#ffffff0f;border:1px solid var(--border-soft);border-radius:999px}.slack-picker-chip-name{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slack-picker-chip-remove{background:none;border:0;color:var(--text-muted);cursor:pointer;font-size:14px;line-height:1;padding:0 2px}.slack-picker-chip-remove:hover{color:var(--text)}.slack-picker-input{flex:1 1 140px;min-width:140px;background:transparent;border:0;outline:none;color:var(--text);font-size:13px;padding:2px 4px}.slack-picker-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;max-height:320px;overflow-y:auto;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.slack-picker-section-label{padding:8px 12px 4px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.slack-picker-row{display:flex;align-items:center;gap:8px;width:100%;padding:6px 12px;background:transparent;border:0;color:var(--text);font-size:13px;text-align:left;cursor:pointer}.slack-picker-row:hover{background:#ffffff0d}.slack-picker-row.is-selected{background:#78a5ff14}.slack-picker-row-kind{display:inline-flex;justify-content:center;width:18px;color:var(--text-muted)}.slack-picker-row-name{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slack-picker-star{font-size:14px;color:var(--text-muted);cursor:pointer;padding:0 4px}.slack-picker-star.is-on{color:#f6c343}.slack-picker-check{color:var(--accent);font-weight:600}.slack-picker-fav-tag{color:#f6c343;font-size:12px}.slack-picker-empty,.slack-picker-error{padding:10px 12px;font-size:12px;color:var(--text-muted)}.slack-picker-error{color:var(--danger, #e57373)}.slack-settings{display:flex;flex-direction:column;gap:var(--space-5)}.slack-settings-card{padding:var(--space-4);background:#ffffff06;border:1px solid var(--border-soft);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--space-3)}.slack-settings-card h4{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.slack-status-row{display:flex;align-items:center;gap:8px;font-size:13px}.slack-status-dot{width:8px;height:8px;border-radius:50%;background:var(--text-muted)}.slack-status-dot.is-on{background:#4ade80}.slack-status-dot.is-off{background:var(--danger, #e57373)}.slack-event-toggles{display:flex;flex-wrap:wrap;gap:var(--space-3)}.slack-event-toggle{display:inline-flex;align-items:center;gap:6px;font-size:13px}.slack-settings-token-row{display:flex;gap:8px;align-items:center}.slack-settings-token-row input{flex:1 1 auto}.slack-settings-hint{font-size:12px;color:var(--text-muted);line-height:1.5}.slack-settings-hint a{color:var(--accent)}.slack-settings-flash{margin:0}.slack-webhook-suffix{font-size:11px;opacity:.6}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#ffffff38}@media (max-width: 700px){.presets-left{width:220px}.presets-right{padding:16px}.run-modal-card{padding:20px}.run-modal-preset-tag{flex-direction:column}.run-modal-section-grid--ios,.run-modal-section-grid--android{grid-template-columns:1fr}.run-modal-tooltip-content{left:0;width:min(260px,calc(100vw - 72px))}.run-modal-tooltip--right .run-modal-tooltip-content{right:auto}.settings-panel{width:100%;border-left:none;border-top:1px solid var(--panel-border)}.settings-overlay{align-items:flex-end}.storage-summary-grid{grid-template-columns:1fr}.storage-danger-box{flex-direction:column}}@media (max-width: 500px){.presets-page{flex-direction:column}.presets-left{width:100%;height:200px;border-right:none;border-bottom:1px solid var(--panel-border)}.presets-right{padding:14px}}.agents-page{display:flex;flex-direction:column}.agents-empty{border:1px dashed var(--border-soft);border-radius:var(--radius-lg);padding:56px 40px;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center;background:linear-gradient(180deg,rgba(91,200,245,.025),transparent);color:var(--text-dim)}.agents-empty h2{margin:0;font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em;color:var(--text)}.agents-empty p{margin:0;max-width:420px;line-height:1.6}.agents-empty-icon{width:80px;height:80px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(91,200,245,.18),transparent 70%);display:inline-flex;align-items:center;justify-content:center}.agents-empty-icon svg{width:44px;height:44px;color:var(--accent);opacity:.85}.agents-list{display:grid;grid-template-columns:1fr;gap:var(--space-3)}.agent-card{background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--dur-1) var(--ease-out)}.agent-card:hover{border-color:var(--border-soft)}.agent-card--offline{opacity:.72}.agent-card-head{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--border-hairline)}.agent-status-pip{width:10px;height:10px;border-radius:50%;background:var(--text-muted);box-shadow:0 0 0 4px #ffffff0a;flex-shrink:0}.agent-status-pip.is-online{background:var(--success);box-shadow:0 0 0 4px var(--success-soft)}.agent-card-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.agent-card-title-block{display:flex;flex-direction:column;gap:4px}.agent-card-name-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.agent-card-name{font-size:var(--fs-xl);font-weight:600;letter-spacing:-.005em}.agent-card-sub{font-size:var(--fs-xs);color:var(--text-dim)}.agent-card-caps{display:grid;grid-template-columns:repeat(2,1fr)}.agent-cap{display:grid;grid-template-columns:130px 1fr;align-items:baseline;gap:16px;padding:12px 22px;border-bottom:1px solid var(--border-hairline)}.agent-cap:nth-child(2n){border-left:1px solid var(--border-hairline)}.agent-card-caps>.agent-cap:nth-last-child(-n+2){border-bottom:none}.agent-cap--wide{grid-column:1 / -1;border-left:none!important}.agent-cap-label{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.agent-cap-value{font-size:var(--fs-sm);color:var(--text)}.status-running-inline{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-weight:600}.device-list{display:flex;flex-wrap:wrap;gap:6px}.pairing-code-card{background:var(--surface);border:1px solid var(--border-accent);border-radius:var(--radius-lg);padding:18px 22px;margin-bottom:var(--space-4);display:flex;flex-direction:column;gap:10px}.pairing-code-card-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pairing-code-value{font-size:var(--fs-xl);font-weight:600;color:var(--accent);letter-spacing:.05em}.pairing-code-cli{margin:0;padding:12px 14px;background:var(--sunk);border:1px solid var(--border-hairline);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-soft);overflow-x:auto;white-space:pre}.login-shell{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;overflow:hidden;background:radial-gradient(ellipse at 20% 10%,rgba(94,201,184,.1),transparent 45%),radial-gradient(ellipse at 85% 90%,rgba(70,130,200,.1),transparent 45%),linear-gradient(160deg,#0d1828 0%,var(--bg) 100%)}.login-bg-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.55;pointer-events:none}.login-bg-orb--a{width:420px;height:420px;top:-120px;left:-120px;background:radial-gradient(circle,rgba(94,201,184,.35),transparent 70%);animation:login-orb-drift-a 18s ease-in-out infinite alternate}.login-bg-orb--b{width:520px;height:520px;bottom:-180px;right:-140px;background:radial-gradient(circle,rgba(100,130,220,.28),transparent 70%);animation:login-orb-drift-b 22s ease-in-out infinite alternate}@keyframes login-orb-drift-a{0%{transform:translate(0)}to{transform:translate(40px,60px)}}@keyframes login-orb-drift-b{0%{transform:translate(0)}to{transform:translate(-50px,-40px)}}.login-card{position:relative;width:100%;max-width:420px;padding:36px 36px 32px;background:linear-gradient(180deg,#121e30eb,#0d1626eb);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);box-shadow:0 30px 80px #0000008c,0 0 0 1px #5ec9b80d inset,0 1px #ffffff0d inset;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:login-card-in .42s cubic-bezier(.2,.7,.2,1) both}@keyframes login-card-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:22px}.login-logo{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#5ec9b838,#5ec9b80f);border:1px solid rgba(94,201,184,.28);color:var(--accent);box-shadow:0 6px 20px #5ec9b82e;flex-shrink:0}.login-brand-text{min-width:0}.login-eyebrow{font-size:.72em;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:2px}.login-title{font-size:1.5em;font-weight:600;letter-spacing:-.01em;color:var(--text);line-height:1.2}.login-lede{color:var(--text-dim);font-size:.95em;line-height:1.55;margin-bottom:26px}.login-error{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;margin-bottom:18px;border-radius:var(--radius-sm);background:var(--danger-dim);border:1px solid rgba(240,112,112,.28);color:var(--danger);font-size:.88em;line-height:1.45}.login-error-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;border-radius:50%;background:#f070704d;color:#fff;font-size:.78em;font-weight:700;margin-top:1px}.login-button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:13px 16px;border-radius:var(--radius-sm);background:#fff;color:#1f2937;font-weight:600;font-size:.95em;text-decoration:none;box-shadow:0 2px 8px #00000040,0 0 0 1px #ffffff14;transition:transform .12s ease,box-shadow .16s ease,background-color .16s ease}.login-button:hover{background:#f8fafc;transform:translateY(-1px);box-shadow:0 6px 18px #00000059,0 0 0 1px #5ec9b840}.login-button:active{transform:translateY(0)}.login-button-icon{display:inline-flex;align-items:center;justify-content:center}.login-hint{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:18px;font-size:.82em;color:var(--text-dim);text-align:center}.login-hint strong{color:var(--text);font-weight:600}.login-hint-dot{width:6px;height:6px;border-radius:50%;background:var(--good);box-shadow:0 0 8px #64d68ab3}.login-footer{position:absolute;bottom:20px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:10px;font-size:.78em;color:var(--muted)}.login-footer-sep{opacity:.5}@media (max-width: 480px){.login-card{padding:28px 22px 26px}.login-title{font-size:1.3em}.login-footer{position:static;margin-top:24px}}.storage-page{display:flex;flex-direction:column}.storage-stack{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:var(--space-4);align-items:start}.storage-section{background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column}.storage-section h3{margin:0;padding:16px 20px;font-size:var(--fs-md);font-weight:600;letter-spacing:-.005em;color:var(--text);border-bottom:1px solid var(--border-hairline)}.storage-card{padding:16px 20px;display:flex;flex-direction:column;gap:12px}.storage-status-row{display:inline-flex;align-items:center;gap:8px;height:26px;padding:0 12px 0 10px;border-radius:var(--radius-pill);align-self:flex-start;font-size:var(--fs-xs);font-weight:600;border:1px solid transparent}.storage-status-row strong{font-weight:600}.storage-status-row:has(.storage-dot--on){background:var(--success-soft);border-color:#4ade8052;color:var(--success)}.storage-status-row:has(.storage-dot--off){background:var(--warning-soft);border-color:#fbbf2452;color:var(--warning)}.storage-dot{width:8px;height:8px;border-radius:50%;background:currentColor;flex-shrink:0;display:inline-block;text-indent:-9999px;overflow:hidden;line-height:0}.storage-dot--on{color:var(--success)}.storage-dot--off{color:var(--warning)}.storage-kv{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 14px;align-items:baseline}.storage-kv dt{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.storage-kv dd{margin:0;font-size:var(--fs-sm);color:var(--text);word-break:break-all}.storage-kv code{font-family:var(--font-mono);font-size:12.5px;padding:2px 6px;background:var(--sunk);border:1px solid var(--border-hairline);border-radius:var(--radius-xs)}.storage-card .field-hint code{font-family:var(--font-mono);font-size:12px;padding:1px 5px;background:var(--sunk);border-radius:var(--radius-xs);color:var(--accent)}.storage-test{padding:14px 20px 18px;border-top:1px solid var(--border-hairline);display:flex;flex-direction:column;gap:10px}.storage-test .field-group{gap:6px}.storage-test-result{padding:10px 12px;border-radius:var(--radius-md);font-size:var(--fs-sm);border:1px solid transparent}.storage-test-result--ok{background:var(--success-soft);border-color:#4ade8047;color:var(--success)}.storage-test-result--err{background:var(--danger-soft);border-color:#f8717147;color:var(--danger)}.storage-test-result pre{margin:6px 0 0;font-family:var(--font-mono);font-size:12px;white-space:pre-wrap;word-break:break-word}.signing-configs-page{display:flex;flex-direction:column}.signing-configs-section{margin-bottom:var(--space-6)}.signing-configs-section-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:var(--space-3)}.signing-configs-section-header h3{margin:0;font-size:var(--fs-lg);font-weight:600;color:var(--text)}.signing-configs-count{font-size:var(--fs-xs);color:var(--text-muted);font-family:var(--font-mono);margin-top:4px;display:block}.signing-configs-empty{padding:20px;text-align:center;background:var(--surface);border:1px dashed var(--border-soft);border-radius:var(--radius-md)}.signing-configs-list{display:flex;flex-direction:column;gap:10px}.signing-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:14px 18px;background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);transition:border-color var(--dur-1) var(--ease-out)}.signing-card:hover{border-color:var(--border-soft)}.signing-card--primary{border-color:var(--border-accent);background:linear-gradient(135deg,#5bc8f50d,#5bc8f503)}.signing-card-icon{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border-soft);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--accent);letter-spacing:.04em}.signing-card-info{display:flex;flex-direction:column;gap:4px;min-width:0}.signing-card-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.signing-card-name{font-size:var(--fs-lg);font-weight:600;color:var(--text)}.signing-card-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:var(--fs-xs);color:var(--text-dim)}.signing-card-meta .mono{font-size:11.5px;color:var(--text-soft)}.signing-card-actions{display:flex;gap:6px}.signing-configs-row{display:contents}.toast-stack{position:fixed;top:16px;right:16px;z-index:1000;display:flex;flex-direction:column;gap:10px;max-width:min(420px,calc(100vw - 32px))}.toast{display:flex;align-items:flex-start;gap:8px;padding:12px 12px 12px 14px;border-radius:10px;background:var(--surface, #1b1d23);border:1px solid var(--border, rgba(255, 255, 255, .12));box-shadow:0 8px 28px #00000059;animation:toast-in .16s ease-out}.toast--error{border-left:3px solid var(--danger, #f87171)}.toast--info{border-left:3px solid var(--accent, #60a5fa)}.toast--success{border-left:3px solid var(--success, #34d399)}.toast-body{flex:1;display:flex;flex-direction:column;gap:3px;background:none;border:none;padding:0;text-align:left;color:inherit;font:inherit}.toast-title{font-weight:600;color:var(--text, #e5e7eb);font-size:.9em}.toast-message{color:var(--text-dim, #9ca3af);font-size:.83em;line-height:1.35;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.toast-cta{margin-top:2px;font-size:.8em;font-weight:600;color:var(--danger, #f87171)}.toast-close{flex:0 0 auto;width:22px;height:22px;line-height:20px;border-radius:6px;background:none;border:none;color:var(--text-dim, #9ca3af);font-size:16px;cursor:pointer}.toast-close:hover{background:var(--surface-2, rgba(255, 255, 255, .08));color:var(--text, #e5e7eb)}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.automation-section{display:flex;flex-direction:column;gap:var(--space-3)}.automation-section+.automation-section{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--border-hairline)}.automation-section-head h3{margin:0 0 4px;font-size:var(--fs-md);font-weight:600}.automation-section-head p{margin:0}.automation-create-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:stretch}.automation-create-row input{height:36px}.automation-create-row .btn-primary{height:36px;white-space:nowrap}.automation-list{display:flex;flex-direction:column;gap:6px}.automation-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--sunk);border:1px solid var(--border-hairline);border-radius:var(--radius-md)}.automation-row-info{display:flex;flex-direction:column;gap:2px;min-width:0}.automation-row-name{font-weight:600;color:var(--text)}.automation-row-meta{font-size:var(--fs-xs);color:var(--text-dim)}.secret-reveal-card{background:var(--accent-soft);border:1px solid var(--border-accent);border-radius:var(--radius-lg);padding:16px 18px;display:flex;flex-direction:column;gap:10px}.secret-reveal-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.secret-reveal-heading strong{color:var(--text)}.secret-reveal-row{display:flex;align-items:center;gap:10px}.secret-reveal-value{flex:1;padding:10px 12px;background:var(--sunk);border:1px solid var(--border-hairline);border-radius:var(--radius-md);font-size:var(--fs-sm);color:var(--accent-bright);overflow-x:auto;white-space:nowrap}.secret-reveal-cli{margin:0;padding:12px 14px;background:var(--sunk);border:1px solid var(--border-hairline);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-soft);overflow-x:auto;white-space:pre}.secret-reveal-actions{display:flex;gap:8px;align-items:center}.ollama-wizard-panel{width:600px;max-width:95vw;max-height:min(680px,88vh);background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:24px 28px;display:flex;flex-direction:column;gap:14px}.ollama-wizard-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.ollama-wizard-steps{padding:0 4px;flex-shrink:0}.ollama-wizard-step-group{display:flex;align-items:center;flex:1}.ollama-wizard-step-group:last-child{flex:0}.ollama-wizard-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:4px}.ollama-wizard-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;padding-top:4px;border-top:1px solid var(--panel-border)}.ollama-wizard-footer-left{flex:1}.ollama-wizard-footer-right{display:flex;align-items:center;gap:16px}.ollama-wizard-dismiss-link{margin:0}.ollama-install-heading{display:flex;align-items:center;gap:10px}.ollama-install-heading .wizard-title{margin:0}.ollama-install-elapsed{margin-left:auto;color:var(--text-dim);font-size:.8em;font-family:var(--font-mono, monospace)}.ollama-spinner{width:16px;height:16px;flex-shrink:0;border:2px solid var(--panel-border);border-top-color:var(--accent);border-radius:50%;animation:ollama-spin .8s linear infinite}@keyframes ollama-spin{to{transform:rotate(360deg)}}.ollama-progress-bar{width:100%;height:8px;border-radius:4px;background:var(--panel-border);overflow:hidden}.ollama-progress-bar-fill{height:100%;background:var(--accent);transition:width .3s ease}.ollama-progress-bar--indeterminate .ollama-progress-bar-fill{width:40%;animation:ollama-indeterminate 1.2s ease-in-out infinite}@keyframes ollama-indeterminate{0%{transform:translate(-100%)}to{transform:translate(250%)}}.ollama-install-log{background:var(--surface-2, var(--panel));border:1px solid var(--panel-border);border-radius:var(--radius-md, 6px);padding:10px 12px;font-family:var(--font-mono, monospace);font-size:.82em;color:var(--text-dim);max-height:140px;overflow-y:auto}.ollama-install-log-line{white-space:pre-wrap;word-break:break-all}.ollama-install-log-placeholder{font-style:italic;opacity:.7}.ollama-model-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.ollama-model-ram-note{color:var(--text-dim);font-size:.8em;font-weight:500}.ollama-model-group-label{color:var(--text-dim);font-size:.72em;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin:10px 0 6px}.ollama-model-group-label:first-child{margin-top:4px}.ollama-model-list{max-height:190px;overflow-y:auto;margin-top:6px;border:1px solid var(--panel-border);border-radius:var(--radius-md, 8px);padding:6px}.ollama-model-card{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;margin-bottom:4px;border:1px solid transparent;border-radius:var(--radius-sm, 6px);cursor:pointer;transition:border-color .15s,background .15s}.ollama-model-card:last-child{margin-bottom:0}.ollama-model-card:hover{background:#ffffff08}.ollama-model-card.is-checked{border-color:var(--accent);background:var(--accent-glow, rgba(80, 160, 255, .08))}.ollama-model-card input[type=radio]{margin-top:2px;flex-shrink:0}.ollama-model-card-body{flex:1;min-width:0}.ollama-model-card-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ollama-model-card-name{font-weight:600;font-size:.92em}.ollama-model-card-size{margin-left:auto;padding:1px 7px;border-radius:999px;background:#ffffff0f;color:var(--text-dim);font-size:.72em;font-family:var(--font-mono, monospace);flex-shrink:0;white-space:nowrap}.ollama-model-card-hint{margin:2px 0 0;color:var(--text-dim);font-size:.74em;line-height:1.4}.ollama-custom-tag-row{margin-top:6px}.ollama-recommended-badge{padding:1px 6px;border-radius:999px;background:var(--accent-glow, rgba(80, 160, 255, .15));color:var(--accent);font-size:.65em;font-weight:600;text-transform:uppercase;letter-spacing:.02em;flex-shrink:0;white-space:nowrap}.ollama-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ollama-status-card{background:var(--surface-2, var(--panel));border:1px solid var(--panel-border);border-radius:var(--radius-md, 6px);padding:12px 14px;display:flex;align-items:center;gap:8px}.ollama-status-dot{width:8px;height:8px;border-radius:50%;background:var(--muted);flex-shrink:0}.ollama-status-dot.is-on{background:var(--good)}.ollama-status-dot.is-off{background:var(--danger)}.ollama-subtabs{display:flex;gap:8px;margin-bottom:8px}.ollama-indicator-wrap{position:relative;display:inline-flex}.ollama-indicator{position:relative;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--border-hairline);background:#ffffff0a;color:var(--text-dim);cursor:pointer;transition:border-color .15s,color .15s}.ollama-indicator:hover{color:var(--text);border-color:#ffffff2e}.ollama-indicator:disabled{cursor:wait}.ollama-indicator:disabled:hover{border-color:var(--border-hairline)}.ollama-indicator-dot{position:absolute;bottom:1px;right:1px;width:8px;height:8px;border-radius:50%;border:2px solid var(--surface);background:var(--text-muted)}.ollama-indicator--on{color:var(--success);border-color:#4ade8047}.ollama-indicator--on .ollama-indicator-dot{background:var(--success);box-shadow:0 0 0 2px #4ade8038}.ollama-indicator--off .ollama-indicator-dot{background:var(--text-muted)}.ollama-indicator--busy{color:var(--accent)}.ollama-indicator--busy .ollama-indicator-dot{background:var(--accent);animation:ollama-indicator-pulse 1s ease-in-out infinite}@keyframes ollama-indicator-pulse{0%,to{opacity:1}50%{opacity:.35}}.ollama-indicator--error{color:var(--danger);border-color:#f8717147}.ollama-indicator--error .ollama-indicator-dot{background:var(--danger);box-shadow:0 0 0 2px #f8717138}.ollama-indicator-popover{position:absolute;top:calc(100% + 8px);right:0;width:280px;padding:14px;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-md, 8px);box-shadow:var(--shadow-lg);z-index:200}.ollama-indicator-popover-title{margin:0 0 6px;font-weight:600;color:var(--danger);font-size:.9em}.ollama-indicator-popover-message{margin:0 0 12px;color:var(--text-dim);font-size:.85em;line-height:1.5}.ollama-indicator-popover-actions{display:flex;gap:8px;justify-content:flex-end}.user-chip{position:relative;display:inline-flex;align-items:center}.user-chip-button{display:inline-flex;align-items:center;justify-content:center;padding:2px;background:none;border:1px solid var(--border, rgba(255, 255, 255, .14));border-radius:50%;cursor:pointer}.user-chip-button:hover{border-color:var(--accent, #7c8cf8)}.user-chip-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;display:inline-flex;align-items:center;justify-content:center}.user-chip-avatar--initial{background:var(--accent, #7c8cf8);color:#fff;font-size:12px;font-weight:700;line-height:24px;text-align:center}.user-chip-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;padding:10px;background:var(--panel, #16181f);border:1px solid var(--border, rgba(255, 255, 255, .14));border-radius:10px;box-shadow:0 12px 32px #00000073;z-index:60;display:flex;flex-direction:column;gap:10px}.user-chip-identity{display:flex;flex-direction:column;gap:2px}.user-chip-name{font-weight:600;font-size:13px}.user-chip-email{font-size:12px;opacity:.65;word-break:break-all}.user-chip-admin{align-self:flex-start;margin-top:4px;padding:1px 7px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-radius:999px;background:#7c8cf82e;color:var(--accent, #7c8cf8)}.user-chip-signout{padding:6px 10px;font-size:12.5px;background:none;border:1px solid var(--border, rgba(255, 255, 255, .14));border-radius:8px;cursor:pointer;color:inherit;text-align:center}.user-chip-signout:hover{border-color:var(--danger, #e5534b);color:var(--danger, #e5534b)}.access-page{max-width:720px;margin:0 auto;padding:28px 20px 64px;display:flex;flex-direction:column;gap:26px}.access-header h2{margin:0 0 6px}.access-error{padding:10px 14px;border-radius:8px;border:1px solid rgba(229,83,75,.5);background:#e5534b1f;color:var(--danger, #e5534b);font-size:13px}.access-section{border:1px solid var(--border, rgba(255, 255, 255, .12));border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:10px;background:var(--panel, rgba(255, 255, 255, .02))}.access-section h3{margin:0;font-size:15px}.access-add-row{display:flex;gap:8px;margin-top:4px}.access-add-row input{flex:1}.access-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column}.access-row{display:flex;align-items:center;gap:12px;padding:9px 4px;border-top:1px solid var(--border, rgba(255, 255, 255, .08))}.access-row:first-child{border-top:none}.access-email{font-weight:600;font-size:13.5px}.access-meta{flex:1;font-size:12px}.access-empty{padding:10px 4px;font-size:13px}.btn-danger-ghost{padding:4px 10px;font-size:12px;background:none;border:1px solid var(--border, rgba(255, 255, 255, .14));border-radius:7px;color:inherit;cursor:pointer}.btn-danger-ghost:hover:not(:disabled){border-color:var(--danger, #e5534b);color:var(--danger, #e5534b)}.btn-danger-ghost:disabled{opacity:.45;cursor:default}
