.onboarding{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-6);overflow:hidden;background:var(--color-light)}.onboarding-screen{width:100%;max-width:600px;text-align:center;opacity:0}.onboarding-screen.active{opacity:1}.onboarding-title{font-family:var(--font-heading);font-size:var(--text-5xl);color:var(--color-dark);margin-bottom:var(--space-6);font-weight:var(--weight-semibold)}.onboarding-subtitle{font-size:var(--text-xl);color:var(--color-gray);margin-bottom:var(--space-8);line-height:var(--leading-relaxed);font-family:var(--font-body)}.onboarding-content{margin-bottom:var(--space-12)}.onboarding-actions{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap;margin-top:var(--space-6);margin-bottom:var(--space-12)}.onboarding-progress{position:fixed;bottom:var(--space-12);left:50%;transform:translate(-50%);display:flex;gap:var(--space-4);padding:var(--space-6);z-index:10}.progress-dot{width:14px;height:14px;border-radius:50%;background:var(--color-light-gray);transition:all var(--transition-normal);cursor:default}.progress-dot.active{background:var(--color-orange);transform:scale(1.2)}.progress-dot.completed{background:var(--color-green)}.onboarding-logo{width:120px;height:120px;margin:0 auto var(--space-6);display:flex;align-items:center;justify-content:center;font-size:var(--text-6xl);background:var(--color-light);border:2px solid var(--color-light-gray);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.permission-status{padding:var(--space-4);border-radius:var(--radius-md);margin:var(--space-4) 0;display:flex;align-items:center;gap:var(--space-3);justify-content:center;font-family:var(--font-body)}.permission-status.pending{background:var(--color-light-gray);color:var(--color-gray)}.permission-status.granted{background:#788c5d1a;color:var(--color-green)}.permission-status.denied{background:#d977571a;color:var(--color-orange)}.tutorial-list{list-style:none;padding:0;margin:var(--space-6) 0;text-align:left}.tutorial-list li{padding:var(--space-4);margin-bottom:var(--space-3);background:var(--color-light);border-radius:var(--radius-md);border:1px solid var(--color-light-gray);display:flex;align-items:start;gap:var(--space-3);font-family:var(--font-body);line-height:var(--leading-relaxed)}.tutorial-list li strong{color:var(--color-dark)}.tutorial-list li:before{content:"✓";display:inline-block;width:24px;height:24px;background:var(--color-orange);color:#fff;border-radius:50%;text-align:center;line-height:24px;flex-shrink:0;font-family:var(--font-heading);font-weight:var(--weight-semibold)}@media(max-width:768px){.onboarding{padding:var(--space-4)}.onboarding-title{font-size:var(--text-4xl)}.onboarding-subtitle{font-size:var(--text-lg)}.onboarding-logo{width:100px;height:100px}.onboarding-actions{flex-direction:column;width:100%}.onboarding-actions .btn{width:100%}}.demo{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;flex-direction:column;overflow:hidden;background:var(--color-light)}.demo-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-6);background:var(--color-light);border-bottom:1px solid var(--color-light-gray);z-index:10}.demo-title h1{font-size:var(--text-2xl);margin:0;color:var(--color-dark)}.demo-title p{margin:0;font-size:var(--text-sm);color:var(--color-gray)}.demo-controls-top{display:flex;gap:var(--space-4);align-items:center}.voice-selector-container{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--color-light-gray);border-radius:var(--radius-md);border:1px solid var(--color-gray);animation:slideInDown .3s ease-out}.voice-selector-label{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-dark);white-space:nowrap;font-family:var(--font-heading)}.voice-selector{padding:var(--space-2) var(--space-3);border:2px solid var(--color-gray);border-radius:var(--radius-md);background:var(--color-light);color:var(--color-dark);font-size:var(--text-sm);font-family:var(--font-body);cursor:pointer;transition:all .2s ease;min-width:200px}.voice-selector:hover{border-color:var(--color-orange)}.voice-selector:focus{outline:none;border-color:var(--color-orange);box-shadow:0 0 0 3px #d977571a}.status-indicator{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-heading);border:none;outline:none}.status-clickable{cursor:pointer;transition:all .2s ease;position:relative;animation:pulse 2s ease-in-out infinite}.status-clickable:hover{transform:scale(1.05);box-shadow:0 2px 8px #0000001a}.status-clickable:active{transform:scale(.98)}@keyframes pulse{0%,to{box-shadow:0 0 #d9775766}50%{box-shadow:0 0 0 4px #d9775700}}.status-disconnected{background:var(--color-light-gray);color:var(--color-gray)}.status-clickable.status-disconnected:hover,.status-connecting{background:#d977571a;color:var(--color-orange)}.status-connected{background:#788c5d1a;color:var(--color-green)}.status-error{background:#d977571a;color:var(--color-orange)}.demo-main{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:var(--space-4);gap:var(--space-4)}.transcript-container{flex:1;background:var(--color-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;display:flex;flex-direction:column}.transcript-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-gray);font-size:var(--text-lg);padding:var(--space-8);text-align:center;font-family:var(--font-body)}.transcript{flex:1;overflow-y:auto;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.transcript-entry{display:flex;gap:var(--space-3);align-items:start;padding:var(--space-4);border-radius:var(--radius-md);animation:slideInUp .3s ease-out}.transcript-user{background:var(--color-light-gray);align-self:flex-end;max-width:80%}.transcript-assistant{background:#d9775714;align-self:flex-start;max-width:80%}.transcript-system{background:#6a9bcc14;align-self:center;max-width:100%;font-size:var(--text-sm);color:var(--color-gray)}.transcript-system.function{background:#788c5d14;color:var(--color-green)}.transcript-system.error{background:#d9775714;color:var(--color-orange)}.transcript-role{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);text-transform:uppercase;font-weight:var(--weight-semibold);color:var(--color-gray);margin-bottom:var(--space-2);font-family:var(--font-heading)}.transcript-text{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-dark);word-wrap:break-word}.text-input-container{display:flex;gap:var(--space-3);background:var(--color-light);padding:var(--space-4);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.text-input-container .input{flex:1}.demo-footer{padding:var(--space-4) var(--space-6);background:var(--color-light);border-top:1px solid var(--color-light-gray);z-index:10}.demo-actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}.btn-large{min-width:200px;font-size:var(--text-lg);padding:var(--space-4) var(--space-8)}.btn-ptt{min-width:150px}.btn-ptt:active{background:var(--color-blue);color:#fff}@keyframes slideInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.demo{height:100dvh}.demo-header{padding:var(--space-3) var(--space-4);flex-wrap:wrap;gap:var(--space-3)}.demo-title h1{font-size:var(--text-xl)}.voice-selector-container{order:3;width:100%;justify-content:center}.voice-selector{flex:1;min-width:auto}.demo-main{padding:var(--space-3);overflow-y:auto;-webkit-overflow-scrolling:touch}.transcript-container{min-height:200px}.transcript{padding:var(--space-4)}.transcript-user,.transcript-assistant{max-width:90%}.status-clickable{padding:var(--space-3) var(--space-5);font-size:var(--text-base);min-height:44px;display:flex;align-items:center;justify-content:center}.demo-footer{padding:var(--space-3) var(--space-4);position:sticky;bottom:0;background:var(--color-light)}.btn-large{width:100%;min-width:auto;min-height:52px;font-size:var(--text-lg)}.demo-actions{flex-direction:column}.demo-actions .btn{width:100%;min-height:48px}.text-input-container{flex-direction:column}.text-input-container .btn{width:100%;min-height:48px}.text-input-container .input{min-height:44px}}.settings{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#14141380;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.settings-container{background:var(--color-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6);border-bottom:1px solid var(--color-light-gray)}.settings-header h2{font-family:var(--font-heading);font-size:var(--text-3xl);margin:0;color:var(--color-dark)}.settings-content{flex:1;overflow-y:auto;padding:var(--space-6)}.settings-section{margin-bottom:var(--space-8)}.settings-section:last-child{margin-bottom:0}.settings-section h3{font-family:var(--font-heading);font-size:var(--text-xl);margin-bottom:var(--space-2);color:var(--color-dark)}.settings-description{font-size:var(--text-sm);color:var(--color-gray);margin-bottom:var(--space-4);font-family:var(--font-body);line-height:var(--leading-relaxed)}.settings-field{margin-top:var(--space-4)}.settings-radio-group{display:flex;flex-direction:column;gap:var(--space-3)}.settings-radio{display:flex;align-items:start;gap:var(--space-3);padding:var(--space-4);background:var(--color-light);border:2px solid var(--color-light-gray);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.settings-radio:hover{border-color:var(--color-orange)}.settings-radio input[type=radio]{margin-top:2px;width:18px;height:18px;cursor:pointer}.settings-radio input[type=radio]:checked{accent-color:var(--color-orange)}.settings-radio span{flex:1}.settings-radio strong{display:block;margin-bottom:var(--space-1);color:var(--color-dark);font-family:var(--font-heading);font-weight:var(--weight-semibold)}.settings-radio p{margin:0;font-size:var(--text-sm);color:var(--color-gray);font-family:var(--font-body)}.settings-buttons{display:flex;gap:var(--space-3);flex-wrap:wrap}.settings-footer{padding:var(--space-6);border-top:1px solid var(--color-light-gray);background:var(--color-light)}.save-status{text-align:center;color:var(--color-green);font-weight:var(--weight-semibold);margin-bottom:var(--space-4);font-size:var(--text-sm);font-family:var(--font-heading)}.settings-actions{display:flex;gap:var(--space-3);justify-content:flex-end}@media(max-width:768px){.settings{padding:0}.settings-container{max-height:100vh;border-radius:0}.settings-header,.settings-content,.settings-footer{padding:var(--space-4)}.settings-actions{flex-direction:column-reverse}.settings-actions .btn{width:100%}.settings-buttons{flex-direction:column}.settings-buttons .btn{width:100%}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-dark);background:var(--color-light);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--color-dark)}h1{font-size:var(--text-5xl);margin-bottom:var(--space-6)}h2{font-size:var(--text-4xl);margin-bottom:var(--space-5)}h3{font-size:var(--text-3xl);margin-bottom:var(--space-4)}h4{font-size:var(--text-2xl);margin-bottom:var(--space-3)}p{margin-bottom:var(--space-4);line-height:var(--leading-relaxed)}a{color:var(--color-blue);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-orange)}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--container-padding)}.text-center{text-align:center}.font-heading{font-family:var(--font-heading)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-heading);font-size:var(--text-base);font-weight:var(--weight-semibold);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-decoration:none;-webkit-user-select:none;user-select:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-orange);color:var(--color-light);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:#c76a4a;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background:var(--color-blue);color:var(--color-light);box-shadow:var(--shadow-sm)}.btn-secondary:hover:not(:disabled){background:#5a88b8;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--color-dark);border:2px solid var(--color-gray)}.btn-outline:hover:not(:disabled){border-color:var(--color-orange);color:var(--color-orange)}.btn-ghost{background:transparent;color:var(--color-dark);box-shadow:none}.btn-ghost:hover:not(:disabled){background:var(--color-light-gray)}.card{background:var(--color-light-gray);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-md)}.input{width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:var(--text-base);color:var(--color-dark);background:#fff;border:2px solid var(--color-gray);border-radius:var(--radius-md);transition:all var(--transition-fast)}.input:focus{outline:none;border-color:var(--color-orange);box-shadow:0 0 0 3px #d977571a}.input::placeholder{color:var(--color-gray)}.loading{position:relative;overflow:hidden}.loading:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(217,119,87,.2),transparent);animation:shimmer 2s infinite}@keyframes shimmer{to{left:100%}}.fade-enter{opacity:0}.fade-enter-active{opacity:1;transition:opacity var(--transition-normal)}.fade-exit{opacity:1}.fade-exit-active{opacity:0;transition:opacity var(--transition-normal)}.slide-enter{transform:translateY(20px);opacity:0}.slide-enter-active{transform:translateY(0);opacity:1;transition:all var(--transition-normal)}.slide-exit{transform:translateY(0);opacity:1}.slide-exit-active{transform:translateY(-20px);opacity:0;transition:all var(--transition-normal)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-light-gray)}::-webkit-scrollbar-thumb{background:var(--color-orange);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#c76a4a}::selection{background:var(--color-orange);color:var(--color-light)}::-moz-selection{background:var(--color-orange);color:var(--color-light)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:focus-visible{outline:2px solid var(--color-orange);outline-offset:2px}@media(max-width:768px){body{font-size:var(--text-sm)}.btn{padding:var(--space-3) var(--space-5);min-height:44px}.card{padding:var(--space-4)}}button,.btn{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.app{position:relative;width:100%;min-height:100vh}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes scalePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100%)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes swing{0%,to{transform:rotate(0)}20%{transform:rotate(15deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(5deg)}80%{transform:rotate(-5deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulseGlow{0%,to{box-shadow:0 0 #d4af37b3}50%{box-shadow:0 0 20px 10px #d4af3700}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-10px)}20%,40%,60%,80%{transform:translate(10px)}}@keyframes wobble{0%,to{transform:translate(0) rotate(0)}15%{transform:translate(-5px) rotate(-5deg)}30%{transform:translate(4px) rotate(3deg)}45%{transform:translate(-3px) rotate(-3deg)}60%{transform:translate(2px) rotate(2deg)}75%{transform:translate(-1px) rotate(-1deg)}}@keyframes ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}@keyframes typingDot{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}@keyframes voiceWave{0%,to{height:20px}50%{height:60px}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-fadeIn{animation:fadeIn var(--transition-normal) ease-out}.animate-fadeInUp{animation:fadeInUp var(--transition-normal) ease-out}.animate-fadeInDown{animation:fadeInDown var(--transition-normal) ease-out}.animate-scaleIn{animation:scaleIn var(--transition-normal) ease-out}.animate-bounceIn{animation:bounceIn var(--transition-slow) ease-out}.animate-slideInLeft{animation:slideInLeft var(--transition-normal) ease-out}.animate-slideInRight{animation:slideInRight var(--transition-normal) ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.animate-spin{animation:rotate 1s linear infinite}.animate-swing{animation:swing 1s ease-in-out}.animate-shake{animation:shake .5s ease-in-out}.animate-wobble{animation:wobble 1s ease-in-out}.animate-pulseGlow{animation:pulseGlow 2s ease-in-out infinite}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-500{animation-delay:.5s}.delay-700{animation-delay:.7s}.delay-1000{animation-delay:1s}.duration-fast{animation-duration:var(--transition-fast)}.duration-normal{animation-duration:var(--transition-normal)}.duration-slow{animation-duration:var(--transition-slow)}.ease-linear{animation-timing-function:linear}.ease-in{animation-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-elastic{animation-timing-function:cubic-bezier(.68,-.55,.265,1.55)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.stagger-item{opacity:0;animation:fadeInUp var(--transition-normal) ease-out forwards}.stagger-item:nth-child(1){animation-delay:0ms}.stagger-item:nth-child(2){animation-delay:.1s}.stagger-item:nth-child(3){animation-delay:.2s}.stagger-item:nth-child(4){animation-delay:.3s}.stagger-item:nth-child(5){animation-delay:.4s}.stagger-item:nth-child(6){animation-delay:.5s}.stagger-item:nth-child(7){animation-delay:.6s}.stagger-item:nth-child(8){animation-delay:.7s}.stagger-item:nth-child(9){animation-delay:.8s}.stagger-item:nth-child(10){animation-delay:.9s}:root{--color-dark: #141413;--color-light: #faf9f5;--color-gray: #b0aea5;--color-light-gray: #e8e6dc;--color-orange: #d97757;--color-blue: #6a9bcc;--color-green: #788c5d;--color-success: #788c5d;--color-warning: #d97757;--color-error: #d97757;--color-info: #6a9bcc;--font-heading: "Poppins", Arial, sans-serif;--font-body: "Lora", Georgia, serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-tight: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.6;--leading-loose: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(20, 20, 19, .08);--shadow-md: 0 4px 16px rgba(20, 20, 19, .12);--shadow-lg: 0 8px 24px rgba(20, 20, 19, .16);--shadow-xl: 0 12px 32px rgba(20, 20, 19, .2);--shadow-2xl: 0 25px 50px rgba(20, 20, 19, .25);--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--z-base: 0;--z-dropdown: 1000;--z-sticky: 1100;--z-modal: 1200;--z-popover: 1300;--z-tooltip: 1400;--max-width: 1440px;--container-padding: var(--space-4);--glass-bg: rgba(250, 249, 245, .7);--glass-border: rgba(20, 20, 19, .1);--glass-blur: 10px}@media(prefers-color-scheme:dark){:root{--color-light: #1a1a1a;--color-dark: #faf9f5;--color-light-gray: #2a2a2a;--glass-bg: rgba(26, 26, 26, .7);--glass-border: rgba(250, 249, 245, .1)}}@media(prefers-reduced-motion:reduce){:root{--transition-fast: 0ms;--transition-normal: 0ms;--transition-slow: 0ms}}@media(max-width:768px){:root{--text-5xl: 2.5rem;--text-6xl: 3rem;--space-20: 3rem;--space-24: 4rem;--container-padding: var(--space-3)}}.dot-matrix-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none;background-color:var(--color-cream);background-image:radial-gradient(circle at center,var(--dot-color) var(--dot-size),transparent var(--dot-size));background-size:var(--dot-spacing) var(--dot-spacing);background-position:0 0}.dot-matrix-bg.animated{animation:dot-drift 30s linear infinite}@keyframes dot-drift{0%{background-position:0 0}to{background-position:var(--dot-spacing) var(--dot-spacing)}}.dot-matrix-bg:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,transparent 0%,rgba(245,241,232,.3) 100%)}.dot-matrix-bg:after{content:"";position:absolute;top:50%;left:50%;width:800px;height:800px;transform:translate(-50%,-50%);background:radial-gradient(circle at center,rgba(212,175,55,.05) 0%,transparent 70%);pointer-events:none}.dot-matrix-bg.dense{--dot-spacing: 6px;--dot-color: rgba(212, 175, 55, .2)}.dot-matrix-bg.sparse{--dot-spacing: 12px;--dot-color: rgba(212, 175, 55, .1)}.dot-matrix-bg.teal{--dot-color: rgba(44, 95, 93, .15)}@media(max-width:768px){.dot-matrix-bg{--dot-spacing: 10px;--dot-color: rgba(212, 175, 55, .1)}.dot-matrix-bg.animated{animation:none}.dot-matrix-bg:after{display:none}}@media(prefers-reduced-motion:reduce){.dot-matrix-bg.animated{animation:none}}
