.chars{z-index:calc(var(--z-sheet) + 4);backdrop-filter:blur(56px)saturate(140%);opacity:0;background:radial-gradient(120% 90% at 30% 55%,#140c238c,#140c23db 75%),#140c234d;flex-direction:column;transition:opacity .24s;display:flex;position:absolute;inset:0;overflow:hidden}.chars.is-open{opacity:1}.chars-open #mapa,.chars-open #mapa-real{opacity:0;transition:opacity .32s}.chars-close{top:calc(var(--top) + env(safe-area-inset-top));right:var(--edge);z-index:5;background:#ffffff1f;width:44px;height:44px;position:absolute}.chars-stage{flex:1;min-height:0;position:relative}.chars-item{padding:calc(var(--top) + 70px + env(safe-area-inset-top)) 100px 12px;opacity:0;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:24px;display:grid;position:absolute;inset:0}.chars-item.is-active{opacity:1}.chars-item.is-leaving{opacity:0;transition:opacity .18s}.chars-collage{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:radial-gradient(70% 70% at 50% 45%,#000 40%,#0000 100%);mask-image:radial-gradient(70% 70% at 50% 45%,#000 40%,#0000 100%)}.chars-collage img{opacity:0;filter:saturate(.9)brightness(.8);border-radius:14px;width:34vw;max-width:560px;height:auto;position:absolute;box-shadow:0 30px 60px -20px #0a0418cc}.chars-collage .cg-0{width:22vw;top:9%;left:5%;rotate:-5deg}.chars-collage .cg-1{width:26vw;top:6%;right:3%;rotate:4deg}.chars-collage .cg-2{width:18vw;bottom:8%;right:5%;rotate:-3deg}.is-active .chars-collage img{animation:cg-in .9s var(--ease-out) both}.is-active .chars-collage .cg-1{animation-delay:.12s}.is-active .chars-collage .cg-2{animation-delay:.24s}@keyframes cg-in{0%{opacity:0;translate:0 18px}to{opacity:.42;translate:0}}.chars-big{z-index:1;justify-content:center;align-items:flex-end;height:100%;min-height:0;margin:0;display:flex;position:relative}.chars-big:before{content:"";background:radial-gradient(closest-side, color-mix(in srgb, var(--tint) 55%, transparent), transparent);filter:blur(10px);border-radius:50%;width:70%;height:40%;position:absolute;bottom:0;left:50%;translate:-50% 20%}.chars-big img{object-fit:contain;object-position:50% 100%;filter:drop-shadow(0 24px 40px #0a041899);opacity:0;-webkit-mask-composite:source-in;width:auto;max-width:100%;height:auto;max-height:100%;position:relative;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 4% 96%,#0000 100%),linear-gradient(#000 0 88%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 4% 96%,#0000 100%),linear-gradient(#000 0 88%,#0000 100%);mask-composite:intersect}.chars-open .map-brand,.chars-open .map-dock>*,.chars-open .map-corner,.chars-open .map-side,.chars-open .map-find,.chars-open .tool-hint,.chars-open .leaflet-control{visibility:hidden}.chars-ini{aspect-ratio:1;letter-spacing:-.05em;color:#fff;background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--tint) 70%, transparent), transparent 70%);opacity:0;border-radius:50%;place-items:center;width:min(60vh,100%);font-size:clamp(4rem,12vw,9rem);font-style:italic;font-weight:800;display:grid;position:relative}.is-active .chars-big img,.is-active .chars-ini{animation:big-in .56s var(--ease-out) 60ms both}.chars-item[data-dir=prev].is-active .chars-big img{animation-name:big-in-prev}@keyframes big-in{0%{opacity:0;translate:24px 12px;scale:.96}to{opacity:1;translate:0;scale:1}}@keyframes big-in-prev{0%{opacity:0;translate:-24px 12px;scale:.96}to{opacity:1;translate:0;scale:1}}.chars-copy{z-index:2;max-width:520px;position:relative}.chars-copy>*{opacity:0}.is-active .chars-copy>*{animation:copy-in .48s var(--ease-out) both}.is-active .chars-copy>:nth-child(2){animation-delay:60ms}.is-active .chars-copy>:nth-child(3){animation-delay:.11s}.is-active .chars-copy>:nth-child(4){animation-delay:.15s}.is-active .chars-copy>:nth-child(5){animation-delay:.19s}.is-active .chars-copy>:nth-child(6){animation-delay:.23s}.is-active .chars-copy>:nth-child(7){animation-delay:.27s}@keyframes copy-in{0%{opacity:0;translate:0 10px}to{opacity:1;translate:0}}.chars-copy .sec-label{color:color-mix(in srgb, var(--tint) 70%, #fff)}.chars-copy .sec-label:before{background:var(--tint)}.chars-name{letter-spacing:-.04em;background:linear-gradient(180deg, #fff 0%, #fff 45%, color-mix(in srgb, var(--tint) 70%, #fff) 100%);color:#0000;text-wrap:balance;-webkit-background-clip:text;background-clip:text;margin:0 0 .25rem;padding-right:.06em;font-size:clamp(2.6rem,2rem + 3.2vw,5rem);font-style:italic;font-weight:800;line-height:.98}.chars-aka{color:var(--accent-hi);margin:0 0 .35rem;font-size:1rem;font-weight:700}.chars-role{color:#fff;margin:0 0 .9rem;font-size:1.02rem;font-weight:650}.chars-bio{color:var(--fg-2);max-width:46ch;margin:0 0 1.2rem;font-size:.95rem;line-height:1.6}.chars-actions{flex-wrap:wrap;gap:8px;display:flex}.chars-actions .btn{min-height:42px;padding:0 16px;font-size:.88rem}.chars-credit{color:var(--muted);margin:.9rem 0 0;font-size:.7rem}.chars-strip-wrap{z-index:3;padding:0 var(--edge) calc(12px + env(safe-area-inset-bottom));flex:none;position:relative}.chars-strip{scrollbar-width:none;scroll-snap-type:x proximity;justify-content:center;gap:10px;max-width:100%;margin:-12px auto 0;padding:20px 10px 0;list-style:none;display:flex;overflow-x:auto}.chars-strip::-webkit-scrollbar{display:none}.chars-strip li{scroll-snap-align:center;flex:none}.is-open .chars-strip li{animation:strip-in .42s var(--ease-out) calc(.12s + var(--i) * 45ms) both}@keyframes strip-in{0%{opacity:0;translate:0 16px}to{opacity:1;translate:0}}.chars-strip button{cursor:pointer;color:#ffffffb8;width:104px;font:700 .72rem/1.2 var(--font);letter-spacing:.02em;transition:transform .26s var(--ease-out), background-color .2s ease, box-shadow .2s ease, color .2s ease;background:#ffffff0f;border:0;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:8px 6px;display:flex;position:relative;box-shadow:inset 0 0 0 1px #ffffff14}.chars-strip img,.chars-strip-ini{aspect-ratio:1;object-fit:contain;object-position:50% 100%;filter:brightness(.78)saturate(.85);width:100%;height:auto;transition:filter .22s ease, transform .26s var(--ease-out);border-radius:10px}.chars-strip-ini{background:radial-gradient(70% 60% at 50% 100%, color-mix(in srgb, var(--tint) 60%, transparent), transparent 75%);place-items:center;font-size:1.6rem;font-style:italic;font-weight:800;display:grid}.chars-strip button[aria-selected=true]{background:color-mix(in srgb, var(--tint) 28%, #ffffff0f);color:#fff;box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--tint) 80%, #fff)}.chars-strip button[aria-selected=true] img{filter:none}.chars-strip button:active{transform:scale(.96)}@media (hover:hover) and (pointer:fine){.chars-strip button:hover{color:#fff;background:#ffffff24;transform:translateY(-8px)scale(1.06)}.chars-strip button:hover img{filter:none;transform:scale(1.06)}}.chars-strip button:focus-visible{outline:2px solid var(--accent-hi);outline-offset:2px;color:#fff;transform:translateY(-8px)scale(1.06)}@media (width<=899px){.chars-item{padding:calc(var(--top) + 52px + env(safe-area-inset-top)) 16px 6px;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:1fr;gap:8px}.chars-big{order:0}.chars-copy{text-align:center;order:1;max-width:none;padding:0 4px}.chars-copy .sec-label{justify-content:center}.chars-name{font-size:clamp(2rem,9vw,2.6rem)}.chars-bio{display:none}.chars-role{margin-bottom:.6rem;font-size:.9rem}.chars-actions{justify-content:center}.chars-actions .btn{min-height:38px;padding:0 12px;font-size:.8rem}.chars-credit,.chars-ext{display:none}.chars-collage img{width:56vw}.chars-collage .cg-0{top:4%;left:-8%}.chars-collage .cg-1{top:10%;right:-8%}.chars-collage .cg-2{display:none}@keyframes cg-in{0%{opacity:0;translate:0 18px}to{opacity:.22;translate:0}}.chars-strip{justify-content:flex-start;gap:6px;padding-bottom:2px}.chars-strip button{border-radius:12px;width:72px;padding:5px 4px 6px;font-size:.64rem}}@media (width<=899px) and (height<=700px){.chars-copy .chars-role,.chars-aka{display:none}}@media (width<=899px) and (height<=500px) and (orientation:landscape){.chars-item{padding:calc(var(--top) + env(safe-area-inset-top)) calc(var(--edge) + 48px) 4px var(--edge);grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px}.chars-copy{text-align:left}.chars-copy .sec-label,.chars-actions{justify-content:flex-start}.chars-strip{justify-content:center}.chars-strip button{width:60px}}.map-app.chars-open .sc-pill,.map-app.locais-open .sc-pill,.map-app.chars-open .scenes{visibility:hidden}@media (prefers-reduced-motion:reduce){.chars,.chars-item,.chars-strip button,.chars-strip img{transition:none!important}.chars-item.is-active *,.is-open .chars-strip li{opacity:1!important;animation:none!important}.is-active .chars-collage img{opacity:.42!important}.chars-strip button:hover{transform:none}}@media (prefers-reduced-transparency:reduce){.chars{backdrop-filter:none;background:#1a1230}}.char-stage{isolation:isolate;background:radial-gradient(70% 60% at 50% 100%, color-mix(in srgb, var(--tint) 40%, transparent), transparent 70%), linear-gradient(180deg, #221640 0%, #4b2463 45%, #8a3a86 100%);min-height:480px;box-shadow:inset 0 0 0 1px var(--line);border-radius:20px;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:end;gap:24px;margin:0 0 1.5rem;padding:24px 24px 0;display:grid;position:relative;overflow:hidden}.char-stage:after{content:"";z-index:0;pointer-events:none;opacity:.5;background:var(--grid);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 75%);mask-image:linear-gradient(#000,#0000 75%)}.char-stage .chars-collage{-webkit-mask-image:none;mask-image:none}.char-stage .chars-collage img{animation:cg-in .9s var(--ease-out) both;width:34%}.char-stage .chars-collage .cg-0{top:6%;left:2%}.char-stage .chars-collage .cg-1{width:40%;animation-delay:.12s;top:4%;right:2%}.char-stage .chars-big{height:460px}.char-stage .chars-big img,.char-stage .chars-ini{animation:big-in .56s var(--ease-out) 60ms both}.char-stage .chars-copy{padding-bottom:28px}.char-stage .chars-copy>*{animation:copy-in .48s var(--ease-out) both}.char-stage .chars-copy>:nth-child(2){animation-delay:60ms}.char-stage .chars-copy>:nth-child(3){animation-delay:.11s}.char-stage .chars-copy>:nth-child(4){animation-delay:.15s}.char-stage .chars-copy>:nth-child(5){animation-delay:.19s}.char-stage .chars-name{font-size:clamp(2.4rem,1.6rem + 3vw,4.2rem)}.char-page .chars-strip{justify-content:flex-start}.char-page .chars-strip a{color:#ffffffb8;width:104px;font:700 .72rem/1.2 var(--font);transition:transform .26s var(--ease-out), background-color .2s ease, color .2s ease;background:#ffffff0f;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:8px 6px;text-decoration:none;display:flex;box-shadow:inset 0 0 0 1px #ffffff14}.char-page .chars-strip li{animation:strip-in .42s var(--ease-out) calc(.12s + var(--i) * 45ms) both}@media (hover:hover) and (pointer:fine){.char-page .chars-strip a:hover{color:#fff;background:#ffffff24;transform:translateY(-8px)scale(1.06)}.char-page .chars-strip a:hover img{filter:none;transform:scale(1.06)}}@media (width<=760px){.char-stage{grid-template-columns:1fr;gap:8px;min-height:0;padding:16px 16px 0}.char-stage .chars-big{height:320px}.char-stage .chars-copy{text-align:center;padding-bottom:20px}.char-stage .chars-copy .sec-label,.char-stage .chars-actions{justify-content:center}.char-stage .chars-collage img{width:70%}}@media (prefers-reduced-motion:reduce){.char-stage *,.char-page .chars-strip li,.char-page .chars-strip a{opacity:1!important;transition:none!important;animation:none!important}}
