.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--gray-50)}.auth-card{width:100%;max-width:420px;background:var(--white);border:1px solid var(--gray-200);border-radius:16px;padding:48px 40px}.auth-brand{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gray-400);margin-bottom:20px}.auth-title{font-size:1.75rem;font-weight:600;letter-spacing:-.02em;color:var(--black)}.auth-sub{font-size:.875rem;color:var(--gray-400);margin-top:4px;margin-bottom:32px}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field label{font-size:.8125rem;font-weight:500;color:var(--gray-600)}.auth-field input{width:100%;padding:11px 14px;border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-size:.9375rem;background:var(--white);outline:none;transition:border-color var(--transition)}.auth-field input::placeholder{color:var(--gray-400)}.auth-field input:focus{border-color:var(--black)}.auth-error{font-size:.8125rem;color:#e5323b;background:#fff5f5;border-radius:var(--radius-sm);padding:10px 12px}.auth-btn{width:100%;padding:12px;background:var(--black);color:var(--white);border-radius:var(--radius-sm);font-size:.9375rem;font-weight:500;margin-top:4px;transition:opacity var(--transition)}.auth-btn:hover:not(:disabled){opacity:.82}.auth-btn:disabled{opacity:.45;cursor:not-allowed}.auth-switch{text-align:center;font-size:.8125rem;color:var(--gray-400);margin-top:24px}.auth-switch a{color:var(--black);font-weight:500;text-decoration:underline;text-underline-offset:2px}.loading-screen{display:flex;align-items:center;justify-content:center;height:100vh;font-size:.875rem;color:var(--gray-400)}.pipe-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--white)}.pipe-loading-inner{text-align:center;width:400px;max-width:calc(100vw - 48px)}.pipe-loading-stage{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-400);margin-bottom:32px}.pipe-pct{font-size:5rem;font-weight:600;letter-spacing:-.05em;color:var(--black);margin-bottom:28px;font-variant-numeric:tabular-nums;line-height:1}.pipe-pct-sign{font-size:2.5rem;font-weight:500;letter-spacing:0;color:var(--gray-400)}.pipe-progress-bar{height:6px;background:var(--gray-100);border-radius:3px;overflow:hidden;margin-bottom:16px}.pipe-progress-fill{height:100%;background:var(--black);border-radius:3px;transition:width 1.2s ease}.pipe-loading-time{font-size:.875rem;color:var(--gray-600);margin-bottom:6px}.pipe-loading-hint{font-size:.8125rem;color:var(--gray-400)}.pipe-page{min-height:100vh;padding:48px 40px;max-width:1200px;margin:0 auto}.pipe-top{margin-bottom:48px}.pipe-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-400);margin-bottom:12px}.pipe-heading{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:600;letter-spacing:-.02em;color:var(--black);margin-bottom:12px}.pipe-heading em{font-style:normal;color:var(--gray-600)}.pipe-sub{font-size:.9375rem;color:var(--gray-600)}.pipe-directions{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media(max-width:900px){.pipe-directions{grid-template-columns:1fr}}.pipe-direction-card{border:1px solid var(--gray-200);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.pipe-direction-name{padding:16px 20px 12px;font-size:.875rem;font-weight:500;color:var(--black);border-bottom:1px solid var(--gray-100)}.pipe-direction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--gray-100);flex:1}.pipe-direction-grid img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.pipe-select-btn{padding:14px 20px;font-size:.875rem;font-weight:500;color:var(--black);border-top:1px solid var(--gray-200);transition:background var(--transition);text-align:left}.pipe-select-btn:hover:not(:disabled){background:var(--gray-50)}.pipe-select-btn:disabled{opacity:.4;cursor:not-allowed}.pipe-renders{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:32px}@media(max-width:900px){.pipe-renders{grid-template-columns:repeat(2,1fr)}}.pipe-render-card{position:relative;border:2px solid var(--gray-200);border-radius:10px;overflow:hidden;transition:border-color var(--transition);cursor:pointer;background:none}.pipe-render-card:hover{border-color:var(--gray-600)}.pipe-render-card--selected{border-color:var(--black)!important}.pipe-render-card img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.pipe-render-num{position:absolute;bottom:8px;left:8px;width:24px;height:24px;border-radius:50%;background:#0000008c;color:#fff;font-size:.75rem;font-weight:600;display:flex;align-items:center;justify-content:center}.pipe-confirm-row{display:flex;justify-content:flex-start}.pipe-confirm-btn{padding:14px 28px;background:var(--black);color:var(--white);border-radius:var(--radius);font-size:.9375rem;font-weight:500;transition:opacity var(--transition)}.pipe-confirm-btn:hover:not(:disabled){opacity:.8}.pipe-confirm-btn:disabled{opacity:.35;cursor:not-allowed}.pipe-result-actions{display:flex;gap:12px;align-items:center;margin-top:20px;flex-wrap:wrap}.pipe-download-btn{display:inline-block;padding:13px 28px;background:var(--black);color:var(--white);border-radius:var(--radius);font-size:.9375rem;font-weight:500;transition:opacity var(--transition)}.pipe-download-btn:hover{opacity:.8}.pipe-new-btn{padding:13px 24px;border:1.5px solid var(--gray-200);border-radius:var(--radius);font-size:.9375rem;font-weight:500;color:var(--black);transition:border-color var(--transition),background var(--transition)}.pipe-new-btn:hover{border-color:var(--black);background:var(--gray-50)}.pipe-section-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-400);margin:40px 0 16px}.pipe-toggle-process{margin-top:40px;font-size:.875rem;color:var(--gray-600);text-decoration:underline;text-underline-offset:3px;transition:color var(--transition)}.pipe-toggle-process:hover{color:var(--black)}.pipe-process{margin-top:8px}.pipe-direction-card--selected{border-color:var(--black);box-shadow:0 0 0 2px var(--black)}.pipe-chosen-tag{color:var(--gray-400);font-weight:400}.pipe-renders--wide{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.pipe-render-card--static{cursor:default;border-color:var(--gray-200)}.pipe-slides{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.pipe-slide{position:relative;border-radius:10px;overflow:hidden;border:1px solid var(--gray-200)}.pipe-slide img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover}.pipe-slide-num{position:absolute;top:8px;left:8px;background:#00000080;color:#fff;font-size:.7rem;font-weight:600;padding:3px 7px;border-radius:4px}.pipe-error-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:24px}.pipe-error-title{font-size:1.25rem;font-weight:600}.pipe-error-msg{font-size:.875rem;color:var(--gray-600);max-width:480px}.pipe-error-page button{margin-top:8px;font-size:.875rem;color:var(--gray-600);text-decoration:underline;text-underline-offset:2px}.home{min-height:100vh;display:flex;flex-direction:column}.home-header{display:flex;justify-content:space-between;align-items:center;padding:20px 32px;border-bottom:1px solid var(--gray-200)}.home-brand{font-size:.9375rem;font-weight:600;letter-spacing:-.01em}.home-brand span{font-weight:400;color:var(--gray-400);margin-left:4px}.home-logout{font-size:.8125rem;color:var(--gray-400);transition:color var(--transition)}.home-logout:hover{color:var(--black)}.home-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.home-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:600;letter-spacing:-.03em;line-height:1.1;color:var(--black);margin-bottom:16px}.home-sub{font-size:1rem;color:var(--gray-600);margin-bottom:40px}.home-form{display:flex;gap:0;width:100%;max-width:540px}.home-input{flex:1;padding:16px 20px;border:1.5px solid var(--gray-200);border-right:none;border-radius:var(--radius) 0 0 var(--radius);font-size:1rem;outline:none;transition:border-color var(--transition);background:var(--white)}.home-input:focus{border-color:var(--black)}.home-input::placeholder{color:var(--gray-400)}.home-input:disabled{opacity:.5}.home-btn{padding:16px 24px;background:var(--black);color:var(--white);border-radius:0 var(--radius) var(--radius) 0;font-size:1.25rem;transition:opacity var(--transition);min-width:64px}.home-btn:hover:not(:disabled){opacity:.8}.home-btn:disabled{opacity:.35;cursor:not-allowed}.home-error{margin-top:16px;font-size:.875rem;color:#e5323b}.home-note{margin-top:20px;font-size:.8125rem;color:var(--gray-400)}.home-sessions{margin-top:48px;width:100%;max-width:540px;text-align:left}.home-sessions-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-400);margin-bottom:12px}.home-session-item{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--gray-100);text-decoration:none;cursor:pointer}.home-session-item:first-of-type{border-top:1px solid var(--gray-100)}.home-session-item:hover .home-session-name{text-decoration:underline;text-underline-offset:3px}.home-session-name{font-size:.9375rem;font-weight:500;color:var(--black)}.home-session-meta{display:flex;align-items:center;gap:12px;flex-shrink:0}.home-session-date{font-size:.8125rem;color:var(--gray-400)}.home-session-badge{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:3px 8px;border-radius:20px}.home-session-badge--done{background:#f0fdf4;color:#16a34a}.home-session-badge--error{background:#fef2f2;color:#dc2626}.home-session-badge--paused{background:#fefce8;color:#ca8a04}.home-session-badge--running{background:var(--gray-100);color:var(--gray-600)}:root{--font: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--black: #0a0a0a;--white: #ffffff;--gray-50: #f9f9f9;--gray-100: #f2f2f2;--gray-200: #e5e5e5;--gray-400: #a0a0a0;--gray-600: #6b6b6b;--gray-800: #2a2a2a;--radius: 10px;--radius-sm: 6px;--transition: .18s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased}body{font-family:var(--font);background:var(--white);color:var(--black);min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:var(--font);cursor:pointer;border:none;background:none;color:inherit}input{font-family:var(--font);color:var(--black)}#root{min-height:100vh;display:flex;flex-direction:column}
