:root{--bg: #0d0c0a;--panel: #17150f;--panel-raised: #1e1b14;--ink: #f2eee3;--ink-dim: #a79c87;--tungsten: #e8a23a;--daylight: #6fa8c9;--ember: #d1553a;--line: rgba(242, 238, 227, .12);--line-strong: rgba(242, 238, 227, .22);--font-display: "Bebas Neue", sans-serif;--font-mono: "Courier Prime", "Courier New", monospace;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);position:relative;min-height:100vh}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.app-shell{max-width:960px;margin:0 auto;padding:0 20px 64px;position:relative}.sprocket-rule{height:10px;margin:0 -20px;background-image:repeating-linear-gradient(to right,var(--line) 0 3px,transparent 3px 14px);position:relative;overflow:hidden}.sprocket-rule:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;width:30%;background-image:linear-gradient(90deg,transparent,var(--tungsten),transparent);transform:translate(-100%);opacity:0}.sprocket-rule.is-rolling:after{opacity:.85;animation:sprocket-travel 1.4s linear infinite}@keyframes sprocket-travel{to{transform:translate(430%)}}@media (prefers-reduced-motion: reduce){.sprocket-rule.is-rolling:after{animation:none;opacity:.4}}.header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:22px 0 18px}.logo-link{background:none;border:none;padding:0;cursor:pointer;border-radius:4px}.verify-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;background:#e8a23a1a;border:1px solid var(--tungsten);border-radius:4px;padding:10px 14px;margin-bottom:16px;font-size:13px;color:var(--ink)}.verify-banner .link-btn{color:var(--tungsten);white-space:nowrap}.logo-link:hover .logo-word{filter:brightness(1.15)}.logo{display:flex;align-items:center;gap:10px}.logo-word{font-family:var(--font-display);font-size:28px;letter-spacing:.04em;color:var(--tungsten);line-height:1}.logo-suffix{color:var(--daylight);font-family:var(--font-mono);font-size:15px;letter-spacing:0;margin-left:2px}.tagline-block{text-align:right}.tagline{margin:0;color:var(--ink);font-size:15px}.tagline-sub{margin:4px 0 0;color:var(--ink-dim);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.mode-tabs{display:flex;gap:8px;margin:22px 0 20px}.mode-tab{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim);background:transparent;border:1px solid var(--line);border-radius:4px;padding:8px 16px;cursor:pointer;transition:border-color .15s ease,color .15s ease}.mode-tab:hover{border-color:var(--line-strong);color:var(--ink)}.mode-tab.is-active{color:var(--bg);background:var(--tungsten);border-color:var(--tungsten)}.director-panel{background:var(--panel-raised);border:1px solid var(--line);border-radius:6px;padding:18px 20px;margin-bottom:20px}.director-form{display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap}.director-form textarea{flex:1 1 320px}.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width: 860px){.studio-grid{grid-template-columns:1fr}}.panel{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:20px;display:flex;flex-direction:column;gap:14px}.panel-eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);display:flex;justify-content:space-between;align-items:baseline}.panel-eyebrow .take{color:var(--tungsten)}textarea,select,input:not([type=checkbox]):not([type=radio]):not([type=submit]){font-family:var(--font-body);font-size:14px;color:var(--ink);background:var(--panel-raised);border:1px solid var(--line);border-radius:4px;padding:10px 12px;width:100%;resize:vertical}textarea:focus-visible,select:focus-visible,input:focus-visible,button:focus-visible{outline:2px solid var(--daylight);outline-offset:2px}.field-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:6px;display:block}.btn{font-family:var(--font-mono);font-size:13px;letter-spacing:.06em;text-transform:uppercase;border-radius:4px;border:1px solid transparent;padding:10px 18px;cursor:pointer;transition:filter .15s ease,opacity .15s ease}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--tungsten);color:var(--bg)}.btn-primary:hover:not(:disabled){filter:brightness(1.1)}.btn-ghost{background:transparent;border-color:var(--line-strong);color:var(--ink)}.btn-ghost:hover:not(:disabled){border-color:var(--daylight);color:var(--daylight)}.status-row{display:flex;align-items:center;gap:10px}.status-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;background:var(--ink-dim)}.status-dot.tone-idle{background:var(--ink-dim)}.status-dot.tone-active{background:var(--tungsten);animation:pulse 1.4s ease-in-out infinite}.status-dot.tone-good{background:var(--daylight)}.status-dot.tone-bad{background:var(--ember)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion: reduce){.status-dot.tone-active{animation:none}}.status-text{display:flex;flex-direction:column;gap:1px}.status-eyebrow{font-family:var(--font-mono);font-size:13px;letter-spacing:.08em;text-transform:uppercase}.status-eyebrow.tone-idle{color:var(--ink-dim)}.status-eyebrow.tone-active{color:var(--tungsten)}.status-eyebrow.tone-good{color:var(--daylight)}.status-eyebrow.tone-bad{color:var(--ember)}.status-sub{font-size:11px;color:var(--ink-dim)}.model-caption{font-family:var(--font-mono);font-size:11px;color:var(--ink-dim);word-break:break-word}.screen{background:#000;border:1px solid var(--line);border-radius:4px;min-height:260px;display:flex;align-items:center;justify-content:center;overflow:hidden}.screen img,.screen video{width:100%;height:100%;max-height:420px;object-fit:contain}.screen-empty{text-align:center;color:var(--ink-dim);padding:32px}.screen-empty .play-glyph{font-family:var(--font-display);font-size:32px;color:var(--line-strong);display:block;margin-bottom:8px}.screen-empty p{margin:2px 0;font-size:13px}.character-grid,.shot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.character-card,.shot-card{background:var(--panel-raised);border:1px solid var(--line);border-radius:4px;padding:14px;display:flex;flex-direction:column;gap:8px}.shot-thumb{min-height:160px}.shot-thumb img,.shot-thumb video{max-height:220px}.character-card textarea,.character-card input,.shot-card textarea,.shot-card input{background:var(--bg)}.error-card{background:#d1553a1a;border:1px solid var(--ember);border-radius:4px;padding:12px 14px}.error-card .status-eyebrow{color:var(--ember)}.error-card p{margin:6px 0 0;font-size:12px;color:var(--ink);word-break:break-word}.auth-shell{display:flex;align-items:center;justify-content:center;padding:48px 20px}.auth-panel{max-width:380px;width:100%}.auth-sub{margin:-4px 0 4px;color:var(--ink-dim);font-size:13px}.field-row{display:flex;align-items:baseline;justify-content:space-between}.field-row .link-btn{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.link-btn{background:none;border:none;padding:0;color:var(--daylight);font-family:inherit;font-size:inherit;cursor:pointer;text-decoration:underline}.landing{max-width:960px;margin:0 auto;padding:0 20px 64px}.landing-header{padding:22px 0 0}.landing-hero{text-align:center;padding:72px 20px 56px;max-width:640px;margin:0 auto}.landing-hero h1{font-family:var(--font-display);font-size:48px;letter-spacing:.02em;color:var(--tungsten);margin:0 0 18px;line-height:1.05}.landing-sub{color:var(--ink-dim);font-size:16px;line-height:1.6;margin:0 0 28px}.landing-cta{font-size:15px;padding:12px 28px}.landing-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.landing-feature p{margin:0;color:var(--ink);font-size:14px;line-height:1.6}
