:root{--font-family-serif: "Playfair Display", Georgia, serif;--font-family-sans: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "JetBrains Mono", "Fira Code", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.563rem;--font-size-3xl: 1.953rem;--font-size-4xl: 2.441rem;--font-size-5xl: 3.052rem;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: max(16px, env(safe-area-inset-bottom, 16px));--safe-area-left: env(safe-area-inset-left, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--touch-target-min: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-spring: .4s cubic-bezier(.175, .885, .32, 1.275);--color-primary: #fb7185;--color-primary-hover: #f43f5e;--color-primary-light: #fecdd3;--color-primary-subtle: #fdf2f8;--color-secondary: #f59e0b;--color-secondary-hover: #d97706;--color-accent: #f59e0b;--color-accent-hover: #d97706;--color-success: #2a9d8f;--color-success-hover: #21867a;--color-warning: #f4a261;--color-error: #e63946;--color-info: #457b9d;--bg-app: #fff0f3;--bg-surface: #ffffff;--bg-surface-elevated: #ffffff;--bg-surface-subtle: #fbf1f2;--bg-overlay: rgba(15, 23, 42, .6);--text-primary: #1d2d44;--text-secondary: #4a5568;--text-muted: #718096;--text-inverse: #ffffff;--border-subtle: #eedee0;--border-strong: #d4c2c5;--border-focus: #e63946;--shadow-sm: 0 1px 3px rgba(44, 19, 24, .08), 0 1px 2px rgba(44, 19, 24, .04);--shadow-md: 0 4px 6px -1px rgba(44, 19, 24, .08), 0 2px 4px -1px rgba(44, 19, 24, .04);--shadow-lg: 0 10px 15px -3px rgba(44, 19, 24, .08), 0 4px 6px -2px rgba(44, 19, 24, .04);--shadow-xl: 0 20px 25px -5px rgba(44, 19, 24, .1), 0 10px 10px -5px rgba(44, 19, 24, .04);--shadow-glow: 0 0 20px rgba(230, 57, 70, .35);--glass-bg: rgba(255, 255, 255, .85);--glass-border: rgba(255, 255, 255, .4);--glass-blur: blur(12px)}[data-theme=dark]{--color-primary: #ff6b81;--color-primary-hover: #ff4757;--color-primary-light: #3a1c22;--color-primary-subtle: #251417;--color-secondary: #ffa502;--color-secondary-hover: #ff7f00;--color-accent: #ffd166;--color-accent-hover: #ffb703;--color-success: #2ec4b6;--color-success-hover: #20a396;--color-warning: #ff9f43;--color-error: #ff5252;--color-info: #70a1ff;--bg-app: #0f1117;--bg-surface: #1a1d26;--bg-surface-elevated: #242936;--bg-surface-subtle: #141720;--bg-overlay: rgba(0, 0, 0, .8);--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--text-inverse: #0f1117;--border-subtle: #2d3342;--border-strong: #3f475a;--border-focus: #ff6b81;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -2px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .6), 0 10px 10px -5px rgba(0, 0, 0, .4);--shadow-glow: 0 0 25px rgba(255, 107, 129, .45);--glass-bg: rgba(26, 29, 38, .85);--glass-border: rgba(255, 255, 255, .08);--glass-blur: blur(14px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-family-sans);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal);background-color:var(--bg-app);color:var(--text-primary);min-height:100vh;transition:background-color var(--transition-normal),color var(--transition-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;-webkit-tap-highlight-color:transparent}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-serif);font-weight:var(--font-weight-bold);color:var(--text-primary);line-height:var(--line-height-tight)}h1{font-size:clamp(1.75rem,4.5vw + .5rem,2.75rem);margin-bottom:var(--space-4)}h2{font-size:clamp(1.4rem,3.5vw + .4rem,2.2rem);margin-bottom:var(--space-3)}h3{font-size:clamp(1.15rem,2.5vw + .3rem,1.6rem);margin-bottom:var(--space-2)}h4{font-size:clamp(1rem,2vw + .2rem,1.25rem);margin-bottom:var(--space-2)}p{margin-bottom:var(--space-3);color:var(--text-secondary)}input,select,textarea,button{font-size:16px}:focus-visible{outline:2px solid var(--border-focus);outline-offset:3px;border-radius:var(--radius-sm)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-surface-subtle)}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.container{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:var(--space-4);padding-right:var(--space-4)}@media(max-width:480px){.container{padding-left:var(--space-3);padding-right:var(--space-3)}}.main-content{min-height:calc(100vh - 80px);display:flex;flex-direction:column}@media(max-width:768px){.hide-on-mobile{display:none!important}}@media(min-width:769px){.show-on-mobile{display:none!important}}button,.btn{font-family:var(--font-family-sans);font-weight:var(--font-weight-medium);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:var(--radius-full);border:1px solid transparent;cursor:pointer;transition:all var(--transition-normal);-webkit-user-select:none;user-select:none;text-decoration:none}button:disabled,button[disabled],.btn:disabled,.btn[disabled]{opacity:.55;cursor:not-allowed;pointer-events:none;transform:none!important}.btn-primary{background-color:var(--color-primary);color:var(--text-inverse);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-outline{background:transparent;border-color:var(--color-primary);color:var(--color-primary)}.btn-outline:hover:not(:disabled){background:var(--color-primary-subtle)}.card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);transition:all var(--transition-normal)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--transition-normal) forwards}@keyframes pulseGlow{0%,to{opacity:.8}50%{opacity:1;box-shadow:var(--shadow-glow)}}
