@tailwind base;@tailwind components;@tailwind utilities;:root{--assa-bg: #09090b;--assa-surface: rgba(255, 255, 255, .03);--assa-surface-hover: rgba(255, 255, 255, .08);--assa-border: rgba(255, 255, 255, .08);--assa-border-strong: rgba(255, 255, 255, .2);--assa-ink: #a1a1aa;--assa-ink-active: #ffffff;--assa-accent: #22c55e;--assa-accent-soft: rgba(34, 197, 94, .15);--assa-danger: #f43f5e;--assa-danger-soft: rgba(244, 63, 94, .15)}.assa-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:8px;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--assa-ink);background:var(--assa-surface);border:1px solid var(--assa-border);cursor:pointer;transition:all .2s ease}.assa-btn:hover{color:var(--assa-ink-active);background:var(--assa-surface-hover);border-color:var(--assa-border-strong)}.assa-btn-active{color:var(--assa-ink-active);background:#ffffff1a;border-color:var(--assa-border-strong)}.assa-btn-accent{color:var(--assa-accent);background:var(--assa-accent-soft);border-color:#22c55e80}.assa-btn-danger{color:var(--assa-danger);background:var(--assa-danger-soft);border-color:#f43f5e80}html,body,#root{height:100%}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.custom-scrollbar::-webkit-scrollbar{width:4px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#fff3}.hud-panel{background:#1e1e22eb;backdrop-filter:blur(24px) saturate(1.3);-webkit-backdrop-filter:blur(24px) saturate(1.3);border:1px solid rgba(255,255,255,.07);border-radius:20px;box-shadow:0 8px 32px #00000080,0 0 0 1px #ffffff08 inset;transition:all .4s cubic-bezier(.16,1,.3,1)}.hud-panel:hover{border-color:#ffffff1f;box-shadow:0 12px 40px #0009,0 0 0 1px #ffffff0d inset}.hud-left-enter{animation:slideInLeft .5s cubic-bezier(.16,1,.3,1) forwards}.hud-left-exit{animation:slideOutLeft .4s cubic-bezier(.7,0,.84,0) forwards}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutLeft{0%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:0}}.hud-right-enter{animation:slideInRight .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.hud-bottom-enter{animation:slideInBottom .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideInBottom{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.fidelity-legend-bar{height:8px;border-radius:4px;background:linear-gradient(to right,#ef4444,#ef4444 30%,#f59e0b 45%,#eab308 55%,#eab308,#22c55e,#22c55e);box-shadow:0 0 12px #22c55e33}.anchor-zone-ok{position:relative}.anchor-zone-ok:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;border-radius:50%;background:#22c55e;transform:translate(-50%,-50%);box-shadow:0 0 8px #22c55e99;animation:anchorPulse 2s ease-in-out infinite}.anchor-zone-warn:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;border-radius:50%;background:#ef4444;transform:translate(-50%,-50%);box-shadow:0 0 8px #ef444499;animation:anchorPulse 1s ease-in-out infinite}@keyframes anchorPulse{0%,to{opacity:1;transform:translate(-50%,-50%) scale(1)}50%{opacity:.6;transform:translate(-50%,-50%) scale(1.3)}}.viewport-mode-selector{display:flex;align-items:center;gap:2px;padding:3px;background:#00000080;border-radius:12px;border:1px solid rgba(255,255,255,.06)}.viewport-mode-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:8px;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#a1a1aa;transition:all .2s ease;cursor:pointer;border:none;background:transparent;white-space:nowrap}.viewport-mode-btn:hover{color:#fff;background:#ffffff0f}.viewport-mode-btn.active,.viewport-mode-btn.active-fidelity,.viewport-mode-btn.active-fusion,.viewport-mode-btn.active-refplane{color:#fff;background:#ffffff14}.viewport-mode-separator{display:flex;align-items:center;padding:0 4px;color:#ffffff26;font-size:11px;font-weight:400;-webkit-user-select:none;user-select:none;pointer-events:none}.section-collapsible{overflow:hidden;transition:max-height .4s cubic-bezier(.16,1,.3,1),opacity .3s ease}.section-collapsed{max-height:0;opacity:0}.section-expanded{max-height:600px;opacity:1}.gpu-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#22c55e1a;border:1px solid rgba(34,197,94,.2);border-radius:8px;font-size:8px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:#22c55e}.gpu-badge-dot{width:5px;height:5px;border-radius:50%;background:#22c55e;box-shadow:0 0 6px #22c55ecc;animation:gpuPulse 2s ease-in-out infinite}@keyframes gpuPulse{0%,to{opacity:1}50%{opacity:.4}}.pose-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;background:linear-gradient(to right,#ef44444d,#ffffff26 50%,#ef44444d);border-radius:2px;outline:none}.pose-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;cursor:grab;box-shadow:0 2px 8px #0006;transition:transform .15s ease}.pose-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.pose-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.1)}.processing-ring{position:relative;width:96px;height:96px}.processing-ring:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:4px solid rgba(255,255,255,.1);border-radius:50%}.processing-ring:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:4px solid transparent;border-top-color:#fff;border-radius:50%;animation:processSpin 1s linear infinite}@keyframes processSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.toolbar-tool-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:8px;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#a1a1aa;background:#ffffff08;border:1px solid rgba(255,255,255,.06);cursor:pointer;transition:all .2s ease;white-space:nowrap}.toolbar-tool-btn:hover{color:#fff;background:#ffffff14;border-color:#ffffff26}.toolbar-tool-btn-active,.toolbar-tool-btn-purple.toolbar-tool-btn-active,.toolbar-tool-btn-amber.toolbar-tool-btn-active,.toolbar-tool-btn-cyan.toolbar-tool-btn-active{color:#fff;background:#ffffff1a;border-color:#fff3;box-shadow:0 0 8px #ffffff0d}.toolbar-range-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:3px;background:#ffffff1a;border-radius:2px;outline:none;cursor:pointer}.toolbar-range-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:10px;height:10px;border-radius:50%;background:#fff9;border:1px solid rgba(255,255,255,.2);cursor:pointer;transition:background .15s}.toolbar-range-slider::-webkit-slider-thumb:hover{background:#ffffffe6}.toolbar-range-slider::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:#fff9;border:1px solid rgba(255,255,255,.2);cursor:pointer}.toolbar-tool-btn-running{animation:toolPulse 1.5s ease-in-out infinite}@keyframes toolPulse{0%,to{border-color:#f59e0b33}50%{border-color:#f59e0b99}}.toolbar-dialog{position:absolute;top:calc(100% + 8px);min-width:200px;max-width:240px;padding:12px;background:#18181cf5;-webkit-backdrop-filter:blur(24px) saturate(1.3);backdrop-filter:blur(24px) saturate(1.3);border:1px solid rgba(255,255,255,.08);border-radius:12px;box-shadow:0 8px 32px #00000080,0 2px 8px #0000004d;z-index:100;animation:toolDialogIn .15s ease-out}@keyframes toolDialogIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.toolbar-dialog-header{display:flex;align-items:center;gap:6px;margin-bottom:8px}.toolbar-dialog-title{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:#e4e4e7}.shader-type-pill{padding:2px 8px;border-radius:6px;font-size:7px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#71717a;background:#ffffff08;border:1px solid rgba(255,255,255,.06);cursor:pointer;transition:all .2s ease}.shader-type-pill:hover{color:#a1a1aa;background:#ffffff0f;border-color:#ffffff1f}.shader-type-pill-active{color:#fff}.shader-type-pill-skin.shader-type-pill-active,.shader-type-pill-nail.shader-type-pill-active{color:#fff;background:#ffffff1a;border-color:#ffffff4d}.ffd-marquee-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;cursor:crosshair;pointer-events:auto}.ffd-marquee-rect{position:absolute;pointer-events:none;background:#22d3ee0a;border:1.5px dashed #22d3ee;box-shadow:0 0 8px #22d3ee1f;animation:marching-ants .4s linear infinite}@keyframes marching-ants{to{border-color:#22d3ee4d}}
