:root{--glass-bg: rgba(12, 16, 28, .86);--glass-bg-strong: rgba(11, 15, 26, .94);--glass-border: rgba(255, 255, 255, .08);--glass-border-strong: rgba(255, 255, 255, .14);--glass-blur: blur(16px) saturate(140%);--glass-shadow: 0 10px 30px rgba(0, 0, 0, .45);--glass-shadow-hover: 0 14px 36px rgba(0, 0, 0, .55);--surface-1: rgba(255, 255, 255, .04);--surface-2: rgba(255, 255, 255, .07);--surface-3: rgba(255, 255, 255, .11);--divider: rgba(255, 255, 255, .08);--accent: #f6c86b;--accent-strong: #f2b84b;--accent-gradient: linear-gradient(180deg, #ffd98c 0%, #f2b84b 100%);--accent-text: #1b1405;--accent-ink: var(--accent);--accent-soft: rgba(246, 200, 107, .12);--accent-soft-hover: rgba(246, 200, 107, .2);--accent-border: rgba(246, 200, 107, .38);--accent-glow: rgba(242, 184, 75, .22);--accent-glow-strong: rgba(242, 184, 75, .32);--male-color: #5aa9e6;--female-color: #f08a7e;--ok-color: #3cc39d;--error-color: #f08a7e;--error-text: #ffb3a8;--app-bg: #05070d;--panel-solid: #0b0f1a;--popover-bg: #121827;--modal-mask: rgba(4, 6, 12, .55);--modal-shadow: 0 24px 60px rgba(0, 0, 0, .55);--scrollbar-thumb: rgba(255, 255, 255, .14);--scrollbar-thumb-hover: rgba(255, 255, 255, .24);--scrollbar-color: rgba(255, 255, 255, .16);--logo-filter: brightness(0) invert(1);--logo-opacity: .72;--panel-radius: 16px;--panel-padding: 16px;--control-height: 44px;--info-sidebar-width: clamp(360px, 30vw, 440px);--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-round: 50%;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 24px;--spacing-2xl: 32px;--primary-color: var(--accent);--primary-hover: #ffd88a;--text-primary: #e8ecf4;--text-secondary: #9aa3b5;--text-muted: #6b7385;--text-disabled: #6b7385;--text-hint: #4f5768;--transition-fast: .15s;--transition-default: .2s;--transition-normal: .2s ease;--transition-slow: .26s cubic-bezier(.16, 1, .3, 1);--z-map: 0;--z-controls: 1000;--z-drawer: 1001;--z-modal: 1002;--z-toast: 1003;--font-size-xs: 10px;--font-size-sm: 12px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--overlay-gap: var(--spacing-md);--settings-btn-size: 50px}:root[data-theme=light]{--glass-bg: rgba(245, 242, 236, .84);--glass-bg-strong: rgba(245, 242, 236, .94);--glass-border: rgba(60, 50, 30, .09);--glass-border-strong: rgba(60, 50, 30, .16);--glass-shadow: 0 1px 0 rgba(245, 242, 236, .9) inset, 0 18px 50px -20px rgba(60, 50, 30, .35), 0 2px 8px rgba(60, 50, 30, .08);--glass-shadow-hover: 0 1px 0 rgba(245, 242, 236, .9) inset, 0 22px 56px -20px rgba(60, 50, 30, .42), 0 3px 10px rgba(60, 50, 30, .1);--surface-1: rgba(60, 50, 30, .03);--surface-2: rgba(60, 50, 30, .06);--surface-3: rgba(60, 50, 30, .1);--divider: rgba(60, 50, 30, .09);--accent: #a86d1c;--accent-strong: #8f5b14;--accent-gradient: linear-gradient(180deg, #b97c2a 0%, #9c6418 100%);--accent-text: #fffaf0;--accent-ink: #855516;--accent-soft: rgba(168, 109, 28, .09);--accent-soft-hover: rgba(168, 109, 28, .16);--accent-border: rgba(168, 109, 28, .4);--accent-glow: rgba(168, 109, 28, .22);--accent-glow-strong: rgba(168, 109, 28, .32);--male-color: #3a7fb8;--female-color: #c8644f;--ok-color: #1b8a55;--error-color: #c8432f;--error-text: #9b2c1c;--app-bg: #e2ded5;--panel-solid: #f5f2ec;--popover-bg: #f5f2ec;--modal-mask: rgba(60, 50, 30, .28);--modal-shadow: 0 30px 70px -20px rgba(60, 50, 30, .4), 0 2px 10px rgba(60, 50, 30, .08);--scrollbar-thumb: rgba(60, 50, 30, .16);--scrollbar-thumb-hover: rgba(60, 50, 30, .28);--scrollbar-color: rgba(60, 50, 30, .2);--logo-filter: none;--logo-opacity: .9;--swatch-border: rgba(60, 50, 30, .18);--welcome-glow: rgba(168, 109, 28, .25);--skip-border-hover: rgba(60, 50, 30, .26);--ai-btn-border: rgba(140, 90, 22, .35);--side-panel-shadow: 14px 0 40px -18px rgba(60, 50, 30, .35);--handle-color: rgba(60, 50, 30, .18);--welcome-icon-glow: rgba(168, 109, 28, .2);--inset-bg: rgba(60, 50, 30, .025);--inset-bg-soft: rgba(60, 50, 30, .025);--accent-text-faint: rgba(245, 242, 236, .4);--edit-text: #b8461a;--edit-icon: #d4561f;--primary-hover: #b97c2a;--text-primary: #2e2a24;--text-secondary: #5f584c;--text-muted: #8c8476;--text-disabled: #a39b8c;--text-hint: #b0a898}:is(.floating-controls,.compact-controls-toolbar,.mobile-controls-panel,.settings-popover) :is(.ant-btn,.ant-switch,.ant-slider-handle,a):focus-visible,:is(.floating-controls,.compact-controls-toolbar,.mobile-controls-panel) .ant-radio-button-wrapper:has(input:focus-visible),.settings-item--theme .ant-segmented-item:has(input:focus-visible),.help-button.ant-btn:focus-visible{outline:2px solid var(--accent)!important;outline-offset:2px}.ant-slider-handle:focus-visible{border-radius:50%}.glass-card{color:var(--text-primary);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:box-shadow var(--transition-normal)}.glass-card:hover{box-shadow:var(--glass-shadow-hover)}.glass-card-sm{border-radius:var(--radius-md);padding:var(--spacing-md) var(--spacing-lg)}.glass-card-md{border-radius:var(--radius-lg);padding:var(--spacing-lg) var(--spacing-xl)}.glass-card-lg{border-radius:var(--radius-xl);padding:var(--spacing-xl) var(--spacing-2xl)}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-slide-down{animation:slideDown var(--transition-slow)}.animate-slide-up{animation:slideUp var(--transition-slow)}.animate-fade-in{animation:fadeIn var(--transition-normal)}.animate-scale-in{animation:scaleIn var(--transition-slow)}.control-section{margin-bottom:var(--spacing-lg)}.control-label{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary)}.control-label-icon{color:var(--primary-color);font-size:var(--font-size-md)}@media(max-width:768px){:root{--spacing-xs: 3px;--spacing-sm: 6px;--spacing-md: 10px;--spacing-lg: 14px;--spacing-xl: 20px;--spacing-2xl: 28px;--font-size-xs: 9px;--font-size-sm: 11px;--font-size-md: 13px;--font-size-lg: 15px;--font-size-xl: 17px;--settings-btn-size: 40px}}.panel-close-btn.ant-btn,.panel-close-btn{width:32px;height:32px;min-width:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:0;border-radius:10px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.panel-close-btn.ant-btn:hover,.panel-close-btn:hover{color:var(--text-primary)!important;background:var(--surface-2)!important}.dark-scroll{scrollbar-width:thin;scrollbar-color:var(--scrollbar-color) transparent}.dark-scroll::-webkit-scrollbar{width:6px}.dark-scroll::-webkit-scrollbar-track{background:transparent}.dark-scroll::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.dark-scroll::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=light]{color-scheme:light;color:#2e2a24;background-color:#e2ded5}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.space-bg{background:#001;box-shadow:inset 0 0 150px #14329680;position:relative;overflow:hidden}.space-bg:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 10% 20%,rgba(255,255,255,.9) 0%,transparent 1px),radial-gradient(circle at 30% 65%,rgba(255,255,255,.8) 0%,transparent 1px),radial-gradient(circle at 55% 15%,rgba(255,255,255,.7) 0%,transparent 1px),radial-gradient(circle at 80% 45%,rgba(255,255,255,.9) 0%,transparent 1px),radial-gradient(circle at 90% 80%,rgba(255,255,255,.6) 0%,transparent 1px),radial-gradient(circle at 15% 85%,rgba(255,255,255,.8) 0%,transparent 1px),radial-gradient(circle at 45% 50%,rgba(255,255,255,.5) 0%,transparent 1px),radial-gradient(circle at 70% 75%,rgba(255,255,255,.7) 0%,transparent 1px),radial-gradient(circle at 25% 35%,rgba(255,255,255,.9) 0%,transparent 1px),radial-gradient(circle at 60% 90%,rgba(255,255,255,.6) 0%,transparent 1px),radial-gradient(circle at 35% 10%,rgba(255,255,255,.8) 0%,transparent 1px),radial-gradient(circle at 85% 15%,rgba(255,255,255,.7) 0%,transparent 1px),radial-gradient(circle at 5% 50%,rgba(255,255,255,.5) 0%,transparent 1px),radial-gradient(circle at 50% 30%,rgba(255,255,255,.9) 0%,transparent 1px),radial-gradient(circle at 75% 5%,rgba(255,255,255,.6) 0%,transparent 1px),radial-gradient(circle at 20% 70%,rgba(255,255,255,.8) 0%,transparent 1px),radial-gradient(circle at 40% 80%,rgba(255,255,255,.7) 0%,transparent 1px),radial-gradient(circle at 95% 30%,rgba(255,255,255,.5) 0%,transparent 1px),radial-gradient(circle at 65% 55%,rgba(255,255,255,.9) 0%,transparent 1px),radial-gradient(circle at 12% 42%,rgba(255,255,255,.6) 0%,transparent 1px);pointer-events:none}.space-bg:after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 2% 33%,rgba(255,255,255,.7) 0%,transparent 1px),radial-gradient(circle at 22% 11%,rgba(255,255,255,.8) 0%,transparent 1px),radial-gradient(circle at 42% 77%,rgba(255,255,255,.6) 0%,transparent 1px),radial-gradient(circle at 62% 22%,rgba(255,255,255,.9) 0%,transparent 1px),radial-gradient(circle at 82% 66%,rgba(255,255,255,.7) 0%,transparent 1px),radial-gradient(circle at 3% 55%,rgba(255,255,255,.5) 0%,transparent 1px),radial-gradient(circle at 23% 44%,rgba(255,255,255,.8) 0%,transparent 1px),radial-gradient(circle at 43% 88%,rgba(255,255,255,.6) 0%,transparent 1px),radial-gradient(circle at 63% 33%,rgba(255,255,255,.9) 0%,transparent 1px),radial-gradient(circle at 83% 11%,rgba(255,255,255,.7) 0%,transparent 1px),radial-gradient(circle at 13% 67%,rgba(255,255,255,.8) 0%,transparent 1px),radial-gradient(circle at 33% 28%,rgba(255,255,255,.6) 0%,transparent 1px),radial-gradient(circle at 53% 71%,rgba(255,255,255,.9) 0%,transparent 1px),radial-gradient(circle at 73% 89%,rgba(255,255,255,.7) 0%,transparent 1px),radial-gradient(circle at 93% 44%,rgba(255,255,255,.5) 0%,transparent 1px),radial-gradient(circle at 17% 77%,rgba(255,255,255,.8) 0%,transparent 1px),radial-gradient(circle at 37% 5%,rgba(255,255,255,.6) 0%,transparent 1px),radial-gradient(circle at 57% 48%,rgba(255,255,255,.9) 0%,transparent 1px),radial-gradient(circle at 77% 6%,rgba(255,255,255,.7) 0%,transparent 1px),radial-gradient(circle at 97% 52%,rgba(255,255,255,.8) 0%,transparent 1px),radial-gradient(circle at 8% 91%,rgba(255,255,255,.6) 0%,transparent 1px),radial-gradient(circle at 28% 53%,rgba(255,255,255,.9) 0%,transparent 1px),radial-gradient(circle at 48% 17%,rgba(255,255,255,.7) 0%,transparent 1px),radial-gradient(circle at 68% 95%,rgba(255,255,255,.8) 0%,transparent 1px),radial-gradient(circle at 88% 29%,rgba(255,255,255,.5) 0%,transparent 1px),radial-gradient(circle at 18% 4%,rgba(255,255,255,.6) 0%,transparent 1px),radial-gradient(circle at 38% 73%,rgba(255,255,255,.9) 0%,transparent 1px),radial-gradient(circle at 58% 40%,rgba(255,255,255,.7) 0%,transparent 1px),radial-gradient(circle at 78% 16%,rgba(255,255,255,.8) 0%,transparent 1px),radial-gradient(circle at 98% 69%,rgba(255,255,255,.6) 0%,transparent 1px);pointer-events:none}@media(max-width:768px){.population-pyramid-container{height:300px!important}.time-series-chart-container{height:250px!important}}
