@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Inter:wght@400;500;600;700&display=swap";.material-color{margin-bottom:17px}.material-color>label{margin-bottom:8px}.material-color>div{grid-template-columns:38px 82px 1fr;align-items:center;gap:8px;display:grid}.material-color input[type=color]{background:#101412;border:1px solid #3b443f;border-radius:4px;width:38px;height:34px;padding:3px}.material-color .hex{color:#d8ff3e;text-transform:uppercase;background:#101412;border:1px solid #343c38;border-radius:3px;width:82px;padding:8px;font:11px DM Mono}.material-color span{color:#6f7974;font-size:10px}.stat-accent{color:#d8ff3e!important}.actions button:disabled{opacity:.38;cursor:not-allowed}.actions .bake:disabled{color:#77817c;background:#2b312e;border-color:#3a423e}.texture-library{border-top:1px solid #2d3430;border-bottom:1px solid #2d3430;margin:0 0 17px;padding:14px 0}.texture-head{justify-content:space-between;align-items:center;display:flex}.texture-head label{margin:0}.texture-head span{color:#d8ff3e;font:9px DM Mono}.texture-import{color:#d8ff3e;background:#1b211e;border:1px dashed #56615b;border-radius:4px;width:100%;margin-top:9px;padding:9px;font:10px DM Mono}.texture-empty{color:#717b76;margin:9px 0 0;font-size:10px;line-height:1.45}.texture-list{gap:6px;max-height:168px;margin-top:8px;display:grid;overflow:auto}.texture-item{background:#191e1b;border:1px solid #303833;border-radius:4px;grid-template-columns:1fr 26px;display:grid;overflow:hidden}.texture-item.selected{background:#20271d;border-color:#8da72e}.texture-select{color:#aeb7b2;text-align:left;background:0 0;border:0;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:8px;min-width:0;padding:5px;display:grid}.texture-select img{object-fit:cover;width:38px;height:38px;image-rendering:pixelated;border-radius:2px}.texture-select span{min-width:0}.texture-select b,.texture-select small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.texture-select b{font-size:10px}.texture-select small{color:#707a75;margin-top:4px;font:8px DM Mono}.texture-select i{color:#d8ff3e;font-style:normal}.texture-remove{color:#77817c;background:0 0;border:0;border-left:1px solid #303833;font-size:16px}.texture-remove:hover{color:#ff8d72;background:#2a1d19}.mask-controls{border-top:1px solid #2d3430}.mask-toggle,.mask-number,.mask-color{color:#b7c0bb;justify-content:space-between;align-items:center;margin:9px 0 13px;font-size:12px;display:flex}.mask-toggle input{accent-color:#d8ff3e}.mask-number input{color:#d8ff3e;background:#101412;border:1px solid #343c38;border-radius:3px;width:64px;padding:6px;font:10px DM Mono}.mask-color input{background:#101412;border:1px solid #3b443f;border-radius:4px;width:42px;height:28px;padding:2px}.mask-divider{background:#2d3430;height:1px;margin:18px 0}.mask-number select{color:#d8ff3e;background:#101412;border:1px solid #343c38;border-radius:3px;width:64px;padding:6px;font:10px DM Mono}.uv-settings{color:#8f9994;grid-template-columns:1fr 76px;align-items:center;gap:7px 8px;font-size:11px;display:grid}.uv-settings select,.uv-settings input[type=number]{color:#d8ff3e;background:#101412;border:1px solid #343c38;border-radius:3px;width:76px;padding:6px;font:10px DM Mono}.uv-settings input[type=checkbox]{accent-color:#d8ff3e;justify-self:end}.atlas-meta{color:#737d78;justify-content:space-between;margin:12px 0 6px;font:9px DM Mono;display:flex}.atlas-meta b{color:#d8ff3e}.atlas-preview{aspect-ratio:1;background:repeating-conic-gradient(#1b211e 0 25%,#131715 0 50%) 0/14px 14px;border:1px solid #343c38;width:100%;position:relative;overflow:hidden}.atlas-preview i{background:#d8ff3e18;border:1px solid #d8ff3e;min-width:1px;min-height:1px;position:absolute}.view-modes{z-index:3;background:#111513cc;border:1px solid #333b37;border-radius:4px;max-width:calc(100% - 220px);padding:3px;display:flex;position:absolute;top:14px;left:50%;overflow:auto;transform:translate(-50%)}.view-modes button{color:#77817c;white-space:nowrap;background:0 0;border:0;border-radius:2px;flex:none;padding:6px 9px;font:9px DM Mono}.view-modes button.active{color:#d8ff3e;background:#293126}.author{flex-direction:column;line-height:1.25;text-decoration:none;display:flex}.author b{color:#c8cfcb;font-size:11px}.author span{color:#69736e;font:9px DM Mono}.author:hover b,.author:hover span{color:#d8ff3e}@media (width<=650px){.author{display:none}}.preset-select{color:#d8ff3e;background:#101412;border:1px solid #343c38;border-radius:4px;width:100%;padding:9px;font:11px DM Mono}.pbr-controls{border-top:1px solid #2c332f;margin-top:18px;padding-top:15px}.server-status{color:#d8ff3e;overflow-wrap:anywhere;margin:10px 0 0;font:10px/1.45 DM Mono}.tutorial-button{color:#d8ff3e;background:0 0;border:1px solid #3f493d;border-radius:5px;padding:8px 12px;font-size:11px}.tutorial-backdrop{z-index:100;background:#070908d9;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.tutorial-dialog{background:#151917;border:1px solid #3b443f;border-radius:10px;width:min(760px,100%);max-height:min(760px,92vh);padding:26px;overflow:auto;box-shadow:0 24px 80px #000b}.tutorial-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.tutorial-head small{color:#d8ff3e;letter-spacing:.12em;font:10px DM Mono;display:block}.tutorial-head h2{margin:6px 0 4px;font-size:24px}.tutorial-head p{color:#7f8a84;margin:0;font-size:12px}.tutorial-close{color:#c6cfca;background:#232925;border:0;border-radius:5px;width:32px;height:32px;font-size:18px}.tutorial-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0;display:grid}.tutorial-step{background:#101412;border:1px solid #2b322e;border-radius:6px;grid-template-columns:30px 1fr;gap:10px;padding:14px;display:grid}.tutorial-step>span{color:#111510;background:#d8ff3e;border-radius:50%;place-items:center;width:28px;height:28px;font:700 11px DM Mono;display:grid}.tutorial-step b{margin-bottom:5px;font-size:13px;display:block}.tutorial-step p{color:#7f8a84;margin:0;font-size:11px;line-height:1.5}.tutorial-tip{color:#aeb8b2;background:#1c211d;border-left:3px solid #d8ff3e;padding:12px 14px;font-size:11px;line-height:1.5}.tutorial-start{color:#101310;background:#d8ff3e;border:0;border-radius:5px;margin:18px 0 0 auto;padding:10px 18px;font-weight:700;display:block}@media (width<=650px){.tutorial-steps{grid-template-columns:1fr}.tutorial-button{display:none}.tutorial-dialog{padding:18px}}.hdr-toggle{z-index:3;cursor:pointer;background:#111513dd;border:1px solid #333b37;border-radius:4px;align-items:center;gap:7px;padding:7px 9px;display:flex;position:absolute;bottom:14px;right:14px;color:#aeb7b2!important;letter-spacing:.06em!important;margin:0!important;font:9px DM Mono!important}.hdr-toggle input{accent-color:#d8ff3e;margin:0}.hdr-toggle span{color:#dbe2de}.hdr-toggle em{color:#d8ff3e;min-width:20px;font-style:normal}.hdr-toggle input:not(:checked)~em{color:#89928d}.stats-backdrop{z-index:20;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#080b09cc;place-items:center;display:grid;position:fixed;inset:0}.stats-dialog{background:#151917;border:1px solid #3b443f;border-radius:8px;width:min(520px,100vw - 32px);padding:24px;box-shadow:0 24px 80px #000b}.stats-head{border-bottom:1px solid #2a302d;justify-content:space-between;align-items:flex-start;padding-bottom:16px;display:flex}.stats-head small{color:#d8ff3e;letter-spacing:.14em;font:9px DM Mono}.stats-head h2{margin:5px 0 0;font-size:21px}.stats-head button{color:#8d9792;cursor:pointer;background:0 0;border:0;font-size:25px;line-height:1}.stats-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:20px;display:grid}.stats-grid article{background:#101412;border:1px solid #2e3632;border-radius:6px;padding:18px}.stats-grid span{color:#86908b;font-size:11px;display:block}.stats-grid b{color:#d8ff3e;margin:8px 0 5px;font:28px DM Mono;display:block}.stats-grid em{color:#aab3ae;font:10px DM Mono}.stats-last{color:#76817b;gap:8px;margin-top:16px;font-size:11px;display:grid}.stats-last span{justify-content:space-between;gap:18px;display:flex}.stats-last b{color:#bec7c2;font:400 10px DM Mono}.stats-message{color:#aeb7b2;margin:24px 0 0}.stats-message.error{color:#ff8d72}.stats-message button{color:#d8ff3e;background:#1c221e;border:1px solid #46504a;border-radius:4px;padding:8px 11px}@media (width<=520px){.stats-grid{grid-template-columns:1fr}.stats-last span{display:block}.stats-last b{margin-top:3px;display:block}}:root{color:#e9eeeb;font-synthesis:none;background:#101312;font-family:Inter,system-ui,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input{font:inherit}.app{background:#101312;grid-template-rows:58px minmax(0,1fr) 68px;grid-template-columns:272px minmax(380px,1fr) 326px;height:100vh;display:grid}header{border-bottom:1px solid #2a302d;grid-column:1/-1;align-items:center;gap:30px;padding:0 18px;display:flex}.brand{letter-spacing:.07em;align-items:center;gap:9px;font-size:14px;display:flex}.brand b{color:#d8ff3e}.brand small{color:#69736e;margin-left:4px;font:10px DM Mono}.cube{color:#d8ff3e;font-size:21px}.file-state{color:#c8ceca;align-items:center;gap:8px;margin:auto;font:12px DM Mono;display:flex}.file-state em{color:#6f7974;border-left:1px solid #343b37;padding-left:9px;font-style:normal}.dot{background:#d8ff3e;border-radius:50%;width:6px;height:6px}.ghost{color:#9ca5a0;background:0 0;border:1px solid #333a36;border-radius:5px;padding:8px 12px}.panel{background:#151917;overflow:auto}.left{border-right:1px solid #2a302d}.right{border-left:1px solid #2a302d}.panel section{border-bottom:1px solid #272d2a;padding:18px}.panel label,.panel-title span{color:#7b8580;letter-spacing:.11em;margin-bottom:11px;font:10px DM Mono;display:block}.import{color:#d8ff3e;background:#1c211e;border:1px dashed #58625c;border-radius:5px;width:100%;padding:12px;font:12px DM Mono}.import:hover{background:#232a26}.model-info{color:#7e8883;grid-template-columns:1fr auto;gap:8px;margin-top:15px;font-size:12px;display:grid}.model-info b{color:#c8cfcb;font:12px DM Mono}.palette label i{float:right;font-style:normal}.swatches{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.swatches button{aspect-ratio:1;border:2px solid #0000;border-radius:3px;position:relative}.swatches button.active{border-color:#d8ff3e;box-shadow:0 0 0 2px #151917}.swatches span{color:#fff;text-shadow:0 1px 3px #000;font:8px DM Mono;position:absolute;bottom:1px;right:2px}.assignment{color:#bdc5c1;text-align:left;background:0 0;border:0;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;width:100%;padding:7px 0;font-size:12px;display:grid}.assignment span{border-radius:2px;width:16px;height:16px}.assignment em{color:#d8ff3e;font:10px DM Mono}.muted,.error{color:#717b76;font-size:12px;line-height:1.5}.error{color:#ff8d72}.stage{min-width:0;min-height:0;position:relative}.viewer{position:absolute;inset:0}.viewer canvas{display:block}.view-chip,.selection-ring,.hint{z-index:2;color:#88938d;background:#121614cc;border:1px solid #333b37;border-radius:4px;padding:7px 9px;font:10px DM Mono;position:absolute}.view-chip{top:14px;left:14px}.selection-ring{color:#d8ff3e;top:14px;right:14px}.hint{white-space:nowrap;bottom:14px;left:50%;transform:translate(-50%)}.panel-title{border-bottom:1px solid #2a302d;padding:18px}.panel-title b{font-size:17px;display:block}.base{border-bottom:1px solid #2a302d;align-items:center;gap:10px;padding:14px 18px;display:flex}.base>span{border-radius:4px;width:34px;height:34px}.base div{flex:1}.base small{color:#707a75;margin-bottom:5px;font:9px DM Mono;display:block}.base b{font:11px DM Mono}.base button,.seed button{color:#828c87;background:0 0;border:0;font-size:11px}.preset-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.preset-grid button{color:#a9b2ad;background:#1d231f;border:1px solid #303833;border-radius:4px;padding:9px;font-size:11px}.preset-grid button.selected{color:#d8ff3e;background:#242b20;border-color:#d8ff3e}.controls{border-bottom:0!important}.range{margin-bottom:16px}.range div{justify-content:space-between;display:flex}.range label{color:#b7c0bb;text-transform:none;letter-spacing:0;margin:0;font:12px Inter}.range output{color:#d8ff3e;font:10px DM Mono}input[type=range]{accent-color:#d8ff3e;width:100%;height:3px}.seed{grid-template-columns:1fr 86px auto;align-items:center;gap:6px;display:grid}.seed label{margin:0}.seed input{color:#d8ff3e;background:#101412;border:1px solid #343c38;border-radius:3px;width:86px;padding:7px;font:11px DM Mono}.empty-material{color:#737d78;border:1px dashed #343c38;margin:18px;padding:18px;font-size:12px;line-height:1.5}.app footer{background:#141816;border-top:1px solid #2a302d;grid-column:1/-1;align-items:center;padding:0 18px;display:flex}.compare{align-items:center;gap:13px;width:min(540px,55%);display:flex}.compare b{color:#737d78;font:10px DM Mono}.compare b.on{color:#d8ff3e}.compare output{width:38px;font:11px DM Mono}.compare input{flex:1}.actions{gap:8px;margin-left:auto;display:flex}.actions button{color:#aab3ae;background:#1d221f;border:1px solid #353d39;border-radius:4px;padding:10px 17px;font-size:12px}.actions .bake{color:#101310;background:#d8ff3e;border-color:#d8ff3e;font-weight:700}.actions .bake:hover{background:#ebff95}@media (width<=900px){.app{grid-template-rows:58px minmax(360px,1fr) 300px 68px;grid-template-columns:220px 1fr}.right{border-top:1px solid #2a302d;border-left:0;grid-column:1/-1;grid-template-columns:220px 1fr 1fr;display:grid}.right .panel-title,.right .base,.right section{border-bottom:0;border-right:1px solid #2a302d}.right .empty-material{grid-column:2/-1}.brand small,.file-state em{display:none}}@media (width<=650px){body{overflow:auto}.app{height:auto;min-height:100vh;display:block}.app header{height:58px}.file-state{display:none}.left{height:auto}.stage{height:55vh}.right{display:block}.app footer{height:74px;position:sticky;bottom:0}.compare{width:100%}.actions button:not(.bake){display:none}}
