.app-hidden,.landing-hidden{display:none!important}.modal-open{overflow:hidden}
.landing{--violet:#8c7cff;--coral:#ff7d83;--cream:#f7f3ee;min-height:100vh;position:relative;overflow:hidden;background:radial-gradient(circle at 86% 10%,rgba(140,124,255,.2),transparent 28%),radial-gradient(circle at 70% 75%,rgba(255,125,131,.1),transparent 25%),#09090c;color:var(--cream)}
.landing:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.023) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.023) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,black,transparent 82%)}
.landing-nav{height:92px;max-width:1380px;margin:auto;padding:0 54px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5}.landing-brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.landing-brand strong{display:block;font-size:18px}.landing-brand small{display:block;color:#85838d;font-size:9px;margin-top:2px}.brand-orbit{width:39px;height:39px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;position:relative}.brand-orbit:before,.brand-orbit:after{content:"";position:absolute;border:1px solid var(--violet,#8c7cff);border-radius:50%;transform:rotate(-30deg)}.brand-orbit:before{width:29px;height:15px}.brand-orbit:after{width:15px;height:29px;border-color:var(--coral,#ff7d83)}.brand-orbit i{width:6px;height:6px;background:#fff;border-radius:50%;box-shadow:0 0 12px var(--violet,#8c7cff)}
.landing-links{display:flex;align-items:center;gap:34px}.landing-links>a{color:#aaa7b1;text-decoration:none;font-size:11px;font-weight:700}.landing-links>a:hover{color:#fff}.sign-in-button,.mobile-sign-in{padding:10px 12px 10px 18px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.06);color:#fff;font-weight:700}.sign-in-button span{display:inline-grid;place-items:center;width:28px;height:28px;margin-left:10px;border-radius:50%;background:var(--violet)}.mobile-sign-in{display:none}
.landing-hero{min-height:calc(100vh - 210px);max-width:1380px;margin:auto;padding:54px 54px 80px;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;position:relative;z-index:2}.hero-copy{max-width:650px;position:relative;z-index:4}.landing-kicker{display:flex;align-items:center;gap:8px;color:#aaa7b1;font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}.landing-kicker i{width:7px;height:7px;border-radius:50%;background:var(--coral,#ff7d83);box-shadow:0 0 14px var(--coral,#ff7d83)}.hero-copy h1{margin:24px 0 23px;font-size:clamp(53px,6.2vw,93px);line-height:.96;letter-spacing:-5px;font-weight:750}.hero-copy h1 em{font-family:Georgia,serif;font-weight:400;color:transparent;background:linear-gradient(90deg,var(--violet),#c59bff 48%,var(--coral));background-clip:text;-webkit-background-clip:text}.hero-copy>p{max-width:545px;color:#9a97a2;font-size:15px;line-height:1.75}.hero-cta{margin-top:24px;padding:8px 9px 8px 22px;border-radius:999px;background:var(--cream);color:#111116;font-weight:800}.hero-cta span{display:inline-grid;place-items:center;width:35px;height:35px;margin-left:15px;border-radius:50%;background:#17171d;color:#fff;transition:.2s}.hero-cta:hover span{transform:translateX(3px)}
.member-note{display:flex;align-items:center;gap:13px;margin-top:38px}.avatar-stack{display:flex}.avatar-stack span{width:31px;height:31px;margin-left:-7px;display:grid;place-items:center;border:2px solid #0b0b0e;border-radius:50%;background:linear-gradient(145deg,#b292ff,#513ed0);font-size:10px;font-weight:800}.avatar-stack span:first-child{margin-left:0;background:linear-gradient(145deg,#ff9a9f,#913d6a)}.avatar-stack span:last-child{background:linear-gradient(145deg,#87d5d1,#256a76)}.member-note p,.member-note strong,.member-note small{display:block;margin:0}.member-note strong{font-size:11px}.member-note small{margin-top:3px;color:#75727c;font-size:9px}
.hero-art{height:620px;position:relative}.glow{position:absolute;border-radius:50%;filter:blur(60px)}.glow-one{width:260px;height:260px;top:90px;left:150px;background:rgba(121,93,255,.2)}.glow-two{width:180px;height:180px;right:50px;bottom:80px;background:rgba(255,112,127,.15)}.orbit{position:absolute;border:1px solid rgba(160,140,255,.5);border-radius:50%;transform:rotate(-24deg)}.orbit:before,.orbit:after{content:"";position:absolute;inset:12%;border:1px solid rgba(155,126,255,.22);border-radius:50%}.orbit:after{inset:25%}.orbit i{position:absolute;width:7px;height:7px;border-radius:50%;background:#b9a8ff;box-shadow:0 0 14px #8c7cff}.orbit i:nth-child(1){top:10%;left:28%}.orbit i:nth-child(2){right:4%;top:53%;background:var(--coral);box-shadow:0 0 14px var(--coral)}.orbit i:nth-child(3){bottom:5%;left:35%;width:4px;height:4px}.orbit-one{width:490px;height:310px;left:55px;top:115px}.orbit-two{width:310px;height:190px;right:-25px;bottom:66px;transform:rotate(18deg)}.orbit-three{width:185px;height:120px;left:166px;top:212px;transform:rotate(44deg)}.connection-line{position:absolute;width:310px;height:1px;top:318px;left:304px;background:linear-gradient(90deg,var(--violet),transparent);transform:rotate(23deg);transform-origin:left}.center-mark{position:absolute;left:260px;top:263px;width:105px;height:105px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(12,11,17,.7);box-shadow:0 0 50px rgba(130,105,255,.24);backdrop-filter:blur(12px)}.center-mark span{font:42px Georgia,serif}.center-mark small{position:absolute;bottom:19px;color:#aaa3c8;font-size:7px;letter-spacing:2px}
.signal-card{position:absolute;display:flex;align-items:center;gap:11px;padding:12px 15px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(18,17,24,.72);box-shadow:0 15px 40px rgba(0,0,0,.35);backdrop-filter:blur(12px)}.signal-card small,.signal-card strong{display:block}.signal-card small{color:#777381;font-size:7px;letter-spacing:1.2px}.signal-card strong{font-size:11px;margin-top:3px}.card-one{left:32px;top:116px}.card-two{right:4px;bottom:102px}.card-two>span{font-size:24px;color:var(--coral)}.pulse-dot{width:12px;height:12px;border:3px solid #beb0ff;border-radius:50%;box-shadow:0 0 0 5px rgba(140,124,255,.12)}
.landing-bottom{max-width:1272px;margin:-18px auto 0;padding:25px 0 32px;border-top:1px solid rgba(255,255,255,.1);display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr;gap:13px;position:relative;z-index:3;color:#76737d}.landing-bottom>span{color:var(--violet);font:italic 14px Georgia,serif}.landing-bottom p{margin:0;max-width:260px;font-size:10px;line-height:1.55}.landing-bottom strong{display:block;color:#d7d3dc;font-size:11px;margin-bottom:2px}
.auth-overlay{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:rgba(4,4,7,.76);backdrop-filter:blur(18px);opacity:0;visibility:hidden;transition:.25s}.auth-overlay.open{opacity:1;visibility:visible}.auth-modal{width:min(455px,100%);padding:30px 34px 27px;position:relative;border:1px solid rgba(255,255,255,.13);border-radius:24px;background:radial-gradient(circle at 85% 0,rgba(140,124,255,.15),transparent 30%),#111116;box-shadow:0 35px 90px rgba(0,0,0,.55);transform:translateY(12px);transition:.25s}.auth-overlay.open .auth-modal{transform:none}.auth-close{position:absolute;right:18px;top:16px;background:transparent;color:#77737e;font-size:25px}.auth-brand{display:flex;align-items:center;gap:10px}.auth-brand .brand-orbit{width:31px;height:31px}.auth-brand strong{font-size:16px}.auth-tabs{display:flex;margin:27px 0 30px;padding:4px;border:1px solid #282730;border-radius:10px;background:#0c0c10}.auth-tabs button{flex:1;padding:9px;border-radius:7px;background:transparent;color:#77737e;font-size:12px;font-weight:700}.auth-tabs button.active{background:#23222a;color:#fff}.auth-intro h2{margin:13px 0 7px;font-size:29px}.auth-intro p{margin:0 0 24px;color:#817e88;font-size:12px}.auth-modal form{display:flex;flex-direction:column;gap:14px}.auth-modal form>label{color:#bbb7c1;font-size:11px}.auth-modal input{margin-top:2px;padding:13px 14px;background:#0b0b0f;border-color:#292832}.auth-modal input:focus{border-color:#8c7cff;box-shadow:0 0 0 3px rgba(140,124,255,.1)}.signup-field{display:none!important}.signup-field.visible{display:flex!important}.auth-options{display:flex;justify-content:space-between;align-items:center}.auth-options label{flex-direction:row;align-items:center;color:#77737e;font-size:10px}.forgot{background:transparent;color:#9f91ff;font-size:10px}.auth-submit{padding:14px 16px;border-radius:10px;background:linear-gradient(90deg,#7765ef,#a778ec);color:#fff;font-weight:800}.auth-submit span{float:right}.auth-terms{text-align:center;color:#5e5b65;font-size:9px;margin:19px 0 0}
@media(max-width:900px){.landing-nav{padding:0 24px}.landing-links{display:none}.mobile-sign-in{display:block}.landing-hero{padding:38px 25px 60px;grid-template-columns:1fr}.hero-copy h1{letter-spacing:-3px}.hero-art{height:420px;margin-top:20px;transform:scale(.82);transform-origin:center top}.landing-bottom{margin:0 24px;grid-template-columns:auto 1fr}.landing-bottom p{max-width:none}.orbit-one{left:50%;transform:translateX(-50%) rotate(-24deg)}.center-mark{left:50%;transform:translateX(-50%)}.card-one{left:3%}.card-two{right:3%}}
@media(max-width:520px){.landing-nav{height:76px}.landing-brand small{display:none}.landing-hero{padding-top:30px}.hero-copy h1{font-size:47px;letter-spacing:-2.5px}.hero-copy>p{font-size:13px}.hero-art{height:330px;transform:scale(.64);width:150%;margin-left:-25%}.landing-bottom{padding-bottom:25px}.auth-modal{padding:28px 22px 23px}}

/* Header and live community-count refinement */
.landing-links{gap:30px}.download-tab{padding:8px 0;border:0;border-bottom:1px solid transparent;border-radius:0;background:transparent;color:#aaa7b1;font-size:11px;font-weight:700}.download-tab:hover{color:#fff;border-color:rgba(255,255,255,.35);transform:translateY(-2px)}.sign-in-button{display:flex;align-items:center;gap:9px;padding:11px 17px;border:1px solid rgba(157,137,255,.45);border-radius:999px;background:linear-gradient(115deg,rgba(126,103,244,.25),rgba(255,125,131,.12));color:#f4f0ff;font-size:11px;font-weight:800;box-shadow:inset 0 0 16px rgba(140,124,255,.08),0 7px 24px rgba(67,47,166,.14);transition:transform .25s,border-color .25s,background .25s,box-shadow .25s}.sign-in-button span{font-size:13px;transition:transform .25s}.sign-in-button:hover{transform:translateY(-3px);border-color:rgba(190,175,255,.85);background:linear-gradient(115deg,rgba(126,103,244,.42),rgba(255,125,131,.2));box-shadow:0 11px 32px rgba(96,72,210,.25)}.sign-in-button:hover span{transform:translate(2px,-2px)}
.mobile-nav-actions{display:none;align-items:center;gap:8px}.mobile-sign-in{padding:9px 12px;border:0;background:transparent;color:#d4d0da;font-weight:750}.mobile-download{width:38px;height:38px;border-radius:50%;background:#f4f0eb;color:#111116;font-size:17px;font-weight:900}
.center-mark{width:118px;height:118px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(12,11,17,.78);box-shadow:0 0 50px rgba(130,105,255,.24),inset 0 0 24px rgba(140,124,255,.08)}.center-mark:after{content:"";position:absolute;inset:7px;border:1px solid rgba(140,124,255,.18);border-radius:50%}.center-mark span{font:italic 24px Georgia,serif;color:#f7f3ee;letter-spacing:-1px}.center-mark small{position:static;margin-top:5px;color:#a99fd1;font-size:7px;font-weight:800;letter-spacing:2px}
@media(max-width:900px){.mobile-nav-actions{display:flex}.mobile-sign-in{display:block}}

/* Subtle motion keeps the interface alive without competing with the copy. */
.hero-copy>*{opacity:0;transform:translateY(16px);animation:hero-in .7s cubic-bezier(.2,.7,.2,1) forwards}.hero-copy>*:nth-child(2){animation-delay:.08s}.hero-copy>*:nth-child(3){animation-delay:.16s}.hero-copy>*:nth-child(4){animation-delay:.24s}.hero-copy>*:nth-child(5){animation-delay:.32s}.landing-nav{animation:nav-in .65s ease-out both}.orbit-one{animation:orbit-drift-one 12s ease-in-out infinite alternate}.orbit-two{animation:orbit-drift-two 10s ease-in-out infinite alternate}.orbit-three{animation:orbit-drift-three 8s ease-in-out infinite alternate}.card-one{animation:card-float 5s ease-in-out infinite}.card-two{animation:card-float 6s ease-in-out 1s infinite}.center-mark{animation:center-breathe 4s ease-in-out infinite}.orbit i{animation:signal-pulse 2.4s ease-in-out infinite}.orbit i:nth-child(2){animation-delay:.8s}.orbit i:nth-child(3){animation-delay:1.4s}.connection-line{animation:line-glow 3s ease-in-out infinite}.glow-one{animation:glow-drift 8s ease-in-out infinite alternate}
@keyframes hero-in{to{opacity:1;transform:none}}@keyframes nav-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}@keyframes orbit-drift-one{from{transform:rotate(-24deg) translate(0)}to{transform:rotate(-18deg) translate(8px,-9px)}}@keyframes orbit-drift-two{from{transform:rotate(18deg) translate(0)}to{transform:rotate(24deg) translate(-8px,7px)}}@keyframes orbit-drift-three{from{transform:rotate(44deg) scale(1)}to{transform:rotate(37deg) scale(1.05)}}@keyframes card-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes center-breathe{0%,100%{box-shadow:0 0 40px rgba(130,105,255,.18),inset 0 0 24px rgba(140,124,255,.08)}50%{box-shadow:0 0 70px rgba(130,105,255,.34),inset 0 0 32px rgba(140,124,255,.13)}}@keyframes signal-pulse{0%,100%{opacity:.5;transform:scale(.75)}50%{opacity:1;transform:scale(1.25)}}@keyframes line-glow{0%,100%{opacity:.3}50%{opacity:1}}@keyframes glow-drift{to{transform:translate(24px,18px) scale(1.12)}}
@media(max-width:900px){.orbit-one{animation-name:orbit-mobile-one}.center-mark{animation-name:center-mobile-breathe}@keyframes orbit-mobile-one{from{transform:translateX(-50%) rotate(-24deg)}to{transform:translateX(-50%) rotate(-18deg) translate(8px,-9px)}}@keyframes center-mobile-breathe{0%,100%{transform:translateX(-50%) scale(1);box-shadow:0 0 40px rgba(130,105,255,.18)}50%{transform:translateX(-50%) scale(1.03);box-shadow:0 0 70px rgba(130,105,255,.34)}}}
@media(prefers-reduced-motion:reduce){.landing *{animation:none!important;transition:none!important}.hero-copy>*{opacity:1;transform:none}}

/* Pointer interactions */
.landing-brand,.landing-links>a,.download-tab,.hero-cta,.member-note,.signal-card,.center-mark,.landing-bottom p,.avatar-stack span{transition:transform .25s ease,color .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease,opacity .25s ease}.landing-brand:hover{transform:translateY(-2px)}.landing-brand:hover .brand-orbit{transform:rotate(14deg);border-color:rgba(255,255,255,.34);box-shadow:0 0 24px rgba(140,124,255,.2)}.brand-orbit{transition:transform .35s ease,border-color .25s ease,box-shadow .25s ease}.landing-links>a{position:relative}.landing-links>a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:linear-gradient(90deg,#8c7cff,#ff7d83);transition:right .25s ease}.landing-links>a:hover{transform:translateY(-2px)}.landing-links>a:hover:after{right:0}.hero-cta:hover{transform:translateY(-3px);box-shadow:0 14px 35px rgba(140,124,255,.2)}.member-note:hover{transform:translateX(5px)}.member-note:hover .avatar-stack span{margin-left:-3px;box-shadow:0 0 18px rgba(140,124,255,.2)}.member-note:hover .avatar-stack span:first-child{margin-left:0}.signal-card:hover{animation-play-state:paused;transform:translateY(-8px) scale(1.035);border-color:rgba(170,150,255,.42);background:rgba(27,24,38,.9);box-shadow:0 18px 45px rgba(77,54,180,.24)}.center-mark:hover{animation-play-state:paused;transform:scale(1.06);border-color:rgba(186,170,255,.55);box-shadow:0 0 80px rgba(130,105,255,.4),inset 0 0 32px rgba(140,124,255,.15)}.landing-bottom p{padding:8px 10px;margin:-8px -10px;border-radius:9px}.landing-bottom p:hover{transform:translateY(-4px);color:#aaa5b2;background:rgba(255,255,255,.035)}.landing-bottom p:hover strong{color:#fff}.hero-art:hover .connection-line{height:2px;filter:drop-shadow(0 0 5px #8c7cff)}
@media(max-width:900px){.center-mark:hover{transform:translateX(-50%) scale(1.06)}}
.signal-card:hover,.center-mark:hover{animation:none}
.signup-mode .auth-options{display:none}.auth-modal label,.auth-modal input,.auth-tabs button,.auth-submit{transition:border-color .2s,background .2s,transform .2s,box-shadow .2s,color .2s}.auth-modal form>label:hover{color:#eee9f2}.auth-modal form>label:hover input{border-color:#454153;background:#0e0e14}.auth-tabs button:hover:not(.active){color:#c7c0d1;background:rgba(255,255,255,.025)}.auth-submit:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(108,78,224,.26)}
.auth-intro h2{color:transparent;background:linear-gradient(90deg,#f5f1ff,#b6a8ff 58%,#ff9ba1);background-clip:text;-webkit-background-clip:text}

/* OSense auth feedback: stays inside the dialog and away from input fields. */
.auth-modal { max-height: min(92vh, 900px); overflow-y: auto; overscroll-behavior: contain; }
.auth-form-error[hidden] { display: none !important; }
.auth-form-error { padding: 12px 14px; border: 1px solid rgba(255,120,144,.42); border-radius: 10px; background: rgba(160,38,70,.12); color: #ffd2dd; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.auth-submit:disabled { opacity: .65; cursor: wait; }

/* Live, inline username availability indicator */
.username-hint { display:block; margin-top:6px; color:#9c97aa; font-size:11px; font-weight:400; }
.username-status { display:block; min-height:18px; margin-top:5px; font-size:12px; font-weight:600; }
.username-status[data-state="available"] { color:#52d995; }
.username-status[data-state="taken"],.username-status[data-state="invalid"],.username-status[data-state="error"] { color:#ff8796; }
.username-status[data-state="checking"] { color:#b9acff; }
