:root{--safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--kb-inset:0px;--ease-out-cubic:cubic-bezier(0.33,1,0.68,1);--tap-min:2.75rem}html{touch-action:manipulation}.bottom-nav,.bottom-nav-label,.button,.chat-room-topbar,.chip,.scene-choice-bubble,.site-header,[data-pressable]{-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (hover:none) and (pointer:coarse){.bottom-nav a,.button,.character-card,.chat-assistant-trigger,.chat-room-aside-btn,.chat-room-back,.chat-send-button,.chip,.discovery-card,.scene-choice-bubble,.theme-chat-card,[data-pressable]{transition:transform .11s var(--ease-out-cubic)}.bottom-nav a:active,.button:active,.character-card:active,.chat-assistant-trigger:active:not(:disabled),.chat-room-aside-btn:active,.chat-room-back:active,.chat-send-button:active:not(:disabled),.chip:active,.discovery-card:active,.scene-choice-bubble:active,.theme-chat-card:active,[data-pressable]:active{transform:scale(.96)}}@media (max-width:760px){.chat-assistant-trigger,.chat-send-button,.chat-send-button.button.primary{width:var(--tap-min);height:var(--tap-min);min-width:var(--tap-min);min-height:var(--tap-min)}.chat-send-button svg{width:1.15rem;height:1.15rem}.chat-assistant-avatar{width:2.25rem;height:2.25rem}.chat-room-aside-btn,.chat-room-back{width:var(--tap-min);height:var(--tap-min)}}.chat-room{padding-bottom:var(--kb-inset);transition:padding-bottom .18s var(--ease-out-cubic)}html[data-keyboard=open] .bottom-nav{transform:translateY(100%);transition:transform .18s var(--ease-out-cubic)}@keyframes rovelPageEnter{0%{opacity:0}to{opacity:1}}.page-transition{animation:rovelPageEnter .13s var(--ease-out-cubic)}@media (prefers-reduced-motion:reduce){.page-transition{animation:none}}@keyframes rovelSkeletonPulse{0%{opacity:.3}to{opacity:.65}}.skeleton-box{border-radius:.75rem;background:#161a2b;animation:rovelSkeletonPulse 1.05s var(--ease) infinite alternate}@media (prefers-reduced-motion:reduce){.skeleton-box{animation:none;opacity:.45}}.skeleton-card{align-items:stretch}.skeleton-card .skeleton-box.poster{position:relative;width:100%;aspect-ratio:5/7;border-radius:.9rem;overflow:hidden}.skeleton-card-copy{position:absolute;left:.7rem;right:.7rem;bottom:.7rem;display:flex;flex-direction:column;gap:.42rem}.skeleton-card-copy .bar{border-radius:.3rem;background:rgba(226,232,240,.22)}.skeleton-card-copy .bar.title{height:.78rem;width:68%}.skeleton-card-copy .bar.subtitle{height:.6rem;width:44%}.skeleton-section-head .skeleton-box.heading{height:1.5rem;width:8rem;border-radius:.4rem}.skeleton-page-title{height:1.5rem;width:40%;max-width:14rem;border-radius:.375rem}.skeleton-line{height:.875rem;width:100%;border-radius:.375rem}.skeleton-line.short{width:62%}.skeleton-cta{height:3rem;border-radius:var(--radius-md)}.skeleton-rows{display:grid;grid-gap:.75rem;gap:.75rem}.skeleton-row{height:5rem;border-radius:var(--mobile-card-radius,1.05rem)}.skeleton-search-bar{width:100%;max-width:36rem;height:2.7rem;border-radius:999px}.skeleton-detail-cover{position:relative;width:100%;min-height:72svh;overflow:hidden;isolation:isolate;background:#0a0b12}.skeleton-cover-fill{position:absolute;inset:0;border-radius:0}.skeleton-detail-foot{position:absolute;left:0;right:0;bottom:0;z-index:1;display:flex;flex-direction:column;gap:.7rem;padding-bottom:1.9rem}.skeleton-detail-foot .skeleton-page-title{height:1.8rem;width:58%;max-width:18rem}.skeleton-detail-foot .skeleton-cta{margin-top:.35rem;border-radius:999px}.skeleton-immersive{position:fixed;inset:0;z-index:80;background:#050610}img[data-fade]{opacity:0;transition:opacity .22s var(--ease-out-cubic)}img[data-fade=ready]{opacity:1}@media (prefers-reduced-motion:reduce){img[data-fade]{opacity:1;transition:none}}.pull-refresh-indicator{position:fixed;top:calc(var(--safe-t) + .5rem);left:50%;z-index:70;display:grid;place-items:center;width:2.25rem;height:2.25rem;border:1px solid var(--line-soft);border-radius:999px;background:var(--bg-soft);box-shadow:0 8px 24px rgba(0,0,0,.35);color:var(--primary);pointer-events:none;will-change:transform,opacity}.pull-refresh-indicator svg{width:1.15rem;height:1.15rem}.pull-refresh-indicator[data-spinning=true] svg{animation:rovelSpin .7s linear infinite}@keyframes rovelSpin{to{transform:rotate(1turn)}}@media (display-mode:standalone){body,html{overscroll-behavior:none}.ios-install-sheet,.pwa-install-prompt{display:none!important}.bottom-nav{padding-bottom:calc(.5rem + var(--safe-b))}}.ios-install-sheet{position:fixed;right:.75rem;bottom:calc(4.9rem + var(--safe-b));left:.75rem;z-index:90;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:.75rem;gap:.75rem;padding:.85rem .9rem;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(17,19,31,.96);box-shadow:var(--shadow-lift);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.ios-install-sheet strong{display:block;color:var(--text);font-size:.9rem;font-weight:800}.ios-install-sheet span{display:block;margin-top:.2rem;color:var(--muted);font-size:.78rem;line-height:1.5}.ios-install-sheet .ios-install-share{display:inline-flex;vertical-align:-.15em;width:.95rem;height:.95rem;color:var(--accent)}.ios-install-dismiss{display:grid;place-items:center;width:var(--tap-min);height:var(--tap-min);padding:0;border:0;border-radius:999px;background:transparent;color:var(--muted);font-size:1.25rem;line-height:1;cursor:pointer}.home-page .character-card--stacked{display:flex;flex-direction:column;border:0;background:transparent;box-shadow:none;overflow:visible;border-radius:0}.home-page .character-card--stacked:hover{transform:none;border-color:transparent;box-shadow:none}.home-page .character-card--stacked:after{content:none}.home-page .character-card--stacked .character-poster{aspect-ratio:3/4;min-height:0;flex:0 0 auto;border-radius:.85rem}.home-page .character-card--stacked .character-poster:after,.home-page .character-card--stacked .character-poster:before{content:none}.home-page .character-card--stacked:hover .poster-image{transform:scale(1.04)}.home-page .character-card--stacked .character-poster-copy{position:static;left:auto;right:auto;bottom:auto;padding:.5rem .1rem .15rem;gap:.2rem}.home-page .character-card--stacked .poster-title-row h3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:1;font-size:.98rem;line-height:1.2;text-shadow:none}.home-page .character-card--stacked .character-card-situation,.home-page .character-card--stacked .character-poster-copy p,.home-page .character-card--stacked .character-poster-copy q{text-shadow:none}.home-page .character-card--stacked .character-card-tags{margin-top:.28rem}.home-page .character-card--stacked .character-card-tags span{background:rgba(255,255,255,.08);color:rgba(226,232,240,.82);text-shadow:none}