:root{--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:72px;--space-4xl:80px;--space-5xl:96px;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--radius-2xl:36px;--radius-full:9999px;--font-heading:"Nunito",-apple-system,BlinkMacSystemFont,sans-serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:800;--text-xs:13px;--text-sm:14px;--text-base:16px;--text-md:17px;--text-lg:18px;--text-xl:20px;--text-2xl:24px;--text-3xl:28px;--text-4xl:32px;--text-5xl:40px;--text-6xl:52px;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.4s ease;--transition-bounce:.4s cubic-bezier(.34,1.56,.64,1);--transition-smooth:.3s cubic-bezier(.32,.72,0,1);--touch-min:44px;--touch-comfortable:48px;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:1000;--z-modal:1001;--z-toast:1002;--z-tooltip:1003}:root[data-theme=light]{--color-bg:#fffbf5;--color-bg-warm:#fff7ed;--color-surface:#fff;--color-surface-elevated:#f5f5f5;--color-surface-hover:#f5f5f7;--color-text:#1f2937;--color-text-secondary:#4b5563;--color-text-muted:#6b7280;--color-text-inverse:#fff;--color-primary:#f4a43d;--color-primary-hover:#e5952e;--color-primary-rgb:244,164,61;--color-primary-light:rgba(244,164,61,.15);--color-secondary:#4ecdc4;--color-secondary-hover:#3dbdb5;--color-secondary-rgb:78,205,196;--color-secondary-light:rgba(78,205,196,.15);--color-accent:#ff6b6b;--color-accent-dark:#ff5252;--color-accent-rgb:255,107,107;--color-purple:#a78bfa;--color-purple-rgb:167,139,250;--color-orange:#fb923c;--color-pink:#f472b6;--color-success:#51cf66;--color-success-rgb:81,207,102;--color-error:#ff6b6b;--color-error-rgb:255,107,107;--color-warning:#ffe66d;--color-warning-rgb:255,230,109;--color-info:#4ecdc4;--color-border:rgba(0,0,0,.12);--color-border-strong:rgba(0,0,0,.22);--color-border-hover:rgba(0,0,0,.3);--shadow-xs:0 1px 2px rgba(0,0,0,.04);--shadow-sm:0 2px 4px rgba(0,0,0,.08);--shadow-md:0 4px 12px rgba(0,0,0,.14);--shadow-lg:0 8px 24px rgba(0,0,0,.16);--shadow-xl:0 16px 48px rgba(0,0,0,.15);--glow-primary:0 0 30px hsla(0,100%,71%,.3);--glow-secondary:0 0 30px rgba(78,205,196,.3);--glow-accent:0 0 30px rgba(255,230,109,.3)}:root,:root[data-theme=dark]{--color-bg:#1a1a2e;--color-bg-warm:#16162a;--color-bg-dark:#12121f;--color-bg-darker:#0d0d18;--color-surface:#2d2d44;--color-surface-elevated:#3a3a55;--color-surface-hover:#434363;--color-surface-rgb:45,45,68;--color-text:#fff;--color-text-secondary:#c4c4d4;--color-text-muted:#8888a4;--color-text-inverse:#1a1a2e;--color-text-rgb:255,255,255;--color-primary:#ffa94d;--color-primary-hover:#ffb870;--color-primary-rgb:255,169,77;--color-primary-light:rgba(255,169,77,.2);--color-secondary:#5fddd5;--color-secondary-hover:#7aeee7;--color-secondary-rgb:95,221,213;--color-secondary-light:rgba(95,221,213,.2);--color-accent:#ff7b7b;--color-accent-dark:#f99;--color-accent-rgb:255,123,123;--color-purple:#b89eff;--color-purple-rgb:184,158,255;--color-orange:#ffa94d;--color-pink:#ff8cc8;--color-success:#6ee67a;--color-success-rgb:110,230,122;--color-error:#ff7b7b;--color-error-rgb:255,123,123;--color-warning:#ffe77d;--color-warning-rgb:255,231,125;--color-info:#5fddd5;--color-border:hsla(0,0%,100%,.1);--color-border-strong:hsla(0,0%,100%,.2);--color-border-hover:hsla(0,0%,100%,.3);--shadow-xs:0 1px 2px rgba(0,0,0,.2);--shadow-sm:0 2px 4px rgba(0,0,0,.3);--shadow-md:0 4px 12px rgba(0,0,0,.4);--shadow-lg:0 8px 24px rgba(0,0,0,.5);--shadow-xl:0 16px 48px rgba(0,0,0,.6);--glow-primary:0 0 30px hsla(0,100%,74%,.4);--glow-secondary:0 0 30px rgba(95,221,213,.4);--glow-accent:0 0 30px rgba(255,231,125,.4);--glow-purple:0 0 30px rgba(184,158,255,.4)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:16px;line-height:1.6;min-height:100vh;text-rendering:optimizeLegibility;transition:background-color .3s ease,color .3s ease}button,input,select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-size:16px!important}[role=button],[tabindex]:not([tabindex="-1"]),a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer}@supports (-webkit-touch-callout:none){input,select,textarea{-webkit-appearance:none;border-radius:0}body{padding-bottom:env(safe-area-inset-bottom)}}@media(max-width:600px){body{overscroll-behavior-y:contain;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}h1,h2,h3,h4,h5,h6{color:var(--color-text);font-family:var(--font-heading);font-weight:var(--font-weight-black);line-height:1.2}h1{font-size:var(--text-6xl)}h2{font-size:var(--text-5xl)}h3{font-size:var(--text-4xl)}h4{font-size:var(--text-3xl)}h5{font-size:var(--text-2xl)}h6{font-size:var(--text-xl)}p{margin-bottom:var(--space-md)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover)}.btn{align-items:center;border:3px solid transparent;border-radius:var(--radius-full);cursor:pointer;display:inline-flex;font-family:var(--font-heading);font-size:var(--text-md);font-weight:var(--font-weight-black);gap:var(--space-sm);justify-content:center;letter-spacing:.02em;min-height:var(--touch-comfortable);padding:var(--space-md) var(--space-xl);text-decoration:none;text-transform:uppercase;transition:all var(--transition-bounce);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.btn:hover{transform:scale(1.05)}.btn:active{transform:scale(.98)}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 6px 20px rgba(var(--color-primary-rgb),.35);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:0 8px 30px rgba(var(--color-primary-rgb),.45)}.btn-secondary{background:var(--color-secondary);border-color:var(--color-secondary);box-shadow:0 6px 20px rgba(var(--color-secondary-rgb),.35);color:#fff}.btn-secondary:hover:not(:disabled){background:var(--color-secondary-hover);box-shadow:0 8px 30px rgba(var(--color-secondary-rgb),.45)}.btn-outline{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.btn-outline:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.btn-gradient{background:linear-gradient(135deg,var(--color-primary),var(--color-orange));border:none;box-shadow:0 6px 25px rgba(var(--color-primary-rgb),.4);color:#fff}.btn-ghost{background:transparent;border-color:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.btn-sm{font-size:var(--text-sm);min-height:var(--touch-min);padding:var(--space-sm) var(--space-md)}.btn-lg{font-size:var(--text-lg);min-height:56px;padding:var(--space-lg) var(--space-2xl)}.btn-icon{border-radius:var(--radius-md);padding:0;width:var(--touch-comfortable)}.card{background:var(--color-surface);border:3px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--transition-bounce)}.card:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-lg);transform:translateY(-6px)}.card-body{padding:var(--space-lg)}.card-title{font-family:var(--font-heading);font-size:var(--text-2xl);font-weight:var(--font-weight-black);margin-bottom:var(--space-sm)}.card-text{color:var(--color-text-secondary);margin-bottom:var(--space-md)}.card-gradient{background:var(--color-surface);background-clip:padding-box;border:3px solid transparent;border-radius:var(--radius-xl);padding:var(--space-lg);position:relative}.card-gradient:before{background:linear-gradient(135deg,var(--color-primary),var(--color-accent),var(--color-secondary));border-radius:calc(var(--radius-xl) + 3px);content:"";inset:-3px;opacity:.5;position:absolute;transition:opacity var(--transition-normal);z-index:-1}.card-gradient:hover:before{opacity:1}.badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-family:var(--font-heading);font-size:var(--text-xs);font-weight:var(--font-weight-black);gap:var(--space-xs);letter-spacing:.05em;padding:var(--space-xs) var(--space-md);text-transform:uppercase}.badge-live{animation:badge-pulse 2s ease-in-out infinite;background:var(--color-success);color:#fff}@keyframes badge-pulse{0%,to{box-shadow:0 0 rgba(var(--color-secondary-rgb),.5)}50%{box-shadow:0 0 0 8px rgba(var(--color-secondary-rgb),0)}}.badge-ended{background:var(--color-text-muted);color:#fff}.badge-draft{background:var(--color-warning);color:var(--color-text-inverse)}.badge-players{background:var(--color-surface-elevated);border:2px solid var(--color-border);color:var(--color-text)}.form-group{margin-bottom:var(--space-lg)}.form-label{color:var(--color-text);display:block;font-family:var(--font-heading);font-weight:var(--font-weight-bold);margin-bottom:var(--space-sm)}.form-input,.form-select,.form-textarea{background:var(--color-surface);border:3px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);font-family:var(--font-body);font-size:16px;min-height:var(--touch-comfortable);padding:var(--space-md);transition:all var(--transition-fast);width:100%}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:var(--color-border-strong)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-light);outline:none}.form-input::-moz-placeholder,.form-textarea::-moz-placeholder{color:var(--color-text-muted)}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-muted)}.form-textarea{min-height:120px;resize:vertical}.checkbox-wrapper{cursor:pointer;font-weight:var(--font-weight-semibold);gap:var(--space-sm)}.checkbox,.checkbox-wrapper{align-items:center;display:flex}.checkbox{background:var(--color-surface);border:3px solid var(--color-border-strong);border-radius:var(--radius-md);flex-shrink:0;height:28px;justify-content:center;transition:all var(--transition-bounce);width:28px}.checkbox.checked{background:var(--color-secondary);border-color:var(--color-secondary);transform:scale(1.1)}.checkbox.checked:after{color:#fff;content:"✓";font-size:16px;font-weight:700}.toggle-wrapper{align-items:center;display:flex;font-weight:var(--font-weight-semibold);gap:var(--space-md)}.toggle{background:var(--color-border-strong);border-radius:var(--radius-full);cursor:pointer;height:34px;position:relative;transition:all var(--transition-fast);width:60px}.toggle:after{background:#fff;border-radius:50%;box-shadow:var(--shadow-sm);content:"";height:26px;left:4px;position:absolute;top:4px;transition:all var(--transition-bounce);width:26px}.toggle.active{background:var(--color-secondary)}.toggle.active:after{left:30px}.mb-xs{margin-bottom:var(--space-xs)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.mb-2xl{margin-bottom:var(--space-2xl)}.mb-3xl{margin-bottom:var(--space-3xl)}.mt-xs{margin-top:var(--space-xs)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mt-2xl{margin-top:var(--space-2xl)}.mt-3xl{margin-top:var(--space-3xl)}.p-xs{padding:var(--space-xs)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}.p-2xl{padding:var(--space-2xl)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-primary{color:var(--color-primary)}.font-heading{font-family:var(--font-heading)}.font-bold{font-weight:var(--font-weight-bold)}.font-black{font-weight:var(--font-weight-black)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.container{margin:0 auto;max-width:1200px;padding:0 var(--space-lg);width:100%}@media(max-width:768px){.container{padding:0 var(--space-md)}}:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}@keyframes bubble-rise{0%{opacity:0;transform:translateY(0) scale(1)}10%{opacity:.6}90%{opacity:.6}to{opacity:0;transform:translateY(-200px) scale(.8)}}@keyframes particle-rise{0%{opacity:0;transform:translateY(0) translate(0) rotate(0)}10%{opacity:var(--particle-opacity,.6)}90%{opacity:var(--particle-opacity,.6)}to{opacity:0;transform:translateY(-100vh) translate(var(--particle-drift,30px)) rotate(var(--particle-rotation,1turn))}}.bubbles-bg{inset:0;overflow:hidden;pointer-events:none;position:fixed;z-index:0}.bubble{animation:bubble-rise linear infinite;border-radius:50%;bottom:-20px;opacity:.6;position:absolute}@keyframes float-drift{0%,to{opacity:.5;transform:translate(0) scale(1)}25%{opacity:.8;transform:translate(10px,-15px) scale(1.2)}50%{opacity:.6;transform:translate(-5px,-25px) scale(1)}75%{opacity:.7;transform:translate(15px,-10px) scale(1.1)}}.particle{animation:float-drift ease-in-out infinite;border-radius:50%;height:4px;position:absolute;width:4px}@keyframes blob-morph{0%,to{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}25%{border-radius:30% 60% 70% 40%/50% 60% 30%}50%{border-radius:50% 60% 30%/30% 40% 70% 60%}75%{border-radius:60% 30% 60% 50%/60% 70% 40% 30%}}@keyframes sparkle-twinkle{0%,to{opacity:0;transform:scale(.5) rotate(0)}50%{opacity:1;transform:scale(1) rotate(180deg)}}.sparkle-container{position:relative}.sparkle{animation:sparkle-twinkle ease-in-out infinite;height:6px;position:absolute;width:6px}.sparkle:after,.sparkle:before{background:currentColor;content:"";position:absolute}.sparkle:before{height:2px;left:0;top:50%;transform:translateY(-50%);width:100%}.sparkle:after{height:100%;left:50%;top:0;transform:translate(-50%);width:2px}@keyframes gradient-shift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.gradient-wave-border{animation:gradient-shift 4s ease infinite;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary),var(--color-accent),var(--color-purple),var(--color-primary));background-size:300% 100%;border-radius:var(--radius-lg);padding:3px}.gradient-wave-border>*{background:var(--color-surface);border-radius:calc(var(--radius-lg) - 3px)}@keyframes glow-pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.5;transform:scale(1.02)}}.glow-active:before{animation:glow-pulse 2s ease-in-out infinite;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary),var(--color-accent));border-radius:inherit;content:"";filter:blur(8px);inset:-4px;opacity:.4;position:absolute;z-index:-1}@keyframes orbit{0%{transform:rotate(0) translate(55px) rotate(0)}to{transform:rotate(1turn) translate(55px) rotate(-1turn)}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.orbit-container{height:120px;position:relative;width:120px}.orbit-ring{animation:spin-slow 8s linear infinite;border:2px dashed var(--color-border-strong);inset:0}.orbit-particle,.orbit-ring{border-radius:50%;position:absolute}.orbit-particle{animation:orbit 3s linear infinite;height:10px;width:10px}@keyframes pulse-ring{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(2)}}@keyframes typing-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}.typing-dots{background:var(--color-surface-elevated);border-radius:var(--radius-full);display:flex;gap:var(--space-xs);padding:var(--space-md) var(--space-lg)}.typing-dot{animation:typing-bounce 1.4s ease-in-out infinite;background:var(--color-primary);border-radius:50%;height:10px;width:10px}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.shimmer{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--color-surface-elevated) 25%,var(--color-surface) 50%,var(--color-surface-elevated) 75%);background-size:200% 100%;border-radius:var(--radius-md)}@keyframes progress-slide{0%{transform:translate(-100%)}to{transform:translate(400%)}}.progress-bar{background:var(--color-surface-elevated);border-radius:var(--radius-full);height:6px;overflow:hidden;width:100%}.progress-bar-fill{animation:progress-slide 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));border-radius:var(--radius-full);height:100%;width:30%}@keyframes wand-wave{0%,to{transform:rotate(-10deg)}50%{transform:rotate(10deg)}}@keyframes wand-trail{0%{opacity:0;transform:scale(.5) translate(-10px)}50%{opacity:1;transform:scale(1) translate(0)}to{opacity:0;transform:scale(.5) translate(10px)}}@keyframes success-pop{0%{transform:translate(-50%,-50%) scale(0)}50%{transform:translate(-50%,-50%) scale(1.2)}to{transform:translate(-50%,-50%) scale(1)}}@keyframes success-explode{0%{left:50%;opacity:1;top:50%;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(0)}to{left:50%;opacity:0;top:50%;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-50px)}}@keyframes confetti-fall{0%{opacity:1;top:-10px;transform:rotate(0) translate(0)}to{opacity:.5;top:100%;transform:rotate(2turn) translate(30px)}}.confetti{animation:confetti-fall linear infinite;height:8px;position:absolute;width:8px}.flip-card{cursor:pointer;perspective:1000px}.flip-card-inner{height:100%;position:relative;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.34,1.56,.64,1);width:100%}.flip-card.flipped .flip-card-inner{transform:rotateY(180deg)}.flip-card-back,.flip-card-front{backface-visibility:hidden;border-radius:var(--radius-lg);height:100%;position:absolute;width:100%}.flip-card-back{transform:rotateY(180deg)}@keyframes score-pop{0%{opacity:0;transform:scale(1.5)}50%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes wave-bounce{0%,to{color:var(--color-text);transform:translateY(0)}50%{color:var(--color-primary);transform:translateY(-8px)}}.wave-text{display:flex}.wave-letter{animation:wave-bounce 1.5s ease-in-out infinite;display:inline-block}@keyframes heartbeat{0%,to{transform:scale(1)}14%{transform:scale(1.3)}28%{transform:scale(1)}42%{transform:scale(1.3)}56%{transform:scale(1)}}.modal-backdrop{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#0009;inset:0;opacity:0;position:fixed;transition:all .3s ease;visibility:hidden;z-index:var(--z-modal-backdrop)}.modal-backdrop.open{opacity:1;visibility:visible}.modal-scale{opacity:0;transform:scale(.9);transition:all .3s cubic-bezier(.34,1.56,.64,1)}.modal-backdrop.open .modal-scale{opacity:1;transform:scale(1)}.modal-slide-up{transform:translateY(100%);transition:transform .4s cubic-bezier(.32,.72,0,1)}.modal-backdrop.open .modal-slide-up{transform:translateY(0)}.modal-bounce{opacity:0;transform:scale(.5) translateY(-50px);transition:all .5s cubic-bezier(.34,1.56,.64,1)}.modal-backdrop.open .modal-bounce{opacity:1;transform:scale(1) translateY(0)}.drawer-backdrop{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);background:#00000080;inset:0;opacity:0;position:fixed;transition:all .3s ease;visibility:hidden;z-index:var(--z-modal-backdrop)}.drawer-backdrop.open{opacity:1;visibility:visible}.drawer-right{transform:translate(100%);transition:transform .4s cubic-bezier(.32,.72,0,1)}.drawer-right.open{transform:translate(0)}.drawer-bottom{transform:translateY(100%);transition:transform .4s cubic-bezier(.32,.72,0,1)}.drawer-bottom.open{transform:translateY(0)}@keyframes page-fade-in{0%{opacity:0}to{opacity:1}}.page-fade-enter{animation:page-fade-in .3s ease}.page-fade-exit{opacity:0;transition:opacity .3s ease}@keyframes page-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.page-slide-enter{animation:page-slide-in .4s cubic-bezier(.32,.72,0,1)}.page-slide-exit{transform:translate(-100%);transition:transform .4s cubic-bezier(.32,.72,0,1)}@keyframes page-scale-in{0%{opacity:0;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.page-scale-enter{animation:page-scale-in .3s cubic-bezier(.34,1.56,.64,1)}.page-scale-exit{opacity:0;transform:scale(.95);transition:all .3s cubic-bezier(.34,1.56,.64,1)}@keyframes page-slide-up-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}.page-slide-up-enter{animation:page-slide-up-in .4s cubic-bezier(.32,.72,0,1)}.page-slide-up-exit{opacity:0;transform:translateY(-20px);transition:all .4s cubic-bezier(.32,.72,0,1)}@keyframes toast-in{0%{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{to{opacity:0;transform:translateY(20px)}}.toast{animation:toast-in .4s cubic-bezier(.34,1.56,.64,1)}.toast.exiting{animation:toast-out .3s ease forwards}@keyframes stagger-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stagger-item{animation:stagger-in .4s ease-out forwards;opacity:0}.stagger-item:first-child{animation-delay:0s}.stagger-item:nth-child(2){animation-delay:.1s}.stagger-item:nth-child(3){animation-delay:.2s}.stagger-item:nth-child(4){animation-delay:.3s}.stagger-item:nth-child(5){animation-delay:.4s}.stagger-item:nth-child(n+6){animation-delay:.45s}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.fade-in{animation:fade-in .3s ease}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:fade-in-up .4s ease}.btn-shine{overflow:hidden;position:relative}.btn-shine:before{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.btn-shine:hover:before{left:100%}.card-lift{transition:all var(--transition-normal)}.card-lift:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)}@media(max-width:768px){.btn{min-height:52px;padding:var(--space-md) var(--space-lg)}.bubble,.confetti,.particle{animation-duration:calc(var(--animation-duration, 5s)*.8)}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.animate-bounce{animation:bounce 1s infinite}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-5%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:translateY(0)}}:root{--topic-cream:#f7f4ef;--topic-cream-dark:#e8e4de;--topic-charcoal:#2a2a2a;--topic-body:#3a3a3a;--topic-quiet:#8a8680;--topic-brown:#3a2e20;--topic-ref:#6b5b45;--topic-gold:#c8a96e;--topic-gold-dim:#a08050;--topic-gold-line:hsla(39,45%,61%,.45);--topic-gold-bg:hsla(39,45%,61%,.08)}.topic-browse{margin:0 auto;max-width:52rem;width:100%}.topic-browse-search{background:#fff;border:1px solid #e0dcd4;border-radius:8px;font-size:1rem;margin-bottom:1rem;padding:.65rem .85rem;width:100%}.topic-browse-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.topic-browse-chip{background:#fff;border:1px solid #e0dcd4;border-radius:999px;color:#3d4a5c;cursor:pointer;font-size:.75rem;padding:.35rem .65rem}.topic-browse-chip.is-active,.topic-browse-chip:hover{background:var(--topic-gold-bg);border-color:var(--topic-gold)}.topic-browse-grid{display:grid;gap:.75rem;grid-template-columns:1fr}@media(min-width:520px){.topic-browse-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:900px){.topic-browse-grid{grid-template-columns:repeat(3,1fr)}}.topic-card{background:#fff;border:1px solid #e8e6e1;border-radius:10px;color:inherit;display:block;padding:1rem 1.1rem;text-decoration:none;transition:border-color .15s,box-shadow .15s}.topic-card:hover:not(.topic-card--muted){border-color:var(--topic-gold);box-shadow:0 4px 14px #0000000f}.topic-card--muted{cursor:default;opacity:.72}.topic-card-num{color:var(--topic-quiet);font-size:.65rem;letter-spacing:.12em}.topic-card-num,.topic-card-title{font-weight:700;margin-bottom:.35rem}.topic-card-title{color:var(--topic-brown);font-family:Cormorant Garamond,Georgia,serif;font-size:1.2rem;line-height:1.25}.topic-card-sub{color:var(--topic-body);font-size:.82rem;line-height:1.45;margin-bottom:.5rem}.topic-card-meta{color:var(--topic-quiet);font-size:.72rem}.topic-card-badge{color:var(--topic-gold-dim);display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.06em;margin-top:.5rem;text-transform:uppercase}:root[data-theme=light]{--color-bg:#faf7f2;--color-bg-warm:#f5f0e8;--color-bg-dark:#ede7dc;--color-bg-darker:#e8e2d8;--color-surface:#fff;--color-surface-elevated:#fbf8f3;--color-surface-hover:#f0ebe3;--color-surface-rgb:255,255,255;--color-text:#3a2e20;--color-text-secondary:#6b5b45;--color-text-muted:#8a8680;--color-text-inverse:#faf7f2;--color-primary:#a78a4f;--color-primary-hover:#8f7340;--color-primary-rgb:167,138,79;--color-primary-light:hsla(39,45%,61%,.18);--color-gold-ornament:#c8a96e;--color-gold-ornament-hover:#b89655;--color-gold-ornament-rgb:200,169,110;--color-secondary:#5a8f89;--color-secondary-hover:#4d7a75;--color-secondary-rgb:90,143,137;--color-secondary-light:rgba(90,143,137,.15);--color-accent:#c8a96e;--color-accent-dark:#a78a4f;--color-accent-rgb:200,169,110;--color-orange:#b89655;--color-pink:#c4a4b8;--color-border:rgba(58,46,32,.12);--color-border-strong:rgba(58,46,32,.22);--color-border-hover:rgba(58,46,32,.3);--shadow-xs:0 1px 2px rgba(58,46,32,.06);--shadow-sm:0 2px 4px rgba(58,46,32,.08);--shadow-md:0 4px 12px rgba(58,46,32,.1);--shadow-lg:0 8px 24px rgba(58,46,32,.12);--shadow-xl:0 16px 48px rgba(58,46,32,.14);--glow-primary:0 0 28px hsla(39,45%,61%,.15);--glow-secondary:0 0 28px rgba(90,143,137,.12);--glow-accent:0 0 28px hsla(39,45%,61%,.12)}:root[data-theme=light] .btn-primary{background:var(--color-gold-ornament);border-color:var(--color-gold-ornament);box-shadow:0 6px 20px rgba(var(--color-gold-ornament-rgb),.35);color:var(--color-text-inverse)}:root[data-theme=light] .btn-primary:hover:not(:disabled){background:var(--color-gold-ornament-hover);border-color:var(--color-gold-ornament-hover);box-shadow:0 8px 30px rgba(var(--color-gold-ornament-rgb),.4);color:var(--color-text-inverse)}body.tat-default .topic-browse-search{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text)}body.tat-default .topic-browse-search::-moz-placeholder{color:var(--color-text-muted)}body.tat-default .topic-browse-search::placeholder{color:var(--color-text-muted)}body.tat-default .topic-browse-search:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-light);outline:none}body.tat-default .topic-browse-meta{color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:var(--space-md)}body.tat-default .topic-card:not(.topic-card--muted){background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal)}body.tat-default .topic-card:not(.topic-card--muted):hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-3px)}body.tat-default .topic-card--muted{background:var(--color-bg-warm);border:2px solid var(--color-border);border-radius:var(--radius-lg);opacity:.85}body.tat-default .topic-card-num{color:var(--color-text-muted)}body.tat-default .topic-card-title{color:var(--color-text);font-family:var(--font-heading)}body.tat-default .topic-card-sub{color:var(--color-text-secondary)}body.tat-default .topic-card-meta{color:var(--color-text-muted)}body.tat-default .topic-card-badge{color:var(--color-primary)}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
