:root{--color-primary: #a855f7;--color-primary-dark: #9333ea;--color-secondary: #ec4899;--color-accent: #f0abfc;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--bg-primary: #0f0a1e;--bg-secondary: #1a0f2e;--bg-card: #2a1f3d;--bg-card-hover: #3d2f52;--text-primary: #ffffff;--text-secondary: #e9d5ff;--text-muted: #c084fc;--gradient-primary: linear-gradient(135deg, #a855f7 0%, #ec4899 100%);--gradient-accent: linear-gradient(135deg, #f0abfc 0%, #fb7185 100%);--gradient-success: linear-gradient(135deg, #10b981 0%, #34d399 100%);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .2);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .3);--shadow-glow: 0 0 20px rgba(168, 85, 247, .4);--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{min-height:100vh;display:flex;flex-direction:column}.header{background:var(--bg-secondary);border-bottom:2px solid var(--color-primary);box-shadow:var(--shadow-md);position:sticky;top:0;z-index:100}.header__content{max-width:1400px;margin:0 auto;padding:var(--spacing-lg) var(--spacing-xl);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.header__title{font-size:1.75rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:flex;align-items:center;gap:var(--spacing-sm)}.header__logo{font-size:2rem;filter:drop-shadow(0 0 10px rgba(168,85,247,.5))}.header__controls{display:flex;gap:var(--spacing-md)}.focus-mode-toggle,.tour-btn{padding:var(--spacing-sm) var(--spacing-lg);border:2px solid var(--color-primary);border-radius:var(--radius-md);background:transparent;color:var(--text-primary);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.focus-mode-toggle:hover,.tour-btn:hover{background:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-glow)}.nav{max-width:1400px;margin:0 auto;padding:0 var(--spacing-xl) var(--spacing-lg);display:flex;gap:var(--spacing-md);flex-wrap:wrap}.nav-link{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);text-decoration:none;font-weight:600;transition:all var(--transition-base);position:relative;overflow:hidden}.nav-link:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--gradient-primary);transition:left var(--transition-base);z-index:-1}.nav-link:hover:before{left:0}.nav-link:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.main{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:var(--spacing-2xl) var(--spacing-xl)}.ad-banner{margin-bottom:var(--spacing-2xl);display:flex;gap:var(--spacing-lg);flex-wrap:wrap}.ad-banner__internal,.ad-banner__external{flex:1;min-width:300px;padding:var(--spacing-lg);border-radius:var(--radius-lg);position:relative;overflow:hidden}.ad-banner__internal{background:var(--gradient-primary);box-shadow:var(--shadow-lg)}.ad-banner__badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-md);background:#fff3;border-radius:var(--radius-sm);font-size:.75rem;font-weight:700;text-transform:uppercase;margin-bottom:var(--spacing-sm)}.ad-banner__content h3{font-size:1.25rem;margin-bottom:var(--spacing-sm)}.ad-banner__content p{margin-bottom:var(--spacing-sm);opacity:.9}.ad-banner__rating{font-size:.85rem;font-weight:600;margin-bottom:var(--spacing-md);color:gold}.ad-banner__cta{padding:var(--spacing-sm) var(--spacing-lg);background:#fff;color:var(--color-primary);border:none;border-radius:var(--radius-md);font-weight:700;cursor:pointer;transition:all var(--transition-base)}.ad-banner__cta:hover{transform:scale(1.05);box-shadow:var(--shadow-md)}.ad-banner__external{background:var(--bg-card);border:2px dashed var(--text-muted);display:flex;flex-direction:column;align-items:center;justify-content:center}.ad-banner__label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;margin-bottom:var(--spacing-sm)}.ad-banner__placeholder-text{color:var(--text-secondary)}.directory{animation:fadeIn var(--transition-slow)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.directory__header{margin-bottom:var(--spacing-2xl)}.directory__header h2{font-size:2rem;margin-bottom:var(--spacing-sm);background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.directory__subtitle{color:var(--text-secondary);font-size:1.1rem}.location-selector{margin-top:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md)}.location-selector label{font-weight:600;color:var(--text-secondary)}.location-selector__dropdown{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-card);color:var(--text-primary);border:2px solid var(--color-primary);border-radius:var(--radius-md);font-size:1rem;cursor:pointer;transition:all var(--transition-base)}.location-selector__dropdown:hover{background:var(--bg-card-hover);box-shadow:var(--shadow-glow)}.directory__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-lg)}.directory__empty{padding:var(--spacing-2xl);text-align:center;background:var(--bg-card);border-radius:var(--radius-lg);color:var(--text-secondary)}.resource-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-base);border:2px solid transparent;position:relative;overflow:hidden}.resource-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary);transform:scaleX(0);transition:transform var(--transition-base)}.resource-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.resource-card:hover:before{transform:scaleX(1)}.resource-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md);gap:var(--spacing-sm)}.resource-card__title{font-size:1.25rem;color:var(--text-primary)}.resource-card__category{padding:var(--spacing-xs) var(--spacing-sm);background:var(--gradient-accent);border-radius:var(--radius-sm);font-size:.75rem;font-weight:700;white-space:nowrap}.resource-card__description{color:var(--text-secondary);margin-bottom:var(--spacing-lg);line-height:1.5}.resource-card__link{display:inline-flex;align-items:center;gap:var(--spacing-sm);color:var(--color-primary);text-decoration:none;font-weight:600;transition:all var(--transition-base)}.resource-card__link:hover{color:var(--color-accent);transform:translate(4px)}.strategy-vault{animation:fadeIn var(--transition-slow)}.strategy-vault__header{margin-bottom:var(--spacing-2xl)}.strategy-vault__header h2{font-size:2rem;margin-bottom:var(--spacing-sm);background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.strategy-vault__subtitle{color:var(--text-secondary);font-size:1.1rem}.strategy-vault__filters{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);flex-wrap:wrap}.filter-btn{padding:var(--spacing-sm) var(--spacing-lg);background:var(--bg-card);color:var(--text-secondary);border:2px solid transparent;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.filter-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.filter-btn--active{background:var(--gradient-primary);color:var(--text-primary);border-color:var(--color-primary)}.strategy-vault__list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.strategy-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-base);border:2px solid transparent}.strategy-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.strategy-card__header{display:flex;justify-content:space-between;align-items:flex-start;cursor:pointer;margin-bottom:var(--spacing-md)}.strategy-card__title{font-size:1.25rem;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.strategy-card__category{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--gradient-accent);border-radius:var(--radius-sm);font-size:.75rem;font-weight:700;margin-top:var(--spacing-xs)}.strategy-card__toggle{width:32px;height:32px;border-radius:50%;background:var(--color-primary);color:#fff;border:none;font-size:1.5rem;cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center}.strategy-card__toggle:hover{transform:scale(1.1);box-shadow:var(--shadow-glow)}.strategy-card__description{color:var(--text-secondary);margin-bottom:var(--spacing-md)}.strategy-card__details{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:2px solid var(--bg-secondary);animation:slideDown var(--transition-base)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.strategy-card__section{margin-bottom:var(--spacing-lg)}.strategy-card__section h4{color:var(--color-primary);margin-bottom:var(--spacing-sm)}.strategy-card__section ol,.strategy-card__section ul{margin-left:var(--spacing-lg);color:var(--text-secondary)}.strategy-card__section li{margin-bottom:var(--spacing-sm);line-height:1.6}.welcome{text-align:center;padding:var(--spacing-2xl);animation:fadeIn var(--transition-slow)}.welcome h1{font-size:2.5rem;margin-bottom:var(--spacing-lg);background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome p{font-size:1.25rem;color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.welcome__cta{display:inline-block;padding:var(--spacing-md) var(--spacing-2xl);background:var(--gradient-primary);color:#fff;text-decoration:none;border-radius:var(--radius-md);font-weight:700;font-size:1.1rem;transition:all var(--transition-base)}.welcome__cta:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.footer{background:var(--bg-secondary);padding:var(--spacing-xl);text-align:center;color:var(--text-muted);border-top:2px solid var(--color-primary)}.introjs-tooltip{background:var(--bg-card)!important;color:var(--text-primary)!important;border:2px solid var(--color-primary)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-lg)!important}.introjs-button{background:var(--gradient-primary)!important;color:#fff!important;border:none!important;border-radius:var(--radius-md)!important;padding:var(--spacing-sm) var(--spacing-lg)!important;font-weight:600!important;transition:all var(--transition-base)!important}.introjs-button:hover{transform:scale(1.05)!important}.introjs-skipbutton{color:var(--text-muted)!important}.introjs-tooltiptext{color:var(--text-primary)!important}.introjs-helperLayer{background:#0a0e27cc!important}@media(max-width:768px){.header__content{flex-direction:column;align-items:flex-start}.header__title{font-size:1.5rem}.nav{flex-direction:column}.directory__grid{grid-template-columns:1fr}.ad-banner{flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){:root{--bg-primary: #000000;--bg-secondary: #1a1a1a;--bg-card: #2a2a2a;--text-primary: #ffffff;--color-primary: #88aaff}}.introjs-tour{transition:all .3s ease-out}.introjs-overlay{position:absolute;box-sizing:content-box;z-index:999999;opacity:0;transition:all .3s ease-out}.introjs-showElement{z-index:9999999!important}tr.introjs-showElement>td{z-index:9999999!important;position:relative}tr.introjs-showElement>th{z-index:9999999!important;position:relative}.introjs-disableInteraction{z-index:99999999!important;position:absolute;background-color:#fff;opacity:0}.introjs-relativePosition{position:relative}.introjs-helperLayer{box-sizing:content-box;position:absolute;z-index:9999998;border-radius:4px;transition:all .3s ease-out}.introjs-helperLayer *{box-sizing:content-box}.introjs-helperLayer :before{box-sizing:content-box}.introjs-helperLayer :after{box-sizing:content-box}.introjs-tooltipReferenceLayer{font-family:Helvetica Neue,Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif;box-sizing:content-box;position:absolute;visibility:hidden;z-index:100000000;background-color:transparent;transition:all .3s ease-out}.introjs-tooltipReferenceLayer *{font-family:Helvetica Neue,Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif}.introjs-helperNumberLayer{font-family:Helvetica Neue,Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif;color:#9e9e9e;text-align:center;padding-top:10px;padding-bottom:10px}.introjs-arrow{border:5px solid transparent;content:"";position:absolute}.introjs-arrow.top{top:-10px;left:10px;border-bottom-color:#fff}.introjs-arrow.top-right{top:-10px;right:10px;border-bottom-color:#fff}.introjs-arrow.top-middle{top:-10px;left:50%;margin-left:-5px;border-bottom-color:#fff}.introjs-arrow.right{right:-10px;top:10px;border-left-color:#fff}.introjs-arrow.right-bottom{bottom:10px;right:-10px;border-left-color:#fff}.introjs-arrow.bottom{bottom:-10px;left:10px;border-top-color:#fff}.introjs-arrow.bottom-right{bottom:-10px;right:10px;border-top-color:#fff}.introjs-arrow.bottom-middle{bottom:-10px;left:50%;margin-left:-5px;border-top-color:#fff}.introjs-arrow.left{left:-10px;top:10px;border-right-color:#fff}.introjs-arrow.left-bottom{left:-10px;bottom:10px;border-right-color:#fff}.introjs-tooltip{box-sizing:content-box;position:absolute;visibility:visible;background-color:#fff;min-width:250px;max-width:300px;border-radius:5px;box-shadow:0 3px 30px #2121214d;transition:opacity .1s ease-out}.introjs-tooltiptext{padding:20px}.introjs-dontShowAgain{padding-left:20px;padding-right:20px}.introjs-dontShowAgain input{padding:0;margin:0 0 2px;display:inline;width:10px;height:10px}.introjs-dontShowAgain label{font-size:14px;display:inline-block;font-weight:400;margin:0 0 0 5px;padding:0;background-color:#fff;color:#616161;-webkit-user-select:none;user-select:none}.introjs-tooltip-title{font-size:18px;width:90%;min-height:1.5em;margin:0;padding:0;font-weight:700;line-height:1.5}.introjs-tooltip-header{position:relative;padding-left:20px;padding-right:20px;padding-top:10px;min-height:1.5em}.introjs-tooltipbuttons{border-top:1px solid #e0e0e0;padding:10px;text-align:right;white-space:nowrap}.introjs-tooltipbuttons:after{content:"";visibility:hidden;display:block;height:0;clear:both}.introjs-button{box-sizing:content-box;position:relative;overflow:visible;padding:.5rem 1rem;border:1px solid #bdbdbd;text-decoration:none;text-shadow:1px 1px 0 #fff;font-size:14px;color:#424242;white-space:nowrap;cursor:pointer;outline:0;background-color:#f4f4f4;border-radius:.2em;zoom:1;display:inline}.introjs-button:hover{outline:0;text-decoration:none;border-color:#9e9e9e;background-color:#e0e0e0;color:#212121}.introjs-button:focus{outline:0;text-decoration:none;background-color:#eee;box-shadow:0 0 0 .2rem #9e9e9e80;border:1px solid #616161;color:#212121}.introjs-button:active{outline:0;text-decoration:none;background-color:#e0e0e0;border-color:#9e9e9e;color:#212121}.introjs-button::-moz-focus-inner{padding:0;border:0}.introjs-skipbutton{position:absolute;top:0;right:0;display:inline-block;width:45px;height:45px;line-height:45px;color:#616161;font-size:22px;cursor:pointer;font-weight:700;text-align:center;text-decoration:none}.introjs-skipbutton:focus,.introjs-skipbutton:hover{color:#212121;outline:0;text-decoration:none}.introjs-prevbutton{float:left}.introjs-nextbutton{float:right}.introjs-disabled{color:#9e9e9e;border-color:#bdbdbd;box-shadow:none;cursor:default;background-color:#f4f4f4;background-image:none;text-decoration:none}.introjs-disabled:focus,.introjs-disabled:hover{color:#9e9e9e;border-color:#bdbdbd;box-shadow:none;cursor:default;background-color:#f4f4f4;background-image:none;text-decoration:none}.introjs-hidden{display:none}.introjs-bullets{text-align:center;padding-top:10px;padding-bottom:10px}.introjs-bullets ul{box-sizing:content-box;clear:both;margin:0 auto;padding:0;display:inline-block}.introjs-bullets ul li{box-sizing:content-box;list-style:none;float:left;margin:0 2px}.introjs-bullets ul li a{transition:width .1s ease-in;box-sizing:content-box;display:block;width:6px;height:6px;background:#ccc;border-radius:10px;text-decoration:none;cursor:pointer}.introjs-bullets ul li a:focus,.introjs-bullets ul li a:hover{width:15px;background:#999;text-decoration:none;outline:0}.introjs-bullets ul li a.active{width:15px;background:#999}.introjs-progress{box-sizing:content-box;overflow:hidden;height:10px;margin:10px;border-radius:4px;background-color:#e0e0e0}.introjs-progressbar{box-sizing:content-box;float:left;width:0%;height:100%;font-size:10px;line-height:10px;text-align:center;background-color:#08c}.introjsFloatingElement{position:absolute;height:0;width:0;left:50%;top:50%}.introjs-fixedTooltip{position:fixed}.introjs-hint{box-sizing:content-box;position:absolute;background:0 0;width:20px;height:15px;cursor:pointer}.introjs-hint:focus{border:0;outline:0}.introjs-hint:hover>.introjs-hint-pulse{background-color:#3c3c3c91}.introjs-hidehint{display:none}.introjs-fixedhint{position:fixed}@keyframes introjspulse{0%{transform:scale(.95);box-shadow:0 0 #000000b3}70%{transform:scale(1);box-shadow:0 0 0 10px transparent}to{transform:scale(.95);box-shadow:0 0 0 0 transparent}}.introjs-hint-pulse{box-sizing:content-box;width:15px;height:15px;border-radius:30px;background-color:#8888883d;z-index:10;position:absolute;transition:all .2s ease-out;animation:introjspulse 2s infinite}.introjs-hint-no-anim .introjs-hint-pulse{animation:none}.introjs-hint-dot{box-sizing:content-box;background:0 0;border-radius:60px;height:50px;width:50px;position:absolute;top:-18px;left:-18px;z-index:1;opacity:0}
