.eco-switcher{position:relative}.eco-switcher__btn{cursor:pointer;color:#888;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;padding:8px;transition:all .15s;display:flex}.eco-switcher__btn:hover,.eco-switcher__btn--active{color:#dc2626;background:#dc26261a}.eco-switcher__dots{grid-template-rows:repeat(3,4px);grid-template-columns:repeat(3,4px);gap:3px;display:grid}.eco-switcher__dots span{background:currentColor;border-radius:1px;width:4px;height:4px;display:block}.eco-switcher__dropdown{z-index:200;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:14px;width:244px;padding:12px;animation:.15s both fade-in;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 32px #0009}.eco-switcher__label{letter-spacing:.12em;text-transform:uppercase;color:#888;margin:0 0 10px;padding:0 2px;font-size:.75rem;font-weight:700}.eco-switcher__grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.eco-switcher__app{cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;text-decoration:none;transition:background .15s;display:flex}.eco-switcher__app:hover:not(.eco-switcher__app--current):not(.eco-switcher__app--disabled){background:#ffffff0d}.eco-switcher__app--current{cursor:default;background:#dc262614;outline:1px solid #dc262640}.eco-switcher__app--disabled{cursor:default;opacity:.5}.eco-switcher__app-icon{background:#ffffff0d;border-radius:9px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.eco-switcher__app-name{color:#f5f5f5;text-align:center;font-size:11px;font-weight:600}.eco-switcher__soon{letter-spacing:.05em;text-transform:uppercase;color:#888;background:#ffffff0f;border-radius:4px;padding:1px 5px;font-size:9px;font-weight:700}.primal-header{z-index:100;background:#111;border-bottom:1px solid #2a2a2a;justify-content:space-between;align-items:center;padding:12px 24px;display:flex;position:sticky;top:0}@media (width<=640px){.primal-header{display:none}}.primal-header__logo{letter-spacing:.08em;text-transform:uppercase;color:#dc2626;align-items:center;gap:8px;font-size:1.125rem;font-weight:800;display:flex}.primal-header__logo span{color:#f5f5f5}.primal-header__nav{align-items:center;gap:4px;display:flex}.primal-header__link{color:#888;border-radius:10px;align-items:center;gap:8px;padding:8px 12px;font-size:.875rem;font-weight:500;transition:all .15s;display:flex}.primal-header__link:hover{color:#f5f5f5;background:#1a1a1a}.primal-header__link--active{color:#dc2626;background:#dc26261a}.primal-bottom-nav{display:none}@media (width<=640px){.primal-bottom-nav{z-index:100;padding-bottom:env(safe-area-inset-bottom);background:#111;border-top:1px solid #2a2a2a;display:flex;position:fixed;bottom:0;left:0;right:0}}.primal-bottom-nav__item{color:#555;letter-spacing:.03em;text-transform:uppercase;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:8px 0;font-size:.6rem;font-weight:600;transition:color .15s;display:flex}.primal-bottom-nav__item--active{color:#dc2626}.primal-bottom-nav__avatar{object-fit:cover;border:1.5px solid #2a2a2a;border-radius:50%;width:22px;height:22px}.primal-layout{flex-direction:column;min-height:100dvh;display:flex}.primal-layout__main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:16px}@media (width<=640px){.primal-layout__main{padding:12px 12px 80px}}.public-layout{color:#f5f5f5;background:#0a0a0a;flex-direction:column;min-height:100dvh;display:flex}.public-layout__main{flex:1}.public-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;background:#0a0a0ae6;border-bottom:1px solid #2a2a2a;justify-content:space-between;align-items:center;padding:12px 24px;display:flex;position:sticky;top:0}@media (width<=640px){.public-header{gap:12px;padding:12px 16px}}.public-header__logo{text-decoration:none}.public-header__logo-text{letter-spacing:.1em;background:linear-gradient(135deg,#dc2626,#f97316);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.125rem;font-weight:900}.public-header__nav{align-items:center;gap:4px;display:flex}@media (width<=640px){.public-header__nav{display:none}}.public-header__link{color:#888;border-radius:10px;padding:8px 12px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .15s}.public-header__link:hover{color:#f5f5f5;background:#1a1a1a}.public-header__link--active{color:#dc2626}.public-header__actions{align-items:center;gap:8px;display:flex}.public-footer{background:#111;border-top:1px solid #2a2a2a;padding:40px 24px 24px}.public-footer__inner{border-bottom:1px solid #2a2a2a;grid-template-columns:2fr 1fr 1fr;gap:32px;max-width:960px;margin:0 auto;padding-bottom:24px;display:grid}@media (width<=640px){.public-footer__inner{grid-template-columns:1fr;gap:24px}}.public-footer__brand p{color:#888;margin-top:8px;font-size:.875rem;line-height:1.6}.public-footer__logo{letter-spacing:.1em;background:linear-gradient(135deg,#dc2626,#f97316);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.25rem;font-weight:900}.public-footer__links,.public-footer__eco{flex-direction:column;gap:8px;display:flex}.public-footer__links p,.public-footer__eco p{letter-spacing:.12em;text-transform:uppercase;color:#888;margin-bottom:4px;font-size:.75rem;font-weight:700}.public-footer__links a,.public-footer__eco a{color:#888;font-size:.875rem;text-decoration:none;transition:color .15s}.public-footer__links a:hover,.public-footer__eco a:hover{color:#f5f5f5}.public-footer__copy{color:#888;max-width:960px;margin:16px auto 0;font-size:.75rem}.primal-btn--sm{padding:6px 14px!important;font-size:.75rem!important}.primal-loader{color:#888;flex-direction:column;align-items:center;gap:16px;padding:48px;font-size:.875rem;display:flex}.primal-loader__bar{background:#2a2a2a;border-radius:2px;width:120px;height:2px;position:relative;overflow:hidden}.primal-loader__bar:after{content:"";background:#dc2626;border-radius:2px;width:50%;height:100%;animation:1.2s ease-in-out infinite loader-slide;position:absolute;top:0;left:-50%}@keyframes loader-slide{0%{left:-50%}to{left:100%}}.primal-landing{flex-direction:column;justify-content:center;align-items:center;gap:48px;min-height:100dvh;padding:0 24px 24px;display:flex}.primal-landing__nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;background:#0a0a0ad9;border-bottom:1px solid #2a2a2a;justify-content:space-between;align-items:center;padding:12px 24px;display:flex;position:fixed;top:0;left:0;right:0}@media (width<=640px){.primal-landing__nav{padding:12px 16px}}.primal-landing__nav-logo{letter-spacing:.1em;background:linear-gradient(135deg,#dc2626,#f97316);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.125rem;font-weight:900}.primal-landing__nav-links{align-items:center;gap:4px;display:flex}@media (width<=640px){.primal-landing__nav-links{display:none}}.primal-landing__nav-links a{color:#888;border-radius:10px;padding:8px 12px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .15s}.primal-landing__nav-links a:hover{color:#f5f5f5;background:#1a1a1a}.primal-landing__nav-actions{align-items:center;gap:8px;display:flex}.primal-landing__hero{text-align:center;max-width:600px;margin-top:80px;animation:.6s both fade-in}.primal-landing__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:#888;margin-bottom:16px;font-size:.75rem;font-weight:700;display:block}.primal-landing__title{letter-spacing:-.02em;margin-bottom:16px;font-size:clamp(3.5rem,12vw,7rem);font-weight:900;line-height:1}.primal-landing__title span{background:linear-gradient(135deg,#dc2626,#f97316);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.primal-landing__tagline{color:#f5f5f5;margin-bottom:12px;font-size:1.5rem;font-weight:700}.primal-landing__sub{color:#888;margin-bottom:24px;font-size:1rem;line-height:1.6}.primal-landing__sub strong{color:#f5f5f5}.primal-landing__cta{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-bottom:12px;display:flex}.primal-landing__free-badge{color:#888;font-size:.75rem;font-weight:500}.primal-landing__pillars{grid-template-columns:repeat(3,1fr);gap:16px;width:100%;max-width:800px;animation:.6s .2s both fade-in;display:grid}@media (width<=640px){.primal-landing__pillars{grid-template-columns:1fr}}.primal-landing__explore{flex-direction:column;gap:8px;width:100%;max-width:480px;animation:.6s .35s both fade-in;display:flex}.primal-landing__explore-link{color:#888;background:#111;border:1px solid #2a2a2a;border-radius:10px;align-items:center;gap:12px;padding:12px 16px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.primal-landing__explore-link:hover{color:#f5f5f5;background:#1a1a1a;border-color:#dc2626}.primal-landing__explore-link span{flex:1}.primal-landing__explore-link svg:first-child{color:#dc2626}.primal-landing__footer{color:#888;border-top:1px solid #2a2a2a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:800px;padding-top:16px;font-size:.75rem;animation:.6s .4s both fade-in;display:flex}.primal-landing__footer-links{gap:16px;display:flex}.primal-landing__footer-links a{color:#888;text-decoration:none;transition:color .15s}.primal-landing__footer-links a:hover{color:#f5f5f5}.primal-btn{letter-spacing:.02em;border-radius:10px;align-items:center;gap:8px;padding:12px 20px;font-size:.875rem;font-weight:700;transition:all .15s;display:inline-flex}.primal-btn--primary{color:#fff;background:#dc2626}.primal-btn--primary:hover{background:#e03c3c;transform:translateY(-1px)}.primal-btn--ghost{color:#888;border:1px solid #2a2a2a}.primal-btn--ghost:hover{color:#f5f5f5;border-color:#f5f5f5}.primal-pillar-card{border:1px solid #2a2a2a;border-color:rgba(var(--pillar-color), .2);background:#111;border-radius:16px;flex-direction:column;gap:8px;padding:16px;transition:transform .15s,border-color .15s;display:flex}.primal-pillar-card:hover{border-color:rgba(var(--pillar-color), .4);transform:translateY(-2px)}.primal-pillar-card__icon{color:var(--pillar-color);margin-bottom:4px}.primal-pillar-card h3{color:#f5f5f5;font-size:.875rem;font-weight:700}.primal-pillar-card p{color:#888;font-size:.75rem;line-height:1.5}.primal-auth{justify-content:center;align-items:center;min-height:100dvh;padding:16px;display:flex}.primal-auth__card{background:#111;border:1px solid #2a2a2a;border-radius:16px;flex-direction:column;gap:16px;width:100%;max-width:400px;padding:16px;animation:.4s both fade-in;display:flex}.primal-auth__card h1{font-size:1.25rem;font-weight:800}.primal-auth__logo{letter-spacing:.06em;color:#dc2626;font-size:1.125rem;font-weight:900}.primal-auth__form{flex-direction:column;gap:12px;display:flex}.primal-auth__form label{color:#888;flex-direction:column;gap:4px;font-size:.875rem;font-weight:500;display:flex}.primal-auth__form input{color:#f5f5f5;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:10px;padding:12px;font-family:inherit;font-size:.875rem;transition:border-color .15s}.primal-auth__form input:focus{border-color:#dc2626;outline:none}.primal-auth__error{color:#ef4444;background:#ef44441a;border-radius:6px;padding:8px 12px;font-size:.75rem}.primal-auth__switch{color:#888;text-align:center;font-size:.875rem}.primal-auth__switch a{color:#dc2626;font-weight:600}.primal-auth__coming{color:#888;font-size:.875rem}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,-apple-system,sans-serif}body{color:#f5f5f5;background-color:#0a0a0a;min-height:100dvh;overflow-x:hidden}#root{flex-direction:column;min-height:100dvh;display:flex}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:none}img,svg{max-width:100%;display:block}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#111}::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:3px}@supports (-webkit-touch-callout:none){body{overscroll-behavior-y:none}}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.4)}}@keyframes progress-fill{0%{width:0}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}
