:root{--bg-color: #0d0d12;--sidebar-bg: #16161e;--card-bg: #1e1e28;--text-primary: #ffffff;--text-secondary: #a0a0b0;--accent-color: #6c5ce7;--accent-hover: #5b4cc4;--border-color: #2d2d3a;--glass-bg: rgba(30, 30, 40, .6);--glass-border: 1px solid rgba(255, 255, 255, .1);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--font-family: "Inter", system-ui, -apple-system, sans-serif}body{margin:0;font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-primary);height:100vh;overflow:hidden}#root{height:100%}.app-container{display:flex;height:100%}.sidebar{width:250px;background-color:var(--sidebar-bg);border-right:1px solid var(--border-color);display:flex;flex-direction:column;padding:1rem;gap:.5rem}.logo{font-size:1.5rem;font-weight:700;color:var(--accent-color);margin-bottom:2rem;letter-spacing:-.5px}.sidebar button{background:transparent;border:none;color:var(--text-secondary);text-align:left;padding:.75rem 1rem;cursor:pointer;border-radius:8px;transition:all .2s;font-size:.95rem}.sidebar button:hover{background:#ffffff0d;color:var(--text-primary)}.sidebar button.active{background:var(--accent-color);color:#fff;box-shadow:0 4px 12px #6c5ce74d}.spacer{flex:1}.user-info{padding:1rem;background:#0003;border-radius:8px;display:flex;flex-direction:column}.user-info span{font-weight:600}.user-info small{color:var(--text-secondary);font-size:.8rem}.content{flex:1;display:flex;flex-direction:column;padding:2rem;overflow-y:auto;background:radial-gradient(circle at top right,#1d1d26 0%,transparent 40%)}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}header h1{margin:0;font-size:2rem;font-weight:600}.primary-btn{background-color:var(--accent-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:.2s}.primary-btn:hover{background-color:var(--accent-hover);transform:translateY(-1px)}.view-container{display:grid;gap:1.5rem}.card{background:var(--glass-bg);border:var(--glass-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:16px;padding:1.5rem;box-shadow:var(--glass-shadow)}.card h2{margin-top:0;font-size:1.25rem}.card p{line-height:1.5}.pipeline-container{display:flex;flex-direction:column;gap:1.5rem;max-width:800px;margin:0 auto}.pipeline-step{background:var(--glass-bg);border:var(--glass-border);border-radius:12px;padding:1.5rem;position:relative;overflow:hidden}.step-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.step-icon{font-size:1.5rem;background:#ffffff1a;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%}.step-content{padding-left:3.5rem}.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.config-grid label{display:flex;align-items:center;gap:.5rem;cursor:pointer;background:#0003;padding:.5rem 1rem;border-radius:6px;transition:background .2s}.config-grid label:hover{background:#0000004d}.select-input,.input-small{background:#0000004d;border:1px solid var(--border-color);color:#fff;padding:.5rem;border-radius:6px;width:100%}.file-drop{border:2px dashed var(--border-color);padding:2rem;text-align:center;border-radius:8px;transition:border-color .2s}.file-drop:hover{border-color:var(--accent-color)}.selected-file{color:var(--accent-color);margin-top:.5rem;font-weight:600}.pipeline-footer{text-align:center;margin-top:2rem;padding-bottom:4rem}.primary-btn.large{font-size:1.2rem;padding:1rem 3rem;box-shadow:0 4px 20px #6c5ce766}.cost-estimate{background:#2dffc41a;border:1px solid rgba(45,255,196,.3);color:#2dffc4;padding:1rem;border-radius:8px;display:inline-flex;align-items:center;gap:1rem;margin-bottom:1.5rem;font-size:1.1rem}.cost-estimate .price{font-weight:700;font-size:1.4rem}.tabs{display:flex;gap:.5rem;margin-bottom:1rem;background:#0003;padding:.25rem;border-radius:8px;width:fit-content}.tabs button{background:transparent;border:none;color:var(--text-secondary);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-weight:600;transition:all .2s}.tabs button.active{background:var(--accent-color);color:#fff;box-shadow:0 2px 8px #0003}.text-input,.text-area{background:#0000004d;border:1px solid var(--border-color);color:#fff;padding:.75rem;border-radius:8px;width:100%;font-family:inherit;box-sizing:border-box}.text-input:focus,.text-area:focus{outline:none;border-color:var(--accent-color);background:#0006}.col-1{grid-template-columns:1fr!important}
