.landing-page-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;text-align:center;padding:var(--spacing-lg);background:url(https://images.pexels.com/photos/41949/earth-earth-at-night-night-lights-41949.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1) no-repeat center center/cover;color:var(--text-primary)}.landing-content{max-width:700px;background-color:#0009;padding:2rem;border-radius:10px}.landing-title{font-size:var(--font-size-xxl);color:var(--primary-color);margin-bottom:var(--spacing-sm)}.landing-subtitle{font-size:var(--font-size-md);color:var(--text-secondary);margin-bottom:var(--spacing-md)}.landing-description{font-size:var(--font-size-lg);color:var(--text-secondary);margin-bottom:var(--spacing-xl);line-height:1.7}.landing-actions .play-button{background-color:var(--primary-color);color:#fff;padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg);border-radius:50px;text-decoration:none;transition:var(--transition-normal);display:inline-flex;align-items:center;gap:var(--spacing-sm);box-shadow:var(--shadow-md)}.landing-actions .play-button:hover{background-color:var(--primary-dark);transform:translateY(-3px);box-shadow:var(--shadow-lg)}.play-icon{font-size:1.2em}.landing-navigation{margin-top:var(--spacing-xl);display:flex;gap:var(--spacing-lg);justify-content:center}.landing-nav-link{color:var(--text-secondary);font-size:var(--font-size-sm)}.landing-nav-link:hover{color:var(--primary-color)}.landing-footer{margin-top:auto;padding-top:var(--spacing-xl);color:var(--text-muted);font-size:var(--font-size-xs);border-top:1px solid var(--color-border);width:100%;max-width:700px}.landing-footer p{margin-bottom:var(--spacing-xs)}.map-page-container{padding:var(--spacing-lg);text-align:center}.map-header{margin-bottom:var(--spacing-lg)}.map-description{margin-bottom:var(--spacing-md);color:var(--text-secondary)}.map-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);gap:var(--spacing-md);flex-wrap:wrap}.search-container .search-input{padding:var(--spacing-sm);border-radius:var(--border-radius-sm);border:1px solid var(--color-border);background-color:var(--color-bg-secondary);color:var(--text-primary);min-width:200px}.filter-controls{display:flex;align-items:center;gap:var(--spacing-sm)}.filter-buttons button{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);background-color:var(--color-bg-tertiary);color:var(--text-secondary);border:1px solid var(--color-border)}.filter-buttons button.active{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.map-legend{margin-bottom:var(--spacing-md);font-size:var(--font-size-xs);color:var(--text-muted)}.map-container{width:100%;max-width:900px;margin:0 auto var(--spacing-lg);border:1px solid var(--color-border);border-radius:var(--border-radius-md);background-color:var(--dark-surface-light);position:relative}.map-tooltip{position:absolute;background-color:#000c;color:#fff;padding:var(--spacing-sm);border-radius:var(--border-radius-sm);pointer-events:none;transform:translate(-50%,-100%);white-space:nowrap;box-shadow:var(--shadow-md)}.map-tooltip h3{margin-bottom:var(--spacing-xs);font-size:var(--font-size-md);color:var(--primary-color)}.tooltip-hint{font-size:var(--font-size-xs);opacity:.8;margin-top:var(--spacing-xs)}.state-details-card-map{position:fixed;bottom:20px;left:50%;transform:translate(-50%);width:90%;max-width:400px;background-color:var(--color-bg-secondary);padding:var(--spacing-md);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);z-index:10;animation:fadeInAnimation .3s ease-out}.state-details-card-map .state-details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.state-details-card-map .state-details-header h2{color:var(--primary-color);margin:0}.state-details-card-map .close-button{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer}.state-details-card-map .state-details-content p{margin-bottom:var(--spacing-xs)}.map-footer{margin-top:var(--spacing-lg);font-size:var(--font-size-xs);color:var(--text-muted)}.loading-container{display:flex;justify-content:center;align-items:center;height:100vh;font-size:var(--font-size-xl);color:var(--text-primary)}.state-list-container{margin-top:var(--spacing-lg);max-width:900px;margin-left:auto;margin-right:auto;background-color:var(--color-bg-secondary);border-radius:var(--border-radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-md)}.state-list-container h2{color:var(--color-accent-primary);margin-bottom:var(--spacing-md)}.state-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-sm);max-height:300px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);padding:var(--spacing-sm)}.state-list li{background-color:var(--color-bg-tertiary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);cursor:pointer;transition:background-color .2s ease;color:var(--text-primary);font-size:var(--font-size-sm);text-align:left}.state-list li:hover{background-color:var(--primary-color);color:#fff}.notification{position:fixed;top:20px;right:20px;z-index:10000;max-width:400px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);transform:translate(100%);transition:transform var(--transition-normal)}.notification-visible{transform:translate(0)}.notification-content{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);gap:var(--spacing-sm)}.notification-message{color:var(--text-primary);font-size:var(--font-size-sm);line-height:1.4;flex:1}.notification-close{background:none;border:none;color:var(--text-secondary);font-size:var(--font-size-lg);font-weight:700;cursor:pointer;padding:var(--spacing-xs);line-height:1;border-radius:var(--border-radius-sm);transition:color var(--transition-fast),background-color var(--transition-fast)}.notification-close:hover{color:var(--text-primary);background-color:var(--color-bg-tertiary)}.notification-error{border-left:4px solid var(--color-error)}.notification-warning{border-left:4px solid var(--color-warning)}.notification-success{border-left:4px solid var(--color-success)}.notification-info{border-left:4px solid var(--color-info)}.start-screen-container{max-width:1200px;margin:0 auto;padding:2rem;color:var(--text-primary)}.loading-message{text-align:center;font-size:var(--font-size-lg);color:var(--text-secondary);padding:var(--spacing-xl)}.header-section{text-align:center;margin-bottom:3rem;animation:fadeIn .5s ease-out}.header-section h1{font-size:2.5rem;color:var(--primary-color);margin-bottom:1rem;text-shadow:0 2px 4px rgba(0,0,0,.3);background:linear-gradient(135deg,#4c9aff,#50e3c2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.byline{font-size:1.2rem;color:#ccc;margin:-10px 0 20px;font-style:italic}.tagline{font-size:1.2rem;color:#ccc;margin-bottom:20px}.intro-section{background-color:var(--dark-surface);border-radius:12px;box-shadow:0 8px 24px #0003;overflow:hidden;margin-bottom:3rem;animation:fadeIn .5s ease-out}.intro-content{padding:2.5rem}.intro-content h2{color:var(--primary-color);margin-bottom:1.5rem;text-align:center;font-size:1.8rem}.intro-content>p{max-width:800px;margin:0 auto 2.5rem;text-align:center;line-height:1.6;font-size:1.1rem;color:var(--text-secondary)}.intro-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:2.5rem}.feature{background-color:#0003;padding:1.5rem;border-radius:10px;transition:transform .3s ease,box-shadow .3s ease;border-left:3px solid var(--primary-color)}.feature:hover{transform:translateY(-5px);box-shadow:0 10px 20px #00000040}.feature h3{color:var(--primary-color);margin-bottom:1rem;font-size:1.4rem}.feature p{font-size:1rem;line-height:1.6;color:var(--text-secondary)}.start-button{display:block;margin:0 auto;padding:.9rem 2.5rem;font-size:1.2rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:50px;cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:0 4px 15px #4c9aff4d}.start-button:hover{background-color:var(--primary-dark);transform:translateY(-3px);box-shadow:0 8px 25px #4c9aff66}.setup-section{background-color:var(--dark-surface);border-radius:12px;box-shadow:0 8px 24px #0003;overflow:hidden;margin-bottom:3rem;animation:fadeIn .5s ease-out}.setup-content{padding:2.5rem}.setup-content h2{color:var(--primary-color);margin-bottom:1.5rem;text-align:center;font-size:1.8rem}.selection-area{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2.5rem}.state-selection,.income-selection{background-color:#0003;padding:1.5rem;border-radius:10px;height:100%;box-shadow:0 4px 12px #00000026;border:1px solid rgba(255,255,255,.05)}.state-selection h3,.income-selection h3{margin-bottom:1.2rem;color:var(--primary-color);text-align:center;font-size:1.4rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.state-selection select{width:100%;padding:.9rem 1.2rem;margin-bottom:1.2rem;background-color:var(--dark-surface-light, #2d2d2d);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-primary, #f5f5f5);font-size:1.1rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23b0b0b0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1rem;cursor:pointer}.state-selection select option{background-color:var(--dark-surface, #1e1e1e);color:var(--text-primary, #f5f5f5)}.state-selection select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #4c9aff33}.state-preview{background-color:#00000026;padding:1.2rem;border-radius:8px}.state-info h4{font-size:1.3rem;margin-bottom:.8rem;color:var(--primary-color)}.state-metrics{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-bottom:1.2rem}.metric{display:flex;justify-content:space-between;font-size:.95rem;padding:.5rem;background-color:#ffffff0a;border-radius:4px}.metric-label{color:var(--text-secondary)}.metric-value{color:var(--text-primary);font-weight:600}.state-summary{font-size:.95rem;line-height:1.6;color:var(--text-secondary);font-style:italic;padding:.8rem;border-left:3px solid var(--primary-color);background-color:#ffffff08;border-radius:0 4px 4px 0;margin-top:1rem}.income-options{display:grid;grid-template-columns:1fr;gap:1.2rem}.income-option{padding:1.2rem;background-color:#00000026;border:2px solid transparent;border-radius:8px;cursor:pointer;transition:all .3s ease;text-align:left;display:block;width:100%;position:relative;overflow:hidden}.income-option:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background-color:var(--primary-color);opacity:0;transition:opacity .3s ease}.income-option:hover{transform:translateY(-2px);border-color:#4c9aff4d;box-shadow:0 6px 15px #0003}.income-option.active{background-color:#4c9aff26;border-color:var(--primary-color);box-shadow:0 6px 15px #0003}.income-option-title{font-weight:600;margin-bottom:.5rem;color:var(--primary-color);font-size:1.1rem}.income-option-amount{font-size:1.3rem;margin-bottom:.5rem;color:var(--text-primary);font-weight:600}.income-option-monthly{font-size:.95rem;margin-bottom:.8rem;color:var(--secondary-color);background-color:#50e3c21a;display:inline-block;padding:.3rem .6rem;border-radius:4px}.income-option-desc{font-size:.95rem;line-height:1.5;color:var(--text-secondary)}.simulation-preview{margin-bottom:2.5rem;background-color:#0003;padding:1.5rem;border-radius:10px;box-shadow:0 4px 12px #00000026;border:1px solid rgba(255,255,255,.05)}.simulation-preview h3{margin-bottom:1.2rem;color:var(--primary-color);text-align:center;font-size:1.4rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.preview-container{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.preview-stat{background-color:#ffffff0d;padding:1rem;border-radius:8px;min-width:180px;text-align:center;border-left:3px solid var(--primary-color);transition:transform .3s ease}.preview-stat:hover{transform:translateY(-3px);box-shadow:0 4px 12px #00000040}.preview-label{font-size:.9rem;color:var(--text-secondary);margin-bottom:.5rem}.preview-value{font-size:1.2rem;font-weight:600;color:var(--primary-color)}.action-buttons{display:flex;gap:1.2rem;justify-content:center}.back-button{padding:.9rem 1.8rem;font-size:1.1rem;background-color:#ffffff14;color:var(--text-primary);border:1px solid rgba(255,255,255,.1);border-radius:50px;cursor:pointer;transition:all .3s ease}.back-button:hover{background-color:#ffffff1f;transform:translateY(-2px);box-shadow:0 4px 12px #00000040}.trait-selection{background-color:#0003;padding:1.5rem;border-radius:10px;height:100%;box-shadow:0 4px 12px #00000026;border:1px solid rgba(255,255,255,.05)}.trait-selection h3{margin-bottom:1.2rem;color:var(--primary-color);text-align:center;font-size:1.4rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.trait-options{display:grid;grid-template-columns:1fr;gap:1.2rem}.trait-option{padding:1.2rem;background-color:#50e3c226;border:2px solid transparent;border-radius:8px;cursor:pointer;transition:all .3s ease;text-align:left;display:block;width:100%;position:relative;overflow:hidden;color:var(--text-primary)}.trait-option:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background-color:var(--secondary-color);opacity:0;transition:opacity .3s ease}.trait-option:hover{transform:translateY(-2px);border-color:#50e3c24d;box-shadow:0 6px 15px #0003}.trait-option:hover:before{opacity:1}.trait-option.active{background-color:#50e3c240;border-color:var(--secondary-color);box-shadow:0 6px 15px #0003}.trait-option.active:before{opacity:1}.trait-title{font-weight:600;margin-bottom:.5rem;color:var(--primary-color);font-size:1.1rem}.trait-desc{font-size:.95rem;line-height:1.5;color:var(--text-secondary);margin-bottom:.5rem}.trait-effects{font-size:.95rem;color:var(--text-primary);font-weight:500}.footer-section{margin-top:3rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:1rem;text-align:center}.disclaimer{font-size:.9rem;color:var(--text-secondary);max-width:800px;margin:0 auto;background-color:#ffd1661a;padding:.8rem 1rem;border-radius:8px;border-left:3px solid var(--warning)}.disclaimer strong{color:var(--warning)}.navigation-links{margin:1rem 0}.link{color:var(--primary-color);text-decoration:none;padding:.8rem 1.5rem;border:1px solid var(--primary-color);border-radius:50px;transition:all .3s ease;display:inline-block}.link:hover{background-color:var(--primary-color);color:#fff;text-decoration:none;transform:translateY(-2px);box-shadow:0 4px 12px #4c9aff40}.data-sources{font-size:.8rem;color:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 992px){.selection-area{grid-template-columns:1fr}.income-selection{margin-top:1.5rem}.action-buttons{flex-direction:column}}@media (max-width: 768px){.intro-features,.state-metrics{grid-template-columns:1fr}.preview-container{flex-direction:column;align-items:center}.preview-stat{width:100%;max-width:300px}}@media (max-width: 576px){.header-section h1{font-size:2rem}.tagline{font-size:1rem}.setup-content,.intro-content{padding:1.5rem}}.game-screen-container{max-width:1800px;margin:0 auto;padding:var(--spacing-sm)}.game-main{background-color:var(--color-bg-secondary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);overflow-y:auto;display:flex;flex-direction:column;max-height:calc(100vh - 60px)}.game-header{background-color:var(--color-bg-tertiary);padding:var(--spacing-sm) var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-sm);border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0}.header-top-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.header-bottom-row{display:flex;justify-content:center}.location-info{flex-shrink:0}.location-info h2{margin-bottom:var(--spacing-xs);font-size:var(--font-size-xl);color:var(--color-accent-primary)}.game-progress{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.progress-bar-container{flex:1;min-width:100px;max-width:200px;height:6px;background-color:var(--color-bg-secondary);border-radius:10px;overflow:hidden}.progress-bar-fill{height:100%;background-color:var(--color-accent-primary);border-radius:10px;transition:width .5s ease-out}.header-event-log{flex-grow:1;text-align:center;padding:var(--spacing-md);background-color:#0000004d;border-radius:var(--border-radius-md);font-size:1.3rem;color:var(--text-primary);min-height:6em;display:flex;align-items:center;justify-content:center;max-width:50%;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px 4px #0000004d;margin:0 var(--spacing-md);line-height:1.4}.header-event-log span{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;max-height:5.6em}.game-stats{display:flex;gap:var(--spacing-lg);flex-wrap:wrap;justify-content:center}.stat-group{display:flex;gap:var(--spacing-lg);align-items:center}.stat-item{display:flex;flex-direction:column;align-items:center;min-width:100px}.stat-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:2px;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:var(--font-size-md);font-weight:var(--font-weight-bold)}.stat-value.negative{color:var(--color-error)}.stat-value.positive{color:var(--color-success)}.stat-bar-combo{display:flex;align-items:center;width:100%;margin-top:2px}.stat-bar{height:8px;background-color:var(--color-bg-secondary);border-radius:10px;overflow:hidden;flex-grow:1;margin-right:var(--spacing-xs)}.stat-fill{height:100%;transition:width .3s ease-out}.stat-fill.excellent{background-color:#4caf50}.stat-fill.good{background-color:#8bc34a}.stat-fill.fair{background-color:#ffc107}.stat-fill.poor{background-color:#ff9800}.stat-fill.critical{background-color:#f44336}.stat-number{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);min-width:25px;text-align:right}.stat-number.excellent{color:#4caf50}.stat-number.good{color:#8bc34a}.stat-number.fair{color:#ffc107}.stat-number.poor{color:#ff9800}.stat-number.critical{color:#f44336}.game-content-wrapper{display:flex;flex-direction:row;flex:1;overflow-y:auto;height:100%}.game-actions{width:450px;flex-shrink:1;flex-grow:0;background-color:var(--color-bg-tertiary);display:flex;flex-direction:row;border-right:1px solid rgba(255,255,255,.1);flex-wrap:nowrap;height:100%}.action-buttons-column{width:90px;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);overflow-y:auto;flex-shrink:0;background-color:transparent;min-width:0;height:100%}.action-button-vertical{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm);border-radius:var(--border-radius-md);background-color:#0000001a;border:2px solid transparent;cursor:pointer;transition:all var(--transition-normal);width:100%;position:relative;box-shadow:0 2px 4px #0003}.action-button-vertical:hover{border-color:var(--color-accent-primary);transform:translate(2px);background-color:#00000040}.action-button-vertical.active{background-color:#4c9aff33;border-color:var(--color-accent-primary)}.action-button-vertical .action-icon{font-size:20px;width:35px;height:35px;display:flex;align-items:center;justify-content:center;border-radius:50%;background-color:#0000001a;margin-bottom:3px}.action-button-vertical .action-label{font-size:10px;margin-top:3px;text-align:center;color:var(--text-secondary);font-weight:500}.action-button-vertical.active .action-label{color:var(--primary-color);font-weight:700}.action-options-display{flex:1;padding:var(--spacing-lg);overflow-y:auto;display:flex;flex-direction:column;background-color:transparent;height:100%}.action-options-display h3{margin-bottom:var(--spacing-md);color:var(--color-accent-primary);text-align:center;font-size:var(--font-size-lg);flex-shrink:0}.options-grid-container{flex-grow:1;overflow-y:auto;margin:0 -5px;padding:0 5px}.action-options-placeholder{flex-grow:1;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-style:italic;text-align:center}.game-content{flex:1;padding:var(--spacing-lg);overflow-y:auto;background-color:var(--color-bg-secondary)}.game-content h3{margin-bottom:var(--spacing-md);color:var(--color-accent-primary);text-align:center;font-size:var(--font-size-xl)}.budget-container{display:flex;flex-direction:column;gap:var(--spacing-lg)}.budget-column{min-width:unset;flex:unset}.budget-section{margin-bottom:var(--spacing-lg)}.budget-section h4{border-bottom:1px solid var(--color-bg-tertiary);padding-bottom:var(--spacing-xs);margin-bottom:var(--spacing-sm);color:var(--color-accent-primary)}.budget-item{display:flex;justify-content:space-between;padding:var(--spacing-xs) 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:var(--font-size-sm)}.budget-item span:first-child{color:var(--text-secondary)}.budget-item span:last-child{font-weight:var(--font-weight-medium);text-align:right}.budget-item.income span:last-child{color:var(--color-success);font-weight:var(--font-weight-bold)}.budget-item.income-detail span:first-child{padding-left:var(--spacing-sm);font-size:var(--font-size-xs)}.budget-item.warning span{color:var(--color-warning);font-style:italic}.budget-item.total-expenses{font-weight:var(--font-weight-bold);border-bottom:2px solid rgba(255,255,255,.1);padding-bottom:var(--spacing-sm);margin-top:var(--spacing-sm)}.budget-item.balance-summary span:last-child{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.budget-item.positive span:last-child{color:var(--color-success)}.budget-item.negative span:last-child{color:var(--color-error)}.budget-item .warning{color:var(--color-warning);font-weight:700}.budget-item.expense-detail span:first-child{padding-left:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--text-muted)}.budget-item.expense-detail span:last-child{font-size:var(--font-size-xs)}.options-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}.option-card{background-color:var(--color-bg-secondary);padding:var(--spacing-md);border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);border:2px solid transparent;position:relative;overflow:hidden}.option-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background-color:#00000040}.option-card.selected{border-color:var(--color-accent-primary);background-color:#4c9aff26;box-shadow:0 4px 12px #0003}.option-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.option-header h4{margin:0;color:var(--color-accent-primary);font-size:1rem}.selected-badge{background-color:var(--color-accent-primary);color:#fff;font-size:var(--font-size-xs);padding:4px 8px;border-radius:10px;font-weight:700;box-shadow:0 2px 4px #0003;text-transform:uppercase;letter-spacing:.5px;animation:pulse 1.5s infinite}@keyframes pulse{0%{box-shadow:0 0 #4c9affb3}70%{box-shadow:0 0 0 5px #4c9aff00}to{box-shadow:0 0 #4c9aff00}}.option-details{margin-bottom:var(--spacing-sm)}.option-cost{margin-bottom:var(--spacing-xs)}.option-cost strong{font-size:var(--font-size-md)}.option-percent{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.option-effects{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--spacing-sm)}.option-effect{font-size:var(--font-size-xs)}.option-effect.positive{color:var(--color-success)}.option-effect.negative{color:var(--color-error)}.option-description{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.4}.option-card.disabled{opacity:.6;cursor:not-allowed}.option-warning{color:var(--color-warning);font-size:var(--font-size-xs);margin-top:var(--spacing-md)}.side-hustle-controls .option-card .option-description{color:#fff}.side-hustle-controls .option-card.selected{border-color:var(--color-accent-secondary);background-color:#ffc1071a}.hustle-option-card{color:#fff}.family-controls,.loan-form,.savings-controls,.side-hustle-controls,.wellbeing-controls{padding:0}.detail-item{display:flex;justify-content:space-between;padding:var(--spacing-xs) 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:var(--font-size-sm)}.detail-item:last-child{border-bottom:none}.detail-item .warning{color:var(--color-warning)}.detail-item .positive{color:var(--color-success)}.dependent-buttons{display:flex;gap:var(--spacing-md);margin:var(--spacing-md) 0}.action-button-inline{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);border:none;cursor:pointer;transition:all var(--transition-normal);font-size:var(--font-size-sm);font-weight:500;color:#fff}.action-icon-inline{font-size:1.1em}.add-dependent{background-color:var(--color-success);color:#fff}.remove-dependent{background-color:var(--color-error);color:#fff}.take-loan-button,.set-allocation-button{background-color:var(--color-accent-primary);color:#fff}.action-button-inline:hover{opacity:.85;transform:translateY(-1px)}.action-button-inline:disabled{opacity:.5;cursor:not-allowed}.loan-inputs{display:grid;grid-template-columns:1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.form-input{width:100%;padding:.75rem;background-color:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:var(--text-primary);font-size:1rem}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #4c9aff33}.dependent-details,.loan-details,.current-loans,.loan-summary{margin-top:var(--spacing-md)}.current-loans ul{list-style:none;padding:0}.current-loans li{padding:var(--spacing-xs) 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:var(--font-size-sm)}.next-week-container-footer{display:flex;justify-content:center;padding:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1);background-color:var(--color-bg-tertiary);flex-shrink:0}.next-week-button{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg);background-color:var(--color-success);color:#fff;font-weight:var(--font-weight-bold);border-radius:50px;cursor:pointer;transition:all var(--transition-normal);border:none;box-shadow:0 4px 15px #06d6a04d;position:relative;overflow:hidden;text-transform:uppercase;letter-spacing:1px}.next-week-button:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,#ffffff1a,#fff0);transform:translate(-100%);transition:transform .5s ease}.next-week-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #06d6a066;background-color:#05b989}.next-week-button:hover:before{transform:translate(100%)}.next-week-button:active{transform:translateY(-1px);box-shadow:0 4px 10px #06d6a04d}.tutorial-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000d9;display:flex;justify-content:center;align-items:center;z-index:1000;opacity:1;pointer-events:auto;transition:opacity .3s ease-out}.tutorial-content{background-color:var(--color-bg-secondary);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);max-width:600px;width:90%;box-shadow:var(--shadow-lg);animation:scaleIn .4s ease-out}.tutorial-content h3{color:var(--color-accent-primary);margin-bottom:var(--spacing-md)}.tutorial-content p{margin-bottom:var(--spacing-md);line-height:1.6}.tutorial-content h4{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm);color:var(--text-primary)}.tutorial-content ul{margin-bottom:var(--spacing-md);padding-left:var(--spacing-lg)}.tutorial-content li{margin-bottom:var(--spacing-xs);line-height:1.5}.tutorial-content .close-tutorial{color:#fff;background-color:var(--primary-color)}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (max-width: 992px){.game-content-wrapper{flex-direction:row}.game-content{order:2}}@media (max-width: 768px){.game-header{padding:var(--spacing-sm)}.header-top-row{flex-direction:column;align-items:center}.header-event-log{order:3;margin-top:var(--spacing-sm);max-width:90%}.location-info{order:1;text-align:center}.game-stats{flex-direction:column;align-items:center;gap:var(--spacing-sm)}.stat-group{width:100%;justify-content:space-around;flex-direction:row}.game-content{padding:var(--spacing-md)}.action-buttons-column{flex-direction:column;border-right:none;border-bottom:1px solid rgba(255,255,255,.1)}.action-button-vertical{width:auto;flex-direction:row;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm)}.action-button-vertical .action-icon{width:20px;height:20px;font-size:14px;margin:0}.action-options-display{padding:var(--spacing-md)}}@media (max-width: 480px){.stat-group{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.stat-item{align-items:flex-start}.stat-bar-combo{width:auto}.tutorial-content{padding:var(--spacing-md);margin:0 var(--spacing-md)}}.education-page-container{padding:20px;text-align:center}.state-detail-container{max-width:1200px;margin:0 auto;padding:0 0 3rem;background-color:var(--dark-bg);color:var(--text-primary)}.loading-message.state-detail-container{padding:var(--spacing-xl);text-align:center}.state-header{padding:3rem 2rem;text-align:center;margin-bottom:2rem;background-size:cover;background-position:center;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000004d;color:#fff}.state-header:before{content:"";position:absolute;inset:0;background-color:#0006;z-index:1}.state-header h1,.state-header .state-subtitle{position:relative;z-index:2}.state-header h1{font-size:3rem;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.5)}.state-subtitle{font-size:1.1rem;opacity:.9}.content-area{padding:0 2rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem}.card{background-color:var(--dark-surface);border-radius:12px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 4px 12px #0000001a;transition:transform .3s ease,box-shadow .3s ease;border:1px solid rgba(255,255,255,.05);position:relative;overflow:hidden}.card:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-5px)}.card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(to bottom,var(--primary-color),var(--secondary-color));opacity:0;transition:opacity .3s ease}.card:hover:before{opacity:1}.card h3{font-size:1.5rem;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.1);color:var(--primary-color)}.state-summary{grid-column:1 / -1}.state-summary p{font-size:1.1rem;line-height:1.6;margin-bottom:1rem;color:var(--text-secondary)}.state-summary p:last-child{margin-bottom:0}.state-summary strong{color:var(--text-primary)}.income-selector h3{font-size:1.3rem;margin-bottom:1rem;color:var(--primary-color)}.income-options{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.income-option{background-color:#0003;border:2px solid transparent;border-radius:12px;padding:1.5rem;text-align:left;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.income-option:before{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:linear-gradient(to bottom,var(--primary-color),var(--secondary-color));opacity:0;transition:opacity .3s ease}.income-option:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0003;background-color:#ffffff0d}.income-option:hover:before{opacity:1}.income-option.active{border-color:var(--primary-color);background-color:#4c9aff26}.income-option.active:before{opacity:1}.income-option-title{font-size:1.2rem;font-weight:600;margin-bottom:.75rem;color:var(--primary-color)}.income-option-amount{font-size:1.8rem;font-weight:700;margin-bottom:.5rem}.income-option-monthly{font-size:1rem;color:var(--text-secondary);background-color:#ffffff14;display:inline-block;padding:.3rem .6rem;border-radius:4px;margin-bottom:.5rem}.cost-breakdown{grid-column:1;grid-row:span 2}.cost-breakdown>p{margin-bottom:1.5rem;font-size:.95rem;color:var(--text-muted);line-height:1.5}.cost-category{margin-bottom:2rem}.cost-category h4{font-size:1.2rem;margin-bottom:1rem;color:var(--text-primary);border-left:3px solid var(--primary-color);padding-left:.75rem;display:flex;align-items:center}.cost-category h4 .category-icon{margin-right:.5rem;font-size:1.1em}.housing-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}.housing-option{background-color:#00000026;border-radius:8px;padding:1rem;transition:all .3s ease}.housing-option:hover{transform:translateY(-3px);box-shadow:0 6px 12px #00000026}.housing-option h5{margin-top:0;margin-bottom:.75rem;color:var(--primary-color);font-size:1rem}.housing-details{margin-bottom:.75rem}.housing-rent{font-size:1.2rem;font-weight:600;margin-bottom:.25rem}.housing-percent{font-size:.9rem;color:var(--text-secondary)}.housing-percent.warning{color:var(--warning)}.housing-percent.good{color:var(--success)}.housing-impact{font-size:.9rem}.housing-impact .positive{color:var(--success)}.housing-impact .negative{color:var(--danger)}.cost-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.cost-option{background-color:#00000026;border-radius:8px;padding:1rem;transition:all .3s ease;height:100%}.cost-option:hover{transform:translateY(-3px);box-shadow:0 6px 12px #00000026}.cost-option-name{font-weight:600;margin-bottom:.5rem;color:var(--primary-color)}.cost-option-amount{font-size:1.1rem;font-weight:600;margin-bottom:.25rem}.cost-percent{font-size:.9rem;color:var(--text-secondary);margin-bottom:.5rem}.cost-percent.warning{color:var(--warning)}.cost-description{font-size:.85rem;color:var(--text-secondary);line-height:1.4}.utilities-cost{background-color:#00000026;border-radius:8px;padding:1rem}.utility-item{display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.utility-item:last-child{border-bottom:none;margin-bottom:0}.utility-item.total{margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.1);font-weight:600}.comparison-section{grid-column:2;grid-row:2}.compare-selector{margin-bottom:1.5rem}.compare-selector select{width:100%;padding:.9rem 1.2rem;background-color:var(--dark-surface-light, #2d2d2d);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-primary, #f5f5f5);font-size:1rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23b0b0b0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1rem;cursor:pointer}.compare-selector select option{background-color:var(--dark-surface, #1e1e1e);color:var(--text-primary, #f5f5f5)}.compare-selector select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #4c9aff33}.comparison-chart{background-color:#00000026;border-radius:8px;overflow:hidden;animation:fadeIn .5s ease}.comparison-header{display:grid;grid-template-columns:1fr 1.5fr 1fr;background-color:#0000004d;padding:1rem;text-align:center;font-weight:600}.comparison-state{color:var(--primary-color)}.comparison-row{display:grid;grid-template-columns:1fr 1.5fr 1fr;padding:.75rem 1rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.05);font-size:.9rem}.comparison-row:nth-child(odd){background-color:#ffffff05}.comparison-row:hover{background-color:#ffffff0d}.comparison-label{text-align:left;padding-left:1rem;font-weight:500;color:var(--text-secondary)}.comparison-value{font-weight:600}.action-buttons{grid-column:2;grid-row:3;display:flex;flex-direction:column;gap:1rem;justify-content:center;align-items:center}.action-buttons .start-button,.action-buttons .back-button{width:100%;max-width:300px}.start-button{padding:1rem 2rem;font-size:1.2rem;font-weight:600;background-color:var(--primary-color);color:#fff;border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;text-align:center;box-shadow:0 4px 15px #4c9aff4d;position:relative;overflow:hidden}.start-button:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,#ffffff1a,#fff0);transform:translate(-100%);transition:transform .5s ease}.start-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #4c9aff66;background-color:var(--primary-dark)}.start-button:hover:before{transform:translate(100%)}.back-button{padding:1rem 2rem;font-size:1.1rem;background-color:transparent;color:var(--text-primary);border:1px solid var(--text-secondary);border-radius:50px;cursor:pointer;transition:all .3s ease;text-align:center;text-decoration:none;display:inline-block}.back-button:hover{background-color:#ffffff1a;transform:translateY(-3px);box-shadow:0 4px 15px #0003;color:var(--text-primary);border-color:var(--text-primary)}.educational-note{grid-column:1 / -1;background-color:#4c9aff0d;border-left:4px solid var(--primary-color);padding:1.5rem}.educational-note h4{font-size:1.2rem;margin-bottom:1rem;color:var(--primary-color)}.educational-note p{margin-bottom:1rem;line-height:1.6;color:var(--text-secondary)}.educational-note p:last-child{margin-bottom:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 992px){.content-area{grid-template-columns:1fr}.cost-breakdown,.comparison-section,.action-buttons{grid-column:1}.cost-breakdown{grid-row:2}.comparison-section{grid-row:3}.action-buttons{grid-row:4}}@media (max-width: 768px){.state-header{padding:2rem 1rem}.state-header h1{font-size:2.5rem}.content-area{padding:0 1rem}.income-options,.housing-options,.cost-options{grid-template-columns:1fr}.comparison-chart{font-size:.9rem}.comparison-value{padding:0 .25rem}}@media (max-width: 480px){.state-header h1{font-size:2rem}.state-subtitle{font-size:.9rem}.card{padding:1rem}.comparison-header,.comparison-row{grid-template-columns:.8fr 1.4fr .8fr}.comparison-label{padding-left:.5rem}}.game-over-container{max-width:900px;margin:2rem auto;padding:var(--spacing-lg);background-color:var(--dark-surface);color:var(--text-primary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);text-align:center}.game-over-header{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.game-over-icon{font-size:4rem;margin-bottom:var(--spacing-md);line-height:1;animation:bounceIcon 1.5s infinite}@keyframes bounceIcon{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}.game-over-header h1{font-size:var(--font-size-xxl);color:var(--color-error);margin-bottom:var(--spacing-sm)}.game-over-message{font-size:var(--font-size-lg);color:var(--text-secondary);line-height:1.6}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.results-card{background-color:var(--color-bg-tertiary);padding:var(--spacing-md);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);border-left:4px solid var(--primary-color)}.results-card h3{font-size:1.3rem;color:var(--primary-color);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.results-card p{margin-bottom:var(--spacing-sm);font-size:var(--font-size-md);line-height:1.5;display:flex;justify-content:space-between}.results-card p strong{color:var(--text-secondary)}.results-card p .highlight{font-weight:var(--font-weight-bold);color:var(--accent-primary);font-size:1.2em}.results-card p .negative{color:var(--color-error);font-weight:700}.results-card p .positive{color:var(--color-success);font-weight:700}.game-over-reflection{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background-color:#ffffff08;border-radius:var(--border-radius-md);border:1px solid var(--color-border)}.game-over-reflection h3{font-size:1.4rem;color:var(--accent-primary);margin-bottom:var(--spacing-md)}.game-over-reflection p{font-size:var(--font-size-md);color:var(--text-secondary);line-height:1.7}.game-over-actions{display:flex;justify-content:center;gap:var(--spacing-lg);flex-wrap:wrap}.game-over-actions .button{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg);min-width:200px}.game-over-actions .button.primary{background-color:var(--primary-color);color:#fff}.game-over-actions .button.primary:hover{background-color:var(--primary-dark)}.game-over-actions .button.secondary{background-color:var(--color-bg-tertiary);color:var(--text-primary);border:1px solid var(--color-border)}.game-over-actions .button.secondary:hover{background-color:#3e3e3e}.learn-page-container{max-width:900px;margin:0 auto;padding:var(--spacing-lg);color:var(--text-primary)}.learn-header{text-align:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.learn-header h1{font-size:var(--font-size-xxl);color:var(--primary-color);margin-bottom:var(--spacing-sm)}.learn-header p{font-size:var(--font-size-lg);color:var(--text-secondary)}.learn-content{line-height:1.7}.learn-section{background-color:var(--dark-surface);padding:var(--spacing-lg);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm)}.learn-section h2{font-size:1.6rem;color:var(--accent-primary);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.learn-section p{margin-bottom:var(--spacing-md);color:var(--text-secondary)}.learn-section p:last-child{margin-bottom:0}.learn-section ul{list-style:disc;margin-left:var(--spacing-lg);margin-bottom:var(--spacing-md);color:var(--text-secondary)}.learn-section li{margin-bottom:var(--spacing-sm)}.learn-actions{text-align:center;margin-top:var(--spacing-xl);display:flex;gap:var(--spacing-md);justify-content:center}.learn-actions .button{min-width:180px}.learn-footer{text-align:center;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--text-muted)}.donate-page-container{max-width:900px;margin:0 auto;padding:var(--spacing-lg);color:var(--text-primary)}.donate-header{text-align:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.donate-header h1{font-size:var(--font-size-xxl);color:var(--primary-color);margin-bottom:var(--spacing-sm)}.donate-header p{font-size:var(--font-size-lg);color:var(--text-secondary)}.donate-content{line-height:1.7}.donate-section{background-color:var(--dark-surface);padding:var(--spacing-lg);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm)}.donate-section h2{font-size:1.6rem;color:var(--accent-primary);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.donate-section p{margin-bottom:var(--spacing-md);color:var(--text-secondary)}.donate-section p:last-child{margin-bottom:0}.ways-to-give ul{list-style:none;padding-left:0;margin-bottom:var(--spacing-md)}.ways-to-give li{background-color:var(--dark-surface-light);padding:var(--spacing-md);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-md);border-left:3px solid var(--primary-color)}.ways-to-give li strong{display:block;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.donate-button{margin-top:var(--spacing-sm);display:inline-block}.thank-you-note{font-style:italic;color:var(--secondary-color);text-align:center;margin-top:var(--spacing-lg)}.donate-actions{text-align:center;margin-top:var(--spacing-xl)}.donate-footer{text-align:center;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--text-muted)}.about-page-container{max-width:900px;margin:0 auto;padding:var(--spacing-lg);color:var(--text-primary)}.about-header{text-align:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.about-header h1{font-size:var(--font-size-xxl);color:var(--primary-color);margin-bottom:var(--spacing-sm)}.about-header p{font-size:var(--font-size-lg);color:var(--text-secondary)}.about-content{line-height:1.7}.about-section{background-color:var(--dark-surface);padding:var(--spacing-lg);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm)}.about-section h2{font-size:1.6rem;color:var(--accent-primary);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.about-section p{margin-bottom:var(--spacing-md);color:var(--text-secondary)}.about-section p:last-child{margin-bottom:0}.about-actions{text-align:center;margin-top:var(--spacing-xl);display:flex;gap:var(--spacing-md);justify-content:center}.about-actions .button{min-width:180px}.about-footer{text-align:center;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--text-muted)}.app-container{display:flex;flex-direction:column;min-height:100vh;background-color:var(--color-bg)}main{flex:1;padding:var(--spacing-lg) 0}.button{display:inline-block;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);border-radius:var(--border-radius-md);cursor:pointer;text-align:center;text-decoration:none;transition:var(--transition-normal);border:1px solid transparent}.button.primary{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.button.primary:hover{background-color:var(--primary-dark);border-color:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.button.secondary{background-color:var(--color-bg-tertiary);color:var(--text-primary);border-color:var(--color-border)}.button.secondary:hover{background-color:#3e3e3e;border-color:var(--text-secondary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.button.danger{background-color:var(--color-error);color:#fff;border-color:var(--color-error)}.button.danger:hover{background-color:#c82333;border-color:#c82333;transform:translateY(-2px);box-shadow:var(--shadow-sm)}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background-color:var(--color-bg-secondary);color:var(--text-primary);font-size:var(--font-size-md)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #4c9aff33}.loading{display:flex;justify-content:center;align-items:center;min-height:200px;font-size:var(--font-size-lg);color:var(--text-secondary)}.navbar{background:var(--dark-surface);height:80px;display:flex;justify-content:center;align-items:center;font-size:1.2rem;position:sticky;top:0;z-index:999;border-bottom:1px solid var(--dark-border)}.navbar-container{display:flex;justify-content:space-between;height:80px;z-index:1;width:100%;max-width:1500px;padding:0 50px}.navbar-logo{color:var(--primary-color);justify-self:start;cursor:pointer;text-decoration:none;display:flex;align-items:center;font-weight:700}.logo-container{display:flex;flex-direction:column;align-items:flex-start}.logo-title{font-size:2rem;line-height:1;margin-bottom:.2rem}.logo-subtitle{font-size:1rem;color:var(--text-secondary);line-height:1}.nav-menu{display:flex;align-items:center;list-style:none;text-align:center}.nav-item{height:80px}.nav-links{color:var(--text-primary);display:flex;align-items:center;text-decoration:none;padding:0 1rem;height:100%;cursor:pointer}.nav-links.active{border-bottom:3px solid var(--primary-color)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary-color: #4c9aff;--primary-dark: #3a7fd1;--secondary-color: #50e3c2;--accent-primary: #ffc107;--accent-secondary: #f44336;--dark-bg: #121212;--dark-surface: #1e1e1e;--dark-surface-light: #2d2d2d;--dark-text-primary: #e0e0e0;--dark-text-secondary: #b0b0b0;--dark-text-muted: #757575;--dark-border: rgba(255, 255, 255, .1);--light-bg: #f4f6f8;--light-surface: #ffffff;--light-surface-light: #f9f9f9;--light-text-primary: #212121;--light-text-secondary: #5f6368;--light-text-muted: #7f8c8d;--light-border: #e0e0e0;--color-bg: var(--dark-bg);--color-bg-secondary: var(--dark-surface);--color-bg-tertiary: var(--dark-surface-light);--text-primary: var(--dark-text-primary);--text-secondary: var(--dark-text-secondary);--text-muted: var(--dark-text-muted);--color-border: var(--dark-border);--color-success: #4caf50;--color-warning: #ff9800;--color-error: var(--accent-secondary);--color-info: var(--primary-color);--color-button-hover: #3a7fd1;--font-family-sans: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--font-family-serif: "Merriweather", Georgia, serif;--font-family-mono: "Fira Code", "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-size-xxl: 2rem;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-bold: 700;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-xxl: 3rem;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 12px;--shadow-xs: 0 1px 2px rgba(0,0,0,.05);--shadow-sm: 0 2px 4px rgba(0,0,0,.1);--shadow-md: 0 4px 8px rgba(0,0,0,.15);--shadow-lg: 0 8px 16px rgba(0,0,0,.2);--shadow-xl: 0 12px 24px rgba(0,0,0,.25);--transition-fast: all .15s ease-out;--transition-normal: all .3s ease-out;--transition-slow: all .5s ease-out}html{font-size:16px;line-height:1.6;scroll-behavior:smooth}body{font-family:var(--font-family-sans);background-color:var(--color-bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;flex-direction:column;min-height:100vh}#root{flex:1;display:flex;flex-direction:column}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-dark);text-decoration:underline}button{font-family:inherit;cursor:pointer;border:none;background:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);transition:background-color var(--transition-fast),transform var(--transition-fast)}input,select,textarea{font-family:inherit;font-size:1rem;padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background-color:var(--color-bg-secondary);color:var(--text-primary)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb, 76, 154, 255),.2)}.container{width:100%;max-width:1200px;margin-left:auto;margin-right:auto;padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.text-center{text-align:center}.text-primary{color:var(--primary-color)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.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}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--dark-surface);border-radius:10px}::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:10px;border:2px solid var(--dark-surface)}::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}.page-container{padding:var(--spacing-lg)}.fade-in{animation:fadeInAnimation .5s ease-out forwards}@keyframes fadeInAnimation{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
