:root{--bg:#05070a;--bg2:#090c11;--panel:#0c1016;--panel2:#131922;--line:#1d252f;--line2:#2a3441;--text:#dbe3ec;--muted:#7d8a9a;--accent:#f2c94c;--accent2:#ffe08a;--accent-ink:#1c1504;--accent-soft:#f2c94c1f;--accent-glow:0 0 14px #f2c94c47;--good:#7cc56a;--bad:#e0705a;--warn:#e3b54a;--info:#6fa8dc;--radius:8px;--display:Bahnschrift, "DIN Alternate", "Barlow Condensed", "Arial Narrow", system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);font-family:Segoe UI,system-ui,-apple-system,Roboto,sans-serif;font-size:14px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg)}button,input,select{font:inherit;color:inherit}button{background:var(--panel2);border:1px solid var(--line2);cursor:pointer;border-radius:6px;padding:7px 12px;transition:background .12s,border-color .12s,color .12s,box-shadow .12s}button:hover:not(:disabled){background:#1a222d;border-color:#3a4757}button:disabled{opacity:.45;cursor:default}button.primary{color:var(--accent-ink);font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(#ffd96a 0%,#e0ad2a 100%);border-color:#eec04a;font-weight:700}button.primary:hover:not(:disabled){border-color:var(--accent2);box-shadow:var(--accent-glow);background:linear-gradient(#ffe9a3 0%,#efc04a 100%)}button.danger{color:#f2b3a5;border-color:#6d3329}button.danger:hover:not(:disabled){background:#2a1512;border-color:#a14a3b}button.ghost{color:var(--muted);background:0 0;border-color:#0000}button.ghost:hover:not(:disabled){color:var(--text);background:var(--panel2)}input[type=text],input:not([type]),select{background:var(--bg2);border:1px solid var(--line2);border-radius:6px;width:100%;padding:8px 10px}input:focus-visible,button:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.splash{height:100%;color:var(--muted);place-items:center;display:grid}.app{flex-direction:column;height:100%;display:flex}.top{border-bottom:1px solid var(--line);background:linear-gradient(#0c1118 0%,#080b10 100%);flex:none;align-items:center;gap:28px;height:56px;padding:0 16px;display:flex;position:relative}.top:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000 0%,#f2c94c8c 18%,#f2c94c14 60%,#0000 100%);height:1px;position:absolute;bottom:-1px;left:0;right:0}.brand{color:var(--text);font-family:var(--display);text-transform:uppercase;align-items:center;gap:11px;text-decoration:none;display:flex}.brand img{object-fit:contain;filter:drop-shadow(0 0 6px #f2c94c2e);width:40px;height:42px}.brand span{flex-direction:column;gap:3px;line-height:1;display:flex}.brand strong{letter-spacing:.14em;font-size:17px;font-weight:700}.brand b{letter-spacing:.42em;color:var(--accent);font-size:10.5px;font-weight:600}.top nav{gap:2px;height:100%;display:flex}.top nav a{color:var(--muted);font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;align-items:center;padding:0 14px;font-size:13px;font-weight:600;text-decoration:none;display:flex;position:relative}.top nav a:hover{color:var(--text)}.top nav a.active{color:var(--accent2)}.top nav a.active:after{content:"";background:var(--accent);height:2px;box-shadow:var(--accent-glow);border-radius:2px 2px 0 0;position:absolute;bottom:0;left:10px;right:10px}.who{color:var(--muted);align-items:center;gap:10px;margin-left:auto;display:flex}.who img,.who .avatar{background:var(--panel2);border:1px solid var(--line2);border-radius:50%;place-items:center;width:28px;height:28px;display:grid}main{flex:1;min-height:0}.signin{background:radial-gradient(90% 70% at 68% 18%,#1a2e47 0%,#0b1625 38%,#05080d 78%);place-items:center;height:100%;padding:16px;display:grid;position:relative;overflow:hidden}.signin .stars{pointer-events:none;background-image:radial-gradient(1px 1px at 22px 34px,#e6f0ffe6,#0000),radial-gradient(1px 1px at 128px 92px,#e6f0ffb3,#0000),radial-gradient(1.4px 1.4px at 182px 18px,#e6f0ffd9,#0000),radial-gradient(1px 1px at 64px 156px,#e6f0ff99,#0000),radial-gradient(1px 1px at 214px 188px,#e6f0ffbf,#0000),radial-gradient(1.2px 1.2px at 96px 222px,#e6f0ff80,#0000);background-size:240px 240px;animation:7s ease-in-out infinite alternate twinkle;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0% 45%,#0000 85%);mask-image:linear-gradient(#000 0% 45%,#0000 85%)}.signin .stars.far{opacity:.45;background-position:60px 40px;background-size:170px 170px;animation-duration:11s;animation-delay:-3s}.signin .moon{filter:drop-shadow(0 0 28px #bed7f573);pointer-events:none;border-radius:50%;width:120px;height:120px;position:absolute;top:9%;right:12%;transform:rotate(-18deg);box-shadow:inset -26px 10px #e9f1fb}.signin .rotor{aspect-ratio:1;pointer-events:none;filter:blur(1px);background:repeating-conic-gradient(#0000 0deg,#0000001a 22deg,#00000080 33deg,#0000 34deg 90deg);border-radius:50%;width:min(1100px,150vmax);animation:3s linear infinite spin;position:absolute;top:50%;left:50%;translate:-50% -50%;-webkit-mask-image:radial-gradient(circle,#0000 0 6%,#000 8% 60%,#0000 70%);mask-image:radial-gradient(circle,#0000 0 6%,#000 8% 60%,#0000 70%)}.signin .ridge{pointer-events:none;width:100%;height:26vh;position:absolute;bottom:0;left:0;right:0}.signin .grain{pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.75 0 0 0 0 0.85 0 0 0 0 1 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:.9s steps(4,end) infinite grain;position:absolute;inset:-50%}.signin-card{text-align:center;flex-direction:column;align-items:center;gap:22px;width:min(420px,100%);display:flex;position:relative}.signin-card img{object-fit:contain;filter:drop-shadow(0 0 26px #f2c94c29)drop-shadow(0 18px 40px #000000b3);width:184px;height:184px}.signin-card h1{font-family:var(--display);text-transform:uppercase;flex-direction:column;gap:8px;margin:0;line-height:1;display:flex}.signin-card h1 strong{letter-spacing:.16em;text-shadow:0 2px 24px #000c;font-size:40px;font-weight:700}.steam{color:#e9edf2;font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0e14d1;border:1px solid #334050;border-radius:6px;align-items:center;gap:10px;padding:12px 22px;font-weight:600;text-decoration:none;transition:border-color .15s,box-shadow .15s,color .15s;display:inline-flex}.steam:hover{border-color:var(--accent);color:var(--accent2);box-shadow:var(--accent-glow)}.notice{background:var(--panel2);border:1px solid var(--line2);border-radius:6px;padding:8px 12px}.notice.bad{color:#f2b3a5;background:#2a1411e0;border-color:#6d3329}.studio{height:100%;min-height:0;display:flex}.panel{border-right:1px solid var(--line);scrollbar-width:thin;scrollbar-color:var(--line2) transparent;background:linear-gradient(#0d1218 0%,#0a0e13 100%);flex-direction:column;flex:none;gap:20px;width:304px;padding:16px 14px;display:flex;overflow-y:auto}.panel section{flex-direction:column;gap:8px;display:flex}.label{font-family:var(--display);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);align-items:center;gap:8px;font-size:11px;font-weight:600;display:flex}.label:after{content:"";background:linear-gradient(90deg, var(--line2), transparent);flex:1;height:1px}.row{flex-direction:column;gap:6px;margin-top:4px;display:flex}.seg{flex-wrap:wrap;gap:4px;display:flex}.seg button{background:var(--bg2);border-color:var(--line);padding:6px 10px;font-size:13px}.seg button.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent2);box-shadow:inset 0 0 10px #f2c94c14}.kinds{border:1px solid var(--line2);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:0;margin-bottom:4px;display:grid;overflow:hidden}.kinds button{background:var(--bg2);color:var(--muted);font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;border:0;border-radius:0;padding:10px 8px;font-size:14px;font-weight:700}.kinds button+button{border-left:1px solid var(--line2)}.kinds button.on{background:var(--accent-soft);color:var(--accent2);box-shadow:inset 0 -2px 0 var(--accent)}.platforms{grid-template-columns:1fr 1fr;gap:6px;display:grid}.platforms button:only-child{grid-column:1/-1}.piece-list{scrollbar-width:thin;scrollbar-color:var(--line2) transparent;max-height:260px;overflow-y:auto}.platforms button{background:var(--bg2);border-color:var(--line);text-align:left;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.platforms button strong{font-family:var(--display);letter-spacing:.06em;font-size:16px;font-weight:700}.platforms button span{color:var(--muted);font-size:11px}.platforms button.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent2);box-shadow:inset 0 0 14px #f2c94c1a}.name{font-size:15px}.job-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip{background:var(--panel2);border:1px solid var(--line2);color:var(--muted);white-space:nowrap;font-size:11px;font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:3px 8px}.chip.submitted{color:#f0d38c;background:#221b0c;border-color:#6b5626}.chip.approved{color:#b5f0bb;background:#0d2014;border-color:#2f6a3a}.chip.live{color:#a9cdf0;background:#0c1a28;border-color:#2d5476}.chip.rejected{color:#f2b3a5;background:#24120f;border-color:#6d3329}.chip.unsaved{color:#e3c37a;border-style:dashed}.owner{color:var(--muted);font-size:13px}.reason{color:#f2b3a5;background:#24120f;border:1px solid #6d3329;border-radius:6px;padding:8px 10px;font-size:13px}.actions{flex-wrap:wrap;flex-direction:row!important}.actions button{flex:1;min-width:80px}.review input{width:100%}.call-pick{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.call-pick select{background:var(--bg2);width:auto;color:var(--text);border:1px solid var(--line);border-radius:6px;padding:6px 8px;font-size:13px}.call-pick button{padding:6px 12px;font-size:13px}.placed{flex-direction:column;gap:4px;display:flex}.placed-row{gap:4px;display:flex}.placed-name{text-align:left;background:var(--bg2);border-color:var(--line);flex:1;padding:6px 10px;font-size:13px}.placed-row.on .placed-name{background:var(--accent-soft);border-color:var(--accent);color:var(--accent2)}.empty{color:var(--muted);font-size:13px}.row.sliders .slider input{width:150px}.decal-list{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.decal-list img{aspect-ratio:1;object-fit:contain;border:1px solid var(--line);background:repeating-conic-gradient(#1a212b 0% 25%,#121820 0% 50%) 50%/14px 14px;border-radius:4px;width:100%}.viewport{background:radial-gradient(70% 65% at 50% 42%,#1a2a3e 0%,#0d1622 46%,#05080c 100%);flex:1;min-width:0;position:relative;overflow:hidden}.viewport:before{content:"";pointer-events:none;background-image:linear-gradient(#f2c94c0d 1px,#0000 1px),linear-gradient(90deg,#f2c94c0d 1px,#0000 1px);background-position:50%;background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(60% 55%,#000 0%,#0000 100%);mask-image:radial-gradient(60% 55%,#000 0%,#0000 100%)}.viewport:after{content:"";pointer-events:none;background:radial-gradient(#f2c94c17 0%,#0000 70%);border-radius:50%;width:46%;height:12%;position:absolute;bottom:18%;left:50%;translate:-50%}.canvas-host{z-index:1;position:absolute;inset:0}.toolbar,.views,.options,.overlay,.cursor,.busy,.toast{z-index:2}.toolbar{border:1px solid var(--line2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080b10e0;border-radius:10px;flex-direction:column;gap:4px;padding:6px;display:flex;position:absolute;top:12px;left:12px}.toolbar button{color:#b8c3cf;background:0 0;border-color:#0000;place-items:center;width:38px;height:38px;padding:0;display:grid}.toolbar button.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent2);box-shadow:var(--accent-glow)}.toolbar .sep{background:var(--line2);height:1px;margin:4px 2px}.views{flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:60%;display:flex;position:absolute;top:12px;right:12px}.views button{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;border-color:var(--line2);background:#080b10d9;padding:5px 10px;font-size:12px}.views button:hover:not(:disabled){color:var(--accent2);border-color:var(--accent)}.options{border:1px solid var(--line2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080b10eb;border-radius:12px;flex-direction:column;gap:10px;width:min(980px,100% - 28px);padding:12px 14px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.swatches{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.swatches button,.swatches .custom span{border:2px solid #ffffff1f;border-radius:50%;width:26px;height:26px;padding:0;display:block}.swatches button.on{border-color:var(--accent2);box-shadow:0 0 0 2px #f2c94c59, var(--accent-glow)}.swatches .custom{cursor:pointer;margin-left:6px;position:relative}.swatches .custom input{opacity:0;cursor:pointer;position:absolute;inset:0}.swatches .custom span{border-style:dashed;border-color:#fff6}.sliders,.stencils{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.slider{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.slider input{width:130px;accent-color:var(--accent)}.slider em{color:var(--text);font-variant-numeric:tabular-nums;min-width:44px;font-style:normal}.check{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.check input{accent-color:var(--accent)}button.icon{place-items:center;padding:6px;display:grid}.file{border:1px dashed var(--line2);cursor:pointer;background:var(--bg2);border-radius:6px;align-items:center;padding:7px 12px;display:inline-flex;position:relative}.file input{opacity:0;cursor:pointer;position:absolute;inset:0}.overlay{pointer-events:none;outline:1px dashed #f2c94c99;position:absolute}.overlay .art{-webkit-user-select:none;user-select:none;background-position:50%;background-repeat:repeat;width:100%;height:100%}.overlay .handle{pointer-events:auto;border-color:var(--accent);width:30px;height:30px;color:var(--accent2);cursor:move;touch-action:none;background:#080b10e6;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cursor{pointer-events:none;position:absolute}.cursor .ring{border:1.5px solid #ffffffd9;border-radius:50%;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0000008c}.cursor .tag{white-space:nowrap;color:var(--text);background:#06080be0;border-radius:4px;padding:2px 7px;font-size:12px;position:absolute;top:14px;left:14px}.busy,.toast{border:1px solid var(--line2);background:#080b10f0;border-radius:999px;padding:7px 14px;font-size:13px;position:absolute;top:14px;left:50%;transform:translate(-50%)}.toast{color:#c6f3cb;border-color:#2f6a3a;top:54px}.toast.bad{color:#f2b3a5;border-color:#6d3329}.page{background:radial-gradient(ellipse 80% 50% at 50% 0%, #0d1622 0%, var(--bg) 70%);height:100%;padding:22px 24px;overflow-y:auto}.page-head{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:20px;display:flex}.page-head h2{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:22px;font-weight:700}.page-head .count{color:var(--muted);font-family:var(--display);letter-spacing:.08em;font-variant-numeric:tabular-nums}.page-head .primary{margin-left:auto}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;flex-direction:column;transition:border-color .15s,transform .15s,box-shadow .15s;display:flex;overflow:hidden}.card:hover{border-color:#f2c94c73;transform:translateY(-1px);box-shadow:0 10px 28px #00000073}.thumb{aspect-ratio:16/9;background:radial-gradient(at 50% 42%,#1a2a3e 0%,#0b131d 72%);border:0;border-radius:0;padding:0}.thumb:hover:not(:disabled){background:radial-gradient(at 50% 42%,#1e3047 0%,#0b131d 72%)}.thumb img{object-fit:cover;width:100%;height:100%;display:block}.card-body{flex-direction:column;gap:8px;padding:12px;display:flex}.card-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.card-sub{color:var(--muted);font-size:12px}.card-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.card-actions .owner{margin-right:auto}@keyframes spin{to{rotate:360deg}}@keyframes twinkle{0%{opacity:.55}to{opacity:1}}@keyframes grain{0%{translate:0}25%{translate:-4% 3%}50%{translate:3% -5%}75%{translate:-2% -2%}to{translate:0}}@media (prefers-reduced-motion:reduce){.signin .rotor,.signin .stars,.signin .grain{animation:none}}@media (width<=760px){.top{gap:10px;padding:0 10px}.brand span,.who span{display:none}.top nav a{padding:0 8px;font-size:12px}.studio{flex-direction:column}.panel{border-right:0;border-bottom:1px solid var(--line);width:100%;max-height:42%}.viewport{min-height:58%}.views{max-width:calc(100% - 80px)}.slider input{width:90px}.page{padding:16px}.signin-card h1 strong{font-size:30px}.signin .moon{width:72px;height:72px;box-shadow:inset -16px 6px #e9f1fb}}
