:root{--creator-accent:#ff906d;--line:#2b2f36;--quiet:#a1a7b3;--surface:#17191f}*{box-sizing:border-box}body{margin:0;background:#101116;color:#f0f0ee;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea,select{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{border:1px solid #373b44;background:#24272f;color:#eff1ef;border-radius:7px;padding:10px 12px;font-size:12px;cursor:pointer;transition:background .15s,border-color .15s}button:hover{background:#30353f;border-color:#647079}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit}.primary{background:#d9ffb3;color:#172016;border-color:#d9ffb3;font-weight:700}.primary:hover{background:#e8ffcf;border-color:#e8ffcf}.topbar{min-height:78px;padding:18px 34px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:22px}.topbar .brand{font-size:12px;text-decoration:none;letter-spacing:1.2px;display:flex;align-items:center;gap:13px}.brand-icon{font-size:32px;font-weight:900;color:#d9ffb3;font-style:italic}.brand .slash{color:#535762}.brand>span:last-child{font-size:10px;color:var(--quiet)}nav{display:flex;align-items:center;gap:8px}nav>a{font-size:12px;color:var(--quiet);text-decoration:none;margin-right:16px}main{max-width:1800px;margin:0 auto;padding:38px 34px 0}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;gap:20px}.eyebrow{font-family:ui-monospace,SFMono-Regular,monospace;font-size:9px;letter-spacing:1.5px;color:#a1a7b3;font-weight:500}.intro h1{font-size:clamp(27px,2.6vw,42px);letter-spacing:-1.6px;margin:10px 0;font-weight:650}.intro h1 span{color:#d9ffb3}.intro p{font-size:13px;color:var(--quiet);margin:0}.process{display:flex;align-items:center;gap:14px;font:9px ui-monospace,monospace;letter-spacing:1px;color:#8f95a0}.process i{font-style:normal;color:#545c66}.process strong{color:#d9ffb3}.foundry{display:grid;grid-template-columns:265px minmax(400px,1fr) 295px;align-items:start;gap:18px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px;min-width:0}.panel h2{font-size:19px;letter-spacing:-.55px;margin:12px 0 8px;font-weight:600}.panel h3{font-size:13px;font-weight:600;margin:0}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.small-chip{border:1px solid #353941;border-radius:4px;padding:5px 6px;font:8px ui-monospace,monospace;letter-spacing:.6px;white-space:nowrap;color:#b2b9c4}.muted{color:var(--quiet);font-size:12px;line-height:1.6;margin:8px 0 17px}.micro{font-size:10px;color:#9ca3ae;line-height:1.65;margin:8px 0 12px}.starter-list{display:grid;gap:7px;margin:18px 0 23px}.starter{display:flex;text-align:left;align-items:center;gap:10px;padding:12px;background:#1d2027}.starter .sigil{font-size:24px;width:31px;text-align:center}.starter strong{font-size:12px;display:block}.starter small{font-size:9px;color:#a2aab5;display:block;margin-top:4px}.starter.selected{background:color-mix(in srgb,var(--creator-accent) 8%,#1d2027);border-color:var(--creator-accent)}.field{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#bdc3cd;margin:15px 0}.field input,.field textarea,.field select,select,dialog textarea{width:100%;min-width:0;border:1px solid #383c46;background:#111319;border-radius:6px;color:#e3e7ed;padding:10px;font-size:12px}.field textarea{resize:vertical;line-height:1.6;min-height:97px}.two,.select-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.two>button{font-size:10px;padding:10px 5px}.two>.field{margin:8px 0}.color-field{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#bdc3cd;margin:10px 0}.color-field input{width:34px;height:26px;border:1px solid #424753;border-radius:5px;background:transparent;padding:2px}.link-button{border:0;background:transparent;padding:2px 0;color:#d0dcbb;font-size:10px;text-align:left}.link-button:hover{background:transparent;color:#e5ffb9}.divider{height:1px;background:var(--line);margin:22px 0}.stat-heading{display:flex;align-items:center;justify-content:space-between;margin-top:24px}.stat-heading strong{color:#d9ffb3;font:12px ui-monospace,monospace}.stat-row{display:flex;align-items:center;gap:8px;margin:9px 0;font-size:11px}.stat-row>span{flex:1}.stat-row button{padding:3px 8px;font-size:14px}.stat-row output{font:12px ui-monospace,monospace;width:14px;text-align:center}.stat-row small{width:44px;color:#929ca9;font-size:9px;text-align:right}.library{margin-top:25px}.library summary,details summary{cursor:pointer;font-size:11px;color:#b9c2cd;line-height:1.8}.library summary span{float:right;color:#d9ffb3}#library-list{display:grid;gap:5px;margin-top:9px}#library-list button{text-align:left;font-size:11px}.center-column{display:grid;gap:18px}.preview-panel{padding:0;overflow:hidden}.preview-heading{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 10px}.preview-heading h2{margin-bottom:0}.canvas-wrap{height:345px;position:relative;background:radial-gradient(ellipse at 50% 80%,#28303933,transparent 70%)}#preview{width:100%;height:100%;display:block}.preview-caption{position:absolute;bottom:12px;left:23px;right:23px;display:flex;justify-content:space-between;gap:9px;font:8px ui-monospace,monospace;color:#7d8896;letter-spacing:.7px}.preview-caption span:first-child{color:var(--creator-accent)}.preview-toggles{display:flex;align-items:center;gap:16px;padding:12px 23px;border-top:1px solid var(--line);flex-wrap:wrap}.preview-toggles label{font-size:10px;color:#abb3bf;display:flex;align-items:center;gap:6px}.preview-toggles input{accent-color:var(--creator-accent);width:12px;height:12px;margin:0}.preview-toggles button{margin-left:auto;padding:4px 7px;font-size:10px}.timeline{padding:13px 23px 20px;border-top:1px solid var(--line)}.transport{display:flex;align-items:center;gap:7px;margin-bottom:11px}.transport button{padding:5px 10px}.transport select{width:66px;font-size:10px;padding:5px}.transport output{margin-left:auto;font:10px ui-monospace,monospace;color:#d4dce7}input[type=range]{accent-color:var(--creator-accent);width:100%;height:15px;cursor:pointer}.phases{display:flex;gap:3px;margin:10px 0 6px;height:5px}.phases span{height:5px;border-radius:2px}.timing-values{display:flex;justify-content:space-between;color:#a3afbe;font:9px ui-monospace,monospace}.move-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:17px 0}.move-button{padding:11px 10px;text-align:left;min-width:0;background:#1d2027}.move-button small{display:block;font:8px ui-monospace,monospace;color:#95a1b2;letter-spacing:.2px}.move-button strong{display:block;margin:6px 0;font-size:11px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.move-button span{font-size:9px;color:#818c9c}.move-button.selected{border-color:var(--creator-accent);box-shadow:inset 2px 0 var(--creator-accent);background:color-mix(in srgb,var(--creator-accent) 7%,#1d2027)}.move-button.invalid{border-bottom-color:#ff806e}.validation h3{color:#d9ffb3}.validation.invalid h3{color:#ff9685}.report{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.report span{background:#252a30;color:#aeb9c8;border-radius:4px;padding:5px 7px;font:9px ui-monospace,monospace}#issues{font-size:11px;line-height:1.6;color:#a5b0bf;margin:9px 0}#issues button{display:block;width:100%;text-align:left;color:#ffb1a1;background:#422a2a44;border-color:#6b423866;font-size:10px;margin-top:6px;line-height:1.5}.inspector .select-grid .field{margin:7px 0}.inspector select{font-size:11px;padding:9px 7px}.slider-field{display:block;margin:13px 0}.slider-field>span{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#bfc7d2;margin-bottom:7px}.slider-field output{color:#e1e6ed;font:10px ui-monospace,monospace}.impact-card{padding:15px;background:#111319;border:1px solid #303641;border-radius:7px;margin:23px 0 17px}#impact-data{font:11px ui-monospace,monospace;color:#d3dbe5;line-height:1.8;margin-top:10px}footer{margin-top:30px;padding:23px 0;display:flex;gap:20px;justify-content:space-between;font:9px ui-monospace,monospace;color:#788393;border-top:1px solid var(--line)}footer a{text-decoration:none;color:#b4c4d2}#notice{position:fixed;z-index:10;bottom:24px;left:50%;transform:translateX(-50%);max-width:min(560px,90vw);padding:15px 20px;background:#e0f3cf;color:#162018;border-radius:9px;font-size:12px;box-shadow:0 10px 40px #0006}dialog{width:min(680px,94vw);max-height:92vh;border:1px solid #3b4350;background:#17191f;color:#e4e9ed;border-radius:14px;padding:25px}dialog::backdrop{background:#06090ec9;backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center}.dialog-heading h2{font-size:23px;margin:0}dialog p{font-size:12px;color:#aab5c5;line-height:1.6}dialog textarea{font:11px/1.6 ui-monospace,monospace;resize:vertical;max-height:50vh}.dialog-actions{display:flex;justify-content:space-between;gap:12px;margin-top:16px}#import-error{color:#ff9b85;white-space:pre-wrap;max-height:130px;overflow:auto}
@media(min-width:1550px){.foundry{grid-template-columns:290px minmax(400px,1fr) 320px;gap:22px}.canvas-wrap{height:380px}.move-button{padding:13px}.move-button strong{font-size:12px}.panel{padding:24px}.preview-panel{padding:0}}
@media(max-width:1150px){main{padding:28px 18px 0}.topbar{padding:15px 18px}.foundry{grid-template-columns:230px minmax(340px,1fr)}.inspector{grid-column:2}.identity-panel{grid-row:1 / span 2}.process{display:none}.panel{padding:18px}.preview-panel{padding:0}.topbar .brand>span:last-child{display:none}nav>a{margin-right:3px}.intro h1{font-size:31px}}
@media(max-width:700px){.topbar{align-items:flex-start;flex-direction:column;gap:14px}nav{flex-wrap:wrap;width:100%}nav button{font-size:10px;padding:9px}nav>a{font-size:10px}.foundry{display:flex;flex-direction:column}.foundry>*{width:100%}.identity-panel{order:0}.center-column{order:1}.inspector{order:2}.starter-list{grid-template-columns:repeat(3,1fr);gap:5px}.starter{padding:10px 5px;justify-content:center}.starter .sigil{display:none}.starter small{font-size:8px}.intro{margin-bottom:20px}.intro h1{font-size:27px;letter-spacing:-1px}.canvas-wrap{height:310px}.preview-caption span:last-child{display:none}.preview-toggles{gap:11px}.move-list{grid-template-columns:repeat(2,minmax(0,1fr))}.move-button strong{font-size:11px}.moves-panel .panel-title{align-items:flex-start}.moves-panel .small-chip{display:none}footer{flex-wrap:wrap;font-size:8px}.identity-panel .field textarea{min-height:80px}.library{margin-top:15px}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
.topbar{position:sticky;top:0;z-index:4;background:#101116f5;backdrop-filter:blur(12px)}.saved-row{display:flex;gap:4px}.saved-row>button:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.saved-row>button:last-child{padding:6px 10px;color:#9ca3ae}

/* Generated fighters and persistent pipeline progress. */
.generate-button{width:100%;margin-top:12px;padding:14px 12px;border-color:#b8eeb578;background:linear-gradient(120deg,#b1ddb3,#d9edc1);color:#15241b;font-weight:750;box-shadow:0 4px 20px #a4dc9c10}.generate-button:hover{background:#e3f7ce;color:#15241b}.generate-button:disabled{opacity:.5}
#generated-library{margin:20px 0}.generated-card{display:flex;align-items:center;width:100%;text-align:left;margin:10px 0;padding:6px 12px;background:radial-gradient(at left,#36607055,#121923);border-color:#647e8166;overflow:hidden}.generated-card img{height:92px;width:70px;object-fit:contain;margin-right:14px}.generated-card strong{display:block;font-size:16px;color:#f2ecd8}.generated-card small{font-size:9px;letter-spacing:.09em;color:#a9bfbc}
.generation{scroll-margin-top:90px;border-color:#657d6d66;background:radial-gradient(at top right,#28433866,transparent 70%),#131a20}.generation-top{display:flex;justify-content:space-between;gap:12px;align-items:start}.generation h2{margin-top:9px}.generation-body{display:flex;align-items:center;gap:22px;min-height:70px}.generation-body img{width:100px;height:140px;object-fit:contain;flex-shrink:0}.generation-body p{font-size:13px;line-height:1.7;color:#b8c8bf;overflow-wrap:anywhere}.generation[data-status="failed"] .generation-body p{color:#ffb29d}
#generation-stages{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;gap:8px;margin:14px 0 0;padding:0}#generation-stages li{display:flex;align-items:center;gap:8px;font-size:10px;padding:10px 7px;color:#697b80;border-top:2px solid #344149}#generation-stages li span{font-variant-numeric:tabular-nums;opacity:.65}#generation-stages li.done{color:#c5e2bc;border-color:#9ebc8c}#generation-stages li.active{color:#f2dba6;border-color:#e4be76;background:#caaa6610}.generation-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:18px}.generation-actions a{font-size:11px;color:#c8dbcd;text-decoration:none}.generation-actions button{font-size:11px}.generation-actions a:hover{text-decoration:underline}
[hidden]{display:none!important}

.rig-fitting{border:1px solid #829a8844;border-radius:10px;padding:12px;margin:16px 0;background:#a7c3b605}.rig-fitting>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-weight:650}.rig-fitting canvas{width:100%;height:auto;display:block;border-radius:8px;touch-action:none;cursor:crosshair}.rig-fitting .field{margin-top:14px}.rig-fitting details{margin:15px 0}.preview-toggles select{width:auto;padding:4px;font-size:10px}.rig-fitting .small-chip{font-size:8px}
