:root{--bg:#0b0b10;--bg-raised:#14141c;--bg-hover:#1b1b26;--border:#262636;--text:#ececf1;--text-dim:#9a9aad;--accent:#8b5cf6;--accent-strong:#7c3aed;--accent-soft:rgba(139,92,246,0.14);--green:#34d399;--red:#f87171;--amber:#fbbf24;--radius:12px}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{line-height:1.2;font-weight:700}.container{max-width:1080px;margin:0 auto;padding:0 24px}.btn{display:inline-flex;align-items:center;gap:8px;background:var(--accent-strong);color:#fff;border:none;border-radius:10px;padding:10px 20px;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s;text-decoration:none!important}.btn:hover{background:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.secondary{background:var(--bg-hover);color:var(--text);border:1px solid var(--border)}.btn.secondary:hover{background:var(--border)}.btn.small{padding:6px 14px;font-size:13px}.btn.danger{background:transparent;color:var(--red)}.btn.danger,.card{border:1px solid var(--border)}.card{background:var(--bg-raised);border-radius:var(--radius);padding:20px}input[type=email],input[type=text],select,textarea{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:10px 14px;font-size:15px;font-family:inherit}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}textarea{resize:vertical;min-height:120px}label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}.muted,label{color:var(--text-dim)}.error-text,.muted{font-size:14px}.error-text{color:var(--red)}.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;background:var(--accent-soft);color:var(--accent)}.badge.green{background:rgba(52,211,153,.12);color:var(--green)}.badge.red{background:rgba(248,113,113,.12);color:var(--red)}.badge.amber{background:rgba(251,191,36,.12);color:var(--amber)}.nav{justify-content:space-between;padding:16px 0}.nav,.nav .links{display:flex;align-items:center}.nav .links{gap:22px}.nav a{color:var(--text-dim);font-size:14px;font-weight:500}.nav a:hover{color:var(--text);text-decoration:none}.logo{font-weight:800;font-size:18px;color:var(--text)!important;letter-spacing:-.02em}.logo span{color:var(--accent)}.grid{display:grid;grid-gap:16px;gap:16px}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-2{grid-template-columns:repeat(2,1fr)}@media (max-width:800px){.grid.cols-2,.grid.cols-3{grid-template-columns:1fr}}.scene-strip{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px}.scene-card{min-width:180px;max-width:180px}.scene-card img{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:8px;border:2px solid transparent;cursor:pointer}.scene-card img.selected{border-color:var(--accent)}.progress-track{height:8px;background:var(--bg-hover);border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:var(--accent);border-radius:999px;transition:width .6s ease}table.data{width:100%;border-collapse:collapse;font-size:14px}table.data td,table.data th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border)}table.data th{color:var(--text-dim);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.spinner{display:inline-block;width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}