:root{--color-primary-50: #fefce8;--color-primary-100: #fef9c3;--color-primary-200: #fef08a;--color-primary-300: #fde047;--color-primary-400: #facc15;--color-primary-500: #eab308;--color-primary-600: #ca8a04;--color-primary-700: #a16207;--color-primary-800: #854d0e;--color-primary-900: #713f12;--color-accent-400: #c084fc;--color-accent-500: #a855f7;--color-accent-600: #9333ea;--color-neutral-50: #fafafa;--color-neutral-100: #f4f4f5;--color-neutral-200: #e4e4e7;--color-neutral-300: #d4d4d8;--color-neutral-400: #b4b4bb;--color-neutral-500: #8a8a95;--color-neutral-600: #6b6b78;--color-neutral-700: #4f4f5c;--color-neutral-800: #363d52;--color-neutral-900: #2d3548;--color-success: #34d399;--color-warning: #fbbf24;--color-error: #f87171;--color-info: #60a5fa;--bg-primary: #1a1a24;--bg-secondary: #242938;--bg-tertiary: #2d3548;--bg-elevated: #363d52;--bg-glass: rgba(42, 42, 54, .7);--text-primary: #d4d4d8;--text-secondary: #a1a1aa;--text-tertiary: #8a8a95;--text-disabled: #6b6b78;--border-primary: rgba(212, 212, 216, .15);--border-secondary: rgba(212, 212, 216, .25);--border-accent: var(--color-primary-400);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--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;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.75;--tracking-tight: -.025em;--tracking-normal: 0;--tracking-wide: .025em;--space-0: 0;--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-none: 0;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .03);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .08);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .15);--glow-primary: 0 0 20px rgba(250, 204, 21, .2);--glow-accent: 0 0 20px rgba(192, 132, 252, .2);--glow-success: 0 0 20px rgba(52, 211, 153, .2);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--blur-sm: blur(4px);--blur-md: blur(8px);--blur-lg: blur(16px);--blur-xl: blur(24px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-normal);line-height:var(--leading-normal);color:var(--text-primary);background-color:var(--bg-primary);min-height:100vh;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--text-primary);margin-bottom:var(--space-6)}h1{font-size:var(--text-4xl);letter-spacing:var(--tracking-tight);font-weight:var(--font-bold);margin-bottom:var(--space-8)}h2{font-size:var(--text-3xl);letter-spacing:var(--tracking-tight);font-weight:var(--font-bold);margin-bottom:var(--space-6)}h3{font-size:var(--text-2xl);font-weight:var(--font-semibold);margin-bottom:var(--space-5)}h4{font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-4)}h5{font-size:var(--text-lg);font-weight:var(--font-medium)}h6{font-size:var(--text-base);font-weight:var(--font-medium)}p{margin-bottom:var(--space-6);color:var(--text-secondary);line-height:var(--leading-relaxed)}a{color:var(--color-primary-400);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-300)}a:focus{outline:2px solid var(--border-accent);outline-offset:2px}strong,b{font-weight:var(--font-semibold)}em,i{font-style:italic}code{font-family:var(--font-mono);font-size:.9em;padding:var(--space-1) var(--space-2);background-color:var(--bg-elevated);border-radius:var(--radius-sm);color:var(--color-primary-300)}pre{font-family:var(--font-mono);font-size:var(--text-sm);padding:var(--space-4);background-color:var(--bg-elevated);border-radius:var(--radius-md);overflow-x:auto;margin-bottom:var(--space-4)}pre code{padding:0;background-color:transparent}ul,ol{margin-bottom:var(--space-6);padding-left:var(--space-6)}li{margin-bottom:var(--space-3);color:var(--text-secondary);line-height:var(--leading-relaxed)}img,svg,video,canvas{display:block;max-width:100%;height:auto}button,input,textarea,select{font-family:inherit;font-size:inherit;line-height:inherit;padding-left:10px}button{background:none;border:none;cursor:pointer}:focus-visible{outline:2px solid var(--border-accent);outline-offset:2px;border-radius:var(--radius-sm)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}:focus:not(:focus-visible){outline:none}::selection{background-color:var(--color-primary-500);color:#fff}::-moz-selection{background-color:var(--color-primary-500);color:#fff}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-neutral-700);border-radius:var(--radius-full);border:2px solid var(--bg-secondary)}::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-600)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-20px)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(20px)}}@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 pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}@keyframes hoverLift{0%{transform:translateY(0)}to{transform:translateY(-4px)}}@keyframes buttonPress{0%{transform:scale(1)}50%{transform:scale(.98)}to{transform:scale(1)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleUp{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes glow{0%,to{box-shadow:var(--glow-primary)}50%{box-shadow:0 0 30px #06b6d480}}.animate-fade-in{animation:fadeIn var(--transition-base) ease-out;will-change:opacity}.animate-fade-out{animation:fadeOut var(--transition-base) ease-out;will-change:opacity}.animate-fade-up{animation:fadeUp var(--transition-base) ease-out;will-change:opacity,transform}.animate-fade-down{animation:fadeDown var(--transition-base) ease-out;will-change:opacity,transform}.animate-slide-in-left{animation:slideInLeft var(--transition-base) ease-out;will-change:opacity,transform}.animate-slide-in-right{animation:slideInRight var(--transition-base) ease-out;will-change:opacity,transform}.animate-slide-out-left{animation:slideOutLeft var(--transition-base) ease-out;will-change:opacity,transform}.animate-slide-out-right{animation:slideOutRight var(--transition-base) ease-out;will-change:opacity,transform}.animate-scale-in{animation:scaleIn var(--transition-base) ease-out;will-change:opacity,transform}.animate-scale-out{animation:scaleOut var(--transition-base) ease-out;will-change:opacity,transform}.animate-spin{animation:spin 1s linear infinite;will-change:transform}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;will-change:opacity}.animate-bounce{animation:bounce 1s ease-in-out infinite;will-change:transform}.animate-shimmer{animation:shimmer 2s linear infinite;will-change:background-position}.animate-glow{animation:glow 2s ease-in-out infinite;will-change:box-shadow}.animate-hover-lift{transition:transform var(--transition-base);will-change:transform}.animate-hover-lift:hover{transform:translateY(-4px)}.animate-button-press:active{animation:buttonPress .2s ease-out}.animate-slide-in-up{animation:slideInUp .6s cubic-bezier(.34,1.56,.64,1) ease-out;will-change:opacity,transform}.animate-fade-in-up{animation:fadeInUp .8s cubic-bezier(.4,0,.2,1) both;will-change:opacity,transform}.animate-scale-up{animation:scaleUp .4s cubic-bezier(.34,1.56,.64,1) ease-out;will-change:opacity,transform}.delay-75{animation-delay:75ms}.delay-100{animation-delay:.1s}.delay-150{animation-delay:.15s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-500{animation-delay:.5s}.duration-fast{animation-duration:var(--transition-fast)}.duration-base{animation-duration:var(--transition-base)}.duration-slow{animation-duration:var(--transition-slow)}.stagger-children>*{animation:fadeUp var(--transition-base) ease-out;animation-fill-mode:both;will-change:opacity,transform}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:75ms}.stagger-children>*:nth-child(3){animation-delay:.15s}.stagger-children>*:nth-child(4){animation-delay:225ms}.stagger-children>*:nth-child(5){animation-delay:.3s}.stagger-children>*:nth-child(6){animation-delay:375ms}.stagger-children>*:nth-child(7){animation-delay:.45s}.stagger-children>*:nth-child(8){animation-delay:525ms}.stagger-children>*:nth-child(9){animation-delay:.6s}.stagger-children>*:nth-child(10){animation-delay:675ms}.stagger-list>*{animation:slideInLeft .4s cubic-bezier(.4,0,.2,1) both;will-change:opacity,transform}.stagger-list>*:nth-child(1){animation-delay:0ms}.stagger-list>*:nth-child(2){animation-delay:50ms}.stagger-list>*:nth-child(3){animation-delay:.1s}.stagger-list>*:nth-child(4){animation-delay:.15s}.stagger-list>*:nth-child(5){animation-delay:.2s}.stagger-list>*:nth-child(6){animation-delay:.25s}.stagger-list>*:nth-child(7){animation-delay:.3s}.stagger-list>*:nth-child(8){animation-delay:.35s}.stagger-list>*:nth-child(9){animation-delay:.4s}.stagger-list>*:nth-child(10){animation-delay:.45s}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;will-change:auto!important}.animate-hover-lift:hover{transform:none}.animate-fade-in,.animate-fade-out,.animate-fade-up,.animate-fade-down,.animate-slide-in-left,.animate-slide-in-right,.animate-slide-out-left,.animate-slide-out-right,.animate-scale-in,.animate-scale-out,.animate-slide-in-up,.animate-fade-in-up,.animate-scale-up{opacity:1;transform:none}.animate-spin,.animate-pulse,.animate-bounce,.animate-shimmer,.animate-glow{animation:none}.stagger-children>*,.stagger-list>*{animation:none;opacity:1;transform:none}}.hidden{display:none!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.inline-flex{display:inline-flex}.grid{display:grid}.mx-auto{margin-left:auto;margin-right:auto}.pt-6{padding-top:var(--space-6)}.pb-6{padding-bottom:var(--space-6)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.font-light{font-weight:var(--font-light)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-disabled{color:var(--text-disabled)}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.w-fit{width:fit-content}.h-auto{height:auto}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.border{border:1px solid var(--border-primary)}.border-t{border-top:1px solid var(--border-primary)}.border-b{border-bottom:1px solid var(--border-primary)}.border-l{border-left:1px solid var(--border-primary)}.border-r{border-right:1px solid var(--border-primary)}.rounded-none{border-radius:var(--radius-none)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:var(--shadow-2xl)}.shadow-none{box-shadow:none}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.cursor-default{cursor:default}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.transition-all{transition:all var(--transition-base)}.transition-colors{transition:color var(--transition-base),background-color var(--transition-base),border-color var(--transition-base)}.transition-transform{transition:transform var(--transition-base)}.transition-opacity{transition:opacity var(--transition-base)}.backdrop-blur-sm{-webkit-backdrop-filter:var(--blur-sm);backdrop-filter:var(--blur-sm)}.backdrop-blur-md{-webkit-backdrop-filter:var(--blur-md);backdrop-filter:var(--blur-md)}.backdrop-blur-lg{-webkit-backdrop-filter:var(--blur-lg);backdrop-filter:var(--blur-lg)}.backdrop-blur-xl{-webkit-backdrop-filter:var(--blur-xl);backdrop-filter:var(--blur-xl)}.hover-lift{transition:transform var(--transition-base)}.hover-lift:hover{transform:translateY(-2px)}.hover-scale{transition:transform var(--transition-base)}.hover-scale:hover{transform:scale(1.05)}.loading-spinner{border:3px solid var(--border-primary);border-top-color:var(--color-primary-400);border-radius:50%;animation:spin 1s linear infinite;will-change:transform}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);min-height:44px;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-medium);line-height:var(--leading-tight);text-align:center;text-decoration:none;white-space:nowrap;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;user-select:none;transition:all var(--transition-base);will-change:transform;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;position:relative;overflow:hidden}.btn:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn:active:after{width:300px;height:300px;transition:width 0s,height 0s}.btn:focus{outline:none}.btn:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.btn-primary{background:var(--color-primary-500);color:#fff;border-color:transparent}.btn-primary:hover:not(:disabled){background:var(--color-primary-400);transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-secondary)}.btn-secondary:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--border-accent);transform:translateY(-2px)}.btn-secondary:active:not(:disabled){transform:translateY(0);background:var(--bg-elevated)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background:#ffffff0d;color:var(--text-primary)}.btn-ghost:active:not(:disabled){background:#ffffff1a}.btn-danger{background:var(--color-error);color:#fff;border-color:transparent}.btn-danger:hover:not(:disabled){background:#f87171;transform:translateY(-2px)}.btn-danger:active:not(:disabled){transform:translateY(0)}.btn-success{background:var(--color-success);color:#fff;border-color:transparent}.btn-success:hover:not(:disabled){background:#34d399;transform:translateY(-2px)}.btn-success:active:not(:disabled){transform:translateY(0)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-xs);min-height:36px}.btn-md{padding:var(--space-3) var(--space-6);font-size:var(--text-sm);min-height:44px}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base);min-height:52px}.btn:disabled,.btn.is-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn.is-loading{position:relative;color:transparent;pointer-events:none}.btn.is-loading:after{content:"";position:absolute;top:50%;left:50%;width:16px;height:16px;margin-top:-8px;margin-left:-8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .6s linear infinite;will-change:transform}.btn-primary.is-loading:after,.btn-danger.is-loading:after,.btn-success.is-loading:after{border-color:#fff;border-right-color:transparent}.btn-secondary.is-loading:after,.btn-ghost.is-loading:after{border-color:var(--text-primary);border-right-color:transparent}.btn.is-active{background:var(--color-primary-600);color:#fff;box-shadow:inset 0 2px 4px #0003}.btn-group{display:inline-flex;gap:var(--space-2)}.btn-group .btn{flex:1}.btn-group-attached{display:inline-flex}.btn-group-attached .btn{border-radius:0;margin-left:-1px}.btn-group-attached .btn:first-child{border-top-left-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg);margin-left:0}.btn-group-attached .btn:last-child{border-top-right-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.btn-icon{padding:var(--space-3);min-width:44px;aspect-ratio:1}.btn-icon.btn-sm{padding:var(--space-2);min-width:36px}.btn-icon.btn-lg{padding:var(--space-4);min-width:52px}.btn-block{display:flex;width:100%}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.btn{transition:none;will-change:auto}.btn:hover:not(:disabled){transform:none}.btn.is-loading:after{animation:none;border-right-color:currentColor}.btn:after{transition:none}}@media (max-width: 768px){.btn{min-height:44px}.btn-sm{min-height:40px}.btn-lg{min-height:52px}}.form-group{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6)}.form-group:last-child{margin-bottom:0}.form-label{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);margin-bottom:var(--space-2)}.form-label.is-required:after{content:" *";color:var(--color-error)}.form-help{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:var(--space-1)}.input,.textarea,.select{width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-lg);transition:all var(--transition-base);appearance:none;-webkit-appearance:none;-moz-appearance:none}.input::placeholder,.textarea::placeholder{color:var(--text-tertiary);opacity:1}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--border-accent);background:var(--bg-tertiary);box-shadow:0 0 0 3px #06b6d41a}.input:hover:not(:disabled):not(:focus),.textarea:hover:not(:disabled):not(:focus),.select:hover:not(:disabled):not(:focus){border-color:var(--border-secondary)}.input:disabled,.textarea:disabled,.select:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-secondary)}.input-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.input-lg{padding:var(--space-4) var(--space-5);font-size:var(--text-lg)}.textarea{min-height:120px;resize:vertical;line-height:var(--leading-relaxed)}.textarea-fixed{resize:none}.select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23a1a1aa' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;background-size:12px;padding-right:var(--space-10)}.select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2306b6d4' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}.input.is-error,.textarea.is-error,.select.is-error{border-color:var(--color-error);background:#ef44440d}.input.is-error:focus,.textarea.is-error:focus,.select.is-error:focus{border-color:var(--color-error);box-shadow:0 0 0 3px #ef44441a}.form-error{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-error);margin-top:var(--space-1)}.input.is-success,.textarea.is-success,.select.is-success{border-color:var(--color-success);background:#10b9810d}.input.is-success:focus,.textarea.is-success:focus,.select.is-success:focus{border-color:var(--color-success);box-shadow:0 0 0 3px #10b9811a}.form-success{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-success);margin-top:var(--space-1)}.input.is-warning,.textarea.is-warning,.select.is-warning{border-color:var(--color-warning);background:#f59e0b0d}.input.is-warning:focus,.textarea.is-warning:focus,.select.is-warning:focus{border-color:var(--color-warning);box-shadow:0 0 0 3px #f59e0b1a}.checkbox,.radio{position:absolute;opacity:0;pointer-events:none}.checkbox-label,.radio-label{display:inline-flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;padding-left:var(--space-8);min-height:24px}.checkbox-label:before,.radio-label:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:20px;height:20px;border:2px solid var(--border-secondary);background:var(--bg-elevated);transition:all var(--transition-base)}.checkbox-label:before{border-radius:var(--radius-sm)}.radio-label:before{border-radius:50%}.checkbox-label:after,.radio-label:after{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%) scale(0);transition:transform var(--transition-base)}.checkbox-label:after{left:7px;top:calc(50% - 2px);width:6px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:translateY(-50%) rotate(45deg) scale(0)}.radio-label:after{left:6px;width:8px;height:8px;border-radius:50%;background:#fff}.checkbox:checked+.checkbox-label:before,.radio:checked+.radio-label:before{background:linear-gradient(135deg,var(--color-primary-500),var(--color-primary-600));border-color:var(--color-primary-500);box-shadow:var(--glow-primary)}.checkbox:checked+.checkbox-label:after{transform:translateY(-50%) rotate(45deg) scale(1)}.radio:checked+.radio-label:after{transform:translateY(-50%) scale(1)}.checkbox:focus+.checkbox-label:before,.radio:focus+.radio-label:before{border-color:var(--border-accent);box-shadow:0 0 0 3px #06b6d41a}.checkbox-label:hover:before,.radio-label:hover:before{border-color:var(--border-accent)}.checkbox:disabled+.checkbox-label,.radio:disabled+.radio-label{opacity:.5;cursor:not-allowed}.input-group{display:flex;width:100%}.input-group .input{flex:1}.input-group .input:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.input-group .input:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-addon{display:flex;align-items:center;padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--text-tertiary);font-size:var(--text-sm);white-space:nowrap}.input-addon:first-child{border-top-left-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg);border-right:none}.input-addon:last-child{border-top-right-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg);border-left:none}.input-search{padding-left:var(--space-10);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23a1a1aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left var(--space-3) center;background-size:16px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.form-inline{display:flex;align-items:flex-end;gap:var(--space-3)}.form-inline .form-group{margin-bottom:0;flex:1}@media (prefers-reduced-motion: reduce){.input,.textarea,.select,.checkbox-label:before,.checkbox-label:after,.radio-label:before,.radio-label:after{transition:none}}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.form-inline{flex-direction:column;align-items:stretch}.input,.textarea,.select{font-size:16px}}.card{display:flex;flex-direction:column;background:var(--bg-glass);backdrop-filter:var(--blur-lg);-webkit-backdrop-filter:var(--blur-lg);border:1px solid var(--border-primary);border-radius:var(--radius-2xl);padding:var(--space-6);transition:all var(--transition-base);overflow:hidden}@supports not (backdrop-filter: blur(16px)){.card{background:#18181bf2}}.card-interactive{cursor:pointer;transition:all var(--transition-base);will-change:transform}.card-interactive:hover{border-color:var(--border-accent);transform:translateY(-4px)}.card-interactive:active{transform:translateY(-2px);transition:transform .1s}.card-solid{background:var(--bg-elevated);backdrop-filter:none;-webkit-backdrop-filter:none}.card-bordered{border-width:2px;border-color:var(--border-secondary)}.card-accent{border-color:var(--border-accent)}.card-success{border-color:var(--color-success);background:#10b9810d}.card-warning{border-color:var(--color-warning);background:#f59e0b0d}.card-error{border-color:var(--color-error);background:#ef44440d}.card-info{border-color:var(--color-info);background:#3b82f60d}.card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-6);border-bottom:1px solid var(--border-primary);margin-bottom:var(--space-6)}.card-header:last-child{padding-bottom:0;border-bottom:none;margin-bottom:0}.card-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0;line-height:var(--leading-tight)}.card-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin-top:var(--space-1)}.card-body{flex:1;color:var(--text-secondary);line-height:var(--leading-relaxed)}.card-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid var(--border-primary);margin-top:var(--space-6)}.card-footer:first-child{padding-top:0;border-top:none;margin-top:0}.card-sm{padding:var(--space-4);border-radius:var(--radius-xl)}.card-sm .card-header{padding-bottom:var(--space-3);margin-bottom:var(--space-3)}.card-sm .card-footer{padding-top:var(--space-3);margin-top:var(--space-3)}.card-lg{padding:var(--space-8);border-radius:var(--radius-2xl)}.card-lg .card-header{padding-bottom:var(--space-6);margin-bottom:var(--space-6)}.card-lg .card-footer{padding-top:var(--space-6);margin-top:var(--space-6)}.card-horizontal{flex-direction:row;align-items:center}.card-horizontal .card-body{flex:1}.card-image{width:100%;height:auto;object-fit:cover;margin:calc(var(--space-6) * -1);margin-bottom:var(--space-4);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}.card-sm .card-image{margin:calc(var(--space-4) * -1);margin-bottom:var(--space-3);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.card-lg .card-image{margin:calc(var(--space-8) * -1);margin-bottom:var(--space-6)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-6)}.card-grid-sm{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4)}.card-grid-lg{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:var(--space-8)}.card.is-selected{border-color:var(--border-accent);box-shadow:var(--shadow-lg),var(--glow-primary)}.card.is-active{border-color:var(--color-primary-500);background:#06b6d40d}.card.is-disabled{opacity:.5;pointer-events:none}.card.is-loading{position:relative;pointer-events:none}.card.is-loading:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#0a0a0fb3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;border-radius:inherit}.card-actions{display:flex;gap:var(--space-2);align-items:center}.card-action{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);color:var(--text-tertiary);background:transparent;border:none;cursor:pointer;transition:all var(--transition-base)}.card-action:hover{color:var(--text-primary);background:#ffffff1a}.card-action:active{background:#ffffff26}.card-action:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.card-badge{position:absolute;top:var(--space-4);right:var(--space-4);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-full);background:var(--color-primary-500);color:#fff;box-shadow:var(--shadow-md)}.card-stat{text-align:center}.card-stat-value{font-size:var(--text-4xl);font-weight:var(--font-bold);color:var(--text-primary);line-height:1;margin-bottom:var(--space-2)}.card-stat-label{font-size:var(--text-sm);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.card-stat-change{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);margin-top:var(--space-2)}.card-stat-change.is-positive{color:var(--color-success)}.card-stat-change.is-negative{color:var(--color-error)}@media (prefers-reduced-motion: reduce){.card,.card-interactive,.card-action{transition:none;will-change:auto}.card-interactive:hover,.card-interactive:active{transform:none}}@media (max-width: 768px){.card{padding:var(--space-4);border-radius:var(--radius-xl)}.card-grid{grid-template-columns:1fr;gap:var(--space-4)}.card-horizontal{flex-direction:column}.card-header{flex-direction:column;align-items:flex-start}.card-footer{flex-direction:column;align-items:stretch}.card-footer .btn{width:100%}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:#0a0a0fcc;backdrop-filter:var(--blur-md);-webkit-backdrop-filter:var(--blur-md);animation:fadeIn var(--transition-base);will-change:opacity;overflow-y:auto}@supports not (backdrop-filter: blur(8px)){.modal-overlay{background:#0a0a0ff2}}.modal{position:relative;width:100%;max-width:500px;max-height:90vh;display:flex;flex-direction:column;background:var(--bg-glass);backdrop-filter:var(--blur-lg);-webkit-backdrop-filter:var(--blur-lg);border:1px solid var(--border-primary);border-radius:var(--radius-2xl);animation:slideUp var(--transition-base);will-change:opacity,transform;overflow:hidden}@supports not (backdrop-filter: blur(16px)){.modal{background:var(--bg-elevated)}}.modal-sm{max-width:400px}.modal-md{max-width:500px}.modal-lg{max-width:700px}.modal-xl{max-width:900px}.modal-full{max-width:95vw;max-height:95vh}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-8);border-bottom:1px solid var(--border-primary);flex-shrink:0}.modal-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0;line-height:var(--leading-tight)}.modal-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-base);flex-shrink:0}.modal-close:hover{background:#ffffff1a;color:var(--text-primary)}.modal-close:active{background:#ffffff26}.modal-close:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.modal-body{flex:1;padding:var(--space-8);color:var(--text-secondary);line-height:var(--leading-relaxed);overflow-y:auto}.modal-body:first-child{padding-top:var(--space-8)}.modal-body:last-child{padding-bottom:var(--space-8)}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-8);border-top:1px solid var(--border-primary);flex-shrink:0}.modal-footer .btn{min-width:100px}.modal-centered{text-align:center}.modal-centered .modal-footer{justify-content:center}.modal-danger .modal-header{border-bottom-color:var(--color-error)}.modal-danger .modal-title{color:var(--color-error)}.modal-success .modal-header{border-bottom-color:var(--color-success)}.modal-success .modal-title{color:var(--color-success)}.modal-warning .modal-header{border-bottom-color:var(--color-warning)}.modal-warning .modal-title{color:var(--color-warning)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}.modal-overlay.is-closing{animation:fadeOut var(--transition-base)}.modal.is-closing{animation:slideDown var(--transition-base)}.modal-content-scroll{max-height:400px;overflow-y:auto}.modal-form .form-group:last-child{margin-bottom:0}.modal-overlay[data-dismiss=true]{cursor:pointer}.modal-overlay[data-dismiss=true] .modal{cursor:default}@media (prefers-reduced-motion: reduce){.modal-overlay,.modal,.modal-close{animation:none;transition:none;will-change:auto}.modal-overlay.is-closing,.modal.is-closing{animation:none}.modal-overlay{opacity:1}.modal{opacity:1;transform:none}}@media (max-width: 768px){.modal-overlay{padding:var(--space-2);align-items:flex-end}.modal{max-width:100%;max-height:85vh;border-bottom-left-radius:0;border-bottom-right-radius:0}.modal-header,.modal-body,.modal-footer{padding:var(--space-4)}.modal-footer{flex-direction:column-reverse}.modal-footer .btn{width:100%}.modal-sm,.modal-md,.modal-lg,.modal-xl{max-width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}}.modal-overlay:focus{outline:none}.modal:focus{outline:none}.modal-overlay[aria-modal=true]{isolation:isolate}.badge{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-medium);line-height:var(--leading-tight);border-radius:var(--radius-full);white-space:nowrap;vertical-align:middle;transition:all var(--transition-base)}.badge-primary{background:var(--color-primary-500);color:#fff}.badge-secondary{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border-secondary)}.badge-success{background:var(--color-success);color:#fff}.badge-warning{background:var(--color-warning);color:#fff}.badge-error{background:var(--color-error);color:#fff}.badge-info{background:var(--color-info);color:#fff}.badge-neutral{background:var(--color-neutral-700);color:var(--text-primary)}.badge-ghost{background:transparent;color:var(--text-tertiary);border:1px solid var(--border-primary)}.badge-sm{padding:0 var(--space-2);font-size:.625rem;min-height:16px}.badge-md{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);min-height:20px}.badge-lg{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);min-height:24px}.badge-outline{background:transparent;border:1px solid currentColor}.badge-outline.badge-primary{color:var(--color-primary-500);background:transparent}.badge-outline.badge-success{color:var(--color-success);background:transparent}.badge-outline.badge-warning{color:var(--color-warning);background:transparent}.badge-outline.badge-error{color:var(--color-error);background:transparent}.badge-outline.badge-info{color:var(--color-info);background:transparent}.badge-subtle.badge-primary{background:#06b6d426;color:var(--color-primary-400)}.badge-subtle.badge-success{background:#10b98126;color:#34d399}.badge-subtle.badge-warning{background:#f59e0b26;color:#fbbf24}.badge-subtle.badge-error{background:#ef444426;color:#f87171}.badge-subtle.badge-info{background:#3b82f626;color:#60a5fa}.badge-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge-icon{padding-left:var(--space-2)}.badge-icon svg,.badge-icon i{width:12px;height:12px}.badge-pill{border-radius:var(--radius-full);padding-left:var(--space-4);padding-right:var(--space-4)}.badge-square{border-radius:var(--radius-sm)}.badge-dismissible{padding-right:var(--space-2)}.badge-close{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;margin-left:var(--space-1);border:none;border-radius:50%;background:#0003;color:currentColor;cursor:pointer;transition:all var(--transition-fast)}.badge-close:hover{background:#0000004d}.badge-absolute{position:absolute}.badge-top-right{top:-8px;right:-8px}.badge-top-left{top:-8px;left:-8px}.badge-bottom-right{bottom:-8px;right:-8px}.badge-bottom-left{bottom:-8px;left:-8px}.badge-counter{min-width:20px;height:20px;padding:0 var(--space-2);font-size:.625rem;font-weight:var(--font-bold)}.badge-counter.badge-sm{min-width:16px;height:16px;padding:0 var(--space-1);font-size:.5rem}.badge-counter.badge-lg{min-width:24px;height:24px;padding:0 var(--space-3);font-size:var(--text-xs)}.badge-group{display:inline-flex;gap:var(--space-2);flex-wrap:wrap}.badge-interactive{cursor:pointer;transition:all var(--transition-base)}.badge-interactive:hover{transform:translateY(-1px)}.badge-interactive:active{transform:translateY(0);transition:transform .1s}.badge-interactive:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.badge-close:focus-visible{outline:2px solid currentColor;outline-offset:1px}@media (prefers-reduced-motion: reduce){.badge,.badge-interactive,.badge-close{transition:none}.badge-interactive:hover{transform:none}}@media (max-width: 768px){.badge{font-size:var(--text-xs)}.badge-sm{font-size:.625rem}.badge-lg{font-size:var(--text-sm)}}.toast-container{position:fixed;z-index:9999;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);pointer-events:none;max-width:420px;width:100%}.toast-container-top-right{top:0;right:0}.toast-container-top-left{top:0;left:0}.toast-container-top-center{top:0;left:50%;transform:translate(-50%)}.toast-container-bottom-right{bottom:0;right:0}.toast-container-bottom-left{bottom:0;left:0}.toast-container-bottom-center{bottom:0;left:50%;transform:translate(-50%)}.toast{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--bg-glass);backdrop-filter:var(--blur-lg);-webkit-backdrop-filter:var(--blur-lg);border:1px solid var(--border-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);pointer-events:auto;min-width:300px;max-width:100%;animation:slideInRight var(--transition-base);will-change:opacity,transform;transition:all var(--transition-base)}@supports not (backdrop-filter: blur(16px)){.toast{background:var(--bg-elevated)}}.toast-success{border-left:4px solid var(--color-success);background:#10b9810d}.toast-error{border-left:4px solid var(--color-error);background:#ef44440d}.toast-warning{border-left:4px solid var(--color-warning);background:#f59e0b0d}.toast-info{border-left:4px solid var(--color-info);background:#3b82f60d}.toast-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;margin-top:2px}.toast-success .toast-icon{color:var(--color-success)}.toast-error .toast-icon{color:var(--color-error)}.toast-warning .toast-icon{color:var(--color-warning)}.toast-info .toast-icon{color:var(--color-info)}.toast-content{flex:1;min-width:0}.toast-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--space-1) 0;line-height:var(--leading-tight)}.toast-message{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-normal);margin:0}.toast-close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);margin-top:2px}.toast-close:hover{background:#ffffff1a;color:var(--text-primary)}.toast-close:active{background:#ffffff26}.toast-close:focus-visible{outline:2px solid currentColor;outline-offset:1px}.toast-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.toast-action{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-medium);border:1px solid var(--border-secondary);border-radius:var(--radius-md);background:transparent;color:var(--text-primary);cursor:pointer;transition:all var(--transition-base)}.toast-action:hover{background:#ffffff1a;border-color:var(--border-accent)}.toast-action:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.toast-action-primary{background:var(--color-primary-500);border-color:var(--color-primary-500);color:#fff}.toast-action-primary:hover{background:var(--color-primary-400);border-color:var(--color-primary-400)}.toast-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff1a;border-radius:0 0 var(--radius-xl) var(--radius-xl);overflow:hidden}.toast-progress-bar{height:100%;background:var(--color-primary-500);transition:width linear}.toast-success .toast-progress-bar{background:var(--color-success)}.toast-error .toast-progress-bar{background:var(--color-error)}.toast-warning .toast-progress-bar{background:var(--color-warning)}.toast-info .toast-progress-bar{background:var(--color-info)}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInTop{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideInBottom{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}@keyframes slideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100%)}}.toast-container-top-left .toast,.toast-container-bottom-left .toast{animation:slideInLeft var(--transition-base)}.toast-container-top-center .toast,.toast-container-bottom-center .toast{animation:slideInTop var(--transition-base)}.toast-container-bottom-center .toast{animation:slideInBottom var(--transition-base)}.toast.is-exiting{animation:slideOutRight var(--transition-base)}.toast-container-top-left .toast.is-exiting,.toast-container-bottom-left .toast.is-exiting{animation:slideOutLeft var(--transition-base)}.toast-container .toast:not(:last-child){margin-bottom:0}.toast:nth-child(1){animation-delay:0ms}.toast:nth-child(2){animation-delay:50ms}.toast:nth-child(3){animation-delay:.1s}.toast:nth-child(4){animation-delay:.15s}.toast:nth-child(5){animation-delay:.2s}.toast-sm{min-width:250px;padding:var(--space-3)}.toast-sm .toast-title,.toast-sm .toast-message{font-size:var(--text-xs)}.toast-lg{min-width:400px;padding:var(--space-5)}.toast-lg .toast-title,.toast-lg .toast-message{font-size:var(--text-base)}@media (prefers-reduced-motion: reduce){.toast,.toast-close,.toast-action{animation:none;transition:none;will-change:auto}.toast{opacity:1;transform:none}.toast.is-exiting{animation:none}.toast-progress-bar{transition:none}}@media (max-width: 768px){.toast-container{max-width:100%;padding:var(--space-3)}.toast{min-width:0;width:100%}.toast-container-top-center,.toast-container-bottom-center{left:0;right:0;transform:none}.toast-actions{flex-direction:column}.toast-action{width:100%}}.navigation{background:var(--bg-glass);border-bottom:1px solid var(--border-primary);box-shadow:0 4px 24px #0f172a33,inset 0 1px #ffffff0d;position:sticky;top:0;z-index:100;backdrop-filter:var(--blur-xl);-webkit-backdrop-filter:var(--blur-xl)}@supports not (backdrop-filter: blur(24px)){.navigation{background:#18181bf2}}.nav-container{max-width:1400px;margin:0 auto;padding:0 var(--space-6);display:flex;align-items:center;justify-content:space-between;height:4rem}.nav-brand{font-weight:var(--font-bold);font-size:var(--text-xl)}.brand-link{color:var(--text-primary);text-decoration:none;background:linear-gradient(135deg,var(--color-primary-300),var(--color-primary-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;transition:all var(--transition-base);will-change:transform;letter-spacing:var(--tracking-tight);display:inline-block}.brand-link:hover{transform:scale(1.05);filter:drop-shadow(0 0 8px rgba(6,182,212,.3))}.nav-links{display:flex;gap:var(--space-6);align-items:center}.nav-link{color:var(--text-secondary);text-decoration:none;padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);transition:all var(--transition-base);will-change:transform;font-weight:var(--font-medium);font-size:var(--text-sm);position:relative;-webkit-backdrop-filter:var(--blur-md);backdrop-filter:var(--blur-md);letter-spacing:var(--tracking-wide)}.nav-link:hover{color:var(--text-primary);background:#06b6d41a;transform:translateY(-1px)}.nav-link.active{color:var(--color-primary-300);background:#06b6d426;box-shadow:0 2px 8px #06b6d433}.nav-link.active:after{content:"";position:absolute;bottom:-1px;left:50%;transform:translate(-50%);width:90%;height:2px;background:var(--color-primary-500);border-radius:1px}.nav-user{display:flex;align-items:center;gap:var(--space-4)}.user-info{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium)}.mobile-menu-button{display:none;background:#4755694d;border:1px solid var(--border-primary);color:var(--text-primary);padding:var(--space-2);width:2.5rem;height:2.5rem;align-items:center;justify-content:center;border-radius:var(--radius-lg);transition:all var(--transition-base);will-change:transform;cursor:pointer}.mobile-menu-button:hover{background:#47556980;border-color:var(--border-secondary);transform:scale(1.05)}.mobile-menu-button:active{transform:scale(.95)}.mobile-menu-overlay{display:none;position:fixed;top:4rem;left:0;right:0;bottom:0;background:#0a0a0fcc;-webkit-backdrop-filter:var(--blur-lg);backdrop-filter:var(--blur-lg);z-index:99;animation:fadeIn var(--transition-base);will-change:opacity}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-menu-overlay.open{display:block}.mobile-menu{background:var(--bg-glass);border-bottom:1px solid var(--border-primary);padding:var(--space-4);-webkit-backdrop-filter:var(--blur-xl);backdrop-filter:var(--blur-xl);animation:slideDown var(--transition-base);will-change:opacity,transform}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.mobile-menu .nav-links{flex-direction:column;gap:var(--space-2);width:100%}.mobile-menu .nav-link{width:100%;text-align:center;padding:var(--space-3) var(--space-4)}@media (max-width: 768px){.nav-container{padding:0 var(--space-4);height:3.5rem}.nav-links{gap:var(--space-3)}.nav-link{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.user-info{display:none}.brand-link{font-size:var(--text-lg)}}@media (max-width: 480px){.nav-container{flex-wrap:wrap;height:auto;padding:var(--space-2) var(--space-4)}.nav-brand{order:1;flex:1}.nav-user{order:2}.nav-links{order:3;width:100%;justify-content:center;margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-primary)}.nav-link{padding:var(--space-1) var(--space-2)}}@media (max-width: 768px){.nav-link,.brand-link,.mobile-menu-button{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}}@media (prefers-reduced-motion: reduce){.brand-link,.nav-link,.mobile-menu-button,.mobile-menu-overlay,.mobile-menu{animation:none;transition:none;will-change:auto}.brand-link:hover,.nav-link:hover,.mobile-menu-button:hover,.mobile-menu-button:active{transform:none}}#root{min-height:100vh;display:flex;flex-direction:column}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 var(--space-6)}.container-sm{max-width:640px}.container-md{max-width:768px}.container-lg{max-width:1024px}.container-xl{max-width:1280px}.container-fluid{max-width:100%;padding:0 var(--space-4)}.page-container{padding:var(--space-8);max-width:1400px;margin:0 auto;min-height:100vh}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8);padding:var(--space-8);background:var(--bg-glass);border-radius:var(--radius-2xl);box-shadow:0 8px 32px #0f172a66,inset 0 1px #ffffff1a;border:1px solid var(--border-primary);-webkit-backdrop-filter:var(--blur-xl);backdrop-filter:var(--blur-xl)}.page-title{color:var(--text-primary);font-size:var(--text-4xl);font-weight:var(--font-semibold);background:linear-gradient(135deg,var(--color-primary-300),var(--color-primary-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:var(--tracking-tight);margin:0}.page-actions{display:flex;gap:var(--space-4);align-items:center}.content-wrapper{display:flex;flex-direction:column;gap:var(--space-6)}.content-section{background:var(--bg-glass);border:1px solid var(--border-primary);border-radius:var(--radius-2xl);padding:var(--space-6);-webkit-backdrop-filter:var(--blur-xl);backdrop-filter:var(--blur-xl);box-shadow:0 4px 24px #0f172a4d,inset 0 1px #ffffff0d}.section-header{margin-bottom:var(--space-6)}.section-title{color:var(--text-primary);font-size:var(--text-2xl);font-weight:var(--font-semibold);letter-spacing:var(--tracking-tight);margin:0 0 var(--space-2) 0}.section-description{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.grid{display:grid;gap:var(--space-6)}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-auto-fit-sm{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.grid-auto-fit-lg{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.grid-auto-fill{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.gap-0{gap:var(--space-0)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.two-column-layout{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-8)}.two-column-layout.equal{grid-template-columns:1fr 1fr}.two-column-layout.sidebar-left{grid-template-columns:300px 1fr}.two-column-layout.sidebar-right{grid-template-columns:1fr 300px}.three-column-layout{display:grid;grid-template-columns:1fr 2fr 1fr;gap:var(--space-6)}.three-column-layout.equal{grid-template-columns:1fr 1fr 1fr}.m-0{margin:var(--space-0)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-5{margin:var(--space-5)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.mt-0{margin-top:var(--space-0)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-0{margin-bottom:var(--space-0)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.ml-0{margin-left:var(--space-0)}.ml-1{margin-left:var(--space-1)}.ml-2{margin-left:var(--space-2)}.ml-3{margin-left:var(--space-3)}.ml-4{margin-left:var(--space-4)}.mr-0{margin-right:var(--space-0)}.mr-1{margin-right:var(--space-1)}.mr-2{margin-right:var(--space-2)}.mr-3{margin-right:var(--space-3)}.mr-4{margin-right:var(--space-4)}.p-0{padding:var(--space-0)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.pt-0{padding-top:var(--space-0)}.pt-1{padding-top:var(--space-1)}.pt-2{padding-top:var(--space-2)}.pt-3{padding-top:var(--space-3)}.pt-4{padding-top:var(--space-4)}.pb-0{padding-bottom:var(--space-0)}.pb-1{padding-bottom:var(--space-1)}.pb-2{padding-bottom:var(--space-2)}.pb-3{padding-bottom:var(--space-3)}.pb-4{padding-bottom:var(--space-4)}.pl-0{padding-left:var(--space-0)}.pl-1{padding-left:var(--space-1)}.pl-2{padding-left:var(--space-2)}.pl-3{padding-left:var(--space-3)}.pl-4{padding-left:var(--space-4)}.pr-0{padding-right:var(--space-0)}.pr-1{padding-right:var(--space-1)}.pr-2{padding-right:var(--space-2)}.pr-3{padding-right:var(--space-3)}.pr-4{padding-right:var(--space-4)}.w-full{width:100%}.w-auto{width:auto}.w-screen{width:100vw}.max-w-sm{max-width:640px}.max-w-md{max-width:768px}.max-w-lg{max-width:1024px}.max-w-xl{max-width:1280px}.max-w-full{max-width:100%}.h-full{height:100%}.h-screen{height:100vh}.min-h-screen{min-height:100vh}@media (max-width: 1024px){.grid-cols-4{grid-template-columns:repeat(3,1fr)}.three-column-layout,.three-column-layout.equal{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.container{padding:0 var(--space-4)}.page-container{padding:var(--space-4)}.page-header{flex-direction:column;gap:var(--space-4);padding:var(--space-6)}.page-title{font-size:var(--text-3xl)}.page-actions{width:100%;justify-content:center}.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}.two-column-layout,.two-column-layout.sidebar-left,.two-column-layout.sidebar-right,.three-column-layout,.three-column-layout.equal{grid-template-columns:1fr}.grid-auto-fit-lg{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (max-width: 480px){.container{padding:0 var(--space-3)}.page-container{padding:var(--space-3)}.page-header{padding:var(--space-4)}.page-title{font-size:var(--text-2xl)}.grid-cols-2,.grid-cols-3,.grid-cols-4,.grid-auto-fit,.grid-auto-fit-sm,.grid-auto-fit-lg{grid-template-columns:1fr}.content-section{padding:var(--space-4)}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.auth-card{width:100%;max-width:420px;background:var(--bg-glass);border-radius:var(--radius-2xl);padding:var(--space-10);border:1px solid var(--border-primary);position:relative;overflow:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:slideUp .4s cubic-bezier(.34,1.56,.64,1) ease-out}.auth-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--color-primary-500);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}.auth-header{text-align:center;margin-bottom:var(--space-8)}.auth-header h1{font-size:2rem;font-weight:600;margin-bottom:var(--space-2);color:var(--color-primary-400);letter-spacing:-.025em}.auth-header p{color:var(--text-muted);font-size:.875rem}.auth-form{margin-bottom:var(--space-6)}.auth-submit{width:100%;margin-top:var(--space-2)}.auth-footer{text-align:center;padding-top:var(--space-6);border-top:1px solid var(--border-primary)}.auth-footer p{color:var(--text-muted);font-size:.875rem}.auth-link{color:var(--primary-400);text-decoration:none;font-weight:500;transition:color var(--transition-fast)}.auth-link:hover{color:var(--primary-300);text-decoration:underline}.password-requirements{margin-top:var(--space-1);font-size:.75rem;color:var(--text-muted);line-height:1.4}.auth-container{animation:slideInUp .4s ease-out}@media (max-width: 768px){.auth-container{padding:var(--space-2)}.auth-card{padding:var(--space-6)}.auth-header h1{font-size:1.75rem}}@media (max-width: 480px){.auth-card{padding:var(--space-6)}}.room-list-container{padding:var(--space-8);max-width:1400px;margin:0 auto;min-height:100vh;animation:fadeInUp .8s cubic-bezier(.4,0,.2,1) both}.room-list-container .loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);min-height:400px;padding:var(--space-12);background:var(--bg-glass);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0f172a66,inset 0 1px #ffffff1a;border:1px solid var(--border-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:var(--text-primary);font-size:1.125rem;font-weight:500;animation:slideUp .4s cubic-bezier(.34,1.56,.64,1) ease-out}.room-list-container .loading .loading-spinner{width:4rem;height:4rem;border-width:4px;border-color:var(--border-primary);border-top-color:var(--color-primary-400);margin:0}.room-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-12);padding:var(--space-10);background:var(--bg-glass);border-radius:var(--radius-sm);border:1px solid var(--border-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.room-list-header h1{color:var(--color-primary-400);font-size:2.25rem;font-weight:600;letter-spacing:-.025em}.room-actions{display:flex;gap:var(--space-5)}.rooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--space-6)}.room-card{background:var(--bg-glass);border:1px solid var(--border-primary);border-radius:var(--radius-2xl);padding:var(--space-8);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:slideInUp .6s cubic-bezier(.34,1.56,.64,1) both}.room-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--color-primary-500);transform:scaleX(0);transition:transform .4s cubic-bezier(.4,0,.2,1);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}.room-card:hover{border-color:var(--border-accent);transform:translateY(-6px)}.room-card:hover:before{transform:scaleX(1)}.room-card:active{transform:translateY(-4px);transition:transform .1s}.room-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.room-header h3{color:var(--text-primary);margin:0;font-size:1.375rem;font-weight:600;letter-spacing:-.025em}.room-status{padding:var(--space-2) var(--space-4);border-radius:var(--radius-2xl);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.room-status.waiting{background:var(--color-warning);color:#fff}.room-status.in-progress{background:var(--color-success);color:#fff}.room-status.completed{background:var(--color-neutral-600);color:#fff}.room-info{margin-bottom:var(--space-4)}.room-info p{margin:var(--space-1) 0;color:var(--text-secondary);font-size:.875rem}.room-players{margin-bottom:var(--space-5)}.player-name{display:inline-flex;align-items:center;background:#1e293b99;padding:var(--space-2) var(--space-3);border-radius:var(--radius-xl);margin-right:var(--space-2);margin-bottom:var(--space-2);font-size:.8125rem;font-weight:500;color:var(--text-secondary);border:1px solid var(--border-secondary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all var(--transition-fast)}.player-name:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.more-players{color:var(--text-muted);font-size:.75rem;font-style:italic}.join-button{width:100%;padding:var(--space-4) var(--space-4);border:1px solid transparent;border-radius:var(--radius-xl);font-size:.875rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.025em}.join-button:not(:disabled){background:var(--color-primary-500);color:#fff;border-color:var(--border-accent)}.join-button:hover:not(:disabled){background:var(--color-primary-400);transform:translateY(-2px)}.join-button:disabled{background:#64748b80;color:var(--text-disabled);cursor:not-allowed;border-color:#64748b4d}.join-button.rejoin-button{background:linear-gradient(135deg,#f59e0b,#d97706);animation:pulse-rejoin 2s ease-in-out infinite}.join-button.rejoin-button:hover{background:linear-gradient(135deg,#fbbf24,#f59e0b);box-shadow:0 6px 20px #f59e0b66,inset 0 1px #ffffff4d}@keyframes pulse-rejoin{0%,to{box-shadow:0 4px 14px #f59e0b4d}50%{box-shadow:0 4px 20px #f59e0b80}}.no-rooms{grid-column:1 / -1;text-align:center;padding:var(--space-16);color:var(--text-muted);background:var(--bg-glass);border-radius:var(--radius-sm);border:2px dashed var(--border-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:slideInUp .6s cubic-bezier(.34,1.56,.64,1) both}.no-rooms p{font-size:1.25rem;margin-bottom:var(--space-4);font-weight:500}.room-lobby-container{padding:var(--space-8);max-width:1400px;margin:0 auto;min-height:100vh;animation:fadeInUp .8s cubic-bezier(.4,0,.2,1) both}.lobby-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8);padding:var(--space-8);background:var(--bg-glass);border-radius:var(--radius-2xl);box-shadow:0 8px 32px #0f172a66,inset 0 1px #ffffff1a;border:1px solid var(--border-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.lobby-header h1{color:var(--text-primary);font-size:2.25rem;font-weight:600;background:linear-gradient(135deg,var(--color-primary-300),var(--color-primary-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.025em}.leave-button{background:linear-gradient(135deg,var(--error-500),var(--error-600));color:#fff;border:1px solid rgba(248,113,113,.3);padding:var(--space-3) var(--space-6);border-radius:var(--radius-xl);font-size:.875rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.025em;box-shadow:0 4px 14px #f8717140,inset 0 1px #fff3}.leave-button:hover{background:linear-gradient(135deg,#ef4444,var(--error-500));box-shadow:0 6px 20px #f8717166,inset 0 1px #ffffff4d;transform:translateY(-2px);border-color:#f8717180}.lobby-content{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-8)}.players-section h2,.character-section h2{color:var(--text-primary);margin-bottom:var(--space-6);font-size:1.5rem;font-weight:600;letter-spacing:-.025em}.players-list{background:var(--bg-glass);border:1px solid var(--border-primary);border-radius:var(--radius-2xl);padding:var(--space-6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 4px 24px #0f172a4d,inset 0 1px #ffffff0d}.player-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) 0;border-bottom:1px solid var(--border-primary);transition:all var(--transition-fast)}.player-item:last-child{border-bottom:none}.player-item:hover{transform:translate(4px)}.player-info{display:flex;flex-direction:column;gap:var(--space-1)}.player-info .player-name{font-weight:600;color:var(--text-primary);font-size:1rem}.player-character{font-size:.875rem;color:var(--text-muted);font-weight:500}.ready-status{padding:var(--space-2) var(--space-4);border-radius:var(--radius-2xl);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;box-shadow:0 2px 8px #0003,inset 0 1px #fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all var(--transition-fast)}.ready-status.ready{background:linear-gradient(135deg,var(--success-500),var(--success-600));color:#fff;border:1px solid rgba(34,197,94,.3)}.ready-status.not-ready{background:linear-gradient(135deg,var(--warning-500),var(--warning-600));color:#fff;border:1px solid rgba(234,179,8,.3)}.selected-character{background:var(--bg-glass);border:1px solid var(--border-primary);border-radius:var(--radius-2xl);padding:var(--space-8);margin-bottom:var(--space-6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 4px 24px #0f172a4d,inset 0 1px #ffffff0d;transition:all .4s cubic-bezier(.4,0,.2,1)}.selected-character-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6)}.selected-character h3{color:var(--text-primary);margin-bottom:var(--space-2);font-size:1.5rem;font-weight:600;letter-spacing:-.025em}.change-character-button{background:#475569cc;color:var(--text-primary);border:1px solid rgba(203,213,225,.2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-xl);cursor:pointer;font-size:.875rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.change-character-button:hover{background:#475569e6;border-color:#cbd5e14d;transform:translateY(-1px);box-shadow:0 4px 14px #4755694d}.character-type{color:var(--text-muted);margin-bottom:var(--space-4);font-weight:500}.character-stats h4,.character-keywords h4,.character-abilities h4{color:var(--text-primary);margin:var(--space-4) 0 var(--space-3) 0;font-size:1.125rem;font-weight:600;letter-spacing:-.025em}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem;color:var(--text-secondary)}.keywords-list{display:flex;flex-wrap:wrap;gap:.5rem}.keyword{background-color:#47556980;padding:.25rem .5rem;border-radius:4px;font-size:.875rem;color:var(--text-primary)}.abilities-list{max-height:350px;overflow-y:auto}.ability-item{padding:.75rem 0;border-bottom:1px solid var(--border-primary)}.ability-item:last-child{border-bottom:none}.ability-item strong{color:var(--text-primary)}.ability-item p{margin:.25rem 0 0;color:var(--text-secondary);font-size:.875rem}.ability-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.ability-stats{display:flex;gap:1rem;font-size:.75rem;color:var(--text-tertiary)}.damage-stat{color:var(--color-error);font-weight:500}.range-stat{color:var(--color-primary-400);font-weight:500}.ability-details{margin-left:0}.ability-description{margin:0 0 .25rem;color:var(--text-secondary);font-size:.875rem}.range-values{font-size:.75rem;color:var(--text-tertiary);font-style:italic}.sub-abilities{margin-top:.75rem;margin-left:1rem;padding-left:1rem;border-left:2px solid var(--border-secondary)}.sub-abilities-header{font-size:.75rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;font-weight:600}.sub-ability-item{padding:.5rem 0;border-bottom:1px solid var(--border-primary)}.sub-ability-item:last-child{border-bottom:none}.sub-ability-header{display:flex;gap:.75rem;align-items:center;margin-bottom:.25rem;flex-wrap:wrap}.sub-ability-header strong{color:var(--text-primary);font-size:.875rem}.sub-ability-damage{font-size:.7rem;color:var(--color-error);font-weight:500;margin-right:12px}.sub-ability-range{font-size:.7rem;color:var(--color-primary-400);font-weight:500}.sub-ability-description{margin:0;color:var(--text-secondary);font-size:.8rem;line-height:1.4}.character-selection{background:var(--bg-glass);border:1px solid var(--border-primary);border-radius:var(--radius-2xl);padding:var(--space-8);margin-bottom:var(--space-6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 4px 24px #0f172a4d,inset 0 1px #ffffff0d}.character-search{margin:var(--space-4) 0}.search-input{width:100%;padding:var(--space-4);border:1px solid var(--border-primary);border-radius:var(--radius-xl);background:#1e293b80;color:var(--text-primary);font-size:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.search-input:focus{outline:none;border-color:var(--primary-400);box-shadow:0 0 0 3px #0ea5e926,0 4px 14px #0ea5e91a;background:#1e293bb3}.characters-container{max-height:400px;overflow-y:auto;border:1px solid var(--border-primary);border-radius:4px;padding:1rem;background-color:var(--bg-secondary);position:relative}.characters-container::-webkit-scrollbar{width:8px}.characters-container::-webkit-scrollbar-track{background:var(--bg-elevated);border-radius:4px}.characters-container::-webkit-scrollbar-thumb{background:var(--color-primary-500);border-radius:4px}.characters-container::-webkit-scrollbar-thumb:hover{background:var(--color-primary-600)}.characters-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4);margin:var(--space-4) 0}@media (min-width: 768px){.characters-grid{grid-template-columns:repeat(2,1fr)}}.character-option{background:var(--bg-glass);border:1px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--space-5);text-align:left;transition:all .4s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:scaleUp .4s cubic-bezier(.34,1.56,.64,1) both}.character-option:hover:not(:disabled){border-color:var(--border-accent);background:#1e293bcc;transform:translateY(-4px)}.character-option:active:not(:disabled){transform:translateY(-2px);transition:transform .1s}.character-option:disabled{opacity:.6;cursor:not-allowed;transform:none;filter:grayscale(.3)}.character-option:disabled:hover{transform:none;box-shadow:none;border-color:var(--border-primary);filter:grayscale(.3)}.character-option .character-name{font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1);font-size:1rem}.character-option .character-type{font-size:.875rem;color:var(--text-secondary);font-weight:500}.character-stats-preview{font-size:.75rem;color:var(--text-muted);margin-top:var(--space-2);line-height:1.3;font-weight:500}.character-controls{margin-top:1rem;text-align:center}.show-more-button{background-color:#007bff;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;font-size:.875rem;cursor:pointer;transition:background-color .2s}.show-more-button:hover{background-color:#0056b3}.search-results{margin-top:.5rem;color:#999;font-size:.875rem}.more-characters{color:#999;text-align:center;margin-top:1rem}.character-selection-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0f0f23e6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10;border-radius:var(--radius-lg);animation:fadeIn .2s ease-out;box-shadow:inset 0 0 50px #3b82f61a}.character-selection-loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-8);background:var(--bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);border:1px solid var(--border-primary);text-align:center;animation:slideUp .3s ease-out}.character-selection-loading .loading-spinner{width:3rem;height:3rem;border-width:4px;border-color:var(--border-primary);border-top-color:var(--color-primary-400)}.character-selection-loading p{color:var(--text-primary);font-weight:500;font-size:1rem;margin:0;animation:pulse 2s ease-in-out infinite}.character-selection-overlay~.characters-grid .character-option{pointer-events:none}.ready-section{text-align:center;margin-top:var(--space-8)}.ready-button{padding:var(--space-4) var(--space-8);border:1px solid transparent;border-radius:var(--radius-xl);font-size:1.125rem;font-weight:600;transition:all .4s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.025em;position:relative;overflow:hidden}.ready-button.ready{background:linear-gradient(135deg,var(--warning-500),var(--warning-600));color:#fff;border-color:#eab3084d;box-shadow:0 4px 14px #eab30840,inset 0 1px #fff3}.ready-button.not-ready{background:linear-gradient(135deg,var(--success-500),var(--success-600));color:#fff;border-color:#22c55e4d;box-shadow:0 4px 14px #22c55e40,inset 0 1px #fff3}.ready-button:hover:not(:disabled){transform:translateY(-2px) scale(1.05);box-shadow:0 8px 25px #22c55e66,inset 0 1px #ffffff4d}.ready-button.ready:hover:not(:disabled){box-shadow:0 8px 25px #eab30866,inset 0 1px #ffffff4d}.ready-button:disabled{background:#64748b80;color:var(--text-disabled);cursor:not-allowed;border-color:#64748b4d;transform:none}.ready-hint{margin-top:var(--space-3);color:var(--text-muted);font-size:.875rem;font-weight:500}.game-starting{background:linear-gradient(135deg,var(--success-500),var(--success-600));color:#fff;padding:var(--space-8);border-radius:var(--radius-2xl);text-align:center;margin-top:var(--space-8);box-shadow:0 8px 32px #22c55e4d,inset 0 1px #fff3;border:1px solid rgba(34,197,94,.3);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:pulse 2s ease-in-out infinite}.game-starting h2{margin:0;font-size:1.5rem;font-weight:600;letter-spacing:-.025em}.countdown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--space-4);overflow-x:hidden;-webkit-overflow-scrolling:touch}.countdown-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease-out}.countdown-modal{position:relative;background:linear-gradient(135deg,var(--warning-500),var(--warning-600));color:#fff;padding:var(--space-8);border-radius:var(--radius-2xl);text-align:center;max-width:500px;width:100%;margin:auto;box-shadow:0 20px 60px #00000080,0 8px 32px #fbbf244d,inset 0 1px #fff3;border:1px solid rgba(251,191,36,.3);animation:scaleIn .3s ease-out,pulse 1s ease-in-out infinite .3s}.countdown-modal h2{margin:0 0 var(--space-2) 0;font-size:1.75rem;font-weight:700;letter-spacing:-.025em}.countdown-modal p{margin:0 0 var(--space-6) 0;font-size:.875rem;opacity:.9}.countdown-cancel-button{background:#fff3;color:#fff;border:2px solid white;padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:140px}.countdown-cancel-button:hover{background:#ffffff4d;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.countdown-cancel-button:active{transform:translateY(0)}.countdown-display{background:linear-gradient(135deg,var(--warning-500),var(--warning-600));color:#fff;padding:var(--space-8);border-radius:var(--radius-2xl);text-align:center;margin-top:var(--space-8);box-shadow:0 8px 32px #fbbf244d,inset 0 1px #fff3;border:1px solid rgba(251,191,36,.3);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:pulse 1s ease-in-out infinite}.countdown-display h2{margin:0 0 var(--space-2) 0;font-size:1.75rem;font-weight:700;letter-spacing:-.025em}.countdown-display p{margin:0;font-size:.875rem;opacity:.9}.room-card:nth-child(1){animation:slideInUp .6s cubic-bezier(.34,1.56,.64,1) .1s both}.room-card:nth-child(2){animation:slideInUp .6s cubic-bezier(.34,1.56,.64,1) .2s both}.room-card:nth-child(3){animation:slideInUp .6s cubic-bezier(.34,1.56,.64,1) .3s both}.room-card:nth-child(4){animation:slideInUp .6s cubic-bezier(.34,1.56,.64,1) .4s both}.room-card:nth-child(5){animation:slideInUp .6s cubic-bezier(.34,1.56,.64,1) .5s both}.room-card:nth-child(6){animation:slideInUp .6s cubic-bezier(.34,1.56,.64,1) .6s both}@media (max-width: 768px){.ability-header{flex-direction:column;align-items:flex-start;gap:.25rem}.ability-stats{gap:.75rem;font-size:.7rem}.room-list-header{flex-direction:column;gap:var(--space-4);align-items:stretch}.room-actions{justify-content:center;flex-wrap:wrap}.lobby-content{grid-template-columns:1fr;gap:var(--space-6)}.rooms-grid,.characters-grid{grid-template-columns:1fr}.selected-character,.character-selection{padding:var(--space-6)}.lobby-header{flex-direction:column;gap:var(--space-4);align-items:stretch}.lobby-header h1{font-size:2rem;text-align:center}.stats-grid{grid-template-columns:1fr}}@media (max-width: 480px){.room-list-container{padding:var(--space-4)}.room-card{padding:var(--space-5)}.room-actions{flex-direction:column}.btn{width:100%;justify-content:center}.room-lobby-container{padding:var(--space-4)}.lobby-header{padding:var(--space-6)}.selected-character,.character-selection{padding:var(--space-5)}.characters-grid{grid-template-columns:1fr;gap:var(--space-3)}.character-option{padding:var(--space-4)}.countdown-overlay{align-items:flex-start;padding:var(--space-8) var(--space-4)}.countdown-modal{padding:var(--space-6);max-width:90%;margin-top:20vh}.countdown-modal h2{font-size:1.5rem}.countdown-modal p{font-size:.8125rem}}@media (max-width: 480px){.countdown-overlay{padding:var(--space-6) var(--space-3)}.countdown-modal{padding:var(--space-5);margin-top:15vh}.countdown-modal h2{font-size:1.25rem}.countdown-cancel-button{width:100%;padding:var(--space-4) var(--space-6)}}.game-room-layout{display:flex;flex-direction:column;min-height:100vh;background:var(--bg-primary)}.game-room-header{flex-shrink:0;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-primary);background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.game-room-content{display:flex;flex:1;overflow:hidden}.game-room-left-panel{flex-shrink:0;width:100%;max-width:280px;overflow-y:auto;border-right:1px solid var(--border-primary);background:#0f172a80}.game-room-main{flex:1;overflow-y:auto;padding:var(--space-6);background:var(--bg-primary)}.game-room-footer{flex-shrink:0;padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-primary);background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.game-room-two-panel{display:flex;flex:1;overflow:hidden}.game-room-divider{width:1px;background:linear-gradient(to bottom,transparent,var(--border-primary) 10%,var(--border-primary) 90%,transparent)}.game-room-main-scroll{flex:1;overflow-y:auto;padding:var(--space-6);background:var(--bg-primary)}.game-room-main-scroll::-webkit-scrollbar{width:8px}.game-room-main-scroll::-webkit-scrollbar-track{background:#1e293b4d;border-radius:var(--radius-lg)}.game-room-main-scroll::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--primary-500),var(--primary-600));border-radius:var(--radius-lg)}.game-room-main-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,var(--primary-400),var(--primary-500))}@keyframes statUpdateHighlight{0%{box-shadow:0 0 #0ea5e9b3}50%{box-shadow:0 0 20px 4px #0ea5e980}to{box-shadow:0 0 #0ea5e900}}.stat-update-highlight{animation:statUpdateHighlight 1.5s ease-out;will-change:box-shadow}@keyframes statUpdate{0%{background-color:#0ea5e94d;transform:scale(1.02)}to{background-color:transparent;transform:scale(1)}}.stat-updated{animation:statUpdate .5s ease-out;will-change:background-color,transform}.player-panel{background:var(--bg-glass);border-right:1px solid var(--border-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;flex-direction:column;height:100%;width:100%;max-width:280px;box-shadow:4px 0 24px #0f172a4d,inset 0 1px #ffffff0d}.game-room-loading{position:absolute;top:0;left:0;right:0;bottom:0;background:#0a0a0ff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:100}.game-room-loading-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);padding:var(--space-12);background:var(--bg-glass);border-radius:var(--radius-2xl);box-shadow:0 8px 32px #0f172a66,inset 0 1px #ffffff1a;border:1px solid var(--border-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.game-room-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12);text-align:center}.game-room-error-icon{font-size:4rem;margin-bottom:var(--space-4);color:var(--error-500)}.game-room-error h2{color:var(--text-primary);font-size:1.5rem;margin-bottom:var(--space-2)}.game-room-error p{color:var(--text-muted);margin-bottom:var(--space-4)}@media (max-width: 1024px){.game-room-left-panel{max-width:240px}.game-room-main-scroll{padding:var(--space-4)}}@media (max-width: 768px){.game-room-content{flex-direction:column}.game-room-left-panel{max-width:100%;max-height:200px;border-right:none;border-bottom:1px solid var(--border-primary);width:100%}.game-room-two-panel{flex-direction:column}.game-room-left-panel{max-width:none;width:100%;max-height:200px;border-right:none;border-bottom:1px solid var(--border-primary)}.game-room-divider{display:none}.game-room-main-scroll{padding:var(--space-3)}.game-room-main{padding:var(--space-4)}}@media (max-width: 480px){.game-room-left-panel{max-height:180px}.game-room-left-panel{max-height:160px}.game-room-main-scroll{padding:var(--space-2)}.game-room-main{padding:var(--space-3)}}@media (prefers-reduced-motion: reduce){.stat-update-highlight,.stat-updated{animation:none;will-change:auto}.stat-updated{transform:none}}.codex-loading-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-8)}.codex-loading-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);padding:var(--space-12);background:var(--bg-glass);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0f172a66,inset 0 1px #ffffff1a;border:1px solid var(--border-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:slideUp .4s cubic-bezier(.34,1.56,.64,1) ease-out}.codex-loading-content .loading-spinner{width:4rem;height:4rem;border-width:4px;border-color:var(--border-primary);border-top-color:var(--color-primary-400);margin:0}.codex-loading-content p{color:var(--text-primary);font-size:1.125rem;font-weight:500;margin:0;animation:pulse 2s ease-in-out infinite}.codex-container{padding:var(--space-8);max-width:2000px;margin:0 auto;animation:fadeInUp .8s cubic-bezier(.4,0,.2,1) both;width:100%}.codex-header{margin-bottom:var(--space-6);padding:var(--space-3);background:var(--bg-glass);border-radius:var(--radius-lg);border:1px solid var(--border-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);text-align:center}.codex-header h1{color:var(--color-primary-400);font-size:2.5rem;font-weight:600;letter-spacing:-.025em;margin-bottom:var(--space-1)}.codex-subtitle{color:var(--text-muted);font-size:1rem;margin:0}.codex-content{display:grid;grid-template-columns:420px 1fr;gap:var(--space-8);min-height:600px;align-items:start}.character-list-panel{background:var(--bg-glass);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;flex-direction:column;max-height:calc(100vh - 250px);position:sticky;top:var(--space-8)}.filter-section{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-primary)}.filter-group{margin-bottom:var(--space-3)}.filter-group label{display:block;color:var(--text-secondary);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.filter-select,.search-input{width:100%;padding:var(--space-3);border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:#1e293b80;color:var(--text-primary);font-size:.875rem;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.filter-select:focus,.search-input:focus{outline:none;border-color:var(--primary-400);box-shadow:0 0 0 3px #0ea5e926,0 4px 14px #0ea5e91a;background:#1e293bb3}.filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:var(--space-3);margin-bottom:var(--space-3);width:100%}.advanced-filters .filter-row{grid-template-columns:1fr 1fr}.toggle-advanced-btn{width:100%;padding:var(--space-2) var(--space-3);background:#4755694d;border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:left;margin-bottom:var(--space-3)}.toggle-advanced-btn:hover{background:#47556980;border-color:var(--border-secondary);color:var(--text-primary)}.advanced-filters{margin-top:var(--space-3);padding:var(--space-4);background:#1e293b4d;border-radius:var(--radius-md);border:1px solid var(--border-primary);overflow:hidden}.filter-group-range{margin-bottom:var(--space-3)}.filter-group-range:last-child{margin-bottom:0}.filter-group-range label{display:block;color:var(--text-secondary);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.range-inputs{display:flex;align-items:center;gap:var(--space-2);width:100%}.range-input{flex:1;min-width:0;max-width:72px;padding:var(--space-2);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:#1e293b80;color:var(--text-primary);font-size:.875rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-sizing:border-box}.range-input:focus{outline:none;border-color:var(--primary-400);box-shadow:0 0 0 2px #0ea5e926}.range-inputs span{color:var(--text-muted);font-weight:500;flex-shrink:0}.clear-filters-btn{width:100%;padding:var(--space-2) var(--space-3);background:#ef444433;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--error-500);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);margin-bottom:var(--space-3)}.clear-filters-btn:hover{background:#ef44444d;border-color:#ef444480;transform:translateY(-1px)}.results-count{color:var(--text-muted);font-size:.75rem;text-align:center;padding:var(--space-2);background:#1e293b4d;border-radius:var(--radius-md);font-weight:500;margin-bottom:var(--space-2)}.collapse-filters-btn{width:100%;height:auto;padding:var(--space-2) var(--space-3);margin:0;background:#4755694d;border:1px solid var(--color-primary-400);border-radius:var(--radius-md);color:var(--color-primary-400);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:var(--space-2);position:relative}.collapse-filters-btn:before{content:"";position:absolute;left:var(--space-3);width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;transition:all .3s cubic-bezier(.4,0,.2,1)}.collapse-filters-btn:not([data-collapsed]):before{border-bottom:5px solid var(--color-primary-400)}.collapse-filters-btn[data-collapsed]:before{border-top:5px solid var(--color-primary-400)}.collapse-filters-btn:hover{background:#47556980;border-color:var(--color-primary-300);box-shadow:var(--glow-primary)}.collapse-filters-btn:hover:before{border-bottom-color:var(--color-primary-300);border-top-color:var(--color-primary-300)}.collapse-filters-btn:active{transform:translateY(1px)}.collapse-filters-btn-text{margin-left:var(--space-4)}.collapsible-filters{overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),margin .4s cubic-bezier(.4,0,.2,1)}.collapsible-filters.collapsed{max-height:0;opacity:0;margin:0}.collapsible-filters.expanded{max-height:1000px;opacity:1}.character-list-scroll{flex:1;overflow-y:auto;padding-right:var(--space-2)}.character-list-item{padding:var(--space-4);margin-bottom:var(--space-3);background:#1e293b80;border:1px solid var(--border-primary);border-radius:var(--radius-md);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeInUp .4s cubic-bezier(.4,0,.2,1) both}.character-list-item:hover{background:#1e293bb3;border-color:var(--border-accent);transform:translate(4px)}.character-list-item:active{transform:translate(2px);transition:transform .1s}.character-list-item.selected{background:#0ea5e926;border-color:var(--color-primary-400)}.character-list-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.character-list-item h3{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0}.character-list-type{color:var(--text-muted);font-size:.75rem;font-weight:500;padding:var(--space-1) var(--space-2);background:#4755694d;border-radius:var(--radius-md)}.character-list-types{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-1)}.character-list-type-badge{color:var(--text-secondary);font-size:.625rem;font-weight:600;padding:2px var(--space-2);background:linear-gradient(135deg,#0ea5e926,#3b82f633);border:1px solid rgba(14,165,233,.3);border-radius:var(--radius-sm);display:inline-block;white-space:nowrap}.character-list-stats{display:flex;gap:var(--space-3);font-size:.75rem;color:var(--text-secondary);font-weight:500}.character-list-stats span{display:flex;align-items:center;gap:var(--space-1)}.no-results{text-align:center;padding:var(--space-8);color:var(--text-muted)}.no-results p{margin-bottom:var(--space-4);font-size:1rem}.character-detail-panel{background:var(--bg-glass);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 4px 24px #0f172a4d,inset 0 1px #ffffff0d;min-height:740px;max-height:740px;width:100%;display:flex}.character-detail-empty{display:flex;margin:auto;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:600px;color:var(--text-muted);text-align:center}.empty-icon{font-size:4rem;margin-bottom:var(--space-4);opacity:.5}.character-detail-empty h2{color:var(--text-primary);font-size:1.5rem;margin-bottom:var(--space-2)}.character-detail-empty p{color:var(--text-muted);font-size:1rem}.character-detail-scroll{max-height:calc(100vh - 250px);overflow-y:auto;padding-right:var(--space-3);width:100%}.character-detail-header{margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:2px solid var(--border-primary)}.character-detail-header h1{color:var(--text-primary);font-size:2rem;font-weight:700;margin-bottom:var(--space-2);background:linear-gradient(135deg,var(--color-primary-300),var(--color-primary-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.025em}.character-detail-type{color:var(--text-secondary);font-size:1rem;font-weight:500;padding:var(--space-1) var(--space-3);background:#4755694d;border-radius:var(--radius-md);display:inline-block}.character-types-badges{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.type-badge{color:var(--text-primary);font-size:.875rem;font-weight:600;padding:var(--space-2) var(--space-3);background:linear-gradient(135deg,#0ea5e933,#3b82f64d);border:1px solid rgba(14,165,233,.4);border-radius:var(--radius-md);display:inline-block}.detail-section{margin-bottom:var(--space-8)}.detail-section h2{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-primary)}.stats-grid-detail{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-4)}@media (max-width: 1400px){.stats-grid-detail{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}.stat-card{background:#1e293b80;border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-3);display:flex;align-items:center;gap:var(--space-2);transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-card:active{transform:translateY(0);transition:transform .1s}.stat-icon{font-size:1.5rem;line-height:1}.stat-info{flex:1}.stat-label{color:var(--text-muted);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.stat-value{color:var(--text-primary);font-size:1.25rem;font-weight:700}.keywords-grid{display:flex;flex-wrap:wrap;gap:var(--space-2)}.keyword-badge{background:#0ea5e926;border:1px solid rgba(14,165,233,.3);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);display:flex;align-items:center;gap:var(--space-1);transition:all .3s cubic-bezier(.4,0,.2,1)}.keyword-badge:hover{background:#0ea5e940;border-color:#0ea5e980;transform:translateY(-1px)}.keyword-name{color:var(--primary-300);font-size:.8125rem;font-weight:600}.keyword-value{color:var(--primary-400);font-size:.8125rem;font-weight:700;background:#0ea5e933;padding:0 var(--space-1);border-radius:var(--radius-sm)}.immunities-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.immunity-badge{background:#22c55e26;border:1px solid rgba(34,197,94,.3);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);color:var(--success-500);font-size:.8125rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1)}.abilities-detail-list{display:flex;flex-direction:column;gap:var(--space-4)}.ability-detail-card{background:#1e293b80;border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-5);transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%}.ability-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-3);flex-wrap:wrap;gap:var(--space-2)}.ability-detail-header h3{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0}.ability-detail-stats{display:flex;gap:var(--space-2);flex-wrap:wrap}.ability-stat{padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.ability-stat.damage{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:var(--error-500)}.ability-stat.range{background:#0ea5e926;border:1px solid rgba(14,165,233,.3);color:var(--primary-400)}.ability-stat.max-uses{background:#f4d03f26;border:1px solid rgba(244,208,63,.3);color:#f4d03f}.ability-stat.will-attack{background:#a855f726;border:1px solid rgba(168,85,247,.3);color:#a855f7}.ability-stat.damage-type,.sub-ability-stat.damage-type,.damage-type-badge{padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);font-size:.6875rem;font-weight:600;text-transform:capitalize;letter-spacing:.05em;display:inline-flex;align-items:center;gap:.25rem}.damage-type-physical{background:#94a3b826;border:1px solid rgba(148,163,184,.3);color:#94a3b8}.damage-type-magical{background:#a855f726;border:1px solid rgba(168,85,247,.3);color:#a855f7}.damage-type-fire{background:#f9731626;border:1px solid rgba(249,115,22,.3);color:#f97316}.damage-type-lightning{background:#eab30826;border:1px solid rgba(234,179,8,.3);color:#eab308}.damage-type-ice{background:#38bdf826;border:1px solid rgba(56,189,248,.3);color:#38bdf8}.damage-type-water{background:#06b6d426;border:1px solid rgba(6,182,212,.3);color:#06b6d4}.damage-type-poison{background:#84cc1626;border:1px solid rgba(132,204,22,.3);color:#84cc16}.damage-type-piercing{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#ef4444}.damage-type-enchanted{background:#d946ef26;border:1px solid rgba(217,70,239,.3);color:#d946ef}.damage-type-will{background:#8b5cf626;border:1px solid rgba(139,92,246,.3);color:#8b5cf6}.ability-description{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin-bottom:var(--space-3)}.ability-keywords{margin-top:var(--space-2);margin-bottom:var(--space-3)}.ability-keyword-badge{background:#0ea5e91a;border:1px solid rgba(14,165,233,.25);padding:.125rem .375rem}.ability-keyword-badge .keyword-name{font-size:.6875rem;font-weight:500}.ability-keyword-badge:hover{background:#0ea5e926;border-color:#0ea5e959}.ability-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-3);margin-bottom:var(--space-3);padding:var(--space-3);background:#0f172a80;border-radius:var(--radius-md);border:1px solid var(--border-primary)}.ability-meta-item{color:var(--text-secondary);font-size:.8125rem}.ability-meta-item strong{color:var(--text-primary);font-weight:600}.ability-effects,.ability-targets{margin-top:var(--space-3);padding:var(--space-3);background:#0f172a80;border-radius:var(--radius-md);border:1px solid var(--border-primary)}.ability-effects strong,.ability-targets strong{color:var(--text-primary);font-size:.8125rem;font-weight:600;display:block;margin-bottom:var(--space-2)}.ability-effects ul,.ability-targets ul{list-style:none;padding:0;margin:0}.ability-effects li,.ability-targets li{color:var(--text-secondary);font-size:.8125rem;padding:var(--space-1) 0;border-bottom:1px solid rgba(203,213,225,.1)}.ability-effects li:last-child,.ability-targets li:last-child{border-bottom:none}.sub-abilities-detail{margin-top:var(--space-4);padding-top:var(--space-4);border-top:2px solid var(--border-primary)}.sub-abilities-detail h4{color:var(--text-primary);font-size:1rem;font-weight:600;margin-bottom:var(--space-3)}.sub-ability-detail-card{background:#0f172a80;border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-2)}.sub-ability-detail-card:last-child{margin-bottom:0}.sub-ability-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2);flex-wrap:wrap;gap:var(--space-2)}.sub-ability-detail-header strong{color:var(--text-primary);font-size:.9375rem;font-weight:600}.sub-ability-stats{display:flex;gap:var(--space-2);font-size:.6875rem;font-weight:600}.sub-ability-stats span{padding:2px var(--space-1);background:#4755694d;border-radius:var(--radius-sm);color:var(--text-secondary)}.sub-ability-stat{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.sub-ability-stat.damage{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#ef4444}.sub-ability-stat.range{background:#0ea5e926;border:1px solid rgba(14,165,233,.3);color:#0ea5e9}.will-badge{background:#a855f733!important;color:#a855f7!important}.sub-ability-max-uses{background:#f4d03f33!important;color:#f4d03f!important}.sub-ability-description{color:var(--text-secondary);font-size:.8125rem;line-height:1.5;margin-bottom:var(--space-2)}.sub-ability-effects{margin-top:var(--space-2);padding:var(--space-2);background:#0f172a4d;border-radius:var(--radius-sm);border:1px solid rgba(203,213,225,.1)}.sub-ability-effects strong{color:var(--text-primary);font-size:.6875rem;font-weight:600;display:block;margin-bottom:var(--space-1)}.sub-ability-effects ul{list-style:none;padding:0;margin:0}.sub-ability-effects li{color:var(--text-secondary);font-size:.6875rem;padding:2px 0}@media (max-width: 1400px){.codex-container{max-width:1600px}}@media (max-width: 1200px){.codex-content{grid-template-columns:380px 1fr}.codex-container{max-width:1400px}}@media (max-width: 1024px){.codex-content{grid-template-columns:350px 1fr}}@media (max-width: 968px){.codex-content{grid-template-columns:1fr;position:relative}.codex-list-view{display:block}.codex-list-view.mobile-hidden,.codex-detail-view{display:none}.codex-detail-view.mobile-visible{display:block}.character-list-panel{position:static;max-height:none;margin-bottom:0}.character-list-scroll{max-height:none}.character-detail-panel{min-height:auto}.character-detail-empty{min-height:200px}.character-detail-scroll{max-height:none}.mobile-back-button{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);margin-bottom:var(--space-4);background:linear-gradient(135deg,var(--primary-500),var(--primary-600));color:#fff;border:1px solid rgba(14,165,233,.3);border-radius:var(--radius-xl);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 14px #0ea5e940,inset 0 1px #fff3}.mobile-back-button:hover{background:linear-gradient(135deg,var(--primary-400),var(--primary-500));transform:translateY(-2px);box-shadow:0 6px 20px #0ea5e966,inset 0 1px #ffffff4d}.stats-grid-detail{display:flex;flex-direction:column;gap:var(--space-2)}.stat-card{flex-direction:row;padding:var(--space-2) var(--space-3);gap:var(--space-2)}.stat-icon{font-size:1rem}.stat-info{display:flex;align-items:center;gap:var(--space-2)}.stat-label{font-size:.625rem;margin-bottom:0}.stat-value{font-size:.875rem}}@media (min-width: 969px){.mobile-back-button{display:none}.codex-list-view,.codex-detail-view{display:block}}@media (max-width: 768px){.codex-container{padding:var(--space-4)}.codex-header{padding:var(--space-6)}.codex-header h1,.character-detail-header h1{font-size:2rem}.stats-grid-detail{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.ability-detail-header{flex-direction:column;align-items:flex-start}.filter-row,.advanced-filters .filter-row{grid-template-columns:1fr}.character-list-panel{padding:var(--space-4)}}@media (max-width: 480px){.codex-header{padding:var(--space-5)}.codex-header h1{font-size:1.75rem}.character-list-panel,.character-detail-panel{padding:var(--space-5)}.character-detail-header h1{font-size:1.75rem}.stats-grid-detail,.ability-meta{grid-template-columns:1fr}.advanced-filters{padding:var(--space-3)}.range-input{font-size:.8125rem;padding:var(--space-1) var(--space-2)}}.stats-page-container{padding:var(--space-8);max-width:1400px;margin:0 auto;min-height:100vh;animation:fadeInUp .8s cubic-bezier(.4,0,.2,1) both}.stats-header{margin-bottom:var(--space-8);padding:var(--space-8);background:var(--bg-glass);border-radius:var(--radius-2xl);box-shadow:0 8px 32px #0f172a66,inset 0 1px #ffffff1a;border:1px solid var(--border-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);text-align:center}.stats-header h1{color:var(--text-primary);font-size:2.5rem;font-weight:600;background:linear-gradient(135deg,var(--primary-300),var(--primary-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.025em;margin-bottom:var(--space-2)}.stats-subtitle{color:var(--text-muted);font-size:1rem;margin:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-6);margin-bottom:var(--space-8)}.stats-section{margin-bottom:var(--space-12)}.stats-section h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:var(--space-8);letter-spacing:-.025em}.stat-card-container{background:var(--bg-glass);border:1px solid var(--border-primary);border-radius:var(--radius-2xl);padding:var(--space-6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 4px 24px #0f172a4d,inset 0 1px #ffffff0d;transition:all .4s cubic-bezier(.4,0,.2,1)}.stat-card-container:hover{border-color:#0ea5e94d;transform:translateY(-4px);box-shadow:0 8px 32px #0ea5e933,0 4px 24px #0f172a66,inset 0 1px #ffffff1a}.stat-card-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.stat-card-icon{font-size:2rem;line-height:1}.stat-card-title{color:var(--text-secondary);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.stat-card-value{color:var(--text-primary);font-size:2.5rem;font-weight:700;line-height:1;margin-bottom:var(--space-2)}.stat-card-subtitle{color:var(--text-muted);font-size:.875rem;font-weight:500}.character-play-card{background:#1e293b80;border:1px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--space-4);transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.character-play-card:hover{background:#1e293bb3;border-color:#0ea5e94d;transform:translateY(-2px);box-shadow:0 4px 16px #0ea5e926}.character-play-card.most-played{border-color:var(--primary-400);background:#0ea5e926;box-shadow:0 4px 16px #0ea5e933,inset 0 1px #ffffff1a}.character-play-name{color:var(--text-primary);font-size:1rem;font-weight:600;margin-bottom:var(--space-2)}.character-play-stats{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.character-play-count{color:var(--text-secondary);font-size:.875rem;font-weight:500}.character-play-percentage{color:var(--primary-400);font-size:.875rem;font-weight:600}.stats-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-8)}.stats-loading-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);padding:var(--space-12);background:var(--bg-glass);border-radius:var(--radius-2xl);box-shadow:0 8px 32px #0f172a66,inset 0 1px #ffffff1a;border:1px solid var(--border-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.stats-loading-content .loading-spinner{width:4rem;height:4rem;border-width:4px;border-color:var(--border-primary);border-top-color:var(--color-primary-400);margin:0}.stats-loading-content p{color:var(--text-primary);font-size:1.125rem;font-weight:500;margin:0;animation:pulse 2s ease-in-out infinite}.stats-error{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-8)}.stats-error-content{text-align:center;padding:var(--space-12);background:var(--bg-glass);border-radius:var(--radius-2xl);box-shadow:0 8px 32px #0f172a66,inset 0 1px #ffffff1a;border:1px solid var(--border-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.stats-error-icon{font-size:4rem;margin-bottom:var(--space-4);color:var(--error-500)}.stats-error h2{color:var(--text-primary);font-size:1.5rem;margin-bottom:var(--space-2)}.stats-error p{color:var(--text-muted);margin-bottom:var(--space-4)}.stats-empty{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-8)}.stats-empty-content{text-align:center;padding:var(--space-12);background:var(--bg-glass);border-radius:var(--radius-2xl);box-shadow:0 8px 32px #0f172a66,inset 0 1px #ffffff1a;border:1px solid var(--border-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.stats-empty h2{color:var(--text-primary);font-size:1.5rem;margin-bottom:var(--space-2)}.stats-empty p{color:var(--text-muted);font-size:1rem}.stats-footer{text-align:center;padding-top:var(--space-8);color:var(--text-muted);font-size:.875rem}@media (max-width: 768px){.stats-page-container{padding:var(--space-4)}.stats-header{padding:var(--space-6)}.stats-header h1{font-size:2rem}.stats-grid{grid-template-columns:1fr;gap:var(--space-4)}.stat-card-value{font-size:2rem}}@media (max-width: 480px){.stats-header{padding:var(--space-5)}.stats-header h1{font-size:1.75rem}.stat-card-container{padding:var(--space-4)}.stat-card-value{font-size:1.75rem}}@media (min-width: 640px){body{font-size:16px}.container{padding:0 var(--space-6)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){body{font-size:16px}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}}@media (max-width: 768px){button,a,input[type=button],input[type=submit],.btn,.nav-link,.card-action{min-height:44px;min-width:44px}.btn{padding:var(--space-3) var(--space-5)}h1,.page-title{font-size:var(--text-3xl)}h2,.section-title{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}.container,.page-container{padding:0 var(--space-4)}.page-header{flex-direction:column;gap:var(--space-4);padding:var(--space-6);text-align:center}.page-actions{width:100%;flex-direction:column}.page-actions .btn{width:100%}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}.two-column-layout,.two-column-layout.equal,.two-column-layout.sidebar-left,.two-column-layout.sidebar-right,.three-column-layout,.three-column-layout.equal{grid-template-columns:1fr;gap:var(--space-4)}.content-section{padding:var(--space-4)}.modal-content{width:95%;max-height:95vh}.modal-header,.modal-body,.modal-footer,.card{padding:var(--space-4)}.form-group{margin-bottom:var(--space-4)}input,select,textarea{font-size:16px;min-height:44px}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.gap-8{gap:var(--space-4)}.gap-6{gap:var(--space-3)}}@media (max-width: 480px){h1,.page-title{font-size:var(--text-2xl)}h2,.section-title{font-size:var(--text-lg)}.container,.page-container{padding:0 var(--space-3)}.page-header{padding:var(--space-4)}.content-section{padding:var(--space-3)}.btn{width:100%;justify-content:center}.btn-group{flex-direction:column;width:100%}.btn-group .btn{width:100%}.grid-auto-fit,.grid-auto-fit-sm,.grid-auto-fit-lg{grid-template-columns:1fr}.modal-content{width:100%;max-height:100vh;border-radius:var(--radius-xl)}.card,.content-section,.page-header{border-radius:var(--radius-xl)}.flex-row{flex-direction:column}.mobile-full-width{width:100%}}@media (max-height: 768px) and (orientation: landscape){.page-container{padding:var(--space-4)}.page-header{padding:var(--space-4);margin-bottom:var(--space-4)}.content-section{padding:var(--space-4)}.modal-content{max-height:90vh}.modal-body{max-height:60vh;overflow-y:auto}}@media (min-width: 1280px){.container{max-width:1400px}.page-title{font-size:var(--text-4xl)}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-auto-fit-lg{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}}@media (min-width: 1536px){.container{max-width:1536px}.grid-cols-4{grid-template-columns:repeat(5,1fr)}}@media print{.navigation,.nav-user,.page-actions,.btn,button{display:none!important}body{background:#fff;color:#000}.page-container,.content-section{background:#fff;border:none;box-shadow:none;padding:0}.page-header{page-break-after:avoid}.content-section{page-break-inside:avoid}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.btn:hover,.card:hover,.nav-link:hover{transform:none!important}}@media (prefers-contrast: high){.card,.content-section,.page-header,.modal-content{border-width:2px;border-color:var(--text-primary)}body{color:var(--color-neutral-50)}*:focus-visible{outline-width:3px;outline-offset:4px}}@media (hover: none) and (pointer: coarse){.btn:hover,.card:hover,.nav-link:hover{transform:none}button,a,input,select,textarea{min-height:44px;min-width:44px}.btn:active{transform:scale(.98);opacity:.9}.card:active{transform:scale(.99)}.navigation,.modal-overlay,.page-header,.content-section{backdrop-filter:none;-webkit-backdrop-filter:none}.navigation{background:#18181bf2}.modal-overlay{background:#0a0a0fe6}.page-header,.content-section{background:#18181be6}}@media (max-width: 768px){.hide-mobile{display:none!important}}@media (min-width: 769px) and (max-width: 1024px){.hide-tablet{display:none!important}}@media (min-width: 1025px){.hide-desktop{display:none!important}}.show-mobile{display:none!important}@media (max-width: 768px){.show-mobile{display:block!important}.show-mobile.flex{display:flex!important}.show-mobile.grid{display:grid!important}}.show-tablet{display:none!important}@media (min-width: 769px) and (max-width: 1024px){.show-tablet{display:block!important}.show-tablet.flex{display:flex!important}.show-tablet.grid{display:grid!important}}.show-desktop{display:none!important}@media (min-width: 1025px){.show-desktop{display:block!important}.show-desktop.flex{display:flex!important}.show-desktop.grid{display:grid!important}}
