:root{--bg: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #1c2128;--border: #30363d;--text: #c9d1d9;--text-muted: #8b949e;--accent: #3fb950;--accent-hover: #2ea043;--accent-light: rgba(63, 185, 80, .15);--success: #3fb950;--failure: #f85149;--warning: #d29922}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}a{color:#58a6ff}a:hover{color:#79b8ff}.app{min-height:100vh;display:flex;flex-direction:column}header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;border-bottom:1px solid var(--border);background:var(--bg-secondary)}header h1{font-size:1.5rem;font-weight:600}nav{display:flex;gap:.5rem}nav button{background:transparent;border:1px solid var(--border);color:var(--text);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.875rem}nav button:hover{background:var(--bg)}nav button.active{background:var(--accent);border-color:var(--accent);color:#fff}.auth{display:flex;align-items:center;gap:1rem;font-size:.875rem}.auth .user{color:var(--text-muted)}.auth a{color:var(--accent);text-decoration:none}.auth a:hover{text-decoration:underline}main{flex:1;padding:2rem}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.75rem 1rem;border-bottom:1px solid var(--border)}th{color:var(--text-muted);font-weight:500;font-size:.875rem}tr:hover{background:var(--bg-secondary)}.mono{font-family:SF Mono,Consolas,monospace}.status{font-size:1.25rem;display:inline-block;width:1.25rem;text-align:center}.status.success{color:var(--success)}.status.failure{color:var(--failure)}.status.running{color:var(--accent)}.status.pending{color:var(--text-muted)}.status.error{color:var(--warning)}tr.clickable{cursor:pointer}.back-btn{background:transparent;border:1px solid var(--border);color:var(--text);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.875rem}.back-btn:hover{background:var(--bg-secondary)}.run-btn{background:var(--accent);border:none;color:#fff;padding:.25rem .75rem;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:500;margin-left:auto}.run-btn:hover{filter:brightness(1.1)}.run-btn:disabled{opacity:.6;cursor:not-allowed}.run-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:.5rem 1rem;border-radius:4px;font-size:.875rem;margin-bottom:1rem}.attempts-dropdown{position:relative;display:inline-flex;align-items:center}.attempts-btn{background:transparent;border:1px solid var(--border);color:var(--text);padding:.25rem .75rem;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:500}.attempts-btn:hover{background:var(--bg-tertiary);border-color:var(--text-muted)}.attempts-menu{position:absolute;top:calc(100% + 4px);left:0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;min-width:140px;z-index:100;box-shadow:0 4px 12px #0000004d;overflow:hidden}.attempt-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.75rem;color:var(--text);white-space:nowrap}.attempt-item.current{background:var(--accent-light);color:var(--accent);font-weight:500}.attempt-item.clickable{cursor:pointer}.attempt-item.clickable:hover{background:var(--bg-tertiary)}.job-detail{display:flex;flex-direction:column;height:calc(100vh - 120px)}.job-header{display:flex;align-items:center;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border);margin-bottom:1rem}.job-header h2{font-size:1.25rem;font-weight:600}.job-meta{display:flex;gap:1rem;color:var(--text-muted);font-size:.875rem;margin-left:auto}.log-viewer{flex:1;background:var(--bg-secondary);border-radius:6px;padding:1rem;overflow:auto}.log-viewer pre{font-family:SF Mono,Consolas,monospace;font-size:.8125rem;line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.log-line{display:block}.log-line.stderr{color:var(--failure)}.loading{color:var(--text-muted);text-align:center;padding:4rem}.error-state{text-align:center;padding:4rem 2rem;max-width:400px;margin:0 auto}.error-state .error-icon{width:48px;height:48px;background:var(--failure);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;margin:0 auto 1rem}.error-state h3{font-size:1.25rem;margin-bottom:.5rem;color:var(--text)}.error-state p{color:var(--text-muted);margin-bottom:1.5rem}.retry-btn{background:var(--accent);color:#fff;border:none;padding:.5rem 1.5rem;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500}.retry-btn:hover{background:var(--accent-hover)}.ws-error{background:#f851491a;border:1px solid var(--failure);color:var(--failure);padding:.75rem 1rem;border-radius:6px;font-size:.875rem;margin-bottom:1rem}.text-muted{color:var(--text-muted)}.empty-state{text-align:center;padding:4rem 2rem;max-width:500px;margin:0 auto}.empty-state h2{font-size:1.5rem;margin-bottom:.5rem;color:var(--text)}.empty-state>p{color:var(--text-muted);margin-bottom:2rem}.empty-steps{text-align:left;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:1.5rem}.empty-step{margin-bottom:1rem}.empty-step:last-child{margin-bottom:0}.empty-step strong{display:block;color:var(--text);margin-bottom:.25rem}.empty-step code{display:block;background:var(--bg);padding:.5rem .75rem;border-radius:4px;font-family:ui-monospace,SF Mono,Monaco,monospace;font-size:.85rem;color:var(--accent)}.settings{max-width:600px}.settings h2{margin-bottom:1rem}.badge-section{margin-left:auto}.badge-toggle{background:transparent;border:1px solid var(--border);color:var(--text-muted);padding:.25rem .75rem;border-radius:4px;cursor:pointer;font-size:.75rem}.badge-toggle:hover{background:var(--bg-tertiary);color:var(--text)}.badge-content{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;padding:1rem;z-index:100;box-shadow:0 4px 12px #0000004d;min-width:400px}.badge-preview{margin-bottom:.75rem}.badge-code{display:flex;align-items:center;gap:.5rem;background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:.5rem}.badge-code code{font-family:SF Mono,Consolas,monospace;font-size:.7rem;color:var(--text);flex:1;overflow-x:auto;white-space:nowrap}.copy-btn{background:var(--accent);color:#fff;border:none;padding:.25rem .5rem;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:500;white-space:nowrap}@media(max-width:768px){header{flex-wrap:wrap;gap:1rem;padding:1rem}.auth{order:-1;width:100%;justify-content:flex-end}main{padding:1rem}table{font-size:.875rem}th,td{padding:.5rem}.badge-preview-large{transform:scale(1)}.badges-grid{grid-template-columns:1fr}}.landing{min-height:100vh;background:var(--bg)}.landing-header{position:fixed;top:0;left:0;right:0;background:#0d1117f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);z-index:100;padding:0 24px}.landing-header-inner{max-width:1000px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:56px}.landing-logo{font-size:24px;font-weight:800;color:var(--accent);letter-spacing:-.02em;margin-right:32px}.landing-nav{display:flex;gap:24px;align-items:center}.landing-nav a{color:var(--text-muted);font-size:14px;font-weight:500;text-decoration:none}.landing-nav a:hover{color:var(--text)}.landing-btn{background:var(--accent);color:var(--bg)!important;padding:8px 16px;border-radius:6px;font-weight:600}.landing-btn:hover{background:var(--accent-hover)}.container{max-width:900px;margin:0 auto;padding:0 24px}.hero{padding:140px 0 80px;text-align:center}.hero h1{font-size:52px;font-weight:700;color:var(--text);margin-bottom:16px;letter-spacing:-.02em}.hero h1 span{color:var(--accent)}.hero .tagline{font-size:20px;color:var(--text-muted);margin-bottom:48px}.command-showcase{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:28px 32px;margin-bottom:32px;text-align:left;width:fit-content;margin-left:auto;margin-right:auto}.config-showcase{display:flex;gap:24px;justify-content:center;margin-bottom:32px;flex-wrap:wrap}.config-file{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;overflow:hidden;min-width:200px;text-align:left}.config-filename{background:var(--bg-tertiary);padding:8px 16px;font-size:13px;font-weight:600;color:var(--text-muted);border-bottom:1px solid var(--border)}.config-content{font-family:ui-monospace,SF Mono,Monaco,monospace;font-size:14px;line-height:1.6;padding:16px;margin:0;color:var(--text)}.hero-subtext{font-size:18px;color:var(--text-muted);margin-bottom:32px}.hero code{background:var(--bg-secondary);padding:2px 8px;border-radius:4px;font-family:ui-monospace,SF Mono,Monaco,monospace}.install-row{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.install-box{display:inline-flex;align-items:center;gap:12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;padding:12px 16px}.install-cmd{font-family:ui-monospace,SF Mono,Monaco,monospace;font-size:14px;color:var(--text)}.install-note{color:var(--text-muted);font-size:14px;margin-top:20px}.demo-link{color:var(--text-muted);font-size:14px;text-decoration:none;padding:12px 16px}.demo-link:hover{color:var(--text)}.forge-logos{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:40px;flex-wrap:wrap}.forge-label{color:var(--text-muted);font-size:14px}.forge-logo{height:32px;width:32px;opacity:.7;filter:grayscale(100%);transition:all .2s}.forge-logo:hover{opacity:1;filter:grayscale(0%)}.forge-logo.github{filter:grayscale(100%) invert(1)}.forge-logo.gitlab{height:52px;width:52px}.forge-logo.github:hover{filter:grayscale(0%) invert(1)}.how-it-works-section{padding:80px 0}.how-it-works-section h2{font-size:32px;font-weight:700;text-align:center;margin-bottom:48px;color:var(--text)}.steps-row{display:flex;justify-content:center;align-items:flex-start;gap:16px;flex-wrap:wrap}.step-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:24px 20px;text-align:center;width:180px}.step-card .step-icon{width:40px;height:40px;background:var(--accent);color:var(--bg);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;margin:0 auto 16px}.step-card h3{font-size:18px;font-weight:600;margin-bottom:12px;color:var(--text)}.step-card code{display:block;background:var(--bg-tertiary);padding:8px 12px;border-radius:6px;font-family:ui-monospace,SF Mono,Monaco,monospace;font-size:12px;margin-bottom:12px;color:var(--text);word-break:break-all}.step-card p{font-size:13px;color:var(--text-muted);line-height:1.5}.step-arrow{color:var(--text-muted);font-size:24px;padding-top:48px}.why-section{padding:80px 0;background:var(--bg-secondary)}.why-section h2{font-size:32px;font-weight:700;text-align:center;margin-bottom:12px;color:var(--text)}.why-section .section-subtitle{text-align:center;font-size:18px;color:var(--text-muted);margin-bottom:48px}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:48px}.why-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:24px;text-align:center}.why-icon{font-size:28px;margin-bottom:12px}.why-card h3{font-size:16px;font-weight:600;margin-bottom:8px;color:var(--text)}.why-card p{font-size:14px;color:var(--text-muted);line-height:1.5}.config-example{text-align:center;max-width:400px;margin:0 auto}.config-example .config-file{margin-bottom:16px}.config-caption{font-size:14px;color:var(--text-muted)}.config-caption code{background:var(--bg-secondary);padding:2px 8px;border-radius:4px;font-family:ui-monospace,SF Mono,Monaco,monospace}.social-proof-section{padding:40px 0;text-align:center}.social-proof-text{color:var(--text-muted);font-size:14px;margin-bottom:16px}.social-proof-badge{height:24px}.social-proof-badges{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.social-proof-badges img{height:24px}.btn-selfhost{display:block;width:100%;background:transparent;color:var(--text);border:1px solid var(--border);padding:12px 20px;border-radius:6px;font-size:14px;font-weight:600;text-decoration:none;text-align:center}.btn-selfhost:hover{background:var(--bg-tertiary);color:var(--text)}.features-section{padding:80px 0;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%)}.features-section h2{font-size:32px;font-weight:700;text-align:center;margin-bottom:12px;color:#0d1117}.features-section .section-subtitle{text-align:center;font-size:18px;color:#0d1117;margin-bottom:48px}.features-grid-landing{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature-card{background:#ffffff1a;border-radius:12px;padding:32px;border:1px solid rgba(255,255,255,.15)}.feature-card h3{font-size:20px;font-weight:700;margin-bottom:16px;color:#0d1117}.feature-card p{font-size:16px;color:#0d1117;line-height:1.7}.quickstart{padding:80px 0}.quickstart h2{font-size:32px;font-weight:700;text-align:center;margin-bottom:48px;color:var(--text)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.step{text-align:center}.step-number{width:48px;height:48px;background:var(--accent);color:var(--bg);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;margin:0 auto 16px}.step h3{font-size:20px;font-weight:600;margin-bottom:12px;color:var(--text)}.step p{font-size:16px;color:var(--text-muted);line-height:1.7}.step code{background:var(--bg-secondary);padding:3px 10px;border-radius:4px;font-family:ui-monospace,SF Mono,Monaco,monospace;font-size:14px}.pricing-section{padding:80px 0;background:var(--bg-secondary)}.pricing-section h2{font-size:32px;font-weight:700;text-align:center;margin-bottom:24px;color:var(--text)}.pricing-toggle{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:48px;font-size:14px;color:var(--text-muted)}.pricing-toggle span.active{color:var(--text);font-weight:600}.toggle-switch{width:48px;height:26px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:13px;cursor:pointer;position:relative;padding:0}.toggle-knob{position:absolute;top:3px;left:3px;width:18px;height:18px;background:var(--accent);border-radius:50%;transition:left .2s}.toggle-knob.yearly{left:25px}.save-badge{background:var(--accent);color:var(--bg);font-size:11px;font-weight:700;padding:2px 6px;border-radius:4px;margin-left:4px}.pricing-subtitle{text-align:center;color:var(--text-muted);margin-bottom:48px}.pricing-grid-landing{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:900px;margin:0 auto;align-items:stretch}.plan-card{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:32px 28px;display:flex;flex-direction:column}.plan-card.featured{border:2px solid var(--accent);position:relative}.plan-card.featured:before{content:"Popular";position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--accent);color:var(--bg);font-size:12px;font-weight:700;padding:4px 12px;border-radius:12px}.plan-name{font-size:18px;font-weight:600;margin-bottom:8px;color:var(--text)}.plan-price{font-size:40px;font-weight:700;color:var(--text)}.plan-price .period{font-size:16px;font-weight:400;color:var(--text-muted)}.plan-price .old-price{color:var(--text-muted);font-size:24px;margin-right:8px;text-decoration:line-through}.plan-note{font-size:14px;color:var(--text-muted);margin-bottom:24px;min-height:22px}.plan-features-list{list-style:none;flex:1}.plan-features-list li{padding:12px 0;font-size:15px;color:var(--text);border-top:1px solid var(--border);display:flex;align-items:center;gap:10px}.plan-features-list li:before{content:"✓";color:var(--accent);font-weight:700;font-size:14px}.plan-cta{margin-top:auto;padding-top:24px}.btn-pro{width:100%;background:var(--accent);color:var(--bg);border:none;padding:12px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer}.btn-pro:hover{background:var(--accent-hover)}.btn-pro:disabled{opacity:.6;cursor:not-allowed}.pro-status{text-align:center;padding:12px;color:var(--accent);font-weight:600}.landing-footer{background:var(--bg-tertiary);border-top:1px solid var(--border);padding:48px 24px}.footer-inner{max-width:900px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.footer-brand{font-size:18px;font-weight:700;color:var(--accent)}.footer-links{display:flex;gap:24px}.footer-links a{color:var(--text-muted);font-size:14px;text-decoration:none}.footer-links a:hover{color:var(--text)}.footer-copy{text-align:center;margin-top:32px;padding-top:24px;border-top:1px solid var(--border);color:var(--text-muted);font-size:13px;max-width:900px;margin-left:auto;margin-right:auto}.repos-page{max-width:1000px;margin:0 auto}.repos-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.repos-header h2{font-size:1.5rem;font-weight:600}.add-repo-buttons{display:flex;gap:.5rem}.btn-add-repo{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:.5rem}.btn-add-repo:hover{background:var(--bg-tertiary);border-color:var(--accent)}.btn-add-repo.gitlab{border-color:#fc6d26}.btn-add-repo.gitlab:hover{border-color:#fc6d26;background:#fc6d261a}.forge-badge{text-transform:capitalize;font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:4px;background:var(--bg-tertiary)}td.forge-icon{width:40px;text-align:center}img.forge-icon{width:28px;height:28px;vertical-align:middle}img.forge-icon.github{filter:invert(1)}.forge-text{font-size:.75rem;text-transform:uppercase;color:var(--text-muted)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:1.5rem;width:90%;max-width:500px;max-height:80vh;overflow-y:auto;position:relative}.modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;color:var(--text-muted);font-size:1.25rem;cursor:pointer;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px}.modal-close:hover{background:var(--bg);color:var(--text)}.modal h2{font-size:1.25rem;font-weight:600;margin-bottom:1rem}.modal-desc{color:var(--text-muted);margin-bottom:1.5rem;line-height:1.6}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.modal-actions button{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer}.modal-actions button:not(.primary){background:transparent;border:1px solid var(--border);color:var(--text)}.modal-actions button:not(.primary):hover{background:var(--bg)}.modal-actions button.primary{background:var(--accent);border:none;color:#fff}.modal-actions button.primary:hover{background:var(--accent-hover)}.modal-actions button:disabled{opacity:.5;cursor:not-allowed}.project-list{max-height:300px;overflow-y:auto;border:1px solid var(--border);border-radius:6px}.project-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid var(--border)}.project-item:last-child{border-bottom:none}.project-item:hover{background:var(--bg)}.project-item.selected{background:var(--accent-light);border-color:var(--accent)}.project-name{font-weight:500}.project-visibility{font-size:.75rem;color:var(--text-muted);text-transform:capitalize}.token-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.token-option{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:var(--bg);border:1px solid var(--border);border-radius:6px;cursor:pointer}.token-option:hover{border-color:var(--accent)}.token-option input[type=radio]{margin-top:2px}.token-option span{line-height:1.4}.manual-token-input{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:1rem;margin-top:1rem}.manual-token-input p{margin-bottom:.75rem;font-size:.875rem}.manual-token-input a{color:var(--accent)}.token-instructions{color:var(--text-muted);font-size:.8rem}.token-instructions code{background:var(--bg-secondary);padding:.1rem .3rem;border-radius:3px}.manual-token-input input{width:100%;background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;padding:.5rem .75rem;color:var(--text);font-family:ui-monospace,SF Mono,Monaco,monospace;font-size:.875rem}.manual-token-input input:focus{outline:none;border-color:var(--accent)}.oauth-warning{background:#d299221a;border:1px solid var(--warning);border-radius:6px;padding:.75rem 1rem;margin-top:1rem;font-size:.875rem;color:var(--warning)}.error-msg{background:#f851491a;border:1px solid var(--failure);border-radius:6px;padding:.75rem 1rem;margin:1rem 0;font-size:.875rem;color:var(--failure)}.modal.modal-large{max-width:600px}.modal-subtitle{color:var(--text-muted);font-size:.875rem;margin-bottom:1rem}.project-actions{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.btn-small{background:var(--bg);border:1px solid var(--border);color:var(--text-muted);padding:.25rem .5rem;border-radius:4px;font-size:.75rem;cursor:pointer}.btn-small:hover{color:var(--text);border-color:var(--accent)}.selection-count{margin-left:auto;font-size:.75rem;color:var(--text-muted)}.project-item.checkbox{gap:.75rem;justify-content:flex-start}.project-item.checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.project-item.checkbox .project-name{flex:1}.setup-progress{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.75rem 1rem;margin-top:1rem;font-size:.875rem;color:var(--text-muted);text-align:center}.onboard-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg)}.onboard-container{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:2rem;width:100%;max-width:600px}.onboard-container h1{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.onboard-container>p{color:var(--text-muted);margin-bottom:1.5rem}.onboard-list{max-height:400px}.onboard-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.onboard-actions button{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer}.onboard-actions button:not(.primary){background:transparent;border:1px solid var(--border);color:var(--text)}.onboard-actions button:not(.primary):hover{background:var(--bg)}.onboard-actions button.primary{background:var(--accent);border:none;color:#fff}.onboard-actions button.primary:hover{background:var(--accent-hover)}.onboard-actions button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.hero{padding:100px 0 48px}.hero h1{font-size:28px;line-height:1.3}.hero .tagline{font-size:16px}.command-showcase{padding:20px;width:100%}.command-showcase pre{font-size:12px}.install-row{flex-direction:column;gap:16px}.install-box{flex-direction:column;gap:8px;width:100%}.install-cmd{font-size:12px;word-break:break-all}.demo-link{margin-top:0}.forge-logos{gap:12px}.steps-row{flex-direction:column;align-items:center}.step-arrow{transform:rotate(90deg);padding:0}.step-card{width:100%;max-width:280px}.why-grid{grid-template-columns:repeat(2,1fr);gap:12px}.why-card{padding:16px}.why-icon{font-size:24px}.why-card h3{font-size:14px}.why-card p{font-size:13px}.features-grid-landing,.steps,.pricing-grid-landing{grid-template-columns:1fr}.footer-inner{flex-direction:column;gap:24px;text-align:center}}.account-page{max-width:800px;margin:0 auto;padding:2rem}.account-page h2{margin-bottom:2rem}.account-section{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.account-section h3{font-size:1.1rem;margin-bottom:1rem}.section-desc{color:var(--text-muted);font-size:.9rem;margin-bottom:1rem}.profile-info{display:flex;flex-direction:column;gap:.75rem}.profile-row{display:flex;gap:1rem}.profile-label{color:var(--text-muted);min-width:120px}.profile-value{font-weight:500}.tier-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.85rem;font-weight:600;text-transform:uppercase}.tier-free{background:var(--bg);border:1px solid var(--border);color:var(--text-muted)}.tier-pro{background:var(--success);color:var(--bg)}.upgrade-cta{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border);text-align:center}.btn-give-me-pro{background:var(--success);color:var(--bg);border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s}.btn-give-me-pro:hover{opacity:.9}.btn-give-me-pro:disabled{opacity:.6;cursor:not-allowed}.upgrade-desc{margin-top:.75rem;color:var(--text-muted);font-size:.85rem}.connected-forges{display:flex;flex-direction:column;gap:1rem}.forge-row{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:var(--bg);border:1px solid var(--border);border-radius:6px}.forge-info{display:flex;align-items:center;gap:1rem}.forge-details{display:flex;flex-direction:column}.forge-name{font-weight:500}.forge-username{color:var(--text-muted);font-size:.85rem}.forge-connected{color:var(--text-muted);font-size:.8rem}.btn-disconnect{background:transparent;border:1px solid var(--border);color:var(--text-muted);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.85rem}.btn-disconnect:hover{border-color:var(--failure);color:var(--failure)}.btn-disconnect:disabled{opacity:.5;cursor:not-allowed}.add-forge{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border);display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.add-forge span{color:var(--text-muted);font-size:.9rem}.add-forge-buttons{display:flex;gap:.5rem}.btn-add-forge{background:transparent;border:1px solid var(--accent);color:var(--accent);padding:.4rem .8rem;border-radius:6px;font-size:.85rem;text-decoration:none}.btn-add-forge:hover{background:var(--accent);color:#fff}.danger-zone{border-color:var(--failure)}.danger-zone h3{color:var(--failure)}.danger-action{display:flex;justify-content:space-between;align-items:center;gap:1rem}.danger-action p{color:var(--text-muted);font-size:.9rem;margin-top:.25rem}.btn-danger{background:var(--failure);border:none;color:#fff;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-weight:500}.btn-danger:hover{background:#d73a49}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.delete-confirm{background:#f851491a;padding:1rem;border-radius:6px}.delete-confirm p{margin-bottom:.5rem}.confirm-actions{display:flex;gap:1rem;margin-top:1rem}.confirm-actions button{padding:.5rem 1rem;border-radius:6px;cursor:pointer}.confirm-actions button:first-child{background:transparent;border:1px solid var(--border);color:var(--text)}.user-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:.875rem}.user-btn:hover{color:var(--accent)}.forge-selector-modal{max-width:400px;text-align:center}.forge-selector-modal h2{margin-bottom:.5rem}.modal-subtitle{color:var(--text-muted);margin-bottom:2rem}.forge-options{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.forge-option{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;text-decoration:none;color:var(--text);font-size:1.1rem;font-weight:500;transition:border-color .15s,background .15s}.forge-option:hover{border-color:var(--accent);background:var(--accent-light)}.forge-option-icon{width:28px;height:28px}.forge-option-icon.github{filter:invert(1)}.forge-note{color:var(--text-muted);font-size:.85rem}.success-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg)}.success-container{max-width:600px;width:100%}.success-header{text-align:center;margin-bottom:2.5rem}.success-icon{width:64px;height:64px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;margin:0 auto 1.5rem}.success-header h1{color:var(--text);margin-bottom:.5rem}.success-header p{color:var(--text-muted);font-size:1.1rem}.setup-steps{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2.5rem}.setup-step{display:flex;gap:1rem;background:var(--bg-lighter);border:1px solid var(--border);border-radius:8px;padding:1.25rem}.step-number{width:32px;height:32px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;flex-shrink:0}.step-content{flex:1}.step-content h3{color:var(--text);margin-bottom:.75rem;font-size:1rem}.step-content .code-block{display:flex;align-items:center;gap:.75rem;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.75rem 1rem;margin-bottom:.5rem}.step-content .code-block code{flex:1;font-family:SF Mono,Monaco,Consolas,monospace;font-size:.875rem;color:var(--text)}.step-content .yaml-block{background:var(--bg)}.copy-btn{background:var(--accent);border:none;color:#fff;padding:.35rem .75rem;border-radius:4px;font-size:.75rem;cursor:pointer;transition:opacity .15s}.copy-btn:hover{opacity:.9}.step-note{color:var(--text-muted);font-size:.875rem;margin-top:.5rem}.step-note code{background:var(--bg);padding:.15rem .35rem;border-radius:3px;font-size:.8rem}.success-actions{text-align:center}.success-actions .btn-primary{background:var(--accent);border:none;color:#fff;padding:.875rem 2rem;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:opacity .15s}.success-actions .btn-primary:hover{opacity:.9}.repo-jobs{padding:2rem;max-width:1200px;margin:0 auto}.repo-jobs-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.repo-jobs-header .repo-info{display:flex;align-items:center;gap:.75rem}.repo-jobs-header h2{font-size:1.5rem;font-weight:600}.repo-jobs-header .forge-link{font-size:.875rem;color:var(--text-muted)}.repo-jobs-header .forge-link:hover{color:#58a6ff}.jobs-filters{display:flex;gap:.75rem;margin-bottom:1rem}.jobs-filters select{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text);padding:.5rem .75rem;border-radius:6px;font-size:.875rem;cursor:pointer}.jobs-filters select:hover{border-color:var(--text-muted)}.private-badge{display:inline-block;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-muted);font-size:.75rem;padding:.125rem .5rem;border-radius:4px;margin-left:.5rem}.workers table th:first-child,.workers table td:first-child{width:60px;text-align:center}.status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--text-muted)}.status-dot.connected{background:var(--success)}.status-dot.disconnected{background:var(--text-muted)}.worker-name{font-weight:500}.worker-version{color:var(--text-muted);font-size:.75rem;margin-left:.5rem}.badge{display:inline-block;padding:.125rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.badge.mode-personal{background:#58a6ff26;color:#58a6ff}.badge.mode-shared{background:#8b5cf626;color:#a78bfa}.job-link{font-family:ui-monospace,SF Mono,Monaco,monospace;font-size:.8rem}.idle{color:var(--text-muted)}.worker-actions{display:flex;gap:.5rem}.btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.875rem}.btn:hover{border-color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.btn-small{padding:.25rem .5rem;font-size:.75rem}.btn.btn-danger{border-color:var(--failure);color:var(--failure)}.btn.btn-danger:hover{background:#f851491a}
