/* Animux 1.4.0 — foundation, onboarding, account center, mobile dock */

/* Personal home */
.home140{display:grid;gap:28px}.home140-hello{display:grid;grid-template-columns:1fr auto;gap:22px;align-items:end;padding:clamp(24px,5vw,46px);border-radius:24px;background:linear-gradient(150deg,rgba(141,128,214,.15),rgba(18,24,41,.82) 42%,rgba(8,11,21,.92));border:1px solid var(--line2);box-shadow:0 30px 80px -44px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.04);overflow:hidden;position:relative}.home140-hello:before{content:'';position:absolute;width:440px;height:440px;right:-180px;top:-240px;border-radius:50%;background:radial-gradient(circle,rgba(141,128,214,.22),transparent 68%);pointer-events:none}.home140-hello h1{font-family:var(--serif);font-weight:normal;font-size:clamp(32px,5vw,54px);line-height:1.08;margin:4px 0 12px}.home140-hello p{color:var(--ink2);max-width:650px}.home140-quick{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.home140-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.home140-stat{padding:20px;border-radius:18px;background:linear-gradient(160deg,rgba(23,30,52,.92),rgba(13,18,33,.92));border:1px solid var(--line);display:grid;gap:4px;min-height:116px}.home140-stat strong{font-family:var(--serif);font-size:30px;font-weight:normal}.home140-stat span{font-size:13px;color:var(--ink3)}.home140-section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}.home140-section-head h2{font-family:var(--serif);font-weight:normal;font-size:24px}.home140-posts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.home140-posts .postcard{margin:0!important}.home140-empty{padding:28px;border:1px dashed var(--line2);border-radius:16px;color:var(--ink3);text-align:center}

/* Onboarding */
.onboarding140{max-width:820px;margin:2vh auto 0}.onboarding140-card{padding:clamp(26px,5vw,52px);border-radius:26px;background:linear-gradient(150deg,#171d33,#0d1223 72%);border:1px solid var(--line2);box-shadow:0 34px 100px -45px rgba(0,0,0,.95);position:relative;overflow:hidden}.onboarding140-card:before{content:'';position:absolute;inset:-180px auto auto -120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(141,128,214,.2),transparent 68%);pointer-events:none}.onboarding140-step{display:none;position:relative}.onboarding140-step.on{display:block;animation:viewin .55s var(--ease)}.onboarding140 h1,.onboarding140 h2{font-family:var(--serif);font-weight:normal;line-height:1.15}.onboarding140 h1{font-size:clamp(34px,6vw,56px);margin:6px 0 16px}.onboarding140 h2{font-size:clamp(27px,4vw,38px);margin:6px 0 14px}.onboarding140 .lead{margin-bottom:28px}.onboarding140-progress{display:flex;gap:8px;margin-bottom:28px}.onboarding140-progress i{height:3px;flex:1;border-radius:99px;background:rgba(255,255,255,.08)}.onboarding140-progress i.on{background:linear-gradient(90deg,var(--violet),#b5a9ed)}.onboarding140-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}.onboarding140-choice{border:1px solid var(--line2);background:rgba(12,16,29,.65);border-radius:17px;padding:20px 16px;text-align:left;color:var(--ink2);display:grid;gap:8px;transition:.25s}.onboarding140-choice:hover,.onboarding140-choice.on{border-color:rgba(170,157,235,.7);background:rgba(141,128,214,.12);color:var(--ink);transform:translateY(-2px)}.onboarding140-choice span{font-size:25px}.onboarding140-choice b{font-family:var(--serif);font-size:18px;font-weight:normal}.onboarding140-notify{display:grid;gap:10px;margin:24px 0}.onboarding140-notify label{display:flex;gap:12px;align-items:flex-start;padding:15px 17px;border:1px solid var(--line);border-radius:14px;background:rgba(8,11,21,.5);cursor:pointer}.onboarding140-notify input{margin-top:4px;accent-color:var(--violet)}.onboarding140-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:28px}

/* Account center */
.account140{max-width:900px;margin:0 auto}.account140-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px;align-items:start}.account140-nav{position:sticky;top:92px;display:grid;gap:5px;padding:10px;border:1px solid var(--line);border-radius:16px;background:rgba(14,19,34,.78);backdrop-filter:blur(12px)}.account140-nav button{border:0;background:none;color:var(--ink3);text-align:left;padding:11px 12px;border-radius:10px}.account140-nav button:hover,.account140-nav button.on{color:var(--ink);background:var(--violet-soft)}.account140-panel{display:none}.account140-panel.on{display:block;animation:viewin .4s var(--ease)}.account140-section{padding:24px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(160deg,rgba(23,30,52,.86),rgba(12,16,29,.9));margin-bottom:16px}.account140-section h3{font-family:var(--serif);font-weight:normal;font-size:22px;margin-bottom:8px}.account140-section p{color:var(--ink3);margin-bottom:18px}.account140-inline{display:flex;gap:10px;flex-wrap:wrap}.account140-danger{border-color:rgba(216,138,128,.28);background:linear-gradient(160deg,rgba(80,31,31,.28),rgba(20,14,20,.9))}.blocked140-list{display:grid;gap:10px}.blocked140-user{display:flex;align-items:center;gap:12px;padding:11px;border:1px solid var(--line);border-radius:12px}.blocked140-user img,.blocked140-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;background:var(--violet-soft);display:grid;place-items:center}.blocked140-user .sp{flex:1}.blocked140-user small{display:block;color:var(--ink3)}

/* Mobile application dock */
.animux-mobile-dock{display:none}.profile-toolbar .account140-link{white-space:nowrap}
@media(max-width:760px){
  body{padding-bottom:82px}.animux-mobile-dock{position:fixed;left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));z-index:65;display:grid;grid-template-columns:repeat(5,1fr);padding:7px;border:1px solid rgba(160,168,220,.22);border-radius:19px;background:rgba(8,11,21,.9);backdrop-filter:blur(18px);box-shadow:0 18px 46px rgba(0,0,0,.55)}.animux-mobile-dock a{min-width:0;display:grid;place-items:center;gap:2px;padding:7px 2px;border-radius:13px;color:var(--ink3);font-size:10px;line-height:1}.animux-mobile-dock a span{font-size:20px;line-height:1.1}.animux-mobile-dock a.here{background:var(--violet-soft);color:var(--ink)}.animux-mobile-dock a.write{margin-top:-24px;width:54px;height:54px;justify-self:center;border-radius:50%;background:linear-gradient(145deg,#5a4da5,#322d61);color:white;border:1px solid rgba(210,200,255,.3);box-shadow:0 12px 30px -8px rgba(110,95,210,.7)}.animux-mobile-dock a.write span{font-size:23px}.animux-mobile-dock a.write small{display:none}.home140-hello{grid-template-columns:1fr}.home140-quick{justify-content:flex-start}.home140-stats{grid-template-columns:1fr 1fr}.home140-stats .home140-stat:last-child{grid-column:1/-1}.home140-posts{grid-template-columns:1fr}.onboarding140-choices{grid-template-columns:1fr}.account140-grid{grid-template-columns:1fr}.account140-nav{position:static;display:flex;overflow-x:auto;scrollbar-width:none}.account140-nav::-webkit-scrollbar{display:none}.account140-nav button{white-space:nowrap}.account140-section{padding:19px}}
@media(max-width:390px){.animux-mobile-dock{left:5px;right:5px;padding:5px}.animux-mobile-dock a{font-size:9px}.animux-mobile-dock a span{font-size:18px}.home140-stats{grid-template-columns:1fr}.home140-stats .home140-stat:last-child{grid-column:auto}}

/* Animux 1.4.1 — the personalised dashboard is an addition to the original home. */
.home140-addon{margin-top:clamp(72px,9vw,128px);position:relative}
.home140-addon-divider{display:flex;align-items:center;gap:18px;margin:0 0 30px;color:var(--ink3);font-size:11px;letter-spacing:.22em;text-transform:uppercase}
.home140-addon-divider::before,.home140-addon-divider::after{content:'';height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--line2))}
.home140-addon-divider::after{background:linear-gradient(90deg,var(--line2),transparent)}
.home140-addon .home140{max-width:100%;}
@media(max-width:620px){.home140-addon{margin-top:68px}.home140-addon-divider{gap:10px;margin-bottom:22px}.home140-addon-divider span{white-space:nowrap;font-size:9px}}
/* Animux 1.4.2 — cinematic motion layer. Additive: preserves the original home. */

:root{
  --motion-fast:220ms;
  --motion-mid:520ms;
  --motion-slow:900ms;
  --motion-ease:cubic-bezier(.22,.75,.18,1);
}

/* ---------- SPA view entrance ---------- */
#view{position:relative;isolation:isolate}
#view > .animux-view-enter{
  animation:animuxViewEnter .52s var(--motion-ease) both;
}
@keyframes animuxViewEnter{
  from{opacity:0;transform:translate3d(0,12px,0);filter:blur(3px)}
  to{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}
}

/* ---------- Original sky: cinematic depth without replacing it ---------- */
#cielo{
  --sky-x:0px;
  --sky-y:0px;
  --sky-scroll:0px;
}
#cielo .sole{
  left:calc(50% + var(--sky-x));
  top:calc(47% + var(--sky-y) + var(--sky-scroll));
  transition:left .55s ease-out,top .55s ease-out;
}
#cielo .soleglow{
  left:calc(50% + (var(--sky-x) * .5));
  top:calc(47% + (var(--sky-y) * .5) + (var(--sky-scroll) * .5));
  transition:left .8s ease-out,top .8s ease-out;
}
#cielo .luna{
  left:calc(57% + var(--sky-x));
  top:calc(44% + var(--sky-y) + var(--sky-scroll));
  transition:left .65s ease-out,top .65s ease-out;
}
#cielo .lunaglow{
  left:calc(57% + (var(--sky-x) * .45));
  top:calc(44% + (var(--sky-y) * .45) + (var(--sky-scroll) * .45));
  transition:left .9s ease-out,top .9s ease-out;
}
#cielo .stella:nth-of-type(3n+1){animation-timing-function:linear}
#cielo .stella.viva:nth-of-type(2n){animation-duration:15s}
#cielo .stella.viva:nth-of-type(2n+1){animation-duration:24s}
#cielo .polve:nth-of-type(2n){filter:blur(.35px)}
#cielo .polve:nth-of-type(3n){opacity:.36}

/* Time-of-day atmosphere: subtle overlay only. */
body.animux-time-morning #cielo::after,
body.animux-time-day #cielo::after,
body.animux-time-evening #cielo::after,
body.animux-time-night #cielo::after{
  content:'';position:absolute;inset:0;pointer-events:none;z-index:0;mix-blend-mode:screen;opacity:.22;
}
body.animux-time-morning #cielo::after{background:linear-gradient(180deg,rgba(255,197,138,.16),transparent 48%)}
body.animux-time-day #cielo::after{background:linear-gradient(180deg,rgba(220,230,255,.08),transparent 55%)}
body.animux-time-evening #cielo::after{background:linear-gradient(180deg,rgba(181,114,175,.12),transparent 58%)}
body.animux-time-night #cielo::after{background:radial-gradient(circle at 65% 35%,rgba(126,131,220,.08),transparent 48%)}

/* ---------- Original scroll hands: more depth, same motion logic ---------- */
#mani .mano{filter:drop-shadow(0 22px 34px rgba(0,0,0,.26));transition:filter .4s ease}
#mani .maniglow{filter:blur(2px);will-change:opacity}
#mani .manidida{text-wrap:balance}

/* ---------- Reveal system ---------- */
.motion-reveal{
  opacity:0;
  transform:translate3d(0,18px,0) scale(.992);
  filter:blur(3px);
  transition:opacity .72s var(--motion-ease),transform .72s var(--motion-ease),filter .72s var(--motion-ease);
  transition-delay:var(--reveal-delay,0ms);
}
.motion-reveal.is-revealed{opacity:1;transform:none;filter:none}

/* ---------- Personal dashboard: premium motion ---------- */
.home140-addon{perspective:1200px}
.home140-hello{
  transform-style:preserve-3d;
  will-change:transform;
  transition:transform .65s var(--motion-ease),border-color .55s ease,box-shadow .55s ease;
}
.home140-hello::after{
  content:'';position:absolute;inset:-40% -20%;pointer-events:none;
  background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.055) 48%,transparent 61%);
  transform:translateX(-55%) rotate(4deg);
  animation:home142Sheen 11s ease-in-out infinite;
}
@keyframes home142Sheen{0%,72%{transform:translateX(-55%) rotate(4deg);opacity:0}80%{opacity:.75}100%{transform:translateX(55%) rotate(4deg);opacity:0}}
.home140-hello.motion-active{box-shadow:0 34px 92px -44px rgba(0,0,0,.94),0 0 54px -32px rgba(141,128,214,.5),inset 0 1px 0 rgba(255,255,255,.055)}
.home140-hello h1 .motion-name{display:inline-block;animation:home142NameIn .85s .18s var(--motion-ease) both}
@keyframes home142NameIn{from{opacity:0;transform:translateY(8px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}

.home140-quick .btn.primary{position:relative;overflow:hidden;isolation:isolate;box-shadow:0 10px 30px -16px rgba(120,100,220,.75);animation:home142ButtonBreathe 4.8s ease-in-out infinite}
.home140-quick .btn.primary::after{content:'';position:absolute;top:-40%;bottom:-40%;width:34%;left:-55%;transform:skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:home142ButtonSweep 8.5s 1.2s ease-in-out infinite;pointer-events:none}
.home140-quick .btn.primary .motion-pen{display:inline-block;transform-origin:70% 80%;animation:home142Pen 5s ease-in-out infinite}
@keyframes home142ButtonBreathe{0%,100%{box-shadow:0 10px 30px -16px rgba(120,100,220,.6)}50%{box-shadow:0 15px 38px -12px rgba(120,100,220,.95)}}
@keyframes home142ButtonSweep{0%,74%{left:-55%;opacity:0}80%{opacity:1}96%,100%{left:125%;opacity:0}}
@keyframes home142Pen{0%,78%,100%{transform:rotate(0) translateY(0)}84%{transform:rotate(-8deg) translateY(-1px)}90%{transform:rotate(5deg) translateY(1px)}}

.home140-stat{position:relative;overflow:hidden;transition:transform .35s var(--motion-ease),border-color .35s,box-shadow .35s}
.home140-stat::after{content:'';position:absolute;inset:auto 18px 0;height:1px;background:linear-gradient(90deg,transparent,rgba(169,157,235,.65),transparent);transform:scaleX(0);transition:transform .4s var(--motion-ease)}
.home140-stat:hover{transform:translateY(-4px);border-color:rgba(169,157,235,.32);box-shadow:0 22px 46px -28px rgba(0,0,0,.92)}
.home140-stat:hover::after{transform:scaleX(1)}
.home140-stat strong.motion-count-pop{animation:home142CountPop .48s var(--motion-ease)}
@keyframes home142CountPop{0%{transform:scale(.88);opacity:.45}65%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}

.home140-posts .postcard{position:relative;overflow:hidden;transition:transform .48s var(--motion-ease),box-shadow .48s,border-color .48s}
.home140-posts .postcard::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--card-x,50%) var(--card-y,50%),rgba(167,151,235,.11),transparent 36%);opacity:0;transition:opacity .35s}
.home140-posts .postcard:hover::after{opacity:1}
.home140-posts .postcard:hover{transform:translateY(-6px) rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg));border-color:rgba(169,157,235,.3);box-shadow:0 30px 64px -30px rgba(0,0,0,.95),0 0 45px -30px rgba(141,128,214,.6)}

/* Home original cards reveal in sequence without changing their style. */
.homegrid > *{transform-origin:center bottom}

/* Toast enters from the side on desktop, bottom on mobile. */
@media(min-width:761px){
  #toast{left:auto;right:24px;bottom:24px;transform:translateX(24px);max-width:min(380px,calc(100vw - 48px));text-align:left}
  #toast.on{transform:translateX(0)}
}

/* ---------- Mobile: lighter motion, fluid layout ---------- */
@media(max-width:760px){
  #cielo{--sky-x:0px!important;--sky-y:0px!important}
  .home140-hello::after{animation-duration:15s;opacity:.6}
  .home140-quick .btn.primary{animation-duration:6s}
  .home140-posts .postcard:hover{transform:none}
  .motion-reveal{transform:translate3d(0,12px,0);filter:blur(2px)}
}
@media(max-width:430px){
  .home140-hello{padding:24px 20px;border-radius:20px}
  .home140-hello h1{font-size:clamp(31px,11vw,44px)}
  .home140-quick{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .home140-quick .btn{min-width:0;padding-inline:12px;text-align:center;justify-content:center}
  .home140-stat{min-height:104px;padding:17px}
}
@media(max-width:350px){
  .home140-quick{grid-template-columns:1fr}
}

/* Respect accessibility and battery-conscious settings. */
@media(prefers-reduced-motion:reduce){
  #view > .animux-view-enter,.motion-reveal,.home140-hello h1 .motion-name,.home140-quick .btn.primary,.home140-quick .btn.primary::after,.home140-quick .btn.primary .motion-pen,.home140-hello::after{animation:none!important;transition:none!important;transform:none!important;filter:none!important;opacity:1!important}
  #cielo .sole,#cielo .luna,#cielo .soleglow,#cielo .lunaglow{transition:none!important}
}
/* Animux 1.5.0 — stability and pagination UI */
.load-more-wrap{display:flex;justify-content:center;margin:24px auto 8px;max-width:720px}.load-more-wrap .btn{min-width:220px}.remember-login{display:flex;align-items:center;gap:9px;margin:-2px 0 18px;color:var(--ink2);font-size:13px;cursor:pointer}.remember-login input{width:17px;height:17px;accent-color:var(--violet)}.profile-own-counts150{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 18px}.profile-own-counts150 span{padding:13px 14px;border:1px solid rgba(185,175,245,.13);background:rgba(255,255,255,.025);border-radius:14px;color:var(--ink2);font-size:12px;text-align:center}.profile-own-counts150 b{display:block;color:var(--ink);font-size:19px;line-height:1.1;margin-bottom:4px}.vuoto .tiny-spinner{display:inline-block;margin-right:8px;vertical-align:-2px}.load-more-wrap .quiet{margin-left:5px}.profile-page .load-more-wrap{margin-top:18px}
@media(max-width:680px){.profile-own-counts150{grid-template-columns:1fr}.profile-own-counts150 span{display:flex;align-items:center;justify-content:space-between;text-align:left}.profile-own-counts150 b{display:inline;margin:0;font-size:17px}.load-more-wrap{padding:0 4px}.load-more-wrap .btn{width:100%;min-width:0}}
