*{box-sizing:border-box}body{margin:0;font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:#0b0f14;color:#f2f2f2}.page{max-width:860px;margin:0 auto;padding:32px 24px 80px}.page-header{justify-content:space-between;margin-bottom:24px}.auth-page,.page-header{display:flex;align-items:center}.auth-page{min-height:100vh;justify-content:center}.auth-card{width:340px;display:flex;flex-direction:column;gap:14px;padding:32px;border-radius:16px;background:#11161d;border:1px solid rgba(255,255,255,.08)}.auth-card label,.job-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;color:rgba(255,255,255,.75);margin-bottom:12px}input,textarea{background:#0b0f14;border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:10px 12px;color:#fff;font-size:14px}textarea{min-height:70px;resize:vertical}.primary-button,button{background:#3b6ea5;color:#fff;border:none;border-radius:8px;padding:12px 20px;font-size:15px;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block}.secondary-button{background:transparent;color:rgba(255,255,255,.85);border:1px solid rgba(255,255,255,.25)}.link-button{background:none;color:rgba(255,255,255,.6);padding:0;font-size:13px;text-decoration:underline}fieldset{border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:20px;margin-bottom:20px}legend{padding:0 8px;font-weight:700;color:#3b6ea5}.radio-row{flex-direction:row!important;align-items:center;gap:8px!important}.field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:0 16px;gap:0 16px}.wizard-steps{display:flex;list-style:none;padding:0;margin:0 0 28px;gap:4px}.wizard-step{flex:1 1;display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;font-size:13px;color:rgba(255,255,255,.4);background:#11161d;border:1px solid rgba(255,255,255,.08)}.wizard-step-index{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.1);font-size:12px;font-weight:700;flex-shrink:0}.wizard-step.active{color:#fff;border-color:#3b6ea5;background:rgba(59,110,165,.15)}.wizard-step.active .wizard-step-index{background:#3b6ea5;color:#fff}.wizard-step.done{color:rgba(255,255,255,.75)}.wizard-step.done .wizard-step-index{background:rgba(76,175,80,.35);color:#fff}.wizard-nav{display:flex;align-items:center;margin-top:8px}.wizard-nav-spacer{flex:1 1}.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px}.photo-slot{border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:14px;background:#0e1319}.photo-slot span{font-weight:600;color:#fff}.photo-slot small{color:rgba(255,255,255,.45)}.photo-slot-filled{border-color:rgba(76,175,80,.5);background:rgba(76,175,80,.06)}.photo-slot-filename{color:#8bc98f!important;word-break:break-all}.error{color:#ff6b6b;font-size:14px}.job-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:10px}.job-list a{display:flex;justify-content:space-between;padding:14px 16px;border-radius:10px;background:#11161d;color:#fff;text-decoration:none}.status{font-size:12px;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:rgba(255,255,255,.1)}.status-done{background:rgba(76,175,80,.25)}.status-failed{background:rgba(255,107,107,.25)}.status-pending,.status-rendering{background:rgba(59,110,165,.3)}