/* RV_SOCIAL_MOBILE_APP_UI_POLISH_V90A_20260612 */

:root{
    --rv90a-red:#e10600;
    --rv90a-red2:#780200;
    --rv90a-ink:#101828;
    --rv90a-muted:#667085;
    --rv90a-line:#e6e9ef;
    --rv90a-soft:#f7f8fb;
    --rv90a-safe-bottom:env(safe-area-inset-bottom, 0px);
}

.rv90a-mobile-bottom-nav{
    display:none;
}

.rv90a-mobile-fab{
    display:none;
}

@media(max-width:860px){
    html{
        -webkit-text-size-adjust:100%;
        scroll-padding-bottom:110px;
    }

    body{
        width:100%!important;
        min-width:0!important;
        overflow-x:hidden!important;
        background:
            radial-gradient(circle at 12% 0%, rgba(225,6,0,.08), transparent 58vw),
            linear-gradient(180deg,#fff 0%,#f7f8fb 46%,#f2f4f7 100%)!important;
        padding-bottom:calc(84px + var(--rv90a-safe-bottom))!important;
    }

    body.rv90a-no-scroll{
        overflow:hidden!important;
    }

    *{
        max-width:100%;
        -webkit-tap-highlight-color:rgba(225,6,0,.12);
    }

    img,
    video,
    iframe{
        max-width:100%!important;
    }

    input,
    textarea,
    select,
    button{
        font-size:16px!important;
    }

    button,
    .btn,
    .rv-btn,
    a.button,
    input[type="submit"],
    input[type="button"]{
        min-height:44px!important;
        border-radius:999px!important;
        touch-action:manipulation;
    }

    input,
    textarea,
    select{
        min-height:44px!important;
        border-radius:16px!important;
    }

    textarea{
        line-height:1.35!important;
    }

    .top,
    header,
    .rv-top,
    .rv20c-top,
    .rv31-top,
    .rv41-top,
    .rv80-top,
    .rvs-top{
        position:sticky!important;
        top:0!important;
        z-index:25000!important;
        min-height:58px!important;
        backdrop-filter:blur(18px)!important;
        -webkit-backdrop-filter:blur(18px)!important;
        background:rgba(255,255,255,.94)!important;
        border-bottom:1px solid rgba(15,23,42,.08)!important;
    }

    .top .wrap,
    header .wrap,
    .rv-top .wrap,
    .rv20c-top .wrap,
    .rv31-top .wrap,
    .rv41-top .wrap,
    .rv80-top .wrap,
    .rvs-top .wrap{
        width:100%!important;
        max-width:100%!important;
        padding-left:12px!important;
        padding-right:12px!important;
        gap:8px!important;
    }

    nav,
    .nav,
    .rv-nav,
    .rv31-nav,
    .rv41-nav,
    .rv80-top-nav{
        overflow-x:auto!important;
        overscroll-behavior-x:contain!important;
        scrollbar-width:none!important;
        -webkit-overflow-scrolling:touch;
    }

    nav::-webkit-scrollbar,
    .nav::-webkit-scrollbar,
    .rv-nav::-webkit-scrollbar,
    .rv31-nav::-webkit-scrollbar,
    .rv41-nav::-webkit-scrollbar,
    .rv80-top-nav::-webkit-scrollbar{
        display:none!important;
    }

    .brand,
    .rv-brand,
    .logo-wrap{
        min-width:0!important;
    }

    .brand span,
    .rv-brand span{
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
    }

    .wrap,
    .page,
    .rv-page,
    main,
    .main,
    .rv20c-page,
    .rv41-page{
        width:100%!important;
        max-width:100%!important;
        padding-left:10px!important;
        padding-right:10px!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }

    .grid,
    .shell,
    .layout,
    .rv-grid,
    .rv20c-content,
    .rv41-grid,
    .rv80-layout,
    .feed-layout,
    .page-grid{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:12px!important;
    }

    aside,
    .left,
    .right,
    .leftcol,
    .rightcol,
    .sidebar,
    .side,
    .rail,
    .right-rail,
    .rv-right-rail,
    .rv80-sidebar,
    .rv80-right,
    .rv41-side,
    .rv41-rail{
        max-width:100%!important;
    }

    .rv-right-rail,
    .right-rail,
    .rv41-rail,
    .rv80-right{
        display:none!important;
    }

    .card,
    .panel,
    .post,
    .rv-card,
    .rv20c-card,
    .rv20c-post,
    .rv41-card,
    .rv41-reel,
    .conversation,
    .group,
    .page,
    .album,
    .media-card,
    .item{
        border-radius:20px!important;
        box-shadow:0 12px 34px rgba(15,23,42,.07)!important;
    }

    .card,
    .panel,
    .post,
    .rv-card,
    .rv20c-card,
    .rv20c-post,
    .rv41-card{
        margin-left:0!important;
        margin-right:0!important;
    }

    .composer,
    .post-composer,
    .rv-composer,
    .rv77-composer,
    .rv84a-composer{
        border-radius:20px!important;
        padding:12px!important;
    }

    .composer textarea,
    .post-composer textarea,
    .rv-composer textarea,
    textarea[name="body"],
    textarea[name="content"]{
        min-height:92px!important;
        max-height:190px!important;
    }

    .post img,
    .post video,
    .rv20c-post img,
    .rv20c-post video,
    .media img,
    .media video{
        border-radius:14px!important;
    }

    .post-actions,
    .rv-post-actions,
    .rv20c-post-actions{
        display:flex!important;
        gap:6px!important;
        overflow-x:auto!important;
        scrollbar-width:none!important;
        -webkit-overflow-scrolling:touch;
    }

    .post-actions::-webkit-scrollbar,
    .rv-post-actions::-webkit-scrollbar,
    .rv20c-post-actions::-webkit-scrollbar{
        display:none!important;
    }

    .post-actions > *,
    .rv-post-actions > *,
    .rv20c-post-actions > *{
        flex:0 0 auto!important;
    }

    .modal,
    .popup,
    .dialog,
    .rv-modal,
    .rv-popup,
    .rv-lightbox,
    .rv88a-lightbox,
    [role="dialog"]{
        max-width:100vw!important;
    }

    .modal-content,
    .popup-content,
    .dialog-content,
    .rv-modal-content,
    .rv-popup-content{
        width:calc(100vw - 18px)!important;
        max-height:calc(100dvh - 24px)!important;
        border-radius:22px!important;
        overflow:auto!important;
    }

    .rv83c-notify-root.rv83c-fixed,
    .rv84a-message-root.rv84a-fixed{
        top:9px!important;
    }

    .rv84a-message-root.rv84a-fixed{
        right:62px!important;
    }

    .rv83c-notify-root.rv83c-fixed{
        right:10px!important;
    }

    .rv83c-panel,
    .rv84a-message-panel{
        position:fixed!important;
        top:64px!important;
        right:10px!important;
        left:10px!important;
        width:auto!important;
        max-height:calc(100dvh - 82px)!important;
        border-radius:22px!important;
    }

    .rv41-viewer{
        top:0!important;
        padding:0!important;
    }

    .rv41-viewer-stage{
        width:100vw!important;
        height:100dvh!important;
        max-width:100vw!important;
        max-height:100dvh!important;
        border-radius:0!important;
        border:0!important;
    }

    .rv90a-mobile-bottom-nav{
        position:fixed;
        left:10px;
        right:10px;
        bottom:calc(8px + var(--rv90a-safe-bottom));
        z-index:45000;
        display:grid;
        grid-template-columns:repeat(5,1fr);
        gap:5px;
        padding:8px;
        border:1px solid rgba(15,23,42,.10);
        border-radius:26px;
        background:rgba(255,255,255,.92);
        box-shadow:0 22px 70px rgba(15,23,42,.22);
        backdrop-filter:blur(20px);
        -webkit-backdrop-filter:blur(20px);
    }

    .rv90a-mobile-bottom-nav a{
        min-width:0;
        min-height:52px;
        border-radius:19px;
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:3px;
        text-decoration:none;
        color:#667085;
        font-size:10px;
        font-weight:950;
        line-height:1;
    }

    .rv90a-mobile-bottom-nav a svg{
        width:20px;
        height:20px;
        fill:none;
        stroke:currentColor;
        stroke-width:2.25;
        stroke-linecap:round;
        stroke-linejoin:round;
    }

    .rv90a-mobile-bottom-nav a.active{
        color:#fff;
        background:linear-gradient(135deg,#ff342c,#780200);
        box-shadow:0 12px 28px rgba(225,6,0,.20);
    }

    .rv90a-mobile-fab{
        position:fixed;
        right:16px;
        bottom:calc(88px + var(--rv90a-safe-bottom));
        z-index:44000;
        width:54px;
        height:54px;
        border-radius:999px;
        display:grid;
        place-items:center;
        background:linear-gradient(135deg,#ff342c,#780200);
        color:#fff;
        text-decoration:none;
        box-shadow:0 18px 46px rgba(225,6,0,.28);
        border:3px solid rgba(255,255,255,.90);
    }

    .rv90a-mobile-fab svg{
        width:24px;
        height:24px;
        fill:none;
        stroke:currentColor;
        stroke-width:2.5;
        stroke-linecap:round;
        stroke-linejoin:round;
    }

    .rv90a-hide-mobile{
        display:none!important;
    }
}

@media(min-width:861px){
    .rv90a-mobile-only{
        display:none!important;
    }
}

@media(max-width:420px){
    .rv90a-mobile-bottom-nav{
        left:7px;
        right:7px;
        bottom:calc(7px + var(--rv90a-safe-bottom));
        padding:7px;
        border-radius:24px;
    }

    .rv90a-mobile-bottom-nav a{
        min-height:50px;
        font-size:9px;
        border-radius:17px;
    }

    .rv90a-mobile-bottom-nav a svg{
        width:19px;
        height:19px;
    }

    .rv90a-mobile-fab{
        width:52px;
        height:52px;
        right:13px;
    }
}
