@font-face{font-family:Quantico;font-style:normal;font-weight:400;font-display:swap;src:url(./quantico-400-latin-D6-vndkY.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Quantico;font-style:normal;font-weight:700;font-display:swap;src:url(./quantico-700-latin-B08jxlwt.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Flex;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(./roboto-flex-400-700-latin-ext-gysdOMcS.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto Flex;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(./roboto-flex-400-700-latin-n-dP9qr2.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--zz-purple-100: #E3D9FF;--zz-purple-200: #C7B3FF;--zz-purple-300: #A98DFF;--zz-purple-400: #9071FF;--zz-purple-500: #6842FF;--zz-purple-600: #4F30DB;--zz-purple-700: #3921B7;--zz-purple-800: #261593;--zz-purple-900: #190C7A;--zz-gray-50: #E9F2FB;--zz-gray-100: #D3E5F6;--zz-gray-200: #AACAED;--zz-gray-300: #749AC9;--zz-gray-400: #466694;--zz-gray-500: #172B4D;--zz-gray-600: #102142;--zz-gray-700: #0B1837;--zz-gray-800: #07102C;--zz-gray-900: #040B24;--zz-red-100: #FFE7DB;--zz-red-200: #FFC9B7;--zz-red-300: #FFA593;--zz-red-400: #FF8378;--zz-red-500: #FF4B4B;--zz-red-600: #DB3645;--zz-red-700: #B7253F;--zz-red-800: #931738;--zz-red-900: #7A0E33;--zz-yellow-100: #FFF4CF;--zz-yellow-200: #FFE6A0;--zz-yellow-300: #FFD570;--zz-yellow-400: #FFC44D;--zz-yellow-500: #FFA812;--zz-green-100: #F5FDCE;--zz-green-200: #E8FB9E;--zz-green-300: #D5F36C;--zz-green-400: #BFE847;--zz-green-500: #A0D911;--zz-green-600: #83BA0C;--zz-green-700: #699C08;--zz-green-800: #507D05;--zz-green-900: #3F6803;--zz-blue-100: #CEE6FF;--zz-blue-200: #9ECAFE;--zz-blue-300: #6DAAFF;--zz-blue-400: #498EFF;--zz-blue-500: #0D61FF;--zz-blue-600: #094ADB;--zz-blue-700: #0637B7;--zz-blue-800: #042693;--zz-blue-900: #021B7A;--zz-cyan-100: #CAFDDD;--zz-cyan-200: #97FCC6;--zz-cyan-300: #62F7B7;--zz-cyan-400: #3BEFB2;--zz-cyan-500: #00E5AE;--zz-cyan-600: #00C4A8;--zz-cyan-700: #00A49D;--zz-cyan-800: #007E84;--zz-cyan-900: #005D6D;--zz-white: #FFFFFF;--zz-logo: #EA2A20;--zz-space-0: 0px;--zz-space-025: 2px;--zz-space-050: 4px;--zz-space-075: 6px;--zz-space-100: 8px;--zz-space-150: 12px;--zz-space-200: 16px;--zz-space-250: 20px;--zz-space-300: 24px;--zz-space-400: 32px;--zz-space-450: 36px;--zz-space-500: 40px;--zz-space-600: 48px;--zz-space-700: 56px;--zz-space-800: 64px;--zz-space-1000: 80px;--zz-space-1200: 96px;--zz-space-1400: 112px;--zz-space-1600: 128px;--zz-space-1800: 144px;--zz-space-2000: 160px;--zz-space-2400: 192px;--zz-space-2800: 224px;--zz-space-3200: 256px;--zz-radius-0: 0px;--zz-radius-050: 4px;--zz-radius-100: 8px;--zz-radius-150: 12px;--zz-radius-200: 16px;--zz-radius-250: 20px;--zz-radius-300: 24px;--zz-radius-400: 32px;--zz-shadow-low: 0px 2px 16px 0px rgba(12, 25, 39, .09);--zz-shadow-mid: 0px 8px 24px 0px rgba(12, 25, 39, .12);--zz-shadow-high: 0px 16px 48px -4px rgba(12, 25, 39, .18);--zz-font-display: "Quantico", "Roboto Flex", system-ui, sans-serif;--zz-font-body: "Roboto Flex", system-ui, -apple-system, "Segoe UI", sans-serif;--zz-font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--zz-type-display-xl: 700 72px/78px var(--zz-font-display);--zz-type-display-l: 700 64px/70px var(--zz-font-display);--zz-type-display-s: 700 48px/56px var(--zz-font-display);--zz-type-heading-2xl: 700 40px/46px var(--zz-font-display);--zz-type-heading-xl: 700 32px/38px var(--zz-font-display);--zz-type-heading-l: 700 24px/32px var(--zz-font-display);--zz-type-heading-m: 700 20px/26px var(--zz-font-display);--zz-type-heading-s: 700 18px/24px var(--zz-font-display);--zz-type-body-l: 400 16px/24px var(--zz-font-body);--zz-type-body-l-medium: 500 16px/24px var(--zz-font-body);--zz-type-body-l-semibold: 600 16px/24px var(--zz-font-body);--zz-type-body-m: 400 14px/20px var(--zz-font-body);--zz-type-body-m-medium: 500 14px/20px var(--zz-font-body);--zz-type-body-m-semibold: 600 14px/20px var(--zz-font-body);--zz-type-body-s: 400 12px/18px var(--zz-font-body);--zz-type-body-s-medium: 500 12px/18px var(--zz-font-body);--zz-type-body-s-semibold: 600 12px/18px var(--zz-font-body);--zz-type-body-xs: 400 10px/14px var(--zz-font-body);--zz-type-body-xs-medium: 500 10px/14px var(--zz-font-body);--zz-type-body-xs-semibold: 600 10px/14px var(--zz-font-body);--surface-app: var(--zz-gray-900);--surface-panel: var(--zz-gray-700);--surface-raised: var(--zz-gray-600);--surface-sunken: var(--zz-gray-800);--surface-overlay: rgba(4, 11, 36, .72);--border-subtle: var(--zz-gray-500);--border-strong: var(--zz-gray-400);--border-brand: var(--zz-purple-400);--text-primary: var(--zz-gray-50);--text-secondary: var(--zz-gray-100);--text-muted: var(--zz-gray-300);--text-disabled: var(--zz-gray-400);--text-on-brand: var(--zz-white);--brand: var(--zz-purple-500);--brand-hover: var(--zz-purple-400);--brand-pressed: var(--zz-purple-600);--brand-border: var(--zz-purple-400);--brand-text: var(--zz-purple-200);--brand-disabled-text: var(--zz-purple-100);--danger: var(--zz-red-500);--danger-hover: var(--zz-red-400);--danger-text: var(--zz-red-300);--warning: var(--zz-yellow-500);--warning-text: var(--zz-yellow-300);--success: var(--zz-green-500);--success-text: var(--zz-green-300);--info: var(--zz-blue-500);--accent: var(--zz-cyan-500);--accent-text: var(--zz-cyan-300);--shadow-low: var(--zz-shadow-low);--shadow-mid: var(--zz-shadow-mid);--shadow-high: var(--zz-shadow-high);--font-display: var(--zz-font-display);--font-body: var(--zz-font-body);--font-mono: var(--zz-font-mono);--focus-ring: 0 0 0 3px rgba(104, 66, 255, .45)}.ui-panel{display:flex;flex-direction:column;min-height:0;background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--zz-radius-250);overflow:hidden}.ui-panel--left{background:linear-gradient(155deg,rgba(104,66,255,.55) 0%,rgba(104,66,255,.1) 42%,transparent 68%),radial-gradient(80% 30% at 20% 100%,rgba(255,75,75,.14),transparent 70%),var(--surface-sunken)}.ui-panel--right{background:linear-gradient(205deg,rgba(255,75,75,.45) 0%,rgba(104,66,255,.16) 45%,transparent 70%),radial-gradient(80% 30% at 80% 100%,rgba(104,66,255,.18),transparent 70%),var(--surface-sunken)}.ui-panel__head{display:flex;align-items:center;justify-content:space-between;gap:var(--zz-space-100);padding:var(--zz-space-200) var(--zz-space-200) var(--zz-space-150);font-family:var(--font-display);font-weight:700;font-size:18px;letter-spacing:.04em;text-transform:uppercase}.ui-panel__head-btn{padding:0;background:none;border:0;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;text-align:left;cursor:pointer}.ui-panel.is-collapsed{flex:0 0 auto}.ui-panel.is-collapsed .ui-panel__head{padding-bottom:var(--zz-space-200);opacity:.6}.ui-panel__aside{font:var(--zz-type-body-s);color:var(--text-muted);letter-spacing:0;text-transform:none}.ui-panel__body{flex:1;min-height:0;overflow-y:auto;padding:0 var(--zz-space-200) var(--zz-space-200)}.ui-panel__foot{display:flex;flex-direction:column;gap:var(--zz-space-100);padding:var(--zz-space-200);border-top:1px solid var(--border-subtle)}.ui-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;cursor:pointer;white-space:nowrap;font-family:var(--font-body);transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s}.ui-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ui-btn--block{display:flex;width:100%}.ui-btn--sm{min-height:36px;padding:var(--zz-space-100);gap:var(--zz-space-050);border-radius:var(--zz-radius-150);font:var(--zz-type-body-m-semibold)}.ui-btn--md,.ui-btn--lg{font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.ui-btn--md{min-height:48px;padding:var(--zz-space-150);gap:var(--zz-space-100);border-radius:var(--zz-radius-250);font-size:14px}.ui-btn--lg{min-height:56px;padding:var(--zz-space-200);gap:var(--zz-space-100);border-radius:var(--zz-radius-250);font-size:16px}.ui-btn--brand{--btn-base: var(--brand);--btn-hover: var(--brand-hover);--btn-pressed: var(--brand-pressed);--btn-on: var(--text-on-brand);--btn-quiet: var(--brand-text)}.ui-btn--mint{--btn-base: var(--accent);--btn-hover: var(--zz-cyan-400);--btn-pressed: var(--zz-cyan-600);--btn-on: var(--zz-gray-900);--btn-quiet: var(--accent-text)}.ui-btn--neutral{--btn-base: var(--surface-raised);--btn-hover: var(--border-subtle);--btn-pressed: var(--surface-sunken);--btn-on: var(--text-primary);--btn-quiet: var(--text-secondary)}.ui-btn--danger{--btn-base: var(--danger);--btn-hover: var(--danger-hover);--btn-pressed: var(--zz-red-600);--btn-on: var(--zz-gray-900);--btn-quiet: var(--danger-text)}.ui-btn--filled{background:var(--btn-base);color:var(--btn-on)}.ui-btn--filled:hover:not(:disabled){background:var(--btn-hover)}.ui-btn--filled:active:not(:disabled),.ui-btn--filled.is-loading{background:var(--btn-pressed)}.ui-btn--gradient{background:linear-gradient(90deg,var(--zz-purple-500),var(--zz-red-500));color:var(--text-on-brand);box-shadow:0 10px 28px -8px var(--zz-purple-500)}.ui-btn--gradient:hover:not(:disabled){background:linear-gradient(90deg,var(--zz-purple-400),var(--zz-red-400))}.ui-btn--gradient:active:not(:disabled),.ui-btn--gradient.is-loading{background:linear-gradient(90deg,var(--zz-purple-600),var(--zz-red-600));box-shadow:none}.ui-btn--outlined{background:none;border-color:var(--border-strong);color:var(--btn-quiet)}.ui-btn--outlined:hover:not(:disabled),.ui-btn--ghost:hover:not(:disabled){background:var(--surface-raised);color:var(--btn-on)}.ui-btn--outlined:active:not(:disabled),.ui-btn--ghost:active:not(:disabled){background:var(--btn-pressed)}.ui-btn--ghost{background:none;color:var(--btn-quiet)}.ui-btn:disabled{cursor:default;opacity:.5;box-shadow:none}.ui-btn__spinner{width:1em;height:1em;flex:none;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ui-spin .7s linear infinite}@keyframes ui-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.ui-btn__spinner{animation-duration:2.4s}}.ui-chip{padding:var(--zz-space-075) var(--zz-space-150);background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--zz-radius-250);color:var(--text-secondary);font:var(--zz-type-body-s-semibold);cursor:pointer;transition:border-color .15s,color .15s}.ui-chip:hover{border-color:var(--border-strong);color:var(--text-primary)}.ui-chip.is-active{background:linear-gradient(90deg,var(--zz-purple-500),var(--zz-red-600));border-color:transparent;color:var(--text-on-brand)}.ui-chip:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ui-chips{display:flex;flex-wrap:wrap;gap:var(--zz-space-075);padding-bottom:var(--zz-space-150)}.ui-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--zz-space-100)}.ui-tile{position:relative;display:block;width:100%;padding:0;text-align:left;background:var(--surface-panel);border:1px solid var(--border-subtle);border-radius:var(--zz-radius-200);overflow:hidden;cursor:pointer;transition:border-color .15s,box-shadow .15s}.ui-tile:hover{border-color:var(--accent);box-shadow:0 10px 30px -12px var(--zz-cyan-700)}.ui-tile:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ui-tile.is-active{border-color:var(--brand);border-left:3px solid var(--brand)}.ui-tile__shot{aspect-ratio:1;background:radial-gradient(70% 70% at 50% 35%,var(--zz-gray-600),var(--zz-gray-900)) center / cover no-repeat;display:grid;place-items:center;font-size:22px;color:var(--text-muted)}.ui-tile__tag{position:absolute;top:var(--zz-space-075);left:var(--zz-space-075);padding:1px var(--zz-space-075);border-radius:var(--zz-radius-100);background:var(--surface-overlay);font-size:9px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-text)}.ui-tile__meta{display:block;padding:var(--zz-space-075)}.ui-tile__name{display:block;font:var(--zz-type-body-xs-semibold);color:var(--text-primary);word-break:break-all}.ui-tile__sub{display:block;margin-top:2px;font:var(--zz-type-body-xs);color:var(--text-muted)}.ui-field{display:flex;flex-direction:column;gap:var(--zz-space-100)}.ui-field__label{font:var(--zz-type-body-m-medium);color:var(--text-secondary)}.ui-field__hint{font:var(--zz-type-body-s-medium);color:var(--text-secondary)}.ui-field__hint.is-error{color:var(--danger)}.ui-control{width:100%;min-width:0;background:var(--surface-raised);color:var(--text-primary);border:1px solid var(--border-subtle);font-family:var(--font-body);transition:border-color .15s}.ui-control--sm{min-height:32px;padding:var(--zz-space-050) var(--zz-space-100);border-radius:var(--zz-radius-100);font:var(--zz-type-body-m)}.ui-control--md{min-height:40px;padding:var(--zz-space-100) var(--zz-space-150);border-radius:var(--zz-radius-150);font:var(--zz-type-body-m-medium)}.ui-control:hover:not(:disabled){border-color:var(--border-strong)}.ui-control:focus-visible{outline:none;border-color:var(--border-brand);box-shadow:var(--focus-ring)}.ui-control:disabled{color:var(--text-disabled);cursor:default}.ui-field.is-error .ui-control{border-color:var(--danger)}.ui-badge{display:inline-flex;align-items:center;gap:var(--zz-space-050);padding:var(--zz-space-025) var(--zz-space-100);border:1px solid transparent;border-radius:var(--zz-radius-150);font:var(--zz-type-body-xs-medium);white-space:nowrap}.ui-badge--neutral{background:var(--surface-raised);border-color:var(--border-subtle);color:var(--text-secondary)}.ui-badge--brand{background:var(--brand);color:var(--text-on-brand)}.ui-badge--success{background:none;border-color:var(--success);color:var(--success)}.ui-badge--danger{background:none;border-color:var(--danger);color:var(--danger)}.ui-badge--warning{background:none;border-color:var(--warning);color:var(--warning)}.ui-card{background:var(--surface-panel);border:1px solid var(--border-subtle);border-radius:var(--zz-radius-200);padding:var(--zz-space-150)}.ui-card--interactive{cursor:pointer;transition:border-color .15s,background-color .15s}.ui-card--interactive:hover{background:var(--surface-raised);border-color:var(--border-brand)}.ui-card--interactive.is-selected{border-color:var(--brand)}.ui-message{display:flex;align-items:center;justify-content:space-between;gap:var(--zz-space-100);font:var(--zz-type-body-s);color:var(--text-muted)}.ui-message--error{color:var(--danger)}.ui-message--warning{color:var(--warning)}.ui-message--success{color:var(--success)}.ui-message__body{min-width:0}.ui-message__dismiss{flex:none;padding:0 var(--zz-space-050);background:none;border:0;color:inherit;cursor:pointer}.ui-tabs{display:flex;gap:var(--zz-space-075)}.ui-tab{padding:var(--zz-space-100) var(--zz-space-200);background:none;border:1px solid transparent;border-radius:var(--zz-radius-250);color:var(--text-muted);font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:color .15s,background .15s}.ui-tab:hover{color:var(--text-primary)}.ui-tab.is-active{background:linear-gradient(90deg,var(--zz-purple-500),var(--zz-red-600));color:var(--text-on-brand);box-shadow:0 6px 20px -6px var(--zz-purple-500)}.ui-tab:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ui-slider{display:flex;align-items:center;gap:var(--zz-space-100)}.ui-slider__label{flex:0 0 56px;font:var(--zz-type-body-s);color:var(--text-muted)}.ui-slider__range{flex:1 1 auto;min-width:0;accent-color:var(--brand)}.ui-slider__num{flex:0 0 64px;width:64px;font:var(--zz-type-body-s)}*{box-sizing:border-box}body{margin:0;background:var(--surface-app);color:var(--text-primary);font:var(--zz-type-body-m)}.app{display:flex;flex-direction:column;height:100vh}.topbar{display:flex;align-items:center;gap:var(--zz-space-300);flex:none;padding:var(--zz-space-150) var(--zz-space-250);background:linear-gradient(180deg,var(--zz-gray-800),var(--surface-app));border-bottom:1px solid var(--border-subtle)}.brand{display:flex;align-items:center;gap:var(--zz-space-100)}.brand svg{width:26px;height:26px;flex:none}.brand span{font-family:var(--font-display);font-weight:700;font-size:20px;letter-spacing:.04em}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:var(--zz-space-075)}.workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(440px,5fr) minmax(280px,3fr);gap:var(--zz-space-200);padding:var(--zz-space-200)}.workspace--textures{grid-template-columns:320px 1fr 420px}.col{display:flex;flex-direction:column;min-height:0;gap:var(--zz-space-200)}.col>.ui-panel:not(.is-collapsed){flex:1}.avatar-bar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--zz-space-150)}.gender-toggle{display:flex;gap:var(--zz-space-075)}.avatar-bar__status{display:flex;align-items:center}.avatar-bar__baking{font:var(--zz-type-body-s);color:var(--text-muted)}.avatar-bar__error{flex-basis:100%}.stage{position:relative;flex:1;min-height:0;display:flex;border:1px solid var(--border-subtle);border-radius:var(--zz-radius-250);background:linear-gradient(180deg,var(--zz-gray-800),var(--zz-gray-900));overflow:hidden}.stage-floor{position:absolute;left:-10%;right:-10%;bottom:0;height:42%;background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);background-size:44px 30px;transform:perspective(320px) rotateX(62deg);transform-origin:bottom;-webkit-mask-image:linear-gradient(transparent,#000 55%);mask-image:linear-gradient(transparent,#000 55%);pointer-events:none}.stage-stats{position:absolute;z-index:2;top:var(--zz-space-150);left:var(--zz-space-150);display:flex;gap:var(--zz-space-075);pointer-events:none}.stat{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:76px;padding:var(--zz-space-100) var(--zz-space-150);background:var(--surface-overlay);border:1px solid var(--border-subtle);border-radius:var(--zz-radius-150);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.stat b{font-family:var(--font-display);font-size:18px}.stat span{font:var(--zz-type-body-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.viewer{position:relative;z-index:1;flex:1;min-width:0;display:flex;flex-direction:column}.viewer-canvas{position:relative;flex:1;display:grid;place-items:center;color:var(--text-muted)}.viewer-message{padding:0 var(--zz-space-150);text-align:center}.catalog-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--zz-space-075);padding-bottom:var(--zz-space-150)}.catalog-filters .ui-control{width:auto;margin-left:auto}.face-row{display:flex;flex-wrap:wrap;gap:var(--zz-space-050);padding:var(--zz-space-050) 0}.face-section+.face-section{margin-top:var(--zz-space-100);padding-top:var(--zz-space-100);border-top:1px solid var(--border-subtle)}.face-section__title{display:flex;align-items:center;gap:var(--zz-space-050);margin:0;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.face-section__badge{padding:0 var(--zz-space-050);border-radius:999px;background:var(--surface-sunken);font-size:.625rem;letter-spacing:0;text-transform:none}.face-tones{display:flex;flex-wrap:wrap;gap:var(--zz-space-050);padding:var(--zz-space-050) 0}.face-tone{width:28px;height:28px;padding:0;border:2px solid transparent;border-radius:50%;outline:1px solid var(--border-subtle);cursor:pointer}.face-tone:hover{transform:scale(1.08)}.face-tone.is-active{border-color:var(--text-primary);outline-width:2px}.emote-row{display:flex;align-items:center;gap:var(--zz-space-100);padding:var(--zz-space-050) 0;border-bottom:1px solid var(--border-subtle)}.emote-row:last-child{border-bottom:0}.emote-row__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--zz-type-body-s)}.emote-row.is-active .emote-row__name{color:var(--accent-text)}.hash{display:flex;align-items:center;justify-content:center;gap:var(--zz-space-075);font-family:var(--font-mono);font-size:11px;color:var(--accent-text);word-break:break-all}.session-gate{display:flex;align-items:center;justify-content:center;height:100vh;padding:var(--zz-space-200);background:var(--surface-app)}.session-gate__form{width:100%;max-width:360px}.validator-page{flex:1;min-height:0;display:flex;flex-direction:column;padding:var(--zz-space-200)}.qa-iframe{flex:1;width:100%;border:1px solid var(--border-subtle);border-radius:var(--zz-radius-250);background:var(--surface-app)}.validator-status{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--zz-space-150);text-align:center;color:var(--text-muted);font:var(--zz-type-body-m)}.validator-status code{padding:1px 5px;border-radius:var(--zz-radius-050);background:var(--surface-panel);color:var(--text-primary);font-family:var(--font-mono)}.asset-row{display:flex;align-items:center;gap:var(--zz-space-100);width:100%;padding:var(--zz-space-075);margin-bottom:var(--zz-space-075);background:none;border:1px solid transparent;border-radius:var(--zz-radius-150);color:inherit;text-align:left;cursor:pointer;transition:background .15s,border-color .15s}.asset-row:hover{background:var(--surface-raised)}.asset-row.is-selected{background:linear-gradient(90deg,rgba(104,66,255,.22),transparent);border-color:var(--border-subtle);border-left:3px solid var(--brand);padding-left:calc(var(--zz-space-075) - 2px)}.asset-row__thumb{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:var(--zz-radius-100);object-fit:cover;background:var(--zz-gray-900) center / cover no-repeat;color:var(--border-strong)}.asset-row__info{flex:1;min-width:0}.asset-row__name{display:block;font:var(--zz-type-body-s-semibold);word-break:break-all}.asset-row__slot{display:block;margin-top:2px;font:var(--zz-type-body-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-text)}.asset-row__del{flex:none;padding:4px 6px;background:none;border:0;border-radius:var(--zz-radius-050);color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity .15s,color .15s}.asset-row:hover .asset-row__del,.asset-row.is-selected .asset-row__del{opacity:.7}.asset-row__del:hover{opacity:1;color:var(--danger)}.asset-row__del:disabled{opacity:.3;cursor:default}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--zz-space-100);padding:var(--zz-space-400) var(--zz-space-200);text-align:center;color:var(--text-muted)}.empty-state p{margin:0}.empty-state__hint{font:var(--zz-type-body-s)}.texture-editor-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--zz-space-100);font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.texture-editor-controls{display:flex;flex-direction:column;gap:var(--zz-space-100);padding:var(--zz-space-100) 0}.texture-editor-actions{display:flex;flex-direction:column;gap:var(--zz-space-100)}.texture-editor-controls input[type=file]{font:var(--zz-type-body-s);color:var(--text-muted)}.texture-editor-controls input[type=file]::file-selector-button{margin-right:var(--zz-space-100);padding:var(--zz-space-050) var(--zz-space-100);background:var(--surface-raised);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--zz-radius-100);font:var(--zz-type-body-s-medium);cursor:pointer}.texture-editor-controls input[type=file]::file-selector-button:hover{border-color:var(--border-strong)}.preset-row{display:flex;align-items:center;gap:var(--zz-space-100)}.preset-row>*{flex:1 1 50%;min-width:0}.preset-actions{display:flex;gap:var(--zz-space-100)}.preset-actions .ui-btn{flex:1 1 auto}.tint-row{display:flex;align-items:flex-start;gap:var(--zz-space-100)}.tint-row .ui-slider__label{padding-top:3px}.tint-swatches{display:flex;flex-wrap:wrap;gap:var(--zz-space-075);flex:1 1 auto}.tint-swatch{width:22px;height:22px;padding:0;border:1px solid var(--border-subtle);border-radius:var(--zz-radius-050);cursor:pointer}.tint-swatch.selected{outline:2px solid var(--brand);outline-offset:1px}.tint-none{background:linear-gradient(135deg,#333 42%,#e53935 42%,#e53935 58%,#333 58%)}.tint-custom{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;background:conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.tint-custom input[type=color]{opacity:0;width:140%;height:140%;padding:0;border:0;background:none;cursor:pointer}
