:root{color-scheme:dark;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#e5e7e8;background:#101315;font-size:14px;--muted:#8a969b;--line:#2b3336;--gold:#d6b574}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:1480px;margin:auto}header{padding:28px 38px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:14px}.mark{border:1px solid #65583c;width:46px;height:46px;display:grid;place-items:center;font:26px Georgia;color:var(--gold);border-radius:8px;background:#25241e}small{font-size:10px;letter-spacing:2px;color:var(--muted)}h1{margin:4px 0 0;font-size:24px;font-weight:550;letter-spacing:-.6px}.badge{font-size:10px;letter-spacing:1.7px;border:1px solid var(--line);border-radius:30px;padding:9px 14px;color:#acb8bd}i{font-style:normal;color:#596268;padding:0 8px}main{padding:0 38px;display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:20px}.stage,aside,.assets,.effects{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#171c1f}.stage{position:relative;display:flex;flex-direction:column;min-height:640px;background:radial-gradient(ellipse at 48% 40%,#30383b,#14191c 75%)}.stage-top,.stage-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 23px;z-index:1;font-size:11px;color:var(--muted)}.stage-top{letter-spacing:1px}.stage-top>span:first-child{color:#c7cecf}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold);margin-right:8px}.stage-bottom{padding:14px 20px;border-top:1px solid #ffffff0b;background:#13191c77;font-size:11px}#viewport{flex:1;min-height:460px;position:relative;touch-action:none;outline-offset:-3px;cursor:grab}#viewport:active{cursor:grabbing}canvas{display:block;width:100%;height:100%}#message{position:absolute;inset:0;display:grid;place-items:center;padding:30px;text-align:center;color:var(--gold);pointer-events:none}aside{padding:25px}.panel-heading{margin-bottom:23px}h2{font-size:20px;font-weight:500;letter-spacing:-.5px;margin:7px 0 0}.toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:17px 0;font-size:13px;color:#bec7cb}input[type=checkbox]{accent-color:var(--gold);width:17px;height:17px;cursor:pointer}.select-label{display:block;margin:25px 0 9px;font-size:12px;color:var(--muted)}select,button{font:inherit;color:#cdd4d8;background:#20282c;border:1px solid #394247;border-radius:6px;padding:9px 12px;cursor:pointer}select{width:100%;font-size:12px}button:hover{border-color:var(--gold);color:#f4e3c3}button:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.separator{border-top:1px solid var(--line);margin:24px 0}.mesh-label{margin:16px 0;display:flex;gap:10px;align-items:center;font-size:12px}.mesh-label span{display:block}.mesh-label small{display:block;font-size:10px;letter-spacing:0;margin-top:4px}.primary{width:100%;background:#d6b574;color:#1e201d;border-color:#d6b574;margin-top:16px}.primary:hover{background:#e8c990;color:#151916}.note{font-size:11px;line-height:1.8;color:var(--muted)}.assets,.effects{grid-column:1/-1;padding:25px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.section-title>span{font-size:11px;color:var(--muted)}.texture-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.texture-card{border:1px solid var(--line);border-radius:8px;overflow:hidden}.checker{background-color:#22282b;background-image:conic-gradient(#30373a 25%,transparent 0 50%,#30373a 0 75%,transparent 0);background-size:20px 20px;height:200px;display:flex;justify-content:center;align-items:center}.checker img{object-fit:contain;max-width:90%;height:160px;image-rendering:pixelated}.texture-info{padding:16px;display:flex;justify-content:space-between;gap:10px}.texture-info b{font-size:13px;font-weight:500}.texture-info small{display:block;margin-top:6px;letter-spacing:0}.texture-info a{font-size:11px;color:var(--gold);text-decoration:none;padding-top:3px}.effects .note{margin-top:-7px;margin-bottom:20px}details{border:1px solid var(--line);border-radius:7px;margin-top:12px}summary{padding:14px;cursor:pointer;font-size:12px}summary span{float:right;color:var(--muted)}.table-scroll{overflow-x:auto;max-height:350px}table{border-collapse:collapse;width:100%;font-size:11px;white-space:nowrap}th,td{padding:10px 14px;border-top:1px solid var(--line);text-align:right;font-variant-numeric:tabular-nums}th{color:var(--gold);font-weight:500;background:#20272b;position:sticky;top:0}footer{padding:25px 38px 32px;display:flex;justify-content:space-between;color:#657278;font-size:10px;letter-spacing:1px}@media(max-width:900px){header{padding:24px}main{padding:0 24px;grid-template-columns:minmax(0,1fr) 240px;gap:14px}aside{padding:20px}.stage-bottom{flex-wrap:wrap}.stage{min-height:580px}.texture-grid{gap:12px}.texture-info{flex-wrap:wrap}footer{padding:24px}}@media(max-width:650px){header{padding:20px 16px}.badge{font-size:8px;padding:8px}h1{font-size:20px}main{padding:0 14px;grid-template-columns:1fr}.stage{min-height:500px}#viewport{min-height:360px}.stage-top{padding:16px;font-size:9px}.stage-bottom{padding:12px;font-size:10px}aside{display:block}.texture-grid{grid-template-columns:1fr}.checker{height:180px}.assets,.effects{padding:20px}.section-title{align-items:flex-start;gap:12px}.section-title>span{max-width:130px;text-align:right;line-height:1.7}.texture-info{flex-wrap:nowrap}footer{gap:15px;font-size:8px;line-height:1.8}}

#message[hidden]{display:none}
.catalogue{grid-column:1/-1;display:grid;grid-template-columns:180px minmax(180px,360px) 1fr;align-items:center;gap:18px;border:1px solid var(--line);border-radius:12px;background:#171c1f;padding:18px 23px}.catalogue label{display:block;margin-top:7px;font-size:15px}.catalogue p{font-size:11px;color:var(--muted);line-height:1.7;overflow-wrap:anywhere;margin:0}#fx-control[hidden]{display:none}@media(max-width:900px){.catalogue{grid-template-columns:160px 1fr}.catalogue p{grid-column:1/-1}}@media(max-width:650px){.catalogue{grid-template-columns:1fr;padding:18px}.catalogue p{grid-column:auto}}
.library-controls{display:grid;gap:9px}.library-controls input{width:100%;background:#20282c;border:1px solid #394247;border-radius:6px;color:#e5e7e8;padding:10px 12px;font:inherit;font-size:12px}.library-controls input:focus-visible{outline:2px solid var(--gold)}#asset-warnings{grid-column:1/-1;border:1px solid #77603c;border-radius:8px;padding:14px 20px;background:#30291e;color:#e8c990;font-size:12px;line-height:1.7}.effects[hidden],#asset-warnings[hidden]{display:none}
.animation-controls{border:1px solid var(--line);border-radius:8px;padding:14px;margin-bottom:20px}.animation-controls .select-label{margin:12px 0 8px}.animation-buttons{display:flex;gap:8px;margin:10px 0}.animation-buttons button{flex:1;white-space:nowrap;font-size:12px}.animation-buttons select{width:82px}.animation-controls input[type=range]{width:100%;accent-color:var(--gold)}.animation-controls output{display:block;font-size:11px;line-height:1.7;color:var(--muted);margin-top:6px}button:disabled,input:disabled,select:disabled{opacity:.45;cursor:default}.stage{height:76vh;min-height:600px;max-height:850px;align-self:start}aside{max-height:850px;overflow-y:auto}@media(max-width:650px){.stage{height:64vh;min-height:500px}aside{max-height:none;overflow:visible}}
