:root{--tg-sidebar-width:240px;--tg-panel-width:300px;--tg-bg:#0d1117;--tg-panel-bg:rgba(22,27,34,.85);--tg-border:hsla(0,0%,100%,.08);--tg-accent:#58a6ff;--tg-text:#c9d1d9;--tg-text-dim:#8b949e;--tg-hover:hsla(0,0%,100%,.05)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--tg-bg);color:var(--tg-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px;overflow:hidden}#tg-back{color:var(--tg-text-dim);font-size:20px;left:calc(var(--tg-sidebar-width) + 12px);opacity:.6;position:fixed;text-decoration:none;top:12px;transition:opacity .2s;z-index:20}#tg-back:hover{opacity:1}#tg-viewport{bottom:0;left:var(--tg-sidebar-width);position:fixed;right:var(--tg-panel-width);top:0}#tg-viewport canvas{display:block}.tg-sidebar{backdrop-filter:blur(12px);background:var(--tg-panel-bg);border-right:1px solid var(--tg-border);bottom:0;left:0;overflow-y:auto;padding:16px;position:fixed;top:0;width:var(--tg-sidebar-width);z-index:10}.tg-sidebar::-webkit-scrollbar{width:4px}.tg-sidebar::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.15);border-radius:2px}.tg-sidebar__section{margin-bottom:20px}.tg-sidebar__section h3{color:var(--tg-text-dim);font-size:11px;letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase}.tg-thumbnail{align-items:center;aspect-ratio:1;border:2px dashed var(--tg-border);border-radius:8px;cursor:pointer;display:flex;justify-content:center;overflow:hidden;position:relative;transition:border-color .2s;width:100%}.tg-thumbnail.drag-over,.tg-thumbnail:hover{border-color:var(--tg-accent)}.tg-thumbnail .tg-thumbnail__placeholder{color:var(--tg-text-dim);font-size:12px;pointer-events:none;text-align:center}.tg-thumbnail img{display:none;height:100%;inset:0;-o-object-fit:cover;object-fit:cover;position:absolute;width:100%}.tg-thumbnail input[type=file]{display:none}.tg-map-list{display:flex;flex-direction:column;gap:6px}.tg-map-item{align-items:center;border:2px solid transparent;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:4px;transition:border-color .15s,background .15s}.tg-map-item:hover{background:var(--tg-hover)}.tg-map-item.active{border-color:var(--tg-accent)}.tg-map-item .tg-map-thumb{background:#161b22;border-radius:4px;flex-shrink:0;height:48px;width:48px}.tg-map-item .tg-map-label{flex:1;font-size:12px;font-weight:500}.tg-map-item .tg-map-toggle{align-items:center;cursor:pointer;display:flex;flex-shrink:0;margin:0}.tg-map-item .tg-map-toggle input[type=checkbox]{accent-color:var(--tg-accent);cursor:pointer;height:14px;width:14px}.tg-map-item .tg-btn-download{background:none;border:none;border-radius:4px;color:var(--tg-text-dim);cursor:pointer;font-size:16px;padding:4px 6px;transition:color .15s,background .15s}.tg-map-item .tg-btn-download:hover{background:var(--tg-hover);color:var(--tg-accent)}.tg-btn-primary{background:var(--tg-accent);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;margin-top:12px;padding:10px;transition:opacity .2s;width:100%}.tg-btn-primary:disabled{cursor:not-allowed;opacity:.3}.tg-btn-primary:not(:disabled):hover{opacity:.85}.tg-panel{backdrop-filter:blur(12px);background:var(--tg-panel-bg);border-left:1px solid var(--tg-border);bottom:0;overflow-y:auto;padding:16px;position:fixed;right:0;top:0;width:var(--tg-panel-width);z-index:10}.tg-panel::-webkit-scrollbar{width:4px}.tg-panel::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.15);border-radius:2px}.tg-panel__section{border-bottom:1px solid var(--tg-border);margin-bottom:16px;padding-bottom:16px}.tg-panel__section:last-child{border-bottom:none}.tg-panel__section h3{color:var(--tg-text-dim);font-size:11px;letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase}.tg-panel__section .tg-section-header h3{margin-bottom:0}.tg-panel__section label{align-items:center;color:var(--tg-text);display:flex;font-size:12px;justify-content:space-between;margin-bottom:4px;margin-top:8px}.tg-panel__section .tg-section-body>label:first-child,.tg-panel__section label:first-of-type{margin-top:0}.tg-panel__section .tg-val{color:var(--tg-accent);font-size:11px;font-weight:600;min-width:30px;text-align:right}.tg-panel__section input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:hsla(0,0%,100%,.1);border-radius:2px;height:4px;margin-bottom:2px;outline:none;width:100%}.tg-panel__section input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--tg-accent);border-radius:50%;cursor:pointer;height:14px;width:14px}.tg-panel__section input[type=range]::-moz-range-thumb{background:var(--tg-accent);border:none;border-radius:50%;cursor:pointer;height:14px;width:14px}.tg-panel__section .tg-checkbox{align-items:center;cursor:pointer;display:flex;gap:6px;margin-top:8px}.tg-panel__section .tg-checkbox input[type=checkbox]{accent-color:var(--tg-accent)}.tg-primitive-selector{display:flex;flex-wrap:wrap;gap:4px}.tg-prim-btn{background:hsla(0,0%,100%,.05);border:1px solid var(--tg-border);border-radius:4px;color:var(--tg-text);cursor:pointer;flex:1 1 calc(33% - 4px);font-size:11px;padding:6px 4px;transition:background .15s,border-color .15s}.tg-prim-btn:hover{background:var(--tg-hover)}.tg-prim-btn.active{background:rgba(88,166,255,.1);border-color:var(--tg-accent)}.tg-lighting-selector{display:flex;flex-wrap:wrap;gap:4px}.tg-light-btn{background:hsla(0,0%,100%,.05);border:1px solid var(--tg-border);border-radius:4px;color:var(--tg-text);cursor:pointer;flex:1 1 calc(50% - 4px);font-size:11px;padding:6px 4px;transition:background .15s,border-color .15s}.tg-light-btn:hover{background:var(--tg-hover)}.tg-light-btn.active{background:rgba(88,166,255,.1);border-color:var(--tg-accent)}.tg-channel-selector{display:flex;gap:4px;margin-bottom:8px}.tg-chan-btn{background:hsla(0,0%,100%,.05);border:1px solid var(--tg-border);border-radius:4px;color:var(--tg-text);cursor:pointer;flex:1;font-size:11px;padding:5px 2px;transition:background .15s,border-color .15s}.tg-chan-btn:hover{background:var(--tg-hover)}.tg-chan-btn.active{background:rgba(88,166,255,.1);border-color:var(--tg-accent)}.tg-naming-label{display:block;margin-bottom:4px}.tg-naming-label,.tg-text-input{color:var(--tg-text);font-size:12px}.tg-text-input{background:hsla(0,0%,100%,.06);border:1px solid var(--tg-border);border-radius:4px;outline:none;padding:6px 10px;transition:border-color .2s;width:100%}.tg-text-input::-moz-placeholder{color:var(--tg-text-dim)}.tg-text-input::placeholder{color:var(--tg-text-dim)}.tg-text-input:focus{border-color:var(--tg-accent)}.tg-naming-preview{background:rgba(0,0,0,.25);border-radius:4px;color:var(--tg-text-dim);font-family:Courier New,monospace;font-size:11px;margin-top:6px;padding:6px 8px}#tg-mesh-input{display:none}.tg-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.tg-section-header h3{margin-bottom:0}.tg-btn-view-map{background:none;border:1px solid var(--tg-border);border-radius:4px;color:var(--tg-text-dim);cursor:pointer;font-size:14px;line-height:1.5;padding:2px 7px;transition:color .15s,border-color .15s,background .15s}.tg-btn-view-map:hover{background:rgba(88,166,255,.08);border-color:var(--tg-accent);color:var(--tg-accent)}.tg-panel__section.collapsed .tg-section-body{display:none}.tg-collapse-btn{background:none;border:none;color:var(--tg-text-dim);cursor:pointer;font-size:12px;line-height:1;padding:2px 4px;transition:color .15s,transform .2s}.tg-collapse-btn:hover{color:var(--tg-text)}.tg-panel__section.collapsed .tg-collapse-btn{transform:rotate(-90deg)}.tg-section-header__actions{align-items:center;display:flex;gap:4px}.tg-btn-group{display:flex;gap:4px;margin-bottom:6px}.tg-btn-group button{background:hsla(0,0%,100%,.05);border:1px solid var(--tg-border);border-radius:4px;color:var(--tg-text);cursor:pointer;flex:1;font-size:11px;padding:5px 4px;transition:background .15s,border-color .15s}.tg-btn-group button:hover{background:var(--tg-hover)}.tg-btn-group button.active{background:rgba(88,166,255,.1);border-color:var(--tg-accent);color:var(--tg-accent)}.tg-separator{background:var(--tg-border);height:1px;margin:10px 0}.tg-btn-block{margin-top:10px;width:100%}#tg-overlay{align-items:center;display:flex;inset:0;justify-content:center;position:fixed;z-index:500}#tg-overlay[hidden]{display:none}#tg-overlay-bg{backdrop-filter:blur(6px);background:rgba(0,0,0,.92);cursor:pointer;inset:0;position:absolute}.tg-overlay__content{display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 80px);max-width:calc(100vw - 120px);position:relative;z-index:1}.tg-overlay__header{align-items:center;display:flex;justify-content:space-between}.tg-overlay__label{color:var(--tg-text-dim);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.tg-overlay__close{background:hsla(0,0%,100%,.07);border:1px solid var(--tg-border);border-radius:4px;color:var(--tg-text-dim);cursor:pointer;font-size:12px;padding:5px 12px;transition:color .15s,background .15s}.tg-overlay__close:hover{background:hsla(0,0%,100%,.12);color:var(--tg-text)}.tg-overlay__compare{border:1px solid var(--tg-border);border-radius:4px;cursor:col-resize;display:inline-block;overflow:hidden;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tg-overlay__img{display:block;image-rendering:pixelated;max-height:calc(100vh - 150px);max-width:calc(100vw - 120px)}.tg-overlay__img,.tg-overlay__img--map{-o-object-fit:contain;object-fit:contain}.tg-overlay__img--map{clip-path:inset(0 0 0 50%);height:100%;inset:0;position:absolute;width:100%}.tg-overlay__divider{background:hsla(0,0%,100%,.9);bottom:0;left:50%;pointer-events:none;position:absolute;top:0;transform:translateX(-50%);width:2px;z-index:2}.tg-overlay__handle{align-items:center;background:hsla(0,0%,100%,.95);border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.5);color:#0d1117;cursor:col-resize;display:flex;font-size:13px;height:32px;justify-content:center;left:50%;pointer-events:all;position:absolute;top:50%;transform:translate(-50%,-50%);width:32px}.tg-overlay__magnifier{border:2px solid hsla(0,0%,100%,.4);border-radius:50%;box-shadow:0 4px 16px rgba(0,0,0,.7);image-rendering:pixelated;pointer-events:none;position:absolute;z-index:10}.tg-overlay__magnifier[hidden]{display:none}.tg-preset-save{display:flex;gap:6px;margin-bottom:8px}.tg-preset-save .tg-text-input{flex:1;min-width:0}.tg-select{background:hsla(0,0%,100%,.06);border:1px solid var(--tg-border);border-radius:4px;color:var(--tg-text);cursor:pointer;font-size:12px;margin-bottom:6px;outline:none;padding:6px 8px;width:100%}.tg-select:focus{border-color:var(--tg-accent)}.tg-select option{background:#1c2333}.tg-preset-actions,.tg-preset-io{display:flex;gap:6px;margin-bottom:6px}.tg-btn-sm{background:hsla(0,0%,100%,.06);border:1px solid var(--tg-border);border-radius:4px;color:var(--tg-text);cursor:pointer;flex:1;font-size:11px;padding:5px 8px;transition:background .15s,border-color .15s,color .15s}.tg-btn-sm:hover{background:var(--tg-hover);border-color:hsla(0,0%,100%,.2)}.tg-btn-sm.tg-btn-accent{background:rgba(88,166,255,.15);border-color:var(--tg-accent);color:var(--tg-accent)}.tg-btn-sm.tg-btn-accent:hover{background:rgba(88,166,255,.25)}.tg-btn-sm.tg-btn-danger:hover{background:rgba(248,81,73,.1);border-color:#f85149;color:#f85149}.tg-label-end{align-items:center;display:flex;gap:5px}.tg-help{align-items:center;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.15);border-radius:50%;color:var(--tg-text-dim);cursor:help;display:inline-flex;flex-shrink:0;font-size:9px;font-weight:700;height:14px;justify-content:center;line-height:1;position:relative;transition:background .15s,color .15s;width:14px}.tg-help:hover{background:rgba(88,166,255,.15);border-color:var(--tg-accent);color:var(--tg-accent)}.tg-help:after{background:#1c2333;border:1px solid rgba(88,166,255,.3);border-radius:6px;box-shadow:0 4px 16px rgba(0,0,0,.5);color:var(--tg-text);content:attr(data-tip);font-size:11px;font-weight:400;line-height:1.45;opacity:0;padding:7px 10px;pointer-events:none;position:absolute;right:calc(100% + 8px);top:50%;transform:translateY(-50%);transition:opacity .15s;white-space:normal;width:210px;z-index:200}.tg-help:hover:after{opacity:1}
/*# sourceMappingURL=textureGenerator.css.map*/