*,*:before,*:after{box-sizing:border-box}*{margin:0}@media(prefers-reduced-motion:no-preference){html{interpolate-size:allow-keywords}}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-wrap:balance}#root,#__next{isolation:isolate}:root{--scene-background: #333333;--background: #333333;--foreground: rgb(255 255 255);--card: rgb(20 20 20);--card-foreground: rgb(255 255 255 / .95);--popover: rgb(20 20 20);--popover-foreground: rgb(255 255 255 / .95);--primary: oklch(.7871 .2143 327.3729);--primary-foreground: rgb(0 0 0);--secondary: rgb(255 255 255 / .7);--secondary-foreground: rgb(0 0 0);--muted: rgb(255 255 255 / .7);--muted-foreground: rgb(255 255 255 / .7);--accent: oklch(.9393 .0288 266.368);--accent-foreground: rgb(0 0 0);--destructive: rgb(220 38 38);--destructive-foreground: rgb(255 255 255);--border: rgb(255 255 255 / .1);--input: rgb(255 255 255 / .1);--ui-surface: rgb(20 20 20 / .7);--ui-surface-soft: rgb(20 20 20 / .6);--ui-surface-strong: rgb(20 20 20 / .8);--ui-surface-hover: rgb(40 40 40 / .8);--ui-border: rgb(255 255 255 / .1);--ui-border-hover: rgb(255 255 255 / .2);--ui-text: rgb(255 255 255 / .95);--ui-text-soft: rgb(255 255 255 / .9);--shadow-soft: rgb(0 0 0 / .2);--shadow-strong: rgb(0 0 0 / .3);--danger-surface: rgb(220 38 38 / .8);--danger-border: rgb(220 38 38 / .5);--danger-ring-start: rgb(220 38 38 / .4);--danger-ring-end: rgb(220 38 38 / 0);--font-body: "Inter", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-size-3xl: 3rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--spacing-2xs: .25rem;--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--spacing-4xl: 6rem;--spacing-5xl: 8rem;--position-top: var(--spacing-lg);--position-right: var(--spacing-lg);--position-bottom: var(--spacing-xl);--border-radius: .5rem;--border-radius-lg: .75rem;--border-radius-pill: 3.125rem}html,body,#root{height:100%;width:100%;margin:0;font-family:var(--font-body)}body{overflow:hidden;background:var(--background);color:var(--foreground)}.full-screen-canvas{position:fixed;inset:0;width:100vw;height:100vh;z-index:0;touch-action:none}.voice-ui{position:fixed;bottom:var(--position-bottom);right:50%;transform:translate(50%);z-index:100;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--spacing-md)}.voice-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-xl);border-radius:var(--border-radius-pill);border:1px solid var(--ui-border);background:var(--ui-surface-soft);color:var(--ui-text-soft);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 4px 20px var(--shadow-soft);transition:all .3s ease-in-out;outline:none;min-width:140px}.voice-button:hover{background:var(--ui-surface-hover);transform:translateY(-2px);box-shadow:0 8px 30px var(--shadow-strong);border-color:var(--ui-border-hover);color:var(--foreground)}.voice-button:active{transform:translateY(0)}.voice-button.listening{background:var(--danger-surface);border-color:var(--danger-border);color:var(--foreground);animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 var(--danger-ring-start)}70%{box-shadow:0 0 0 10px var(--danger-ring-end)}to{box-shadow:0 0 0 0 var(--danger-ring-end)}}.voice-feedback{background:var(--ui-surface-strong);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-lg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--ui-border);animation:slideUp .3s ease-out;max-width:300px;text-align:center}.feedback-text{color:var(--ui-text);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}@keyframes slideUp{0%{opacity:0;transform:translateY(var(--spacing-xs))}to{opacity:1;transform:translateY(0)}}.command-list{position:fixed;display:flex;flex-direction:column;gap:var(--spacing-sm);top:var(--position-top);right:var(--position-right);background:var(--ui-surface);padding:var(--spacing-sm);border-radius:var(--border-radius);color:var(--foreground);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;max-width:350px;transition:all .3s ease;border:1px solid var(--border);box-shadow:var(--shadow-sm)}.command-list.closed{gap:0}.command-list-header{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:none;cursor:pointer;padding:var(--spacing-xs);color:var(--foreground);border-radius:var(--border-radius-sm)}.command-list-header:hover{background-color:var(--surface-hover)}.command-list-header h2{font-size:var(--font-size-sm);text-transform:uppercase;font-weight:var(--font-weight-semibold);margin:0}.command-list-content{display:flex;flex-direction:column;gap:var(--spacing-2xs);overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);opacity:1}.command-list-content.collapsed{max-height:0;opacity:0;margin:0;padding:0}.command-list-content.expanded{max-height:80vh;opacity:1;padding:0 var(--spacing-xs) var(--spacing-xs);overflow-y:auto}.command-list-content::-webkit-scrollbar{width:4px}.command-list-content::-webkit-scrollbar-track{background:transparent}.command-list-content::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:var(--border-radius-pill)}.command-list-content::-webkit-scrollbar-thumb:hover{background-color:var(--muted-foreground)}.command-list ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.command-list li{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-2xs) var(--spacing-xs);border-radius:var(--border-radius-sm);transition:background-color .2s}.command-list li:hover{background-color:var(--surface-hover)}.legend{margin-top:var(--spacing-xs);padding-top:var(--spacing-xs);border-top:1px solid var(--border);display:flex;gap:var(--spacing-md);width:100%;justify-content:center}.legend-item{display:flex;align-items:center;gap:var(--spacing-2xs);font-size:var(--font-size-xs);color:var(--muted-foreground)}
