*,*:before,*:after{box-sizing:border-box}*{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.visually-hidden,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@font-face{font-family:Warbones;src:url(/fonts/Warbones-RpM1V.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;--cyber-bg: #0a0a0a;--cyber-bg-secondary: #1a1f3a;--cyber-pink: #ff006e;--cyber-cyan: #00f5ff;--cyber-purple: #9d4edd;--cyber-blue: #3a86ff;--cyber-text: #e0e7ff;--cyber-text-dim: #a8b2d1;--neon-yellow: #ffff00;--neon-green: #00ff41;--font-size-hero: 4rem;--font-size-h1: 2.75rem;--font-size-h2: 2.25rem;--font-size-body: 1.25rem;--font-size-small: 1.125rem;--gradient-cyber: linear-gradient(135deg, var(--cyber-cyan), var(--cyber-pink));--gradient-cyber-reverse: linear-gradient(135deg, var(--cyber-pink), var(--cyber-cyan));--gradient-purple-blue: linear-gradient(135deg, var(--cyber-purple), var(--cyber-blue));--gradient-horizontal: linear-gradient(90deg, var(--cyber-cyan), var(--cyber-pink));--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--shadow-glow-cyan: 0 0 20px rgba(0, 245, 255, .3);--shadow-glow-pink: 0 0 20px rgba(255, 0, 110, .3);--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease;--animation-spin: 1s;--animation-fade: .2s;--animation-pulse: 2s;--animation-float-short: 15s;--animation-float-medium: 20s;--animation-float-long: 25s;--animation-glow: 3s;--animation-grid-pulse: 4s;--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-header: 900;--z-cart-backdrop: 998;--z-cart: 999;--z-modal-backdrop: 999;--z-modal: 1000;--z-tooltip: 1001;--z-chat: 9999;--z-toast: 10000;--z-construction: 9999;--breakpoint-sm: 480px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--touch-target-min: 44px;--touch-target-comfortable: 48px;color:var(--cyber-text);background-color:var(--cyber-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:var(--cyber-cyan);text-decoration:inherit;transition:color .3s ease}a:hover{color:var(--cyber-pink)}html{overflow-x:hidden}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}#root{width:100%;min-height:100vh}h1,h2{font-size:3.2em;line-height:1.1;background:var(--gradient-cyber);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}p{color:var(--cyber-text-dim)}button{border-radius:12px;border:2px solid var(--cyber-cyan);padding:.8em 1.5em;font-size:1em;font-weight:600;font-family:inherit;background-color:transparent;color:var(--cyber-cyan);cursor:pointer;transition:all .3s ease}button:hover{background-color:var(--cyber-cyan);color:var(--cyber-bg);box-shadow:0 0 20px var(--cyber-cyan);transform:translateY(-2px)}button:focus,button:focus-visible{outline:2px solid var(--cyber-pink);outline-offset:2px}.error-boundary-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background-color:var(--cyber-bg, #0a0e27);color:var(--cyber-text, #e0e7ff);padding:var(--spacing-xl);text-align:center;font-family:Ardillah Kafi,sans-serif}.error-card{max-width:600px;padding:var(--spacing-xl);border:2px solid var(--cyber-pink, #ff006e);border-radius:var(--radius-lg);background-color:var(--cyber-bg-secondary, #1a1f3a)}.error-title{font-size:2.5rem;margin-bottom:var(--spacing-md);color:var(--cyber-pink, #ff006e);text-shadow:var(--shadow-glow-pink)}.error-message{font-size:1.2rem;margin-bottom:var(--spacing-xl);color:var(--cyber-text-dim, #a8b2d1)}.error-button-primary,.error-button-secondary{padding:var(--spacing-sm) var(--spacing-xl);font-size:1.1rem;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;transition:all var(--transition-base)}.error-button-primary{background-color:var(--cyber-pink, #ff006e);color:var(--cyber-bg, #0a0e27);border:none;margin-right:var(--spacing-md)}.error-button-primary:hover{transform:scale(1.05);box-shadow:var(--shadow-glow-pink)}.error-button-primary:active{transform:scale(.98)}.error-button-secondary{background-color:transparent;color:var(--cyber-cyan, #00f5ff);border:2px solid var(--cyber-cyan, #00f5ff)}.error-button-secondary:hover{background-color:var(--cyber-cyan, #00f5ff);color:var(--cyber-bg, #0a0e27);box-shadow:var(--shadow-glow-cyan)}.error-button-secondary:active{transform:scale(.98)}@media(max-width:768px){.error-card{padding:var(--spacing-lg)}.error-title{font-size:2rem}.error-message{font-size:1rem}.error-button-primary,.error-button-secondary{font-size:1rem;padding:var(--spacing-sm) var(--spacing-lg)}.error-button-primary{margin-right:0;margin-bottom:var(--spacing-md)}}@media(max-width:480px){.error-boundary-container{padding:var(--spacing-md)}.error-title{font-size:1.75rem}.error-button-primary,.error-button-secondary{width:100%;display:block}}.toast-container{position:fixed;top:var(--spacing-md);right:var(--spacing-md);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--spacing-sm);max-width:400px;pointer-events:none}.toast{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#0a0a0af2;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow-md);cursor:pointer;pointer-events:auto;animation:toastSlideIn var(--transition-base) ease-out;transition:transform var(--transition-fast),opacity var(--transition-fast)}.toast:hover{transform:translate(-4px)}.toast:focus{outline:2px solid rgba(0,245,255,.5);outline-offset:2px}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast--exiting{animation:toastSlideOut .2s ease-in forwards}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.toast__icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.875rem;font-weight:700}.toast__message{flex:1;font-size:.9375rem;line-height:1.4;color:#ffffffe6}.toast__dismiss{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#ffffff80;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);font-size:.75rem}.toast__dismiss:hover{background:#ffffff1a;color:#ffffffe6}.toast--success{border-color:#00ff414d;background:linear-gradient(135deg,#00ff411a,#0a0a0af2)}.toast--success .toast__icon{background:#00ff4133;color:#00ff41}.toast--error{border-color:#ff006e4d;background:linear-gradient(135deg,#ff006e1a,#0a0a0af2)}.toast--error .toast__icon{background:#ff006e33;color:#ff006e}.toast--warning{border-color:#ffaa004d;background:linear-gradient(135deg,#ffaa001a,#0a0a0af2)}.toast--warning .toast__icon{background:#fa03;color:#fa0}.toast--info{border-color:#00f5ff4d;background:linear-gradient(135deg,#00f5ff1a,#0a0a0af2)}.toast--info .toast__icon{background:#00f5ff33;color:#00f5ff}@media(max-width:480px){.toast-container{left:var(--spacing-md);right:var(--spacing-md);max-width:none}.toast{padding:var(--spacing-sm)}.toast__message{font-size:.875rem}}.protected-route-loading{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:var(--cyber-bg);color:var(--cyber-cyan);font-size:1.5rem}.loading-content{text-align:center}.loading-spinner{width:50px;height:50px;border:4px solid rgba(0,245,255,.3);border-top:4px solid var(--cyber-cyan);border-radius:50%;animation:spin var(--animation-spin) linear infinite;margin:0 auto 1rem}@keyframes spin{to{transform:rotate(360deg)}}
