:root{--bg:#05070d;--panel:#0d111a;--panel2:#131927;--panel3:#171e2c;--text:#f8fbff;--muted:#9ca6b7;--brand:#ff2f7d;--cyan:#13e6c8;--line:#242b39;--danger:#ff5c7a;--shadow:0 22px 60px #0008}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:radial-gradient(circle at 15% 0,#18223b 0,#070a11 34%,#03050a 100%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,Segoe UI,Arial;overflow:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer;border:0}.hidden{display:none!important}.muted{color:var(--muted)}.brand-pink{color:var(--brand)}.auth{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(450px,100%);background:linear-gradient(180deg,#121827e8,#0b0f18e8);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:28px;padding:30px}.logo{font-size:38px;font-weight:950;letter-spacing:-1.2px}.logo-mark{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--brand);margin-right:8px;font-size:18px}.tagline{color:var(--muted);margin:8px 0 22px}.auth-card input,.auth-card textarea,.composer input,.composer textarea,.composer select,.modal input,.modal textarea,.modal select,.search,.soft-input{width:100%;background:#0a0f18;color:var(--text);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:7px 0;outline:none}.primary{background:linear-gradient(135deg,var(--brand),#ff4da0);color:white;padding:12px 16px;border-radius:12px;font-weight:850;box-shadow:0 12px 28px #ff2f7d30}.ghost{background:transparent;color:var(--muted);padding:10px;border-radius:12px}.ghost:hover{background:#151b28;color:white}.layout{height:100vh;display:grid;grid-template-columns:198px minmax(760px,1fr) 330px;gap:18px;padding:0}.sidebar{background:#05080e;border-right:1px solid #101622;padding:22px 16px;display:flex;flex-direction:column;min-height:0}.side-logo{font-size:24px;font-weight:950;margin:6px 2px 22px;display:flex;align-items:center;gap:8px}.nav{display:grid;gap:5px}.nav button{width:100%;display:flex;gap:14px;align-items:center;text-align:left;background:transparent;color:var(--text);padding:13px 12px;border-radius:9px;font-weight:750;font-size:16px}.nav button.active,.nav button:hover{background:#171c27}.create-btn{margin:28px 2px 14px;width:calc(100% - 4px)}.me-card{margin-top:auto;border-top:1px solid var(--line);padding-top:14px;display:flex;gap:10px;align-items:center}.avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;background:linear-gradient(135deg,#31405d,#ff2f7d);border:1px solid #ffffff1d}.avatar.lg{width:76px;height:76px}.main{display:grid;grid-template-rows:76px 1fr;min-width:0}.topbar{display:flex;align-items:center;gap:18px;padding:14px 0 8px}.topbar .search{max-width:760px;margin:0;background:#111722}.top-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.icon-btn{width:36px;height:36px;border-radius:12px;background:transparent;color:#fff;font-size:18px}.icon-btn:hover{background:#151b28}.page{min-height:0;overflow:auto;padding:0 0 18px}.tabs{display:flex;gap:10px;margin:0 0 16px;overflow:auto;padding-bottom:2px}.chip{display:inline-flex;align-items:center;gap:7px;background:#111722;color:white;border:1px solid #202839;border-radius:9px;padding:13px 18px;white-space:nowrap;font-size:16px}.chip.active{background:var(--brand);border-color:var(--brand)}.masonry{columns:4 275px;column-gap:14px}.meme-card{break-inside:avoid;background:#0f141f;border:1px solid #141b29;border-radius:9px;overflow:hidden;margin:0 0 14px;box-shadow:0 14px 32px #0004}.meme-title{font-weight:950;font-size:17px;line-height:1.25;padding:12px 12px 0}.media-box{position:relative;background:#020305;height:310px;display:grid;place-items:center;overflow:hidden;cursor:pointer}.media{width:100%;height:100%;display:block;background:#000;object-fit:contain}.media.video{min-height:0}.play{position:absolute;inset:0;display:grid;place-items:center;font-size:36px;text-shadow:0 4px 18px #000}.post-foot{padding:9px 10px 12px}.post-user{display:flex;align-items:center;gap:8px}.post-user b{font-size:12px}.mini-avatar{width:25px;height:25px;border-radius:50%;object-fit:cover;background:#25304a}.actions{display:flex;gap:4px;align-items:center;flex-wrap:wrap;margin-top:8px}.react{background:#141b29;color:white;border-radius:999px;padding:7px 9px;font-size:13px}.react.active{background:#2a1830;color:#fff}.tagline-tags{color:var(--cyan);font-weight:750;font-size:13px}.comment-preview{border-top:1px solid var(--line);margin-top:8px;padding-top:6px;max-height:88px;overflow:auto}.comment-row{font-size:13px;margin:5px 0}.comment-actions{display:inline-flex;gap:4px;margin-left:5px}.comment-actions button{background:#171e2c;color:#fff;border-radius:99px;padding:2px 6px;font-size:11px}.right{background:#080c13;border-left:1px solid #101622;min-height:0;overflow:auto;padding:76px 16px 16px}.panel{background:linear-gradient(180deg,#0e141f,#0a0f17);border:1px solid #151d2b;border-radius:10px;padding:18px;margin-bottom:14px}.panel h3{font-size:17px;margin:0 0 12px}.trend-row,.suggest-row,.notif-row{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #151c29}.trend-row:last-child,.suggest-row:last-child,.notif-row:last-child{border-bottom:0}.hash{font-size:22px;color:var(--brand);font-weight:950}.follow-btn{margin-left:auto;background:#1a2231;color:#fff;border-radius:9px;padding:8px 14px;font-weight:750}.phone{position:sticky;top:12px;margin-top:8px;border:8px solid #111721;border-radius:42px;overflow:hidden;background:#020306;box-shadow:0 20px 54px #000b;height:640px}.phone-screen{height:100%;position:relative;background:#000;overflow:hidden}.phone video,.phone img{width:100%;height:100%;object-fit:cover}.phone-overlay{position:absolute;inset:0;padding:28px 16px 18px;display:flex;flex-direction:column;background:linear-gradient(180deg,#0004,#0000 35%,#000b)}.phone-top{text-align:center;font-weight:700}.phone-actions{margin-left:auto;margin-top:auto;display:grid;gap:18px;text-align:center;font-weight:800}.phone-caption{margin-top:auto;max-width:75%;font-size:13px}.mobile-tabs{display:none}.grid-page{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.section-card{background:#0f141f;border:1px solid var(--line);border-radius:14px;padding:14px}.profile-hero{background:linear-gradient(180deg,#1b2435,#0d121b);border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-bottom:12px}.cover{height:136px;background:radial-gradient(circle at 20% 10%,#42557d,#111722 52%,#070a11)}.profile-info{display:flex;gap:14px;align-items:flex-end;padding:0 16px 16px;margin-top:-38px}.profile-stats{display:flex;gap:28px;text-align:center;margin-left:auto}.profile-stats b{display:block;font-size:18px}.dm{height:calc(100vh - 76px);display:grid;grid-template-columns:330px 1fr;gap:10px}.chat-list,.chat-box{background:#0c111b;border:1px solid var(--line);border-radius:14px;overflow:hidden;min-height:0}.chat-title{height:58px;display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line)}.chat-scroll{overflow:auto;height:calc(100% - 58px)}.chat-item{display:flex;gap:10px;align-items:center;padding:12px;border-bottom:1px solid var(--line);cursor:pointer}.chat-item:hover,.chat-item.active{background:#151b28}.messages{height:calc(100% - 116px);overflow:auto;padding:14px}.bubble{max-width:72%;padding:10px 12px;border-radius:16px;background:#1a2231;margin:8px 0}.mine{margin-left:auto;background:linear-gradient(135deg,#315cef,var(--brand))}.sendbar{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}.sendbar input{flex:1;background:#0a0f18;color:white;border:1px solid var(--line);border-radius:12px;padding:12px}.modal-bg{position:fixed;inset:0;background:#000b;display:grid;place-items:center;z-index:50;padding:18px}.modal{width:min(920px,100%);max-height:92vh;overflow:auto;background:#0c111b;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 30px 90px #000}.modal.narrow{width:min(560px,100%)}.row{display:flex;gap:8px;align-items:center}.space{justify-content:space-between}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#121925;border:1px solid var(--line);padding:12px 16px;border-radius:14px;z-index:80}.viewer{display:grid;grid-template-columns:minmax(280px,1fr) 350px;gap:14px}.viewer-media img,.viewer-media video{width:100%;max-height:78vh;object-fit:contain;background:#000;border-radius:14px}.crop-wrap{display:grid;place-items:center;background:#05070d;border:1px dashed #344056;border-radius:16px;height:320px;overflow:hidden;position:relative}.crop-img{max-width:none;max-height:none;transform-origin:center;user-select:none;pointer-events:none}.crop-frame{position:absolute;width:180px;height:180px;border:3px solid var(--brand);border-radius:50%;box-shadow:0 0 0 999px #0007;cursor:move;touch-action:none}.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.drop{display:grid;place-items:center;min-height:290px;border:1px dashed #38435a;border-radius:14px;background:#090e16;text-align:center}.notif-page{max-width:720px}.search-results{display:grid;gap:14px}.tiny-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.tiny-grid img,.tiny-grid video{height:130px;width:100%;object-fit:cover;border-radius:8px}.empty{padding:34px;text-align:center;color:var(--muted)}@media(max-width:1200px){.layout{grid-template-columns:198px 1fr 300px;gap:12px}.masonry{columns:3 245px}.media-box{height:285px}}@media(max-width:920px){body{overflow:hidden}.layout{grid-template-columns:1fr;padding:0}.sidebar,.right{display:none}.main{height:100vh;grid-template-rows:52px 1fr}.top-actions{display:none}.page{padding:0 8px 72px}.masonry{columns:2 185px}.media-box{height:235px}.mobile-tabs{display:flex;position:fixed;bottom:0;left:0;right:0;background:#06090f;border-top:1px solid var(--line);z-index:30;justify-content:space-around;padding:8px 2px}.mobile-tabs button{background:transparent;color:white;padding:8px 10px}.dm{grid-template-columns:1fr;height:calc(100vh - 122px)}.chat-box.mobile-hide,.chat-list.mobile-hide{display:none}.viewer{grid-template-columns:1fr}.upload-grid{grid-template-columns:1fr}.profile-info{display:block}.profile-stats{margin:12px 0 0;justify-content:space-between}.topbar .search{max-width:none}}@media(max-width:560px){.masonry{columns:1}.meme-card{border-radius:0;margin-left:-8px;margin-right:-8px}.tabs{padding-left:4px}.topbar{padding:8px}.media{max-height:68vh}.modal{border-radius:0;max-height:100vh;height:100vh}.tiny-grid img,.tiny-grid video{height:105px}}

.phone-panel,.phone{display:none!important}


/* Fix page scrolling while keeping the exact dark/pink mockup look. */
html,body{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto;}
.layout{min-height:100vh;height:auto;align-items:start;}
.sidebar{position:sticky;top:0;height:100vh;overflow:auto;}
.main{min-height:100vh;display:block;}
.topbar{position:sticky;top:0;z-index:20;background:linear-gradient(180deg,#070a11 78%,#070a1100);}
.page{min-height:calc(100vh - 76px);overflow:visible;padding-bottom:32px;}
.right{position:sticky;top:0;height:100vh;overflow:auto;}
.settings-page{display:grid;gap:14px;max-width:760px;}
.crop-wrap{touch-action:none;}
.crop-img{user-select:none;-webkit-user-drag:none;}
@media(max-width:920px){body{overflow-y:auto}.main{height:auto;min-height:100vh}.page{overflow:visible;padding-bottom:86px}.topbar{position:sticky}.dm{min-height:calc(100vh - 122px)}}

/* Requested UI-only refinements */
.side-logo,.clickable{cursor:pointer}.side-logo:hover,.clickable:hover{color:var(--brand)}
.profile-page{max-height:none;overflow:visible;padding-bottom:28px}.profile-page .tiny-grid{padding-bottom:30px}
.bubble{position:relative;padding-right:40px}.msg-x{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background:#0b1019;color:#cdd6e6;opacity:0;transition:.16s}.bubble:hover .msg-x{opacity:1}.msg-x:hover{background:var(--danger);color:white}.msg-reacts{display:flex;gap:5px;margin-top:7px;opacity:0;transform:translateY(-2px);transition:.16s}.bubble:hover .msg-reacts{opacity:1;transform:none}.msg-reacts button{background:#0e1522;color:white;border:1px solid #263247;border-radius:999px;padding:4px 7px;font-size:12px}.msg-reacts button:hover{background:#1b2638}.msg-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.msg-count{font-size:12px;background:#ffffff18;border-radius:999px;padding:2px 6px}

/* requested: uniform feed cards and compact wrapping messages */
.masonry{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;columns:auto!important;column-gap:0!important;align-items:start}.meme-card{break-inside:auto!important;margin:0!important;height:430px;display:flex;flex-direction:column}.meme-title{height:58px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.media-box{height:245px;min-height:245px;overflow:hidden;flex:0 0 245px}.media,.media.video{width:100%;height:100%!important;min-height:0!important;max-height:none!important;object-fit:cover}.post-foot{flex:1;min-height:0;display:flex;flex-direction:column}.tagline-tags{margin-top:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comment-preview{display:none}
.messages{display:flex;flex-direction:column;align-items:flex-start}.bubble{display:inline-block;width:max-content;max-width:min(72%,680px);padding:4px 8px!important;padding-right:28px!important;margin:3px 0!important;border-radius:10px!important;line-height:1.2;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.bubble.mine{align-self:flex-end;margin-left:0!important}.bubble:not(.mine){align-self:flex-start}.bubble b{font-size:12px}.msg-x{top:3px!important;right:3px!important;width:18px!important;height:18px!important;line-height:18px;font-size:13px}.msg-reacts{margin-top:3px!important;gap:3px!important}.msg-reacts button{padding:1px 4px!important;font-size:11px!important}.msg-meta{margin-top:2px!important}.msg-count{font-size:10px!important;padding:1px 4px!important}
@media(max-width:1200px){.masonry{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))!important}}@media(max-width:920px){.masonry{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))!important}.meme-card{height:390px}.media-box{height:220px;min-height:220px;flex-basis:220px}}@media(max-width:560px){.masonry{grid-template-columns:1fr!important}.meme-card{height:450px;margin-left:0!important;margin-right:0!important;border-radius:9px}.media-box{height:275px;min-height:275px;flex-basis:275px}}

/* Requested post interaction refinements */
.post-menu-wrap{position:relative;margin-left:auto}.dots{font-weight:900}.post-menu{display:none;position:absolute;right:0;top:30px;z-index:8;min-width:130px;background:#101724;border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 36px #0009;padding:6px}.post-menu.show{display:block}.post-menu button{width:100%;background:transparent;color:var(--text);text-align:left;padding:9px 10px;border-radius:8px}.post-menu button:hover{background:#1a2231;color:var(--brand)}
.like-wrap{position:relative;display:inline-flex;align-items:center}.reaction-picker{display:none;position:absolute;left:0;bottom:34px;z-index:9;gap:4px;background:#101724;border:1px solid var(--line);box-shadow:0 14px 36px #0009;border-radius:999px;padding:5px}.reaction-picker.show{display:flex}.reaction-picker button{background:#172033;color:white;border-radius:999px;padding:5px 7px;font-size:16px}.reaction-picker button:hover{transform:translateY(-2px);background:#222d42}.social-icon{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;border-radius:999px;text-decoration:none}.social-icon:hover{background:#1a2231;color:var(--brand)}
.share-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.share-grid button{background:#151d2c;color:white;border:1px solid var(--line);border-radius:12px;padding:12px;font-weight:800}.share-grid button:hover{border-color:var(--brand);color:var(--brand)}
.profile-pic-click{cursor:pointer}.profile-pic-click:hover{outline:3px solid var(--brand)}.big-avatar-wrap{text-align:center}.big-avatar-wrap img{width:min(340px,90vw);height:min(340px,90vw);object-fit:cover;border-radius:28px;border:1px solid var(--line);box-shadow:0 22px 60px #0009}.profile-page{max-height:calc(100vh - 110px);overflow:auto;padding-right:6px}.settings-page textarea#bioText{min-height:90px;resize:vertical;background:#0a0f18;color:var(--text);border:1px solid var(--line);border-radius:12px;padding:12px;width:100%;margin-bottom:10px}
@media(max-width:920px){.profile-page{max-height:none;overflow:visible}.share-grid{grid-template-columns:1fr}.reaction-picker{bottom:38px}}

/* Requested final touch-ups: social-style share/download icons, full hashtags, thumbnails, threaded comments */
.social-icon svg{width:18px;height:18px;fill:currentColor;display:block}.share-icon,.download-icon{color:#f8f8ff}.share-icon:hover,.download-icon:hover{color:var(--brand);background:#1a2231}.social-icon span{margin-left:6px}.tagline-tags{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.35;max-height:42px}.tagline-tags span{display:inline-block;margin-right:5px}.thumbnail{background:#05070d}.thumbnail .media{object-fit:cover!important;object-position:center center}.open-comments{display:block!important;max-height:360px;overflow:auto}.comment-row{background:#0f1622;border:1px solid #202a3c;border-radius:10px;padding:8px;margin:8px 0}.comment-row.reply{margin-left:18px;background:#111a28}.comment-tools{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:5px}.comment-tools button,.reply-link{background:#172033;color:#dbe6f8;border:1px solid #263247;border-radius:999px;padding:3px 7px;font-size:12px}.comment-tools button:hover,.reply-link:hover{color:var(--brand);border-color:var(--brand)}.comment-count{background:#ffffff18;border-radius:999px;padding:2px 6px;font-size:12px}.reply-box{margin-top:6px}.comment-replies{margin-top:6px}.reply-link{margin-top:5px;display:inline-block}.reply-box .row{align-items:stretch}.reply-box .primary{padding:8px 10px;border-radius:10px}.reply-box .soft-input{margin:0}

/* Larger uniform post thumbnails and improved avatar selection */
.meme-card .media-box img,.meme-card .media-box video{object-fit:contain}
.crop-wrap{touch-action:none}

/* Final requested sizing: posts a little bigger, thumbnails fit card, full media opens on click */
.masonry{grid-template-columns:repeat(auto-fill,minmax(285px,1fr))!important;gap:14px!important}
.meme-card{height:470px!important}
.media-box{height:285px!important;min-height:285px!important;flex-basis:285px!important}
.meme-card .media-box img,.meme-card .media-box video,.media,.media.video{object-fit:contain!important;object-position:center center!important}
@media(max-width:1200px){.masonry{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))!important}.meme-card{height:455px!important}.media-box{height:270px!important;min-height:270px!important;flex-basis:270px!important}}
@media(max-width:920px){.masonry{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))!important}.meme-card{height:410px!important}.media-box{height:225px!important;min-height:225px!important;flex-basis:225px!important}}
@media(max-width:560px){.masonry{grid-template-columns:1fr!important}.meme-card{height:470px!important}.media-box{height:285px!important;min-height:285px!important;flex-basis:285px!important}}
/* Movable avatar selection frame */
.crop-frame{pointer-events:auto!important}
.crop-frame:active{cursor:grabbing}

/* Requested profile/media and icon-only refinements */
.ui-svg{width:21px;height:21px;display:inline-block;vertical-align:middle;filter:drop-shadow(0 2px 8px rgba(255,79,179,.22))}.nav button span .ui-svg,.nav button>span .ui-svg{width:22px;height:22px}.icon-btn .ui-svg{width:21px;height:21px}.mobile-tabs .ui-svg{width:22px;height:22px;margin-bottom:2px}.profile-page .tiny-grid img,.profile-page .tiny-grid video{object-fit:contain!important;background:#05070d!important;height:220px!important;max-height:none!important}.profile-page .tiny-grid{align-items:start}.profile-page .tiny-grid img:hover,.profile-page .tiny-grid video:hover{outline:2px solid var(--brand);cursor:pointer}
@media(max-width:560px){.profile-page .tiny-grid img,.profile-page .tiny-grid video{height:240px!important}}
/* Requested profile/post-control refinements */
.me-card{display:block!important}.me-cover{height:86px;border-radius:14px;background:#111722 center/cover no-repeat;border:1px solid var(--line);display:grid;place-items:center;color:var(--muted);font-weight:800;margin-bottom:10px;cursor:pointer;overflow:hidden}.me-cover:hover{border-color:var(--brand);color:#fff}.me-info{display:flex;gap:10px;align-items:center}.cover,.cover-preview{background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important}.cover-preview{height:150px;border-radius:14px;border:1px dashed #38435a;background-color:#090e16;display:grid;place-items:center;color:var(--muted);margin:8px 0 12px}.top-actions .avatar.clickable{cursor:pointer}.top-actions .avatar.clickable:hover{outline:2px solid var(--brand)}
.post-menu a,.post-menu button{display:flex;gap:8px;align-items:center;width:100%;background:transparent;color:var(--text);text-decoration:none;border:0;padding:10px 12px;border-radius:10px;text-align:left}.post-menu a:hover,.post-menu button:hover{background:#1a2231}.post-menu svg{width:18px;height:18px;fill:currentColor}.compact-actions .social-icon{display:none!important}.downvote-btn{display:inline-flex;align-items:center;justify-content:center;padding:7px 9px}.downvote-svg{width:18px;height:18px;fill:var(--muted);display:block}.downvote-btn:hover .downvote-svg{fill:var(--brand)}.reaction-counts{max-width:80px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-posts{padding-bottom:32px}.profile-page .profile-posts .meme-card{height:470px!important}.profile-page .profile-posts .media-box{height:285px!important;min-height:285px!important;flex-basis:285px!important}.profile-page .tabs .chip:not(.active){display:none!important}

.bell-btn{position:relative}.bell-badge{position:absolute;top:-6px;right:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#ff4fb3;color:#fff;font-size:10px;font-weight:900;display:grid;place-items:center;border:2px solid #111827}.notif-pop{position:fixed;z-index:80;width:min(360px,92vw);background:#111827;border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 60px rgba(0,0,0,.55);border-radius:18px;padding:14px}.notif-row.unread{font-weight:800}.notif-row.unread .muted{font-weight:500}.full{width:100%;margin-top:8px}.trend-row{cursor:pointer}.checkline{display:flex!important;align-items:center;gap:8px;line-height:1.1}.checkline input{margin:0;transform:translateY(0)}.share-chat-list{display:grid;gap:8px;margin:10px 0}.chat-share-choice{text-align:left;border:1px solid rgba(255,255,255,.12);background:#0b1220;color:#fff;border-radius:12px;padding:10px;cursor:pointer}.msg-meme{margin:6px 0;border:1px solid rgba(255,255,255,.12);border-radius:12px;overflow:hidden;background:rgba(255,255,255,.04);cursor:pointer}.msg-meme-media{height:120px;background:#060913}.msg-meme img,.msg-meme video{width:100%;height:100%;object-fit:cover;display:block}.msg-meme b{display:block;padding:6px 8px}.category-picks{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.category-picks .pick{display:flex;gap:6px;align-items:center}.auth-card.wide{max-width:680px}.profile-info-stacked{align-items:flex-start}.profile-avatar-block{text-align:center;min-width:140px}.profile-avatar-block h2{margin:8px 0 0}.profile-hero .cover{height:170px}.profile-info{padding:14px 18px}.profile-page{max-height:calc(100vh - 120px);overflow:auto}.post-menu button,.post-menu a{cursor:pointer}
.chat-item{position:relative}.chat-remove{margin-left:auto;width:24px;height:24px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.06);color:#fff;cursor:pointer;opacity:.72}.chat-remove:hover{opacity:1;background:rgba(255,43,140,.2);border-color:rgba(255,43,140,.45)}

/* targeted social/trending/comment polish */
.linkish,
button,
.clickable,
.trend-row,
.trend-inline,
.suggest-row,
.chip,
.section-card[onclick],
.post-user b,
.mini-avatar[onclick],
.avatar[onclick] { cursor: pointer; }
.right .panel:first-child { order: 1; }
.right .panel:nth-child(2) { order: 2; }
.comment-name{font-weight:800;color:#fff;font-size:12px;margin-bottom:3px;text-align:left;display:block}
.comment-body{text-align:left;line-height:1.25}
.trend-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.trend-inline{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:rgba(255,255,255,.05);color:#fff;border-radius:999px;padding:10px 14px}
.trend-inline span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--brand);font-weight:900}
.creator-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}

/* Requested follow-up fixes: followed users hidden from suggestions, visible report option, lower profile stats/welcome, periodic feed refresh support */
.danger-option{color:#ff8aaa!important;font-weight:900!important}
.danger-option:hover{background:rgba(255,47,125,.16)!important;color:#fff!important}
.profile-page .profile-stats{margin-top:20px!important;transform:translateY(8px)}
.profile-page .profile-info-stacked > div:nth-child(2){margin-top:14px!important}
.profile-page .profile-avatar-block{padding-top:8px!important}

/* Final requested fixes: keep the 3-dot menu visible on feed cards and align profile stats with username */
.meme-card{overflow:visible!important;position:relative;z-index:1}
.meme-card:hover,.meme-card:focus-within{z-index:25}
.media-box{border-radius:0;overflow:hidden}
.post-menu{z-index:200!important;min-width:168px!important;max-width:220px!important;white-space:nowrap;overflow:visible!important}
.post-menu.show{display:block!important}
.post-menu .danger-option{color:#ff8faf!important;font-weight:850}
.profile-page .profile-info-stacked{align-items:flex-start!important}
.profile-page .profile-stats{align-self:flex-start!important;margin-top:92px!important;transform:none!important}
.profile-page .profile-avatar-block h2{line-height:1.1!important}
@media(max-width:920px){.profile-page .profile-stats{margin-top:18px!important}}

/* Requested: remove profile Posts tab, keep search tabs open, and make only feed/profile meme areas scroll */
.feed-scroll{max-height:calc(100vh - 104px);overflow:auto;padding-right:6px;scrollbar-width:thin}
.profile-page{display:flex;flex-direction:column;max-height:calc(100vh - 104px)!important;overflow:hidden!important;padding-bottom:0!important}
.profile-page .profile-hero{flex:0 0 auto}
.profile-page .profile-posts.feed-scroll{flex:1 1 auto;max-height:none!important;overflow:auto!important;padding-bottom:32px}
.profile-page .tabs{display:none!important}
.search-tab{cursor:pointer}
@media(max-width:920px){.feed-scroll{max-height:calc(100vh - 124px)}.profile-page{max-height:calc(100vh - 124px)!important}.profile-page{overflow:auto!important}.profile-page .profile-posts.feed-scroll{overflow:visible!important}}

/* Requested: homepage shows about 4 rows of memes before the feed area becomes the scrollable section */
.main .page > .masonry.feed-scroll{
  max-height:calc((470px * 4) + (14px * 3))!important;
  overflow:auto!important;
  padding-right:6px!important;
}
@media(max-width:1200px){
  .main .page > .masonry.feed-scroll{max-height:calc((455px * 4) + (14px * 3))!important;}
}
@media(max-width:920px){
  .main .page > .masonry.feed-scroll{max-height:calc((410px * 4) + (14px * 3))!important;}
}
@media(max-width:560px){
  .main .page > .masonry.feed-scroll{max-height:calc((470px * 4) + (14px * 3))!important;}
}
/* Cover image removal: keep profile compact while preserving the rest of the layout */
.profile-hero.no-cover{padding-top:0!important;background:transparent!important}
.profile-hero.no-cover .profile-info{margin-top:0!important}

/* Requested: make the profile-picture header area smaller on profile pages only */
.profile-page .profile-hero.no-cover .profile-info{
  padding:6px 12px 8px!important;
  gap:10px!important;
  min-height:0!important;
}
.profile-page .profile-avatar-block{
  min-width:94px!important;
  padding-top:0!important;
}
.profile-page .profile-avatar-block .avatar.lg{
  width:58px!important;
  height:58px!important;
}
.profile-page .profile-avatar-block h2{
  font-size:17px!important;
  margin-top:5px!important;
}
.profile-page .profile-info-stacked > div:nth-child(2){
  margin-top:6px!important;
}
.profile-page .profile-stats{
  margin-top:62px!important;
}
@media(max-width:920px){
  .profile-page .profile-stats{margin-top:12px!important}
}

/* Requested: profile top controls centered, tighter bottom-aligned profile identity, and category follow/search tools */
.view-profile .topbar{justify-content:center!important;}
.view-profile .topbar .search{max-width:520px!important;flex:0 1 520px!important;}
.view-profile .topbar .top-actions{margin-left:0!important;}
.profile-page .profile-info-stacked{align-items:flex-end!important;}
.profile-page .profile-avatar-block{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-end!important;gap:2px!important;align-self:flex-end!important;}
.profile-page .profile-avatar-block h2{margin-top:2px!important;}
.profile-page .profile-info-stacked > div:nth-child(2){align-self:flex-end!important;margin-bottom:2px!important;}
.profile-page .profile-stats{align-self:flex-end!important;margin-top:0!important;margin-bottom:6px!important;}
.category-tools{margin-bottom:12px;align-items:center}.category-tools .soft-input{margin:0;max-width:520px}.category-card h3,.category-card p{cursor:pointer}.category-card .follow-btn.active{background:linear-gradient(135deg,var(--brand),#ff4da0)}
@media(max-width:920px){.view-profile .topbar{justify-content:stretch!important}.view-profile .topbar .search{max-width:none!important;flex:1 1 auto!important}.profile-page .profile-info-stacked,.profile-page .profile-stats,.profile-page .profile-info-stacked > div:nth-child(2){align-self:auto!important;align-items:flex-start!important}}

/* Requested: professional separate create-account screen with confirm password */
.auth-pro .auth-card{position:relative;border-radius:24px;background:linear-gradient(180deg,rgba(18,24,39,.96),rgba(8,12,20,.96));}
.login-card{width:min(460px,100%)}
.register-card{width:min(720px,100%);padding:32px}
.auth-form label{display:block;color:#dbe4f7;font-size:13px;font-weight:800;margin:10px 0 4px}
.auth-main{width:100%;margin-top:12px;font-size:15px}
.auth-divider{display:flex;align-items:center;gap:12px;margin:22px 0 12px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.auth-divider span{height:1px;background:var(--line);flex:1}
.auth-create{width:100%;border:1px solid var(--line);background:#0a0f18;color:#fff;font-weight:850}
.auth-create:hover{border-color:var(--brand);background:#151b28}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}
.password-note{margin:12px 0;padding:12px 14px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);border-radius:14px;color:var(--muted);font-size:13px}
.back-auth{position:absolute;top:14px;right:16px;color:#fff;border:1px solid var(--line);background:#0a0f18}
.center-text{text-align:center}
@media(max-width:640px){.two-col{grid-template-columns:1fr}.register-card{padding:26px 20px}.back-auth{position:static;margin-bottom:12px}}


/* Professional settings layout and notification click targets */
.notif-row{cursor:pointer}.notif-row:hover{background:rgba(255,255,255,.06)}
.settings-pro{display:flex;flex-direction:column;gap:16px;max-width:980px;margin:0 auto;padding-bottom:32px}
.settings-hero{display:flex;justify-content:space-between;align-items:center;padding:22px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,rgba(255,47,129,.13),rgba(138,92,255,.08) 48%,rgba(255,255,255,.03));box-shadow:0 20px 50px rgba(0,0,0,.22)}
.settings-hero h2{margin:0 0 6px}.settings-avatar-mini{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(8,12,20,.72);font-weight:900}.settings-avatar-mini .avatar{width:38px;height:38px}
.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-card{padding:18px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,rgba(18,24,39,.94),rgba(10,15,24,.94));box-shadow:0 18px 45px rgba(0,0,0,.18)}.settings-card:nth-child(3){grid-column:1/-1;max-width:560px}.settings-card-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}.settings-card-head h3{margin:0 0 4px}.setting-icon{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:rgba(255,47,129,.13);border:1px solid rgba(255,47,129,.25);font-size:20px}.settings-card textarea,.settings-card input{width:100%}.settings-card .primary{margin-top:12px}.range-row{display:flex;align-items:center;gap:12px;margin-top:12px}.range-row input{margin:0}
@media(max-width:780px){.settings-grid{grid-template-columns:1fr}.settings-card:nth-child(3){max-width:none}.settings-hero{align-items:flex-start;flex-direction:column;gap:14px}}

/* Requested: sidebar logout and optional feed layout setting, without changing existing colors */
.nav button[onclick="logout()"]{margin-top:8px;border-top:1px solid var(--line);padding-top:14px;color:#ffdfeb}
.nav button[onclick="logout()"]:hover{background:#171c27;color:#fff}
.layout-choice{display:flex!important;align-items:center;gap:12px;width:100%;padding:12px 14px;margin:8px 0;border:1px solid var(--line);border-radius:14px;background:#0a0f18;cursor:pointer}
.layout-choice:hover{border-color:rgba(255,47,125,.55);background:#101724}
.layout-choice input{width:auto!important;margin:0!important;accent-color:var(--brand)}
.layout-choice span{display:grid;gap:2px}.layout-choice small{font-size:12px}
.feed-layout-spotlight.view-home .main .page>.masonry.feed-scroll{display:grid!important;grid-template-columns:minmax(320px,680px)!important;justify-content:center!important;gap:18px!important;max-height:calc(100vh - 104px)!important}
.feed-layout-spotlight.view-home .meme-card{height:auto!important;min-height:0!important;border-radius:16px!important;overflow:hidden!important;box-shadow:0 20px 60px rgba(0,0,0,.38)!important}
.feed-layout-spotlight.view-home .meme-title{height:auto!important;min-height:0!important;padding:16px 16px 8px!important;font-size:20px!important;-webkit-line-clamp:3!important}
.feed-layout-spotlight.view-home .media-box{height:min(68vh,560px)!important;min-height:360px!important;flex-basis:auto!important}
.feed-layout-spotlight.view-home .post-foot{padding:14px 16px 16px!important}
.feed-layout-spotlight.view-home .post-user b{font-size:14px!important}
.feed-layout-spotlight.view-home .mini-avatar{width:32px!important;height:32px!important}
.feed-layout-spotlight.view-home .actions{gap:8px!important;margin-top:12px!important}
.feed-layout-spotlight.view-home .react{font-size:15px!important;padding:9px 12px!important}
.feed-layout-spotlight.view-home .tagline-tags{margin-top:12px!important;white-space:normal!important;max-height:none!important}
@media(max-width:920px){.feed-layout-spotlight.view-home .main .page>.masonry.feed-scroll{grid-template-columns:1fr!important;max-height:calc(100vh - 124px)!important}.feed-layout-spotlight.view-home .media-box{height:62vh!important;min-height:320px!important}}

/* Requested: center the feed and the top search/action row without changing colors or features */
.layout .main{
  justify-self:center;
  width:100%;
  max-width:1120px;
}
.layout .topbar{
  justify-content:center;
}
.layout .topbar .search{
  flex:0 1 760px;
}
.layout .topbar .top-actions{
  margin-left:0;
  flex:0 0 auto;
}
.view-home .page > .tabs,
.view-search .page > .tabs{
  justify-content:center;
}
.view-home .page > .masonry.feed-scroll,
.view-search .page > .masonry.feed-scroll{
  width:100%;
  max-width:1120px;
  margin-left:auto;
  margin-right:auto;
}
@media(max-width:920px){
  .layout .main{max-width:none;justify-self:stretch}
  .layout .topbar{justify-content:stretch}
  .layout .topbar .search{flex:1 1 auto}
  .layout .topbar .top-actions{margin-left:auto}
}

/* Requested: image-matched cool blue/black palette + feed-only scrolling; CSS-only change */
:root{
  --bg:#020405!important;
  --panel:#071015!important;
  --panel2:#0b141b!important;
  --panel3:#111d25!important;
  --text:#f6fbff!important;
  --muted:#aab8c5!important;
  --brand:#a9d4f6!important;
  --cyan:#b9ddf8!important;
  --line:#22313a!important;
  --danger:#ff6b84!important;
  --shadow:0 22px 60px rgba(0,0,0,.72)!important;
}
html,body{background:#020405!important;overflow:hidden!important;}
body{background:radial-gradient(circle at 50% -10%,#0d1519 0,#05090c 34%,#020405 100%)!important;}
.auth-card,.modal,.chat-list,.chat-box,.section-card,.meme-card,.panel,.settings-card{
  background:linear-gradient(180deg,#0a1116,#05090d)!important;
  border-color:rgba(169,212,246,.18)!important;
}
.sidebar,.right{background:#03070a!important;border-color:rgba(169,212,246,.15)!important;}
.main,.topbar,.page{background:#05090c!important;}
.topbar{border-bottom:1px solid rgba(169,212,246,.08)!important;}
.topbar .search,.search,.soft-input,.auth-card input,.auth-card textarea,.composer input,.composer textarea,.composer select,.modal input,.modal textarea,.modal select,.sendbar input{
  background:#0a1117!important;
  border-color:rgba(169,212,246,.22)!important;
  color:var(--text)!important;
}
.topbar .search:focus,.search:focus,.soft-input:focus,input:focus,textarea:focus,select:focus{
  border-color:rgba(169,212,246,.72)!important;
  box-shadow:0 0 0 3px rgba(169,212,246,.12)!important;
}
.primary,.chip.active,.logo-mark{
  background:linear-gradient(135deg,#b9ddf8,#89bfe9)!important;
  border-color:#b9ddf8!important;
  color:#ffffff!important;
  box-shadow:0 14px 28px rgba(169,212,246,.22)!important;
}
.avatar{background:linear-gradient(135deg,#b9ddf8,#597993)!important;}
.nav button.active,.nav button:hover,.ghost:hover,.icon-btn:hover,.chat-item:hover,.chat-item.active{
  background:#14202a!important;
}
.chip,.react,.follow-btn,.share-grid button,.layout-choice,.chat-share-choice,.bubble{
  background:#101a22!important;
  border-color:rgba(169,212,246,.18)!important;
}
.react.active,.mine{
  background:linear-gradient(135deg,#89bfe9,#b9ddf8)!important;
  color:#081016!important;
}
.hash,.brand-pink,.tagline-tags,.share-icon:hover,.download-icon:hover,.comment-tools button:hover,.reply-link:hover,.downvote-btn:hover .downvote-svg{
  color:#b9ddf8!important;
}
.bell-badge,.trend-inline span{
  background:#94c7ef!important;
  color:#061019!important;
  border-color:#05090c!important;
}
.post-menu a:hover,.post-menu button:hover,.layout-choice:hover,.auth-create:hover{
  background:#14202a!important;
  border-color:rgba(169,212,246,.55)!important;
  color:#fff!important;
}
.profile-hero,.settings-hero{
  background:linear-gradient(180deg,#0b141a,#05090c)!important;
  border-color:rgba(169,212,246,.18)!important;
}
.cover{background:radial-gradient(circle at 20% 10%,#26425a,#0b141a 52%,#05090c)!important;}
.mobile-tabs{background:#03070a!important;border-color:rgba(169,212,246,.16)!important;}
.social-icon:hover{background:#14202a!important;color:#b9ddf8!important;}

/* Keep the center content area one consistent color and make only the feed area scroll on Home/Search. */
.layout .main{height:100vh!important;overflow:hidden!important;}
.main .topbar{flex:0 0 76px!important;}
.main .page{min-height:0!important;height:calc(100vh - 76px)!important;overflow:hidden!important;padding-bottom:0!important;}
.view-home .main .page,.view-search .main .page{display:flex!important;flex-direction:column!important;}
.view-home .page > .tabs,.view-search .page > .tabs{flex:0 0 auto!important;margin-bottom:16px!important;}
.view-home .page > .masonry.feed-scroll,.view-search .page > .masonry.feed-scroll{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-right:8px!important;
  padding-bottom:28px!important;
}
.view-home .page > .masonry.feed-scroll::-webkit-scrollbar,.view-search .page > .masonry.feed-scroll::-webkit-scrollbar{width:8px;}
.view-home .page > .masonry.feed-scroll::-webkit-scrollbar-thumb,.view-search .page > .masonry.feed-scroll::-webkit-scrollbar-thumb{background:#22313a;border-radius:999px;}
.view-home .page > .masonry.feed-scroll::-webkit-scrollbar-track,.view-search .page > .masonry.feed-scroll::-webkit-scrollbar-track{background:#05090c;}
@media(max-width:920px){
  .main .topbar{flex-basis:52px!important;}
  .main .page{height:calc(100vh - 52px)!important;padding-bottom:72px!important;}
  .view-home .page > .masonry.feed-scroll,.view-search .page > .masonry.feed-scroll{padding-bottom:88px!important;}
}

/* Requested: replace UI icons with rounded MemeHub icon-system style while keeping layout/colors */
.ui-line{width:1.28em;height:1.28em;display:inline-block;vertical-align:-.22em;color:currentColor;overflow:visible;filter:drop-shadow(0 2px 8px rgba(0,0,0,.18))}
.nav .ui-line{width:22px;height:22px;stroke-width:2.25;color:#c9d3e3;flex:0 0 22px}
.nav button.active .ui-line,.nav button:hover .ui-line{color:#fff}
.icon-btn .ui-line{width:21px;height:21px;color:currentColor}
.mobile-tabs .ui-line{width:22px;height:22px;margin-bottom:2px;color:currentColor}
.social-icon .ui-line,.post-menu .ui-line,.downvote-svg .ui-line{width:18px;height:18px;color:currentColor}
.post-menu button,.post-menu a{display:flex!important;align-items:center!important;gap:8px!important}
.dots .ui-line{width:20px;height:20px}
.setting-icon .ui-line{width:22px;height:22px;color:#fff}
.logo-smile{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:9px 9px 9px 3px;background:linear-gradient(135deg,#cfe6ff,#9fc7ea);color:#05070d;margin-right:9px;box-shadow:0 10px 28px rgba(159,199,234,.2);position:relative;flex:0 0 34px;font-size:0}
.logo-smile:after{content:"";position:absolute;left:5px;bottom:-6px;border-top:8px solid #9fc7ea;border-right:8px solid transparent}
.logo-smile span{font-size:24px;line-height:1;transform:translateY(-1px);font-family:ui-sans-serif,system-ui,Segoe UI Emoji,Apple Color Emoji,sans-serif}
.logo,.side-logo{align-items:center}.side-logo .logo-smile{width:30px;height:30px;flex-basis:30px}.side-logo .logo-smile span{font-size:21px}
.bell-btn{position:relative}.bell-btn .bell-badge{position:absolute;top:-7px;right:-7px}
.search:focus{border-color:#92bddf}


/* Icon-system refinement: rounded neutral line icons from reference image */
.ui-line *{vector-effect:non-scaling-stroke}
.ui-line path,.ui-line circle,.ui-line rect,.ui-line line,.ui-line polyline{stroke-linecap:round;stroke-linejoin:round}
.nav button span,.icon-btn,.social-icon,.post-menu a,.post-menu button,.react,.ghost{line-height:1;align-items:center}
.downvote-btn{width:32px;height:32px;border-radius:999px;padding:0!important;color:#b8c0cc!important}
.downvote-btn .downvote-svg{width:20px;height:20px;display:grid;place-items:center;color:inherit!important;fill:none!important}
.downvote-btn .ui-line{width:20px!important;height:20px!important;stroke:currentColor!important;fill:none!important}
.downvote-btn:hover{color:#cfe6ff!important;background:#14202a!important}
.react .ui-line{width:17px;height:17px;vertical-align:-.25em}
.post-menu .ui-line{width:19px!important;height:19px!important}
.side-logo .logo-smile,.logo-smile{background:linear-gradient(135deg,#e8dfc6,#a9cfe8)!important;color:#05070d!important}
.side-logo .logo-smile:after,.logo-smile:after{border-top-color:#a9cfe8!important}

/* Requested: thumbs-down icon on meme cards, matching rounded icon system */
.downvote-btn .icon-thumbsdown{width:20px!important;height:20px!important;color:currentColor;stroke:currentColor!important;fill:none!important;stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 8px rgba(0,0,0,.18));}
.downvote-svg{display:inline-grid;place-items:center;color:var(--muted);}
.downvote-btn:hover .downvote-svg,.downvote-btn:hover .icon-thumbsdown{color:var(--brand)!important;}


/* Requested: preserve one-card spotlight scrolling and keep full card visible */
.feed-layout-spotlight.view-home .main .page>.masonry.feed-scroll{
  display:grid!important;
  grid-template-columns:minmax(320px,680px)!important;
  justify-content:center!important;
  align-content:start!important;
  gap:18px!important;
  max-height:calc(100vh - 104px)!important;
  overflow:auto!important;
  scroll-snap-type:y mandatory!important;
}
.feed-layout-spotlight.view-home .meme-card{
  height:calc(100vh - 128px)!important;
  max-height:760px!important;
  min-height:560px!important;
  display:flex!important;
  flex-direction:column!important;
  scroll-snap-align:start!important;
  border-radius:16px!important;
  overflow:visible!important;
}
.feed-layout-spotlight.view-home .meme-title{
  flex:0 0 auto!important;
  height:auto!important;
  min-height:0!important;
  padding:14px 16px 8px!important;
  font-size:19px!important;
  -webkit-line-clamp:2!important;
}
.feed-layout-spotlight.view-home .media-box{
  flex:1 1 auto!important;
  height:auto!important;
  min-height:0!important;
  flex-basis:auto!important;
}
.feed-layout-spotlight.view-home .post-foot{
  flex:0 0 auto!important;
  padding:12px 16px 14px!important;
}
.feed-layout-spotlight.view-home .tagline-tags{
  max-height:none!important;
  white-space:normal!important;
  overflow:visible!important;
}
@media(max-width:920px){
  .feed-layout-spotlight.view-home .main .page>.masonry.feed-scroll{max-height:calc(100vh - 124px)!important;grid-template-columns:1fr!important}
  .feed-layout-spotlight.view-home .meme-card{height:calc(100vh - 148px)!important;min-height:520px!important}
}

/* Final polish: no feed flicker on reactions, true one-card spotlight, complete circular gear */
.icon-settings{width:22px!important;height:22px!important;display:block!important;overflow:visible!important;}
.icon-settings path,.icon-settings circle{stroke:currentColor!important;fill:none!important;}
.viewer-actions .react.active{background:rgba(169,207,232,.18)!important;color:#cfe6ff!important;border-color:#a9cfe8!important;}
.feed-layout-spotlight.view-home .main .page>.masonry.feed-scroll{
  display:grid!important;
  grid-template-columns:minmax(320px,680px)!important;
  justify-content:center!important;
  align-content:start!important;
  gap:18px!important;
  height:calc(100vh - 96px)!important;
  max-height:calc(100vh - 96px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scroll-snap-type:y mandatory!important;
  scroll-padding-top:0!important;
}
.feed-layout-spotlight.view-home .meme-card{
  height:calc(100vh - 116px)!important;
  max-height:calc(100vh - 116px)!important;
  min-height:520px!important;
  display:flex!important;
  flex-direction:column!important;
  scroll-snap-align:start!important;
  scroll-snap-stop:always!important;
  overflow:hidden!important;
}
.feed-layout-spotlight.view-home .meme-title{flex:0 0 auto!important;height:auto!important;max-height:64px!important;}
.feed-layout-spotlight.view-home .media-box{flex:1 1 auto!important;height:auto!important;min-height:0!important;flex-basis:auto!important;}
.feed-layout-spotlight.view-home .media-box img,.feed-layout-spotlight.view-home .media-box video{object-fit:contain!important;}
.feed-layout-spotlight.view-home .post-foot{flex:0 0 auto!important;min-height:0!important;}
.feed-layout-spotlight.view-home .tagline-tags{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;max-height:46px!important;line-height:1.35!important;}
@media(max-width:920px){
  .feed-layout-spotlight.view-home .main .page>.masonry.feed-scroll{height:calc(100vh - 124px)!important;max-height:calc(100vh - 124px)!important;grid-template-columns:1fr!important;}
  .feed-layout-spotlight.view-home .meme-card{height:calc(100vh - 144px)!important;max-height:calc(100vh - 144px)!important;min-height:470px!important;}
}


/* Requested: make every app section scrollable except Messages, keep message UI fixed/internal. */
.layout{height:100vh!important;min-height:100vh!important;overflow:hidden!important;}
.sidebar,.right{height:100vh!important;max-height:100vh!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin;}
.main{height:100vh!important;min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;}
.topbar{flex:0 0 76px!important;}
.page{flex:1 1 auto!important;min-height:0!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important;padding-bottom:32px!important;scrollbar-width:thin;}
.view-home .main .page,.view-search .main .page{overflow:hidden!important;padding-bottom:0!important;}
.view-home .page>.masonry.feed-scroll,.view-search .page>.masonry.feed-scroll{overflow-y:auto!important;overflow-x:hidden!important;}
.view-profile .main .page{overflow:hidden!important;}
.view-profile .profile-page{height:100%!important;max-height:none!important;overflow:hidden!important;}
.view-profile .profile-posts.feed-scroll{overflow-y:auto!important;}
.view-messages .main .page{overflow:hidden!important;padding-bottom:0!important;}
.view-messages .dm{height:100%!important;min-height:0!important;overflow:hidden!important;}
.view-messages .chat-list,.view-messages .chat-box{height:100%!important;min-height:0!important;overflow:hidden!important;}
.view-messages .chat-scroll,.view-messages .messages{overflow-y:auto!important;}

/* Requested: complete rounded circle gear icon. */
.icon-settings{width:23px!important;height:23px!important;overflow:visible!important;display:inline-block!important;}
.icon-settings circle,.icon-settings path{stroke:currentColor!important;fill:none!important;stroke-linecap:round!important;stroke-linejoin:round!important;}

/* Requested: phone/tablet responsive layout and mobile-friendly texting-style messages. */
@media(max-width:920px){
  html,body,#app{width:100%;height:100%;min-height:100%;overflow:hidden!important;}
  .layout{height:100dvh!important;min-height:100dvh!important;width:100%!important;display:block!important;overflow:hidden!important;padding:0!important;}
  .main{height:100dvh!important;min-height:100dvh!important;width:100%!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;}
  .topbar{height:56px!important;flex:0 0 56px!important;padding:8px 10px!important;gap:8px!important;background:#05090c!important;}
  .topbar .search{display:block!important;max-width:none!important;flex:1 1 auto!important;margin:0!important;font-size:14px!important;padding:10px 12px!important;}
  .top-actions{display:flex!important;margin-left:0!important;gap:6px!important;}
  .top-actions .icon-btn{width:34px!important;height:34px!important;border-radius:11px!important;font-size:16px!important;}
  .top-actions .avatar{width:34px!important;height:34px!important;}
  .page{height:auto!important;flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:8px 8px 74px!important;}
  .view-home .main .page,.view-search .main .page{overflow:hidden!important;}
  .tabs{gap:8px!important;margin-bottom:10px!important;}
  .chip{font-size:14px!important;padding:10px 13px!important;}
  .masonry{columns:1!important;column-gap:0!important;}
  .meme-card{width:100%!important;margin:0 0 12px!important;border-radius:15px!important;}
  .media-box{height:auto!important;min-height:0!important;aspect-ratio:1/1!important;}
  .media{object-fit:contain!important;}
  .mobile-tabs{display:flex!important;height:64px!important;padding:7px 4px calc(7px + env(safe-area-inset-bottom))!important;align-items:center!important;}
  .mobile-tabs button{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;font-size:11px!important;min-width:52px!important;border-radius:14px!important;}
  .mobile-tabs button .ui-line{width:23px!important;height:23px!important;margin:0!important;}

  .view-messages .page{padding:0!important;overflow:hidden!important;height:auto!important;}
  .dm{height:calc(100dvh - 56px)!important;min-height:0!important;display:block!important;overflow:hidden!important;}
  .chat-list,.chat-box{height:100%!important;border-radius:0!important;border-left:0!important;border-right:0!important;background:#05090c!important;}
  .chat-title{height:58px!important;padding:10px 12px!important;background:#071018!important;position:sticky!important;top:0!important;z-index:4!important;}
  .chat-title h2{font-size:20px!important;margin:0!important;}
  .chat-title .primary{padding:9px 12px!important;border-radius:999px!important;}
  .chat-scroll{height:calc(100% - 58px)!important;overflow-y:auto!important;padding-bottom:74px!important;}
  .chat-item{padding:13px 12px!important;gap:11px!important;}
  .chat-item .mini-avatar{width:44px!important;height:44px!important;}
  .chat-item p{max-width:70vw!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;margin:.2rem 0 0!important;}
  .chat-box{display:flex!important;flex-direction:column!important;}
  .messages{height:auto!important;flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;padding:12px 10px 14px!important;background:linear-gradient(180deg,#05090c,#071018)!important;}
  .bubble{max-width:84%!important;width:max-content!important;min-width:0!important;padding:7px 10px!important;margin:6px 0!important;border-radius:18px 18px 18px 6px!important;line-height:1.25!important;font-size:14px!important;word-break:break-word!important;white-space:pre-wrap!important;background:#111a25!important;box-shadow:none!important;}
  .bubble.mine{margin-left:auto!important;border-radius:18px 18px 6px 18px!important;background:linear-gradient(135deg,#7db7e5,#9dcaed)!important;color:#03101a!important;}
  .bubble b{font-size:12px!important;opacity:.9!important;}
  .msg-meta{font-size:11px!important;margin-top:4px!important;opacity:.72!important;}
  .msg-reacts{gap:3px!important;right:auto!important;left:6px!important;top:-28px!important;}
  .msg-reacts button{width:26px!important;height:26px!important;font-size:14px!important;border-radius:999px!important;}
  .msg-x{opacity:.75!important;top:-7px!important;right:-7px!important;width:22px!important;height:22px!important;font-size:14px!important;}
  .sendbar{height:62px!important;flex:0 0 62px!important;display:flex!important;align-items:center!important;padding:8px 10px calc(8px + env(safe-area-inset-bottom))!important;gap:8px!important;background:#05090c!important;border-top:1px solid rgba(169,212,246,.16)!important;position:sticky!important;bottom:0!important;z-index:5!important;}
  .sendbar input{height:42px!important;border-radius:999px!important;padding:0 14px!important;font-size:15px!important;margin:0!important;background:#111a25!important;}
  .sendbar .primary{height:42px!important;border-radius:999px!important;padding:0 14px!important;}
  .msg-meme{max-width:230px!important;border-radius:14px!important;overflow:hidden!important;}
  .msg-meme-media img,.msg-meme-media video{max-height:180px!important;object-fit:contain!important;}
}

@media(min-width:921px) and (max-width:1280px){
  .layout{grid-template-columns:198px minmax(0,1fr) 280px!important;gap:12px!important;}
  .topbar .search{max-width:620px!important;}
  .masonry{columns:3 230px!important;}
}

/* Final requested fixes: scrollable secondary pages, real gear icon, and mobile/tablet message fit. */
.view-explore .main .page,
.view-trending .main .page,
.view-categories .main .page,
.view-liked .main .page,
.view-uploads .main .page,
.view-settings .main .page{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  min-height:0!important;
  height:calc(100vh - 76px)!important;
  padding-bottom:34px!important;
  scrollbar-width:thin!important;
}
.view-explore .section-card,
.view-trending .trend-list,
.view-categories .grid-page,
.view-liked .masonry,
.view-uploads .masonry,
.view-settings .settings-page{
  margin-bottom:24px!important;
}
.icon-settings{
  width:23px!important;
  height:23px!important;
  display:inline-block!important;
  overflow:visible!important;
}
.icon-settings path,
.icon-settings circle{
  stroke:currentColor!important;
  fill:none!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

@media(max-width:920px){
  html,body,#app{height:100%;width:100%;overflow:hidden!important;}
  .layout{height:100dvh!important;min-height:100dvh!important;width:100%!important;overflow:hidden!important;display:block!important;padding:0!important;}
  .main{height:100dvh!important;min-height:0!important;width:100%!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;}
  .topbar{height:56px!important;min-height:56px!important;flex:0 0 56px!important;padding:8px 10px!important;gap:7px!important;}
  .topbar .search{min-width:0!important;flex:1 1 auto!important;max-width:none!important;height:40px!important;margin:0!important;font-size:14px!important;padding:9px 12px!important;}
  .top-actions{display:flex!important;align-items:center!important;gap:5px!important;margin-left:0!important;flex:0 0 auto!important;}
  .top-actions .icon-btn{width:34px!important;height:34px!important;min-width:34px!important;border-radius:11px!important;padding:0!important;display:grid!important;place-items:center!important;}
  .top-actions .icon-btn .ui-line{width:20px!important;height:20px!important;}
  .top-actions .avatar{width:34px!important;height:34px!important;min-width:34px!important;}
  .page{flex:1 1 auto!important;min-height:0!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important;padding:8px 8px calc(76px + env(safe-area-inset-bottom))!important;}
  .view-explore .main .page,
  .view-trending .main .page,
  .view-categories .main .page,
  .view-liked .main .page,
  .view-uploads .main .page,
  .view-settings .main .page{
    height:auto!important;
    flex:1 1 auto!important;
    overflow-y:auto!important;
    padding-bottom:calc(84px + env(safe-area-inset-bottom))!important;
  }
  .mobile-tabs{height:64px!important;min-height:64px!important;display:flex!important;align-items:center!important;justify-content:space-around!important;padding:6px 4px calc(6px + env(safe-area-inset-bottom))!important;gap:2px!important;overflow:hidden!important;}
  .mobile-tabs button{flex:1 1 0!important;min-width:0!important;max-width:76px!important;height:50px!important;padding:4px 2px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;font-size:10.5px!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  .mobile-tabs button .ui-line{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;margin:0!important;}
  .mobile-tabs button[onclick="openUpload()"]{max-width:58px!important;border-radius:16px!important;}

  .view-messages .main{height:100dvh!important;}
  .view-messages .topbar{display:none!important;}
  .view-messages .page{height:100dvh!important;flex:1 1 auto!important;padding:0!important;overflow:hidden!important;}
  .view-messages .dm{height:calc(100dvh - 64px - env(safe-area-inset-bottom))!important;min-height:0!important;display:block!important;overflow:hidden!important;padding:0!important;margin:0!important;}
  .view-messages .chat-list,
  .view-messages .chat-box{height:100%!important;min-height:0!important;border-radius:0!important;border-left:0!important;border-right:0!important;overflow:hidden!important;background:#05090c!important;}
  .view-messages .chat-box{display:flex!important;flex-direction:column!important;}
  .view-messages .chat-title{height:54px!important;min-height:54px!important;flex:0 0 54px!important;padding:8px 10px!important;position:relative!important;top:auto!important;z-index:2!important;background:#071018!important;}
  .view-messages .chat-title b{min-width:0!important;max-width:46vw!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  .view-messages .chat-title span{display:flex!important;gap:4px!important;align-items:center!important;overflow-x:auto!important;max-width:58vw!important;}
  .view-messages .chat-title .ghost{font-size:12px!important;padding:7px 8px!important;border-radius:999px!important;white-space:nowrap!important;}
  .view-messages .chat-scroll{height:calc(100% - 54px)!important;overflow-y:auto!important;padding-bottom:72px!important;}
  .view-messages .chat-item{padding:12px 10px!important;}
  .view-messages .chat-item .mini-avatar{width:42px!important;height:42px!important;}
  .view-messages .messages{flex:1 1 auto!important;height:auto!important;min-height:0!important;overflow-y:auto!important;padding:10px 10px 12px!important;background:linear-gradient(180deg,#05090c,#071018)!important;}
  .view-messages .bubble{max-width:86%!important;width:max-content!important;min-width:0!important;padding:6px 9px!important;margin:6px 0!important;border-radius:17px 17px 17px 6px!important;line-height:1.28!important;font-size:14px!important;word-break:break-word!important;white-space:pre-wrap!important;background:#111a25!important;}
  .view-messages .bubble.mine{margin-left:auto!important;border-radius:17px 17px 6px 17px!important;background:linear-gradient(135deg,#7db7e5,#9dcaed)!important;color:#03101a!important;}
  .view-messages .sendbar{height:60px!important;min-height:60px!important;flex:0 0 60px!important;display:flex!important;align-items:center!important;gap:8px!important;padding:8px 10px calc(8px + env(safe-area-inset-bottom))!important;background:#05090c!important;border-top:1px solid rgba(169,212,246,.16)!important;position:relative!important;bottom:auto!important;z-index:3!important;}
  .view-messages .sendbar input{display:block!important;min-width:0!important;flex:1 1 auto!important;height:42px!important;margin:0!important;border-radius:999px!important;padding:0 14px!important;font-size:15px!important;background:#111a25!important;}
  .view-messages .sendbar .primary{height:42px!important;flex:0 0 auto!important;border-radius:999px!important;padding:0 14px!important;display:grid!important;place-items:center!important;}
  .view-messages .mobile-hide{display:none!important;}
  .view-messages .chat-box:not(.mobile-hide),
  .view-messages .chat-list:not(.mobile-hide){display:flex!important;flex-direction:column!important;}
}

@media(min-width:921px) and (max-width:1180px){
  .layout{grid-template-columns:190px minmax(0,1fr) 260px!important;gap:10px!important;}
  .topbar .search{max-width:580px!important;}
  .masonry{columns:3 220px!important;}
}

/* Requested mobile reaction/back/upload refinements */
.icon-settings{width:24px!important;height:24px!important;overflow:visible!important}
.icon-settings circle,.icon-settings path{stroke:currentColor!important;fill:none!important;stroke-linecap:round!important;stroke-linejoin:round!important}
@media(max-width:920px){
  .top-actions button[onclick="openUpload()"]{display:none!important;}
  .mobile-tabs{height:72px!important;min-height:72px!important;padding-top:12px!important;padding-bottom:calc(10px + env(safe-area-inset-bottom))!important;align-items:flex-end!important;}
  .mobile-tabs button{transform:translateY(4px)!important;}
  .feed-layout-spotlight.view-home .main .page>.masonry.feed-scroll{grid-template-columns:1fr!important;display:grid!important;scroll-snap-type:y mandatory!important;overflow-y:auto!important;}
  .feed-layout-spotlight.view-home .meme-card{scroll-snap-align:start!important;height:calc(100dvh - 140px)!important;max-height:calc(100dvh - 140px)!important;min-height:480px!important;}
  .feed-layout-spotlight.view-home .tagline-tags{white-space:normal!important;overflow:visible!important;max-height:none!important;}
}
@media(min-width:921px){
  .feed-layout-spotlight.view-home .main .page>.masonry.feed-scroll{grid-template-columns:minmax(340px,680px)!important;display:grid!important;justify-content:center!important;scroll-snap-type:y mandatory!important;}
  .feed-layout-spotlight.view-home .meme-card{scroll-snap-align:start!important;}
}

/* Fix mobile bottom navigation icon alignment/fit. Keep layout/colors unchanged; only constrain the mobile nav contents. */
@media(max-width:920px){
  .mobile-tabs{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:74px!important;
    min-height:74px!important;
    padding:6px 4px calc(7px + env(safe-area-inset-bottom))!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-around!important;
    gap:0!important;
    overflow:hidden!important;
    background:#05090c!important;
    border-top:1px solid rgba(169,212,246,.18)!important;
    z-index:999!important;
  }
  .mobile-tabs button{
    transform:none!important;
    flex:1 1 0!important;
    min-width:0!important;
    max-width:none!important;
    height:58px!important;
    max-height:58px!important;
    padding:4px 1px!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    overflow:hidden!important;
    line-height:1!important;
    font-size:10px!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
  }
  .mobile-tabs button .ui-line,
  .mobile-tabs button .ui-svg,
  .mobile-tabs button svg{
    width:20px!important;
    height:20px!important;
    min-width:20px!important;
    min-height:20px!important;
    max-width:20px!important;
    max-height:20px!important;
    margin:0!important;
    display:block!important;
    flex:0 0 20px!important;
  }
  .mobile-tabs button[onclick="openUpload()"]{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:58px!important;
    border-radius:16px!important;
    padding:4px 1px!important;
  }
  .mobile-tabs button[onclick="openUpload()"] .ui-line,
  .mobile-tabs button[onclick="openUpload()"] .ui-svg,
  .mobile-tabs button[onclick="openUpload()"] svg{
    width:22px!important;
    height:22px!important;
    min-width:22px!important;
    min-height:22px!important;
    max-width:22px!important;
    max-height:22px!important;
  }
  .page{padding-bottom:calc(86px + env(safe-area-inset-bottom))!important;}
  .view-messages .dm{height:calc(100dvh - 74px - env(safe-area-inset-bottom))!important;}
}

/* Message reaction polish: long-press/tap reveals compact reaction tray and counts sit on bubble edge */
.bubble{position:relative!important;touch-action:manipulation!important;}
.msg-reacts{position:absolute!important;z-index:8!important;left:10px!important;top:-34px!important;display:flex!important;gap:4px!important;background:rgba(6,9,15,.96)!important;border:1px solid var(--line)!important;border-radius:999px!important;padding:4px!important;box-shadow:0 12px 28px rgba(0,0,0,.35)!important;opacity:0!important;pointer-events:none!important;transform:translateY(4px) scale(.98)!important;transition:opacity .14s ease, transform .14s ease!important;}
.bubble.mine .msg-reacts{left:auto!important;right:10px!important;}
.bubble:hover .msg-reacts,.msg-reacts.show{opacity:1!important;pointer-events:auto!important;transform:translateY(0) scale(1)!important;}
.msg-reacts button{width:28px!important;height:28px!important;display:grid!important;place-items:center!important;border-radius:999px!important;padding:0!important;background:transparent!important;border:0!important;font-size:16px!important;line-height:1!important;}
.msg-reacts button:hover{background:rgba(255,255,255,.12)!important;}
.msg-meta{position:absolute!important;right:-8px!important;bottom:-13px!important;display:flex!important;gap:4px!important;max-width:70%!important;justify-content:flex-end!important;}
.bubble:not(.mine) .msg-meta{right:auto!important;left:10px!important;}
.msg-count{background:rgba(255,255,255,.96)!important;color:#07111d!important;border:1px solid rgba(0,0,0,.08)!important;border-radius:999px!important;padding:1px 6px!important;font-size:12px!important;line-height:1.25!important;box-shadow:0 4px 12px rgba(0,0,0,.18)!important;}
.bubble.mine .msg-count{background:#f8fbff!important;color:#06111d!important;}

/* Ensure settings icon reads as a proper gear */
.icon-settings{overflow:visible!important;}
.icon-settings path,.icon-settings circle{stroke:currentColor!important;fill:none!important;stroke-width:2.1!important;stroke-linecap:round!important;stroke-linejoin:round!important;}

/* Final fix: keep selected message reactions visible on the message bubble */
.messages .bubble{
  overflow:visible!important;
  margin-bottom:18px!important;
}
.messages .bubble .msg-meta{
  position:absolute!important;
  z-index:20!important;
  bottom:-14px!important;
  top:auto!important;
  display:flex!important;
  align-items:center!important;
  gap:4px!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:none!important;
  min-height:18px!important;
}
.messages .bubble.mine .msg-meta{
  right:12px!important;
  left:auto!important;
  justify-content:flex-end!important;
}
.messages .bubble:not(.mine) .msg-meta{
  left:12px!important;
  right:auto!important;
  justify-content:flex-start!important;
}
.messages .bubble .msg-count{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:24px!important;
  height:18px!important;
  padding:1px 6px!important;
  border-radius:999px!important;
  background:#f8fbff!important;
  color:#06111d!important;
  border:1px solid rgba(0,0,0,.12)!important;
  box-shadow:0 5px 14px rgba(0,0,0,.25)!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.view-messages .messages .bubble{
  margin-bottom:20px!important;
}


/* Patch: keep message reaction picker clearly above the message bubble */
.messages .bubble{overflow:visible!important;}
.messages .msg-reacts{top:auto!important;bottom:calc(100% + 8px)!important;left:10px!important;right:auto!important;z-index:60!important;}
.messages .bubble.mine .msg-reacts{left:auto!important;right:10px!important;}
.messages .msg-reacts.show{opacity:1!important;pointer-events:auto!important;transform:translateY(0) scale(1)!important;}

/* Keep the meme card top title/caption space consistent even when a post has no caption. */
.meme-title.empty-caption{visibility:hidden;min-height:42px;}
.feed-layout-spotlight.view-home .meme-title.empty-caption{min-height:52px!important;}


/* Mobile fixes: upload modal fit, search/explore scrolling, and small-screen preview handling. */
@media(max-width:920px){
  .view-explore .main .page,
  .view-categories .main .page,
  .view-trending .main .page{
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:86px!important;
  }
  .view-search .main .page{
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:86px!important;
  }
  .view-search .page > .search-results,
  .view-search .search-results,
  .view-explore .page > .masonry,
  .view-explore .masonry{
    overflow:visible!important;
    max-height:none!important;
  }
  .modal-bg{
    align-items:flex-start!important;
    place-items:start center!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding:10px 8px calc(82px + env(safe-area-inset-bottom))!important;
  }
  .modal{
    width:100%!important;
    max-height:none!important;
    min-height:0!important;
    overflow:visible!important;
    border-radius:16px!important;
    padding:14px!important;
  }
  .upload-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .drop{
    min-height:168px!important;
    padding:12px!important;
  }
  #preview img,
  #preview video{
    max-width:100%!important;
    max-height:180px!important;
    object-fit:contain!important;
  }
  .composer textarea{
    min-height:82px!important;
  }
}
@media(max-width:420px){
  .topbar{gap:6px!important;padding-left:7px!important;padding-right:7px!important;}
  .top-actions{gap:4px!important;}
  .top-actions .icon-btn{width:31px!important;height:31px!important;}
  .top-actions .avatar{width:31px!important;height:31px!important;}
  .topbar .search{font-size:13px!important;padding:9px 10px!important;}
}

/* Requested messaging member controls and mobile search stability. */
.member-list{display:grid;gap:8px;margin:10px 0 14px}.member-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:12px;background:#0f141f}.member-x{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;font-size:18px;line-height:1;background:#1a2231;color:#fff;border:1px solid var(--line)}.member-x:hover{background:#3a1724}.view-search .main .page{overflow-y:auto!important;overflow-x:hidden!important;min-height:0!important;height:calc(100vh - 76px)!important;padding-bottom:34px!important}.big-avatar-wrap .primary{margin-top:10px}
@media(max-width:920px){.view-search .main .page{height:auto!important;flex:1 1 auto!important;overflow-y:auto!important;padding-bottom:calc(84px + env(safe-area-inset-bottom))!important}.member-row{padding:10px}.member-x{width:32px;height:32px}}
/* Targeted fix: keep chat reaction picker reachable without changing layout */
.messages .bubble{overflow:visible!important;}
.messages .msg-reacts{bottom:calc(100% - 2px)!important;}
.messages .msg-reacts.show,.messages .bubble:hover .msg-reacts,.messages .msg-reacts:hover{opacity:1!important;pointer-events:auto!important;transform:translateY(0) scale(1)!important;}
.messages .msg-reacts::after{content:"";position:absolute;left:0;right:0;top:100%;height:10px;}
.category-card{cursor:pointer;}
.category-card .follow-btn{cursor:pointer;}
.category-detail .row.space{align-items:flex-start;margin-bottom:12px;}

/* Settings organization polish */
.settings-pro{max-width:1040px!important;gap:18px!important;}
.settings-hero p{margin:4px 0 0!important;max-width:560px!important;}
.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start!important;}
.settings-card{position:relative!important;overflow:hidden!important;}
.settings-card::before{content:"";position:absolute;inset:0 0 auto 0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);pointer-events:none;}
.settings-card-wide{grid-column:1/-1!important;max-width:none!important;}
.settings-card-head p{margin:2px 0 0!important;line-height:1.35!important;}
.field-label{display:block;margin:0 0 8px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);}
.follow-manage-section{display:grid;gap:10px;margin-top:12px;}
.follow-manage-section+ .follow-manage-section{margin-top:20px;padding-top:18px;border-top:1px solid var(--line);}
.follow-manage-section h4{margin:0;font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);}
.follow-manage-row{border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025);padding:12px!important;align-items:center;}
.follow-manage-row:hover{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.16);}
.settings-link-name{appearance:none;border:0;background:transparent;color:var(--text);font-weight:900;font-size:15px;padding:0;text-align:left;cursor:pointer;}
.settings-link-name:hover{text-decoration:underline;}
.follow-manage-row .row{gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.follow-manage-row .ghost{padding:8px 12px!important;font-weight:900!important;}
@media(max-width:780px){.settings-grid{grid-template-columns:1fr!important}.settings-card-wide{grid-column:auto!important}.settings-hero p{font-size:13px!important}.follow-manage-row{align-items:flex-start!important;gap:10px!important}.follow-manage-row .row{width:100%;justify-content:flex-start}}

/* Clean, organized Settings page refresh */
.settings-clean{max-width:1180px!important;margin:0 auto!important;padding:0 2px 40px!important;gap:18px!important;}
.settings-clean .settings-clean-hero{border-radius:28px!important;padding:24px 26px!important;background:linear-gradient(135deg,rgba(255,47,129,.12),rgba(138,92,255,.08) 46%,rgba(255,255,255,.035))!important;}
.setting-kicker{font-size:11px;font-weight:950;letter-spacing:.11em;text-transform:uppercase;color:var(--brand);margin-bottom:5px;}
.settings-layout-clean{display:grid!important;grid-template-columns:260px minmax(0,1fr)!important;gap:18px!important;align-items:start!important;}
.settings-side-clean{position:sticky;top:12px;}
.settings-side-card-clean{border:1px solid var(--line);border-radius:24px;background:rgba(10,15,24,.88);box-shadow:0 18px 46px rgba(0,0,0,.22);padding:18px;display:grid;gap:10px;}
.settings-side-card-clean .avatar.lg{width:74px;height:74px;border-radius:24px;}
.settings-side-card-clean h3{margin:2px 0 0;font-size:18px;}
.settings-side-card-clean p{margin:0 0 6px;line-height:1.35;}
.settings-side-card-clean a{display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:var(--text);font-weight:900;padding:11px 12px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025);}
.settings-side-card-clean a:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);}
.settings-content-clean{display:grid!important;gap:18px!important;min-width:0!important;}
.settings-clean-card{border-radius:24px!important;padding:20px!important;background:linear-gradient(180deg,rgba(16,23,36,.96),rgba(8,12,20,.96))!important;box-shadow:0 18px 46px rgba(0,0,0,.20)!important;}
.settings-clean-card .settings-card-head{padding-bottom:14px!important;border-bottom:1px solid rgba(255,255,255,.08)!important;margin-bottom:16px!important;}
.settings-clean-card h3{margin:0 0 4px!important;font-size:20px!important;}
.settings-clean-card p{margin:0!important;}
.settings-clean-card textarea,
.settings-clean-card input[type="password"],
.settings-clean-card input[type="file"]{margin-bottom:12px!important;}
.settings-actions-clean{display:flex;gap:10px;justify-content:flex-end;align-items:center;margin-top:6px;}
.settings-two-clean{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important;align-items:stretch!important;}
.settings-picture-row-clean{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:center;margin-bottom:14px;}
.settings-current-avatar-clean{border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.025);padding:14px;display:grid;place-items:center;gap:8px;text-align:center;font-weight:900;color:var(--muted);}
.settings-current-avatar-clean .avatar.lg{width:88px;height:88px;border-radius:28px;}
.settings-picture-controls-clean{min-width:0;}
.settings-clean .crop-wrap{margin-top:8px!important;border-radius:22px!important;}
.settings-clean .layout-choice{border:1px solid var(--line);border-radius:16px;padding:13px;margin-top:10px;background:rgba(255,255,255,.025);}
.settings-clean .layout-choice:hover{background:rgba(255,255,255,.055);}
.following-manage-clean{display:grid;gap:18px;}
.following-manage-clean .follow-manage-section{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.02);padding:14px;margin:0!important;}
.following-manage-clean .follow-manage-section+ .follow-manage-section{border-top:1px solid var(--line)!important;padding-top:14px!important;}
.following-manage-clean .follow-manage-section h4{font-size:12px!important;margin:0 0 10px!important;color:var(--text)!important;}
.following-manage-clean .follow-manage-row{background:rgba(10,15,24,.72)!important;border-radius:15px!important;margin-top:8px!important;}
@media(max-width:980px){.settings-layout-clean{grid-template-columns:1fr!important}.settings-side-clean{position:relative;top:auto}.settings-side-card-clean{grid-template-columns:auto 1fr;align-items:center}.settings-side-card-clean a{display:none}.settings-side-card-clean .avatar.lg{grid-row:1/3}.settings-side-card-clean p{grid-column:2}}
@media(max-width:780px){.settings-clean{padding-bottom:96px!important}.settings-clean .settings-clean-hero{padding:18px!important}.settings-two-clean,.settings-picture-row-clean{grid-template-columns:1fr!important}.settings-actions-clean{justify-content:stretch}.settings-actions-clean .primary{width:100%}.settings-clean-card{padding:16px!important}.settings-side-card-clean{display:none}}


/* Mobile app-style navigation and category access refinement */
@media(max-width:920px){
  body{background:#05070d!important;overscroll-behavior:none!important;}
  .layout{background:linear-gradient(180deg,#080d16 0%,#05070d 100%)!important;}
  .main{grid-template-rows:60px 1fr!important;}
  .topbar{position:sticky!important;top:0!important;z-index:24!important;padding:10px 10px 8px!important;background:rgba(5,7,13,.94)!important;backdrop-filter:blur(18px)!important;border-bottom:1px solid rgba(255,255,255,.08)!important;}
  .topbar .search{max-width:none!important;border-radius:999px!important;background:#101725!important;border-color:#202a3c!important;margin:0!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;}
  .page{padding:10px 10px calc(96px + env(safe-area-inset-bottom))!important;}
  .mobile-tabs{display:grid!important;grid-template-columns:repeat(5,1fr)!important;gap:6px!important;padding:8px 10px calc(8px + env(safe-area-inset-bottom))!important;background:rgba(7,10,17,.94)!important;backdrop-filter:blur(20px)!important;border-top:1px solid rgba(255,255,255,.10)!important;box-shadow:0 -18px 42px rgba(0,0,0,.38)!important;}
  .mobile-tabs button{height:54px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;background:transparent!important;color:#c8d0dd!important;border-radius:18px!important;font-size:11px!important;font-weight:850!important;letter-spacing:.01em!important;line-height:1!important;padding:6px 2px!important;}
  .mobile-tabs button:hover,.mobile-tabs button:active{background:#141b29!important;color:#fff!important;}
  .mobile-tabs button.mobile-create{height:58px!important;width:58px!important;justify-self:center!important;align-self:center!important;margin-top:-18px!important;border-radius:21px!important;background:linear-gradient(135deg,var(--brand),#ff4da0)!important;color:#fff!important;box-shadow:0 12px 30px rgba(255,47,125,.38)!important;border:1px solid rgba(255,255,255,.18)!important;}
  .mobile-tabs .ui-line{width:22px!important;height:22px!important;}
  .mobile-tabs .mobile-create .ui-line{width:25px!important;height:25px!important;}
  .view-categories .main .page,
  .view-category .main .page{overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;}
  .view-categories .grid-page{grid-template-columns:1fr!important;gap:10px!important;}
  .view-categories .category-card,.view-category .category-detail{border-radius:20px!important;background:linear-gradient(180deg,#101725,#0b101a)!important;}
  .view-category .category-detail .row.space{position:sticky!important;top:0!important;z-index:4!important;background:rgba(5,7,13,.92)!important;backdrop-filter:blur(14px)!important;border-radius:18px!important;padding:10px!important;border:1px solid rgba(255,255,255,.08)!important;}
}


/* Ad placements: hidden unless ads are enabled by .env */
.ad-card{border:1px dashed var(--line);border-radius:18px;background:rgba(255,255,255,.025);padding:12px;min-height:120px;display:grid;align-items:center;gap:8px;overflow:hidden;}
.ad-card .ad-label{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);}
.ad-card ins{min-height:90px;}
.ad-sidebar{margin:0 0 14px;min-height:250px;}
.legal-links a{color:var(--muted);text-decoration:none;}
.legal-links a:hover{color:var(--text);text-decoration:underline;}
@media(max-width:920px){.ad-sidebar{display:none}.ad-card{min-height:100px;border-radius:16px;margin:2px 0 10px;}}
.ad-direct{color:var(--text);text-decoration:none;align-content:start}.ad-direct:hover{border-color:rgba(255,255,255,.28)}.ad-direct b{display:block;font-size:16px}.ad-direct p{margin:0;color:var(--muted);font-size:13px;line-height:1.35}.ad-img{width:100%;max-height:160px;object-fit:cover;border-radius:12px;background:rgba(255,255,255,.05)}

.settings-nav-button{display:block;width:100%;text-align:left;background:transparent;border:0;color:inherit;padding:10px 12px;border-radius:10px;cursor:pointer;font:inherit}
.settings-nav-button:hover,.settings-nav-button.active{background:rgba(255,255,255,.08)}


/* Mobile notification and Settings fit fixes */
@media(max-width:780px){
  .notif-pop{position:fixed!important;left:8px!important;right:8px!important;top:68px!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 150px)!important;overflow-y:auto!important;overscroll-behavior:contain!important;padding:12px!important;}
  .notif-pop .notif-row{min-width:0!important;overflow-wrap:anywhere!important;}
  .settings-side-card-clean{display:grid!important;grid-template-columns:1fr!important;padding:12px!important;}
  .settings-side-card-clean .avatar.lg,.settings-side-card-clean h3,.settings-side-card-clean p{display:none!important;}
  .settings-side-clean{display:block!important;width:100%!important;}
  .settings-nav-button{display:block!important;width:100%!important;min-height:44px!important;}
  .settings-layout-clean{grid-template-columns:1fr!important;}
}
