body{margin:0;background:linear-gradient(180deg,#7551c2,#fff);font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;min-height:100vh;width:100vw;justify-content:center;padding:20px;box-sizing:border-box}body,main{display:flex}main{flex-direction:column;align-items:stretch;max-width:800px;width:100%;background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 20px rgba(0,0,0,.15)}.app-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e0e0e0}.app-header h1{margin:0;font-size:1.5rem;color:#333}.user-info{display:flex;align-items:center;gap:12px;font-size:.9rem;color:#666}.user-info .groups{color:#888;font-size:.8rem}.sign-out-btn{padding:.4em .8em;font-size:.85em}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s,background-color .25s;color:#fff}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}button:disabled{opacity:.6;cursor:not-allowed}.delete-btn{background-color:#dc3545}.delete-btn:hover{background-color:#c82333}.run-button{background-color:#28a745;font-size:1.1em;padding:.8em 2em;margin-top:16px}.run-button:hover{background-color:#218838}section{margin-bottom:24px}section h2{font-size:1.1rem;color:#333;margin:0 0 12px}section h3{font-size:1rem;color:#333;margin:0 0 16px}.account-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.account-controls select{flex:1 1;min-width:200px;padding:8px 12px;font-size:1em;border:1px solid #ccc;border-radius:6px;background:#fff}.no-accounts,.no-groups{background:#f8f9fa;padding:20px;border-radius:8px;text-align:center}.no-accounts p,.no-groups p{margin:0 0 12px;color:#666}.config-form,.pipeline-form{background:#f8f9fa;padding:20px;border-radius:8px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#333;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;font-size:1em;border:1px solid #ccc;border-radius:6px;background:#fff;box-sizing:border-box;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 3px rgba(100,108,255,.1)}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:flex;gap:16px}.form-row .form-group{flex:1 1}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}fieldset{border:1px solid #ddd;border-radius:8px;padding:16px;margin:0 0 16px;background:#fff}fieldset legend{font-weight:600;color:#333;padding:0 8px;font-size:.95rem}.step-selection{display:flex;flex-wrap:wrap;gap:16px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:400}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.result{margin-top:20px;padding:16px;border-radius:8px}.result.success{background:#d4edda;border:1px solid #c3e6cb}.result.error{background:#f8d7da;border:1px solid #f5c6cb}.result h4{margin:0 0 8px;font-size:1rem}.result p{margin:0 0 12px}.result pre{background:rgba(0,0,0,.05);padding:12px;border-radius:6px;overflow-x:auto;font-size:.85rem;margin:8px 0 0}.result details summary{cursor:pointer;font-weight:500;color:#333}.error-message{background:#f8d7da;color:#721c24;padding:12px;border-radius:6px;margin-bottom:16px;border:1px solid #f5c6cb}